diff --git a/.env b/.env index 6bf015771..a14696631 100644 --- a/.env +++ b/.env @@ -47,7 +47,7 @@ database.tests.port = 3306 email.SMTPHost = '' email.SMTPUser = '' email.SMTPPass = '' -email.SMTPPort = +email.SMTPPort = email.SMTPTimeout = 5 email.SMTPCrypto = 'tls' @@ -69,16 +69,16 @@ honeypot.container = '
{template}
' #-------------------------------------------------------------------- # LOGGER - # - 0 = Disables logging, Error logging TURNED OFF - # - 1 = Emergency Messages - System is unusable - # - 2 = Alert Messages - Action Must Be Taken Immediately - # - 3 = Critical Messages - Application component unavailable, unexpected exception. - # - 4 = Runtime Errors - Don't need immediate action, but should be monitored. - # - 5 = Warnings - Exceptional occurrences that are not errors. - # - 6 = Notices - Normal but significant events. - # - 7 = Info - Interesting events, like user logging in, etc. - # - 8 = Debug - Detailed debug information. - # - 9 = All Messages + # - 0 = Disables logging, Error logging TURNED OFF + # - 1 = Emergency Messages - System is unusable + # - 2 = Alert Messages - Action Must Be Taken Immediately + # - 3 = Critical Messages - Application component unavailable, unexpected exception. + # - 4 = Runtime Errors - Don't need immediate action, but should be monitored. + # - 5 = Warnings - Exceptional occurrences that are not errors. + # - 6 = Notices - Normal but significant events. + # - 7 = Info - Interesting events, like user logging in, etc. + # - 8 = Debug - Detailed debug information. + # - 9 = All Messages #-------------------------------------------------------------------- logger.threshold = 0 diff --git a/.env-example b/.env-example index a92726251..342622a31 100644 --- a/.env-example +++ b/.env-example @@ -37,16 +37,16 @@ encryption.key = '' #-------------------------------------------------------------------- # LOGGER - # - 0 = Disables logging, Error logging TURNED OFF - # - 1 = Emergency Messages - System is unusable - # - 2 = Alert Messages - Action Must Be Taken Immediately - # - 3 = Critical Messages - Application component unavailable, unexpected exception. - # - 4 = Runtime Errors - Don't need immediate action, but should be monitored. - # - 5 = Warnings - Exceptional occurrences that are not errors. - # - 6 = Notices - Normal but significant events. - # - 7 = Info - Interesting events, like user logging in, etc. - # - 8 = Debug - Detailed debug information. - # - 9 = All Messages + # - 0 = Disables logging, Error logging TURNED OFF + # - 1 = Emergency Messages - System is unusable + # - 2 = Alert Messages - Action Must Be Taken Immediately + # - 3 = Critical Messages - Application component unavailable, unexpected exception. + # - 4 = Runtime Errors - Don't need immediate action, but should be monitored. + # - 5 = Warnings - Exceptional occurrences that are not errors. + # - 6 = Notices - Normal but significant events. + # - 7 = Info - Interesting events, like user logging in, etc. + # - 8 = Debug - Detailed debug information. + # - 9 = All Messages #-------------------------------------------------------------------- logger.threshold = 0 diff --git a/BUILD.md b/BUILD.md index 9afe11fb2..b3858453c 100644 --- a/BUILD.md +++ b/BUILD.md @@ -23,9 +23,9 @@ The build process uses the build tools "npm" and "gulp" to piece everything toge 2. Unzip it and copy the contents into the working folder. 3. Start a terminal session from the root of your working folder. For example, I normally open up the working folder in PHPStorm and run the commands from the Terminal provided by the IDE. 4. Enter the following three commands in sequence: - - `composer install` - - `npm install` - - `npm run build` + - `composer install` + - `npm install` + - `npm run build` That's all there is to it. diff --git a/app/.htaccess b/app/.htaccess index 3462048ad..f24db0acc 100644 --- a/app/.htaccess +++ b/app/.htaccess @@ -1,6 +1,6 @@ - Require all denied + Require all denied - Deny from all + Deny from all diff --git a/app/Config/App.php b/app/Config/App.php index f4b4a5dfa..9b5161416 100644 --- a/app/Config/App.php +++ b/app/Config/App.php @@ -7,52 +7,52 @@ use CodeIgniter\Session\Handlers\DatabaseHandler; class App extends BaseConfig { - /** - * This is the code version of the Open Source Point of Sale you're running. - * - * @var string - */ - public string $application_version = '3.4.0'; + /** + * This is the code version of the Open Source Point of Sale you're running. + * + * @var string + */ + public string $application_version = '3.4.0'; - /** - * This is the commit hash for the version you are currently using. - * - * @var string - */ - public string $commit_sha1 = 'dev'; + /** + * This is the commit hash for the version you are currently using. + * + * @var string + */ + public string $commit_sha1 = 'dev'; - /** - * Logs are stored in writable/logs - * - * @var bool - */ - public bool $db_log_enabled = false; + /** + * Logs are stored in writable/logs + * + * @var bool + */ + public bool $db_log_enabled = false; - /** - * DB Query Log only long-running queries - * - * @var bool - */ - public bool $db_log_only_long = false; + /** + * DB Query Log only long-running queries + * + * @var bool + */ + public bool $db_log_only_long = false; - /** - * Defines whether to require/reroute to HTTPS - * - * @var bool - */ - public bool $https_on; //Set in the constructor + /** + * Defines whether to require/reroute to HTTPS + * + * @var bool + */ + public bool $https_on; //Set in the constructor - /** - * -------------------------------------------------------------------------- - * Base Site URL - * -------------------------------------------------------------------------- - * - * URL to your CodeIgniter root. Typically, this will be your base URL, - * WITH a trailing slash: - * - * E.g., http://example.com/ - */ - public string $baseURL; //Defined in the constructor + /** + * -------------------------------------------------------------------------- + * Base Site URL + * -------------------------------------------------------------------------- + * + * URL to your CodeIgniter root. Typically, this will be your base URL, + * WITH a trailing slash: + * + * E.g., http://example.com/ + */ + public string $baseURL; //Defined in the constructor /** * Allowed Hostnames in the Site URL other than the hostname in the baseURL. @@ -143,63 +143,63 @@ class App extends BaseConfig */ public bool $negotiateLocale = true; - /** - * -------------------------------------------------------------------------- - * Supported Locales - * -------------------------------------------------------------------------- - * - * If $negotiateLocale is true, this array lists the locales supported - * by the application in descending order of priority. If no match is - * found, the first locale will be used. - * - * IncomingRequest::setLocale() also uses this list. - * - * @var list - */ - public array $supportedLocales = [ - 'ar-EG', - 'ar-LB', - 'az', - 'bg', - 'bs', - 'cs', - 'da', - 'de-CH', - 'de-DE', - 'el', + /** + * -------------------------------------------------------------------------- + * Supported Locales + * -------------------------------------------------------------------------- + * + * If $negotiateLocale is true, this array lists the locales supported + * by the application in descending order of priority. If no match is + * found, the first locale will be used. + * + * IncomingRequest::setLocale() also uses this list. + * + * @var list + */ + public array $supportedLocales = [ + 'ar-EG', + 'ar-LB', + 'az', + 'bg', + 'bs', + 'cs', + 'da', + 'de-CH', + 'de-DE', + 'el', 'en', - 'en-GB', - 'es-ES', - 'es-MX', - 'fa', - 'fr', - 'he', - 'hr-HR', - 'hu', - 'hy', - 'id', - 'it', - 'km', - 'lo', - 'ml', - 'nb', - 'nl-BE', + 'en-GB', + 'es-ES', + 'es-MX', + 'fa', + 'fr', + 'he', + 'hr-HR', + 'hu', + 'hy', + 'id', + 'it', + 'km', + 'lo', + 'ml', + 'nb', + 'nl-BE', 'nl-NL', - 'pl', - 'pt-BR', - 'ro', - 'ru', - 'sv', - 'ta', - 'th', - 'tl', - 'tr', - 'uk', - 'ur', - 'vi', - 'zh-Hans', - 'zh-Hant', - ]; + 'pl', + 'pt-BR', + 'ro', + 'ru', + 'sv', + 'ta', + 'th', + 'tl', + 'tr', + 'uk', + 'ur', + 'vi', + 'zh-Hans', + 'zh-Hant', + ]; /** * -------------------------------------------------------------------------- @@ -261,30 +261,30 @@ class App extends BaseConfig */ public array $proxyIPs = []; - /** - * -------------------------------------------------------------------------- - * Content Security Policy - * -------------------------------------------------------------------------- - * - * Enables the Response's Content Secure Policy to restrict the sources that - * can be used for images, scripts, CSS files, audio, video, etc. If enabled, - * the Response object will populate default values for the policy from the - * `ContentSecurityPolicy.php` file. Controllers can always add to those - * restrictions at run time. - * - * For a better understanding of CSP, see these documents: - * - * @see http://www.html5rocks.com/en/tutorials/security/content-security-policy/ - * @see http://www.w3.org/TR/CSP/ - */ - public bool $CSPEnabled = false; //TODO: Currently CSP3 tags are not supported so enabling this causes problems with script-src-elem, style-src-attr and style-src-elem + /** + * -------------------------------------------------------------------------- + * Content Security Policy + * -------------------------------------------------------------------------- + * + * Enables the Response's Content Secure Policy to restrict the sources that + * can be used for images, scripts, CSS files, audio, video, etc. If enabled, + * the Response object will populate default values for the policy from the + * `ContentSecurityPolicy.php` file. Controllers can always add to those + * restrictions at run time. + * + * For a better understanding of CSP, see these documents: + * + * @see http://www.html5rocks.com/en/tutorials/security/content-security-policy/ + * @see http://www.w3.org/TR/CSP/ + */ + public bool $CSPEnabled = false; //TODO: Currently CSP3 tags are not supported so enabling this causes problems with script-src-elem, style-src-attr and style-src-elem - public function __construct() - { - parent::__construct(); - $this->https_on = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') || (isset($_ENV['FORCE_HTTPS']) && $_ENV['FORCE_HTTPS'] == 'true'); - $this->baseURL = $this->https_on ? 'https' : 'http'; - $this->baseURL .= '://' . ((isset($_SERVER['HTTP_HOST'])) ? $_SERVER['HTTP_HOST'] : 'localhost') . '/'; - $this->baseURL .= str_replace(basename($_SERVER['SCRIPT_NAME']), '', $_SERVER['SCRIPT_NAME']); - } + public function __construct() + { + parent::__construct(); + $this->https_on = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') || (isset($_ENV['FORCE_HTTPS']) && $_ENV['FORCE_HTTPS'] == 'true'); + $this->baseURL = $this->https_on ? 'https' : 'http'; + $this->baseURL .= '://' . ((isset($_SERVER['HTTP_HOST'])) ? $_SERVER['HTTP_HOST'] : 'localhost') . '/'; + $this->baseURL .= str_replace(basename($_SERVER['SCRIPT_NAME']), '', $_SERVER['SCRIPT_NAME']); + } } diff --git a/app/Config/Autoload.php b/app/Config/Autoload.php index aeca60cae..2a202e42b 100644 --- a/app/Config/Autoload.php +++ b/app/Config/Autoload.php @@ -42,7 +42,7 @@ class Autoload extends AutoloadConfig public $psr4 = [ APP_NAMESPACE => APPPATH, 'Config' => APPPATH . 'Config', - 'dompdf' => APPPATH . 'ThirdParty/dompdf/src' + 'dompdf' => APPPATH . 'ThirdParty/dompdf/src' ]; /** @@ -62,115 +62,115 @@ class Autoload extends AutoloadConfig * * @var array */ - public $classmap = [ - //Controllers - 'Attributes' => '/App/Controllers/Attributes.php', - 'Cashups' => '/App/Controllers/Cashups.php', - 'Config' => '/App/Controllers/Config.php', - 'Customers' => '/App/Controllers/Customers.php', - 'Employees' => '/App/Controllers/Employees.php', - 'Expenses' => '/App/Controllers/Expenses.php', - 'Expenses_categories' => '/App/Controllers/Expenses_categories.php', - 'Giftcards' => '/App/Controllers/Giftcards.php', - 'Home' => '/App/Controllers/Home.php', - 'Item_kits' => '/App/Controllers/Item_kits.php', - 'Items' => '/App/Controllers/Items.php', - 'Login' => '/App/Controllers/Login.php', - 'Messages' => '/App/Controllers/Messages.php', - 'No_access' => '/App/Controllers/No_access.php', - 'Office' => '/App/Controllers/Office.php', - 'Persons' => '/App/Controllers/Persons.php', - 'Receivings' => '/App/Controllers/Receivings.php', - 'Reports' => '/App/Controllers/Reports.php', - 'Sales' => '/App/Controllers/Sales.php', - 'Secure_Controller' => '/App/Controllers/Secure_Controller.php', - 'Suppliers' => '/App/Controllers/Suppliers.php', - 'Tax_categories' => '/App/Controllers/Tax_categories.php', - 'Tax_codes' => '/App/Controllers/Tax_codes.php', - 'Tax_jurisdictions' => '/App/Controllers/Tax_jurisdictions.php', - 'Taxes' => '/App/Controllers/Taxes.php', + public $classmap = [ + //Controllers + 'Attributes' => '/App/Controllers/Attributes.php', + 'Cashups' => '/App/Controllers/Cashups.php', + 'Config' => '/App/Controllers/Config.php', + 'Customers' => '/App/Controllers/Customers.php', + 'Employees' => '/App/Controllers/Employees.php', + 'Expenses' => '/App/Controllers/Expenses.php', + 'Expenses_categories' => '/App/Controllers/Expenses_categories.php', + 'Giftcards' => '/App/Controllers/Giftcards.php', + 'Home' => '/App/Controllers/Home.php', + 'Item_kits' => '/App/Controllers/Item_kits.php', + 'Items' => '/App/Controllers/Items.php', + 'Login' => '/App/Controllers/Login.php', + 'Messages' => '/App/Controllers/Messages.php', + 'No_access' => '/App/Controllers/No_access.php', + 'Office' => '/App/Controllers/Office.php', + 'Persons' => '/App/Controllers/Persons.php', + 'Receivings' => '/App/Controllers/Receivings.php', + 'Reports' => '/App/Controllers/Reports.php', + 'Sales' => '/App/Controllers/Sales.php', + 'Secure_Controller' => '/App/Controllers/Secure_Controller.php', + 'Suppliers' => '/App/Controllers/Suppliers.php', + 'Tax_categories' => '/App/Controllers/Tax_categories.php', + 'Tax_codes' => '/App/Controllers/Tax_codes.php', + 'Tax_jurisdictions' => '/App/Controllers/Tax_jurisdictions.php', + 'Taxes' => '/App/Controllers/Taxes.php', - //Models - 'Appconfig' => '/App/Models/Appconfig.php', - 'Attribute' => '/App/Models/Attribute.php', - 'Cashup' => '/App/Models/Cashup.php', - 'Customer' => '/App/Models/Customer.php', - 'Customer_rewards' => '/App/Models/Customer_rewards.php', - 'Dinner_table' => '/App/Models/Dinner_table.php', - 'Employee' => '/App/Models/Employee.php', - 'Expense' => '/App/Models/Expense.php', - 'Expense_category' => '/App/Models/Expense_category.php', - 'Giftcard' => '/App/Models/Giftcard.php', - 'Inventory' => '/App/Models/Inventory.php', - 'Item_kit' => '/App/Models/Item_kit.php', - 'Item_kit_items' => '/App/Models/Item_kit_items.php', - 'Item_quantity' => '/App/Models/Item_quantity.php', - 'Item_taxes' => '/App/Models/Item_taxes.php', - 'Module' => '/App/Models/Module.php', - 'Person' => '/App/Models/Person.php', - 'Receiving' => '/App/Models/Receiving.php', - 'Rewards' => '/App/Models/Rewards.php', - 'Sale' => '/App/Models/Sale.php', - 'Stock_location' => '/App/Models/Stock_location.php', - 'Supplier' => '/App/Models/Supplier.php', - 'Tax' => '/App/Models/Tax.php', - 'Tax_category' => '/App/Models/Tax_category.php', - 'Tax_code' => '/App/Models/Tax_code.php', - 'Tax_jurisdiction' => '/App/Models/Tax_jurisdiction.php', + //Models + 'Appconfig' => '/App/Models/Appconfig.php', + 'Attribute' => '/App/Models/Attribute.php', + 'Cashup' => '/App/Models/Cashup.php', + 'Customer' => '/App/Models/Customer.php', + 'Customer_rewards' => '/App/Models/Customer_rewards.php', + 'Dinner_table' => '/App/Models/Dinner_table.php', + 'Employee' => '/App/Models/Employee.php', + 'Expense' => '/App/Models/Expense.php', + 'Expense_category' => '/App/Models/Expense_category.php', + 'Giftcard' => '/App/Models/Giftcard.php', + 'Inventory' => '/App/Models/Inventory.php', + 'Item_kit' => '/App/Models/Item_kit.php', + 'Item_kit_items' => '/App/Models/Item_kit_items.php', + 'Item_quantity' => '/App/Models/Item_quantity.php', + 'Item_taxes' => '/App/Models/Item_taxes.php', + 'Module' => '/App/Models/Module.php', + 'Person' => '/App/Models/Person.php', + 'Receiving' => '/App/Models/Receiving.php', + 'Rewards' => '/App/Models/Rewards.php', + 'Sale' => '/App/Models/Sale.php', + 'Stock_location' => '/App/Models/Stock_location.php', + 'Supplier' => '/App/Models/Supplier.php', + 'Tax' => '/App/Models/Tax.php', + 'Tax_category' => '/App/Models/Tax_category.php', + 'Tax_code' => '/App/Models/Tax_code.php', + 'Tax_jurisdiction' => '/App/Models/Tax_jurisdiction.php', - //Reports - 'Report' => '/App/Models/Reports/Report.php', - 'Detailed_receiving' => '/App/Models/Reports/Detailed_receiving.php', - 'Detailed_sales' => '/App/Models/Reports/Detailed_sales.php', - 'Inventory_low' => '/App/Models/Reports/Inventory_low.php', - 'Inventory_summary' => '/App/Models/Reports/Inventory_summary.php', - 'Specific_customer' => '/App/Models/Reports/Specific_customer.php', - 'Specific_discount' => '/App/Models/Reports/Specific_discount.php', - 'Specific_employee' => '/App/Models/Reports/Specific_employee.php', - 'Specific_supplier' => '/App/Models/Reports/Specific_supplier.php', - 'Summary_categories' => '/App/Models/Reports/Summary_categories.php', - 'Summary_customers' => '/App/Models/Reports/Summary_customers.php', - 'Summary_discounts' => '/App/Models/Reports/Summary_discounts.php', - 'Summary_employees' => '/App/Models/Reports/Summary_employees.php', - 'Summary_expenses_categories' => '/App/Models/Reports/Summary_expenses_categories.php', - 'Summary_items' => '/App/Models/Reports/Summary_items.php', - 'Summary_payments' => '/App/Models/Reports/Summary_payments.php', - 'Summary_report' => '/App/Models/Reports/Summary_report.php', - 'Summary_sales' => '/App/Models/Reports/Summary_sales.php', - 'Summary_sales_taxes' => '/App/Models/Reports/Summary_sales_taxes.php', - 'Summary_suppliers' => '/App/Models/Reports/Summary_suppliers.php', - 'Summary_taxes' => '/App/Models/Reports/Summary_taxes.php', + //Reports + 'Report' => '/App/Models/Reports/Report.php', + 'Detailed_receiving' => '/App/Models/Reports/Detailed_receiving.php', + 'Detailed_sales' => '/App/Models/Reports/Detailed_sales.php', + 'Inventory_low' => '/App/Models/Reports/Inventory_low.php', + 'Inventory_summary' => '/App/Models/Reports/Inventory_summary.php', + 'Specific_customer' => '/App/Models/Reports/Specific_customer.php', + 'Specific_discount' => '/App/Models/Reports/Specific_discount.php', + 'Specific_employee' => '/App/Models/Reports/Specific_employee.php', + 'Specific_supplier' => '/App/Models/Reports/Specific_supplier.php', + 'Summary_categories' => '/App/Models/Reports/Summary_categories.php', + 'Summary_customers' => '/App/Models/Reports/Summary_customers.php', + 'Summary_discounts' => '/App/Models/Reports/Summary_discounts.php', + 'Summary_employees' => '/App/Models/Reports/Summary_employees.php', + 'Summary_expenses_categories' => '/App/Models/Reports/Summary_expenses_categories.php', + 'Summary_items' => '/App/Models/Reports/Summary_items.php', + 'Summary_payments' => '/App/Models/Reports/Summary_payments.php', + 'Summary_report' => '/App/Models/Reports/Summary_report.php', + 'Summary_sales' => '/App/Models/Reports/Summary_sales.php', + 'Summary_sales_taxes' => '/App/Models/Reports/Summary_sales_taxes.php', + 'Summary_suppliers' => '/App/Models/Reports/Summary_suppliers.php', + 'Summary_taxes' => '/App/Models/Reports/Summary_taxes.php', - //Tokens - 'Token' => '/App/Models/Tokens/Token.php', - 'Token_barcode_ean' => '/App/Models/Tokens/Token_barcode_ean.php', - 'Token_barcode_price' => '/App/Models/Tokens/Token_barcode_price.php', - 'Token_barcode_weight' => '/App/Models/Tokens/Token_barcode_weight.php', - 'Token_customer' => '/App/Models/Tokens/Token_customer.php', - 'Token_invoice_count' => '/App/Models/Tokens/Token_invoice_count.php', - 'Token_invoice_sequence' => '/App/Models/Tokens/Token_invoice_sequence.php', - 'Token_quote_sequence' => '/App/Models/Tokens/Token_quote_sequence.php', - 'Token_suspended_invoice_count' => '/App/Models/Tokens/Token_suspended_invoice_count.php', - 'Token_work_order_sequence' => '/App/Models/Tokens/Token_work_order_sequence.php', - 'Token_year_invoice_count' => '/App/Models/Tokens/Token_year_invoice_count.php', - 'Token_year_quote_count' => '/App/Models/Tokens/Token_year_quote_count.php', + //Tokens + 'Token' => '/App/Models/Tokens/Token.php', + 'Token_barcode_ean' => '/App/Models/Tokens/Token_barcode_ean.php', + 'Token_barcode_price' => '/App/Models/Tokens/Token_barcode_price.php', + 'Token_barcode_weight' => '/App/Models/Tokens/Token_barcode_weight.php', + 'Token_customer' => '/App/Models/Tokens/Token_customer.php', + 'Token_invoice_count' => '/App/Models/Tokens/Token_invoice_count.php', + 'Token_invoice_sequence' => '/App/Models/Tokens/Token_invoice_sequence.php', + 'Token_quote_sequence' => '/App/Models/Tokens/Token_quote_sequence.php', + 'Token_suspended_invoice_count' => '/App/Models/Tokens/Token_suspended_invoice_count.php', + 'Token_work_order_sequence' => '/App/Models/Tokens/Token_work_order_sequence.php', + 'Token_year_invoice_count' => '/App/Models/Tokens/Token_year_invoice_count.php', + 'Token_year_quote_count' => '/App/Models/Tokens/Token_year_quote_count.php', - //Libraries - 'Barcode_lib' => '/App/Libraries/Barcode_lib.php', - 'Email_lib' => '/App/Libraries/Email_lib.php', - 'Item_lib' => '/App/Libraries/Item_lib.php', - 'Mailchimp_lib' => '/App/Libraries/Mailchimp_lib.php', - 'MY_Email' => '/App/Libraries/MY_Email.php', - 'MY_Migration' => '/App/Libraries/MY_Migration.php', - 'Receving_lib' => '/App/Libraries/Receiving_lib.php', - 'Sale_lib' => '/App/Libraries/Sale_lib.php', - 'Sms_lib' => '/App/Libraries/Sms_lib.php', - 'Tax_lib' => '/App/Libraries/Tax_lib.php', - 'Token_lib' => '/App/Libraries/Token_lib.php', + //Libraries + 'Barcode_lib' => '/App/Libraries/Barcode_lib.php', + 'Email_lib' => '/App/Libraries/Email_lib.php', + 'Item_lib' => '/App/Libraries/Item_lib.php', + 'Mailchimp_lib' => '/App/Libraries/Mailchimp_lib.php', + 'MY_Email' => '/App/Libraries/MY_Email.php', + 'MY_Migration' => '/App/Libraries/MY_Migration.php', + 'Receving_lib' => '/App/Libraries/Receiving_lib.php', + 'Sale_lib' => '/App/Libraries/Sale_lib.php', + 'Sms_lib' => '/App/Libraries/Sms_lib.php', + 'Tax_lib' => '/App/Libraries/Tax_lib.php', + 'Token_lib' => '/App/Libraries/Token_lib.php', - //Miscellaneous - 'Rounding_mode' => '/App/Models/Enums/Rounding_mode.php' - ]; + //Miscellaneous + 'Rounding_mode' => '/App/Models/Enums/Rounding_mode.php' + ]; /** * ------------------------------------------------------------------- @@ -201,10 +201,10 @@ class Autoload extends AutoloadConfig * @var list */ public $helpers = [ - 'form', - 'cookie', - 'tabular', - 'locale', - 'security' - ]; + 'form', + 'cookie', + 'tabular', + 'locale', + 'security' + ]; } diff --git a/app/Config/ContentSecurityPolicy.php b/app/Config/ContentSecurityPolicy.php index 453687525..5a46774af 100644 --- a/app/Config/ContentSecurityPolicy.php +++ b/app/Config/ContentSecurityPolicy.php @@ -48,9 +48,9 @@ class ContentSecurityPolicy extends BaseConfig * @var list|string|null */ public $defaultSrc = [ - 'self', - 'www.google.com', - ]; + 'self', + 'www.google.com', + ]; /** * Lists allowed scripts' URLs. @@ -58,23 +58,23 @@ class ContentSecurityPolicy extends BaseConfig * @var list|string */ public $scriptSrc = [ - 'self', - 'unsafe-inline', - 'unsafe-eval', - 'www.google.com www.gstatic.com' - ]; + 'self', + 'unsafe-inline', + 'unsafe-eval', + 'www.google.com www.gstatic.com' + ]; /** * Lists allowed stylesheets' URLs. * * @var list|string */ - public $styleSrc = [ - 'self', - 'unsafe-inline', - 'nonce-{csp-style-nonce}', - 'https://fonts.googleapis.com', - ]; + public $styleSrc = [ + 'self', + 'unsafe-inline', + 'nonce-{csp-style-nonce}', + 'https://fonts.googleapis.com', + ]; /** * Defines the origins from which images can be loaded. @@ -82,10 +82,10 @@ class ContentSecurityPolicy extends BaseConfig * @var list|string */ public $imageSrc = [ - 'self', - 'data:', - 'blob:', - ]; + 'self', + 'data:', + 'blob:', + ]; /** * Restricts the URLs that can appear in a page's `` element. @@ -110,9 +110,9 @@ class ContentSecurityPolicy extends BaseConfig * @var list|string */ public $connectSrc = [ - 'self', - 'nominatim.openstreetmap.org', - ]; + 'self', + 'nominatim.openstreetmap.org', + ]; /** * Specifies the origins that can serve web fonts. @@ -120,10 +120,10 @@ class ContentSecurityPolicy extends BaseConfig * @var list|string */ public $fontSrc = [ - 'self', - 'fonts.googleapis.com', - 'fonts.gstatic.com', - ]; + 'self', + 'fonts.googleapis.com', + 'fonts.gstatic.com', + ]; /** * Lists valid endpoints for submission from `
` tags. diff --git a/app/Config/Database.php b/app/Config/Database.php index 693fe70f6..1b29bd96b 100644 --- a/app/Config/Database.php +++ b/app/Config/Database.php @@ -19,104 +19,104 @@ class Database extends Config */ public string $defaultGroup = 'default'; - /** - * The default database connection. - * - * @var array - */ - public array $default = [ - 'DSN' => '', - 'hostname' => 'localhost', - 'username' => 'admin', - 'password' => 'pointofsale', - 'database' => 'ospos', - 'DBDriver' => 'MySQLi', - 'DBPrefix' => 'ospos_', - 'pConnect' => false, - 'DBDebug' => (ENVIRONMENT !== 'production'), - 'charset' => 'utf8mb4', - 'DBCollat' => 'utf8mb4_general_ci', - 'swapPre' => '', - 'encrypt' => false, - 'compress' => false, - 'strictOn' => false, - 'failover' => [], - 'port' => 3306, - 'numberNative' => false, - 'dateFormat' => [ - 'date' => 'Y-m-d', - 'datetime' => 'Y-m-d H:i:s', - 'time' => 'H:i:s', - ], - ]; + /** + * The default database connection. + * + * @var array + */ + public array $default = [ + 'DSN' => '', + 'hostname' => 'localhost', + 'username' => 'admin', + 'password' => 'pointofsale', + 'database' => 'ospos', + 'DBDriver' => 'MySQLi', + 'DBPrefix' => 'ospos_', + 'pConnect' => false, + 'DBDebug' => (ENVIRONMENT !== 'production'), + 'charset' => 'utf8mb4', + 'DBCollat' => 'utf8mb4_general_ci', + 'swapPre' => '', + 'encrypt' => false, + 'compress' => false, + 'strictOn' => false, + 'failover' => [], + 'port' => 3306, + 'numberNative' => false, + 'dateFormat' => [ + 'date' => 'Y-m-d', + 'datetime' => 'Y-m-d H:i:s', + 'time' => 'H:i:s', + ], + ]; - /** - * This database connection is used when - * running PHPUnit database tests. - * - * @var array - */ - public array $tests = [ - 'DSN' => '', - 'hostname' => 'localhost', - 'username' => 'admin', - 'password' => 'pointofsale', - 'database' => 'ospos', - 'DBDriver' => 'MySQLi', - 'DBPrefix' => 'ospos_', - 'pConnect' => false, - 'DBDebug' => (ENVIRONMENT !== 'production'), - 'charset' => 'utf8mb4', - 'DBCollat' => 'utf8mb4_general_ci', - 'swapPre' => '', - 'encrypt' => false, - 'compress' => false, - 'strictOn' => false, - 'failover' => [], - 'port' => 3306, - 'foreignKeys' => true, - 'busyTimeout' => 1000, - 'numberNative' => false, - 'dateFormat' => [ - 'date' => 'Y-m-d', - 'datetime' => 'Y-m-d H:i:s', - 'time' => 'H:i:s', - ], - ]; + /** + * This database connection is used when + * running PHPUnit database tests. + * + * @var array + */ + public array $tests = [ + 'DSN' => '', + 'hostname' => 'localhost', + 'username' => 'admin', + 'password' => 'pointofsale', + 'database' => 'ospos', + 'DBDriver' => 'MySQLi', + 'DBPrefix' => 'ospos_', + 'pConnect' => false, + 'DBDebug' => (ENVIRONMENT !== 'production'), + 'charset' => 'utf8mb4', + 'DBCollat' => 'utf8mb4_general_ci', + 'swapPre' => '', + 'encrypt' => false, + 'compress' => false, + 'strictOn' => false, + 'failover' => [], + 'port' => 3306, + 'foreignKeys' => true, + 'busyTimeout' => 1000, + 'numberNative' => false, + 'dateFormat' => [ + 'date' => 'Y-m-d', + 'datetime' => 'Y-m-d H:i:s', + 'time' => 'H:i:s', + ], + ]; - /** - * This database connection is used when - * developing against non-production data. - * - * @var array - */ - public $development = [ - 'DSN' => '', - 'hostname' => 'localhost', - 'username' => 'admin', - 'password' => 'pointofsale', - 'database' => 'ospos', - 'DBDriver' => 'MySQLi', - 'DBPrefix' => 'ospos_', - 'pConnect' => false, - 'DBDebug' => (ENVIRONMENT !== 'production'), - 'charset' => 'utf8mb4', - 'DBCollat' => 'utf8mb4_general_ci', - 'swapPre' => '', - 'encrypt' => false, - 'compress' => false, - 'strictOn' => false, - 'failover' => [], - 'port' => 3306, - 'foreignKeys' => true, - 'busyTimeout' => 1000, - 'numberNative' => false, - 'dateFormat' => [ - 'date' => 'Y-m-d', - 'datetime' => 'Y-m-d H:i:s', - 'time' => 'H:i:s', - ], - ]; + /** + * This database connection is used when + * developing against non-production data. + * + * @var array + */ + public $development = [ + 'DSN' => '', + 'hostname' => 'localhost', + 'username' => 'admin', + 'password' => 'pointofsale', + 'database' => 'ospos', + 'DBDriver' => 'MySQLi', + 'DBPrefix' => 'ospos_', + 'pConnect' => false, + 'DBDebug' => (ENVIRONMENT !== 'production'), + 'charset' => 'utf8mb4', + 'DBCollat' => 'utf8mb4_general_ci', + 'swapPre' => '', + 'encrypt' => false, + 'compress' => false, + 'strictOn' => false, + 'failover' => [], + 'port' => 3306, + 'foreignKeys' => true, + 'busyTimeout' => 1000, + 'numberNative' => false, + 'dateFormat' => [ + 'date' => 'Y-m-d', + 'datetime' => 'Y-m-d H:i:s', + 'time' => 'H:i:s', + ], + ]; public function __construct() { @@ -125,22 +125,22 @@ class Database extends Config // Ensure that we always set the database group to 'tests' if // we are currently running an automated test suite, so that // we don't overwrite live data on accident. - switch(ENVIRONMENT) - { - case 'testing': - $this->defaultGroup = 'tests'; - break; - case 'development'; - $this->defaultGroup = 'development'; - break; - } + switch(ENVIRONMENT) + { + case 'testing': + $this->defaultGroup = 'tests'; + break; + case 'development'; + $this->defaultGroup = 'development'; + break; + } - foreach ([&$this->development, &$this->tests, &$this->default] as &$config) - { - $config['hostname'] = !getenv('MYSQL_HOST_NAME') ? $config['hostname'] : getenv('MYSQL_HOST_NAME'); - $config['username'] = !getenv('MYSQL_USERNAME') ? $config['username'] : getenv('MYSQL_USERNAME'); - $config['password'] = !getenv('MYSQL_PASSWORD') ? $config['password'] : getenv('MYSQL_PASSWORD'); - $config['database'] = !getenv('MYSQL_DB_NAME') ? $config['database'] : getenv('MYSQL_DB_NAME'); - } + foreach ([&$this->development, &$this->tests, &$this->default] as &$config) + { + $config['hostname'] = !getenv('MYSQL_HOST_NAME') ? $config['hostname'] : getenv('MYSQL_HOST_NAME'); + $config['username'] = !getenv('MYSQL_USERNAME') ? $config['username'] : getenv('MYSQL_USERNAME'); + $config['password'] = !getenv('MYSQL_PASSWORD') ? $config['password'] : getenv('MYSQL_PASSWORD'); + $config['database'] = !getenv('MYSQL_DB_NAME') ? $config['database'] : getenv('MYSQL_DB_NAME'); + } } } diff --git a/app/Config/Filters.php b/app/Config/Filters.php index 526229655..7d1ceb441 100644 --- a/app/Config/Filters.php +++ b/app/Config/Filters.php @@ -70,7 +70,7 @@ class Filters extends BaseFilters public array $globals = [ 'before' => [ 'honeypot', - //'csrf' => ['except' => 'login'], //TODO: Temporarily disable CSRF until we get everything sorted. + //'csrf' => ['except' => 'login'], //TODO: Temporarily disable CSRF until we get everything sorted. 'invalidchars', ], 'after' => [ diff --git a/app/Config/Mimes.php b/app/Config/Mimes.php index e47cc0fae..06e11af86 100644 --- a/app/Config/Mimes.php +++ b/app/Config/Mimes.php @@ -491,11 +491,11 @@ class Mimes * @return string|null The mime type found, or none if unable to determine. */ public static function guessTypeFromExtension(string $extension): array|string|null - { + { $extension = trim(strtolower($extension), '. '); if (!array_key_exists($extension, static::$mimes)) - { + { return null; } @@ -510,7 +510,7 @@ class Mimes * @return string|null The extension determined, or null if unable to match. */ public static function guessExtensionFromType(string $type, ?string $proposedExtension = null): ?string - { + { $type = trim(strtolower($type), '. '); $proposedExtension = trim(strtolower($proposedExtension ?? '')); diff --git a/app/Config/OSPOS.php b/app/Config/OSPOS.php index 25e58e5ff..05eb1b8f6 100644 --- a/app/Config/OSPOS.php +++ b/app/Config/OSPOS.php @@ -13,45 +13,45 @@ use CodeIgniter\Config\BaseConfig; */ class OSPOS extends BaseConfig { - public array $settings; - public string $commit_sha1 = 'dev'; //TODO: Travis scripts need to be updated to replace this with the commit hash on build - private CacheInterface $cache; + public array $settings; + public string $commit_sha1 = 'dev'; //TODO: Travis scripts need to be updated to replace this with the commit hash on build + private CacheInterface $cache; - public function __construct() - { - parent::__construct(); - $this->cache = Services::cache(); - $this->set_settings(); - } + public function __construct() + { + parent::__construct(); + $this->cache = Services::cache(); + $this->set_settings(); + } - /** - * @return void - */ - public function set_settings(): void - { - $cache = $this->cache->get('settings'); + /** + * @return void + */ + public function set_settings(): void + { + $cache = $this->cache->get('settings'); - if($cache) - { - $this->settings = decode_array($cache); - } - else - { - $appconfig = model(Appconfig::class); - foreach($appconfig->get_all()->getResult() as $app_config) - { - $this->settings[$app_config->key] = $app_config->value; - } - $this->cache->save('settings', encode_array($this->settings)); - } - } + if($cache) + { + $this->settings = decode_array($cache); + } + else + { + $appconfig = model(Appconfig::class); + foreach($appconfig->get_all()->getResult() as $app_config) + { + $this->settings[$app_config->key] = $app_config->value; + } + $this->cache->save('settings', encode_array($this->settings)); + } + } - /** - * @return void - */ - public function update_settings(): void - { - $this->cache->delete('settings'); - $this->set_settings(); - } + /** + * @return void + */ + public function update_settings(): void + { + $this->cache->delete('settings'); + $this->set_settings(); + } } diff --git a/app/Config/Pager.php b/app/Config/Pager.php index f256d4eef..ad05dd906 100644 --- a/app/Config/Pager.php +++ b/app/Config/Pager.php @@ -35,27 +35,27 @@ class Pager extends BaseConfig */ public int $perPage = 20; - /** - * -------------------------------------------------------------------------- - * Bootstrap 3 pagination links styling - * -------------------------------------------------------------------------- - * - * Source code from http://stackoverflow.com/questions/20088779/bootstrap-3-pagination-with-codeigniter - */ - public $config = [ - 'full_tag_open' => "
    ", - 'full_tag_close' => '
', - 'num_tag_open' => '
  • ', - 'num_tag_close' => '
  • ', - 'cur_tag_open' => "
  • ", - 'cur_tag_close' => "
  • ", - 'next_tag_open' => "
  • ", - 'next_tagl_close' => "
  • ", - 'prev_tag_open' => "
  • ", - 'prev_tagl_close' => "
  • ", - 'first_tag_open' => "
  • ", - 'first_tagl_close' => "
  • ", - 'last_tag_open' => "
  • ", - 'last_tagl_close' => "
  • " - ]; + /** + * -------------------------------------------------------------------------- + * Bootstrap 3 pagination links styling + * -------------------------------------------------------------------------- + * + * Source code from http://stackoverflow.com/questions/20088779/bootstrap-3-pagination-with-codeigniter + */ + public $config = [ + 'full_tag_open' => "
      ", + 'full_tag_close' => '
    ', + 'num_tag_open' => '
  • ', + 'num_tag_close' => '
  • ', + 'cur_tag_open' => "
  • ", + 'cur_tag_close' => "
  • ", + 'next_tag_open' => "
  • ", + 'next_tagl_close' => "
  • ", + 'prev_tag_open' => "
  • ", + 'prev_tagl_close' => "
  • ", + 'first_tag_open' => "
  • ", + 'first_tagl_close' => "
  • ", + 'last_tag_open' => "
  • ", + 'last_tagl_close' => "
  • " + ]; } diff --git a/app/Config/Services.php b/app/Config/Services.php index a85dffde2..56c4500c2 100644 --- a/app/Config/Services.php +++ b/app/Config/Services.php @@ -34,44 +34,44 @@ class Services extends BaseService * } */ - /** - * Responsible for loading the language string translations. - * - * @return MY_Language - */ - public static function language(?string $locale = null, bool $getShared = true) - { - if ($getShared) { - return static::getSharedInstance('language', $locale)->setLocale($locale); - } + /** + * Responsible for loading the language string translations. + * + * @return MY_Language + */ + public static function language(?string $locale = null, bool $getShared = true) + { + if ($getShared) { + return static::getSharedInstance('language', $locale)->setLocale($locale); + } - if (AppServices::get('request') instanceof IncomingRequest) { - $requestLocale = AppServices::get('request')->getLocale(); - } else { - $requestLocale = Locale::getDefault(); - } + if (AppServices::get('request') instanceof IncomingRequest) { + $requestLocale = AppServices::get('request')->getLocale(); + } else { + $requestLocale = Locale::getDefault(); + } - // Use '?:' for empty string check - $locale = $locale ?: $requestLocale; + // Use '?:' for empty string check + $locale = $locale ?: $requestLocale; - return new \App\Libraries\MY_Language($locale); - } + return new \App\Libraries\MY_Language($locale); + } - private static $htmlPurifier; + private static $htmlPurifier; - public static function htmlPurifier($getShared = true) - { - if ($getShared) - { - return static::getSharedInstance('htmlPurifier'); - } + public static function htmlPurifier($getShared = true) + { + if ($getShared) + { + return static::getSharedInstance('htmlPurifier'); + } - if (!isset(static::$htmlPurifier)) - { - $config = HTMLPurifier_Config::createDefault(); - static::$htmlPurifier = new HTMLPurifier($config); - } + if (!isset(static::$htmlPurifier)) + { + $config = HTMLPurifier_Config::createDefault(); + static::$htmlPurifier = new HTMLPurifier($config); + } - return static::$htmlPurifier; - } + return static::$htmlPurifier; + } } diff --git a/app/Config/Validation.php b/app/Config/Validation.php index f31ab9fe7..7e025c369 100644 --- a/app/Config/Validation.php +++ b/app/Config/Validation.php @@ -26,8 +26,8 @@ class Validation extends BaseConfig FormatRules::class, FileRules::class, CreditCardRules::class, - OSPOSRules::class - ]; + OSPOSRules::class + ]; /** * Specifies the views that are used to display the diff --git a/app/Config/Validation/OSPOSRules.php b/app/Config/Validation/OSPOSRules.php index 593d04c78..5c3becd4b 100644 --- a/app/Config/Validation/OSPOSRules.php +++ b/app/Config/Validation/OSPOSRules.php @@ -12,134 +12,134 @@ use Config\Services; */ class OSPOSRules { - private IncomingRequest $request; - private array $config; + private IncomingRequest $request; + private array $config; - /** - * Validates the username and password sent to the login view. User is logged in on successful validation. - * - * @param string $username Username to check against. - * @param string $fields Comma separated string of the fields for validation. - * @param array $data Data sent to the view. - * @param string|null $error The error sent back to the validation handler on failure. - * @return bool True if validation passes or false if there are errors. - * @noinspection PhpUnused - */ - public function login_check(string $username, string $fields , array $data, ?string &$error = null): bool - { - $employee = model(Employee::class); - $this->request = Services::request(); - $this->config = config(OSPOS::class)->settings; + /** + * Validates the username and password sent to the login view. User is logged in on successful validation. + * + * @param string $username Username to check against. + * @param string $fields Comma separated string of the fields for validation. + * @param array $data Data sent to the view. + * @param string|null $error The error sent back to the validation handler on failure. + * @return bool True if validation passes or false if there are errors. + * @noinspection PhpUnused + */ + public function login_check(string $username, string $fields , array $data, ?string &$error = null): bool + { + $employee = model(Employee::class); + $this->request = Services::request(); + $this->config = config(OSPOS::class)->settings; - //Installation Check - if(!$this->installation_check()) - { - $error = lang('Login.invalid_installation'); + //Installation Check + if(!$this->installation_check()) + { + $error = lang('Login.invalid_installation'); - return false; - } + return false; + } - $password = $data['password']; - if(!$employee->login($username, $password)) - { - $error = lang('Login.invalid_username_and_password'); + $password = $data['password']; + if(!$employee->login($username, $password)) + { + $error = lang('Login.invalid_username_and_password'); - return false; - } + return false; + } - $gcaptcha_enabled = array_key_exists('gcaptcha_enable', $this->config) && $this->config['gcaptcha_enable']; - if($gcaptcha_enabled) - { - $g_recaptcha_response = $this->request->getPost('g-recaptcha-response'); + $gcaptcha_enabled = array_key_exists('gcaptcha_enable', $this->config) && $this->config['gcaptcha_enable']; + if($gcaptcha_enabled) + { + $g_recaptcha_response = $this->request->getPost('g-recaptcha-response'); - if(!$this->gcaptcha_check($g_recaptcha_response)) - { - $error = lang('Login.invalid_gcaptcha'); + if(!$this->gcaptcha_check($g_recaptcha_response)) + { + $error = lang('Login.invalid_gcaptcha'); - return false; - } - } + return false; + } + } - return true; - } + return true; + } - /** - * Checks to see if GCaptcha verification was successful. - * - * @param $response - * @return bool true on successful GCaptcha verification or false if GCaptcha failed. - */ - private function gcaptcha_check($response): bool - { - if(!empty($response)) - { - $check = [ - 'secret' => $this->config['gcaptcha_secret_key'], - 'response' => $response, - 'remoteip' => $this->request->getIPAddress() - ]; + /** + * Checks to see if GCaptcha verification was successful. + * + * @param $response + * @return bool true on successful GCaptcha verification or false if GCaptcha failed. + */ + private function gcaptcha_check($response): bool + { + if(!empty($response)) + { + $check = [ + 'secret' => $this->config['gcaptcha_secret_key'], + 'response' => $response, + 'remoteip' => $this->request->getIPAddress() + ]; - $ch = curl_init(); + $ch = curl_init(); - curl_setopt($ch, CURLOPT_URL, "https://www.google.com/recaptcha/api/siteverify"); - curl_setopt($ch, CURLOPT_POST, true); - curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($check)); - curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); + curl_setopt($ch, CURLOPT_URL, "https://www.google.com/recaptcha/api/siteverify"); + curl_setopt($ch, CURLOPT_POST, true); + curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($check)); + curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); - $result = curl_exec($ch); + $result = curl_exec($ch); - curl_close($ch); + curl_close($ch); - $status = json_decode($result, true); + $status = json_decode($result, true); - if(!empty($status['success'])) - { - return true; - } - } + if(!empty($status['success'])) + { + return true; + } + } - return false; - } + return false; + } - /** - * Checks to make sure dependency PHP extensions are installed - * - * @return bool - */ - private function installation_check(): bool - { - $installed_extensions = implode(', ', get_loaded_extensions()); - $required_extensions = ['bcmath', 'intl', 'gd', 'openssl', 'mbstring', 'curl', 'xml', 'json']; - $pattern = '/'; + /** + * Checks to make sure dependency PHP extensions are installed + * + * @return bool + */ + private function installation_check(): bool + { + $installed_extensions = implode(', ', get_loaded_extensions()); + $required_extensions = ['bcmath', 'intl', 'gd', 'openssl', 'mbstring', 'curl', 'xml', 'json']; + $pattern = '/'; - foreach($required_extensions as $extension) - { - $pattern .= '(?=.*\b' . preg_quote($extension, '/') . '\b)'; - } + foreach($required_extensions as $extension) + { + $pattern .= '(?=.*\b' . preg_quote($extension, '/') . '\b)'; + } - $pattern .= '/i'; - $is_installed = preg_match($pattern, $installed_extensions); + $pattern .= '/i'; + $is_installed = preg_match($pattern, $installed_extensions); - if(!$is_installed) - { - log_message('error', '[ERROR] Check your php.ini.'); - log_message('error',"PHP installed extensions: $installed_extensions"); - log_message('error','PHP required extensions: ' . implode(', ', $required_extensions)); - } + if(!$is_installed) + { + log_message('error', '[ERROR] Check your php.ini.'); + log_message('error',"PHP installed extensions: $installed_extensions"); + log_message('error','PHP required extensions: ' . implode(', ', $required_extensions)); + } - return $is_installed; - } + return $is_installed; + } - /** - * Validates the candidate as a decimal number. Takes the locale into account. Used in validation rule calls. - * - * @param string $candidate - * @param string|null $error - * @return bool - * @noinspection PhpUnused - */ - public function decimal_locale(string $candidate, ?string &$error = null): bool - { - return parse_decimals($candidate) !== false; - } + /** + * Validates the candidate as a decimal number. Takes the locale into account. Used in validation rule calls. + * + * @param string $candidate + * @param string|null $error + * @return bool + * @noinspection PhpUnused + */ + public function decimal_locale(string $candidate, ?string &$error = null): bool + { + return parse_decimals($candidate) !== false; + } } diff --git a/app/Controllers/Attributes.php b/app/Controllers/Attributes.php index a16401b68..c23e1b329 100644 --- a/app/Controllers/Attributes.php +++ b/app/Controllers/Attributes.php @@ -12,252 +12,252 @@ require_once('Secure_Controller.php'); **/ class Attributes extends Secure_Controller { - private Attribute $attribute; + private Attribute $attribute; - public function __construct() - { - parent::__construct('attributes'); + public function __construct() + { + parent::__construct('attributes'); - $this->attribute = model(Attribute::class); - } + $this->attribute = model(Attribute::class); + } - /** - * Gets and sends the main view for Attributes to the browser. - * - * @return void - **/ - public function getIndex(): void - { - $data['table_headers'] = get_attribute_definition_manage_table_headers(); + /** + * Gets and sends the main view for Attributes to the browser. + * + * @return void + **/ + public function getIndex(): void + { + $data['table_headers'] = get_attribute_definition_manage_table_headers(); - echo view('attributes/manage', $data); - } + echo view('attributes/manage', $data); + } - /** - * Returns attribute table data rows. This will be called with AJAX. - */ - public function getSearch(): void - { - $search = $this->request->getGet('search'); - $limit = $this->request->getGet('limit', FILTER_SANITIZE_NUMBER_INT); - $offset = $this->request->getGet('offset', FILTER_SANITIZE_NUMBER_INT); - $sort = $this->sanitizeSortColumn(attribute_definition_headers(), $this->request->getGet('sort', FILTER_SANITIZE_FULL_SPECIAL_CHARS), 'definition_id'); - $order = $this->request->getGet('order', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + /** + * Returns attribute table data rows. This will be called with AJAX. + */ + public function getSearch(): void + { + $search = $this->request->getGet('search'); + $limit = $this->request->getGet('limit', FILTER_SANITIZE_NUMBER_INT); + $offset = $this->request->getGet('offset', FILTER_SANITIZE_NUMBER_INT); + $sort = $this->sanitizeSortColumn(attribute_definition_headers(), $this->request->getGet('sort', FILTER_SANITIZE_FULL_SPECIAL_CHARS), 'definition_id'); + $order = $this->request->getGet('order', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $attributes = $this->attribute->search($search, $limit, $offset, $sort, $order); - $total_rows = $this->attribute->get_found_rows($search); + $attributes = $this->attribute->search($search, $limit, $offset, $sort, $order); + $total_rows = $this->attribute->get_found_rows($search); - $data_rows = []; - foreach($attributes->getResult() as $attribute_row) - { - $attribute_row->definition_flags = $this->get_attributes($attribute_row->definition_flags); - $data_rows[] = get_attribute_definition_data_row($attribute_row); - } + $data_rows = []; + foreach($attributes->getResult() as $attribute_row) + { + $attribute_row->definition_flags = $this->get_attributes($attribute_row->definition_flags); + $data_rows[] = get_attribute_definition_data_row($attribute_row); + } - echo json_encode(['total' => $total_rows, 'rows' => $data_rows]); - } + echo json_encode(['total' => $total_rows, 'rows' => $data_rows]); + } - /** - * AJAX called function which saves the attribute value sent via POST by using the model save function. - * @return void - * @noinspection PhpUnused - */ - public function postSaveAttributeValue(): void - { - $success = $this->attribute->saveAttributeValue( - html_entity_decode($this->request->getPost('attribute_value')), - $this->request->getPost('definition_id', FILTER_SANITIZE_NUMBER_INT), - $this->request->getPost('item_id', FILTER_SANITIZE_NUMBER_INT) ?? false, - $this->request->getPost('attribute_id', FILTER_SANITIZE_NUMBER_INT) ?? false - ); + /** + * AJAX called function which saves the attribute value sent via POST by using the model save function. + * @return void + * @noinspection PhpUnused + */ + public function postSaveAttributeValue(): void + { + $success = $this->attribute->saveAttributeValue( + html_entity_decode($this->request->getPost('attribute_value')), + $this->request->getPost('definition_id', FILTER_SANITIZE_NUMBER_INT), + $this->request->getPost('item_id', FILTER_SANITIZE_NUMBER_INT) ?? false, + $this->request->getPost('attribute_id', FILTER_SANITIZE_NUMBER_INT) ?? false + ); - echo json_encode(['success' => $success != 0]); - } + echo json_encode(['success' => $success != 0]); + } - /** - * AJAX called function deleting an attribute value using the model delete function. - * @return void - * @noinspection PhpUnused - */ - public function postDelete_attribute_value(): void - { - $success = $this->attribute->delete_value( - html_entity_decode($this->request->getPost('attribute_value')), - $this->request->getPost('definition_id', FILTER_SANITIZE_NUMBER_INT) - ); + /** + * AJAX called function deleting an attribute value using the model delete function. + * @return void + * @noinspection PhpUnused + */ + public function postDelete_attribute_value(): void + { + $success = $this->attribute->delete_value( + html_entity_decode($this->request->getPost('attribute_value')), + $this->request->getPost('definition_id', FILTER_SANITIZE_NUMBER_INT) + ); - echo json_encode(['success' => $success]); - } + echo json_encode(['success' => $success]); + } - /** - * AJAX called function which saves the attribute definition. - * - * @param int $definition_id - * @return void - * @noinspection PhpUnused - */ - public function postSaveDefinition(int $definition_id = NO_DEFINITION_ID): void - { - $definition_flags = 0; + /** + * AJAX called function which saves the attribute definition. + * + * @param int $definition_id + * @return void + * @noinspection PhpUnused + */ + public function postSaveDefinition(int $definition_id = NO_DEFINITION_ID): void + { + $definition_flags = 0; - $flags = (empty($this->request->getPost('definition_flags'))) ? [] : $this->request->getPost('definition_flags', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + $flags = (empty($this->request->getPost('definition_flags'))) ? [] : $this->request->getPost('definition_flags', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - foreach($flags as $flag) - { - $definition_flags |= $flag; - } + foreach($flags as $flag) + { + $definition_flags |= $flag; + } - //Save definition data - $definition_data = [ - 'definition_name' => $this->request->getPost('definition_name'), - 'definition_unit' => $this->request->getPost('definition_unit') != '' ? $this->request->getPost('definition_unit') : null, - 'definition_flags' => $definition_flags, - 'definition_fk' => $this->request->getPost('definition_group') != '' ? $this->request->getPost('definition_group') : null - ]; + //Save definition data + $definition_data = [ + 'definition_name' => $this->request->getPost('definition_name'), + 'definition_unit' => $this->request->getPost('definition_unit') != '' ? $this->request->getPost('definition_unit') : null, + 'definition_flags' => $definition_flags, + 'definition_fk' => $this->request->getPost('definition_group') != '' ? $this->request->getPost('definition_group') : null + ]; - if ($this->request->getPost('definition_type') != null) - { - $definition_data['definition_type'] = DEFINITION_TYPES[$this->request->getPost('definition_type')]; - } + if ($this->request->getPost('definition_type') != null) + { + $definition_data['definition_type'] = DEFINITION_TYPES[$this->request->getPost('definition_type')]; + } - $definition_name = $definition_data['definition_name']; + $definition_name = $definition_data['definition_name']; - if($this->attribute->save_definition($definition_data, $definition_id)) - { - //New definition - if($definition_id == NO_DEFINITION_ID) - { - $definition_values = json_decode(html_entity_decode($this->request->getPost('definition_values'))); + if($this->attribute->save_definition($definition_data, $definition_id)) + { + //New definition + if($definition_id == NO_DEFINITION_ID) + { + $definition_values = json_decode(html_entity_decode($this->request->getPost('definition_values'))); - foreach($definition_values as $definition_value) - { - $this->attribute->saveAttributeValue($definition_value, $definition_data['definition_id']); - } + foreach($definition_values as $definition_value) + { + $this->attribute->saveAttributeValue($definition_value, $definition_data['definition_id']); + } - echo json_encode([ - 'success' => true, - 'message' => lang('Attributes.definition_successful_adding') . ' ' . $definition_name, - 'id' => $definition_data['definition_id'] - ]); - } - //Existing definition - else - { - echo json_encode([ - 'success' => true, - 'message' => lang('Attributes.definition_successful_updating') . ' ' . $definition_name, - 'id' => $definition_id - ]); - } - } - //Failure - else - { - echo json_encode([ - 'success' => false, - 'message' => lang('Attributes.definition_error_adding_updating', [$definition_name]), - 'id' => NEW_ENTRY - ]); - } - } + echo json_encode([ + 'success' => true, + 'message' => lang('Attributes.definition_successful_adding') . ' ' . $definition_name, + 'id' => $definition_data['definition_id'] + ]); + } + //Existing definition + else + { + echo json_encode([ + 'success' => true, + 'message' => lang('Attributes.definition_successful_updating') . ' ' . $definition_name, + 'id' => $definition_id + ]); + } + } + //Failure + else + { + echo json_encode([ + 'success' => false, + 'message' => lang('Attributes.definition_error_adding_updating', [$definition_name]), + 'id' => NEW_ENTRY + ]); + } + } - /** - * - * @param int $definition_id - * @return void - * @noinspection PhpUnused - */ - public function getSuggestAttribute(int $definition_id): void - { - $suggestions = $this->attribute->get_suggestions($definition_id, html_entity_decode($this->request->getGet('term'))); + /** + * + * @param int $definition_id + * @return void + * @noinspection PhpUnused + */ + public function getSuggestAttribute(int $definition_id): void + { + $suggestions = $this->attribute->get_suggestions($definition_id, html_entity_decode($this->request->getGet('term'))); - echo json_encode($suggestions); - } + echo json_encode($suggestions); + } - /** - * @param int $row_id - * @return void - */ - public function getRow(int $row_id): void - { - $attribute_definition_info = $this->attribute->getAttributeInfo($row_id); - $attribute_definition_info->definition_flags = $this->get_attributes($attribute_definition_info->definition_flags); - $data_row = get_attribute_definition_data_row($attribute_definition_info); + /** + * @param int $row_id + * @return void + */ + public function getRow(int $row_id): void + { + $attribute_definition_info = $this->attribute->getAttributeInfo($row_id); + $attribute_definition_info->definition_flags = $this->get_attributes($attribute_definition_info->definition_flags); + $data_row = get_attribute_definition_data_row($attribute_definition_info); - echo json_encode($data_row); - } + echo json_encode($data_row); + } - /** - * @param int $definition_flags - * @return array - */ - private function get_attributes(int $definition_flags = 0): array - { - $definition_flag_names = []; - foreach (Attribute::get_definition_flags() as $id => $term) - { - if ($id & $definition_flags) - { - $definition_flag_names[$id] = lang('Attributes.' . strtolower($term) . '_visibility'); - } - } - return $definition_flag_names; - } + /** + * @param int $definition_flags + * @return array + */ + private function get_attributes(int $definition_flags = 0): array + { + $definition_flag_names = []; + foreach (Attribute::get_definition_flags() as $id => $term) + { + if ($id & $definition_flags) + { + $definition_flag_names[$id] = lang('Attributes.' . strtolower($term) . '_visibility'); + } + } + return $definition_flag_names; + } - /** - * @param int $definition_id - * @return void - */ - public function getView(int $definition_id = NO_DEFINITION_ID): void - { - $info = $this->attribute->getAttributeInfo($definition_id); - foreach(get_object_vars($info) as $property => $value) - { - $info->$property = $value; - } + /** + * @param int $definition_id + * @return void + */ + public function getView(int $definition_id = NO_DEFINITION_ID): void + { + $info = $this->attribute->getAttributeInfo($definition_id); + foreach(get_object_vars($info) as $property => $value) + { + $info->$property = $value; + } - $data['definition_id'] = $definition_id; - $data['definition_values'] = $this->attribute->get_definition_values($definition_id); - $data['definition_group'] = $this->attribute->get_definitions_by_type(GROUP, $definition_id); - $data['definition_group'][''] = lang('Common.none_selected_text'); - $data['definition_info'] = $info; + $data['definition_id'] = $definition_id; + $data['definition_values'] = $this->attribute->get_definition_values($definition_id); + $data['definition_group'] = $this->attribute->get_definitions_by_type(GROUP, $definition_id); + $data['definition_group'][''] = lang('Common.none_selected_text'); + $data['definition_info'] = $info; - $show_all = Attribute::SHOW_IN_ITEMS | Attribute::SHOW_IN_RECEIVINGS | Attribute::SHOW_IN_SALES; - $data['definition_flags'] = $this->get_attributes($show_all); - $selected_flags = $info->definition_flags === '' ? $show_all : $info->definition_flags; - $data['selected_definition_flags'] = $this->get_attributes($selected_flags); + $show_all = Attribute::SHOW_IN_ITEMS | Attribute::SHOW_IN_RECEIVINGS | Attribute::SHOW_IN_SALES; + $data['definition_flags'] = $this->get_attributes($show_all); + $selected_flags = $info->definition_flags === '' ? $show_all : $info->definition_flags; + $data['selected_definition_flags'] = $this->get_attributes($selected_flags); - echo view('attributes/form', $data); - } + echo view('attributes/form', $data); + } - /** - * AJAX called function to delete an attribute value. This is called when a dropdown item is removed. - * - * @param string $attribute_value - * @return bool - * @noinspection PhpUnused - */ - public function delete_value(string $attribute_value): bool - { - return $this->attribute->delete_value($attribute_value, NO_DEFINITION_ID); - } + /** + * AJAX called function to delete an attribute value. This is called when a dropdown item is removed. + * + * @param string $attribute_value + * @return bool + * @noinspection PhpUnused + */ + public function delete_value(string $attribute_value): bool + { + return $this->attribute->delete_value($attribute_value, NO_DEFINITION_ID); + } - /** - * Deletes an attribute definition - * @return void - */ - public function postDelete(): void - { - $attributes_to_delete = $this->request->getPost('ids', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + /** + * Deletes an attribute definition + * @return void + */ + public function postDelete(): void + { + $attributes_to_delete = $this->request->getPost('ids', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - if($this->attribute->delete_definition_list($attributes_to_delete)) - { - $message = lang('Attributes.definition_successful_deleted') . ' ' . count($attributes_to_delete) . ' ' . lang('Attributes.definition_one_or_multiple'); - echo json_encode(['success' => true, 'message' => $message]); - } - else - { - echo json_encode(['success' => false, 'message' => lang('Attributes.definition_cannot_be_deleted')]); - } - } + if($this->attribute->delete_definition_list($attributes_to_delete)) + { + $message = lang('Attributes.definition_successful_deleted') . ' ' . count($attributes_to_delete) . ' ' . lang('Attributes.definition_one_or_multiple'); + echo json_encode(['success' => true, 'message' => $message]); + } + else + { + echo json_encode(['success' => false, 'message' => lang('Attributes.definition_cannot_be_deleted')]); + } + } } diff --git a/app/Controllers/Cashups.php b/app/Controllers/Cashups.php index 72714c409..24a264fd3 100644 --- a/app/Controllers/Cashups.php +++ b/app/Controllers/Cashups.php @@ -10,301 +10,301 @@ use Config\Services; class Cashups extends Secure_Controller { - private Cashup $cashup; - private Expense $expense; - private Summary_payments $summary_payments; - private array $config; + private Cashup $cashup; + private Expense $expense; + private Summary_payments $summary_payments; + private array $config; - public function __construct() - { - parent::__construct('cashups'); + public function __construct() + { + parent::__construct('cashups'); - $this->cashup = model(Cashup::class); - $this->expense = model(Expense::class); - $this->summary_payments = model(Summary_payments::class); - $this->config = config(OSPOS::class)->settings; - } + $this->cashup = model(Cashup::class); + $this->expense = model(Expense::class); + $this->summary_payments = model(Summary_payments::class); + $this->config = config(OSPOS::class)->settings; + } - /** - * @return void - */ - public function getIndex(): void - { - $data['table_headers'] = get_cashups_manage_table_headers(); + /** + * @return void + */ + public function getIndex(): void + { + $data['table_headers'] = get_cashups_manage_table_headers(); - // filters that will be loaded in the multiselect dropdown - $data['filters'] = ['is_deleted' => lang('Cashups.is_deleted')]; + // filters that will be loaded in the multiselect dropdown + $data['filters'] = ['is_deleted' => lang('Cashups.is_deleted')]; - echo view('cashups/manage', $data); - } + echo view('cashups/manage', $data); + } - /** - * @return void - */ - public function getSearch(): void - { - $search = $this->request->getGet('search'); - $limit = $this->request->getGet('limit', FILTER_SANITIZE_NUMBER_INT); - $offset = $this->request->getGet('offset', FILTER_SANITIZE_NUMBER_INT); - $sort = $this->sanitizeSortColumn(cashup_headers(), $this->request->getGet('sort', FILTER_SANITIZE_FULL_SPECIAL_CHARS), 'cashup_id'); - $order = $this->request->getGet('order', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $filters = [ - 'start_date' => $this->request->getGet('start_date', FILTER_SANITIZE_FULL_SPECIAL_CHARS), //TODO: Is this the best way to filter dates - 'end_date' => $this->request->getGet('end_date', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'is_deleted' => false - ]; + /** + * @return void + */ + public function getSearch(): void + { + $search = $this->request->getGet('search'); + $limit = $this->request->getGet('limit', FILTER_SANITIZE_NUMBER_INT); + $offset = $this->request->getGet('offset', FILTER_SANITIZE_NUMBER_INT); + $sort = $this->sanitizeSortColumn(cashup_headers(), $this->request->getGet('sort', FILTER_SANITIZE_FULL_SPECIAL_CHARS), 'cashup_id'); + $order = $this->request->getGet('order', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + $filters = [ + 'start_date' => $this->request->getGet('start_date', FILTER_SANITIZE_FULL_SPECIAL_CHARS), //TODO: Is this the best way to filter dates + 'end_date' => $this->request->getGet('end_date', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'is_deleted' => false + ]; - // check if any filter is set in the multiselect dropdown - $request_filters = array_fill_keys($this->request->getGet('filters', FILTER_SANITIZE_FULL_SPECIAL_CHARS) ?? [], true); - $filters = array_merge($filters, $request_filters); - $cash_ups = $this->cashup->search($search, $filters, $limit, $offset, $sort, $order); - $total_rows = $this->cashup->get_found_rows($search, $filters); - $data_rows = []; - foreach($cash_ups->getResult() as $cash_up) - { - $data_rows[] = get_cash_up_data_row($cash_up); - } + // check if any filter is set in the multiselect dropdown + $request_filters = array_fill_keys($this->request->getGet('filters', FILTER_SANITIZE_FULL_SPECIAL_CHARS) ?? [], true); + $filters = array_merge($filters, $request_filters); + $cash_ups = $this->cashup->search($search, $filters, $limit, $offset, $sort, $order); + $total_rows = $this->cashup->get_found_rows($search, $filters); + $data_rows = []; + foreach($cash_ups->getResult() as $cash_up) + { + $data_rows[] = get_cash_up_data_row($cash_up); + } - echo json_encode(['total' => $total_rows, 'rows' => $data_rows]); - } + echo json_encode(['total' => $total_rows, 'rows' => $data_rows]); + } - /** - * @param int $cashup_id - * @return void - */ - public function getView(int $cashup_id = NEW_ENTRY): void - { - $data = []; + /** + * @param int $cashup_id + * @return void + */ + public function getView(int $cashup_id = NEW_ENTRY): void + { + $data = []; - $data['employees'] = []; - foreach($this->employee->get_all()->getResult() as $employee) - { - foreach(get_object_vars($employee) as $property => $value) - { - $employee->$property = $value; - } + $data['employees'] = []; + foreach($this->employee->get_all()->getResult() as $employee) + { + foreach(get_object_vars($employee) as $property => $value) + { + $employee->$property = $value; + } - $data['employees'][$employee->person_id] = $employee->first_name . ' ' . $employee->last_name; - } + $data['employees'][$employee->person_id] = $employee->first_name . ' ' . $employee->last_name; + } - $cash_ups_info = $this->cashup->get_info($cashup_id); + $cash_ups_info = $this->cashup->get_info($cashup_id); - foreach(get_object_vars($cash_ups_info) as $property => $value) - { - $cash_ups_info->$property = $value; - } + foreach(get_object_vars($cash_ups_info) as $property => $value) + { + $cash_ups_info->$property = $value; + } - // open cashup - if($cash_ups_info->cashup_id == NEW_ENTRY) - { - $cash_ups_info->open_date = date('Y-m-d H:i:s'); - $cash_ups_info->close_date = $cash_ups_info->open_date; - $cash_ups_info->open_employee_id = $this->employee->get_logged_in_employee_info()->person_id; - $cash_ups_info->close_employee_id = $this->employee->get_logged_in_employee_info()->person_id; - } - // if all the amounts are null or 0 that means it's a close cashup - elseif(floatval($cash_ups_info->closed_amount_cash) == 0 - && floatval($cash_ups_info->closed_amount_due) == 0 - && floatval($cash_ups_info->closed_amount_card) == 0 - && floatval($cash_ups_info->closed_amount_check) == 0) - { - // set the close date and time to the actual as this is a close session - $cash_ups_info->close_date = date('Y-m-d H:i:s'); + // open cashup + if($cash_ups_info->cashup_id == NEW_ENTRY) + { + $cash_ups_info->open_date = date('Y-m-d H:i:s'); + $cash_ups_info->close_date = $cash_ups_info->open_date; + $cash_ups_info->open_employee_id = $this->employee->get_logged_in_employee_info()->person_id; + $cash_ups_info->close_employee_id = $this->employee->get_logged_in_employee_info()->person_id; + } + // if all the amounts are null or 0 that means it's a close cashup + elseif(floatval($cash_ups_info->closed_amount_cash) == 0 + && floatval($cash_ups_info->closed_amount_due) == 0 + && floatval($cash_ups_info->closed_amount_card) == 0 + && floatval($cash_ups_info->closed_amount_check) == 0) + { + // set the close date and time to the actual as this is a close session + $cash_ups_info->close_date = date('Y-m-d H:i:s'); - // the closed amount starts with the open amount -/+ any trasferred amount - $cash_ups_info->closed_amount_cash = $cash_ups_info->open_amount_cash + $cash_ups_info->transfer_amount_cash; + // the closed amount starts with the open amount -/+ any trasferred amount + $cash_ups_info->closed_amount_cash = $cash_ups_info->open_amount_cash + $cash_ups_info->transfer_amount_cash; - // if it's date mode only and not date & time truncate the open and end date to date only - if(empty($this->config['date_or_time_format'])) - { - if($cash_ups_info->open_date != null) - { - $start_date = substr($cash_ups_info->open_date, 0, 10); - } - else - { - $start_date = null; - } - if($cash_ups_info->close_date != null) - { - $end_date = substr($cash_ups_info->close_date, 0, 10); - } - else - { - $end_date = null; - } - // search for all the payments given the time range - $inputs = [ - 'start_date' => $start_date, - 'end_date' => $end_date, - 'sale_type' => 'complete', - 'location_id' => 'all' - ]; - } - else - { - // search for all the payments given the time range - $inputs = [ - 'start_date' => $cash_ups_info->open_date, - 'end_date' => $cash_ups_info->close_date, - 'sale_type' => 'complete', - 'location_id' => 'all' - ]; - } + // if it's date mode only and not date & time truncate the open and end date to date only + if(empty($this->config['date_or_time_format'])) + { + if($cash_ups_info->open_date != null) + { + $start_date = substr($cash_ups_info->open_date, 0, 10); + } + else + { + $start_date = null; + } + if($cash_ups_info->close_date != null) + { + $end_date = substr($cash_ups_info->close_date, 0, 10); + } + else + { + $end_date = null; + } + // search for all the payments given the time range + $inputs = [ + 'start_date' => $start_date, + 'end_date' => $end_date, + 'sale_type' => 'complete', + 'location_id' => 'all' + ]; + } + else + { + // search for all the payments given the time range + $inputs = [ + 'start_date' => $cash_ups_info->open_date, + 'end_date' => $cash_ups_info->close_date, + 'sale_type' => 'complete', + 'location_id' => 'all' + ]; + } - // get all the transactions payment summaries - $reports_data = $this->summary_payments->getData($inputs); + // get all the transactions payment summaries + $reports_data = $this->summary_payments->getData($inputs); - foreach($reports_data as $row) - { - if($row['trans_group'] == lang('Reports.trans_payments')) - { - if($row['trans_type'] == lang('Sales.cash')) - { - $cash_ups_info->closed_amount_cash += $row['trans_amount']; - } - elseif($row['trans_type'] == lang('Sales.due')) - { - $cash_ups_info->closed_amount_due += $row['trans_amount']; - } - elseif($row['trans_type'] == lang('Sales.debit') || - $row['trans_type'] == lang('Sales.credit')) - { - $cash_ups_info->closed_amount_card += $row['trans_amount']; - } - elseif($row['trans_type'] == lang('Sales.check')) - { - $cash_ups_info->closed_amount_check += $row['trans_amount']; - } - } - } + foreach($reports_data as $row) + { + if($row['trans_group'] == lang('Reports.trans_payments')) + { + if($row['trans_type'] == lang('Sales.cash')) + { + $cash_ups_info->closed_amount_cash += $row['trans_amount']; + } + elseif($row['trans_type'] == lang('Sales.due')) + { + $cash_ups_info->closed_amount_due += $row['trans_amount']; + } + elseif($row['trans_type'] == lang('Sales.debit') || + $row['trans_type'] == lang('Sales.credit')) + { + $cash_ups_info->closed_amount_card += $row['trans_amount']; + } + elseif($row['trans_type'] == lang('Sales.check')) + { + $cash_ups_info->closed_amount_check += $row['trans_amount']; + } + } + } - // lookup expenses paid in cash - $filters = [ - 'only_cash' => true, - 'only_due' => false, - 'only_check' => false, - 'only_credit' => false, - 'only_debit' => false, - 'is_deleted' => false - ]; + // lookup expenses paid in cash + $filters = [ + 'only_cash' => true, + 'only_due' => false, + 'only_check' => false, + 'only_credit' => false, + 'only_debit' => false, + 'is_deleted' => false + ]; - $payments = $this->expense->get_payments_summary('', array_merge($inputs, $filters)); + $payments = $this->expense->get_payments_summary('', array_merge($inputs, $filters)); - foreach($payments as $row) - { - $cash_ups_info->closed_amount_cash -= $row['amount']; - } + foreach($payments as $row) + { + $cash_ups_info->closed_amount_cash -= $row['amount']; + } - $cash_ups_info->closed_amount_total = $this->_calculate_total($cash_ups_info->open_amount_cash, $cash_ups_info->transfer_amount_cash, $cash_ups_info->closed_amount_cash, $cash_ups_info->closed_amount_due, $cash_ups_info->closed_amount_card, $cash_ups_info->closed_amount_check); - } + $cash_ups_info->closed_amount_total = $this->_calculate_total($cash_ups_info->open_amount_cash, $cash_ups_info->transfer_amount_cash, $cash_ups_info->closed_amount_cash, $cash_ups_info->closed_amount_due, $cash_ups_info->closed_amount_card, $cash_ups_info->closed_amount_check); + } - $data['cash_ups_info'] = $cash_ups_info; + $data['cash_ups_info'] = $cash_ups_info; - echo view("cashups/form", $data); - } + echo view("cashups/form", $data); + } - /** - * @param int $row_id - * @return void - */ - public function getRow(int $row_id): void - { - $cash_ups_info = $this->cashup->get_info($row_id); - $data_row = get_cash_up_data_row($cash_ups_info); + /** + * @param int $row_id + * @return void + */ + public function getRow(int $row_id): void + { + $cash_ups_info = $this->cashup->get_info($row_id); + $data_row = get_cash_up_data_row($cash_ups_info); - echo json_encode($data_row); - } + echo json_encode($data_row); + } - /** - * @param int $cashup_id - * @return void - */ - public function postSave(int $cashup_id = NEW_ENTRY): void - { - $open_date = $this->request->getPost('open_date'); - $open_date_formatter = date_create_from_format($this->config['dateformat'] . ' ' . $this->config['timeformat'], $open_date); + /** + * @param int $cashup_id + * @return void + */ + public function postSave(int $cashup_id = NEW_ENTRY): void + { + $open_date = $this->request->getPost('open_date'); + $open_date_formatter = date_create_from_format($this->config['dateformat'] . ' ' . $this->config['timeformat'], $open_date); - $close_date = $this->request->getPost('close_date'); - $close_date_formatter = date_create_from_format($this->config['dateformat'] . ' ' . $this->config['timeformat'], $close_date); + $close_date = $this->request->getPost('close_date'); + $close_date_formatter = date_create_from_format($this->config['dateformat'] . ' ' . $this->config['timeformat'], $close_date); - $cash_up_data = [ - 'open_date' => $open_date_formatter->format('Y-m-d H:i:s'), - 'close_date' => $close_date_formatter->format('Y-m-d H:i:s'), - 'open_amount_cash' => parse_decimals($this->request->getPost('open_amount_cash')), - 'transfer_amount_cash' => parse_decimals($this->request->getPost('transfer_amount_cash')), - 'closed_amount_cash' => parse_decimals($this->request->getPost('closed_amount_cash')), - 'closed_amount_due' => parse_decimals($this->request->getPost('closed_amount_due')), - 'closed_amount_card' => parse_decimals($this->request->getPost('closed_amount_card')), - 'closed_amount_check' => parse_decimals($this->request->getPost('closed_amount_check')), - 'closed_amount_total' => parse_decimals($this->request->getPost('closed_amount_total')), - 'note' => $this->request->getPost('note') != null, - 'description' => $this->request->getPost('description', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'open_employee_id' => $this->request->getPost('open_employee_id', FILTER_SANITIZE_NUMBER_INT), - 'close_employee_id' => $this->request->getPost('close_employee_id', FILTER_SANITIZE_NUMBER_INT), - 'deleted' => $this->request->getPost('deleted') != null - ]; + $cash_up_data = [ + 'open_date' => $open_date_formatter->format('Y-m-d H:i:s'), + 'close_date' => $close_date_formatter->format('Y-m-d H:i:s'), + 'open_amount_cash' => parse_decimals($this->request->getPost('open_amount_cash')), + 'transfer_amount_cash' => parse_decimals($this->request->getPost('transfer_amount_cash')), + 'closed_amount_cash' => parse_decimals($this->request->getPost('closed_amount_cash')), + 'closed_amount_due' => parse_decimals($this->request->getPost('closed_amount_due')), + 'closed_amount_card' => parse_decimals($this->request->getPost('closed_amount_card')), + 'closed_amount_check' => parse_decimals($this->request->getPost('closed_amount_check')), + 'closed_amount_total' => parse_decimals($this->request->getPost('closed_amount_total')), + 'note' => $this->request->getPost('note') != null, + 'description' => $this->request->getPost('description', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'open_employee_id' => $this->request->getPost('open_employee_id', FILTER_SANITIZE_NUMBER_INT), + 'close_employee_id' => $this->request->getPost('close_employee_id', FILTER_SANITIZE_NUMBER_INT), + 'deleted' => $this->request->getPost('deleted') != null + ]; - if($this->cashup->save_value($cash_up_data, $cashup_id)) - { - //New cashup_id - if($cashup_id == NEW_ENTRY) - { - echo json_encode(['success' => true, 'message' => lang('Cashups.successful_adding'), 'id' => $cash_up_data['cashup_id']]); - } - else // Existing Cashup - { - echo json_encode(['success' => true, 'message' => lang('Cashups.successful_updating'), 'id' => $cashup_id]); - } - } - else//failure - { - echo json_encode(['success' => false, 'message' => lang('Cashups.error_adding_updating'), 'id' => NEW_ENTRY]); - } - } + if($this->cashup->save_value($cash_up_data, $cashup_id)) + { + //New cashup_id + if($cashup_id == NEW_ENTRY) + { + echo json_encode(['success' => true, 'message' => lang('Cashups.successful_adding'), 'id' => $cash_up_data['cashup_id']]); + } + else // Existing Cashup + { + echo json_encode(['success' => true, 'message' => lang('Cashups.successful_updating'), 'id' => $cashup_id]); + } + } + else//failure + { + echo json_encode(['success' => false, 'message' => lang('Cashups.error_adding_updating'), 'id' => NEW_ENTRY]); + } + } - /** - * @return void - */ - public function postDelete(): void - { - $cash_ups_to_delete = $this->request->getPost('ids', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + /** + * @return void + */ + public function postDelete(): void + { + $cash_ups_to_delete = $this->request->getPost('ids', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - if($this->cashup->delete_list($cash_ups_to_delete)) - { - echo json_encode(['success' => true, 'message' => lang('Cashups.successful_deleted') . ' ' . count($cash_ups_to_delete) . ' ' . lang('Cashups.one_or_multiple'), 'ids' => $cash_ups_to_delete]); - } - else - { - echo json_encode(['success' => false, 'message' => lang('Cashups.cannot_be_deleted'), 'ids' => $cash_ups_to_delete]); - } - } + if($this->cashup->delete_list($cash_ups_to_delete)) + { + echo json_encode(['success' => true, 'message' => lang('Cashups.successful_deleted') . ' ' . count($cash_ups_to_delete) . ' ' . lang('Cashups.one_or_multiple'), 'ids' => $cash_ups_to_delete]); + } + else + { + echo json_encode(['success' => false, 'message' => lang('Cashups.cannot_be_deleted'), 'ids' => $cash_ups_to_delete]); + } + } - /** - * Calculate the total for cashups. Used in app\Views\cashups\form.php - * - * @return void - * @noinspection PhpUnused - */ - public function ajax_cashup_total(): void - { - $open_amount_cash = parse_decimals($this->request->getPost('open_amount_cash')); - $transfer_amount_cash = parse_decimals($this->request->getPost('transfer_amount_cash')); - $closed_amount_cash = parse_decimals($this->request->getPost('closed_amount_cash')); - $closed_amount_due = parse_decimals($this->request->getPost('closed_amount_due')); - $closed_amount_card = parse_decimals($this->request->getPost('closed_amount_card')); - $closed_amount_check = parse_decimals($this->request->getPost('closed_amount_check')); + /** + * Calculate the total for cashups. Used in app\Views\cashups\form.php + * + * @return void + * @noinspection PhpUnused + */ + public function ajax_cashup_total(): void + { + $open_amount_cash = parse_decimals($this->request->getPost('open_amount_cash')); + $transfer_amount_cash = parse_decimals($this->request->getPost('transfer_amount_cash')); + $closed_amount_cash = parse_decimals($this->request->getPost('closed_amount_cash')); + $closed_amount_due = parse_decimals($this->request->getPost('closed_amount_due')); + $closed_amount_card = parse_decimals($this->request->getPost('closed_amount_card')); + $closed_amount_check = parse_decimals($this->request->getPost('closed_amount_check')); - $total = $this->_calculate_total($open_amount_cash, $transfer_amount_cash, $closed_amount_due, $closed_amount_cash, $closed_amount_card, $closed_amount_check); //TODO: hungarian notation + $total = $this->_calculate_total($open_amount_cash, $transfer_amount_cash, $closed_amount_due, $closed_amount_cash, $closed_amount_card, $closed_amount_check); //TODO: hungarian notation - echo json_encode(['total' => to_currency_no_money($total)]); - } + echo json_encode(['total' => to_currency_no_money($total)]); + } - /** - * Calculate total - */ - private function _calculate_total(float $open_amount_cash, float $transfer_amount_cash, float $closed_amount_due, float $closed_amount_cash, float $closed_amount_card, $closed_amount_check): float //TODO: need to get rid of hungarian notation here. Also, the signature is pretty long. Perhaps they need to go into an object or array? - { - return ($closed_amount_cash - $open_amount_cash - $transfer_amount_cash + $closed_amount_due + $closed_amount_card + $closed_amount_check); - } + /** + * Calculate total + */ + private function _calculate_total(float $open_amount_cash, float $transfer_amount_cash, float $closed_amount_due, float $closed_amount_cash, float $closed_amount_card, $closed_amount_check): float //TODO: need to get rid of hungarian notation here. Also, the signature is pretty long. Perhaps they need to go into an object or array? + { + return ($closed_amount_cash - $open_amount_cash - $transfer_amount_cash + $closed_amount_due + $closed_amount_card + $closed_amount_check); + } } diff --git a/app/Controllers/Config.php b/app/Controllers/Config.php index a04da74f0..e55e5f388 100644 --- a/app/Controllers/Config.php +++ b/app/Controllers/Config.php @@ -87,9 +87,9 @@ class Config extends Secure_Controller $license[$i]['text'] = 'LICENSE file must be in OSPOS license directory. You are not allowed to use OSPOS application until the distribution copy of LICENSE file is present.'; } - $dir = new DirectoryIterator('license'); // read all the files in the dir license + $dir = new DirectoryIterator('license'); // read all the files in the dir license - foreach ($dir as $fileinfo) { //TODO: $fileinfo doesn't match our variable naming convention + foreach ($dir as $fileinfo) { //TODO: $fileinfo doesn't match our variable naming convention // license files must be in couples: .version (name & version) & .license (license text) if ($fileinfo->isFile()) { if ($fileinfo->getExtension() == 'version') { @@ -129,7 +129,7 @@ class Config extends Secure_Controller if (is_array($val) && $key == 'dependencies') { foreach ($val as $key1 => $val1) { if (is_array($val1)) { - $license[$i]['text'] .= "component: $key1\n"; //TODO: Duplicated Code + $license[$i]['text'] .= "component: $key1\n"; //TODO: Duplicated Code foreach ($val1 as $key2 => $val2) { if (is_array($val2)) { @@ -165,7 +165,7 @@ class Config extends Secure_Controller foreach ($array as $key => $val) { if (is_array($val)) { - $license[$i]['text'] .= "component: $key\n"; //TODO: Duplicated Code. + $license[$i]['text'] .= "component: $key\n"; //TODO: Duplicated Code. foreach ($val as $key1 => $val1) { if (is_array($val1)) { @@ -193,14 +193,14 @@ class Config extends Secure_Controller * This function loads all the available themes in the dist/bootswatch directory * @return array */ - private function _themes(): array //TODO: Hungarian notation + private function _themes(): array //TODO: Hungarian notation { $themes = []; // read all themes in the dist folder $dir = new DirectoryIterator('resources/bootswatch'); - foreach ($dir as $dirinfo) { //TODO: $dirinfo doesn't follow naming convention + foreach ($dir as $dirinfo) { //TODO: $dirinfo doesn't follow naming convention if ($dirinfo->isDir() && !$dirinfo->isDot() && $dirinfo->getFileName() != 'fonts') { $file = $dirinfo->getFileName(); $themes[$file] = ucfirst($file); @@ -245,9 +245,9 @@ class Config extends Secure_Controller $data['selected_image_allowed_types'] = explode(',', $this->config['image_allowed_types']); //Integrations Related fields - $data['mailchimp'] = []; + $data['mailchimp'] = []; - if (check_encryption()) { //TODO: Hungarian notation + if (check_encryption()) { //TODO: Hungarian notation if (!isset($this->encrypter)) { helper('security'); $this->encrypter = Services::encrypter(); @@ -542,7 +542,7 @@ class Config extends Secure_Controller /** * This function fetches all the available lists from Mailchimp for the given API key */ - private function _mailchimp(string $api_key = ''): array //TODO: Hungarian notation + private function _mailchimp(string $api_key = ''): array //TODO: Hungarian notation { $mailchimp_lib = new Mailchimp_lib(['api_key' => $api_key]); @@ -638,7 +638,7 @@ class Config extends Secure_Controller * * @return void */ - public function ajax_tax_categories(): void //TODO: Is this function called anywhere in the code? + public function ajax_tax_categories(): void //TODO: Is this function called anywhere in the code? { $tax_categories = $this->tax->get_all_tax_categories()->getResultArray(); @@ -661,7 +661,7 @@ class Config extends Secure_Controller /** * @return void */ - private function _clear_session_state(): void //TODO: Hungarian notation + private function _clear_session_state(): void //TODO: Hungarian notation { $this->sale_lib->clear_sale_location(); $this->sale_lib->clear_table(); @@ -730,7 +730,7 @@ class Config extends Secure_Controller if ($dinner_table_enable) { $not_to_delete = []; - foreach ($this->request->getPost() as $key => $value) { //TODO: Not sure if this is the best way to filter the array + foreach ($this->request->getPost() as $key => $value) { //TODO: Not sure if this is the best way to filter the array if (strstr($key, 'dinner_table') && $key != 'dinner_table_enable') { $dinner_table_id = preg_replace("/.*?_(\d+)$/", "$1", $key); $not_to_delete[] = $dinner_table_id; @@ -738,7 +738,7 @@ class Config extends Secure_Controller // save or update $table_data = ['name' => $value]; if ($this->dinner_table->save_value($table_data, $dinner_table_id)) { - $this->_clear_session_state(); //TODO: Remove hungarian notation. + $this->_clear_session_state(); //TODO: Remove hungarian notation. } } } @@ -825,7 +825,7 @@ class Config extends Secure_Controller foreach ($array_save as $key => $value) { // save or update $package_data = ['package_name' => $value['package_name'], 'points_percent' => $value['points_percent']]; - $this->customer_rewards->save_value($package_data, $key); //TODO: reflection exception + $this->customer_rewards->save_value($package_data, $key); //TODO: reflection exception } } diff --git a/app/Controllers/Customers.php b/app/Controllers/Customers.php index 4cb88d6ea..cf206cc5d 100644 --- a/app/Controllers/Customers.php +++ b/app/Controllers/Customers.php @@ -14,521 +14,521 @@ use stdClass; class Customers extends Persons { - private string $_list_id; - private Mailchimp_lib $mailchimp_lib; - private Customer_rewards $customer_rewards; - private Customer $customer; - private Tax_code $tax_code; - private array $config; - - public function __construct() - { - parent::__construct('customers'); - $this->mailchimp_lib = new Mailchimp_lib(); - $this->customer_rewards = model(Customer_rewards::class); - $this->customer = model(Customer::class); - $this->tax_code = model(Tax_code::class); - $this->config = config(OSPOS::class)->settings; - - $encrypter = Services::encrypter(); - - if(!empty($this->config['mailchimp_list_id'])) - { - $this->_list_id = $encrypter->decrypt($this->config['mailchimp_list_id']); - } - else - { - $this->_list_id = ''; - } - } - - /** - * @return void - */ - public function getIndex(): void - { - $data['table_headers'] = get_customer_manage_table_headers(); - - echo view('people/manage', $data); - } - - /** - * Gets one row for a customer manage table. This is called using AJAX to update one row. - */ - public function getRow(int $row_id): void - { - $person = $this->customer->get_info($row_id); - - // retrieve the total amount the customer spent so far together with min, max and average values - $stats = $this->customer->get_stats($person->person_id); //TODO: This and the next 11 lines are duplicated in search(). Extract a method. - - if(empty($stats)) - { - //create object with empty properties. - $stats = new stdClass(); - $stats->total = 0; - $stats->min = 0; - $stats->max = 0; - $stats->average = 0; - $stats->avg_discount = 0; - $stats->quantity = 0; - } - - $data_row = get_customer_data_row($person, $stats); - - echo json_encode($data_row); - } - - - /** - * Returns customer table data rows. This will be called with AJAX. - * - * @return void - */ - public function getSearch(): void - { - $search = $this->request->getGet('search'); - $limit = $this->request->getGet('limit', FILTER_SANITIZE_NUMBER_INT); - $offset = $this->request->getGet('offset', FILTER_SANITIZE_NUMBER_INT); - $sort = $this->sanitizeSortColumn(customer_headers(), $this->request->getGet('sort', FILTER_SANITIZE_FULL_SPECIAL_CHARS), 'people.person_id'); - $order = $this->request->getGet('order', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - - $customers = $this->customer->search($search, $limit, $offset, $sort, $order); - $total_rows = $this->customer->get_found_rows($search); - - $data_rows = []; - - foreach($customers->getResult() as $person) - { - // retrieve the total amount the customer spent so far together with min, max and average values - $stats = $this->customer->get_stats($person->person_id); //TODO: duplicated... see above - if(empty($stats)) - { - //create object with empty properties. - $stats = new stdClass(); - $stats->total = 0; - $stats->min = 0; - $stats->max = 0; - $stats->average = 0; - $stats->avg_discount = 0; - $stats->quantity = 0; - } - - $data_rows[] = get_customer_data_row($person, $stats); - } - - echo json_encode (['total' => $total_rows, 'rows' => $data_rows]); - } - - /** - * Gives search suggestions based on what is being searched for - */ - public function getSuggest(): void - { - $search = $this->request->getGet('term'); - $suggestions = $this->customer->get_search_suggestions($search); - - echo json_encode($suggestions); - } - - /** - * @return void - */ - public function suggest_search(): void - { - $search = $this->request->getGet('term'); - $suggestions = $this->customer->get_search_suggestions($search, 25, false); - - echo json_encode($suggestions); - } - - /** - * Loads the customer edit form - */ - public function getView(int $customer_id = NEW_ENTRY): void - { - // Set default values - if($customer_id == null) $customer_id = NEW_ENTRY; - - $info = $this->customer->get_info($customer_id); - foreach(get_object_vars($info) as $property => $value) - { - $info->$property = $value; - } - $data['person_info'] = $info; - - if(empty($info->person_id) || empty($info->date) || empty($info->employee_id)) - { - $data['person_info']->date = date('Y-m-d H:i:s'); - $data['person_info']->employee_id = $this->employee->get_logged_in_employee_info()->person_id; - } - - $employee_info = $this->employee->get_info($info->employee_id); - $data['employee'] = $employee_info->first_name . ' ' . $employee_info->last_name; - - $tax_code_info = $this->tax_code->get_info($info->sales_tax_code_id); - - if($tax_code_info->tax_code != null) - { - $data['sales_tax_code_label'] = $tax_code_info->tax_code . ' ' . $tax_code_info->tax_code_name; - } - else - { - $data['sales_tax_code_label'] = ''; - } - - $packages = ['' => lang('Items.none')]; - foreach($this->customer_rewards->get_all()->getResultArray() as $row) - { - $packages[$row['package_id']] = $row['package_name']; - } - $data['packages'] = $packages; - $data['selected_package'] = $info->package_id; - - $data['use_destination_based_tax'] = $this->config['use_destination_based_tax']; - - // retrieve the total amount the customer spent so far together with min, max and average values - $stats = $this->customer->get_stats($customer_id); - if(!empty($stats)) - { - foreach(get_object_vars($stats) as $property => $value) - { - $info->$property = $value; - } - $data['stats'] = $stats; - } - - // retrieve the info from Mailchimp only if there is an email address assigned - if(!empty($info->email)) - { - // collect mailchimp customer info - if(($mailchimp_info = $this->mailchimp_lib->getMemberInfo($this->_list_id, $info->email)) !== false) - { - $data['mailchimp_info'] = $mailchimp_info; - - // collect customer mailchimp emails activities (stats) - if(($activities = $this->mailchimp_lib->getMemberActivity($this->_list_id, $info->email)) !== false) - { - if(array_key_exists('activity', $activities)) - { - $open = 0; - $unopen = 0; - $click = 0; - $total = 0; - $lastopen = ''; - - foreach($activities['activity'] as $activity) - { - if($activity['action'] == 'sent') - { - ++$unopen; - } - elseif($activity['action'] == 'open') - { - if(empty($lastopen)) - { - $lastopen = substr($activity['timestamp'], 0, 10); - } - ++$open; - } - elseif($activity['action'] == 'click') - { - if(empty($lastopen)) - { - $lastopen = substr($activity['timestamp'], 0, 10); - } - ++$click; - } - - ++$total; - } - - $data['mailchimp_activity']['total'] = $total; - $data['mailchimp_activity']['open'] = $open; - $data['mailchimp_activity']['unopen'] = $unopen; - $data['mailchimp_activity']['click'] = $click; - $data['mailchimp_activity']['lastopen'] = $lastopen; - } - } - } - } - - echo view("customers/form", $data); - } - - /** - * Inserts/updates a customer - */ - public function postSave(int $customer_id = NEW_ENTRY): void - { - $first_name = $this->request->getPost('first_name'); - $last_name = $this->request->getPost('last_name'); - $email = strtolower($this->request->getPost('email', FILTER_SANITIZE_EMAIL)); - - // format first and last name properly - $first_name = $this->nameize($first_name); - $last_name = $this->nameize($last_name); - - $person_data = [ - 'first_name' => $first_name, - 'last_name' => $last_name, - 'gender' => $this->request->getPost('gender', FILTER_SANITIZE_NUMBER_INT), - 'email' => $email, - 'phone_number' => $this->request->getPost('phone_number'), - 'address_1' => $this->request->getPost('address_1'), - 'address_2' => $this->request->getPost('address_2'), - 'city' => $this->request->getPost('city'), - 'state' => $this->request->getPost('state'), - 'zip' => $this->request->getPost('zip'), - 'country' => $this->request->getPost('country'), - 'comments' => $this->request->getPost('comments') - ]; - - $date_formatter = date_create_from_format($this->config['dateformat'] . ' ' . $this->config['timeformat'], $this->request->getPost('date')); - - $customer_data = [ - 'consent' => $this->request->getPost('consent') != null, - 'account_number' => $this->request->getPost('account_number') == '' ? null : $this->request->getPost('account_number'), - 'tax_id' => $this->request->getPost('tax_id'), - 'company_name' => $this->request->getPost('company_name') == '' ? null : $this->request->getPost('company_name'), - 'discount' => $this->request->getPost('discount') == '' ? 0.00 : parse_decimals($this->request->getPost('discount')), - 'discount_type' => $this->request->getPost('discount_type') == null ? PERCENT : $this->request->getPost('discount_type', FILTER_SANITIZE_NUMBER_INT), - 'package_id' => $this->request->getPost('package_id') == '' ? null : $this->request->getPost('package_id'), - 'taxable' => $this->request->getPost('taxable') != null, - 'date' => $date_formatter->format('Y-m-d H:i:s'), - 'employee_id' => $this->request->getPost('employee_id', FILTER_SANITIZE_NUMBER_INT), - 'sales_tax_code_id' => $this->request->getPost('sales_tax_code_id') == '' ? null : $this->request->getPost('sales_tax_code_id', FILTER_SANITIZE_NUMBER_INT) - ]; - - if($this->customer->save_customer($person_data, $customer_data, $customer_id)) - { - // save customer to Mailchimp selected list //TODO: addOrUpdateMember should be refactored... potentially pass an array or object instead of 6 parameters. - $mailchimp_status = $this->request->getPost('mailchimp_status'); - $this->mailchimp_lib->addOrUpdateMember( - $this->_list_id, - $email, - $first_name, - $last_name, - $mailchimp_status == null ? "" : $mailchimp_status, - ['vip' => $this->request->getPost('mailchimp_vip') != null] - ); - - // New customer - if($customer_id == NEW_ENTRY) - { - echo json_encode ([ - 'success' => true, - 'message' => lang('Customers.successful_adding') . ' ' . $first_name . ' ' . $last_name, - 'id' => $customer_data['person_id'] - ]); - } - else // Existing customer - { - echo json_encode ([ - 'success' => true, - 'message' => lang('Customers.successful_updating') . ' ' . $first_name . ' ' . $last_name, - 'id' => $customer_id - ]); - } - } - else // Failure - { - echo json_encode ([ - 'success' => false, - 'message' => lang('Customers.error_adding_updating') . ' ' . $first_name . ' ' . $last_name, - 'id' => NEW_ENTRY - ]); - } - } - - /** - * Verifies if an email address already exists. Used in app/Views/customers/form.php - * - * @return void - * @noinspection PhpUnused - */ - public function postCheckEmail(): void - { - $email = strtolower($this->request->getPost('email', FILTER_SANITIZE_EMAIL)); - $person_id = $this->request->getPost('person_id', FILTER_SANITIZE_NUMBER_INT); - - $exists = $this->customer->check_email_exists($email, $person_id); - - echo !$exists ? 'true' : 'false'; - } - - /** - * Verifies if an account number already exists. Used in app/Views/customers/form.php - * - * @return void - * @noinspection PhpUnused - */ - public function postCheckAccountNumber(): void - { - $exists = $this->customer->check_account_number_exists($this->request->getPost('account_number'), $this->request->getPost('person_id', FILTER_SANITIZE_NUMBER_INT)); - - echo !$exists ? 'true' : 'false'; - } - - /** - * This deletes customers from the customers table - */ - public function postDelete(): void - { - $customers_to_delete = $this->request->getPost('ids'); - $customers_info = $this->customer->get_multiple_info($customers_to_delete); - - $count = 0; - - foreach($customers_info->getResult() as $info) - { - if($this->customer->delete($info->person_id)) - { - // remove customer from Mailchimp selected list - $this->mailchimp_lib->removeMember($this->_list_id, $info->email); - - $count++; - } - } - - if($count == count($customers_to_delete)) - { - echo json_encode (['success' => true, - 'message' => lang('Customers.successful_deleted') . ' ' . $count . ' ' . lang('Customers.one_or_multiple')]); - } - else - { - echo json_encode (['success' => false, 'message' => lang('Customers.cannot_be_deleted')]); - } - } - - /** - * Customers import from csv spreadsheet - * - * @return DownloadResponse The template for Customer CSV imports is returned and download forced. - * @noinspection PhpUnused - */ - public function getCsv(): DownloadResponse - { - $name = 'importCustomers.csv'; - $data = file_get_contents(WRITEPATH . "uploads/$name"); - return $this->response->download($name, $data); - } - - /** - * Displays the customer CSV import modal. Used in app/Views/people/manage.php - * - * @return void - * @noinspection PhpUnused - */ - public function getCsvImport(): void - { - echo view('customers/form_csv_import'); - } - - /** - * Imports a CSV file containing customers. Used in app/Views/customers/form_csv_import.php - * - * @return void - * @noinspection PhpUnused - */ - public function postImportCsvFile(): void - { - if($_FILES['file_path']['error'] != UPLOAD_ERR_OK) - { - echo json_encode (['success' => false, 'message' => lang('Customers.csv_import_failed')]); - } - else - { - if(($handle = fopen($_FILES['file_path']['tmp_name'], 'r')) !== false) - { - // Skip the first row as it's the table description - fgetcsv($handle); - $i = 1; - - $failCodes = []; - - while(($data = fgetcsv($handle)) !== false) - { - $consent = $data[3] == '' ? 0 : 1; - - if(sizeof($data) >= 16 && $consent) - { - $email = strtolower($data[4]); - $person_data = [ - 'first_name' => $data[0], - 'last_name' => $data[1], - 'gender' => $data[2], - 'email' => $email, - 'phone_number' => $data[5], - 'address_1' => $data[6], - 'address_2' => $data[7], - 'city' => $data[8], - 'state' => $data[9], - 'zip' => $data[10], - 'country' => $data[11], - 'comments' => $data[12] - ]; - - $customer_data = [ - 'consent' => $consent, - 'company_name' => $data[13], - 'discount' => $data[15], - 'discount_type' => $data[16], - 'taxable' => $data[17] == '' ? 0 : 1, - 'date' => date('Y-m-d H:i:s'), - 'employee_id' => $this->employee->get_logged_in_employee_info()->person_id - ]; - $account_number = $data[14]; - - // don't duplicate people with same email - $invalidated = $this->customer->check_email_exists($email); - - if($account_number != '') - { - $customer_data['account_number'] = $account_number; - $invalidated &= $this->customer->check_account_number_exists($account_number); - } - } - else - { - $invalidated = true; - } - - if($invalidated) - { - $failCodes[] = $i; - log_message('error',"Row $i was not imported: Either email or account number already exist or data was invalid."); - } - elseif($this->customer->save_customer($person_data, $customer_data)) - { - // save customer to Mailchimp selected list - $this->mailchimp_lib->addOrUpdateMember($this->_list_id, $person_data['email'], $person_data['first_name'], '', $person_data['last_name']); - } - else - { - $failCodes[] = $i; - } - - ++$i; - } - - if(count($failCodes) > 0) - { - $message = lang('Customers.csv_import_partially_failed', [count($failCodes), implode(', ', $failCodes)]); - - echo json_encode (['success' => false, 'message' => $message]); - } - else - { - echo json_encode (['success' => true, 'message' => lang('Customers.csv_import_success')]); - } - } - else - { - echo json_encode (['success' => false, 'message' => lang('Customers.csv_import_nodata_wrongformat')]); - } - } - } + private string $_list_id; + private Mailchimp_lib $mailchimp_lib; + private Customer_rewards $customer_rewards; + private Customer $customer; + private Tax_code $tax_code; + private array $config; + + public function __construct() + { + parent::__construct('customers'); + $this->mailchimp_lib = new Mailchimp_lib(); + $this->customer_rewards = model(Customer_rewards::class); + $this->customer = model(Customer::class); + $this->tax_code = model(Tax_code::class); + $this->config = config(OSPOS::class)->settings; + + $encrypter = Services::encrypter(); + + if(!empty($this->config['mailchimp_list_id'])) + { + $this->_list_id = $encrypter->decrypt($this->config['mailchimp_list_id']); + } + else + { + $this->_list_id = ''; + } + } + + /** + * @return void + */ + public function getIndex(): void + { + $data['table_headers'] = get_customer_manage_table_headers(); + + echo view('people/manage', $data); + } + + /** + * Gets one row for a customer manage table. This is called using AJAX to update one row. + */ + public function getRow(int $row_id): void + { + $person = $this->customer->get_info($row_id); + + // retrieve the total amount the customer spent so far together with min, max and average values + $stats = $this->customer->get_stats($person->person_id); //TODO: This and the next 11 lines are duplicated in search(). Extract a method. + + if(empty($stats)) + { + //create object with empty properties. + $stats = new stdClass(); + $stats->total = 0; + $stats->min = 0; + $stats->max = 0; + $stats->average = 0; + $stats->avg_discount = 0; + $stats->quantity = 0; + } + + $data_row = get_customer_data_row($person, $stats); + + echo json_encode($data_row); + } + + + /** + * Returns customer table data rows. This will be called with AJAX. + * + * @return void + */ + public function getSearch(): void + { + $search = $this->request->getGet('search'); + $limit = $this->request->getGet('limit', FILTER_SANITIZE_NUMBER_INT); + $offset = $this->request->getGet('offset', FILTER_SANITIZE_NUMBER_INT); + $sort = $this->sanitizeSortColumn(customer_headers(), $this->request->getGet('sort', FILTER_SANITIZE_FULL_SPECIAL_CHARS), 'people.person_id'); + $order = $this->request->getGet('order', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + + $customers = $this->customer->search($search, $limit, $offset, $sort, $order); + $total_rows = $this->customer->get_found_rows($search); + + $data_rows = []; + + foreach($customers->getResult() as $person) + { + // retrieve the total amount the customer spent so far together with min, max and average values + $stats = $this->customer->get_stats($person->person_id); //TODO: duplicated... see above + if(empty($stats)) + { + //create object with empty properties. + $stats = new stdClass(); + $stats->total = 0; + $stats->min = 0; + $stats->max = 0; + $stats->average = 0; + $stats->avg_discount = 0; + $stats->quantity = 0; + } + + $data_rows[] = get_customer_data_row($person, $stats); + } + + echo json_encode (['total' => $total_rows, 'rows' => $data_rows]); + } + + /** + * Gives search suggestions based on what is being searched for + */ + public function getSuggest(): void + { + $search = $this->request->getGet('term'); + $suggestions = $this->customer->get_search_suggestions($search); + + echo json_encode($suggestions); + } + + /** + * @return void + */ + public function suggest_search(): void + { + $search = $this->request->getGet('term'); + $suggestions = $this->customer->get_search_suggestions($search, 25, false); + + echo json_encode($suggestions); + } + + /** + * Loads the customer edit form + */ + public function getView(int $customer_id = NEW_ENTRY): void + { + // Set default values + if($customer_id == null) $customer_id = NEW_ENTRY; + + $info = $this->customer->get_info($customer_id); + foreach(get_object_vars($info) as $property => $value) + { + $info->$property = $value; + } + $data['person_info'] = $info; + + if(empty($info->person_id) || empty($info->date) || empty($info->employee_id)) + { + $data['person_info']->date = date('Y-m-d H:i:s'); + $data['person_info']->employee_id = $this->employee->get_logged_in_employee_info()->person_id; + } + + $employee_info = $this->employee->get_info($info->employee_id); + $data['employee'] = $employee_info->first_name . ' ' . $employee_info->last_name; + + $tax_code_info = $this->tax_code->get_info($info->sales_tax_code_id); + + if($tax_code_info->tax_code != null) + { + $data['sales_tax_code_label'] = $tax_code_info->tax_code . ' ' . $tax_code_info->tax_code_name; + } + else + { + $data['sales_tax_code_label'] = ''; + } + + $packages = ['' => lang('Items.none')]; + foreach($this->customer_rewards->get_all()->getResultArray() as $row) + { + $packages[$row['package_id']] = $row['package_name']; + } + $data['packages'] = $packages; + $data['selected_package'] = $info->package_id; + + $data['use_destination_based_tax'] = $this->config['use_destination_based_tax']; + + // retrieve the total amount the customer spent so far together with min, max and average values + $stats = $this->customer->get_stats($customer_id); + if(!empty($stats)) + { + foreach(get_object_vars($stats) as $property => $value) + { + $info->$property = $value; + } + $data['stats'] = $stats; + } + + // retrieve the info from Mailchimp only if there is an email address assigned + if(!empty($info->email)) + { + // collect mailchimp customer info + if(($mailchimp_info = $this->mailchimp_lib->getMemberInfo($this->_list_id, $info->email)) !== false) + { + $data['mailchimp_info'] = $mailchimp_info; + + // collect customer mailchimp emails activities (stats) + if(($activities = $this->mailchimp_lib->getMemberActivity($this->_list_id, $info->email)) !== false) + { + if(array_key_exists('activity', $activities)) + { + $open = 0; + $unopen = 0; + $click = 0; + $total = 0; + $lastopen = ''; + + foreach($activities['activity'] as $activity) + { + if($activity['action'] == 'sent') + { + ++$unopen; + } + elseif($activity['action'] == 'open') + { + if(empty($lastopen)) + { + $lastopen = substr($activity['timestamp'], 0, 10); + } + ++$open; + } + elseif($activity['action'] == 'click') + { + if(empty($lastopen)) + { + $lastopen = substr($activity['timestamp'], 0, 10); + } + ++$click; + } + + ++$total; + } + + $data['mailchimp_activity']['total'] = $total; + $data['mailchimp_activity']['open'] = $open; + $data['mailchimp_activity']['unopen'] = $unopen; + $data['mailchimp_activity']['click'] = $click; + $data['mailchimp_activity']['lastopen'] = $lastopen; + } + } + } + } + + echo view("customers/form", $data); + } + + /** + * Inserts/updates a customer + */ + public function postSave(int $customer_id = NEW_ENTRY): void + { + $first_name = $this->request->getPost('first_name'); + $last_name = $this->request->getPost('last_name'); + $email = strtolower($this->request->getPost('email', FILTER_SANITIZE_EMAIL)); + + // format first and last name properly + $first_name = $this->nameize($first_name); + $last_name = $this->nameize($last_name); + + $person_data = [ + 'first_name' => $first_name, + 'last_name' => $last_name, + 'gender' => $this->request->getPost('gender', FILTER_SANITIZE_NUMBER_INT), + 'email' => $email, + 'phone_number' => $this->request->getPost('phone_number'), + 'address_1' => $this->request->getPost('address_1'), + 'address_2' => $this->request->getPost('address_2'), + 'city' => $this->request->getPost('city'), + 'state' => $this->request->getPost('state'), + 'zip' => $this->request->getPost('zip'), + 'country' => $this->request->getPost('country'), + 'comments' => $this->request->getPost('comments') + ]; + + $date_formatter = date_create_from_format($this->config['dateformat'] . ' ' . $this->config['timeformat'], $this->request->getPost('date')); + + $customer_data = [ + 'consent' => $this->request->getPost('consent') != null, + 'account_number' => $this->request->getPost('account_number') == '' ? null : $this->request->getPost('account_number'), + 'tax_id' => $this->request->getPost('tax_id'), + 'company_name' => $this->request->getPost('company_name') == '' ? null : $this->request->getPost('company_name'), + 'discount' => $this->request->getPost('discount') == '' ? 0.00 : parse_decimals($this->request->getPost('discount')), + 'discount_type' => $this->request->getPost('discount_type') == null ? PERCENT : $this->request->getPost('discount_type', FILTER_SANITIZE_NUMBER_INT), + 'package_id' => $this->request->getPost('package_id') == '' ? null : $this->request->getPost('package_id'), + 'taxable' => $this->request->getPost('taxable') != null, + 'date' => $date_formatter->format('Y-m-d H:i:s'), + 'employee_id' => $this->request->getPost('employee_id', FILTER_SANITIZE_NUMBER_INT), + 'sales_tax_code_id' => $this->request->getPost('sales_tax_code_id') == '' ? null : $this->request->getPost('sales_tax_code_id', FILTER_SANITIZE_NUMBER_INT) + ]; + + if($this->customer->save_customer($person_data, $customer_data, $customer_id)) + { + // save customer to Mailchimp selected list //TODO: addOrUpdateMember should be refactored... potentially pass an array or object instead of 6 parameters. + $mailchimp_status = $this->request->getPost('mailchimp_status'); + $this->mailchimp_lib->addOrUpdateMember( + $this->_list_id, + $email, + $first_name, + $last_name, + $mailchimp_status == null ? "" : $mailchimp_status, + ['vip' => $this->request->getPost('mailchimp_vip') != null] + ); + + // New customer + if($customer_id == NEW_ENTRY) + { + echo json_encode ([ + 'success' => true, + 'message' => lang('Customers.successful_adding') . ' ' . $first_name . ' ' . $last_name, + 'id' => $customer_data['person_id'] + ]); + } + else // Existing customer + { + echo json_encode ([ + 'success' => true, + 'message' => lang('Customers.successful_updating') . ' ' . $first_name . ' ' . $last_name, + 'id' => $customer_id + ]); + } + } + else // Failure + { + echo json_encode ([ + 'success' => false, + 'message' => lang('Customers.error_adding_updating') . ' ' . $first_name . ' ' . $last_name, + 'id' => NEW_ENTRY + ]); + } + } + + /** + * Verifies if an email address already exists. Used in app/Views/customers/form.php + * + * @return void + * @noinspection PhpUnused + */ + public function postCheckEmail(): void + { + $email = strtolower($this->request->getPost('email', FILTER_SANITIZE_EMAIL)); + $person_id = $this->request->getPost('person_id', FILTER_SANITIZE_NUMBER_INT); + + $exists = $this->customer->check_email_exists($email, $person_id); + + echo !$exists ? 'true' : 'false'; + } + + /** + * Verifies if an account number already exists. Used in app/Views/customers/form.php + * + * @return void + * @noinspection PhpUnused + */ + public function postCheckAccountNumber(): void + { + $exists = $this->customer->check_account_number_exists($this->request->getPost('account_number'), $this->request->getPost('person_id', FILTER_SANITIZE_NUMBER_INT)); + + echo !$exists ? 'true' : 'false'; + } + + /** + * This deletes customers from the customers table + */ + public function postDelete(): void + { + $customers_to_delete = $this->request->getPost('ids'); + $customers_info = $this->customer->get_multiple_info($customers_to_delete); + + $count = 0; + + foreach($customers_info->getResult() as $info) + { + if($this->customer->delete($info->person_id)) + { + // remove customer from Mailchimp selected list + $this->mailchimp_lib->removeMember($this->_list_id, $info->email); + + $count++; + } + } + + if($count == count($customers_to_delete)) + { + echo json_encode (['success' => true, + 'message' => lang('Customers.successful_deleted') . ' ' . $count . ' ' . lang('Customers.one_or_multiple')]); + } + else + { + echo json_encode (['success' => false, 'message' => lang('Customers.cannot_be_deleted')]); + } + } + + /** + * Customers import from csv spreadsheet + * + * @return DownloadResponse The template for Customer CSV imports is returned and download forced. + * @noinspection PhpUnused + */ + public function getCsv(): DownloadResponse + { + $name = 'importCustomers.csv'; + $data = file_get_contents(WRITEPATH . "uploads/$name"); + return $this->response->download($name, $data); + } + + /** + * Displays the customer CSV import modal. Used in app/Views/people/manage.php + * + * @return void + * @noinspection PhpUnused + */ + public function getCsvImport(): void + { + echo view('customers/form_csv_import'); + } + + /** + * Imports a CSV file containing customers. Used in app/Views/customers/form_csv_import.php + * + * @return void + * @noinspection PhpUnused + */ + public function postImportCsvFile(): void + { + if($_FILES['file_path']['error'] != UPLOAD_ERR_OK) + { + echo json_encode (['success' => false, 'message' => lang('Customers.csv_import_failed')]); + } + else + { + if(($handle = fopen($_FILES['file_path']['tmp_name'], 'r')) !== false) + { + // Skip the first row as it's the table description + fgetcsv($handle); + $i = 1; + + $failCodes = []; + + while(($data = fgetcsv($handle)) !== false) + { + $consent = $data[3] == '' ? 0 : 1; + + if(sizeof($data) >= 16 && $consent) + { + $email = strtolower($data[4]); + $person_data = [ + 'first_name' => $data[0], + 'last_name' => $data[1], + 'gender' => $data[2], + 'email' => $email, + 'phone_number' => $data[5], + 'address_1' => $data[6], + 'address_2' => $data[7], + 'city' => $data[8], + 'state' => $data[9], + 'zip' => $data[10], + 'country' => $data[11], + 'comments' => $data[12] + ]; + + $customer_data = [ + 'consent' => $consent, + 'company_name' => $data[13], + 'discount' => $data[15], + 'discount_type' => $data[16], + 'taxable' => $data[17] == '' ? 0 : 1, + 'date' => date('Y-m-d H:i:s'), + 'employee_id' => $this->employee->get_logged_in_employee_info()->person_id + ]; + $account_number = $data[14]; + + // don't duplicate people with same email + $invalidated = $this->customer->check_email_exists($email); + + if($account_number != '') + { + $customer_data['account_number'] = $account_number; + $invalidated &= $this->customer->check_account_number_exists($account_number); + } + } + else + { + $invalidated = true; + } + + if($invalidated) + { + $failCodes[] = $i; + log_message('error',"Row $i was not imported: Either email or account number already exist or data was invalid."); + } + elseif($this->customer->save_customer($person_data, $customer_data)) + { + // save customer to Mailchimp selected list + $this->mailchimp_lib->addOrUpdateMember($this->_list_id, $person_data['email'], $person_data['first_name'], '', $person_data['last_name']); + } + else + { + $failCodes[] = $i; + } + + ++$i; + } + + if(count($failCodes) > 0) + { + $message = lang('Customers.csv_import_partially_failed', [count($failCodes), implode(', ', $failCodes)]); + + echo json_encode (['success' => false, 'message' => $message]); + } + else + { + echo json_encode (['success' => true, 'message' => lang('Customers.csv_import_success')]); + } + } + else + { + echo json_encode (['success' => false, 'message' => lang('Customers.csv_import_nodata_wrongformat')]); + } + } + } } diff --git a/app/Controllers/Employees.php b/app/Controllers/Employees.php index 2c56046e6..ade308273 100644 --- a/app/Controllers/Employees.php +++ b/app/Controllers/Employees.php @@ -13,222 +13,222 @@ use Config\Services; */ class Employees extends Persons { - public function __construct() - { - parent::__construct('employees'); + public function __construct() + { + parent::__construct('employees'); - $this->module = model('Module'); - } + $this->module = model('Module'); + } - /** - * Returns employee table data rows. This will be called with AJAX. - * - * @return void - */ - public function getSearch(): void - { - $search = $this->request->getGet('search'); - $limit = $this->request->getGet('limit', FILTER_SANITIZE_NUMBER_INT); - $offset = $this->request->getGet('offset', FILTER_SANITIZE_NUMBER_INT); - $sort = $this->sanitizeSortColumn(person_headers(), $this->request->getGet('sort', FILTER_SANITIZE_FULL_SPECIAL_CHARS), 'people.person_id'); - $order = $this->request->getGet('order', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + /** + * Returns employee table data rows. This will be called with AJAX. + * + * @return void + */ + public function getSearch(): void + { + $search = $this->request->getGet('search'); + $limit = $this->request->getGet('limit', FILTER_SANITIZE_NUMBER_INT); + $offset = $this->request->getGet('offset', FILTER_SANITIZE_NUMBER_INT); + $sort = $this->sanitizeSortColumn(person_headers(), $this->request->getGet('sort', FILTER_SANITIZE_FULL_SPECIAL_CHARS), 'people.person_id'); + $order = $this->request->getGet('order', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $employees = $this->employee->search($search, $limit, $offset, $sort, $order); - $total_rows = $this->employee->get_found_rows($search); + $employees = $this->employee->search($search, $limit, $offset, $sort, $order); + $total_rows = $this->employee->get_found_rows($search); - $data_rows = []; - foreach($employees->getResult() as $person) - { - $data_rows[] = get_person_data_row($person); - } + $data_rows = []; + foreach($employees->getResult() as $person) + { + $data_rows[] = get_person_data_row($person); + } - echo json_encode (['total' => $total_rows, 'rows' => $data_rows]); - } + echo json_encode (['total' => $total_rows, 'rows' => $data_rows]); + } - /** - * AJAX called function gives search suggestions based on what is being searched for. - * - * @return void - */ - public function getSuggest(): void - { - $search = $this->request->getGet('term'); - $suggestions = $this->employee->get_search_suggestions($search, 25, true); + /** + * AJAX called function gives search suggestions based on what is being searched for. + * + * @return void + */ + public function getSuggest(): void + { + $search = $this->request->getGet('term'); + $suggestions = $this->employee->get_search_suggestions($search, 25, true); - echo json_encode($suggestions); - } + echo json_encode($suggestions); + } - /** - * @return void - */ - public function suggest_search(): void - { - $search = $this->request->getPost('term'); - $suggestions = $this->employee->get_search_suggestions($search); + /** + * @return void + */ + public function suggest_search(): void + { + $search = $this->request->getPost('term'); + $suggestions = $this->employee->get_search_suggestions($search); - echo json_encode($suggestions); - } + echo json_encode($suggestions); + } - /** - * Loads the employee edit form - */ - public function getView(int $employee_id = NEW_ENTRY): void - { - $person_info = $this->employee->get_info($employee_id); - foreach(get_object_vars($person_info) as $property => $value) - { - $person_info->$property = $value; - } - $data['person_info'] = $person_info; - $data['employee_id'] = $employee_id; + /** + * Loads the employee edit form + */ + public function getView(int $employee_id = NEW_ENTRY): void + { + $person_info = $this->employee->get_info($employee_id); + foreach(get_object_vars($person_info) as $property => $value) + { + $person_info->$property = $value; + } + $data['person_info'] = $person_info; + $data['employee_id'] = $employee_id; - $modules = []; - foreach($this->module->get_all_modules()->getResult() as $module) - { - $module->grant = $this->employee->has_grant($module->module_id, $person_info->person_id); - $module->menu_group = $this->employee->get_menu_group($module->module_id, $person_info->person_id); + $modules = []; + foreach($this->module->get_all_modules()->getResult() as $module) + { + $module->grant = $this->employee->has_grant($module->module_id, $person_info->person_id); + $module->menu_group = $this->employee->get_menu_group($module->module_id, $person_info->person_id); - $modules[] = $module; - } - $data['all_modules'] = $modules; + $modules[] = $module; + } + $data['all_modules'] = $modules; - $permissions = []; - foreach($this->module->get_all_subpermissions()->getResult() as $permission) //TODO: subpermissions does not follow naming standards. - { - $permission->permission_id = str_replace(' ', '_', $permission->permission_id); - $permission->grant = $this->employee->has_grant($permission->permission_id, $person_info->person_id); + $permissions = []; + foreach($this->module->get_all_subpermissions()->getResult() as $permission) //TODO: subpermissions does not follow naming standards. + { + $permission->permission_id = str_replace(' ', '_', $permission->permission_id); + $permission->grant = $this->employee->has_grant($permission->permission_id, $person_info->person_id); - $permissions[] = $permission; - } - $data['all_subpermissions'] = $permissions; + $permissions[] = $permission; + } + $data['all_subpermissions'] = $permissions; - echo view('employees/form', $data); - } + echo view('employees/form', $data); + } - /** - * Inserts/updates an employee - */ - public function postSave(int $employee_id = NEW_ENTRY): void - { - $first_name = $this->request->getPost('first_name', FILTER_SANITIZE_FULL_SPECIAL_CHARS); //TODO: duplicated code - $last_name = $this->request->getPost('last_name', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $email = strtolower($this->request->getPost('email', FILTER_SANITIZE_EMAIL)); + /** + * Inserts/updates an employee + */ + public function postSave(int $employee_id = NEW_ENTRY): void + { + $first_name = $this->request->getPost('first_name', FILTER_SANITIZE_FULL_SPECIAL_CHARS); //TODO: duplicated code + $last_name = $this->request->getPost('last_name', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + $email = strtolower($this->request->getPost('email', FILTER_SANITIZE_EMAIL)); - // format first and last name properly - $first_name = $this->nameize($first_name); - $last_name = $this->nameize($last_name); + // format first and last name properly + $first_name = $this->nameize($first_name); + $last_name = $this->nameize($last_name); - $person_data = [ - 'first_name' => $first_name, - 'last_name' => $last_name, - 'gender' => $this->request->getPost('gender', FILTER_SANITIZE_NUMBER_INT), - 'email' => $email, - 'phone_number' => $this->request->getPost('phone_number', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'address_1' => $this->request->getPost('address_1', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'address_2' => $this->request->getPost('address_2', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'city' => $this->request->getPost('city', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'state' => $this->request->getPost('state', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'zip' => $this->request->getPost('zip', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'country' => $this->request->getPost('country', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'comments' => $this->request->getPost('comments', FILTER_SANITIZE_FULL_SPECIAL_CHARS) - ]; + $person_data = [ + 'first_name' => $first_name, + 'last_name' => $last_name, + 'gender' => $this->request->getPost('gender', FILTER_SANITIZE_NUMBER_INT), + 'email' => $email, + 'phone_number' => $this->request->getPost('phone_number', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'address_1' => $this->request->getPost('address_1', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'address_2' => $this->request->getPost('address_2', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'city' => $this->request->getPost('city', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'state' => $this->request->getPost('state', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'zip' => $this->request->getPost('zip', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'country' => $this->request->getPost('country', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'comments' => $this->request->getPost('comments', FILTER_SANITIZE_FULL_SPECIAL_CHARS) + ]; - $grants_array = []; - foreach($this->module->get_all_permissions()->getResult() as $permission) - { - $grants = []; - $grant = $this->request->getPost('grant_'.$permission->permission_id) != null ? $this->request->getPost('grant_' . $permission->permission_id, FILTER_SANITIZE_FULL_SPECIAL_CHARS) : ''; + $grants_array = []; + foreach($this->module->get_all_permissions()->getResult() as $permission) + { + $grants = []; + $grant = $this->request->getPost('grant_'.$permission->permission_id) != null ? $this->request->getPost('grant_' . $permission->permission_id, FILTER_SANITIZE_FULL_SPECIAL_CHARS) : ''; - if($grant == $permission->permission_id) - { - $grants['permission_id'] = $permission->permission_id; - $grants['menu_group'] = $this->request->getPost('menu_group_'.$permission->permission_id) != null ? $this->request->getPost('menu_group_' . $permission->permission_id, FILTER_SANITIZE_FULL_SPECIAL_CHARS) : '--'; - $grants_array[] = $grants; - } - } + if($grant == $permission->permission_id) + { + $grants['permission_id'] = $permission->permission_id; + $grants['menu_group'] = $this->request->getPost('menu_group_'.$permission->permission_id) != null ? $this->request->getPost('menu_group_' . $permission->permission_id, FILTER_SANITIZE_FULL_SPECIAL_CHARS) : '--'; + $grants_array[] = $grants; + } + } - //Password has been changed OR first time password set - if(!empty($this->request->getPost('password')) && ENVIRONMENT != 'testing') - { - $exploded = explode(":", $this->request->getPost('language', FILTER_SANITIZE_FULL_SPECIAL_CHARS)); - $employee_data = [ - 'username' => $this->request->getPost('username', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'password' => password_hash($this->request->getPost('password'), PASSWORD_DEFAULT), - 'hash_version' => 2, - 'language_code' => $exploded[0], - 'language' => $exploded[1] - ]; - } - else //Password not changed - { - $exploded = explode(":", $this->request->getPost('language', FILTER_SANITIZE_FULL_SPECIAL_CHARS)); - $employee_data = [ - 'username' => $this->request->getPost('username', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'language_code' => $exploded[0], - 'language' => $exploded[1] - ]; - } + //Password has been changed OR first time password set + if(!empty($this->request->getPost('password')) && ENVIRONMENT != 'testing') + { + $exploded = explode(":", $this->request->getPost('language', FILTER_SANITIZE_FULL_SPECIAL_CHARS)); + $employee_data = [ + 'username' => $this->request->getPost('username', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'password' => password_hash($this->request->getPost('password'), PASSWORD_DEFAULT), + 'hash_version' => 2, + 'language_code' => $exploded[0], + 'language' => $exploded[1] + ]; + } + else //Password not changed + { + $exploded = explode(":", $this->request->getPost('language', FILTER_SANITIZE_FULL_SPECIAL_CHARS)); + $employee_data = [ + 'username' => $this->request->getPost('username', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'language_code' => $exploded[0], + 'language' => $exploded[1] + ]; + } - if($this->employee->save_employee($person_data, $employee_data, $grants_array, $employee_id)) - { - // New employee - if($employee_id == NEW_ENTRY) - { - echo json_encode ([ - 'success' => true, - 'message' => lang('Employees.successful_adding') . ' ' . $first_name . ' ' . $last_name, - 'id' => $employee_data['person_id'] - ]); - } - else // Existing employee - { - echo json_encode ([ - 'success' => true, - 'message' => lang('Employees.successful_updating') . ' ' . $first_name . ' ' . $last_name, - 'id' => $employee_id - ]); - } - } - else // Failure - { - echo json_encode ([ - 'success' => false, - 'message' => lang('Employees.error_adding_updating') . ' ' . $first_name . ' ' . $last_name, - 'id' => NEW_ENTRY - ]); - } - } + if($this->employee->save_employee($person_data, $employee_data, $grants_array, $employee_id)) + { + // New employee + if($employee_id == NEW_ENTRY) + { + echo json_encode ([ + 'success' => true, + 'message' => lang('Employees.successful_adding') . ' ' . $first_name . ' ' . $last_name, + 'id' => $employee_data['person_id'] + ]); + } + else // Existing employee + { + echo json_encode ([ + 'success' => true, + 'message' => lang('Employees.successful_updating') . ' ' . $first_name . ' ' . $last_name, + 'id' => $employee_id + ]); + } + } + else // Failure + { + echo json_encode ([ + 'success' => false, + 'message' => lang('Employees.error_adding_updating') . ' ' . $first_name . ' ' . $last_name, + 'id' => NEW_ENTRY + ]); + } + } - /** - * This deletes employees from the employees table - */ - public function postDelete(): void - { - $employees_to_delete = $this->request->getPost('ids', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + /** + * This deletes employees from the employees table + */ + public function postDelete(): void + { + $employees_to_delete = $this->request->getPost('ids', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - if($this->employee->delete_list($employees_to_delete)) //TODO: this is passing a string, but delete_list expects an array - { - echo json_encode ([ - 'success' => true, - 'message' => lang('Employees.successful_deleted') . ' ' . count($employees_to_delete) . ' ' . lang('Employees.one_or_multiple') - ]); - } - else - { - echo json_encode (['success' => false, 'message' => lang('Employees.cannot_be_deleted')]); - } - } + if($this->employee->delete_list($employees_to_delete)) //TODO: this is passing a string, but delete_list expects an array + { + echo json_encode ([ + 'success' => true, + 'message' => lang('Employees.successful_deleted') . ' ' . count($employees_to_delete) . ' ' . lang('Employees.one_or_multiple') + ]); + } + else + { + echo json_encode (['success' => false, 'message' => lang('Employees.cannot_be_deleted')]); + } + } - /** - * Checks an employee username against the database. Used in app\Views\employees\form.php - * - * @param $employee_id - * @return void - * @noinspection PhpUnused - */ - public function getCheckUsername($employee_id): void - { - $exists = $this->employee->username_exists($employee_id, $this->request->getGet('username')); - echo !$exists ? 'true' : 'false'; - } + /** + * Checks an employee username against the database. Used in app\Views\employees\form.php + * + * @param $employee_id + * @return void + * @noinspection PhpUnused + */ + public function getCheckUsername($employee_id): void + { + $exists = $this->employee->username_exists($employee_id, $this->request->getGet('username')); + echo !$exists ? 'true' : 'false'; + } } diff --git a/app/Controllers/Expenses.php b/app/Controllers/Expenses.php index e16da7f83..d98e6b4a3 100644 --- a/app/Controllers/Expenses.php +++ b/app/Controllers/Expenses.php @@ -9,201 +9,201 @@ use Config\Services; class Expenses extends Secure_Controller { - private Expense $expense; - private Expense_category $expense_category; + private Expense $expense; + private Expense_category $expense_category; - public function __construct() - { - parent::__construct('expenses'); + public function __construct() + { + parent::__construct('expenses'); - $this->expense = model(Expense::class); - $this->expense_category = model(Expense_category::class); - } + $this->expense = model(Expense::class); + $this->expense_category = model(Expense_category::class); + } - /** - * @return void - */ - public function getIndex(): void - { - $data['table_headers'] = get_expenses_manage_table_headers(); + /** + * @return void + */ + public function getIndex(): void + { + $data['table_headers'] = get_expenses_manage_table_headers(); - // filters that will be loaded in the multiselect dropdown - $data['filters'] = [ - 'only_cash' => lang('Expenses.cash_filter'), - 'only_due' => lang('Expenses.due_filter'), - 'only_check' => lang('Expenses.check_filter'), - 'only_credit' => lang('Expenses.credit_filter'), - 'only_debit' => lang('Expenses.debit_filter'), - 'is_deleted' => lang('Expenses.is_deleted') - ]; + // filters that will be loaded in the multiselect dropdown + $data['filters'] = [ + 'only_cash' => lang('Expenses.cash_filter'), + 'only_due' => lang('Expenses.due_filter'), + 'only_check' => lang('Expenses.check_filter'), + 'only_credit' => lang('Expenses.credit_filter'), + 'only_debit' => lang('Expenses.debit_filter'), + 'is_deleted' => lang('Expenses.is_deleted') + ]; - echo view('expenses/manage', $data); - } + echo view('expenses/manage', $data); + } - /** - * @return void - */ - public function getSearch(): void - { - $search = $this->request->getGet('search'); - $limit = $this->request->getGet('limit', FILTER_SANITIZE_NUMBER_INT); - $offset = $this->request->getGet('offset', FILTER_SANITIZE_NUMBER_INT); - $sort = $this->sanitizeSortColumn(expense_headers(), $this->request->getGet('sort', FILTER_SANITIZE_FULL_SPECIAL_CHARS), 'expense_id'); - $order = $this->request->getGet('order', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $filters = [ - 'start_date' => $this->request->getGet('start_date', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'end_date' => $this->request->getGet('end_date', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'only_cash' => false, - 'only_due' => false, - 'only_check' => false, - 'only_credit' => false, - 'only_debit' => false, - 'is_deleted' => false - ]; + /** + * @return void + */ + public function getSearch(): void + { + $search = $this->request->getGet('search'); + $limit = $this->request->getGet('limit', FILTER_SANITIZE_NUMBER_INT); + $offset = $this->request->getGet('offset', FILTER_SANITIZE_NUMBER_INT); + $sort = $this->sanitizeSortColumn(expense_headers(), $this->request->getGet('sort', FILTER_SANITIZE_FULL_SPECIAL_CHARS), 'expense_id'); + $order = $this->request->getGet('order', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + $filters = [ + 'start_date' => $this->request->getGet('start_date', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'end_date' => $this->request->getGet('end_date', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'only_cash' => false, + 'only_due' => false, + 'only_check' => false, + 'only_credit' => false, + 'only_debit' => false, + 'is_deleted' => false + ]; - // check if any filter is set in the multiselect dropdown - $request_filters = array_fill_keys($this->request->getGet('filters', FILTER_SANITIZE_FULL_SPECIAL_CHARS) ?? [], true); - $filters = array_merge($filters, $request_filters); - $expenses = $this->expense->search($search, $filters, $limit, $offset, $sort, $order); - $total_rows = $this->expense->get_found_rows($search, $filters); - $payments = $this->expense->get_payments_summary($search, $filters); - $payment_summary = get_expenses_manage_payments_summary($payments, $expenses); - $data_rows = []; + // check if any filter is set in the multiselect dropdown + $request_filters = array_fill_keys($this->request->getGet('filters', FILTER_SANITIZE_FULL_SPECIAL_CHARS) ?? [], true); + $filters = array_merge($filters, $request_filters); + $expenses = $this->expense->search($search, $filters, $limit, $offset, $sort, $order); + $total_rows = $this->expense->get_found_rows($search, $filters); + $payments = $this->expense->get_payments_summary($search, $filters); + $payment_summary = get_expenses_manage_payments_summary($payments, $expenses); + $data_rows = []; - foreach($expenses->getResult() as $expense) - { - $data_rows[] = get_expenses_data_row($expense); - } + foreach($expenses->getResult() as $expense) + { + $data_rows[] = get_expenses_data_row($expense); + } - if($total_rows > 0) - { - $data_rows[] = get_expenses_data_last_row($expenses); - } + if($total_rows > 0) + { + $data_rows[] = get_expenses_data_last_row($expenses); + } - echo json_encode (['total' => $total_rows, 'rows' => $data_rows, 'payment_summary' => $payment_summary]); - } + echo json_encode (['total' => $total_rows, 'rows' => $data_rows, 'payment_summary' => $payment_summary]); + } - /** - * @param int $expense_id - * @return void - */ - public function getView(int $expense_id = NEW_ENTRY): void - { - $data = []; //TODO: Duplicated code + /** + * @param int $expense_id + * @return void + */ + public function getView(int $expense_id = NEW_ENTRY): void + { + $data = []; //TODO: Duplicated code - $data['employees'] = []; - foreach($this->employee->get_all()->getResult() as $employee) - { - foreach(get_object_vars($employee) as $property => $value) - { - $employee->$property = $value; - } + $data['employees'] = []; + foreach($this->employee->get_all()->getResult() as $employee) + { + foreach(get_object_vars($employee) as $property => $value) + { + $employee->$property = $value; + } - $data['employees'][$employee->person_id] = $employee->first_name . ' ' . $employee->last_name; - } + $data['employees'][$employee->person_id] = $employee->first_name . ' ' . $employee->last_name; + } - $data['expenses_info'] = $this->expense->get_info($expense_id); + $data['expenses_info'] = $this->expense->get_info($expense_id); - $expense_categories = []; - foreach($this->expense_category->get_all(0, 0, true)->getResultArray() as $row) - { - $expense_categories[$row['expense_category_id']] = $row['category_name']; - } - $data['expense_categories'] = $expense_categories; + $expense_categories = []; + foreach($this->expense_category->get_all(0, 0, true)->getResultArray() as $row) + { + $expense_categories[$row['expense_category_id']] = $row['category_name']; + } + $data['expense_categories'] = $expense_categories; - $expense_id = $data['expenses_info']->expense_id; + $expense_id = $data['expenses_info']->expense_id; - if($expense_id == NEW_ENTRY) - { - $data['expenses_info']->date = date('Y-m-d H:i:s'); - $data['expenses_info']->employee_id = $this->employee->get_logged_in_employee_info()->person_id; - } + if($expense_id == NEW_ENTRY) + { + $data['expenses_info']->date = date('Y-m-d H:i:s'); + $data['expenses_info']->employee_id = $this->employee->get_logged_in_employee_info()->person_id; + } - $data['payments'] = []; - foreach($this->expense->get_expense_payment($expense_id)->getResult() as $payment) - { - foreach(get_object_vars($payment) as $property => $value) - { - $payment->$property = $value; - } + $data['payments'] = []; + foreach($this->expense->get_expense_payment($expense_id)->getResult() as $payment) + { + foreach(get_object_vars($payment) as $property => $value) + { + $payment->$property = $value; + } - $data['payments'][] = $payment; - } + $data['payments'][] = $payment; + } - // don't allow gift card to be a payment option in a sale transaction edit because it's a complex change - $data['payment_options'] = $this->expense->get_payment_options(); + // don't allow gift card to be a payment option in a sale transaction edit because it's a complex change + $data['payment_options'] = $this->expense->get_payment_options(); - echo view("expenses/form", $data); - } + echo view("expenses/form", $data); + } - /** - * @param int $row_id - * @return void - */ - public function getRow(int $row_id): void - { - $expense_info = $this->expense->get_info($row_id); - $data_row = get_expenses_data_row($expense_info); + /** + * @param int $row_id + * @return void + */ + public function getRow(int $row_id): void + { + $expense_info = $this->expense->get_info($row_id); + $data_row = get_expenses_data_row($expense_info); - echo json_encode($data_row); - } + echo json_encode($data_row); + } - /** - * @param int $expense_id - * @return void - */ - public function postSave(int $expense_id = NEW_ENTRY): void - { - $config = config(OSPOS::class)->settings; - $newdate = $this->request->getPost('date', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + /** + * @param int $expense_id + * @return void + */ + public function postSave(int $expense_id = NEW_ENTRY): void + { + $config = config(OSPOS::class)->settings; + $newdate = $this->request->getPost('date', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $date_formatter = date_create_from_format($config['dateformat'] . ' ' . $config['timeformat'], $newdate); + $date_formatter = date_create_from_format($config['dateformat'] . ' ' . $config['timeformat'], $newdate); - $expense_data = [ - 'date' => $date_formatter->format('Y-m-d H:i:s'), - 'supplier_id' => $this->request->getPost('supplier_id') == '' ? null : $this->request->getPost('supplier_id', FILTER_SANITIZE_NUMBER_INT), - 'supplier_tax_code' => $this->request->getPost('supplier_tax_code', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'amount' => parse_decimals($this->request->getPost('amount')), - 'tax_amount' => parse_decimals($this->request->getPost('tax_amount')), - 'payment_type' => $this->request->getPost('payment_type', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'expense_category_id' => $this->request->getPost('expense_category_id', FILTER_SANITIZE_NUMBER_INT), - 'description' => $this->request->getPost('description', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'employee_id' => $this->request->getPost('employee_id', FILTER_SANITIZE_NUMBER_INT), - 'deleted' => $this->request->getPost('deleted') != null - ]; + $expense_data = [ + 'date' => $date_formatter->format('Y-m-d H:i:s'), + 'supplier_id' => $this->request->getPost('supplier_id') == '' ? null : $this->request->getPost('supplier_id', FILTER_SANITIZE_NUMBER_INT), + 'supplier_tax_code' => $this->request->getPost('supplier_tax_code', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'amount' => parse_decimals($this->request->getPost('amount')), + 'tax_amount' => parse_decimals($this->request->getPost('tax_amount')), + 'payment_type' => $this->request->getPost('payment_type', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'expense_category_id' => $this->request->getPost('expense_category_id', FILTER_SANITIZE_NUMBER_INT), + 'description' => $this->request->getPost('description', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'employee_id' => $this->request->getPost('employee_id', FILTER_SANITIZE_NUMBER_INT), + 'deleted' => $this->request->getPost('deleted') != null + ]; - if($this->expense->save_value($expense_data, $expense_id)) - { - //New Expense - if($expense_id == NEW_ENTRY) - { - echo json_encode (['success' => true, 'message' => lang('Expenses.successful_adding'), 'id' => $expense_data['expense_id']]); - } - else // Existing Expense - { - echo json_encode (['success' => true, 'message' => lang('Expenses.successful_updating'), 'id' => $expense_id]); - } - } - else//failure - { - echo json_encode (['success' => false, 'message' => lang('Expenses.error_adding_updating'), 'id' => NEW_ENTRY]); - } - } + if($this->expense->save_value($expense_data, $expense_id)) + { + //New Expense + if($expense_id == NEW_ENTRY) + { + echo json_encode (['success' => true, 'message' => lang('Expenses.successful_adding'), 'id' => $expense_data['expense_id']]); + } + else // Existing Expense + { + echo json_encode (['success' => true, 'message' => lang('Expenses.successful_updating'), 'id' => $expense_id]); + } + } + else//failure + { + echo json_encode (['success' => false, 'message' => lang('Expenses.error_adding_updating'), 'id' => NEW_ENTRY]); + } + } - /** - * @return void - */ - public function postDelete(): void - { - $expenses_to_delete = $this->request->getPost('ids', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + /** + * @return void + */ + public function postDelete(): void + { + $expenses_to_delete = $this->request->getPost('ids', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - if($this->expense->delete_list($expenses_to_delete)) - { - echo json_encode (['success' => true, 'message' => lang('Expenses.successful_deleted') . ' ' . count($expenses_to_delete) . ' ' . lang('Expenses.one_or_multiple'), 'ids' => $expenses_to_delete]); - } - else - { - echo json_encode (['success' => false, 'message' => lang('Expenses.cannot_be_deleted'), 'ids' => $expenses_to_delete]); - } - } + if($this->expense->delete_list($expenses_to_delete)) + { + echo json_encode (['success' => true, 'message' => lang('Expenses.successful_deleted') . ' ' . count($expenses_to_delete) . ' ' . lang('Expenses.one_or_multiple'), 'ids' => $expenses_to_delete]); + } + else + { + echo json_encode (['success' => false, 'message' => lang('Expenses.cannot_be_deleted'), 'ids' => $expenses_to_delete]); + } + } } diff --git a/app/Controllers/Expenses_categories.php b/app/Controllers/Expenses_categories.php index 508d0eccd..aa5499bb9 100644 --- a/app/Controllers/Expenses_categories.php +++ b/app/Controllers/Expenses_categories.php @@ -5,130 +5,130 @@ namespace App\Controllers; use App\Models\Expense_category; use Config\Services; -class Expenses_categories extends Secure_Controller //TODO: Is this class ever used? +class Expenses_categories extends Secure_Controller //TODO: Is this class ever used? { - private Expense_category $expense_category; + private Expense_category $expense_category; - public function __construct() - { - parent::__construct('expenses_categories'); + public function __construct() + { + parent::__construct('expenses_categories'); - $this->expense_category = model(Expense_category::class); - } + $this->expense_category = model(Expense_category::class); + } - /** - * @return void - */ - public function getIndex(): void - { - $data['table_headers'] = get_expense_category_manage_table_headers(); + /** + * @return void + */ + public function getIndex(): void + { + $data['table_headers'] = get_expense_category_manage_table_headers(); - echo view('expenses_categories/manage', $data); - } + echo view('expenses_categories/manage', $data); + } - /** - * Returns expense_category_manage table data rows. This will be called with AJAX. - **/ - public function getSearch(): void - { - $search = $this->request->getGet('search'); - $limit = $this->request->getGet('limit', FILTER_SANITIZE_NUMBER_INT); - $offset = $this->request->getGet('offset', FILTER_SANITIZE_NUMBER_INT); - $sort = $this->sanitizeSortColumn(expense_category_headers(), $this->request->getGet('sort', FILTER_SANITIZE_FULL_SPECIAL_CHARS), 'expense_category_id'); - $order = $this->request->getGet('order', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + /** + * Returns expense_category_manage table data rows. This will be called with AJAX. + **/ + public function getSearch(): void + { + $search = $this->request->getGet('search'); + $limit = $this->request->getGet('limit', FILTER_SANITIZE_NUMBER_INT); + $offset = $this->request->getGet('offset', FILTER_SANITIZE_NUMBER_INT); + $sort = $this->sanitizeSortColumn(expense_category_headers(), $this->request->getGet('sort', FILTER_SANITIZE_FULL_SPECIAL_CHARS), 'expense_category_id'); + $order = $this->request->getGet('order', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $expense_categories = $this->expense_category->search($search, $limit, $offset, $sort, $order); - $total_rows = $this->expense_category->get_found_rows($search); + $expense_categories = $this->expense_category->search($search, $limit, $offset, $sort, $order); + $total_rows = $this->expense_category->get_found_rows($search); - $data_rows = []; - foreach($expense_categories->getResult() as $expense_category) - { - $data_rows[] = get_expense_category_data_row($expense_category); - } + $data_rows = []; + foreach($expense_categories->getResult() as $expense_category) + { + $data_rows[] = get_expense_category_data_row($expense_category); + } - echo json_encode (['total' => $total_rows, 'rows' => $data_rows]); - } + echo json_encode (['total' => $total_rows, 'rows' => $data_rows]); + } - /** - * @param int $row_id - * @return void - */ - public function getRow(int $row_id): void - { - $data_row = get_expense_category_data_row($this->expense_category->get_info($row_id)); + /** + * @param int $row_id + * @return void + */ + public function getRow(int $row_id): void + { + $data_row = get_expense_category_data_row($this->expense_category->get_info($row_id)); - echo json_encode($data_row); - } + echo json_encode($data_row); + } - /** - * @param int $expense_category_id - * @return void - */ - public function getView(int $expense_category_id = NEW_ENTRY): void - { - $data['category_info'] = $this->expense_category->get_info($expense_category_id); + /** + * @param int $expense_category_id + * @return void + */ + public function getView(int $expense_category_id = NEW_ENTRY): void + { + $data['category_info'] = $this->expense_category->get_info($expense_category_id); - echo view("expenses_categories/form", $data); - } + echo view("expenses_categories/form", $data); + } - /** - * @param int $expense_category_id - * @return void - */ - public function postSave(int $expense_category_id = NEW_ENTRY): void - { - $expense_category_data = [ - 'category_name' => $this->request->getPost('category_name', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'category_description' => $this->request->getPost('category_description', FILTER_SANITIZE_FULL_SPECIAL_CHARS) - ]; + /** + * @param int $expense_category_id + * @return void + */ + public function postSave(int $expense_category_id = NEW_ENTRY): void + { + $expense_category_data = [ + 'category_name' => $this->request->getPost('category_name', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'category_description' => $this->request->getPost('category_description', FILTER_SANITIZE_FULL_SPECIAL_CHARS) + ]; - if($this->expense_category->save_value($expense_category_data, $expense_category_id)) - { - // New expense_category - if($expense_category_id == NEW_ENTRY) - { - echo json_encode ([ - 'success' => true, - 'message' => lang('Expenses_categories.successful_adding'), - 'id' => $expense_category_data['expense_category_id'] - ]); - } - else // Existing Expense Category - { - echo json_encode ([ - 'success' => true, - 'message' => lang('Expenses_categories.successful_updating'), - 'id' => $expense_category_id - ]); - } - } - else//failure - { - echo json_encode ([ - 'success' => true, - 'message' => lang('Expenses_categories.error_adding_updating') . ' ' . $expense_category_data['category_name'], - 'id' => NEW_ENTRY - ]); - } - } + if($this->expense_category->save_value($expense_category_data, $expense_category_id)) + { + // New expense_category + if($expense_category_id == NEW_ENTRY) + { + echo json_encode ([ + 'success' => true, + 'message' => lang('Expenses_categories.successful_adding'), + 'id' => $expense_category_data['expense_category_id'] + ]); + } + else // Existing Expense Category + { + echo json_encode ([ + 'success' => true, + 'message' => lang('Expenses_categories.successful_updating'), + 'id' => $expense_category_id + ]); + } + } + else//failure + { + echo json_encode ([ + 'success' => true, + 'message' => lang('Expenses_categories.error_adding_updating') . ' ' . $expense_category_data['category_name'], + 'id' => NEW_ENTRY + ]); + } + } - /** - * @return void - */ - public function postDelete(): void - { - $expense_category_to_delete = $this->request->getPost('ids', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + /** + * @return void + */ + public function postDelete(): void + { + $expense_category_to_delete = $this->request->getPost('ids', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - if($this->expense_category->delete_list($expense_category_to_delete)) //TODO: Convert to ternary notation. - { - echo json_encode([ - 'success' => true, - 'message' => lang('Expenses_categories.successful_deleted') . ' ' . count($expense_category_to_delete) . ' ' . lang('Expenses_categories.one_or_multiple') - ]); - } - else - { - echo json_encode (['success' => false, 'message' => lang('Expenses_categories.cannot_be_deleted')]); - } - } + if($this->expense_category->delete_list($expense_category_to_delete)) //TODO: Convert to ternary notation. + { + echo json_encode([ + 'success' => true, + 'message' => lang('Expenses_categories.successful_deleted') . ' ' . count($expense_category_to_delete) . ' ' . lang('Expenses_categories.one_or_multiple') + ]); + } + else + { + echo json_encode (['success' => false, 'message' => lang('Expenses_categories.cannot_be_deleted')]); + } + } } diff --git a/app/Controllers/Giftcards.php b/app/Controllers/Giftcards.php index a3fbe01c8..4148e8e0c 100644 --- a/app/Controllers/Giftcards.php +++ b/app/Controllers/Giftcards.php @@ -8,191 +8,191 @@ use Config\Services; class Giftcards extends Secure_Controller { - private Giftcard $giftcard; + private Giftcard $giftcard; - public function __construct() - { - parent::__construct('giftcards'); + public function __construct() + { + parent::__construct('giftcards'); - $this->giftcard = model(Giftcard::class); - } + $this->giftcard = model(Giftcard::class); + } - /** - * @return void - */ - public function getIndex(): void - { - $data['table_headers'] = get_giftcards_manage_table_headers(); + /** + * @return void + */ + public function getIndex(): void + { + $data['table_headers'] = get_giftcards_manage_table_headers(); - echo view('giftcards/manage', $data); - } + echo view('giftcards/manage', $data); + } - /** - * Returns Giftcards table data rows. This will be called with AJAX. - */ - public function getSearch(): void - { - $search = $this->request->getGet('search'); - $limit = $this->request->getGet('limit', FILTER_SANITIZE_NUMBER_INT); - $offset = $this->request->getGet('offset', FILTER_SANITIZE_NUMBER_INT); - $sort = $this->sanitizeSortColumn(giftcard_headers(), $this->request->getGet('sort', FILTER_SANITIZE_FULL_SPECIAL_CHARS), 'giftcard_id'); - $order = $this->request->getGet('order', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + /** + * Returns Giftcards table data rows. This will be called with AJAX. + */ + public function getSearch(): void + { + $search = $this->request->getGet('search'); + $limit = $this->request->getGet('limit', FILTER_SANITIZE_NUMBER_INT); + $offset = $this->request->getGet('offset', FILTER_SANITIZE_NUMBER_INT); + $sort = $this->sanitizeSortColumn(giftcard_headers(), $this->request->getGet('sort', FILTER_SANITIZE_FULL_SPECIAL_CHARS), 'giftcard_id'); + $order = $this->request->getGet('order', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $giftcards = $this->giftcard->search($search, $limit, $offset, $sort, $order); - $total_rows = $this->giftcard->get_found_rows($search); + $giftcards = $this->giftcard->search($search, $limit, $offset, $sort, $order); + $total_rows = $this->giftcard->get_found_rows($search); - $data_rows = []; - foreach($giftcards->getResult() as $giftcard) - { - $data_rows[] = get_giftcard_data_row($giftcard); - } + $data_rows = []; + foreach($giftcards->getResult() as $giftcard) + { + $data_rows[] = get_giftcard_data_row($giftcard); + } - echo json_encode (['total' => $total_rows, 'rows' => $data_rows]); - } + echo json_encode (['total' => $total_rows, 'rows' => $data_rows]); + } - /** - * Gets search suggestions for giftcards. Used in app\Views\sales\register.php - * - * @return void - * @noinspection PhpUnused - */ - public function getSuggest(): void - { - $search = $this->request->getGet('term'); - $suggestions = $this->giftcard->get_search_suggestions($search, true); + /** + * Gets search suggestions for giftcards. Used in app\Views\sales\register.php + * + * @return void + * @noinspection PhpUnused + */ + public function getSuggest(): void + { + $search = $this->request->getGet('term'); + $suggestions = $this->giftcard->get_search_suggestions($search, true); - echo json_encode($suggestions); - } + echo json_encode($suggestions); + } - /** - * @return void - */ - public function suggest_search(): void - { - $search = $this->request->getPost('term'); - $suggestions = $this->giftcard->get_search_suggestions($search); + /** + * @return void + */ + public function suggest_search(): void + { + $search = $this->request->getPost('term'); + $suggestions = $this->giftcard->get_search_suggestions($search); - echo json_encode($suggestions); - } + echo json_encode($suggestions); + } - /** - * @param int $row_id - * @return void - */ - public function getRow(int $row_id): void - { - $data_row = get_giftcard_data_row($this->giftcard->get_info($row_id)); + /** + * @param int $row_id + * @return void + */ + public function getRow(int $row_id): void + { + $data_row = get_giftcard_data_row($this->giftcard->get_info($row_id)); - echo json_encode($data_row); - } + echo json_encode($data_row); + } - /** - * @param int $giftcard_id - * @return void - */ - public function getView(int $giftcard_id = NEW_ENTRY): void - { - $config = config(OSPOS::class)->settings; - $giftcard_info = $this->giftcard->get_info($giftcard_id); + /** + * @param int $giftcard_id + * @return void + */ + public function getView(int $giftcard_id = NEW_ENTRY): void + { + $config = config(OSPOS::class)->settings; + $giftcard_info = $this->giftcard->get_info($giftcard_id); - $data['selected_person_name'] = ($giftcard_id > 0 && isset($giftcard_info->person_id)) ? $giftcard_info->first_name . ' ' . $giftcard_info->last_name : ''; - $data['selected_person_id'] = $giftcard_info->person_id; - if($config['giftcard_number'] == 'random') - { - $data['giftcard_number'] = $giftcard_id > 0 ? $giftcard_info->giftcard_number : ''; - } - else - { - $max_number_obj = $this->giftcard->get_max_number(); - $max_giftnumber = isset($max_number_obj) ? $this->giftcard->get_max_number()->giftcard_number : 0; //TODO: variable does not follow naming standard. - $data['giftcard_number'] = $giftcard_id > 0 ? $giftcard_info->giftcard_number : $max_giftnumber + 1; - } - $data['giftcard_id'] = $giftcard_id; - $data['giftcard_value'] = $giftcard_info->value; + $data['selected_person_name'] = ($giftcard_id > 0 && isset($giftcard_info->person_id)) ? $giftcard_info->first_name . ' ' . $giftcard_info->last_name : ''; + $data['selected_person_id'] = $giftcard_info->person_id; + if($config['giftcard_number'] == 'random') + { + $data['giftcard_number'] = $giftcard_id > 0 ? $giftcard_info->giftcard_number : ''; + } + else + { + $max_number_obj = $this->giftcard->get_max_number(); + $max_giftnumber = isset($max_number_obj) ? $this->giftcard->get_max_number()->giftcard_number : 0; //TODO: variable does not follow naming standard. + $data['giftcard_number'] = $giftcard_id > 0 ? $giftcard_info->giftcard_number : $max_giftnumber + 1; + } + $data['giftcard_id'] = $giftcard_id; + $data['giftcard_value'] = $giftcard_info->value; - echo view("giftcards/form", $data); - } + echo view("giftcards/form", $data); + } - /** - * @param int $giftcard_id - * @return void - */ - public function postSave(int $giftcard_id = NEW_ENTRY): void - { - $giftcard_number = $this->request->getPost('giftcard_number', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + /** + * @param int $giftcard_id + * @return void + */ + public function postSave(int $giftcard_id = NEW_ENTRY): void + { + $giftcard_number = $this->request->getPost('giftcard_number', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - if($giftcard_id == NEW_ENTRY && trim($giftcard_number) == '') - { - $giftcard_number = $this->giftcard->generate_unique_giftcard_name($giftcard_number); - } + if($giftcard_id == NEW_ENTRY && trim($giftcard_number) == '') + { + $giftcard_number = $this->giftcard->generate_unique_giftcard_name($giftcard_number); + } - $giftcard_data = [ - 'record_time' => date('Y-m-d H:i:s'), - 'giftcard_number' => $giftcard_number, - 'value' => parse_decimals($this->request->getPost('giftcard_amount')), - 'person_id' => $this->request->getPost('person_id') == '' ? null : $this->request->getPost('person_id', FILTER_SANITIZE_NUMBER_INT) - ]; + $giftcard_data = [ + 'record_time' => date('Y-m-d H:i:s'), + 'giftcard_number' => $giftcard_number, + 'value' => parse_decimals($this->request->getPost('giftcard_amount')), + 'person_id' => $this->request->getPost('person_id') == '' ? null : $this->request->getPost('person_id', FILTER_SANITIZE_NUMBER_INT) + ]; - if($this->giftcard->save_value($giftcard_data, $giftcard_id)) - { - //New giftcard - if($giftcard_id == NEW_ENTRY) //TODO: Constant needed - { - echo json_encode ([ - 'success' => true, - 'message' => lang('Giftcards.successful_adding') . ' ' . $giftcard_data['giftcard_number'], - 'id' => $giftcard_data['giftcard_id'] - ]); - } - else //Existing giftcard - { - echo json_encode ([ - 'success' => true, - 'message' => lang('Giftcards.successful_updating') . ' ' . $giftcard_data['giftcard_number'], - 'id' => $giftcard_id - ]); - } - } - else //failure - { - echo json_encode ([ - 'success' => false, - 'message' => lang('Giftcards.error_adding_updating') . ' ' . $giftcard_data['giftcard_number'], - 'id' => NEW_ENTRY - ]); - } - } + if($this->giftcard->save_value($giftcard_data, $giftcard_id)) + { + //New giftcard + if($giftcard_id == NEW_ENTRY) //TODO: Constant needed + { + echo json_encode ([ + 'success' => true, + 'message' => lang('Giftcards.successful_adding') . ' ' . $giftcard_data['giftcard_number'], + 'id' => $giftcard_data['giftcard_id'] + ]); + } + else //Existing giftcard + { + echo json_encode ([ + 'success' => true, + 'message' => lang('Giftcards.successful_updating') . ' ' . $giftcard_data['giftcard_number'], + 'id' => $giftcard_id + ]); + } + } + else //failure + { + echo json_encode ([ + 'success' => false, + 'message' => lang('Giftcards.error_adding_updating') . ' ' . $giftcard_data['giftcard_number'], + 'id' => NEW_ENTRY + ]); + } + } - /** - * Checks the giftcard number validity. Used in app\Views\giftcards\form.php - * - * @return void - * @noinspection PhpUnused - */ - public function postCheckNumberGiftcard(): void - { - $giftcard_amount = parse_decimals($this->request->getPost('giftcard_amount')); - $parsed_value = filter_var($giftcard_amount, FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION); - echo json_encode (['success' => $parsed_value !== false && $parsed_value > 0 && $giftcard_amount !== false, 'giftcard_amount' => to_currency_no_money($parsed_value)]); - } + /** + * Checks the giftcard number validity. Used in app\Views\giftcards\form.php + * + * @return void + * @noinspection PhpUnused + */ + public function postCheckNumberGiftcard(): void + { + $giftcard_amount = parse_decimals($this->request->getPost('giftcard_amount')); + $parsed_value = filter_var($giftcard_amount, FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION); + echo json_encode (['success' => $parsed_value !== false && $parsed_value > 0 && $giftcard_amount !== false, 'giftcard_amount' => to_currency_no_money($parsed_value)]); + } - /** - * @return void - */ - public function postDelete(): void - { - $giftcards_to_delete = $this->request->getPost('ids', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + /** + * @return void + */ + public function postDelete(): void + { + $giftcards_to_delete = $this->request->getPost('ids', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - if($this->giftcard->delete_list($giftcards_to_delete)) - { - echo json_encode ([ - 'success' => true, - 'message' => lang('Giftcards.successful_deleted') . ' ' . count($giftcards_to_delete).' '.lang('Giftcards.one_or_multiple') - ]); - } - else - { - echo json_encode (['success' => false, 'message' => lang('Giftcards.cannot_be_deleted')]); - } - } + if($this->giftcard->delete_list($giftcards_to_delete)) + { + echo json_encode ([ + 'success' => true, + 'message' => lang('Giftcards.successful_deleted') . ' ' . count($giftcards_to_delete).' '.lang('Giftcards.one_or_multiple') + ]); + } + else + { + echo json_encode (['success' => false, 'message' => lang('Giftcards.cannot_be_deleted')]); + } + } } diff --git a/app/Controllers/Home.php b/app/Controllers/Home.php index 36c871510..70eb6c934 100644 --- a/app/Controllers/Home.php +++ b/app/Controllers/Home.php @@ -6,97 +6,97 @@ use CodeIgniter\HTTP\RedirectResponse; class Home extends Secure_Controller { - public function __construct() - { - parent::__construct('home', null, 'home'); - } + public function __construct() + { + parent::__construct('home', null, 'home'); + } - /** - * @return void - */ - public function getIndex(): void - { - $logged_in = $this->employee->is_logged_in(); - echo view('home/home'); - } + /** + * @return void + */ + public function getIndex(): void + { + $logged_in = $this->employee->is_logged_in(); + echo view('home/home'); + } - /** - * Logs the currently logged in employee out of the system. Used in app/Views/partial/header.php - * - * @return RedirectResponse - * @noinspection PhpUnused - */ - public function getLogout(): RedirectResponse - { - $this->employee->logout(); - return redirect()->to('login'); - } + /** + * Logs the currently logged in employee out of the system. Used in app/Views/partial/header.php + * + * @return RedirectResponse + * @noinspection PhpUnused + */ + public function getLogout(): RedirectResponse + { + $this->employee->logout(); + return redirect()->to('login'); + } - /** - * Load "change employee password" form - * - * @noinspection PhpUnused - */ - public function getChangePassword(int $employee_id = -1): void //TODO: Replace -1 with a constant - { - $person_info = $this->employee->get_info($employee_id); - foreach(get_object_vars($person_info) as $property => $value) - { - $person_info->$property = $value; - } - $data['person_info'] = $person_info; + /** + * Load "change employee password" form + * + * @noinspection PhpUnused + */ + public function getChangePassword(int $employee_id = -1): void //TODO: Replace -1 with a constant + { + $person_info = $this->employee->get_info($employee_id); + foreach(get_object_vars($person_info) as $property => $value) + { + $person_info->$property = $value; + } + $data['person_info'] = $person_info; - echo view('home/form_change_password', $data); - } + echo view('home/form_change_password', $data); + } - /** - * Change employee password - */ - public function save(int $employee_id = -1): void //TODO: Replace -1 with a constant - { - if(!empty($this->request->getPost('current_password')) && $employee_id != -1) - { - if($this->employee->check_password($this->request->getPost('username', FILTER_SANITIZE_FULL_SPECIAL_CHARS), $this->request->getPost('current_password'))) - { - $employee_data = [ - 'username' => $this->request->getPost('username', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'password' => password_hash($this->request->getPost('password'), PASSWORD_DEFAULT), - 'hash_version' => 2 - ]; + /** + * Change employee password + */ + public function save(int $employee_id = -1): void //TODO: Replace -1 with a constant + { + if(!empty($this->request->getPost('current_password')) && $employee_id != -1) + { + if($this->employee->check_password($this->request->getPost('username', FILTER_SANITIZE_FULL_SPECIAL_CHARS), $this->request->getPost('current_password'))) + { + $employee_data = [ + 'username' => $this->request->getPost('username', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'password' => password_hash($this->request->getPost('password'), PASSWORD_DEFAULT), + 'hash_version' => 2 + ]; - if($this->employee->change_password($employee_data, $employee_id)) - { - echo json_encode ([ - 'success' => true, - 'message' => lang('Employees.successful_change_password'), - 'id' => $employee_id - ]); - } - else//failure - {//TODO: Replace -1 with constant - echo json_encode ([ - 'success' => false, - 'message' => lang('Employees.unsuccessful_change_password'), - 'id' => -1 - ]); - } - } - else - {//TODO: Replace -1 with constant - echo json_encode ([ - 'success' => false, - 'message' => lang('Employees.current_password_invalid'), - 'id' => -1 - ]); - } - } - else - {//TODO: Replace -1 with constant - echo json_encode ([ - 'success' => false, - 'message' => lang('Employees.current_password_invalid'), - 'id' => -1 - ]); - } - } + if($this->employee->change_password($employee_data, $employee_id)) + { + echo json_encode ([ + 'success' => true, + 'message' => lang('Employees.successful_change_password'), + 'id' => $employee_id + ]); + } + else//failure + {//TODO: Replace -1 with constant + echo json_encode ([ + 'success' => false, + 'message' => lang('Employees.unsuccessful_change_password'), + 'id' => -1 + ]); + } + } + else + {//TODO: Replace -1 with constant + echo json_encode ([ + 'success' => false, + 'message' => lang('Employees.current_password_invalid'), + 'id' => -1 + ]); + } + } + else + {//TODO: Replace -1 with constant + echo json_encode ([ + 'success' => false, + 'message' => lang('Employees.current_password_invalid'), + 'id' => -1 + ]); + } + } } diff --git a/app/Controllers/Item_kits.php b/app/Controllers/Item_kits.php index de7ff0279..f99ab219a 100644 --- a/app/Controllers/Item_kits.php +++ b/app/Controllers/Item_kits.php @@ -11,309 +11,309 @@ use Config\Services; class Item_kits extends Secure_Controller { - private Item $item; - private Item_kit $item_kit; - private Item_kit_items $item_kit_items; + private Item $item; + private Item_kit $item_kit; + private Item_kit_items $item_kit_items; - public function __construct() - { - parent::__construct('item_kits'); + public function __construct() + { + parent::__construct('item_kits'); - $this->item = model(Item::class); - $this->item_kit = model(Item_kit::class); - $this->item_kit_items = model(Item_kit_items::class); - } + $this->item = model(Item::class); + $this->item_kit = model(Item_kit::class); + $this->item_kit_items = model(Item_kit_items::class); + } - /** - * Add the total cost and retail price to a passed item_kit retrieving the data from each singular item part of the kit - */ - private function _add_totals_to_item_kit(object $item_kit): object //TODO: Hungarian notation - { - $kit_item_info = $this->item->get_info($item_kit->kit_item_id ?? $item_kit->item_id); + /** + * Add the total cost and retail price to a passed item_kit retrieving the data from each singular item part of the kit + */ + private function _add_totals_to_item_kit(object $item_kit): object //TODO: Hungarian notation + { + $kit_item_info = $this->item->get_info($item_kit->kit_item_id ?? $item_kit->item_id); - $item_kit->total_cost_price = 0; - $item_kit->total_unit_price = $kit_item_info->unit_price; - $total_quantity = 0; + $item_kit->total_cost_price = 0; + $item_kit->total_unit_price = $kit_item_info->unit_price; + $total_quantity = 0; - foreach($this->item_kit_items->get_info($item_kit->item_kit_id) as $item_kit_item) - { - $item_info = $this->item->get_info($item_kit_item['item_id']); - foreach(get_object_vars($item_info) as $property => $value) - { - $item_info->$property = $value; - } + foreach($this->item_kit_items->get_info($item_kit->item_kit_id) as $item_kit_item) + { + $item_info = $this->item->get_info($item_kit_item['item_id']); + foreach(get_object_vars($item_info) as $property => $value) + { + $item_info->$property = $value; + } - $item_kit->total_cost_price += $item_info->cost_price * $item_kit_item['quantity']; + $item_kit->total_cost_price += $item_info->cost_price * $item_kit_item['quantity']; - if($item_kit->price_option == PRICE_OPTION_ALL || ($item_kit->price_option == PRICE_OPTION_KIT_STOCK && $item_info->stock_type == HAS_STOCK )) - { - $item_kit->total_unit_price += $item_info->unit_price * $item_kit_item['quantity']; - $total_quantity += $item_kit_item['quantity']; - } - } + if($item_kit->price_option == PRICE_OPTION_ALL || ($item_kit->price_option == PRICE_OPTION_KIT_STOCK && $item_info->stock_type == HAS_STOCK )) + { + $item_kit->total_unit_price += $item_info->unit_price * $item_kit_item['quantity']; + $total_quantity += $item_kit_item['quantity']; + } + } - $discount_fraction = bcdiv($item_kit->kit_discount, '100'); + $discount_fraction = bcdiv($item_kit->kit_discount, '100'); - $item_kit->total_unit_price = $item_kit->total_unit_price - round(($item_kit->kit_discount_type == PERCENT) - ? bcmul($item_kit->total_unit_price, $discount_fraction) - : $item_kit->kit_discount, totals_decimals(), PHP_ROUND_HALF_UP); + $item_kit->total_unit_price = $item_kit->total_unit_price - round(($item_kit->kit_discount_type == PERCENT) + ? bcmul($item_kit->total_unit_price, $discount_fraction) + : $item_kit->kit_discount, totals_decimals(), PHP_ROUND_HALF_UP); - return $item_kit; - } + return $item_kit; + } - /** - * @return void - */ - public function getIndex(): void - { - $data['table_headers'] = get_item_kits_manage_table_headers(); + /** + * @return void + */ + public function getIndex(): void + { + $data['table_headers'] = get_item_kits_manage_table_headers(); - echo view('item_kits/manage', $data); - } + echo view('item_kits/manage', $data); + } - /** - * Returns Item_kit table data rows. This will be called with AJAX. - */ - public function getSearch(): void - { - $search = $this->request->getGet('search') ?? ''; - $limit = $this->request->getGet('limit', FILTER_SANITIZE_NUMBER_INT); - $offset = $this->request->getGet('offset', FILTER_SANITIZE_NUMBER_INT); - $sort = $this->sanitizeSortColumn(item_kit_headers(), $this->request->getGet('sort', FILTER_SANITIZE_FULL_SPECIAL_CHARS), 'item_kit_id'); - $order = $this->request->getGet('order', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + /** + * Returns Item_kit table data rows. This will be called with AJAX. + */ + public function getSearch(): void + { + $search = $this->request->getGet('search') ?? ''; + $limit = $this->request->getGet('limit', FILTER_SANITIZE_NUMBER_INT); + $offset = $this->request->getGet('offset', FILTER_SANITIZE_NUMBER_INT); + $sort = $this->sanitizeSortColumn(item_kit_headers(), $this->request->getGet('sort', FILTER_SANITIZE_FULL_SPECIAL_CHARS), 'item_kit_id'); + $order = $this->request->getGet('order', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $item_kits = $this->item_kit->search($search, $limit, $offset, $sort, $order); - $total_rows = $this->item_kit->get_found_rows($search); + $item_kits = $this->item_kit->search($search, $limit, $offset, $sort, $order); + $total_rows = $this->item_kit->get_found_rows($search); - $data_rows = []; - foreach($item_kits->getResult() as $item_kit) - { - // calculate the total cost and retail price of the Kit, so it can be printed out in the manage table - $item_kit = $this->_add_totals_to_item_kit($item_kit); - $data_rows[] = get_item_kit_data_row($item_kit); - } + $data_rows = []; + foreach($item_kits->getResult() as $item_kit) + { + // calculate the total cost and retail price of the Kit, so it can be printed out in the manage table + $item_kit = $this->_add_totals_to_item_kit($item_kit); + $data_rows[] = get_item_kit_data_row($item_kit); + } - echo json_encode (['total' => $total_rows, 'rows' => $data_rows]); - } + echo json_encode (['total' => $total_rows, 'rows' => $data_rows]); + } - /** - * @return void - */ - public function suggest_search(): void - { - $search = $this->request->getPost('term'); - $suggestions = $this->item_kit->get_search_suggestions($search); + /** + * @return void + */ + public function suggest_search(): void + { + $search = $this->request->getPost('term'); + $suggestions = $this->item_kit->get_search_suggestions($search); - echo json_encode($suggestions); - } + echo json_encode($suggestions); + } - /** - * @param int $row_id - * @return void - */ - public function getRow(int $row_id): void - { - // calculate the total cost and retail price of the Kit, so it can be added to the table refresh - $item_kit = $this->_add_totals_to_item_kit($this->item_kit->get_info($row_id)); + /** + * @param int $row_id + * @return void + */ + public function getRow(int $row_id): void + { + // calculate the total cost and retail price of the Kit, so it can be added to the table refresh + $item_kit = $this->_add_totals_to_item_kit($this->item_kit->get_info($row_id)); - echo json_encode(get_item_kit_data_row($item_kit)); - } + echo json_encode(get_item_kit_data_row($item_kit)); + } - /** - * @param int $item_kit_id - * @return void - */ - public function getView(int $item_kit_id = NEW_ENTRY): void - { - $info = $this->item_kit->get_info($item_kit_id); + /** + * @param int $item_kit_id + * @return void + */ + public function getView(int $item_kit_id = NEW_ENTRY): void + { + $info = $this->item_kit->get_info($item_kit_id); - if($item_kit_id == NEW_ENTRY) - { - $info->price_option = '0'; - $info->print_option = PRINT_ALL; - $info->kit_item_id = 0; - $info->item_number = ''; - $info->kit_discount = 0; - } + if($item_kit_id == NEW_ENTRY) + { + $info->price_option = '0'; + $info->print_option = PRINT_ALL; + $info->kit_item_id = 0; + $info->item_number = ''; + $info->kit_discount = 0; + } - foreach(get_object_vars($info) as $property => $value) - { - $info->$property = $value; - } + foreach(get_object_vars($info) as $property => $value) + { + $info->$property = $value; + } - $data['item_kit_info'] = $info; + $data['item_kit_info'] = $info; - $items = []; + $items = []; - foreach($this->item_kit_items->get_info($item_kit_id) as $item_kit_item) - { - $item['kit_sequence'] = $item_kit_item['kit_sequence']; - $item['name'] = $this->item->get_info($item_kit_item['item_id'])->name; - $item['item_id'] = $item_kit_item['item_id']; - $item['quantity'] = $item_kit_item['quantity']; + foreach($this->item_kit_items->get_info($item_kit_id) as $item_kit_item) + { + $item['kit_sequence'] = $item_kit_item['kit_sequence']; + $item['name'] = $this->item->get_info($item_kit_item['item_id'])->name; + $item['item_id'] = $item_kit_item['item_id']; + $item['quantity'] = $item_kit_item['quantity']; - $items[] = $item; - } + $items[] = $item; + } - $data['item_kit_items'] = $items; + $data['item_kit_items'] = $items; - $data['selected_kit_item_id'] = $info->kit_item_id; - $data['selected_kit_item'] = ($item_kit_id > 0 && isset($info->kit_item_id)) ? $info->item_name : ''; + $data['selected_kit_item_id'] = $info->kit_item_id; + $data['selected_kit_item'] = ($item_kit_id > 0 && isset($info->kit_item_id)) ? $info->item_name : ''; - echo view("item_kits/form", $data); - } + echo view("item_kits/form", $data); + } - /** - * @param int $item_kit_id - * @return void - */ - public function postSave(int $item_kit_id = NEW_ENTRY): void - { - $item_kit_data = [ - 'name' => $this->request->getPost('name'), - 'item_kit_number' => $this->request->getPost('item_kit_number'), - 'item_id' => $this->request->getPost('kit_item_id') ? null : intval($this->request->getPost('kit_item_id')), - 'kit_discount' => parse_decimals($this->request->getPost('kit_discount')), - 'kit_discount_type' => $this->request->getPost('kit_discount_type') === null ? PERCENT : intval($this->request->getPost('kit_discount_type')), - 'price_option' => $this->request->getPost('price_option') === null ? PRICE_ALL : intval($this->request->getPost('price_option')), - 'print_option' => $this->request->getPost('print_option') === null ? PRINT_ALL : intval($this->request->getPost('print_option')), - 'description' => $this->request->getPost('description') - ]; + /** + * @param int $item_kit_id + * @return void + */ + public function postSave(int $item_kit_id = NEW_ENTRY): void + { + $item_kit_data = [ + 'name' => $this->request->getPost('name'), + 'item_kit_number' => $this->request->getPost('item_kit_number'), + 'item_id' => $this->request->getPost('kit_item_id') ? null : intval($this->request->getPost('kit_item_id')), + 'kit_discount' => parse_decimals($this->request->getPost('kit_discount')), + 'kit_discount_type' => $this->request->getPost('kit_discount_type') === null ? PERCENT : intval($this->request->getPost('kit_discount_type')), + 'price_option' => $this->request->getPost('price_option') === null ? PRICE_ALL : intval($this->request->getPost('price_option')), + 'print_option' => $this->request->getPost('print_option') === null ? PRINT_ALL : intval($this->request->getPost('print_option')), + 'description' => $this->request->getPost('description') + ]; - if($this->item_kit->save_value($item_kit_data, $item_kit_id)) - { - $new_item = false; - //New item kit - if($item_kit_id == NEW_ENTRY) - { - $item_kit_id = $item_kit_data['item_kit_id']; - $new_item = true; - } + if($this->item_kit->save_value($item_kit_data, $item_kit_id)) + { + $new_item = false; + //New item kit + if($item_kit_id == NEW_ENTRY) + { + $item_kit_id = $item_kit_data['item_kit_id']; + $new_item = true; + } - $item_kit_items_array = $this->request->getPost('item_kit_qty') === null ? null : $this->request->getPost('item_kit_qty'); + $item_kit_items_array = $this->request->getPost('item_kit_qty') === null ? null : $this->request->getPost('item_kit_qty'); - if($item_kit_items_array != null) - { - $item_kit_items = []; - foreach($item_kit_items_array as $item_id => $item_kit_qty) - { - $item_kit_items[] = [ - 'item_id' => $item_id, - 'quantity' => $item_kit_qty === null ? 0 : parse_quantity($item_kit_qty), - 'kit_sequence' => $this->request->getPost("item_kit_seq[$item_id]") === null ? 0 : intval($this->request->getPost("item_kit_seq[$item_id]")) - ]; - } - } + if($item_kit_items_array != null) + { + $item_kit_items = []; + foreach($item_kit_items_array as $item_id => $item_kit_qty) + { + $item_kit_items[] = [ + 'item_id' => $item_id, + 'quantity' => $item_kit_qty === null ? 0 : parse_quantity($item_kit_qty), + 'kit_sequence' => $this->request->getPost("item_kit_seq[$item_id]") === null ? 0 : intval($this->request->getPost("item_kit_seq[$item_id]")) + ]; + } + } - if (!empty($item_kit_items)) - { - $success = $this->item_kit_items->save_value($item_kit_items, $item_kit_id); - } - else - { - $success = true; - } + if (!empty($item_kit_items)) + { + $success = $this->item_kit_items->save_value($item_kit_items, $item_kit_id); + } + else + { + $success = true; + } - if($new_item) - { - echo json_encode ([ - 'success' => $success, - 'message' => lang('Item_kits.successful_adding').' '.$item_kit_data['name'], - 'id' => $item_kit_id - ]); + if($new_item) + { + echo json_encode ([ + 'success' => $success, + 'message' => lang('Item_kits.successful_adding').' '.$item_kit_data['name'], + 'id' => $item_kit_id + ]); - } - else - { - echo json_encode ([ - 'success' => $success, - 'message' => lang('Item_kits.successful_updating').' '.$item_kit_data['name'], - 'id' => $item_kit_id - ]); - } - } - else//failure - { - echo json_encode ([ - 'success' => false, - 'message' => lang('Item_kits.error_adding_updating') . ' ' . $item_kit_data['name'], - 'id' => NEW_ENTRY - ]); - } - } + } + else + { + echo json_encode ([ + 'success' => $success, + 'message' => lang('Item_kits.successful_updating').' '.$item_kit_data['name'], + 'id' => $item_kit_id + ]); + } + } + else//failure + { + echo json_encode ([ + 'success' => false, + 'message' => lang('Item_kits.error_adding_updating') . ' ' . $item_kit_data['name'], + 'id' => NEW_ENTRY + ]); + } + } - /** - * @return void - */ - public function postDelete(): void - { - $item_kits_to_delete = $this->request->getPost('ids', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + /** + * @return void + */ + public function postDelete(): void + { + $item_kits_to_delete = $this->request->getPost('ids', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - if($this->item_kit->delete_list($item_kits_to_delete)) - { - echo json_encode ([ - 'success' => true, - 'message' => lang('Item_kits.successful_deleted') . ' ' . count($item_kits_to_delete) . ' ' . lang('Item_kits.one_or_multiple') - ]); - } - else - { - echo json_encode (['success' => false, 'message' => lang('Item_kits.cannot_be_deleted')]); - } - } + if($this->item_kit->delete_list($item_kits_to_delete)) + { + echo json_encode ([ + 'success' => true, + 'message' => lang('Item_kits.successful_deleted') . ' ' . count($item_kits_to_delete) . ' ' . lang('Item_kits.one_or_multiple') + ]); + } + else + { + echo json_encode (['success' => false, 'message' => lang('Item_kits.cannot_be_deleted')]); + } + } - /** - * Checks the validity of the item kit number. Used in app/Views/item_kits/form.php - * - * @return void - * @noinspection PhpUnused - */ - public function postCheckItemNumber(): void - { - $exists = $this->item_kit->item_number_exists($this->request->getPost('item_kit_number', FILTER_SANITIZE_FULL_SPECIAL_CHARS), $this->request->getPost('item_kit_id', FILTER_SANITIZE_NUMBER_INT)); - echo !$exists ? 'true' : 'false'; - } + /** + * Checks the validity of the item kit number. Used in app/Views/item_kits/form.php + * + * @return void + * @noinspection PhpUnused + */ + public function postCheckItemNumber(): void + { + $exists = $this->item_kit->item_number_exists($this->request->getPost('item_kit_number', FILTER_SANITIZE_FULL_SPECIAL_CHARS), $this->request->getPost('item_kit_id', FILTER_SANITIZE_NUMBER_INT)); + echo !$exists ? 'true' : 'false'; + } - /** - * AJAX called function that generates barcodes for selected item_kits. - * - * @param string $item_kit_ids Colon separated list of item_kit_id values to generate barcodes for. - * @return void - * @noinspection PhpUnused - */ - public function getGenerateBarcodes(string $item_kit_ids): void - { - $barcode_lib = new Barcode_lib(); - $result = []; + /** + * AJAX called function that generates barcodes for selected item_kits. + * + * @param string $item_kit_ids Colon separated list of item_kit_id values to generate barcodes for. + * @return void + * @noinspection PhpUnused + */ + public function getGenerateBarcodes(string $item_kit_ids): void + { + $barcode_lib = new Barcode_lib(); + $result = []; - $item_kit_ids = explode(':', $item_kit_ids); - foreach($item_kit_ids as $item_kid_id) - { - // calculate the total cost and retail price of the Kit, so it can be added to the barcode text at the bottom - $item_kit = $this->_add_totals_to_item_kit($this->item_kit->get_info($item_kid_id)); + $item_kit_ids = explode(':', $item_kit_ids); + foreach($item_kit_ids as $item_kid_id) + { + // calculate the total cost and retail price of the Kit, so it can be added to the barcode text at the bottom + $item_kit = $this->_add_totals_to_item_kit($this->item_kit->get_info($item_kid_id)); - $item_kid_id = 'KIT '. urldecode($item_kid_id); + $item_kid_id = 'KIT '. urldecode($item_kid_id); - $result[] = [ - 'name' => $item_kit->name, - 'item_id' => $item_kid_id, - 'item_number' => $item_kid_id, - 'cost_price' => $item_kit->total_cost_price, - 'unit_price' => $item_kit->total_unit_price - ]; - } + $result[] = [ + 'name' => $item_kit->name, + 'item_id' => $item_kid_id, + 'item_number' => $item_kid_id, + 'cost_price' => $item_kit->total_cost_price, + 'unit_price' => $item_kit->total_unit_price + ]; + } - $data['items'] = $result; - $barcode_config = $barcode_lib->get_barcode_config(); - // in case the selected barcode type is not Code39 or Code128 we set by default Code128 - // the rationale for this is that EAN codes cannot have strings as seed, so 'KIT ' is not allowed - if($barcode_config['barcode_type'] != 'C39' && $barcode_config['barcode_type'] != 'C128') - { - $barcode_config['barcode_type'] = 'C128'; - } - $data['barcode_config'] = $barcode_config; + $data['items'] = $result; + $barcode_config = $barcode_lib->get_barcode_config(); + // in case the selected barcode type is not Code39 or Code128 we set by default Code128 + // the rationale for this is that EAN codes cannot have strings as seed, so 'KIT ' is not allowed + if($barcode_config['barcode_type'] != 'C39' && $barcode_config['barcode_type'] != 'C128') + { + $barcode_config['barcode_type'] = 'C128'; + } + $data['barcode_config'] = $barcode_config; - // display barcodes - echo view("barcodes/barcode_sheet", $data); - } + // display barcodes + echo view("barcodes/barcode_sheet", $data); + } } diff --git a/app/Controllers/Items.php b/app/Controllers/Items.php index 64b90d7c1..304c8e112 100644 --- a/app/Controllers/Items.php +++ b/app/Controllers/Items.php @@ -25,1435 +25,1435 @@ require_once('Secure_Controller.php'); class Items extends Secure_Controller { - private BaseHandler $image; - private Barcode_lib $barcode_lib; - private Item_lib $item_lib; - private Attribute $attribute; - private Inventory $inventory; - private Item $item; - private Item_kit $item_kit; - private Item_quantity $item_quantity; - private Item_taxes $item_taxes; - private Stock_location $stock_location; - private Supplier $supplier; - private Tax_category $tax_category; - private array $config; - - - public function __construct() - { - parent::__construct('items'); - - $this->session = Services::session(); - - $this->image = Services::image(); - - $this->barcode_lib = new Barcode_lib(); - $this->item_lib = new Item_lib(); - - $this->attribute = model(Attribute::class); - $this->inventory = model(Inventory::class); - $this->item = model(Item::class); - $this->item_kit = model(Item_kit::class); - $this->item_quantity = model(Item_quantity::class); - $this->item_taxes = model(Item_taxes::class); - $this->stock_location = model(Stock_location::class); - $this->supplier = model(Supplier::class); - $this->tax_category = model(Tax_category::class); - $this->config = config(OSPOS::class)->settings; - } - - /** - * @return void - */ - public function getIndex(): void - { - $this->session->set('allow_temp_items', 0); - - $data['table_headers'] = get_items_manage_table_headers(); - $data['stock_location'] = $this->item_lib->get_item_location(); - $data['stock_locations'] = $this->stock_location->get_allowed_locations(); - - //Filters that will be loaded in the multiselect dropdown - $data['filters'] = [ - 'empty_upc' => lang('Items.empty_upc_items'), - 'low_inventory' => lang('Items.low_inventory_items'), - 'is_serialized' => lang('Items.serialized_items'), - 'no_description' => lang('Items.no_description_items'), - 'search_custom' => lang('Items.search_attributes'), - 'is_deleted' => lang('Items.is_deleted'), - 'temporary' => lang('Items.temp') - ]; - - echo view('items/manage', $data); - } - - /** - * Returns Items table data rows. This will be called with AJAX. - * @noinspection PhpUnused - **/ - public function getSearch(): void - { - $search = $this->request->getGet('search'); - $limit = $this->request->getGet('limit', FILTER_SANITIZE_NUMBER_INT); - $offset = $this->request->getGet('offset', FILTER_SANITIZE_NUMBER_INT); - $sort = $this->sanitizeSortColumn(item_headers(), $this->request->getGet('sort', FILTER_SANITIZE_FULL_SPECIAL_CHARS), 'item_id'); - $order = $this->request->getGet('order', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - - $this->item_lib->set_item_location($this->request->getGet('stock_location')); - - $definition_names = $this->attribute->get_definitions_by_flags(Attribute::SHOW_IN_ITEMS); - - $filters = [ - 'start_date' => $this->request->getGet('start_date'), - 'end_date' => $this->request->getGet('end_date'), - 'stock_location_id' => $this->item_lib->get_item_location(), - 'empty_upc' => false, - 'low_inventory' => false, - 'is_serialized' => false, - 'no_description' => false, - 'search_custom' => false, - 'is_deleted' => false, - 'temporary' => false, - 'definition_ids' => array_keys($definition_names) - ]; - - //Check if any filter is set in the multiselect dropdown - $request_filters = array_fill_keys($this->request->getGet('filters', FILTER_SANITIZE_FULL_SPECIAL_CHARS) ?? [], true); - $filters = array_merge($filters, $request_filters); - $items = $this->item->search($search, $filters, $limit, $offset, $sort, $order); - $total_rows = $this->item->get_found_rows($search, $filters); - $data_rows = []; - - foreach($items->getResult() as $item) - { - $data_rows[] = get_item_data_row($item); - - if($item->pic_filename !== null) - { - $this->update_pic_filename($item); - } - } - - echo json_encode(['total' => $total_rows, 'rows' => $data_rows]); - } - - /** - * AJAX function. Processes thumbnail of image. Called via tabular_helper - * @param string $pic_filename - * @return void - * @noinspection PhpUnused - */ - public function getPicThumb(string $pic_filename): void - { - helper('file'); - - $file_extension = pathinfo($pic_filename, PATHINFO_EXTENSION); - $images = glob("./uploads/item_pics/$pic_filename"); - $base_path = './uploads/item_pics/' . pathinfo($pic_filename, PATHINFO_FILENAME); - - if(sizeof($images) > 0) - { - $image_path = $images[0]; - $thumb_path = $base_path . "_thumb.$file_extension"; - - if(sizeof($images) < 2 && !file_exists($thumb_path)) - { - $image = Services::image('gd2'); - $image->withFile($image_path) - ->resize(52, 32, true, 'height') - ->save($thumb_path); - } - - $this->response->setContentType(mime_content_type($thumb_path)); - $this->response->setBody(file_get_contents($thumb_path)); - $this->response->send(); - } - } - - /** - * Gives search suggestions based on what is being searched for - * @noinspection PhpUnused - */ - public function suggest_search(): void - { - $options = [ - 'search_custom' => $this->request->getPost('search_custom'), - 'is_deleted' => $this->request->getPost('is_deleted') !== null - ]; - - $search = $this->request->getPost('term'); - $suggestions = $this->item->get_search_suggestions($search, $options); - - echo json_encode($suggestions); - } - - /** - * AJAX Function used to get search suggestions from the model and return them in JSON format - * @return void - * @noinspection PhpUnused - */ - public function getSuggest(): void - { - $search = $this->request->getGet('term'); - $suggestions = $this->item->get_search_suggestions($search, ['search_custom' => false, 'is_deleted' => false], true); - - echo json_encode($suggestions); - } - - /** - * @return void - * @noinspection PhpUnused - */ - public function getSuggestLowSell(): void - { - $suggestions = $this->item->get_low_sell_suggestions($this->request->getPostGet('name')); - - echo json_encode($suggestions); - } - - /** - * @return void - * @noinspection PhpUnused - */ - public function getSuggestKits(): void - { - $suggestions = $this->item->get_kit_search_suggestions($this->request->getGet('term'), ['search_custom' => false, 'is_deleted' => false], true); - - echo json_encode($suggestions); - } - - /** - * Gives search suggestions based on what is being searched for. Called from the view. - * @noinspection PhpUnused - */ - public function getSuggestCategory(): void - { - $suggestions = $this->item->get_category_suggestions($this->request->getGet('term')); - - echo json_encode($suggestions); - } - - /** - * Gives search suggestions based on what is being searched for. - * @noinspection PhpUnused - */ - public function getSuggestLocation(): void - { - $suggestions = $this->item->get_location_suggestions($this->request->getGet('term')); - - echo json_encode($suggestions); - } - - /** - * @param string $item_ids - * @return void - */ - public function getRow(string $item_ids): void //TODO: An array would be better for parameter. - { - $item_infos = $this->item->get_multiple_info(explode(':', $item_ids), $this->item_lib->get_item_location()); - - $result = []; - - foreach($item_infos->getResult() as $item_info) - { - $result[$item_info->item_id] = get_item_data_row($item_info); - } - - echo json_encode($result); - } - - /** - * @param int $item_id - * @return void - */ - public function getView(int $item_id = NEW_ENTRY): void //TODO: Long function. Perhaps we need to refactor out some methods. - { - $item_id ??= NEW_ENTRY; - - if($item_id === NEW_ENTRY) - { - $data = []; - } - - $data['allow_temp_item'] = $this->session->get('allow_temp_items'); //allow_temp_items is set in the index function of items.php or sales.php - $data['item_tax_info'] = $this->item_taxes->get_info($item_id); - $data['default_tax_1_rate'] = ''; - $data['default_tax_2_rate'] = ''; - $data['item_kit_disabled'] = !$this->employee->has_grant('item_kits', $this->employee->get_logged_in_employee_info()->person_id); - $data['definition_values'] = $this->attribute->get_attributes_by_item($item_id); - $data['definition_names'] = $this->attribute->get_definition_names(); - - foreach($data['definition_values'] as $definition_id => $definition) - { - unset($data['definition_names'][$definition_id]); - } - - $item_info = $this->item->get_info($item_id); - - $data['allow_temp_item'] = ($data['allow_temp_item'] === 1 && $item_id !== NEW_ENTRY && $item_info->item_type != ITEM_TEMP) ? 0 : 1; - - $use_destination_based_tax = (boolean)$this->config['use_destination_based_tax']; - $data['include_hsn'] = $this->config['include_hsn'] === '1'; - $data['category_dropdown'] = $this->config['category_dropdown']; - - if($data['category_dropdown'] === '1') - { - $categories = ['' => lang('Items.none')]; - $category_options = $this->attribute->get_definition_values(CATEGORY_DEFINITION_ID); - $category_options = array_combine($category_options,$category_options); //Overwrite indexes with values for saving in items table instead of attributes - $data['categories'] = array_merge($categories,$category_options); - - $data['selected_category'] = $item_info->category; - } - - if($item_id === NEW_ENTRY) - { - $data['default_tax_1_rate'] = $this->config['default_tax_1_rate']; - $data['default_tax_2_rate'] = $this->config['default_tax_2_rate']; - - $item_info->receiving_quantity = 1; - $item_info->reorder_level = 1; - $item_info->item_type = ITEM; //Standard - $item_info->item_id = $item_id; - $item_info->stock_type = HAS_STOCK; - $item_info->tax_category_id = null; - $item_info->qty_per_pack = 1; - $item_info->pack_name = lang('Items.default_pack_name'); - - if($use_destination_based_tax) - { - $item_info->tax_category_id = $this->config['default_tax_category']; - } - } - - $data['standard_item_locked'] = ( - $data['item_kit_disabled'] - && $item_info->item_type == ITEM_KIT - && !$data['allow_temp_item'] - && !($this->config['derive_sale_quantity'] === '1') - ); - - $data['item_info'] = $item_info; - - $suppliers = ['' => lang('Items.none')]; - - foreach($this->supplier->get_all()->getResultArray() as $row) - { - $suppliers[$row['person_id']] = $row['company_name']; - } - - $data['suppliers'] = $suppliers; - $data['selected_supplier'] = $item_info->supplier_id; - - $data['hsn_code'] = $data['include_hsn'] - ? $item_info->hsn_code - : ''; - - if($use_destination_based_tax) - { - $data['use_destination_based_tax'] = true; - $tax_categories = []; - - foreach($this->tax_category->get_all()->getResultArray() as $row) - { - $tax_categories[$row['tax_category_id']] = $row['tax_category']; - } - - $tax_category = ''; - - if ($item_info->tax_category_id !== null) - { - $tax_category_info=$this->tax_category->get_info($item_info->tax_category_id); - $tax_category= $tax_category_info->tax_category; - } - - $data['tax_categories'] = $tax_categories; - $data['tax_category'] = $tax_category; - $data['tax_category_id'] = $item_info->tax_category_id; - } - else - { - $data['use_destination_based_tax'] = false; - $data['tax_categories'] = []; - $data['tax_category'] = ''; - } - - $data['logo_exists'] = $item_info->pic_filename !== null; - if($item_info->pic_filename != null) - { - $file_extension = pathinfo($item_info->pic_filename, PATHINFO_EXTENSION); - if(empty($file_extension)) - { - $images = glob("./uploads/item_pics/$item_info->pic_filename.*"); - } - else - { - $images = glob("./uploads/item_pics/$item_info->pic_filename"); - } - $data['image_path'] = sizeof($images) > 0 ? base_url($images[0]) : ''; - } - else - { - $data['image_path'] = ''; - } - - $stock_locations = $this->stock_location->get_undeleted_all()->getResultArray(); - - foreach($stock_locations as $location) - { - $quantity = $this->item_quantity->get_item_quantity($item_id, $location['location_id'])->quantity; - $quantity = ($item_id === NEW_ENTRY) ? 0 : $quantity; - $location_array[$location['location_id']] = ['location_name' => $location['location_name'], 'quantity' => $quantity]; - $data['stock_locations'] = $location_array; - } - - $data['selected_low_sell_item_id'] = $item_info->low_sell_item_id; - - if($item_id !== NEW_ENTRY && $item_info->item_id !== $item_info->low_sell_item_id) - { - $low_sell_item_info = $this->item->get_info($item_info->low_sell_item_id); - $data['selected_low_sell_item'] = implode(NAME_SEPARATOR, [$low_sell_item_info->name, $low_sell_item_info->pack_name]); - } - else - { - $data['selected_low_sell_item'] = ''; - } - - echo view('items/form', $data); - } - - /** - * AJAX called function which returns the update inventory form view for an item - * - * @param int $item_id - * @return void - * @noinspection PhpUnused - */ - public function getInventory(int $item_id = NEW_ENTRY): void - { - $item_info = $this->item->get_info($item_id); //TODO: Duplicate code - - foreach(get_object_vars($item_info) as $property => $value) - { - $item_info->$property = $value; - } - - $data['item_info'] = $item_info; - $data['stock_locations'] = []; - $stock_locations = $this->stock_location->get_undeleted_all()->getResultArray(); - - foreach($stock_locations as $location) - { - $quantity = $this->item_quantity->get_item_quantity($item_id, $location['location_id'])->quantity; - - $data['stock_locations'][$location['location_id']] = $location['location_name']; - $data['item_quantities'][$location['location_id']] = $quantity; - } - - echo view('items/form_inventory', $data); - } - - /** - * @param int $item_id - * @return void - * @noinspection PhpUnused - */ - public function getCountDetails(int $item_id = NEW_ENTRY): void - { - $item_info = $this->item->get_info($item_id); //TODO: Duplicate code - - foreach(get_object_vars($item_info) as $property => $value) - { - $item_info->$property = $value; - } - - $data['item_info'] = $item_info; - $data['stock_locations'] = []; - $stock_locations = $this->stock_location->get_undeleted_all()->getResultArray(); - - foreach($stock_locations as $location) - { - $quantity = $this->item_quantity->get_item_quantity($item_id, $location['location_id'])->quantity; - - $data['stock_locations'][$location['location_id']] = $location['location_name']; - $data['item_quantities'][$location['location_id']] = $quantity; - } - - echo view('items/form_count_details', $data); - } - - /** - * AJAX called function that generates barcodes for selected items. - * - * @param string $item_ids Colon separated list of item_id values to generate barcodes for. - * @return void - * @noinspection PhpUnused - */ - public function getGenerateBarcodes(string $item_ids): void //TODO: Passing these through as a string instead of an array limits the contents of the item_ids. Perhaps a better approach would to serialize as JSON in an array and pass through post variables? - { - $item_ids = explode(':', $item_ids); - $result = $this->item->get_multiple_info($item_ids, $this->item_lib->get_item_location())->getResultArray(); - $data['barcode_config'] = $this->barcode_lib->get_barcode_config(); - - foreach($result as &$item) - { - if(isset($item['item_number']) && empty($item['item_number']) && $this->config['barcode_generate_if_empty']) - { - if(isset($item['item_id'])) - { - $save_item = ['item_number' => $item['item_number']]; - $this->item->save_value($save_item, $item['item_id']); - } - } - } - $data['items'] = $result; - - echo view('barcodes/barcode_sheet', $data); - } - - /** - * Gathers attribute value information for an item and returns it in a view. - * - * @param int $item_id - * @return void - */ - public function getAttributes(int $item_id = NEW_ENTRY): void - { - $data['item_id'] = $item_id; - $definition_ids = json_decode($this->request->getGet('definition_ids') ?? '', true); - $data['definition_values'] = $this->attribute->get_attributes_by_item($item_id) + $this->attribute->get_values_by_definitions($definition_ids); - $data['definition_names'] = $this->attribute->get_definition_names(); - - foreach($data['definition_values'] as $definition_id => $definition_value) - { - $attribute_value = $this->attribute->get_attribute_value($item_id, $definition_id); - $attribute_id = (empty($attribute_value) || empty($attribute_value->attribute_id)) ? null : $attribute_value->attribute_id; - $values = &$data['definition_values'][$definition_id]; - $values['attribute_id'] = $attribute_id; - $values['attribute_value'] = $attribute_value; - $values['selected_value'] = ''; - - if ($definition_value['definition_type'] === DROPDOWN) - { - $values['values'] = $this->attribute->get_definition_values($definition_id); - $link_value = $this->attribute->get_link_value($item_id, $definition_id); - $values['selected_value'] = (empty($link_value)) ? '' : $link_value->attribute_id; - } - - if (!empty($definition_ids[$definition_id])) - { - $values['selected_value'] = $definition_ids[$definition_id]; - } - - unset($data['definition_names'][$definition_id]); - } - - echo view('attributes/item', $data); - } - - /** - * @param int $item_id - * @return void - * @noinspection PhpUnused - */ - public function postAttributes(int $item_id = NEW_ENTRY): void - { - $data['item_id'] = $item_id; - $definition_ids = json_decode($this->request->getPost('definition_ids'), true); - $data['definition_values'] = $this->attribute->get_attributes_by_item($item_id) + $this->attribute->get_values_by_definitions($definition_ids); - $data['definition_names'] = $this->attribute->get_definition_names(); - - foreach($data['definition_values'] as $definition_id => $definition_value) - { - $attribute_value = $this->attribute->get_attribute_value($item_id, $definition_id); - $attribute_id = (empty($attribute_value) || empty($attribute_value->attribute_id)) ? null : $attribute_value->attribute_id; - $values = &$data['definition_values'][$definition_id]; - $values['attribute_id'] = $attribute_id; - $values['attribute_value'] = $attribute_value; - $values['selected_value'] = ''; - - if ($definition_value['definition_type'] === DROPDOWN) - { - $values['values'] = $this->attribute->get_definition_values($definition_id); - $link_value = $this->attribute->get_link_value($item_id, $definition_id); - $values['selected_value'] = (empty($link_value)) ? '' : $link_value->attribute_id; - } - - if (!empty($definition_ids[$definition_id])) - { - $values['selected_value'] = $definition_ids[$definition_id]; - } - - unset($data['definition_names'][$definition_id]); - } - - echo view('attributes/item', $data); - } - - /** - * Edit multiple items. Used in app/Views/items/manage.php - * - * @return void - * @noinspection PhpUnused - */ - public function getBulkEdit(): void - { - $suppliers = ['' => lang('Items.none')]; - - foreach($this->supplier->get_all()->getResultArray() as $row) - { - $suppliers[$row['person_id']] = $row['company_name']; - } - - $data['suppliers'] = $suppliers; - $data['allow_alt_description_choices'] = [ - '' => lang('Items.do_nothing'), - 1 => lang('Items.change_all_to_allow_alt_desc'), - 0 => lang('Items.change_all_to_not_allow_allow_desc') - ]; - - $data['serialization_choices'] = [ - '' => lang('Items.do_nothing'), - 1 => lang('Items.change_all_to_serialized'), - 0 => lang('Items.change_all_to_unserialized') - ]; - - echo view('items/form_bulk', $data); - } - - /** - * @param int $item_id - * @throws ReflectionException - */ - public function postSave(int $item_id = NEW_ENTRY): void - { - $upload_data = $this->upload_image(); - $upload_success = empty($upload_data['error']); - - $raw_receiving_quantity = $this->request->getPost('receiving_quantity'); - - $receiving_quantity = parse_quantity($raw_receiving_quantity); - $item_type = $this->request->getPost('item_type') === null ? ITEM : intval($this->request->getPost('item_type')); - - if($receiving_quantity === 0.0 && $item_type !== ITEM_TEMP) - { - $receiving_quantity = 1; - } - - $default_pack_name = lang('Items.default_pack_name'); - - $cost_price = parse_decimals($this->request->getPost('cost_price')); - $unit_price = parse_decimals($this->request->getPost('unit_price')); - $reorder_level = parse_quantity($this->request->getPost('reorder_level')); - $qty_per_pack = parse_quantity($this->request->getPost('qty_per_pack') ?? ''); - - //Save item data - $item_data = [ - 'name' => $this->request->getPost('name'), - 'description' => $this->request->getPost('description'), - 'category' => $this->request->getPost('category'), - 'item_type' => $item_type, - 'stock_type' => $this->request->getPost('stock_type') === null ? HAS_STOCK : intval($this->request->getPost('stock_type')), - 'supplier_id' => empty($this->request->getPost('supplier_id')) ? null : intval($this->request->getPost('supplier_id')), - 'item_number' => empty($this->request->getPost('item_number')) ? null : $this->request->getPost('item_number'), - 'cost_price' => $cost_price, - 'unit_price' => $unit_price, - 'reorder_level' => $reorder_level, - 'receiving_quantity' => $receiving_quantity, - 'allow_alt_description' => $this->request->getPost('allow_alt_description') != null, - 'is_serialized' => $this->request->getPost('is_serialized') != null, - 'qty_per_pack' => $this->request->getPost('qty_per_pack') == null ? 1 : parse_quantity($qty_per_pack), - 'pack_name' => $this->request->getPost('pack_name') == null ? $default_pack_name : $this->request->getPost('pack_name'), - 'low_sell_item_id' => $this->request->getPost('low_sell_item_id') === null ? $item_id : intval($this->request->getPost('low_sell_item_id')), - 'deleted' => $this->request->getPost('is_deleted') != null, - 'hsn_code' => $this->request->getPost('hsn_code') === null ? '' : $this->request->getPost('hsn_code') - ]; - - if($item_data['item_type'] == ITEM_TEMP) - { - $item_data['stock_type'] = HAS_NO_STOCK; - $item_data['receiving_quantity'] = 0; - $item_data['reorder_level'] = 0; - } - - $tax_category_id = intval($this->request->getPost('tax_category_id')); - - if(!isset($tax_category_id)) - { - $item_data['tax_category_id'] = ''; - } - else - { - $item_data['tax_category_id'] = empty($this->request->getPost('tax_category_id')) ? null : intval($this->request->getPost('tax_category_id')); - } - - if (!empty($upload_data['orig_name']) && $upload_data['raw_name']) { - $item_data['pic_filename'] = $upload_data['raw_name'] . '.' . $upload_data['file_ext']; - } - - $employee_id = $this->employee->get_logged_in_employee_info()->person_id; - - if($this->item->save_value($item_data, $item_id)) - { - $success = true; - $new_item = false; - - if($item_id === NEW_ENTRY) - { - $item_id = $item_data['item_id']; - $new_item = true; - } - - $use_destination_based_tax = (bool)$this->config['use_destination_based_tax']; - - if(!$use_destination_based_tax) - { - $items_taxes_data = []; - $tax_names = $this->request->getPost('tax_names'); - $tax_percents = $this->request->getPost('tax_percents'); - - $tax_name_index = 0; - - foreach($tax_percents as $tax_percent) - { - $tax_percentage = parse_tax($tax_percent); - - if(is_numeric($tax_percentage)) - { - $items_taxes_data[] = ['name' => $tax_names[$tax_name_index], 'percent' => $tax_percentage]; - } - - $tax_name_index++; - } - $success &= $this->item_taxes->save_value($items_taxes_data, $item_id); - } - - //Save item quantity - $stock_locations = $this->stock_location->get_undeleted_all()->getResultArray(); - foreach($stock_locations as $location) - { - $updated_quantity = parse_quantity($this->request->getPost('quantity_' . $location['location_id'])); - - if($item_data['item_type'] == ITEM_TEMP) - { - $updated_quantity = 0; - } - - $location_detail = [ - 'item_id' => $item_id, - 'location_id' => $location['location_id'], - 'quantity' => $updated_quantity - ]; - - $item_quantity = $this->item_quantity->get_item_quantity($item_id, $location['location_id']); - - if($item_quantity->quantity != $updated_quantity || $new_item) - { - $success &= $this->item_quantity->save_value($location_detail, $item_id, $location['location_id']); - - $inv_data = [ - 'trans_date' => date('Y-m-d H:i:s'), - 'trans_items' => $item_id, - 'trans_user' => $employee_id, - 'trans_location' => $location['location_id'], - 'trans_comment' => lang('Items.manually_editing_of_quantity'), - 'trans_inventory' => $updated_quantity - $item_quantity->quantity - ]; - - $success &= $this->inventory->insert($inv_data, false); - } - } - $this->saveItemAttributes($item_id); - - if($success && $upload_success) - { - $message = lang('Items.successful_' . ($new_item ? 'adding' : 'updating')) . ' ' . $item_data['name']; - - echo json_encode (['success' => true, 'message' => $message, 'id' => $item_id]); - } - else - { - $message = $upload_success ? lang('Items.error_adding_updating') . ' ' . $item_data['name'] : strip_tags($upload_data['error']); - - echo json_encode (['success' => false, 'message' => $message, 'id' => $item_id]); - } - } - else - { - $message = lang('Items.error_adding_updating') . ' ' . $item_data['name']; - - echo json_encode (['success' => false, 'message' => $message, 'id' => NEW_ENTRY]); - } - } - - /** - * Let files be uploaded with their original name - * @return array - */ - private function upload_image(): array - { - $file = $this->request->getFile('items_image'); - if(!$file) - { - return []; - } - - helper(['form']); - $validation_rule = [ - 'items_image' => [ - 'label' => 'Item Image', - 'rules' => [ - 'uploaded[items_image]', - 'is_image[items_image]', - 'max_size[items_image,' . $this->config['image_max_size'] . ']', - 'mime_in[items_image,image/png,image/jpg,image/jpeg,image/gif]', - 'ext_in[items_image,' . $this->config['image_allowed_types'] . ']', - 'max_dims[items_image,' . $this->config['image_max_width'] . ',' . $this->config['image_max_height'] . ']' - ] - ] - ]; - - if (!$this->validate($validation_rule)) - { - return (['error' => $this->validator->getError('items_image')]); - } - - $filename = $file->getClientName(); - $info = pathinfo($filename); - - $file_info = [ - 'orig_name' => $filename, - 'raw_name' => $info['filename'], - 'file_ext' => $file->guessExtension() - ]; - - $file->move(FCPATH . 'uploads/item_pics/', $file_info['raw_name'] . '.' . $file_info['file_ext'], true); - return ($file_info); - } - - - /** - * Ajax call to check to see if the item number, a.k.a. barcode, is already used by another item - * If it exists then that is an error condition so return true for "error found" - * @return void - * @noinspection PhpUnused - */ - public function postCheckItemNumber(): void - { - $exists = $this->item->item_number_exists($this->request->getPost('item_number'), $this->request->getPost('item_id')); - - echo !$exists ? 'true' : 'false'; - } - - /** - * Checks to see if an item kit with the same name as the item already exists. - * - * @return void - */ - public function check_kit_exists(): void //TODO: This function appears to be never called in the code. Need to confirm. - { - if($this->request->getPost('item_number') === NEW_ENTRY) - { - $exists = $this->item_kit->item_kit_exists_for_name($this->request->getPost('name')); //TODO: item_kit_exists_for_name doesn't exist in Item_kit. I looked at the blame and it appears to have never existed. - } - else - { - $exists = false; - } - echo !$exists ? 'true' : 'false'; - } - - /** - * @param $item_id - * @return void - * @noinspection PhpUnused - */ - public function getRemoveLogo($item_id): void - { - $item_data = ['pic_filename' => null]; - $result = $this->item->save_value($item_data, $item_id); - - echo json_encode (['success' => $result]); - } - - /** - * @throws ReflectionException - * @noinspection PhpUnused - */ - public function postSaveInventory($item_id = NEW_ENTRY): void - { - $employee_id = $this->employee->get_logged_in_employee_info()->person_id; - $cur_item_info = $this->item->get_info($item_id); - $location_id = $this->request->getPost('stock_location'); - $new_quantity = $this->request->getPost('newquantity'); - $inv_data = [ - 'trans_date' => date('Y-m-d H:i:s'), - 'trans_items' => $item_id, - 'trans_user' => $employee_id, - 'trans_location' => $location_id, - 'trans_comment' => $this->request->getPost('trans_comment'), - 'trans_inventory' => parse_quantity($new_quantity) - ]; - - $this->inventory->insert($inv_data, false); - - //Update stock quantity - $item_quantity = $this->item_quantity->get_item_quantity($item_id, $location_id); - $item_quantity_data = [ - 'item_id' => $item_id, - 'location_id' => $location_id, - 'quantity' => $item_quantity->quantity + parse_quantity($this->request->getPost('newquantity')) - ]; - - if($this->item_quantity->save_value($item_quantity_data, $item_id, $location_id)) - { - $message = lang('Items.successful_updating') . " $cur_item_info->name"; - - echo json_encode (['success' => true, 'message' => $message, 'id' => $item_id]); - } - else - { - $message = lang('Items.error_adding_updating') . " $cur_item_info->name"; - - echo json_encode (['success' => false, 'message' => $message, 'id' => NEW_ENTRY]); - } - } - - /** - * @return void - * @noinspection PhpUnused - */ - public function postBulkUpdate(): void - { - $items_to_update = $this->request->getPost('item_ids'); - $item_data = []; - - foreach($_POST as $key => $value) - { - //This field is nullable, so treat it differently - if($key === 'supplier_id' && $value !== '') - { - $item_data[$key] = $value; - } - elseif($value !== '' && !(in_array($key, ['item_ids', 'tax_names', 'tax_percents']))) - { - $item_data[$key] = $value; - } - } - - //Item data could be empty if tax information is being updated - if(empty($item_data) || $this->item->update_multiple($item_data, $items_to_update)) - { - $items_taxes_data = []; - $tax_names = $this->request->getPost('tax_names'); - $tax_percents = $this->request->getPost('tax_percents'); - $tax_updated = false; - - foreach($tax_percents as $tax_percent) - { - if(!empty($tax_names[$tax_percent]) && is_numeric($tax_percents[$tax_percent])) - { - $tax_updated = true; - $items_taxes_data[] = ['name' => $tax_names[$tax_percent], 'percent' => $tax_percents[$tax_percent]]; - } - } - - if($tax_updated) - { - $this->item_taxes->save_multiple($items_taxes_data, $items_to_update); - } - - echo json_encode (['success' => true, 'message' => lang('Items.successful_bulk_edit'), 'id' => $items_to_update]); - } - else - { - echo json_encode (['success' => false, 'message' => lang('Items.error_updating_multiple')]); - } - } - - /** - */ - public function postDelete(): void - { - $items_to_delete = $this->request->getPost('ids'); - - if($this->item->delete_list($items_to_delete)) - { - $message = lang('Items.successful_deleted') . ' ' . count($items_to_delete) . ' ' . lang('Items.one_or_multiple'); - echo json_encode (['success' => true, 'message' => $message]); - } - else - { - echo json_encode (['success' => false, 'message' => lang('Items.cannot_be_deleted')]); - } - } - - /** - * Generates a template CSV file for item import/update containing headers for current stock locations and attributes. Used in app/Views/items/form_csv_import.php - * - * @return DownloadResponse - * @noinspection PhpUnused - */ - public function getGenerateCsvFile(): DownloadResponse - { - helper('importfile_helper'); - $name = 'import_items.csv'; - $allowed_locations = $this->stock_location->get_allowed_locations(); - $allowed_attributes = $this->attribute->get_definition_names(); - $data = generate_import_items_csv($allowed_locations, $allowed_attributes); - - return $this->response->download($name, $data); - } - - /** - * @return void - * @noinspection PhpUnused - */ - public function getCsvImport(): void - { - echo view('items/form_csv_import'); - } - - /** - * Imports items from CSV formatted file. - * @throws ReflectionException - * @noinspection PhpUnused - */ - public function postImportCsvFile(): void - { - helper('importfile_helper'); - if($_FILES['file_path']['error'] !== UPLOAD_ERR_OK) - { - echo json_encode (['success' => false, 'message' => lang('Items.csv_import_failed')]); - } - else - { - if(file_exists($_FILES['file_path']['tmp_name'])) - { - set_time_limit(240); - - $failCodes = []; - $csv_rows = get_csv_file($_FILES['file_path']['tmp_name']); - $employee_id = $this->employee->get_logged_in_employee_info()->person_id; - $allowed_stock_locations = $this->stock_location->get_allowed_locations(); - $attribute_definition_names = $this->attribute->get_definition_names(); - - unset($attribute_definition_names[NEW_ENTRY]); //Removes the common_none_selected_text from the array - - $attribute_data = []; - - foreach($attribute_definition_names as $definition_name) - { - $attribute_data[$definition_name] = $this->attribute->get_definition_by_name($definition_name)[0]; - - if($attribute_data[$definition_name]['definition_type'] === DROPDOWN) - { - $attribute_data[$definition_name]['dropdown_values'] = $this->attribute->get_definition_values($attribute_data[$definition_name]['definition_id']); - } - } - $db = db_connect(); - $db->transBegin(); //TODO: This section needs to be reworked so that the data array is being created then passed to the Item model because $db doesn't exist in the controller without being instantiated, but database operations should be restricted to the model - - foreach($csv_rows as $key => $row) - { - $is_failed_row = false; - $item_id = (int)$row['Id']; - $is_update = ($item_id > 0); - $item_data = [ - 'item_id' => $item_id, - 'name' => $row['Item Name'], - 'description' => $row['Description'], - 'category' => $row['Category'], - 'cost_price' => $row['Cost Price'], - 'unit_price' => $row['Unit Price'], - 'reorder_level' => $row['Reorder Level'], - 'deleted' => false, - 'hsn_code' => $row['HSN'], - 'pic_filename' => $row['Image'] - ]; - - if(!empty($row['supplier ID'])) - { - $item_data['supplier_id'] = $this->supplier->exists($row['Supplier ID']) ? $row['Supplier ID'] : null; - } - - if($is_update) - { - $item_data['allow_alt_description'] = empty($row['Allow Alt Description']) ? null : $row['Allow Alt Description']; - $item_data['is_serialized'] = empty($row['Item has Serial Number']) ? null : $row['Item has Serial Number']; - } - else - { - $item_data['allow_alt_description'] = empty($row['Allow Alt Description'])? '0' : '1'; - $item_data['is_serialized'] = empty($row['Item has Serial Number'])? '0' : '1'; - } - - if(!empty($row['Barcode']) && !$is_update) - { - $item_data['item_number'] = $row['Barcode']; - $is_failed_row = $this->item->item_number_exists($item_data['item_number']); - } - - if(!$is_failed_row) - { - $is_failed_row = $this->data_error_check($row, $item_data, $allowed_stock_locations, $attribute_definition_names, $attribute_data); - } - - //Remove false, null, '' and empty strings but keep 0 - $item_data = array_filter($item_data, function($value) { - return $value !== null && strlen($value); - }); - - if(!$is_failed_row && $this->item->save_value($item_data, $item_id)) - { - $this->save_tax_data($row, $item_data); - $this->save_inventory_quantities($row, $item_data, $allowed_stock_locations, $employee_id); - $is_failed_row = $this->save_attribute_data($row, $item_data, $attribute_data); //TODO: $is_failed_row never gets used after this. - - if($is_update) - { - $item_data = array_merge($item_data, get_object_vars($this->item->get_info_by_id_or_number($item_id))); - } - } - else - { - $failed_row = $key+2; - $failCodes[] = $failed_row; - log_message('error',"CSV Item import failed on line $failed_row. This item was not imported."); - } - - unset($csv_rows[$key]); - } - - $csv_rows = null; - - if(count($failCodes) > 0) - { - $message = lang('Items.csv_import_partially_failed', [count($failCodes), implode(', ', $failCodes)]); - $db->transRollback(); - echo json_encode (['success' => false, 'message' => $message]); - } - else - { - $db->transCommit(); - - echo json_encode (['success' => true, 'message' => lang('Items.csv_import_success')]); - } - } - else - { - echo json_encode (['success' => false, 'message' => lang('Items.csv_import_nodata_wrongformat')]); - } - } - } - - /** - * Checks the entire line of data in an import file for errors - * - * @param array $row - * @param array $item_data - * @param array $allowed_locations - * @param array $definition_names - * @param array $attribute_data - * @return bool Returns false if all data checks out and true when there is an error in the data - */ - private function data_error_check(array $row, array $item_data, array $allowed_locations, array $definition_names, array $attribute_data): bool //TODO: Long function and large number of parameters in the declaration... perhaps refactoring is needed. - { - $item_id = $row['Id']; - $is_update = (bool)$item_id; - - //Check for empty required fields - $check_for_empty = [ - 'name' => $item_data['name'], - 'category' => $item_data['category'], - 'unit_price' => $item_data['unit_price'] - ]; - - foreach($check_for_empty as $key => $val) - { - if (empty($val) && !$is_update) - { - log_message('error',"Empty required value in $key."); - return true; - } - } - - if(!$is_update) - { - $item_data['cost_price'] = empty($item_data['cost_price']) ? 0 : $item_data['cost_price']; //Allow for zero wholesale price - } - else - { - if(!$this->item->exists($item_id)) - { - log_message('error',"non-existent item_id: '$item_id' when either existing item_id or no item_id is required."); - return true; - } - } - - //Build array of fields to check for numerics - $check_for_numeric_values = [ - 'cost_price' => $item_data['cost_price'], - 'unit_price' => $item_data['unit_price'], - 'reorder_level' => $item_data['reorder_level'], - 'supplier_id' => $row['Supplier ID'], - 'Tax 1 Percent' => $row['Tax 1 Percent'], - 'Tax 2 Percent' => $row['Tax 2 Percent'] - ]; - - foreach($allowed_locations as $location_name) - { - $check_for_numeric_values[] = $row["location_$location_name"]; - } - - //Check for non-numeric values which require numeric - foreach($check_for_numeric_values as $key => $value) - { - if(!is_numeric($value) && !empty($value)) - { - log_message('error',"non-numeric: '$value' for '$key' when numeric is required"); - return true; - } - } - - //Check Attribute Data - foreach($definition_names as $definition_name) - { - if(!empty($row["attribute_$definition_name"])) - { - $definition_type = $attribute_data[$definition_name]['definition_type']; - $attribute_value = $row["attribute_$definition_name"]; - - switch($definition_type) - { - case DROPDOWN: - $dropdown_values = $attribute_data[$definition_name]['dropdown_values']; - $dropdown_values[] = ''; - - if(!empty($attribute_value) && !in_array($attribute_value, $dropdown_values)) - { - log_message('error',"Value: '$attribute_value' is not an acceptable DROPDOWN value"); - return true; - } - break; - case DECIMAL: - if(!is_numeric($attribute_value) && !empty($attribute_value)) - { - log_message('error',"'$attribute_value' is not an acceptable DECIMAL value"); - return true; - } - break; - case DATE: - if(!valid_date($attribute_value) && !empty($attribute_value)) - { - log_message('error',"'$attribute_value' is not an acceptable DATE value. The value must match the set locale."); - return true; - } - break; - } - } - } - - return false; - } - - /** - * Saves attribute data found in the CSV import. - * - * @param array $row - * @param array $item_data - * @param array $definitions - * @return bool - */ - private function save_attribute_data(array $row, array $item_data, array $definitions): bool - { - foreach($definitions as $definition) - { - $attribute_name = $definition['definition_name']; - $attribute_value = $row["attribute_$attribute_name"]; - - //Create attribute value - if(!empty($attribute_value) || $attribute_value === '0') - { - if($definition['definition_type'] === CHECKBOX) - { - $checkbox_is_unchecked = (strcasecmp($attribute_value,'false') === 0 || $attribute_value === '0'); - $attribute_value = $checkbox_is_unchecked ? '0' : '1'; - - $attribute_id = $this->store_attribute_value($attribute_value, $definition, $item_data['item_id']); - } - elseif(!empty($attribute_value)) - { - $attribute_id = $this->store_attribute_value($attribute_value, $definition, $item_data['item_id']); - } - else - { - return true; - } - - if(!$attribute_id) - { - return true; - } - } - } - return false; - } - - /** - * Saves the attribute_value and attribute_link if necessary - */ - private function store_attribute_value(string $value, array $attribute_data, int $item_id) - { - $attribute_id = $this->attribute->attributeValueExists($value, $attribute_data['definition_type']); - - $this->attribute->deleteAttributeLinks($item_id, $attribute_data['definition_id']); - - if(!$attribute_id) - { - $attribute_id = $this->attribute->saveAttributeValue($value, $attribute_data['definition_id'], $item_id, false, $attribute_data['definition_type']); - } - else if(!$this->attribute->saveAttributeLink($item_id, $attribute_data['definition_id'], $attribute_id)) - { - return false; - } - - return $attribute_id; - } - - /** - * Saves inventory quantities for the row in the appropriate stock locations. - * - * @param array $row - * @param array $item_data - * @param array $allowed_locations - * @param int $employee_id - * @throws ReflectionException - */ - private function save_inventory_quantities(array $row, array $item_data, array $allowed_locations, int $employee_id): void - { - //Quantities & Inventory Section - $comment = lang('Items.inventory_CSV_import_quantity'); - $is_update = (bool)$row['Id']; - - foreach($allowed_locations as $location_id => $location_name) - { - $item_quantity_data = ['item_id' => $item_data['item_id'], 'location_id' => $location_id]; - - $csv_data = [ - 'trans_items' => $item_data['item_id'], - 'trans_user' => $employee_id, - 'trans_comment' => $comment, - 'trans_location' => $location_id - ]; - - if(!empty($row["location_$location_name"]) || $row["location_$location_name"] === '0') - { - $item_quantity_data['quantity'] = $row["location_$location_name"]; - $this->item_quantity->save_value($item_quantity_data, $item_data['item_id'], $location_id); - - $csv_data['trans_inventory'] = $row["location_$location_name"]; - $this->inventory->insert($csv_data, false); - } - elseif($is_update) - { - return; - } - else - { - $item_quantity_data['quantity'] = 0; - $this->item_quantity->save_value($item_quantity_data, $item_data['item_id'], $location_id); - - $csv_data['trans_inventory'] = 0; - $this->inventory->insert($csv_data, false); - } - } - } - - /** - * Saves the tax data found in the line of the CSV items import file - * - * @param array $row - * @param array $item_data - */ - private function save_tax_data(array $row, array $item_data): void - { - $items_taxes_data = []; - - if(is_numeric($row['Tax 1 Percent']) && $row['Tax 1 Name'] !== '') - { - $items_taxes_data[] = ['name' => $row['Tax 1 Name'], 'percent' => $row['Tax 1 Percent']]; - } - - if(is_numeric($row['Tax 2 Percent']) && $row['Tax 2 Name'] !== '') - { - $items_taxes_data[] = ['name' => $row['Tax 2 Name'], 'percent' => $row['Tax 2 Percent']]; - } - - if(isset($items_taxes_data)) - { - $this->item_taxes->save_value($items_taxes_data, $item_data['item_id']); - } - } - - /** - * Guess whether file extension is not in the table field, if it isn't, then it's an old-format (formerly pic_id) field, so we guess the right filename and update the table - * - * @param $item object item to update - */ - private function update_pic_filename(object $item): void - { - $filename = pathinfo($item->pic_filename, PATHINFO_FILENAME); - - // if the field is empty there's nothing to check - if(!empty($filename)) - { - $ext = pathinfo($item->pic_filename, PATHINFO_EXTENSION); - if(empty($ext)) - { - $images = glob(FCPATH . "uploads/item_pics/$item->pic_filename.*"); - if(sizeof($images) > 0) - { - $new_pic_filename = pathinfo($images[0], PATHINFO_BASENAME); - $item_data = ['pic_filename' => $new_pic_filename]; - $this->item->save_value($item_data, $item->item_id); - } - } - } - } - - /** - * Saves item attributes for a given item. - * - * @param int $itemId The item for which attributes need to be saved to. - * @return void - */ - public function saveItemAttributes(int $itemId): void - { - $attributeLinks = $this->request->getPost('attribute_links') ?? []; - $attributeIds = $this->request->getPost('attribute_ids'); - - $this->attribute->deleteAttributeLinks($itemId); - - foreach($attributeLinks as $definitionId => $attributeValue) - { - $definitionType = $this->attribute->getAttributeInfo($definitionId)->definition_type; - - switch($definitionType) - { - case DROPDOWN: - $attributeId = $attributeValue; - break; - case DECIMAL: - $attributeValue = parse_decimals($attributeValue); - //Fall through to save the attribute value - default: - $attributeId = $this->attribute->saveAttributeValue($attributeValue, $definitionId, $itemId, $attributeIds[$definitionId], $definitionType); - break; - } - - $this->attribute->saveAttributeLink($itemId, $definitionId, $attributeId); - } - } + private BaseHandler $image; + private Barcode_lib $barcode_lib; + private Item_lib $item_lib; + private Attribute $attribute; + private Inventory $inventory; + private Item $item; + private Item_kit $item_kit; + private Item_quantity $item_quantity; + private Item_taxes $item_taxes; + private Stock_location $stock_location; + private Supplier $supplier; + private Tax_category $tax_category; + private array $config; + + + public function __construct() + { + parent::__construct('items'); + + $this->session = Services::session(); + + $this->image = Services::image(); + + $this->barcode_lib = new Barcode_lib(); + $this->item_lib = new Item_lib(); + + $this->attribute = model(Attribute::class); + $this->inventory = model(Inventory::class); + $this->item = model(Item::class); + $this->item_kit = model(Item_kit::class); + $this->item_quantity = model(Item_quantity::class); + $this->item_taxes = model(Item_taxes::class); + $this->stock_location = model(Stock_location::class); + $this->supplier = model(Supplier::class); + $this->tax_category = model(Tax_category::class); + $this->config = config(OSPOS::class)->settings; + } + + /** + * @return void + */ + public function getIndex(): void + { + $this->session->set('allow_temp_items', 0); + + $data['table_headers'] = get_items_manage_table_headers(); + $data['stock_location'] = $this->item_lib->get_item_location(); + $data['stock_locations'] = $this->stock_location->get_allowed_locations(); + + //Filters that will be loaded in the multiselect dropdown + $data['filters'] = [ + 'empty_upc' => lang('Items.empty_upc_items'), + 'low_inventory' => lang('Items.low_inventory_items'), + 'is_serialized' => lang('Items.serialized_items'), + 'no_description' => lang('Items.no_description_items'), + 'search_custom' => lang('Items.search_attributes'), + 'is_deleted' => lang('Items.is_deleted'), + 'temporary' => lang('Items.temp') + ]; + + echo view('items/manage', $data); + } + + /** + * Returns Items table data rows. This will be called with AJAX. + * @noinspection PhpUnused + **/ + public function getSearch(): void + { + $search = $this->request->getGet('search'); + $limit = $this->request->getGet('limit', FILTER_SANITIZE_NUMBER_INT); + $offset = $this->request->getGet('offset', FILTER_SANITIZE_NUMBER_INT); + $sort = $this->sanitizeSortColumn(item_headers(), $this->request->getGet('sort', FILTER_SANITIZE_FULL_SPECIAL_CHARS), 'item_id'); + $order = $this->request->getGet('order', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + + $this->item_lib->set_item_location($this->request->getGet('stock_location')); + + $definition_names = $this->attribute->get_definitions_by_flags(Attribute::SHOW_IN_ITEMS); + + $filters = [ + 'start_date' => $this->request->getGet('start_date'), + 'end_date' => $this->request->getGet('end_date'), + 'stock_location_id' => $this->item_lib->get_item_location(), + 'empty_upc' => false, + 'low_inventory' => false, + 'is_serialized' => false, + 'no_description' => false, + 'search_custom' => false, + 'is_deleted' => false, + 'temporary' => false, + 'definition_ids' => array_keys($definition_names) + ]; + + //Check if any filter is set in the multiselect dropdown + $request_filters = array_fill_keys($this->request->getGet('filters', FILTER_SANITIZE_FULL_SPECIAL_CHARS) ?? [], true); + $filters = array_merge($filters, $request_filters); + $items = $this->item->search($search, $filters, $limit, $offset, $sort, $order); + $total_rows = $this->item->get_found_rows($search, $filters); + $data_rows = []; + + foreach($items->getResult() as $item) + { + $data_rows[] = get_item_data_row($item); + + if($item->pic_filename !== null) + { + $this->update_pic_filename($item); + } + } + + echo json_encode(['total' => $total_rows, 'rows' => $data_rows]); + } + + /** + * AJAX function. Processes thumbnail of image. Called via tabular_helper + * @param string $pic_filename + * @return void + * @noinspection PhpUnused + */ + public function getPicThumb(string $pic_filename): void + { + helper('file'); + + $file_extension = pathinfo($pic_filename, PATHINFO_EXTENSION); + $images = glob("./uploads/item_pics/$pic_filename"); + $base_path = './uploads/item_pics/' . pathinfo($pic_filename, PATHINFO_FILENAME); + + if(sizeof($images) > 0) + { + $image_path = $images[0]; + $thumb_path = $base_path . "_thumb.$file_extension"; + + if(sizeof($images) < 2 && !file_exists($thumb_path)) + { + $image = Services::image('gd2'); + $image->withFile($image_path) + ->resize(52, 32, true, 'height') + ->save($thumb_path); + } + + $this->response->setContentType(mime_content_type($thumb_path)); + $this->response->setBody(file_get_contents($thumb_path)); + $this->response->send(); + } + } + + /** + * Gives search suggestions based on what is being searched for + * @noinspection PhpUnused + */ + public function suggest_search(): void + { + $options = [ + 'search_custom' => $this->request->getPost('search_custom'), + 'is_deleted' => $this->request->getPost('is_deleted') !== null + ]; + + $search = $this->request->getPost('term'); + $suggestions = $this->item->get_search_suggestions($search, $options); + + echo json_encode($suggestions); + } + + /** + * AJAX Function used to get search suggestions from the model and return them in JSON format + * @return void + * @noinspection PhpUnused + */ + public function getSuggest(): void + { + $search = $this->request->getGet('term'); + $suggestions = $this->item->get_search_suggestions($search, ['search_custom' => false, 'is_deleted' => false], true); + + echo json_encode($suggestions); + } + + /** + * @return void + * @noinspection PhpUnused + */ + public function getSuggestLowSell(): void + { + $suggestions = $this->item->get_low_sell_suggestions($this->request->getPostGet('name')); + + echo json_encode($suggestions); + } + + /** + * @return void + * @noinspection PhpUnused + */ + public function getSuggestKits(): void + { + $suggestions = $this->item->get_kit_search_suggestions($this->request->getGet('term'), ['search_custom' => false, 'is_deleted' => false], true); + + echo json_encode($suggestions); + } + + /** + * Gives search suggestions based on what is being searched for. Called from the view. + * @noinspection PhpUnused + */ + public function getSuggestCategory(): void + { + $suggestions = $this->item->get_category_suggestions($this->request->getGet('term')); + + echo json_encode($suggestions); + } + + /** + * Gives search suggestions based on what is being searched for. + * @noinspection PhpUnused + */ + public function getSuggestLocation(): void + { + $suggestions = $this->item->get_location_suggestions($this->request->getGet('term')); + + echo json_encode($suggestions); + } + + /** + * @param string $item_ids + * @return void + */ + public function getRow(string $item_ids): void //TODO: An array would be better for parameter. + { + $item_infos = $this->item->get_multiple_info(explode(':', $item_ids), $this->item_lib->get_item_location()); + + $result = []; + + foreach($item_infos->getResult() as $item_info) + { + $result[$item_info->item_id] = get_item_data_row($item_info); + } + + echo json_encode($result); + } + + /** + * @param int $item_id + * @return void + */ + public function getView(int $item_id = NEW_ENTRY): void //TODO: Long function. Perhaps we need to refactor out some methods. + { + $item_id ??= NEW_ENTRY; + + if($item_id === NEW_ENTRY) + { + $data = []; + } + + $data['allow_temp_item'] = $this->session->get('allow_temp_items'); //allow_temp_items is set in the index function of items.php or sales.php + $data['item_tax_info'] = $this->item_taxes->get_info($item_id); + $data['default_tax_1_rate'] = ''; + $data['default_tax_2_rate'] = ''; + $data['item_kit_disabled'] = !$this->employee->has_grant('item_kits', $this->employee->get_logged_in_employee_info()->person_id); + $data['definition_values'] = $this->attribute->get_attributes_by_item($item_id); + $data['definition_names'] = $this->attribute->get_definition_names(); + + foreach($data['definition_values'] as $definition_id => $definition) + { + unset($data['definition_names'][$definition_id]); + } + + $item_info = $this->item->get_info($item_id); + + $data['allow_temp_item'] = ($data['allow_temp_item'] === 1 && $item_id !== NEW_ENTRY && $item_info->item_type != ITEM_TEMP) ? 0 : 1; + + $use_destination_based_tax = (boolean)$this->config['use_destination_based_tax']; + $data['include_hsn'] = $this->config['include_hsn'] === '1'; + $data['category_dropdown'] = $this->config['category_dropdown']; + + if($data['category_dropdown'] === '1') + { + $categories = ['' => lang('Items.none')]; + $category_options = $this->attribute->get_definition_values(CATEGORY_DEFINITION_ID); + $category_options = array_combine($category_options,$category_options); //Overwrite indexes with values for saving in items table instead of attributes + $data['categories'] = array_merge($categories,$category_options); + + $data['selected_category'] = $item_info->category; + } + + if($item_id === NEW_ENTRY) + { + $data['default_tax_1_rate'] = $this->config['default_tax_1_rate']; + $data['default_tax_2_rate'] = $this->config['default_tax_2_rate']; + + $item_info->receiving_quantity = 1; + $item_info->reorder_level = 1; + $item_info->item_type = ITEM; //Standard + $item_info->item_id = $item_id; + $item_info->stock_type = HAS_STOCK; + $item_info->tax_category_id = null; + $item_info->qty_per_pack = 1; + $item_info->pack_name = lang('Items.default_pack_name'); + + if($use_destination_based_tax) + { + $item_info->tax_category_id = $this->config['default_tax_category']; + } + } + + $data['standard_item_locked'] = ( + $data['item_kit_disabled'] + && $item_info->item_type == ITEM_KIT + && !$data['allow_temp_item'] + && !($this->config['derive_sale_quantity'] === '1') + ); + + $data['item_info'] = $item_info; + + $suppliers = ['' => lang('Items.none')]; + + foreach($this->supplier->get_all()->getResultArray() as $row) + { + $suppliers[$row['person_id']] = $row['company_name']; + } + + $data['suppliers'] = $suppliers; + $data['selected_supplier'] = $item_info->supplier_id; + + $data['hsn_code'] = $data['include_hsn'] + ? $item_info->hsn_code + : ''; + + if($use_destination_based_tax) + { + $data['use_destination_based_tax'] = true; + $tax_categories = []; + + foreach($this->tax_category->get_all()->getResultArray() as $row) + { + $tax_categories[$row['tax_category_id']] = $row['tax_category']; + } + + $tax_category = ''; + + if ($item_info->tax_category_id !== null) + { + $tax_category_info=$this->tax_category->get_info($item_info->tax_category_id); + $tax_category= $tax_category_info->tax_category; + } + + $data['tax_categories'] = $tax_categories; + $data['tax_category'] = $tax_category; + $data['tax_category_id'] = $item_info->tax_category_id; + } + else + { + $data['use_destination_based_tax'] = false; + $data['tax_categories'] = []; + $data['tax_category'] = ''; + } + + $data['logo_exists'] = $item_info->pic_filename !== null; + if($item_info->pic_filename != null) + { + $file_extension = pathinfo($item_info->pic_filename, PATHINFO_EXTENSION); + if(empty($file_extension)) + { + $images = glob("./uploads/item_pics/$item_info->pic_filename.*"); + } + else + { + $images = glob("./uploads/item_pics/$item_info->pic_filename"); + } + $data['image_path'] = sizeof($images) > 0 ? base_url($images[0]) : ''; + } + else + { + $data['image_path'] = ''; + } + + $stock_locations = $this->stock_location->get_undeleted_all()->getResultArray(); + + foreach($stock_locations as $location) + { + $quantity = $this->item_quantity->get_item_quantity($item_id, $location['location_id'])->quantity; + $quantity = ($item_id === NEW_ENTRY) ? 0 : $quantity; + $location_array[$location['location_id']] = ['location_name' => $location['location_name'], 'quantity' => $quantity]; + $data['stock_locations'] = $location_array; + } + + $data['selected_low_sell_item_id'] = $item_info->low_sell_item_id; + + if($item_id !== NEW_ENTRY && $item_info->item_id !== $item_info->low_sell_item_id) + { + $low_sell_item_info = $this->item->get_info($item_info->low_sell_item_id); + $data['selected_low_sell_item'] = implode(NAME_SEPARATOR, [$low_sell_item_info->name, $low_sell_item_info->pack_name]); + } + else + { + $data['selected_low_sell_item'] = ''; + } + + echo view('items/form', $data); + } + + /** + * AJAX called function which returns the update inventory form view for an item + * + * @param int $item_id + * @return void + * @noinspection PhpUnused + */ + public function getInventory(int $item_id = NEW_ENTRY): void + { + $item_info = $this->item->get_info($item_id); //TODO: Duplicate code + + foreach(get_object_vars($item_info) as $property => $value) + { + $item_info->$property = $value; + } + + $data['item_info'] = $item_info; + $data['stock_locations'] = []; + $stock_locations = $this->stock_location->get_undeleted_all()->getResultArray(); + + foreach($stock_locations as $location) + { + $quantity = $this->item_quantity->get_item_quantity($item_id, $location['location_id'])->quantity; + + $data['stock_locations'][$location['location_id']] = $location['location_name']; + $data['item_quantities'][$location['location_id']] = $quantity; + } + + echo view('items/form_inventory', $data); + } + + /** + * @param int $item_id + * @return void + * @noinspection PhpUnused + */ + public function getCountDetails(int $item_id = NEW_ENTRY): void + { + $item_info = $this->item->get_info($item_id); //TODO: Duplicate code + + foreach(get_object_vars($item_info) as $property => $value) + { + $item_info->$property = $value; + } + + $data['item_info'] = $item_info; + $data['stock_locations'] = []; + $stock_locations = $this->stock_location->get_undeleted_all()->getResultArray(); + + foreach($stock_locations as $location) + { + $quantity = $this->item_quantity->get_item_quantity($item_id, $location['location_id'])->quantity; + + $data['stock_locations'][$location['location_id']] = $location['location_name']; + $data['item_quantities'][$location['location_id']] = $quantity; + } + + echo view('items/form_count_details', $data); + } + + /** + * AJAX called function that generates barcodes for selected items. + * + * @param string $item_ids Colon separated list of item_id values to generate barcodes for. + * @return void + * @noinspection PhpUnused + */ + public function getGenerateBarcodes(string $item_ids): void //TODO: Passing these through as a string instead of an array limits the contents of the item_ids. Perhaps a better approach would to serialize as JSON in an array and pass through post variables? + { + $item_ids = explode(':', $item_ids); + $result = $this->item->get_multiple_info($item_ids, $this->item_lib->get_item_location())->getResultArray(); + $data['barcode_config'] = $this->barcode_lib->get_barcode_config(); + + foreach($result as &$item) + { + if(isset($item['item_number']) && empty($item['item_number']) && $this->config['barcode_generate_if_empty']) + { + if(isset($item['item_id'])) + { + $save_item = ['item_number' => $item['item_number']]; + $this->item->save_value($save_item, $item['item_id']); + } + } + } + $data['items'] = $result; + + echo view('barcodes/barcode_sheet', $data); + } + + /** + * Gathers attribute value information for an item and returns it in a view. + * + * @param int $item_id + * @return void + */ + public function getAttributes(int $item_id = NEW_ENTRY): void + { + $data['item_id'] = $item_id; + $definition_ids = json_decode($this->request->getGet('definition_ids') ?? '', true); + $data['definition_values'] = $this->attribute->get_attributes_by_item($item_id) + $this->attribute->get_values_by_definitions($definition_ids); + $data['definition_names'] = $this->attribute->get_definition_names(); + + foreach($data['definition_values'] as $definition_id => $definition_value) + { + $attribute_value = $this->attribute->get_attribute_value($item_id, $definition_id); + $attribute_id = (empty($attribute_value) || empty($attribute_value->attribute_id)) ? null : $attribute_value->attribute_id; + $values = &$data['definition_values'][$definition_id]; + $values['attribute_id'] = $attribute_id; + $values['attribute_value'] = $attribute_value; + $values['selected_value'] = ''; + + if ($definition_value['definition_type'] === DROPDOWN) + { + $values['values'] = $this->attribute->get_definition_values($definition_id); + $link_value = $this->attribute->get_link_value($item_id, $definition_id); + $values['selected_value'] = (empty($link_value)) ? '' : $link_value->attribute_id; + } + + if (!empty($definition_ids[$definition_id])) + { + $values['selected_value'] = $definition_ids[$definition_id]; + } + + unset($data['definition_names'][$definition_id]); + } + + echo view('attributes/item', $data); + } + + /** + * @param int $item_id + * @return void + * @noinspection PhpUnused + */ + public function postAttributes(int $item_id = NEW_ENTRY): void + { + $data['item_id'] = $item_id; + $definition_ids = json_decode($this->request->getPost('definition_ids'), true); + $data['definition_values'] = $this->attribute->get_attributes_by_item($item_id) + $this->attribute->get_values_by_definitions($definition_ids); + $data['definition_names'] = $this->attribute->get_definition_names(); + + foreach($data['definition_values'] as $definition_id => $definition_value) + { + $attribute_value = $this->attribute->get_attribute_value($item_id, $definition_id); + $attribute_id = (empty($attribute_value) || empty($attribute_value->attribute_id)) ? null : $attribute_value->attribute_id; + $values = &$data['definition_values'][$definition_id]; + $values['attribute_id'] = $attribute_id; + $values['attribute_value'] = $attribute_value; + $values['selected_value'] = ''; + + if ($definition_value['definition_type'] === DROPDOWN) + { + $values['values'] = $this->attribute->get_definition_values($definition_id); + $link_value = $this->attribute->get_link_value($item_id, $definition_id); + $values['selected_value'] = (empty($link_value)) ? '' : $link_value->attribute_id; + } + + if (!empty($definition_ids[$definition_id])) + { + $values['selected_value'] = $definition_ids[$definition_id]; + } + + unset($data['definition_names'][$definition_id]); + } + + echo view('attributes/item', $data); + } + + /** + * Edit multiple items. Used in app/Views/items/manage.php + * + * @return void + * @noinspection PhpUnused + */ + public function getBulkEdit(): void + { + $suppliers = ['' => lang('Items.none')]; + + foreach($this->supplier->get_all()->getResultArray() as $row) + { + $suppliers[$row['person_id']] = $row['company_name']; + } + + $data['suppliers'] = $suppliers; + $data['allow_alt_description_choices'] = [ + '' => lang('Items.do_nothing'), + 1 => lang('Items.change_all_to_allow_alt_desc'), + 0 => lang('Items.change_all_to_not_allow_allow_desc') + ]; + + $data['serialization_choices'] = [ + '' => lang('Items.do_nothing'), + 1 => lang('Items.change_all_to_serialized'), + 0 => lang('Items.change_all_to_unserialized') + ]; + + echo view('items/form_bulk', $data); + } + + /** + * @param int $item_id + * @throws ReflectionException + */ + public function postSave(int $item_id = NEW_ENTRY): void + { + $upload_data = $this->upload_image(); + $upload_success = empty($upload_data['error']); + + $raw_receiving_quantity = $this->request->getPost('receiving_quantity'); + + $receiving_quantity = parse_quantity($raw_receiving_quantity); + $item_type = $this->request->getPost('item_type') === null ? ITEM : intval($this->request->getPost('item_type')); + + if($receiving_quantity === 0.0 && $item_type !== ITEM_TEMP) + { + $receiving_quantity = 1; + } + + $default_pack_name = lang('Items.default_pack_name'); + + $cost_price = parse_decimals($this->request->getPost('cost_price')); + $unit_price = parse_decimals($this->request->getPost('unit_price')); + $reorder_level = parse_quantity($this->request->getPost('reorder_level')); + $qty_per_pack = parse_quantity($this->request->getPost('qty_per_pack') ?? ''); + + //Save item data + $item_data = [ + 'name' => $this->request->getPost('name'), + 'description' => $this->request->getPost('description'), + 'category' => $this->request->getPost('category'), + 'item_type' => $item_type, + 'stock_type' => $this->request->getPost('stock_type') === null ? HAS_STOCK : intval($this->request->getPost('stock_type')), + 'supplier_id' => empty($this->request->getPost('supplier_id')) ? null : intval($this->request->getPost('supplier_id')), + 'item_number' => empty($this->request->getPost('item_number')) ? null : $this->request->getPost('item_number'), + 'cost_price' => $cost_price, + 'unit_price' => $unit_price, + 'reorder_level' => $reorder_level, + 'receiving_quantity' => $receiving_quantity, + 'allow_alt_description' => $this->request->getPost('allow_alt_description') != null, + 'is_serialized' => $this->request->getPost('is_serialized') != null, + 'qty_per_pack' => $this->request->getPost('qty_per_pack') == null ? 1 : parse_quantity($qty_per_pack), + 'pack_name' => $this->request->getPost('pack_name') == null ? $default_pack_name : $this->request->getPost('pack_name'), + 'low_sell_item_id' => $this->request->getPost('low_sell_item_id') === null ? $item_id : intval($this->request->getPost('low_sell_item_id')), + 'deleted' => $this->request->getPost('is_deleted') != null, + 'hsn_code' => $this->request->getPost('hsn_code') === null ? '' : $this->request->getPost('hsn_code') + ]; + + if($item_data['item_type'] == ITEM_TEMP) + { + $item_data['stock_type'] = HAS_NO_STOCK; + $item_data['receiving_quantity'] = 0; + $item_data['reorder_level'] = 0; + } + + $tax_category_id = intval($this->request->getPost('tax_category_id')); + + if(!isset($tax_category_id)) + { + $item_data['tax_category_id'] = ''; + } + else + { + $item_data['tax_category_id'] = empty($this->request->getPost('tax_category_id')) ? null : intval($this->request->getPost('tax_category_id')); + } + + if (!empty($upload_data['orig_name']) && $upload_data['raw_name']) { + $item_data['pic_filename'] = $upload_data['raw_name'] . '.' . $upload_data['file_ext']; + } + + $employee_id = $this->employee->get_logged_in_employee_info()->person_id; + + if($this->item->save_value($item_data, $item_id)) + { + $success = true; + $new_item = false; + + if($item_id === NEW_ENTRY) + { + $item_id = $item_data['item_id']; + $new_item = true; + } + + $use_destination_based_tax = (bool)$this->config['use_destination_based_tax']; + + if(!$use_destination_based_tax) + { + $items_taxes_data = []; + $tax_names = $this->request->getPost('tax_names'); + $tax_percents = $this->request->getPost('tax_percents'); + + $tax_name_index = 0; + + foreach($tax_percents as $tax_percent) + { + $tax_percentage = parse_tax($tax_percent); + + if(is_numeric($tax_percentage)) + { + $items_taxes_data[] = ['name' => $tax_names[$tax_name_index], 'percent' => $tax_percentage]; + } + + $tax_name_index++; + } + $success &= $this->item_taxes->save_value($items_taxes_data, $item_id); + } + + //Save item quantity + $stock_locations = $this->stock_location->get_undeleted_all()->getResultArray(); + foreach($stock_locations as $location) + { + $updated_quantity = parse_quantity($this->request->getPost('quantity_' . $location['location_id'])); + + if($item_data['item_type'] == ITEM_TEMP) + { + $updated_quantity = 0; + } + + $location_detail = [ + 'item_id' => $item_id, + 'location_id' => $location['location_id'], + 'quantity' => $updated_quantity + ]; + + $item_quantity = $this->item_quantity->get_item_quantity($item_id, $location['location_id']); + + if($item_quantity->quantity != $updated_quantity || $new_item) + { + $success &= $this->item_quantity->save_value($location_detail, $item_id, $location['location_id']); + + $inv_data = [ + 'trans_date' => date('Y-m-d H:i:s'), + 'trans_items' => $item_id, + 'trans_user' => $employee_id, + 'trans_location' => $location['location_id'], + 'trans_comment' => lang('Items.manually_editing_of_quantity'), + 'trans_inventory' => $updated_quantity - $item_quantity->quantity + ]; + + $success &= $this->inventory->insert($inv_data, false); + } + } + $this->saveItemAttributes($item_id); + + if($success && $upload_success) + { + $message = lang('Items.successful_' . ($new_item ? 'adding' : 'updating')) . ' ' . $item_data['name']; + + echo json_encode (['success' => true, 'message' => $message, 'id' => $item_id]); + } + else + { + $message = $upload_success ? lang('Items.error_adding_updating') . ' ' . $item_data['name'] : strip_tags($upload_data['error']); + + echo json_encode (['success' => false, 'message' => $message, 'id' => $item_id]); + } + } + else + { + $message = lang('Items.error_adding_updating') . ' ' . $item_data['name']; + + echo json_encode (['success' => false, 'message' => $message, 'id' => NEW_ENTRY]); + } + } + + /** + * Let files be uploaded with their original name + * @return array + */ + private function upload_image(): array + { + $file = $this->request->getFile('items_image'); + if(!$file) + { + return []; + } + + helper(['form']); + $validation_rule = [ + 'items_image' => [ + 'label' => 'Item Image', + 'rules' => [ + 'uploaded[items_image]', + 'is_image[items_image]', + 'max_size[items_image,' . $this->config['image_max_size'] . ']', + 'mime_in[items_image,image/png,image/jpg,image/jpeg,image/gif]', + 'ext_in[items_image,' . $this->config['image_allowed_types'] . ']', + 'max_dims[items_image,' . $this->config['image_max_width'] . ',' . $this->config['image_max_height'] . ']' + ] + ] + ]; + + if (!$this->validate($validation_rule)) + { + return (['error' => $this->validator->getError('items_image')]); + } + + $filename = $file->getClientName(); + $info = pathinfo($filename); + + $file_info = [ + 'orig_name' => $filename, + 'raw_name' => $info['filename'], + 'file_ext' => $file->guessExtension() + ]; + + $file->move(FCPATH . 'uploads/item_pics/', $file_info['raw_name'] . '.' . $file_info['file_ext'], true); + return ($file_info); + } + + + /** + * Ajax call to check to see if the item number, a.k.a. barcode, is already used by another item + * If it exists then that is an error condition so return true for "error found" + * @return void + * @noinspection PhpUnused + */ + public function postCheckItemNumber(): void + { + $exists = $this->item->item_number_exists($this->request->getPost('item_number'), $this->request->getPost('item_id')); + + echo !$exists ? 'true' : 'false'; + } + + /** + * Checks to see if an item kit with the same name as the item already exists. + * + * @return void + */ + public function check_kit_exists(): void //TODO: This function appears to be never called in the code. Need to confirm. + { + if($this->request->getPost('item_number') === NEW_ENTRY) + { + $exists = $this->item_kit->item_kit_exists_for_name($this->request->getPost('name')); //TODO: item_kit_exists_for_name doesn't exist in Item_kit. I looked at the blame and it appears to have never existed. + } + else + { + $exists = false; + } + echo !$exists ? 'true' : 'false'; + } + + /** + * @param $item_id + * @return void + * @noinspection PhpUnused + */ + public function getRemoveLogo($item_id): void + { + $item_data = ['pic_filename' => null]; + $result = $this->item->save_value($item_data, $item_id); + + echo json_encode (['success' => $result]); + } + + /** + * @throws ReflectionException + * @noinspection PhpUnused + */ + public function postSaveInventory($item_id = NEW_ENTRY): void + { + $employee_id = $this->employee->get_logged_in_employee_info()->person_id; + $cur_item_info = $this->item->get_info($item_id); + $location_id = $this->request->getPost('stock_location'); + $new_quantity = $this->request->getPost('newquantity'); + $inv_data = [ + 'trans_date' => date('Y-m-d H:i:s'), + 'trans_items' => $item_id, + 'trans_user' => $employee_id, + 'trans_location' => $location_id, + 'trans_comment' => $this->request->getPost('trans_comment'), + 'trans_inventory' => parse_quantity($new_quantity) + ]; + + $this->inventory->insert($inv_data, false); + + //Update stock quantity + $item_quantity = $this->item_quantity->get_item_quantity($item_id, $location_id); + $item_quantity_data = [ + 'item_id' => $item_id, + 'location_id' => $location_id, + 'quantity' => $item_quantity->quantity + parse_quantity($this->request->getPost('newquantity')) + ]; + + if($this->item_quantity->save_value($item_quantity_data, $item_id, $location_id)) + { + $message = lang('Items.successful_updating') . " $cur_item_info->name"; + + echo json_encode (['success' => true, 'message' => $message, 'id' => $item_id]); + } + else + { + $message = lang('Items.error_adding_updating') . " $cur_item_info->name"; + + echo json_encode (['success' => false, 'message' => $message, 'id' => NEW_ENTRY]); + } + } + + /** + * @return void + * @noinspection PhpUnused + */ + public function postBulkUpdate(): void + { + $items_to_update = $this->request->getPost('item_ids'); + $item_data = []; + + foreach($_POST as $key => $value) + { + //This field is nullable, so treat it differently + if($key === 'supplier_id' && $value !== '') + { + $item_data[$key] = $value; + } + elseif($value !== '' && !(in_array($key, ['item_ids', 'tax_names', 'tax_percents']))) + { + $item_data[$key] = $value; + } + } + + //Item data could be empty if tax information is being updated + if(empty($item_data) || $this->item->update_multiple($item_data, $items_to_update)) + { + $items_taxes_data = []; + $tax_names = $this->request->getPost('tax_names'); + $tax_percents = $this->request->getPost('tax_percents'); + $tax_updated = false; + + foreach($tax_percents as $tax_percent) + { + if(!empty($tax_names[$tax_percent]) && is_numeric($tax_percents[$tax_percent])) + { + $tax_updated = true; + $items_taxes_data[] = ['name' => $tax_names[$tax_percent], 'percent' => $tax_percents[$tax_percent]]; + } + } + + if($tax_updated) + { + $this->item_taxes->save_multiple($items_taxes_data, $items_to_update); + } + + echo json_encode (['success' => true, 'message' => lang('Items.successful_bulk_edit'), 'id' => $items_to_update]); + } + else + { + echo json_encode (['success' => false, 'message' => lang('Items.error_updating_multiple')]); + } + } + + /** + */ + public function postDelete(): void + { + $items_to_delete = $this->request->getPost('ids'); + + if($this->item->delete_list($items_to_delete)) + { + $message = lang('Items.successful_deleted') . ' ' . count($items_to_delete) . ' ' . lang('Items.one_or_multiple'); + echo json_encode (['success' => true, 'message' => $message]); + } + else + { + echo json_encode (['success' => false, 'message' => lang('Items.cannot_be_deleted')]); + } + } + + /** + * Generates a template CSV file for item import/update containing headers for current stock locations and attributes. Used in app/Views/items/form_csv_import.php + * + * @return DownloadResponse + * @noinspection PhpUnused + */ + public function getGenerateCsvFile(): DownloadResponse + { + helper('importfile_helper'); + $name = 'import_items.csv'; + $allowed_locations = $this->stock_location->get_allowed_locations(); + $allowed_attributes = $this->attribute->get_definition_names(); + $data = generate_import_items_csv($allowed_locations, $allowed_attributes); + + return $this->response->download($name, $data); + } + + /** + * @return void + * @noinspection PhpUnused + */ + public function getCsvImport(): void + { + echo view('items/form_csv_import'); + } + + /** + * Imports items from CSV formatted file. + * @throws ReflectionException + * @noinspection PhpUnused + */ + public function postImportCsvFile(): void + { + helper('importfile_helper'); + if($_FILES['file_path']['error'] !== UPLOAD_ERR_OK) + { + echo json_encode (['success' => false, 'message' => lang('Items.csv_import_failed')]); + } + else + { + if(file_exists($_FILES['file_path']['tmp_name'])) + { + set_time_limit(240); + + $failCodes = []; + $csv_rows = get_csv_file($_FILES['file_path']['tmp_name']); + $employee_id = $this->employee->get_logged_in_employee_info()->person_id; + $allowed_stock_locations = $this->stock_location->get_allowed_locations(); + $attribute_definition_names = $this->attribute->get_definition_names(); + + unset($attribute_definition_names[NEW_ENTRY]); //Removes the common_none_selected_text from the array + + $attribute_data = []; + + foreach($attribute_definition_names as $definition_name) + { + $attribute_data[$definition_name] = $this->attribute->get_definition_by_name($definition_name)[0]; + + if($attribute_data[$definition_name]['definition_type'] === DROPDOWN) + { + $attribute_data[$definition_name]['dropdown_values'] = $this->attribute->get_definition_values($attribute_data[$definition_name]['definition_id']); + } + } + $db = db_connect(); + $db->transBegin(); //TODO: This section needs to be reworked so that the data array is being created then passed to the Item model because $db doesn't exist in the controller without being instantiated, but database operations should be restricted to the model + + foreach($csv_rows as $key => $row) + { + $is_failed_row = false; + $item_id = (int)$row['Id']; + $is_update = ($item_id > 0); + $item_data = [ + 'item_id' => $item_id, + 'name' => $row['Item Name'], + 'description' => $row['Description'], + 'category' => $row['Category'], + 'cost_price' => $row['Cost Price'], + 'unit_price' => $row['Unit Price'], + 'reorder_level' => $row['Reorder Level'], + 'deleted' => false, + 'hsn_code' => $row['HSN'], + 'pic_filename' => $row['Image'] + ]; + + if(!empty($row['supplier ID'])) + { + $item_data['supplier_id'] = $this->supplier->exists($row['Supplier ID']) ? $row['Supplier ID'] : null; + } + + if($is_update) + { + $item_data['allow_alt_description'] = empty($row['Allow Alt Description']) ? null : $row['Allow Alt Description']; + $item_data['is_serialized'] = empty($row['Item has Serial Number']) ? null : $row['Item has Serial Number']; + } + else + { + $item_data['allow_alt_description'] = empty($row['Allow Alt Description'])? '0' : '1'; + $item_data['is_serialized'] = empty($row['Item has Serial Number'])? '0' : '1'; + } + + if(!empty($row['Barcode']) && !$is_update) + { + $item_data['item_number'] = $row['Barcode']; + $is_failed_row = $this->item->item_number_exists($item_data['item_number']); + } + + if(!$is_failed_row) + { + $is_failed_row = $this->data_error_check($row, $item_data, $allowed_stock_locations, $attribute_definition_names, $attribute_data); + } + + //Remove false, null, '' and empty strings but keep 0 + $item_data = array_filter($item_data, function($value) { + return $value !== null && strlen($value); + }); + + if(!$is_failed_row && $this->item->save_value($item_data, $item_id)) + { + $this->save_tax_data($row, $item_data); + $this->save_inventory_quantities($row, $item_data, $allowed_stock_locations, $employee_id); + $is_failed_row = $this->save_attribute_data($row, $item_data, $attribute_data); //TODO: $is_failed_row never gets used after this. + + if($is_update) + { + $item_data = array_merge($item_data, get_object_vars($this->item->get_info_by_id_or_number($item_id))); + } + } + else + { + $failed_row = $key+2; + $failCodes[] = $failed_row; + log_message('error',"CSV Item import failed on line $failed_row. This item was not imported."); + } + + unset($csv_rows[$key]); + } + + $csv_rows = null; + + if(count($failCodes) > 0) + { + $message = lang('Items.csv_import_partially_failed', [count($failCodes), implode(', ', $failCodes)]); + $db->transRollback(); + echo json_encode (['success' => false, 'message' => $message]); + } + else + { + $db->transCommit(); + + echo json_encode (['success' => true, 'message' => lang('Items.csv_import_success')]); + } + } + else + { + echo json_encode (['success' => false, 'message' => lang('Items.csv_import_nodata_wrongformat')]); + } + } + } + + /** + * Checks the entire line of data in an import file for errors + * + * @param array $row + * @param array $item_data + * @param array $allowed_locations + * @param array $definition_names + * @param array $attribute_data + * @return bool Returns false if all data checks out and true when there is an error in the data + */ + private function data_error_check(array $row, array $item_data, array $allowed_locations, array $definition_names, array $attribute_data): bool //TODO: Long function and large number of parameters in the declaration... perhaps refactoring is needed. + { + $item_id = $row['Id']; + $is_update = (bool)$item_id; + + //Check for empty required fields + $check_for_empty = [ + 'name' => $item_data['name'], + 'category' => $item_data['category'], + 'unit_price' => $item_data['unit_price'] + ]; + + foreach($check_for_empty as $key => $val) + { + if (empty($val) && !$is_update) + { + log_message('error',"Empty required value in $key."); + return true; + } + } + + if(!$is_update) + { + $item_data['cost_price'] = empty($item_data['cost_price']) ? 0 : $item_data['cost_price']; //Allow for zero wholesale price + } + else + { + if(!$this->item->exists($item_id)) + { + log_message('error',"non-existent item_id: '$item_id' when either existing item_id or no item_id is required."); + return true; + } + } + + //Build array of fields to check for numerics + $check_for_numeric_values = [ + 'cost_price' => $item_data['cost_price'], + 'unit_price' => $item_data['unit_price'], + 'reorder_level' => $item_data['reorder_level'], + 'supplier_id' => $row['Supplier ID'], + 'Tax 1 Percent' => $row['Tax 1 Percent'], + 'Tax 2 Percent' => $row['Tax 2 Percent'] + ]; + + foreach($allowed_locations as $location_name) + { + $check_for_numeric_values[] = $row["location_$location_name"]; + } + + //Check for non-numeric values which require numeric + foreach($check_for_numeric_values as $key => $value) + { + if(!is_numeric($value) && !empty($value)) + { + log_message('error',"non-numeric: '$value' for '$key' when numeric is required"); + return true; + } + } + + //Check Attribute Data + foreach($definition_names as $definition_name) + { + if(!empty($row["attribute_$definition_name"])) + { + $definition_type = $attribute_data[$definition_name]['definition_type']; + $attribute_value = $row["attribute_$definition_name"]; + + switch($definition_type) + { + case DROPDOWN: + $dropdown_values = $attribute_data[$definition_name]['dropdown_values']; + $dropdown_values[] = ''; + + if(!empty($attribute_value) && !in_array($attribute_value, $dropdown_values)) + { + log_message('error',"Value: '$attribute_value' is not an acceptable DROPDOWN value"); + return true; + } + break; + case DECIMAL: + if(!is_numeric($attribute_value) && !empty($attribute_value)) + { + log_message('error',"'$attribute_value' is not an acceptable DECIMAL value"); + return true; + } + break; + case DATE: + if(!valid_date($attribute_value) && !empty($attribute_value)) + { + log_message('error',"'$attribute_value' is not an acceptable DATE value. The value must match the set locale."); + return true; + } + break; + } + } + } + + return false; + } + + /** + * Saves attribute data found in the CSV import. + * + * @param array $row + * @param array $item_data + * @param array $definitions + * @return bool + */ + private function save_attribute_data(array $row, array $item_data, array $definitions): bool + { + foreach($definitions as $definition) + { + $attribute_name = $definition['definition_name']; + $attribute_value = $row["attribute_$attribute_name"]; + + //Create attribute value + if(!empty($attribute_value) || $attribute_value === '0') + { + if($definition['definition_type'] === CHECKBOX) + { + $checkbox_is_unchecked = (strcasecmp($attribute_value,'false') === 0 || $attribute_value === '0'); + $attribute_value = $checkbox_is_unchecked ? '0' : '1'; + + $attribute_id = $this->store_attribute_value($attribute_value, $definition, $item_data['item_id']); + } + elseif(!empty($attribute_value)) + { + $attribute_id = $this->store_attribute_value($attribute_value, $definition, $item_data['item_id']); + } + else + { + return true; + } + + if(!$attribute_id) + { + return true; + } + } + } + return false; + } + + /** + * Saves the attribute_value and attribute_link if necessary + */ + private function store_attribute_value(string $value, array $attribute_data, int $item_id) + { + $attribute_id = $this->attribute->attributeValueExists($value, $attribute_data['definition_type']); + + $this->attribute->deleteAttributeLinks($item_id, $attribute_data['definition_id']); + + if(!$attribute_id) + { + $attribute_id = $this->attribute->saveAttributeValue($value, $attribute_data['definition_id'], $item_id, false, $attribute_data['definition_type']); + } + else if(!$this->attribute->saveAttributeLink($item_id, $attribute_data['definition_id'], $attribute_id)) + { + return false; + } + + return $attribute_id; + } + + /** + * Saves inventory quantities for the row in the appropriate stock locations. + * + * @param array $row + * @param array $item_data + * @param array $allowed_locations + * @param int $employee_id + * @throws ReflectionException + */ + private function save_inventory_quantities(array $row, array $item_data, array $allowed_locations, int $employee_id): void + { + //Quantities & Inventory Section + $comment = lang('Items.inventory_CSV_import_quantity'); + $is_update = (bool)$row['Id']; + + foreach($allowed_locations as $location_id => $location_name) + { + $item_quantity_data = ['item_id' => $item_data['item_id'], 'location_id' => $location_id]; + + $csv_data = [ + 'trans_items' => $item_data['item_id'], + 'trans_user' => $employee_id, + 'trans_comment' => $comment, + 'trans_location' => $location_id + ]; + + if(!empty($row["location_$location_name"]) || $row["location_$location_name"] === '0') + { + $item_quantity_data['quantity'] = $row["location_$location_name"]; + $this->item_quantity->save_value($item_quantity_data, $item_data['item_id'], $location_id); + + $csv_data['trans_inventory'] = $row["location_$location_name"]; + $this->inventory->insert($csv_data, false); + } + elseif($is_update) + { + return; + } + else + { + $item_quantity_data['quantity'] = 0; + $this->item_quantity->save_value($item_quantity_data, $item_data['item_id'], $location_id); + + $csv_data['trans_inventory'] = 0; + $this->inventory->insert($csv_data, false); + } + } + } + + /** + * Saves the tax data found in the line of the CSV items import file + * + * @param array $row + * @param array $item_data + */ + private function save_tax_data(array $row, array $item_data): void + { + $items_taxes_data = []; + + if(is_numeric($row['Tax 1 Percent']) && $row['Tax 1 Name'] !== '') + { + $items_taxes_data[] = ['name' => $row['Tax 1 Name'], 'percent' => $row['Tax 1 Percent']]; + } + + if(is_numeric($row['Tax 2 Percent']) && $row['Tax 2 Name'] !== '') + { + $items_taxes_data[] = ['name' => $row['Tax 2 Name'], 'percent' => $row['Tax 2 Percent']]; + } + + if(isset($items_taxes_data)) + { + $this->item_taxes->save_value($items_taxes_data, $item_data['item_id']); + } + } + + /** + * Guess whether file extension is not in the table field, if it isn't, then it's an old-format (formerly pic_id) field, so we guess the right filename and update the table + * + * @param $item object item to update + */ + private function update_pic_filename(object $item): void + { + $filename = pathinfo($item->pic_filename, PATHINFO_FILENAME); + + // if the field is empty there's nothing to check + if(!empty($filename)) + { + $ext = pathinfo($item->pic_filename, PATHINFO_EXTENSION); + if(empty($ext)) + { + $images = glob(FCPATH . "uploads/item_pics/$item->pic_filename.*"); + if(sizeof($images) > 0) + { + $new_pic_filename = pathinfo($images[0], PATHINFO_BASENAME); + $item_data = ['pic_filename' => $new_pic_filename]; + $this->item->save_value($item_data, $item->item_id); + } + } + } + } + + /** + * Saves item attributes for a given item. + * + * @param int $itemId The item for which attributes need to be saved to. + * @return void + */ + public function saveItemAttributes(int $itemId): void + { + $attributeLinks = $this->request->getPost('attribute_links') ?? []; + $attributeIds = $this->request->getPost('attribute_ids'); + + $this->attribute->deleteAttributeLinks($itemId); + + foreach($attributeLinks as $definitionId => $attributeValue) + { + $definitionType = $this->attribute->getAttributeInfo($definitionId)->definition_type; + + switch($definitionType) + { + case DROPDOWN: + $attributeId = $attributeValue; + break; + case DECIMAL: + $attributeValue = parse_decimals($attributeValue); + //Fall through to save the attribute value + default: + $attributeId = $this->attribute->saveAttributeValue($attributeValue, $definitionId, $itemId, $attributeIds[$definitionId], $definitionType); + break; + } + + $this->attribute->saveAttributeLink($itemId, $definitionId, $attributeId); + } + } } diff --git a/app/Controllers/Login.php b/app/Controllers/Login.php index f334225fa..afec387c8 100644 --- a/app/Controllers/Login.php +++ b/app/Controllers/Login.php @@ -14,65 +14,65 @@ use Config\Services; */ class Login extends BaseController { - public Model $employee; + public Model $employee; - /** - * @return RedirectResponse|string - */ - public function index(): string|RedirectResponse - { - $this->employee = model(Employee::class); - if(!$this->employee->is_logged_in()) - { - $migration = new MY_Migration(config('Migrations')); - $config = config(OSPOS::class)->settings; + /** + * @return RedirectResponse|string + */ + public function index(): string|RedirectResponse + { + $this->employee = model(Employee::class); + if(!$this->employee->is_logged_in()) + { + $migration = new MY_Migration(config('Migrations')); + $config = config(OSPOS::class)->settings; - $gcaptcha_enabled = array_key_exists('gcaptcha_enable', $config) - ? $config['gcaptcha_enable'] - : false; + $gcaptcha_enabled = array_key_exists('gcaptcha_enable', $config) + ? $config['gcaptcha_enable'] + : false; - $migration->migrate_to_ci4(); + $migration->migrate_to_ci4(); - $validation = Services::validation(); + $validation = Services::validation(); - $data = [ - 'has_errors' => false, - 'is_latest' => $migration->is_latest(), - 'latest_version' => $migration->get_latest_migration(), - 'gcaptcha_enabled' => $gcaptcha_enabled, - 'config' => $config, - 'validation' => $validation - ]; + $data = [ + 'has_errors' => false, + 'is_latest' => $migration->is_latest(), + 'latest_version' => $migration->get_latest_migration(), + 'gcaptcha_enabled' => $gcaptcha_enabled, + 'config' => $config, + 'validation' => $validation + ]; - if($this->request->getMethod() !== 'POST') - { - return view('login', $data); - } + if($this->request->getMethod() !== 'POST') + { + return view('login', $data); + } - $rules = ['username' => 'required|login_check[data]']; - $messages = [ - 'username' => [ - 'required' => lang('Login.required_username'), - 'login_check' => lang('Login.invalid_username_and_password'), - ] - ]; + $rules = ['username' => 'required|login_check[data]']; + $messages = [ + 'username' => [ + 'required' => lang('Login.required_username'), + 'login_check' => lang('Login.invalid_username_and_password'), + ] + ]; - if(!$this->validate($rules, $messages)) - { - $data['has_errors'] = !empty($validation->getErrors()); + if(!$this->validate($rules, $messages)) + { + $data['has_errors'] = !empty($validation->getErrors()); - return view('login', $data); - } + return view('login', $data); + } - if(!$data['is_latest']) - { - set_time_limit(3600); + if(!$data['is_latest']) + { + set_time_limit(3600); - $migration->setNamespace('App')->latest(); - return redirect()->to('login'); - } - } + $migration->setNamespace('App')->latest(); + return redirect()->to('login'); + } + } - return redirect()->to('home'); - } + return redirect()->to('home'); + } } diff --git a/app/Controllers/Messages.php b/app/Controllers/Messages.php index 6697bcf55..447782f4f 100644 --- a/app/Controllers/Messages.php +++ b/app/Controllers/Messages.php @@ -8,90 +8,90 @@ use App\Models\Person; class Messages extends Secure_Controller { - private Sms_lib $sms_lib; + private Sms_lib $sms_lib; - public function __construct() - { - parent::__construct('messages'); + public function __construct() + { + parent::__construct('messages'); - $this->sms_lib = new Sms_lib(); - } + $this->sms_lib = new Sms_lib(); + } - /** - * @return void - */ - public function getIndex(): void - { - echo view('messages/sms'); - } + /** + * @return void + */ + public function getIndex(): void + { + echo view('messages/sms'); + } - /** - * @param int $person_id - * @return void - */ - public function getView(int $person_id = NEW_ENTRY): void - { - $person = model(Person::class); - $info = $person->get_info($person_id); + /** + * @param int $person_id + * @return void + */ + public function getView(int $person_id = NEW_ENTRY): void + { + $person = model(Person::class); + $info = $person->get_info($person_id); - foreach(get_object_vars($info) as $property => $value) - { - $info->$property = $value; - } - $data['person_info'] = $info; + foreach(get_object_vars($info) as $property => $value) + { + $info->$property = $value; + } + $data['person_info'] = $info; - echo view('messages/form_sms', $data); - } + echo view('messages/form_sms', $data); + } - /** - * @return void - */ - public function send(): void - { - $phone = $this->request->getPost('phone', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $message = $this->request->getPost('message', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + /** + * @return void + */ + public function send(): void + { + $phone = $this->request->getPost('phone', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + $message = $this->request->getPost('message', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $response = $this->sms_lib->sendSMS($phone, $message); + $response = $this->sms_lib->sendSMS($phone, $message); - if($response) - { - echo json_encode (['success' => true, 'message' => lang('Messages.successfully_sent') . ' ' . esc($phone)]); - } - else - { - echo json_encode (['success' => false, 'message' => lang('Messages.unsuccessfully_sent') . ' ' . esc($phone)]); - } - } + if($response) + { + echo json_encode (['success' => true, 'message' => lang('Messages.successfully_sent') . ' ' . esc($phone)]); + } + else + { + echo json_encode (['success' => false, 'message' => lang('Messages.unsuccessfully_sent') . ' ' . esc($phone)]); + } + } - /** - * Sends an SMS message to a user. Used in app/Views/messages/form_sms.php. - * - * @param int $person_id - * @return void - * @noinspection PhpUnused - */ - public function send_form(int $person_id = NEW_ENTRY): void - { - $phone = $this->request->getPost('phone', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $message = $this->request->getPost('message', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + /** + * Sends an SMS message to a user. Used in app/Views/messages/form_sms.php. + * + * @param int $person_id + * @return void + * @noinspection PhpUnused + */ + public function send_form(int $person_id = NEW_ENTRY): void + { + $phone = $this->request->getPost('phone', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + $message = $this->request->getPost('message', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $response = $this->sms_lib->sendSMS($phone, $message); + $response = $this->sms_lib->sendSMS($phone, $message); - if($response) - { - echo json_encode ([ - 'success' => true, - 'message' => lang('Messages.successfully_sent') . ' ' . esc($phone), - 'person_id' => $person_id - ]); - } - else - { - echo json_encode ([ - 'success' => false, - 'message' => lang('Messages.unsuccessfully_sent') . ' ' . esc($phone), - 'person_id' => NEW_ENTRY - ]); - } - } + if($response) + { + echo json_encode ([ + 'success' => true, + 'message' => lang('Messages.successfully_sent') . ' ' . esc($phone), + 'person_id' => $person_id + ]); + } + else + { + echo json_encode ([ + 'success' => false, + 'message' => lang('Messages.unsuccessfully_sent') . ' ' . esc($phone), + 'person_id' => NEW_ENTRY + ]); + } + } } diff --git a/app/Controllers/No_access.php b/app/Controllers/No_access.php index 3153bba31..31d3ee11d 100644 --- a/app/Controllers/No_access.php +++ b/app/Controllers/No_access.php @@ -12,23 +12,23 @@ use App\Models\Module; */ class No_access extends BaseController { - private Module $module; + private Module $module; - public function __construct() - { - $this->module = model(Module::class); - } + public function __construct() + { + $this->module = model(Module::class); + } - /** - * @param string $module_id - * @param string $permission_id - * @return void - */ - public function getIndex(string $module_id = '', string $permission_id = ''): void - { - $data['module_name'] = $this->module->get_module_name($module_id); - $data['permission_id'] = $permission_id; + /** + * @param string $module_id + * @param string $permission_id + * @return void + */ + public function getIndex(string $module_id = '', string $permission_id = ''): void + { + $data['module_name'] = $this->module->get_module_name($module_id); + $data['permission_id'] = $permission_id; - echo view('no_access', $data); - } + echo view('no_access', $data); + } } diff --git a/app/Controllers/Office.php b/app/Controllers/Office.php index d9baee7ba..de44da655 100644 --- a/app/Controllers/Office.php +++ b/app/Controllers/Office.php @@ -9,28 +9,28 @@ use App\Models\Employee; */ class Office extends Secure_Controller { - protected Employee $employee; + protected Employee $employee; - public function __construct() - { - parent::__construct('office', null, 'office'); - } + public function __construct() + { + parent::__construct('office', null, 'office'); + } - /** - * @return void - */ - public function getIndex(): void - { - echo view('home/office'); - } + /** + * @return void + */ + public function getIndex(): void + { + echo view('home/office'); + } - /** - * @return void - */ - public function logout(): void - { - $this->employee = model(Employee::class); + /** + * @return void + */ + public function logout(): void + { + $this->employee = model(Employee::class); - $this->employee->logout(); - } + $this->employee->logout(); + } } diff --git a/app/Controllers/Persons.php b/app/Controllers/Persons.php index 6e9489652..28ca277e1 100644 --- a/app/Controllers/Persons.php +++ b/app/Controllers/Persons.php @@ -8,64 +8,64 @@ use function Tamtamchik\NameCase\str_name_case; abstract class Persons extends Secure_Controller { - protected Person $person; + protected Person $person; - /** - * @param string|null $module_id - */ - public function __construct(string $module_id = null) - { - parent::__construct($module_id); + /** + * @param string|null $module_id + */ + public function __construct(string $module_id = null) + { + parent::__construct($module_id); - $this->person = model(Person::class); - } + $this->person = model(Person::class); + } - /** - * @return void - */ - public function getIndex(): void - { - $data['table_headers'] = get_people_manage_table_headers(); + /** + * @return void + */ + public function getIndex(): void + { + $data['table_headers'] = get_people_manage_table_headers(); - echo view('people/manage', $data); - } + echo view('people/manage', $data); + } - /** - * Gives search suggestions based on what is being searched for - */ - public function getSuggest(): void - { - $search = $this->request->getGet('term'); - $suggestions = $this->person->get_search_suggestions($search); + /** + * Gives search suggestions based on what is being searched for + */ + public function getSuggest(): void + { + $search = $this->request->getGet('term'); + $suggestions = $this->person->get_search_suggestions($search); - echo json_encode($suggestions); - } + echo json_encode($suggestions); + } - /** - * Gets one row for a person manage table. This is called using AJAX to update one row. - */ - public function getRow(int $row_id): void - { - $data_row = get_person_data_row($this->person->get_info($row_id)); + /** + * Gets one row for a person manage table. This is called using AJAX to update one row. + */ + public function getRow(int $row_id): void + { + $data_row = get_person_data_row($this->person->get_info($row_id)); - echo json_encode($data_row); - } + echo json_encode($data_row); + } - /** - * Capitalize segments of a name, and put the rest into lower case. - * You can pass the characters you want to use as delimiters as exceptions. - * The function supports UTF-8 strings - * - * Example: - * i.e. - * - * returns John O'Grady-Smith - */ - protected function nameize(string $input): string - { - $adjusted_name = str_name_case($input); + /** + * Capitalize segments of a name, and put the rest into lower case. + * You can pass the characters you want to use as delimiters as exceptions. + * The function supports UTF-8 strings + * + * Example: + * i.e. + * + * returns John O'Grady-Smith + */ + protected function nameize(string $input): string + { + $adjusted_name = str_name_case($input); - //TODO:Use preg_replace to match HTML entities and convert them to lowercase. This is a workaround for https://github.com/tamtamchik/namecase/issues/20 - return preg_replace_callback('/&[a-zA-Z0-9#]+;/', function($matches) { return strtolower($matches[0]); }, $adjusted_name); - } + //TODO:Use preg_replace to match HTML entities and convert them to lowercase. This is a workaround for https://github.com/tamtamchik/namecase/issues/20 + return preg_replace_callback('/&[a-zA-Z0-9#]+;/', function($matches) { return strtolower($matches[0]); }, $adjusted_name); + } } diff --git a/app/Controllers/Receivings.php b/app/Controllers/Receivings.php index fe22af56c..78c5507c8 100644 --- a/app/Controllers/Receivings.php +++ b/app/Controllers/Receivings.php @@ -17,545 +17,545 @@ use ReflectionException; class Receivings extends Secure_Controller { - private Receiving_lib $receiving_lib; - private Token_lib $token_lib; - private Barcode_lib $barcode_lib; - private Inventory $inventory; - private Item $item; - private Item_kit $item_kit; - private Receiving $receiving; - private Stock_location $stock_location; - private Supplier $supplier; - private array $config; - - public function __construct() - { - parent::__construct('receivings'); - - $this->receiving_lib = new Receiving_lib(); - $this->token_lib = new Token_lib(); - $this->barcode_lib = new Barcode_lib(); - - $this->inventory = model(Inventory::class); - $this->item_kit = model(Item_kit::class); - $this->item = model(Item::class); - $this->receiving = model(Receiving::class); - $this->stock_location = model(Stock_location::class); - $this->supplier = model(Supplier::class); - $this->config = config(OSPOS::class)->settings; - } - - /** - * @return void - */ - public function getIndex(): void - { - $this->_reload(); - } - - /** - * Returns search suggestions for an item. Used in app/Views/sales/register.php - * - * @return void - * @noinspection PhpUnused - */ - public function getItemSearch(): void - { - $search = $this->request->getGet('term'); - $suggestions = $this->item->get_search_suggestions($search, ['search_custom' => false, 'is_deleted' => false], true); - $suggestions = array_merge($suggestions, $this->item_kit->get_search_suggestions($search)); - - echo json_encode($suggestions); - } - - /** - * Gets search suggestions for a stock item. Used in app/Views/receivings/receiving.php - * - * @return void - * @noinspection PhpUnused - */ - public function getStockItemSearch(): void - { - $search = $this->request->getGet('term'); - $suggestions = $this->item->get_stock_search_suggestions($search, ['search_custom' => false, 'is_deleted' => false], true); - $suggestions = array_merge($suggestions, $this->item_kit->get_search_suggestions($search)); - - echo json_encode($suggestions); - } - - /** - * Set supplier if it exists in the database. Used in app/Views/receivings/receiving.php - * - * @return void - * @noinspection PhpUnused - */ - public function postSelectSupplier(): void - { - $supplier_id = $this->request->getPost('supplier', FILTER_SANITIZE_NUMBER_INT); - if($this->supplier->exists($supplier_id)) - { - $this->receiving_lib->set_supplier($supplier_id); - } - - $this->_reload(); //TODO: Hungarian notation - } - - /** - * Change receiving mode for current receiving. Used in app/Views/receivings/receiving.php - * - * @return void - * @noinspection PhpUnused - */ - public function postChangeMode(): void - { - $stock_destination = $this->request->getPost('stock_destination', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $stock_source = $this->request->getPost('stock_source', FILTER_SANITIZE_NUMBER_INT); - - if((!$stock_source || $stock_source == $this->receiving_lib->get_stock_source()) && - (!$stock_destination || $stock_destination == $this->receiving_lib->get_stock_destination())) - { - $this->receiving_lib->clear_reference(); - $mode = $this->request->getPost('mode', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $this->receiving_lib->set_mode($mode); - } - elseif($this->stock_location->is_allowed_location($stock_source, 'receivings')) - { - $this->receiving_lib->set_stock_source($stock_source); - $this->receiving_lib->set_stock_destination($stock_destination); - } - - $this->_reload(); //TODO: Hungarian notation - } - - /** - * Sets receiving comment. Used in app/Views/receivings/receiving.php - * - * @return void - * @noinspection PhpUnused - */ - public function postSetComment(): void - { - $this->receiving_lib->set_comment($this->request->getPost('comment', FILTER_SANITIZE_FULL_SPECIAL_CHARS)); - } - - /** - * Sets the print after sale flag for the receiving. Used in app/Views/receivings/receiving.php - * - * @return void - * @noinspection PhpUnused - */ - public function postSetPrintAfterSale(): void - { - $this->receiving_lib->set_print_after_sale($this->request->getPost('recv_print_after_sale') != null); - } - - /** - * Sets the reference number for the receiving. Used in app/Views/receivings/receiving.php - * - * @return void - * @noinspection PhpUnused - */ - public function postSetReference(): void - { - $this->receiving_lib->set_reference($this->request->getPost('recv_reference', FILTER_SANITIZE_FULL_SPECIAL_CHARS)); - } - - /** - * Add an item to the receiving. Used in app/Views/receivings/receiving.php - * - * @return void - * @noinspection PhpUnused - */ - public function postAdd(): void - { - $data = []; - - $mode = $this->receiving_lib->get_mode(); - $item_id_or_number_or_item_kit_or_receipt = (int)$this->request->getPost('item', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $this->token_lib->parse_barcode($quantity, $price, $item_id_or_number_or_item_kit_or_receipt); - $quantity = ($mode == 'receive' || $mode == 'requisition') ? $quantity : -$quantity; - $item_location = $this->receiving_lib->get_stock_source(); - $discount = $this->config['default_receivings_discount']; - $discount_type = $this->config['default_receivings_discount_type']; - - if($mode == 'return' && $this->receiving->is_valid_receipt($item_id_or_number_or_item_kit_or_receipt)) - { - $this->receiving_lib->return_entire_receiving($item_id_or_number_or_item_kit_or_receipt); - } - elseif($this->item_kit->is_valid_item_kit($item_id_or_number_or_item_kit_or_receipt)) - { - $this->receiving_lib->add_item_kit($item_id_or_number_or_item_kit_or_receipt, $item_location, $discount, $discount_type); - } - elseif(!$this->receiving_lib->add_item($item_id_or_number_or_item_kit_or_receipt, $quantity, $item_location, $discount, $discount_type)) - { - $data['error'] = lang('Receivings.unable_to_add_item'); - } - - $this->_reload($data); //TODO: Hungarian notation - } - - /** - * Edit line item in current receiving. Used in app/Views/receivings/receiving.php - * - * @param $item_id - * @return void - * @noinspection PhpUnused - */ - public function postEditItem($item_id): void - { - $data = []; - - $validation_rule = [ - 'price' => 'trim|required|decimal_locale', - 'quantity' => 'trim|required|decimal_locale', - 'discount' => 'trim|permit_empty|decimal_locale', - ]; - - $price = parse_decimals($this->request->getPost('price')); - $quantity = parse_quantity($this->request->getPost('quantity')); - $raw_receiving_quantity = parse_quantity($this->request->getPost('receiving_quantity')); - - $description = $this->request->getPost('description', FILTER_SANITIZE_FULL_SPECIAL_CHARS); //TODO: Duplicated code - $serialnumber = $this->request->getPost('serialnumber', FILTER_SANITIZE_FULL_SPECIAL_CHARS) ?? ''; - $discount_type = $this->request->getPost('discount_type', FILTER_SANITIZE_NUMBER_INT); - $discount = $discount_type - ? parse_quantity(filter_var($this->request->getPost('discount'), FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION)) - : parse_decimals(filter_var($this->request->getPost('discount'), FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION)); - - $receiving_quantity = filter_var($raw_receiving_quantity, FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION); - - if($this->validate($validation_rule)) - { - $this->receiving_lib->edit_item($item_id, $description, $serialnumber, $quantity, $discount, $discount_type, $price, $receiving_quantity); - } - else - { - $data['error']=lang('Receivings.error_editing_item'); - } - - $this->_reload($data); //TODO: Hungarian notation - } - - /** - * Edit a receiving. Used in app/Controllers/Receivings.php - * - * @param $receiving_id - * @return void - * @noinspection PhpUnused - */ - public function getEdit($receiving_id): void - { - $data = []; - - $data['suppliers'] = ['' => 'No Supplier']; - foreach($this->supplier->get_all()->getResult() as $supplier) - { - $data['suppliers'][$supplier->person_id] = $supplier->first_name . ' ' . $supplier->last_name; - } - - $data['employees'] = []; - foreach($this->employee->get_all()->getResult() as $employee) - { - $data['employees'][$employee->person_id] = $employee->first_name . ' '. $employee->last_name; - } - - $receiving_info = $this->receiving->get_info($receiving_id)->getRowArray(); - $data['selected_supplier_name'] = !empty($receiving_info['supplier_id']) ? $receiving_info['company_name'] : ''; - $data['selected_supplier_id'] = $receiving_info['supplier_id']; - $data['receiving_info'] = $receiving_info; - - echo view('receivings/form', $data); - } - - /** - * Deletes an item from the current receiving. Used in app/Views/receivings/receiving.php - * - * @param $item_number - * @return void - * @noinspection PhpUnused - */ - public function getDeleteItem($item_number): void - { - $this->receiving_lib->delete_item($item_number); - - $this->_reload(); //TODO: Hungarian notation - } - - /** - * @throws ReflectionException - */ - public function postDelete(int $receiving_id = -1, bool $update_inventory = true) : void - { - $employee_id = $this->employee->get_logged_in_employee_info()->person_id; - $receiving_ids = $receiving_id == -1 ? $this->request->getPost('ids', FILTER_SANITIZE_NUMBER_INT) : [$receiving_id]; //TODO: Replace -1 with constant - - if($this->receiving->delete_list($receiving_ids, $employee_id, $update_inventory)) //TODO: Likely need to surround this block of code in a try-catch to catch the ReflectionException - { - echo json_encode ([ - 'success' => true, - 'message' => lang('Receivings.successfully_deleted') . ' ' . count($receiving_ids) . ' ' . lang('Receivings.one_or_multiple'), - 'ids' => $receiving_ids]); - } - else - { - echo json_encode (['success' => false, 'message' => lang('Receivings.cannot_be_deleted')]); - } - } - - /** - * Removes a supplier from a receiving. Used in app/Views/receivings/receiving.php - * - * @return void - * @noinspection PhpUnused - */ - public function getRemoveSupplier(): void - { - $this->receiving_lib->clear_reference(); - $this->receiving_lib->remove_supplier(); - - $this->_reload(); //TODO: Hungarian notation - } - - /** - * Complete and finalize receiving. Used in app/Views/receivings/receiving.php - * - * @throws ReflectionException - * @noinspection PhpUnused - */ - public function postComplete(): void - { - - $data = []; - - $data['cart'] = $this->receiving_lib->get_cart(); - $data['total'] = $this->receiving_lib->get_total(); - $data['transaction_time'] = to_datetime(time()); - $data['mode'] = $this->receiving_lib->get_mode(); - $data['comment'] = $this->receiving_lib->get_comment(); - $data['reference'] = $this->receiving_lib->get_reference(); - $data['payment_type'] = $this->request->getPost('payment_type', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $data['show_stock_locations'] = $this->stock_location->show_locations('receivings'); - $data['stock_location'] = $this->receiving_lib->get_stock_source(); - if($this->request->getPost('amount_tendered') != null) - { - $data['amount_tendered'] = parse_decimals($this->request->getPost('amount_tendered')); - $data['amount_change'] = to_currency($data['amount_tendered'] - $data['total']); - } - - $employee_id = $this->employee->get_logged_in_employee_info()->person_id; - $employee_info = $this->employee->get_info($employee_id); - $data['employee'] = $employee_info->first_name . ' ' . $employee_info->last_name; - - $supplier_id = $this->receiving_lib->get_supplier(); - if($supplier_id != -1) - { - $supplier_info = $this->supplier->get_info($supplier_id); - $data['supplier'] = $supplier_info->company_name; //TODO: duplicated code - $data['first_name'] = $supplier_info->first_name; - $data['last_name'] = $supplier_info->last_name; - $data['supplier_email'] = $supplier_info->email; - $data['supplier_address'] = $supplier_info->address_1; - if(!empty($supplier_info->zip) or !empty($supplier_info->city)) - { - $data['supplier_location'] = $supplier_info->zip . ' ' . $supplier_info->city; - } - else - { - $data['supplier_location'] = ''; - } - } - - //SAVE receiving to database - $data['receiving_id'] = 'RECV ' . $this->receiving->save_value($data['cart'], $supplier_id, $employee_id, $data['comment'], $data['reference'], $data['payment_type'], $data['stock_location']); - - if($data['receiving_id'] == 'RECV -1') - { - $data['error_message'] = lang('Receivings.transaction_failed'); - } - else - { - $data['barcode'] = $this->barcode_lib->generate_receipt_barcode($data['receiving_id']); - } - - $data['print_after_sale'] = $this->receiving_lib->is_print_after_sale(); - - echo view("receivings/receipt",$data); - - $this->receiving_lib->clear_all(); - } - - /** - * Complete a receiving requisition. Used in app/Views/receivings/receiving.php. - * - * @throws ReflectionException - * @noinspection PhpUnused - */ - public function postRequisitionComplete(): void - { - if($this->receiving_lib->get_stock_source() != $this->receiving_lib->get_stock_destination()) - { - foreach($this->receiving_lib->get_cart() as $item) - { - $this->receiving_lib->delete_item($item['line']); - $this->receiving_lib->add_item($item['item_id'], $item['quantity'], $this->receiving_lib->get_stock_destination(), $item['discount_type']); - $this->receiving_lib->add_item($item['item_id'], -$item['quantity'], $this->receiving_lib->get_stock_source(), $item['discount_type']); - } - - $this->postComplete(); - } - else - { - $data['error'] = lang('Receivings.error_requisition'); - - $this->_reload($data); //TODO: Hungarian notation - } - } - - /** - * Gets the receipt for a receiving. Used in app/Views/receivings/form.php - * - * @param $receiving_id - * @return void - * @noinspection PhpUnused - */ - public function getReceipt($receiving_id): void - { - $receiving_info = $this->receiving->get_info($receiving_id)->getRowArray(); - $this->receiving_lib->copy_entire_receiving($receiving_id); - $data['cart'] = $this->receiving_lib->get_cart(); - $data['total'] = $this->receiving_lib->get_total(); - $data['mode'] = $this->receiving_lib->get_mode(); - $data['transaction_time'] = to_datetime(strtotime($receiving_info['receiving_time'])); - $data['show_stock_locations'] = $this->stock_location->show_locations('receivings'); - $data['payment_type'] = $receiving_info['payment_type']; - $data['reference'] = $this->receiving_lib->get_reference(); - $data['receiving_id'] = 'RECV ' . $receiving_id; - $data['barcode'] = $this->barcode_lib->generate_receipt_barcode($data['receiving_id']); - $employee_info = $this->employee->get_info($receiving_info['employee_id']); - $data['employee'] = $employee_info->first_name . ' ' . $employee_info->last_name; - - $supplier_id = $this->receiving_lib->get_supplier(); //TODO: Duplicated code - if($supplier_id != -1) - { - $supplier_info = $this->supplier->get_info($supplier_id); - $data['supplier'] = $supplier_info->company_name; - $data['first_name'] = $supplier_info->first_name; - $data['last_name'] = $supplier_info->last_name; - $data['supplier_email'] = $supplier_info->email; - $data['supplier_address'] = $supplier_info->address_1; - if(!empty($supplier_info->zip) or !empty($supplier_info->city)) - { - $data['supplier_location'] = $supplier_info->zip . ' ' . $supplier_info->city; - } - else - { - $data['supplier_location'] = ''; - } - } - - $data['print_after_sale'] = false; - - echo view("receivings/receipt", $data); - - $this->receiving_lib->clear_all(); - } - - /** - * @param array $data - * @return void - */ - private function _reload(array $data = []): void //TODO: Hungarian notation - { - $data['cart'] = $this->receiving_lib->get_cart(); - $data['modes'] = ['receive' => lang('Receivings.receiving'), 'return' => lang('Receivings.return')]; - $data['mode'] = $this->receiving_lib->get_mode(); - $data['stock_locations'] = $this->stock_location->get_allowed_locations('receivings'); - $data['show_stock_locations'] = count($data['stock_locations']) > 1; - if($data['show_stock_locations']) - { - $data['modes']['requisition'] = lang('Receivings.requisition'); - $data['stock_source'] = $this->receiving_lib->get_stock_source(); - $data['stock_destination'] = $this->receiving_lib->get_stock_destination(); - } - - $data['total'] = $this->receiving_lib->get_total(); - $data['items_module_allowed'] = $this->employee->has_grant('items', $this->employee->get_logged_in_employee_info()->person_id); - $data['comment'] = $this->receiving_lib->get_comment(); - $data['reference'] = $this->receiving_lib->get_reference(); - $data['payment_options'] = $this->receiving->get_payment_options(); - - $supplier_id = $this->receiving_lib->get_supplier(); - - if($supplier_id != -1) //TODO: Duplicated Code... replace -1 with a constant - { - $supplier_info = $this->supplier->get_info($supplier_id); - $data['supplier'] = $supplier_info->company_name; - $data['first_name'] = $supplier_info->first_name; - $data['last_name'] = $supplier_info->last_name; - $data['supplier_email'] = $supplier_info->email; - $data['supplier_address'] = $supplier_info->address_1; - if(!empty($supplier_info->zip) or !empty($supplier_info->city)) - { - $data['supplier_location'] = $supplier_info->zip . ' ' . $supplier_info->city; - } - else - { - $data['supplier_location'] = ''; - } - } - - $data['print_after_sale'] = $this->receiving_lib->is_print_after_sale(); - - echo view("receivings/receiving", $data); - } - - /** - * @throws ReflectionException - */ - public function save(int $receiving_id = -1): void //TODO: Replace -1 with a constant - { - $newdate = $this->request->getPost('date', FILTER_SANITIZE_FULL_SPECIAL_CHARS); //TODO: newdate does not follow naming conventions - - $date_formatter = date_create_from_format($this->config['dateformat'] . ' ' . $this->config['timeformat'], $newdate); - $receiving_time = $date_formatter->format('Y-m-d H:i:s'); - - $receiving_data = [ - 'receiving_time' => $receiving_time, - 'supplier_id' => $this->request->getPost('supplier_id') ? $this->request->getPost('supplier_id', FILTER_SANITIZE_NUMBER_INT) : null, - 'employee_id' => $this->request->getPost('employee_id', FILTER_SANITIZE_NUMBER_INT), - 'comment' => $this->request->getPost('comment', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'reference' => $this->request->getPost('reference') != '' ? $this->request->getPost('reference', FILTER_SANITIZE_FULL_SPECIAL_CHARS) : null - ]; - - $this->inventory->update('RECV '.$receiving_id, ['trans_date' => $receiving_time]); - if($this->receiving->update($receiving_id, $receiving_data)) - { - echo json_encode ([ - 'success' => true, - 'message' => lang('Receivings.successfully_updated'), - 'id' => $receiving_id - ]); - } - else - { - echo json_encode ([ - 'success' => false, - 'message' => lang('Receivings.unsuccessfully_updated'), - 'id' => $receiving_id - ]); - } - } - - /** - * Cancel an in-process receiving. Used in app/Views/receivings/receiving.php - * - * @return void - * @noinspection PhpUnused - */ - public function postCancelReceiving(): void - { - $this->receiving_lib->clear_all(); - - $this->_reload(); //TODO: Hungarian Notation - } + private Receiving_lib $receiving_lib; + private Token_lib $token_lib; + private Barcode_lib $barcode_lib; + private Inventory $inventory; + private Item $item; + private Item_kit $item_kit; + private Receiving $receiving; + private Stock_location $stock_location; + private Supplier $supplier; + private array $config; + + public function __construct() + { + parent::__construct('receivings'); + + $this->receiving_lib = new Receiving_lib(); + $this->token_lib = new Token_lib(); + $this->barcode_lib = new Barcode_lib(); + + $this->inventory = model(Inventory::class); + $this->item_kit = model(Item_kit::class); + $this->item = model(Item::class); + $this->receiving = model(Receiving::class); + $this->stock_location = model(Stock_location::class); + $this->supplier = model(Supplier::class); + $this->config = config(OSPOS::class)->settings; + } + + /** + * @return void + */ + public function getIndex(): void + { + $this->_reload(); + } + + /** + * Returns search suggestions for an item. Used in app/Views/sales/register.php + * + * @return void + * @noinspection PhpUnused + */ + public function getItemSearch(): void + { + $search = $this->request->getGet('term'); + $suggestions = $this->item->get_search_suggestions($search, ['search_custom' => false, 'is_deleted' => false], true); + $suggestions = array_merge($suggestions, $this->item_kit->get_search_suggestions($search)); + + echo json_encode($suggestions); + } + + /** + * Gets search suggestions for a stock item. Used in app/Views/receivings/receiving.php + * + * @return void + * @noinspection PhpUnused + */ + public function getStockItemSearch(): void + { + $search = $this->request->getGet('term'); + $suggestions = $this->item->get_stock_search_suggestions($search, ['search_custom' => false, 'is_deleted' => false], true); + $suggestions = array_merge($suggestions, $this->item_kit->get_search_suggestions($search)); + + echo json_encode($suggestions); + } + + /** + * Set supplier if it exists in the database. Used in app/Views/receivings/receiving.php + * + * @return void + * @noinspection PhpUnused + */ + public function postSelectSupplier(): void + { + $supplier_id = $this->request->getPost('supplier', FILTER_SANITIZE_NUMBER_INT); + if($this->supplier->exists($supplier_id)) + { + $this->receiving_lib->set_supplier($supplier_id); + } + + $this->_reload(); //TODO: Hungarian notation + } + + /** + * Change receiving mode for current receiving. Used in app/Views/receivings/receiving.php + * + * @return void + * @noinspection PhpUnused + */ + public function postChangeMode(): void + { + $stock_destination = $this->request->getPost('stock_destination', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + $stock_source = $this->request->getPost('stock_source', FILTER_SANITIZE_NUMBER_INT); + + if((!$stock_source || $stock_source == $this->receiving_lib->get_stock_source()) && + (!$stock_destination || $stock_destination == $this->receiving_lib->get_stock_destination())) + { + $this->receiving_lib->clear_reference(); + $mode = $this->request->getPost('mode', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + $this->receiving_lib->set_mode($mode); + } + elseif($this->stock_location->is_allowed_location($stock_source, 'receivings')) + { + $this->receiving_lib->set_stock_source($stock_source); + $this->receiving_lib->set_stock_destination($stock_destination); + } + + $this->_reload(); //TODO: Hungarian notation + } + + /** + * Sets receiving comment. Used in app/Views/receivings/receiving.php + * + * @return void + * @noinspection PhpUnused + */ + public function postSetComment(): void + { + $this->receiving_lib->set_comment($this->request->getPost('comment', FILTER_SANITIZE_FULL_SPECIAL_CHARS)); + } + + /** + * Sets the print after sale flag for the receiving. Used in app/Views/receivings/receiving.php + * + * @return void + * @noinspection PhpUnused + */ + public function postSetPrintAfterSale(): void + { + $this->receiving_lib->set_print_after_sale($this->request->getPost('recv_print_after_sale') != null); + } + + /** + * Sets the reference number for the receiving. Used in app/Views/receivings/receiving.php + * + * @return void + * @noinspection PhpUnused + */ + public function postSetReference(): void + { + $this->receiving_lib->set_reference($this->request->getPost('recv_reference', FILTER_SANITIZE_FULL_SPECIAL_CHARS)); + } + + /** + * Add an item to the receiving. Used in app/Views/receivings/receiving.php + * + * @return void + * @noinspection PhpUnused + */ + public function postAdd(): void + { + $data = []; + + $mode = $this->receiving_lib->get_mode(); + $item_id_or_number_or_item_kit_or_receipt = (int)$this->request->getPost('item', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + $this->token_lib->parse_barcode($quantity, $price, $item_id_or_number_or_item_kit_or_receipt); + $quantity = ($mode == 'receive' || $mode == 'requisition') ? $quantity : -$quantity; + $item_location = $this->receiving_lib->get_stock_source(); + $discount = $this->config['default_receivings_discount']; + $discount_type = $this->config['default_receivings_discount_type']; + + if($mode == 'return' && $this->receiving->is_valid_receipt($item_id_or_number_or_item_kit_or_receipt)) + { + $this->receiving_lib->return_entire_receiving($item_id_or_number_or_item_kit_or_receipt); + } + elseif($this->item_kit->is_valid_item_kit($item_id_or_number_or_item_kit_or_receipt)) + { + $this->receiving_lib->add_item_kit($item_id_or_number_or_item_kit_or_receipt, $item_location, $discount, $discount_type); + } + elseif(!$this->receiving_lib->add_item($item_id_or_number_or_item_kit_or_receipt, $quantity, $item_location, $discount, $discount_type)) + { + $data['error'] = lang('Receivings.unable_to_add_item'); + } + + $this->_reload($data); //TODO: Hungarian notation + } + + /** + * Edit line item in current receiving. Used in app/Views/receivings/receiving.php + * + * @param $item_id + * @return void + * @noinspection PhpUnused + */ + public function postEditItem($item_id): void + { + $data = []; + + $validation_rule = [ + 'price' => 'trim|required|decimal_locale', + 'quantity' => 'trim|required|decimal_locale', + 'discount' => 'trim|permit_empty|decimal_locale', + ]; + + $price = parse_decimals($this->request->getPost('price')); + $quantity = parse_quantity($this->request->getPost('quantity')); + $raw_receiving_quantity = parse_quantity($this->request->getPost('receiving_quantity')); + + $description = $this->request->getPost('description', FILTER_SANITIZE_FULL_SPECIAL_CHARS); //TODO: Duplicated code + $serialnumber = $this->request->getPost('serialnumber', FILTER_SANITIZE_FULL_SPECIAL_CHARS) ?? ''; + $discount_type = $this->request->getPost('discount_type', FILTER_SANITIZE_NUMBER_INT); + $discount = $discount_type + ? parse_quantity(filter_var($this->request->getPost('discount'), FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION)) + : parse_decimals(filter_var($this->request->getPost('discount'), FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION)); + + $receiving_quantity = filter_var($raw_receiving_quantity, FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION); + + if($this->validate($validation_rule)) + { + $this->receiving_lib->edit_item($item_id, $description, $serialnumber, $quantity, $discount, $discount_type, $price, $receiving_quantity); + } + else + { + $data['error']=lang('Receivings.error_editing_item'); + } + + $this->_reload($data); //TODO: Hungarian notation + } + + /** + * Edit a receiving. Used in app/Controllers/Receivings.php + * + * @param $receiving_id + * @return void + * @noinspection PhpUnused + */ + public function getEdit($receiving_id): void + { + $data = []; + + $data['suppliers'] = ['' => 'No Supplier']; + foreach($this->supplier->get_all()->getResult() as $supplier) + { + $data['suppliers'][$supplier->person_id] = $supplier->first_name . ' ' . $supplier->last_name; + } + + $data['employees'] = []; + foreach($this->employee->get_all()->getResult() as $employee) + { + $data['employees'][$employee->person_id] = $employee->first_name . ' '. $employee->last_name; + } + + $receiving_info = $this->receiving->get_info($receiving_id)->getRowArray(); + $data['selected_supplier_name'] = !empty($receiving_info['supplier_id']) ? $receiving_info['company_name'] : ''; + $data['selected_supplier_id'] = $receiving_info['supplier_id']; + $data['receiving_info'] = $receiving_info; + + echo view('receivings/form', $data); + } + + /** + * Deletes an item from the current receiving. Used in app/Views/receivings/receiving.php + * + * @param $item_number + * @return void + * @noinspection PhpUnused + */ + public function getDeleteItem($item_number): void + { + $this->receiving_lib->delete_item($item_number); + + $this->_reload(); //TODO: Hungarian notation + } + + /** + * @throws ReflectionException + */ + public function postDelete(int $receiving_id = -1, bool $update_inventory = true) : void + { + $employee_id = $this->employee->get_logged_in_employee_info()->person_id; + $receiving_ids = $receiving_id == -1 ? $this->request->getPost('ids', FILTER_SANITIZE_NUMBER_INT) : [$receiving_id]; //TODO: Replace -1 with constant + + if($this->receiving->delete_list($receiving_ids, $employee_id, $update_inventory)) //TODO: Likely need to surround this block of code in a try-catch to catch the ReflectionException + { + echo json_encode ([ + 'success' => true, + 'message' => lang('Receivings.successfully_deleted') . ' ' . count($receiving_ids) . ' ' . lang('Receivings.one_or_multiple'), + 'ids' => $receiving_ids]); + } + else + { + echo json_encode (['success' => false, 'message' => lang('Receivings.cannot_be_deleted')]); + } + } + + /** + * Removes a supplier from a receiving. Used in app/Views/receivings/receiving.php + * + * @return void + * @noinspection PhpUnused + */ + public function getRemoveSupplier(): void + { + $this->receiving_lib->clear_reference(); + $this->receiving_lib->remove_supplier(); + + $this->_reload(); //TODO: Hungarian notation + } + + /** + * Complete and finalize receiving. Used in app/Views/receivings/receiving.php + * + * @throws ReflectionException + * @noinspection PhpUnused + */ + public function postComplete(): void + { + + $data = []; + + $data['cart'] = $this->receiving_lib->get_cart(); + $data['total'] = $this->receiving_lib->get_total(); + $data['transaction_time'] = to_datetime(time()); + $data['mode'] = $this->receiving_lib->get_mode(); + $data['comment'] = $this->receiving_lib->get_comment(); + $data['reference'] = $this->receiving_lib->get_reference(); + $data['payment_type'] = $this->request->getPost('payment_type', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + $data['show_stock_locations'] = $this->stock_location->show_locations('receivings'); + $data['stock_location'] = $this->receiving_lib->get_stock_source(); + if($this->request->getPost('amount_tendered') != null) + { + $data['amount_tendered'] = parse_decimals($this->request->getPost('amount_tendered')); + $data['amount_change'] = to_currency($data['amount_tendered'] - $data['total']); + } + + $employee_id = $this->employee->get_logged_in_employee_info()->person_id; + $employee_info = $this->employee->get_info($employee_id); + $data['employee'] = $employee_info->first_name . ' ' . $employee_info->last_name; + + $supplier_id = $this->receiving_lib->get_supplier(); + if($supplier_id != -1) + { + $supplier_info = $this->supplier->get_info($supplier_id); + $data['supplier'] = $supplier_info->company_name; //TODO: duplicated code + $data['first_name'] = $supplier_info->first_name; + $data['last_name'] = $supplier_info->last_name; + $data['supplier_email'] = $supplier_info->email; + $data['supplier_address'] = $supplier_info->address_1; + if(!empty($supplier_info->zip) or !empty($supplier_info->city)) + { + $data['supplier_location'] = $supplier_info->zip . ' ' . $supplier_info->city; + } + else + { + $data['supplier_location'] = ''; + } + } + + //SAVE receiving to database + $data['receiving_id'] = 'RECV ' . $this->receiving->save_value($data['cart'], $supplier_id, $employee_id, $data['comment'], $data['reference'], $data['payment_type'], $data['stock_location']); + + if($data['receiving_id'] == 'RECV -1') + { + $data['error_message'] = lang('Receivings.transaction_failed'); + } + else + { + $data['barcode'] = $this->barcode_lib->generate_receipt_barcode($data['receiving_id']); + } + + $data['print_after_sale'] = $this->receiving_lib->is_print_after_sale(); + + echo view("receivings/receipt",$data); + + $this->receiving_lib->clear_all(); + } + + /** + * Complete a receiving requisition. Used in app/Views/receivings/receiving.php. + * + * @throws ReflectionException + * @noinspection PhpUnused + */ + public function postRequisitionComplete(): void + { + if($this->receiving_lib->get_stock_source() != $this->receiving_lib->get_stock_destination()) + { + foreach($this->receiving_lib->get_cart() as $item) + { + $this->receiving_lib->delete_item($item['line']); + $this->receiving_lib->add_item($item['item_id'], $item['quantity'], $this->receiving_lib->get_stock_destination(), $item['discount_type']); + $this->receiving_lib->add_item($item['item_id'], -$item['quantity'], $this->receiving_lib->get_stock_source(), $item['discount_type']); + } + + $this->postComplete(); + } + else + { + $data['error'] = lang('Receivings.error_requisition'); + + $this->_reload($data); //TODO: Hungarian notation + } + } + + /** + * Gets the receipt for a receiving. Used in app/Views/receivings/form.php + * + * @param $receiving_id + * @return void + * @noinspection PhpUnused + */ + public function getReceipt($receiving_id): void + { + $receiving_info = $this->receiving->get_info($receiving_id)->getRowArray(); + $this->receiving_lib->copy_entire_receiving($receiving_id); + $data['cart'] = $this->receiving_lib->get_cart(); + $data['total'] = $this->receiving_lib->get_total(); + $data['mode'] = $this->receiving_lib->get_mode(); + $data['transaction_time'] = to_datetime(strtotime($receiving_info['receiving_time'])); + $data['show_stock_locations'] = $this->stock_location->show_locations('receivings'); + $data['payment_type'] = $receiving_info['payment_type']; + $data['reference'] = $this->receiving_lib->get_reference(); + $data['receiving_id'] = 'RECV ' . $receiving_id; + $data['barcode'] = $this->barcode_lib->generate_receipt_barcode($data['receiving_id']); + $employee_info = $this->employee->get_info($receiving_info['employee_id']); + $data['employee'] = $employee_info->first_name . ' ' . $employee_info->last_name; + + $supplier_id = $this->receiving_lib->get_supplier(); //TODO: Duplicated code + if($supplier_id != -1) + { + $supplier_info = $this->supplier->get_info($supplier_id); + $data['supplier'] = $supplier_info->company_name; + $data['first_name'] = $supplier_info->first_name; + $data['last_name'] = $supplier_info->last_name; + $data['supplier_email'] = $supplier_info->email; + $data['supplier_address'] = $supplier_info->address_1; + if(!empty($supplier_info->zip) or !empty($supplier_info->city)) + { + $data['supplier_location'] = $supplier_info->zip . ' ' . $supplier_info->city; + } + else + { + $data['supplier_location'] = ''; + } + } + + $data['print_after_sale'] = false; + + echo view("receivings/receipt", $data); + + $this->receiving_lib->clear_all(); + } + + /** + * @param array $data + * @return void + */ + private function _reload(array $data = []): void //TODO: Hungarian notation + { + $data['cart'] = $this->receiving_lib->get_cart(); + $data['modes'] = ['receive' => lang('Receivings.receiving'), 'return' => lang('Receivings.return')]; + $data['mode'] = $this->receiving_lib->get_mode(); + $data['stock_locations'] = $this->stock_location->get_allowed_locations('receivings'); + $data['show_stock_locations'] = count($data['stock_locations']) > 1; + if($data['show_stock_locations']) + { + $data['modes']['requisition'] = lang('Receivings.requisition'); + $data['stock_source'] = $this->receiving_lib->get_stock_source(); + $data['stock_destination'] = $this->receiving_lib->get_stock_destination(); + } + + $data['total'] = $this->receiving_lib->get_total(); + $data['items_module_allowed'] = $this->employee->has_grant('items', $this->employee->get_logged_in_employee_info()->person_id); + $data['comment'] = $this->receiving_lib->get_comment(); + $data['reference'] = $this->receiving_lib->get_reference(); + $data['payment_options'] = $this->receiving->get_payment_options(); + + $supplier_id = $this->receiving_lib->get_supplier(); + + if($supplier_id != -1) //TODO: Duplicated Code... replace -1 with a constant + { + $supplier_info = $this->supplier->get_info($supplier_id); + $data['supplier'] = $supplier_info->company_name; + $data['first_name'] = $supplier_info->first_name; + $data['last_name'] = $supplier_info->last_name; + $data['supplier_email'] = $supplier_info->email; + $data['supplier_address'] = $supplier_info->address_1; + if(!empty($supplier_info->zip) or !empty($supplier_info->city)) + { + $data['supplier_location'] = $supplier_info->zip . ' ' . $supplier_info->city; + } + else + { + $data['supplier_location'] = ''; + } + } + + $data['print_after_sale'] = $this->receiving_lib->is_print_after_sale(); + + echo view("receivings/receiving", $data); + } + + /** + * @throws ReflectionException + */ + public function save(int $receiving_id = -1): void //TODO: Replace -1 with a constant + { + $newdate = $this->request->getPost('date', FILTER_SANITIZE_FULL_SPECIAL_CHARS); //TODO: newdate does not follow naming conventions + + $date_formatter = date_create_from_format($this->config['dateformat'] . ' ' . $this->config['timeformat'], $newdate); + $receiving_time = $date_formatter->format('Y-m-d H:i:s'); + + $receiving_data = [ + 'receiving_time' => $receiving_time, + 'supplier_id' => $this->request->getPost('supplier_id') ? $this->request->getPost('supplier_id', FILTER_SANITIZE_NUMBER_INT) : null, + 'employee_id' => $this->request->getPost('employee_id', FILTER_SANITIZE_NUMBER_INT), + 'comment' => $this->request->getPost('comment', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'reference' => $this->request->getPost('reference') != '' ? $this->request->getPost('reference', FILTER_SANITIZE_FULL_SPECIAL_CHARS) : null + ]; + + $this->inventory->update('RECV '.$receiving_id, ['trans_date' => $receiving_time]); + if($this->receiving->update($receiving_id, $receiving_data)) + { + echo json_encode ([ + 'success' => true, + 'message' => lang('Receivings.successfully_updated'), + 'id' => $receiving_id + ]); + } + else + { + echo json_encode ([ + 'success' => false, + 'message' => lang('Receivings.unsuccessfully_updated'), + 'id' => $receiving_id + ]); + } + } + + /** + * Cancel an in-process receiving. Used in app/Views/receivings/receiving.php + * + * @return void + * @noinspection PhpUnused + */ + public function postCancelReceiving(): void + { + $this->receiving_lib->clear_all(); + + $this->_reload(); //TODO: Hungarian Notation + } } diff --git a/app/Controllers/Reports.php b/app/Controllers/Reports.php index 052a9662a..cb576b18f 100644 --- a/app/Controllers/Reports.php +++ b/app/Controllers/Reports.php @@ -30,2166 +30,2166 @@ use Config\Services; class Reports extends Secure_Controller { - private Attribute $attribute; - private array $config; - private Customer $customer; - private Stock_location $stock_location; - private Summary_sales $summary_sales; - private Summary_sales_taxes $summary_sales_taxes; - private Summary_categories $summary_categories; - private Summary_expenses_categories $summary_expenses_categories; - private Summary_customers $summary_customers; - private Summary_items $summary_items; - private Summary_suppliers $summary_suppliers; - private Summary_employees $summary_employees; - private Summary_taxes $summary_taxes; - private Summary_discounts $summary_discounts; - private Summary_payments $summary_payments; - private Detailed_sales $detailed_sales; - private Supplier $supplier; - private Detailed_receivings $detailed_receivings; - private Inventory_summary $inventory_summary; - - public function __construct() - { - parent::__construct('reports'); - $request = Services::request(); - $method_name = $request->getUri()->getSegment(2); - $exploder = explode('_', $method_name); - - $this->attribute = config(Attribute::class); - $this->config = config(OSPOS::class)->settings; - $this->customer = model(Customer::class); - $this->stock_location = model(Stock_location::class); - $this->summary_sales = model(Summary_sales::class); - $this->summary_sales_taxes = model(Summary_sales_taxes::class); - $this->summary_categories = model(Summary_categories::class); - $this->summary_expenses_categories = model(Summary_expenses_categories::class); - $this->summary_customers = model(Summary_customers::class); - $this->summary_items = model(Summary_items::class); - $this->summary_suppliers = model(Summary_suppliers::class); - $this->summary_employees = model(Summary_employees::class); - $this->summary_taxes = model(Summary_taxes::class); - $this->summary_discounts = model(Summary_discounts::class); - $this->summary_payments = model(Summary_payments::class); - $this->detailed_sales = model(Detailed_sales::class); - $this->supplier = model(Supplier::class); - $this->detailed_receivings = model(Detailed_receivings::class); - $this->inventory_summary = model(Inventory_summary::class); - - if(sizeof($exploder) > 1) - { - preg_match('/(?:inventory)|([^_.]*)(?:_graph|_row)?$/', $method_name, $matches); - preg_match('/^(.*?)([sy])?$/', array_pop($matches), $matches); - $submodule_id = $matches[1] . ((count($matches) > 2) ? $matches[2] : 's'); - - // check access to report submodule - if(!$this->employee->has_grant('reports_' . $submodule_id, $this->employee->get_logged_in_employee_info()->person_id)) - { - redirect('no_access/reports/reports_' . $submodule_id); - } - } - - helper('report'); - } - - /** - * @return void - */ - public function index(): void - { - $this->getIndex(); - } - - /** - * Initial Report listing screen - */ - public function getIndex(): void - { - $person_id = $this->session->get('person_id'); - $grants = $this->employee->get_employee_grants($this->session->get('person_id')); - $permissions_ids = array_column($grants, 'permission_id'); - - $data = [ - 'person_id' => $person_id, - 'grants' => $grants, - 'permission_ids' => $permissions_ids, - ]; - - echo view('reports/listing', $data); - } - - /** - * Summary Sales Report. - * @param string $start_date - * @param string $end_date - * @param string $sale_type - * @param string $location_id - * @return void - */ - public function summary_sales(string $start_date, string $end_date, string $sale_type, string $location_id = 'all'): void //TODO: Perhaps these need to be passed as an array? Too many parameters in the signature. - {//TODO: Duplicated code - $this->clearCache(); - - $inputs = [ - 'start_date' => $start_date, - 'end_date' => $end_date, - 'sale_type' => $sale_type, - 'location_id' => $location_id - ]; - - $report_data = $this->summary_sales->getData($inputs); - $summary = $this->summary_sales->getSummaryData($inputs); - - $tabular_data = []; - foreach($report_data as $row) - { - $tabular_data[] = [ - 'sale_date' => to_date(strtotime($row['sale_date'])), - 'sales' => to_quantity_decimals($row['sales']), - 'quantity' => to_quantity_decimals($row['quantity_purchased']), - 'subtotal' => to_currency($row['subtotal']), - 'tax' => to_currency_tax($row['tax']), - 'total' => to_currency($row['total']), - 'cost' => to_currency($row['cost']), - 'profit' => to_currency($row['profit']) - ]; - } - - $data = [ - 'title' => lang('Reports.sales_summary_report'), - 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), - 'headers' => $this->summary_sales->getDataColumns(), - 'data' => $tabular_data, - 'summary_data' => $summary - ]; - - echo view('reports/tabular', $data); - } - - /** - * Summary Categories report. - * @param string $start_date - * @param string $end_date - * @param string $sale_type - * @param string $location_id - * @return void - */ - public function summary_categories(string $start_date, string $end_date, string $sale_type, string $location_id = 'all'): void - {//TODO: Duplicated code - $this->clearCache(); - - $inputs = [ - 'start_date' => $start_date, - 'end_date' => $end_date, - 'sale_type' => $sale_type, - 'location_id' => $location_id - ]; - - $report_data = $this->summary_categories->getData($inputs); - $summary = $this->summary_categories->getSummaryData($inputs); - - $tabular_data = []; - foreach($report_data as $row) - { - $tabular_data[] = [ - 'category' => $row['category'], - 'quantity' => to_quantity_decimals($row['quantity_purchased']), - 'subtotal' => to_currency($row['subtotal']), - 'tax' => to_currency_tax($row['tax']), - 'total' => to_currency($row['total']), - 'cost' => to_currency($row['cost']), - 'profit' => to_currency($row['profit']) - ]; - } - - $data = [ - 'title' => lang('Reports.categories_summary_report'), - 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), - 'headers' => $this->summary_categories->getDataColumns(), - 'data' => $tabular_data, - 'summary_data' => $summary - ]; - - echo view('reports/tabular', $data); - } - - /** - * Summary Expenses by Categories report. - * @param string $start_date - * @param string $end_date - * @param string $sale_type - * @return void - */ - public function summary_expenses_categories(string $start_date, string $end_date, string $sale_type): void - { - $this->clearCache(); - - $inputs = ['start_date' => $start_date, 'end_date' => $end_date, 'sale_type' => $sale_type]; //TODO: Duplicated Code - - $report_data = $this->summary_expenses_categories->getData($inputs); - $summary = $this->summary_expenses_categories->getSummaryData($inputs); - - $tabular_data = []; - foreach($report_data as $row) - { - $tabular_data[] = [ - 'category_name' => $row['category_name'], - 'count' => $row['count'], - 'total_amount' => to_currency($row['total_amount']), - 'total_tax_amount' => to_currency($row['total_tax_amount']) - ]; - } - - $data = [ - 'title' => lang('Reports.expenses_categories_summary_report'), - 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), - 'headers' => $this->summary_expenses_categories->getDataColumns(), - 'data' => $tabular_data, - 'summary_data' => $summary - ]; - - echo view('reports/tabular', $data); - } - - /** - * Summary Customers report. - * @param string $start_date - * @param string $end_date - * @param string $sale_type - * @param string $location_id - * @return void - */ - public function summary_customers(string $start_date, string $end_date, string $sale_type, string $location_id = 'all'): void - { - $this->clearCache(); - - $inputs = [ //TODO: Duplicated Code - 'start_date' => $start_date, - 'end_date' => $end_date, - 'sale_type' => $sale_type, - 'location_id' => $location_id - ]; - - $report_data = $this->summary_customers->getData($inputs); - $summary = $this->summary_customers->getSummaryData($inputs); - - $tabular_data = []; - - foreach($report_data as $row) - { - $tabular_data[] = [ - 'customer_name' => $row['customer'], - 'sales' => to_quantity_decimals($row['sales']), - 'quantity' => to_quantity_decimals($row['quantity_purchased']), - 'subtotal' => to_currency($row['subtotal']), - 'tax' => to_currency_tax($row['tax']), - 'total' => to_currency($row['total']), - 'cost' => to_currency($row['cost']), - 'profit' => to_currency($row['profit']) - ]; - } - - $data = [ - 'title' => lang('Reports.customers_summary_report'), - 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), - 'headers' => $this->summary_customers->getDataColumns(), - 'data' => $tabular_data, - 'summary_data' => $summary - ]; - - echo view('reports/tabular', $data); - } - - /** - * Summary Suppliers report. - * @param string $start_date - * @param string $end_date - * @param string $sale_type - * @param string $location_id - * @return void - */ - public function summary_suppliers(string $start_date, string $end_date, string $sale_type, string $location_id = 'all'): void - {//TODO: Duplicated Code - $this->clearCache(); - - $inputs = [ - 'start_date' => $start_date, - 'end_date' => $end_date, - 'sale_type' => $sale_type, - 'location_id' => $location_id - ]; - - $report_data = $this->summary_suppliers->getData($inputs); - $summary = $this->summary_suppliers->getSummaryData($inputs); - - $tabular_data = []; - foreach($report_data as $row) - { - $tabular_data[] = [ - 'supplier_name' => $row['supplier'], - 'quantity' => to_quantity_decimals($row['quantity_purchased']), - 'subtotal' => to_currency($row['subtotal']), - 'tax' => to_currency_tax($row['tax']), - 'total' => to_currency($row['total']), - 'cost' => to_currency($row['cost']), - 'profit' => to_currency($row['profit']) - ]; - } - - $data = [ - 'title' => lang('Reports.suppliers_summary_report'), - 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), - 'headers' => $this->summary_suppliers->getDataColumns(), - 'data' => $tabular_data, - 'summary_data' => $summary - ]; - - echo view('reports/tabular', $data); - } - - /** - * Summary Items report. - * @param string $start_date - * @param string $end_date - * @param string $sale_type - * @param string $location_id - * @return void - */ - public function summary_items(string $start_date, string $end_date, string $sale_type, string $location_id = 'all'): void - { - $this->clearCache(); - - $inputs = [ - 'start_date' => $start_date, - 'end_date' => $end_date, - 'sale_type' => $sale_type, - 'location_id' => $location_id - ]; - - $report_data = $this->summary_items->getData($inputs); - $summary = $this->summary_items->getSummaryData($inputs); - - $tabular_data = []; - - foreach($report_data as $row) - { - $tabular_data[] = [ - 'item_name' => $row['name'], - 'category' => $row['category'], - 'cost_price' => $row['cost_price'], - 'unit_price' => $row['unit_price'], - 'quantity' => to_quantity_decimals($row['quantity_purchased']), - 'subtotal' => to_currency($row['subtotal']), - 'tax' => to_currency_tax($row['tax']), - 'total' => to_currency($row['total']), - 'cost' => to_currency($row['cost']), - 'profit' => to_currency($row['profit']) - ]; - } - - $data = [ - 'title' => lang('Reports.items_summary_report'), - 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), - 'headers' => $this->summary_items->getDataColumns(), - 'data' => $tabular_data, - 'summary_data' => $summary - ]; - - echo view('reports/tabular', $data); - } - - /** - * Summary Employees report. - * @param string $start_date - * @param string $end_date - * @param string $sale_type - * @param string $location_id - * @return void - */ - public function summary_employees(string $start_date, string $end_date, string $sale_type, string $location_id = 'all'): void - { - $this->clearCache(); - - $inputs = [ - 'start_date' => $start_date, - 'end_date' => $end_date, - 'sale_type' => $sale_type, - 'location_id' => $location_id - ]; - - $report_data = $this->summary_employees->getData($inputs); - $summary = $this->summary_employees->getSummaryData($inputs); - - $tabular_data = []; - - foreach($report_data as $row) - { - $tabular_data[] = [ - 'employee_name' => $row['employee'], - 'sales' => to_quantity_decimals($row['sales']), - 'quantity' => to_quantity_decimals($row['quantity_purchased']), - 'subtotal' => to_currency($row['subtotal']), - 'tax' => to_currency_tax($row['tax']), - 'total' => to_currency($row['total']), - 'cost' => to_currency($row['cost']), - 'profit' => to_currency($row['profit']) - ]; - } - - $data = [ - 'title' => lang('Reports.employees_summary_report'), - 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), - 'headers' => $this->summary_employees->getDataColumns(), - 'data' => $tabular_data, - 'summary_data' => $summary - ]; - - echo view('reports/tabular', $data); - } - - /** - * Summary Taxes report. - * @param string $start_date - * @param string $end_date - * @param string $sale_type - * @param string $location_id - * @return void - */ - public function summary_taxes(string $start_date, string $end_date, string $sale_type, string $location_id = 'all'): void - {//TODO: Duplicate Code - $this->clearCache(); - - $inputs = [ - 'start_date' => $start_date, - 'end_date' => $end_date, - 'sale_type' => $sale_type, - 'location_id' => $location_id - ]; - - $report_data = $this->summary_taxes->getData($inputs); - $summary = $this->summary_taxes->getSummaryData($inputs); - - $tabular_data = []; - - foreach($report_data as $row) - { - $tabular_data[] = [ - 'tax_name' => $row['name'], - 'tax_percent' => $row['percent'], - 'report_count' => $row['count'], - 'subtotal' => to_currency($row['subtotal']), - 'tax' => to_currency_tax($row['tax']), - 'total' => to_currency($row['total']) - ]; - } - - $data = [ - 'title' => lang('Reports.taxes_summary_report'), - 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), - 'headers' => $this->summary_taxes->getDataColumns(), - 'data' => $tabular_data, - 'summary_data' => $summary - ]; - - echo view('reports/tabular', $data); - } - - /** - * Summary Sales Taxes report - */ - public function summary_sales_taxes(string $start_date, string $end_date, string $sale_type, string $location_id = 'all'): void - {//TODO: Duplicated code - $this->clearCache(); - - $inputs = [ - 'start_date' => $start_date, - 'end_date' => $end_date, - 'sale_type' => $sale_type, - 'location_id' => $location_id - ]; - - $report_data = $this->summary_sales_taxes->getData($inputs); - $summary = $this->summary_sales_taxes->getSummaryData($inputs); - - $tabular_data = []; - foreach($report_data as $row) - { - $tabular_data[] = [ - 'reporting_authority' => $row['reporting_authority'], - 'jurisdiction_name' => $row['jurisdiction_name'], - 'tax_category' => $row['tax_category'], - 'tax_rate' => $row['tax_rate'], - 'tax' => to_currency_tax($row['tax']) - ]; - } - - $data = [ - 'title' => lang('Reports.sales_taxes_summary_report'), - 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), - 'headers' => $this->summary_sales_taxes->getDataColumns(), - 'data' => $tabular_data, - 'summary_data' => $summary - ]; - - echo view('reports/tabular', $data); - } - - /** - * Summary Discounts report input. Used in app/Config/Routes.php - * - * @return void - * @noinspection PhpUnused - */ - public function summary_discounts_input(): void - { - $this->clearCache(); - - $stock_locations = $data = $this->stock_location->get_allowed_locations('sales'); - $stock_locations['all'] = lang('Reports.all'); - $data['stock_locations'] = array_reverse($stock_locations, true); - $data['mode'] = 'sale'; - $data['discount_type_options'] = ['0' => lang('Reports.discount_percent'), '1'=> lang('Reports.discount_fixed')]; - $data['sale_type_options'] = $this->get_sale_type_options(); - - echo view('reports/date_input', $data); - } - - /** - * Summary Discounts report - **/ - public function summary_discounts(string $start_date, string $end_date, string $sale_type, string $location_id = 'all', int $discount_type = 0): void - {//TODO: Duplicated Code - $this->clearCache(); - - $inputs = [ - 'start_date' => $start_date, - 'end_date' => $end_date, - 'sale_type' => $sale_type, - 'location_id' => $location_id, - 'discount_type' => $discount_type - ]; - - $report_data = $this->summary_discounts->getData($inputs); - $summary = $this->summary_discounts->getSummaryData($inputs); - - $tabular_data = []; - foreach($report_data as $row) - { - $tabular_data[] = [ - 'total' => to_currency($row['total']), - 'discount' => $row['discount'], - 'count' => $row['count'] - ]; - } - - $data = [ - 'title' => lang('Reports.discounts_summary_report'), - 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), - 'headers' => $this->summary_discounts->getDataColumns(), - 'data' => $tabular_data, - 'summary_data' => $summary - ]; - - echo view('reports/tabular', $data); - } - - /** - * Summary Payments report - */ - public function summary_payments(string $start_date, string $end_date): void - { - $this->clearCache(); - - $inputs = [ - 'start_date' => $start_date, - 'end_date' => $end_date, - 'sale_type' => 'complete', - 'location_id' => 'all' - ]; - - $report_data = $this->summary_payments->getData($inputs); - $summary = $this->summary_payments->getSummaryData($inputs); - - $tabular_data = []; - - foreach($report_data as $row) - { - if($row['trans_group'] == '
    ') - { - $tabular_data[] = [ - 'trans_group' => '--', - 'trans_type' => '--', - 'trans_sales' => '--', - 'trans_amount' => '--', - 'trans_payments' => '--', - 'trans_refunded' => '--', - 'trans_due' => '--' - ]; - } - else - { - if(empty($row['trans_type'])) - { - $row['trans_type'] = lang('Reports.trans_nopay_sales'); - } - - $tabular_data[] = [ - 'trans_group' => $row['trans_group'], - 'trans_type' => $row['trans_type'], - 'trans_sales' => $row['trans_sales'], - 'trans_amount' => to_currency($row['trans_amount']), - 'trans_payments' => to_currency($row['trans_payments']), - 'trans_refunded' => to_currency($row['trans_refunded']), - 'trans_due' => to_currency($row['trans_due']) - ]; - } - } - - $data = [ - 'title' => lang('Reports.payments_summary_report'), - 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), - 'headers' => $this->summary_payments->getDataColumns(), - 'data' => $tabular_data, - 'summary_data' => $summary - ]; - - echo view('reports/tabular', $data); - } - - /** - * Input for reports that require only a date range. Used in app/Config/Routes.php - * - * @return void - * @noinspection PhpUnused - */ - public function date_input(): void - {//TODO: Duplicated Code - $this->clearCache(); - - $stock_locations = $data = $this->stock_location->get_allowed_locations('sales'); - $stock_locations['all'] = lang('Reports.all'); - $data['stock_locations'] = array_reverse($stock_locations, true); - $data['mode'] = 'sale'; - $data['sale_type_options'] = $this->get_sale_type_options(); - - echo view('reports/date_input', $data); - } - - /** - * Input for reports that require only a date range. Used in app/Config/Routes.php - * - * @return void - * @noinspection PhpUnused - */ - public function date_input_only(): void - { - $this->clearCache(); - - $data = []; - echo view('reports/date_input', $data); - } - - /** - * Input for reports that require only a date range. Used in app/Config/Routes.php - * - * @return void - * @noinspection PhpUnused - */ - public function date_input_sales(): void - {//TODO: Duplicated Code - $this->clearCache(); - - $stock_locations = $data = $this->stock_location->get_allowed_locations('sales'); - $stock_locations['all'] = lang('Reports.all'); - $data['stock_locations'] = array_reverse($stock_locations, true); - $data['mode'] = 'sale'; - $data['sale_type_options'] = $this->get_sale_type_options(); - - echo view('reports/date_input', $data); - } - - /** - * Receivings date input. Used in app/Config/Routes.php - * - * @return void - * @noinspection PhpUnused - */ - public function date_input_recv(): void - { - $stock_locations = $data = $this->stock_location->get_allowed_locations('receivings'); - $stock_locations['all'] = lang('Reports.all'); - $data['stock_locations'] = array_reverse($stock_locations, true); - $data['mode'] = 'receiving'; - - echo view('reports/date_input', $data); - } - - /** - * Graphical Expenses by Categories report. Used in app/Config/Routes.php - * - * @param string $start_date - * @param string $end_date - * @param string $sale_type - * @return void - * @noinspection PhpUnused - */ - public function graphical_summary_expenses_categories(string $start_date, string $end_date, string $sale_type): void - { - $this->clearCache(); - - $inputs = [ - 'start_date' => $start_date, - 'end_date' => $end_date, - 'sale_type' => $sale_type - ]; - - $report_data = $this->summary_expenses_categories->getData($inputs); - $summary = $this->summary_expenses_categories->getSummaryData($inputs); - - $labels = []; - $series = []; - foreach($report_data as $row) - { - $labels[] = $row['category_name']; - $series[] = [ - 'meta' => $row['category_name'] . ' ' . round($row['total_amount'] / $summary['expenses_total_amount'] * 100, 2) . '%', - 'value' => $row['total_amount'] - ]; - } - - $data = [ - 'title' => lang('Reports.expenses_categories_summary_report'), - 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), - 'chart_type' => 'reports/graphs/pie', - 'labels_1' => $labels, - 'series_data_1' => $series, - 'summary_data_1' => $summary, - 'show_currency' => true - ]; - - echo view('reports/graphical', $data); - } - - /** - * Graphical summary sales report - * - * @param string $start_date - * @param string $end_date - * @param string $sale_type - * @param string $location_id - * @return void - */ - public function graphical_summary_sales(string $start_date, string $end_date, string $sale_type, string $location_id = 'all'): void - { - $this->clearCache(); - - $inputs = [ - 'start_date' => $start_date, - 'end_date' => $end_date, - 'sale_type' => $sale_type, - 'location_id' => $location_id - ]; - - $report_data = $this->summary_sales->getData($inputs); - $summary = $this->summary_sales->getSummaryData($inputs); - - $labels = []; - $series = []; - foreach($report_data as $row) - { - $date = to_date(strtotime($row['sale_date'])); - $labels[] = $date; - $series[] = ['meta' => $date, 'value' => $row['total']]; - } - - $data = [ - 'title' => lang('Reports.sales_summary_report'), - 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), - 'chart_type' => 'reports/graphs/line', - 'labels_1' => $labels, - 'series_data_1' => $series, - 'summary_data_1' => $summary, - 'yaxis_title' => lang('Reports.revenue'), - 'xaxis_title' => lang('Reports.date'), - 'show_currency' => true - ]; - - echo view('reports/graphical', $data); - } - - /** - * Graphical summary items report - * - * @param string $start_date - * @param string $end_date - * @param string $sale_type - * @param string $location_id - * @return void - */ - public function graphical_summary_items(string $start_date, string $end_date, string $sale_type, string $location_id = 'all'): void - { - $this->clearCache(); - - $inputs = [ - 'start_date' => $start_date, - 'end_date' => $end_date, - 'sale_type' => $sale_type, - 'location_id' => $location_id - ]; - - - $report_data = $this->summary_items->getData($inputs); - $summary = $this->summary_items->getSummaryData($inputs); - - $labels = []; - $series = []; - - foreach($report_data as $row) - { - $labels[] = $row['name']; - $series[] = $row['total']; - } - - $data = [ - 'title' => lang('Reports.items_summary_report'), - 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), - 'chart_type' => 'reports/graphs/hbar', - 'labels_1' => $labels, - 'series_data_1' => $series, - 'summary_data_1' => $summary, - 'yaxis_title' => lang('Reports.items'), - 'xaxis_title' => lang('Reports.revenue'), - 'show_currency' => true - ]; - - echo view('reports/graphical', $data); - } - - /** - * Graphical summary customers report. - * - * @param string $start_date - * @param string $end_date - * @param string $sale_type - * @param string $location_id - * @return void - */ - public function graphical_summary_categories(string $start_date, string $end_date, string $sale_type, string $location_id = 'all'): void - {//TODO: Duplicated Code - $this->clearCache(); - - $inputs = [ - 'start_date' => $start_date, - 'end_date' => $end_date, - 'sale_type' => $sale_type, - 'location_id' => $location_id - ]; - - $report_data = $this->summary_categories->getData($inputs); - $summary = $this->summary_categories->getSummaryData($inputs); - - $labels = []; - $series = []; - foreach($report_data as $row) - { - $labels[] = $row['category']; - $series[] = ['meta' => $row['category'] . ' ' . round($row['total'] / $summary['total'] * 100, 2) . '%', 'value' => $row['total']]; - } - - $data = [ - 'title' => lang('Reports.categories_summary_report'), - 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), - 'chart_type' => 'reports/graphs/pie', - 'labels_1' => $labels, - 'series_data_1' => $series, - 'summary_data_1' => $summary, - 'show_currency' => true - ]; - - echo view('reports/graphical', $data); - } - - /** - * Graphical summary suppliers report - * - * @param string $start_date - * @param string $end_date - * @param string $sale_type - * @param string $location_id - * @return void - */ - public function graphical_summary_suppliers(string $start_date, string $end_date, string $sale_type, string $location_id = 'all'): void - {//TODO: Duplicated Code - $this->clearCache(); - - $inputs = [ - 'start_date' => $start_date, - 'end_date' => $end_date, - 'sale_type' => $sale_type, - 'location_id' => $location_id - ]; - - - $report_data = $this->summary_suppliers->getData($inputs); - $summary = $this->summary_suppliers->getSummaryData($inputs); - - $labels = []; - $series = []; - - foreach($report_data as $row) - { - $labels[] = $row['supplier']; - $series[] = ['meta' => $row['supplier'] . ' ' . round($row['total'] / $summary['total'] * 100, 2) . '%', 'value' => $row['total']]; - } - - $data = [ - 'title' => lang('Reports.suppliers_summary_report'), - 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), - 'chart_type' => 'reports/graphs/pie', - 'labels_1' => $labels, - 'series_data_1' => $series, - 'summary_data_1' => $summary, - 'show_currency' => true - ]; - - echo view('reports/graphical', $data); - } - - /** - * Graphical summary employees report - * - * @param string $start_date - * @param string $end_date - * @param string $sale_type - * @param string $location_id - * @return void - */ - public function graphical_summary_employees(string $start_date, string $end_date, string $sale_type, string $location_id = 'all'): void - { - $this->clearCache(); - - $inputs = [ - 'start_date' => $start_date, - 'end_date' => $end_date, - 'sale_type' => $sale_type, - 'location_id' => $location_id - ]; - - $report_data = $this->summary_employees->getData($inputs); - $summary = $this->summary_employees->getSummaryData($inputs); - - $labels = []; - $series = []; - - foreach($report_data as $row) - { - $labels[] = $row['employee']; - $series[] = ['meta' => $row['employee'] . ' ' . round($row['total'] / $summary['total'] * 100, 2) . '%', 'value' => $row['total']]; - } - - $data = [ - 'title' => lang('Reports.employees_summary_report'), - 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), - 'chart_type' => 'reports/graphs/pie', - 'labels_1' => $labels, - 'series_data_1' => $series, - 'summary_data_1' => $summary, - 'show_currency' => true - ]; - - echo view('reports/graphical', $data); - } - - /** - * Graphical summary taxes report - * - * @param string $start_date - * @param string $end_date - * @param string $sale_type - * @param string $location_id - * @return void - */ - public function graphical_summary_taxes(string $start_date, string $end_date, string $sale_type, string $location_id = 'all'): void - {//TODO: Duplicated Code - $this->clearCache(); - - $inputs = [ - 'start_date' => $start_date, - 'end_date' => $end_date, - 'sale_type' => $sale_type, - 'location_id' => $location_id - ]; - - $report_data = $this->summary_taxes->getData($inputs); - $summary = $this->summary_taxes->getSummaryData($inputs); - - $labels = []; - $series = []; - - foreach($report_data as $row) - { - $labels[] = $row['percent']; - $series[] = ['meta' => $row['percent'] . ' ' . round($row['total'] / $summary['total'] * 100, 2) . '%', 'value' => $row['total']]; - } - - $data = [ - 'title' => lang('Reports.taxes_summary_report'), - 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), - 'chart_type' => 'reports/graphs/pie', - 'labels_1' => $labels, - 'series_data_1' => $series, - 'summary_data_1' => $summary, - 'show_currency' => true - ]; - - echo view('reports/graphical', $data); - } - - /** - * Graphical summary sales taxes report - * - * @param string $start_date - * @param string $end_date - * @param string $sale_type - * @param string $location_id - * @return void - */ - public function graphical_summary_sales_taxes(string $start_date, string $end_date, string $sale_type, string $location_id = 'all'): void - {//TODO: Duplicated Code - $this->clearCache(); - - $inputs = [ - 'start_date' => $start_date, - 'end_date' => $end_date, - 'sale_type' => $sale_type, - 'location_id' => $location_id - ]; - - $report_data = $this->summary_sales_taxes->getData($inputs); - $summary = $this->summary_sales_taxes->getSummaryData($inputs); - - $labels = []; - $series = []; - - foreach($report_data as $row) - { - $labels[] = $row['jurisdiction_name']; - $series[] = ['meta' => $row['tax_rate'] . '%', 'value' => $row['tax']]; - } - - $data = [ - 'title' => lang('Reports.sales_taxes_summary_report'), - 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), - 'chart_type' => 'reports/graphs/pie', - 'labels_1' => $labels, - 'series_data_1' => $series, - 'summary_data_1' => $summary, - 'show_currency' => true - ]; - - echo view('reports/graphical', $data); - } - - /** - * Graphical summary customers report. - * - * @param string $start_date - * @param string $end_date - * @param string $sale_type - * @param string $location_id - * @return void - */ - public function graphical_summary_customers(string $start_date, string $end_date, string $sale_type, string $location_id = 'all'): void - {//TODO: Duplicated Code - $this->clearCache(); - - $inputs = [ - 'start_date' => $start_date, - 'end_date' => $end_date, - 'sale_type' => $sale_type, - 'location_id' => $location_id - ]; - - $report_data = $this->summary_customers->getData($inputs); - $summary = $this->summary_customers->getSummaryData($inputs); - - $labels = []; - $series = []; - - foreach($report_data as $row) - { - $labels[] = $row['customer']; - $series[] = $row['total']; - } - - $data = [ - 'title' => lang('Reports.customers_summary_report'), - 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), - 'chart_type' => 'reports/graphs/hbar', - 'labels_1' => $labels, - 'series_data_1' => $series, - 'summary_data_1' => $summary, - 'yaxis_title' => lang('Reports.customers'), - 'xaxis_title' => lang('Reports.revenue'), - 'show_currency' => true - ]; - - echo view('reports/graphical', $data); - } - - /** - * Graphical summary discounts report. Used in app/Config/Routes.php - * - * @param string $start_date Start date of the report - * @param string $end_date End date of the report - * @param string $sale_type - * @param string $location_id ID of the location to be reported or 'all' if none is specified - * @param int $discount_type - * @noinspection PhpUnused - */ - public function graphical_summary_discounts(string $start_date, string $end_date, string $sale_type, string $location_id = 'all', int $discount_type = 0): void - {//TODO: Duplicated Code - $this->clearCache(); - - $inputs = [ - 'start_date' => $start_date, - 'end_date' => $end_date, - 'sale_type' => $sale_type, - 'location_id' => $location_id, - 'discount_type'=>$discount_type - ]; - - $report_data = $this->summary_discounts->getData($inputs); - $summary = $this->summary_discounts->getSummaryData($inputs); - - $labels = []; - $series = []; - - foreach($report_data as $row) - { - $labels[] = $row['discount']; - $series[] = $row['count']; - } - - $data = [ - 'title' => lang('Reports.discounts_summary_report'), - 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), - 'chart_type' => 'reports/graphs/bar', - 'labels_1' => $labels, - 'series_data_1' => $series, - 'summary_data_1' => $summary, - 'yaxis_title' => lang('Reports.count'), - 'xaxis_title' => lang('Reports.discount'), - 'show_currency' => false - ]; - - echo view('reports/graphical', $data); - } - - /** - * Graphical summary payments report - * - * @param string $start_date - * @param string $end_date - * @param string $sale_type - * @param string $location_id - * @return void - */ - public function graphical_summary_payments(string $start_date, string $end_date, string $sale_type, string $location_id = 'all'): void - { - $this->clearCache(); - - $inputs = [ - 'start_date' => $start_date, - 'end_date' => $end_date, - 'sale_type' => $sale_type, - 'location_id' => $location_id - ]; - - $report_data = $this->summary_payments->getData($inputs); - $summary = $this->summary_payments->getSummaryData($inputs); - - $labels = []; - $series = []; - - foreach($report_data as $row) - { - if($row['trans_group'] == lang('Reports.trans_payments') && !empty($row['trans_amount'])) - { - $labels[] = $row['trans_type']; - $series[] = ['meta' => $row['trans_type'] . ' ' . round($row['trans_amount'] / $summary['total'] * 100, 2) . '%', 'value' => $row['trans_amount']]; - } - } - - $data = [ - 'title' => lang('Reports.payments_summary_report'), - 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), - 'chart_type' => 'reports/graphs/pie', - 'labels_1' => $labels, - 'series_data_1' => $series, - 'summary_data_1' => $summary, - 'show_currency' => true - ]; - - echo view('reports/graphical', $data); - } - - /** - * Gets the specific customer input view. Used in app/Config/Routes.php - * - * @return void - * @noinspection PhpUnused - */ - public function specific_customer_input(): void - { - $this->clearCache(); - - $data = []; - $data['specific_input_name'] = lang('Reports.customer'); - $customers = []; - foreach($this->customer->get_all()->getResult() as $customer) - { - if(isset($customer->company_name)) - { - $customers[$customer->person_id] = $customer->first_name . ' ' . $customer->last_name. ' ' . ' [ '.$customer->company_name.' ] '; - } - else - { - $customers[$customer->person_id] = $customer->first_name . ' ' . $customer->last_name; - } - } - $data['specific_input_data'] = $customers; - $data['sale_type_options'] = $this->get_sale_type_options(); - - $data['payment_type'] = $this->get_payment_type(); - echo view('reports/specific_customer_input', $data); - } - - /** - * @return array - */ - public function get_payment_type(): array - { - return [ - 'all' => lang('Common.none_selected_text'), - 'cash' => lang('Sales.cash'), - 'due' => lang('Sales.due'), - 'check' => lang('Sales.check'), - 'credit' => lang('Sales.credit'), - 'debit' => lang('Sales.debit'), - 'invoices' => lang('Sales.invoice') - ]; - } - - /** - * Detailed customer report. Used in app/Config/Routes.php - * - * @param string $start_date - * @param string $end_date - * @param string $customer_id - * @param string $sale_type - * @param string $payment_type - * @return void - * @noinspection PhpUnused - */ - public function specific_customers(string $start_date, string $end_date, string $customer_id, string $sale_type, string $payment_type): void - { - $this->clearCache(); - - $inputs = ['start_date' => $start_date, 'end_date' => $end_date, 'customer_id' => $customer_id, 'sale_type' => $sale_type, 'payment_type' => $payment_type]; - - $specific_customer = model(Specific_customer::class); - - $specific_customer->create($inputs); - - $headers = $specific_customer->getDataColumns(); - $report_data = $specific_customer->getData($inputs); - - $summary_data = []; - $details_data = []; - $details_data_rewards = []; - - foreach($report_data['summary'] as $key => $row) - { - if($row['sale_status'] == CANCELED) - { - $button_key = 'data-btn-restore'; - $button_label = lang('Common.restore'); - } - else - { - $button_key = 'data-btn-delete'; - $button_label = lang('Common.delete'); - } - - $summary_data[] = [ - 'id' => $row['sale_id'], - 'type_code' => $row['type_code'], - 'sale_time' => to_datetime(strtotime($row['sale_time'])), - 'quantity' => to_quantity_decimals($row['items_purchased']), - 'employee_name' => $row['employee_name'], - 'subtotal' => to_currency($row['subtotal']), - 'tax' => to_currency_tax($row['tax']), - 'total' => to_currency($row['total']), - 'cost' => to_currency($row['cost']), - 'profit' => to_currency($row['profit']), - 'payment_type' => $row['payment_type'], - 'comment' => $row['comment'], - 'edit' => anchor( - 'sales/edit/'. $row['sale_id'], - '', - [ - 'class' => 'modal-dlg print_hide', - $button_key => $button_label, - 'data-btn-submit' => lang('Common.submit'), - 'title' => lang('Sales.update') - ]) - ]; - - foreach($report_data['details'][$key] as $drow) //TODO: Duplicated Code - { - $details_data[$row['sale_id']][] = [ - $drow['name'], - $drow['category'], - $drow['item_number'], - $drow['description'], - to_quantity_decimals($drow['quantity_purchased']), - to_currency($drow['subtotal']), - to_currency_tax($drow['tax']), - to_currency($drow['total']), - to_currency($drow['cost']), - to_currency($drow['profit']), - ($drow['discount_type'] == PERCENT)? $drow['discount'].'%':to_currency($drow['discount']) - ]; - } - - if(isset($report_data['rewards'][$key])) - { - foreach($report_data['rewards'][$key] as $drow) - { - $details_data_rewards[$row['sale_id']][] = [$drow['used'], $drow['earned']]; - } - } - } - - $customer_info = $this->customer->get_info($customer_id); - $customer_name = !empty($customer_info->company_name) //TODO: This variable is not used anywhere in the code. Should it be or can it be deleted? - ? "[ $customer_info->company_name ]" - : $customer_info->company_name; - - //TODO: Duplicated Code - $data = [ - 'title' => $customer_info->first_name . ' ' . $customer_info->last_name . ' ' . lang('Reports.report'), - 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), - 'headers' => $headers, - 'editable' => 'sales', - 'summary_data' => $summary_data, - 'details_data' => $details_data, - 'details_data_rewards' => $details_data_rewards, - 'overall_summary_data' => $specific_customer->getSummaryData($inputs) - ]; - - echo view('reports/tabular_details', $data); - } - - /** - * Detailed employee report input form. Used in app/Config/Routes.php - * - * @return void - * @noinspection PhpUnused - */ - public function specific_employee_input(): void - { - $this->clearCache(); - - $data = []; - $data['specific_input_name'] = lang('Reports.employee'); - - $employees = []; - foreach($this->employee->get_all()->getResult() as $employee) - { - $employees[$employee->person_id] = $employee->first_name . ' ' . $employee->last_name; - } - $data['specific_input_data'] = $employees; - $data['sale_type_options'] = $this->get_sale_type_options(); - - echo view('reports/specific_input', $data); - } - - /** - * Detailed employee report. Used in app/Config/Routes.php - * - * @param string $start_date - * @param string $end_date - * @param string $employee_id - * @param string $sale_type - * @return void - * @noinspection PhpUnused - */ - public function specific_employees(string $start_date, string $end_date, string $employee_id, string $sale_type): void - { - $this->clearCache(); - - $inputs = ['start_date' => $start_date, 'end_date' => $end_date, 'employee_id' => $employee_id, 'sale_type' => $sale_type]; - - $specific_employee = model(Specific_employee::class); - - $specific_employee->create($inputs); - - $headers = $specific_employee->getDataColumns(); - $report_data = $specific_employee->getData($inputs); - - $summary_data = []; - $details_data = []; - $details_data_rewards = []; - - foreach($report_data['summary'] as $key => $row) - { - if($row['sale_status'] == CANCELED) - { - $button_key = 'data-btn-restore'; - $button_label = lang('Common.restore'); - } - else - { - $button_key = 'data-btn-delete'; - $button_label = lang('Common.delete'); - } - - $summary_data[] = [ - 'id' => $row['sale_id'], - 'type_code' => $row['type_code'], - 'sale_time' => to_datetime(strtotime($row['sale_time'])), - 'quantity' => to_quantity_decimals($row['items_purchased']), - 'customer_name' => $row['customer_name'], - 'subtotal' => to_currency($row['subtotal']), - 'tax' => to_currency_tax($row['tax']), - 'total' => to_currency($row['total']), - 'cost' => to_currency($row['cost']), - 'profit' => to_currency($row['profit']), - 'payment_type' => $row['payment_type'], - 'comment' => $row['comment'], - 'edit' => anchor( - 'sales/edit/'. $row['sale_id'], - '', - [ - 'class' => 'modal-dlg print_hide', - $button_key => $button_label, - 'data-btn-submit' => lang('Common.submit'), - 'title' => lang('Sales.update') - ]) - ]; - //TODO: Duplicated Code - foreach($report_data['details'][$key] as $drow) - { - $details_data[$row['sale_id']][] = [ - $drow['name'], - $drow['category'], - $drow['item_number'], - $drow['description'], - to_quantity_decimals($drow['quantity_purchased']), - to_currency($drow['subtotal']), - to_currency_tax($drow['tax']), - to_currency($drow['total']), - to_currency($drow['cost']), - to_currency($drow['profit']), - ($drow['discount_type'] == PERCENT)? $drow['discount'].'%':to_currency($drow['discount']) - ]; - } - - if(isset($report_data['rewards'][$key])) - { - foreach($report_data['rewards'][$key] as $drow) - { - $details_data_rewards[$row['sale_id']][] = [$drow['used'], $drow['earned']]; - } - } - } - - $employee_info = $this->employee->get_info($employee_id); - //TODO: Duplicated Code - $data = [ - 'title' => $employee_info->first_name . ' ' . $employee_info->last_name . ' ' . lang('Reports.report'), - 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), - 'headers' => $headers, - 'editable' => 'sales', - 'summary_data' => $summary_data, - 'details_data' => $details_data, - 'details_data_rewards' => $details_data_rewards, - 'overall_summary_data' => $specific_employee->getSummaryData($inputs) - ]; - - echo view('reports/tabular_details', $data); - } - - /** - * Detailed discount report. Used in app/Config/Routes.php - * - * @return void - * @noinspection PhpUnused - */ - public function specific_discount_input(): void - { - $this->clearCache(); - - $data = []; - $data['specific_input_name'] = lang('Reports.discount'); - - $discounts = []; - for($i = 0; $i <= 100; $i += 10) - { - $discounts[$i] = $i . '%'; - } - $data['specific_input_data'] = $discounts; - $data['discount_type_options'] = ['0' => lang('Reports.discount_percent'), '1'=> lang('Reports.discount_fixed')]; - $data['sale_type_options'] = $this->get_sale_type_options(); - - echo view('reports/specific_input', $data); - } - - /** - * Detailed discount report. Used in app/Config/Routes.php - * - * @param string $start_date - * @param string $end_date - * @param string $discount - * @param string $sale_type - * @param string $discount_type - * @return void - * @noinspection PhpUnused - */ - public function specific_discounts(string $start_date, string $end_date, string $discount, string $sale_type, string $discount_type): void - { - $this->clearCache(); - - $inputs = [ - 'start_date' => $start_date, - 'end_date' => $end_date, - 'discount' => $discount, - 'sale_type' => $sale_type, - 'discount_type' => $discount_type - ]; - - $specific_discount = model(Specific_discount::class); - - $specific_discount->create($inputs); - - $headers = $specific_discount->getDataColumns(); - $report_data = $specific_discount->getData($inputs); - - $summary_data = []; - $details_data = []; - $details_data_rewards = []; - - foreach($report_data['summary'] as $key => $row) - { //TODO: Duplicated Code - if($row['sale_status'] == CANCELED) - { - $button_key = 'data-btn-restore'; - $button_label = lang('Common.restore'); - } - else - { - $button_key = 'data-btn-delete'; - $button_label = lang('Common.delete'); - } - - $summary_data[] = [ - 'id' => $row['sale_id'], - 'type_code' => $row['type_code'], - 'sale_time' => to_datetime(strtotime($row['sale_time'])), - 'quantity' => to_quantity_decimals($row['items_purchased']), - 'employee_name' => $row['employee_name'], - 'customer_name' => $row['customer_name'], - 'subtotal' => to_currency($row['subtotal']), - 'tax' => to_currency_tax($row['tax']), - 'total' => to_currency($row['total']), - 'cost' => to_currency($row['cost']), - 'profit' => to_currency($row['profit']), - 'payment_type' => $row['payment_type'], - 'comment' => $row['comment'], - 'edit' => anchor( - 'sales/edit/'. $row['sale_id'], - '', - [ - 'class' => 'modal-dlg print_hide', - $button_key => $button_label, - 'data-btn-submit' => lang('Common.submit'), - 'title' => lang('Sales.update') - ]) - ]; - //TODO: Duplicated Code - foreach($report_data['details'][$key] as $drow) - { - $details_data[$row['sale_id']][] = [ - $drow['name'], - $drow['category'], - $drow['item_number'], - $drow['description'], - to_quantity_decimals($drow['quantity_purchased']), - to_currency($drow['subtotal']), - to_currency_tax($drow['tax']), - to_currency($drow['total']), - to_currency($drow['cost']), - to_currency($drow['profit']), - ($drow['discount_type'] == PERCENT) - ? $drow['discount'].'%' - : to_currency($drow['discount']) - ]; - } - - if(isset($report_data['rewards'][$key])) - { - foreach($report_data['rewards'][$key] as $drow) - { - $details_data_rewards[$row['sale_id']][] = [$drow['used'], $drow['earned']]; - } - } - } - - $data = [ - 'title' => $discount . '% ' . lang('Reports.discount') . ' ' . lang('Reports.report'), - 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), - 'headers' => $headers, - 'summary_data' => $summary_data, - 'details_data' => $details_data, - 'details_data_rewards' => $details_data_rewards, - 'overall_summary_data' => $specific_discount->getSummaryData($inputs) - ]; - - echo view('reports/tabular_details', $data); - } - - /** - * Gets the detailed sales data row for given sale_id. Used in app/Views/reports/tabular_details.php - * - * @param string $sale_id - * @return void - * @noinspection PhpUnused - */ - public function get_detailed_sales_row(string $sale_id): void - { - $this->clearCache(); - - $inputs = ['sale_id' => $sale_id]; - - $this->detailed_sales->create($inputs); - - $report_data = $this->detailed_sales->getDataBySaleId($sale_id); - - if($report_data['sale_status'] == CANCELED) - { - $button_key = 'data-btn-restore'; - $button_label = lang('Common.restore'); - } - else - { - $button_key = 'data-btn-delete'; - $button_label = lang('Common.delete'); - } - - $summary_data = [ - 'sale_id' => $report_data['sale_id'], - 'sale_time' => to_datetime(strtotime($report_data['sale_time'])), - 'quantity' => to_quantity_decimals($report_data['items_purchased']), - 'employee_name' => $report_data['employee_name'], - 'customer_name' => $report_data['customer_name'], - 'subtotal' => to_currency($report_data['subtotal']), - 'tax' => to_currency_tax($report_data['tax']), - 'total' => to_currency($report_data['total']), - 'cost' => to_currency($report_data['cost']), - 'profit' => to_currency($report_data['profit']), - 'payment_type' => $report_data['payment_type'], - 'comment' => $report_data['comment'], - 'edit' => anchor( - 'sales/edit/'. $report_data['sale_id'], - '', - [ - 'class' => 'modal-dlg print_hide', - $button_key => $button_label, - 'data-btn-submit' => lang('Common.submit'), - 'title' => lang('Sales.update') - ]) - ]; - - echo json_encode ([$sale_id => $summary_data]); - } - - /** - * Detailed Supplier report input form. Used in app/Config/Routes.php - * - * @return void - * @noinspection PhpUnused - */ - public function specific_supplier_input(): void - { - $this->clearCache(); - - $data = []; - $data['specific_input_name'] = lang('Reports.supplier'); - - $suppliers = []; - foreach($this->supplier->get_all()->getResult() as $supplier) - { - $suppliers[$supplier->person_id] = $supplier->company_name . ' (' . $supplier->first_name . ' ' . $supplier->last_name . ')'; - } - $data['specific_input_data'] = $suppliers; - $data['sale_type_options'] = $this->get_sale_type_options(); - - echo view('reports/specific_input', $data); - } - - /** - * Detailed suppliers report. - * - * @param string $start_date - * @param string $end_date - * @param string $supplier_id - * @param string $sale_type - * @return void - */ - public function specific_suppliers(string $start_date, string $end_date, string $supplier_id, string $sale_type): void - { - $inputs = [ - 'start_date' => $start_date, - 'end_date' => $end_date, - 'supplier_id' => $supplier_id, - 'sale_type' => $sale_type - ]; - - $specific_supplier = model(Specific_supplier::class); - - $specific_supplier->create($inputs); - - $report_data = $specific_supplier->getData($inputs); - - $tabular_data = []; - foreach($report_data as $row) - { - $tabular_data[] = [ - 'id' => $row['sale_id'], - 'type_code' => $row['type_code'], - 'sale_time' => to_datetime(strtotime($row['sale_time'])), - 'name' => $row['name'], - 'category' => $row['category'], - 'item_number' => $row['item_number'], - 'quantity' => to_quantity_decimals($row['items_purchased']), - 'subtotal' => to_currency($row['subtotal']), - 'tax' => to_currency_tax($row['tax']), - 'total' => to_currency($row['total']), - 'cost' => to_currency($row['cost']), - 'profit' => to_currency($row['profit']), - 'discount' => ($row['discount_type'] == PERCENT)? $row['discount'].'%':to_currency($row['discount']) - ]; - } - - $supplier_info = $this->supplier->get_info($supplier_id); - $data = [ - 'title' => $supplier_info->company_name . ' (' . $supplier_info->first_name . ' ' . $supplier_info->last_name . ') ' . lang('Reports.report'), - 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), - 'headers' => $specific_supplier->getDataColumns(), - 'data' => $tabular_data, - 'summary_data' => $specific_supplier->getSummaryData($inputs) - ]; - - echo view('reports/tabular', $data); - } - - /** - * @return array - */ - public function get_sale_type_options(): array - { - $sale_type_options = []; - $sale_type_options['complete'] = lang('Reports.complete'); - $sale_type_options['sales'] = lang('Reports.completed_sales'); - if($this->config['invoice_enable']) - { - $sale_type_options['quotes'] = lang('Reports.quotes'); - if($this->config['work_order_enable']) - { - $sale_type_options['work_orders'] = lang('Reports.work_orders'); - } - } - $sale_type_options['canceled'] = lang('Reports.canceled'); - $sale_type_options['returns'] = lang('Reports.returns'); - return $sale_type_options; - } - - /** - * @param string $start_date - * @param string $end_date - * @param string $sale_type - * @param string $location_id - * @return void - */ - public function detailed_sales(string $start_date, string $end_date, string $sale_type, string $location_id = 'all'): void - { - $this->clearCache(); - - $definition_names = $this->attribute->get_definitions_by_flags(attribute::SHOW_IN_SALES); - - $inputs = [ - 'start_date' => $start_date, - 'end_date' => $end_date, - 'sale_type' => $sale_type, - 'location_id' => $location_id, - 'definition_ids' => array_keys($definition_names) - ]; - - $this->detailed_sales->create($inputs); - - $columns = $this->detailed_sales->getDataColumns(); - $columns['details'] = array_merge($columns['details'], $definition_names); - - $headers = $columns; - - $report_data = $this->detailed_sales->getData($inputs); - - $summary_data = []; - $details_data = []; - $details_data_rewards = []; - - $show_locations = $this->stock_location->multiple_locations(); - - foreach($report_data['summary'] as $key => $row) - { //TODO: Duplicated Code - if($row['sale_status'] == CANCELED) - { - $button_key = 'data-btn-restore'; - $button_label = lang('Common.restore'); - } - else - { - $button_key = 'data-btn-delete'; - $button_label = lang('Common.delete'); - } - - $summary_data[] = [ - 'id' => $row['sale_id'], - 'type_code' => $row['type_code'], - 'sale_time' => to_datetime(strtotime($row['sale_time'])), - 'quantity' => to_quantity_decimals($row['items_purchased']), - 'employee_name' => $row['employee_name'], - 'customer_name' => $row['customer_name'], - 'subtotal' => to_currency($row['subtotal']), - 'tax' => to_currency_tax($row['tax']), - 'total' => to_currency($row['total']), - 'cost' => to_currency($row['cost']), - 'profit' => to_currency($row['profit']), - 'payment_type' => $row['payment_type'], - 'comment' => $row['comment'], - 'edit' => anchor( - 'sales/edit/'.$row['sale_id'], - '', - [ - 'class' => 'modal-dlg print_hide', - $button_key => $button_label, - 'data-btn-submit' => lang('Common.submit'), - 'title' => lang('Sales.update') - ]) - ]; - - foreach($report_data['details'][$key] as $drow) - { - $quantity_purchased = to_quantity_decimals($drow['quantity_purchased']); - if($show_locations) - { - $quantity_purchased .= ' [' . $this->stock_location->get_location_name($drow['item_location']) . ']'; - } - - $attribute_values = expand_attribute_values($definition_names, $drow); - - $details_data[$row['sale_id']][] = - array_merge ([ - $drow['name'], - $drow['category'], - $drow['item_number'], - $drow['description'], - $quantity_purchased, - to_currency($drow['subtotal']), - to_currency_tax($drow['tax']), - to_currency($drow['total']), - to_currency($drow['cost']), - to_currency($drow['profit']), - ($drow['discount_type'] == PERCENT) ? $drow['discount'].'%' : to_currency($drow['discount']) - ], - $attribute_values - ); - } - - if(isset($report_data['rewards'][$key])) - { - foreach($report_data['rewards'][$key] as $drow) - { - $details_data_rewards[$row['sale_id']][] = [$drow['used'], $drow['earned']]; - } - } - } - - $data = [ - 'title' => lang('Reports.detailed_sales_report'), - 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), - 'headers' => $headers, - 'editable' => 'sales', - 'summary_data' => $summary_data, - 'details_data' => $details_data, - 'details_data_rewards' => $details_data_rewards, - 'overall_summary_data' => $this->detailed_sales->getSummaryData($inputs) - ]; - echo view('reports/tabular_details', $data); - } - - /** - * Returns detailed receivings row for given receiving_id. Used in app/Views/reports/tabular_details.php - * - * @param string $receiving_id - * @return void - * @noinspection PhpUnused - */ - public function get_detailed_receivings_row(string $receiving_id): void - { - $inputs = ['receiving_id' => $receiving_id]; - - $this->detailed_receivings->create($inputs); - - $report_data = $this->detailed_receivings->getDataByReceivingId($receiving_id); - - $summary_data = [ - 'receiving_id' => $report_data['receiving_id'], - 'receiving_time' => to_datetime(strtotime($report_data['receiving_time'])), - 'quantity' => to_quantity_decimals($report_data['items_purchased']), - 'employee_name' => $report_data['employee_name'], - 'supplier_name' => $report_data['supplier_name'], - 'total' => to_currency($report_data['total']), - 'payment_type' => $report_data['payment_type'], - 'reference' => $report_data['reference'], - 'comment' => $report_data['comment'], - 'edit' => anchor( - 'receivings/edit/'. $report_data['receiving_id'], - '', - [ - 'class' => 'modal-dlg print_hide', - 'data-btn-submit' => lang('Common.submit'), - 'data-btn-delete' => lang('Common.delete'), - 'title' => lang('Receivings.update') - ]) - ]; - - echo json_encode ([$receiving_id => $summary_data]); - } - - /** - * @param string $start_date - * @param string $end_date - * @param string $receiving_type - * @param string $location_id - * @return void - */ - public function detailed_receivings(string $start_date, string $end_date, string $receiving_type, string $location_id = 'all'): void - { - $this->clearCache(); - - $definition_names = $this->attribute->get_definitions_by_flags(attribute::SHOW_IN_RECEIVINGS); - - $inputs = ['start_date' => $start_date, 'end_date' => $end_date, 'receiving_type' => $receiving_type, 'location_id' => $location_id, 'definition_ids' => array_keys($definition_names)]; - - $this->detailed_receivings->create($inputs); - - $columns = $this->detailed_receivings->getDataColumns(); - $columns['details'] = array_merge($columns['details'], $definition_names); - - $headers = $columns; - $report_data = $this->detailed_receivings->getData($inputs); - - $summary_data = []; - $details_data = []; - - $show_locations = $this->stock_location->multiple_locations(); - - foreach($report_data['summary'] as $key => $row) - { - $summary_data[] = [ - 'id' => $row['receiving_id'], - 'receiving_time' => to_datetime(strtotime($row['receiving_time'])), - 'quantity' => to_quantity_decimals($row['items_purchased']), - 'employee_name' => $row['employee_name'], - 'supplier_name' => $row['supplier_name'], - 'total' => to_currency($row['total']), - 'profit' => to_currency($row['profit']), - 'payment_type' => $row['payment_type'], - 'reference' => $row['reference'], - 'comment' => $row['comment'], - 'edit' => anchor( - 'receivings/edit/' . $row['receiving_id'], - '', - [ - 'class' => 'modal-dlg print_hide', - 'data-btn-delete' => lang('Common.delete'), - 'data-btn-submit' => lang('Common.submit'), - 'title' => lang('Receivings.update') - ]) - ]; - - foreach($report_data['details'][$key] as $drow) - { - $quantity_purchased = $drow['receiving_quantity'] > 1 ? to_quantity_decimals($drow['quantity_purchased']) . ' x ' . to_quantity_decimals($drow['receiving_quantity']) : to_quantity_decimals($drow['quantity_purchased']); - if($show_locations) - { - $quantity_purchased .= ' [' . $this->stock_location->get_location_name($drow['item_location']) . ']'; - } - - $attribute_values = expand_attribute_values($definition_names, $drow); - - $details_data[$row['receiving_id']][] = array_merge ([ - $drow['item_number'], - $drow['name'], - $drow['category'], - $quantity_purchased, - to_currency($drow['total']), - ($drow['discount_type'] == PERCENT)? $drow['discount'].'%':to_currency($drow['discount'])], $attribute_values); - } - } - - $data = [ - 'title' => lang('Reports.detailed_receivings_report'), - 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), - 'headers' => $headers, - 'editable' => 'receivings', - 'summary_data' => $summary_data, - 'details_data' => $details_data, - 'overall_summary_data' => $this->detailed_receivings->getSummaryData($inputs) - ]; - - echo view('reports/tabular_details', $data); - } - - /** - * @return void - */ - public function inventory_low(): void - { - $this->clearCache(); - - $inputs = []; - - $inventory_low = model(Inventory_low::class); - - $report_data = $inventory_low->getData($inputs); - - $tabular_data = []; - foreach($report_data as $row) - { - $tabular_data[] = [ - 'item_name' => $row['name'], - 'item_number' => $row['item_number'], - 'quantity' => to_quantity_decimals($row['quantity']), - 'reorder_level' => to_quantity_decimals($row['reorder_level']), - 'location_name' => $row['location_name'] - ]; - } - - $data = [ - 'title' => lang('Reports.inventory_low_report'), - 'subtitle' => '', - 'headers' => $inventory_low->getDataColumns(), - 'data' => $tabular_data, - 'summary_data' => $inventory_low->getSummaryData($inputs) - ]; - - echo view('reports/tabular', $data); - } - - /** - * Gets the inventory summary input view. Used in app/Config/Routes.php - * - * @return void - * @noinspection PhpUnused - */ - public function inventory_summary_input(): void - { - $this->clearCache(); - - $data = []; - $data['item_count'] = $this->inventory_summary->getItemCountDropdownArray(); - - $stock_locations = $this->stock_location->get_allowed_locations(); - $stock_locations['all'] = lang('Reports.all'); - $data['stock_locations'] = array_reverse($stock_locations, true); - - echo view('reports/inventory_summary_input', $data); - } - - /** - * @param string $location_id - * @param string $item_count - * @return void - */ - public function inventory_summary(string $location_id = 'all', string $item_count = 'all'): void - { - $this->clearCache(); - - $inputs = ['location_id' => $location_id, 'item_count' => $item_count]; - - $report_data = $this->inventory_summary->getData($inputs); - - $tabular_data = []; - foreach($report_data as $row) - { - $tabular_data[] = [ - 'item_name' => $row['name'], - 'item_number' => $row['item_number'], - 'category' => $row['category'], - 'quantity' => to_quantity_decimals($row['quantity']), - 'low_sell_quantity' => to_quantity_decimals($row['low_sell_quantity']), - 'reorder_level' => to_quantity_decimals($row['reorder_level']), - 'location_name' => $row['location_name'], - 'cost_price' => to_currency($row['cost_price']), - 'unit_price' => to_currency($row['unit_price']), - 'subtotal' => to_currency($row['sub_total_value']) - ]; - } - - $data = [ - 'title' => lang('Reports.inventory_summary_report'), - 'subtitle' => '', - 'headers' => $this->inventory_summary->getDataColumns(), - 'data' => $tabular_data, - 'summary_data' => $this->inventory_summary->getSummaryData($report_data) - ]; - - echo view('reports/tabular', $data); - } - - /** - * Returns subtitle for the reports - */ - private function _get_subtitle_report(array $inputs): string //TODO: Hungarian Notation - { - $subtitle = ''; - - if(empty($this->config['date_or_time_format'])) - { - $subtitle .= date($this->config['dateformat'], strtotime($inputs['start_date'])) . ' - ' . date($this->config['dateformat'], strtotime($inputs['end_date'])); - } - else - { - $subtitle .= date($this->config['dateformat'] . ' ' . $this->config['timeformat'], strtotime(rawurldecode($inputs['start_date']))) . ' - ' . date($this->config['dateformat'] . ' ' . $this->config['timeformat'], strtotime(rawurldecode($inputs['end_date']))); - } - - return $subtitle; - } - - /** - * @return void - */ - private function clearCache(): void - { - //Make sure the report is not cached by the browser - $this->response->setHeader('Pragma', 'no-cache') - ->appendHeader('Last-Modified', gmdate('D, d M Y H:i:s') . ' GMT') - ->appendHeader('Cache-Control', 'no-store, no-cache, must-revalidate') - ->appendHeader('Cache-Control', 'post-check=0, pre-check=0'); - } + private Attribute $attribute; + private array $config; + private Customer $customer; + private Stock_location $stock_location; + private Summary_sales $summary_sales; + private Summary_sales_taxes $summary_sales_taxes; + private Summary_categories $summary_categories; + private Summary_expenses_categories $summary_expenses_categories; + private Summary_customers $summary_customers; + private Summary_items $summary_items; + private Summary_suppliers $summary_suppliers; + private Summary_employees $summary_employees; + private Summary_taxes $summary_taxes; + private Summary_discounts $summary_discounts; + private Summary_payments $summary_payments; + private Detailed_sales $detailed_sales; + private Supplier $supplier; + private Detailed_receivings $detailed_receivings; + private Inventory_summary $inventory_summary; + + public function __construct() + { + parent::__construct('reports'); + $request = Services::request(); + $method_name = $request->getUri()->getSegment(2); + $exploder = explode('_', $method_name); + + $this->attribute = config(Attribute::class); + $this->config = config(OSPOS::class)->settings; + $this->customer = model(Customer::class); + $this->stock_location = model(Stock_location::class); + $this->summary_sales = model(Summary_sales::class); + $this->summary_sales_taxes = model(Summary_sales_taxes::class); + $this->summary_categories = model(Summary_categories::class); + $this->summary_expenses_categories = model(Summary_expenses_categories::class); + $this->summary_customers = model(Summary_customers::class); + $this->summary_items = model(Summary_items::class); + $this->summary_suppliers = model(Summary_suppliers::class); + $this->summary_employees = model(Summary_employees::class); + $this->summary_taxes = model(Summary_taxes::class); + $this->summary_discounts = model(Summary_discounts::class); + $this->summary_payments = model(Summary_payments::class); + $this->detailed_sales = model(Detailed_sales::class); + $this->supplier = model(Supplier::class); + $this->detailed_receivings = model(Detailed_receivings::class); + $this->inventory_summary = model(Inventory_summary::class); + + if(sizeof($exploder) > 1) + { + preg_match('/(?:inventory)|([^_.]*)(?:_graph|_row)?$/', $method_name, $matches); + preg_match('/^(.*?)([sy])?$/', array_pop($matches), $matches); + $submodule_id = $matches[1] . ((count($matches) > 2) ? $matches[2] : 's'); + + // check access to report submodule + if(!$this->employee->has_grant('reports_' . $submodule_id, $this->employee->get_logged_in_employee_info()->person_id)) + { + redirect('no_access/reports/reports_' . $submodule_id); + } + } + + helper('report'); + } + + /** + * @return void + */ + public function index(): void + { + $this->getIndex(); + } + + /** + * Initial Report listing screen + */ + public function getIndex(): void + { + $person_id = $this->session->get('person_id'); + $grants = $this->employee->get_employee_grants($this->session->get('person_id')); + $permissions_ids = array_column($grants, 'permission_id'); + + $data = [ + 'person_id' => $person_id, + 'grants' => $grants, + 'permission_ids' => $permissions_ids, + ]; + + echo view('reports/listing', $data); + } + + /** + * Summary Sales Report. + * @param string $start_date + * @param string $end_date + * @param string $sale_type + * @param string $location_id + * @return void + */ + public function summary_sales(string $start_date, string $end_date, string $sale_type, string $location_id = 'all'): void //TODO: Perhaps these need to be passed as an array? Too many parameters in the signature. + {//TODO: Duplicated code + $this->clearCache(); + + $inputs = [ + 'start_date' => $start_date, + 'end_date' => $end_date, + 'sale_type' => $sale_type, + 'location_id' => $location_id + ]; + + $report_data = $this->summary_sales->getData($inputs); + $summary = $this->summary_sales->getSummaryData($inputs); + + $tabular_data = []; + foreach($report_data as $row) + { + $tabular_data[] = [ + 'sale_date' => to_date(strtotime($row['sale_date'])), + 'sales' => to_quantity_decimals($row['sales']), + 'quantity' => to_quantity_decimals($row['quantity_purchased']), + 'subtotal' => to_currency($row['subtotal']), + 'tax' => to_currency_tax($row['tax']), + 'total' => to_currency($row['total']), + 'cost' => to_currency($row['cost']), + 'profit' => to_currency($row['profit']) + ]; + } + + $data = [ + 'title' => lang('Reports.sales_summary_report'), + 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), + 'headers' => $this->summary_sales->getDataColumns(), + 'data' => $tabular_data, + 'summary_data' => $summary + ]; + + echo view('reports/tabular', $data); + } + + /** + * Summary Categories report. + * @param string $start_date + * @param string $end_date + * @param string $sale_type + * @param string $location_id + * @return void + */ + public function summary_categories(string $start_date, string $end_date, string $sale_type, string $location_id = 'all'): void + {//TODO: Duplicated code + $this->clearCache(); + + $inputs = [ + 'start_date' => $start_date, + 'end_date' => $end_date, + 'sale_type' => $sale_type, + 'location_id' => $location_id + ]; + + $report_data = $this->summary_categories->getData($inputs); + $summary = $this->summary_categories->getSummaryData($inputs); + + $tabular_data = []; + foreach($report_data as $row) + { + $tabular_data[] = [ + 'category' => $row['category'], + 'quantity' => to_quantity_decimals($row['quantity_purchased']), + 'subtotal' => to_currency($row['subtotal']), + 'tax' => to_currency_tax($row['tax']), + 'total' => to_currency($row['total']), + 'cost' => to_currency($row['cost']), + 'profit' => to_currency($row['profit']) + ]; + } + + $data = [ + 'title' => lang('Reports.categories_summary_report'), + 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), + 'headers' => $this->summary_categories->getDataColumns(), + 'data' => $tabular_data, + 'summary_data' => $summary + ]; + + echo view('reports/tabular', $data); + } + + /** + * Summary Expenses by Categories report. + * @param string $start_date + * @param string $end_date + * @param string $sale_type + * @return void + */ + public function summary_expenses_categories(string $start_date, string $end_date, string $sale_type): void + { + $this->clearCache(); + + $inputs = ['start_date' => $start_date, 'end_date' => $end_date, 'sale_type' => $sale_type]; //TODO: Duplicated Code + + $report_data = $this->summary_expenses_categories->getData($inputs); + $summary = $this->summary_expenses_categories->getSummaryData($inputs); + + $tabular_data = []; + foreach($report_data as $row) + { + $tabular_data[] = [ + 'category_name' => $row['category_name'], + 'count' => $row['count'], + 'total_amount' => to_currency($row['total_amount']), + 'total_tax_amount' => to_currency($row['total_tax_amount']) + ]; + } + + $data = [ + 'title' => lang('Reports.expenses_categories_summary_report'), + 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), + 'headers' => $this->summary_expenses_categories->getDataColumns(), + 'data' => $tabular_data, + 'summary_data' => $summary + ]; + + echo view('reports/tabular', $data); + } + + /** + * Summary Customers report. + * @param string $start_date + * @param string $end_date + * @param string $sale_type + * @param string $location_id + * @return void + */ + public function summary_customers(string $start_date, string $end_date, string $sale_type, string $location_id = 'all'): void + { + $this->clearCache(); + + $inputs = [ //TODO: Duplicated Code + 'start_date' => $start_date, + 'end_date' => $end_date, + 'sale_type' => $sale_type, + 'location_id' => $location_id + ]; + + $report_data = $this->summary_customers->getData($inputs); + $summary = $this->summary_customers->getSummaryData($inputs); + + $tabular_data = []; + + foreach($report_data as $row) + { + $tabular_data[] = [ + 'customer_name' => $row['customer'], + 'sales' => to_quantity_decimals($row['sales']), + 'quantity' => to_quantity_decimals($row['quantity_purchased']), + 'subtotal' => to_currency($row['subtotal']), + 'tax' => to_currency_tax($row['tax']), + 'total' => to_currency($row['total']), + 'cost' => to_currency($row['cost']), + 'profit' => to_currency($row['profit']) + ]; + } + + $data = [ + 'title' => lang('Reports.customers_summary_report'), + 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), + 'headers' => $this->summary_customers->getDataColumns(), + 'data' => $tabular_data, + 'summary_data' => $summary + ]; + + echo view('reports/tabular', $data); + } + + /** + * Summary Suppliers report. + * @param string $start_date + * @param string $end_date + * @param string $sale_type + * @param string $location_id + * @return void + */ + public function summary_suppliers(string $start_date, string $end_date, string $sale_type, string $location_id = 'all'): void + {//TODO: Duplicated Code + $this->clearCache(); + + $inputs = [ + 'start_date' => $start_date, + 'end_date' => $end_date, + 'sale_type' => $sale_type, + 'location_id' => $location_id + ]; + + $report_data = $this->summary_suppliers->getData($inputs); + $summary = $this->summary_suppliers->getSummaryData($inputs); + + $tabular_data = []; + foreach($report_data as $row) + { + $tabular_data[] = [ + 'supplier_name' => $row['supplier'], + 'quantity' => to_quantity_decimals($row['quantity_purchased']), + 'subtotal' => to_currency($row['subtotal']), + 'tax' => to_currency_tax($row['tax']), + 'total' => to_currency($row['total']), + 'cost' => to_currency($row['cost']), + 'profit' => to_currency($row['profit']) + ]; + } + + $data = [ + 'title' => lang('Reports.suppliers_summary_report'), + 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), + 'headers' => $this->summary_suppliers->getDataColumns(), + 'data' => $tabular_data, + 'summary_data' => $summary + ]; + + echo view('reports/tabular', $data); + } + + /** + * Summary Items report. + * @param string $start_date + * @param string $end_date + * @param string $sale_type + * @param string $location_id + * @return void + */ + public function summary_items(string $start_date, string $end_date, string $sale_type, string $location_id = 'all'): void + { + $this->clearCache(); + + $inputs = [ + 'start_date' => $start_date, + 'end_date' => $end_date, + 'sale_type' => $sale_type, + 'location_id' => $location_id + ]; + + $report_data = $this->summary_items->getData($inputs); + $summary = $this->summary_items->getSummaryData($inputs); + + $tabular_data = []; + + foreach($report_data as $row) + { + $tabular_data[] = [ + 'item_name' => $row['name'], + 'category' => $row['category'], + 'cost_price' => $row['cost_price'], + 'unit_price' => $row['unit_price'], + 'quantity' => to_quantity_decimals($row['quantity_purchased']), + 'subtotal' => to_currency($row['subtotal']), + 'tax' => to_currency_tax($row['tax']), + 'total' => to_currency($row['total']), + 'cost' => to_currency($row['cost']), + 'profit' => to_currency($row['profit']) + ]; + } + + $data = [ + 'title' => lang('Reports.items_summary_report'), + 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), + 'headers' => $this->summary_items->getDataColumns(), + 'data' => $tabular_data, + 'summary_data' => $summary + ]; + + echo view('reports/tabular', $data); + } + + /** + * Summary Employees report. + * @param string $start_date + * @param string $end_date + * @param string $sale_type + * @param string $location_id + * @return void + */ + public function summary_employees(string $start_date, string $end_date, string $sale_type, string $location_id = 'all'): void + { + $this->clearCache(); + + $inputs = [ + 'start_date' => $start_date, + 'end_date' => $end_date, + 'sale_type' => $sale_type, + 'location_id' => $location_id + ]; + + $report_data = $this->summary_employees->getData($inputs); + $summary = $this->summary_employees->getSummaryData($inputs); + + $tabular_data = []; + + foreach($report_data as $row) + { + $tabular_data[] = [ + 'employee_name' => $row['employee'], + 'sales' => to_quantity_decimals($row['sales']), + 'quantity' => to_quantity_decimals($row['quantity_purchased']), + 'subtotal' => to_currency($row['subtotal']), + 'tax' => to_currency_tax($row['tax']), + 'total' => to_currency($row['total']), + 'cost' => to_currency($row['cost']), + 'profit' => to_currency($row['profit']) + ]; + } + + $data = [ + 'title' => lang('Reports.employees_summary_report'), + 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), + 'headers' => $this->summary_employees->getDataColumns(), + 'data' => $tabular_data, + 'summary_data' => $summary + ]; + + echo view('reports/tabular', $data); + } + + /** + * Summary Taxes report. + * @param string $start_date + * @param string $end_date + * @param string $sale_type + * @param string $location_id + * @return void + */ + public function summary_taxes(string $start_date, string $end_date, string $sale_type, string $location_id = 'all'): void + {//TODO: Duplicate Code + $this->clearCache(); + + $inputs = [ + 'start_date' => $start_date, + 'end_date' => $end_date, + 'sale_type' => $sale_type, + 'location_id' => $location_id + ]; + + $report_data = $this->summary_taxes->getData($inputs); + $summary = $this->summary_taxes->getSummaryData($inputs); + + $tabular_data = []; + + foreach($report_data as $row) + { + $tabular_data[] = [ + 'tax_name' => $row['name'], + 'tax_percent' => $row['percent'], + 'report_count' => $row['count'], + 'subtotal' => to_currency($row['subtotal']), + 'tax' => to_currency_tax($row['tax']), + 'total' => to_currency($row['total']) + ]; + } + + $data = [ + 'title' => lang('Reports.taxes_summary_report'), + 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), + 'headers' => $this->summary_taxes->getDataColumns(), + 'data' => $tabular_data, + 'summary_data' => $summary + ]; + + echo view('reports/tabular', $data); + } + + /** + * Summary Sales Taxes report + */ + public function summary_sales_taxes(string $start_date, string $end_date, string $sale_type, string $location_id = 'all'): void + {//TODO: Duplicated code + $this->clearCache(); + + $inputs = [ + 'start_date' => $start_date, + 'end_date' => $end_date, + 'sale_type' => $sale_type, + 'location_id' => $location_id + ]; + + $report_data = $this->summary_sales_taxes->getData($inputs); + $summary = $this->summary_sales_taxes->getSummaryData($inputs); + + $tabular_data = []; + foreach($report_data as $row) + { + $tabular_data[] = [ + 'reporting_authority' => $row['reporting_authority'], + 'jurisdiction_name' => $row['jurisdiction_name'], + 'tax_category' => $row['tax_category'], + 'tax_rate' => $row['tax_rate'], + 'tax' => to_currency_tax($row['tax']) + ]; + } + + $data = [ + 'title' => lang('Reports.sales_taxes_summary_report'), + 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), + 'headers' => $this->summary_sales_taxes->getDataColumns(), + 'data' => $tabular_data, + 'summary_data' => $summary + ]; + + echo view('reports/tabular', $data); + } + + /** + * Summary Discounts report input. Used in app/Config/Routes.php + * + * @return void + * @noinspection PhpUnused + */ + public function summary_discounts_input(): void + { + $this->clearCache(); + + $stock_locations = $data = $this->stock_location->get_allowed_locations('sales'); + $stock_locations['all'] = lang('Reports.all'); + $data['stock_locations'] = array_reverse($stock_locations, true); + $data['mode'] = 'sale'; + $data['discount_type_options'] = ['0' => lang('Reports.discount_percent'), '1'=> lang('Reports.discount_fixed')]; + $data['sale_type_options'] = $this->get_sale_type_options(); + + echo view('reports/date_input', $data); + } + + /** + * Summary Discounts report + **/ + public function summary_discounts(string $start_date, string $end_date, string $sale_type, string $location_id = 'all', int $discount_type = 0): void + {//TODO: Duplicated Code + $this->clearCache(); + + $inputs = [ + 'start_date' => $start_date, + 'end_date' => $end_date, + 'sale_type' => $sale_type, + 'location_id' => $location_id, + 'discount_type' => $discount_type + ]; + + $report_data = $this->summary_discounts->getData($inputs); + $summary = $this->summary_discounts->getSummaryData($inputs); + + $tabular_data = []; + foreach($report_data as $row) + { + $tabular_data[] = [ + 'total' => to_currency($row['total']), + 'discount' => $row['discount'], + 'count' => $row['count'] + ]; + } + + $data = [ + 'title' => lang('Reports.discounts_summary_report'), + 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), + 'headers' => $this->summary_discounts->getDataColumns(), + 'data' => $tabular_data, + 'summary_data' => $summary + ]; + + echo view('reports/tabular', $data); + } + + /** + * Summary Payments report + */ + public function summary_payments(string $start_date, string $end_date): void + { + $this->clearCache(); + + $inputs = [ + 'start_date' => $start_date, + 'end_date' => $end_date, + 'sale_type' => 'complete', + 'location_id' => 'all' + ]; + + $report_data = $this->summary_payments->getData($inputs); + $summary = $this->summary_payments->getSummaryData($inputs); + + $tabular_data = []; + + foreach($report_data as $row) + { + if($row['trans_group'] == '
    ') + { + $tabular_data[] = [ + 'trans_group' => '--', + 'trans_type' => '--', + 'trans_sales' => '--', + 'trans_amount' => '--', + 'trans_payments' => '--', + 'trans_refunded' => '--', + 'trans_due' => '--' + ]; + } + else + { + if(empty($row['trans_type'])) + { + $row['trans_type'] = lang('Reports.trans_nopay_sales'); + } + + $tabular_data[] = [ + 'trans_group' => $row['trans_group'], + 'trans_type' => $row['trans_type'], + 'trans_sales' => $row['trans_sales'], + 'trans_amount' => to_currency($row['trans_amount']), + 'trans_payments' => to_currency($row['trans_payments']), + 'trans_refunded' => to_currency($row['trans_refunded']), + 'trans_due' => to_currency($row['trans_due']) + ]; + } + } + + $data = [ + 'title' => lang('Reports.payments_summary_report'), + 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), + 'headers' => $this->summary_payments->getDataColumns(), + 'data' => $tabular_data, + 'summary_data' => $summary + ]; + + echo view('reports/tabular', $data); + } + + /** + * Input for reports that require only a date range. Used in app/Config/Routes.php + * + * @return void + * @noinspection PhpUnused + */ + public function date_input(): void + {//TODO: Duplicated Code + $this->clearCache(); + + $stock_locations = $data = $this->stock_location->get_allowed_locations('sales'); + $stock_locations['all'] = lang('Reports.all'); + $data['stock_locations'] = array_reverse($stock_locations, true); + $data['mode'] = 'sale'; + $data['sale_type_options'] = $this->get_sale_type_options(); + + echo view('reports/date_input', $data); + } + + /** + * Input for reports that require only a date range. Used in app/Config/Routes.php + * + * @return void + * @noinspection PhpUnused + */ + public function date_input_only(): void + { + $this->clearCache(); + + $data = []; + echo view('reports/date_input', $data); + } + + /** + * Input for reports that require only a date range. Used in app/Config/Routes.php + * + * @return void + * @noinspection PhpUnused + */ + public function date_input_sales(): void + {//TODO: Duplicated Code + $this->clearCache(); + + $stock_locations = $data = $this->stock_location->get_allowed_locations('sales'); + $stock_locations['all'] = lang('Reports.all'); + $data['stock_locations'] = array_reverse($stock_locations, true); + $data['mode'] = 'sale'; + $data['sale_type_options'] = $this->get_sale_type_options(); + + echo view('reports/date_input', $data); + } + + /** + * Receivings date input. Used in app/Config/Routes.php + * + * @return void + * @noinspection PhpUnused + */ + public function date_input_recv(): void + { + $stock_locations = $data = $this->stock_location->get_allowed_locations('receivings'); + $stock_locations['all'] = lang('Reports.all'); + $data['stock_locations'] = array_reverse($stock_locations, true); + $data['mode'] = 'receiving'; + + echo view('reports/date_input', $data); + } + + /** + * Graphical Expenses by Categories report. Used in app/Config/Routes.php + * + * @param string $start_date + * @param string $end_date + * @param string $sale_type + * @return void + * @noinspection PhpUnused + */ + public function graphical_summary_expenses_categories(string $start_date, string $end_date, string $sale_type): void + { + $this->clearCache(); + + $inputs = [ + 'start_date' => $start_date, + 'end_date' => $end_date, + 'sale_type' => $sale_type + ]; + + $report_data = $this->summary_expenses_categories->getData($inputs); + $summary = $this->summary_expenses_categories->getSummaryData($inputs); + + $labels = []; + $series = []; + foreach($report_data as $row) + { + $labels[] = $row['category_name']; + $series[] = [ + 'meta' => $row['category_name'] . ' ' . round($row['total_amount'] / $summary['expenses_total_amount'] * 100, 2) . '%', + 'value' => $row['total_amount'] + ]; + } + + $data = [ + 'title' => lang('Reports.expenses_categories_summary_report'), + 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), + 'chart_type' => 'reports/graphs/pie', + 'labels_1' => $labels, + 'series_data_1' => $series, + 'summary_data_1' => $summary, + 'show_currency' => true + ]; + + echo view('reports/graphical', $data); + } + + /** + * Graphical summary sales report + * + * @param string $start_date + * @param string $end_date + * @param string $sale_type + * @param string $location_id + * @return void + */ + public function graphical_summary_sales(string $start_date, string $end_date, string $sale_type, string $location_id = 'all'): void + { + $this->clearCache(); + + $inputs = [ + 'start_date' => $start_date, + 'end_date' => $end_date, + 'sale_type' => $sale_type, + 'location_id' => $location_id + ]; + + $report_data = $this->summary_sales->getData($inputs); + $summary = $this->summary_sales->getSummaryData($inputs); + + $labels = []; + $series = []; + foreach($report_data as $row) + { + $date = to_date(strtotime($row['sale_date'])); + $labels[] = $date; + $series[] = ['meta' => $date, 'value' => $row['total']]; + } + + $data = [ + 'title' => lang('Reports.sales_summary_report'), + 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), + 'chart_type' => 'reports/graphs/line', + 'labels_1' => $labels, + 'series_data_1' => $series, + 'summary_data_1' => $summary, + 'yaxis_title' => lang('Reports.revenue'), + 'xaxis_title' => lang('Reports.date'), + 'show_currency' => true + ]; + + echo view('reports/graphical', $data); + } + + /** + * Graphical summary items report + * + * @param string $start_date + * @param string $end_date + * @param string $sale_type + * @param string $location_id + * @return void + */ + public function graphical_summary_items(string $start_date, string $end_date, string $sale_type, string $location_id = 'all'): void + { + $this->clearCache(); + + $inputs = [ + 'start_date' => $start_date, + 'end_date' => $end_date, + 'sale_type' => $sale_type, + 'location_id' => $location_id + ]; + + + $report_data = $this->summary_items->getData($inputs); + $summary = $this->summary_items->getSummaryData($inputs); + + $labels = []; + $series = []; + + foreach($report_data as $row) + { + $labels[] = $row['name']; + $series[] = $row['total']; + } + + $data = [ + 'title' => lang('Reports.items_summary_report'), + 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), + 'chart_type' => 'reports/graphs/hbar', + 'labels_1' => $labels, + 'series_data_1' => $series, + 'summary_data_1' => $summary, + 'yaxis_title' => lang('Reports.items'), + 'xaxis_title' => lang('Reports.revenue'), + 'show_currency' => true + ]; + + echo view('reports/graphical', $data); + } + + /** + * Graphical summary customers report. + * + * @param string $start_date + * @param string $end_date + * @param string $sale_type + * @param string $location_id + * @return void + */ + public function graphical_summary_categories(string $start_date, string $end_date, string $sale_type, string $location_id = 'all'): void + {//TODO: Duplicated Code + $this->clearCache(); + + $inputs = [ + 'start_date' => $start_date, + 'end_date' => $end_date, + 'sale_type' => $sale_type, + 'location_id' => $location_id + ]; + + $report_data = $this->summary_categories->getData($inputs); + $summary = $this->summary_categories->getSummaryData($inputs); + + $labels = []; + $series = []; + foreach($report_data as $row) + { + $labels[] = $row['category']; + $series[] = ['meta' => $row['category'] . ' ' . round($row['total'] / $summary['total'] * 100, 2) . '%', 'value' => $row['total']]; + } + + $data = [ + 'title' => lang('Reports.categories_summary_report'), + 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), + 'chart_type' => 'reports/graphs/pie', + 'labels_1' => $labels, + 'series_data_1' => $series, + 'summary_data_1' => $summary, + 'show_currency' => true + ]; + + echo view('reports/graphical', $data); + } + + /** + * Graphical summary suppliers report + * + * @param string $start_date + * @param string $end_date + * @param string $sale_type + * @param string $location_id + * @return void + */ + public function graphical_summary_suppliers(string $start_date, string $end_date, string $sale_type, string $location_id = 'all'): void + {//TODO: Duplicated Code + $this->clearCache(); + + $inputs = [ + 'start_date' => $start_date, + 'end_date' => $end_date, + 'sale_type' => $sale_type, + 'location_id' => $location_id + ]; + + + $report_data = $this->summary_suppliers->getData($inputs); + $summary = $this->summary_suppliers->getSummaryData($inputs); + + $labels = []; + $series = []; + + foreach($report_data as $row) + { + $labels[] = $row['supplier']; + $series[] = ['meta' => $row['supplier'] . ' ' . round($row['total'] / $summary['total'] * 100, 2) . '%', 'value' => $row['total']]; + } + + $data = [ + 'title' => lang('Reports.suppliers_summary_report'), + 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), + 'chart_type' => 'reports/graphs/pie', + 'labels_1' => $labels, + 'series_data_1' => $series, + 'summary_data_1' => $summary, + 'show_currency' => true + ]; + + echo view('reports/graphical', $data); + } + + /** + * Graphical summary employees report + * + * @param string $start_date + * @param string $end_date + * @param string $sale_type + * @param string $location_id + * @return void + */ + public function graphical_summary_employees(string $start_date, string $end_date, string $sale_type, string $location_id = 'all'): void + { + $this->clearCache(); + + $inputs = [ + 'start_date' => $start_date, + 'end_date' => $end_date, + 'sale_type' => $sale_type, + 'location_id' => $location_id + ]; + + $report_data = $this->summary_employees->getData($inputs); + $summary = $this->summary_employees->getSummaryData($inputs); + + $labels = []; + $series = []; + + foreach($report_data as $row) + { + $labels[] = $row['employee']; + $series[] = ['meta' => $row['employee'] . ' ' . round($row['total'] / $summary['total'] * 100, 2) . '%', 'value' => $row['total']]; + } + + $data = [ + 'title' => lang('Reports.employees_summary_report'), + 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), + 'chart_type' => 'reports/graphs/pie', + 'labels_1' => $labels, + 'series_data_1' => $series, + 'summary_data_1' => $summary, + 'show_currency' => true + ]; + + echo view('reports/graphical', $data); + } + + /** + * Graphical summary taxes report + * + * @param string $start_date + * @param string $end_date + * @param string $sale_type + * @param string $location_id + * @return void + */ + public function graphical_summary_taxes(string $start_date, string $end_date, string $sale_type, string $location_id = 'all'): void + {//TODO: Duplicated Code + $this->clearCache(); + + $inputs = [ + 'start_date' => $start_date, + 'end_date' => $end_date, + 'sale_type' => $sale_type, + 'location_id' => $location_id + ]; + + $report_data = $this->summary_taxes->getData($inputs); + $summary = $this->summary_taxes->getSummaryData($inputs); + + $labels = []; + $series = []; + + foreach($report_data as $row) + { + $labels[] = $row['percent']; + $series[] = ['meta' => $row['percent'] . ' ' . round($row['total'] / $summary['total'] * 100, 2) . '%', 'value' => $row['total']]; + } + + $data = [ + 'title' => lang('Reports.taxes_summary_report'), + 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), + 'chart_type' => 'reports/graphs/pie', + 'labels_1' => $labels, + 'series_data_1' => $series, + 'summary_data_1' => $summary, + 'show_currency' => true + ]; + + echo view('reports/graphical', $data); + } + + /** + * Graphical summary sales taxes report + * + * @param string $start_date + * @param string $end_date + * @param string $sale_type + * @param string $location_id + * @return void + */ + public function graphical_summary_sales_taxes(string $start_date, string $end_date, string $sale_type, string $location_id = 'all'): void + {//TODO: Duplicated Code + $this->clearCache(); + + $inputs = [ + 'start_date' => $start_date, + 'end_date' => $end_date, + 'sale_type' => $sale_type, + 'location_id' => $location_id + ]; + + $report_data = $this->summary_sales_taxes->getData($inputs); + $summary = $this->summary_sales_taxes->getSummaryData($inputs); + + $labels = []; + $series = []; + + foreach($report_data as $row) + { + $labels[] = $row['jurisdiction_name']; + $series[] = ['meta' => $row['tax_rate'] . '%', 'value' => $row['tax']]; + } + + $data = [ + 'title' => lang('Reports.sales_taxes_summary_report'), + 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), + 'chart_type' => 'reports/graphs/pie', + 'labels_1' => $labels, + 'series_data_1' => $series, + 'summary_data_1' => $summary, + 'show_currency' => true + ]; + + echo view('reports/graphical', $data); + } + + /** + * Graphical summary customers report. + * + * @param string $start_date + * @param string $end_date + * @param string $sale_type + * @param string $location_id + * @return void + */ + public function graphical_summary_customers(string $start_date, string $end_date, string $sale_type, string $location_id = 'all'): void + {//TODO: Duplicated Code + $this->clearCache(); + + $inputs = [ + 'start_date' => $start_date, + 'end_date' => $end_date, + 'sale_type' => $sale_type, + 'location_id' => $location_id + ]; + + $report_data = $this->summary_customers->getData($inputs); + $summary = $this->summary_customers->getSummaryData($inputs); + + $labels = []; + $series = []; + + foreach($report_data as $row) + { + $labels[] = $row['customer']; + $series[] = $row['total']; + } + + $data = [ + 'title' => lang('Reports.customers_summary_report'), + 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), + 'chart_type' => 'reports/graphs/hbar', + 'labels_1' => $labels, + 'series_data_1' => $series, + 'summary_data_1' => $summary, + 'yaxis_title' => lang('Reports.customers'), + 'xaxis_title' => lang('Reports.revenue'), + 'show_currency' => true + ]; + + echo view('reports/graphical', $data); + } + + /** + * Graphical summary discounts report. Used in app/Config/Routes.php + * + * @param string $start_date Start date of the report + * @param string $end_date End date of the report + * @param string $sale_type + * @param string $location_id ID of the location to be reported or 'all' if none is specified + * @param int $discount_type + * @noinspection PhpUnused + */ + public function graphical_summary_discounts(string $start_date, string $end_date, string $sale_type, string $location_id = 'all', int $discount_type = 0): void + {//TODO: Duplicated Code + $this->clearCache(); + + $inputs = [ + 'start_date' => $start_date, + 'end_date' => $end_date, + 'sale_type' => $sale_type, + 'location_id' => $location_id, + 'discount_type'=>$discount_type + ]; + + $report_data = $this->summary_discounts->getData($inputs); + $summary = $this->summary_discounts->getSummaryData($inputs); + + $labels = []; + $series = []; + + foreach($report_data as $row) + { + $labels[] = $row['discount']; + $series[] = $row['count']; + } + + $data = [ + 'title' => lang('Reports.discounts_summary_report'), + 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), + 'chart_type' => 'reports/graphs/bar', + 'labels_1' => $labels, + 'series_data_1' => $series, + 'summary_data_1' => $summary, + 'yaxis_title' => lang('Reports.count'), + 'xaxis_title' => lang('Reports.discount'), + 'show_currency' => false + ]; + + echo view('reports/graphical', $data); + } + + /** + * Graphical summary payments report + * + * @param string $start_date + * @param string $end_date + * @param string $sale_type + * @param string $location_id + * @return void + */ + public function graphical_summary_payments(string $start_date, string $end_date, string $sale_type, string $location_id = 'all'): void + { + $this->clearCache(); + + $inputs = [ + 'start_date' => $start_date, + 'end_date' => $end_date, + 'sale_type' => $sale_type, + 'location_id' => $location_id + ]; + + $report_data = $this->summary_payments->getData($inputs); + $summary = $this->summary_payments->getSummaryData($inputs); + + $labels = []; + $series = []; + + foreach($report_data as $row) + { + if($row['trans_group'] == lang('Reports.trans_payments') && !empty($row['trans_amount'])) + { + $labels[] = $row['trans_type']; + $series[] = ['meta' => $row['trans_type'] . ' ' . round($row['trans_amount'] / $summary['total'] * 100, 2) . '%', 'value' => $row['trans_amount']]; + } + } + + $data = [ + 'title' => lang('Reports.payments_summary_report'), + 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), + 'chart_type' => 'reports/graphs/pie', + 'labels_1' => $labels, + 'series_data_1' => $series, + 'summary_data_1' => $summary, + 'show_currency' => true + ]; + + echo view('reports/graphical', $data); + } + + /** + * Gets the specific customer input view. Used in app/Config/Routes.php + * + * @return void + * @noinspection PhpUnused + */ + public function specific_customer_input(): void + { + $this->clearCache(); + + $data = []; + $data['specific_input_name'] = lang('Reports.customer'); + $customers = []; + foreach($this->customer->get_all()->getResult() as $customer) + { + if(isset($customer->company_name)) + { + $customers[$customer->person_id] = $customer->first_name . ' ' . $customer->last_name. ' ' . ' [ '.$customer->company_name.' ] '; + } + else + { + $customers[$customer->person_id] = $customer->first_name . ' ' . $customer->last_name; + } + } + $data['specific_input_data'] = $customers; + $data['sale_type_options'] = $this->get_sale_type_options(); + + $data['payment_type'] = $this->get_payment_type(); + echo view('reports/specific_customer_input', $data); + } + + /** + * @return array + */ + public function get_payment_type(): array + { + return [ + 'all' => lang('Common.none_selected_text'), + 'cash' => lang('Sales.cash'), + 'due' => lang('Sales.due'), + 'check' => lang('Sales.check'), + 'credit' => lang('Sales.credit'), + 'debit' => lang('Sales.debit'), + 'invoices' => lang('Sales.invoice') + ]; + } + + /** + * Detailed customer report. Used in app/Config/Routes.php + * + * @param string $start_date + * @param string $end_date + * @param string $customer_id + * @param string $sale_type + * @param string $payment_type + * @return void + * @noinspection PhpUnused + */ + public function specific_customers(string $start_date, string $end_date, string $customer_id, string $sale_type, string $payment_type): void + { + $this->clearCache(); + + $inputs = ['start_date' => $start_date, 'end_date' => $end_date, 'customer_id' => $customer_id, 'sale_type' => $sale_type, 'payment_type' => $payment_type]; + + $specific_customer = model(Specific_customer::class); + + $specific_customer->create($inputs); + + $headers = $specific_customer->getDataColumns(); + $report_data = $specific_customer->getData($inputs); + + $summary_data = []; + $details_data = []; + $details_data_rewards = []; + + foreach($report_data['summary'] as $key => $row) + { + if($row['sale_status'] == CANCELED) + { + $button_key = 'data-btn-restore'; + $button_label = lang('Common.restore'); + } + else + { + $button_key = 'data-btn-delete'; + $button_label = lang('Common.delete'); + } + + $summary_data[] = [ + 'id' => $row['sale_id'], + 'type_code' => $row['type_code'], + 'sale_time' => to_datetime(strtotime($row['sale_time'])), + 'quantity' => to_quantity_decimals($row['items_purchased']), + 'employee_name' => $row['employee_name'], + 'subtotal' => to_currency($row['subtotal']), + 'tax' => to_currency_tax($row['tax']), + 'total' => to_currency($row['total']), + 'cost' => to_currency($row['cost']), + 'profit' => to_currency($row['profit']), + 'payment_type' => $row['payment_type'], + 'comment' => $row['comment'], + 'edit' => anchor( + 'sales/edit/'. $row['sale_id'], + '', + [ + 'class' => 'modal-dlg print_hide', + $button_key => $button_label, + 'data-btn-submit' => lang('Common.submit'), + 'title' => lang('Sales.update') + ]) + ]; + + foreach($report_data['details'][$key] as $drow) //TODO: Duplicated Code + { + $details_data[$row['sale_id']][] = [ + $drow['name'], + $drow['category'], + $drow['item_number'], + $drow['description'], + to_quantity_decimals($drow['quantity_purchased']), + to_currency($drow['subtotal']), + to_currency_tax($drow['tax']), + to_currency($drow['total']), + to_currency($drow['cost']), + to_currency($drow['profit']), + ($drow['discount_type'] == PERCENT)? $drow['discount'].'%':to_currency($drow['discount']) + ]; + } + + if(isset($report_data['rewards'][$key])) + { + foreach($report_data['rewards'][$key] as $drow) + { + $details_data_rewards[$row['sale_id']][] = [$drow['used'], $drow['earned']]; + } + } + } + + $customer_info = $this->customer->get_info($customer_id); + $customer_name = !empty($customer_info->company_name) //TODO: This variable is not used anywhere in the code. Should it be or can it be deleted? + ? "[ $customer_info->company_name ]" + : $customer_info->company_name; + + //TODO: Duplicated Code + $data = [ + 'title' => $customer_info->first_name . ' ' . $customer_info->last_name . ' ' . lang('Reports.report'), + 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), + 'headers' => $headers, + 'editable' => 'sales', + 'summary_data' => $summary_data, + 'details_data' => $details_data, + 'details_data_rewards' => $details_data_rewards, + 'overall_summary_data' => $specific_customer->getSummaryData($inputs) + ]; + + echo view('reports/tabular_details', $data); + } + + /** + * Detailed employee report input form. Used in app/Config/Routes.php + * + * @return void + * @noinspection PhpUnused + */ + public function specific_employee_input(): void + { + $this->clearCache(); + + $data = []; + $data['specific_input_name'] = lang('Reports.employee'); + + $employees = []; + foreach($this->employee->get_all()->getResult() as $employee) + { + $employees[$employee->person_id] = $employee->first_name . ' ' . $employee->last_name; + } + $data['specific_input_data'] = $employees; + $data['sale_type_options'] = $this->get_sale_type_options(); + + echo view('reports/specific_input', $data); + } + + /** + * Detailed employee report. Used in app/Config/Routes.php + * + * @param string $start_date + * @param string $end_date + * @param string $employee_id + * @param string $sale_type + * @return void + * @noinspection PhpUnused + */ + public function specific_employees(string $start_date, string $end_date, string $employee_id, string $sale_type): void + { + $this->clearCache(); + + $inputs = ['start_date' => $start_date, 'end_date' => $end_date, 'employee_id' => $employee_id, 'sale_type' => $sale_type]; + + $specific_employee = model(Specific_employee::class); + + $specific_employee->create($inputs); + + $headers = $specific_employee->getDataColumns(); + $report_data = $specific_employee->getData($inputs); + + $summary_data = []; + $details_data = []; + $details_data_rewards = []; + + foreach($report_data['summary'] as $key => $row) + { + if($row['sale_status'] == CANCELED) + { + $button_key = 'data-btn-restore'; + $button_label = lang('Common.restore'); + } + else + { + $button_key = 'data-btn-delete'; + $button_label = lang('Common.delete'); + } + + $summary_data[] = [ + 'id' => $row['sale_id'], + 'type_code' => $row['type_code'], + 'sale_time' => to_datetime(strtotime($row['sale_time'])), + 'quantity' => to_quantity_decimals($row['items_purchased']), + 'customer_name' => $row['customer_name'], + 'subtotal' => to_currency($row['subtotal']), + 'tax' => to_currency_tax($row['tax']), + 'total' => to_currency($row['total']), + 'cost' => to_currency($row['cost']), + 'profit' => to_currency($row['profit']), + 'payment_type' => $row['payment_type'], + 'comment' => $row['comment'], + 'edit' => anchor( + 'sales/edit/'. $row['sale_id'], + '', + [ + 'class' => 'modal-dlg print_hide', + $button_key => $button_label, + 'data-btn-submit' => lang('Common.submit'), + 'title' => lang('Sales.update') + ]) + ]; + //TODO: Duplicated Code + foreach($report_data['details'][$key] as $drow) + { + $details_data[$row['sale_id']][] = [ + $drow['name'], + $drow['category'], + $drow['item_number'], + $drow['description'], + to_quantity_decimals($drow['quantity_purchased']), + to_currency($drow['subtotal']), + to_currency_tax($drow['tax']), + to_currency($drow['total']), + to_currency($drow['cost']), + to_currency($drow['profit']), + ($drow['discount_type'] == PERCENT)? $drow['discount'].'%':to_currency($drow['discount']) + ]; + } + + if(isset($report_data['rewards'][$key])) + { + foreach($report_data['rewards'][$key] as $drow) + { + $details_data_rewards[$row['sale_id']][] = [$drow['used'], $drow['earned']]; + } + } + } + + $employee_info = $this->employee->get_info($employee_id); + //TODO: Duplicated Code + $data = [ + 'title' => $employee_info->first_name . ' ' . $employee_info->last_name . ' ' . lang('Reports.report'), + 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), + 'headers' => $headers, + 'editable' => 'sales', + 'summary_data' => $summary_data, + 'details_data' => $details_data, + 'details_data_rewards' => $details_data_rewards, + 'overall_summary_data' => $specific_employee->getSummaryData($inputs) + ]; + + echo view('reports/tabular_details', $data); + } + + /** + * Detailed discount report. Used in app/Config/Routes.php + * + * @return void + * @noinspection PhpUnused + */ + public function specific_discount_input(): void + { + $this->clearCache(); + + $data = []; + $data['specific_input_name'] = lang('Reports.discount'); + + $discounts = []; + for($i = 0; $i <= 100; $i += 10) + { + $discounts[$i] = $i . '%'; + } + $data['specific_input_data'] = $discounts; + $data['discount_type_options'] = ['0' => lang('Reports.discount_percent'), '1'=> lang('Reports.discount_fixed')]; + $data['sale_type_options'] = $this->get_sale_type_options(); + + echo view('reports/specific_input', $data); + } + + /** + * Detailed discount report. Used in app/Config/Routes.php + * + * @param string $start_date + * @param string $end_date + * @param string $discount + * @param string $sale_type + * @param string $discount_type + * @return void + * @noinspection PhpUnused + */ + public function specific_discounts(string $start_date, string $end_date, string $discount, string $sale_type, string $discount_type): void + { + $this->clearCache(); + + $inputs = [ + 'start_date' => $start_date, + 'end_date' => $end_date, + 'discount' => $discount, + 'sale_type' => $sale_type, + 'discount_type' => $discount_type + ]; + + $specific_discount = model(Specific_discount::class); + + $specific_discount->create($inputs); + + $headers = $specific_discount->getDataColumns(); + $report_data = $specific_discount->getData($inputs); + + $summary_data = []; + $details_data = []; + $details_data_rewards = []; + + foreach($report_data['summary'] as $key => $row) + { //TODO: Duplicated Code + if($row['sale_status'] == CANCELED) + { + $button_key = 'data-btn-restore'; + $button_label = lang('Common.restore'); + } + else + { + $button_key = 'data-btn-delete'; + $button_label = lang('Common.delete'); + } + + $summary_data[] = [ + 'id' => $row['sale_id'], + 'type_code' => $row['type_code'], + 'sale_time' => to_datetime(strtotime($row['sale_time'])), + 'quantity' => to_quantity_decimals($row['items_purchased']), + 'employee_name' => $row['employee_name'], + 'customer_name' => $row['customer_name'], + 'subtotal' => to_currency($row['subtotal']), + 'tax' => to_currency_tax($row['tax']), + 'total' => to_currency($row['total']), + 'cost' => to_currency($row['cost']), + 'profit' => to_currency($row['profit']), + 'payment_type' => $row['payment_type'], + 'comment' => $row['comment'], + 'edit' => anchor( + 'sales/edit/'. $row['sale_id'], + '', + [ + 'class' => 'modal-dlg print_hide', + $button_key => $button_label, + 'data-btn-submit' => lang('Common.submit'), + 'title' => lang('Sales.update') + ]) + ]; + //TODO: Duplicated Code + foreach($report_data['details'][$key] as $drow) + { + $details_data[$row['sale_id']][] = [ + $drow['name'], + $drow['category'], + $drow['item_number'], + $drow['description'], + to_quantity_decimals($drow['quantity_purchased']), + to_currency($drow['subtotal']), + to_currency_tax($drow['tax']), + to_currency($drow['total']), + to_currency($drow['cost']), + to_currency($drow['profit']), + ($drow['discount_type'] == PERCENT) + ? $drow['discount'].'%' + : to_currency($drow['discount']) + ]; + } + + if(isset($report_data['rewards'][$key])) + { + foreach($report_data['rewards'][$key] as $drow) + { + $details_data_rewards[$row['sale_id']][] = [$drow['used'], $drow['earned']]; + } + } + } + + $data = [ + 'title' => $discount . '% ' . lang('Reports.discount') . ' ' . lang('Reports.report'), + 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), + 'headers' => $headers, + 'summary_data' => $summary_data, + 'details_data' => $details_data, + 'details_data_rewards' => $details_data_rewards, + 'overall_summary_data' => $specific_discount->getSummaryData($inputs) + ]; + + echo view('reports/tabular_details', $data); + } + + /** + * Gets the detailed sales data row for given sale_id. Used in app/Views/reports/tabular_details.php + * + * @param string $sale_id + * @return void + * @noinspection PhpUnused + */ + public function get_detailed_sales_row(string $sale_id): void + { + $this->clearCache(); + + $inputs = ['sale_id' => $sale_id]; + + $this->detailed_sales->create($inputs); + + $report_data = $this->detailed_sales->getDataBySaleId($sale_id); + + if($report_data['sale_status'] == CANCELED) + { + $button_key = 'data-btn-restore'; + $button_label = lang('Common.restore'); + } + else + { + $button_key = 'data-btn-delete'; + $button_label = lang('Common.delete'); + } + + $summary_data = [ + 'sale_id' => $report_data['sale_id'], + 'sale_time' => to_datetime(strtotime($report_data['sale_time'])), + 'quantity' => to_quantity_decimals($report_data['items_purchased']), + 'employee_name' => $report_data['employee_name'], + 'customer_name' => $report_data['customer_name'], + 'subtotal' => to_currency($report_data['subtotal']), + 'tax' => to_currency_tax($report_data['tax']), + 'total' => to_currency($report_data['total']), + 'cost' => to_currency($report_data['cost']), + 'profit' => to_currency($report_data['profit']), + 'payment_type' => $report_data['payment_type'], + 'comment' => $report_data['comment'], + 'edit' => anchor( + 'sales/edit/'. $report_data['sale_id'], + '', + [ + 'class' => 'modal-dlg print_hide', + $button_key => $button_label, + 'data-btn-submit' => lang('Common.submit'), + 'title' => lang('Sales.update') + ]) + ]; + + echo json_encode ([$sale_id => $summary_data]); + } + + /** + * Detailed Supplier report input form. Used in app/Config/Routes.php + * + * @return void + * @noinspection PhpUnused + */ + public function specific_supplier_input(): void + { + $this->clearCache(); + + $data = []; + $data['specific_input_name'] = lang('Reports.supplier'); + + $suppliers = []; + foreach($this->supplier->get_all()->getResult() as $supplier) + { + $suppliers[$supplier->person_id] = $supplier->company_name . ' (' . $supplier->first_name . ' ' . $supplier->last_name . ')'; + } + $data['specific_input_data'] = $suppliers; + $data['sale_type_options'] = $this->get_sale_type_options(); + + echo view('reports/specific_input', $data); + } + + /** + * Detailed suppliers report. + * + * @param string $start_date + * @param string $end_date + * @param string $supplier_id + * @param string $sale_type + * @return void + */ + public function specific_suppliers(string $start_date, string $end_date, string $supplier_id, string $sale_type): void + { + $inputs = [ + 'start_date' => $start_date, + 'end_date' => $end_date, + 'supplier_id' => $supplier_id, + 'sale_type' => $sale_type + ]; + + $specific_supplier = model(Specific_supplier::class); + + $specific_supplier->create($inputs); + + $report_data = $specific_supplier->getData($inputs); + + $tabular_data = []; + foreach($report_data as $row) + { + $tabular_data[] = [ + 'id' => $row['sale_id'], + 'type_code' => $row['type_code'], + 'sale_time' => to_datetime(strtotime($row['sale_time'])), + 'name' => $row['name'], + 'category' => $row['category'], + 'item_number' => $row['item_number'], + 'quantity' => to_quantity_decimals($row['items_purchased']), + 'subtotal' => to_currency($row['subtotal']), + 'tax' => to_currency_tax($row['tax']), + 'total' => to_currency($row['total']), + 'cost' => to_currency($row['cost']), + 'profit' => to_currency($row['profit']), + 'discount' => ($row['discount_type'] == PERCENT)? $row['discount'].'%':to_currency($row['discount']) + ]; + } + + $supplier_info = $this->supplier->get_info($supplier_id); + $data = [ + 'title' => $supplier_info->company_name . ' (' . $supplier_info->first_name . ' ' . $supplier_info->last_name . ') ' . lang('Reports.report'), + 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), + 'headers' => $specific_supplier->getDataColumns(), + 'data' => $tabular_data, + 'summary_data' => $specific_supplier->getSummaryData($inputs) + ]; + + echo view('reports/tabular', $data); + } + + /** + * @return array + */ + public function get_sale_type_options(): array + { + $sale_type_options = []; + $sale_type_options['complete'] = lang('Reports.complete'); + $sale_type_options['sales'] = lang('Reports.completed_sales'); + if($this->config['invoice_enable']) + { + $sale_type_options['quotes'] = lang('Reports.quotes'); + if($this->config['work_order_enable']) + { + $sale_type_options['work_orders'] = lang('Reports.work_orders'); + } + } + $sale_type_options['canceled'] = lang('Reports.canceled'); + $sale_type_options['returns'] = lang('Reports.returns'); + return $sale_type_options; + } + + /** + * @param string $start_date + * @param string $end_date + * @param string $sale_type + * @param string $location_id + * @return void + */ + public function detailed_sales(string $start_date, string $end_date, string $sale_type, string $location_id = 'all'): void + { + $this->clearCache(); + + $definition_names = $this->attribute->get_definitions_by_flags(attribute::SHOW_IN_SALES); + + $inputs = [ + 'start_date' => $start_date, + 'end_date' => $end_date, + 'sale_type' => $sale_type, + 'location_id' => $location_id, + 'definition_ids' => array_keys($definition_names) + ]; + + $this->detailed_sales->create($inputs); + + $columns = $this->detailed_sales->getDataColumns(); + $columns['details'] = array_merge($columns['details'], $definition_names); + + $headers = $columns; + + $report_data = $this->detailed_sales->getData($inputs); + + $summary_data = []; + $details_data = []; + $details_data_rewards = []; + + $show_locations = $this->stock_location->multiple_locations(); + + foreach($report_data['summary'] as $key => $row) + { //TODO: Duplicated Code + if($row['sale_status'] == CANCELED) + { + $button_key = 'data-btn-restore'; + $button_label = lang('Common.restore'); + } + else + { + $button_key = 'data-btn-delete'; + $button_label = lang('Common.delete'); + } + + $summary_data[] = [ + 'id' => $row['sale_id'], + 'type_code' => $row['type_code'], + 'sale_time' => to_datetime(strtotime($row['sale_time'])), + 'quantity' => to_quantity_decimals($row['items_purchased']), + 'employee_name' => $row['employee_name'], + 'customer_name' => $row['customer_name'], + 'subtotal' => to_currency($row['subtotal']), + 'tax' => to_currency_tax($row['tax']), + 'total' => to_currency($row['total']), + 'cost' => to_currency($row['cost']), + 'profit' => to_currency($row['profit']), + 'payment_type' => $row['payment_type'], + 'comment' => $row['comment'], + 'edit' => anchor( + 'sales/edit/'.$row['sale_id'], + '', + [ + 'class' => 'modal-dlg print_hide', + $button_key => $button_label, + 'data-btn-submit' => lang('Common.submit'), + 'title' => lang('Sales.update') + ]) + ]; + + foreach($report_data['details'][$key] as $drow) + { + $quantity_purchased = to_quantity_decimals($drow['quantity_purchased']); + if($show_locations) + { + $quantity_purchased .= ' [' . $this->stock_location->get_location_name($drow['item_location']) . ']'; + } + + $attribute_values = expand_attribute_values($definition_names, $drow); + + $details_data[$row['sale_id']][] = + array_merge ([ + $drow['name'], + $drow['category'], + $drow['item_number'], + $drow['description'], + $quantity_purchased, + to_currency($drow['subtotal']), + to_currency_tax($drow['tax']), + to_currency($drow['total']), + to_currency($drow['cost']), + to_currency($drow['profit']), + ($drow['discount_type'] == PERCENT) ? $drow['discount'].'%' : to_currency($drow['discount']) + ], + $attribute_values + ); + } + + if(isset($report_data['rewards'][$key])) + { + foreach($report_data['rewards'][$key] as $drow) + { + $details_data_rewards[$row['sale_id']][] = [$drow['used'], $drow['earned']]; + } + } + } + + $data = [ + 'title' => lang('Reports.detailed_sales_report'), + 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), + 'headers' => $headers, + 'editable' => 'sales', + 'summary_data' => $summary_data, + 'details_data' => $details_data, + 'details_data_rewards' => $details_data_rewards, + 'overall_summary_data' => $this->detailed_sales->getSummaryData($inputs) + ]; + echo view('reports/tabular_details', $data); + } + + /** + * Returns detailed receivings row for given receiving_id. Used in app/Views/reports/tabular_details.php + * + * @param string $receiving_id + * @return void + * @noinspection PhpUnused + */ + public function get_detailed_receivings_row(string $receiving_id): void + { + $inputs = ['receiving_id' => $receiving_id]; + + $this->detailed_receivings->create($inputs); + + $report_data = $this->detailed_receivings->getDataByReceivingId($receiving_id); + + $summary_data = [ + 'receiving_id' => $report_data['receiving_id'], + 'receiving_time' => to_datetime(strtotime($report_data['receiving_time'])), + 'quantity' => to_quantity_decimals($report_data['items_purchased']), + 'employee_name' => $report_data['employee_name'], + 'supplier_name' => $report_data['supplier_name'], + 'total' => to_currency($report_data['total']), + 'payment_type' => $report_data['payment_type'], + 'reference' => $report_data['reference'], + 'comment' => $report_data['comment'], + 'edit' => anchor( + 'receivings/edit/'. $report_data['receiving_id'], + '', + [ + 'class' => 'modal-dlg print_hide', + 'data-btn-submit' => lang('Common.submit'), + 'data-btn-delete' => lang('Common.delete'), + 'title' => lang('Receivings.update') + ]) + ]; + + echo json_encode ([$receiving_id => $summary_data]); + } + + /** + * @param string $start_date + * @param string $end_date + * @param string $receiving_type + * @param string $location_id + * @return void + */ + public function detailed_receivings(string $start_date, string $end_date, string $receiving_type, string $location_id = 'all'): void + { + $this->clearCache(); + + $definition_names = $this->attribute->get_definitions_by_flags(attribute::SHOW_IN_RECEIVINGS); + + $inputs = ['start_date' => $start_date, 'end_date' => $end_date, 'receiving_type' => $receiving_type, 'location_id' => $location_id, 'definition_ids' => array_keys($definition_names)]; + + $this->detailed_receivings->create($inputs); + + $columns = $this->detailed_receivings->getDataColumns(); + $columns['details'] = array_merge($columns['details'], $definition_names); + + $headers = $columns; + $report_data = $this->detailed_receivings->getData($inputs); + + $summary_data = []; + $details_data = []; + + $show_locations = $this->stock_location->multiple_locations(); + + foreach($report_data['summary'] as $key => $row) + { + $summary_data[] = [ + 'id' => $row['receiving_id'], + 'receiving_time' => to_datetime(strtotime($row['receiving_time'])), + 'quantity' => to_quantity_decimals($row['items_purchased']), + 'employee_name' => $row['employee_name'], + 'supplier_name' => $row['supplier_name'], + 'total' => to_currency($row['total']), + 'profit' => to_currency($row['profit']), + 'payment_type' => $row['payment_type'], + 'reference' => $row['reference'], + 'comment' => $row['comment'], + 'edit' => anchor( + 'receivings/edit/' . $row['receiving_id'], + '', + [ + 'class' => 'modal-dlg print_hide', + 'data-btn-delete' => lang('Common.delete'), + 'data-btn-submit' => lang('Common.submit'), + 'title' => lang('Receivings.update') + ]) + ]; + + foreach($report_data['details'][$key] as $drow) + { + $quantity_purchased = $drow['receiving_quantity'] > 1 ? to_quantity_decimals($drow['quantity_purchased']) . ' x ' . to_quantity_decimals($drow['receiving_quantity']) : to_quantity_decimals($drow['quantity_purchased']); + if($show_locations) + { + $quantity_purchased .= ' [' . $this->stock_location->get_location_name($drow['item_location']) . ']'; + } + + $attribute_values = expand_attribute_values($definition_names, $drow); + + $details_data[$row['receiving_id']][] = array_merge ([ + $drow['item_number'], + $drow['name'], + $drow['category'], + $quantity_purchased, + to_currency($drow['total']), + ($drow['discount_type'] == PERCENT)? $drow['discount'].'%':to_currency($drow['discount'])], $attribute_values); + } + } + + $data = [ + 'title' => lang('Reports.detailed_receivings_report'), + 'subtitle' => $this->_get_subtitle_report(['start_date' => $start_date, 'end_date' => $end_date]), + 'headers' => $headers, + 'editable' => 'receivings', + 'summary_data' => $summary_data, + 'details_data' => $details_data, + 'overall_summary_data' => $this->detailed_receivings->getSummaryData($inputs) + ]; + + echo view('reports/tabular_details', $data); + } + + /** + * @return void + */ + public function inventory_low(): void + { + $this->clearCache(); + + $inputs = []; + + $inventory_low = model(Inventory_low::class); + + $report_data = $inventory_low->getData($inputs); + + $tabular_data = []; + foreach($report_data as $row) + { + $tabular_data[] = [ + 'item_name' => $row['name'], + 'item_number' => $row['item_number'], + 'quantity' => to_quantity_decimals($row['quantity']), + 'reorder_level' => to_quantity_decimals($row['reorder_level']), + 'location_name' => $row['location_name'] + ]; + } + + $data = [ + 'title' => lang('Reports.inventory_low_report'), + 'subtitle' => '', + 'headers' => $inventory_low->getDataColumns(), + 'data' => $tabular_data, + 'summary_data' => $inventory_low->getSummaryData($inputs) + ]; + + echo view('reports/tabular', $data); + } + + /** + * Gets the inventory summary input view. Used in app/Config/Routes.php + * + * @return void + * @noinspection PhpUnused + */ + public function inventory_summary_input(): void + { + $this->clearCache(); + + $data = []; + $data['item_count'] = $this->inventory_summary->getItemCountDropdownArray(); + + $stock_locations = $this->stock_location->get_allowed_locations(); + $stock_locations['all'] = lang('Reports.all'); + $data['stock_locations'] = array_reverse($stock_locations, true); + + echo view('reports/inventory_summary_input', $data); + } + + /** + * @param string $location_id + * @param string $item_count + * @return void + */ + public function inventory_summary(string $location_id = 'all', string $item_count = 'all'): void + { + $this->clearCache(); + + $inputs = ['location_id' => $location_id, 'item_count' => $item_count]; + + $report_data = $this->inventory_summary->getData($inputs); + + $tabular_data = []; + foreach($report_data as $row) + { + $tabular_data[] = [ + 'item_name' => $row['name'], + 'item_number' => $row['item_number'], + 'category' => $row['category'], + 'quantity' => to_quantity_decimals($row['quantity']), + 'low_sell_quantity' => to_quantity_decimals($row['low_sell_quantity']), + 'reorder_level' => to_quantity_decimals($row['reorder_level']), + 'location_name' => $row['location_name'], + 'cost_price' => to_currency($row['cost_price']), + 'unit_price' => to_currency($row['unit_price']), + 'subtotal' => to_currency($row['sub_total_value']) + ]; + } + + $data = [ + 'title' => lang('Reports.inventory_summary_report'), + 'subtitle' => '', + 'headers' => $this->inventory_summary->getDataColumns(), + 'data' => $tabular_data, + 'summary_data' => $this->inventory_summary->getSummaryData($report_data) + ]; + + echo view('reports/tabular', $data); + } + + /** + * Returns subtitle for the reports + */ + private function _get_subtitle_report(array $inputs): string //TODO: Hungarian Notation + { + $subtitle = ''; + + if(empty($this->config['date_or_time_format'])) + { + $subtitle .= date($this->config['dateformat'], strtotime($inputs['start_date'])) . ' - ' . date($this->config['dateformat'], strtotime($inputs['end_date'])); + } + else + { + $subtitle .= date($this->config['dateformat'] . ' ' . $this->config['timeformat'], strtotime(rawurldecode($inputs['start_date']))) . ' - ' . date($this->config['dateformat'] . ' ' . $this->config['timeformat'], strtotime(rawurldecode($inputs['end_date']))); + } + + return $subtitle; + } + + /** + * @return void + */ + private function clearCache(): void + { + //Make sure the report is not cached by the browser + $this->response->setHeader('Pragma', 'no-cache') + ->appendHeader('Last-Modified', gmdate('D, d M Y H:i:s') . ' GMT') + ->appendHeader('Cache-Control', 'no-store, no-cache, must-revalidate') + ->appendHeader('Cache-Control', 'post-check=0, pre-check=0'); + } } diff --git a/app/Controllers/Sales.php b/app/Controllers/Sales.php index 98a1d0e88..781777518 100644 --- a/app/Controllers/Sales.php +++ b/app/Controllers/Sales.php @@ -27,1868 +27,1868 @@ use stdClass; class Sales extends Secure_Controller { - protected $helpers = ['file']; - private Barcode_lib $barcode_lib; - private Email_lib $email_lib; - private Sale_lib $sale_lib; - private Tax_lib $tax_lib; - private Token_lib $token_lib; - private Customer $customer; - private Customer_rewards $customer_rewards; - private Dinner_table $dinner_table; - protected Employee $employee; - private Item $item; - private Item_kit $item_kit; - private Sale $sale; - private Stock_location $stock_location; - private array $config; + protected $helpers = ['file']; + private Barcode_lib $barcode_lib; + private Email_lib $email_lib; + private Sale_lib $sale_lib; + private Tax_lib $tax_lib; + private Token_lib $token_lib; + private Customer $customer; + private Customer_rewards $customer_rewards; + private Dinner_table $dinner_table; + protected Employee $employee; + private Item $item; + private Item_kit $item_kit; + private Sale $sale; + private Stock_location $stock_location; + private array $config; - public function __construct() - { - parent::__construct('sales'); + public function __construct() + { + parent::__construct('sales'); - $this->session = session(); - $this->barcode_lib = new Barcode_lib(); - $this->email_lib = new Email_lib(); - $this->sale_lib = new Sale_lib(); - $this->tax_lib = new Tax_lib(); - $this->token_lib = new Token_lib(); - $this->config = config(OSPOS::class)->settings; + $this->session = session(); + $this->barcode_lib = new Barcode_lib(); + $this->email_lib = new Email_lib(); + $this->sale_lib = new Sale_lib(); + $this->tax_lib = new Tax_lib(); + $this->token_lib = new Token_lib(); + $this->config = config(OSPOS::class)->settings; - $this->customer = model(Customer::class); - $this->sale = model(Sale::class); - $this->item = model(Item::class); - $this->item_kit = model(Item_kit::class); - $this->stock_location = model(Stock_location::class); - $this->customer_rewards = model(Customer_rewards::class); - $this->dinner_table = model(Dinner_table::class); - $this->employee = model(Employee::class); - } + $this->customer = model(Customer::class); + $this->sale = model(Sale::class); + $this->item = model(Item::class); + $this->item_kit = model(Item_kit::class); + $this->stock_location = model(Stock_location::class); + $this->customer_rewards = model(Customer_rewards::class); + $this->dinner_table = model(Dinner_table::class); + $this->employee = model(Employee::class); + } - /** - * @return void - */ - public function getIndex(): void - { - $this->session->set('allow_temp_items', 1); - $this->_reload(); //TODO: Hungarian Notation - } + /** + * @return void + */ + public function getIndex(): void + { + $this->session->set('allow_temp_items', 1); + $this->_reload(); //TODO: Hungarian Notation + } - /** - * Load the sale edit modal. Used in app/Views/sales/register.php. - * - * @return void - * @noinspection PhpUnused - */ - public function getManage(): void - { - $person_id = $this->session->get('person_id'); + /** + * Load the sale edit modal. Used in app/Views/sales/register.php. + * + * @return void + * @noinspection PhpUnused + */ + public function getManage(): void + { + $person_id = $this->session->get('person_id'); - if(!$this->employee->has_grant('reports_sales', $person_id)) - { - redirect('no_access/sales/reports_sales'); - } - else - { - $data['table_headers'] = get_sales_manage_table_headers(); + if(!$this->employee->has_grant('reports_sales', $person_id)) + { + redirect('no_access/sales/reports_sales'); + } + else + { + $data['table_headers'] = get_sales_manage_table_headers(); - $data['filters'] = ['only_cash' => lang('Sales.cash_filter'), - 'only_due' => lang('Sales.due_filter'), - 'only_check' => lang('Sales.check_filter'), - 'only_creditcard' => lang('Sales.credit_filter'), - 'only_invoices' => lang('Sales.invoice_filter'), - 'selected_customer' => lang('Sales.selected_customer') - ]; + $data['filters'] = ['only_cash' => lang('Sales.cash_filter'), + 'only_due' => lang('Sales.due_filter'), + 'only_check' => lang('Sales.check_filter'), + 'only_creditcard' => lang('Sales.credit_filter'), + 'only_invoices' => lang('Sales.invoice_filter'), + 'selected_customer' => lang('Sales.selected_customer') + ]; - if($this->sale_lib->get_customer() != -1) - { - $selected_filters = ['selected_customer']; - $data['customer_selected'] = true; - } - else - { - $data['customer_selected'] = false; - $selected_filters = []; - } - $data['selected_filters'] = $selected_filters; + if($this->sale_lib->get_customer() != -1) + { + $selected_filters = ['selected_customer']; + $data['customer_selected'] = true; + } + else + { + $data['customer_selected'] = false; + $selected_filters = []; + } + $data['selected_filters'] = $selected_filters; - echo view('sales/manage', $data); - } - } + echo view('sales/manage', $data); + } + } - /** - * @param int $row_id - * @return void - */ - public function getRow(int $row_id): void - { - $sale_info = $this->sale->get_info($row_id)->getRow(); - $data_row = get_sale_data_row($sale_info); + /** + * @param int $row_id + * @return void + */ + public function getRow(int $row_id): void + { + $sale_info = $this->sale->get_info($row_id)->getRow(); + $data_row = get_sale_data_row($sale_info); - echo json_encode($data_row); - } + echo json_encode($data_row); + } - /** - * @return void - */ - public function getSearch(): void - { - $search = $this->request->getGet('search', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $limit = $this->request->getGet('limit', FILTER_SANITIZE_NUMBER_INT); - $offset = $this->request->getGet('offset', FILTER_SANITIZE_NUMBER_INT); - $sort = $this->sanitizeSortColumn(sales_headers(), $this->request->getGet('sort', FILTER_SANITIZE_FULL_SPECIAL_CHARS), 'sale_id'); - $order = $this->request->getGet('order', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + /** + * @return void + */ + public function getSearch(): void + { + $search = $this->request->getGet('search', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + $limit = $this->request->getGet('limit', FILTER_SANITIZE_NUMBER_INT); + $offset = $this->request->getGet('offset', FILTER_SANITIZE_NUMBER_INT); + $sort = $this->sanitizeSortColumn(sales_headers(), $this->request->getGet('sort', FILTER_SANITIZE_FULL_SPECIAL_CHARS), 'sale_id'); + $order = $this->request->getGet('order', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $filters = [ - 'sale_type' => 'all', - 'location_id' => 'all', - 'start_date' => $this->request->getGet('start_date', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'end_date' => $this->request->getGet('end_date', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'only_cash' => false, - 'only_due' => false, - 'only_check' => false, - 'selected_customer' => false, - 'only_creditcard' => false, - 'only_invoices' => $this->config['invoice_enable'] && $this->request->getGet('only_invoices', FILTER_SANITIZE_NUMBER_INT), - 'is_valid_receipt' => $this->sale->is_valid_receipt($search) - ]; + $filters = [ + 'sale_type' => 'all', + 'location_id' => 'all', + 'start_date' => $this->request->getGet('start_date', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'end_date' => $this->request->getGet('end_date', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'only_cash' => false, + 'only_due' => false, + 'only_check' => false, + 'selected_customer' => false, + 'only_creditcard' => false, + 'only_invoices' => $this->config['invoice_enable'] && $this->request->getGet('only_invoices', FILTER_SANITIZE_NUMBER_INT), + 'is_valid_receipt' => $this->sale->is_valid_receipt($search) + ]; - // check if any filter is set in the multiselect dropdown - $request_filters = array_fill_keys($this->request->getGet('filters', FILTER_SANITIZE_FULL_SPECIAL_CHARS) ?? [], true); - $filters = array_merge($filters, $request_filters); + // check if any filter is set in the multiselect dropdown + $request_filters = array_fill_keys($this->request->getGet('filters', FILTER_SANITIZE_FULL_SPECIAL_CHARS) ?? [], true); + $filters = array_merge($filters, $request_filters); - $sales = $this->sale->search($search, $filters, $limit, $offset, $sort, $order); - $total_rows = $this->sale->get_found_rows($search, $filters); - $payments = $this->sale->get_payments_summary($search, $filters); - $payment_summary = get_sales_manage_payments_summary($payments); + $sales = $this->sale->search($search, $filters, $limit, $offset, $sort, $order); + $total_rows = $this->sale->get_found_rows($search, $filters); + $payments = $this->sale->get_payments_summary($search, $filters); + $payment_summary = get_sales_manage_payments_summary($payments); - $data_rows = []; - foreach($sales->getResult() as $sale) - { - $data_rows[] = get_sale_data_row($sale); - } + $data_rows = []; + foreach($sales->getResult() as $sale) + { + $data_rows[] = get_sale_data_row($sale); + } - if($total_rows > 0) - { - $data_rows[] = get_sale_data_last_row($sales); - } + if($total_rows > 0) + { + $data_rows[] = get_sale_data_last_row($sales); + } - echo json_encode (['total' => $total_rows, 'rows' => $data_rows, 'payment_summary' => $payment_summary]); - } + echo json_encode (['total' => $total_rows, 'rows' => $data_rows, 'payment_summary' => $payment_summary]); + } - /** - * Gets search suggestions for an item or item kit. Used in app/Views/sales/register.php. - * - * @return void - * @noinspection PhpUnused - */ - public function getItemSearch(): void - { - $suggestions = []; - $receipt = $search = $this->request->getGet('term') != '' - ? $this->request->getGet('term') - : null; + /** + * Gets search suggestions for an item or item kit. Used in app/Views/sales/register.php. + * + * @return void + * @noinspection PhpUnused + */ + public function getItemSearch(): void + { + $suggestions = []; + $receipt = $search = $this->request->getGet('term') != '' + ? $this->request->getGet('term') + : null; - if($this->sale_lib->get_mode() == 'return' && $this->sale->is_valid_receipt($receipt)) - { - // if a valid receipt or invoice was found the search term will be replaced with a receipt number (POS #) - $suggestions[] = $receipt; - } - $suggestions = array_merge($suggestions, $this->item->get_search_suggestions($search, ['search_custom' => false, 'is_deleted' => false], true)); - $suggestions = array_merge($suggestions, $this->item_kit->get_search_suggestions($search)); + if($this->sale_lib->get_mode() == 'return' && $this->sale->is_valid_receipt($receipt)) + { + // if a valid receipt or invoice was found the search term will be replaced with a receipt number (POS #) + $suggestions[] = $receipt; + } + $suggestions = array_merge($suggestions, $this->item->get_search_suggestions($search, ['search_custom' => false, 'is_deleted' => false], true)); + $suggestions = array_merge($suggestions, $this->item_kit->get_search_suggestions($search)); - echo json_encode($suggestions); - } + echo json_encode($suggestions); + } - /** - * @return void - */ - public function suggest_search(): void - { - $search = $this->request->getPost('term') != '' - ? $this->request->getPost('term') - : null; + /** + * @return void + */ + public function suggest_search(): void + { + $search = $this->request->getPost('term') != '' + ? $this->request->getPost('term') + : null; - $suggestions = $this->sale->get_search_suggestions($search); + $suggestions = $this->sale->get_search_suggestions($search); - echo json_encode($suggestions); - } + echo json_encode($suggestions); + } - /** - * Set a given customer. Used in app/Views/sales/register.php. - * - * @return void - * @noinspection PhpUnused - */ - public function postSelectCustomer(): void - { - $customer_id = (int)$this->request->getPost('customer', FILTER_SANITIZE_NUMBER_INT); - if($this->customer->exists($customer_id)) - { - $this->sale_lib->set_customer($customer_id); - $discount = $this->customer->get_info($customer_id)->discount; - $discount_type = $this->customer->get_info($customer_id)->discount_type; + /** + * Set a given customer. Used in app/Views/sales/register.php. + * + * @return void + * @noinspection PhpUnused + */ + public function postSelectCustomer(): void + { + $customer_id = (int)$this->request->getPost('customer', FILTER_SANITIZE_NUMBER_INT); + if($this->customer->exists($customer_id)) + { + $this->sale_lib->set_customer($customer_id); + $discount = $this->customer->get_info($customer_id)->discount; + $discount_type = $this->customer->get_info($customer_id)->discount_type; - // apply customer default discount to items that have 0 discount - if($discount != '') - { - $this->sale_lib->apply_customer_discount($discount, $discount_type); - } - } + // apply customer default discount to items that have 0 discount + if($discount != '') + { + $this->sale_lib->apply_customer_discount($discount, $discount_type); + } + } - $this->_reload(); - } + $this->_reload(); + } - /** - * Changes the sale mode in the register to carry out different types of sales - * - * @return void - * @noinspection PhpUnused - */ - public function postChangeMode(): void - { - $mode = $this->request->getPost('mode', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $this->sale_lib->set_mode($mode); + /** + * Changes the sale mode in the register to carry out different types of sales + * + * @return void + * @noinspection PhpUnused + */ + public function postChangeMode(): void + { + $mode = $this->request->getPost('mode', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + $this->sale_lib->set_mode($mode); - if($mode == 'sale') - { - $this->sale_lib->set_sale_type(SALE_TYPE_POS); - } - else if($mode == 'sale_quote') - { - $this->sale_lib->set_sale_type(SALE_TYPE_QUOTE); - } - else if($mode == 'sale_work_order') - { - $this->sale_lib->set_sale_type(SALE_TYPE_WORK_ORDER); - } - else if($mode == 'sale_invoice') - { - $this->sale_lib->set_sale_type(SALE_TYPE_INVOICE); - } - else - { - $this->sale_lib->set_sale_type(SALE_TYPE_RETURN); - } + if($mode == 'sale') + { + $this->sale_lib->set_sale_type(SALE_TYPE_POS); + } + else if($mode == 'sale_quote') + { + $this->sale_lib->set_sale_type(SALE_TYPE_QUOTE); + } + else if($mode == 'sale_work_order') + { + $this->sale_lib->set_sale_type(SALE_TYPE_WORK_ORDER); + } + else if($mode == 'sale_invoice') + { + $this->sale_lib->set_sale_type(SALE_TYPE_INVOICE); + } + else + { + $this->sale_lib->set_sale_type(SALE_TYPE_RETURN); + } - if($this->config['dinner_table_enable']) - { - $occupied_dinner_table = $this->request->getPost('dinner_table', FILTER_SANITIZE_NUMBER_INT); - $released_dinner_table = $this->sale_lib->get_dinner_table(); - $occupied = $this->dinner_table->is_occupied($released_dinner_table); + if($this->config['dinner_table_enable']) + { + $occupied_dinner_table = $this->request->getPost('dinner_table', FILTER_SANITIZE_NUMBER_INT); + $released_dinner_table = $this->sale_lib->get_dinner_table(); + $occupied = $this->dinner_table->is_occupied($released_dinner_table); - if($occupied && ($occupied_dinner_table != $released_dinner_table)) - { - $this->dinner_table->swap_tables($released_dinner_table, $occupied_dinner_table); - } + if($occupied && ($occupied_dinner_table != $released_dinner_table)) + { + $this->dinner_table->swap_tables($released_dinner_table, $occupied_dinner_table); + } - $this->sale_lib->set_dinner_table($occupied_dinner_table); - } + $this->sale_lib->set_dinner_table($occupied_dinner_table); + } - $stock_location = $this->request->getPost('stock_location', FILTER_SANITIZE_NUMBER_INT); + $stock_location = $this->request->getPost('stock_location', FILTER_SANITIZE_NUMBER_INT); - if(!$stock_location || $stock_location == $this->sale_lib->get_sale_location()) - { + if(!$stock_location || $stock_location == $this->sale_lib->get_sale_location()) + { //TODO: The code below was removed in 2017 by @steveireland. We either need to reinstate some of it or remove this entire if block but we can't leave an empty if block -// $dinner_table = $this->request->getPost('dinner_table'); -// $this->sale_lib->set_dinner_table($dinner_table); - } - elseif($this->stock_location->is_allowed_location($stock_location, 'sales')) - { - $this->sale_lib->set_sale_location($stock_location); - } - - $this->sale_lib->empty_payments(); - - $this->_reload(); - } - - /** - * @param int $sale_type - * @return void - */ - public function change_register_mode(int $sale_type): void - { - $mode = match($sale_type) { - SALE_TYPE_QUOTE => 'sale_quote', - SALE_TYPE_WORK_ORDER => 'sale_work_order', - SALE_TYPE_INVOICE => 'sale_invoice', - SALE_TYPE_RETURN => 'return', - default => 'sale' //SALE_TYPE_POS - }; - - $this->sale_lib->set_mode($mode); - } - - - /** - * Sets the sales comment. Used in app/Views/sales/register.php - * - * @return void - * @noinspection PhpUnused - */ - public function postSetComment(): void - { - $this->sale_lib->set_comment($this->request->getPost('comment', FILTER_SANITIZE_FULL_SPECIAL_CHARS)); - } - - /** - * Sets the invoice number. Used in app/Views/sales/register.php - * - * @return void - * @noinspection PhpUnused - */ - public function postSetInvoiceNumber(): void - { - $this->sale_lib->set_invoice_number($this->request->getPost('sales_invoice_number', FILTER_SANITIZE_NUMBER_INT)); - } - - /** - * @return void - */ - public function postSetPaymentType(): void //TODO: This function does not appear to be called anywhere in the code. - { - $this->sale_lib->set_payment_type($this->request->getPost('selected_payment_type', FILTER_SANITIZE_FULL_SPECIAL_CHARS)); - $this->_reload(); //TODO: Hungarian notation. - } - - /** - * Sets PrintAfterSale flag. Used in app/Views/sales/register.php - * - * @return void - * @noinspection PhpUnused - */ - public function postSetPrintAfterSale(): void - { - $this->sale_lib->set_print_after_sale($this->request->getPost('sales_print_after_sale') != 'false'); - } - - /** - * Sets the flag to include prices in the work order. Used in app/Views/sales/register.php - * - * @return void - * @noinspection PhpUnused - */ - public function postSetPriceWorkOrders(): void - { - $price_work_orders = parse_decimals($this->request->getPost('price_work_orders')); - $this->sale_lib->set_price_work_orders($price_work_orders); - } - - /** - * Sets the flag to email receipt to the customer. Used in app/Views/sales/register.php - * - * @return void - * @noinspection PhpUnused - */ - public function postSetEmailReceipt(): void - { - $this->sale_lib->set_email_receipt($this->request->getPost('email_receipt', FILTER_SANITIZE_FULL_SPECIAL_CHARS)); - } - - /** - * Add a payment to the sale. Used in app/Views/sales/register.php - * - * @return void - * @noinspection PhpUnused - */ - public function postAddPayment(): void - { - $data = []; - $giftcard = model(Giftcard::class); - $payment_type = $this->request->getPost('payment_type', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - - if($payment_type !== lang('Sales.giftcard')) - { - $rules = ['amount_tendered' => 'trim|required|decimal_locale',]; - $messages = ['amount_tendered' => lang('Sales.must_enter_numeric')]; - } - else - { - $rules = ['amount_tendered' => 'trim|required',]; - $messages = ['amount_tendered' => lang('Sales.must_enter_numeric_giftcard')]; - } - - if(!$this->validate($rules, $messages)) - { - $data['error'] = $payment_type === lang('Sales.giftcard') - ? lang('Sales.must_enter_numeric_giftcard') - : lang('Sales.must_enter_numeric'); - } - else - { - if($payment_type === lang('Sales.giftcard')) - { - //In the case of giftcard payment the register input amount_tendered becomes the giftcard number - $amount_tendered = parse_decimals($this->request->getPost('amount_tendered')); - $giftcard_num = $amount_tendered; - - $payments = $this->sale_lib->get_payments(); - $payment_type = $payment_type . ':' . $giftcard_num; - $current_payments_with_giftcard = isset($payments[$payment_type]) ? $payments[$payment_type]['payment_amount'] : 0; - $cur_giftcard_value = $giftcard->get_giftcard_value($giftcard_num); - $cur_giftcard_customer = $giftcard->get_giftcard_customer($giftcard_num); - $customer_id = $this->sale_lib->get_customer(); - - if(isset($cur_giftcard_customer) && $cur_giftcard_customer != $customer_id) - { - $data['error'] = lang('Giftcards.cannot_use', [$giftcard_num]); - } - elseif(($cur_giftcard_value - $current_payments_with_giftcard) <= 0 && $this->sale_lib->get_mode() === 'sale') - { - $data['error'] = lang('Giftcards.remaining_balance', [$giftcard_num, $cur_giftcard_value]); - } - else - { - $new_giftcard_value = $giftcard->get_giftcard_value($giftcard_num) - $this->sale_lib->get_amount_due(); - $new_giftcard_value = max($new_giftcard_value, 0); - $this->sale_lib->set_giftcard_remainder($new_giftcard_value); - $new_giftcard_value = str_replace('$', '\$', to_currency($new_giftcard_value)); - $data['warning'] = lang('Giftcards.remaining_balance', [$giftcard_num, $new_giftcard_value]); - $amount_tendered = min($this->sale_lib->get_amount_due(), $giftcard->get_giftcard_value($giftcard_num)); - - $this->sale_lib->add_payment($payment_type, $amount_tendered); - } - } - elseif($payment_type === lang('Sales.rewards')) - { - $customer_id = $this->sale_lib->get_customer(); - $package_id = $this->customer->get_info($customer_id)->package_id; - if(!empty($package_id)) - { - $package_name = $this->customer_rewards->get_name($package_id); //TODO: this variable is never used. - $points = $this->customer->get_info($customer_id)->points; - $points = ($points == null ? 0 : $points); - - $payments = $this->sale_lib->get_payments(); - $current_payments_with_rewards = isset($payments[$payment_type]) ? $payments[$payment_type]['payment_amount'] : 0; - $cur_rewards_value = $points; - - if(($cur_rewards_value - $current_payments_with_rewards) <= 0) - { - $data['error'] = lang('Sales.rewards_remaining_balance') . to_currency($cur_rewards_value); - } - else - { - $new_reward_value = $points - $this->sale_lib->get_amount_due(); - $new_reward_value = max($new_reward_value, 0); - $this->sale_lib->set_rewards_remainder($new_reward_value); - $new_reward_value = str_replace('$', '\$', to_currency($new_reward_value)); - $data['warning'] = lang('Sales.rewards_remaining_balance'). $new_reward_value; - $amount_tendered = min($this->sale_lib->get_amount_due(), $points); - - $this->sale_lib->add_payment($payment_type, $amount_tendered); - } - } - } - elseif($payment_type === lang('Sales.cash')) - { - $amount_due = $this->sale_lib->get_total(); - $sales_total = $this->sale_lib->get_total(false); - $amount_tendered = parse_decimals($this->request->getPost('amount_tendered')); - $this->sale_lib->add_payment($payment_type, $amount_tendered); - $cash_adjustment_amount = $amount_due - $sales_total; - if($cash_adjustment_amount <> 0) - { - $this->session->set('cash_mode', CASH_MODE_TRUE); - $this->sale_lib->add_payment(lang('Sales.cash_adjustment'), $cash_adjustment_amount, CASH_ADJUSTMENT_TRUE); - } - } - else - { - $amount_tendered = parse_decimals($this->request->getPost('amount_tendered')); - $this->sale_lib->add_payment($payment_type, $amount_tendered); - } - } - - $this->_reload($data); - } - - /** - * Multiple Payments. Used in app/Views/sales/register.php - * - * @param string $payment_id - * @return void - * @noinspection PhpUnused - */ - public function getDeletePayment(string $payment_id): void - { - $this->sale_lib->delete_payment($payment_id); - - $this->_reload(); //TODO: Hungarian notation - } - - /** - * Add an item to the sale. Used in app/Views/sales/register.php - * - * @return void - * @noinspection PhpUnused - */ - public function postAdd(): void - { - $data = []; - - $discount = $this->config['default_sales_discount']; - $discount_type = $this->config['default_sales_discount_type']; - - // check if any discount is assigned to the selected customer - $customer_id = $this->sale_lib->get_customer(); - if($customer_id != NEW_ENTRY) - { - // load the customer discount if any - $customer_discount = $this->customer->get_info($customer_id)->discount; - $customer_discount_type = $this->customer->get_info($customer_id)->discount_type; - if($customer_discount != '') - { - $discount = $customer_discount; - $discount_type = $customer_discount_type; - } - } - - $item_id_or_number_or_item_kit_or_receipt = $this->request->getPost('item', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $this->token_lib->parse_barcode($quantity, $price, $item_id_or_number_or_item_kit_or_receipt); - $mode = $this->sale_lib->get_mode(); - $quantity = ($mode == 'return') ? -$quantity : $quantity; - $item_location = $this->sale_lib->get_sale_location(); - - if($mode == 'return' && $this->sale->is_valid_receipt($item_id_or_number_or_item_kit_or_receipt)) - { - $this->sale_lib->return_entire_sale($item_id_or_number_or_item_kit_or_receipt); - } - elseif($this->item_kit->is_valid_item_kit($item_id_or_number_or_item_kit_or_receipt)) - { - // Add kit item to order if one is assigned - $pieces = explode(' ', $item_id_or_number_or_item_kit_or_receipt); - - $item_kit_id = (count($pieces) > 1) ? $pieces[1] : $item_id_or_number_or_item_kit_or_receipt; - $item_kit_info = $this->item_kit->get_info($item_kit_id); - $kit_item_id = $item_kit_info->kit_item_id; - $kit_price_option = $item_kit_info->price_option; - $kit_print_option = $item_kit_info->print_option; // 0-all, 1-priced, 2-kit-only - - if($discount_type == $item_kit_info->kit_discount_type) - { - if($item_kit_info->kit_discount > $discount) - { - $discount = $item_kit_info->kit_discount; - } - } - else - { - $discount = $item_kit_info->kit_discount; - $discount_type = $item_kit_info->kit_discount_type; - } - - $print_option = PRINT_ALL; // Always include in list of items on invoice //TODO: This variable is never used in the code - - if(!empty($kit_item_id)) - { - if(!$this->sale_lib->add_item($kit_item_id, $item_location, $quantity, $discount, $discount_type, PRICE_MODE_KIT, $kit_price_option, $kit_print_option, $price)) - { - $data['error'] = lang('Sales.unable_to_add_item'); - } - else - { - $data['warning'] = $this->sale_lib->out_of_stock($item_kit_id, $item_location); - } - } - - // Add item kit items to order - $stock_warning = null; - if(!$this->sale_lib->add_item_kit($item_id_or_number_or_item_kit_or_receipt, $item_location, $discount, $discount_type, $kit_price_option, $kit_print_option, $stock_warning)) - { - $data['error'] = lang('Sales.unable_to_add_item'); - } - elseif($stock_warning != null) - { - $data['warning'] = $stock_warning; - } - } - else - { - if($item_id_or_number_or_item_kit_or_receipt == '' || !$this->sale_lib->add_item($item_id_or_number_or_item_kit_or_receipt, $item_location, $quantity, $discount, $discount_type, PRICE_MODE_STANDARD, null, null, $price)) - { - $data['error'] = lang('Sales.unable_to_add_item'); - } - else - { - $data['warning'] = $this->sale_lib->out_of_stock($item_id_or_number_or_item_kit_or_receipt, $item_location); - } - } - - $this->_reload($data); - } - - /** - * Edit an item in the sale. Used in app/Views/sales/register.php - * - * @param string $line - * @return void - * @noinspection PhpUnused - */ - public function postEditItem(string $line): void - { - $data = []; - - $rules = [ - 'price' => 'trim|required|decimal_locale', - 'quantity' => 'trim|required|decimal_locale', - 'discount' => 'trim|permit_empty|decimal_locale', - ]; - - if($this->validate($rules)) - { - $description = $this->request->getPost('description', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $serialnumber = $this->request->getPost('serialnumber', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $price = parse_decimals($this->request->getPost('price')); - $quantity = parse_decimals($this->request->getPost('quantity')); - $discount_type = $this->request->getPost('discount_type', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $discount = $discount_type - ? parse_quantity($this->request->getPost('discount')) - : parse_decimals($this->request->getPost('discount')); - - $item_location = $this->request->getPost('location', FILTER_SANITIZE_NUMBER_INT); - $discounted_total = $this->request->getPost('discounted_total') != '' - ? parse_decimals($this->request->getPost('discounted_total') ?? '') - : null; - - - $this->sale_lib->edit_item($line, $description, $serialnumber, $quantity, $discount, $discount_type, $price, $discounted_total); - - $this->sale_lib->empty_payments(); - - $data['warning'] = $this->sale_lib->out_of_stock($this->sale_lib->get_item_id($line), $item_location); - - } - else - { - $data['error'] = lang('Sales.error_editing_item'); - } - - $this->_reload($data); - } - - /** - * Deletes an item specified in the parameter from the shopping cart. Used in app/Views/sales/register.php - * - * @param int $item_id - * @return void - * @throws ReflectionException - * @noinspection PhpUnused - */ - public function getDeleteItem(int $item_id): void - { - $this->sale_lib->delete_item($item_id); - - $this->sale_lib->empty_payments(); - - $this->_reload(); //TODO: Hungarian notation - } - - /** - * Remove the current customer from the sale. Used in app/Views/sales/register.php - * - * @return void - * @noinspection PhpUnused - */ - public function getRemoveCustomer(): void - { - $this->sale_lib->clear_giftcard_remainder(); - $this->sale_lib->clear_rewards_remainder(); - $this->sale_lib->delete_payment(lang('Sales.rewards')); - $this->sale_lib->clear_invoice_number(); - $this->sale_lib->clear_quote_number(); - $this->sale_lib->remove_customer(); - - $this->_reload(); //TODO: Hungarian notation - } - - /** - * Complete and finalize a sale. Used in app/Views/sales/register.php - * - * @return void - * @throws ReflectionException - * @noinspection PhpUnused - */ - public function postComplete(): void //TODO: this function is huge. Probably should be refactored. - { - $sale_id = $this->sale_lib->get_sale_id(); - $data = []; - $data['dinner_table'] = $this->sale_lib->get_dinner_table(); - - $data['cart'] = $this->sale_lib->get_cart(); - - $data['include_hsn'] = (bool)$this->config['include_hsn']; - $__time = time(); - $data['transaction_time'] = to_datetime($__time); - $data['transaction_date'] = to_date($__time); - $data['show_stock_locations'] = $this->stock_location->show_locations('sales'); - $data['comments'] = $this->sale_lib->get_comment(); - $employee_id = $this->employee->get_logged_in_employee_info()->person_id; - $employee_info = $this->employee->get_info($employee_id); - $data['employee'] = $employee_info->first_name . ' ' . mb_substr($employee_info->last_name, 0, 1); - - $data['company_info'] = implode("\n", [$this->config['address'], $this->config['phone']]); - - if($this->config['account_number']) - { - $data['company_info'] .= "\n" . lang('Sales.account_number') . ": " . $this->config['account_number']; - } - - if($this->config['tax_id'] != '') - { - $data['company_info'] .= "\n" . lang('Sales.tax_id') . ": " . $this->config['tax_id']; - } - - $data['invoice_number_enabled'] = $this->sale_lib->is_invoice_mode(); - $data['cur_giftcard_value'] = $this->sale_lib->get_giftcard_remainder(); - $data['cur_rewards_value'] = $this->sale_lib->get_rewards_remainder(); - $data['print_after_sale'] = $this->session->get('sales_print_after_sale'); - $data['price_work_orders'] = $this->sale_lib->is_price_work_orders(); - $data['email_receipt'] = $this->sale_lib->is_email_receipt(); - $customer_id = $this->sale_lib->get_customer(); - $invoice_number = $this->sale_lib->get_invoice_number(); - $data["invoice_number"] = $invoice_number; - $work_order_number = $this->sale_lib->get_work_order_number(); - $data["work_order_number"] = $work_order_number; - $quote_number = $this->sale_lib->get_quote_number(); - $data["quote_number"] = $quote_number; - $customer_info = $this->_load_customer_data($customer_id, $data); - - if($customer_info != null) - { - $data["customer_comments"] = $customer_info->comments; - $data['tax_id'] = $customer_info->tax_id; - } - $tax_details = $this->tax_lib->get_taxes($data['cart']); //TODO: Duplicated code - $data['taxes'] = $tax_details[0]; - $data['discount'] = $this->sale_lib->get_discount(); - $data['payments'] = $this->sale_lib->get_payments(); - - // Returns 'subtotal', 'total', 'cash_total', 'payment_total', 'amount_due', 'cash_amount_due', 'payments_cover_total' - $totals = $this->sale_lib->get_totals($tax_details[0]); - $data['subtotal'] = $totals['subtotal']; - $data['total'] = $totals['total']; - $data['payments_total'] = $totals['payment_total']; - $data['payments_cover_total'] = $totals['payments_cover_total']; - $data['cash_rounding'] = $this->session->get('cash_rounding'); - $data['cash_mode'] = $this->session->get('cash_mode'); //TODO: Duplicated code - $data['prediscount_subtotal'] = $totals['prediscount_subtotal']; - $data['cash_total'] = $totals['cash_total']; - $data['non_cash_total'] = $totals['total']; - $data['cash_amount_due'] = $totals['cash_amount_due']; - $data['non_cash_amount_due'] = $totals['amount_due']; - - if($data['cash_mode']) //TODO: Convert this to ternary notation - { - $data['amount_due'] = $totals['cash_amount_due']; - } - else - { - $data['amount_due'] = $totals['amount_due']; - } - - $data['amount_change'] = $data['amount_due'] * -1; - - if($data['amount_change'] > 0) - { - // Save cash refund to the cash payment transaction if found, if not then add as new Cash transaction - - if(array_key_exists(lang('Sales.cash'), $data['payments'])) - { - $data['payments'][lang('Sales.cash')]['cash_refund'] = $data['amount_change']; - } - else - { - $payment = [ - lang('Sales.cash') => [ - 'payment_type' => lang('Sales.cash'), - 'payment_amount' => 0, - 'cash_refund' => $data['amount_change'] - ] - ]; - - $data['payments'] += $payment; - } - } - - $data['print_price_info'] = true; - - if($this->sale_lib->is_invoice_mode()) - { - $invoice_format = $this->config['sales_invoice_format']; - - // generate final invoice number (if using the invoice in sales by receipt mode then the invoice number can be manually entered or altered in some way - if(!empty($invoice_format) && $invoice_number == null) - { - // The user can retain the default encoded format or can manually override it. It still passes through the rendering step. - $invoice_number = $this->token_lib->render($invoice_format); - } - - - if($sale_id == NEW_ENTRY && $this->sale->check_invoice_number_exists($invoice_number)) - { - $data['error'] = lang('Sales.invoice_number_duplicate', [$invoice_number]); - $this->_reload($data); - } - else - { - $data['invoice_number'] = $invoice_number; - $data['sale_status'] = COMPLETED; - $sale_type = SALE_TYPE_INVOICE; - - // The PHP file name is the same as the invoice_type key - $invoice_view = $this->config['invoice_type']; - - // Save the data to the sales table - $data['sale_id_num'] = $this->sale->save_value($sale_id, $data['sale_status'], $data['cart'], $customer_id, $employee_id, $data['comments'], $invoice_number, $work_order_number, $quote_number, $sale_type, $data['payments'], $data['dinner_table'], $tax_details); - $data['sale_id'] = 'POS ' . $data['sale_id_num']; - - // Resort and filter cart lines for printing - $data['cart'] = $this->sale_lib->sort_and_filter_cart($data['cart']); - - if($data['sale_id_num'] == NEW_ENTRY) - { - $data['error_message'] = lang('Sales.transaction_failed'); - } - else - { - $data['barcode'] = $this->barcode_lib->generate_receipt_barcode($data['sale_id']); - echo view('sales/'.$invoice_view, $data); - $this->sale_lib->clear_all(); - } - } - } - elseif($this->sale_lib->is_work_order_mode()) - { - - if(!($data['price_work_orders'] == 1)) - { - $data['print_price_info'] = false; - } - - $data['sales_work_order'] = lang('Sales.work_order'); - $data['work_order_number_label'] = lang('Sales.work_order_number'); - - if($work_order_number == null) - { - // generate work order number - $work_order_format = $this->config['work_order_format']; - $work_order_number = $this->token_lib->render($work_order_format); - } - - if($sale_id == NEW_ENTRY && $this->sale->check_work_order_number_exists($work_order_number)) - { - $data['error'] = lang('Sales.work_order_number_duplicate'); - $this->_reload($data); - } - else - { - $data['work_order_number'] = $work_order_number; - $data['sale_status'] = SUSPENDED; - $sale_type = SALE_TYPE_WORK_ORDER; - - $data['sale_id_num'] = $this->sale->save_value($sale_id, $data['sale_status'], $data['cart'], $customer_id, $employee_id, $data['comments'], $invoice_number, $work_order_number, $quote_number, $sale_type, $data['payments'], $data['dinner_table'], $tax_details); - $this->sale_lib->set_suspended_id($data['sale_id_num']); - - $data['cart'] = $this->sale_lib->sort_and_filter_cart($data['cart']); - - $data['barcode'] = null; - - echo view('sales/work_order', $data); - $this->sale_lib->clear_mode(); - $this->sale_lib->clear_all(); - } - } - elseif($this->sale_lib->is_quote_mode()) - { - $data['sales_quote'] = lang('Sales.quote'); - $data['quote_number_label'] = lang('Sales.quote_number'); - - if($quote_number == null) - { - // generate quote number - $quote_format = $this->config['sales_quote_format']; - $quote_number = $this->token_lib->render($quote_format); - } - - if($sale_id == NEW_ENTRY && $this->sale->check_quote_number_exists($quote_number)) - { - $data['error'] = lang('Sales.quote_number_duplicate'); - $this->_reload($data); - } - else - { - $data['quote_number'] = $quote_number; - $data['sale_status'] = SUSPENDED; - $sale_type = SALE_TYPE_QUOTE; - - $data['sale_id_num'] = $this->sale->save_value($sale_id, $data['sale_status'], $data['cart'], $customer_id, $employee_id, $data['comments'], $invoice_number, $work_order_number, $quote_number, $sale_type, $data['payments'], $data['dinner_table'], $tax_details); - $this->sale_lib->set_suspended_id($data['sale_id_num']); - - $data['cart'] = $this->sale_lib->sort_and_filter_cart($data['cart']); - $data['barcode'] = null; - - echo view('sales/quote', $data); - $this->sale_lib->clear_mode(); - $this->sale_lib->clear_all(); - } - } - else - { - // Save the data to the sales table - $data['sale_status'] = COMPLETED; - if($this->sale_lib->is_return_mode()) - { - $sale_type = SALE_TYPE_RETURN; - } - else - { - $sale_type = SALE_TYPE_POS; - } - - $data['sale_id_num'] = $this->sale->save_value($sale_id, $data['sale_status'], $data['cart'], $customer_id, $employee_id, $data['comments'], $invoice_number, $work_order_number, $quote_number, $sale_type, $data['payments'], $data['dinner_table'], $tax_details); - - $data['sale_id'] = 'POS ' . $data['sale_id_num']; - - $data['cart'] = $this->sale_lib->sort_and_filter_cart($data['cart']); - - if($data['sale_id_num'] == NEW_ENTRY) - { - $data['error_message'] = lang('Sales.transaction_failed'); - } - else - { - $data['barcode'] = $this->barcode_lib->generate_receipt_barcode($data['sale_id']); - echo view('sales/receipt', $data); - $this->sale_lib->clear_all(); - } - } - } - - /** - * Email PDF invoice to customer. Used in app/Views/sales/form.php, invoice.php, quote.php, tax_invoice.php and work_order.php - * - * @param int $sale_id - * @param string $type - * @return bool - * @noinspection PhpUnused - */ - public function getSendPdf(int $sale_id, string $type = 'invoice'): bool - { - $sale_data = $this->_load_sale_data($sale_id); - - $result = false; - $message = lang('Sales.invoice_no_email'); - - if(!empty($sale_data['customer_email'])) - { - $to = $sale_data['customer_email']; - $number = array_key_exists($type."_number", $sale_data) ? $sale_data[$type."_number"] : ""; - $subject = lang('Sales.' . $type) . ' ' . $number; - - $text = $this->config['invoice_email_message']; - $tokens = [ - new Token_invoice_sequence($sale_data['invoice_number']), - new Token_invoice_count('POS ' . $sale_data['sale_id']), - new Token_customer((array)$sale_data) - ]; - $text = $this->token_lib->render($text, $tokens); - $sale_data['mimetype'] = mime_content_type(FCPATH . 'uploads/' . $this->config['company_logo']); - - // generate email attachment: invoice in pdf format - $view = Services::renderer(); - $html = $view->setData($sale_data)->render("sales/$type" . '_email', $sale_data); - - // load pdf helper - helper (['dompdf', 'file']); - $filename = sys_get_temp_dir() . '/' . lang('Sales.' . $type) . '-' . str_replace('/', '-', $number) . '.pdf'; - if(file_put_contents($filename, create_pdf($html)) !== false) - { - $result = $this->email_lib->sendEmail($to, $subject, $text, $filename); - } - - $message = lang($result ? "Sales." . $type . "_sent" : "Sales." . $type . "_unsent") . ' ' . $to; - } - - echo json_encode (['success' => $result, 'message' => $message, 'id' => $sale_id]); - - $this->sale_lib->clear_all(); - - return $result; - } - - /** - * Emails sales receipt to customer. Used in app/Views/sales/receipt.php - * - * @param int $sale_id - * @return bool - * @noinspection PhpUnused - */ - public function getSendReceipt(int $sale_id): bool - { - $sale_data = $this->_load_sale_data($sale_id); - - $result = false; - $message = lang('Sales.receipt_no_email'); - - if(!empty($sale_data['customer_email'])) - { - $sale_data['barcode'] = $this->barcode_lib->generate_receipt_barcode($sale_data['sale_id']); - - $to = $sale_data['customer_email']; - $subject = lang('Sales.receipt'); - - $view = Services::renderer(); - $text = $view->setData($sale_data)->render('sales/receipt_email'); - - $result = $this->email_lib->sendEmail($to, $subject, $text); - - $message = lang($result ? 'Sales.receipt_sent' : 'Sales.receipt_unsent') . ' ' . $to; - } - - echo json_encode (['success' => $result, 'message' => $message, 'id' => $sale_id]); - - $this->sale_lib->clear_all(); - - return $result; - } - - /** - * @param int $customer_id - * @param array $data - * @param bool $stats - * @return array|stdClass|string|null - */ - private function _load_customer_data(int $customer_id, array &$data, bool $stats = false): array|string|stdClass|null //TODO: Hungarian notation - { - $customer_info = ''; - - if($customer_id != NEW_ENTRY) - { - $customer_info = $this->customer->get_info($customer_id); - $data['customer_id'] = $customer_id; - - if(!empty($customer_info->company_name)) - { - $data['customer'] = $customer_info->company_name; - } - else - { - $data['customer'] = $customer_info->first_name . ' ' . $customer_info->last_name; - } - - $data['first_name'] = $customer_info->first_name; - $data['last_name'] = $customer_info->last_name; - $data['customer_email'] = $customer_info->email; - $data['customer_address'] = $customer_info->address_1; - - if(!empty($customer_info->zip) || !empty($customer_info->city)) - { - $data['customer_location'] = $customer_info->zip . ' ' . $customer_info->city . "\n" . $customer_info->state; - } - else - { - $data['customer_location'] = ''; - } - - $data['customer_account_number'] = $customer_info->account_number; - $data['customer_discount'] = $customer_info->discount; - $data['customer_discount_type'] = $customer_info->discount_type; - $package_id = $this->customer->get_info($customer_id)->package_id; - - if($package_id != null) - { - $package_name = $this->customer_rewards->get_name($package_id); - $points = $this->customer->get_info($customer_id)->points; - $data['customer_rewards']['package_id'] = $package_id; - $data['customer_rewards']['points'] = empty($points) ? 0 : $points; - $data['customer_rewards']['package_name'] = $package_name; - } - - if($stats) - { - $cust_stats = $this->customer->get_stats($customer_id); - $data['customer_total'] = empty($cust_stats) ? 0 : $cust_stats->total; - } - - $data['customer_info'] = implode("\n", [ - $data['customer'], - $data['customer_address'], - $data['customer_location'] - ]); - - if($data['customer_account_number']) - { - $data['customer_info'] .= "\n" . lang('Sales.account_number') . ": " . $data['customer_account_number']; - } - - if($customer_info->tax_id != '') - { - $data['customer_info'] .= "\n" . lang('Sales.tax_id') . ": " . $customer_info->tax_id; - } - $data['tax_id'] = $customer_info->tax_id; - } - - return $customer_info; - } - - /** - * @param $sale_id - * @return array - */ - private function _load_sale_data($sale_id): array //TODO: Hungarian notation - { - $this->sale_lib->clear_all(); - $cash_rounding = $this->sale_lib->reset_cash_rounding(); - $data['cash_rounding'] = $cash_rounding; - - $sale_info = $this->sale->get_info($sale_id)->getRowArray(); - $this->sale_lib->copy_entire_sale($sale_id); - $data = []; - $data['cart'] = $this->sale_lib->get_cart(); - $data['payments'] = $this->sale_lib->get_payments(); - $data['selected_payment_type'] = $this->sale_lib->get_payment_type(); - - $tax_details = $this->tax_lib->get_taxes($data['cart'], $sale_id); - $data['taxes'] = $this->sale->get_sales_taxes($sale_id); - $data['discount'] = $this->sale_lib->get_discount(); - $data['transaction_time'] = to_datetime(strtotime($sale_info['sale_time'])); - $data['transaction_date'] = to_date(strtotime($sale_info['sale_time'])); - $data['show_stock_locations'] = $this->stock_location->show_locations('sales'); - - $data['include_hsn'] = (bool)$this->config['include_hsn']; - - // Returns 'subtotal', 'total', 'cash_total', 'payment_total', 'amount_due', 'cash_amount_due', 'payments_cover_total' - $totals = $this->sale_lib->get_totals($tax_details[0]); - $this->session->set('cash_adjustment_amount', $totals['cash_adjustment_amount']); - $data['subtotal'] = $totals['subtotal']; - $data['payments_total'] = $totals['payment_total']; - $data['payments_cover_total'] = $totals['payments_cover_total']; - $data['cash_mode'] = $this->session->get('cash_mode'); //TODO: Duplicated code. - $data['prediscount_subtotal'] = $totals['prediscount_subtotal']; - $data['cash_total'] = $totals['cash_total']; - $data['non_cash_total'] = $totals['total']; - $data['cash_amount_due'] = $totals['cash_amount_due']; - $data['non_cash_amount_due'] = $totals['amount_due']; - - if($data['cash_mode'] && ($data['selected_payment_type'] === lang('Sales.cash') || $data['payments_total'] > 0)) - { - $data['total'] = $totals['cash_total']; - $data['amount_due'] = $totals['cash_amount_due']; - } - else - { - $data['total'] = $totals['total']; - $data['amount_due'] = $totals['amount_due']; - } - - $data['amount_change'] = $data['amount_due'] * -1; - - $employee_info = $this->employee->get_info($this->sale_lib->get_employee()); - $data['employee'] = $employee_info->first_name . ' ' . mb_substr($employee_info->last_name, 0, 1); - $this->_load_customer_data($this->sale_lib->get_customer(), $data); - - $data['sale_id_num'] = $sale_id; - $data['sale_id'] = 'POS ' . $sale_id; - $data['comments'] = $sale_info['comment']; - $data['invoice_number'] = $sale_info['invoice_number']; - $data['quote_number'] = $sale_info['quote_number']; - $data['sale_status'] = $sale_info['sale_status']; - - $data['company_info'] = implode("\n", [$this->config['address'], $this->config['phone']]); //TODO: Duplicated code. - - if($this->config['account_number']) - { - $data['company_info'] .= "\n" . lang('Sales.account_number') . ": " . $this->config['account_number']; - } - if($this->config['tax_id'] != '') - { - $data['company_info'] .= "\n" . lang('Sales.tax_id') . ": " . $this->config['tax_id']; - } - - $data['barcode'] = $this->barcode_lib->generate_receipt_barcode($data['sale_id']); - $data['print_after_sale'] = false; - $data['price_work_orders'] = false; - - if($this->sale_lib->get_mode() == 'sale_invoice') //TODO: Duplicated code. - { - $data['mode_label'] = lang('Sales.invoice'); - $data['customer_required'] = lang('Sales.customer_required'); - } - elseif($this->sale_lib->get_mode() == 'sale_quote') - { - $data['mode_label'] = lang('Sales.quote'); - $data['customer_required'] = lang('Sales.customer_required'); - } - elseif($this->sale_lib->get_mode() == 'sale_work_order') - { - $data['mode_label'] = lang('Sales.work_order'); - $data['customer_required'] = lang('Sales.customer_required'); - } - elseif($this->sale_lib->get_mode() == 'return') - { - $data['mode_label'] = lang('Sales.return'); - $data['customer_required'] = lang('Sales.customer_optional'); - } - else - { - $data['mode_label'] = lang('Sales.receipt'); - $data['customer_required'] = lang('Sales.customer_optional'); - } - - $invoice_type = $this->config['invoice_type']; - $data['invoice_view'] = $invoice_type; - - return $data; - } - - /** - * @param array $data - * @return void - */ - private function _reload(array $data = []): void //TODO: Hungarian notation - { - $sale_id = $this->session->get('sale_id'); //TODO: This variable is never used - - if($sale_id == '') - { - $sale_id = NEW_ENTRY; - $this->session->set('sale_id', NEW_ENTRY); - } - $cash_rounding = $this->sale_lib->reset_cash_rounding(); - - // cash_rounding indicates only that the site is configured for cash rounding - $data['cash_rounding'] = $cash_rounding; - - $data['cart'] = $this->sale_lib->get_cart(); - $customer_info = $this->_load_customer_data($this->sale_lib->get_customer(), $data, true); - - $data['modes'] = $this->sale_lib->get_register_mode_options(); - $data['mode'] = $this->sale_lib->get_mode(); - $data['selected_table'] = $this->sale_lib->get_dinner_table(); - $data['empty_tables'] = $this->sale_lib->get_empty_tables($data['selected_table']); - $data['stock_locations'] = $this->stock_location->get_allowed_locations('sales'); - $data['stock_location'] = $this->sale_lib->get_sale_location(); - $data['tax_exclusive_subtotal'] = $this->sale_lib->get_subtotal(true, true); - $tax_details = $this->tax_lib->get_taxes($data['cart']); //TODO: Duplicated code. - $data['taxes'] = $tax_details[0]; - $data['discount'] = $this->sale_lib->get_discount(); - $data['payments'] = $this->sale_lib->get_payments(); - - // Returns 'subtotal', 'total', 'cash_total', 'payment_total', 'amount_due', 'cash_amount_due', 'payments_cover_total' - $totals = $this->sale_lib->get_totals($tax_details[0]); - - $data['item_count'] = $totals['item_count']; - $data['total_units'] = $totals['total_units']; - $data['subtotal'] = $totals['subtotal']; - $data['total'] = $totals['total']; - $data['payments_total'] = $totals['payment_total']; - $data['payments_cover_total'] = $totals['payments_cover_total']; - - // cash_mode indicates whether this sale is going to be processed using cash_rounding - $cash_mode = $this->session->get('cash_mode'); - $data['cash_mode'] = $cash_mode; - $data['prediscount_subtotal'] = $totals['prediscount_subtotal']; //TODO: Duplicated code. - $data['cash_total'] = $totals['cash_total']; - $data['non_cash_total'] = $totals['total']; - $data['cash_amount_due'] = $totals['cash_amount_due']; - $data['non_cash_amount_due'] = $totals['amount_due']; - - $data['selected_payment_type'] = $this->sale_lib->get_payment_type(); - - if($data['cash_mode'] && ($data['selected_payment_type'] == lang('Sales.cash') || $data['payments_total'] > 0)) - { - $data['total'] = $totals['cash_total']; - $data['amount_due'] = $totals['cash_amount_due']; - } - else - { - $data['total'] = $totals['total']; - $data['amount_due'] = $totals['amount_due']; - } - - $data['amount_change'] = $data['amount_due'] * -1; - - $data['comment'] = $this->sale_lib->get_comment(); - $data['email_receipt'] = $this->sale_lib->is_email_receipt(); - - if($customer_info && $this->config['customer_reward_enable']) - { - $data['payment_options'] = $this->sale->get_payment_options(true, true); - } - else - { - $data['payment_options'] = $this->sale->get_payment_options(); - } - - $data['items_module_allowed'] = $this->employee->has_grant('items', $this->employee->get_logged_in_employee_info()->person_id); - $data['change_price'] = $this->employee->has_grant('sales_change_price', $this->employee->get_logged_in_employee_info()->person_id); - - $temp_invoice_number = $this->sale_lib->get_invoice_number(); - $invoice_format = $this->config['sales_invoice_format']; - - if ($temp_invoice_number == null || $temp_invoice_number == '') - { - $temp_invoice_number = $this->token_lib->render($invoice_format, [], false); - } - - $data['invoice_number'] = $temp_invoice_number; - - $data['print_after_sale'] = $this->sale_lib->is_print_after_sale(); - $data['price_work_orders'] = $this->sale_lib->is_price_work_orders(); - - $data['pos_mode'] = $data['mode'] == 'sale' || $data['mode'] == 'return'; - - $data['quote_number'] = $this->sale_lib->get_quote_number(); - $data['work_order_number'] = $this->sale_lib->get_work_order_number(); - - //TODO: the if/else set below should be converted to a switch - if($this->sale_lib->get_mode() == 'sale_invoice') //TODO: Duplicated code. - { - $data['mode_label'] = lang('Sales.invoice'); - $data['customer_required'] = lang('Sales.customer_required'); - } - elseif($this->sale_lib->get_mode() == 'sale_quote') - { - $data['mode_label'] = lang('Sales.quote'); - $data['customer_required'] = lang('Sales.customer_required'); - } - elseif($this->sale_lib->get_mode() == 'sale_work_order') - { - $data['mode_label'] = lang('Sales.work_order'); - $data['customer_required'] = lang('Sales.customer_required'); - } - elseif($this->sale_lib->get_mode() == 'return') - { - $data['mode_label'] = lang('Sales.return'); - $data['customer_required'] = lang('Sales.customer_optional'); - } - else - { - $data['mode_label'] = lang('Sales.receipt'); - $data['customer_required'] = lang('Sales.customer_optional'); - } - - echo view("sales/register", $data); - } - - /** - * Load the sales receipt for a sale. Used in app/Views/sales/form.php - * - * @param int $sale_id - * @return void - * @noinspection PhpUnused - */ - public function getReceipt(int $sale_id): void - { - $data = $this->_load_sale_data($sale_id); - echo view('sales/receipt', $data); - $this->sale_lib->clear_all(); - } - - /** - * @param int $sale_id - * @return void - */ - public function getInvoice(int $sale_id): void - { - $data = $this->_load_sale_data($sale_id); - - echo view('sales/'.$data['invoice_view'], $data); - $this->sale_lib->clear_all(); - } - - /** - * @param int $sale_id - * @return void - */ - public function getEdit(int $sale_id): void - { - $data = []; - - $sale_info = $this->sale->get_info($sale_id)->getRowArray(); - $data['selected_customer_id'] = $sale_info['customer_id']; - $data['selected_customer_name'] = $sale_info['customer_name']; - $employee_info = $this->employee->get_info($sale_info['employee_id']); - $data['selected_employee_id'] = $sale_info['employee_id']; - $data['selected_employee_name'] = $employee_info->first_name . ' ' . $employee_info->last_name; - $data['sale_info'] = $sale_info; - $balance_due = round($sale_info['amount_due'] - $sale_info['amount_tendered'] + $sale_info['cash_refund'], totals_decimals(), PHP_ROUND_HALF_UP); - - if(!$this->sale_lib->reset_cash_rounding() && $balance_due < 0) - { - $balance_due = 0; - } - - $data['payments'] = []; - - foreach($this->sale->get_sale_payments($sale_id)->getResult() as $payment) - { - foreach(get_object_vars($payment) as $property => $value) - { - $payment->$property = $value; - } - $data['payments'][] = $payment; - } - - $data['payment_type_new'] = PAYMENT_TYPE_UNASSIGNED; - $data['payment_amount_new'] = $balance_due; - - $data['balance_due'] = $balance_due != 0; - - // don't allow gift card to be a payment option in a sale transaction edit because it's a complex change - $payment_options = $this->sale->get_payment_options(false); - - if($this->sale_lib->reset_cash_rounding()) - { - $payment_options[lang('Sales.cash_adjustment')] = lang('Sales.cash_adjustment'); - } - - $data['payment_options'] = $payment_options; - - // Set up a slightly modified list of payment types for new payment entry - $payment_options["--"] = lang('Common.none_selected_text'); - - $data['new_payment_options'] = $payment_options; - - echo view('sales/form', $data); - } - - /** - * @throws ReflectionException - */ - public function postDelete(int $sale_id = NEW_ENTRY, bool $update_inventory = true): void - { - $employee_id = $this->employee->get_logged_in_employee_info()->person_id; - $has_grant = $this->employee->has_grant('sales_delete', $employee_id); - - if(!$has_grant) - { - echo json_encode (['success' => false, 'message' => lang('Sales.not_authorized')]); - } - else - { - $sale_ids = $sale_id == NEW_ENTRY ? $this->request->getPost('ids', FILTER_SANITIZE_NUMBER_INT) : [$sale_id]; - - if($this->sale->delete_list($sale_ids, $employee_id, $update_inventory)) - { - echo json_encode ([ - 'success' => true, - 'message' => lang('Sales.successfully_deleted') . ' ' . count($sale_ids) . ' ' . lang('Sales.one_or_multiple'), - 'ids' => $sale_ids - ]); - } - else - { - echo json_encode (['success' => false, 'message' => lang('Sales.unsuccessfully_deleted')]); - } - } - } - - /** - * @param int $sale_id - * @param bool $update_inventory - * @return void - */ - public function restore(int $sale_id = NEW_ENTRY, bool $update_inventory = true): void - { - $employee_id = $this->employee->get_logged_in_employee_info()->person_id; - $has_grant = $this->employee->has_grant('sales_delete', $employee_id); - - if(!$has_grant) - { - echo json_encode (['success' => false, 'message' => lang('Sales.not_authorized')]); - } - else - { - $sale_ids = $sale_id == NEW_ENTRY ? $this->request->getPost('ids', FILTER_SANITIZE_NUMBER_INT) : [$sale_id]; - - if($this->sale->restore_list($sale_ids, $employee_id, $update_inventory)) - { - echo json_encode ([ - 'success' => true, - 'message' => lang('Sales.successfully_restored') . ' ' . count($sale_ids) . ' ' . lang('Sales.one_or_multiple'), - 'ids' => $sale_ids - ]); - } - else - { - echo json_encode (['success' => false, 'message' => lang('Sales.unsuccessfully_restored')]); - } - } - } - - /** - * This saves the sale from the update sale view (sales/form). - * It only updates the sales table and payments. - * @param int $sale_id - * @throws ReflectionException - */ - public function postSave(int $sale_id = NEW_ENTRY): void - { - $newdate = $this->request->getPost('date', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $employee_id = $this->employee->get_logged_in_employee_info()->person_id; - $inventory = model(Inventory::class); - $date_formatter = date_create_from_format($this->config['dateformat'] . ' ' . $this->config['timeformat'], $newdate); - $sale_time = $date_formatter->format('Y-m-d H:i:s'); - - $sale_data = [ - 'sale_time' => $sale_time, - 'customer_id' => $this->request->getPost('customer_id') != '' ? $this->request->getPost('customer_id', FILTER_SANITIZE_NUMBER_INT) : null, - 'employee_id' => $this->request->getPost('employee_id') != '' ? $this->request->getPost('employee_id', FILTER_SANITIZE_NUMBER_INT) : null, - 'comment' => $this->request->getPost('comment', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'invoice_number' => $this->request->getPost('invoice_number') != '' ? $this->request->getPost('invoice_number', FILTER_SANITIZE_FULL_SPECIAL_CHARS) : null - ]; - - // In order to maintain tradition the only element that can change on prior payments is the payment type - $amount_tendered = 0; - $number_of_payments = $this->request->getPost('number_of_payments', FILTER_SANITIZE_NUMBER_INT); - for($i = 0; $i < $number_of_payments; ++$i) - { - $payment_id = $this->request->getPost("payment_id_$i", FILTER_SANITIZE_NUMBER_INT); - $payment_type = $this->request->getPost("payment_type_$i", FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $payment_amount = parse_decimals($this->request->getPost("payment_amount_$i")); - $refund_type = $this->request->getPost("refund_type_$i", FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $cash_refund = parse_decimals($this->request->getPost("refund_amount_$i")); - - $cash_adjustment = $payment_type == lang('Sales.cash_adjustment') ? CASH_ADJUSTMENT_TRUE : CASH_ADJUSTMENT_FALSE; - - if(!$cash_adjustment) - { - $amount_tendered += $payment_amount - $cash_refund; - } - - //Non-cash positive refund amounts - if(empty(strstr($refund_type, lang('Sales.cash'))) && $cash_refund > 0) //TODO: This if and the one below can be combined. - { - //Change it to be a new negative payment (a "non-cash refund") - $payment_type = $refund_type; - $payment_amount = $payment_amount - $cash_refund; - $cash_refund = 0.00; - } - - $sale_data['payments'][] = [ - 'payment_id' => $payment_id, - 'payment_type' => $payment_type, - 'payment_amount' => $payment_amount, - 'cash_refund' => $cash_refund, - 'cash_adjustment' => $cash_adjustment, - 'employee_id' => $employee_id - ]; - } - - $payment_id = NEW_ENTRY; - $payment_amount_new = $this->request->getPost('payment_amount_new'); - $payment_type = $this->request->getPost('payment_type_new', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - - if($payment_type != PAYMENT_TYPE_UNASSIGNED && !empty($payment_amount_new)) - { - $payment_amount = parse_decimals($payment_amount_new); - $cash_refund = 0; - if($payment_type == lang('Sales.cash_adjustment')) - { - $cash_adjustment = CASH_ADJUSTMENT_TRUE; - } - else - { - $cash_adjustment = CASH_ADJUSTMENT_FALSE; - $amount_tendered += $payment_amount; - $sale_info = $this->sale->get_info($sale_id)->getRowArray(); - - if($amount_tendered > $sale_info['amount_due']) - { - $cash_refund = $amount_tendered - $sale_info['amount_due']; - } - } - - $sale_data['payments'][] = [ - 'payment_id' => $payment_id, - 'payment_type' => $payment_type, - 'payment_amount' => $payment_amount, - 'cash_refund' => $cash_refund, - 'cash_adjustment' => $cash_adjustment, - 'employee_id' => $employee_id - ]; - } - - $inventory->update('POS '.$sale_id, ['trans_date' => $sale_time]); //TODO: Reflection Exception - if($this->sale->update($sale_id, $sale_data)) - { - echo json_encode (['success' => true, 'message' => lang('Sales.successfully_updated'), 'id' => $sale_id]); - } - else - { - echo json_encode (['success' => false, 'message' => lang('Sales.unsuccessfully_updated'), 'id' => $sale_id]); - } - } - - /** - * This is used to cancel a suspended pos sale, quote. - * Completed sales (POS Sales or Invoiced Sales) can not be removed from the system - * Work orders can be canceled but are not physically removed from the sales history. - * Used in app/Views/sales/register.php - * - * @throws ReflectionException - * @noinspection PhpUnused - */ - public function postCancel(): void - { - $sale_id = $this->sale_lib->get_sale_id(); - if($sale_id != NEW_ENTRY && $sale_id != '') - { - $sale_type = $this->sale_lib->get_sale_type(); - - if($this->config['dinner_table_enable']) - { - $dinner_table = $this->sale_lib->get_dinner_table(); - $this->dinner_table->release($dinner_table); - } - - if($sale_type == SALE_TYPE_WORK_ORDER) - { - $this->sale->update_sale_status($sale_id, CANCELED); - } - else - { - $this->sale->delete($sale_id); - $this->session->set('sale_id', NEW_ENTRY); - } - } - else - { - $this->sale_lib->remove_temp_items(); - } - - $this->sale_lib->clear_all(); - $this->_reload(); //TODO: Hungarian notation - } - - /** - * Discards the suspended sale. Used in app/Views/sales/quote.php - * - * @return void - * @noinspection PhpUnused - */ - public function getDiscardSuspendedSale(): void - { - $suspended_id = $this->sale_lib->get_suspended_id(); - $this->sale_lib->clear_all(); - $this->sale->delete_suspended_sale($suspended_id); - $this->_reload(); //TODO: Hungarian notation - } - - /** - * Suspend the current sale. - * If the current sale is already suspended then update the existing suspended sale otherwise create - * it as a new suspended sale. Used in app/Views/sales/register.php. - * - * @throws ReflectionException - * @noinspection PhpUnused - */ - public function postSuspend(): void - { - $sale_id = $this->sale_lib->get_sale_id(); - $dinner_table = $this->sale_lib->get_dinner_table(); - $cart = $this->sale_lib->get_cart(); - $payments = $this->sale_lib->get_payments(); - $employee_id = $this->employee->get_logged_in_employee_info()->person_id; - $customer_id = $this->sale_lib->get_customer(); - $invoice_number = $this->sale_lib->get_invoice_number(); - $work_order_number = $this->sale_lib->get_work_order_number(); - $quote_number = $this->sale_lib->get_quote_number(); - $sale_type = $this->sale_lib->get_sale_type(); - - if($sale_type == '') - { - $sale_type = SALE_TYPE_POS; - } - - $comment = $this->sale_lib->get_comment(); - $sale_status = SUSPENDED; - - $data = []; - $sales_taxes = [[], []]; - - if($this->sale->save_value($sale_id, $sale_status, $cart, $customer_id, $employee_id, $comment, $invoice_number, $work_order_number, $quote_number, $sale_type, $payments, $dinner_table, $sales_taxes) == '-1') - { - $data['error'] = lang('Sales.unsuccessfully_suspended_sale'); - } - else - { - $data['success'] = lang('Sales.successfully_suspended_sale'); - } - - $this->sale_lib->clear_all(); - - $this->_reload($data); //TODO: Hungarian notation - } - - /** - * List suspended sales - */ - public function getSuspended(): void - { - $data = []; - $customer_id = $this->sale_lib->get_customer(); - $data['suspended_sales'] = $this->sale->get_all_suspended($customer_id); - echo view('sales/suspended', $data); - } - - /** - * Unsuspended sales are now left in the tables and are only removed - * when they are intentionally cancelled. Used in app/Views/sales/suspended.php. - * - * @return void - * @noinspection PhpUnused - */ - public function postUnsuspend(): void - { - $sale_id = $this->request->getPost('suspended_sale_id', FILTER_SANITIZE_NUMBER_INT); - $this->sale_lib->clear_all(); - - if($sale_id > 0) - { - $this->sale_lib->copy_entire_sale($sale_id); - } - - // Set current register mode to reflect that of unsuspended order type - $this->change_register_mode($this->sale_lib->get_sale_type()); - - $this->_reload(); //TODO: Hungarian notation - } - - /** - * Show Keyboard shortcut modal. Used in app/Views/sales/register.php - * - * @return void - * @noinspection PhpUnused - */ - public function getSalesKeyboardHelp() : void - { - echo view('sales/help'); - } - - /** - * Check the validity of an invoice number. Used in app/Views/sales/form.php. - * - * @return void - * @noinspection PhpUnused - */ - public function postCheckInvoiceNumber(): void - { - $sale_id = $this->request->getPost('sale_id', FILTER_SANITIZE_NUMBER_INT); - $invoice_number = $this->request->getPost('invoice_number', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $exists = !empty($invoice_number) && $this->sale->check_invoice_number_exists($invoice_number, $sale_id); - echo !$exists ? 'true' : 'false'; - } - - /** - * @param array $cart - * @return array - */ - public function get_filtered(array $cart): array - { - $filtered_cart = []; - foreach($cart as $id => $item) - { - if($item['print_option'] == PRINT_ALL) // always include - { - $filtered_cart[$id] = $item; - } - elseif($item['print_option'] == PRINT_PRICED && $item['price'] != 0) // include only if the price is not zero - { - $filtered_cart[$id] = $item; - } - // print_option 2 is never included - } - - return $filtered_cart; - } - - /** - * Update the item number in the register. Used in app/Views/sales/register.php - * - * @return void - * @noinspection PhpUnused - */ - public function postChangeItemNumber(): void - { - $item_id = $this->request->getPost('item_id', FILTER_SANITIZE_NUMBER_INT); - $item_number = $this->request->getPost('item_number', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $this->item->update_item_number($item_id, $item_number); - $cart = $this->sale_lib->get_cart(); - $x = $this->search_cart_for_item_id($item_id, $cart); - if($x != null) - { - $cart[$x]['item_number'] = $item_number; - } - $this->sale_lib->set_cart($cart); - } - - /** - * Change a given item name. Used in app/Views/sales/register.php. - * - * @return void - * @noinspection PhpUnused - */ - public function postChangeItemName(): void - { - $item_id = $this->request->getPost('item_id', FILTER_SANITIZE_NUMBER_INT); - $name = $this->request->getPost('item_name', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - - $this->item->update_item_name($item_id, $name); - - $cart = $this->sale_lib->get_cart(); - $x = $this->search_cart_for_item_id($item_id, $cart); - - if($x != null) - { - $cart[$x]['name'] = $name; - } - - $this->sale_lib->set_cart($cart); - } - - /** - * Update the given item description. Used in app/Views/sales/register.php - * - * @return void - * @noinspection PhpUnused - */ - public function postChangeItemDescription(): void - { - $item_id = $this->request->getPost('item_id', FILTER_SANITIZE_NUMBER_INT); - $description = $this->request->getPost('item_description', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - - $this->item->update_item_description($item_id, $description); - - $cart = $this->sale_lib->get_cart(); - $x = $this->search_cart_for_item_id($item_id, $cart); - - if($x != null) - { - $cart[$x]['description'] = $description; - } - - $this->sale_lib->set_cart($cart); - } - - /** - * @param int $search_item_id - * @param array $shopping_cart - * @return int|string|null - */ - public function search_cart_for_item_id(int $search_item_id, array $shopping_cart): int|string|null - { - foreach($shopping_cart as $key => $val) - { - if($val['item_id'] === $search_item_id) - { - return $key; - } - } - - return null; - } +// $dinner_table = $this->request->getPost('dinner_table'); +// $this->sale_lib->set_dinner_table($dinner_table); + } + elseif($this->stock_location->is_allowed_location($stock_location, 'sales')) + { + $this->sale_lib->set_sale_location($stock_location); + } + + $this->sale_lib->empty_payments(); + + $this->_reload(); + } + + /** + * @param int $sale_type + * @return void + */ + public function change_register_mode(int $sale_type): void + { + $mode = match($sale_type) { + SALE_TYPE_QUOTE => 'sale_quote', + SALE_TYPE_WORK_ORDER => 'sale_work_order', + SALE_TYPE_INVOICE => 'sale_invoice', + SALE_TYPE_RETURN => 'return', + default => 'sale' //SALE_TYPE_POS + }; + + $this->sale_lib->set_mode($mode); + } + + + /** + * Sets the sales comment. Used in app/Views/sales/register.php + * + * @return void + * @noinspection PhpUnused + */ + public function postSetComment(): void + { + $this->sale_lib->set_comment($this->request->getPost('comment', FILTER_SANITIZE_FULL_SPECIAL_CHARS)); + } + + /** + * Sets the invoice number. Used in app/Views/sales/register.php + * + * @return void + * @noinspection PhpUnused + */ + public function postSetInvoiceNumber(): void + { + $this->sale_lib->set_invoice_number($this->request->getPost('sales_invoice_number', FILTER_SANITIZE_NUMBER_INT)); + } + + /** + * @return void + */ + public function postSetPaymentType(): void //TODO: This function does not appear to be called anywhere in the code. + { + $this->sale_lib->set_payment_type($this->request->getPost('selected_payment_type', FILTER_SANITIZE_FULL_SPECIAL_CHARS)); + $this->_reload(); //TODO: Hungarian notation. + } + + /** + * Sets PrintAfterSale flag. Used in app/Views/sales/register.php + * + * @return void + * @noinspection PhpUnused + */ + public function postSetPrintAfterSale(): void + { + $this->sale_lib->set_print_after_sale($this->request->getPost('sales_print_after_sale') != 'false'); + } + + /** + * Sets the flag to include prices in the work order. Used in app/Views/sales/register.php + * + * @return void + * @noinspection PhpUnused + */ + public function postSetPriceWorkOrders(): void + { + $price_work_orders = parse_decimals($this->request->getPost('price_work_orders')); + $this->sale_lib->set_price_work_orders($price_work_orders); + } + + /** + * Sets the flag to email receipt to the customer. Used in app/Views/sales/register.php + * + * @return void + * @noinspection PhpUnused + */ + public function postSetEmailReceipt(): void + { + $this->sale_lib->set_email_receipt($this->request->getPost('email_receipt', FILTER_SANITIZE_FULL_SPECIAL_CHARS)); + } + + /** + * Add a payment to the sale. Used in app/Views/sales/register.php + * + * @return void + * @noinspection PhpUnused + */ + public function postAddPayment(): void + { + $data = []; + $giftcard = model(Giftcard::class); + $payment_type = $this->request->getPost('payment_type', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + + if($payment_type !== lang('Sales.giftcard')) + { + $rules = ['amount_tendered' => 'trim|required|decimal_locale',]; + $messages = ['amount_tendered' => lang('Sales.must_enter_numeric')]; + } + else + { + $rules = ['amount_tendered' => 'trim|required',]; + $messages = ['amount_tendered' => lang('Sales.must_enter_numeric_giftcard')]; + } + + if(!$this->validate($rules, $messages)) + { + $data['error'] = $payment_type === lang('Sales.giftcard') + ? lang('Sales.must_enter_numeric_giftcard') + : lang('Sales.must_enter_numeric'); + } + else + { + if($payment_type === lang('Sales.giftcard')) + { + //In the case of giftcard payment the register input amount_tendered becomes the giftcard number + $amount_tendered = parse_decimals($this->request->getPost('amount_tendered')); + $giftcard_num = $amount_tendered; + + $payments = $this->sale_lib->get_payments(); + $payment_type = $payment_type . ':' . $giftcard_num; + $current_payments_with_giftcard = isset($payments[$payment_type]) ? $payments[$payment_type]['payment_amount'] : 0; + $cur_giftcard_value = $giftcard->get_giftcard_value($giftcard_num); + $cur_giftcard_customer = $giftcard->get_giftcard_customer($giftcard_num); + $customer_id = $this->sale_lib->get_customer(); + + if(isset($cur_giftcard_customer) && $cur_giftcard_customer != $customer_id) + { + $data['error'] = lang('Giftcards.cannot_use', [$giftcard_num]); + } + elseif(($cur_giftcard_value - $current_payments_with_giftcard) <= 0 && $this->sale_lib->get_mode() === 'sale') + { + $data['error'] = lang('Giftcards.remaining_balance', [$giftcard_num, $cur_giftcard_value]); + } + else + { + $new_giftcard_value = $giftcard->get_giftcard_value($giftcard_num) - $this->sale_lib->get_amount_due(); + $new_giftcard_value = max($new_giftcard_value, 0); + $this->sale_lib->set_giftcard_remainder($new_giftcard_value); + $new_giftcard_value = str_replace('$', '\$', to_currency($new_giftcard_value)); + $data['warning'] = lang('Giftcards.remaining_balance', [$giftcard_num, $new_giftcard_value]); + $amount_tendered = min($this->sale_lib->get_amount_due(), $giftcard->get_giftcard_value($giftcard_num)); + + $this->sale_lib->add_payment($payment_type, $amount_tendered); + } + } + elseif($payment_type === lang('Sales.rewards')) + { + $customer_id = $this->sale_lib->get_customer(); + $package_id = $this->customer->get_info($customer_id)->package_id; + if(!empty($package_id)) + { + $package_name = $this->customer_rewards->get_name($package_id); //TODO: this variable is never used. + $points = $this->customer->get_info($customer_id)->points; + $points = ($points == null ? 0 : $points); + + $payments = $this->sale_lib->get_payments(); + $current_payments_with_rewards = isset($payments[$payment_type]) ? $payments[$payment_type]['payment_amount'] : 0; + $cur_rewards_value = $points; + + if(($cur_rewards_value - $current_payments_with_rewards) <= 0) + { + $data['error'] = lang('Sales.rewards_remaining_balance') . to_currency($cur_rewards_value); + } + else + { + $new_reward_value = $points - $this->sale_lib->get_amount_due(); + $new_reward_value = max($new_reward_value, 0); + $this->sale_lib->set_rewards_remainder($new_reward_value); + $new_reward_value = str_replace('$', '\$', to_currency($new_reward_value)); + $data['warning'] = lang('Sales.rewards_remaining_balance'). $new_reward_value; + $amount_tendered = min($this->sale_lib->get_amount_due(), $points); + + $this->sale_lib->add_payment($payment_type, $amount_tendered); + } + } + } + elseif($payment_type === lang('Sales.cash')) + { + $amount_due = $this->sale_lib->get_total(); + $sales_total = $this->sale_lib->get_total(false); + $amount_tendered = parse_decimals($this->request->getPost('amount_tendered')); + $this->sale_lib->add_payment($payment_type, $amount_tendered); + $cash_adjustment_amount = $amount_due - $sales_total; + if($cash_adjustment_amount <> 0) + { + $this->session->set('cash_mode', CASH_MODE_TRUE); + $this->sale_lib->add_payment(lang('Sales.cash_adjustment'), $cash_adjustment_amount, CASH_ADJUSTMENT_TRUE); + } + } + else + { + $amount_tendered = parse_decimals($this->request->getPost('amount_tendered')); + $this->sale_lib->add_payment($payment_type, $amount_tendered); + } + } + + $this->_reload($data); + } + + /** + * Multiple Payments. Used in app/Views/sales/register.php + * + * @param string $payment_id + * @return void + * @noinspection PhpUnused + */ + public function getDeletePayment(string $payment_id): void + { + $this->sale_lib->delete_payment($payment_id); + + $this->_reload(); //TODO: Hungarian notation + } + + /** + * Add an item to the sale. Used in app/Views/sales/register.php + * + * @return void + * @noinspection PhpUnused + */ + public function postAdd(): void + { + $data = []; + + $discount = $this->config['default_sales_discount']; + $discount_type = $this->config['default_sales_discount_type']; + + // check if any discount is assigned to the selected customer + $customer_id = $this->sale_lib->get_customer(); + if($customer_id != NEW_ENTRY) + { + // load the customer discount if any + $customer_discount = $this->customer->get_info($customer_id)->discount; + $customer_discount_type = $this->customer->get_info($customer_id)->discount_type; + if($customer_discount != '') + { + $discount = $customer_discount; + $discount_type = $customer_discount_type; + } + } + + $item_id_or_number_or_item_kit_or_receipt = $this->request->getPost('item', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + $this->token_lib->parse_barcode($quantity, $price, $item_id_or_number_or_item_kit_or_receipt); + $mode = $this->sale_lib->get_mode(); + $quantity = ($mode == 'return') ? -$quantity : $quantity; + $item_location = $this->sale_lib->get_sale_location(); + + if($mode == 'return' && $this->sale->is_valid_receipt($item_id_or_number_or_item_kit_or_receipt)) + { + $this->sale_lib->return_entire_sale($item_id_or_number_or_item_kit_or_receipt); + } + elseif($this->item_kit->is_valid_item_kit($item_id_or_number_or_item_kit_or_receipt)) + { + // Add kit item to order if one is assigned + $pieces = explode(' ', $item_id_or_number_or_item_kit_or_receipt); + + $item_kit_id = (count($pieces) > 1) ? $pieces[1] : $item_id_or_number_or_item_kit_or_receipt; + $item_kit_info = $this->item_kit->get_info($item_kit_id); + $kit_item_id = $item_kit_info->kit_item_id; + $kit_price_option = $item_kit_info->price_option; + $kit_print_option = $item_kit_info->print_option; // 0-all, 1-priced, 2-kit-only + + if($discount_type == $item_kit_info->kit_discount_type) + { + if($item_kit_info->kit_discount > $discount) + { + $discount = $item_kit_info->kit_discount; + } + } + else + { + $discount = $item_kit_info->kit_discount; + $discount_type = $item_kit_info->kit_discount_type; + } + + $print_option = PRINT_ALL; // Always include in list of items on invoice //TODO: This variable is never used in the code + + if(!empty($kit_item_id)) + { + if(!$this->sale_lib->add_item($kit_item_id, $item_location, $quantity, $discount, $discount_type, PRICE_MODE_KIT, $kit_price_option, $kit_print_option, $price)) + { + $data['error'] = lang('Sales.unable_to_add_item'); + } + else + { + $data['warning'] = $this->sale_lib->out_of_stock($item_kit_id, $item_location); + } + } + + // Add item kit items to order + $stock_warning = null; + if(!$this->sale_lib->add_item_kit($item_id_or_number_or_item_kit_or_receipt, $item_location, $discount, $discount_type, $kit_price_option, $kit_print_option, $stock_warning)) + { + $data['error'] = lang('Sales.unable_to_add_item'); + } + elseif($stock_warning != null) + { + $data['warning'] = $stock_warning; + } + } + else + { + if($item_id_or_number_or_item_kit_or_receipt == '' || !$this->sale_lib->add_item($item_id_or_number_or_item_kit_or_receipt, $item_location, $quantity, $discount, $discount_type, PRICE_MODE_STANDARD, null, null, $price)) + { + $data['error'] = lang('Sales.unable_to_add_item'); + } + else + { + $data['warning'] = $this->sale_lib->out_of_stock($item_id_or_number_or_item_kit_or_receipt, $item_location); + } + } + + $this->_reload($data); + } + + /** + * Edit an item in the sale. Used in app/Views/sales/register.php + * + * @param string $line + * @return void + * @noinspection PhpUnused + */ + public function postEditItem(string $line): void + { + $data = []; + + $rules = [ + 'price' => 'trim|required|decimal_locale', + 'quantity' => 'trim|required|decimal_locale', + 'discount' => 'trim|permit_empty|decimal_locale', + ]; + + if($this->validate($rules)) + { + $description = $this->request->getPost('description', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + $serialnumber = $this->request->getPost('serialnumber', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + $price = parse_decimals($this->request->getPost('price')); + $quantity = parse_decimals($this->request->getPost('quantity')); + $discount_type = $this->request->getPost('discount_type', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + $discount = $discount_type + ? parse_quantity($this->request->getPost('discount')) + : parse_decimals($this->request->getPost('discount')); + + $item_location = $this->request->getPost('location', FILTER_SANITIZE_NUMBER_INT); + $discounted_total = $this->request->getPost('discounted_total') != '' + ? parse_decimals($this->request->getPost('discounted_total') ?? '') + : null; + + + $this->sale_lib->edit_item($line, $description, $serialnumber, $quantity, $discount, $discount_type, $price, $discounted_total); + + $this->sale_lib->empty_payments(); + + $data['warning'] = $this->sale_lib->out_of_stock($this->sale_lib->get_item_id($line), $item_location); + + } + else + { + $data['error'] = lang('Sales.error_editing_item'); + } + + $this->_reload($data); + } + + /** + * Deletes an item specified in the parameter from the shopping cart. Used in app/Views/sales/register.php + * + * @param int $item_id + * @return void + * @throws ReflectionException + * @noinspection PhpUnused + */ + public function getDeleteItem(int $item_id): void + { + $this->sale_lib->delete_item($item_id); + + $this->sale_lib->empty_payments(); + + $this->_reload(); //TODO: Hungarian notation + } + + /** + * Remove the current customer from the sale. Used in app/Views/sales/register.php + * + * @return void + * @noinspection PhpUnused + */ + public function getRemoveCustomer(): void + { + $this->sale_lib->clear_giftcard_remainder(); + $this->sale_lib->clear_rewards_remainder(); + $this->sale_lib->delete_payment(lang('Sales.rewards')); + $this->sale_lib->clear_invoice_number(); + $this->sale_lib->clear_quote_number(); + $this->sale_lib->remove_customer(); + + $this->_reload(); //TODO: Hungarian notation + } + + /** + * Complete and finalize a sale. Used in app/Views/sales/register.php + * + * @return void + * @throws ReflectionException + * @noinspection PhpUnused + */ + public function postComplete(): void //TODO: this function is huge. Probably should be refactored. + { + $sale_id = $this->sale_lib->get_sale_id(); + $data = []; + $data['dinner_table'] = $this->sale_lib->get_dinner_table(); + + $data['cart'] = $this->sale_lib->get_cart(); + + $data['include_hsn'] = (bool)$this->config['include_hsn']; + $__time = time(); + $data['transaction_time'] = to_datetime($__time); + $data['transaction_date'] = to_date($__time); + $data['show_stock_locations'] = $this->stock_location->show_locations('sales'); + $data['comments'] = $this->sale_lib->get_comment(); + $employee_id = $this->employee->get_logged_in_employee_info()->person_id; + $employee_info = $this->employee->get_info($employee_id); + $data['employee'] = $employee_info->first_name . ' ' . mb_substr($employee_info->last_name, 0, 1); + + $data['company_info'] = implode("\n", [$this->config['address'], $this->config['phone']]); + + if($this->config['account_number']) + { + $data['company_info'] .= "\n" . lang('Sales.account_number') . ": " . $this->config['account_number']; + } + + if($this->config['tax_id'] != '') + { + $data['company_info'] .= "\n" . lang('Sales.tax_id') . ": " . $this->config['tax_id']; + } + + $data['invoice_number_enabled'] = $this->sale_lib->is_invoice_mode(); + $data['cur_giftcard_value'] = $this->sale_lib->get_giftcard_remainder(); + $data['cur_rewards_value'] = $this->sale_lib->get_rewards_remainder(); + $data['print_after_sale'] = $this->session->get('sales_print_after_sale'); + $data['price_work_orders'] = $this->sale_lib->is_price_work_orders(); + $data['email_receipt'] = $this->sale_lib->is_email_receipt(); + $customer_id = $this->sale_lib->get_customer(); + $invoice_number = $this->sale_lib->get_invoice_number(); + $data["invoice_number"] = $invoice_number; + $work_order_number = $this->sale_lib->get_work_order_number(); + $data["work_order_number"] = $work_order_number; + $quote_number = $this->sale_lib->get_quote_number(); + $data["quote_number"] = $quote_number; + $customer_info = $this->_load_customer_data($customer_id, $data); + + if($customer_info != null) + { + $data["customer_comments"] = $customer_info->comments; + $data['tax_id'] = $customer_info->tax_id; + } + $tax_details = $this->tax_lib->get_taxes($data['cart']); //TODO: Duplicated code + $data['taxes'] = $tax_details[0]; + $data['discount'] = $this->sale_lib->get_discount(); + $data['payments'] = $this->sale_lib->get_payments(); + + // Returns 'subtotal', 'total', 'cash_total', 'payment_total', 'amount_due', 'cash_amount_due', 'payments_cover_total' + $totals = $this->sale_lib->get_totals($tax_details[0]); + $data['subtotal'] = $totals['subtotal']; + $data['total'] = $totals['total']; + $data['payments_total'] = $totals['payment_total']; + $data['payments_cover_total'] = $totals['payments_cover_total']; + $data['cash_rounding'] = $this->session->get('cash_rounding'); + $data['cash_mode'] = $this->session->get('cash_mode'); //TODO: Duplicated code + $data['prediscount_subtotal'] = $totals['prediscount_subtotal']; + $data['cash_total'] = $totals['cash_total']; + $data['non_cash_total'] = $totals['total']; + $data['cash_amount_due'] = $totals['cash_amount_due']; + $data['non_cash_amount_due'] = $totals['amount_due']; + + if($data['cash_mode']) //TODO: Convert this to ternary notation + { + $data['amount_due'] = $totals['cash_amount_due']; + } + else + { + $data['amount_due'] = $totals['amount_due']; + } + + $data['amount_change'] = $data['amount_due'] * -1; + + if($data['amount_change'] > 0) + { + // Save cash refund to the cash payment transaction if found, if not then add as new Cash transaction + + if(array_key_exists(lang('Sales.cash'), $data['payments'])) + { + $data['payments'][lang('Sales.cash')]['cash_refund'] = $data['amount_change']; + } + else + { + $payment = [ + lang('Sales.cash') => [ + 'payment_type' => lang('Sales.cash'), + 'payment_amount' => 0, + 'cash_refund' => $data['amount_change'] + ] + ]; + + $data['payments'] += $payment; + } + } + + $data['print_price_info'] = true; + + if($this->sale_lib->is_invoice_mode()) + { + $invoice_format = $this->config['sales_invoice_format']; + + // generate final invoice number (if using the invoice in sales by receipt mode then the invoice number can be manually entered or altered in some way + if(!empty($invoice_format) && $invoice_number == null) + { + // The user can retain the default encoded format or can manually override it. It still passes through the rendering step. + $invoice_number = $this->token_lib->render($invoice_format); + } + + + if($sale_id == NEW_ENTRY && $this->sale->check_invoice_number_exists($invoice_number)) + { + $data['error'] = lang('Sales.invoice_number_duplicate', [$invoice_number]); + $this->_reload($data); + } + else + { + $data['invoice_number'] = $invoice_number; + $data['sale_status'] = COMPLETED; + $sale_type = SALE_TYPE_INVOICE; + + // The PHP file name is the same as the invoice_type key + $invoice_view = $this->config['invoice_type']; + + // Save the data to the sales table + $data['sale_id_num'] = $this->sale->save_value($sale_id, $data['sale_status'], $data['cart'], $customer_id, $employee_id, $data['comments'], $invoice_number, $work_order_number, $quote_number, $sale_type, $data['payments'], $data['dinner_table'], $tax_details); + $data['sale_id'] = 'POS ' . $data['sale_id_num']; + + // Resort and filter cart lines for printing + $data['cart'] = $this->sale_lib->sort_and_filter_cart($data['cart']); + + if($data['sale_id_num'] == NEW_ENTRY) + { + $data['error_message'] = lang('Sales.transaction_failed'); + } + else + { + $data['barcode'] = $this->barcode_lib->generate_receipt_barcode($data['sale_id']); + echo view('sales/'.$invoice_view, $data); + $this->sale_lib->clear_all(); + } + } + } + elseif($this->sale_lib->is_work_order_mode()) + { + + if(!($data['price_work_orders'] == 1)) + { + $data['print_price_info'] = false; + } + + $data['sales_work_order'] = lang('Sales.work_order'); + $data['work_order_number_label'] = lang('Sales.work_order_number'); + + if($work_order_number == null) + { + // generate work order number + $work_order_format = $this->config['work_order_format']; + $work_order_number = $this->token_lib->render($work_order_format); + } + + if($sale_id == NEW_ENTRY && $this->sale->check_work_order_number_exists($work_order_number)) + { + $data['error'] = lang('Sales.work_order_number_duplicate'); + $this->_reload($data); + } + else + { + $data['work_order_number'] = $work_order_number; + $data['sale_status'] = SUSPENDED; + $sale_type = SALE_TYPE_WORK_ORDER; + + $data['sale_id_num'] = $this->sale->save_value($sale_id, $data['sale_status'], $data['cart'], $customer_id, $employee_id, $data['comments'], $invoice_number, $work_order_number, $quote_number, $sale_type, $data['payments'], $data['dinner_table'], $tax_details); + $this->sale_lib->set_suspended_id($data['sale_id_num']); + + $data['cart'] = $this->sale_lib->sort_and_filter_cart($data['cart']); + + $data['barcode'] = null; + + echo view('sales/work_order', $data); + $this->sale_lib->clear_mode(); + $this->sale_lib->clear_all(); + } + } + elseif($this->sale_lib->is_quote_mode()) + { + $data['sales_quote'] = lang('Sales.quote'); + $data['quote_number_label'] = lang('Sales.quote_number'); + + if($quote_number == null) + { + // generate quote number + $quote_format = $this->config['sales_quote_format']; + $quote_number = $this->token_lib->render($quote_format); + } + + if($sale_id == NEW_ENTRY && $this->sale->check_quote_number_exists($quote_number)) + { + $data['error'] = lang('Sales.quote_number_duplicate'); + $this->_reload($data); + } + else + { + $data['quote_number'] = $quote_number; + $data['sale_status'] = SUSPENDED; + $sale_type = SALE_TYPE_QUOTE; + + $data['sale_id_num'] = $this->sale->save_value($sale_id, $data['sale_status'], $data['cart'], $customer_id, $employee_id, $data['comments'], $invoice_number, $work_order_number, $quote_number, $sale_type, $data['payments'], $data['dinner_table'], $tax_details); + $this->sale_lib->set_suspended_id($data['sale_id_num']); + + $data['cart'] = $this->sale_lib->sort_and_filter_cart($data['cart']); + $data['barcode'] = null; + + echo view('sales/quote', $data); + $this->sale_lib->clear_mode(); + $this->sale_lib->clear_all(); + } + } + else + { + // Save the data to the sales table + $data['sale_status'] = COMPLETED; + if($this->sale_lib->is_return_mode()) + { + $sale_type = SALE_TYPE_RETURN; + } + else + { + $sale_type = SALE_TYPE_POS; + } + + $data['sale_id_num'] = $this->sale->save_value($sale_id, $data['sale_status'], $data['cart'], $customer_id, $employee_id, $data['comments'], $invoice_number, $work_order_number, $quote_number, $sale_type, $data['payments'], $data['dinner_table'], $tax_details); + + $data['sale_id'] = 'POS ' . $data['sale_id_num']; + + $data['cart'] = $this->sale_lib->sort_and_filter_cart($data['cart']); + + if($data['sale_id_num'] == NEW_ENTRY) + { + $data['error_message'] = lang('Sales.transaction_failed'); + } + else + { + $data['barcode'] = $this->barcode_lib->generate_receipt_barcode($data['sale_id']); + echo view('sales/receipt', $data); + $this->sale_lib->clear_all(); + } + } + } + + /** + * Email PDF invoice to customer. Used in app/Views/sales/form.php, invoice.php, quote.php, tax_invoice.php and work_order.php + * + * @param int $sale_id + * @param string $type + * @return bool + * @noinspection PhpUnused + */ + public function getSendPdf(int $sale_id, string $type = 'invoice'): bool + { + $sale_data = $this->_load_sale_data($sale_id); + + $result = false; + $message = lang('Sales.invoice_no_email'); + + if(!empty($sale_data['customer_email'])) + { + $to = $sale_data['customer_email']; + $number = array_key_exists($type."_number", $sale_data) ? $sale_data[$type."_number"] : ""; + $subject = lang('Sales.' . $type) . ' ' . $number; + + $text = $this->config['invoice_email_message']; + $tokens = [ + new Token_invoice_sequence($sale_data['invoice_number']), + new Token_invoice_count('POS ' . $sale_data['sale_id']), + new Token_customer((array)$sale_data) + ]; + $text = $this->token_lib->render($text, $tokens); + $sale_data['mimetype'] = mime_content_type(FCPATH . 'uploads/' . $this->config['company_logo']); + + // generate email attachment: invoice in pdf format + $view = Services::renderer(); + $html = $view->setData($sale_data)->render("sales/$type" . '_email', $sale_data); + + // load pdf helper + helper (['dompdf', 'file']); + $filename = sys_get_temp_dir() . '/' . lang('Sales.' . $type) . '-' . str_replace('/', '-', $number) . '.pdf'; + if(file_put_contents($filename, create_pdf($html)) !== false) + { + $result = $this->email_lib->sendEmail($to, $subject, $text, $filename); + } + + $message = lang($result ? "Sales." . $type . "_sent" : "Sales." . $type . "_unsent") . ' ' . $to; + } + + echo json_encode (['success' => $result, 'message' => $message, 'id' => $sale_id]); + + $this->sale_lib->clear_all(); + + return $result; + } + + /** + * Emails sales receipt to customer. Used in app/Views/sales/receipt.php + * + * @param int $sale_id + * @return bool + * @noinspection PhpUnused + */ + public function getSendReceipt(int $sale_id): bool + { + $sale_data = $this->_load_sale_data($sale_id); + + $result = false; + $message = lang('Sales.receipt_no_email'); + + if(!empty($sale_data['customer_email'])) + { + $sale_data['barcode'] = $this->barcode_lib->generate_receipt_barcode($sale_data['sale_id']); + + $to = $sale_data['customer_email']; + $subject = lang('Sales.receipt'); + + $view = Services::renderer(); + $text = $view->setData($sale_data)->render('sales/receipt_email'); + + $result = $this->email_lib->sendEmail($to, $subject, $text); + + $message = lang($result ? 'Sales.receipt_sent' : 'Sales.receipt_unsent') . ' ' . $to; + } + + echo json_encode (['success' => $result, 'message' => $message, 'id' => $sale_id]); + + $this->sale_lib->clear_all(); + + return $result; + } + + /** + * @param int $customer_id + * @param array $data + * @param bool $stats + * @return array|stdClass|string|null + */ + private function _load_customer_data(int $customer_id, array &$data, bool $stats = false): array|string|stdClass|null //TODO: Hungarian notation + { + $customer_info = ''; + + if($customer_id != NEW_ENTRY) + { + $customer_info = $this->customer->get_info($customer_id); + $data['customer_id'] = $customer_id; + + if(!empty($customer_info->company_name)) + { + $data['customer'] = $customer_info->company_name; + } + else + { + $data['customer'] = $customer_info->first_name . ' ' . $customer_info->last_name; + } + + $data['first_name'] = $customer_info->first_name; + $data['last_name'] = $customer_info->last_name; + $data['customer_email'] = $customer_info->email; + $data['customer_address'] = $customer_info->address_1; + + if(!empty($customer_info->zip) || !empty($customer_info->city)) + { + $data['customer_location'] = $customer_info->zip . ' ' . $customer_info->city . "\n" . $customer_info->state; + } + else + { + $data['customer_location'] = ''; + } + + $data['customer_account_number'] = $customer_info->account_number; + $data['customer_discount'] = $customer_info->discount; + $data['customer_discount_type'] = $customer_info->discount_type; + $package_id = $this->customer->get_info($customer_id)->package_id; + + if($package_id != null) + { + $package_name = $this->customer_rewards->get_name($package_id); + $points = $this->customer->get_info($customer_id)->points; + $data['customer_rewards']['package_id'] = $package_id; + $data['customer_rewards']['points'] = empty($points) ? 0 : $points; + $data['customer_rewards']['package_name'] = $package_name; + } + + if($stats) + { + $cust_stats = $this->customer->get_stats($customer_id); + $data['customer_total'] = empty($cust_stats) ? 0 : $cust_stats->total; + } + + $data['customer_info'] = implode("\n", [ + $data['customer'], + $data['customer_address'], + $data['customer_location'] + ]); + + if($data['customer_account_number']) + { + $data['customer_info'] .= "\n" . lang('Sales.account_number') . ": " . $data['customer_account_number']; + } + + if($customer_info->tax_id != '') + { + $data['customer_info'] .= "\n" . lang('Sales.tax_id') . ": " . $customer_info->tax_id; + } + $data['tax_id'] = $customer_info->tax_id; + } + + return $customer_info; + } + + /** + * @param $sale_id + * @return array + */ + private function _load_sale_data($sale_id): array //TODO: Hungarian notation + { + $this->sale_lib->clear_all(); + $cash_rounding = $this->sale_lib->reset_cash_rounding(); + $data['cash_rounding'] = $cash_rounding; + + $sale_info = $this->sale->get_info($sale_id)->getRowArray(); + $this->sale_lib->copy_entire_sale($sale_id); + $data = []; + $data['cart'] = $this->sale_lib->get_cart(); + $data['payments'] = $this->sale_lib->get_payments(); + $data['selected_payment_type'] = $this->sale_lib->get_payment_type(); + + $tax_details = $this->tax_lib->get_taxes($data['cart'], $sale_id); + $data['taxes'] = $this->sale->get_sales_taxes($sale_id); + $data['discount'] = $this->sale_lib->get_discount(); + $data['transaction_time'] = to_datetime(strtotime($sale_info['sale_time'])); + $data['transaction_date'] = to_date(strtotime($sale_info['sale_time'])); + $data['show_stock_locations'] = $this->stock_location->show_locations('sales'); + + $data['include_hsn'] = (bool)$this->config['include_hsn']; + + // Returns 'subtotal', 'total', 'cash_total', 'payment_total', 'amount_due', 'cash_amount_due', 'payments_cover_total' + $totals = $this->sale_lib->get_totals($tax_details[0]); + $this->session->set('cash_adjustment_amount', $totals['cash_adjustment_amount']); + $data['subtotal'] = $totals['subtotal']; + $data['payments_total'] = $totals['payment_total']; + $data['payments_cover_total'] = $totals['payments_cover_total']; + $data['cash_mode'] = $this->session->get('cash_mode'); //TODO: Duplicated code. + $data['prediscount_subtotal'] = $totals['prediscount_subtotal']; + $data['cash_total'] = $totals['cash_total']; + $data['non_cash_total'] = $totals['total']; + $data['cash_amount_due'] = $totals['cash_amount_due']; + $data['non_cash_amount_due'] = $totals['amount_due']; + + if($data['cash_mode'] && ($data['selected_payment_type'] === lang('Sales.cash') || $data['payments_total'] > 0)) + { + $data['total'] = $totals['cash_total']; + $data['amount_due'] = $totals['cash_amount_due']; + } + else + { + $data['total'] = $totals['total']; + $data['amount_due'] = $totals['amount_due']; + } + + $data['amount_change'] = $data['amount_due'] * -1; + + $employee_info = $this->employee->get_info($this->sale_lib->get_employee()); + $data['employee'] = $employee_info->first_name . ' ' . mb_substr($employee_info->last_name, 0, 1); + $this->_load_customer_data($this->sale_lib->get_customer(), $data); + + $data['sale_id_num'] = $sale_id; + $data['sale_id'] = 'POS ' . $sale_id; + $data['comments'] = $sale_info['comment']; + $data['invoice_number'] = $sale_info['invoice_number']; + $data['quote_number'] = $sale_info['quote_number']; + $data['sale_status'] = $sale_info['sale_status']; + + $data['company_info'] = implode("\n", [$this->config['address'], $this->config['phone']]); //TODO: Duplicated code. + + if($this->config['account_number']) + { + $data['company_info'] .= "\n" . lang('Sales.account_number') . ": " . $this->config['account_number']; + } + if($this->config['tax_id'] != '') + { + $data['company_info'] .= "\n" . lang('Sales.tax_id') . ": " . $this->config['tax_id']; + } + + $data['barcode'] = $this->barcode_lib->generate_receipt_barcode($data['sale_id']); + $data['print_after_sale'] = false; + $data['price_work_orders'] = false; + + if($this->sale_lib->get_mode() == 'sale_invoice') //TODO: Duplicated code. + { + $data['mode_label'] = lang('Sales.invoice'); + $data['customer_required'] = lang('Sales.customer_required'); + } + elseif($this->sale_lib->get_mode() == 'sale_quote') + { + $data['mode_label'] = lang('Sales.quote'); + $data['customer_required'] = lang('Sales.customer_required'); + } + elseif($this->sale_lib->get_mode() == 'sale_work_order') + { + $data['mode_label'] = lang('Sales.work_order'); + $data['customer_required'] = lang('Sales.customer_required'); + } + elseif($this->sale_lib->get_mode() == 'return') + { + $data['mode_label'] = lang('Sales.return'); + $data['customer_required'] = lang('Sales.customer_optional'); + } + else + { + $data['mode_label'] = lang('Sales.receipt'); + $data['customer_required'] = lang('Sales.customer_optional'); + } + + $invoice_type = $this->config['invoice_type']; + $data['invoice_view'] = $invoice_type; + + return $data; + } + + /** + * @param array $data + * @return void + */ + private function _reload(array $data = []): void //TODO: Hungarian notation + { + $sale_id = $this->session->get('sale_id'); //TODO: This variable is never used + + if($sale_id == '') + { + $sale_id = NEW_ENTRY; + $this->session->set('sale_id', NEW_ENTRY); + } + $cash_rounding = $this->sale_lib->reset_cash_rounding(); + + // cash_rounding indicates only that the site is configured for cash rounding + $data['cash_rounding'] = $cash_rounding; + + $data['cart'] = $this->sale_lib->get_cart(); + $customer_info = $this->_load_customer_data($this->sale_lib->get_customer(), $data, true); + + $data['modes'] = $this->sale_lib->get_register_mode_options(); + $data['mode'] = $this->sale_lib->get_mode(); + $data['selected_table'] = $this->sale_lib->get_dinner_table(); + $data['empty_tables'] = $this->sale_lib->get_empty_tables($data['selected_table']); + $data['stock_locations'] = $this->stock_location->get_allowed_locations('sales'); + $data['stock_location'] = $this->sale_lib->get_sale_location(); + $data['tax_exclusive_subtotal'] = $this->sale_lib->get_subtotal(true, true); + $tax_details = $this->tax_lib->get_taxes($data['cart']); //TODO: Duplicated code. + $data['taxes'] = $tax_details[0]; + $data['discount'] = $this->sale_lib->get_discount(); + $data['payments'] = $this->sale_lib->get_payments(); + + // Returns 'subtotal', 'total', 'cash_total', 'payment_total', 'amount_due', 'cash_amount_due', 'payments_cover_total' + $totals = $this->sale_lib->get_totals($tax_details[0]); + + $data['item_count'] = $totals['item_count']; + $data['total_units'] = $totals['total_units']; + $data['subtotal'] = $totals['subtotal']; + $data['total'] = $totals['total']; + $data['payments_total'] = $totals['payment_total']; + $data['payments_cover_total'] = $totals['payments_cover_total']; + + // cash_mode indicates whether this sale is going to be processed using cash_rounding + $cash_mode = $this->session->get('cash_mode'); + $data['cash_mode'] = $cash_mode; + $data['prediscount_subtotal'] = $totals['prediscount_subtotal']; //TODO: Duplicated code. + $data['cash_total'] = $totals['cash_total']; + $data['non_cash_total'] = $totals['total']; + $data['cash_amount_due'] = $totals['cash_amount_due']; + $data['non_cash_amount_due'] = $totals['amount_due']; + + $data['selected_payment_type'] = $this->sale_lib->get_payment_type(); + + if($data['cash_mode'] && ($data['selected_payment_type'] == lang('Sales.cash') || $data['payments_total'] > 0)) + { + $data['total'] = $totals['cash_total']; + $data['amount_due'] = $totals['cash_amount_due']; + } + else + { + $data['total'] = $totals['total']; + $data['amount_due'] = $totals['amount_due']; + } + + $data['amount_change'] = $data['amount_due'] * -1; + + $data['comment'] = $this->sale_lib->get_comment(); + $data['email_receipt'] = $this->sale_lib->is_email_receipt(); + + if($customer_info && $this->config['customer_reward_enable']) + { + $data['payment_options'] = $this->sale->get_payment_options(true, true); + } + else + { + $data['payment_options'] = $this->sale->get_payment_options(); + } + + $data['items_module_allowed'] = $this->employee->has_grant('items', $this->employee->get_logged_in_employee_info()->person_id); + $data['change_price'] = $this->employee->has_grant('sales_change_price', $this->employee->get_logged_in_employee_info()->person_id); + + $temp_invoice_number = $this->sale_lib->get_invoice_number(); + $invoice_format = $this->config['sales_invoice_format']; + + if ($temp_invoice_number == null || $temp_invoice_number == '') + { + $temp_invoice_number = $this->token_lib->render($invoice_format, [], false); + } + + $data['invoice_number'] = $temp_invoice_number; + + $data['print_after_sale'] = $this->sale_lib->is_print_after_sale(); + $data['price_work_orders'] = $this->sale_lib->is_price_work_orders(); + + $data['pos_mode'] = $data['mode'] == 'sale' || $data['mode'] == 'return'; + + $data['quote_number'] = $this->sale_lib->get_quote_number(); + $data['work_order_number'] = $this->sale_lib->get_work_order_number(); + + //TODO: the if/else set below should be converted to a switch + if($this->sale_lib->get_mode() == 'sale_invoice') //TODO: Duplicated code. + { + $data['mode_label'] = lang('Sales.invoice'); + $data['customer_required'] = lang('Sales.customer_required'); + } + elseif($this->sale_lib->get_mode() == 'sale_quote') + { + $data['mode_label'] = lang('Sales.quote'); + $data['customer_required'] = lang('Sales.customer_required'); + } + elseif($this->sale_lib->get_mode() == 'sale_work_order') + { + $data['mode_label'] = lang('Sales.work_order'); + $data['customer_required'] = lang('Sales.customer_required'); + } + elseif($this->sale_lib->get_mode() == 'return') + { + $data['mode_label'] = lang('Sales.return'); + $data['customer_required'] = lang('Sales.customer_optional'); + } + else + { + $data['mode_label'] = lang('Sales.receipt'); + $data['customer_required'] = lang('Sales.customer_optional'); + } + + echo view("sales/register", $data); + } + + /** + * Load the sales receipt for a sale. Used in app/Views/sales/form.php + * + * @param int $sale_id + * @return void + * @noinspection PhpUnused + */ + public function getReceipt(int $sale_id): void + { + $data = $this->_load_sale_data($sale_id); + echo view('sales/receipt', $data); + $this->sale_lib->clear_all(); + } + + /** + * @param int $sale_id + * @return void + */ + public function getInvoice(int $sale_id): void + { + $data = $this->_load_sale_data($sale_id); + + echo view('sales/'.$data['invoice_view'], $data); + $this->sale_lib->clear_all(); + } + + /** + * @param int $sale_id + * @return void + */ + public function getEdit(int $sale_id): void + { + $data = []; + + $sale_info = $this->sale->get_info($sale_id)->getRowArray(); + $data['selected_customer_id'] = $sale_info['customer_id']; + $data['selected_customer_name'] = $sale_info['customer_name']; + $employee_info = $this->employee->get_info($sale_info['employee_id']); + $data['selected_employee_id'] = $sale_info['employee_id']; + $data['selected_employee_name'] = $employee_info->first_name . ' ' . $employee_info->last_name; + $data['sale_info'] = $sale_info; + $balance_due = round($sale_info['amount_due'] - $sale_info['amount_tendered'] + $sale_info['cash_refund'], totals_decimals(), PHP_ROUND_HALF_UP); + + if(!$this->sale_lib->reset_cash_rounding() && $balance_due < 0) + { + $balance_due = 0; + } + + $data['payments'] = []; + + foreach($this->sale->get_sale_payments($sale_id)->getResult() as $payment) + { + foreach(get_object_vars($payment) as $property => $value) + { + $payment->$property = $value; + } + $data['payments'][] = $payment; + } + + $data['payment_type_new'] = PAYMENT_TYPE_UNASSIGNED; + $data['payment_amount_new'] = $balance_due; + + $data['balance_due'] = $balance_due != 0; + + // don't allow gift card to be a payment option in a sale transaction edit because it's a complex change + $payment_options = $this->sale->get_payment_options(false); + + if($this->sale_lib->reset_cash_rounding()) + { + $payment_options[lang('Sales.cash_adjustment')] = lang('Sales.cash_adjustment'); + } + + $data['payment_options'] = $payment_options; + + // Set up a slightly modified list of payment types for new payment entry + $payment_options["--"] = lang('Common.none_selected_text'); + + $data['new_payment_options'] = $payment_options; + + echo view('sales/form', $data); + } + + /** + * @throws ReflectionException + */ + public function postDelete(int $sale_id = NEW_ENTRY, bool $update_inventory = true): void + { + $employee_id = $this->employee->get_logged_in_employee_info()->person_id; + $has_grant = $this->employee->has_grant('sales_delete', $employee_id); + + if(!$has_grant) + { + echo json_encode (['success' => false, 'message' => lang('Sales.not_authorized')]); + } + else + { + $sale_ids = $sale_id == NEW_ENTRY ? $this->request->getPost('ids', FILTER_SANITIZE_NUMBER_INT) : [$sale_id]; + + if($this->sale->delete_list($sale_ids, $employee_id, $update_inventory)) + { + echo json_encode ([ + 'success' => true, + 'message' => lang('Sales.successfully_deleted') . ' ' . count($sale_ids) . ' ' . lang('Sales.one_or_multiple'), + 'ids' => $sale_ids + ]); + } + else + { + echo json_encode (['success' => false, 'message' => lang('Sales.unsuccessfully_deleted')]); + } + } + } + + /** + * @param int $sale_id + * @param bool $update_inventory + * @return void + */ + public function restore(int $sale_id = NEW_ENTRY, bool $update_inventory = true): void + { + $employee_id = $this->employee->get_logged_in_employee_info()->person_id; + $has_grant = $this->employee->has_grant('sales_delete', $employee_id); + + if(!$has_grant) + { + echo json_encode (['success' => false, 'message' => lang('Sales.not_authorized')]); + } + else + { + $sale_ids = $sale_id == NEW_ENTRY ? $this->request->getPost('ids', FILTER_SANITIZE_NUMBER_INT) : [$sale_id]; + + if($this->sale->restore_list($sale_ids, $employee_id, $update_inventory)) + { + echo json_encode ([ + 'success' => true, + 'message' => lang('Sales.successfully_restored') . ' ' . count($sale_ids) . ' ' . lang('Sales.one_or_multiple'), + 'ids' => $sale_ids + ]); + } + else + { + echo json_encode (['success' => false, 'message' => lang('Sales.unsuccessfully_restored')]); + } + } + } + + /** + * This saves the sale from the update sale view (sales/form). + * It only updates the sales table and payments. + * @param int $sale_id + * @throws ReflectionException + */ + public function postSave(int $sale_id = NEW_ENTRY): void + { + $newdate = $this->request->getPost('date', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + $employee_id = $this->employee->get_logged_in_employee_info()->person_id; + $inventory = model(Inventory::class); + $date_formatter = date_create_from_format($this->config['dateformat'] . ' ' . $this->config['timeformat'], $newdate); + $sale_time = $date_formatter->format('Y-m-d H:i:s'); + + $sale_data = [ + 'sale_time' => $sale_time, + 'customer_id' => $this->request->getPost('customer_id') != '' ? $this->request->getPost('customer_id', FILTER_SANITIZE_NUMBER_INT) : null, + 'employee_id' => $this->request->getPost('employee_id') != '' ? $this->request->getPost('employee_id', FILTER_SANITIZE_NUMBER_INT) : null, + 'comment' => $this->request->getPost('comment', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'invoice_number' => $this->request->getPost('invoice_number') != '' ? $this->request->getPost('invoice_number', FILTER_SANITIZE_FULL_SPECIAL_CHARS) : null + ]; + + // In order to maintain tradition the only element that can change on prior payments is the payment type + $amount_tendered = 0; + $number_of_payments = $this->request->getPost('number_of_payments', FILTER_SANITIZE_NUMBER_INT); + for($i = 0; $i < $number_of_payments; ++$i) + { + $payment_id = $this->request->getPost("payment_id_$i", FILTER_SANITIZE_NUMBER_INT); + $payment_type = $this->request->getPost("payment_type_$i", FILTER_SANITIZE_FULL_SPECIAL_CHARS); + $payment_amount = parse_decimals($this->request->getPost("payment_amount_$i")); + $refund_type = $this->request->getPost("refund_type_$i", FILTER_SANITIZE_FULL_SPECIAL_CHARS); + $cash_refund = parse_decimals($this->request->getPost("refund_amount_$i")); + + $cash_adjustment = $payment_type == lang('Sales.cash_adjustment') ? CASH_ADJUSTMENT_TRUE : CASH_ADJUSTMENT_FALSE; + + if(!$cash_adjustment) + { + $amount_tendered += $payment_amount - $cash_refund; + } + + //Non-cash positive refund amounts + if(empty(strstr($refund_type, lang('Sales.cash'))) && $cash_refund > 0) //TODO: This if and the one below can be combined. + { + //Change it to be a new negative payment (a "non-cash refund") + $payment_type = $refund_type; + $payment_amount = $payment_amount - $cash_refund; + $cash_refund = 0.00; + } + + $sale_data['payments'][] = [ + 'payment_id' => $payment_id, + 'payment_type' => $payment_type, + 'payment_amount' => $payment_amount, + 'cash_refund' => $cash_refund, + 'cash_adjustment' => $cash_adjustment, + 'employee_id' => $employee_id + ]; + } + + $payment_id = NEW_ENTRY; + $payment_amount_new = $this->request->getPost('payment_amount_new'); + $payment_type = $this->request->getPost('payment_type_new', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + + if($payment_type != PAYMENT_TYPE_UNASSIGNED && !empty($payment_amount_new)) + { + $payment_amount = parse_decimals($payment_amount_new); + $cash_refund = 0; + if($payment_type == lang('Sales.cash_adjustment')) + { + $cash_adjustment = CASH_ADJUSTMENT_TRUE; + } + else + { + $cash_adjustment = CASH_ADJUSTMENT_FALSE; + $amount_tendered += $payment_amount; + $sale_info = $this->sale->get_info($sale_id)->getRowArray(); + + if($amount_tendered > $sale_info['amount_due']) + { + $cash_refund = $amount_tendered - $sale_info['amount_due']; + } + } + + $sale_data['payments'][] = [ + 'payment_id' => $payment_id, + 'payment_type' => $payment_type, + 'payment_amount' => $payment_amount, + 'cash_refund' => $cash_refund, + 'cash_adjustment' => $cash_adjustment, + 'employee_id' => $employee_id + ]; + } + + $inventory->update('POS '.$sale_id, ['trans_date' => $sale_time]); //TODO: Reflection Exception + if($this->sale->update($sale_id, $sale_data)) + { + echo json_encode (['success' => true, 'message' => lang('Sales.successfully_updated'), 'id' => $sale_id]); + } + else + { + echo json_encode (['success' => false, 'message' => lang('Sales.unsuccessfully_updated'), 'id' => $sale_id]); + } + } + + /** + * This is used to cancel a suspended pos sale, quote. + * Completed sales (POS Sales or Invoiced Sales) can not be removed from the system + * Work orders can be canceled but are not physically removed from the sales history. + * Used in app/Views/sales/register.php + * + * @throws ReflectionException + * @noinspection PhpUnused + */ + public function postCancel(): void + { + $sale_id = $this->sale_lib->get_sale_id(); + if($sale_id != NEW_ENTRY && $sale_id != '') + { + $sale_type = $this->sale_lib->get_sale_type(); + + if($this->config['dinner_table_enable']) + { + $dinner_table = $this->sale_lib->get_dinner_table(); + $this->dinner_table->release($dinner_table); + } + + if($sale_type == SALE_TYPE_WORK_ORDER) + { + $this->sale->update_sale_status($sale_id, CANCELED); + } + else + { + $this->sale->delete($sale_id); + $this->session->set('sale_id', NEW_ENTRY); + } + } + else + { + $this->sale_lib->remove_temp_items(); + } + + $this->sale_lib->clear_all(); + $this->_reload(); //TODO: Hungarian notation + } + + /** + * Discards the suspended sale. Used in app/Views/sales/quote.php + * + * @return void + * @noinspection PhpUnused + */ + public function getDiscardSuspendedSale(): void + { + $suspended_id = $this->sale_lib->get_suspended_id(); + $this->sale_lib->clear_all(); + $this->sale->delete_suspended_sale($suspended_id); + $this->_reload(); //TODO: Hungarian notation + } + + /** + * Suspend the current sale. + * If the current sale is already suspended then update the existing suspended sale otherwise create + * it as a new suspended sale. Used in app/Views/sales/register.php. + * + * @throws ReflectionException + * @noinspection PhpUnused + */ + public function postSuspend(): void + { + $sale_id = $this->sale_lib->get_sale_id(); + $dinner_table = $this->sale_lib->get_dinner_table(); + $cart = $this->sale_lib->get_cart(); + $payments = $this->sale_lib->get_payments(); + $employee_id = $this->employee->get_logged_in_employee_info()->person_id; + $customer_id = $this->sale_lib->get_customer(); + $invoice_number = $this->sale_lib->get_invoice_number(); + $work_order_number = $this->sale_lib->get_work_order_number(); + $quote_number = $this->sale_lib->get_quote_number(); + $sale_type = $this->sale_lib->get_sale_type(); + + if($sale_type == '') + { + $sale_type = SALE_TYPE_POS; + } + + $comment = $this->sale_lib->get_comment(); + $sale_status = SUSPENDED; + + $data = []; + $sales_taxes = [[], []]; + + if($this->sale->save_value($sale_id, $sale_status, $cart, $customer_id, $employee_id, $comment, $invoice_number, $work_order_number, $quote_number, $sale_type, $payments, $dinner_table, $sales_taxes) == '-1') + { + $data['error'] = lang('Sales.unsuccessfully_suspended_sale'); + } + else + { + $data['success'] = lang('Sales.successfully_suspended_sale'); + } + + $this->sale_lib->clear_all(); + + $this->_reload($data); //TODO: Hungarian notation + } + + /** + * List suspended sales + */ + public function getSuspended(): void + { + $data = []; + $customer_id = $this->sale_lib->get_customer(); + $data['suspended_sales'] = $this->sale->get_all_suspended($customer_id); + echo view('sales/suspended', $data); + } + + /** + * Unsuspended sales are now left in the tables and are only removed + * when they are intentionally cancelled. Used in app/Views/sales/suspended.php. + * + * @return void + * @noinspection PhpUnused + */ + public function postUnsuspend(): void + { + $sale_id = $this->request->getPost('suspended_sale_id', FILTER_SANITIZE_NUMBER_INT); + $this->sale_lib->clear_all(); + + if($sale_id > 0) + { + $this->sale_lib->copy_entire_sale($sale_id); + } + + // Set current register mode to reflect that of unsuspended order type + $this->change_register_mode($this->sale_lib->get_sale_type()); + + $this->_reload(); //TODO: Hungarian notation + } + + /** + * Show Keyboard shortcut modal. Used in app/Views/sales/register.php + * + * @return void + * @noinspection PhpUnused + */ + public function getSalesKeyboardHelp() : void + { + echo view('sales/help'); + } + + /** + * Check the validity of an invoice number. Used in app/Views/sales/form.php. + * + * @return void + * @noinspection PhpUnused + */ + public function postCheckInvoiceNumber(): void + { + $sale_id = $this->request->getPost('sale_id', FILTER_SANITIZE_NUMBER_INT); + $invoice_number = $this->request->getPost('invoice_number', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + $exists = !empty($invoice_number) && $this->sale->check_invoice_number_exists($invoice_number, $sale_id); + echo !$exists ? 'true' : 'false'; + } + + /** + * @param array $cart + * @return array + */ + public function get_filtered(array $cart): array + { + $filtered_cart = []; + foreach($cart as $id => $item) + { + if($item['print_option'] == PRINT_ALL) // always include + { + $filtered_cart[$id] = $item; + } + elseif($item['print_option'] == PRINT_PRICED && $item['price'] != 0) // include only if the price is not zero + { + $filtered_cart[$id] = $item; + } + // print_option 2 is never included + } + + return $filtered_cart; + } + + /** + * Update the item number in the register. Used in app/Views/sales/register.php + * + * @return void + * @noinspection PhpUnused + */ + public function postChangeItemNumber(): void + { + $item_id = $this->request->getPost('item_id', FILTER_SANITIZE_NUMBER_INT); + $item_number = $this->request->getPost('item_number', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + $this->item->update_item_number($item_id, $item_number); + $cart = $this->sale_lib->get_cart(); + $x = $this->search_cart_for_item_id($item_id, $cart); + if($x != null) + { + $cart[$x]['item_number'] = $item_number; + } + $this->sale_lib->set_cart($cart); + } + + /** + * Change a given item name. Used in app/Views/sales/register.php. + * + * @return void + * @noinspection PhpUnused + */ + public function postChangeItemName(): void + { + $item_id = $this->request->getPost('item_id', FILTER_SANITIZE_NUMBER_INT); + $name = $this->request->getPost('item_name', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + + $this->item->update_item_name($item_id, $name); + + $cart = $this->sale_lib->get_cart(); + $x = $this->search_cart_for_item_id($item_id, $cart); + + if($x != null) + { + $cart[$x]['name'] = $name; + } + + $this->sale_lib->set_cart($cart); + } + + /** + * Update the given item description. Used in app/Views/sales/register.php + * + * @return void + * @noinspection PhpUnused + */ + public function postChangeItemDescription(): void + { + $item_id = $this->request->getPost('item_id', FILTER_SANITIZE_NUMBER_INT); + $description = $this->request->getPost('item_description', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + + $this->item->update_item_description($item_id, $description); + + $cart = $this->sale_lib->get_cart(); + $x = $this->search_cart_for_item_id($item_id, $cart); + + if($x != null) + { + $cart[$x]['description'] = $description; + } + + $this->sale_lib->set_cart($cart); + } + + /** + * @param int $search_item_id + * @param array $shopping_cart + * @return int|string|null + */ + public function search_cart_for_item_id(int $search_item_id, array $shopping_cart): int|string|null + { + foreach($shopping_cart as $key => $val) + { + if($val['item_id'] === $search_item_id) + { + return $key; + } + } + + return null; + } } diff --git a/app/Controllers/Secure_Controller.php b/app/Controllers/Secure_Controller.php index 445912902..bbf4c6d3a 100644 --- a/app/Controllers/Secure_Controller.php +++ b/app/Controllers/Secure_Controller.php @@ -22,130 +22,130 @@ use Config\Services; */ class Secure_Controller extends BaseController { - public array $global_view_data; - protected Employee $employee; - protected Module $module; - protected Session $session; + public array $global_view_data; + protected Employee $employee; + protected Module $module; + protected Session $session; - /** - * @param string $module_id - * @param string|null $submodule_id - * @param string|null $menu_group - */ - public function __construct(string $module_id = '', string $submodule_id = null, string $menu_group = null) - { - $this->employee = model(Employee::class); - $this->module = model(Module::class); - $config = config(OSPOS::class)->settings; - $validation = Services::validation(); + /** + * @param string $module_id + * @param string|null $submodule_id + * @param string|null $menu_group + */ + public function __construct(string $module_id = '', string $submodule_id = null, string $menu_group = null) + { + $this->employee = model(Employee::class); + $this->module = model(Module::class); + $config = config(OSPOS::class)->settings; + $validation = Services::validation(); - if(!$this->employee->is_logged_in()) - { - header("Location:".base_url('login')); - exit(); - } + if(!$this->employee->is_logged_in()) + { + header("Location:".base_url('login')); + exit(); + } - $logged_in_employee_info = $this->employee->get_logged_in_employee_info(); - if(!$this->employee->has_module_grant($module_id, $logged_in_employee_info->person_id) - || (isset($submodule_id) && !$this->employee->has_module_grant($submodule_id, $logged_in_employee_info->person_id))) - { - header("Location:".base_url("no_access/$module_id/$submodule_id")); - exit(); - } + $logged_in_employee_info = $this->employee->get_logged_in_employee_info(); + if(!$this->employee->has_module_grant($module_id, $logged_in_employee_info->person_id) + || (isset($submodule_id) && !$this->employee->has_module_grant($submodule_id, $logged_in_employee_info->person_id))) + { + header("Location:".base_url("no_access/$module_id/$submodule_id")); + exit(); + } - // load up global global_view_data visible to all the loaded views - $this->session = session(); - if($menu_group == null) - { - $menu_group = $this->session->get('menu_group'); - } - else - { - $this->session->set('menu_group', $menu_group); - } + // load up global global_view_data visible to all the loaded views + $this->session = session(); + if($menu_group == null) + { + $menu_group = $this->session->get('menu_group'); + } + else + { + $this->session->set('menu_group', $menu_group); + } - $allowed_modules = $menu_group == 'home' - ? $this->module->get_allowed_home_modules($logged_in_employee_info->person_id) - : $this->module->get_allowed_office_modules($logged_in_employee_info->person_id); + $allowed_modules = $menu_group == 'home' + ? $this->module->get_allowed_home_modules($logged_in_employee_info->person_id) + : $this->module->get_allowed_office_modules($logged_in_employee_info->person_id); - $this->global_view_data = []; - foreach($allowed_modules->getResult() as $module) - { - $this->global_view_data['allowed_modules'][] = $module; - } + $this->global_view_data = []; + foreach($allowed_modules->getResult() as $module) + { + $this->global_view_data['allowed_modules'][] = $module; + } - $this->global_view_data += [ - 'user_info' => $logged_in_employee_info, - 'controller_name' => $module_id, - 'config' => $config - ]; - view('viewData', $this->global_view_data); - } + $this->global_view_data += [ + 'user_info' => $logged_in_employee_info, + 'controller_name' => $module_id, + 'config' => $config + ]; + view('viewData', $this->global_view_data); + } - public function sanitizeSortColumn($headers, $field, $default): string - { - return $field != null && in_array($field, array_keys(array_merge(...$headers))) ? $field : $default; - } + public function sanitizeSortColumn($headers, $field, $default): string + { + return $field != null && in_array($field, array_keys(array_merge(...$headers))) ? $field : $default; + } - /** - * AJAX function used to confirm whether values sent in the request are numeric - * @return void - * @noinspection PhpUnused - */ - public function getCheckNumeric(): void - { - foreach($this->request->getGet() as $value) - { - if (parse_decimals($value) === false) - { - echo 'false'; - return; - } - } - echo 'true'; - } + /** + * AJAX function used to confirm whether values sent in the request are numeric + * @return void + * @noinspection PhpUnused + */ + public function getCheckNumeric(): void + { + foreach($this->request->getGet() as $value) + { + if (parse_decimals($value) === false) + { + echo 'false'; + return; + } + } + echo 'true'; + } - /** - * @param $key - * @return mixed|void - */ - public function getConfig($key) - { - if (isset($config[$key])) - { - return $config[$key]; - } - } + /** + * @param $key + * @return mixed|void + */ + public function getConfig($key) + { + if (isset($config[$key])) + { + return $config[$key]; + } + } - /** - * @return false - */ - public function getIndex() { return false; } + /** + * @return false + */ + public function getIndex() { return false; } - /** - * @return false - */ - public function getSearch() { return false; } + /** + * @return false + */ + public function getSearch() { return false; } - /** - * @return false - */ - public function suggest_search() { return false; } + /** + * @return false + */ + public function suggest_search() { return false; } - /** - * @param int $data_item_id - * @return false - */ - public function getView(int $data_item_id = -1) { return false; } + /** + * @param int $data_item_id + * @return false + */ + public function getView(int $data_item_id = -1) { return false; } - /** - * @param int $data_item_id - * @return false - */ - public function postSave(int $data_item_id = -1) { return false; } + /** + * @param int $data_item_id + * @return false + */ + public function postSave(int $data_item_id = -1) { return false; } - /** - * @return false - */ - public function postDelete() { return false; } + /** + * @return false + */ + public function postDelete() { return false; } } diff --git a/app/Controllers/Suppliers.php b/app/Controllers/Suppliers.php index b1a269eb0..37f2a6186 100644 --- a/app/Controllers/Suppliers.php +++ b/app/Controllers/Suppliers.php @@ -7,193 +7,193 @@ use Config\Services; class Suppliers extends Persons { - private Supplier $supplier; + private Supplier $supplier; - public function __construct() - { - parent::__construct('suppliers'); + public function __construct() + { + parent::__construct('suppliers'); - $this->supplier = model(Supplier::class); - } + $this->supplier = model(Supplier::class); + } - /** - * @return void - */ - public function getIndex(): void - { - $data['table_headers'] = get_suppliers_manage_table_headers(); + /** + * @return void + */ + public function getIndex(): void + { + $data['table_headers'] = get_suppliers_manage_table_headers(); - echo view('people/manage', $data); - } + echo view('people/manage', $data); + } - /** - * Gets one row for a supplier manage table. This is called using AJAX to update one row. - * @param $row_id - * @return void - */ - public function getRow($row_id): void - { - $data_row = get_supplier_data_row($this->supplier->get_info($row_id)); - $data_row['category'] = $this->supplier->get_category_name($data_row['category']); + /** + * Gets one row for a supplier manage table. This is called using AJAX to update one row. + * @param $row_id + * @return void + */ + public function getRow($row_id): void + { + $data_row = get_supplier_data_row($this->supplier->get_info($row_id)); + $data_row['category'] = $this->supplier->get_category_name($data_row['category']); - echo json_encode($data_row); - } + echo json_encode($data_row); + } - /** - * Returns Supplier table data rows. This will be called with AJAX. - * @return void - **/ - public function getSearch(): void - { - $search = $this->request->getGet('search'); - $limit = $this->request->getGet('limit', FILTER_SANITIZE_NUMBER_INT); - $offset = $this->request->getGet('offset', FILTER_SANITIZE_NUMBER_INT); - $sort = $this->sanitizeSortColumn(supplier_headers(), $this->request->getGet('sort', FILTER_SANITIZE_FULL_SPECIAL_CHARS), 'people.person_id'); - $order = $this->request->getGet('order', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + /** + * Returns Supplier table data rows. This will be called with AJAX. + * @return void + **/ + public function getSearch(): void + { + $search = $this->request->getGet('search'); + $limit = $this->request->getGet('limit', FILTER_SANITIZE_NUMBER_INT); + $offset = $this->request->getGet('offset', FILTER_SANITIZE_NUMBER_INT); + $sort = $this->sanitizeSortColumn(supplier_headers(), $this->request->getGet('sort', FILTER_SANITIZE_FULL_SPECIAL_CHARS), 'people.person_id'); + $order = $this->request->getGet('order', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $suppliers = $this->supplier->search($search, $limit, $offset, $sort, $order); - $total_rows = $this->supplier->get_found_rows($search); + $suppliers = $this->supplier->search($search, $limit, $offset, $sort, $order); + $total_rows = $this->supplier->get_found_rows($search); - $data_rows = []; + $data_rows = []; - foreach($suppliers->getResult() as $supplier) - { - $row = get_supplier_data_row($supplier); - $row['category'] = $this->supplier->get_category_name($row['category']); - $data_rows[] = $row; - } + foreach($suppliers->getResult() as $supplier) + { + $row = get_supplier_data_row($supplier); + $row['category'] = $this->supplier->get_category_name($row['category']); + $data_rows[] = $row; + } - echo json_encode (['total' => $total_rows, 'rows' => $data_rows]); - } + echo json_encode (['total' => $total_rows, 'rows' => $data_rows]); + } - /** - * Gives search suggestions based on what is being searched for - **/ - public function getSuggest(): void - { - $search = $this->request->getGet('term'); - $suggestions = $this->supplier->get_search_suggestions($search, true); + /** + * Gives search suggestions based on what is being searched for + **/ + public function getSuggest(): void + { + $search = $this->request->getGet('term'); + $suggestions = $this->supplier->get_search_suggestions($search, true); - echo json_encode($suggestions); - } + echo json_encode($suggestions); + } - /** - * @return void - */ - public function suggest_search(): void - { - $search = $this->request->getPost('term'); - $suggestions = $this->supplier->get_search_suggestions($search, false); + /** + * @return void + */ + public function suggest_search(): void + { + $search = $this->request->getPost('term'); + $suggestions = $this->supplier->get_search_suggestions($search, false); - echo json_encode($suggestions); - } + echo json_encode($suggestions); + } - /** - * Loads the supplier edit form - * - * @param int $supplier_id - * @return void - */ - public function getView(int $supplier_id = NEW_ENTRY): void - { - $info = $this->supplier->get_info($supplier_id); - foreach(get_object_vars($info) as $property => $value) - { - $info->$property = $value; - } - $data['person_info'] = $info; - $data['categories'] = $this->supplier->get_categories(); + /** + * Loads the supplier edit form + * + * @param int $supplier_id + * @return void + */ + public function getView(int $supplier_id = NEW_ENTRY): void + { + $info = $this->supplier->get_info($supplier_id); + foreach(get_object_vars($info) as $property => $value) + { + $info->$property = $value; + } + $data['person_info'] = $info; + $data['categories'] = $this->supplier->get_categories(); - echo view("suppliers/form", $data); - } + echo view("suppliers/form", $data); + } - /** - * Inserts/updates a supplier - * - * @param int $supplier_id - * @return void - */ - public function postSave(int $supplier_id = NEW_ENTRY): void - { - $first_name = $this->request->getPost('first_name', FILTER_SANITIZE_FULL_SPECIAL_CHARS); //TODO: Duplicate code - $last_name = $this->request->getPost('last_name', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $email = strtolower($this->request->getPost('email', FILTER_SANITIZE_EMAIL)); + /** + * Inserts/updates a supplier + * + * @param int $supplier_id + * @return void + */ + public function postSave(int $supplier_id = NEW_ENTRY): void + { + $first_name = $this->request->getPost('first_name', FILTER_SANITIZE_FULL_SPECIAL_CHARS); //TODO: Duplicate code + $last_name = $this->request->getPost('last_name', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + $email = strtolower($this->request->getPost('email', FILTER_SANITIZE_EMAIL)); - // format first and last name properly - $first_name = $this->nameize($first_name); - $last_name = $this->nameize($last_name); + // format first and last name properly + $first_name = $this->nameize($first_name); + $last_name = $this->nameize($last_name); - $person_data = [ - 'first_name' => $first_name, - 'last_name' => $last_name, - 'gender' => $this->request->getPost('gender'), - 'email' => $email, - 'phone_number' => $this->request->getPost('phone_number', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'address_1' => $this->request->getPost('address_1', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'address_2' => $this->request->getPost('address_2', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'city' => $this->request->getPost('city', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'state' => $this->request->getPost('state', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'zip' => $this->request->getPost('zip', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'country' => $this->request->getPost('country', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'comments' => $this->request->getPost('comments', FILTER_SANITIZE_FULL_SPECIAL_CHARS) - ]; + $person_data = [ + 'first_name' => $first_name, + 'last_name' => $last_name, + 'gender' => $this->request->getPost('gender'), + 'email' => $email, + 'phone_number' => $this->request->getPost('phone_number', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'address_1' => $this->request->getPost('address_1', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'address_2' => $this->request->getPost('address_2', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'city' => $this->request->getPost('city', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'state' => $this->request->getPost('state', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'zip' => $this->request->getPost('zip', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'country' => $this->request->getPost('country', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'comments' => $this->request->getPost('comments', FILTER_SANITIZE_FULL_SPECIAL_CHARS) + ]; - $supplier_data = [ - 'company_name' => $this->request->getPost('company_name', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'agency_name' => $this->request->getPost('agency_name', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'category' => $this->request->getPost('category', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'account_number' => $this->request->getPost('account_number') == '' ? null : $this->request->getPost('account_number', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'tax_id' => $this->request->getPost('tax_id', FILTER_SANITIZE_NUMBER_INT) - ]; + $supplier_data = [ + 'company_name' => $this->request->getPost('company_name', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'agency_name' => $this->request->getPost('agency_name', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'category' => $this->request->getPost('category', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'account_number' => $this->request->getPost('account_number') == '' ? null : $this->request->getPost('account_number', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'tax_id' => $this->request->getPost('tax_id', FILTER_SANITIZE_NUMBER_INT) + ]; - if($this->supplier->save_supplier($person_data, $supplier_data, $supplier_id)) - { - //New supplier - if($supplier_id == NEW_ENTRY) - { - echo json_encode ([ - 'success' => true, - 'message' => lang('Suppliers.successful_adding') . ' ' . $supplier_data['company_name'], - 'id' => $supplier_data['person_id'] - ]); - } - else //Existing supplier - { - echo json_encode ([ - 'success' => true, - 'message' => lang('Suppliers.successful_updating') . ' ' . $supplier_data['company_name'], - 'id' => $supplier_id]); - } - } - else//failure - { - echo json_encode ([ - 'success' => false, - 'message' => lang('Suppliers.error_adding_updating') . ' ' . $supplier_data['company_name'], - 'id' => NEW_ENTRY - ]); - } - } + if($this->supplier->save_supplier($person_data, $supplier_data, $supplier_id)) + { + //New supplier + if($supplier_id == NEW_ENTRY) + { + echo json_encode ([ + 'success' => true, + 'message' => lang('Suppliers.successful_adding') . ' ' . $supplier_data['company_name'], + 'id' => $supplier_data['person_id'] + ]); + } + else //Existing supplier + { + echo json_encode ([ + 'success' => true, + 'message' => lang('Suppliers.successful_updating') . ' ' . $supplier_data['company_name'], + 'id' => $supplier_id]); + } + } + else//failure + { + echo json_encode ([ + 'success' => false, + 'message' => lang('Suppliers.error_adding_updating') . ' ' . $supplier_data['company_name'], + 'id' => NEW_ENTRY + ]); + } + } - /** - * This deletes suppliers from the suppliers table - * - * @return void - */ - public function postDelete(): void - { - $suppliers_to_delete = $this->request->getPost('ids', FILTER_SANITIZE_NUMBER_INT); + /** + * This deletes suppliers from the suppliers table + * + * @return void + */ + public function postDelete(): void + { + $suppliers_to_delete = $this->request->getPost('ids', FILTER_SANITIZE_NUMBER_INT); - if($this->supplier->delete_list($suppliers_to_delete)) - { - echo json_encode ([ - 'success' => true, - 'message' => lang('Suppliers.successful_deleted') . ' ' . count($suppliers_to_delete) . ' ' . lang('Suppliers.one_or_multiple') - ]); - } - else - { - echo json_encode (['success' => false, 'message' => lang('Suppliers.cannot_be_deleted')]); - } - } + if($this->supplier->delete_list($suppliers_to_delete)) + { + echo json_encode ([ + 'success' => true, + 'message' => lang('Suppliers.successful_deleted') . ' ' . count($suppliers_to_delete) . ' ' . lang('Suppliers.one_or_multiple') + ]); + } + else + { + echo json_encode (['success' => false, 'message' => lang('Suppliers.cannot_be_deleted')]); + } + } } diff --git a/app/Controllers/Tax_categories.php b/app/Controllers/Tax_categories.php index 39e3c6600..960e61f28 100644 --- a/app/Controllers/Tax_categories.php +++ b/app/Controllers/Tax_categories.php @@ -10,132 +10,132 @@ use Config\Services; */ class Tax_categories extends Secure_Controller { - private Tax_category $tax_category; + private Tax_category $tax_category; - public function __construct() - { - parent::__construct('tax_categories'); + public function __construct() + { + parent::__construct('tax_categories'); - $this->tax_category = model(Tax_category::class); - } + $this->tax_category = model(Tax_category::class); + } - /** - * @return void - */ - public function getIndex(): void - { - $data['tax_categories_table_headers'] = get_tax_categories_table_headers(); + /** + * @return void + */ + public function getIndex(): void + { + $data['tax_categories_table_headers'] = get_tax_categories_table_headers(); - echo view('taxes/tax_categories', $data); - } + echo view('taxes/tax_categories', $data); + } - /** - * Returns tax_category table data rows. This will be called with AJAX. - * - * @return void - */ - public function getSearch(): void - { - $search = $this->request->getGet('search'); - $limit = $this->request->getGet('limit', FILTER_SANITIZE_NUMBER_INT); - $offset = $this->request->getGet('offset', FILTER_SANITIZE_NUMBER_INT); - $sort = $this->request->getGet('sort', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $order = $this->request->getGet('order', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + /** + * Returns tax_category table data rows. This will be called with AJAX. + * + * @return void + */ + public function getSearch(): void + { + $search = $this->request->getGet('search'); + $limit = $this->request->getGet('limit', FILTER_SANITIZE_NUMBER_INT); + $offset = $this->request->getGet('offset', FILTER_SANITIZE_NUMBER_INT); + $sort = $this->request->getGet('sort', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + $order = $this->request->getGet('order', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $tax_categories = $this->tax_category->search($search, $limit, $offset, $sort, $order); - $total_rows = $this->tax_category->get_found_rows($search); + $tax_categories = $this->tax_category->search($search, $limit, $offset, $sort, $order); + $total_rows = $this->tax_category->get_found_rows($search); - $data_rows = []; - foreach($tax_categories->getResult() as $tax_category) - { - $data_rows[] = get_tax_categories_data_row($tax_category); - } + $data_rows = []; + foreach($tax_categories->getResult() as $tax_category) + { + $data_rows[] = get_tax_categories_data_row($tax_category); + } - echo json_encode (['total' => $total_rows, 'rows' => $data_rows]); - } + echo json_encode (['total' => $total_rows, 'rows' => $data_rows]); + } - /** - * @param $row_id - * @return void - */ - public function getRow($row_id): void - { - $data_row = get_tax_categories_data_row($this->tax_category->get_info($row_id)); + /** + * @param $row_id + * @return void + */ + public function getRow($row_id): void + { + $data_row = get_tax_categories_data_row($this->tax_category->get_info($row_id)); - echo json_encode($data_row); - } + echo json_encode($data_row); + } - /** - * @param int $tax_category_id - * @return void - */ - public function getView(int $tax_category_id = NEW_ENTRY): void - { - $data['tax_category_info'] = $this->tax_category->get_info($tax_category_id); + /** + * @param int $tax_category_id + * @return void + */ + public function getView(int $tax_category_id = NEW_ENTRY): void + { + $data['tax_category_info'] = $this->tax_category->get_info($tax_category_id); - echo view("taxes/tax_category_form", $data); - } + echo view("taxes/tax_category_form", $data); + } - /** - * @param int $tax_category_id - * @return void - */ - public function postSave(int $tax_category_id = NEW_ENTRY): void - { - $tax_category_data = [ - 'tax_category' => $this->request->getPost('tax_category', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'tax_category_code' => $this->request->getPost('tax_category_code', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'tax_group_sequence' => $this->request->getPost('tax_group_sequence', FILTER_SANITIZE_NUMBER_INT) - ]; + /** + * @param int $tax_category_id + * @return void + */ + public function postSave(int $tax_category_id = NEW_ENTRY): void + { + $tax_category_data = [ + 'tax_category' => $this->request->getPost('tax_category', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'tax_category_code' => $this->request->getPost('tax_category_code', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'tax_group_sequence' => $this->request->getPost('tax_group_sequence', FILTER_SANITIZE_NUMBER_INT) + ]; - if($this->tax_category->save_value($tax_category_data, $tax_category_id)) - { - // New tax_category_id - if($tax_category_id == NEW_ENTRY) - { - echo json_encode ([ - 'success' => true, - 'message' => lang('Tax_categories.successful_adding'), - 'id' => $tax_category_data['tax_category_id'] - ]); - } - else - { - echo json_encode ([ - 'success' => true, - 'message' => lang('Tax_categories.successful_updating'), - 'id' => $tax_category_id - ]); - } - } - else - { - echo json_encode ([ - 'success' => false, - 'message' => lang('Tax_categories.error_adding_updating') . ' ' . $tax_category_data['tax_category'], - 'id' => NEW_ENTRY - ]); - } - } + if($this->tax_category->save_value($tax_category_data, $tax_category_id)) + { + // New tax_category_id + if($tax_category_id == NEW_ENTRY) + { + echo json_encode ([ + 'success' => true, + 'message' => lang('Tax_categories.successful_adding'), + 'id' => $tax_category_data['tax_category_id'] + ]); + } + else + { + echo json_encode ([ + 'success' => true, + 'message' => lang('Tax_categories.successful_updating'), + 'id' => $tax_category_id + ]); + } + } + else + { + echo json_encode ([ + 'success' => false, + 'message' => lang('Tax_categories.error_adding_updating') . ' ' . $tax_category_data['tax_category'], + 'id' => NEW_ENTRY + ]); + } + } - /** - * @return void - */ - public function postDelete(): void - { - $tax_categories_to_delete = $this->request->getPost('ids', FILTER_SANITIZE_NUMBER_INT); + /** + * @return void + */ + public function postDelete(): void + { + $tax_categories_to_delete = $this->request->getPost('ids', FILTER_SANITIZE_NUMBER_INT); - if($this->tax_category->delete_list($tax_categories_to_delete)) - { - echo json_encode ([ - 'success' => true, - 'message' => lang('Tax_categories.successful_deleted') . ' ' . count($tax_categories_to_delete) . ' ' . lang('Tax_categories.one_or_multiple') - ]); - } - else - { - echo json_encode (['success' => false, 'message' => lang('Tax_categories.cannot_be_deleted')]); - } - } + if($this->tax_category->delete_list($tax_categories_to_delete)) + { + echo json_encode ([ + 'success' => true, + 'message' => lang('Tax_categories.successful_deleted') . ' ' . count($tax_categories_to_delete) . ' ' . lang('Tax_categories.one_or_multiple') + ]); + } + else + { + echo json_encode (['success' => false, 'message' => lang('Tax_categories.cannot_be_deleted')]); + } + } } diff --git a/app/Controllers/Tax_codes.php b/app/Controllers/Tax_codes.php index 7226d0501..84ae3a230 100644 --- a/app/Controllers/Tax_codes.php +++ b/app/Controllers/Tax_codes.php @@ -10,143 +10,143 @@ use Config\Services; */ class Tax_codes extends Secure_Controller { - private Tax_code $tax_code; + private Tax_code $tax_code; - public function __construct() - { - parent::__construct('tax_codes'); + public function __construct() + { + parent::__construct('tax_codes'); - $this->tax_code = model(Tax_code::class); - helper('tax_helper'); - } + $this->tax_code = model(Tax_code::class); + helper('tax_helper'); + } - /** - * @return void - */ - public function getIndex(): void - { - echo view('taxes/tax_codes', $this->get_data()); - } + /** + * @return void + */ + public function getIndex(): void + { + echo view('taxes/tax_codes', $this->get_data()); + } - /** - * @return array - */ - public function get_data(): array - { + /** + * @return array + */ + public function get_data(): array + { - $data['table_headers'] = get_tax_code_table_headers(); - return $data; - } + $data['table_headers'] = get_tax_code_table_headers(); + return $data; + } - /** - * Returns tax_category table data rows. This will be called with AJAX. - * - * @return void - */ - public function getSearch(): void - { - $search = $this->request->getGet('search'); - $limit = $this->request->getGet('limit', FILTER_SANITIZE_NUMBER_INT); - $offset = $this->request->getGet('offset', FILTER_SANITIZE_NUMBER_INT); - $sort = $this->request->getGet('sort', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $order = $this->request->getGet('order', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + /** + * Returns tax_category table data rows. This will be called with AJAX. + * + * @return void + */ + public function getSearch(): void + { + $search = $this->request->getGet('search'); + $limit = $this->request->getGet('limit', FILTER_SANITIZE_NUMBER_INT); + $offset = $this->request->getGet('offset', FILTER_SANITIZE_NUMBER_INT); + $sort = $this->request->getGet('sort', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + $order = $this->request->getGet('order', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $tax_codes = $this->tax_code->search($search, $limit, $offset, $sort, $order); - $total_rows = $this->tax_code->get_found_rows($search); + $tax_codes = $this->tax_code->search($search, $limit, $offset, $sort, $order); + $total_rows = $this->tax_code->get_found_rows($search); - $data_rows = []; + $data_rows = []; - foreach($tax_codes->getResult() as $tax_code) - { - $data_rows[] = get_tax_code_data_row($tax_code); - } + foreach($tax_codes->getResult() as $tax_code) + { + $data_rows[] = get_tax_code_data_row($tax_code); + } - echo json_encode (['total' => $total_rows, 'rows' => $data_rows]); - } + echo json_encode (['total' => $total_rows, 'rows' => $data_rows]); + } - /** - * @param int $row_id - * @return void - */ - public function getRow(int $row_id): void - { - $data_row = get_tax_code_data_row($this->tax_code->get_info($row_id)); + /** + * @param int $row_id + * @return void + */ + public function getRow(int $row_id): void + { + $data_row = get_tax_code_data_row($this->tax_code->get_info($row_id)); - echo json_encode($data_row); - } + echo json_encode($data_row); + } - /** - * @param int $tax_code_id - * @return void - */ - public function getView(int $tax_code_id = NEW_ENTRY): void - { - $data['tax_code_info'] = $this->tax_code->get_info($tax_code_id); + /** + * @param int $tax_code_id + * @return void + */ + public function getView(int $tax_code_id = NEW_ENTRY): void + { + $data['tax_code_info'] = $this->tax_code->get_info($tax_code_id); - echo view("taxes/tax_code_form", $data); - } + echo view("taxes/tax_code_form", $data); + } - /** - * @param int $tax_code_id - * @return void - */ - public function postSave(int $tax_code_id = NEW_ENTRY): void - { - $tax_code_data = [ - 'tax_code' => $this->request->getPost('tax_code', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'tax_code_name' => $this->request->getPost('tax_code_name', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'city' => $this->request->getPost('city', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'state' => $this->request->getPost('state', FILTER_SANITIZE_FULL_SPECIAL_CHARS) - ]; + /** + * @param int $tax_code_id + * @return void + */ + public function postSave(int $tax_code_id = NEW_ENTRY): void + { + $tax_code_data = [ + 'tax_code' => $this->request->getPost('tax_code', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'tax_code_name' => $this->request->getPost('tax_code_name', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'city' => $this->request->getPost('city', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'state' => $this->request->getPost('state', FILTER_SANITIZE_FULL_SPECIAL_CHARS) + ]; - if($this->tax_code->save($tax_code_data)) - { - if($tax_code_id == NEW_ENTRY) - { - echo json_encode ([ - 'success' => true, - 'message' => lang('Tax_codes.successful_adding'), - 'id' => $tax_code_data['tax_code_id'] - ]); - } - else - { - echo json_encode ([ - 'success' => true, - 'message' => lang('Tax_codes.successful_updating'), - 'id' => $tax_code_id - ]); - } - } - else - { - echo json_encode ([ - 'success' => false, - 'message' => lang('Tax_codes.error_adding_updating') . ' ' . $tax_code_data['tax_code_id'], - 'id' => NEW_ENTRY - ]); - } - } + if($this->tax_code->save($tax_code_data)) + { + if($tax_code_id == NEW_ENTRY) + { + echo json_encode ([ + 'success' => true, + 'message' => lang('Tax_codes.successful_adding'), + 'id' => $tax_code_data['tax_code_id'] + ]); + } + else + { + echo json_encode ([ + 'success' => true, + 'message' => lang('Tax_codes.successful_updating'), + 'id' => $tax_code_id + ]); + } + } + else + { + echo json_encode ([ + 'success' => false, + 'message' => lang('Tax_codes.error_adding_updating') . ' ' . $tax_code_data['tax_code_id'], + 'id' => NEW_ENTRY + ]); + } + } - /** - * @return void - */ - public function postDelete(): void - { - $tax_codes_to_delete = $this->request->getPost('ids', FILTER_SANITIZE_NUMBER_INT); + /** + * @return void + */ + public function postDelete(): void + { + $tax_codes_to_delete = $this->request->getPost('ids', FILTER_SANITIZE_NUMBER_INT); - if($this->tax_code->delete_list($tax_codes_to_delete)) - { - echo json_encode ([ - 'success' => true, - 'message' => lang('Tax_codes.successful_deleted') . ' ' . count($tax_codes_to_delete) . ' ' . lang('Tax_codes.one_or_multiple') - ]); - } - else - { - echo json_encode (['success' => false, 'message' => lang('Tax_codes.cannot_be_deleted')]); - } - } + if($this->tax_code->delete_list($tax_codes_to_delete)) + { + echo json_encode ([ + 'success' => true, + 'message' => lang('Tax_codes.successful_deleted') . ' ' . count($tax_codes_to_delete) . ' ' . lang('Tax_codes.one_or_multiple') + ]); + } + else + { + echo json_encode (['success' => false, 'message' => lang('Tax_codes.cannot_be_deleted')]); + } + } } diff --git a/app/Controllers/Tax_jurisdictions.php b/app/Controllers/Tax_jurisdictions.php index 28b1d49ad..730a0dcce 100644 --- a/app/Controllers/Tax_jurisdictions.php +++ b/app/Controllers/Tax_jurisdictions.php @@ -10,133 +10,133 @@ use Config\Services; */ class Tax_jurisdictions extends Secure_Controller { - private Tax_jurisdiction $tax_jurisdiction; + private Tax_jurisdiction $tax_jurisdiction; - public function __construct() - { - parent::__construct('tax_jurisdictions'); + public function __construct() + { + parent::__construct('tax_jurisdictions'); - $this->tax_jurisdiction = model(Tax_jurisdiction::class); + $this->tax_jurisdiction = model(Tax_jurisdiction::class); - helper('tax_helper'); - } + helper('tax_helper'); + } - /** - * @return void - */ - public function getIndex(): void - { - $data['table_headers'] = get_tax_jurisdictions_table_headers(); + /** + * @return void + */ + public function getIndex(): void + { + $data['table_headers'] = get_tax_jurisdictions_table_headers(); - echo view('taxes/tax_jurisdictions', $data); - } + echo view('taxes/tax_jurisdictions', $data); + } - /** - * Returns tax_category table data rows. This will be called with AJAX. - * - * @return void - */ - public function getSearch(): void - { - $search = $this->request->getGet('search'); - $limit = $this->request->getGet('limit', FILTER_SANITIZE_NUMBER_INT); - $offset = $this->request->getGet('offset', FILTER_SANITIZE_NUMBER_INT); - $sort = $this->request->getGet('sort', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $order = $this->request->getGet('order', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + /** + * Returns tax_category table data rows. This will be called with AJAX. + * + * @return void + */ + public function getSearch(): void + { + $search = $this->request->getGet('search'); + $limit = $this->request->getGet('limit', FILTER_SANITIZE_NUMBER_INT); + $offset = $this->request->getGet('offset', FILTER_SANITIZE_NUMBER_INT); + $sort = $this->request->getGet('sort', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + $order = $this->request->getGet('order', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $tax_jurisdictions = $this->tax_jurisdiction->search($search, $limit, $offset, $sort, $order); - $total_rows = $this->tax_jurisdiction->get_found_rows($search); + $tax_jurisdictions = $this->tax_jurisdiction->search($search, $limit, $offset, $sort, $order); + $total_rows = $this->tax_jurisdiction->get_found_rows($search); - $data_rows = []; - foreach($tax_jurisdictions->getResult() as $tax_jurisdiction) - { - $data_rows[] = get_tax_jurisdictions_data_row($tax_jurisdiction); - } + $data_rows = []; + foreach($tax_jurisdictions->getResult() as $tax_jurisdiction) + { + $data_rows[] = get_tax_jurisdictions_data_row($tax_jurisdiction); + } - echo json_encode (['total' => $total_rows, 'rows' => $data_rows]); - } + echo json_encode (['total' => $total_rows, 'rows' => $data_rows]); + } - /** - * @param int $row_id - * @return void - */ - public function getRow(int $row_id): void - { - $data_row = get_tax_jurisdictions_data_row($this->tax_jurisdiction->get_info($row_id)); + /** + * @param int $row_id + * @return void + */ + public function getRow(int $row_id): void + { + $data_row = get_tax_jurisdictions_data_row($this->tax_jurisdiction->get_info($row_id)); - echo json_encode($data_row); - } + echo json_encode($data_row); + } - /** - * @param int $tax_jurisdiction_id - * @return void - */ - public function getView(int $tax_jurisdiction_id = NEW_ENTRY): void - { - $data['tax_jurisdiction_info'] = $this->tax_jurisdiction->get_info($tax_jurisdiction_id); + /** + * @param int $tax_jurisdiction_id + * @return void + */ + public function getView(int $tax_jurisdiction_id = NEW_ENTRY): void + { + $data['tax_jurisdiction_info'] = $this->tax_jurisdiction->get_info($tax_jurisdiction_id); - echo view("taxes/tax_jurisdiction_form", $data); - } + echo view("taxes/tax_jurisdiction_form", $data); + } - /** - * @param int $jurisdiction_id - * @return void - */ - public function postSave(int $jurisdiction_id = NEW_ENTRY): void - { - $tax_jurisdiction_data = [ - 'jurisdiction_name' => $this->request->getPost('jurisdiction_name', FILTER_SANITIZE_FULL_SPECIAL_CHARS), - 'reporting_authority' => $this->request->getPost('reporting_authority', FILTER_SANITIZE_FULL_SPECIAL_CHARS) - ]; + /** + * @param int $jurisdiction_id + * @return void + */ + public function postSave(int $jurisdiction_id = NEW_ENTRY): void + { + $tax_jurisdiction_data = [ + 'jurisdiction_name' => $this->request->getPost('jurisdiction_name', FILTER_SANITIZE_FULL_SPECIAL_CHARS), + 'reporting_authority' => $this->request->getPost('reporting_authority', FILTER_SANITIZE_FULL_SPECIAL_CHARS) + ]; - if($this->tax_jurisdiction->save_value($tax_jurisdiction_data)) - { - if($jurisdiction_id == NEW_ENTRY) - { - echo json_encode ([ - 'success' => true, - 'message' => lang('Tax_jurisdictions.successful_adding'), - 'id' => $tax_jurisdiction_data['jurisdiction_id'] - ]); - } - else - { - echo json_encode ([ - 'success' => true, - 'message' => lang('Tax_jurisdictions.successful_updating'), - 'id' => $jurisdiction_id - ]); - } - } - else - { - echo json_encode ([ - 'success' => false, - 'message' => lang('Tax_jurisdictions.error_adding_updating') . ' ' . $tax_jurisdiction_data['jurisdiction_name'], - 'id' => NEW_ENTRY - ]); - } - } + if($this->tax_jurisdiction->save_value($tax_jurisdiction_data)) + { + if($jurisdiction_id == NEW_ENTRY) + { + echo json_encode ([ + 'success' => true, + 'message' => lang('Tax_jurisdictions.successful_adding'), + 'id' => $tax_jurisdiction_data['jurisdiction_id'] + ]); + } + else + { + echo json_encode ([ + 'success' => true, + 'message' => lang('Tax_jurisdictions.successful_updating'), + 'id' => $jurisdiction_id + ]); + } + } + else + { + echo json_encode ([ + 'success' => false, + 'message' => lang('Tax_jurisdictions.error_adding_updating') . ' ' . $tax_jurisdiction_data['jurisdiction_name'], + 'id' => NEW_ENTRY + ]); + } + } - /** - * @return void - */ - public function postDelete(): void - { - $tax_jurisdictions_to_delete = $this->request->getPost('ids', FILTER_SANITIZE_NUMBER_INT); + /** + * @return void + */ + public function postDelete(): void + { + $tax_jurisdictions_to_delete = $this->request->getPost('ids', FILTER_SANITIZE_NUMBER_INT); - if($this->tax_jurisdiction->delete_list($tax_jurisdictions_to_delete)) - { - echo json_encode ([ - 'success' => true, - 'message' => lang('Tax_jurisdictions.successful_deleted') . ' ' . count($tax_jurisdictions_to_delete) . ' ' . lang('Tax_jurisdictions.one_or_multiple') - ]); - } - else - { - echo json_encode (['success' => false, 'message' => lang('Tax_jurisdictions.cannot_be_deleted')]); - } - } + if($this->tax_jurisdiction->delete_list($tax_jurisdictions_to_delete)) + { + echo json_encode ([ + 'success' => true, + 'message' => lang('Tax_jurisdictions.successful_deleted') . ' ' . count($tax_jurisdictions_to_delete) . ' ' . lang('Tax_jurisdictions.one_or_multiple') + ]); + } + else + { + echo json_encode (['success' => false, 'message' => lang('Tax_jurisdictions.cannot_be_deleted')]); + } + } } diff --git a/app/Controllers/Taxes.php b/app/Controllers/Taxes.php index 0d3e5ced2..085224fd8 100644 --- a/app/Controllers/Taxes.php +++ b/app/Controllers/Taxes.php @@ -13,627 +13,627 @@ use Config\Services; class Taxes extends Secure_Controller { - private array $config; - private Tax_lib $tax_lib; - private Tax $tax; - private Tax_category $tax_category; - private Tax_code $tax_code; - private Tax_jurisdiction $tax_jurisdiction; - - public function __construct() - { - parent::__construct('taxes'); - - $this->tax = model(Tax::class); - $this->tax_category = model(Tax_category::class); - $this->tax_code = model(Tax_code::class); - $this->tax_jurisdiction = model(Tax_jurisdiction::class); - - $this->tax_lib = new Tax_lib(); - $this->config = config(OSPOS::class)->settings; - - helper('tax_helper'); - } - - /** - * @return void - */ - public function getIndex(): void - { - $data['tax_codes'] = $this->tax_code->get_all()->getResultArray(); - if (count($data['tax_codes']) == 0) - { - $data['tax_codes'] = $this->tax_code->get_empty_row(); - } - - $data['tax_categories'] = $this->tax_category->get_all()->getResultArray(); - if (count($data['tax_categories']) == 0) - { - $data['tax_categories'] = $this->tax_category->get_empty_row(); - } - - $data['tax_jurisdictions'] = $this->tax_jurisdiction->get_all()->getResultArray(); - if (count($data['tax_jurisdictions']) == 0) - { - $data['tax_jurisdictions'] = $this->tax_jurisdiction->get_empty_row(); - } - - $data['tax_rate_table_headers'] = get_tax_rates_manage_table_headers(); - $data['tax_categories_table_headers'] = get_tax_categories_table_headers(); - $data['tax_types'] = $this->tax_lib->get_tax_types(); - - if($this->config['tax_included']) - { - $data['default_tax_type'] = Tax_lib::TAX_TYPE_INCLUDED; - } - else - { - $data['default_tax_type'] = Tax_lib::TAX_TYPE_EXCLUDED; - } - - $data['tax_type_options'] = $this->tax_lib->get_tax_type_options($data['default_tax_type']); - - echo view('taxes/manage', $data); - } - - /** - * Returns tax_codes table data rows. This will be called with AJAX. - * - * @return void - */ - public function getSearch(): void - { - $search = $this->request->getGet('search'); - $limit = $this->request->getGet('limit', FILTER_SANITIZE_NUMBER_INT); - $offset = $this->request->getGet('offset', FILTER_SANITIZE_NUMBER_INT); - $sort = $this->request->getGet('sort', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $order = $this->request->getGet('order', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - - $tax_rates = $this->tax->search($search, $limit, $offset, $sort, $order); - - $total_rows = $this->tax->get_found_rows($search); - - $data_rows = []; - foreach($tax_rates->getResult() as $tax_rate_row) - { - $data_rows[] = get_tax_rates_data_row($tax_rate_row); - } - - echo json_encode (['total' => $total_rows, 'rows' => $data_rows]); - } - - /** - * Gives search suggestions based on what is being searched for - */ - public function suggest_search(): void - { - $search = $this->request->getPost('term'); - $suggestions = $this->tax->get_search_suggestions($search); //TODO: There is no get_search_suggestions function in the tax model - - echo json_encode($suggestions); - } - - /** - * Provides list of tax categories to select from - * - * @return void - */ - public function suggest_tax_categories(): void - { - $search = $this->request->getPost('term'); - $suggestions = $this->tax_category->get_tax_category_suggestions($search); - - echo json_encode($suggestions); - } - - - /** - * @param int $row_id - * @return void - */ - public function getRow(int $row_id): void - { - $data_row = get_tax_rates_data_row($this->tax->get_info($row_id)); - - echo json_encode($data_row); - } - - /** - * @param int $tax_code - * @return void - */ - public function getView_tax_codes(int $tax_code = NEW_ENTRY): void - { - $tax_code_info = $this->tax->get_info($tax_code); - - $default_tax_category_id = 1; // Tax category id is always the default tax category //TODO: Replace 1 with constant - $default_tax_category = $this->tax->get_tax_category($default_tax_category_id); //TODO: this variable is never used in the code. - - $tax_rate_info = $this->tax->get_rate_info($tax_code, $default_tax_category_id); - - if($this->config['tax_included']) - { - $data['default_tax_type'] = Tax_lib::TAX_TYPE_INCLUDED; - } - else - { - $data['default_tax_type'] = Tax_lib::TAX_TYPE_EXCLUDED; - } - - $data['rounding_options'] = rounding_mode::get_rounding_options(); - $data['html_rounding_options'] = $this->get_html_rounding_options(); - - if($tax_code == NEW_ENTRY) - {//TODO: Duplicated code - $data['tax_code'] = ''; - $data['tax_code_name'] = ''; - $data['tax_code_type'] = '0'; - $data['city'] = ''; - $data['state'] = ''; - $data['tax_rate'] = '0.0000'; - $data['rate_tax_code'] = ''; - $data['rate_tax_category_id'] = 1; - $data['tax_category'] = ''; - $data['add_tax_category'] = ''; - $data['rounding_code'] = '0'; - } - else - { - $data['tax_code'] = $tax_code; - $data['tax_code_name'] = $tax_code_info->tax_code_name; - $data['tax_code_type'] = $tax_code_info->tax_code_type; - $data['city'] = $tax_code_info->city; - $data['state'] = $tax_code_info->state; - $data['rate_tax_code'] = $tax_code_info->rate_tax_code; - $data['rate_tax_category_id'] = $tax_code_info->rate_tax_category_id; - $data['tax_category'] = $tax_code_info->tax_category; - $data['add_tax_category'] = ''; - $data['tax_rate'] = $tax_rate_info->tax_rate; - $data['rounding_code'] = $tax_rate_info->rounding_code; - } - - $tax_rates = []; - foreach($this->tax->get_tax_code_rate_exceptions($tax_code) as $tax_code_rate) //TODO: get_tax_code_rate_exceptions doesn't exist. This was deleted by @steveireland in https://github.com/opensourcepos/opensourcepos/commit/32204698379c230f2a6756655f40334308023de9#diff-e746bab6720cf5dbf855de6cda68f7aca9ecea7ddd5a39bb852e9b9047a7a838L435 but it's unclear if that was on purpose or accidental. - { - $tax_rate_row = []; - $tax_rate_row['rate_tax_category_id'] = $tax_code_rate['rate_tax_category_id']; - $tax_rate_row['tax_category'] = $tax_code_rate['tax_category']; - $tax_rate_row['tax_rate'] = $tax_code_rate['tax_rate']; - $tax_rate_row['rounding_code'] = $tax_code_rate['rounding_code']; - - $tax_rates[] = $tax_rate_row; - } - - $data['tax_rates'] = $tax_rates; - - echo view('taxes/tax_code_form', $data); - } - - - /** - * @param int $tax_rate_id - * @return void - */ - public function getView(int $tax_rate_id = NEW_ENTRY): void - { - $tax_rate_info = $this->tax->get_info($tax_rate_id); - - $data['tax_rate_id'] = $tax_rate_id; - $data['rounding_options'] = rounding_mode::get_rounding_options(); - - $data['tax_code_options'] = $this->tax_lib->get_tax_code_options(); - $data['tax_category_options'] = $this->tax_lib->get_tax_category_options(); - $data['tax_jurisdiction_options'] = $this->tax_lib->get_tax_jurisdiction_options(); - - if($tax_rate_id == NEW_ENTRY) - { - $data['rate_tax_code_id'] = $this->config['default_tax_code']; - $data['rate_tax_category_id'] = $this->config['default_tax_category']; - $data['rate_jurisdiction_id'] = $this->config['default_tax_jurisdiction']; - $data['tax_rounding_code'] = rounding_mode::HALF_UP; - $data['tax_rate'] = '0.0000'; - } - else - { - $data['rate_tax_code_id'] = $tax_rate_info->rate_tax_code_id; - $data['rate_tax_code'] = $tax_rate_info->tax_code; - $data['rate_tax_category_id'] = $tax_rate_info->rate_tax_category_id; - $data['rate_jurisdiction_id'] = $tax_rate_info->rate_jurisdiction_id; - $data['tax_rounding_code'] = $tax_rate_info->tax_rounding_code; - $data['tax_rate'] = $tax_rate_info->tax_rate; - } - - echo view('taxes/tax_rates_form', $data); - } - - /** - * @param int $tax_code - * @return void - */ - public function getView_tax_categories(int $tax_code = NEW_ENTRY): void //TODO: This appears to be called no where in the code. - { - $tax_code_info = $this->tax->get_info($tax_code); //TODO: Duplicated Code - - $default_tax_category_id = 1; // Tax category id is always the default tax category //TODO: replace with a constant. - $default_tax_category = $this->tax->get_tax_category($default_tax_category_id); - - $tax_rate_info = $this->tax->get_rate_info($tax_code, $default_tax_category_id); - - $data['rounding_options'] = rounding_mode::get_rounding_options(); - $data['html_rounding_options'] = $this->get_html_rounding_options(); - - if($this->config['tax_included']) - { - $data['default_tax_type'] = Tax_lib::TAX_TYPE_INCLUDED; - } - else - { - $data['default_tax_type'] = Tax_lib::TAX_TYPE_EXCLUDED; - } - - if($tax_code == NEW_ENTRY) - { - $data['tax_code'] = ''; - $data['tax_code_name'] = ''; - $data['tax_code_type'] = '0'; - $data['city'] = ''; - $data['state'] = ''; - $data['tax_rate'] = '0.0000'; - $data['rate_tax_code'] = ''; - $data['rate_tax_category_id'] = 1; - $data['tax_category'] = ''; - $data['add_tax_category'] = ''; - $data['rounding_code'] = '0'; - } - else - { - $data['tax_code'] = $tax_code; - $data['tax_code_name'] = $tax_code_info->tax_code_name; - $data['tax_code_type'] = $tax_code_info->tax_code_type; - $data['city'] = $tax_code_info->city; - $data['state'] = $tax_code_info->state; - $data['rate_tax_code'] = $tax_code_info->rate_tax_code; - $data['rate_tax_category_id'] = $tax_code_info->rate_tax_category_id; - $data['tax_category'] = $tax_code_info->tax_category; - $data['add_tax_category'] = ''; - $data['tax_rate'] = $tax_rate_info->tax_rate; - $data['rounding_code'] = $tax_rate_info->rounding_code; - } - - $tax_rates = []; - foreach($this->tax->get_tax_code_rate_exceptions($tax_code) as $tax_code_rate) //TODO: get_tax_code_rate_exceptions doesn't exist in the tax model - { - $tax_rate_row = []; - $tax_rate_row['rate_tax_category_id'] = $tax_code_rate['rate_tax_category_id']; - $tax_rate_row['tax_category'] = $tax_code_rate['tax_category']; - $tax_rate_row['tax_rate'] = $tax_code_rate['tax_rate']; - $tax_rate_row['rounding_code'] = $tax_code_rate['rounding_code']; - - $tax_rates[] = $tax_rate_row; - } - - $data['tax_rates'] = $tax_rates; - - echo view('taxes/tax_category_form', $data); - } - - /** - * @param int $tax_code - * @return void - */ - public function getView_tax_jurisdictions(int $tax_code = NEW_ENTRY): void //TODO: This appears to be called no where in the code. - { - $tax_code_info = $this->tax->get_info($tax_code); //TODO: Duplicated code - - $default_tax_category_id = 1; // Tax category id is always the default tax category - $default_tax_category = $this->tax->get_tax_category($default_tax_category_id); //TODO: This variable is not used anywhere in the code - - $tax_rate_info = $this->tax->get_rate_info($tax_code, $default_tax_category_id); - - $data['rounding_options'] = rounding_mode::get_rounding_options(); - $data['html_rounding_options'] = $this->get_html_rounding_options(); - - if($this->config['tax_included']) - { - $data['default_tax_type'] = Tax_lib::TAX_TYPE_INCLUDED; - } - else - { - $data['default_tax_type'] = Tax_lib::TAX_TYPE_EXCLUDED; - } - - if($tax_code == NEW_ENTRY) - { - $data['tax_code'] = ''; - $data['tax_code_name'] = ''; - $data['tax_code_type'] = '0'; - $data['city'] = ''; - $data['state'] = ''; - $data['tax_rate'] = '0.0000'; - $data['rate_tax_code'] = ''; - $data['rate_tax_category_id'] = 1; - $data['tax_category'] = ''; - $data['add_tax_category'] = ''; - $data['rounding_code'] = '0'; - } - else - { - $data['tax_code'] = $tax_code; - $data['tax_code_name'] = $tax_code_info->tax_code_name; - $data['tax_code_type'] = $tax_code_info->tax_code_type; - $data['city'] = $tax_code_info->city; - $data['state'] = $tax_code_info->state; - $data['rate_tax_code'] = $tax_code_info->rate_tax_code; - $data['rate_tax_category_id'] = $tax_code_info->rate_tax_category_id; - $data['tax_category'] = $tax_code_info->tax_category; - $data['add_tax_category'] = ''; - $data['tax_rate'] = $tax_rate_info->tax_rate; - $data['rounding_code'] = $tax_rate_info->rounding_code; - } - - $tax_rates = []; - foreach($this->tax->get_tax_code_rate_exceptions($tax_code) as $tax_code_rate) //TODO: get_tax_code_rate_exceptions doesn't exist in the tax model - { - $tax_rate_row = []; - $tax_rate_row['rate_tax_category_id'] = $tax_code_rate['rate_tax_category_id']; - $tax_rate_row['tax_category'] = $tax_code_rate['tax_category']; - $tax_rate_row['tax_rate'] = $tax_code_rate['tax_rate']; - $tax_rate_row['rounding_code'] = $tax_code_rate['rounding_code']; - - $tax_rates[] = $tax_rate_row; - } - - $data['tax_rates'] = $tax_rates; - - echo view('taxes/tax_jurisdiction_form', $data); - } - - /** - * @return string - */ - public static function get_html_rounding_options(): string - { - return rounding_mode::get_html_rounding_options(); - } - - /** - * @param int $tax_rate_id - * @return void - */ - public function postSave(int $tax_rate_id = NEW_ENTRY): void - { - $tax_category_id = $this->request->getPost('rate_tax_category_id', FILTER_SANITIZE_NUMBER_INT); - $tax_rate = parse_tax($this->request->getPost('tax_rate')); - - if ($tax_rate == 0) //TODO: Replace 0 with constant? - { - $tax_category_info = $this->tax_category->get_info($tax_category_id); //TODO: this variable is not used anywhere in the code - } - - $tax_rate_data = [ - 'rate_tax_code_id' => $this->request->getPost('rate_tax_code_id', FILTER_SANITIZE_NUMBER_INT), - 'rate_tax_category_id' => $tax_category_id, - 'rate_jurisdiction_id' => $this->request->getPost('rate_jurisdiction_id', FILTER_SANITIZE_NUMBER_INT), - 'tax_rate' => $tax_rate, - 'tax_rounding_code' => $this->request->getPost('tax_rounding_code', FILTER_SANITIZE_NUMBER_INT) - ]; - - if($this->tax->save_value($tax_rate_data, $tax_rate_id)) - { - if($tax_rate_id == NEW_ENTRY) - {//TODO: this needs to be replaced with ternary notation - echo json_encode (['success' => true, 'message' => lang('Taxes.tax_rate_successfully_added')]); - } - else //Existing tax_code - { - echo json_encode (['success' => true, 'message' => lang('Taxes.tax_rate_successful_updated')]); - } - } - else - { - echo json_encode (['success' => false, 'message' => lang('Taxes.tax_rate_error_adding_updating')]); - } - } - - /** - * @return void - */ - public function postDelete(): void - { - $tax_codes_to_delete = $this->request->getPost('ids', FILTER_SANITIZE_NUMBER_INT); - - if($this->tax->delete_list($tax_codes_to_delete)) //TODO: this needs to be replaced with ternary notation - { - echo json_encode (['success' => true, 'message' => lang('Taxes.tax_code_successful_deleted')]); - } else - { - echo json_encode (['success' => false, 'message' => lang('Taxes.tax_code_cannot_be_deleted')]); - } - } - - /** - * Get search suggestions for tax codes. Used in app/Views/customers/form.php - * - * @return void - * @noinspection PhpUnused - */ - public function getSuggestTaxCodes(): void - { - $search = $this->request->getPostGet('term'); - $suggestions = $this->tax_code->get_tax_codes_search_suggestions($search); - - echo json_encode($suggestions); - } - - /** - * Saves Tax Codes. Used in app/Views/taxes/tax_codes.php - * - * @return void - * @noinspection PhpUnused - */ - public function save_tax_codes(): void - { - $tax_code_id = $this->request->getPost('tax_code_id', FILTER_SANITIZE_NUMBER_INT); - $tax_code = $this->request->getPost('tax_code', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $tax_code_name = $this->request->getPost('tax_code_name', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $city = $this->request->getPost('city', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $state = $this->request->getPost('state', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - - $array_save = []; //TODO: the naming of this variable is not good. - foreach($tax_code_id as $key=>$val) - { - $array_save[] = [ - 'tax_code_id'=>$val, - 'tax_code'=>$tax_code[$key], - 'tax_code_name'=>$tax_code_name[$key], - 'city'=>$city[$key], - 'state'=>$state[$key] - ]; - } - - $success = $this->tax_code->save_tax_codes($array_save); - - echo json_encode ([ - 'success' => $success, - 'message' => lang('Taxes.tax_codes_saved_' . ($success ? '' : 'un') . 'successfully') - ]); - } - - /** - * Saves given tax jurisdiction. Used in app/Views/taxes/tax_jurisdictions.php. - * - * @return void - * @noinspection PhpUnused - */ - public function save_tax_jurisdictions(): void - { - $jurisdiction_id = $this->request->getPost('jurisdiction_id', FILTER_SANITIZE_NUMBER_INT); - $jurisdiction_name = $this->request->getPost('jurisdiction_name', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $tax_group = $this->request->getPost('tax_group', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $tax_type = $this->request->getPost('tax_type', FILTER_SANITIZE_NUMBER_INT); - $reporting_authority = $this->request->getPost('reporting_authority', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $tax_group_sequence = $this->request->getPost('tax_group_sequence', FILTER_SANITIZE_NUMBER_INT); - $cascade_sequence = $this->request->getPost('cascade_sequence', FILTER_SANITIZE_NUMBER_INT); - - $array_save = []; - $unique_tax_groups = []; - - foreach($jurisdiction_id as $key => $val) - { - $array_save[] = [ - 'jurisdiction_id'=>$val, - 'jurisdiction_name'=>$jurisdiction_name[$key], - 'tax_group'=>$tax_group[$key], - 'tax_type'=>$tax_type[$key], - 'reporting_authority'=>$reporting_authority[$key], - 'tax_group_sequence'=>$tax_group_sequence[$key], - 'cascade_sequence'=>$cascade_sequence[$key] - ]; - - if (in_array($tax_group[$key], $unique_tax_groups)) //TODO: This can be replaced with `in_array($tax_group[$key], $unique_tax_groups)` - { - echo json_encode ([ - 'success' => false, - 'message' => lang('Taxes.tax_group_not_unique', [$tax_group[$key]]) - ]); - return; - } - else - { - $unique_tax_groups[] = $tax_group[$key]; - } - } - - $success = $this->tax_jurisdiction->save_jurisdictions($array_save); - - echo json_encode ([ - 'success' => $success, - 'message' => lang('Taxes.tax_jurisdictions_saved_' . ($success ? '' : 'un') . 'successfully') - ]); - } - - /** - * Saves tax categories. Used in app/Views/taxes/tax_categories.php - * - * @return void - * @noinspection PhpUnused - */ - public function save_tax_categories(): void - { - $tax_category_id = $this->request->getPost('tax_category_id', FILTER_SANITIZE_NUMBER_INT); - $tax_category = $this->request->getPost('tax_category', FILTER_SANITIZE_FULL_SPECIAL_CHARS); - $tax_group_sequence = $this->request->getPost('tax_group_sequence', FILTER_SANITIZE_NUMBER_INT); - - $array_save= []; - - foreach($tax_category_id as $key => $val) - { - $array_save[] = [ - 'tax_category_id'=>$val, - 'tax_category'=>$tax_category[$key], - 'tax_group_sequence'=>$tax_group_sequence[$key] - ]; - } - - $success = $this->tax_category->save_categories($array_save); - - echo json_encode ([ - 'success' => $success, - 'message' => lang('Taxes.tax_categories_saved_' . ($success ? '' : 'un') . 'successfully') - ]); - } - - /** - * Gets tax codes partial view. Used in app/Views/taxes/tax_codes.php. - * - * @return void - * @noinspection PhpUnused - */ - public function ajax_tax_codes(): void - { - $tax_codes = $this->tax_code->get_all()->getResultArray(); - - echo view('partial/tax_codes', ['tax_codes' => $tax_codes]); - } - - /** - * Gets current tax categories. Used in app/Views/taxes/tax_categories.php - * - * @return void - * @noinspection PhpUnused - */ - public function ajax_tax_categories(): void - { - $tax_categories = $this->tax_category->get_all()->getResultArray(); - - echo view('partial/tax_categories', ['tax_categories' => $tax_categories]); - } - - /** - * Gets the tax jurisdiction partial view. Used in app/Views/taxes/tax_jurisdictions.php. - * - * @return void - * @noinspection PhpUnused - */ - public function ajax_tax_jurisdictions(): void - { - $tax_jurisdictions = $this->tax_jurisdiction->get_all()->getResultArray(); - - if($this->config['tax_included']) //TODO: ternary notation - { - $default_tax_type = Tax_lib::TAX_TYPE_INCLUDED; - } - else - { - $default_tax_type = Tax_lib::TAX_TYPE_EXCLUDED; - } - - $tax_types = $this->tax_lib->get_tax_types(); - - echo view('partial/tax_jurisdictions', [ - 'tax_jurisdictions' => $tax_jurisdictions, - 'tax_types' => $tax_types, - 'default_tax_type' => $default_tax_type - ]); - } + private array $config; + private Tax_lib $tax_lib; + private Tax $tax; + private Tax_category $tax_category; + private Tax_code $tax_code; + private Tax_jurisdiction $tax_jurisdiction; + + public function __construct() + { + parent::__construct('taxes'); + + $this->tax = model(Tax::class); + $this->tax_category = model(Tax_category::class); + $this->tax_code = model(Tax_code::class); + $this->tax_jurisdiction = model(Tax_jurisdiction::class); + + $this->tax_lib = new Tax_lib(); + $this->config = config(OSPOS::class)->settings; + + helper('tax_helper'); + } + + /** + * @return void + */ + public function getIndex(): void + { + $data['tax_codes'] = $this->tax_code->get_all()->getResultArray(); + if (count($data['tax_codes']) == 0) + { + $data['tax_codes'] = $this->tax_code->get_empty_row(); + } + + $data['tax_categories'] = $this->tax_category->get_all()->getResultArray(); + if (count($data['tax_categories']) == 0) + { + $data['tax_categories'] = $this->tax_category->get_empty_row(); + } + + $data['tax_jurisdictions'] = $this->tax_jurisdiction->get_all()->getResultArray(); + if (count($data['tax_jurisdictions']) == 0) + { + $data['tax_jurisdictions'] = $this->tax_jurisdiction->get_empty_row(); + } + + $data['tax_rate_table_headers'] = get_tax_rates_manage_table_headers(); + $data['tax_categories_table_headers'] = get_tax_categories_table_headers(); + $data['tax_types'] = $this->tax_lib->get_tax_types(); + + if($this->config['tax_included']) + { + $data['default_tax_type'] = Tax_lib::TAX_TYPE_INCLUDED; + } + else + { + $data['default_tax_type'] = Tax_lib::TAX_TYPE_EXCLUDED; + } + + $data['tax_type_options'] = $this->tax_lib->get_tax_type_options($data['default_tax_type']); + + echo view('taxes/manage', $data); + } + + /** + * Returns tax_codes table data rows. This will be called with AJAX. + * + * @return void + */ + public function getSearch(): void + { + $search = $this->request->getGet('search'); + $limit = $this->request->getGet('limit', FILTER_SANITIZE_NUMBER_INT); + $offset = $this->request->getGet('offset', FILTER_SANITIZE_NUMBER_INT); + $sort = $this->request->getGet('sort', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + $order = $this->request->getGet('order', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + + $tax_rates = $this->tax->search($search, $limit, $offset, $sort, $order); + + $total_rows = $this->tax->get_found_rows($search); + + $data_rows = []; + foreach($tax_rates->getResult() as $tax_rate_row) + { + $data_rows[] = get_tax_rates_data_row($tax_rate_row); + } + + echo json_encode (['total' => $total_rows, 'rows' => $data_rows]); + } + + /** + * Gives search suggestions based on what is being searched for + */ + public function suggest_search(): void + { + $search = $this->request->getPost('term'); + $suggestions = $this->tax->get_search_suggestions($search); //TODO: There is no get_search_suggestions function in the tax model + + echo json_encode($suggestions); + } + + /** + * Provides list of tax categories to select from + * + * @return void + */ + public function suggest_tax_categories(): void + { + $search = $this->request->getPost('term'); + $suggestions = $this->tax_category->get_tax_category_suggestions($search); + + echo json_encode($suggestions); + } + + + /** + * @param int $row_id + * @return void + */ + public function getRow(int $row_id): void + { + $data_row = get_tax_rates_data_row($this->tax->get_info($row_id)); + + echo json_encode($data_row); + } + + /** + * @param int $tax_code + * @return void + */ + public function getView_tax_codes(int $tax_code = NEW_ENTRY): void + { + $tax_code_info = $this->tax->get_info($tax_code); + + $default_tax_category_id = 1; // Tax category id is always the default tax category //TODO: Replace 1 with constant + $default_tax_category = $this->tax->get_tax_category($default_tax_category_id); //TODO: this variable is never used in the code. + + $tax_rate_info = $this->tax->get_rate_info($tax_code, $default_tax_category_id); + + if($this->config['tax_included']) + { + $data['default_tax_type'] = Tax_lib::TAX_TYPE_INCLUDED; + } + else + { + $data['default_tax_type'] = Tax_lib::TAX_TYPE_EXCLUDED; + } + + $data['rounding_options'] = rounding_mode::get_rounding_options(); + $data['html_rounding_options'] = $this->get_html_rounding_options(); + + if($tax_code == NEW_ENTRY) + {//TODO: Duplicated code + $data['tax_code'] = ''; + $data['tax_code_name'] = ''; + $data['tax_code_type'] = '0'; + $data['city'] = ''; + $data['state'] = ''; + $data['tax_rate'] = '0.0000'; + $data['rate_tax_code'] = ''; + $data['rate_tax_category_id'] = 1; + $data['tax_category'] = ''; + $data['add_tax_category'] = ''; + $data['rounding_code'] = '0'; + } + else + { + $data['tax_code'] = $tax_code; + $data['tax_code_name'] = $tax_code_info->tax_code_name; + $data['tax_code_type'] = $tax_code_info->tax_code_type; + $data['city'] = $tax_code_info->city; + $data['state'] = $tax_code_info->state; + $data['rate_tax_code'] = $tax_code_info->rate_tax_code; + $data['rate_tax_category_id'] = $tax_code_info->rate_tax_category_id; + $data['tax_category'] = $tax_code_info->tax_category; + $data['add_tax_category'] = ''; + $data['tax_rate'] = $tax_rate_info->tax_rate; + $data['rounding_code'] = $tax_rate_info->rounding_code; + } + + $tax_rates = []; + foreach($this->tax->get_tax_code_rate_exceptions($tax_code) as $tax_code_rate) //TODO: get_tax_code_rate_exceptions doesn't exist. This was deleted by @steveireland in https://github.com/opensourcepos/opensourcepos/commit/32204698379c230f2a6756655f40334308023de9#diff-e746bab6720cf5dbf855de6cda68f7aca9ecea7ddd5a39bb852e9b9047a7a838L435 but it's unclear if that was on purpose or accidental. + { + $tax_rate_row = []; + $tax_rate_row['rate_tax_category_id'] = $tax_code_rate['rate_tax_category_id']; + $tax_rate_row['tax_category'] = $tax_code_rate['tax_category']; + $tax_rate_row['tax_rate'] = $tax_code_rate['tax_rate']; + $tax_rate_row['rounding_code'] = $tax_code_rate['rounding_code']; + + $tax_rates[] = $tax_rate_row; + } + + $data['tax_rates'] = $tax_rates; + + echo view('taxes/tax_code_form', $data); + } + + + /** + * @param int $tax_rate_id + * @return void + */ + public function getView(int $tax_rate_id = NEW_ENTRY): void + { + $tax_rate_info = $this->tax->get_info($tax_rate_id); + + $data['tax_rate_id'] = $tax_rate_id; + $data['rounding_options'] = rounding_mode::get_rounding_options(); + + $data['tax_code_options'] = $this->tax_lib->get_tax_code_options(); + $data['tax_category_options'] = $this->tax_lib->get_tax_category_options(); + $data['tax_jurisdiction_options'] = $this->tax_lib->get_tax_jurisdiction_options(); + + if($tax_rate_id == NEW_ENTRY) + { + $data['rate_tax_code_id'] = $this->config['default_tax_code']; + $data['rate_tax_category_id'] = $this->config['default_tax_category']; + $data['rate_jurisdiction_id'] = $this->config['default_tax_jurisdiction']; + $data['tax_rounding_code'] = rounding_mode::HALF_UP; + $data['tax_rate'] = '0.0000'; + } + else + { + $data['rate_tax_code_id'] = $tax_rate_info->rate_tax_code_id; + $data['rate_tax_code'] = $tax_rate_info->tax_code; + $data['rate_tax_category_id'] = $tax_rate_info->rate_tax_category_id; + $data['rate_jurisdiction_id'] = $tax_rate_info->rate_jurisdiction_id; + $data['tax_rounding_code'] = $tax_rate_info->tax_rounding_code; + $data['tax_rate'] = $tax_rate_info->tax_rate; + } + + echo view('taxes/tax_rates_form', $data); + } + + /** + * @param int $tax_code + * @return void + */ + public function getView_tax_categories(int $tax_code = NEW_ENTRY): void //TODO: This appears to be called no where in the code. + { + $tax_code_info = $this->tax->get_info($tax_code); //TODO: Duplicated Code + + $default_tax_category_id = 1; // Tax category id is always the default tax category //TODO: replace with a constant. + $default_tax_category = $this->tax->get_tax_category($default_tax_category_id); + + $tax_rate_info = $this->tax->get_rate_info($tax_code, $default_tax_category_id); + + $data['rounding_options'] = rounding_mode::get_rounding_options(); + $data['html_rounding_options'] = $this->get_html_rounding_options(); + + if($this->config['tax_included']) + { + $data['default_tax_type'] = Tax_lib::TAX_TYPE_INCLUDED; + } + else + { + $data['default_tax_type'] = Tax_lib::TAX_TYPE_EXCLUDED; + } + + if($tax_code == NEW_ENTRY) + { + $data['tax_code'] = ''; + $data['tax_code_name'] = ''; + $data['tax_code_type'] = '0'; + $data['city'] = ''; + $data['state'] = ''; + $data['tax_rate'] = '0.0000'; + $data['rate_tax_code'] = ''; + $data['rate_tax_category_id'] = 1; + $data['tax_category'] = ''; + $data['add_tax_category'] = ''; + $data['rounding_code'] = '0'; + } + else + { + $data['tax_code'] = $tax_code; + $data['tax_code_name'] = $tax_code_info->tax_code_name; + $data['tax_code_type'] = $tax_code_info->tax_code_type; + $data['city'] = $tax_code_info->city; + $data['state'] = $tax_code_info->state; + $data['rate_tax_code'] = $tax_code_info->rate_tax_code; + $data['rate_tax_category_id'] = $tax_code_info->rate_tax_category_id; + $data['tax_category'] = $tax_code_info->tax_category; + $data['add_tax_category'] = ''; + $data['tax_rate'] = $tax_rate_info->tax_rate; + $data['rounding_code'] = $tax_rate_info->rounding_code; + } + + $tax_rates = []; + foreach($this->tax->get_tax_code_rate_exceptions($tax_code) as $tax_code_rate) //TODO: get_tax_code_rate_exceptions doesn't exist in the tax model + { + $tax_rate_row = []; + $tax_rate_row['rate_tax_category_id'] = $tax_code_rate['rate_tax_category_id']; + $tax_rate_row['tax_category'] = $tax_code_rate['tax_category']; + $tax_rate_row['tax_rate'] = $tax_code_rate['tax_rate']; + $tax_rate_row['rounding_code'] = $tax_code_rate['rounding_code']; + + $tax_rates[] = $tax_rate_row; + } + + $data['tax_rates'] = $tax_rates; + + echo view('taxes/tax_category_form', $data); + } + + /** + * @param int $tax_code + * @return void + */ + public function getView_tax_jurisdictions(int $tax_code = NEW_ENTRY): void //TODO: This appears to be called no where in the code. + { + $tax_code_info = $this->tax->get_info($tax_code); //TODO: Duplicated code + + $default_tax_category_id = 1; // Tax category id is always the default tax category + $default_tax_category = $this->tax->get_tax_category($default_tax_category_id); //TODO: This variable is not used anywhere in the code + + $tax_rate_info = $this->tax->get_rate_info($tax_code, $default_tax_category_id); + + $data['rounding_options'] = rounding_mode::get_rounding_options(); + $data['html_rounding_options'] = $this->get_html_rounding_options(); + + if($this->config['tax_included']) + { + $data['default_tax_type'] = Tax_lib::TAX_TYPE_INCLUDED; + } + else + { + $data['default_tax_type'] = Tax_lib::TAX_TYPE_EXCLUDED; + } + + if($tax_code == NEW_ENTRY) + { + $data['tax_code'] = ''; + $data['tax_code_name'] = ''; + $data['tax_code_type'] = '0'; + $data['city'] = ''; + $data['state'] = ''; + $data['tax_rate'] = '0.0000'; + $data['rate_tax_code'] = ''; + $data['rate_tax_category_id'] = 1; + $data['tax_category'] = ''; + $data['add_tax_category'] = ''; + $data['rounding_code'] = '0'; + } + else + { + $data['tax_code'] = $tax_code; + $data['tax_code_name'] = $tax_code_info->tax_code_name; + $data['tax_code_type'] = $tax_code_info->tax_code_type; + $data['city'] = $tax_code_info->city; + $data['state'] = $tax_code_info->state; + $data['rate_tax_code'] = $tax_code_info->rate_tax_code; + $data['rate_tax_category_id'] = $tax_code_info->rate_tax_category_id; + $data['tax_category'] = $tax_code_info->tax_category; + $data['add_tax_category'] = ''; + $data['tax_rate'] = $tax_rate_info->tax_rate; + $data['rounding_code'] = $tax_rate_info->rounding_code; + } + + $tax_rates = []; + foreach($this->tax->get_tax_code_rate_exceptions($tax_code) as $tax_code_rate) //TODO: get_tax_code_rate_exceptions doesn't exist in the tax model + { + $tax_rate_row = []; + $tax_rate_row['rate_tax_category_id'] = $tax_code_rate['rate_tax_category_id']; + $tax_rate_row['tax_category'] = $tax_code_rate['tax_category']; + $tax_rate_row['tax_rate'] = $tax_code_rate['tax_rate']; + $tax_rate_row['rounding_code'] = $tax_code_rate['rounding_code']; + + $tax_rates[] = $tax_rate_row; + } + + $data['tax_rates'] = $tax_rates; + + echo view('taxes/tax_jurisdiction_form', $data); + } + + /** + * @return string + */ + public static function get_html_rounding_options(): string + { + return rounding_mode::get_html_rounding_options(); + } + + /** + * @param int $tax_rate_id + * @return void + */ + public function postSave(int $tax_rate_id = NEW_ENTRY): void + { + $tax_category_id = $this->request->getPost('rate_tax_category_id', FILTER_SANITIZE_NUMBER_INT); + $tax_rate = parse_tax($this->request->getPost('tax_rate')); + + if ($tax_rate == 0) //TODO: Replace 0 with constant? + { + $tax_category_info = $this->tax_category->get_info($tax_category_id); //TODO: this variable is not used anywhere in the code + } + + $tax_rate_data = [ + 'rate_tax_code_id' => $this->request->getPost('rate_tax_code_id', FILTER_SANITIZE_NUMBER_INT), + 'rate_tax_category_id' => $tax_category_id, + 'rate_jurisdiction_id' => $this->request->getPost('rate_jurisdiction_id', FILTER_SANITIZE_NUMBER_INT), + 'tax_rate' => $tax_rate, + 'tax_rounding_code' => $this->request->getPost('tax_rounding_code', FILTER_SANITIZE_NUMBER_INT) + ]; + + if($this->tax->save_value($tax_rate_data, $tax_rate_id)) + { + if($tax_rate_id == NEW_ENTRY) + {//TODO: this needs to be replaced with ternary notation + echo json_encode (['success' => true, 'message' => lang('Taxes.tax_rate_successfully_added')]); + } + else //Existing tax_code + { + echo json_encode (['success' => true, 'message' => lang('Taxes.tax_rate_successful_updated')]); + } + } + else + { + echo json_encode (['success' => false, 'message' => lang('Taxes.tax_rate_error_adding_updating')]); + } + } + + /** + * @return void + */ + public function postDelete(): void + { + $tax_codes_to_delete = $this->request->getPost('ids', FILTER_SANITIZE_NUMBER_INT); + + if($this->tax->delete_list($tax_codes_to_delete)) //TODO: this needs to be replaced with ternary notation + { + echo json_encode (['success' => true, 'message' => lang('Taxes.tax_code_successful_deleted')]); + } else + { + echo json_encode (['success' => false, 'message' => lang('Taxes.tax_code_cannot_be_deleted')]); + } + } + + /** + * Get search suggestions for tax codes. Used in app/Views/customers/form.php + * + * @return void + * @noinspection PhpUnused + */ + public function getSuggestTaxCodes(): void + { + $search = $this->request->getPostGet('term'); + $suggestions = $this->tax_code->get_tax_codes_search_suggestions($search); + + echo json_encode($suggestions); + } + + /** + * Saves Tax Codes. Used in app/Views/taxes/tax_codes.php + * + * @return void + * @noinspection PhpUnused + */ + public function save_tax_codes(): void + { + $tax_code_id = $this->request->getPost('tax_code_id', FILTER_SANITIZE_NUMBER_INT); + $tax_code = $this->request->getPost('tax_code', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + $tax_code_name = $this->request->getPost('tax_code_name', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + $city = $this->request->getPost('city', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + $state = $this->request->getPost('state', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + + $array_save = []; //TODO: the naming of this variable is not good. + foreach($tax_code_id as $key=>$val) + { + $array_save[] = [ + 'tax_code_id'=>$val, + 'tax_code'=>$tax_code[$key], + 'tax_code_name'=>$tax_code_name[$key], + 'city'=>$city[$key], + 'state'=>$state[$key] + ]; + } + + $success = $this->tax_code->save_tax_codes($array_save); + + echo json_encode ([ + 'success' => $success, + 'message' => lang('Taxes.tax_codes_saved_' . ($success ? '' : 'un') . 'successfully') + ]); + } + + /** + * Saves given tax jurisdiction. Used in app/Views/taxes/tax_jurisdictions.php. + * + * @return void + * @noinspection PhpUnused + */ + public function save_tax_jurisdictions(): void + { + $jurisdiction_id = $this->request->getPost('jurisdiction_id', FILTER_SANITIZE_NUMBER_INT); + $jurisdiction_name = $this->request->getPost('jurisdiction_name', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + $tax_group = $this->request->getPost('tax_group', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + $tax_type = $this->request->getPost('tax_type', FILTER_SANITIZE_NUMBER_INT); + $reporting_authority = $this->request->getPost('reporting_authority', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + $tax_group_sequence = $this->request->getPost('tax_group_sequence', FILTER_SANITIZE_NUMBER_INT); + $cascade_sequence = $this->request->getPost('cascade_sequence', FILTER_SANITIZE_NUMBER_INT); + + $array_save = []; + $unique_tax_groups = []; + + foreach($jurisdiction_id as $key => $val) + { + $array_save[] = [ + 'jurisdiction_id'=>$val, + 'jurisdiction_name'=>$jurisdiction_name[$key], + 'tax_group'=>$tax_group[$key], + 'tax_type'=>$tax_type[$key], + 'reporting_authority'=>$reporting_authority[$key], + 'tax_group_sequence'=>$tax_group_sequence[$key], + 'cascade_sequence'=>$cascade_sequence[$key] + ]; + + if (in_array($tax_group[$key], $unique_tax_groups)) //TODO: This can be replaced with `in_array($tax_group[$key], $unique_tax_groups)` + { + echo json_encode ([ + 'success' => false, + 'message' => lang('Taxes.tax_group_not_unique', [$tax_group[$key]]) + ]); + return; + } + else + { + $unique_tax_groups[] = $tax_group[$key]; + } + } + + $success = $this->tax_jurisdiction->save_jurisdictions($array_save); + + echo json_encode ([ + 'success' => $success, + 'message' => lang('Taxes.tax_jurisdictions_saved_' . ($success ? '' : 'un') . 'successfully') + ]); + } + + /** + * Saves tax categories. Used in app/Views/taxes/tax_categories.php + * + * @return void + * @noinspection PhpUnused + */ + public function save_tax_categories(): void + { + $tax_category_id = $this->request->getPost('tax_category_id', FILTER_SANITIZE_NUMBER_INT); + $tax_category = $this->request->getPost('tax_category', FILTER_SANITIZE_FULL_SPECIAL_CHARS); + $tax_group_sequence = $this->request->getPost('tax_group_sequence', FILTER_SANITIZE_NUMBER_INT); + + $array_save= []; + + foreach($tax_category_id as $key => $val) + { + $array_save[] = [ + 'tax_category_id'=>$val, + 'tax_category'=>$tax_category[$key], + 'tax_group_sequence'=>$tax_group_sequence[$key] + ]; + } + + $success = $this->tax_category->save_categories($array_save); + + echo json_encode ([ + 'success' => $success, + 'message' => lang('Taxes.tax_categories_saved_' . ($success ? '' : 'un') . 'successfully') + ]); + } + + /** + * Gets tax codes partial view. Used in app/Views/taxes/tax_codes.php. + * + * @return void + * @noinspection PhpUnused + */ + public function ajax_tax_codes(): void + { + $tax_codes = $this->tax_code->get_all()->getResultArray(); + + echo view('partial/tax_codes', ['tax_codes' => $tax_codes]); + } + + /** + * Gets current tax categories. Used in app/Views/taxes/tax_categories.php + * + * @return void + * @noinspection PhpUnused + */ + public function ajax_tax_categories(): void + { + $tax_categories = $this->tax_category->get_all()->getResultArray(); + + echo view('partial/tax_categories', ['tax_categories' => $tax_categories]); + } + + /** + * Gets the tax jurisdiction partial view. Used in app/Views/taxes/tax_jurisdictions.php. + * + * @return void + * @noinspection PhpUnused + */ + public function ajax_tax_jurisdictions(): void + { + $tax_jurisdictions = $this->tax_jurisdiction->get_all()->getResultArray(); + + if($this->config['tax_included']) //TODO: ternary notation + { + $default_tax_type = Tax_lib::TAX_TYPE_INCLUDED; + } + else + { + $default_tax_type = Tax_lib::TAX_TYPE_EXCLUDED; + } + + $tax_types = $this->tax_lib->get_tax_types(); + + echo view('partial/tax_jurisdictions', [ + 'tax_jurisdictions' => $tax_jurisdictions, + 'tax_types' => $tax_types, + 'default_tax_type' => $default_tax_type + ]); + } } diff --git a/app/Controllers/index.html b/app/Controllers/index.html index bcb7cae34..905c65ee7 100644 --- a/app/Controllers/index.html +++ b/app/Controllers/index.html @@ -1,7 +1,7 @@ - 403 Forbidden + 403 Forbidden diff --git a/app/Database/Migrations/20170501150000_upgrade_to_3_1_1.php b/app/Database/Migrations/20170501150000_upgrade_to_3_1_1.php index 3505e57e6..be04d4873 100644 --- a/app/Database/Migrations/20170501150000_upgrade_to_3_1_1.php +++ b/app/Database/Migrations/20170501150000_upgrade_to_3_1_1.php @@ -6,25 +6,25 @@ use CodeIgniter\Database\Migration; class Migration_Upgrade_To_3_1_1 extends Migration { - public function __construct() - { - parent::__construct(); - } + public function __construct() + { + parent::__construct(); + } - /** - * Perform a migration step. - */ - public function up(): void - { - helper('migration'); - execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.0.2_to_3.1.1.sql'); - } + /** + * Perform a migration step. + */ + public function up(): void + { + helper('migration'); + execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.0.2_to_3.1.1.sql'); + } - /** - * Revert a migration step. - */ - public function down(): void - { + /** + * Revert a migration step. + */ + public function down(): void + { - } + } } diff --git a/app/Database/Migrations/20170502221506_sales_tax_data.php b/app/Database/Migrations/20170502221506_sales_tax_data.php index 388039921..e52db4357 100644 --- a/app/Database/Migrations/20170502221506_sales_tax_data.php +++ b/app/Database/Migrations/20170502221506_sales_tax_data.php @@ -13,425 +13,425 @@ use CodeIgniter\Database\ResultInterface; */ class Migration_Sales_Tax_Data extends Migration { - public const ROUND_UP = 5; //TODO: These need to be moved to constants.php - public const ROUND_DOWN = 6; - public const HALF_FIVE = 7; - public const YES = '1'; - public const VAT_TAX = '0'; - public const SALES_TAX = '1'; - private Appconfig $appconfig; + public const ROUND_UP = 5; //TODO: These need to be moved to constants.php + public const ROUND_DOWN = 6; + public const HALF_FIVE = 7; + public const YES = '1'; + public const VAT_TAX = '0'; + public const SALES_TAX = '1'; + private Appconfig $appconfig; - public function __construct() - { - parent::__construct(); - $this->appconfig = model(Appconfig::class); - } + public function __construct() + { + parent::__construct(); + $this->appconfig = model(Appconfig::class); + } //TODO: we need to figure out why we get a server error when uncommented portions of this migration run - /** - * Perform a migration step. - */ - public function up(): void - { - $number_of_unmigrated = $this->get_count_of_unmigrated(); - error_log("Migrating sales tax history. The number of sales that will be migrated is $number_of_unmigrated"); + /** + * Perform a migration step. + */ + public function up(): void + { + $number_of_unmigrated = $this->get_count_of_unmigrated(); + error_log("Migrating sales tax history. The number of sales that will be migrated is $number_of_unmigrated"); - if($number_of_unmigrated > 0) - { - $unmigrated_invoices = $this->get_unmigrated($number_of_unmigrated)->getResultArray(); + if($number_of_unmigrated > 0) + { + $unmigrated_invoices = $this->get_unmigrated($number_of_unmigrated)->getResultArray(); - foreach($unmigrated_invoices as $key => $unmigrated_invoice) - { - $this->upgrade_tax_history_for_sale($unmigrated_invoice['sale_id']); - } - } + foreach($unmigrated_invoices as $key => $unmigrated_invoice) + { + $this->upgrade_tax_history_for_sale($unmigrated_invoice['sale_id']); + } + } - error_log('Migrating sales tax history. The number of sales that will be migrated is finished.'); - } + error_log('Migrating sales tax history. The number of sales that will be migrated is finished.'); + } - /** - * Revert a migration step. - */ - public function down(): void - { - } + /** + * Revert a migration step. + */ + public function down(): void + { + } - /** - * @param int $sale_id - * @return void - */ - private function upgrade_tax_history_for_sale(int $sale_id): void - { - $tax_decimals = $this->appconfig->get_value('tax_decimals', 2); - $tax_included = $this->appconfig->get_value('tax_included', Migration_Sales_Tax_Data::YES) == Migration_Sales_Tax_Data::YES; - $customer_sales_tax_support = false; + /** + * @param int $sale_id + * @return void + */ + private function upgrade_tax_history_for_sale(int $sale_id): void + { + $tax_decimals = $this->appconfig->get_value('tax_decimals', 2); + $tax_included = $this->appconfig->get_value('tax_included', Migration_Sales_Tax_Data::YES) == Migration_Sales_Tax_Data::YES; + $customer_sales_tax_support = false; - if($tax_included) //TODO: Convert to ternary notation. - { - $tax_type = Migration_Sales_Tax_Data::VAT_TAX; - } - else - { - $tax_type = Migration_Sales_Tax_Data::SALES_TAX; - } + if($tax_included) //TODO: Convert to ternary notation. + { + $tax_type = Migration_Sales_Tax_Data::VAT_TAX; + } + else + { + $tax_type = Migration_Sales_Tax_Data::SALES_TAX; + } - $sales_taxes = []; - $tax_group_sequence = 0; - $items = $this->get_sale_items_for_migration($sale_id)->getResultArray(); + $sales_taxes = []; + $tax_group_sequence = 0; + $items = $this->get_sale_items_for_migration($sale_id)->getResultArray(); - foreach($items as $item) - { - // This computes tax for each line item and adds it to the tax type total - $tax_group = (float)$item['percent'] . '% ' . $item['name']; - $tax_basis = $this->get_item_total($item['quantity_purchased'], $item['item_unit_price'], $item['discount_percent'], true); + foreach($items as $item) + { + // This computes tax for each line item and adds it to the tax type total + $tax_group = (float)$item['percent'] . '% ' . $item['name']; + $tax_basis = $this->get_item_total($item['quantity_purchased'], $item['item_unit_price'], $item['discount_percent'], true); - $item_tax_amount = $tax_included - ? $this->get_item_tax($item['quantity_purchased'], $item['item_unit_price'], $item['discount_percent'], $item['percent']) - : $this->get_sales_tax_for_amount($tax_basis, $item['percent'], PHP_ROUND_HALF_UP, $tax_decimals); + $item_tax_amount = $tax_included + ? $this->get_item_tax($item['quantity_purchased'], $item['item_unit_price'], $item['discount_percent'], $item['percent']) + : $this->get_sales_tax_for_amount($tax_basis, $item['percent'], PHP_ROUND_HALF_UP, $tax_decimals); - $this->update_sales_items_taxes_amount($sale_id, $item['line'], $item['name'], $item['percent'], $tax_type, $item_tax_amount); - $this->update_sales_taxes($sales_taxes, $tax_type, $tax_group, $item['percent'], $tax_basis, $item_tax_amount, $tax_group_sequence, PHP_ROUND_HALF_UP, $sale_id, $item['name']); - $tax_group_sequence++; - } - //Not sure when this would ever kick in, but this is technically the correct logic. - if($customer_sales_tax_support) //TODO: This will always evaluate to false - { - $this->apply_invoice_taxing($sales_taxes); - } + $this->update_sales_items_taxes_amount($sale_id, $item['line'], $item['name'], $item['percent'], $tax_type, $item_tax_amount); + $this->update_sales_taxes($sales_taxes, $tax_type, $tax_group, $item['percent'], $tax_basis, $item_tax_amount, $tax_group_sequence, PHP_ROUND_HALF_UP, $sale_id, $item['name']); + $tax_group_sequence++; + } + //Not sure when this would ever kick in, but this is technically the correct logic. + if($customer_sales_tax_support) //TODO: This will always evaluate to false + { + $this->apply_invoice_taxing($sales_taxes); + } - $this->round_sales_taxes($sales_taxes); - $this->save_sales_tax($sales_taxes); - } + $this->round_sales_taxes($sales_taxes); + $this->save_sales_tax($sales_taxes); + } - /** - * @param int $block_count - * @return ResultInterface - */ - private function get_unmigrated(int $block_count): ResultInterface - { - $builder = $this->db->table('sales_items_taxes as SIT'); - $builder->select('SIT.sale_id'); - $builder->select('ST.sale_id as sales_taxes_sale_id'); - $builder->join('sales_taxes as ST','SIT.sale_id = ST.sale_id', 'left'); - $builder->where('ST.sale_id', null); - $builder->groupBy('SIT.sale_id'); - $builder->groupBy('ST.sale_id'); - $builder->orderBy('SIT.sale_id'); - $builder->limit($block_count); + /** + * @param int $block_count + * @return ResultInterface + */ + private function get_unmigrated(int $block_count): ResultInterface + { + $builder = $this->db->table('sales_items_taxes as SIT'); + $builder->select('SIT.sale_id'); + $builder->select('ST.sale_id as sales_taxes_sale_id'); + $builder->join('sales_taxes as ST','SIT.sale_id = ST.sale_id', 'left'); + $builder->where('ST.sale_id', null); + $builder->groupBy('SIT.sale_id'); + $builder->groupBy('ST.sale_id'); + $builder->orderBy('SIT.sale_id'); + $builder->limit($block_count); - return $builder->get(); - } + return $builder->get(); + } - /** - * @param int $sale_id - * @return ResultInterface - */ - private function get_sale_items_for_migration(int $sale_id): ResultInterface - { - $builder = $this->db->table('sales_items as sales_items'); - $builder->select('sales_items.sale_id as sale_id'); - $builder->select('sales_items.line as line'); - $builder->select('item_unit_price'); - $builder->select('discount_percent'); - $builder->select('quantity_purchased'); - $builder->select('percent'); - $builder->select('name'); - $builder->join('sales_items_taxes as sales_items_taxes', 'sales_items.sale_id = sales_items_taxes.sale_id and sales_items.line = sales_items_taxes.line'); - $builder->where('sales_items.sale_id', $sale_id); + /** + * @param int $sale_id + * @return ResultInterface + */ + private function get_sale_items_for_migration(int $sale_id): ResultInterface + { + $builder = $this->db->table('sales_items as sales_items'); + $builder->select('sales_items.sale_id as sale_id'); + $builder->select('sales_items.line as line'); + $builder->select('item_unit_price'); + $builder->select('discount_percent'); + $builder->select('quantity_purchased'); + $builder->select('percent'); + $builder->select('name'); + $builder->join('sales_items_taxes as sales_items_taxes', 'sales_items.sale_id = sales_items_taxes.sale_id and sales_items.line = sales_items_taxes.line'); + $builder->where('sales_items.sale_id', $sale_id); - return $builder->get(); - } + return $builder->get(); + } - /** - * @return int - */ - private function get_count_of_unmigrated(): int - { - $result = $this->db->query('SELECT COUNT(*) FROM(SELECT SIT.sale_id, ST.sale_id as sales_taxes_sale_id FROM ' - . $this->db->prefixTable('sales_items_taxes') - . ' as SIT LEFT JOIN ' - . $this->db->prefixTable('sales_taxes') - . ' as ST ON SIT.sale_id = ST.sale_id WHERE ST.sale_id is null GROUP BY SIT.sale_id, ST.sale_id' - . ' ORDER BY SIT.sale_id) as US')->getResultArray(); + /** + * @return int + */ + private function get_count_of_unmigrated(): int + { + $result = $this->db->query('SELECT COUNT(*) FROM(SELECT SIT.sale_id, ST.sale_id as sales_taxes_sale_id FROM ' + . $this->db->prefixTable('sales_items_taxes') + . ' as SIT LEFT JOIN ' + . $this->db->prefixTable('sales_taxes') + . ' as ST ON SIT.sale_id = ST.sale_id WHERE ST.sale_id is null GROUP BY SIT.sale_id, ST.sale_id' + . ' ORDER BY SIT.sale_id) as US')->getResultArray(); - if(!$result) - { - error_log('Database error in 20170502221506_sales_tax_data.php related to sales_taxes or sales_items_taxes.'); - return 0; - } + if(!$result) + { + error_log('Database error in 20170502221506_sales_tax_data.php related to sales_taxes or sales_items_taxes.'); + return 0; + } - return $result[0]['COUNT(*)'] ?: 0; - } + return $result[0]['COUNT(*)'] ?: 0; + } - /** - * @param int $sale_id - * @param int $line - * @param string $name - * @param float $percent - * @param int $tax_type - * @param float $item_tax_amount - * @return void - */ - private function update_sales_items_taxes_amount(int $sale_id, int $line, string $name, float $percent, int $tax_type, float $item_tax_amount): void - { - $builder = $this->db->table('sales_items_taxes'); - $builder->where('sale_id', $sale_id); - $builder->where('line', $line); - $builder->where('name', $name); - $builder->where('percent', $percent); - $builder->update(['tax_type' => $tax_type, 'item_tax_amount' => $item_tax_amount]); - } + /** + * @param int $sale_id + * @param int $line + * @param string $name + * @param float $percent + * @param int $tax_type + * @param float $item_tax_amount + * @return void + */ + private function update_sales_items_taxes_amount(int $sale_id, int $line, string $name, float $percent, int $tax_type, float $item_tax_amount): void + { + $builder = $this->db->table('sales_items_taxes'); + $builder->where('sale_id', $sale_id); + $builder->where('line', $line); + $builder->where('name', $name); + $builder->where('percent', $percent); + $builder->update(['tax_type' => $tax_type, 'item_tax_amount' => $item_tax_amount]); + } - /** - * @param array $sales_taxes - * @return void - */ - private function save_sales_tax(array &$sales_taxes): void - { - $builder = $this->db->Table('sales_taxes'); + /** + * @param array $sales_taxes + * @return void + */ + private function save_sales_tax(array &$sales_taxes): void + { + $builder = $this->db->Table('sales_taxes'); - foreach($sales_taxes as $line => $sales_tax) - { - $builder->insert($sales_tax); - } - } + foreach($sales_taxes as $line => $sales_tax) + { + $builder->insert($sales_tax); + } + } - /** - * @param string $quantity - * @param string $price - * @param string $discount_percentage - * @param bool $include_discount - * @return string - */ - public function get_item_total(string $quantity, string $price, string $discount_percentage, bool $include_discount = false): string - { - $total = bcmul($quantity, $price); + /** + * @param string $quantity + * @param string $price + * @param string $discount_percentage + * @param bool $include_discount + * @return string + */ + public function get_item_total(string $quantity, string $price, string $discount_percentage, bool $include_discount = false): string + { + $total = bcmul($quantity, $price); - if($include_discount) - { - $discount_amount = $this->get_item_discount($quantity, $price, $discount_percentage); - return bcsub($total, $discount_amount); - } + if($include_discount) + { + $discount_amount = $this->get_item_discount($quantity, $price, $discount_percentage); + return bcsub($total, $discount_amount); + } - return $total; - } + return $total; + } - /** - * @param string $quantity - * @param string $price - * @param string $discount - * @return float - */ - public function get_item_discount(string $quantity, string $price, string $discount): float - { - $total = bcmul($quantity, $price); - $discount_fraction = bcdiv($discount, 100); - $discount = bcmul($total, $discount_fraction); + /** + * @param string $quantity + * @param string $price + * @param string $discount + * @return float + */ + public function get_item_discount(string $quantity, string $price, string $discount): float + { + $total = bcmul($quantity, $price); + $discount_fraction = bcdiv($discount, 100); + $discount = bcmul($total, $discount_fraction); - return round($discount, totals_decimals(), PHP_ROUND_HALF_UP); //TODO: I don't think this is currency safe. Round will cast it's first parameter to a float. It also returns a float. - } + return round($discount, totals_decimals(), PHP_ROUND_HALF_UP); //TODO: I don't think this is currency safe. Round will cast it's first parameter to a float. It also returns a float. + } - /** - * @param string $quantity - * @param string $price - * @param string $discount_percentage - * @param string $tax_percentage - * @return string - */ - public function get_item_tax(string $quantity, string $price, string $discount_percentage, string $tax_percentage): string - { - $tax_included = $this->appconfig->get_value('tax_included', Migration_Sales_Tax_Data::YES) == Migration_Sales_Tax_Data::YES; + /** + * @param string $quantity + * @param string $price + * @param string $discount_percentage + * @param string $tax_percentage + * @return string + */ + public function get_item_tax(string $quantity, string $price, string $discount_percentage, string $tax_percentage): string + { + $tax_included = $this->appconfig->get_value('tax_included', Migration_Sales_Tax_Data::YES) == Migration_Sales_Tax_Data::YES; - $price = $this->get_item_total($quantity, $price, $discount_percentage, true); + $price = $this->get_item_total($quantity, $price, $discount_percentage, true); - if($tax_included) - { - $tax_fraction = bcadd('100', $tax_percentage); - $tax_fraction = bcdiv($tax_fraction, '100'); - $price_tax_excl = bcdiv($price, $tax_fraction); + if($tax_included) + { + $tax_fraction = bcadd('100', $tax_percentage); + $tax_fraction = bcdiv($tax_fraction, '100'); + $price_tax_excl = bcdiv($price, $tax_fraction); - return bcsub($price, $price_tax_excl); - } - $tax_fraction = bcdiv($tax_percentage, '100'); + return bcsub($price, $price_tax_excl); + } + $tax_fraction = bcdiv($tax_percentage, '100'); - return bcmul($price, $tax_fraction); - } + return bcmul($price, $tax_fraction); + } - /** - * @param string $tax_basis - * @param string $tax_percentage - * @param int $rounding_mode - * @param int $decimals - * @return float - */ - public function get_sales_tax_for_amount(string $tax_basis, string $tax_percentage, int $rounding_mode, int $decimals): float - { - $tax_fraction = bcdiv($tax_percentage, '100'); - $tax_amount = bcmul($tax_basis, $tax_fraction); + /** + * @param string $tax_basis + * @param string $tax_percentage + * @param int $rounding_mode + * @param int $decimals + * @return float + */ + public function get_sales_tax_for_amount(string $tax_basis, string $tax_percentage, int $rounding_mode, int $decimals): float + { + $tax_fraction = bcdiv($tax_percentage, '100'); + $tax_amount = bcmul($tax_basis, $tax_fraction); - return $this->round_number($rounding_mode, $tax_amount, $decimals); - } + return $this->round_number($rounding_mode, $tax_amount, $decimals); + } - /** - * @param int $rounding_mode - * @param string $amount - * @param int $decimals - * @return float - */ - public function round_number(int $rounding_mode, string $amount, int $decimals): float - { - if($rounding_mode == Migration_Sales_Tax_Data::ROUND_UP) - { - $fig = pow(10,$decimals); - $rounded_total = (ceil($fig * $amount) + ceil($fig * $amount - ceil($fig * $amount)))/$fig; - } - elseif($rounding_mode == Migration_Sales_Tax_Data::ROUND_DOWN) - { - $fig = pow(10,$decimals); - $rounded_total = (floor($fig * $amount) + floor($fig * $amount - floor($fig * $amount)))/$fig; - } - elseif($rounding_mode == Migration_Sales_Tax_Data::HALF_FIVE) - { - $rounded_total = round($amount / 5) * 5; - } - else - { - $rounded_total = round($amount, $decimals, $rounding_mode); - } + /** + * @param int $rounding_mode + * @param string $amount + * @param int $decimals + * @return float + */ + public function round_number(int $rounding_mode, string $amount, int $decimals): float + { + if($rounding_mode == Migration_Sales_Tax_Data::ROUND_UP) + { + $fig = pow(10,$decimals); + $rounded_total = (ceil($fig * $amount) + ceil($fig * $amount - ceil($fig * $amount)))/$fig; + } + elseif($rounding_mode == Migration_Sales_Tax_Data::ROUND_DOWN) + { + $fig = pow(10,$decimals); + $rounded_total = (floor($fig * $amount) + floor($fig * $amount - floor($fig * $amount)))/$fig; + } + elseif($rounding_mode == Migration_Sales_Tax_Data::HALF_FIVE) + { + $rounded_total = round($amount / 5) * 5; + } + else + { + $rounded_total = round($amount, $decimals, $rounding_mode); + } - return $rounded_total; //TODO: I don't think this is currency safe. I think we need to be using bcmath() functions like we are in the rest of the code. - } + return $rounded_total; //TODO: I don't think this is currency safe. I think we need to be using bcmath() functions like we are in the rest of the code. + } - /** - * @param array $sales_taxes - * @param string $tax_type - * @param string $tax_group - * @param float $tax_rate - * @param string $tax_basis - * @param string $item_tax_amount - * @param int $tax_group_sequence - * @param int $rounding_code - * @param int $sale_id - * @param string $name - * @param string $tax_code - * @return void - */ - public function update_sales_taxes(array &$sales_taxes, string $tax_type, string $tax_group, float $tax_rate, string $tax_basis, string $item_tax_amount, int $tax_group_sequence, int $rounding_code, int $sale_id, string $name = '', string $tax_code = ''): void - { - $tax_group_index = $this->clean('X'.$tax_group); - if(!array_key_exists($tax_group_index, $sales_taxes)) - { - $insertkey = $tax_group_index; //TODO: $insertkey does not follow naming conventions. - $sales_tax = [ - $insertkey => [ - 'sale_id' => $sale_id, - 'tax_type' => $tax_type, - 'tax_group' => $tax_group, - 'sale_tax_basis' => $tax_basis, - 'sale_tax_amount' => $item_tax_amount, - 'print_sequence' => $tax_group_sequence, - 'name' => $name, - 'tax_rate' => $tax_rate, - 'sales_tax_code' => $tax_code, - 'rounding_code' => $rounding_code - ] - ]; - //add to existing array - $sales_taxes += $sales_tax; - } - else - { - // Important ... the sales amounts are accumulated for the group at the maximum configurable scale value of 4 - // but the scale will in reality be the scale specified by the tax_decimal configuration value used for sales_items_taxes - $sales_taxes[$tax_group_index]['sale_tax_basis'] = bcadd($sales_taxes[$tax_group_index]['sale_tax_basis'], $tax_basis, 4); - $sales_taxes[$tax_group_index]['sale_tax_amount'] = bcadd($sales_taxes[$tax_group_index]['sale_tax_amount'], $item_tax_amount, 4); - } - } + /** + * @param array $sales_taxes + * @param string $tax_type + * @param string $tax_group + * @param float $tax_rate + * @param string $tax_basis + * @param string $item_tax_amount + * @param int $tax_group_sequence + * @param int $rounding_code + * @param int $sale_id + * @param string $name + * @param string $tax_code + * @return void + */ + public function update_sales_taxes(array &$sales_taxes, string $tax_type, string $tax_group, float $tax_rate, string $tax_basis, string $item_tax_amount, int $tax_group_sequence, int $rounding_code, int $sale_id, string $name = '', string $tax_code = ''): void + { + $tax_group_index = $this->clean('X'.$tax_group); + if(!array_key_exists($tax_group_index, $sales_taxes)) + { + $insertkey = $tax_group_index; //TODO: $insertkey does not follow naming conventions. + $sales_tax = [ + $insertkey => [ + 'sale_id' => $sale_id, + 'tax_type' => $tax_type, + 'tax_group' => $tax_group, + 'sale_tax_basis' => $tax_basis, + 'sale_tax_amount' => $item_tax_amount, + 'print_sequence' => $tax_group_sequence, + 'name' => $name, + 'tax_rate' => $tax_rate, + 'sales_tax_code' => $tax_code, + 'rounding_code' => $rounding_code + ] + ]; + //add to existing array + $sales_taxes += $sales_tax; + } + else + { + // Important ... the sales amounts are accumulated for the group at the maximum configurable scale value of 4 + // but the scale will in reality be the scale specified by the tax_decimal configuration value used for sales_items_taxes + $sales_taxes[$tax_group_index]['sale_tax_basis'] = bcadd($sales_taxes[$tax_group_index]['sale_tax_basis'], $tax_basis, 4); + $sales_taxes[$tax_group_index]['sale_tax_amount'] = bcadd($sales_taxes[$tax_group_index]['sale_tax_amount'], $item_tax_amount, 4); + } + } - /** - * @param string $string - * @return string - */ - public function clean(string $string): string //TODO: $string is not a good name for this variable - { - $string = str_replace(' ', '-', $string); // Replaces all spaces with hyphens. + /** + * @param string $string + * @return string + */ + public function clean(string $string): string //TODO: $string is not a good name for this variable + { + $string = str_replace(' ', '-', $string); // Replaces all spaces with hyphens. - return preg_replace('/[^A-Za-z0-9\-]/', '', $string); // Removes special chars. - } + return preg_replace('/[^A-Za-z0-9\-]/', '', $string); // Removes special chars. + } - /** - * @param array $sales_taxes - * @return void - */ - public function apply_invoice_taxing(array &$sales_taxes): void - { - if(!empty($sales_taxes)) //TODO: Duplicated code - { - $sort = []; + /** + * @param array $sales_taxes + * @return void + */ + public function apply_invoice_taxing(array &$sales_taxes): void + { + if(!empty($sales_taxes)) //TODO: Duplicated code + { + $sort = []; - foreach($sales_taxes as $key => $value) - { - $sort['print_sequence'][$key] = $value['print_sequence']; - } + foreach($sales_taxes as $key => $value) + { + $sort['print_sequence'][$key] = $value['print_sequence']; + } - array_multisort($sort['print_sequence'], SORT_ASC, $sales_taxes); - } + array_multisort($sort['print_sequence'], SORT_ASC, $sales_taxes); + } - $decimals = totals_decimals(); + $decimals = totals_decimals(); - foreach($sales_taxes as $row_number => $sales_tax) - { - $sales_taxes[$row_number]['sale_tax_amount'] = $this->get_sales_tax_for_amount($sales_tax['sale_tax_basis'], $sales_tax['tax_rate'], $sales_tax['rounding_code'], $decimals); - } - } + foreach($sales_taxes as $row_number => $sales_tax) + { + $sales_taxes[$row_number]['sale_tax_amount'] = $this->get_sales_tax_for_amount($sales_tax['sale_tax_basis'], $sales_tax['tax_rate'], $sales_tax['rounding_code'], $decimals); + } + } - /** - * @param array $sales_taxes - * @return void - */ - public function round_sales_taxes(array &$sales_taxes): void - { - if(!empty($sales_taxes)) - { - $sort = []; - foreach($sales_taxes as $k=>$v) - { - $sort['print_sequence'][$k] = $v['print_sequence']; - } - array_multisort($sort['print_sequence'], SORT_ASC, $sales_taxes); - } + /** + * @param array $sales_taxes + * @return void + */ + public function round_sales_taxes(array &$sales_taxes): void + { + if(!empty($sales_taxes)) + { + $sort = []; + foreach($sales_taxes as $k=>$v) + { + $sort['print_sequence'][$k] = $v['print_sequence']; + } + array_multisort($sort['print_sequence'], SORT_ASC, $sales_taxes); + } - $decimals = totals_decimals(); + $decimals = totals_decimals(); - foreach($sales_taxes as $row_number => $sales_tax) - { - $sale_tax_amount = $sales_tax['sale_tax_amount']; - $rounding_code = $sales_tax['rounding_code']; - $rounded_sale_tax_amount = $sale_tax_amount; + foreach($sales_taxes as $row_number => $sales_tax) + { + $sale_tax_amount = $sales_tax['sale_tax_amount']; + $rounding_code = $sales_tax['rounding_code']; + $rounded_sale_tax_amount = $sale_tax_amount; - if ($rounding_code == PHP_ROUND_HALF_UP - || $rounding_code == PHP_ROUND_HALF_DOWN - || $rounding_code == PHP_ROUND_HALF_EVEN - || $rounding_code == PHP_ROUND_HALF_ODD) - { - $rounded_sale_tax_amount = round($sale_tax_amount, $decimals, $rounding_code); - } - elseif($rounding_code == Migration_Sales_Tax_Data::ROUND_UP) - { - $fig = (int) str_pad('1', $decimals, '0'); - $rounded_sale_tax_amount = (ceil($sale_tax_amount * $fig) / $fig); - } - elseif($rounding_code == Migration_Sales_Tax_Data::ROUND_DOWN) - { - $fig = (int) str_pad('1', $decimals, '0'); - $rounded_sale_tax_amount = (floor($sale_tax_amount * $fig) / $fig); - } - elseif($rounding_code == Migration_Sales_Tax_Data::HALF_FIVE) - { - $rounded_sale_tax_amount = round($sale_tax_amount / 5) * 5; - } + if ($rounding_code == PHP_ROUND_HALF_UP + || $rounding_code == PHP_ROUND_HALF_DOWN + || $rounding_code == PHP_ROUND_HALF_EVEN + || $rounding_code == PHP_ROUND_HALF_ODD) + { + $rounded_sale_tax_amount = round($sale_tax_amount, $decimals, $rounding_code); + } + elseif($rounding_code == Migration_Sales_Tax_Data::ROUND_UP) + { + $fig = (int) str_pad('1', $decimals, '0'); + $rounded_sale_tax_amount = (ceil($sale_tax_amount * $fig) / $fig); + } + elseif($rounding_code == Migration_Sales_Tax_Data::ROUND_DOWN) + { + $fig = (int) str_pad('1', $decimals, '0'); + $rounded_sale_tax_amount = (floor($sale_tax_amount * $fig) / $fig); + } + elseif($rounding_code == Migration_Sales_Tax_Data::HALF_FIVE) + { + $rounded_sale_tax_amount = round($sale_tax_amount / 5) * 5; + } - $sales_taxes[$row_number]['sale_tax_amount'] = $rounded_sale_tax_amount; - } - } + $sales_taxes[$row_number]['sale_tax_amount'] = $rounded_sale_tax_amount; + } + } } diff --git a/app/Database/Migrations/20180225100000_upgrade_to_3_2_0.php b/app/Database/Migrations/20180225100000_upgrade_to_3_2_0.php index bd44bc7fc..e8a7b33b8 100644 --- a/app/Database/Migrations/20180225100000_upgrade_to_3_2_0.php +++ b/app/Database/Migrations/20180225100000_upgrade_to_3_2_0.php @@ -6,20 +6,20 @@ use CodeIgniter\Database\Migration; class Migration_Upgrade_To_3_2_0 extends Migration { - /** - * Perform a migration step. - */ - public function up(): void - { - helper('migration'); - execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.1.1_to_3.2.0.sql'); - } + /** + * Perform a migration step. + */ + public function up(): void + { + helper('migration'); + execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.1.1_to_3.2.0.sql'); + } - /** - * Revert a migration step. - */ - public function down(): void - { + /** + * Revert a migration step. + */ + public function down(): void + { - } + } } diff --git a/app/Database/Migrations/20180501100000_upgrade_to_3_2_1.php b/app/Database/Migrations/20180501100000_upgrade_to_3_2_1.php index 4a37de46a..5ac322ff0 100644 --- a/app/Database/Migrations/20180501100000_upgrade_to_3_2_1.php +++ b/app/Database/Migrations/20180501100000_upgrade_to_3_2_1.php @@ -6,20 +6,20 @@ use CodeIgniter\Database\Migration; class Migration_Upgrade_To_3_2_1 extends Migration { - /** - * Perform a migration step. - */ - public function up(): void - { - helper('migration'); - execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.2.0_to_3.2.1.sql'); - } + /** + * Perform a migration step. + */ + public function up(): void + { + helper('migration'); + execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.2.0_to_3.2.1.sql'); + } - /** - * Revert a migration step. - */ - public function down(): void - { + /** + * Revert a migration step. + */ + public function down(): void + { - } + } } diff --git a/app/Database/Migrations/20181015100000_attributes.php b/app/Database/Migrations/20181015100000_attributes.php index f5196bd24..a151075f2 100644 --- a/app/Database/Migrations/20181015100000_attributes.php +++ b/app/Database/Migrations/20181015100000_attributes.php @@ -6,20 +6,20 @@ use CodeIgniter\Database\Migration; class Migration_Attributes extends Migration { - /** - * Perform a migration step. - */ - public function up(): void - { - helper('migration'); - execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.3.0_attributes.sql'); - } + /** + * Perform a migration step. + */ + public function up(): void + { + helper('migration'); + execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.3.0_attributes.sql'); + } - /** - * Revert a migration step. - */ - public function down(): void - { + /** + * Revert a migration step. + */ + public function down(): void + { - } + } } diff --git a/app/Database/Migrations/20190111270000_upgrade_to_3_3_0.php b/app/Database/Migrations/20190111270000_upgrade_to_3_3_0.php index d85fdc348..0b85e4cdc 100644 --- a/app/Database/Migrations/20190111270000_upgrade_to_3_3_0.php +++ b/app/Database/Migrations/20190111270000_upgrade_to_3_3_0.php @@ -6,20 +6,20 @@ use CodeIgniter\Database\Migration; class Migration_Upgrade_To_3_3_0 extends Migration { - /** - * Perform a migration step. - */ - public function up(): void - { - helper('migration'); - execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.2.1_to_3.3.0.sql'); - } + /** + * Perform a migration step. + */ + public function up(): void + { + helper('migration'); + execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.2.1_to_3.3.0.sql'); + } - /** - * Revert a migration step. - */ - public function down(): void - { + /** + * Revert a migration step. + */ + public function down(): void + { - } + } } diff --git a/app/Database/Migrations/20190129212600_indiagst.php b/app/Database/Migrations/20190129212600_indiagst.php index b636ab343..db4eae74a 100644 --- a/app/Database/Migrations/20190129212600_indiagst.php +++ b/app/Database/Migrations/20190129212600_indiagst.php @@ -6,169 +6,169 @@ use CodeIgniter\Database\Migration; class Migration_IndiaGST extends Migration { - /** - * Perform a migration step. - */ - public function up(): void - { - if(!$this->db->fieldExists('sales_tax_code', 'customers')) - { - return; - } + /** + * Perform a migration step. + */ + public function up(): void + { + if(!$this->db->fieldExists('sales_tax_code', 'customers')) + { + return; + } - // If number of entries is greater than zero then the tax data needs to be migrated - helper('migration'); - execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.3.0_indiagst.sql'); + // If number of entries is greater than zero then the tax data needs to be migrated + helper('migration'); + execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.3.0_indiagst.sql'); - error_log('Migrating tax configuration'); + error_log('Migrating tax configuration'); - $count_of_tax_codes = $this->get_count_of_tax_code_entries(); + $count_of_tax_codes = $this->get_count_of_tax_code_entries(); - if($count_of_tax_codes > 0) - { - $this->migrate_tax_code_data(); - } + if($count_of_tax_codes > 0) + { + $this->migrate_tax_code_data(); + } - $this->migrate_customer_tax_codes(); + $this->migrate_customer_tax_codes(); - $count_of_rate_entries = $this->get_count_of_rate_entries(); + $count_of_rate_entries = $this->get_count_of_rate_entries(); - if($count_of_rate_entries > 0) - { - $this->migrate_tax_rates(); - } + if($count_of_rate_entries > 0) + { + $this->migrate_tax_rates(); + } - $count_of_sales_taxes_entries = $this->get_count_of_sales_taxes_entries(); + $count_of_sales_taxes_entries = $this->get_count_of_sales_taxes_entries(); - if($count_of_sales_taxes_entries > 0) - { - $this->migrate_sales_taxes_data(); - } + if($count_of_sales_taxes_entries > 0) + { + $this->migrate_sales_taxes_data(); + } - $this->drop_backups(); + $this->drop_backups(); - error_log('Migrating tax configuration completed'); - } + error_log('Migrating tax configuration completed'); + } - /** - * Revert a migration step. - */ - public function down(): void - { - } + /** + * Revert a migration step. + */ + public function down(): void + { + } - /** - * @return int - */ - private function get_count_of_tax_code_entries(): int - { - $builder = $this->db->table('tax_codes_backup'); - $builder->select('COUNT(*) as count'); + /** + * @return int + */ + private function get_count_of_tax_code_entries(): int + { + $builder = $this->db->table('tax_codes_backup'); + $builder->select('COUNT(*) as count'); - return $builder->get()->getRow()->count; - } + return $builder->get()->getRow()->count; + } - /** - * @return int - */ - private function get_count_of_sales_taxes_entries(): int - { - $builder = $this->db->table('sales_taxes_backup'); - $builder->select('COUNT(*) as count'); + /** + * @return int + */ + private function get_count_of_sales_taxes_entries(): int + { + $builder = $this->db->table('sales_taxes_backup'); + $builder->select('COUNT(*) as count'); - return $builder->get()->getRow()->count; - } + return $builder->get()->getRow()->count; + } - /** - * @return int - */ - private function get_count_of_rate_entries(): int - { - $builder = $this->db->table('tax_code_rates_backup'); - $builder->select('COUNT(*) as count'); + /** + * @return int + */ + private function get_count_of_rate_entries(): int + { + $builder = $this->db->table('tax_code_rates_backup'); + $builder->select('COUNT(*) as count'); - return $builder->get()->getRow()->count; - } + return $builder->get()->getRow()->count; + } - /** - * This copies the old tax code configuration into the new tax code configuration - * assigning a tax_code_id id to the entry This only needs to be done if there are - * tax codes in the table. - * - * @return void - */ - private function migrate_tax_code_data(): void - { - $this->db->query('INSERT INTO ' . $this->db->prefixTable('tax_codes') . ' (tax_code, tax_code_name, city, state) - SELECT tax_code, tax_code_name, city, state FROM ' . $this->db->prefixTable('tax_codes_backup')); - } + /** + * This copies the old tax code configuration into the new tax code configuration + * assigning a tax_code_id id to the entry This only needs to be done if there are + * tax codes in the table. + * + * @return void + */ + private function migrate_tax_code_data(): void + { + $this->db->query('INSERT INTO ' . $this->db->prefixTable('tax_codes') . ' (tax_code, tax_code_name, city, state) + SELECT tax_code, tax_code_name, city, state FROM ' . $this->db->prefixTable('tax_codes_backup')); + } - /** - * The previous upgrade script added the new column to the customers table. - * This will assign a tax code id using the tax code field that was left in place on the customer table. - * After it is complete then it will drop the old customer tax code. - * This MUST run so that the old tax code is dropped - * - * @return void - */ - private function migrate_customer_tax_codes(): void - { - $this->db->query('UPDATE ' . $this->db->prefixTable('customers') . ' AS fa SET fa.sales_tax_code_id = ( - SELECT tax_code_id FROM ' . $this->db->prefixTable('tax_codes') . ' AS fb where fa.sales_tax_code = fb.tax_code)'); + /** + * The previous upgrade script added the new column to the customers table. + * This will assign a tax code id using the tax code field that was left in place on the customer table. + * After it is complete then it will drop the old customer tax code. + * This MUST run so that the old tax code is dropped + * + * @return void + */ + private function migrate_customer_tax_codes(): void + { + $this->db->query('UPDATE ' . $this->db->prefixTable('customers') . ' AS fa SET fa.sales_tax_code_id = ( + SELECT tax_code_id FROM ' . $this->db->prefixTable('tax_codes') . ' AS fb where fa.sales_tax_code = fb.tax_code)'); - $this->db->query('ALTER TABLE ' . $this->db->prefixTable('customers') . ' DROP COLUMN sales_tax_code'); - } + $this->db->query('ALTER TABLE ' . $this->db->prefixTable('customers') . ' DROP COLUMN sales_tax_code'); + } - /** - * The sales taxes table is undergoing a significant primary key change - * The new table assumes that sales taxes are associated with a jurisdiction - * For base taxes and the older tax system the tax jurisdiction code table will be - * initialized with an entry that is used to represent a dummy or consolidated jurisdiction. - * If there is only one tax jurisdiction then it can be renamed and life moves on. - * If the user wants to start reporting taxes by jurisdiction then the new jurisdictions need - * to be created and defined manually AFTER the upgrade. - * CONVERTING OLD TAX DATA TO BE SPLIT OUT BY JURISDICTION IS BEYOND THE SCOPE OF THIS EFFORT - */ - private function migrate_sales_taxes_data(): void - { - $this->db->query('INSERT INTO ' . $this->db->prefixTable('sales_taxes') - . ' (sale_id, jurisdiction_id, tax_category_id, tax_type, tax_group, sale_tax_basis, sale_tax_amount, print_sequence, ' - . '`name`, tax_rate, sales_tax_code_id, rounding_code) ' - . 'select sale_id, rate_jurisdiction_id, rate_tax_category_id, tax_type, tax_group, sale_tax_basis, sale_tax_amount, ' - . 'print_sequence, `name`, A.tax_rate, tax_code_id, rounding_code ' - . 'from ' . $this->db->prefixTable('sales_taxes_backup') . ' AS A ' - . 'left outer join ' . $this->db->prefixTable('tax_codes') . ' AS B on sales_tax_code = tax_code ' - . 'left outer join ' . $this->db->prefixTable('tax_rates') . ' AS C on tax_code_id = rate_tax_code_id and A.tax_rate = C.tax_rate ' - . 'order by sale_id'); - } + /** + * The sales taxes table is undergoing a significant primary key change + * The new table assumes that sales taxes are associated with a jurisdiction + * For base taxes and the older tax system the tax jurisdiction code table will be + * initialized with an entry that is used to represent a dummy or consolidated jurisdiction. + * If there is only one tax jurisdiction then it can be renamed and life moves on. + * If the user wants to start reporting taxes by jurisdiction then the new jurisdictions need + * to be created and defined manually AFTER the upgrade. + * CONVERTING OLD TAX DATA TO BE SPLIT OUT BY JURISDICTION IS BEYOND THE SCOPE OF THIS EFFORT + */ + private function migrate_sales_taxes_data(): void + { + $this->db->query('INSERT INTO ' . $this->db->prefixTable('sales_taxes') + . ' (sale_id, jurisdiction_id, tax_category_id, tax_type, tax_group, sale_tax_basis, sale_tax_amount, print_sequence, ' + . '`name`, tax_rate, sales_tax_code_id, rounding_code) ' + . 'select sale_id, rate_jurisdiction_id, rate_tax_category_id, tax_type, tax_group, sale_tax_basis, sale_tax_amount, ' + . 'print_sequence, `name`, A.tax_rate, tax_code_id, rounding_code ' + . 'from ' . $this->db->prefixTable('sales_taxes_backup') . ' AS A ' + . 'left outer join ' . $this->db->prefixTable('tax_codes') . ' AS B on sales_tax_code = tax_code ' + . 'left outer join ' . $this->db->prefixTable('tax_rates') . ' AS C on tax_code_id = rate_tax_code_id and A.tax_rate = C.tax_rate ' + . 'order by sale_id'); + } - /** - * @return void - */ - private function migrate_tax_rates(): void - { - // create a dummy jurisdiction record and retrieve the jurisdiction rate id + /** + * @return void + */ + private function migrate_tax_rates(): void + { + // create a dummy jurisdiction record and retrieve the jurisdiction rate id - $this->db->query('INSERT INTO ' . $this->db->prefixTable('tax_jurisdictions') . ' (jurisdiction_name, tax_group, tax_type, reporting_authority, ' - . "tax_group_sequence, cascade_sequence, deleted) VALUES ('Jurisdiction1', 'TaxGroup1', '1', 'Authority1', 1, 0, '0')"); + $this->db->query('INSERT INTO ' . $this->db->prefixTable('tax_jurisdictions') . ' (jurisdiction_name, tax_group, tax_type, reporting_authority, ' + . "tax_group_sequence, cascade_sequence, deleted) VALUES ('Jurisdiction1', 'TaxGroup1', '1', 'Authority1', 1, 0, '0')"); - $jurisdiction_id = $this->db->query('SELECT jurisdiction_id FROM ' . $this->db->prefixTable('tax_jurisdictions') . " WHERE jurisdiction_name = 'Jurisdiction1'")->getRow()->jurisdiction_id; + $jurisdiction_id = $this->db->query('SELECT jurisdiction_id FROM ' . $this->db->prefixTable('tax_jurisdictions') . " WHERE jurisdiction_name = 'Jurisdiction1'")->getRow()->jurisdiction_id; - // Insert old tax_code rates data into the new tax rates table - $this->db->query('INSERT INTO ' . $this->db->prefixTable('tax_rates') - . ' (rate_tax_category_id, rate_jurisdiction_id, rate_tax_code_id, tax_rate, tax_rounding_code) ' - . 'SELECT rate_tax_category_id, ' . $jurisdiction_id . ', tax_code_id, tax_rate, rounding_code FROM ' - . $this->db->prefixTable('tax_code_rates_backup') . ' JOIN ' . $this->db->prefixTable('tax_codes') - . ' ON tax_code = rate_tax_code'); - } + // Insert old tax_code rates data into the new tax rates table + $this->db->query('INSERT INTO ' . $this->db->prefixTable('tax_rates') + . ' (rate_tax_category_id, rate_jurisdiction_id, rate_tax_code_id, tax_rate, tax_rounding_code) ' + . 'SELECT rate_tax_category_id, ' . $jurisdiction_id . ', tax_code_id, tax_rate, rounding_code FROM ' + . $this->db->prefixTable('tax_code_rates_backup') . ' JOIN ' . $this->db->prefixTable('tax_codes') + . ' ON tax_code = rate_tax_code'); + } - /** - * @return void - */ - private function drop_backups(): void - { - $this->db->query('DROP TABLE IF EXISTS ' . $this->db->prefixTable('tax_codes_backup')); - $this->db->query('DROP TABLE IF EXISTS ' . $this->db->prefixTable('sales_taxes_backup')); - $this->db->query('DROP TABLE IF EXISTS ' . $this->db->prefixTable('tax_code_rates_backup')); - } + /** + * @return void + */ + private function drop_backups(): void + { + $this->db->query('DROP TABLE IF EXISTS ' . $this->db->prefixTable('tax_codes_backup')); + $this->db->query('DROP TABLE IF EXISTS ' . $this->db->prefixTable('sales_taxes_backup')); + $this->db->query('DROP TABLE IF EXISTS ' . $this->db->prefixTable('tax_code_rates_backup')); + } } diff --git a/app/Database/Migrations/20190213210000_indiagst1.php b/app/Database/Migrations/20190213210000_indiagst1.php index f6a0000a8..259492a16 100644 --- a/app/Database/Migrations/20190213210000_indiagst1.php +++ b/app/Database/Migrations/20190213210000_indiagst1.php @@ -6,24 +6,24 @@ use CodeIgniter\Database\Migration; class Migration_IndiaGST1 extends Migration { - /** - * Perform a migration step. - */ - public function up(): void - { - helper('migration'); - execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.3.0_indiagst1.sql'); + /** + * Perform a migration step. + */ + public function up(): void + { + helper('migration'); + execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.3.0_indiagst1.sql'); - error_log('Fix definition of Supplier.Tax Id'); + error_log('Fix definition of Supplier.Tax Id'); - error_log('Definition of Supplier.Tax Id corrected'); - } + error_log('Definition of Supplier.Tax Id corrected'); + } - /** - * Revert a migration step. - */ - public function down(): void - { - } + /** + * Revert a migration step. + */ + public function down(): void + { + } } diff --git a/app/Database/Migrations/20190220210000_indiagst2.php b/app/Database/Migrations/20190220210000_indiagst2.php index 04593651d..0255fb9a1 100644 --- a/app/Database/Migrations/20190220210000_indiagst2.php +++ b/app/Database/Migrations/20190220210000_indiagst2.php @@ -6,20 +6,20 @@ use CodeIgniter\Database\Migration; class Migration_IndiaGST2 extends Migration { - /** - * Perform a migration step. - */ - public function up(): void - { - helper('migration'); - execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.3.0_indiagst2.sql'); - } + /** + * Perform a migration step. + */ + public function up(): void + { + helper('migration'); + execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.3.0_indiagst2.sql'); + } - /** - * Revert a migration step. - */ - public function down(): void - { - } + /** + * Revert a migration step. + */ + public function down(): void + { + } } diff --git a/app/Database/Migrations/20190301124900_decimal_attribute_type.php b/app/Database/Migrations/20190301124900_decimal_attribute_type.php index 09bc6c19c..331868d50 100644 --- a/app/Database/Migrations/20190301124900_decimal_attribute_type.php +++ b/app/Database/Migrations/20190301124900_decimal_attribute_type.php @@ -6,20 +6,20 @@ use CodeIgniter\Database\Migration; class Migration_decimal_attribute_type extends Migration { - /** - * Perform a migration step. - */ - public function up(): void - { - helper('migration'); - execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.3.0_decimal_attribute_type.sql'); - } + /** + * Perform a migration step. + */ + public function up(): void + { + helper('migration'); + execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.3.0_decimal_attribute_type.sql'); + } - /** - * Revert a migration step. - */ - public function down(): void - { + /** + * Revert a migration step. + */ + public function down(): void + { - } + } } diff --git a/app/Database/Migrations/20190317102600_add_iso_4217.php b/app/Database/Migrations/20190317102600_add_iso_4217.php index dc341ed06..d71530784 100644 --- a/app/Database/Migrations/20190317102600_add_iso_4217.php +++ b/app/Database/Migrations/20190317102600_add_iso_4217.php @@ -6,20 +6,20 @@ use CodeIgniter\Database\Migration; class Migration_add_iso_4217 extends Migration { - /** - * Perform a migration step. - */ - public function up(): void - { - helper('migration'); - execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.3.0_add_iso_4217.sql'); - } + /** + * Perform a migration step. + */ + public function up(): void + { + helper('migration'); + execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.3.0_add_iso_4217.sql'); + } - /** - * Revert a migration step. - */ - public function down(): void - { + /** + * Revert a migration step. + */ + public function down(): void + { - } + } } diff --git a/app/Database/Migrations/20190427100000_paymenttracking.php b/app/Database/Migrations/20190427100000_paymenttracking.php index 4cbb6abfd..ec26c35ca 100644 --- a/app/Database/Migrations/20190427100000_paymenttracking.php +++ b/app/Database/Migrations/20190427100000_paymenttracking.php @@ -6,20 +6,20 @@ use CodeIgniter\Database\Migration; class Migration_PaymentTracking extends Migration { - /** - * Perform a migration step. - */ - public function up(): void - { - helper('migration'); - execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.3.0_paymenttracking.sql'); - } + /** + * Perform a migration step. + */ + public function up(): void + { + helper('migration'); + execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.3.0_paymenttracking.sql'); + } - /** - * Revert a migration step. - */ - public function down(): void - { + /** + * Revert a migration step. + */ + public function down(): void + { - } + } } diff --git a/app/Database/Migrations/20190502100000_refundtracking.php b/app/Database/Migrations/20190502100000_refundtracking.php index 9a6464b6f..76b4adcdb 100644 --- a/app/Database/Migrations/20190502100000_refundtracking.php +++ b/app/Database/Migrations/20190502100000_refundtracking.php @@ -6,108 +6,108 @@ use CodeIgniter\Database\Migration; class Migration_RefundTracking extends Migration { - /** - * Perform a migration step. - */ - public function up(): void - { - helper(['migration', 'locale']); - execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.3.0_refundtracking.sql'); + /** + * Perform a migration step. + */ + public function up(): void + { + helper(['migration', 'locale']); + execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.3.0_refundtracking.sql'); - // Add missing cash_refund amounts to payments table - $decimals = totals_decimals(); + // Add missing cash_refund amounts to payments table + $decimals = totals_decimals(); - $trans_amount = 'ROUND(SUM(CASE WHEN sales_items.discount_type = ' . PERCENT - . ' THEN sales_items.item_unit_price * sales_items.quantity_purchased * (1 - sales_items.discount / 100) ' - . 'ELSE sales_items.item_unit_price * sales_items.quantity_purchased - sales_items.discount END), ' . $decimals . ') AS trans_amount'; + $trans_amount = 'ROUND(SUM(CASE WHEN sales_items.discount_type = ' . PERCENT + . ' THEN sales_items.item_unit_price * sales_items.quantity_purchased * (1 - sales_items.discount / 100) ' + . 'ELSE sales_items.item_unit_price * sales_items.quantity_purchased - sales_items.discount END), ' . $decimals . ') AS trans_amount'; - $cash_payment = lang('Sales.cash'); + $cash_payment = lang('Sales.cash'); - $this->db->query('CREATE TEMPORARY TABLE IF NOT EXISTS ' . $this->db->prefixTable('migrate_taxes') . - ' (INDEX(sale_id)) ENGINE=MEMORY - ( - SELECT sales.sale_id, SUM(sales_taxes.sale_tax_amount) AS total_taxes - FROM ' . $this->db->prefixTable('sales') . ' AS sales - LEFT OUTER JOIN ' . $this->db->prefixTable('sales_taxes') . ' AS sales_taxes - ON sales.sale_id = sales_taxes.sale_id - WHERE sales.sale_status = \'' . COMPLETED . '\' AND sales_taxes.tax_type = \'1\' - GROUP BY sale_id - )' - ); + $this->db->query('CREATE TEMPORARY TABLE IF NOT EXISTS ' . $this->db->prefixTable('migrate_taxes') . + ' (INDEX(sale_id)) ENGINE=MEMORY + ( + SELECT sales.sale_id, SUM(sales_taxes.sale_tax_amount) AS total_taxes + FROM ' . $this->db->prefixTable('sales') . ' AS sales + LEFT OUTER JOIN ' . $this->db->prefixTable('sales_taxes') . ' AS sales_taxes + ON sales.sale_id = sales_taxes.sale_id + WHERE sales.sale_status = \'' . COMPLETED . '\' AND sales_taxes.tax_type = \'1\' + GROUP BY sale_id + )' + ); - $this->db->query('CREATE TEMPORARY TABLE IF NOT EXISTS ' . $this->db->prefixTable('migrate_sales') . - ' (INDEX(sale_id)) ENGINE=MEMORY - ( - SELECT sales.sale_id, '. $trans_amount . ', sales.employee_id, sales.sale_time' - . ' FROM ' . $this->db->prefixTable('sales') . ' AS sales ' - . 'LEFT OUTER JOIN ' . $this->db->prefixTable('sales_items') . ' AS sales_items ' - . 'ON sales.sale_id = sales_items.sale_id ' - . 'LEFT OUTER JOIN ' . $this->db->prefixTable('migrate_taxes') . ' AS sumpay_taxes ' - . 'ON sales.sale_id = sumpay_taxes.sale_id ' - . 'WHERE sales.sale_status = \'' . COMPLETED . '\' GROUP BY sale_id - )' - ); + $this->db->query('CREATE TEMPORARY TABLE IF NOT EXISTS ' . $this->db->prefixTable('migrate_sales') . + ' (INDEX(sale_id)) ENGINE=MEMORY + ( + SELECT sales.sale_id, '. $trans_amount . ', sales.employee_id, sales.sale_time' + . ' FROM ' . $this->db->prefixTable('sales') . ' AS sales ' + . 'LEFT OUTER JOIN ' . $this->db->prefixTable('sales_items') . ' AS sales_items ' + . 'ON sales.sale_id = sales_items.sale_id ' + . 'LEFT OUTER JOIN ' . $this->db->prefixTable('migrate_taxes') . ' AS sumpay_taxes ' + . 'ON sales.sale_id = sumpay_taxes.sale_id ' + . 'WHERE sales.sale_status = \'' . COMPLETED . '\' GROUP BY sale_id + )' + ); - $this->db->query('UPDATE ' . $this->db->prefixTable('migrate_sales') . ' AS sumpay_items ' - . 'SET trans_amount = trans_amount + IFNULL((SELECT total_taxes FROM ' . $this->db->prefixTable('migrate_taxes') - . ' AS sumpay_taxes WHERE sumpay_items.sale_id = sumpay_taxes.sale_id),0)'); + $this->db->query('UPDATE ' . $this->db->prefixTable('migrate_sales') . ' AS sumpay_items ' + . 'SET trans_amount = trans_amount + IFNULL((SELECT total_taxes FROM ' . $this->db->prefixTable('migrate_taxes') + . ' AS sumpay_taxes WHERE sumpay_items.sale_id = sumpay_taxes.sale_id),0)'); - $this->db->query('CREATE TEMPORARY TABLE IF NOT EXISTS ' . $this->db->prefixTable('migrate_payments') . - ' (INDEX(sale_id)) ENGINE=MEMORY - ( - SELECT sales.sale_id, COUNT(sales.sale_id) AS number_payments, - SUM(sales_payments.payment_amount - sales_payments.cash_refund) AS total_payments - FROM ' . $this->db->prefixTable('sales') . ' AS sales - LEFT OUTER JOIN ' . $this->db->prefixTable('sales_payments') . ' AS sales_payments - ON sales.sale_id = sales_payments.sale_id - WHERE sales.sale_status = \'' . COMPLETED . '\' GROUP BY sale_id - )' - ); + $this->db->query('CREATE TEMPORARY TABLE IF NOT EXISTS ' . $this->db->prefixTable('migrate_payments') . + ' (INDEX(sale_id)) ENGINE=MEMORY + ( + SELECT sales.sale_id, COUNT(sales.sale_id) AS number_payments, + SUM(sales_payments.payment_amount - sales_payments.cash_refund) AS total_payments + FROM ' . $this->db->prefixTable('sales') . ' AS sales + LEFT OUTER JOIN ' . $this->db->prefixTable('sales_payments') . ' AS sales_payments + ON sales.sale_id = sales_payments.sale_id + WHERE sales.sale_status = \'' . COMPLETED . '\' GROUP BY sale_id + )' + ); - // You may be asking yourself why the following is not creating a temporary table. - // It should be, it originallly was, but there is a bug in MySQL where temporary tables where some SQL statements fail. - // The update statement that follows this CREATE TABLE is one of those statements. - $this->db->query('CREATE TABLE IF NOT EXISTS ' . $this->db->prefixTable('migrate_refund') . - ' (INDEX(sale_id)) ENGINE=MEMORY - ( - SELECT a.sale_id, total_payments - trans_amount AS refund_amount - FROM ' . $this->db->prefixTable('migrate_sales') . ' AS a - JOIN ' . $this->db->prefixTable('migrate_payments') . ' AS b ON a.sale_id = b.sale_id - WHERE total_payments > trans_amount AND number_payments = 1 - )' - ); + // You may be asking yourself why the following is not creating a temporary table. + // It should be, it originallly was, but there is a bug in MySQL where temporary tables where some SQL statements fail. + // The update statement that follows this CREATE TABLE is one of those statements. + $this->db->query('CREATE TABLE IF NOT EXISTS ' . $this->db->prefixTable('migrate_refund') . + ' (INDEX(sale_id)) ENGINE=MEMORY + ( + SELECT a.sale_id, total_payments - trans_amount AS refund_amount + FROM ' . $this->db->prefixTable('migrate_sales') . ' AS a + JOIN ' . $this->db->prefixTable('migrate_payments') . ' AS b ON a.sale_id = b.sale_id + WHERE total_payments > trans_amount AND number_payments = 1 + )' + ); - // Update existing cash transactions with refund amount - $this->db->query('UPDATE ' . $this->db->prefixTable('sales_payments') . ' AS a - SET a.cash_refund = - (SELECT b.refund_amount - FROM ' . $this->db->prefixTable('migrate_refund') . ' AS b - WHERE a.sale_id = b.sale_id AND a.payment_type = \'' . $cash_payment . '\') - WHERE EXISTS - (SELECT b.refund_amount - FROM ' . $this->db->prefixTable('migrate_refund') . ' AS b - WHERE a.sale_id = b.sale_id AND a.payment_type = \'' . $cash_payment . ' \')' - ); + // Update existing cash transactions with refund amount + $this->db->query('UPDATE ' . $this->db->prefixTable('sales_payments') . ' AS a + SET a.cash_refund = + (SELECT b.refund_amount + FROM ' . $this->db->prefixTable('migrate_refund') . ' AS b + WHERE a.sale_id = b.sale_id AND a.payment_type = \'' . $cash_payment . '\') + WHERE EXISTS + (SELECT b.refund_amount + FROM ' . $this->db->prefixTable('migrate_refund') . ' AS b + WHERE a.sale_id = b.sale_id AND a.payment_type = \'' . $cash_payment . ' \')' + ); - // Insert new cash refund transactions for non-cash payments - $this->db->query('INSERT INTO ' . $this->db->prefixTable('sales_payments') . - ' (sale_id, payment_type, employee_id, payment_time, payment_amount, cash_refund) - SELECT r.sale_id, \'' . $cash_payment . '\', s.employee_id, sale_time, 0, r.refund_amount - FROM ' . $this->db->prefixTable('migrate_refund') . ' AS r - JOIN ' . $this->db->prefixTable('sales_payments') . ' AS p ON r.sale_id = p.sale_id - JOIN ' . $this->db->prefixTable('migrate_sales') . ' AS s ON r.sale_id = s.sale_id - WHERE p.payment_type != \'' . $cash_payment . '\'' - ); + // Insert new cash refund transactions for non-cash payments + $this->db->query('INSERT INTO ' . $this->db->prefixTable('sales_payments') . + ' (sale_id, payment_type, employee_id, payment_time, payment_amount, cash_refund) + SELECT r.sale_id, \'' . $cash_payment . '\', s.employee_id, sale_time, 0, r.refund_amount + FROM ' . $this->db->prefixTable('migrate_refund') . ' AS r + JOIN ' . $this->db->prefixTable('sales_payments') . ' AS p ON r.sale_id = p.sale_id + JOIN ' . $this->db->prefixTable('migrate_sales') . ' AS s ON r.sale_id = s.sale_id + WHERE p.payment_type != \'' . $cash_payment . '\'' + ); - // Post migration cleanup - $this->db->query('DROP TABLE IF EXISTS ' . $this->db->prefixTable('migrate_refund')); - } + // Post migration cleanup + $this->db->query('DROP TABLE IF EXISTS ' . $this->db->prefixTable('migrate_refund')); + } - /** - * Revert a migration step. - */ - public function down(): void - { + /** + * Revert a migration step. + */ + public function down(): void + { - } + } } diff --git a/app/Database/Migrations/20190612100000_dbfix.php b/app/Database/Migrations/20190612100000_dbfix.php index cc1196610..16e00742d 100644 --- a/app/Database/Migrations/20190612100000_dbfix.php +++ b/app/Database/Migrations/20190612100000_dbfix.php @@ -6,20 +6,20 @@ use CodeIgniter\Database\Migration; class Migration_DBFix extends Migration { - /** - * Perform a migration step. - */ - public function up(): void - { - helper('migration'); - execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.3.0_dbfix.sql'); - } + /** + * Perform a migration step. + */ + public function up(): void + { + helper('migration'); + execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.3.0_dbfix.sql'); + } - /** - * Revert a migration step. - */ - public function down(): void - { + /** + * Revert a migration step. + */ + public function down(): void + { - } + } } diff --git a/app/Database/Migrations/20190615100000_fix_attribute_datetime.php b/app/Database/Migrations/20190615100000_fix_attribute_datetime.php index 4c34c93a0..7d9066def 100644 --- a/app/Database/Migrations/20190615100000_fix_attribute_datetime.php +++ b/app/Database/Migrations/20190615100000_fix_attribute_datetime.php @@ -6,20 +6,20 @@ use CodeIgniter\Database\Migration; class Migration_fix_attribute_datetime extends Migration { - /** - * Perform a migration step. - */ - public function up(): void - { - helper('migration'); - execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.3.0_fix_attribute_datetime.sql'); - } + /** + * Perform a migration step. + */ + public function up(): void + { + helper('migration'); + execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.3.0_fix_attribute_datetime.sql'); + } - /** - * Revert a migration step. - */ - public function down(): void - { + /** + * Revert a migration step. + */ + public function down(): void + { - } + } } diff --git a/app/Database/Migrations/20190712150200_fix_empty_reports.php b/app/Database/Migrations/20190712150200_fix_empty_reports.php index 55b60884b..fc6f88861 100644 --- a/app/Database/Migrations/20190712150200_fix_empty_reports.php +++ b/app/Database/Migrations/20190712150200_fix_empty_reports.php @@ -6,30 +6,30 @@ use CodeIgniter\Database\Migration; class Migration_fix_empty_reports extends Migration { - /** - * Perform a migration step. - */ - public function up(): void - { - $builder = $this->db->table('stock_locations'); - $builder->select('location_name'); - $builder->where('location_id', 1); - $builder->limit(1); - $location_name = $builder->get()->getResultArray()[0]['location_name']; + /** + * Perform a migration step. + */ + public function up(): void + { + $builder = $this->db->table('stock_locations'); + $builder->select('location_name'); + $builder->where('location_id', 1); + $builder->limit(1); + $location_name = $builder->get()->getResultArray()[0]['location_name']; - $location_name = str_replace(' ', '_', $location_name); - $builder = $this->db->table('permissions'); - $builder->set('location_id', 1); - $builder->where('permission_id','receivings_' . $location_name); - $builder->orWhere('permission_id', 'sales_' . $location_name); - $builder->update(); - } + $location_name = str_replace(' ', '_', $location_name); + $builder = $this->db->table('permissions'); + $builder->set('location_id', 1); + $builder->where('permission_id','receivings_' . $location_name); + $builder->orWhere('permission_id', 'sales_' . $location_name); + $builder->update(); + } - /** - * Revert a migration step. - */ - public function down(): void - { + /** + * Revert a migration step. + */ + public function down(): void + { - } + } } diff --git a/app/Database/Migrations/20191008100000_receipttaxindicator.php b/app/Database/Migrations/20191008100000_receipttaxindicator.php index ff6be2999..f4c956bbb 100644 --- a/app/Database/Migrations/20191008100000_receipttaxindicator.php +++ b/app/Database/Migrations/20191008100000_receipttaxindicator.php @@ -6,20 +6,20 @@ use CodeIgniter\Database\Migration; class Migration_receipttaxindicator extends Migration { - /** - * Perform a migration step. - */ - public function up(): void - { - $this->db->query('INSERT INTO ' . $this->db->prefixTable('app_config') . ' (`key`, `value`) - VALUES (\'receipt_show_tax_ind\', \'0\')'); - } + /** + * Perform a migration step. + */ + public function up(): void + { + $this->db->query('INSERT INTO ' . $this->db->prefixTable('app_config') . ' (`key`, `value`) + VALUES (\'receipt_show_tax_ind\', \'0\')'); + } - /** - * Revert a migration step. - */ - public function down(): void - { - $this->db->query('DELETE FROM ' . $this->db->prefixTable('app_config') . ' WHERE key = \'receipt_show_tax_ind\''); - } + /** + * Revert a migration step. + */ + public function down(): void + { + $this->db->query('DELETE FROM ' . $this->db->prefixTable('app_config') . ' WHERE key = \'receipt_show_tax_ind\''); + } } diff --git a/app/Database/Migrations/20191231100000_paymentdatefix.php b/app/Database/Migrations/20191231100000_paymentdatefix.php index e9eaf04b5..c95733392 100644 --- a/app/Database/Migrations/20191231100000_paymentdatefix.php +++ b/app/Database/Migrations/20191231100000_paymentdatefix.php @@ -6,20 +6,20 @@ use CodeIgniter\Database\Migration; class Migration_PaymentDateFix extends Migration { - /** - * Perform a migration step. - */ - public function up(): void - { - helper('migration'); - execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.3.2_paymentdatefix.sql'); - } + /** + * Perform a migration step. + */ + public function up(): void + { + helper('migration'); + execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.3.2_paymentdatefix.sql'); + } - /** - * Revert a migration step. - */ - public function down(): void - { + /** + * Revert a migration step. + */ + public function down(): void + { - } + } } diff --git a/app/Database/Migrations/20200125100000_saleschangeprice.php b/app/Database/Migrations/20200125100000_saleschangeprice.php index b78c36684..4d27c307a 100644 --- a/app/Database/Migrations/20200125100000_saleschangeprice.php +++ b/app/Database/Migrations/20200125100000_saleschangeprice.php @@ -6,20 +6,20 @@ use CodeIgniter\Database\Migration; class Migration_SalesChangePrice extends Migration { - /** - * Perform a migration step. - */ - public function up(): void - { - helper('migration'); - execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.3.2_saleschangeprice.sql'); - } + /** + * Perform a migration step. + */ + public function up(): void + { + helper('migration'); + execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.3.2_saleschangeprice.sql'); + } - /** - * Revert a migration step. - */ - public function down(): void - { + /** + * Revert a migration step. + */ + public function down(): void + { - } + } } diff --git a/app/Database/Migrations/20200202000000_taxamount.php b/app/Database/Migrations/20200202000000_taxamount.php index ad671e05a..a8f86e8f5 100644 --- a/app/Database/Migrations/20200202000000_taxamount.php +++ b/app/Database/Migrations/20200202000000_taxamount.php @@ -15,399 +15,399 @@ use CodeIgniter\Database\ResultInterface; */ class Migration_TaxAmount extends Migration { - public const ROUND_UP = 5; - public const ROUND_DOWN = 6; - public const HALF_FIVE = 7; - public const YES = '1'; - public const VAT_TAX = '0'; - public const SALES_TAX = '1'; //TODO: It appears that this constant is never used - private Appconfig $appconfig; + public const ROUND_UP = 5; + public const ROUND_DOWN = 6; + public const HALF_FIVE = 7; + public const YES = '1'; + public const VAT_TAX = '0'; + public const SALES_TAX = '1'; //TODO: It appears that this constant is never used + private Appconfig $appconfig; - public function __construct() - { - parent::__construct(); + public function __construct() + { + parent::__construct(); - $this->appconfig = model(Appconfig::class); - } + $this->appconfig = model(Appconfig::class); + } - /** - * Perform a migration step. - */ - public function up(): void - { - $tax_included = ($this->appconfig->get_value('tax_included', Migration_TaxAmount::YES) == Migration_TaxAmount::YES); + /** + * Perform a migration step. + */ + public function up(): void + { + $tax_included = ($this->appconfig->get_value('tax_included', Migration_TaxAmount::YES) == Migration_TaxAmount::YES); - if($tax_included) - { - $tax_decimals = $this->appconfig->get_value('tax_decimals', 2); - $number_of_unmigrated = $this->get_count_of_unmigrated(); + if($tax_included) + { + $tax_decimals = $this->appconfig->get_value('tax_decimals', 2); + $number_of_unmigrated = $this->get_count_of_unmigrated(); - error_log('Migrating sales tax fixing. The number of sales that will be migrated is ' . $number_of_unmigrated); + error_log('Migrating sales tax fixing. The number of sales that will be migrated is ' . $number_of_unmigrated); - if($number_of_unmigrated > 0) - { - $unmigrated_invoices = $this->get_unmigrated($number_of_unmigrated)->getResultArray(); - $this->db->query('RENAME TABLE ' . $this->db->prefixTable('sales_taxes') . ' TO ' . $this->db->prefixTable('sales_taxes_backup')); - $this->db->query('CREATE TABLE ' . $this->db->prefixTable('sales_taxes') . ' LIKE ' . $this->db->prefixTable('sales_taxes_backup')); + if($number_of_unmigrated > 0) + { + $unmigrated_invoices = $this->get_unmigrated($number_of_unmigrated)->getResultArray(); + $this->db->query('RENAME TABLE ' . $this->db->prefixTable('sales_taxes') . ' TO ' . $this->db->prefixTable('sales_taxes_backup')); + $this->db->query('CREATE TABLE ' . $this->db->prefixTable('sales_taxes') . ' LIKE ' . $this->db->prefixTable('sales_taxes_backup')); - foreach($unmigrated_invoices as $key => $unmigrated_invoice) - { - $this->upgrade_tax_history_for_sale($unmigrated_invoice['sale_id'], $tax_decimals, true); - } - $this->db->query('DROP TABLE ' . $this->db->prefixTable('sales_taxes_backup')); - } + foreach($unmigrated_invoices as $key => $unmigrated_invoice) + { + $this->upgrade_tax_history_for_sale($unmigrated_invoice['sale_id'], $tax_decimals, true); + } + $this->db->query('DROP TABLE ' . $this->db->prefixTable('sales_taxes_backup')); + } - error_log('Migrating sales tax fixing. The number of sales that will be migrated is finished.'); - } - } + error_log('Migrating sales tax fixing. The number of sales that will be migrated is finished.'); + } + } - /** - * Revert a migration step. - */ - public function down(): void - { + /** + * Revert a migration step. + */ + public function down(): void + { - } + } - /** - * @param int $sale_id - * @param string $tax_decimals - * @param bool $tax_included - * @return void - */ - private function upgrade_tax_history_for_sale(int $sale_id, string $tax_decimals, bool $tax_included): void //TODO: $tax_included is passed as a parameter but never used in the function body. - { - $customer_sales_tax_support = false; - $tax_type = Migration_TaxAmount::VAT_TAX; - $sales_taxes = []; - $tax_group_sequence = 0; - $items = $this->get_sale_items_for_migration($sale_id)->getResultArray(); + /** + * @param int $sale_id + * @param string $tax_decimals + * @param bool $tax_included + * @return void + */ + private function upgrade_tax_history_for_sale(int $sale_id, string $tax_decimals, bool $tax_included): void //TODO: $tax_included is passed as a parameter but never used in the function body. + { + $customer_sales_tax_support = false; + $tax_type = Migration_TaxAmount::VAT_TAX; + $sales_taxes = []; + $tax_group_sequence = 0; + $items = $this->get_sale_items_for_migration($sale_id)->getResultArray(); - foreach($items as $item) - { - // This computes tax for each line item and adds it to the tax type total - $tax_group = (float)$item['percent'] . '% ' . $item['name']; - $tax_basis = $this->get_item_total($item['quantity_purchased'], $item['item_unit_price'], $item['discount'], true); - $item_tax_amount = $this->get_item_tax($tax_basis, $item['percent'], PHP_ROUND_HALF_UP, $tax_decimals); - $this->update_sales_items_taxes_amount($sale_id, $item['line'], $item['name'], $item['percent'], $tax_type, $item_tax_amount); - $this->update_sales_taxes($sales_taxes, $tax_type, $tax_group, $item['percent'], $tax_basis, $item_tax_amount, $tax_group_sequence, PHP_ROUND_HALF_UP, $sale_id, $item['name']); - $tax_group_sequence += 1; - } + foreach($items as $item) + { + // This computes tax for each line item and adds it to the tax type total + $tax_group = (float)$item['percent'] . '% ' . $item['name']; + $tax_basis = $this->get_item_total($item['quantity_purchased'], $item['item_unit_price'], $item['discount'], true); + $item_tax_amount = $this->get_item_tax($tax_basis, $item['percent'], PHP_ROUND_HALF_UP, $tax_decimals); + $this->update_sales_items_taxes_amount($sale_id, $item['line'], $item['name'], $item['percent'], $tax_type, $item_tax_amount); + $this->update_sales_taxes($sales_taxes, $tax_type, $tax_group, $item['percent'], $tax_basis, $item_tax_amount, $tax_group_sequence, PHP_ROUND_HALF_UP, $sale_id, $item['name']); + $tax_group_sequence += 1; + } - if($customer_sales_tax_support) //TODO: This will always evaluate to false. - { - $this->apply_invoice_taxing($sales_taxes); - } + if($customer_sales_tax_support) //TODO: This will always evaluate to false. + { + $this->apply_invoice_taxing($sales_taxes); + } - $this->round_sales_taxes($sales_taxes); - $this->save_sales_tax($sales_taxes); - } + $this->round_sales_taxes($sales_taxes); + $this->save_sales_tax($sales_taxes); + } - /** - * @param int $block_count - * @return ResultInterface - */ - private function get_unmigrated(int $block_count): ResultInterface - { - $builder = $this->db->table('sales_items_taxes as SIT'); - $builder->select('SIT.sale_id'); - $builder->select('ST.sale_id as sales_taxes_sale_id'); - $builder->join('sales_taxes as ST', 'SIT.sale_id = ST.sale_id', 'left'); - $builder->groupBy('SIT.sale_id'); - $builder->groupBy('ST.sale_id'); - $builder->orderBy('SIT.sale_id'); - $builder->limit($block_count); + /** + * @param int $block_count + * @return ResultInterface + */ + private function get_unmigrated(int $block_count): ResultInterface + { + $builder = $this->db->table('sales_items_taxes as SIT'); + $builder->select('SIT.sale_id'); + $builder->select('ST.sale_id as sales_taxes_sale_id'); + $builder->join('sales_taxes as ST', 'SIT.sale_id = ST.sale_id', 'left'); + $builder->groupBy('SIT.sale_id'); + $builder->groupBy('ST.sale_id'); + $builder->orderBy('SIT.sale_id'); + $builder->limit($block_count); - return $builder->get(); - } + return $builder->get(); + } - /** - * @return int - */ - private function get_count_of_unmigrated(): int - { - $result = $this->db->query('SELECT COUNT(*) FROM(SELECT SIT.sale_id, ST.sale_id as sales_taxes_sale_id FROM ' - . $this->db->prefixTable('sales_items_taxes') - . ' as SIT LEFT JOIN ' - . $this->db->prefixTable('sales_taxes') - . ' as ST ON SIT.sale_id = ST.sale_id GROUP BY SIT.sale_id, ST.sale_id' - . ' ORDER BY SIT.sale_id) as US')->getResultArray(); + /** + * @return int + */ + private function get_count_of_unmigrated(): int + { + $result = $this->db->query('SELECT COUNT(*) FROM(SELECT SIT.sale_id, ST.sale_id as sales_taxes_sale_id FROM ' + . $this->db->prefixTable('sales_items_taxes') + . ' as SIT LEFT JOIN ' + . $this->db->prefixTable('sales_taxes') + . ' as ST ON SIT.sale_id = ST.sale_id GROUP BY SIT.sale_id, ST.sale_id' + . ' ORDER BY SIT.sale_id) as US')->getResultArray(); - if(!$result) - { - error_log('Database error in 20200202000000_taxamount.php related to sales_taxes or sales_items_taxes.'); - return 0; - } + if(!$result) + { + error_log('Database error in 20200202000000_taxamount.php related to sales_taxes or sales_items_taxes.'); + return 0; + } - return $result[0]['COUNT(*)'] ?: 0; - } + return $result[0]['COUNT(*)'] ?: 0; + } - /** - * @param int $sale_id - * @return ResultInterface - */ - private function get_sale_items_for_migration(int $sale_id): ResultInterface - { - $builder = $this->db->table('sales_items as sales_items'); - $builder->select('sales_items.sale_id as sale_id'); - $builder->select('sales_items.line as line'); - $builder->select('item_unit_price'); - $builder->select('discount'); - $builder->select('quantity_purchased'); - $builder->select('percent'); - $builder->select('name'); - $builder->join('sales_items_taxes as sales_items_taxes', 'sales_items.sale_id = sales_items_taxes.sale_id and sales_items.line = sales_items_taxes.line'); - $builder->where('sales_items.sale_id', $sale_id); + /** + * @param int $sale_id + * @return ResultInterface + */ + private function get_sale_items_for_migration(int $sale_id): ResultInterface + { + $builder = $this->db->table('sales_items as sales_items'); + $builder->select('sales_items.sale_id as sale_id'); + $builder->select('sales_items.line as line'); + $builder->select('item_unit_price'); + $builder->select('discount'); + $builder->select('quantity_purchased'); + $builder->select('percent'); + $builder->select('name'); + $builder->join('sales_items_taxes as sales_items_taxes', 'sales_items.sale_id = sales_items_taxes.sale_id and sales_items.line = sales_items_taxes.line'); + $builder->where('sales_items.sale_id', $sale_id); - return $builder->get(); - } + return $builder->get(); + } - /** - * @param int $sale_id - * @param int $line - * @param string $name - * @param float $percent - * @param int $tax_type - * @param float $item_tax_amount - * @return void - */ - private function update_sales_items_taxes_amount(int $sale_id, int $line, string $name, float $percent, int $tax_type, float $item_tax_amount): void - { - $builder = $this->db->table('sales_items_taxes'); - $builder->where('sale_id', $sale_id); - $builder->where('line', $line); - $builder->where('name', $name); - $builder->where('percent', $percent); - $builder->update(['tax_type' => $tax_type, 'item_tax_amount' => $item_tax_amount]); - } + /** + * @param int $sale_id + * @param int $line + * @param string $name + * @param float $percent + * @param int $tax_type + * @param float $item_tax_amount + * @return void + */ + private function update_sales_items_taxes_amount(int $sale_id, int $line, string $name, float $percent, int $tax_type, float $item_tax_amount): void + { + $builder = $this->db->table('sales_items_taxes'); + $builder->where('sale_id', $sale_id); + $builder->where('line', $line); + $builder->where('name', $name); + $builder->where('percent', $percent); + $builder->update(['tax_type' => $tax_type, 'item_tax_amount' => $item_tax_amount]); + } - /** - * @param array $sales_taxes - * @return void - */ - private function save_sales_tax(array &$sales_taxes): void - { - $builder = $this->db->table('sales_taxes'); + /** + * @param array $sales_taxes + * @return void + */ + private function save_sales_tax(array &$sales_taxes): void + { + $builder = $this->db->table('sales_taxes'); - foreach($sales_taxes as $line => $sales_tax) - { - $builder->insert($sales_tax); - } - } + foreach($sales_taxes as $line => $sales_tax) + { + $builder->insert($sales_tax); + } + } - /** - * @param string $quantity - * @param string $price - * @param string $discount - * @param bool $include_discount - * @return string - */ - public function get_item_total(string $quantity, string $price, string $discount, bool $include_discount = false): string - { - $total = bcmul($quantity, $price); + /** + * @param string $quantity + * @param string $price + * @param string $discount + * @param bool $include_discount + * @return string + */ + public function get_item_total(string $quantity, string $price, string $discount, bool $include_discount = false): string + { + $total = bcmul($quantity, $price); - if($include_discount) - { - $total = bcsub($total, bcmul(bcmul($quantity, $price), bcdiv($discount, 100))); - } + if($include_discount) + { + $total = bcsub($total, bcmul(bcmul($quantity, $price), bcdiv($discount, 100))); + } - return $total; - } + return $total; + } - /** - * @param string $tax_basis - * @param string $tax_percentage - * @param int $rounding_mode - * @param int $decimals - * @return float - */ - public function get_item_tax(string $tax_basis, string $tax_percentage, int $rounding_mode, int $decimals): float //TODO: is this currency safe? - { - $tax_fraction = bcdiv(bcadd('100', $tax_percentage), '100'); - $price_tax_excl = bcdiv($tax_basis, $tax_fraction); - $tax_amount = bcsub($tax_basis, $price_tax_excl); + /** + * @param string $tax_basis + * @param string $tax_percentage + * @param int $rounding_mode + * @param int $decimals + * @return float + */ + public function get_item_tax(string $tax_basis, string $tax_percentage, int $rounding_mode, int $decimals): float //TODO: is this currency safe? + { + $tax_fraction = bcdiv(bcadd('100', $tax_percentage), '100'); + $price_tax_excl = bcdiv($tax_basis, $tax_fraction); + $tax_amount = bcsub($tax_basis, $price_tax_excl); - return $this->round_number($rounding_mode, $tax_amount, $decimals); - } + return $this->round_number($rounding_mode, $tax_amount, $decimals); + } - /** - * @param string $tax_basis - * @param string $tax_percentage - * @param int $rounding_mode - * @param int $decimals - * @return float - */ - public function get_sales_tax_for_amount(string $tax_basis, string $tax_percentage, int $rounding_mode, int $decimals): float //TODO: is this currency safe? - { - $tax_fraction = bcdiv($tax_percentage, '100'); - $tax_amount = bcmul($tax_basis, $tax_fraction); + /** + * @param string $tax_basis + * @param string $tax_percentage + * @param int $rounding_mode + * @param int $decimals + * @return float + */ + public function get_sales_tax_for_amount(string $tax_basis, string $tax_percentage, int $rounding_mode, int $decimals): float //TODO: is this currency safe? + { + $tax_fraction = bcdiv($tax_percentage, '100'); + $tax_amount = bcmul($tax_basis, $tax_fraction); - return $this->round_number($rounding_mode, $tax_amount, $decimals); - } + return $this->round_number($rounding_mode, $tax_amount, $decimals); + } - /** - * @param int $rounding_mode - * @param string $amount - * @param int $decimals - * @return float - */ - public function round_number(int $rounding_mode, string $amount, int $decimals): float //TODO: is this currency safe? - {//TODO: This needs to be converted to a switch - if($rounding_mode == Migration_TaxAmount::ROUND_UP) //TODO: === ? - { - $fig = pow(10, $decimals); - $rounded_total = (ceil($fig * $amount) + ceil($fig*$amount - ceil($fig * $amount)))/$fig; - } - elseif($rounding_mode == Migration_TaxAmount::ROUND_DOWN) //TODO: === ? - { - $fig = pow(10, $decimals); - $rounded_total = (floor($fig * $amount) + floor($fig * $amount - floor($fig * $amount)))/$fig; - } - elseif($rounding_mode == Migration_TaxAmount::HALF_FIVE) //TODO: === ? - { - $rounded_total = round($amount / 5) * 5; - } - else - { - $rounded_total = round($amount, $decimals, $rounding_mode); - } + /** + * @param int $rounding_mode + * @param string $amount + * @param int $decimals + * @return float + */ + public function round_number(int $rounding_mode, string $amount, int $decimals): float //TODO: is this currency safe? + {//TODO: This needs to be converted to a switch + if($rounding_mode == Migration_TaxAmount::ROUND_UP) //TODO: === ? + { + $fig = pow(10, $decimals); + $rounded_total = (ceil($fig * $amount) + ceil($fig*$amount - ceil($fig * $amount)))/$fig; + } + elseif($rounding_mode == Migration_TaxAmount::ROUND_DOWN) //TODO: === ? + { + $fig = pow(10, $decimals); + $rounded_total = (floor($fig * $amount) + floor($fig * $amount - floor($fig * $amount)))/$fig; + } + elseif($rounding_mode == Migration_TaxAmount::HALF_FIVE) //TODO: === ? + { + $rounded_total = round($amount / 5) * 5; + } + else + { + $rounded_total = round($amount, $decimals, $rounding_mode); + } - return $rounded_total; - } + return $rounded_total; + } - /** - * @param array $sales_taxes - * @param int $tax_type - * @param string $tax_group - * @param float $tax_rate - * @param string $tax_basis - * @param string $item_tax_amount - * @param int $tax_group_sequence - * @param int $rounding_code - * @param int $sale_id - * @param string $name - * @param string $tax_code - * @return void - */ - public function update_sales_taxes(array &$sales_taxes, int $tax_type, string $tax_group, float $tax_rate, string $tax_basis, string $item_tax_amount, int $tax_group_sequence, int $rounding_code, int $sale_id, string $name = '', string $tax_code = ''): void - { - $tax_group_index = $this->clean('X' . $tax_group); + /** + * @param array $sales_taxes + * @param int $tax_type + * @param string $tax_group + * @param float $tax_rate + * @param string $tax_basis + * @param string $item_tax_amount + * @param int $tax_group_sequence + * @param int $rounding_code + * @param int $sale_id + * @param string $name + * @param string $tax_code + * @return void + */ + public function update_sales_taxes(array &$sales_taxes, int $tax_type, string $tax_group, float $tax_rate, string $tax_basis, string $item_tax_amount, int $tax_group_sequence, int $rounding_code, int $sale_id, string $name = '', string $tax_code = ''): void + { + $tax_group_index = $this->clean('X' . $tax_group); - if(!array_key_exists($tax_group_index, $sales_taxes)) - { - $insertkey = $tax_group_index; - $sales_tax = [ - $insertkey => [ - 'sale_id' => $sale_id, - 'tax_type' => $tax_type, - 'tax_group' => $tax_group, - 'sale_tax_basis' => $tax_basis, - 'sale_tax_amount' => $item_tax_amount, - 'print_sequence' => $tax_group_sequence, - 'name' => $name, - 'tax_rate' => $tax_rate, - 'sales_tax_code_id' => $tax_code, - 'rounding_code' => $rounding_code - ] - ]; + if(!array_key_exists($tax_group_index, $sales_taxes)) + { + $insertkey = $tax_group_index; + $sales_tax = [ + $insertkey => [ + 'sale_id' => $sale_id, + 'tax_type' => $tax_type, + 'tax_group' => $tax_group, + 'sale_tax_basis' => $tax_basis, + 'sale_tax_amount' => $item_tax_amount, + 'print_sequence' => $tax_group_sequence, + 'name' => $name, + 'tax_rate' => $tax_rate, + 'sales_tax_code_id' => $tax_code, + 'rounding_code' => $rounding_code + ] + ]; - //add to existing array - $sales_taxes += $sales_tax; - } - else - { - // Important ... the sales amounts are accumulated for the group at the maximum configurable scale value of 4 - // but the scale will in reality be the scale specified by the tax_decimal configuration value used for sales_items_taxes - $sales_taxes[$tax_group_index]['sale_tax_basis'] = bcadd($sales_taxes[$tax_group_index]['sale_tax_basis'], $tax_basis, 4); - $sales_taxes[$tax_group_index]['sale_tax_amount'] = bcadd($sales_taxes[$tax_group_index]['sale_tax_amount'], $item_tax_amount, 4); - } - } + //add to existing array + $sales_taxes += $sales_tax; + } + else + { + // Important ... the sales amounts are accumulated for the group at the maximum configurable scale value of 4 + // but the scale will in reality be the scale specified by the tax_decimal configuration value used for sales_items_taxes + $sales_taxes[$tax_group_index]['sale_tax_basis'] = bcadd($sales_taxes[$tax_group_index]['sale_tax_basis'], $tax_basis, 4); + $sales_taxes[$tax_group_index]['sale_tax_amount'] = bcadd($sales_taxes[$tax_group_index]['sale_tax_amount'], $item_tax_amount, 4); + } + } - /** - * @param string $string - * @return string - */ - public function clean(string $string): string //TODO: This can probably go into the migration helper as it's used it more than one migration. Also, $string needs to be refactored to a different name. - { - $string = str_replace(' ', '-', $string); // Replaces all spaces with hyphens. + /** + * @param string $string + * @return string + */ + public function clean(string $string): string //TODO: This can probably go into the migration helper as it's used it more than one migration. Also, $string needs to be refactored to a different name. + { + $string = str_replace(' ', '-', $string); // Replaces all spaces with hyphens. - return preg_replace('/[^A-Za-z0-9\-]/', '', $string); // Removes special chars. - } + return preg_replace('/[^A-Za-z0-9\-]/', '', $string); // Removes special chars. + } - /** - * @param array $sales_taxes - * @return void - */ - public function apply_invoice_taxing(array &$sales_taxes): void - { - if(!empty($sales_taxes)) //TODO: Duplicated code - { - $sort = []; - foreach($sales_taxes as $k => $v) - { - $sort['print_sequence'][$k] = $v['print_sequence']; - } - array_multisort($sort['print_sequence'], SORT_ASC, $sales_taxes); - } + /** + * @param array $sales_taxes + * @return void + */ + public function apply_invoice_taxing(array &$sales_taxes): void + { + if(!empty($sales_taxes)) //TODO: Duplicated code + { + $sort = []; + foreach($sales_taxes as $k => $v) + { + $sort['print_sequence'][$k] = $v['print_sequence']; + } + array_multisort($sort['print_sequence'], SORT_ASC, $sales_taxes); + } - $decimals = totals_decimals(); + $decimals = totals_decimals(); - foreach($sales_taxes as $row_number => $sales_tax) - { - $sales_taxes[$row_number]['sale_tax_amount'] = $this->get_sales_tax_for_amount($sales_tax['sale_tax_basis'], $sales_tax['tax_rate'], $sales_tax['rounding_code'], $decimals); - } - } + foreach($sales_taxes as $row_number => $sales_tax) + { + $sales_taxes[$row_number]['sale_tax_amount'] = $this->get_sales_tax_for_amount($sales_tax['sale_tax_basis'], $sales_tax['tax_rate'], $sales_tax['rounding_code'], $decimals); + } + } - /** - * @param array $sales_taxes - * @return void - */ - public function round_sales_taxes(array &$sales_taxes): void - { - if(!empty($sales_taxes)) - { - $sort = []; + /** + * @param array $sales_taxes + * @return void + */ + public function round_sales_taxes(array &$sales_taxes): void + { + if(!empty($sales_taxes)) + { + $sort = []; - foreach($sales_taxes as $k=>$v) - { - $sort['print_sequence'][$k] = $v['print_sequence']; - } + foreach($sales_taxes as $k=>$v) + { + $sort['print_sequence'][$k] = $v['print_sequence']; + } - array_multisort($sort['print_sequence'], SORT_ASC, $sales_taxes); - } + array_multisort($sort['print_sequence'], SORT_ASC, $sales_taxes); + } - $decimals = totals_decimals(); + $decimals = totals_decimals(); - foreach($sales_taxes as $row_number => $sales_tax) - { - $sale_tax_amount = $sales_tax['sale_tax_amount']; - $rounding_code = $sales_tax['rounding_code']; - $rounded_sale_tax_amount = $sale_tax_amount; + foreach($sales_taxes as $row_number => $sales_tax) + { + $sale_tax_amount = $sales_tax['sale_tax_amount']; + $rounding_code = $sales_tax['rounding_code']; + $rounded_sale_tax_amount = $sale_tax_amount; - if ($rounding_code == PHP_ROUND_HALF_UP //TODO: This block of if/elseif statements can be converted to a switch. - || $rounding_code == PHP_ROUND_HALF_DOWN - || $rounding_code == PHP_ROUND_HALF_EVEN - || $rounding_code == PHP_ROUND_HALF_ODD) - { - $rounded_sale_tax_amount = round($sale_tax_amount, $decimals, $rounding_code); - } - elseif($rounding_code == Migration_TaxAmount::ROUND_UP) - { - $fig = (int) str_pad('1', $decimals, '0'); - $rounded_sale_tax_amount = (ceil($sale_tax_amount * $fig) / $fig); - } - elseif($rounding_code == Migration_TaxAmount::ROUND_DOWN) - { - $fig = (int) str_pad('1', $decimals, '0'); - $rounded_sale_tax_amount = (floor($sale_tax_amount * $fig) / $fig); - } - elseif($rounding_code == Migration_TaxAmount::HALF_FIVE) - { - $rounded_sale_tax_amount = round($sale_tax_amount / 5) * 5; - } + if ($rounding_code == PHP_ROUND_HALF_UP //TODO: This block of if/elseif statements can be converted to a switch. + || $rounding_code == PHP_ROUND_HALF_DOWN + || $rounding_code == PHP_ROUND_HALF_EVEN + || $rounding_code == PHP_ROUND_HALF_ODD) + { + $rounded_sale_tax_amount = round($sale_tax_amount, $decimals, $rounding_code); + } + elseif($rounding_code == Migration_TaxAmount::ROUND_UP) + { + $fig = (int) str_pad('1', $decimals, '0'); + $rounded_sale_tax_amount = (ceil($sale_tax_amount * $fig) / $fig); + } + elseif($rounding_code == Migration_TaxAmount::ROUND_DOWN) + { + $fig = (int) str_pad('1', $decimals, '0'); + $rounded_sale_tax_amount = (floor($sale_tax_amount * $fig) / $fig); + } + elseif($rounding_code == Migration_TaxAmount::HALF_FIVE) + { + $rounded_sale_tax_amount = round($sale_tax_amount / 5) * 5; + } - $sales_taxes[$row_number]['sale_tax_amount'] = $rounded_sale_tax_amount; - } - } + $sales_taxes[$row_number]['sale_tax_amount'] = $rounded_sale_tax_amount; + } + } } diff --git a/app/Database/Migrations/20200215100000_taxgroupconstraint.php b/app/Database/Migrations/20200215100000_taxgroupconstraint.php index 8df66cb86..c6544b24c 100644 --- a/app/Database/Migrations/20200215100000_taxgroupconstraint.php +++ b/app/Database/Migrations/20200215100000_taxgroupconstraint.php @@ -6,19 +6,19 @@ use CodeIgniter\Database\Migration; class Migration_taxgroupconstraint extends Migration { - /** - * Perform a migration step. - */ - public function up(): void - { - $this->db->query('ALTER TABLE ' . $this->db->prefixTable('tax_jurisdictions') . ' ADD CONSTRAINT tax_jurisdictions_uq1 UNIQUE (tax_group)'); - } + /** + * Perform a migration step. + */ + public function up(): void + { + $this->db->query('ALTER TABLE ' . $this->db->prefixTable('tax_jurisdictions') . ' ADD CONSTRAINT tax_jurisdictions_uq1 UNIQUE (tax_group)'); + } - /** - * Revert a migration step. - */ - public function down(): void - { - $this->db->query('ALTER TABLE ' . $this->db->prefixTable('tax_jurisdictions') . ' DROP INDEX tax_jurisdictions_uq1'); - } + /** + * Revert a migration step. + */ + public function down(): void + { + $this->db->query('ALTER TABLE ' . $this->db->prefixTable('tax_jurisdictions') . ' DROP INDEX tax_jurisdictions_uq1'); + } } diff --git a/app/Database/Migrations/20200508000000_image_upload_defaults.php b/app/Database/Migrations/20200508000000_image_upload_defaults.php index 7872b0c73..cc0a23c6d 100644 --- a/app/Database/Migrations/20200508000000_image_upload_defaults.php +++ b/app/Database/Migrations/20200508000000_image_upload_defaults.php @@ -6,29 +6,29 @@ use CodeIgniter\Database\Migration; class Migration_image_upload_defaults extends Migration { - /** - * Perform a migration step. - */ - public function up(): void - { - $image_values = [ - ['key' => 'image_allowed_types', 'value' => 'gif|jpg|png'], - ['key' => 'image_max_height', 'value' => '480'], - ['key' => 'image_max_size', 'value' => '128'], - ['key' => 'image_max_width', 'value' => '640'] - ]; + /** + * Perform a migration step. + */ + public function up(): void + { + $image_values = [ + ['key' => 'image_allowed_types', 'value' => 'gif|jpg|png'], + ['key' => 'image_max_height', 'value' => '480'], + ['key' => 'image_max_size', 'value' => '128'], + ['key' => 'image_max_width', 'value' => '640'] + ]; - $builder = $this->db->table('app_config'); - $builder->insertBatch($image_values); - } + $builder = $this->db->table('app_config'); + $builder->insertBatch($image_values); + } - /** - * Revert a migration step. - */ - public function down(): void - { - $builder = $this->db->table('app_config'); - $builder->whereIn('key', ['image_allowed_types','image_max_height','image_max_size','image_max_width']); - $builder->delete(); - } + /** + * Revert a migration step. + */ + public function down(): void + { + $builder = $this->db->table('app_config'); + $builder->whereIn('key', ['image_allowed_types','image_max_height','image_max_size','image_max_width']); + $builder->delete(); + } } diff --git a/app/Database/Migrations/20200819000000_modify_attr_links_constraint.php b/app/Database/Migrations/20200819000000_modify_attr_links_constraint.php index 624000238..a0c5caa16 100644 --- a/app/Database/Migrations/20200819000000_modify_attr_links_constraint.php +++ b/app/Database/Migrations/20200819000000_modify_attr_links_constraint.php @@ -6,23 +6,23 @@ use CodeIgniter\Database\Migration; class Migration_modify_attr_links_constraint extends Migration { - /** - * Perform a migration step. - */ - public function up(): void - { - error_log('Migrating modify_attr_links_constraint'); + /** + * Perform a migration step. + */ + public function up(): void + { + error_log('Migrating modify_attr_links_constraint'); - helper('migration'); - execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.3.2_modify_attr_links_constraint.sql'); + helper('migration'); + execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.3.2_modify_attr_links_constraint.sql'); - error_log('Migrating modify_attr_links_constraint'); - } + error_log('Migrating modify_attr_links_constraint'); + } - /** - * Revert a migration step. - */ - public function down(): void - { - } + /** + * Revert a migration step. + */ + public function down(): void + { + } } diff --git a/app/Database/Migrations/20201108100000_cashrounding.php b/app/Database/Migrations/20201108100000_cashrounding.php index b1c40b76f..a6a73f591 100644 --- a/app/Database/Migrations/20201108100000_cashrounding.php +++ b/app/Database/Migrations/20201108100000_cashrounding.php @@ -6,19 +6,19 @@ use CodeIgniter\Database\Migration; class Migration_cashrounding extends Migration { - /** - * Perform a migration step. - */ - public function up(): void - { - $this->db->query('ALTER TABLE ' . $this->db->prefixTable('sales_payments') . ' ADD COLUMN `cash_adjustment` tinyint NOT NULL DEFAULT 0 AFTER `cash_refund`'); - } + /** + * Perform a migration step. + */ + public function up(): void + { + $this->db->query('ALTER TABLE ' . $this->db->prefixTable('sales_payments') . ' ADD COLUMN `cash_adjustment` tinyint NOT NULL DEFAULT 0 AFTER `cash_refund`'); + } - /** - * Revert a migration step. - */ - public function down(): void - { - $this->db->query('ALTER TABLE ' . $this->db->prefixTable('sales_payments') . ' DROP COLUMN `cash_adjustment`'); - } + /** + * Revert a migration step. + */ + public function down(): void + { + $this->db->query('ALTER TABLE ' . $this->db->prefixTable('sales_payments') . ' DROP COLUMN `cash_adjustment`'); + } } diff --git a/app/Database/Migrations/20201110000000_add_item_kit_number.php b/app/Database/Migrations/20201110000000_add_item_kit_number.php index 636df0add..1e0ea3807 100644 --- a/app/Database/Migrations/20201110000000_add_item_kit_number.php +++ b/app/Database/Migrations/20201110000000_add_item_kit_number.php @@ -6,23 +6,23 @@ use CodeIgniter\Database\Migration; class Migration_add_item_kit_number extends Migration { - /** - * Perform a migration step. - */ - public function up(): void - { - error_log('Migrating add_item_kit_number'); + /** + * Perform a migration step. + */ + public function up(): void + { + error_log('Migrating add_item_kit_number'); - helper('migration'); - execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.3.3_add_kits_item_number.sql'); + helper('migration'); + execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.3.3_add_kits_item_number.sql'); - error_log('Migrating add_item_kit_number'); - } + error_log('Migrating add_item_kit_number'); + } - /** - * Revert a migration step. - */ - public function down(): void - { - } + /** + * Revert a migration step. + */ + public function down(): void + { + } } diff --git a/app/Database/Migrations/20210103000000_modify_session_datatype.php b/app/Database/Migrations/20210103000000_modify_session_datatype.php index e0af15fff..671e14104 100644 --- a/app/Database/Migrations/20210103000000_modify_session_datatype.php +++ b/app/Database/Migrations/20210103000000_modify_session_datatype.php @@ -6,23 +6,23 @@ use CodeIgniter\Database\Migration; class Migration_modify_session_datatype extends Migration { - /** - * Perform a migration step. - */ - public function up(): void - { - error_log('Migrating modify_session_datatype'); + /** + * Perform a migration step. + */ + public function up(): void + { + error_log('Migrating modify_session_datatype'); - helper('migration'); - execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.3.4_modify_session_datatype.sql'); + helper('migration'); + execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.3.4_modify_session_datatype.sql'); - error_log('Migrating modify_session_datatype'); - } + error_log('Migrating modify_session_datatype'); + } - /** - * Revert a migration step. - */ - public function down(): void - { - } + /** + * Revert a migration step. + */ + public function down(): void + { + } } diff --git a/app/Database/Migrations/20210422000000_database_optimizations.php b/app/Database/Migrations/20210422000000_database_optimizations.php index 52587e3f6..b3009e563 100644 --- a/app/Database/Migrations/20210422000000_database_optimizations.php +++ b/app/Database/Migrations/20210422000000_database_optimizations.php @@ -11,150 +11,150 @@ use DateTime; class Migration_database_optimizations extends Migration { - /** - * Perform a migration step. - */ - public function up(): void - { - error_log('Migrating database_optimizations'); + /** + * Perform a migration step. + */ + public function up(): void + { + error_log('Migrating database_optimizations'); - $attribute = model(Attribute::class); + $attribute = model(Attribute::class); - $attribute->delete_orphaned_values(); + $attribute->delete_orphaned_values(); - $this->migrate_duplicate_attribute_values(DECIMAL); - $this->migrate_duplicate_attribute_values(DATE); + $this->migrate_duplicate_attribute_values(DECIMAL); + $this->migrate_duplicate_attribute_values(DATE); - //Select all attributes that have data in more than one column - $builder = $this->db->table('attribute_values'); - $builder->select('attribute_id, attribute_value, attribute_decimal, attribute_date'); - $builder->groupStart(); - $builder->where('attribute_value IS NOT NULL'); - $builder->where('attribute_date IS NOT NULL'); - $builder->groupEnd(); - $builder->orGroupStart(); - $builder->where('attribute_value IS NOT NULL'); - $builder->where('attribute_decimal IS NOT NULL'); - $builder->groupEnd(); - $attribute_values = $builder->get(); + //Select all attributes that have data in more than one column + $builder = $this->db->table('attribute_values'); + $builder->select('attribute_id, attribute_value, attribute_decimal, attribute_date'); + $builder->groupStart(); + $builder->where('attribute_value IS NOT NULL'); + $builder->where('attribute_date IS NOT NULL'); + $builder->groupEnd(); + $builder->orGroupStart(); + $builder->where('attribute_value IS NOT NULL'); + $builder->where('attribute_decimal IS NOT NULL'); + $builder->groupEnd(); + $attribute_values = $builder->get(); - $this->db->transStart(); + $this->db->transStart(); - //Clean up Attribute values table where there is an attribute value and an attribute_date/attribute_decimal - foreach($attribute_values->getResultArray() as $attribute_value) - { - $builder = $this->db->table('attribute_values'); - $builder->delete(['attribute_id' => $attribute_value['attribute_id']]); + //Clean up Attribute values table where there is an attribute value and an attribute_date/attribute_decimal + foreach($attribute_values->getResultArray() as $attribute_value) + { + $builder = $this->db->table('attribute_values'); + $builder->delete(['attribute_id' => $attribute_value['attribute_id']]); - $builder = $this->db->table('attribute_links'); - $builder->select('links.definition_id, links.item_id, links.attribute_id, defs.definition_type'); - $builder->join('attribute_definitions defs', 'defs.definition_id = links.definition_id'); - $builder->where('attribute_id', $attribute_value['attribute_id']); - $attribute_links = $builder->get(); + $builder = $this->db->table('attribute_links'); + $builder->select('links.definition_id, links.item_id, links.attribute_id, defs.definition_type'); + $builder->join('attribute_definitions defs', 'defs.definition_id = links.definition_id'); + $builder->where('attribute_id', $attribute_value['attribute_id']); + $attribute_links = $builder->get(); - if($attribute_links) - { - $builder = $this->db->table('attribute_links'); - $attribute_links = $attribute_links->getResultArray() ?: []; + if($attribute_links) + { + $builder = $this->db->table('attribute_links'); + $attribute_links = $attribute_links->getResultArray() ?: []; - foreach($attribute_links->getResultArray() as $attribute_link) - { - $builder->where('attribute_id', $attribute_link['attribute_id']); - $builder->where('item_id', $attribute_link['item_id']); - $builder->delete(); + foreach($attribute_links->getResultArray() as $attribute_link) + { + $builder->where('attribute_id', $attribute_link['attribute_id']); + $builder->where('item_id', $attribute_link['item_id']); + $builder->delete(); - switch($attribute_link['definition_type']) - { - case DECIMAL: - $value = $attribute_value['attribute_decimal']; - break; - case DATE: - $config = config(OSPOS::class)->settings; - $attribute_date = DateTime::createFromFormat('Y-m-d', $attribute_value['attribute_date']); - $value = $attribute_date->format($config['dateformat']); - break; - default: - $value = $attribute_value['attribute_value']; - break; - } + switch($attribute_link['definition_type']) + { + case DECIMAL: + $value = $attribute_value['attribute_decimal']; + break; + case DATE: + $config = config(OSPOS::class)->settings; + $attribute_date = DateTime::createFromFormat('Y-m-d', $attribute_value['attribute_date']); + $value = $attribute_date->format($config['dateformat']); + break; + default: + $value = $attribute_value['attribute_value']; + break; + } - $attribute->saveAttributeValue($value, $attribute_link['definition_id'], $attribute_link['item_id'], false, $attribute_link['definition_type']); - } - } - } - $this->db->transComplete(); + $attribute->saveAttributeValue($value, $attribute_link['definition_id'], $attribute_link['item_id'], false, $attribute_link['definition_type']); + } + } + } + $this->db->transComplete(); - helper('migration'); - execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.4.0_database_optimizations.sql'); - error_log('Migrating database_optimizations completed'); - } + helper('migration'); + execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.4.0_database_optimizations.sql'); + error_log('Migrating database_optimizations completed'); + } - /** - * Given the type of attribute, deletes any duplicates it finds in the attribute_values table and reassigns those - */ - private function migrate_duplicate_attribute_values($attribute_type): void - { - //Remove duplicate attribute values needed to make attribute_decimals and attribute_dates unique - $this->db->transStart(); + /** + * Given the type of attribute, deletes any duplicates it finds in the attribute_values table and reassigns those + */ + private function migrate_duplicate_attribute_values($attribute_type): void + { + //Remove duplicate attribute values needed to make attribute_decimals and attribute_dates unique + $this->db->transStart(); - $column = 'attribute_' . strtolower($attribute_type); + $column = 'attribute_' . strtolower($attribute_type); - $builder = $this->db->table('attribute_values'); - $builder->select("$column"); - $builder->groupBy($column); - $builder->having("COUNT($column) > 1"); - $duplicated_values = $builder->get(); + $builder = $this->db->table('attribute_values'); + $builder->select("$column"); + $builder->groupBy($column); + $builder->having("COUNT($column) > 1"); + $duplicated_values = $builder->get(); - foreach($duplicated_values->getResultArray() as $duplicated_value) - { - $subquery_builder = $this->db->table('attribute_values'); - $subquery_builder->select('attribute_id'); - $subquery_builder->where($column, $duplicated_value[$column]); - $subquery = $subquery_builder->getCompiledSelect(); + foreach($duplicated_values->getResultArray() as $duplicated_value) + { + $subquery_builder = $this->db->table('attribute_values'); + $subquery_builder->select('attribute_id'); + $subquery_builder->where($column, $duplicated_value[$column]); + $subquery = $subquery_builder->getCompiledSelect(); - $builder = $this->db->table('attribute_values'); - $builder->select('attribute_id'); - $builder->where($column, $duplicated_value[$column]); - $builder->where("attribute_id IN ($subquery)", null, false); - $attribute_ids_to_fix = $builder->get(); + $builder = $this->db->table('attribute_values'); + $builder->select('attribute_id'); + $builder->where($column, $duplicated_value[$column]); + $builder->where("attribute_id IN ($subquery)", null, false); + $attribute_ids_to_fix = $builder->get(); - $this->reassign_duplicate_attribute_values($attribute_ids_to_fix, $duplicated_value); - } + $this->reassign_duplicate_attribute_values($attribute_ids_to_fix, $duplicated_value); + } - $this->db->transComplete(); - } + $this->db->transComplete(); + } - /** - * Updates the attribute_id in all attribute_link rows with duplicated attribute_ids then deletes unneeded rows from attribute_values - * - * @param ResultInterface $attribute_ids_to_fix All attribute_ids that need to parsed - * @param array $attribute_value The attribute value in question. - */ - private function reassign_duplicate_attribute_values(ResultInterface $attribute_ids_to_fix, array $attribute_value): void - { - $attribute_ids = $attribute_ids_to_fix->getResultArray(); - $retain_attribute_id = $attribute_ids[0]['attribute_id']; + /** + * Updates the attribute_id in all attribute_link rows with duplicated attribute_ids then deletes unneeded rows from attribute_values + * + * @param ResultInterface $attribute_ids_to_fix All attribute_ids that need to parsed + * @param array $attribute_value The attribute value in question. + */ + private function reassign_duplicate_attribute_values(ResultInterface $attribute_ids_to_fix, array $attribute_value): void + { + $attribute_ids = $attribute_ids_to_fix->getResultArray(); + $retain_attribute_id = $attribute_ids[0]['attribute_id']; - foreach($attribute_ids as $attribute_id) - { - //Update attribute_link with the attribute_id we are keeping - $builder = $this->db->table('attribute_links'); - $builder->where('attribute_id', $attribute_id['attribute_id']); - $builder->update(['attribute_id' => $retain_attribute_id]); + foreach($attribute_ids as $attribute_id) + { + //Update attribute_link with the attribute_id we are keeping + $builder = $this->db->table('attribute_links'); + $builder->where('attribute_id', $attribute_id['attribute_id']); + $builder->update(['attribute_id' => $retain_attribute_id]); - //Delete the row from attribute_values if it isn't our keeper - if($attribute_id['attribute_id'] !== $retain_attribute_id) - { - $builder = $this->db->table('attribute_values'); - $builder->delete(['attribute_id' => $attribute_id['attribute_id']]); - } - } - } + //Delete the row from attribute_values if it isn't our keeper + if($attribute_id['attribute_id'] !== $retain_attribute_id) + { + $builder = $this->db->table('attribute_values'); + $builder->delete(['attribute_id' => $attribute_id['attribute_id']]); + } + } + } - /** - * Revert a migration step. - */ - public function down(): void - { - } + /** + * Revert a migration step. + */ + public function down(): void + { + } } diff --git a/app/Database/Migrations/20210422000001_remove_duplicate_links.php b/app/Database/Migrations/20210422000001_remove_duplicate_links.php index 505f2b094..1375b64d5 100644 --- a/app/Database/Migrations/20210422000001_remove_duplicate_links.php +++ b/app/Database/Migrations/20210422000001_remove_duplicate_links.php @@ -7,60 +7,60 @@ use App\Models\Attribute; class Migration_remove_duplicate_links extends Migration { - /** - * Perform a migration step. - */ - public function up(): void - { - error_log('Migrating remove_duplicate_links'); + /** + * Perform a migration step. + */ + public function up(): void + { + error_log('Migrating remove_duplicate_links'); - $this->migrate_duplicate_attribute_links(); + $this->migrate_duplicate_attribute_links(); - error_log('Migrating remove_duplicate_links completed'); - } + error_log('Migrating remove_duplicate_links completed'); + } - /** - * Given the type of attribute, deletes any duplicates it finds in the attribute_values table and reassigns those - * - * @property attribute $attribute - */ - private function migrate_duplicate_attribute_links(): void - { - $attribute = model(Attribute::class); + /** + * Given the type of attribute, deletes any duplicates it finds in the attribute_values table and reassigns those + * + * @property attribute $attribute + */ + private function migrate_duplicate_attribute_links(): void + { + $attribute = model(Attribute::class); - //Remove duplicate attribute links - $this->db->transStart(); + //Remove duplicate attribute links + $this->db->transStart(); - $builder = $this->db->table('attribute_links'); - $builder->select('item_id, definition_id, attribute_id, COUNT(*) as count'); - $builder->where('sale_id', null); - $builder->where('receiving_id', null); - $builder->groupBy('item_id'); - $builder->groupBy('definition_id'); - $builder->groupBy('attribute_id'); - $builder->having('count > 1'); - $duplicated_links = $builder->get(); + $builder = $this->db->table('attribute_links'); + $builder->select('item_id, definition_id, attribute_id, COUNT(*) as count'); + $builder->where('sale_id', null); + $builder->where('receiving_id', null); + $builder->groupBy('item_id'); + $builder->groupBy('definition_id'); + $builder->groupBy('attribute_id'); + $builder->having('count > 1'); + $duplicated_links = $builder->get(); - $builder = $this->db->table('attribute_links'); + $builder = $this->db->table('attribute_links'); - foreach($duplicated_links->getResultArray() as $duplicated_link) - { - $builder->where('sale_id', null); - $builder->where('receiving_id', null); - $builder->where('item_id', $duplicated_link['item_id']); - $builder->where('definition_id', $duplicated_link['definition_id']); - $builder->delete(); + foreach($duplicated_links->getResultArray() as $duplicated_link) + { + $builder->where('sale_id', null); + $builder->where('receiving_id', null); + $builder->where('item_id', $duplicated_link['item_id']); + $builder->where('definition_id', $duplicated_link['definition_id']); + $builder->delete(); - $attribute->saveAttributeLink($duplicated_link['item_id'], $duplicated_link['definition_id'], $duplicated_link['attribute_id']); - } + $attribute->saveAttributeLink($duplicated_link['item_id'], $duplicated_link['definition_id'], $duplicated_link['attribute_id']); + } - $this->db->transComplete(); - } + $this->db->transComplete(); + } - /** - * Revert a migration step. - */ - public function down(): void - { - } + /** + * Revert a migration step. + */ + public function down(): void + { + } } diff --git a/app/Database/Migrations/20210714140000_move_expenses_categories.php b/app/Database/Migrations/20210714140000_move_expenses_categories.php index 71a871d67..1f6ba5539 100644 --- a/app/Database/Migrations/20210714140000_move_expenses_categories.php +++ b/app/Database/Migrations/20210714140000_move_expenses_categories.php @@ -6,23 +6,23 @@ use CodeIgniter\Database\Migration; class Migration_move_expenses_categories extends Migration { - /** - * Perform a migration step. - */ - public function up(): void - { - error_log('Migrating expense categories module'); + /** + * Perform a migration step. + */ + public function up(): void + { + error_log('Migrating expense categories module'); - $this->db->simpleQuery("UPDATE ospos_grants SET menu_group = 'office' WHERE permission_id = 'expenses_categories'"); + $this->db->simpleQuery("UPDATE ospos_grants SET menu_group = 'office' WHERE permission_id = 'expenses_categories'"); - error_log('Migrating expense categories module completed'); - } + error_log('Migrating expense categories module completed'); + } - /** - * Revert a migration step. - */ - public function down(): void - { + /** + * Revert a migration step. + */ + public function down(): void + { - } + } } diff --git a/app/Database/Migrations/20220127000000_convert_to_ci4.php b/app/Database/Migrations/20220127000000_convert_to_ci4.php index cef3a6dc3..e128071c4 100644 --- a/app/Database/Migrations/20220127000000_convert_to_ci4.php +++ b/app/Database/Migrations/20220127000000_convert_to_ci4.php @@ -13,153 +13,153 @@ use ReflectionException; class Convert_to_ci4 extends Migration { - /** - * Constructor. - */ - public function __construct(?Forge $forge = null) - { - parent::__construct($forge); - helper('security'); - } + /** + * Constructor. + */ + public function __construct(?Forge $forge = null) + { + parent::__construct($forge); + helper('security'); + } - /** - * Perform a migration step. - */ - public function up(): void - { - error_log('Migrating database to CodeIgniter4 formats'); + /** + * Perform a migration step. + */ + public function up(): void + { + error_log('Migrating database to CodeIgniter4 formats'); - helper('migration'); - execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.4.0_ci4_conversion.sql'); + helper('migration'); + execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.4.0_ci4_conversion.sql'); - if(!empty(config('Encryption')->key)) - { - $this->convert_ci3_encrypted_data(); - } - else - { - check_encryption(); - } + if(!empty(config('Encryption')->key)) + { + $this->convert_ci3_encrypted_data(); + } + else + { + check_encryption(); + } - remove_backup(); + remove_backup(); - error_log('Migrating to CodeIgniter4 formats completed'); - } + error_log('Migrating to CodeIgniter4 formats completed'); + } - /** - * Revert a migration step. - */ - public function down(): void - { + /** + * Revert a migration step. + */ + public function down(): void + { - } + } - /** - * @return RedirectResponse|void - * @throws ReflectionException - */ - private function convert_ci3_encrypted_data() - { - $appconfig = model(Appconfig::class); + /** + * @return RedirectResponse|void + * @throws ReflectionException + */ + private function convert_ci3_encrypted_data() + { + $appconfig = model(Appconfig::class); - $ci3_encrypted_data = [ - 'clcdesq_api_key' => '', - 'clcdesq_api_url' => '', - 'mailchimp_api_key' => '', - 'mailchimp_list_id' => '', - 'smtp_pass' => '' - ]; + $ci3_encrypted_data = [ + 'clcdesq_api_key' => '', + 'clcdesq_api_url' => '', + 'mailchimp_api_key' => '', + 'mailchimp_list_id' => '', + 'smtp_pass' => '' + ]; - foreach($ci3_encrypted_data as $key => $value) - { - $ci3_encrypted_data[$key] = $appconfig->get_value($key); - } + foreach($ci3_encrypted_data as $key => $value) + { + $ci3_encrypted_data[$key] = $appconfig->get_value($key); + } - $decrypted_data = $this->decrypt_ci3_data($ci3_encrypted_data); + $decrypted_data = $this->decrypt_ci3_data($ci3_encrypted_data); - check_encryption(); + check_encryption(); - try - { - $ci4_encrypted_data = $this->encrypt_data($decrypted_data); + try + { + $ci4_encrypted_data = $this->encrypt_data($decrypted_data); - $success = empty(array_diff_assoc($decrypted_data, $this->decrypt_data($ci4_encrypted_data))); - if(!$success) - { - abort_encryption_conversion(); - remove_backup(); - throw new RedirectException('login'); - } + $success = empty(array_diff_assoc($decrypted_data, $this->decrypt_data($ci4_encrypted_data))); + if(!$success) + { + abort_encryption_conversion(); + remove_backup(); + throw new RedirectException('login'); + } - $appconfig->batch_save($ci4_encrypted_data); - } catch(RedirectException $e) - { - return redirect()->to('login'); //TODO: Need to figure out how to pass the error to the Login controller so that it gets displayed. - } - } + $appconfig->batch_save($ci4_encrypted_data); + } catch(RedirectException $e) + { + return redirect()->to('login'); //TODO: Need to figure out how to pass the error to the Login controller so that it gets displayed. + } + } - /** - * Decrypts CI3 encrypted data and returns the plaintext values. - * - * @param array $encrypted_data Data encrypted using CI3 methodology. - * @return array Plaintext, unencrypted data. - */ - private function decrypt_ci3_data(array $encrypted_data): array - { - $config = new Encryption(); - $config->driver = 'OpenSSL'; - $config->key = config('Encryption')->key; - $config->cipher = 'AES-128-CBC'; - $config->rawData = false; - $config->encryptKeyInfo = 'encryption'; - $config->authKeyInfo = 'authentication'; + /** + * Decrypts CI3 encrypted data and returns the plaintext values. + * + * @param array $encrypted_data Data encrypted using CI3 methodology. + * @return array Plaintext, unencrypted data. + */ + private function decrypt_ci3_data(array $encrypted_data): array + { + $config = new Encryption(); + $config->driver = 'OpenSSL'; + $config->key = config('Encryption')->key; + $config->cipher = 'AES-128-CBC'; + $config->rawData = false; + $config->encryptKeyInfo = 'encryption'; + $config->authKeyInfo = 'authentication'; - $encrypter = Services::encrypter($config); + $encrypter = Services::encrypter($config); - $decrypted_data = []; - foreach($encrypted_data as $key => $value) - { - $decrypted_data[$key] = !empty($value) ? $encrypter->decrypt($value): ''; - } + $decrypted_data = []; + foreach($encrypted_data as $key => $value) + { + $decrypted_data[$key] = !empty($value) ? $encrypter->decrypt($value): ''; + } - return $decrypted_data; - } + return $decrypted_data; + } - /** - * Encrypts data using CI4 algorithms. - * - * @param array $plain_data Data to be encrypted. - * @return array Encrypted data. - */ - private function encrypt_data(array $plain_data): array - { - $encrypter = Services::encrypter(); + /** + * Encrypts data using CI4 algorithms. + * + * @param array $plain_data Data to be encrypted. + * @return array Encrypted data. + */ + private function encrypt_data(array $plain_data): array + { + $encrypter = Services::encrypter(); - $encrypted_data = []; - foreach($plain_data as $key => $value) - { - $encrypted_data[$key] = !empty($value) ? $encrypter->encrypt($value) : ''; - } + $encrypted_data = []; + foreach($plain_data as $key => $value) + { + $encrypted_data[$key] = !empty($value) ? $encrypter->encrypt($value) : ''; + } - return $encrypted_data; - } + return $encrypted_data; + } - /** - * Decrypts data using CI4 algorithms. - * - * @param array $encrypted_data Data to be decrypted. - * @return array Decrypted data. - */ - private function decrypt_data(array $encrypted_data): array - { - $encrypter = Services::encrypter(); + /** + * Decrypts data using CI4 algorithms. + * + * @param array $encrypted_data Data to be decrypted. + * @return array Decrypted data. + */ + private function decrypt_data(array $encrypted_data): array + { + $encrypter = Services::encrypter(); - $decrypted_data = []; - foreach($encrypted_data as $key => $value) - { - $decrypted_data[$key] = !empty($value) ? $encrypter->decrypt($value) : ''; - } + $decrypted_data = []; + foreach($encrypted_data as $key => $value) + { + $decrypted_data[$key] = !empty($value) ? $encrypter->decrypt($value) : ''; + } - return $decrypted_data; - } + return $decrypted_data; + } } diff --git a/app/Database/Migrations/20230307000000_int_to_tinyint.php b/app/Database/Migrations/20230307000000_int_to_tinyint.php index 8a73533ad..3294bd12e 100644 --- a/app/Database/Migrations/20230307000000_int_to_tinyint.php +++ b/app/Database/Migrations/20230307000000_int_to_tinyint.php @@ -6,22 +6,22 @@ use CodeIgniter\Database\Migration; class IntToTinyint extends Migration { - /** - * Perform a migration step. - */ - public function up(): void - { - $this->db->query('ALTER TABLE ' . $this->db->prefixTable('customers') . ' MODIFY `consent` tinyint NOT NULL DEFAULT 0'); - $this->db->query('ALTER TABLE ' . $this->db->prefixTable('cash_up') . ' MODIFY `note` tinyint NOT NULL DEFAULT 0'); - } + /** + * Perform a migration step. + */ + public function up(): void + { + $this->db->query('ALTER TABLE ' . $this->db->prefixTable('customers') . ' MODIFY `consent` tinyint NOT NULL DEFAULT 0'); + $this->db->query('ALTER TABLE ' . $this->db->prefixTable('cash_up') . ' MODIFY `note` tinyint NOT NULL DEFAULT 0'); + } - /** - * Revert a migration step. - */ - public function down(): void - { - $this->db->query('ALTER TABLE ' . $this->db->prefixTable('customers') . ' MODIFY `consent` int NOT NULL DEFAULT 0'); - $this->db->query('ALTER TABLE ' . $this->db->prefixTable('cash_up') . ' MODIFY `note` int NOT NULL DEFAULT 0'); + /** + * Revert a migration step. + */ + public function down(): void + { + $this->db->query('ALTER TABLE ' . $this->db->prefixTable('customers') . ' MODIFY `consent` int NOT NULL DEFAULT 0'); + $this->db->query('ALTER TABLE ' . $this->db->prefixTable('cash_up') . ' MODIFY `note` int NOT NULL DEFAULT 0'); - } + } } diff --git a/app/Database/Migrations/20230412000000_add_missing_config.php b/app/Database/Migrations/20230412000000_add_missing_config.php index 0c318abf9..08d293d47 100644 --- a/app/Database/Migrations/20230412000000_add_missing_config.php +++ b/app/Database/Migrations/20230412000000_add_missing_config.php @@ -6,30 +6,30 @@ use CodeIgniter\Database\Migration; class Migration_add_missing_config extends Migration { - /** - * Perform a migration step. - */ - public function up(): void - { - $image_values = [ - ['key' => 'account_number', 'value' => ''], // This has no current maintenance, but it's used in Sales - ['key' => 'category_dropdown', 'value' => ''], - ['key' => 'smtp_host', 'value' => ''], - ['key' => 'smtp_user', 'value' => ''], - ['key' => 'smtp_pass', 'value' => ''], - ['key' => 'login_form', 'value' => ''], - ['key' => 'receiving_calculate_average_price', 'value' => ''], - ['key' => 'payment_message', 'value' => ''] - ]; + /** + * Perform a migration step. + */ + public function up(): void + { + $image_values = [ + ['key' => 'account_number', 'value' => ''], // This has no current maintenance, but it's used in Sales + ['key' => 'category_dropdown', 'value' => ''], + ['key' => 'smtp_host', 'value' => ''], + ['key' => 'smtp_user', 'value' => ''], + ['key' => 'smtp_pass', 'value' => ''], + ['key' => 'login_form', 'value' => ''], + ['key' => 'receiving_calculate_average_price', 'value' => ''], + ['key' => 'payment_message', 'value' => ''] + ]; - $this->db->table('app_config')->ignore(true)->insertBatch($image_values); - } + $this->db->table('app_config')->ignore(true)->insertBatch($image_values); + } - /** - * Revert a migration step. - */ - public function down(): void - { - // no need to remove necessary config values. - } + /** + * Revert a migration step. + */ + public function down(): void + { + // no need to remove necessary config values. + } } diff --git a/app/Database/Migrations/20230412000001_drop_account_number_index.php b/app/Database/Migrations/20230412000001_drop_account_number_index.php index 79e107418..fe84c73bd 100644 --- a/app/Database/Migrations/20230412000001_drop_account_number_index.php +++ b/app/Database/Migrations/20230412000001_drop_account_number_index.php @@ -6,21 +6,21 @@ use CodeIgniter\Database\Migration; class Migration_drop_account_number_index extends Migration { - /** - * Perform a migration step. - */ - public function up(): void - { - $this->db->query('ALTER TABLE ' . $this->db->prefixTable('customers') . ' DROP INDEX account_number'); - $this->db->query('ALTER TABLE ' . $this->db->prefixTable('customers') . ' ADD INDEX account_number (account_number)'); - } + /** + * Perform a migration step. + */ + public function up(): void + { + $this->db->query('ALTER TABLE ' . $this->db->prefixTable('customers') . ' DROP INDEX account_number'); + $this->db->query('ALTER TABLE ' . $this->db->prefixTable('customers') . ' ADD INDEX account_number (account_number)'); + } - /** - * Revert a migration step. - */ - public function down(): void - { - $this->db->query('ALTER TABLE ' . $this->db->prefixTable('customers') . ' DROP INDEX account_number'); - $this->db->query('ALTER TABLE ' . $this->db->prefixTable('customers') . ' ADD UNIQUE account_number (account_number)'); - } + /** + * Revert a migration step. + */ + public function down(): void + { + $this->db->query('ALTER TABLE ' . $this->db->prefixTable('customers') . ' DROP INDEX account_number'); + $this->db->query('ALTER TABLE ' . $this->db->prefixTable('customers') . ' ADD UNIQUE account_number (account_number)'); + } } diff --git a/app/Database/Migrations/20240319000000_Migration_Convert_Barcode_Types.php b/app/Database/Migrations/20240319000000_Migration_Convert_Barcode_Types.php index f05d83c58..e8eb5510f 100644 --- a/app/Database/Migrations/20240319000000_Migration_Convert_Barcode_Types.php +++ b/app/Database/Migrations/20240319000000_Migration_Convert_Barcode_Types.php @@ -9,69 +9,69 @@ use Config\OSPOS; class Migration_Convert_Barcode_Types extends Migration { - private Appconfig $appconfig; - private array $config; + private Appconfig $appconfig; + private array $config; - public function __construct(?Forge $forge = null) - { - $this->appconfig = model(Appconfig::class); - $this->config = config(OSPOS::class)->settings; + public function __construct(?Forge $forge = null) + { + $this->appconfig = model(Appconfig::class); + $this->config = config(OSPOS::class)->settings; - parent::__construct($forge); - } + parent::__construct($forge); + } - /** - * Perform a migration step. - */ - public function up(): void - { + /** + * Perform a migration step. + */ + public function up(): void + { - $old_barcode_type = $this->config['barcode_type']; + $old_barcode_type = $this->config['barcode_type']; - switch($old_barcode_type) - { - case 'Code39': - $new_barcode_type = 'C39'; - break; - case 'Ean13': - $new_barcode_type = 'EAN13'; - break; - case 'Ean8': - $new_barcode_type = 'EAN8'; - break; - default: - case 'Code128': - $new_barcode_type = 'C128'; - break; - } + switch($old_barcode_type) + { + case 'Code39': + $new_barcode_type = 'C39'; + break; + case 'Ean13': + $new_barcode_type = 'EAN13'; + break; + case 'Ean8': + $new_barcode_type = 'EAN8'; + break; + default: + case 'Code128': + $new_barcode_type = 'C128'; + break; + } - $this->appconfig->save(['barcode_type' => $new_barcode_type]); - } + $this->appconfig->save(['barcode_type' => $new_barcode_type]); + } - /** - * Revert a migration step. - */ - public function down(): void - { - $new_barcode_type = $this->config['barcode_type']; + /** + * Revert a migration step. + */ + public function down(): void + { + $new_barcode_type = $this->config['barcode_type']; - switch($new_barcode_type) - { - case 'C39': - $old_barcode_type = 'Code39'; - break; - case 'EAN13': - $old_barcode_type = 'Ean13'; - break; - case 'EAN8': - $old_barcode_type = 'Ean8'; - break; - default: - case 'C128': - $old_barcode_type = 'Code128'; - break; - } + switch($new_barcode_type) + { + case 'C39': + $old_barcode_type = 'Code39'; + break; + case 'EAN13': + $old_barcode_type = 'Ean13'; + break; + case 'EAN8': + $old_barcode_type = 'Ean8'; + break; + default: + case 'C128': + $old_barcode_type = 'Code128'; + break; + } - $this->appconfig->save(['barcode_type' => $old_barcode_type]); - } + $this->appconfig->save(['barcode_type' => $old_barcode_type]); + } } diff --git a/app/Database/Migrations/20240630000001_fix_keys_for_db_upgrade.php b/app/Database/Migrations/20240630000001_fix_keys_for_db_upgrade.php index 7d3d0f167..63a6c820a 100644 --- a/app/Database/Migrations/20240630000001_fix_keys_for_db_upgrade.php +++ b/app/Database/Migrations/20240630000001_fix_keys_for_db_upgrade.php @@ -6,81 +6,81 @@ use CodeIgniter\Database\Migration; use Config\Database; class Migration_fix_keys_for_db_upgrade extends Migration { - /** - * Perform a migration step. - */ - public function up(): void - { - $this->db->query("ALTER TABLE `ospos_tax_codes` MODIFY `deleted` tinyint(1) DEFAULT 0 NOT NULL;"); + /** + * Perform a migration step. + */ + public function up(): void + { + $this->db->query("ALTER TABLE `ospos_tax_codes` MODIFY `deleted` tinyint(1) DEFAULT 0 NOT NULL;"); - if (!$this->index_exists('ospos_customers', 'company_name')) - { - $this->db->query("ALTER TABLE `ospos_customers` ADD INDEX(`company_name`)"); - } + if (!$this->index_exists('ospos_customers', 'company_name')) + { + $this->db->query("ALTER TABLE `ospos_customers` ADD INDEX(`company_name`)"); + } - $checkSql = "SELECT CONSTRAINT_NAME FROM information_schema.TABLE_CONSTRAINTS WHERE CONSTRAINT_SCHEMA = DATABASE() AND TABLE_NAME = '" . $this->db->prefixTable('sales_items_taxes') . "' AND CONSTRAINT_NAME = 'ospos_sales_items_taxes_ibfk_1'"; - $foreignKeyExists = $this->db->query($checkSql)->getRow(); + $checkSql = "SELECT CONSTRAINT_NAME FROM information_schema.TABLE_CONSTRAINTS WHERE CONSTRAINT_SCHEMA = DATABASE() AND TABLE_NAME = '" . $this->db->prefixTable('sales_items_taxes') . "' AND CONSTRAINT_NAME = 'ospos_sales_items_taxes_ibfk_1'"; + $foreignKeyExists = $this->db->query($checkSql)->getRow(); - if ($foreignKeyExists) - { - $this->db->query('ALTER TABLE ' . $this->db->prefixTable('sales_items_taxes') . ' DROP FOREIGN KEY ospos_sales_items_taxes_ibfk_1'); - } + if ($foreignKeyExists) + { + $this->db->query('ALTER TABLE ' . $this->db->prefixTable('sales_items_taxes') . ' DROP FOREIGN KEY ospos_sales_items_taxes_ibfk_1'); + } - $this->db->query('ALTER TABLE ' . $this->db->prefixTable('sales_items_taxes') - . ' ADD CONSTRAINT ospos_sales_items_taxes_ibfk_1 FOREIGN KEY (sale_id, item_id, line) ' - . ' REFERENCES ' . $this->db->prefixTable('sales_items') . ' (sale_id, item_id, line)'); + $this->db->query('ALTER TABLE ' . $this->db->prefixTable('sales_items_taxes') + . ' ADD CONSTRAINT ospos_sales_items_taxes_ibfk_1 FOREIGN KEY (sale_id, item_id, line) ' + . ' REFERENCES ' . $this->db->prefixTable('sales_items') . ' (sale_id, item_id, line)'); - $this->create_primary_key('customers', 'person_id'); - $this->create_primary_key('employees', 'person_id'); - $this->create_primary_key('suppliers', 'person_id'); - } + $this->create_primary_key('customers', 'person_id'); + $this->create_primary_key('employees', 'person_id'); + $this->create_primary_key('suppliers', 'person_id'); + } - /** - * Revert a migration step. - */ - public function down(): void - { - $checkSql = "SELECT CONSTRAINT_NAME FROM information_schema.TABLE_CONSTRAINTS WHERE CONSTRAINT_SCHEMA = DATABASE() AND TABLE_NAME = '" . $this->db->prefixTable('sales_items_taxes') . "' AND CONSTRAINT_NAME = 'ospos_sales_items_taxes_ibfk_1'"; - $foreignKeyExists = $this->db->query($checkSql)->getRow(); + /** + * Revert a migration step. + */ + public function down(): void + { + $checkSql = "SELECT CONSTRAINT_NAME FROM information_schema.TABLE_CONSTRAINTS WHERE CONSTRAINT_SCHEMA = DATABASE() AND TABLE_NAME = '" . $this->db->prefixTable('sales_items_taxes') . "' AND CONSTRAINT_NAME = 'ospos_sales_items_taxes_ibfk_1'"; + $foreignKeyExists = $this->db->query($checkSql)->getRow(); - if ($foreignKeyExists) - { - $this->db->query('ALTER TABLE ' . $this->db->prefixTable('sales_items_taxes') . ' DROP CONSTRAINT ospos_sales_items_taxes_ibfk_1'); - } + if ($foreignKeyExists) + { + $this->db->query('ALTER TABLE ' . $this->db->prefixTable('sales_items_taxes') . ' DROP CONSTRAINT ospos_sales_items_taxes_ibfk_1'); + } - $this->db->query('ALTER TABLE ' . $this->db->prefixTable('sales_items_taxes') - . ' ADD CONSTRAINT ospos_sales_items_taxes_ibfk_1 FOREIGN KEY (sale_id) ' - . ' REFERENCES ' . $this->db->prefixTable('sales_items') . ' (sale_id)'); - } + $this->db->query('ALTER TABLE ' . $this->db->prefixTable('sales_items_taxes') + . ' ADD CONSTRAINT ospos_sales_items_taxes_ibfk_1 FOREIGN KEY (sale_id) ' + . ' REFERENCES ' . $this->db->prefixTable('sales_items') . ' (sale_id)'); + } - private function create_primary_key(string $table, string $index): void - { - $result = $this->db->query('SELECT 1 FROM information_schema.columns WHERE table_schema = DATABASE() AND table_name= \'' . $this->db->getPrefix() . "$table' AND column_key = '$index'"); + private function create_primary_key(string $table, string $index): void + { + $result = $this->db->query('SELECT 1 FROM information_schema.columns WHERE table_schema = DATABASE() AND table_name= \'' . $this->db->getPrefix() . "$table' AND column_key = '$index'"); - if ( ! $result->getRowArray()) - { - $this->delete_index($table, $index); - $forge = Database::forge(); - $forge->addPrimaryKey($table, ''); + if ( ! $result->getRowArray()) + { + $this->delete_index($table, $index); + $forge = Database::forge(); + $forge->addPrimaryKey($table, ''); - } - } + } + } - private function index_exists(string $table, string $index): bool - { - $result = $this->db->query('SELECT COUNT(*) FROM information_schema.statistics WHERE table_schema = DATABASE() AND table_name = \'' . $this->db->getPrefix() . "$table' AND index_name = '$index'"); - $row_array = $result->getRowArray(); - return $row_array && $row_array['COUNT(*)'] > 0; - } + private function index_exists(string $table, string $index): bool + { + $result = $this->db->query('SELECT COUNT(*) FROM information_schema.statistics WHERE table_schema = DATABASE() AND table_name = \'' . $this->db->getPrefix() . "$table' AND index_name = '$index'"); + $row_array = $result->getRowArray(); + return $row_array && $row_array['COUNT(*)'] > 0; + } - private function delete_index(string $table, string $index): void - { + private function delete_index(string $table, string $index): void + { - if ($this->index_exists($table, $index)) - { - $forge = Database::forge(); - $forge->dropKey($table, $index, FALSE); - } - } + if ($this->index_exists($table, $index)) + { + $forge = Database::forge(); + $forge->dropKey($table, $index, FALSE); + } + } } diff --git a/app/Database/Migrations/20240826000000_fix_duplicate_attributes.php b/app/Database/Migrations/20240826000000_fix_duplicate_attributes.php index ad80445d0..8afe09dd2 100644 --- a/app/Database/Migrations/20240826000000_fix_duplicate_attributes.php +++ b/app/Database/Migrations/20240826000000_fix_duplicate_attributes.php @@ -8,69 +8,69 @@ use CodeIgniter\Database\ResultInterface; class fix_duplicate_attributes extends Migration { - /** - * Perform a migration step. - */ - public function up(): void - { - $rows_to_keep = $this->get_all_duplicate_attributes(); - $this->remove_duplicate_attributes($rows_to_keep); + /** + * Perform a migration step. + */ + public function up(): void + { + $rows_to_keep = $this->get_all_duplicate_attributes(); + $this->remove_duplicate_attributes($rows_to_keep); - helper('migration'); + helper('migration'); - $foreignKeys = [ - 'ospos_attribute_links_ibfk_1', - 'ospos_attribute_links_ibfk_2', - 'ospos_attribute_links_ibfk_3', - 'ospos_attribute_links_ibfk_4', - 'ospos_attribute_links_ibfk_5' - ]; + $foreignKeys = [ + 'ospos_attribute_links_ibfk_1', + 'ospos_attribute_links_ibfk_2', + 'ospos_attribute_links_ibfk_3', + 'ospos_attribute_links_ibfk_4', + 'ospos_attribute_links_ibfk_5' + ]; - drop_foreign_key_constraints($foreignKeys, 'ospos_attribute_links'); + drop_foreign_key_constraints($foreignKeys, 'ospos_attribute_links'); - execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.4.0_attribute_links_unique_constraint.sql'); - } + execute_script(APPPATH . 'Database/Migrations/sqlscripts/3.4.0_attribute_links_unique_constraint.sql'); + } - /** - * Retrieves from the database all rows where the item_id and definition_id are the same AND the sale_id/receiving_id is null. - * It also excludes null item_id rows as those are dropdown items. - * - * @return ResultInterface Results containing item_id, definition_id and attribute_id in each row. - */ - private function get_all_duplicate_attributes(): ResultInterface - { - $builder = $this->db->table('attribute_links'); - $builder->select('item_id, definition_id, MIN(attribute_id) as attribute_id'); - $builder->where('sale_id IS NULL'); - $builder->where('receiving_id IS NULL'); - $builder->where('item_id IS NOT NULL'); - $builder->groupBy('item_id, definition_id'); - $builder->having('COUNT(attribute_id) > 1'); - return $builder->get(); - } + /** + * Retrieves from the database all rows where the item_id and definition_id are the same AND the sale_id/receiving_id is null. + * It also excludes null item_id rows as those are dropdown items. + * + * @return ResultInterface Results containing item_id, definition_id and attribute_id in each row. + */ + private function get_all_duplicate_attributes(): ResultInterface + { + $builder = $this->db->table('attribute_links'); + $builder->select('item_id, definition_id, MIN(attribute_id) as attribute_id'); + $builder->where('sale_id IS NULL'); + $builder->where('receiving_id IS NULL'); + $builder->where('item_id IS NOT NULL'); + $builder->groupBy('item_id, definition_id'); + $builder->having('COUNT(attribute_id) > 1'); + return $builder->get(); + } - /** - * Removes the duplicate attributes from the database. - * - * @param ResultInterface $rows_to_keep A multidimensional associative array containing item_id, definition_id and attribute_id in each row which should be kept in the database. - * @return void - */ - private function remove_duplicate_attributes(ResultInterface $rows_to_keep): void - { - $attribute = model(Attribute::class); - foreach($rows_to_keep->getResult() as $row) - { - $attribute->deleteAttributeLinks($row->item_id, $row->definition_id); //Deletes all attribute links for the item_id/definition_id combination - $attribute->saveAttributeLink($row->item_id, $row->definition_id, $row->attribute_id); - } - } + /** + * Removes the duplicate attributes from the database. + * + * @param ResultInterface $rows_to_keep A multidimensional associative array containing item_id, definition_id and attribute_id in each row which should be kept in the database. + * @return void + */ + private function remove_duplicate_attributes(ResultInterface $rows_to_keep): void + { + $attribute = model(Attribute::class); + foreach($rows_to_keep->getResult() as $row) + { + $attribute->deleteAttributeLinks($row->item_id, $row->definition_id); //Deletes all attribute links for the item_id/definition_id combination + $attribute->saveAttributeLink($row->item_id, $row->definition_id, $row->attribute_id); + } + } - /** - * Revert a migration step. - */ - public function down(): void - { + /** + * Revert a migration step. + */ + public function down(): void + { - } + } } diff --git a/app/Database/Migrations/20250213000000_fix_attributes_cascading_delete.php b/app/Database/Migrations/20250213000000_fix_attributes_cascading_delete.php index a3e56d333..fe6207179 100644 --- a/app/Database/Migrations/20250213000000_fix_attributes_cascading_delete.php +++ b/app/Database/Migrations/20250213000000_fix_attributes_cascading_delete.php @@ -8,22 +8,22 @@ use CodeIgniter\Database\ResultInterface; class Migration_Attributes_fix_cascading_delete extends Migration { - /** - * Perform a migration step. - */ - public function up(): void - { - helper('migration'); - drop_foreign_key_constraints(['ospos_attribute_links_ibfk_1', 'ospos_attribute_links_ibfk_2'], 'ospos_attribute_links'); - $this->db->query("ALTER TABLE `ospos_attribute_links` ADD CONSTRAINT `ospos_attribute_links_ibfk_1` FOREIGN KEY (`definition_id`) REFERENCES `ospos_attribute_definitions` (`definition_id`) ON DELETE CASCADE;"); - $this->db->query("ALTER TABLE `ospos_attribute_links` ADD CONSTRAINT `ospos_attribute_links_ibfk_2` FOREIGN KEY (`attribute_id`) REFERENCES `ospos_attribute_values` (`attribute_id`) ON DELETE CASCADE;"); - } + /** + * Perform a migration step. + */ + public function up(): void + { + helper('migration'); + drop_foreign_key_constraints(['ospos_attribute_links_ibfk_1', 'ospos_attribute_links_ibfk_2'], 'ospos_attribute_links'); + $this->db->query("ALTER TABLE `ospos_attribute_links` ADD CONSTRAINT `ospos_attribute_links_ibfk_1` FOREIGN KEY (`definition_id`) REFERENCES `ospos_attribute_definitions` (`definition_id`) ON DELETE CASCADE;"); + $this->db->query("ALTER TABLE `ospos_attribute_links` ADD CONSTRAINT `ospos_attribute_links_ibfk_2` FOREIGN KEY (`attribute_id`) REFERENCES `ospos_attribute_values` (`attribute_id`) ON DELETE CASCADE;"); + } - /** - * Revert a migration step. - */ - public function down(): void - { + /** + * Revert a migration step. + */ + public function down(): void + { - } + } } diff --git a/app/Database/Migrations/sqlscripts/3.2.1_to_3.3.0.sql b/app/Database/Migrations/sqlscripts/3.2.1_to_3.3.0.sql index e99727b23..d6ffb7062 100644 --- a/app/Database/Migrations/sqlscripts/3.2.1_to_3.3.0.sql +++ b/app/Database/Migrations/sqlscripts/3.2.1_to_3.3.0.sql @@ -22,20 +22,20 @@ INSERT INTO `ospos_app_config` (`key`, `value`) VALUES ('default_sales_discount_type', '0'); ALTER TABLE `ospos_item_kits` - CHANGE COLUMN `kit_discount_percent` `kit_discount` DECIMAL(15,2) NOT NULL DEFAULT 0 AFTER `item_id`, - ADD COLUMN `kit_discount_type` TINYINT(2) NOT NULL DEFAULT '0' AFTER `kit_discount`; + CHANGE COLUMN `kit_discount_percent` `kit_discount` DECIMAL(15,2) NOT NULL DEFAULT 0 AFTER `item_id`, + ADD COLUMN `kit_discount_type` TINYINT(2) NOT NULL DEFAULT '0' AFTER `kit_discount`; ALTER TABLE `ospos_customers` - CHANGE COLUMN `discount_percent` `discount` DECIMAL(15,2) NOT NULL DEFAULT 0 AFTER `sales_tax_code`, - ADD COLUMN `discount_type` TINYINT(2) NOT NULL DEFAULT '0' AFTER `discount`; + CHANGE COLUMN `discount_percent` `discount` DECIMAL(15,2) NOT NULL DEFAULT 0 AFTER `sales_tax_code`, + ADD COLUMN `discount_type` TINYINT(2) NOT NULL DEFAULT '0' AFTER `discount`; ALTER TABLE `ospos_sales_items` - CHANGE COLUMN `discount_percent` `discount` DECIMAL(15,2) NOT NULL DEFAULT 0 AFTER `item_unit_price`, - ADD COLUMN `discount_type` TINYINT(2) NOT NULL DEFAULT '0' AFTER `discount`; + CHANGE COLUMN `discount_percent` `discount` DECIMAL(15,2) NOT NULL DEFAULT 0 AFTER `item_unit_price`, + ADD COLUMN `discount_type` TINYINT(2) NOT NULL DEFAULT '0' AFTER `discount`; ALTER TABLE `ospos_receivings_items` - CHANGE COLUMN `discount_percent` `discount` DECIMAL(15,2) NOT NULL DEFAULT 0 AFTER `item_unit_price`, - ADD COLUMN `discount_type` TINYINT(2) NOT NULL DEFAULT '0' AFTER `discount`; + CHANGE COLUMN `discount_percent` `discount` DECIMAL(15,2) NOT NULL DEFAULT 0 AFTER `item_unit_price`, + ADD COLUMN `discount_type` TINYINT(2) NOT NULL DEFAULT '0' AFTER `discount`; -- -- Add support for module cashups diff --git a/app/Database/Migrations/sqlscripts/3.3.0_indiagst.sql b/app/Database/Migrations/sqlscripts/3.3.0_indiagst.sql index 6f30e1ce4..449951025 100644 --- a/app/Database/Migrations/sqlscripts/3.3.0_indiagst.sql +++ b/app/Database/Migrations/sqlscripts/3.3.0_indiagst.sql @@ -9,86 +9,86 @@ INSERT INTO `ospos_app_config` (`key`, `value`) VALUES ('tax_id', ''); UPDATE `ospos_app_config` - SET `key` = 'use_destination_based_tax' - WHERE `key` = 'customer_sales_tax_support'; + SET `key` = 'use_destination_based_tax' + WHERE `key` = 'customer_sales_tax_support'; UPDATE `ospos_app_config` - SET `key` = 'default_tax_code' - WHERE `key` = 'default_origin_tax_code'; + SET `key` = 'default_tax_code' + WHERE `key` = 'default_origin_tax_code'; RENAME TABLE `ospos_tax_codes` TO `ospos_tax_codes_backup`; CREATE TABLE IF NOT EXISTS `ospos_tax_codes` ( - `tax_code_id` int(11) NOT NULL AUTO_INCREMENT, - `tax_code` varchar(32) NOT NULL, - `tax_code_name` varchar(255) NOT NULL DEFAULT '', - `city` varchar(255) NOT NULL DEFAULT '', - `state` varchar(255) NOT NULL DEFAULT '', - `deleted` int(1) NOT NULL DEFAULT 0, - PRIMARY KEY (`tax_code_id`) + `tax_code_id` int(11) NOT NULL AUTO_INCREMENT, + `tax_code` varchar(32) NOT NULL, + `tax_code_name` varchar(255) NOT NULL DEFAULT '', + `city` varchar(255) NOT NULL DEFAULT '', + `state` varchar(255) NOT NULL DEFAULT '', + `deleted` int(1) NOT NULL DEFAULT 0, + PRIMARY KEY (`tax_code_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; ALTER TABLE `ospos_customers` - ADD COLUMN `tax_id` varchar(32) NOT NULL DEFAULT '' AFTER `taxable`, - ADD COLUMN `sales_tax_code_id` int(11) DEFAULT NULL AFTER `tax_id`; + ADD COLUMN `tax_id` varchar(32) NOT NULL DEFAULT '' AFTER `taxable`, + ADD COLUMN `sales_tax_code_id` int(11) DEFAULT NULL AFTER `tax_id`; ALTER TABLE `ospos_items` - ADD COLUMN `hsn_code` varchar(32) NOT NULL DEFAULT '' AFTER `low_sell_item_id`; + ADD COLUMN `hsn_code` varchar(32) NOT NULL DEFAULT '' AFTER `low_sell_item_id`; ALTER TABLE `ospos_sales_items_taxes` - ADD COLUMN `sales_tax_code_id` int(11) DEFAULT NULL AFTER `item_tax_amount`, - ADD COLUMN `jurisdiction_id` int(11) DEFAULT NULL AFTER `sales_tax_code_id`, - ADD COLUMN `tax_category_id` int(11) DEFAULT NULL AFTER `jurisdiction_id`, - DROP COLUMN `cascade_tax`; + ADD COLUMN `sales_tax_code_id` int(11) DEFAULT NULL AFTER `item_tax_amount`, + ADD COLUMN `jurisdiction_id` int(11) DEFAULT NULL AFTER `sales_tax_code_id`, + ADD COLUMN `tax_category_id` int(11) DEFAULT NULL AFTER `jurisdiction_id`, + DROP COLUMN `cascade_tax`; RENAME TABLE `ospos_sales_taxes` TO `ospos_sales_taxes_backup`; CREATE TABLE `ospos_sales_taxes` ( - `sales_taxes_id` int(11) NOT NULL AUTO_INCREMENT, - `sale_id` int(10) NOT NULL, - `jurisdiction_id` int(11) DEFAULT NULL, - `tax_category_id` int(11) DEFAULT NULL, - `tax_type` smallint(2) NOT NULL, - `tax_group` varchar(32) NOT NULL, - `sale_tax_basis` decimal(15,4) NOT NULL, - `sale_tax_amount` decimal(15,4) NOT NULL, - `print_sequence` tinyint(2) NOT NULL DEFAULT 0, - `name` varchar(255) NOT NULL, - `tax_rate` decimal(15,4) NOT NULL, - `sales_tax_code_id` int(11) DEFAULT NULL, - `rounding_code` tinyint(2) NOT NULL DEFAULT 0, - PRIMARY KEY (`sales_taxes_id`), - KEY `print_sequence` (`sale_id`,`print_sequence`,`tax_group`) + `sales_taxes_id` int(11) NOT NULL AUTO_INCREMENT, + `sale_id` int(10) NOT NULL, + `jurisdiction_id` int(11) DEFAULT NULL, + `tax_category_id` int(11) DEFAULT NULL, + `tax_type` smallint(2) NOT NULL, + `tax_group` varchar(32) NOT NULL, + `sale_tax_basis` decimal(15,4) NOT NULL, + `sale_tax_amount` decimal(15,4) NOT NULL, + `print_sequence` tinyint(2) NOT NULL DEFAULT 0, + `name` varchar(255) NOT NULL, + `tax_rate` decimal(15,4) NOT NULL, + `sales_tax_code_id` int(11) DEFAULT NULL, + `rounding_code` tinyint(2) NOT NULL DEFAULT 0, + PRIMARY KEY (`sales_taxes_id`), + KEY `print_sequence` (`sale_id`,`print_sequence`,`tax_group`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; CREATE TABLE IF NOT EXISTS `ospos_tax_jurisdictions` ( - `jurisdiction_id` int(11) NOT NULL AUTO_INCREMENT, - `jurisdiction_name` varchar(255) DEFAULT NULL, - `tax_group` varchar(32) NOT NULL, - `tax_type` smallint(2) NOT NULL, - `reporting_authority` varchar(255) DEFAULT NULL, - `tax_group_sequence` tinyint(2) NOT NULL DEFAULT 0, - `cascade_sequence` tinyint(2) NOT NULL DEFAULT 0, - `deleted` int(1) NOT NULL DEFAULT 0, - PRIMARY KEY (`jurisdiction_id`) + `jurisdiction_id` int(11) NOT NULL AUTO_INCREMENT, + `jurisdiction_name` varchar(255) DEFAULT NULL, + `tax_group` varchar(32) NOT NULL, + `tax_type` smallint(2) NOT NULL, + `reporting_authority` varchar(255) DEFAULT NULL, + `tax_group_sequence` tinyint(2) NOT NULL DEFAULT 0, + `cascade_sequence` tinyint(2) NOT NULL DEFAULT 0, + `deleted` int(1) NOT NULL DEFAULT 0, + PRIMARY KEY (`jurisdiction_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1; ALTER TABLE `ospos_suppliers` - ADD COLUMN `tax_id` varchar(32) DEFAULT NULL AFTER `account_number`; + ADD COLUMN `tax_id` varchar(32) DEFAULT NULL AFTER `account_number`; ALTER TABLE `ospos_tax_categories` - ADD COLUMN `deleted` int(1) NOT NULL DEFAULT 0 AFTER `tax_group_sequence`; + ADD COLUMN `deleted` int(1) NOT NULL DEFAULT 0 AFTER `tax_group_sequence`; RENAME TABLE `ospos_tax_code_rates` TO `ospos_tax_code_rates_backup`; CREATE TABLE IF NOT EXISTS `ospos_tax_rates` ( - `tax_rate_id` int(11) NOT NULL AUTO_INCREMENT, - `rate_tax_code_id` int(11) NOT NULL, - `rate_tax_category_id` int(10) NOT NULL, - `rate_jurisdiction_id` int(11) NOT NULL, - `tax_rate` decimal(15,4) NOT NULL DEFAULT 0.0000, - `tax_rounding_code` tinyint(2) NOT NULL DEFAULT 0, - PRIMARY KEY (`tax_rate_id`) + `tax_rate_id` int(11) NOT NULL AUTO_INCREMENT, + `rate_tax_code_id` int(11) NOT NULL, + `rate_tax_category_id` int(10) NOT NULL, + `rate_jurisdiction_id` int(11) NOT NULL, + `tax_rate` decimal(15,4) NOT NULL DEFAULT 0.0000, + `tax_rounding_code` tinyint(2) NOT NULL DEFAULT 0, + PRIMARY KEY (`tax_rate_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- Add support for sales tax report diff --git a/app/Database/Migrations/sqlscripts/3.3.0_refundtracking.sql b/app/Database/Migrations/sqlscripts/3.3.0_refundtracking.sql index b61d26377..0cb3ed6b3 100644 --- a/app/Database/Migrations/sqlscripts/3.3.0_refundtracking.sql +++ b/app/Database/Migrations/sqlscripts/3.3.0_refundtracking.sql @@ -1,4 +1,4 @@ ALTER TABLE `ospos_sales_payments` - ADD COLUMN `cash_refund` decimal(15,2) NOT NULL DEFAULT 0 AFTER `payment_amount`, - CHANGE `payment_user` `employee_id` int(11) DEFAULT NULL, - CHANGE `payment_date` `payment_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP; + ADD COLUMN `cash_refund` decimal(15,2) NOT NULL DEFAULT 0 AFTER `payment_amount`, + CHANGE `payment_user` `employee_id` int(11) DEFAULT NULL, + CHANGE `payment_date` `payment_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP; diff --git a/app/Database/Migrations/sqlscripts/3.4.0_attribute_links_unique_constraint.sql b/app/Database/Migrations/sqlscripts/3.4.0_attribute_links_unique_constraint.sql index 6de8d6ae8..9c2af0dd8 100644 --- a/app/Database/Migrations/sqlscripts/3.4.0_attribute_links_unique_constraint.sql +++ b/app/Database/Migrations/sqlscripts/3.4.0_attribute_links_unique_constraint.sql @@ -1,16 +1,16 @@ # Prevents duplicate attribute links with the same definition_id and item_id. # This accounts for dropdown rows (null item_id) and rows associated with sales or receivings. ALTER TABLE `ospos_attribute_links` - ADD COLUMN `generated_unique_column` VARCHAR(255) GENERATED ALWAYS AS ( - CASE - WHEN `sale_id` IS NULL AND `receiving_id` IS NULL AND `item_id` IS NOT NULL THEN CONCAT(`definition_id`, '-', `item_id`) - ELSE NULL - END - ) STORED, - ADD UNIQUE INDEX `attribute_links_uq3` (`generated_unique_column`); + ADD COLUMN `generated_unique_column` VARCHAR(255) GENERATED ALWAYS AS ( + CASE + WHEN `sale_id` IS NULL AND `receiving_id` IS NULL AND `item_id` IS NOT NULL THEN CONCAT(`definition_id`, '-', `item_id`) + ELSE NULL + END + ) STORED, + ADD UNIQUE INDEX `attribute_links_uq3` (`generated_unique_column`); -ALTER TABLE `ospos_attribute_links` ADD CONSTRAINT `ospos_attribute_links_ibfk_1` FOREIGN KEY (`definition_id`) REFERENCES `ospos_attribute_definitions` (`definition_id`) ON DELETE RESTRICT; -ALTER TABLE `ospos_attribute_links` ADD CONSTRAINT `ospos_attribute_links_ibfk_2` FOREIGN KEY (`attribute_id`) REFERENCES `ospos_attribute_values` (`attribute_id`) ON DELETE RESTRICT; -ALTER TABLE `ospos_attribute_links` ADD CONSTRAINT `ospos_attribute_links_ibfk_3` FOREIGN KEY (`item_id`) REFERENCES `ospos_items` (`item_id`); -ALTER TABLE `ospos_attribute_links` ADD CONSTRAINT `ospos_attribute_links_ibfk_4` FOREIGN KEY (`receiving_id`) REFERENCES `ospos_receivings` (`receiving_id`); -ALTER TABLE `ospos_attribute_links` ADD CONSTRAINT `ospos_attribute_links_ibfk_5` FOREIGN KEY (`sale_id`) REFERENCES `ospos_sales` (`sale_id`); +ALTER TABLE `ospos_attribute_links` ADD CONSTRAINT `ospos_attribute_links_ibfk_1` FOREIGN KEY (`definition_id`) REFERENCES `ospos_attribute_definitions` (`definition_id`) ON DELETE RESTRICT; +ALTER TABLE `ospos_attribute_links` ADD CONSTRAINT `ospos_attribute_links_ibfk_2` FOREIGN KEY (`attribute_id`) REFERENCES `ospos_attribute_values` (`attribute_id`) ON DELETE RESTRICT; +ALTER TABLE `ospos_attribute_links` ADD CONSTRAINT `ospos_attribute_links_ibfk_3` FOREIGN KEY (`item_id`) REFERENCES `ospos_items` (`item_id`); +ALTER TABLE `ospos_attribute_links` ADD CONSTRAINT `ospos_attribute_links_ibfk_4` FOREIGN KEY (`receiving_id`) REFERENCES `ospos_receivings` (`receiving_id`); +ALTER TABLE `ospos_attribute_links` ADD CONSTRAINT `ospos_attribute_links_ibfk_5` FOREIGN KEY (`sale_id`) REFERENCES `ospos_sales` (`sale_id`); diff --git a/app/Database/Migrations/sqlscripts/3.4.0_ci4_conversion.sql b/app/Database/Migrations/sqlscripts/3.4.0_ci4_conversion.sql index 2f7ac6229..8f4ae0150 100644 --- a/app/Database/Migrations/sqlscripts/3.4.0_ci4_conversion.sql +++ b/app/Database/Migrations/sqlscripts/3.4.0_ci4_conversion.sql @@ -2,12 +2,12 @@ DROP TABLE `ospos_sessions`; CREATE TABLE IF NOT EXISTS `ospos_sessions` ( - `id` varchar(128) NOT NULL, - `ip_address` varchar(45) NOT NULL, - `timestamp` timestamp DEFAULT CURRENT_TIMESTAMP NOT NULL, - `data` blob NOT NULL, - KEY `ospos_sessions_timestamp` (`timestamp`) - ); + `id` varchar(128) NOT NULL, + `ip_address` varchar(45) NOT NULL, + `timestamp` timestamp DEFAULT CURRENT_TIMESTAMP NOT NULL, + `data` blob NOT NULL, + KEY `ospos_sessions_timestamp` (`timestamp`) + ); ALTER TABLE ospos_sessions ADD PRIMARY KEY (id, ip_address); diff --git a/app/Database/constraints.sql b/app/Database/constraints.sql index 5e8f596e9..84c9ea292 100644 --- a/app/Database/constraints.sql +++ b/app/Database/constraints.sql @@ -6,140 +6,140 @@ -- Constraints for table `ospos_customers` -- ALTER TABLE `ospos_customers` - ADD CONSTRAINT `ospos_customers_ibfk_1` FOREIGN KEY (`person_id`) REFERENCES `ospos_people` (`person_id`); + ADD CONSTRAINT `ospos_customers_ibfk_1` FOREIGN KEY (`person_id`) REFERENCES `ospos_people` (`person_id`); -- -- Constraints for table `ospos_employees` -- ALTER TABLE `ospos_employees` - ADD CONSTRAINT `ospos_employees_ibfk_1` FOREIGN KEY (`person_id`) REFERENCES `ospos_people` (`person_id`); + ADD CONSTRAINT `ospos_employees_ibfk_1` FOREIGN KEY (`person_id`) REFERENCES `ospos_people` (`person_id`); -- -- Constraints for table `ospos_inventory` -- ALTER TABLE `ospos_inventory` - ADD CONSTRAINT `ospos_inventory_ibfk_1` FOREIGN KEY (`trans_items`) REFERENCES `ospos_items` (`item_id`), - ADD CONSTRAINT `ospos_inventory_ibfk_2` FOREIGN KEY (`trans_user`) REFERENCES `ospos_employees` (`person_id`), - ADD CONSTRAINT `ospos_inventory_ibfk_3` FOREIGN KEY (`trans_location`) REFERENCES `ospos_stock_locations` (`location_id`); + ADD CONSTRAINT `ospos_inventory_ibfk_1` FOREIGN KEY (`trans_items`) REFERENCES `ospos_items` (`item_id`), + ADD CONSTRAINT `ospos_inventory_ibfk_2` FOREIGN KEY (`trans_user`) REFERENCES `ospos_employees` (`person_id`), + ADD CONSTRAINT `ospos_inventory_ibfk_3` FOREIGN KEY (`trans_location`) REFERENCES `ospos_stock_locations` (`location_id`); -- -- Constraints for table `ospos_items` -- ALTER TABLE `ospos_items` - ADD CONSTRAINT `ospos_items_ibfk_1` FOREIGN KEY (`supplier_id`) REFERENCES `ospos_suppliers` (`person_id`); + ADD CONSTRAINT `ospos_items_ibfk_1` FOREIGN KEY (`supplier_id`) REFERENCES `ospos_suppliers` (`person_id`); -- -- Constraints for table `ospos_items_taxes` -- ALTER TABLE `ospos_items_taxes` - ADD CONSTRAINT `ospos_items_taxes_ibfk_1` FOREIGN KEY (`item_id`) REFERENCES `ospos_items` (`item_id`) ON DELETE CASCADE; + ADD CONSTRAINT `ospos_items_taxes_ibfk_1` FOREIGN KEY (`item_id`) REFERENCES `ospos_items` (`item_id`) ON DELETE CASCADE; -- -- Constraints for table `ospos_item_kit_items` -- ALTER TABLE `ospos_item_kit_items` - ADD CONSTRAINT `ospos_item_kit_items_ibfk_1` FOREIGN KEY (`item_kit_id`) REFERENCES `ospos_item_kits` (`item_kit_id`) ON DELETE CASCADE, - ADD CONSTRAINT `ospos_item_kit_items_ibfk_2` FOREIGN KEY (`item_id`) REFERENCES `ospos_items` (`item_id`) ON DELETE CASCADE; + ADD CONSTRAINT `ospos_item_kit_items_ibfk_1` FOREIGN KEY (`item_kit_id`) REFERENCES `ospos_item_kits` (`item_kit_id`) ON DELETE CASCADE, + ADD CONSTRAINT `ospos_item_kit_items_ibfk_2` FOREIGN KEY (`item_id`) REFERENCES `ospos_items` (`item_id`) ON DELETE CASCADE; -- -- Constraints for table `ospos_permissions` -- ALTER TABLE `ospos_permissions` - ADD CONSTRAINT `ospos_permissions_ibfk_1` FOREIGN KEY (`module_id`) REFERENCES `ospos_modules` (`module_id`) ON DELETE CASCADE, - ADD CONSTRAINT `ospos_permissions_ibfk_2` FOREIGN KEY (`location_id`) REFERENCES `ospos_stock_locations` (`location_id`) ON DELETE CASCADE; + ADD CONSTRAINT `ospos_permissions_ibfk_1` FOREIGN KEY (`module_id`) REFERENCES `ospos_modules` (`module_id`) ON DELETE CASCADE, + ADD CONSTRAINT `ospos_permissions_ibfk_2` FOREIGN KEY (`location_id`) REFERENCES `ospos_stock_locations` (`location_id`) ON DELETE CASCADE; -- -- Constraints for table `ospos_grants` -- ALTER TABLE `ospos_grants` - ADD CONSTRAINT `ospos_grants_ibfk_1` foreign key (`permission_id`) references `ospos_permissions` (`permission_id`) ON DELETE CASCADE, - ADD CONSTRAINT `ospos_grants_ibfk_2` foreign key (`person_id`) references `ospos_employees` (`person_id`) ON DELETE CASCADE; + ADD CONSTRAINT `ospos_grants_ibfk_1` foreign key (`permission_id`) references `ospos_permissions` (`permission_id`) ON DELETE CASCADE, + ADD CONSTRAINT `ospos_grants_ibfk_2` foreign key (`person_id`) references `ospos_employees` (`person_id`) ON DELETE CASCADE; -- -- Constraints for table `ospos_receivings` -- ALTER TABLE `ospos_receivings` - ADD CONSTRAINT `ospos_receivings_ibfk_1` FOREIGN KEY (`employee_id`) REFERENCES `ospos_employees` (`person_id`), - ADD CONSTRAINT `ospos_receivings_ibfk_2` FOREIGN KEY (`supplier_id`) REFERENCES `ospos_suppliers` (`person_id`); + ADD CONSTRAINT `ospos_receivings_ibfk_1` FOREIGN KEY (`employee_id`) REFERENCES `ospos_employees` (`person_id`), + ADD CONSTRAINT `ospos_receivings_ibfk_2` FOREIGN KEY (`supplier_id`) REFERENCES `ospos_suppliers` (`person_id`); -- -- Constraints for table `ospos_receivings_items` -- ALTER TABLE `ospos_receivings_items` - ADD CONSTRAINT `ospos_receivings_items_ibfk_1` FOREIGN KEY (`item_id`) REFERENCES `ospos_items` (`item_id`), - ADD CONSTRAINT `ospos_receivings_items_ibfk_2` FOREIGN KEY (`receiving_id`) REFERENCES `ospos_receivings` (`receiving_id`); + ADD CONSTRAINT `ospos_receivings_items_ibfk_1` FOREIGN KEY (`item_id`) REFERENCES `ospos_items` (`item_id`), + ADD CONSTRAINT `ospos_receivings_items_ibfk_2` FOREIGN KEY (`receiving_id`) REFERENCES `ospos_receivings` (`receiving_id`); -- -- Constraints for table `ospos_sales` -- ALTER TABLE `ospos_sales` - ADD CONSTRAINT `ospos_sales_ibfk_1` FOREIGN KEY (`employee_id`) REFERENCES `ospos_employees` (`person_id`), - ADD CONSTRAINT `ospos_sales_ibfk_2` FOREIGN KEY (`customer_id`) REFERENCES `ospos_customers` (`person_id`); + ADD CONSTRAINT `ospos_sales_ibfk_1` FOREIGN KEY (`employee_id`) REFERENCES `ospos_employees` (`person_id`), + ADD CONSTRAINT `ospos_sales_ibfk_2` FOREIGN KEY (`customer_id`) REFERENCES `ospos_customers` (`person_id`); -- -- Constraints for table `ospos_sales_items` -- ALTER TABLE `ospos_sales_items` - ADD CONSTRAINT `ospos_sales_items_ibfk_1` FOREIGN KEY (`item_id`) REFERENCES `ospos_items` (`item_id`), - ADD CONSTRAINT `ospos_sales_items_ibfk_2` FOREIGN KEY (`sale_id`) REFERENCES `ospos_sales` (`sale_id`), - ADD CONSTRAINT `ospos_sales_items_ibfk_3` FOREIGN KEY (`item_location`) REFERENCES `ospos_stock_locations` (`location_id`); + ADD CONSTRAINT `ospos_sales_items_ibfk_1` FOREIGN KEY (`item_id`) REFERENCES `ospos_items` (`item_id`), + ADD CONSTRAINT `ospos_sales_items_ibfk_2` FOREIGN KEY (`sale_id`) REFERENCES `ospos_sales` (`sale_id`), + ADD CONSTRAINT `ospos_sales_items_ibfk_3` FOREIGN KEY (`item_location`) REFERENCES `ospos_stock_locations` (`location_id`); -- -- Constraints for table `ospos_sales_items_taxes` -- ALTER TABLE `ospos_sales_items_taxes` - ADD CONSTRAINT `ospos_sales_items_taxes_ibfk_1` FOREIGN KEY (`sale_id`,`item_id`,`line`) REFERENCES `ospos_sales_items` (`sale_id`,`item_id`,`line`), - ADD CONSTRAINT `ospos_sales_items_taxes_ibfk_2` FOREIGN KEY (`item_id`) REFERENCES `ospos_items` (`item_id`); + ADD CONSTRAINT `ospos_sales_items_taxes_ibfk_1` FOREIGN KEY (`sale_id`,`item_id`,`line`) REFERENCES `ospos_sales_items` (`sale_id`,`item_id`,`line`), + ADD CONSTRAINT `ospos_sales_items_taxes_ibfk_2` FOREIGN KEY (`item_id`) REFERENCES `ospos_items` (`item_id`); -- -- Constraints for table `ospos_sales_payments` -- ALTER TABLE `ospos_sales_payments` - ADD CONSTRAINT `ospos_sales_payments_ibfk_1` FOREIGN KEY (`sale_id`) REFERENCES `ospos_sales` (`sale_id`); + ADD CONSTRAINT `ospos_sales_payments_ibfk_1` FOREIGN KEY (`sale_id`) REFERENCES `ospos_sales` (`sale_id`); -- -- Constraints for table `ospos_sales_suspended` -- ALTER TABLE `ospos_sales_suspended` - ADD CONSTRAINT `ospos_sales_suspended_ibfk_1` FOREIGN KEY (`employee_id`) REFERENCES `ospos_employees` (`person_id`), - ADD CONSTRAINT `ospos_sales_suspended_ibfk_2` FOREIGN KEY (`customer_id`) REFERENCES `ospos_customers` (`person_id`); + ADD CONSTRAINT `ospos_sales_suspended_ibfk_1` FOREIGN KEY (`employee_id`) REFERENCES `ospos_employees` (`person_id`), + ADD CONSTRAINT `ospos_sales_suspended_ibfk_2` FOREIGN KEY (`customer_id`) REFERENCES `ospos_customers` (`person_id`); -- -- Constraints for table `ospos_sales_suspended_items` -- ALTER TABLE `ospos_sales_suspended_items` - ADD CONSTRAINT `ospos_sales_suspended_items_ibfk_1` FOREIGN KEY (`item_id`) REFERENCES `ospos_items` (`item_id`), - ADD CONSTRAINT `ospos_sales_suspended_items_ibfk_2` FOREIGN KEY (`sale_id`) REFERENCES `ospos_sales_suspended` (`sale_id`), - ADD CONSTRAINT `ospos_sales_suspended_items_ibfk_3` FOREIGN KEY (`item_location`) REFERENCES `ospos_stock_locations` (`location_id`); + ADD CONSTRAINT `ospos_sales_suspended_items_ibfk_1` FOREIGN KEY (`item_id`) REFERENCES `ospos_items` (`item_id`), + ADD CONSTRAINT `ospos_sales_suspended_items_ibfk_2` FOREIGN KEY (`sale_id`) REFERENCES `ospos_sales_suspended` (`sale_id`), + ADD CONSTRAINT `ospos_sales_suspended_items_ibfk_3` FOREIGN KEY (`item_location`) REFERENCES `ospos_stock_locations` (`location_id`); -- -- Constraints for table `ospos_sales_suspended_items_taxes` -- ALTER TABLE `ospos_sales_suspended_items_taxes` - ADD CONSTRAINT `ospos_sales_suspended_items_taxes_ibfk_1` FOREIGN KEY (`sale_id`,`item_id`,`line`) REFERENCES `ospos_sales_suspended_items` (`sale_id`,`item_id`,`line`), - ADD CONSTRAINT `ospos_sales_suspended_items_taxes_ibfk_2` FOREIGN KEY (`item_id`) REFERENCES `ospos_items` (`item_id`); + ADD CONSTRAINT `ospos_sales_suspended_items_taxes_ibfk_1` FOREIGN KEY (`sale_id`,`item_id`,`line`) REFERENCES `ospos_sales_suspended_items` (`sale_id`,`item_id`,`line`), + ADD CONSTRAINT `ospos_sales_suspended_items_taxes_ibfk_2` FOREIGN KEY (`item_id`) REFERENCES `ospos_items` (`item_id`); -- -- Constraints for table `ospos_sales_suspended_payments` -- ALTER TABLE `ospos_sales_suspended_payments` - ADD CONSTRAINT `ospos_sales_suspended_payments_ibfk_1` FOREIGN KEY (`sale_id`) REFERENCES `ospos_sales_suspended` (`sale_id`); + ADD CONSTRAINT `ospos_sales_suspended_payments_ibfk_1` FOREIGN KEY (`sale_id`) REFERENCES `ospos_sales_suspended` (`sale_id`); -- -- Constraints for table `ospos_item_quantities` -- ALTER TABLE `ospos_item_quantities` - ADD CONSTRAINT `ospos_item_quantities_ibfk_1` FOREIGN KEY (`item_id`) REFERENCES `ospos_items` (`item_id`), - ADD CONSTRAINT `ospos_item_quantities_ibfk_2` FOREIGN KEY (`location_id`) REFERENCES `ospos_stock_locations` (`location_id`); + ADD CONSTRAINT `ospos_item_quantities_ibfk_1` FOREIGN KEY (`item_id`) REFERENCES `ospos_items` (`item_id`), + ADD CONSTRAINT `ospos_item_quantities_ibfk_2` FOREIGN KEY (`location_id`) REFERENCES `ospos_stock_locations` (`location_id`); -- -- Constraints for table `ospos_suppliers` -- ALTER TABLE `ospos_suppliers` - ADD CONSTRAINT `ospos_suppliers_ibfk_1` FOREIGN KEY (`person_id`) REFERENCES `ospos_people` (`person_id`); + ADD CONSTRAINT `ospos_suppliers_ibfk_1` FOREIGN KEY (`person_id`) REFERENCES `ospos_people` (`person_id`); -- -- Constraints for table `ospos_giftcards` -- ALTER TABLE `ospos_giftcards` - ADD CONSTRAINT `ospos_giftcards_ibfk_1` FOREIGN KEY (`person_id`) REFERENCES `ospos_people` (`person_id`); + ADD CONSTRAINT `ospos_giftcards_ibfk_1` FOREIGN KEY (`person_id`) REFERENCES `ospos_people` (`person_id`); diff --git a/app/Database/docker_mysql.cnf b/app/Database/docker_mysql.cnf index b15ff3cdc..cae4ebd09 100644 --- a/app/Database/docker_mysql.cnf +++ b/app/Database/docker_mysql.cnf @@ -1,19 +1,19 @@ [mysqld] sql_mode = "STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION" -key_buffer = 16M +key_buffer = 16M max_allowed_packet = 1M tmp-table-size = 32M max-heap-table-size = 32M -query_cache_limit = 4M +query_cache_limit = 4M query_cache_size = 32M query_cache_type = ON log_slow_queries = OFF innodb_buffer_pool_size = 56M innodb_log_file_size = 15M thread_cache_size = 4 -expire_logs_days = 10 +expire_logs_days = 10 max_binlog_size = 100M innodb_file_per_table = 1 myisam_sort_buffer_size = 8M @@ -25,9 +25,8 @@ table_cache = 64 key_buffer_size = 16M [isamchk] -key_buffer = 16M +key_buffer = 16M write_buffer = 2M read_buffer = 2M sort_buffer_size = 20M key_buffer_size = 20M - diff --git a/app/Database/tables.sql b/app/Database/tables.sql index c128eb452..943706722 100644 --- a/app/Database/tables.sql +++ b/app/Database/tables.sql @@ -4,9 +4,9 @@ -- CREATE TABLE `ospos_app_config` ( - `key` varchar(50) NOT NULL, - `value` varchar(500) NOT NULL, - PRIMARY KEY (`key`) + `key` varchar(50) NOT NULL, + `value` varchar(500) NOT NULL, + PRIMARY KEY (`key`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- @@ -14,75 +14,75 @@ CREATE TABLE `ospos_app_config` ( -- INSERT INTO `ospos_app_config` (`key`, `value`) VALUES - ('address', '123 Nowhere street'), - ('company', 'Open Source Point of Sale'), - ('default_tax_rate', '8'), - ('email', 'changeme@example.com'), - ('fax', ''), - ('phone', '555-555-5555'), - ('return_policy', 'Test'), - ('timezone', 'America/New_York'), - ('website', ''), - ('company_logo', ''), - ('tax_included', '0'), - ('barcode_content', 'id'), - ('barcode_type', 'Code39'), - ('barcode_width', '250'), - ('barcode_height', '50'), - ('barcode_quality', '100'), - ('barcode_font', 'Arial'), - ('barcode_font_size', '10'), - ('barcode_first_row', 'category'), - ('barcode_second_row', 'item_code'), - ('barcode_third_row', 'unit_price'), - ('barcode_num_in_row', '2'), - ('barcode_page_width', '100'), - ('barcode_page_cellspacing', '20'), - ('barcode_generate_if_empty', '0'), - ('receipt_show_taxes', '0'), - ('receipt_show_total_discount', '1'), - ('receipt_show_description', '1'), - ('receipt_show_serialnumber', '1'), - ('invoice_enable', '1'), - ('recv_invoice_format', '$CO'), - ('sales_invoice_format', '$CO'), - ('invoice_email_message', 'Dear $CU, In attachment the receipt for sale $INV'), - ('invoice_default_comments', 'This is a default comment'), - ('print_silently', '1'), - ('print_header', '0'), - ('print_footer', '0'), - ('print_top_margin', '0'), - ('print_left_margin', '0'), - ('print_bottom_margin', '0'), - ('print_right_margin', '0'), - ('default_sales_discount', '0'), - ('lines_per_page', '25'), - ('dateformat', 'm/d/Y'), - ('timeformat', 'H:i:s'), - ('currency_symbol', '$'), - ('number_locale', 'en_US'), - ('thousands_separator', '1'), - ('currency_decimals', '2'), - ('tax_decimals', '2'), - ('quantity_decimals', '0'), - ('country_codes', 'us'), - ('msg_msg', ''), - ('msg_uid', ''), - ('msg_src', ''), - ('msg_pwd', ''), - ('notify_horizontal_position', 'center'), - ('notify_vertical_position', 'bottom'), - ('payment_options_order', 'cashdebitcredit'), - ('protocol', 'mail'), - ('mailpath', '/usr/sbin/sendmail'), - ('smtp_port', '465'), - ('smtp_timeout', '5'), - ('smtp_crypto', 'ssl'), - ('receipt_template', 'receipt_default'), - ('theme', 'flatly'), - ('statistics', '1'), - ('language', 'english'), - ('language_code', 'en'); + ('address', '123 Nowhere street'), + ('company', 'Open Source Point of Sale'), + ('default_tax_rate', '8'), + ('email', 'changeme@example.com'), + ('fax', ''), + ('phone', '555-555-5555'), + ('return_policy', 'Test'), + ('timezone', 'America/New_York'), + ('website', ''), + ('company_logo', ''), + ('tax_included', '0'), + ('barcode_content', 'id'), + ('barcode_type', 'Code39'), + ('barcode_width', '250'), + ('barcode_height', '50'), + ('barcode_quality', '100'), + ('barcode_font', 'Arial'), + ('barcode_font_size', '10'), + ('barcode_first_row', 'category'), + ('barcode_second_row', 'item_code'), + ('barcode_third_row', 'unit_price'), + ('barcode_num_in_row', '2'), + ('barcode_page_width', '100'), + ('barcode_page_cellspacing', '20'), + ('barcode_generate_if_empty', '0'), + ('receipt_show_taxes', '0'), + ('receipt_show_total_discount', '1'), + ('receipt_show_description', '1'), + ('receipt_show_serialnumber', '1'), + ('invoice_enable', '1'), + ('recv_invoice_format', '$CO'), + ('sales_invoice_format', '$CO'), + ('invoice_email_message', 'Dear $CU, In attachment the receipt for sale $INV'), + ('invoice_default_comments', 'This is a default comment'), + ('print_silently', '1'), + ('print_header', '0'), + ('print_footer', '0'), + ('print_top_margin', '0'), + ('print_left_margin', '0'), + ('print_bottom_margin', '0'), + ('print_right_margin', '0'), + ('default_sales_discount', '0'), + ('lines_per_page', '25'), + ('dateformat', 'm/d/Y'), + ('timeformat', 'H:i:s'), + ('currency_symbol', '$'), + ('number_locale', 'en_US'), + ('thousands_separator', '1'), + ('currency_decimals', '2'), + ('tax_decimals', '2'), + ('quantity_decimals', '0'), + ('country_codes', 'us'), + ('msg_msg', ''), + ('msg_uid', ''), + ('msg_src', ''), + ('msg_pwd', ''), + ('notify_horizontal_position', 'center'), + ('notify_vertical_position', 'bottom'), + ('payment_options_order', 'cashdebitcredit'), + ('protocol', 'mail'), + ('mailpath', '/usr/sbin/sendmail'), + ('smtp_port', '465'), + ('smtp_timeout', '5'), + ('smtp_crypto', 'ssl'), + ('receipt_template', 'receipt_default'), + ('theme', 'flatly'), + ('statistics', '1'), + ('language', 'english'), + ('language_code', 'en'); -- -------------------------------------------------------- @@ -92,14 +92,14 @@ INSERT INTO `ospos_app_config` (`key`, `value`) VALUES -- CREATE TABLE `ospos_customers` ( - `person_id` int(10) NOT NULL, - `company_name` varchar(255) DEFAULT NULL, - `account_number` varchar(255) DEFAULT NULL, - `taxable` int(1) NOT NULL DEFAULT '1', - `discount_percent` decimal(15,2) NOT NULL DEFAULT '0', - `deleted` int(1) NOT NULL DEFAULT '0', - PRIMARY KEY `person_id` (`person_id`), - UNIQUE KEY `account_number` (`account_number`) + `person_id` int(10) NOT NULL, + `company_name` varchar(255) DEFAULT NULL, + `account_number` varchar(255) DEFAULT NULL, + `taxable` int(1) NOT NULL DEFAULT '1', + `discount_percent` decimal(15,2) NOT NULL DEFAULT '0', + `deleted` int(1) NOT NULL DEFAULT '0', + PRIMARY KEY `person_id` (`person_id`), + UNIQUE KEY `account_number` (`account_number`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- @@ -114,13 +114,13 @@ CREATE TABLE `ospos_customers` ( -- CREATE TABLE `ospos_employees` ( - `username` varchar(255) NOT NULL, - `password` varchar(255) NOT NULL, - `person_id` int(10) NOT NULL, - `deleted` int(1) NOT NULL DEFAULT '0', - `hash_version` int(1) NOT NULL DEFAULT '2', - PRIMARY KEY `person_id` (`person_id`), - UNIQUE KEY `username` (`username`) + `username` varchar(255) NOT NULL, + `password` varchar(255) NOT NULL, + `person_id` int(10) NOT NULL, + `deleted` int(1) NOT NULL DEFAULT '0', + `hash_version` int(1) NOT NULL DEFAULT '2', + PRIMARY KEY `person_id` (`person_id`), + UNIQUE KEY `username` (`username`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- @@ -128,7 +128,7 @@ CREATE TABLE `ospos_employees` ( -- INSERT INTO `ospos_employees` (`username`, `password`, `person_id`, `deleted`, `hash_version`) VALUES - ('admin', '$2y$10$vJBSMlD02EC7ENSrKfVQXuvq9tNRHMtcOA8MSK2NYS748HHWm.gcG', 1, 0, 2); + ('admin', '$2y$10$vJBSMlD02EC7ENSrKfVQXuvq9tNRHMtcOA8MSK2NYS748HHWm.gcG', 1, 0, 2); -- -------------------------------------------------------- @@ -137,15 +137,15 @@ INSERT INTO `ospos_employees` (`username`, `password`, `person_id`, `deleted`, ` -- CREATE TABLE `ospos_giftcards` ( - `record_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, - `giftcard_id` int(11) NOT NULL AUTO_INCREMENT, - `giftcard_number` int(10) NOT NULL, - `value` decimal(15,2) NOT NULL, - `deleted` int(1) NOT NULL DEFAULT '0', - `person_id` INT(10) DEFAULT NULL, - PRIMARY KEY (`giftcard_id`), - UNIQUE KEY `giftcard_number` (`giftcard_number`), - KEY `person_id` (`person_id`) + `record_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `giftcard_id` int(11) NOT NULL AUTO_INCREMENT, + `giftcard_number` int(10) NOT NULL, + `value` decimal(15,2) NOT NULL, + `deleted` int(1) NOT NULL DEFAULT '0', + `person_id` INT(10) DEFAULT NULL, + PRIMARY KEY (`giftcard_id`), + UNIQUE KEY `giftcard_number` (`giftcard_number`), + KEY `person_id` (`person_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- @@ -160,17 +160,17 @@ CREATE TABLE `ospos_giftcards` ( -- CREATE TABLE `ospos_inventory` ( - `trans_id` int(11) NOT NULL AUTO_INCREMENT, - `trans_items` int(11) NOT NULL DEFAULT '0', - `trans_user` int(11) NOT NULL DEFAULT '0', - `trans_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, - `trans_comment` text NOT NULL, - `trans_location` int(11) NOT NULL, - `trans_inventory` decimal(15,3) NOT NULL DEFAULT '0', - PRIMARY KEY (`trans_id`), - KEY `trans_items` (`trans_items`), - KEY `trans_user` (`trans_user`), - KEY `trans_location` (`trans_location`) + `trans_id` int(11) NOT NULL AUTO_INCREMENT, + `trans_items` int(11) NOT NULL DEFAULT '0', + `trans_user` int(11) NOT NULL DEFAULT '0', + `trans_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `trans_comment` text NOT NULL, + `trans_location` int(11) NOT NULL, + `trans_inventory` decimal(15,3) NOT NULL DEFAULT '0', + PRIMARY KEY (`trans_id`), + KEY `trans_items` (`trans_items`), + KEY `trans_user` (`trans_user`), + KEY `trans_location` (`trans_location`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 ; -- @@ -185,33 +185,33 @@ CREATE TABLE `ospos_inventory` ( -- CREATE TABLE `ospos_items` ( - `name` varchar(255) NOT NULL, - `category` varchar(255) NOT NULL, - `supplier_id` int(11) DEFAULT NULL, - `item_number` varchar(255) DEFAULT NULL, - `description` varchar(255) NOT NULL, - `cost_price` decimal(15,2) NOT NULL, - `unit_price` decimal(15,2) NOT NULL, - `reorder_level` decimal(15,3) NOT NULL DEFAULT '0', - `receiving_quantity` decimal(15,3) NOT NULL DEFAULT '1', - `item_id` int(10) NOT NULL AUTO_INCREMENT, - `pic_id` int(10) DEFAULT NULL, - `allow_alt_description` tinyint(1) NOT NULL, - `is_serialized` tinyint(1) NOT NULL, - `deleted` int(1) NOT NULL DEFAULT '0', - `custom1` VARCHAR(25) NOT NULL, - `custom2` VARCHAR(25) NOT NULL, - `custom3` VARCHAR(25) NOT NULL, - `custom4` VARCHAR(25) NOT NULL, - `custom5` VARCHAR(25) NOT NULL, - `custom6` VARCHAR(25) NOT NULL, - `custom7` VARCHAR(25) NOT NULL, - `custom8` VARCHAR(25) NOT NULL, - `custom9` VARCHAR(25) NOT NULL, - `custom10` VARCHAR(25) NOT NULL, - PRIMARY KEY (`item_id`), - UNIQUE KEY `item_number` (`item_number`), - KEY `supplier_id` (`supplier_id`) + `name` varchar(255) NOT NULL, + `category` varchar(255) NOT NULL, + `supplier_id` int(11) DEFAULT NULL, + `item_number` varchar(255) DEFAULT NULL, + `description` varchar(255) NOT NULL, + `cost_price` decimal(15,2) NOT NULL, + `unit_price` decimal(15,2) NOT NULL, + `reorder_level` decimal(15,3) NOT NULL DEFAULT '0', + `receiving_quantity` decimal(15,3) NOT NULL DEFAULT '1', + `item_id` int(10) NOT NULL AUTO_INCREMENT, + `pic_id` int(10) DEFAULT NULL, + `allow_alt_description` tinyint(1) NOT NULL, + `is_serialized` tinyint(1) NOT NULL, + `deleted` int(1) NOT NULL DEFAULT '0', + `custom1` VARCHAR(25) NOT NULL, + `custom2` VARCHAR(25) NOT NULL, + `custom3` VARCHAR(25) NOT NULL, + `custom4` VARCHAR(25) NOT NULL, + `custom5` VARCHAR(25) NOT NULL, + `custom6` VARCHAR(25) NOT NULL, + `custom7` VARCHAR(25) NOT NULL, + `custom8` VARCHAR(25) NOT NULL, + `custom9` VARCHAR(25) NOT NULL, + `custom10` VARCHAR(25) NOT NULL, + PRIMARY KEY (`item_id`), + UNIQUE KEY `item_number` (`item_number`), + KEY `supplier_id` (`supplier_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 ; -- @@ -226,10 +226,10 @@ CREATE TABLE `ospos_items` ( -- CREATE TABLE `ospos_items_taxes` ( - `item_id` int(10) NOT NULL, - `name` varchar(255) NOT NULL, - `percent` decimal(15,3) NOT NULL, - PRIMARY KEY (`item_id`,`name`,`percent`) + `item_id` int(10) NOT NULL, + `name` varchar(255) NOT NULL, + `percent` decimal(15,3) NOT NULL, + PRIMARY KEY (`item_id`,`name`,`percent`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- @@ -244,10 +244,10 @@ CREATE TABLE `ospos_items_taxes` ( -- CREATE TABLE `ospos_item_kits` ( - `item_kit_id` int(11) NOT NULL AUTO_INCREMENT, - `name` varchar(255) NOT NULL, - `description` varchar(255) NOT NULL, - PRIMARY KEY (`item_kit_id`) + `item_kit_id` int(11) NOT NULL AUTO_INCREMENT, + `name` varchar(255) NOT NULL, + `description` varchar(255) NOT NULL, + PRIMARY KEY (`item_kit_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 ; -- @@ -262,11 +262,11 @@ CREATE TABLE `ospos_item_kits` ( -- CREATE TABLE `ospos_item_kit_items` ( - `item_kit_id` int(11) NOT NULL, - `item_id` int(11) NOT NULL, - `quantity` decimal(15,3) NOT NULL, - PRIMARY KEY (`item_kit_id`,`item_id`,`quantity`), - KEY `ospos_item_kit_items_ibfk_2` (`item_id`) + `item_kit_id` int(11) NOT NULL, + `item_id` int(11) NOT NULL, + `quantity` decimal(15,3) NOT NULL, + PRIMARY KEY (`item_kit_id`,`item_id`,`quantity`), + KEY `ospos_item_kit_items_ibfk_2` (`item_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- @@ -280,12 +280,12 @@ CREATE TABLE `ospos_item_kit_items` ( -- CREATE TABLE IF NOT EXISTS `ospos_item_quantities` ( - `item_id` int(11) NOT NULL, - `location_id` int(11) NOT NULL, - `quantity` decimal(15,3) NOT NULL DEFAULT '0', - PRIMARY KEY (`item_id`,`location_id`), - KEY `item_id` (`item_id`), - KEY `location_id` (`location_id`) + `item_id` int(11) NOT NULL, + `location_id` int(11) NOT NULL, + `quantity` decimal(15,3) NOT NULL DEFAULT '0', + PRIMARY KEY (`item_id`,`location_id`), + KEY `item_id` (`item_id`), + KEY `location_id` (`location_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 ; -- -------------------------------------------------------- @@ -295,13 +295,13 @@ CREATE TABLE IF NOT EXISTS `ospos_item_quantities` ( -- CREATE TABLE `ospos_modules` ( - `name_lang_key` varchar(255) NOT NULL, - `desc_lang_key` varchar(255) NOT NULL, - `sort` int(10) NOT NULL, - `module_id` varchar(255) NOT NULL, - PRIMARY KEY (`module_id`), - UNIQUE KEY `desc_lang_key` (`desc_lang_key`), - UNIQUE KEY `name_lang_key` (`name_lang_key`) + `name_lang_key` varchar(255) NOT NULL, + `desc_lang_key` varchar(255) NOT NULL, + `sort` int(10) NOT NULL, + `module_id` varchar(255) NOT NULL, + PRIMARY KEY (`module_id`), + UNIQUE KEY `desc_lang_key` (`desc_lang_key`), + UNIQUE KEY `name_lang_key` (`name_lang_key`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- @@ -309,17 +309,17 @@ CREATE TABLE `ospos_modules` ( -- INSERT INTO `ospos_modules` (`name_lang_key`, `desc_lang_key`, `sort`, `module_id`) VALUES - ('module_config', 'module_config_desc', 110, 'config'), - ('module_customers', 'module_customers_desc', 10, 'customers'), - ('module_employees', 'module_employees_desc', 80, 'employees'), - ('module_giftcards', 'module_giftcards_desc', 90, 'giftcards'), - ('module_items', 'module_items_desc', 20, 'items'), - ('module_item_kits', 'module_item_kits_desc', 30, 'item_kits'), - ('module_messages', 'module_messages_desc', 100, 'messages'), - ('module_receivings', 'module_receivings_desc', 60, 'receivings'), - ('module_reports', 'module_reports_desc', 50, 'reports'), - ('module_sales', 'module_sales_desc', 70, 'sales'), - ('module_suppliers', 'module_suppliers_desc', 40, 'suppliers'); + ('module_config', 'module_config_desc', 110, 'config'), + ('module_customers', 'module_customers_desc', 10, 'customers'), + ('module_employees', 'module_employees_desc', 80, 'employees'), + ('module_giftcards', 'module_giftcards_desc', 90, 'giftcards'), + ('module_items', 'module_items_desc', 20, 'items'), + ('module_item_kits', 'module_item_kits_desc', 30, 'item_kits'), + ('module_messages', 'module_messages_desc', 100, 'messages'), + ('module_receivings', 'module_receivings_desc', 60, 'receivings'), + ('module_reports', 'module_reports_desc', 50, 'reports'), + ('module_sales', 'module_sales_desc', 70, 'sales'), + ('module_suppliers', 'module_suppliers_desc', 40, 'suppliers'); -- -------------------------------------------------------- @@ -328,20 +328,20 @@ INSERT INTO `ospos_modules` (`name_lang_key`, `desc_lang_key`, `sort`, `module_i -- CREATE TABLE `ospos_people` ( - `first_name` varchar(255) NOT NULL, - `last_name` varchar(255) NOT NULL, - `gender` int(1) DEFAULT NULL, - `phone_number` varchar(255) NOT NULL, - `email` varchar(255) NOT NULL, - `address_1` varchar(255) NOT NULL, - `address_2` varchar(255) NOT NULL, - `city` varchar(255) NOT NULL, - `state` varchar(255) NOT NULL, - `zip` varchar(255) NOT NULL, - `country` varchar(255) NOT NULL, - `comments` text NOT NULL, - `person_id` int(10) NOT NULL AUTO_INCREMENT, - PRIMARY KEY (`person_id`) + `first_name` varchar(255) NOT NULL, + `last_name` varchar(255) NOT NULL, + `gender` int(1) DEFAULT NULL, + `phone_number` varchar(255) NOT NULL, + `email` varchar(255) NOT NULL, + `address_1` varchar(255) NOT NULL, + `address_2` varchar(255) NOT NULL, + `city` varchar(255) NOT NULL, + `state` varchar(255) NOT NULL, + `zip` varchar(255) NOT NULL, + `country` varchar(255) NOT NULL, + `comments` text NOT NULL, + `person_id` int(10) NOT NULL AUTO_INCREMENT, + PRIMARY KEY (`person_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 ; -- @@ -349,7 +349,7 @@ CREATE TABLE `ospos_people` ( -- INSERT INTO `ospos_people` (`first_name`, `last_name`, `phone_number`, `email`, `address_1`, `address_2`, `city`, `state`, `zip`, `country`, `comments`, `person_id`) VALUES - ('John', 'Doe', '555-555-5555', 'changeme@example.com', 'Address 1', '', '', '', '', '', '', 1); + ('John', 'Doe', '555-555-5555', 'changeme@example.com', 'Address 1', '', '', '', '', '', '', 1); -- -------------------------------------------------------- @@ -358,11 +358,11 @@ INSERT INTO `ospos_people` (`first_name`, `last_name`, `phone_number`, `email`, -- CREATE TABLE `ospos_permissions` ( - `permission_id` varchar(255) NOT NULL, - `module_id` varchar(255) NOT NULL, - `location_id` int(10) DEFAULT NULL, - PRIMARY KEY (`permission_id`), - KEY `module_id` (`module_id`) + `permission_id` varchar(255) NOT NULL, + `module_id` varchar(255) NOT NULL, + `location_id` int(10) DEFAULT NULL, + PRIMARY KEY (`permission_id`), + KEY `module_id` (`module_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- @@ -370,33 +370,33 @@ CREATE TABLE `ospos_permissions` ( -- INSERT INTO `ospos_permissions` (`permission_id`, `module_id`) VALUES - ('reports_customers', 'reports'), - ('reports_receivings', 'reports'), - ('reports_items', 'reports'), - ('reports_employees', 'reports'), - ('reports_suppliers', 'reports'), - ('reports_sales', 'reports'), - ('reports_discounts', 'reports'), - ('reports_taxes', 'reports'), - ('reports_inventory', 'reports'), - ('reports_categories', 'reports'), - ('reports_payments', 'reports'), - ('customers', 'customers'), - ('employees', 'employees'), - ('giftcards', 'giftcards'), - ('items', 'items'), - ('item_kits', 'item_kits'), - ('messages', 'messages'), - ('receivings', 'receivings'), - ('reports', 'reports'), - ('sales', 'sales'), - ('config', 'config'), - ('suppliers', 'suppliers'); + ('reports_customers', 'reports'), + ('reports_receivings', 'reports'), + ('reports_items', 'reports'), + ('reports_employees', 'reports'), + ('reports_suppliers', 'reports'), + ('reports_sales', 'reports'), + ('reports_discounts', 'reports'), + ('reports_taxes', 'reports'), + ('reports_inventory', 'reports'), + ('reports_categories', 'reports'), + ('reports_payments', 'reports'), + ('customers', 'customers'), + ('employees', 'employees'), + ('giftcards', 'giftcards'), + ('items', 'items'), + ('item_kits', 'item_kits'), + ('messages', 'messages'), + ('receivings', 'receivings'), + ('reports', 'reports'), + ('sales', 'sales'), + ('config', 'config'), + ('suppliers', 'suppliers'); INSERT INTO `ospos_permissions` (`permission_id`, `module_id`, `location_id`) VALUES - ('items_stock', 'items', 1), - ('sales_stock', 'sales', 1), - ('receivings_stock', 'receivings', 1); + ('items_stock', 'items', 1), + ('sales_stock', 'sales', 1), + ('receivings_stock', 'receivings', 1); -- -------------------------------------------------------- @@ -405,9 +405,9 @@ INSERT INTO `ospos_permissions` (`permission_id`, `module_id`, `location_id`) VA -- CREATE TABLE `ospos_grants` ( - `permission_id` varchar(255) NOT NULL, - `person_id` int(10) NOT NULL, - PRIMARY KEY (`permission_id`,`person_id`) + `permission_id` varchar(255) NOT NULL, + `person_id` int(10) NOT NULL, + PRIMARY KEY (`permission_id`,`person_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- @@ -416,48 +416,48 @@ CREATE TABLE `ospos_grants` ( -- -------------------------------------------------------- INSERT INTO `ospos_grants` (`permission_id`, `person_id`) VALUES - ('reports_customers', 1), - ('reports_receivings', 1), - ('reports_items', 1), - ('reports_inventory', 1), - ('reports_employees', 1), - ('reports_suppliers', 1), - ('reports_sales', 1), - ('reports_discounts', 1), - ('reports_taxes', 1), - ('reports_categories', 1), - ('reports_payments', 1), - ('customers', 1), - ('employees', 1), - ('giftcards', 1), - ('items', 1), - ('item_kits', 1), - ('messages', 1), - ('receivings', 1), - ('reports', 1), - ('sales', 1), - ('config', 1), - ('items_stock', 1), - ('sales_stock', 1), - ('receivings_stock', 1), - ('suppliers', 1); + ('reports_customers', 1), + ('reports_receivings', 1), + ('reports_items', 1), + ('reports_inventory', 1), + ('reports_employees', 1), + ('reports_suppliers', 1), + ('reports_sales', 1), + ('reports_discounts', 1), + ('reports_taxes', 1), + ('reports_categories', 1), + ('reports_payments', 1), + ('customers', 1), + ('employees', 1), + ('giftcards', 1), + ('items', 1), + ('item_kits', 1), + ('messages', 1), + ('receivings', 1), + ('reports', 1), + ('sales', 1), + ('config', 1), + ('items_stock', 1), + ('sales_stock', 1), + ('receivings_stock', 1), + ('suppliers', 1); -- -- Table structure for table `ospos_receivings` -- CREATE TABLE `ospos_receivings` ( - `receiving_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, - `supplier_id` int(10) DEFAULT NULL, - `employee_id` int(10) NOT NULL DEFAULT '0', - `comment` text NOT NULL, - `receiving_id` int(10) NOT NULL AUTO_INCREMENT, - `payment_type` varchar(20) DEFAULT NULL, - `reference` varchar(32) DEFAULT NULL, - PRIMARY KEY (`receiving_id`), - KEY `supplier_id` (`supplier_id`), - KEY `employee_id` (`employee_id`), - KEY `reference` (`reference`) + `receiving_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `supplier_id` int(10) DEFAULT NULL, + `employee_id` int(10) NOT NULL DEFAULT '0', + `comment` text NOT NULL, + `receiving_id` int(10) NOT NULL AUTO_INCREMENT, + `payment_type` varchar(20) DEFAULT NULL, + `reference` varchar(32) DEFAULT NULL, + PRIMARY KEY (`receiving_id`), + KEY `supplier_id` (`supplier_id`), + KEY `employee_id` (`employee_id`), + KEY `reference` (`reference`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 ; -- @@ -472,19 +472,19 @@ CREATE TABLE `ospos_receivings` ( -- CREATE TABLE `ospos_receivings_items` ( - `receiving_id` int(10) NOT NULL DEFAULT '0', - `item_id` int(10) NOT NULL DEFAULT '0', - `description` varchar(30) DEFAULT NULL, - `serialnumber` varchar(30) DEFAULT NULL, - `line` int(3) NOT NULL, - `quantity_purchased` decimal(15,3) NOT NULL DEFAULT '0', - `item_cost_price` decimal(15,2) NOT NULL, - `item_unit_price` decimal(15,2) NOT NULL, - `discount_percent` decimal(15,2) NOT NULL DEFAULT '0', - `item_location` int(11) NOT NULL, - `receiving_quantity` decimal(15,3) NOT NULL DEFAULT '1', - PRIMARY KEY (`receiving_id`,`item_id`,`line`), - KEY `item_id` (`item_id`) + `receiving_id` int(10) NOT NULL DEFAULT '0', + `item_id` int(10) NOT NULL DEFAULT '0', + `description` varchar(30) DEFAULT NULL, + `serialnumber` varchar(30) DEFAULT NULL, + `line` int(3) NOT NULL, + `quantity_purchased` decimal(15,3) NOT NULL DEFAULT '0', + `item_cost_price` decimal(15,2) NOT NULL, + `item_unit_price` decimal(15,2) NOT NULL, + `discount_percent` decimal(15,2) NOT NULL DEFAULT '0', + `item_location` int(11) NOT NULL, + `receiving_quantity` decimal(15,3) NOT NULL DEFAULT '1', + PRIMARY KEY (`receiving_id`,`item_id`,`line`), + KEY `item_id` (`item_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- @@ -499,17 +499,17 @@ CREATE TABLE `ospos_receivings_items` ( -- CREATE TABLE `ospos_sales` ( - `sale_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, - `customer_id` int(10) DEFAULT NULL, - `employee_id` int(10) NOT NULL DEFAULT '0', - `comment` text NOT NULL, - `invoice_number` varchar(32) DEFAULT NULL, - `sale_id` int(10) NOT NULL AUTO_INCREMENT, - PRIMARY KEY (`sale_id`), - KEY `customer_id` (`customer_id`), - KEY `employee_id` (`employee_id`), - KEY `sale_time` (`sale_time`), - UNIQUE KEY `invoice_number` (`invoice_number`) + `sale_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `customer_id` int(10) DEFAULT NULL, + `employee_id` int(10) NOT NULL DEFAULT '0', + `comment` text NOT NULL, + `invoice_number` varchar(32) DEFAULT NULL, + `sale_id` int(10) NOT NULL AUTO_INCREMENT, + PRIMARY KEY (`sale_id`), + KEY `customer_id` (`customer_id`), + KEY `employee_id` (`employee_id`), + KEY `sale_time` (`sale_time`), + UNIQUE KEY `invoice_number` (`invoice_number`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 ; -- @@ -524,20 +524,20 @@ CREATE TABLE `ospos_sales` ( -- CREATE TABLE `ospos_sales_items` ( - `sale_id` int(10) NOT NULL DEFAULT '0', - `item_id` int(10) NOT NULL DEFAULT '0', - `description` varchar(30) DEFAULT NULL, - `serialnumber` varchar(30) DEFAULT NULL, - `line` int(3) NOT NULL DEFAULT '0', - `quantity_purchased` decimal(15,3) NOT NULL DEFAULT '0', - `item_cost_price` decimal(15,2) NOT NULL, - `item_unit_price` decimal(15,2) NOT NULL, - `discount_percent` decimal(15,2) NOT NULL DEFAULT '0', - `item_location` int(11) NOT NULL, - PRIMARY KEY (`sale_id`,`item_id`,`line`), - KEY `sale_id` (`sale_id`), - KEY `item_id` (`item_id`), - KEY `item_location` (`item_location`) + `sale_id` int(10) NOT NULL DEFAULT '0', + `item_id` int(10) NOT NULL DEFAULT '0', + `description` varchar(30) DEFAULT NULL, + `serialnumber` varchar(30) DEFAULT NULL, + `line` int(3) NOT NULL DEFAULT '0', + `quantity_purchased` decimal(15,3) NOT NULL DEFAULT '0', + `item_cost_price` decimal(15,2) NOT NULL, + `item_unit_price` decimal(15,2) NOT NULL, + `discount_percent` decimal(15,2) NOT NULL DEFAULT '0', + `item_location` int(11) NOT NULL, + PRIMARY KEY (`sale_id`,`item_id`,`line`), + KEY `sale_id` (`sale_id`), + KEY `item_id` (`item_id`), + KEY `item_location` (`item_location`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- @@ -552,14 +552,14 @@ CREATE TABLE `ospos_sales_items` ( -- CREATE TABLE `ospos_sales_items_taxes` ( - `sale_id` int(10) NOT NULL, - `item_id` int(10) NOT NULL, - `line` int(3) NOT NULL DEFAULT '0', - `name` varchar(255) NOT NULL, - `percent` decimal(15,3) NOT NULL, - PRIMARY KEY (`sale_id`,`item_id`,`line`,`name`,`percent`), - KEY `sale_id` (`sale_id`), - KEY `item_id` (`item_id`) + `sale_id` int(10) NOT NULL, + `item_id` int(10) NOT NULL, + `line` int(3) NOT NULL DEFAULT '0', + `name` varchar(255) NOT NULL, + `percent` decimal(15,3) NOT NULL, + PRIMARY KEY (`sale_id`,`item_id`,`line`,`name`,`percent`), + KEY `sale_id` (`sale_id`), + KEY `item_id` (`item_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- @@ -573,11 +573,11 @@ CREATE TABLE `ospos_sales_items_taxes` ( -- CREATE TABLE `ospos_sales_payments` ( - `sale_id` int(10) NOT NULL, - `payment_type` varchar(40) NOT NULL, - `payment_amount` decimal(15,2) NOT NULL, - PRIMARY KEY (`sale_id`,`payment_type`), - KEY `sale_id` (`sale_id`) + `sale_id` int(10) NOT NULL, + `payment_type` varchar(40) NOT NULL, + `payment_amount` decimal(15,2) NOT NULL, + PRIMARY KEY (`sale_id`,`payment_type`), + KEY `sale_id` (`sale_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- @@ -592,15 +592,15 @@ CREATE TABLE `ospos_sales_payments` ( -- CREATE TABLE `ospos_sales_suspended` ( - `sale_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, - `customer_id` int(10) DEFAULT NULL, - `employee_id` int(10) NOT NULL DEFAULT '0', - `comment` text NOT NULL, - `invoice_number` varchar(32) DEFAULT NULL, - `sale_id` int(10) NOT NULL AUTO_INCREMENT, - PRIMARY KEY (`sale_id`), - KEY `customer_id` (`customer_id`), - KEY `employee_id` (`employee_id`) + `sale_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `customer_id` int(10) DEFAULT NULL, + `employee_id` int(10) NOT NULL DEFAULT '0', + `comment` text NOT NULL, + `invoice_number` varchar(32) DEFAULT NULL, + `sale_id` int(10) NOT NULL AUTO_INCREMENT, + PRIMARY KEY (`sale_id`), + KEY `customer_id` (`customer_id`), + KEY `employee_id` (`employee_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 ; -- @@ -615,19 +615,19 @@ CREATE TABLE `ospos_sales_suspended` ( -- CREATE TABLE `ospos_sales_suspended_items` ( - `sale_id` int(10) NOT NULL DEFAULT '0', - `item_id` int(10) NOT NULL DEFAULT '0', - `description` varchar(30) DEFAULT NULL, - `serialnumber` varchar(30) DEFAULT NULL, - `line` int(3) NOT NULL DEFAULT '0', - `quantity_purchased` decimal(15,3) NOT NULL DEFAULT '0', - `item_cost_price` decimal(15,2) NOT NULL, - `item_unit_price` decimal(15,2) NOT NULL, - `discount_percent` decimal(15,2) NOT NULL DEFAULT '0', - `item_location` int(11) NOT NULL, - PRIMARY KEY (`sale_id`,`item_id`,`line`), - KEY `sale_id` (`sale_id`), - KEY `item_id` (`item_id`) + `sale_id` int(10) NOT NULL DEFAULT '0', + `item_id` int(10) NOT NULL DEFAULT '0', + `description` varchar(30) DEFAULT NULL, + `serialnumber` varchar(30) DEFAULT NULL, + `line` int(3) NOT NULL DEFAULT '0', + `quantity_purchased` decimal(15,3) NOT NULL DEFAULT '0', + `item_cost_price` decimal(15,2) NOT NULL, + `item_unit_price` decimal(15,2) NOT NULL, + `discount_percent` decimal(15,2) NOT NULL DEFAULT '0', + `item_location` int(11) NOT NULL, + PRIMARY KEY (`sale_id`,`item_id`,`line`), + KEY `sale_id` (`sale_id`), + KEY `item_id` (`item_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- @@ -642,13 +642,13 @@ CREATE TABLE `ospos_sales_suspended_items` ( -- CREATE TABLE `ospos_sales_suspended_items_taxes` ( - `sale_id` int(10) NOT NULL, - `item_id` int(10) NOT NULL, - `line` int(3) NOT NULL DEFAULT '0', - `name` varchar(255) NOT NULL, - `percent` decimal(15,3) NOT NULL, - PRIMARY KEY (`sale_id`,`item_id`,`line`,`name`,`percent`), - KEY `item_id` (`item_id`) + `sale_id` int(10) NOT NULL, + `item_id` int(10) NOT NULL, + `line` int(3) NOT NULL DEFAULT '0', + `name` varchar(255) NOT NULL, + `percent` decimal(15,3) NOT NULL, + PRIMARY KEY (`sale_id`,`item_id`,`line`,`name`,`percent`), + KEY `item_id` (`item_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- @@ -663,10 +663,10 @@ CREATE TABLE `ospos_sales_suspended_items_taxes` ( -- CREATE TABLE `ospos_sales_suspended_payments` ( - `sale_id` int(10) NOT NULL, - `payment_type` varchar(40) NOT NULL, - `payment_amount` decimal(15,2) NOT NULL, - PRIMARY KEY (`sale_id`,`payment_type`) + `sale_id` int(10) NOT NULL, + `payment_type` varchar(40) NOT NULL, + `payment_amount` decimal(15,2) NOT NULL, + PRIMARY KEY (`sale_id`,`payment_type`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- @@ -681,11 +681,11 @@ CREATE TABLE `ospos_sales_suspended_payments` ( -- CREATE TABLE `ospos_sessions` ( - `id` varchar(40) NOT NULL, - `ip_address` varchar(45) NOT NULL, - `timestamp` int(10) unsigned DEFAULT 0 NOT NULL, - `data` blob NOT NULL, - KEY `ci_sessions_timestamp` (`timestamp`) + `id` varchar(40) NOT NULL, + `ip_address` varchar(45) NOT NULL, + `timestamp` int(10) unsigned DEFAULT 0 NOT NULL, + `data` blob NOT NULL, + KEY `ci_sessions_timestamp` (`timestamp`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- @@ -699,10 +699,10 @@ CREATE TABLE `ospos_sessions` ( -- CREATE TABLE `ospos_stock_locations` ( - `location_id` int(11) NOT NULL AUTO_INCREMENT, - `location_name` varchar(255) DEFAULT NULL, - `deleted` int(1) NOT NULL DEFAULT '0', - PRIMARY KEY (`location_id`) + `location_id` int(11) NOT NULL AUTO_INCREMENT, + `location_name` varchar(255) DEFAULT NULL, + `deleted` int(1) NOT NULL DEFAULT '0', + PRIMARY KEY (`location_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 ; -- @@ -718,13 +718,13 @@ INSERT INTO `ospos_stock_locations` ( `deleted`, `location_name` ) VALUES ('0', -- CREATE TABLE `ospos_suppliers` ( - `person_id` int(10) NOT NULL, - `company_name` varchar(255) NOT NULL, - `agency_name` varchar(255) NOT NULL, - `account_number` varchar(255) DEFAULT NULL, - `deleted` int(1) NOT NULL DEFAULT '0', - PRIMARY KEY `person_id` (`person_id`), - UNIQUE KEY `account_number` (`account_number`) + `person_id` int(10) NOT NULL, + `company_name` varchar(255) NOT NULL, + `agency_name` varchar(255) NOT NULL, + `account_number` varchar(255) DEFAULT NULL, + `deleted` int(1) NOT NULL DEFAULT '0', + PRIMARY KEY `person_id` (`person_id`), + UNIQUE KEY `account_number` (`account_number`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- diff --git a/app/Events/Db_log.php b/app/Events/Db_log.php index ab646b6bb..9fd755ea3 100644 --- a/app/Events/Db_log.php +++ b/app/Events/Db_log.php @@ -7,74 +7,74 @@ use Config\App; class Db_log { - private App $config; + private App $config; - /** - * @return void - */ - public function db_log_queries(): void - { - $this->config = config('App'); + /** + * @return void + */ + public function db_log_queries(): void + { + $this->config = config('App'); - if($this->config->db_log_enabled) - { - $filepath = WRITEPATH . 'logs/Query-log-' . date('Y-m-d') . '.log'; - $handle = fopen($filepath, "a+"); - $message = $this->generate_message(); + if($this->config->db_log_enabled) + { + $filepath = WRITEPATH . 'logs/Query-log-' . date('Y-m-d') . '.log'; + $handle = fopen($filepath, "a+"); + $message = $this->generate_message(); - if(strlen($message) > 0) - { - fwrite($handle, $message . "\n\n"); - } + if(strlen($message) > 0) + { + fwrite($handle, $message . "\n\n"); + } - // Close the file - fclose($handle); - } - } + // Close the file + fclose($handle); + } + } - /** - * @return string - */ - private function generate_message(): string - { - $db = Database::connect(); - $last_query = $db->getLastQuery(); - $affected_rows = $db->affectedRows(); - $execution_time = $this->convert_time($last_query->getDuration()); + /** + * @return string + */ + private function generate_message(): string + { + $db = Database::connect(); + $last_query = $db->getLastQuery(); + $affected_rows = $db->affectedRows(); + $execution_time = $this->convert_time($last_query->getDuration()); - $message = '*** Query: ' . date('Y-m-d H:i:s T') . ' *******************' - . "\n" . $last_query->getQuery() - . "\n Affected rows: $affected_rows" - . "\n Execution Time: " . $execution_time['time'] . ' ' . $execution_time['unit']; + $message = '*** Query: ' . date('Y-m-d H:i:s T') . ' *******************' + . "\n" . $last_query->getQuery() + . "\n Affected rows: $affected_rows" + . "\n Execution Time: " . $execution_time['time'] . ' ' . $execution_time['unit']; - $long_query = ($execution_time['unit'] === 's') && ($execution_time['time'] > 0.5); - if($long_query) - { - $message .= ' [LONG RUNNING QUERY]'; - } + $long_query = ($execution_time['unit'] === 's') && ($execution_time['time'] > 0.5); + if($long_query) + { + $message .= ' [LONG RUNNING QUERY]'; + } - return $this->config->db_log_only_long && !$long_query ? '' : $message; - } + return $this->config->db_log_only_long && !$long_query ? '' : $message; + } - /** - * @param float $time - * @return array - */ - private function convert_time(float $time): array - { - $unit = 's'; + /** + * @param float $time + * @return array + */ + private function convert_time(float $time): array + { + $unit = 's'; - if($time <= 0.1 && $time > 0.0001) - { - $time = $time * 1000; - $unit = 'ms'; - } - elseif($time <= 0.0001) - { - $time = $time * 1000000; - $unit = 'µs'; - } + if($time <= 0.1 && $time > 0.0001) + { + $time = $time * 1000; + $unit = 'ms'; + } + elseif($time <= 0.0001) + { + $time = $time * 1000000; + $unit = 'µs'; + } - return ['time' => $time, 'unit' => $unit]; - } + return ['time' => $time, 'unit' => $unit]; + } } diff --git a/app/Events/Load_config.php b/app/Events/Load_config.php index b14417f87..e8fbfcb26 100644 --- a/app/Events/Load_config.php +++ b/app/Events/Load_config.php @@ -17,42 +17,42 @@ use Config\Services; */ class Load_config { - public Session $session; + public Session $session; - /** - * Loads configuration from database into App CI config and then applies those settings - */ - public function load_config(): void - { - //Migrations - $migration_config = config('Migrations'); - $migration = new MY_Migration($migration_config); + /** + * Loads configuration from database into App CI config and then applies those settings + */ + public function load_config(): void + { + //Migrations + $migration_config = config('Migrations'); + $migration = new MY_Migration($migration_config); - $this->session = session(); + $this->session = session(); - //Database Configuration - $config = config(OSPOS::class); + //Database Configuration + $config = config(OSPOS::class); - if (!$migration->is_latest()) - { - $this->session->destroy(); - } + if (!$migration->is_latest()) + { + $this->session->destroy(); + } - //Language - $language_exists = file_exists('../app/Language/' . current_language_code()); + //Language + $language_exists = file_exists('../app/Language/' . current_language_code()); - if(current_language_code() == null || current_language() == null || !$language_exists) //TODO: current_language() is undefined - { - $config->settings['language'] = 'english'; - $config->settings['language_code'] = 'en'; - } + if(current_language_code() == null || current_language() == null || !$language_exists) //TODO: current_language() is undefined + { + $config->settings['language'] = 'english'; + $config->settings['language_code'] = 'en'; + } - $language = Services::language(); - $language->setLocale($config->settings['language_code']); + $language = Services::language(); + $language->setLocale($config->settings['language_code']); - //Time Zone - date_default_timezone_set($config->settings['timezone'] ?? ini_get('date.timezone')); + //Time Zone + date_default_timezone_set($config->settings['timezone'] ?? ini_get('date.timezone')); - bcscale(max(2, totals_decimals() + tax_decimals())); - } + bcscale(max(2, totals_decimals() + tax_decimals())); + } } diff --git a/app/Events/Method.php b/app/Events/Method.php index 04fb69e16..de5a996a5 100644 --- a/app/Events/Method.php +++ b/app/Events/Method.php @@ -4,19 +4,19 @@ namespace App\Events; class Method { - /** - * @return void - */ - public static function validate_method(): void - { - $url = $_SERVER['REQUEST_URI']; + /** + * @return void + */ + public static function validate_method(): void + { + $url = $_SERVER['REQUEST_URI']; - $post_required = preg_match('/\/(save|delete*|remove*)\/?\d*?/', $url); + $post_required = preg_match('/\/(save|delete*|remove*)\/?\d*?/', $url); - if($post_required && $_SERVER["REQUEST_METHOD"] != "POST" && empty($_POST)) - { - echo "Method not allowed"; - die; - } - } + if($post_required && $_SERVER["REQUEST_METHOD"] != "POST" && empty($_POST)) + { + echo "Method not allowed"; + die; + } + } } diff --git a/app/Helpers/importfile_helper.php b/app/Helpers/importfile_helper.php index 2f121b603..22a55b377 100644 --- a/app/Helpers/importfile_helper.php +++ b/app/Helpers/importfile_helper.php @@ -7,12 +7,12 @@ */ function generate_import_items_csv(array $stock_locations, array $attributes): string { - $csv_headers = pack('CCC',0xef,0xbb,0xbf); //Encode the Byte-Order Mark (BOM) so that UTF-8 File headers display properly in Microsoft Excel - $csv_headers .= 'Id,Barcode,"Item Name",Category,"Supplier ID","Cost Price","Unit Price","Tax 1 Name","Tax 1 Percent","Tax 2 Name","Tax 2 Percent","Reorder Level",Description,"Allow Alt Description","Item has Serial Number",Image,HSN'; - $csv_headers .= generate_stock_location_headers($stock_locations); - $csv_headers .= generate_attribute_headers($attributes); + $csv_headers = pack('CCC',0xef,0xbb,0xbf); //Encode the Byte-Order Mark (BOM) so that UTF-8 File headers display properly in Microsoft Excel + $csv_headers .= 'Id,Barcode,"Item Name",Category,"Supplier ID","Cost Price","Unit Price","Tax 1 Name","Tax 1 Percent","Tax 2 Name","Tax 2 Percent","Reorder Level",Description,"Allow Alt Description","Item has Serial Number",Image,HSN'; + $csv_headers .= generate_stock_location_headers($stock_locations); + $csv_headers .= generate_attribute_headers($attributes); - return $csv_headers; + return $csv_headers; } /** @@ -21,14 +21,14 @@ function generate_import_items_csv(array $stock_locations, array $attributes): s */ function generate_stock_location_headers(array $locations): string { - $location_headers = ''; + $location_headers = ''; - foreach($locations as $location_name) - { - $location_headers .= ',"location_' . $location_name . '"'; - } + foreach($locations as $location_name) + { + $location_headers .= ',"location_' . $location_name . '"'; + } - return $location_headers; + return $location_headers; } /** @@ -37,15 +37,15 @@ function generate_stock_location_headers(array $locations): string */ function generate_attribute_headers(array $attribute_names): string { - $attribute_headers = ''; - unset($attribute_names[-1]); + $attribute_headers = ''; + unset($attribute_names[-1]); - foreach($attribute_names as $attribute_name) - { - $attribute_headers .= ',"attribute_' . $attribute_name . '"'; - } + foreach($attribute_names as $attribute_name) + { + $attribute_headers .= ',"attribute_' . $attribute_name . '"'; + } - return $attribute_headers; + return $attribute_headers; } /** @@ -55,34 +55,34 @@ function generate_attribute_headers(array $attribute_names): string */ function get_csv_file(string $file_name): array { - $csv_rows = false; + $csv_rows = false; - if(($csv_file = fopen($file_name,'r')) !== false) - { - helper('security'); + if(($csv_file = fopen($file_name,'r')) !== false) + { + helper('security'); - $csv_rows = []; + $csv_rows = []; - //Skip Byte-Order Mark - if(bom_exists($csv_file)) - { - fseek($csv_file, 3); - } + //Skip Byte-Order Mark + if(bom_exists($csv_file)) + { + fseek($csv_file, 3); + } - $headers = fgetcsv($csv_file); + $headers = fgetcsv($csv_file); - while(($row = fgetcsv($csv_file)) !== false) - { - if($row !== [null]) - { - $csv_rows[] = array_combine($headers, $row); - } - } + while(($row = fgetcsv($csv_file)) !== false) + { + if($row !== [null]) + { + $csv_rows[] = array_combine($headers, $row); + } + } - fclose($csv_file); - } + fclose($csv_file); + } - return $csv_rows; + return $csv_rows; } /** @@ -91,17 +91,17 @@ function get_csv_file(string $file_name): array */ function bom_exists(&$file_handle): bool { - $result = false; - $candidate = fread($file_handle, 3); + $result = false; + $candidate = fread($file_handle, 3); - rewind($file_handle); + rewind($file_handle); - $bom = pack('CCC', 0xef, 0xbb, 0xbf); + $bom = pack('CCC', 0xef, 0xbb, 0xbf); - if (0 === strncmp($candidate, $bom, 3)) - { - $result = true; - } + if (0 === strncmp($candidate, $bom, 3)) + { + $result = true; + } - return $result; + return $result; } diff --git a/app/Helpers/index.html b/app/Helpers/index.html index bcb7cae34..905c65ee7 100644 --- a/app/Helpers/index.html +++ b/app/Helpers/index.html @@ -1,7 +1,7 @@ - 403 Forbidden + 403 Forbidden diff --git a/app/Helpers/locale_helper.php b/app/Helpers/locale_helper.php index a1def3ae5..d1d471d12 100644 --- a/app/Helpers/locale_helper.php +++ b/app/Helpers/locale_helper.php @@ -10,22 +10,22 @@ use Config\OSPOS; */ function current_language_code(bool $load_system_language = false): string { - $employee = model(Employee::class); - $config = config(OSPOS::class)->settings; + $employee = model(Employee::class); + $config = config(OSPOS::class)->settings; - if($employee->is_logged_in() && !$load_system_language) - { - $employee_info = $employee->get_logged_in_employee_info(); + if($employee->is_logged_in() && !$load_system_language) + { + $employee_info = $employee->get_logged_in_employee_info(); - if(property_exists($employee_info, 'language_code') && !empty($employee_info->language_code)) - { - return $employee_info->language_code; - } - } + if(property_exists($employee_info, 'language_code') && !empty($employee_info->language_code)) + { + return $employee_info->language_code; + } + } - $language_code = $config['language_code']; + $language_code = $config['language_code']; - return empty($language_code) ? DEFAULT_LANGUAGE_CODE : $language_code; + return empty($language_code) ? DEFAULT_LANGUAGE_CODE : $language_code; } /** @@ -34,23 +34,23 @@ function current_language_code(bool $load_system_language = false): string */ function current_language(bool $load_system_language = false): string { - $employee = model(Employee::class); - $config = config(OSPOS::class)->settings; + $employee = model(Employee::class); + $config = config(OSPOS::class)->settings; - // Returns the language of the employee if set or system language if not - if($employee->is_logged_in() && !$load_system_language) - { - $employee_info = $employee->get_logged_in_employee_info(); + // Returns the language of the employee if set or system language if not + if($employee->is_logged_in() && !$load_system_language) + { + $employee_info = $employee->get_logged_in_employee_info(); - if(property_exists($employee_info, 'language') && !empty($employee_info->language)) - { - return $employee_info->language; - } - } + if(property_exists($employee_info, 'language') && !empty($employee_info->language)) + { + return $employee_info->language; + } + } - $language = $config['language']; + $language = $config['language']; - return empty($language) ? DEFAULT_LANGUAGE : $language; + return empty($language) ? DEFAULT_LANGUAGE : $language; } /** @@ -58,52 +58,52 @@ function current_language(bool $load_system_language = false): string */ function get_languages(): array { - $languages = [ - 'ar-EG:arabic' => 'Arabic (Egypt)', - 'ar-LB:arabic' => 'Arabic (Lebanon)', - 'az:azerbaijani' => 'Azerbaijani', - 'bg:bulgarian' => 'Bulgarian', - 'bs:bosnian' => 'Bosnian', - 'cs:czech' => 'Czech', - 'da:danish' => 'Danish', - 'de-CH:german' => 'German (Switzerland)', - 'de-DE:german' => 'German (Germany)', - 'el:greek' => 'Greek', - 'en:english' => 'English (United States)', - 'en-GB:english' => 'English (United Kingdom)', - 'es-ES:spanish' => 'Spanish (Spain)', - 'es-MX:spanish' => 'Spanish (Mexico)', - 'fa:persian' => 'Persian', - 'fr:french' => 'French', - 'he:hebrew' => 'Hebrew', - 'hr-HR:croatian' => 'Croatian (Croatia)', - 'hu:hungarian' => 'Hungarian', - 'hy:armenian' => 'Armenian', - 'id:indonesian' => 'Indonesian', - 'it:italian' => 'Italian', - 'km:centralkhmer' => 'Central Khmer', - 'lo:lao' => 'Lao', - 'ml:malayalam' => 'Malayalam', - 'nb:norwegian' => 'Norwegian', - 'nl-BE:dutch' => 'Dutch (Belgium)', - 'nl-NL:dutch' => 'Dutch (Netherlands)', - 'pl:polish' => 'Polish', - 'pt-BR:portuguese' => 'Portuguese (Brazil)', - 'ro:romanian' => 'Romanian', - 'ru:russian' => 'Russian', - 'sv:swedish' => 'Swedish', - 'ta:tamil' => 'Tamil', - 'th:thai' => 'Thai', - 'tl:tagalog' => 'Tagalog', - 'tr:turkish' => 'Turkish', - 'uk:ukrainian' => 'Ukrainian', - 'ur:urdu' => 'Urdu', - 'vi:vietnamese' => 'Vietnamese', - 'zh-Hans:simplified-chinese' => 'Chinese (Simplified)', - 'zh-Hant:traditional-chinese' => 'Chinese (Traditional)' - ]; - asort($languages); - return $languages; + $languages = [ + 'ar-EG:arabic' => 'Arabic (Egypt)', + 'ar-LB:arabic' => 'Arabic (Lebanon)', + 'az:azerbaijani' => 'Azerbaijani', + 'bg:bulgarian' => 'Bulgarian', + 'bs:bosnian' => 'Bosnian', + 'cs:czech' => 'Czech', + 'da:danish' => 'Danish', + 'de-CH:german' => 'German (Switzerland)', + 'de-DE:german' => 'German (Germany)', + 'el:greek' => 'Greek', + 'en:english' => 'English (United States)', + 'en-GB:english' => 'English (United Kingdom)', + 'es-ES:spanish' => 'Spanish (Spain)', + 'es-MX:spanish' => 'Spanish (Mexico)', + 'fa:persian' => 'Persian', + 'fr:french' => 'French', + 'he:hebrew' => 'Hebrew', + 'hr-HR:croatian' => 'Croatian (Croatia)', + 'hu:hungarian' => 'Hungarian', + 'hy:armenian' => 'Armenian', + 'id:indonesian' => 'Indonesian', + 'it:italian' => 'Italian', + 'km:centralkhmer' => 'Central Khmer', + 'lo:lao' => 'Lao', + 'ml:malayalam' => 'Malayalam', + 'nb:norwegian' => 'Norwegian', + 'nl-BE:dutch' => 'Dutch (Belgium)', + 'nl-NL:dutch' => 'Dutch (Netherlands)', + 'pl:polish' => 'Polish', + 'pt-BR:portuguese' => 'Portuguese (Brazil)', + 'ro:romanian' => 'Romanian', + 'ru:russian' => 'Russian', + 'sv:swedish' => 'Swedish', + 'ta:tamil' => 'Tamil', + 'th:thai' => 'Thai', + 'tl:tagalog' => 'Tagalog', + 'tr:turkish' => 'Turkish', + 'uk:ukrainian' => 'Ukrainian', + 'ur:urdu' => 'Urdu', + 'vi:vietnamese' => 'Vietnamese', + 'zh-Hans:simplified-chinese' => 'Chinese (Simplified)', + 'zh-Hant:traditional-chinese' => 'Chinese (Traditional)' + ]; + asort($languages); + return $languages; } /** @@ -111,101 +111,101 @@ function get_languages(): array */ function get_timezones(): array { - return [ - 'Pacific/Midway' => '(GMT-11:00) Midway Island, Samoa', - 'America/Adak' => '(GMT-10:00) Hawaii-Aleutian', - 'Etc/GMT+10' => '(GMT-10:00) Hawaii', - 'Pacific/Marquesas' => '(GMT-09:30) Marquesas Islands', - 'Pacific/Gambier' => '(GMT-09:00) Gambier Islands', - 'America/Anchorage' => '(GMT-09:00) Alaska', - 'America/Ensenada' => '(GMT-08:00) Tijuana, Baja California', - 'Etc/GMT+8' => '(GMT-08:00) Pitcairn Islands', - 'America/Los_Angeles' => '(GMT-08:00) Pacific Time (US & Canada)', - 'America/Denver' => '(GMT-07:00) Mountain Time (US & Canada)', - 'America/Chihuahua' => '(GMT-07:00) Chihuahua, La Paz, Mazatlan', - 'America/Dawson_Creek' => '(GMT-07:00) Arizona', - 'America/Belize' => '(GMT-06:00) Saskatchewan, Central America', - 'America/Mexico_City' => '(GMT-06:00) Guadalajara, Mexico City, Monterrey', - 'Chile/EasterIsland' => '(GMT-06:00) Easter Island', - 'America/Chicago' => '(GMT-06:00) Central Time (US & Canada)', - 'America/New_York' => '(GMT-05:00) Eastern Time (US & Canada)', - 'America/Cancun' => '(GMT-05:00) Cancun', - 'America/Havana' => '(GMT-05:00) Cuba', - 'America/Bogota' => '(GMT-05:00) Bogota, Lima, Quito, Rio Branco', - 'America/Caracas' => '(GMT-04:30) Caracas', - 'America/Santiago' => '(GMT-04:00) Santiago', - 'America/La_Paz' => '(GMT-04:00) La Paz', - 'Atlantic/Stanley' => '(GMT-04:00) Falkland Islands', - 'America/Campo_Grande' => '(GMT-04:00) Brazil', - 'America/Goose_Bay' => '(GMT-04:00) Atlantic Time (Goose Bay)', - 'America/Glace_Bay' => '(GMT-04:00) Atlantic Time (Canada)', - 'America/St_Johns' => '(GMT-03:30) Newfoundland', - 'America/Araguaina' => '(GMT-03:00) UTC-3', - 'America/Montevideo' => '(GMT-03:00) Montevideo', - 'America/Miquelon' => '(GMT-03:00) Miquelon, St. Pierre', - 'America/Godthab' => '(GMT-03:00) Greenland', - 'America/Argentina/Buenos_Aires' => '(GMT-03:00) Buenos Aires', - 'America/Sao_Paulo' => '(GMT-03:00) Brasilia', - 'America/Noronha' => '(GMT-02:00) Mid-Atlantic', - 'Atlantic/Cape_Verde' => '(GMT-01:00) Cape Verde Is.', - 'Atlantic/Azores' => '(GMT-01:00) Azores', - 'Europe/Belfast' => '(GMT) Greenwich Mean Time : Belfast', - 'Europe/Dublin' => '(GMT) Greenwich Mean Time : Dublin', - 'Europe/Lisbon' => '(GMT) Greenwich Mean Time : Lisbon', - 'Europe/London' => '(GMT) Greenwich Mean Time : London', - 'Africa/Abidjan' => '(GMT) Monrovia, Reykjavik', - 'Europe/Amsterdam' => '(GMT+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna', - 'Europe/Belgrade' => '(GMT+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague', - 'Europe/Brussels' => '(GMT+01:00) Brussels, Copenhagen, Madrid, Paris', - 'Africa/Algiers' => '(GMT+01:00) West Central Africa', - 'Africa/Windhoek' => '(GMT+01:00) Windhoek', - 'Asia/Beirut' => '(GMT+02:00) Beirut', - 'Africa/Cairo' => '(GMT+02:00) Cairo', - 'Asia/Gaza' => '(GMT+02:00) Gaza', - 'Africa/Blantyre' => '(GMT+02:00) Harare, Pretoria', - 'Asia/Jerusalem' => '(GMT+02:00) Jerusalem', - 'Europe/Minsk' => '(GMT+02:00) Minsk', - 'Asia/Damascus' => '(GMT+02:00) Syria', - 'Europe/Moscow' => '(GMT+03:00) Moscow, St. Petersburg, Volgograd', - 'Africa/Addis_Ababa' => '(GMT+03:00) Nairobi', - 'Asia/Tehran' => '(GMT+03:30) Tehran', - 'Asia/Dubai' => '(GMT+04:00) Abu Dhabi, Muscat', - 'Asia/Yerevan' => '(GMT+04:00) Yerevan', - 'Asia/Kabul' => '(GMT+04:30) Kabul', - 'Asia/Baku' => '(GMT+04:00) Baku', - 'Asia/Yekaterinburg' => '(GMT+05:00) Ekaterinburg', - 'Asia/Karachi' => '(GMT+05:00) Karachi, Islamabad', - 'Asia/Tashkent' => '(GMT+05:00) Tashkent', - 'Asia/Kolkata' => '(GMT+05:30) Chennai, Kolkata, Mumbai, New Delhi', - 'Asia/Katmandu' => '(GMT+05:45) Kathmandu', - 'Asia/Dhaka' => '(GMT+06:00) Astana, Dhaka', - 'Asia/Novosibirsk' => '(GMT+06:00) Novosibirsk', - 'Asia/Rangoon' => '(GMT+06:30) Yangon (Rangoon)', - 'Asia/Bangkok' => '(GMT+07:00) Bangkok, Hanoi, Jakarta', - 'Asia/Krasnoyarsk' => '(GMT+07:00) Krasnoyarsk', - 'Asia/Hong_Kong' => '(GMT+08:00) Beijing, Chongqing, Hong Kong, Urumqi', - 'Asia/Irkutsk' => '(GMT+08:00) Irkutsk, Ulaan Bataar', - 'Australia/Perth' => '(GMT+08:00) Perth', - 'Australia/Eucla' => '(GMT+08:45) Eucla', - 'Asia/Tokyo' => '(GMT+09:00) Osaka, Sapporo, Tokyo', - 'Asia/Seoul' => '(GMT+09:00) Seoul', - 'Asia/Yakutsk' => '(GMT+09:00) Yakutsk', - 'Australia/Adelaide' => '(GMT+09:30) Adelaide', - 'Australia/Darwin' => '(GMT+09:30) Darwin', - 'Australia/Brisbane' => '(GMT+10:00) Brisbane', - 'Australia/Hobart' => '(GMT+10:00) Hobart', - 'Asia/Vladivostok' => '(GMT+10:00) Vladivostok', - 'Australia/Lord_Howe' => '(GMT+10:30) Lord Howe Island', - 'Etc/GMT-11' => '(GMT+11:00) Solomon Is., New Caledonia', - 'Asia/Magadan' => '(GMT+11:00) Magadan', - 'Pacific/Norfolk' => '(GMT+11:30) Norfolk Island', - 'Asia/Anadyr' => '(GMT+12:00) Anadyr, Kamchatka', - 'Pacific/Auckland' => '(GMT+12:00) Auckland, Wellington', - 'Etc/GMT-12' => '(GMT+12:00) Fiji, Kamchatka, Marshall Is.', - 'Pacific/Chatham' => '(GMT+12:45) Chatham Islands', - 'Pacific/Tongatapu' => '(GMT+13:00) Nuku\'alofa', - 'Pacific/Kiritimati' => '(GMT+14:00) Kiritimati' - ]; + return [ + 'Pacific/Midway' => '(GMT-11:00) Midway Island, Samoa', + 'America/Adak' => '(GMT-10:00) Hawaii-Aleutian', + 'Etc/GMT+10' => '(GMT-10:00) Hawaii', + 'Pacific/Marquesas' => '(GMT-09:30) Marquesas Islands', + 'Pacific/Gambier' => '(GMT-09:00) Gambier Islands', + 'America/Anchorage' => '(GMT-09:00) Alaska', + 'America/Ensenada' => '(GMT-08:00) Tijuana, Baja California', + 'Etc/GMT+8' => '(GMT-08:00) Pitcairn Islands', + 'America/Los_Angeles' => '(GMT-08:00) Pacific Time (US & Canada)', + 'America/Denver' => '(GMT-07:00) Mountain Time (US & Canada)', + 'America/Chihuahua' => '(GMT-07:00) Chihuahua, La Paz, Mazatlan', + 'America/Dawson_Creek' => '(GMT-07:00) Arizona', + 'America/Belize' => '(GMT-06:00) Saskatchewan, Central America', + 'America/Mexico_City' => '(GMT-06:00) Guadalajara, Mexico City, Monterrey', + 'Chile/EasterIsland' => '(GMT-06:00) Easter Island', + 'America/Chicago' => '(GMT-06:00) Central Time (US & Canada)', + 'America/New_York' => '(GMT-05:00) Eastern Time (US & Canada)', + 'America/Cancun' => '(GMT-05:00) Cancun', + 'America/Havana' => '(GMT-05:00) Cuba', + 'America/Bogota' => '(GMT-05:00) Bogota, Lima, Quito, Rio Branco', + 'America/Caracas' => '(GMT-04:30) Caracas', + 'America/Santiago' => '(GMT-04:00) Santiago', + 'America/La_Paz' => '(GMT-04:00) La Paz', + 'Atlantic/Stanley' => '(GMT-04:00) Falkland Islands', + 'America/Campo_Grande' => '(GMT-04:00) Brazil', + 'America/Goose_Bay' => '(GMT-04:00) Atlantic Time (Goose Bay)', + 'America/Glace_Bay' => '(GMT-04:00) Atlantic Time (Canada)', + 'America/St_Johns' => '(GMT-03:30) Newfoundland', + 'America/Araguaina' => '(GMT-03:00) UTC-3', + 'America/Montevideo' => '(GMT-03:00) Montevideo', + 'America/Miquelon' => '(GMT-03:00) Miquelon, St. Pierre', + 'America/Godthab' => '(GMT-03:00) Greenland', + 'America/Argentina/Buenos_Aires' => '(GMT-03:00) Buenos Aires', + 'America/Sao_Paulo' => '(GMT-03:00) Brasilia', + 'America/Noronha' => '(GMT-02:00) Mid-Atlantic', + 'Atlantic/Cape_Verde' => '(GMT-01:00) Cape Verde Is.', + 'Atlantic/Azores' => '(GMT-01:00) Azores', + 'Europe/Belfast' => '(GMT) Greenwich Mean Time : Belfast', + 'Europe/Dublin' => '(GMT) Greenwich Mean Time : Dublin', + 'Europe/Lisbon' => '(GMT) Greenwich Mean Time : Lisbon', + 'Europe/London' => '(GMT) Greenwich Mean Time : London', + 'Africa/Abidjan' => '(GMT) Monrovia, Reykjavik', + 'Europe/Amsterdam' => '(GMT+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna', + 'Europe/Belgrade' => '(GMT+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague', + 'Europe/Brussels' => '(GMT+01:00) Brussels, Copenhagen, Madrid, Paris', + 'Africa/Algiers' => '(GMT+01:00) West Central Africa', + 'Africa/Windhoek' => '(GMT+01:00) Windhoek', + 'Asia/Beirut' => '(GMT+02:00) Beirut', + 'Africa/Cairo' => '(GMT+02:00) Cairo', + 'Asia/Gaza' => '(GMT+02:00) Gaza', + 'Africa/Blantyre' => '(GMT+02:00) Harare, Pretoria', + 'Asia/Jerusalem' => '(GMT+02:00) Jerusalem', + 'Europe/Minsk' => '(GMT+02:00) Minsk', + 'Asia/Damascus' => '(GMT+02:00) Syria', + 'Europe/Moscow' => '(GMT+03:00) Moscow, St. Petersburg, Volgograd', + 'Africa/Addis_Ababa' => '(GMT+03:00) Nairobi', + 'Asia/Tehran' => '(GMT+03:30) Tehran', + 'Asia/Dubai' => '(GMT+04:00) Abu Dhabi, Muscat', + 'Asia/Yerevan' => '(GMT+04:00) Yerevan', + 'Asia/Kabul' => '(GMT+04:30) Kabul', + 'Asia/Baku' => '(GMT+04:00) Baku', + 'Asia/Yekaterinburg' => '(GMT+05:00) Ekaterinburg', + 'Asia/Karachi' => '(GMT+05:00) Karachi, Islamabad', + 'Asia/Tashkent' => '(GMT+05:00) Tashkent', + 'Asia/Kolkata' => '(GMT+05:30) Chennai, Kolkata, Mumbai, New Delhi', + 'Asia/Katmandu' => '(GMT+05:45) Kathmandu', + 'Asia/Dhaka' => '(GMT+06:00) Astana, Dhaka', + 'Asia/Novosibirsk' => '(GMT+06:00) Novosibirsk', + 'Asia/Rangoon' => '(GMT+06:30) Yangon (Rangoon)', + 'Asia/Bangkok' => '(GMT+07:00) Bangkok, Hanoi, Jakarta', + 'Asia/Krasnoyarsk' => '(GMT+07:00) Krasnoyarsk', + 'Asia/Hong_Kong' => '(GMT+08:00) Beijing, Chongqing, Hong Kong, Urumqi', + 'Asia/Irkutsk' => '(GMT+08:00) Irkutsk, Ulaan Bataar', + 'Australia/Perth' => '(GMT+08:00) Perth', + 'Australia/Eucla' => '(GMT+08:45) Eucla', + 'Asia/Tokyo' => '(GMT+09:00) Osaka, Sapporo, Tokyo', + 'Asia/Seoul' => '(GMT+09:00) Seoul', + 'Asia/Yakutsk' => '(GMT+09:00) Yakutsk', + 'Australia/Adelaide' => '(GMT+09:30) Adelaide', + 'Australia/Darwin' => '(GMT+09:30) Darwin', + 'Australia/Brisbane' => '(GMT+10:00) Brisbane', + 'Australia/Hobart' => '(GMT+10:00) Hobart', + 'Asia/Vladivostok' => '(GMT+10:00) Vladivostok', + 'Australia/Lord_Howe' => '(GMT+10:30) Lord Howe Island', + 'Etc/GMT-11' => '(GMT+11:00) Solomon Is., New Caledonia', + 'Asia/Magadan' => '(GMT+11:00) Magadan', + 'Pacific/Norfolk' => '(GMT+11:30) Norfolk Island', + 'Asia/Anadyr' => '(GMT+12:00) Anadyr, Kamchatka', + 'Pacific/Auckland' => '(GMT+12:00) Auckland, Wellington', + 'Etc/GMT-12' => '(GMT+12:00) Fiji, Kamchatka, Marshall Is.', + 'Pacific/Chatham' => '(GMT+12:45) Chatham Islands', + 'Pacific/Tongatapu' => '(GMT+13:00) Nuku\'alofa', + 'Pacific/Kiritimati' => '(GMT+14:00) Kiritimati' + ]; } /** @@ -213,15 +213,15 @@ function get_timezones(): array */ function get_dateformats(): array { - return [ - 'd/m/Y' => 'dd/mm/yyyy', - 'd.m.Y' => 'dd.mm.yyyy', - 'm/d/Y' => 'mm/dd/yyyy', - 'Y/m/d' => 'yyyy/mm/dd', - 'd/m/y' => 'dd/mm/yy', - 'm/d/y' => 'mm/dd/yy', - 'y/m/d' => 'yy/mm/dd' - ]; + return [ + 'd/m/Y' => 'dd/mm/yyyy', + 'd.m.Y' => 'dd.mm.yyyy', + 'm/d/Y' => 'mm/dd/yyyy', + 'Y/m/d' => 'yyyy/mm/dd', + 'd/m/y' => 'dd/mm/yy', + 'm/d/y' => 'mm/dd/yy', + 'y/m/d' => 'yy/mm/dd' + ]; } /** @@ -229,11 +229,11 @@ function get_dateformats(): array */ function get_timeformats(): array { - return [ - 'H:i:s' => 'hh:mm:ss (24h)', - 'h:i:s a' => 'hh:mm:ss am/pm', - 'h:i:s A' => 'hh:mm:ss AM/PM' - ]; + return [ + 'H:i:s' => 'hh:mm:ss (24h)', + 'h:i:s a' => 'hh:mm:ss am/pm', + 'h:i:s A' => 'hh:mm:ss AM/PM' + ]; } @@ -242,51 +242,51 @@ function get_timeformats(): array */ function get_payment_options(): array { - $payments = []; - $config = config(OSPOS::class)->settings; + $payments = []; + $config = config(OSPOS::class)->settings; //TODO: This needs to be switched to a switch statement - if($config['payment_options_order'] == 'debitcreditcash') //TODO: === - { - $payments[lang('Sales.debit')] = lang('Sales.debit'); - $payments[lang('Sales.credit')] = lang('Sales.credit'); - $payments[lang('Sales.cash')] = lang('Sales.cash'); - } - elseif($config['payment_options_order'] == 'debitcashcredit') //TODO: === - { - $payments[lang('Sales.debit')] = lang('Sales.debit'); - $payments[lang('Sales.cash')] = lang('Sales.cash'); - $payments[lang('Sales.credit')] = lang('Sales.credit'); - } - elseif($config['payment_options_order'] == 'creditdebitcash') //TODO: === - { - $payments[lang('Sales.credit')] = lang('Sales.credit'); - $payments[lang('Sales.debit')] = lang('Sales.debit'); - $payments[lang('Sales.cash')] = lang('Sales.cash'); - } - elseif($config['payment_options_order'] == 'creditcashdebit') //TODO: === - { - $payments[lang('Sales.credit')] = lang('Sales.credit'); - $payments[lang('Sales.cash')] = lang('Sales.cash'); - $payments[lang('Sales.debit')] = lang('Sales.debit'); - } - else // default: if($config['payment_options_order == 'cashdebitcredit') - { - $payments[lang('Sales.cash')] = lang('Sales.cash'); - $payments[lang('Sales.debit')] = lang('Sales.debit'); - $payments[lang('Sales.credit')] = lang('Sales.credit'); - } + if($config['payment_options_order'] == 'debitcreditcash') //TODO: === + { + $payments[lang('Sales.debit')] = lang('Sales.debit'); + $payments[lang('Sales.credit')] = lang('Sales.credit'); + $payments[lang('Sales.cash')] = lang('Sales.cash'); + } + elseif($config['payment_options_order'] == 'debitcashcredit') //TODO: === + { + $payments[lang('Sales.debit')] = lang('Sales.debit'); + $payments[lang('Sales.cash')] = lang('Sales.cash'); + $payments[lang('Sales.credit')] = lang('Sales.credit'); + } + elseif($config['payment_options_order'] == 'creditdebitcash') //TODO: === + { + $payments[lang('Sales.credit')] = lang('Sales.credit'); + $payments[lang('Sales.debit')] = lang('Sales.debit'); + $payments[lang('Sales.cash')] = lang('Sales.cash'); + } + elseif($config['payment_options_order'] == 'creditcashdebit') //TODO: === + { + $payments[lang('Sales.credit')] = lang('Sales.credit'); + $payments[lang('Sales.cash')] = lang('Sales.cash'); + $payments[lang('Sales.debit')] = lang('Sales.debit'); + } + else // default: if($config['payment_options_order == 'cashdebitcredit') + { + $payments[lang('Sales.cash')] = lang('Sales.cash'); + $payments[lang('Sales.debit')] = lang('Sales.debit'); + $payments[lang('Sales.credit')] = lang('Sales.credit'); + } - $payments[lang('Sales.due')] = lang('Sales.due'); - $payments[lang('Sales.check')] = lang('Sales.check'); + $payments[lang('Sales.due')] = lang('Sales.due'); + $payments[lang('Sales.check')] = lang('Sales.check'); - // If India (list of country codes include India) then include Unified Payment Interface - if (stripos($config['country_codes'], 'IN') !== false) - { - $payments[lang('Sales.upi')] = lang('Sales.upi'); - } + // If India (list of country codes include India) then include Unified Payment Interface + if (stripos($config['country_codes'], 'IN') !== false) + { + $payments[lang('Sales.upi')] = lang('Sales.upi'); + } - return $payments; + return $payments; } /** @@ -296,11 +296,11 @@ function get_payment_options(): array */ function is_right_side_currency_symbol(): bool { - $config = config(OSPOS::class)->settings; - $fmt = new NumberFormatter($config['number_locale'], NumberFormatter::CURRENCY); - $fmt->setSymbol(NumberFormatter::CURRENCY_SYMBOL, $config['currency_symbol']); + $config = config(OSPOS::class)->settings; + $fmt = new NumberFormatter($config['number_locale'], NumberFormatter::CURRENCY); + $fmt->setSymbol(NumberFormatter::CURRENCY_SYMBOL, $config['currency_symbol']); - return !preg_match('/^¤/', $fmt->getPattern()); + return !preg_match('/^¤/', $fmt->getPattern()); } /** @@ -310,8 +310,8 @@ function is_right_side_currency_symbol(): bool */ function quantity_decimals(): int { - $config = config(OSPOS::class)->settings; - return $config['quantity_decimals'] ?? 0; + $config = config(OSPOS::class)->settings; + return $config['quantity_decimals'] ?? 0; } /** @@ -319,8 +319,8 @@ function quantity_decimals(): int */ function totals_decimals(): int { - $config = config(OSPOS::class)->settings; - return $config['currency_decimals'] ?? 0; + $config = config(OSPOS::class)->settings; + return $config['currency_decimals'] ?? 0; } /** @@ -328,8 +328,8 @@ function totals_decimals(): int */ function cash_decimals(): int { - $config = config(OSPOS::class)->settings; - return $config['cash_decimals'] ?? 0; + $config = config(OSPOS::class)->settings; + return $config['cash_decimals'] ?? 0; } /** @@ -337,8 +337,8 @@ function cash_decimals(): int */ function tax_decimals(): int { - $config = config(OSPOS::class)->settings; - return $config['tax_decimals'] ?? 0; + $config = config(OSPOS::class)->settings; + return $config['tax_decimals'] ?? 0; } /** @@ -347,8 +347,8 @@ function tax_decimals(): int */ function to_date(int $date = DEFAULT_DATE): string { - $config = config(OSPOS::class)->settings; - return date($config['dateformat'], $date); + $config = config(OSPOS::class)->settings; + return date($config['dateformat'], $date); } /** @@ -357,8 +357,8 @@ function to_date(int $date = DEFAULT_DATE): string */ function to_datetime(int $datetime = DEFAULT_DATETIME): string { - $config = config(OSPOS::class)->settings; - return date($config['dateformat'] . ' ' . $config['timeformat'], $datetime); + $config = config(OSPOS::class)->settings; + return date($config['dateformat'] . ' ' . $config['timeformat'], $datetime); } /** @@ -367,7 +367,7 @@ function to_datetime(int $datetime = DEFAULT_DATETIME): string */ function to_currency(?string $number): string { - return to_decimals($number, 'currency_decimals', NumberFormatter::CURRENCY); + return to_decimals($number, 'currency_decimals', NumberFormatter::CURRENCY); } /** @@ -376,7 +376,7 @@ function to_currency(?string $number): string */ function to_currency_no_money(?string $number): string { - return to_decimals($number, 'currency_decimals'); + return to_decimals($number, 'currency_decimals'); } /** @@ -385,16 +385,16 @@ function to_currency_no_money(?string $number): string */ function to_currency_tax(?string $number): string { - $config = config(OSPOS::class)->settings; + $config = config(OSPOS::class)->settings; - if($config['tax_included']) //TODO: ternary notation - { - return to_decimals($number, 'tax_decimals', NumberFormatter::CURRENCY); - } - else - { - return to_decimals($number, 'currency_decimals', NumberFormatter::CURRENCY); - } + if($config['tax_included']) //TODO: ternary notation + { + return to_decimals($number, 'tax_decimals', NumberFormatter::CURRENCY); + } + else + { + return to_decimals($number, 'currency_decimals', NumberFormatter::CURRENCY); + } } /** @@ -403,19 +403,19 @@ function to_currency_tax(?string $number): string */ function to_tax_decimals($number): string { - // TODO: When the tax array is empty the value passed in is an empty string, For now I "untyped" it to get past - // the issue because I don't understand why an empty string is being passed in when I know the array is empty. - // It looks like it must be creating a String value on the fly because the form is referring to the index 0 when - // there IS no index[0] row in the table + // TODO: When the tax array is empty the value passed in is an empty string, For now I "untyped" it to get past + // the issue because I don't understand why an empty string is being passed in when I know the array is empty. + // It looks like it must be creating a String value on the fly because the form is referring to the index 0 when + // there IS no index[0] row in the table - // taxes that are null, '' or 0 don't need to be displayed - // NOTE: do not remove this line otherwise the items edit form will show a tax with 0, and it will save it - if(empty($number)) - { - return $number; - } + // taxes that are null, '' or 0 don't need to be displayed + // NOTE: do not remove this line otherwise the items edit form will show a tax with 0, and it will save it + if(empty($number)) + { + return $number; + } - return to_decimals($number, 'tax_decimals'); + return to_decimals($number, 'tax_decimals'); } /** @@ -424,7 +424,7 @@ function to_tax_decimals($number): string */ function to_quantity_decimals(?string $number): string { - return to_decimals($number, 'quantity_decimals'); + return to_decimals($number, 'quantity_decimals'); } /** @@ -436,23 +436,23 @@ function to_quantity_decimals(?string $number): string */ function to_decimals(?string $number, string $decimals = null, int $type = NumberFormatter::DECIMAL): string { - if(!isset($number)) - { - return ''; - } + if(!isset($number)) + { + return ''; + } - $config = config(OSPOS::class)->settings; - $fmt = new NumberFormatter($config['number_locale'], $type); - $fmt->setAttribute(NumberFormatter::MIN_FRACTION_DIGITS, empty($decimals) ? DEFAULT_PRECISION : $config[$decimals]); - $fmt->setAttribute(NumberFormatter::MAX_FRACTION_DIGITS, empty($decimals) ? DEFAULT_PRECISION : $config[$decimals]); + $config = config(OSPOS::class)->settings; + $fmt = new NumberFormatter($config['number_locale'], $type); + $fmt->setAttribute(NumberFormatter::MIN_FRACTION_DIGITS, empty($decimals) ? DEFAULT_PRECISION : $config[$decimals]); + $fmt->setAttribute(NumberFormatter::MAX_FRACTION_DIGITS, empty($decimals) ? DEFAULT_PRECISION : $config[$decimals]); - if(empty($config['thousands_separator'])) - { - $fmt->setTextAttribute(NumberFormatter::GROUPING_SEPARATOR_SYMBOL, ''); - } - $fmt->setSymbol(NumberFormatter::CURRENCY_SYMBOL, $config['currency_symbol']); + if(empty($config['thousands_separator'])) + { + $fmt->setTextAttribute(NumberFormatter::GROUPING_SEPARATOR_SYMBOL, ''); + } + $fmt->setSymbol(NumberFormatter::CURRENCY_SYMBOL, $config['currency_symbol']); - return $fmt->format((float) $number); + return $fmt->format((float) $number); } /** @@ -461,7 +461,7 @@ function to_decimals(?string $number, string $decimals = null, int $type = Numbe */ function parse_quantity(string $number): mixed { - return parse_decimals($number, quantity_decimals()); + return parse_decimals($number, quantity_decimals()); } /** @@ -470,7 +470,7 @@ function parse_quantity(string $number): mixed */ function parse_tax(string $number): mixed { - return parse_decimals($number, tax_decimals()); + return parse_decimals($number, tax_decimals()); } /** @@ -480,46 +480,46 @@ function parse_tax(string $number): mixed */ function parse_decimals(string $number, int $decimals = null): mixed { - if(empty($number)) - { - return $number; - } + if(empty($number)) + { + return $number; + } - $config = config(OSPOS::class)->settings; + $config = config(OSPOS::class)->settings; - $fmt = new NumberFormatter($config['number_locale'], NumberFormatter::DECIMAL); + $fmt = new NumberFormatter($config['number_locale'], NumberFormatter::DECIMAL); - if(!$decimals) - { - $decimals = intVal($config['currency_decimals']); - $fmt->setAttribute(NumberFormatter::FRACTION_DIGITS, $decimals); - } + if(!$decimals) + { + $decimals = intVal($config['currency_decimals']); + $fmt->setAttribute(NumberFormatter::FRACTION_DIGITS, $decimals); + } - if(empty($config['thousands_separator'])) - { - $fmt->setTextAttribute(NumberFormatter::GROUPING_SEPARATOR_SYMBOL, ''); - } + if(empty($config['thousands_separator'])) + { + $fmt->setTextAttribute(NumberFormatter::GROUPING_SEPARATOR_SYMBOL, ''); + } - try - { - $locale_safe_number = $fmt->parse($number); + try + { + $locale_safe_number = $fmt->parse($number); - if ( - $locale_safe_number === false - || $locale_safe_number > MAX_PRECISION - || $locale_safe_number > 1.e14 - ) - { - return false; - } + if ( + $locale_safe_number === false + || $locale_safe_number > MAX_PRECISION + || $locale_safe_number > 1.e14 + ) + { + return false; + } - return (float) $locale_safe_number; - } - catch(Exception $e) - { - return false; - } + return (float) $locale_safe_number; + } + catch(Exception $e) + { + return false; + } } /** @@ -527,47 +527,47 @@ function parse_decimals(string $number, int $decimals = null): mixed */ function dateformat_momentjs(string $php_format): string { - $SYMBOLS_MATCHING = [ - 'd' => 'DD', - 'D' => 'ddd', - 'j' => 'D', - 'l' => 'dddd', - 'N' => 'E', - 'S' => 'o', - 'w' => 'e', - 'z' => 'DDD', - 'W' => 'W', - 'F' => 'MMMM', - 'm' => 'MM', - 'M' => 'MMM', - 'n' => 'M', - 't' => '', // no equivalent - 'L' => '', // no equivalent - 'o' => 'YYYY', - 'Y' => 'YYYY', - 'y' => 'YY', - 'a' => 'a', - 'A' => 'A', - 'B' => '', // no equivalent - 'g' => 'h', - 'G' => 'H', - 'h' => 'hh', - 'H' => 'HH', - 'i' => 'mm', - 's' => 'ss', - 'u' => 'SSS', - 'e' => 'zz', // deprecated since version $1.6.0 of moment.js - 'I' => '', // no equivalent - 'O' => '', // no equivalent - 'P' => '', // no equivalent - 'T' => '', // no equivalent - 'Z' => '', // no equivalent - 'c' => '', // no equivalent - 'r' => '', // no equivalent - 'U' => 'X' - ]; + $SYMBOLS_MATCHING = [ + 'd' => 'DD', + 'D' => 'ddd', + 'j' => 'D', + 'l' => 'dddd', + 'N' => 'E', + 'S' => 'o', + 'w' => 'e', + 'z' => 'DDD', + 'W' => 'W', + 'F' => 'MMMM', + 'm' => 'MM', + 'M' => 'MMM', + 'n' => 'M', + 't' => '', // no equivalent + 'L' => '', // no equivalent + 'o' => 'YYYY', + 'Y' => 'YYYY', + 'y' => 'YY', + 'a' => 'a', + 'A' => 'A', + 'B' => '', // no equivalent + 'g' => 'h', + 'G' => 'H', + 'h' => 'hh', + 'H' => 'HH', + 'i' => 'mm', + 's' => 'ss', + 'u' => 'SSS', + 'e' => 'zz', // deprecated since version $1.6.0 of moment.js + 'I' => '', // no equivalent + 'O' => '', // no equivalent + 'P' => '', // no equivalent + 'T' => '', // no equivalent + 'Z' => '', // no equivalent + 'c' => '', // no equivalent + 'r' => '', // no equivalent + 'U' => 'X' + ]; - return strtr($php_format, $SYMBOLS_MATCHING); + return strtr($php_format, $SYMBOLS_MATCHING); } /** @@ -575,46 +575,46 @@ function dateformat_momentjs(string $php_format): string */ function dateformat_mysql(): string { - $config = config(OSPOS::class)->settings; - $php_format = $config['dateformat']; + $config = config(OSPOS::class)->settings; + $php_format = $config['dateformat']; - $SYMBOLS_MATCHING = [ - // Day - 'd' => '%d', - 'D' => '%a', - 'j' => '%e', - 'l' => '%W', - 'N' => '', - 'S' => '', - 'w' => '', - 'z' => '', - // Week - 'W' => '', - // Month - 'F' => '', - 'm' => '%m', - 'M' => '%b', - 'n' => '%c', - 't' => '', - // Year - 'L' => '', - 'o' => '', - 'Y' => '%Y', - 'y' => '%y', - // Time - 'a' => '', - 'A' => '%p', - 'B' => '', - 'g' => '%l', - 'G' => '%k', - 'h' => '%H', - 'H' => '%k', - 'i' => '%i', - 's' => '%S', - 'u' => '%f' - ]; + $SYMBOLS_MATCHING = [ + // Day + 'd' => '%d', + 'D' => '%a', + 'j' => '%e', + 'l' => '%W', + 'N' => '', + 'S' => '', + 'w' => '', + 'z' => '', + // Week + 'W' => '', + // Month + 'F' => '', + 'm' => '%m', + 'M' => '%b', + 'n' => '%c', + 't' => '', + // Year + 'L' => '', + 'o' => '', + 'Y' => '%Y', + 'y' => '%y', + // Time + 'a' => '', + 'A' => '%p', + 'B' => '', + 'g' => '%l', + 'G' => '%k', + 'h' => '%H', + 'H' => '%k', + 'i' => '%i', + 's' => '%S', + 'u' => '%f' + ]; - return strtr($php_format, $SYMBOLS_MATCHING); + return strtr($php_format, $SYMBOLS_MATCHING); } /** @@ -623,62 +623,62 @@ function dateformat_mysql(): string */ function dateformat_bootstrap(string $php_format): string { - $SYMBOLS_MATCHING = [ - // Day - 'd' => 'dd', - 'D' => 'd', - 'j' => 'd', - 'l' => 'dd', - 'N' => '', - 'S' => '', - 'w' => '', - 'z' => '', - // Week - 'W' => '', - // Month - 'F' => 'MM', - 'm' => 'mm', - 'M' => 'M', - 'n' => 'm', - 't' => '', - // Year - 'L' => '', - 'o' => '', - 'Y' => 'yyyy', - 'y' => 'yy', - // Time - 'a' => 'p', - 'A' => 'P', - 'B' => '', - 'g' => 'H', - 'G' => 'h', - 'h' => 'HH', - 'H' => 'hh', - 'i' => 'ii', - 's' => 'ss', - 'u' => '' - ]; + $SYMBOLS_MATCHING = [ + // Day + 'd' => 'dd', + 'D' => 'd', + 'j' => 'd', + 'l' => 'dd', + 'N' => '', + 'S' => '', + 'w' => '', + 'z' => '', + // Week + 'W' => '', + // Month + 'F' => 'MM', + 'm' => 'mm', + 'M' => 'M', + 'n' => 'm', + 't' => '', + // Year + 'L' => '', + 'o' => '', + 'Y' => 'yyyy', + 'y' => 'yy', + // Time + 'a' => 'p', + 'A' => 'P', + 'B' => '', + 'g' => 'H', + 'G' => 'h', + 'h' => 'HH', + 'H' => 'hh', + 'i' => 'ii', + 's' => 'ss', + 'u' => '' + ]; - return strtr($php_format, $SYMBOLS_MATCHING); + return strtr($php_format, $SYMBOLS_MATCHING); } /** * @param string $date * @return bool */ -function valid_date(string $date): bool //TODO: need a better name for $date. Perhaps $candidate. Also the function name would be better as is_valid_date() +function valid_date(string $date): bool //TODO: need a better name for $date. Perhaps $candidate. Also the function name would be better as is_valid_date() { - $config = config(OSPOS::class)->settings; - return (DateTime::createFromFormat($config['dateformat'], $date)); + $config = config(OSPOS::class)->settings; + return (DateTime::createFromFormat($config['dateformat'], $date)); } /** * @param string $decimal * @return bool */ -function valid_decimal(string $decimal): bool //TODO: need a better name for $decimal. Perhaps $candidate. Also the function name would be better as is_valid_decimal() +function valid_decimal(string $decimal): bool //TODO: need a better name for $decimal. Perhaps $candidate. Also the function name would be better as is_valid_decimal() { - return (preg_match('/^(\d*\.)?\d+$/', $decimal) === 1); + return (preg_match('/^(\d*\.)?\d+$/', $decimal) === 1); } /** @@ -687,9 +687,9 @@ function valid_decimal(string $decimal): bool //TODO: need a better name for $de */ function encode_array(array $data): array { - array_walk($data, function(&$value, $key) { $value = rawurlencode($value);}); + array_walk($data, function(&$value, $key) { $value = rawurlencode($value);}); - return $data; + return $data; } /** @@ -698,8 +698,7 @@ function encode_array(array $data): array */ function decode_array(array $data): array { - array_walk($data, function(&$value, $key) { $value = rawurldecode($value);}); + array_walk($data, function(&$value, $key) { $value = rawurldecode($value);}); - return $data; + return $data; } - diff --git a/app/Helpers/migration_helper.php b/app/Helpers/migration_helper.php index 289ebcea4..76b2aa695 100644 --- a/app/Helpers/migration_helper.php +++ b/app/Helpers/migration_helper.php @@ -7,29 +7,29 @@ use Config\Database; */ function execute_script(string $path): void { - $version = preg_replace("/(.*_)?(.*).sql/", "$2", $path); - error_log("Migrating to $version (file: $path)"); + $version = preg_replace("/(.*_)?(.*).sql/", "$2", $path); + error_log("Migrating to $version (file: $path)"); - $sql = file_get_contents($path); - $sqls = explode(';', $sql); - array_pop($sqls); + $sql = file_get_contents($path); + $sqls = explode(';', $sql); + array_pop($sqls); - $db = Database::connect(); + $db = Database::connect(); - foreach($sqls as $statement) - { - $statement = "$statement;"; + foreach($sqls as $statement) + { + $statement = "$statement;"; - if(!$db->simpleQuery($statement)) - { - foreach($db->error() as $error) - { - error_log("error: $error"); - } - } - } + if(!$db->simpleQuery($statement)) + { + foreach($db->error() as $error) + { + error_log("error: $error"); + } + } + } - error_log("Migrated to $version"); + error_log("Migrated to $version"); } /** @@ -40,27 +40,27 @@ function execute_script(string $path): void */ function drop_foreign_key_constraints(array $foreignKeys, string $table): void { - $db = Database::connect(); + $db = Database::connect(); - $current_prefix = $db->getPrefix(); - $db->setPrefix(''); - $database_name = $db->database; + $current_prefix = $db->getPrefix(); + $db->setPrefix(''); + $database_name = $db->database; - foreach ($foreignKeys as $fk) - { - $builder = $db->table('INFORMATION_SCHEMA.TABLE_CONSTRAINTS'); - $builder->select('CONSTRAINT_NAME'); - $builder->where('TABLE_SCHEMA', $database_name); - $builder->where('TABLE_NAME', $table); - $builder->where('CONSTRAINT_TYPE', 'FOREIGN KEY'); - $builder->where('CONSTRAINT_NAME', $fk); - $query = $builder->get(); + foreach ($foreignKeys as $fk) + { + $builder = $db->table('INFORMATION_SCHEMA.TABLE_CONSTRAINTS'); + $builder->select('CONSTRAINT_NAME'); + $builder->where('TABLE_SCHEMA', $database_name); + $builder->where('TABLE_NAME', $table); + $builder->where('CONSTRAINT_TYPE', 'FOREIGN KEY'); + $builder->where('CONSTRAINT_NAME', $fk); + $query = $builder->get(); - if($query->getNumRows() > 0) - { - $db->query("ALTER TABLE `$table` DROP FOREIGN KEY `$fk`"); - } - } + if($query->getNumRows() > 0) + { + $db->query("ALTER TABLE `$table` DROP FOREIGN KEY `$fk`"); + } + } - $db->setPrefix($current_prefix); + $db->setPrefix($current_prefix); } diff --git a/app/Helpers/report_helper.php b/app/Helpers/report_helper.php index 138f19c82..c4f7327f7 100644 --- a/app/Helpers/report_helper.php +++ b/app/Helpers/report_helper.php @@ -10,25 +10,25 @@ function get_report_link(string $report_name, string $report_prefix = '', string { $path = 'reports/'; if ($report_prefix !== '') - { + { $path .= $report_prefix . '_'; } /** * Sanitize the report name in case it has come from the permissions table. */ - $report_name = str_replace('reports_', '', $report_name); - $path .= $report_name; + $report_name = str_replace('reports_', '', $report_name); + $path .= $report_name; - if ($lang_key === '') - { - $lang_key = 'Reports.' . $report_name; + if ($lang_key === '') + { + $lang_key = 'Reports.' . $report_name; } - return [ - 'path' => site_url($path), - 'label' => lang($lang_key), - ]; + return [ + 'path' => site_url($path), + 'label' => lang($lang_key), + ]; } /** @@ -39,18 +39,18 @@ function get_report_link(string $report_name, string $report_prefix = '', string */ function can_show_report(string $permission_id, array $restrict_views = []): bool { - if(!str_contains($permission_id, 'reports_')) - { - return false; - } + if(!str_contains($permission_id, 'reports_')) + { + return false; + } - foreach ($restrict_views as $restrict_view) - { - if (str_contains($permission_id, $restrict_view)) - { - return false; - } - } + foreach ($restrict_views as $restrict_view) + { + if (str_contains($permission_id, $restrict_view)) + { + return false; + } + } - return true; + return true; } diff --git a/app/Helpers/security_helper.php b/app/Helpers/security_helper.php index b8af69438..f03463de6 100644 --- a/app/Helpers/security_helper.php +++ b/app/Helpers/security_helper.php @@ -8,68 +8,68 @@ use Config\Services; */ function check_encryption(): bool { - $old_key = config('Encryption')->key; + $old_key = config('Encryption')->key; - if((empty($old_key)) || (strlen($old_key) < 64)) - { - //Create Key - $encryption = new Encryption(); - $key = bin2hex($encryption->createKey()); - config('Encryption')->key = $key; + if((empty($old_key)) || (strlen($old_key) < 64)) + { + //Create Key + $encryption = new Encryption(); + $key = bin2hex($encryption->createKey()); + config('Encryption')->key = $key; - //Write to .env - $config_path = ROOTPATH . '.env'; - $new_config_path = WRITEPATH . '/backup/.env' ; - $backup_path = WRITEPATH . '/backup/.env.bak'; + //Write to .env + $config_path = ROOTPATH . '.env'; + $new_config_path = WRITEPATH . '/backup/.env' ; + $backup_path = WRITEPATH . '/backup/.env.bak'; - $backup_folder = WRITEPATH . '/backup'; + $backup_folder = WRITEPATH . '/backup'; - if (!file_exists($backup_folder) && !mkdir($backup_folder)) - { - log_message('error', 'Could not create backup folder'); - return false; - } + if (!file_exists($backup_folder) && !mkdir($backup_folder)) + { + log_message('error', 'Could not create backup folder'); + return false; + } - if(!copy($config_path, $backup_path)) - { - log_message('error', "Unable to copy $config_path to $backup_path"); - } + if(!copy($config_path, $backup_path)) + { + log_message('error', "Unable to copy $config_path to $backup_path"); + } - //Copy to backup - @chmod($config_path, 0660); - @chmod($backup_path, 0660); + //Copy to backup + @chmod($config_path, 0660); + @chmod($backup_path, 0660); - $config_file = file_get_contents($config_path); - $config_file = preg_replace("/(encryption\.key.*=.*)('.*')/", "$1'$key'", $config_file); + $config_file = file_get_contents($config_path); + $config_file = preg_replace("/(encryption\.key.*=.*)('.*')/", "$1'$key'", $config_file); - if(!empty($old_key)) - { - $old_line = "# encryption.key = '$old_key' REMOVE IF UNNEEDED\r\n"; - $insertion_point = stripos($config_file, 'encryption.key'); - $config_file = substr_replace($config_file, $old_line, $insertion_point,0); - } + if(!empty($old_key)) + { + $old_line = "# encryption.key = '$old_key' REMOVE IF UNNEEDED\r\n"; + $insertion_point = stripos($config_file, 'encryption.key'); + $config_file = substr_replace($config_file, $old_line, $insertion_point,0); + } - $handle = @fopen($config_path, 'w+'); + $handle = @fopen($config_path, 'w+'); - if(empty($handle)) - { - log_message('error', "Unable to open $config_path for updating"); - return false; - } + if(empty($handle)) + { + log_message('error', "Unable to open $config_path for updating"); + return false; + } - @chmod($config_path, 0660); - $write_failed = !fwrite($handle, $config_file); - fclose($handle); + @chmod($config_path, 0660); + $write_failed = !fwrite($handle, $config_file); + fclose($handle); - if($write_failed) - { - log_message('error', "Unable to write to $config_path for updating."); - return false; - } - log_message('info', "File $config_path has been updated."); - } + if($write_failed) + { + log_message('error', "Unable to write to $config_path for updating."); + return false; + } + log_message('info', "File $config_path has been updated."); + } - return true; + return true; } /** @@ -77,30 +77,30 @@ function check_encryption(): bool */ function abort_encryption_conversion(): void { - $config_path = ROOTPATH . '.env'; - $backup_path = WRITEPATH . '/backup/.env.bak'; + $config_path = ROOTPATH . '.env'; + $backup_path = WRITEPATH . '/backup/.env.bak'; - $config_file = file_get_contents($backup_path); + $config_file = file_get_contents($backup_path); - $handle = @fopen($config_path, 'w+'); + $handle = @fopen($config_path, 'w+'); - if(empty($handle)) - { - log_message('error', "Unable to open $config_path to undo encryption conversion"); - } - else - { - @chmod($config_path, 0660); - $write_failed = !fwrite($handle, $config_file); - fclose($handle); + if(empty($handle)) + { + log_message('error', "Unable to open $config_path to undo encryption conversion"); + } + else + { + @chmod($config_path, 0660); + $write_failed = !fwrite($handle, $config_file); + fclose($handle); - if($write_failed) - { - log_message('error', "Unable to write to $config_path to undo encryption conversion."); - return; - } - log_message('info', "File $config_path has been updated to undo encryption conversion"); - } + if($write_failed) + { + log_message('error', "Unable to write to $config_path to undo encryption conversion."); + return; + } + log_message('info', "File $config_path has been updated to undo encryption conversion"); + } } /** @@ -108,29 +108,29 @@ function abort_encryption_conversion(): void */ function remove_backup(): void { - $backup_path = WRITEPATH . '/backup/.env.bak'; - if( ! file_exists($backup_path)) - { - return; - } - if(!unlink($backup_path)) - { - log_message('error', "Unable to remove $backup_path."); - return; - } - log_message('info', "File $backup_path has been removed"); + $backup_path = WRITEPATH . '/backup/.env.bak'; + if( ! file_exists($backup_path)) + { + return; + } + if(!unlink($backup_path)) + { + log_message('error', "Unable to remove $backup_path."); + return; + } + log_message('info', "File $backup_path has been removed"); } function purifyHtml($data) { - if(is_array($data)) - { - return array_map('purifyHtml', $data); - } - elseif(is_string($data)) - { - return Services::HtmlPurifier()->purify($data); - } + if(is_array($data)) + { + return array_map('purifyHtml', $data); + } + elseif(is_string($data)) + { + return Services::HtmlPurifier()->purify($data); + } - return $data; + return $data; } diff --git a/app/Helpers/tabular_helper.php b/app/Helpers/tabular_helper.php index e024ebfcb..a44cf49bd 100644 --- a/app/Helpers/tabular_helper.php +++ b/app/Helpers/tabular_helper.php @@ -18,63 +18,63 @@ use Config\Services; */ function transform_headers_readonly(array $headers): string { - $result = []; + $result = []; - foreach($headers as $key => $value) - { - $result[] = ['field' => $key, 'title' => $value, 'sortable' => $value != '', 'switchable' => !preg_match('(^$| )', $value)]; - } + foreach($headers as $key => $value) + { + $result[] = ['field' => $key, 'title' => $value, 'sortable' => $value != '', 'switchable' => !preg_match('(^$| )', $value)]; + } - return json_encode($result); + return json_encode($result); } /** * Basic tabular headers function */ -function transform_headers(array $headers, bool $readonly = false, bool $editable = true): string //TODO: $array needs to be refactored to a new name. Perhaps $headers? +function transform_headers(array $headers, bool $readonly = false, bool $editable = true): string //TODO: $array needs to be refactored to a new name. Perhaps $headers? { - $result = []; + $result = []; - if(!$readonly) - { - $headers = array_merge ([['checkbox' => 'select', 'sortable' => false]], $headers); - } + if(!$readonly) + { + $headers = array_merge ([['checkbox' => 'select', 'sortable' => false]], $headers); + } - if($editable) - { - $headers[] = ['edit' => '']; - } + if($editable) + { + $headers[] = ['edit' => '']; + } - foreach($headers as $element) //TODO: This might be clearer to refactor this to `foreach($headers as $header)` - { - reset($element); - $result[] = [ - 'field' => key($element), - 'title' => current($element), - 'switchable' => $element['switchable'] ?? !preg_match('(^$| )', current($element)), - 'escape' => !preg_match("/(edit|phone_number|email|messages|item_pic|customer_name|note)/", key($element)) && !(isset($element['escape']) && !$element['escape']), - 'sortable' => $element['sortable'] ?? current($element) != '', - 'checkbox' => $element['checkbox'] ?? false, - 'class' => isset($element['checkbox']) || preg_match('(^$| )', current($element)) ? 'print_hide' : '', - 'sorter' => $element ['sorter'] ?? '' - ]; - } + foreach($headers as $element) //TODO: This might be clearer to refactor this to `foreach($headers as $header)` + { + reset($element); + $result[] = [ + 'field' => key($element), + 'title' => current($element), + 'switchable' => $element['switchable'] ?? !preg_match('(^$| )', current($element)), + 'escape' => !preg_match("/(edit|phone_number|email|messages|item_pic|customer_name|note)/", key($element)) && !(isset($element['escape']) && !$element['escape']), + 'sortable' => $element['sortable'] ?? current($element) != '', + 'checkbox' => $element['checkbox'] ?? false, + 'class' => isset($element['checkbox']) || preg_match('(^$| )', current($element)) ? 'print_hide' : '', + 'sorter' => $element ['sorter'] ?? '' + ]; + } - return json_encode($result); + return json_encode($result); } function sales_headers(): array { - return [ - ['sale_id' => lang('Common.id')], - ['sale_time' => lang('Sales.sale_time')], - ['customer_name' => lang('Customers.customer')], - ['amount_due' => lang('Sales.amount_due')], - ['amount_tendered' => lang('Sales.amount_tendered')], - ['change_due' => lang('Sales.change_due')], - ['payment_type' => lang('Sales.payment_type')] - ]; + return [ + ['sale_id' => lang('Common.id')], + ['sale_time' => lang('Sales.sale_time')], + ['customer_name' => lang('Customers.customer')], + ['amount_due' => lang('Sales.amount_due')], + ['amount_tendered' => lang('Sales.amount_tendered')], + ['change_due' => lang('Sales.change_due')], + ['payment_type' => lang('Sales.payment_type')] + ]; } /** @@ -82,18 +82,18 @@ function sales_headers(): array */ function get_sales_manage_table_headers(): string { - $headers = sales_headers(); - $config = config(OSPOS::class)->settings; + $headers = sales_headers(); + $config = config(OSPOS::class)->settings; - if($config['invoice_enable']) - { - $headers[] = ['invoice_number' => lang('Sales.invoice_number')]; - $headers[] = ['invoice' => '', 'sortable' => false, 'escape' => false]; - } + if($config['invoice_enable']) + { + $headers[] = ['invoice_number' => lang('Sales.invoice_number')]; + $headers[] = ['invoice' => '', 'sortable' => false, 'escape' => false]; + } - $headers[] = ['receipt' => '', 'sortable' => false, 'escape' => false]; + $headers[] = ['receipt' => '', 'sortable' => false, 'escape' => false]; - return transform_headers($headers); + return transform_headers($headers); } /** @@ -101,50 +101,50 @@ function get_sales_manage_table_headers(): string */ function get_sale_data_row(object $sale): array { - $uri = current_url(true); - $controller = $uri->getSegment(1); + $uri = current_url(true); + $controller = $uri->getSegment(1); - $row = [ - 'sale_id' => $sale->sale_id, - 'sale_time' => to_datetime(strtotime($sale->sale_time)), - 'customer_name' => $sale->customer_name, - 'amount_due' => to_currency($sale->amount_due), - 'amount_tendered' => to_currency($sale->amount_tendered), - 'change_due' => to_currency($sale->change_due), - 'payment_type' => $sale->payment_type - ]; + $row = [ + 'sale_id' => $sale->sale_id, + 'sale_time' => to_datetime(strtotime($sale->sale_time)), + 'customer_name' => $sale->customer_name, + 'amount_due' => to_currency($sale->amount_due), + 'amount_tendered' => to_currency($sale->amount_tendered), + 'change_due' => to_currency($sale->change_due), + 'payment_type' => $sale->payment_type + ]; - $config = config(OSPOS::class)->settings; + $config = config(OSPOS::class)->settings; - if($config['invoice_enable']) - { - $row['invoice_number'] = $sale->invoice_number; - $row['invoice'] = empty($sale->invoice_number) - ? '-' - : anchor( - "$controller/invoice/$sale->sale_id", - '', - ['title'=>lang('Sales.show_invoice')] - ); - } + if($config['invoice_enable']) + { + $row['invoice_number'] = $sale->invoice_number; + $row['invoice'] = empty($sale->invoice_number) + ? '-' + : anchor( + "$controller/invoice/$sale->sale_id", + '', + ['title'=>lang('Sales.show_invoice')] + ); + } - $row['receipt'] = anchor( - "$controller/receipt/$sale->sale_id", - '', - ['title' => lang('Sales.show_receipt')] - ); - $row['edit'] = anchor( - "$controller/edit/$sale->sale_id", - '', - [ - 'class' => 'modal-dlg print_hide', - 'data-btn-delete' => lang('Common.delete'), - 'data-btn-submit' => lang('Common.submit'), - 'title' => lang(ucfirst($controller) . ".update") - ] - ); + $row['receipt'] = anchor( + "$controller/receipt/$sale->sale_id", + '', + ['title' => lang('Sales.show_receipt')] + ); + $row['edit'] = anchor( + "$controller/edit/$sale->sale_id", + '', + [ + 'class' => 'modal-dlg print_hide', + 'data-btn-delete' => lang('Common.delete'), + 'data-btn-submit' => lang('Common.submit'), + 'title' => lang(ucfirst($controller) . ".update") + ] + ); - return $row; + return $row; } /** @@ -152,24 +152,24 @@ function get_sale_data_row(object $sale): array */ function get_sale_data_last_row(ResultInterface $sales): array { - $sum_amount_due = 0; - $sum_amount_tendered = 0; - $sum_change_due = 0; + $sum_amount_due = 0; + $sum_amount_tendered = 0; + $sum_change_due = 0; - foreach($sales->getResult() as $key => $sale) - { - $sum_amount_due += $sale->amount_due; - $sum_amount_tendered += $sale->amount_tendered; - $sum_change_due += $sale->change_due; - } + foreach($sales->getResult() as $key => $sale) + { + $sum_amount_due += $sale->amount_due; + $sum_amount_tendered += $sale->amount_tendered; + $sum_change_due += $sale->change_due; + } - return [ - 'sale_id' => '-', - 'sale_time' => lang('Sales.total'), - 'amount_due' => to_currency($sum_amount_due), - 'amount_tendered' => to_currency($sum_amount_tendered), - 'change_due' => to_currency($sum_change_due) - ]; + return [ + 'sale_id' => '-', + 'sale_time' => lang('Sales.total'), + 'amount_due' => to_currency($sum_amount_due), + 'amount_tendered' => to_currency($sum_amount_tendered), + 'change_due' => to_currency($sum_change_due) + ]; } /** @@ -177,31 +177,31 @@ function get_sale_data_last_row(ResultInterface $sales): array */ function get_sales_manage_payments_summary(array $payments): string { - $table = '
    '; - $total = 0; + $table = '
    '; + $total = 0; - foreach($payments as $key => $payment) - { - $amount = $payment['payment_amount']; - $total = bcadd($total, $amount); - $table .= '
    ' . $payment['payment_type'] . ': ' . to_currency($amount) . '
    '; - } + foreach($payments as $key => $payment) + { + $amount = $payment['payment_amount']; + $total = bcadd($total, $amount); + $table .= '
    ' . $payment['payment_type'] . ': ' . to_currency($amount) . '
    '; + } - $table .= '
    ' . lang('Sales.total') . ': ' . to_currency($total) . '
    '; - $table .= '
    '; + $table .= '
    ' . lang('Sales.total') . ': ' . to_currency($total) . '
    '; + $table .= '
    '; - return $table; + return $table; } function person_headers(): array { - return [ - ['people.person_id' => lang('Common.id')], - ['last_name' => lang('Common.last_name')], - ['first_name' => lang('Common.first_name')], - ['email' => lang('Common.email')], - ['phone_number' => lang('Common.phone_number')] - ]; + return [ + ['people.person_id' => lang('Common.id')], + ['last_name' => lang('Common.last_name')], + ['first_name' => lang('Common.first_name')], + ['email' => lang('Common.email')], + ['phone_number' => lang('Common.phone_number')] + ]; } @@ -210,17 +210,17 @@ function person_headers(): array */ function get_people_manage_table_headers(): string { - $headers = person_headers(); + $headers = person_headers(); - $employee = model(Employee::class); - $session = session(); + $employee = model(Employee::class); + $session = session(); - if($employee->has_grant('messages', $session->get('person_id'))) - { - $headers[] = ['messages' => '', 'sortable' => false]; - } + if($employee->has_grant('messages', $session->get('person_id'))) + { + $headers[] = ['messages' => '', 'sortable' => false]; + } - return transform_headers($headers); + return transform_headers($headers); } /** @@ -228,48 +228,48 @@ function get_people_manage_table_headers(): string */ function get_person_data_row(object $person): array { - $controller = get_controller(); + $controller = get_controller(); - return [ - 'people.person_id' => $person->person_id, - 'last_name' => $person->last_name, - 'first_name' => $person->first_name, - 'email' => empty($person->email) ? '' : mailto($person->email, $person->email), - 'phone_number' => $person->phone_number, - 'messages' => empty($person->phone_number) - ? '' - : anchor( - "Messages/view/$person->person_id", - '', - [ - 'class' => 'modal-dlg', - 'data-btn-submit' => lang('Common.submit'), - 'title'=>lang('Messages.sms_send') - ] - ), - 'edit' => anchor( - "$controller/view/$person->person_id", - '', - [ - 'class' => 'modal-dlg', - 'data-btn-submit' => lang('Common.submit'), - 'title'=>lang(ucfirst($controller) . '.update') //TODO: String interpolation - ] - ) - ]; + return [ + 'people.person_id' => $person->person_id, + 'last_name' => $person->last_name, + 'first_name' => $person->first_name, + 'email' => empty($person->email) ? '' : mailto($person->email, $person->email), + 'phone_number' => $person->phone_number, + 'messages' => empty($person->phone_number) + ? '' + : anchor( + "Messages/view/$person->person_id", + '', + [ + 'class' => 'modal-dlg', + 'data-btn-submit' => lang('Common.submit'), + 'title'=>lang('Messages.sms_send') + ] + ), + 'edit' => anchor( + "$controller/view/$person->person_id", + '', + [ + 'class' => 'modal-dlg', + 'data-btn-submit' => lang('Common.submit'), + 'title'=>lang(ucfirst($controller) . '.update') //TODO: String interpolation + ] + ) + ]; } function customer_headers(): array { - return [ - ['people.person_id' => lang('Common.id')], - ['last_name' => lang('Common.last_name')], - ['first_name' => lang('Common.first_name')], - ['email' => lang('Common.email')], - ['phone_number' => lang('Common.phone_number')], - ['total' => lang('Common.total_spent'), 'sortable' => false] - ]; + return [ + ['people.person_id' => lang('Common.id')], + ['last_name' => lang('Common.last_name')], + ['first_name' => lang('Common.first_name')], + ['email' => lang('Common.email')], + ['phone_number' => lang('Common.phone_number')], + ['total' => lang('Common.total_spent'), 'sortable' => false] + ]; } /** @@ -277,17 +277,17 @@ function customer_headers(): array */ function get_customer_manage_table_headers(): string { - $headers = customer_headers(); + $headers = customer_headers(); - $employee = model(Employee::class); - $session = session(); + $employee = model(Employee::class); + $session = session(); - if($employee->has_grant('messages', $session->get('person_id'))) - { - $headers[] = ['messages' => '', 'sortable' => false]; - } + if($employee->has_grant('messages', $session->get('person_id'))) + { + $headers[] = ['messages' => '', 'sortable' => false]; + } - return transform_headers($headers); + return transform_headers($headers); } /** @@ -295,50 +295,50 @@ function get_customer_manage_table_headers(): string */ function get_customer_data_row(object $person, object $stats): array { - $controller = get_controller(); + $controller = get_controller(); - return [ - 'people.person_id' => $person->person_id, - 'last_name' => $person->last_name, - 'first_name' => $person->first_name, - 'email' => empty($person->email) ? '' : mailto($person->email, $person->email), - 'phone_number' => $person->phone_number, - 'total' => to_currency($stats->total), - 'messages' => empty($person->phone_number) - ? '' - : anchor( - "Messages/view/$person->person_id", - '', - [ - 'class' => 'modal-dlg', - 'data-btn-submit' => lang('Common.submit'), - 'title'=>lang('Messages.sms_send') - ] - ), - 'edit' => anchor( - "$controller/view/$person->person_id", - '', - [ - 'class' => 'modal-dlg', - 'data-btn-submit' => lang('Common.submit'), - 'title'=>lang(ucfirst($controller) . ".update") - ] - ) - ]; + return [ + 'people.person_id' => $person->person_id, + 'last_name' => $person->last_name, + 'first_name' => $person->first_name, + 'email' => empty($person->email) ? '' : mailto($person->email, $person->email), + 'phone_number' => $person->phone_number, + 'total' => to_currency($stats->total), + 'messages' => empty($person->phone_number) + ? '' + : anchor( + "Messages/view/$person->person_id", + '', + [ + 'class' => 'modal-dlg', + 'data-btn-submit' => lang('Common.submit'), + 'title'=>lang('Messages.sms_send') + ] + ), + 'edit' => anchor( + "$controller/view/$person->person_id", + '', + [ + 'class' => 'modal-dlg', + 'data-btn-submit' => lang('Common.submit'), + 'title'=>lang(ucfirst($controller) . ".update") + ] + ) + ]; } function supplier_headers(): array { - return [ - ['people.person_id' => lang('Common.id')], - ['company_name' => lang('Suppliers.company_name')], - ['agency_name' => lang('Suppliers.agency_name')], - ['category' => lang('Suppliers.category')], - ['last_name' => lang('Common.last_name')], - ['first_name' => lang('Common.first_name')], - ['email' => lang('Common.email')], - ['phone_number' => lang('Common.phone_number')] - ]; + return [ + ['people.person_id' => lang('Common.id')], + ['company_name' => lang('Suppliers.company_name')], + ['agency_name' => lang('Suppliers.agency_name')], + ['category' => lang('Suppliers.category')], + ['last_name' => lang('Common.last_name')], + ['first_name' => lang('Common.first_name')], + ['email' => lang('Common.email')], + ['phone_number' => lang('Common.phone_number')] + ]; } /** @@ -346,17 +346,17 @@ function supplier_headers(): array */ function get_suppliers_manage_table_headers(): string { - $headers = supplier_headers(); + $headers = supplier_headers(); - $employee = model(Employee::class); - $session = session(); + $employee = model(Employee::class); + $session = session(); - if($employee->has_grant('messages', $session->get('person_id'))) - { - $headers[] = ['messages' => '']; - } + if($employee->has_grant('messages', $session->get('person_id'))) + { + $headers[] = ['messages' => '']; + } - return transform_headers($headers); + return transform_headers($headers); } /** @@ -364,52 +364,52 @@ function get_suppliers_manage_table_headers(): string */ function get_supplier_data_row(object $supplier): array { - $controller = get_controller(); + $controller = get_controller(); - return [ - 'people.person_id' => $supplier->person_id, - 'company_name' => html_entity_decode($supplier->company_name), - 'agency_name' => $supplier->agency_name, - 'category' => $supplier->category, - 'last_name' => $supplier->last_name, - 'first_name' => $supplier->first_name, - 'email' => empty($supplier->email) ? '' : mailto($supplier->email, $supplier->email), - 'phone_number' => $supplier->phone_number, - 'messages' => empty($supplier->phone_number) - ? '' - : anchor( - "Messages/view/$supplier->person_id", - '', - [ - 'class'=>"modal-dlg", - 'data-btn-submit' => lang('Common.submit'), - 'title'=>lang('Messages.sms_send') - ] - ), - 'edit' => anchor( - "$controller/view/$supplier->person_id", - '', - [ - 'class'=>"modal-dlg", - 'data-btn-submit' => lang('Common.submit'), - 'title'=>lang(ucfirst($controller) . ".update") - ] - ) - ]; + return [ + 'people.person_id' => $supplier->person_id, + 'company_name' => html_entity_decode($supplier->company_name), + 'agency_name' => $supplier->agency_name, + 'category' => $supplier->category, + 'last_name' => $supplier->last_name, + 'first_name' => $supplier->first_name, + 'email' => empty($supplier->email) ? '' : mailto($supplier->email, $supplier->email), + 'phone_number' => $supplier->phone_number, + 'messages' => empty($supplier->phone_number) + ? '' + : anchor( + "Messages/view/$supplier->person_id", + '', + [ + 'class'=>"modal-dlg", + 'data-btn-submit' => lang('Common.submit'), + 'title'=>lang('Messages.sms_send') + ] + ), + 'edit' => anchor( + "$controller/view/$supplier->person_id", + '', + [ + 'class'=>"modal-dlg", + 'data-btn-submit' => lang('Common.submit'), + 'title'=>lang(ucfirst($controller) . ".update") + ] + ) + ]; } function item_headers(): array { - return [ - ['items.item_id' => lang('Common.id')], - ['item_number' => lang('Items.item_number')], - ['name' => lang('Items.name')], - ['category' => lang('Items.category')], - ['company_name' => lang('Suppliers.company_name')], - ['cost_price' => lang('Items.cost_price')], - ['unit_price' => lang('Items.unit_price')], - ['quantity' => lang('Items.quantity')] - ]; + return [ + ['items.item_id' => lang('Common.id')], + ['item_number' => lang('Items.item_number')], + ['name' => lang('Items.name')], + ['category' => lang('Items.category')], + ['company_name' => lang('Suppliers.company_name')], + ['cost_price' => lang('Items.cost_price')], + ['unit_price' => lang('Items.unit_price')], + ['quantity' => lang('Items.quantity')] + ]; } /** @@ -417,33 +417,33 @@ function item_headers(): array */ function get_items_manage_table_headers(): string { - $attribute = model(Attribute::class); - $config = config(OSPOS::class)->settings; - $definition_names = $attribute->get_definitions_by_flags($attribute::SHOW_IN_ITEMS); //TODO: this should be made into a constant in constants.php + $attribute = model(Attribute::class); + $config = config(OSPOS::class)->settings; + $definition_names = $attribute->get_definitions_by_flags($attribute::SHOW_IN_ITEMS); //TODO: this should be made into a constant in constants.php - $headers = item_headers(); + $headers = item_headers(); - if($config['use_destination_based_tax']) - { - $headers[] = ['tax_percents' => lang('Items.tax_category'), 'sortable' => false]; - } - else - { - $headers[] = ['tax_percents' => lang('Items.tax_percents'), 'sortable' => false]; + if($config['use_destination_based_tax']) + { + $headers[] = ['tax_percents' => lang('Items.tax_category'), 'sortable' => false]; + } + else + { + $headers[] = ['tax_percents' => lang('Items.tax_percents'), 'sortable' => false]; - } + } - $headers[] = ['item_pic' => lang('Items.image'), 'sortable' => false]; + $headers[] = ['item_pic' => lang('Items.image'), 'sortable' => false]; - foreach($definition_names as $definition_id => $definition_name) - { - $headers[] = [$definition_id => $definition_name, 'sortable' => false]; - } + foreach($definition_names as $definition_id => $definition_name) + { + $headers[] = [$definition_id => $definition_name, 'sortable' => false]; + } - $headers[] = ['inventory' => '', 'escape' => false]; - $headers[] = ['stock' => '', 'escape' => false]; + $headers[] = ['inventory' => '', 'escape' => false]; + $headers[] = ['stock' => '', 'escape' => false]; - return transform_headers($headers); + return transform_headers($headers); } /** @@ -451,115 +451,115 @@ function get_items_manage_table_headers(): string */ function get_item_data_row(object $item): array { - $attribute = model(Attribute::class); - $item_taxes = model(Item_taxes::class); - $tax_category = model(Tax_category::class); - $config = config(OSPOS::class)->settings; + $attribute = model(Attribute::class); + $item_taxes = model(Item_taxes::class); + $tax_category = model(Tax_category::class); + $config = config(OSPOS::class)->settings; - if($config['use_destination_based_tax']) - { - if($item->tax_category_id == null) //TODO: === ? - { - $tax_percents = '-'; - } - else - { - $tax_category_info = $tax_category->get_info($item->tax_category_id); - $tax_percents = $tax_category_info->tax_category; - } - } - else - { - $item_tax_info = $item_taxes->get_info($item->item_id); - $tax_percents = ''; - foreach($item_tax_info as $tax_info) - { - $tax_percents .= to_tax_decimals($tax_info['percent']) . '%, '; - } + if($config['use_destination_based_tax']) + { + if($item->tax_category_id == null) //TODO: === ? + { + $tax_percents = '-'; + } + else + { + $tax_category_info = $tax_category->get_info($item->tax_category_id); + $tax_percents = $tax_category_info->tax_category; + } + } + else + { + $item_tax_info = $item_taxes->get_info($item->item_id); + $tax_percents = ''; + foreach($item_tax_info as $tax_info) + { + $tax_percents .= to_tax_decimals($tax_info['percent']) . '%, '; + } - // remove ', ' from last item - $tax_percents = substr($tax_percents, 0, -2); - $tax_percents = !$tax_percents ? '-' : $tax_percents; - } + // remove ', ' from last item + $tax_percents = substr($tax_percents, 0, -2); + $tax_percents = !$tax_percents ? '-' : $tax_percents; + } - $controller = get_controller(); + $controller = get_controller(); - $image = null; - if(!empty($item->pic_filename)) - { - $ext = pathinfo($item->pic_filename, PATHINFO_EXTENSION); + $image = null; + if(!empty($item->pic_filename)) + { + $ext = pathinfo($item->pic_filename, PATHINFO_EXTENSION); - $images = $ext == '' - ? glob("./uploads/item_pics/$item->pic_filename.*") - : glob("./uploads/item_pics/$item->pic_filename"); + $images = $ext == '' + ? glob("./uploads/item_pics/$item->pic_filename.*") + : glob("./uploads/item_pics/$item->pic_filename"); - if(sizeof($images) > 0) - { - $image .= 'Image thumbnail'; - } - } + if(sizeof($images) > 0) + { + $image .= 'Image thumbnail'; + } + } - if($config['multi_pack_enabled']) - { - $item->name .= NAME_SEPARATOR . $item->pack_name; - } + if($config['multi_pack_enabled']) + { + $item->name .= NAME_SEPARATOR . $item->pack_name; + } - $definition_names = $attribute->get_definitions_by_flags($attribute::SHOW_IN_ITEMS); + $definition_names = $attribute->get_definitions_by_flags($attribute::SHOW_IN_ITEMS); - $columns = [ - 'items.item_id' => $item->item_id, - 'item_number' => $item->item_number, - 'name' => $item->name, - 'category' => $item->category, - 'company_name' => $item->company_name, //TODO: This isn't in the items table. Should this be here? - 'cost_price' => to_currency($item->cost_price), - 'unit_price' => to_currency($item->unit_price), - 'quantity' => to_quantity_decimals($item->quantity), - 'tax_percents' => !$tax_percents ? '-' : $tax_percents, - 'item_pic' => $image - ]; + $columns = [ + 'items.item_id' => $item->item_id, + 'item_number' => $item->item_number, + 'name' => $item->name, + 'category' => $item->category, + 'company_name' => $item->company_name, //TODO: This isn't in the items table. Should this be here? + 'cost_price' => to_currency($item->cost_price), + 'unit_price' => to_currency($item->unit_price), + 'quantity' => to_quantity_decimals($item->quantity), + 'tax_percents' => !$tax_percents ? '-' : $tax_percents, + 'item_pic' => $image + ]; - $icons = [ - 'inventory' => anchor( - "$controller/inventory/$item->item_id", - '', - [ - 'class' => 'modal-dlg', - 'data-btn-submit' => lang('Common.submit'), - 'title' => lang(ucfirst($controller) . ".count") - ] - ), - 'stock' => anchor( - "$controller/countDetails/$item->item_id", - '', - [ - 'class' => 'modal-dlg', - 'title' => lang(ucfirst($controller) . ".details_count") - ] - ), - 'edit' => anchor( - "$controller/view/$item->item_id", - '', - [ - 'class' => 'modal-dlg', - 'data-btn-submit' => lang('Common.submit'), - 'title' => lang(ucfirst($controller) . ".update") - ] - ) - ]; + $icons = [ + 'inventory' => anchor( + "$controller/inventory/$item->item_id", + '', + [ + 'class' => 'modal-dlg', + 'data-btn-submit' => lang('Common.submit'), + 'title' => lang(ucfirst($controller) . ".count") + ] + ), + 'stock' => anchor( + "$controller/countDetails/$item->item_id", + '', + [ + 'class' => 'modal-dlg', + 'title' => lang(ucfirst($controller) . ".details_count") + ] + ), + 'edit' => anchor( + "$controller/view/$item->item_id", + '', + [ + 'class' => 'modal-dlg', + 'data-btn-submit' => lang('Common.submit'), + 'title' => lang(ucfirst($controller) . ".update") + ] + ) + ]; - return $columns + expand_attribute_values($definition_names, (array) $item) + $icons; + return $columns + expand_attribute_values($definition_names, (array) $item) + $icons; } function giftcard_headers(): array { - return [ - ['giftcard_id' => lang('Common.id')], - ['last_name' => lang('Common.last_name')], - ['first_name' => lang('Common.first_name')], - ['giftcard_number' => lang('Giftcards.giftcard_number')], - ['value' => lang('Giftcards.card_value')] - ]; + return [ + ['giftcard_id' => lang('Common.id')], + ['last_name' => lang('Common.last_name')], + ['first_name' => lang('Common.first_name')], + ['giftcard_number' => lang('Giftcards.giftcard_number')], + ['value' => lang('Giftcards.card_value')] + ]; } /** @@ -567,7 +567,7 @@ function giftcard_headers(): array */ function get_giftcards_manage_table_headers(): string { - return transform_headers(giftcard_headers()); + return transform_headers(giftcard_headers()); } /** @@ -575,36 +575,36 @@ function get_giftcards_manage_table_headers(): string */ function get_giftcard_data_row(object $giftcard): array { - $controller = get_controller(); + $controller = get_controller(); - return [ - 'giftcard_id' => $giftcard->giftcard_id, - 'last_name' => $giftcard->last_name, - 'first_name' => $giftcard->first_name, - 'giftcard_number' => $giftcard->giftcard_number, - 'value' => to_currency($giftcard->value), - 'edit' => anchor( - "$controller/view/$giftcard->giftcard_id", - '', - [ - 'class' => 'modal-dlg', - 'data-btn-submit' => lang('Common.submit'), - 'title'=>lang(ucfirst($controller) . ".update") - ] - ) - ]; + return [ + 'giftcard_id' => $giftcard->giftcard_id, + 'last_name' => $giftcard->last_name, + 'first_name' => $giftcard->first_name, + 'giftcard_number' => $giftcard->giftcard_number, + 'value' => to_currency($giftcard->value), + 'edit' => anchor( + "$controller/view/$giftcard->giftcard_id", + '', + [ + 'class' => 'modal-dlg', + 'data-btn-submit' => lang('Common.submit'), + 'title'=>lang(ucfirst($controller) . ".update") + ] + ) + ]; } function item_kit_headers(): array { - return [ - ['item_kit_id' => lang('Item_kits.kit')], - ['item_kit_number' => lang('Item_kits.item_kit_number')], - ['name' => lang('Item_kits.name')], - ['description' => lang('Item_kits.description')], - ['total_cost_price' => lang('Items.cost_price'), 'sortable' => FALSE], - ['total_unit_price' => lang('Items.unit_price'), 'sortable' => FALSE] - ]; + return [ + ['item_kit_id' => lang('Item_kits.kit')], + ['item_kit_number' => lang('Item_kits.item_kit_number')], + ['name' => lang('Item_kits.name')], + ['description' => lang('Item_kits.description')], + ['total_cost_price' => lang('Items.cost_price'), 'sortable' => FALSE], + ['total_unit_price' => lang('Items.unit_price'), 'sortable' => FALSE] + ]; } /** @@ -612,7 +612,7 @@ function item_kit_headers(): array */ function get_item_kits_manage_table_headers(): string { - return transform_headers(item_kit_headers()); + return transform_headers(item_kit_headers()); } /** @@ -620,25 +620,25 @@ function get_item_kits_manage_table_headers(): string */ function get_item_kit_data_row(object $item_kit): array { - $controller = get_controller(); + $controller = get_controller(); - return [ - 'item_kit_id' => $item_kit->item_kit_id, - 'item_kit_number' => $item_kit->item_kit_number, - 'name' => $item_kit->name, - 'description' => $item_kit->description, - 'total_cost_price' => to_currency($item_kit->total_cost_price), - 'total_unit_price' => to_currency($item_kit->total_unit_price), - 'edit' => anchor( - "$controller/view/$item_kit->item_kit_id", - '', - [ - 'class' => 'modal-dlg', - 'data-btn-submit' => lang('Common.submit'), - 'title'=>lang(ucfirst($controller) . ".update") - ] - ) - ]; + return [ + 'item_kit_id' => $item_kit->item_kit_id, + 'item_kit_number' => $item_kit->item_kit_number, + 'name' => $item_kit->name, + 'description' => $item_kit->description, + 'total_cost_price' => to_currency($item_kit->total_cost_price), + 'total_unit_price' => to_currency($item_kit->total_unit_price), + 'edit' => anchor( + "$controller/view/$item_kit->item_kit_id", + '', + [ + 'class' => 'modal-dlg', + 'data-btn-submit' => lang('Common.submit'), + 'title'=>lang(ucfirst($controller) . ".update") + ] + ) + ]; } /** @@ -648,16 +648,16 @@ function get_item_kit_data_row(object $item_kit): array */ function parse_attribute_values(array $columns, array $row): array { - $attribute_values = []; - foreach($columns as $column) - { - if (array_key_exists($column, $row)) - { - $attribute_value = explode('|', $row[$column]); - $attribute_values = array_merge($attribute_values, $attribute_value); - } - } - return $attribute_values; + $attribute_values = []; + foreach($columns as $column) + { + if (array_key_exists($column, $row)) + { + $attribute_value = explode('|', $row[$column]); + $attribute_values = array_merge($attribute_values, $attribute_value); + } + } + return $attribute_values; } /** @@ -667,44 +667,44 @@ function parse_attribute_values(array $columns, array $row): array */ function expand_attribute_values(array $definition_names, array $row): array { - $values = parse_attribute_values(['attribute_values', 'attribute_dtvalues', 'attribute_dvalues'], $row); + $values = parse_attribute_values(['attribute_values', 'attribute_dtvalues', 'attribute_dvalues'], $row); - $indexed_values = []; - foreach($values as $attribute_value) - { - $exploded_value = explode('_', $attribute_value); - if(sizeof($exploded_value) > 1) - { - $indexed_values[$exploded_value[0]] = $exploded_value[1]; - } - } + $indexed_values = []; + foreach($values as $attribute_value) + { + $exploded_value = explode('_', $attribute_value); + if(sizeof($exploded_value) > 1) + { + $indexed_values[$exploded_value[0]] = $exploded_value[1]; + } + } - $attribute_values = []; - foreach($definition_names as $definition_id => $definition_name) - { - if(isset($indexed_values[$definition_id])) - { - $attribute_value = $indexed_values[$definition_id]; - $attribute_values["$definition_id"] = $attribute_value; - } - else - { - $attribute_values["$definition_id"] = ""; - } - } + $attribute_values = []; + foreach($definition_names as $definition_id => $definition_name) + { + if(isset($indexed_values[$definition_id])) + { + $attribute_value = $indexed_values[$definition_id]; + $attribute_values["$definition_id"] = $attribute_value; + } + else + { + $attribute_values["$definition_id"] = ""; + } + } - return $attribute_values; + return $attribute_values; } function attribute_definition_headers(): array { - return [ - ['definition_id' => lang('Attributes.definition_id')], - ['definition_name' => lang('Attributes.definition_name')], - ['definition_type' => lang('Attributes.definition_type')], - ['definition_flags' => lang('Attributes.definition_flags')], - ['definition_group' => lang('Attributes.definition_group')], - ]; + return [ + ['definition_id' => lang('Attributes.definition_id')], + ['definition_name' => lang('Attributes.definition_name')], + ['definition_type' => lang('Attributes.definition_type')], + ['definition_flags' => lang('Attributes.definition_flags')], + ['definition_group' => lang('Attributes.definition_group')], + ]; } /** @@ -712,7 +712,7 @@ function attribute_definition_headers(): array */ function get_attribute_definition_manage_table_headers(): string { - return transform_headers(attribute_definition_headers()); + return transform_headers(attribute_definition_headers()); } /** @@ -722,47 +722,47 @@ function get_attribute_definition_manage_table_headers(): string function get_attribute_definition_data_row(object $attribute_row): array { - $attribute = model(Attribute::class); - $controller = get_controller(); + $attribute = model(Attribute::class); + $controller = get_controller(); - if(count($attribute->get_definition_flags()) == 0) - { - $definition_flags = lang('Common.none_selected_text'); - } - else if($attribute->definition_type == GROUP) - { - $definition_flags = "-"; - } - else - { - $definition_flags = implode(', ', $attribute_row->definition_flags); - } + if(count($attribute->get_definition_flags()) == 0) + { + $definition_flags = lang('Common.none_selected_text'); + } + else if($attribute->definition_type == GROUP) + { + $definition_flags = "-"; + } + else + { + $definition_flags = implode(', ', $attribute_row->definition_flags); + } - return [ - 'definition_id' => $attribute_row->definition_id, - 'definition_name' => $attribute_row->definition_name, - 'definition_type' => $attribute_row->definition_type, - 'definition_group' => $attribute_row->definition_group, - 'definition_flags' => $definition_flags, - 'edit' => anchor( - "$controller/view/$attribute_row->definition_id", - '', - [ - 'class' => 'modal-dlg', - 'data-btn-submit' => lang('Common.submit'), - 'title'=>lang(ucfirst($controller) . ".update") - ] - ) - ]; + return [ + 'definition_id' => $attribute_row->definition_id, + 'definition_name' => $attribute_row->definition_name, + 'definition_type' => $attribute_row->definition_type, + 'definition_group' => $attribute_row->definition_group, + 'definition_flags' => $definition_flags, + 'edit' => anchor( + "$controller/view/$attribute_row->definition_id", + '', + [ + 'class' => 'modal-dlg', + 'data-btn-submit' => lang('Common.submit'), + 'title'=>lang(ucfirst($controller) . ".update") + ] + ) + ]; } function expense_category_headers(): array { - return [ - ['expense_category_id' => lang('Expenses_categories.category_id')], - ['category_name' => lang('Expenses_categories.name')], - ['category_description' => lang('Expenses_categories.description')] - ]; + return [ + ['expense_category_id' => lang('Expenses_categories.category_id')], + ['category_name' => lang('Expenses_categories.name')], + ['category_description' => lang('Expenses_categories.description')] + ]; } /** @@ -770,7 +770,7 @@ function expense_category_headers(): array */ function get_expense_category_manage_table_headers(): string { - return transform_headers(expense_category_headers()); + return transform_headers(expense_category_headers()); } /** @@ -778,38 +778,38 @@ function get_expense_category_manage_table_headers(): string */ function get_expense_category_data_row(object $expense_category): array { - $controller = get_controller(); + $controller = get_controller(); - return [ - 'expense_category_id' => $expense_category->expense_category_id, - 'category_name' => $expense_category->category_name, - 'category_description' => $expense_category->category_description, - 'edit' => anchor( - "$controller/view/$expense_category->expense_category_id", - '', - [ - 'class' => 'modal-dlg', - 'data-btn-submit' => lang('Common.submit'), - 'title'=>lang(ucfirst($controller) . ".update") - ] - ) - ]; + return [ + 'expense_category_id' => $expense_category->expense_category_id, + 'category_name' => $expense_category->category_name, + 'category_description' => $expense_category->category_description, + 'edit' => anchor( + "$controller/view/$expense_category->expense_category_id", + '', + [ + 'class' => 'modal-dlg', + 'data-btn-submit' => lang('Common.submit'), + 'title'=>lang(ucfirst($controller) . ".update") + ] + ) + ]; } function expense_headers(): array { - return [ - ['expense_id' => lang('Expenses.expense_id')], - ['date' => lang('Expenses.date')], - ['supplier_name' => lang('Expenses.supplier_name')], - ['supplier_tax_code' => lang('Expenses.supplier_tax_code')], - ['amount' => lang('Expenses.amount')], - ['tax_amount' => lang('Expenses.tax_amount')], - ['payment_type' => lang('Expenses.payment')], - ['category_name' => lang('Expenses_categories.name')], - ['description' => lang('Expenses.description')], - ['created_by' => lang('Expenses.employee')] - ]; + return [ + ['expense_id' => lang('Expenses.expense_id')], + ['date' => lang('Expenses.date')], + ['supplier_name' => lang('Expenses.supplier_name')], + ['supplier_tax_code' => lang('Expenses.supplier_tax_code')], + ['amount' => lang('Expenses.amount')], + ['tax_amount' => lang('Expenses.tax_amount')], + ['payment_type' => lang('Expenses.payment')], + ['category_name' => lang('Expenses_categories.name')], + ['description' => lang('Expenses.description')], + ['created_by' => lang('Expenses.employee')] + ]; } /** @@ -817,7 +817,7 @@ function expense_headers(): array */ function get_expenses_manage_table_headers(): string { - return transform_headers(expense_headers()); + return transform_headers(expense_headers()); } /** @@ -825,29 +825,29 @@ function get_expenses_manage_table_headers(): string */ function get_expenses_data_row(object $expense): array { - $controller = get_controller(); + $controller = get_controller(); - return [ - 'expense_id' => $expense->expense_id, - 'date' => to_datetime(strtotime($expense->date)), - 'supplier_name' => $expense->supplier_name, - 'supplier_tax_code' => $expense->supplier_tax_code, - 'amount' => to_currency($expense->amount), - 'tax_amount' => to_currency($expense->tax_amount), - 'payment_type' => $expense->payment_type, - 'category_name' => $expense->category_name, - 'description' => $expense->description, - 'created_by' => $expense->first_name.' '. $expense->last_name, - 'edit' => anchor( - "$controller/view/$expense->expense_id", - '', - [ - 'class' => 'modal-dlg', - 'data-btn-submit' => lang('Common.submit'), - 'title'=>lang(ucfirst($controller) . ".update") - ] - ) - ]; + return [ + 'expense_id' => $expense->expense_id, + 'date' => to_datetime(strtotime($expense->date)), + 'supplier_name' => $expense->supplier_name, + 'supplier_tax_code' => $expense->supplier_tax_code, + 'amount' => to_currency($expense->amount), + 'tax_amount' => to_currency($expense->tax_amount), + 'payment_type' => $expense->payment_type, + 'category_name' => $expense->category_name, + 'description' => $expense->description, + 'created_by' => $expense->first_name.' '. $expense->last_name, + 'edit' => anchor( + "$controller/view/$expense->expense_id", + '', + [ + 'class' => 'modal-dlg', + 'data-btn-submit' => lang('Common.submit'), + 'title'=>lang(ucfirst($controller) . ".update") + ] + ) + ]; } /** @@ -855,59 +855,59 @@ function get_expenses_data_row(object $expense): array */ function get_expenses_data_last_row(object $expense): array { - $table_data_rows = ''; //TODO: This variable is never used - $sum_amount_expense = 0; - $sum_tax_amount_expense = 0; + $table_data_rows = ''; //TODO: This variable is never used + $sum_amount_expense = 0; + $sum_tax_amount_expense = 0; - foreach($expense->getResult() as $key => $expense) - { - $sum_amount_expense += $expense->amount; - $sum_tax_amount_expense += $expense->tax_amount; - } + foreach($expense->getResult() as $key => $expense) + { + $sum_amount_expense += $expense->amount; + $sum_tax_amount_expense += $expense->tax_amount; + } - return [ - 'expense_id' => '-', - 'date' => lang('Sales.total'), - 'amount' => to_currency($sum_amount_expense), - 'tax_amount' => to_currency($sum_tax_amount_expense) - ]; + return [ + 'expense_id' => '-', + 'date' => lang('Sales.total'), + 'amount' => to_currency($sum_amount_expense), + 'tax_amount' => to_currency($sum_tax_amount_expense) + ]; } /** * Get the expenses payments summary */ -function get_expenses_manage_payments_summary(array $payments, ResultInterface $expenses): string //TODO: $expenses is passed but never used. +function get_expenses_manage_payments_summary(array $payments, ResultInterface $expenses): string //TODO: $expenses is passed but never used. { - $table = '
    '; + $table = '
    '; - foreach($payments as $key => $payment) - { - $amount = $payment['amount']; - $table .= '
    ' . $payment['payment_type'] . ': ' . to_currency($amount) . '
    '; - } + foreach($payments as $key => $payment) + { + $amount = $payment['amount']; + $table .= '
    ' . $payment['payment_type'] . ': ' . to_currency($amount) . '
    '; + } - $table .= '
    '; + $table .= '
    '; - return $table; + return $table; } function cashup_headers(): array { - return [ - ['cashup_id' => lang('Cashups.id')], - ['open_date' => lang('Cashups.opened_date')], - ['open_employee_id' => lang('Cashups.open_employee')], - ['open_amount_cash' => lang('Cashups.open_amount_cash')], - ['transfer_amount_cash' => lang('Cashups.transfer_amount_cash')], - ['close_date' => lang('Cashups.closed_date')], - ['close_employee_id' => lang('Cashups.close_employee')], - ['closed_amount_cash' => lang('Cashups.closed_amount_cash')], - ['note' => lang('Cashups.note')], - ['closed_amount_due' => lang('Cashups.closed_amount_due')], - ['closed_amount_card' => lang('Cashups.closed_amount_card')], - ['closed_amount_check' => lang('Cashups.closed_amount_check')], - ['closed_amount_total' => lang('Cashups.closed_amount_total')] - ]; + return [ + ['cashup_id' => lang('Cashups.id')], + ['open_date' => lang('Cashups.opened_date')], + ['open_employee_id' => lang('Cashups.open_employee')], + ['open_amount_cash' => lang('Cashups.open_amount_cash')], + ['transfer_amount_cash' => lang('Cashups.transfer_amount_cash')], + ['close_date' => lang('Cashups.closed_date')], + ['close_employee_id' => lang('Cashups.close_employee')], + ['closed_amount_cash' => lang('Cashups.closed_amount_cash')], + ['note' => lang('Cashups.note')], + ['closed_amount_due' => lang('Cashups.closed_amount_due')], + ['closed_amount_card' => lang('Cashups.closed_amount_card')], + ['closed_amount_check' => lang('Cashups.closed_amount_check')], + ['closed_amount_total' => lang('Cashups.closed_amount_total')] + ]; } @@ -916,9 +916,9 @@ function cashup_headers(): array */ function get_cashups_manage_table_headers(): string { - $headers = cashup_headers(); + $headers = cashup_headers(); - return transform_headers($headers); + return transform_headers($headers); } /** @@ -926,32 +926,32 @@ function get_cashups_manage_table_headers(): string */ function get_cash_up_data_row(object $cash_up): array { - $controller = get_controller(); + $controller = get_controller(); - return [ - 'cashup_id' => $cash_up->cashup_id, - 'open_date' => to_datetime(strtotime($cash_up->open_date)), - 'open_employee_id' => $cash_up->open_first_name . ' ' . $cash_up->open_last_name, - 'open_amount_cash' => to_currency($cash_up->open_amount_cash), - 'transfer_amount_cash' => to_currency($cash_up->transfer_amount_cash), - 'close_date' => to_datetime(strtotime($cash_up->close_date)), - 'close_employee_id' => $cash_up->close_first_name . ' ' . $cash_up->close_last_name, - 'closed_amount_cash' => to_currency($cash_up->closed_amount_cash), - 'note' => $cash_up->note ? '' : '', - 'closed_amount_due' => to_currency($cash_up->closed_amount_due), - 'closed_amount_card' => to_currency($cash_up->closed_amount_card), - 'closed_amount_check' => to_currency($cash_up->closed_amount_check), - 'closed_amount_total' => to_currency($cash_up->closed_amount_total), - 'edit' => anchor( - "$controller/view/$cash_up->cashup_id", - '', - [ - 'class' => 'modal-dlg', - 'data-btn-submit' => lang('Common.submit'), - 'title'=>lang(ucfirst($controller) . ".update") - ] - ) - ]; + return [ + 'cashup_id' => $cash_up->cashup_id, + 'open_date' => to_datetime(strtotime($cash_up->open_date)), + 'open_employee_id' => $cash_up->open_first_name . ' ' . $cash_up->open_last_name, + 'open_amount_cash' => to_currency($cash_up->open_amount_cash), + 'transfer_amount_cash' => to_currency($cash_up->transfer_amount_cash), + 'close_date' => to_datetime(strtotime($cash_up->close_date)), + 'close_employee_id' => $cash_up->close_first_name . ' ' . $cash_up->close_last_name, + 'closed_amount_cash' => to_currency($cash_up->closed_amount_cash), + 'note' => $cash_up->note ? '' : '', + 'closed_amount_due' => to_currency($cash_up->closed_amount_due), + 'closed_amount_card' => to_currency($cash_up->closed_amount_card), + 'closed_amount_check' => to_currency($cash_up->closed_amount_check), + 'closed_amount_total' => to_currency($cash_up->closed_amount_total), + 'edit' => anchor( + "$controller/view/$cash_up->cashup_id", + '', + [ + 'class' => 'modal-dlg', + 'data-btn-submit' => lang('Common.submit'), + 'title'=>lang(ucfirst($controller) . ".update") + ] + ) + ]; } /** @@ -960,8 +960,8 @@ function get_cash_up_data_row(object $cash_up): array */ function get_controller(): string { - $router = service('router'); - $controller_name = strtolower($router->controllerName()); - $controller_name_parts = explode('\\', $controller_name); - return end($controller_name_parts); + $router = service('router'); + $controller_name = strtolower($router->controllerName()); + $controller_name_parts = explode('\\', $controller_name); + return end($controller_name_parts); } diff --git a/app/Helpers/tax_helper.php b/app/Helpers/tax_helper.php index 098c0331d..5d97d375a 100644 --- a/app/Helpers/tax_helper.php +++ b/app/Helpers/tax_helper.php @@ -11,14 +11,14 @@ use App\Models\Enums\Rounding_mode; */ function get_tax_code_table_headers(): string { - $headers = [ - ['tax_code' => lang('Taxes.tax_code')], - ['tax_code_name' => lang('Taxes.tax_code_name')], - ['city' => lang('Common.city')], - ['state' => lang('Common.state')] - ]; + $headers = [ + ['tax_code' => lang('Taxes.tax_code')], + ['tax_code_name' => lang('Taxes.tax_code_name')], + ['city' => lang('Common.city')], + ['state' => lang('Common.state')] + ]; - return transform_headers($headers); + return transform_headers($headers); } /** @@ -26,24 +26,24 @@ function get_tax_code_table_headers(): string */ function get_tax_code_data_row($tax_code_row): array { - $controller_name = 'tax_codes'; + $controller_name = 'tax_codes'; - return [ - 'tax_code' => $tax_code_row->tax_code, - 'tax_code_name' => $tax_code_row->tax_code_name, - 'tax_code_type' => $tax_code_row->tax_code_type, - 'city' => $tax_code_row->city, - 'state' => $tax_code_row->state, - 'edit' => anchor( - "$controller_name/view_tax_codes/$tax_code_row->tax_code", - '', - [ - 'class' => 'modal-dlg', - 'data-btn-submit' => lang('Common.submit'), - 'title'=>lang(ucfirst($controller_name) . ".update_tax_codes") - ] - ) - ]; + return [ + 'tax_code' => $tax_code_row->tax_code, + 'tax_code_name' => $tax_code_row->tax_code_name, + 'tax_code_type' => $tax_code_row->tax_code_type, + 'city' => $tax_code_row->city, + 'state' => $tax_code_row->state, + 'edit' => anchor( + "$controller_name/view_tax_codes/$tax_code_row->tax_code", + '', + [ + 'class' => 'modal-dlg', + 'data-btn-submit' => lang('Common.submit'), + 'title'=>lang(ucfirst($controller_name) . ".update_tax_codes") + ] + ) + ]; } /** @@ -51,13 +51,13 @@ function get_tax_code_data_row($tax_code_row): array */ function get_tax_categories_table_headers(): string { - $headers = [ - ['tax_category' => lang('Taxes.tax_category_name')], - ['tax_category_code' => lang('Taxes.tax_category_code')], - ['tax_group_sequence' => lang('Taxes.tax_group_sequence')], - ]; + $headers = [ + ['tax_category' => lang('Taxes.tax_category_name')], + ['tax_category_code' => lang('Taxes.tax_category_code')], + ['tax_group_sequence' => lang('Taxes.tax_group_sequence')], + ]; - return transform_headers($headers); + return transform_headers($headers); } /** @@ -65,23 +65,23 @@ function get_tax_categories_table_headers(): string */ function get_tax_categories_data_row($tax_categories_row): array { - $controller_name = 'tax_categories'; + $controller_name = 'tax_categories'; - return [ - 'tax_category_id' => $tax_categories_row->tax_category_id, - 'tax_category' => $tax_categories_row->tax_category, - 'tax_category_code' => $tax_categories_row->tax_category_code, - 'tax_group_sequence' => $tax_categories_row->tax_group_sequence, - 'edit' => anchor( - "$controller_name/view/$tax_categories_row->tax_category_id", - '', - [ - 'class' => 'modal-dlg', - 'data-btn-submit' => lang('Common.submit'), - 'title'=>lang(ucfirst($controller_name) . ".update") - ] - ) - ]; + return [ + 'tax_category_id' => $tax_categories_row->tax_category_id, + 'tax_category' => $tax_categories_row->tax_category, + 'tax_category_code' => $tax_categories_row->tax_category_code, + 'tax_group_sequence' => $tax_categories_row->tax_group_sequence, + 'edit' => anchor( + "$controller_name/view/$tax_categories_row->tax_category_id", + '', + [ + 'class' => 'modal-dlg', + 'data-btn-submit' => lang('Common.submit'), + 'title'=>lang(ucfirst($controller_name) . ".update") + ] + ) + ]; } /** @@ -89,13 +89,13 @@ function get_tax_categories_data_row($tax_categories_row): array */ function get_tax_jurisdictions_table_headers(): string { - $headers = [ - ['jurisdiction_id' => lang('Taxes.jurisdiction_id')], - ['jurisdiction_name' => lang('Taxes.jurisdiction_name')], - ['reporting_authority' => lang('Taxes.reporting_authority')] - ]; + $headers = [ + ['jurisdiction_id' => lang('Taxes.jurisdiction_id')], + ['jurisdiction_name' => lang('Taxes.jurisdiction_name')], + ['reporting_authority' => lang('Taxes.reporting_authority')] + ]; - return transform_headers($headers); + return transform_headers($headers); } /** @@ -103,22 +103,22 @@ function get_tax_jurisdictions_table_headers(): string */ function get_tax_jurisdictions_data_row($tax_jurisdiction_row): array { - $controller_name='tax_jurisdictions'; + $controller_name='tax_jurisdictions'; - return [ - 'jurisdiction_id' => $tax_jurisdiction_row->jurisdiction_id, - 'jurisdiction_name' => $tax_jurisdiction_row->jurisdiction_name, - 'reporting_authority' => $tax_jurisdiction_row->reporting_authority, - 'edit' => anchor( - "$controller_name/view/$tax_jurisdiction_row->jurisdiction_id", - '', - [ - 'class' => 'modal-dlg', - 'data-btn-submit' => lang('Common.submit'), - 'title'=>lang(ucfirst($controller_name) . ".update") - ] - ) - ]; + return [ + 'jurisdiction_id' => $tax_jurisdiction_row->jurisdiction_id, + 'jurisdiction_name' => $tax_jurisdiction_row->jurisdiction_name, + 'reporting_authority' => $tax_jurisdiction_row->reporting_authority, + 'edit' => anchor( + "$controller_name/view/$tax_jurisdiction_row->jurisdiction_id", + '', + [ + 'class' => 'modal-dlg', + 'data-btn-submit' => lang('Common.submit'), + 'title'=>lang(ucfirst($controller_name) . ".update") + ] + ) + ]; } /** @@ -126,16 +126,16 @@ function get_tax_jurisdictions_data_row($tax_jurisdiction_row): array */ function get_tax_rates_manage_table_headers(): string { - $headers = [ - ['tax_code' => lang('Taxes.tax_code')], - ['tax_code_name' => lang('Taxes.tax_code_name')], - ['jurisdiction_name' => lang('Taxes.jurisdiction_name')], - ['tax_category' => lang('Taxes.tax_category')], - ['tax_rate' => lang('Taxes.tax_rate')], - ['rounding_code_name' => lang('Taxes.rounding_code')] - ]; + $headers = [ + ['tax_code' => lang('Taxes.tax_code')], + ['tax_code_name' => lang('Taxes.tax_code_name')], + ['jurisdiction_name' => lang('Taxes.jurisdiction_name')], + ['tax_category' => lang('Taxes.tax_category')], + ['tax_rate' => lang('Taxes.tax_rate')], + ['rounding_code_name' => lang('Taxes.rounding_code')] + ]; - return transform_headers($headers); + return transform_headers($headers); } /** @@ -143,26 +143,26 @@ function get_tax_rates_manage_table_headers(): string */ function get_tax_rates_data_row($tax_rates_row): array { - $router = service('router'); - $controller_name = strtolower($router->controllerName()); + $router = service('router'); + $controller_name = strtolower($router->controllerName()); - return [ - 'tax_rate_id' => $tax_rates_row->tax_rate_id, - 'tax_code' => $tax_rates_row->tax_code, - 'tax_code_name' => $tax_rates_row->tax_code_name, - 'tax_category' => $tax_rates_row->tax_category, - 'tax_rate' => $tax_rates_row->tax_rate, - 'jurisdiction_name' => $tax_rates_row->jurisdiction_name, - 'tax_rounding_code' =>$tax_rates_row->tax_rounding_code, - 'rounding_code_name' => Rounding_mode::get_rounding_code_name($tax_rates_row->tax_rounding_code), - 'edit' => anchor( - "$controller_name/view/$tax_rates_row->tax_rate_id", - '', - [ - 'class' => 'modal-dlg', - 'data-btn-submit' => lang('Common.submit'), - 'title'=>lang(ucfirst($controller_name) . ".update") - ] - ) - ]; + return [ + 'tax_rate_id' => $tax_rates_row->tax_rate_id, + 'tax_code' => $tax_rates_row->tax_code, + 'tax_code_name' => $tax_rates_row->tax_code_name, + 'tax_category' => $tax_rates_row->tax_category, + 'tax_rate' => $tax_rates_row->tax_rate, + 'jurisdiction_name' => $tax_rates_row->jurisdiction_name, + 'tax_rounding_code' =>$tax_rates_row->tax_rounding_code, + 'rounding_code_name' => Rounding_mode::get_rounding_code_name($tax_rates_row->tax_rounding_code), + 'edit' => anchor( + "$controller_name/view/$tax_rates_row->tax_rate_id", + '', + [ + 'class' => 'modal-dlg', + 'data-btn-submit' => lang('Common.submit'), + 'title'=>lang(ucfirst($controller_name) . ".update") + ] + ) + ]; } diff --git a/app/Language/Language code definition b/app/Language/Language code definition index effe2c39d..23d9df7c5 100644 --- a/app/Language/Language code definition +++ b/app/Language/Language code definition @@ -1,166 +1,166 @@ ISO Language Code Table ----------------------- -Code Name -af-ZA Afrikaans (South Africa) -ar-AE Arabic (U.A.E.) -ar-BH Arabic (Bahrain) -ar-DZ Arabic (Algeria) -ar-EG Arabic (Egypt) -ar-IQ Arabic (Iraq) -ar-JO Arabic (Jordan) -ar-KW Arabic (Kuwait) -ar-LB Arabic (Lebanon) -ar-LY Arabic (Libya) -ar-MA Arabic (Morocco) -ar-OM Arabic (Oman) -ar-QA Arabic (Qatar) -ar-SA Arabic (Saudi Arabia) -ar-SY Arabic (Syria) -ar-TN Arabic (Tunisia) -ar-YE Arabic (Yemen) -az-AZ Azeri (Latin) (Azerbaijan) -az-AZ Azeri (Cyrillic) (Azerbaijan) -be-BY Belarusian (Belarus) -bg-BG Bulgarian (Bulgaria) -bs-BA Bosnian (Bosnia and Herzegovina) -ca-ES Catalan (Spain) -cs-CZ Czech (Czech Republic) -cy-GB Welsh (United Kingdom) -da-DK Danish (Denmark) -de-AT German (Austria) -de-CH German (Switzerland) -de-DE German (Germany) -de-LI German (Liechtenstein) -de-LU German (Luxembourg) -dv-MV Divehi (Maldives) -el-GR Greek (Greece) -en-AU English (Australia) -en-BZ English (Belize) -en-CA English (Canada) -en-CB English (Caribbean) -en-GB English (United Kingdom) -en-IE English (Ireland) -en-JM English (Jamaica) -en-NZ English (New Zealand) -en-PH English (Republic of the Philippines) -en-TT English (Trinidad and Tobago) -en-US English (United States) -en-ZA English (South Africa) -en-ZW English (Zimbabwe) -es-AR Spanish (Argentina) -es-BO Spanish (Bolivia) -es-CL Spanish (Chile) -es-CO Spanish (Colombia) -es-CR Spanish (Costa Rica) -es-DO Spanish (Dominican Republic) -es-EC Spanish (Ecuador) -es-ES Spanish (Castilian) -es-ES Spanish (Spain) -es-GT Spanish (Guatemala) -es-HN Spanish (Honduras) -es-MX Spanish (Mexico) -es-NI Spanish (Nicaragua) -es-PA Spanish (Panama) -es-PE Spanish (Peru) -es-PR Spanish (Puerto Rico) -es-PY Spanish (Paraguay) -es-SV Spanish (El Salvador) -es-UY Spanish (Uruguay) -es-VE Spanish (Venezuela) -et-EE Estonian (Estonia) -eu-ES Basque (Spain) -fa-IR Farsi (Iran) -fi-FI Finnish (Finland) -fo-FO Faroese (Faroe Islands) -fr-BE French (Belgium) -fr-CA French (Canada) -fr-CH French (Switzerland) -fr-FR French (France) -fr-LU French (Luxembourg) -fr-MC French (Principality of Monaco) -gl-ES Galician (Spain) -gu-IN Gujarati (India) -he-IL Hebrew (Israel) -hi-IN Hindi (India) -hr-BA Croatian (Bosnia and Herzegovina) -hr-HR Croatian (Croatia) -hu-HU Hungarian (Hungary) -hy-AM Armenian (Armenia) -id-ID Indonesian (Indonesia) -is-IS Icelandic (Iceland) -it-CH Italian (Switzerland) -it-IT Italian (Italy) -ja-JP Japanese (Japan) -ka-GE Georgian (Georgia) -kk-KZ Kazakh (Kazakhstan) -kn-IN Kannada (India) -ko-KR Korean (Korea) -kok-IN Konkani (India) -ky-KG Kyrgyz (Kyrgyzstan) -lt-LT Lithuanian (Lithuania) -lv-LV Latvian (Latvia) -mi-NZ Maori (New Zealand) -mk-MK FYRO Macedonian (Former Yugoslav Republic of Macedonia) -mn-MN Mongolian (Mongolia) -mr-IN Marathi (India) -ms-BN Malay (Brunei Darussalam) -ms-MY Malay (Malaysia) -mt-MT Maltese (Malta) -nb-NO Norwegian (Bokm?l) (Norway) -nl-BE Dutch (Belgium) -nl-NL Dutch (Netherlands) -nn-NO Norwegian (Nynorsk) (Norway) -ns-ZA Northern Sotho (South Africa) -pa-IN Punjabi (India) -pl-PL Polish (Poland) -ps-AR Pashto (Afghanistan) -pt-BR Portuguese (Brazil) -pt-PT Portuguese (Portugal) -qu-BO Quechua (Bolivia) -qu-EC Quechua (Ecuador) -qu-PE Quechua (Peru) -ro-RO Romanian (Romania) -ru-RU Russian (Russia) -sa-IN Sanskrit (India) -se-FI Sami (Northern) (Finland) -se-FI Sami (Skolt) (Finland) -se-FI Sami (Inari) (Finland) -se-NO Sami (Northern) (Norway) -se-NO Sami (Lule) (Norway) -se-NO Sami (Southern) (Norway) -se-SE Sami (Northern) (Sweden) -se-SE Sami (Lule) (Sweden) -se-SE Sami (Southern) (Sweden) -sk-SK Slovak (Slovakia) -sl-SI Slovenian (Slovenia) -sq-AL Albanian (Albania) -sr-BA Serbian (Latin) (Bosnia and Herzegovina) -sr-BA Serbian (Cyrillic) (Bosnia and Herzegovina) -sr-SP Serbian (Latin) (Serbia and Montenegro) -sr-SP Serbian (Cyrillic) (Serbia and Montenegro) -sv-FI Swedish (Finland) -sv-SE Swedish (Sweden) -sw-KE Swahili (Kenya) -syr-SY Syriac (Syria) -ta-IN Tamil (India) -te-IN Telugu (India) -th-TH Thai (Thailand) -tl-PH Tagalog (Philippines) -tn-ZA Tswana (South Africa) -tr-TR Turkish (Turkey) -tt-RU Tatar (Russia) -uk-UA Ukrainian (Ukraine) -ur-PK Urdu (Islamic Republic of Pakistan) -uz-UZ Uzbek (Latin) (Uzbekistan) -uz-UZ Uzbek (Cyrillic) (Uzbekistan) -vi-VN Vietnamese (Viet Nam) -xh-ZA Xhosa (South Africa) -zh-CN Chinese (S) -zh-Hans Chinese in the simplified scrip -zh-Hant Chinese in the traditional script -zh-HK Chinese (Hong Kong) -zh-MO Chinese (Macau) -zh-SG Chinese (Singapore) -zh-TW Chinese (T) -zu-ZA Zulu (South Africa) +Code Name +af-ZA Afrikaans (South Africa) +ar-AE Arabic (U.A.E.) +ar-BH Arabic (Bahrain) +ar-DZ Arabic (Algeria) +ar-EG Arabic (Egypt) +ar-IQ Arabic (Iraq) +ar-JO Arabic (Jordan) +ar-KW Arabic (Kuwait) +ar-LB Arabic (Lebanon) +ar-LY Arabic (Libya) +ar-MA Arabic (Morocco) +ar-OM Arabic (Oman) +ar-QA Arabic (Qatar) +ar-SA Arabic (Saudi Arabia) +ar-SY Arabic (Syria) +ar-TN Arabic (Tunisia) +ar-YE Arabic (Yemen) +az-AZ Azeri (Latin) (Azerbaijan) +az-AZ Azeri (Cyrillic) (Azerbaijan) +be-BY Belarusian (Belarus) +bg-BG Bulgarian (Bulgaria) +bs-BA Bosnian (Bosnia and Herzegovina) +ca-ES Catalan (Spain) +cs-CZ Czech (Czech Republic) +cy-GB Welsh (United Kingdom) +da-DK Danish (Denmark) +de-AT German (Austria) +de-CH German (Switzerland) +de-DE German (Germany) +de-LI German (Liechtenstein) +de-LU German (Luxembourg) +dv-MV Divehi (Maldives) +el-GR Greek (Greece) +en-AU English (Australia) +en-BZ English (Belize) +en-CA English (Canada) +en-CB English (Caribbean) +en-GB English (United Kingdom) +en-IE English (Ireland) +en-JM English (Jamaica) +en-NZ English (New Zealand) +en-PH English (Republic of the Philippines) +en-TT English (Trinidad and Tobago) +en-US English (United States) +en-ZA English (South Africa) +en-ZW English (Zimbabwe) +es-AR Spanish (Argentina) +es-BO Spanish (Bolivia) +es-CL Spanish (Chile) +es-CO Spanish (Colombia) +es-CR Spanish (Costa Rica) +es-DO Spanish (Dominican Republic) +es-EC Spanish (Ecuador) +es-ES Spanish (Castilian) +es-ES Spanish (Spain) +es-GT Spanish (Guatemala) +es-HN Spanish (Honduras) +es-MX Spanish (Mexico) +es-NI Spanish (Nicaragua) +es-PA Spanish (Panama) +es-PE Spanish (Peru) +es-PR Spanish (Puerto Rico) +es-PY Spanish (Paraguay) +es-SV Spanish (El Salvador) +es-UY Spanish (Uruguay) +es-VE Spanish (Venezuela) +et-EE Estonian (Estonia) +eu-ES Basque (Spain) +fa-IR Farsi (Iran) +fi-FI Finnish (Finland) +fo-FO Faroese (Faroe Islands) +fr-BE French (Belgium) +fr-CA French (Canada) +fr-CH French (Switzerland) +fr-FR French (France) +fr-LU French (Luxembourg) +fr-MC French (Principality of Monaco) +gl-ES Galician (Spain) +gu-IN Gujarati (India) +he-IL Hebrew (Israel) +hi-IN Hindi (India) +hr-BA Croatian (Bosnia and Herzegovina) +hr-HR Croatian (Croatia) +hu-HU Hungarian (Hungary) +hy-AM Armenian (Armenia) +id-ID Indonesian (Indonesia) +is-IS Icelandic (Iceland) +it-CH Italian (Switzerland) +it-IT Italian (Italy) +ja-JP Japanese (Japan) +ka-GE Georgian (Georgia) +kk-KZ Kazakh (Kazakhstan) +kn-IN Kannada (India) +ko-KR Korean (Korea) +kok-IN Konkani (India) +ky-KG Kyrgyz (Kyrgyzstan) +lt-LT Lithuanian (Lithuania) +lv-LV Latvian (Latvia) +mi-NZ Maori (New Zealand) +mk-MK FYRO Macedonian (Former Yugoslav Republic of Macedonia) +mn-MN Mongolian (Mongolia) +mr-IN Marathi (India) +ms-BN Malay (Brunei Darussalam) +ms-MY Malay (Malaysia) +mt-MT Maltese (Malta) +nb-NO Norwegian (Bokm?l) (Norway) +nl-BE Dutch (Belgium) +nl-NL Dutch (Netherlands) +nn-NO Norwegian (Nynorsk) (Norway) +ns-ZA Northern Sotho (South Africa) +pa-IN Punjabi (India) +pl-PL Polish (Poland) +ps-AR Pashto (Afghanistan) +pt-BR Portuguese (Brazil) +pt-PT Portuguese (Portugal) +qu-BO Quechua (Bolivia) +qu-EC Quechua (Ecuador) +qu-PE Quechua (Peru) +ro-RO Romanian (Romania) +ru-RU Russian (Russia) +sa-IN Sanskrit (India) +se-FI Sami (Northern) (Finland) +se-FI Sami (Skolt) (Finland) +se-FI Sami (Inari) (Finland) +se-NO Sami (Northern) (Norway) +se-NO Sami (Lule) (Norway) +se-NO Sami (Southern) (Norway) +se-SE Sami (Northern) (Sweden) +se-SE Sami (Lule) (Sweden) +se-SE Sami (Southern) (Sweden) +sk-SK Slovak (Slovakia) +sl-SI Slovenian (Slovenia) +sq-AL Albanian (Albania) +sr-BA Serbian (Latin) (Bosnia and Herzegovina) +sr-BA Serbian (Cyrillic) (Bosnia and Herzegovina) +sr-SP Serbian (Latin) (Serbia and Montenegro) +sr-SP Serbian (Cyrillic) (Serbia and Montenegro) +sv-FI Swedish (Finland) +sv-SE Swedish (Sweden) +sw-KE Swahili (Kenya) +syr-SY Syriac (Syria) +ta-IN Tamil (India) +te-IN Telugu (India) +th-TH Thai (Thailand) +tl-PH Tagalog (Philippines) +tn-ZA Tswana (South Africa) +tr-TR Turkish (Turkey) +tt-RU Tatar (Russia) +uk-UA Ukrainian (Ukraine) +ur-PK Urdu (Islamic Republic of Pakistan) +uz-UZ Uzbek (Latin) (Uzbekistan) +uz-UZ Uzbek (Cyrillic) (Uzbekistan) +vi-VN Vietnamese (Viet Nam) +xh-ZA Xhosa (South Africa) +zh-CN Chinese (S) +zh-Hans Chinese in the simplified scrip +zh-Hant Chinese in the traditional script +zh-HK Chinese (Hong Kong) +zh-MO Chinese (Macau) +zh-SG Chinese (Singapore) +zh-TW Chinese (T) +zu-ZA Zulu (South Africa) diff --git a/app/Language/ar-EG/Attributes.php b/app/Language/ar-EG/Attributes.php index 7a1227820..2d7fa6b9c 100644 --- a/app/Language/ar-EG/Attributes.php +++ b/app/Language/ar-EG/Attributes.php @@ -1,32 +1,32 @@ "الميزات لا يمكن أن تحتوي على ':' أو'|'", - "confirm_delete" => "هل أنت متأكد من أنك تريد حذف الميزات المحددة ؟", - "confirm_restore" => "هل أنت متأكد من أنك تريد استعادة السمة (السمات) المحددة؟", - "definition_cannot_be_deleted" => "لا يمكن حذف السمات المحددة", - "definition_error_adding_updating" => "لا يمكن إضافة السمة {0} أو تحديثها. يرجى التحقق من سجل الخطأ.", - "definition_flags" => "رؤية الميزات", - "definition_group" => "المجموعة", - "definition_id" => "كود", - "definition_name" => "إضافة ميزة", - "definition_name_required" => "اسم الميزة هي خانة اجبارية", - "definition_one_or_multiple" => "ميزة/ميزات", - "definition_successful_adding" => "لقد تم إضافة صنف بنجاح", - "definition_successful_deleted" => "لقد تم حذف ميزة بنجاح", - "definition_successful_updating" => "تم تعديل الميزة بنجاح", - "definition_type" => "نوع الميزة", - "definition_type_required" => "نوع الميزة هي خانة إجبارية", - "definition_unit" => "وحدة قياس", - "definition_values" => "قيمة الميزة", - "new" => "اضافة ميزة جديده", - "no_attributes_to_display" => "لا يوجد اصناف للعرض", - "receipt_visibility" => "وصل", - "show_in_items" => "اظهار في الصنف", - "show_in_items_visibility" => "الصنف", - "show_in_receipt" => "اظهار على الوصل", - "show_in_receivings" => "اظهار في استلام البضائع", - "show_in_receivings_visibility" => "استلام البضائع", - "show_in_sales" => "اظهار خلال البيع", - "show_in_sales_visibility" => "البيع", - "update" => "تحديث الميزات", + "attribute_value_invalid_chars" => "الميزات لا يمكن أن تحتوي على ':' أو'|'", + "confirm_delete" => "هل أنت متأكد من أنك تريد حذف الميزات المحددة ؟", + "confirm_restore" => "هل أنت متأكد من أنك تريد استعادة السمة (السمات) المحددة؟", + "definition_cannot_be_deleted" => "لا يمكن حذف السمات المحددة", + "definition_error_adding_updating" => "لا يمكن إضافة السمة {0} أو تحديثها. يرجى التحقق من سجل الخطأ.", + "definition_flags" => "رؤية الميزات", + "definition_group" => "المجموعة", + "definition_id" => "كود", + "definition_name" => "إضافة ميزة", + "definition_name_required" => "اسم الميزة هي خانة اجبارية", + "definition_one_or_multiple" => "ميزة/ميزات", + "definition_successful_adding" => "لقد تم إضافة صنف بنجاح", + "definition_successful_deleted" => "لقد تم حذف ميزة بنجاح", + "definition_successful_updating" => "تم تعديل الميزة بنجاح", + "definition_type" => "نوع الميزة", + "definition_type_required" => "نوع الميزة هي خانة إجبارية", + "definition_unit" => "وحدة قياس", + "definition_values" => "قيمة الميزة", + "new" => "اضافة ميزة جديده", + "no_attributes_to_display" => "لا يوجد اصناف للعرض", + "receipt_visibility" => "وصل", + "show_in_items" => "اظهار في الصنف", + "show_in_items_visibility" => "الصنف", + "show_in_receipt" => "اظهار على الوصل", + "show_in_receivings" => "اظهار في استلام البضائع", + "show_in_receivings_visibility" => "استلام البضائع", + "show_in_sales" => "اظهار خلال البيع", + "show_in_sales_visibility" => "البيع", + "update" => "تحديث الميزات", ]; diff --git a/app/Language/ar-EG/Bootstrap_tables.php b/app/Language/ar-EG/Bootstrap_tables.php index d2288dc7d..0ea6784fe 100644 --- a/app/Language/ar-EG/Bootstrap_tables.php +++ b/app/Language/ar-EG/Bootstrap_tables.php @@ -1,11 +1,11 @@ "الجميع", - "columns" => "أعمدة", - "hide_show_pagination" => "عرض/إخفاء أرقام الصفحات", - "loading" => "جارى التحميل، برجاء الإنتظار ...", - "page_from_to" => "عرض {0} إلى {1} من {2} صفوف", - "refresh" => "إعادة تحميل", - "rows_per_page" => "{0} صف بالصفحة", - "toggle" => "تغيير", + "all" => "الجميع", + "columns" => "أعمدة", + "hide_show_pagination" => "عرض/إخفاء أرقام الصفحات", + "loading" => "جارى التحميل، برجاء الإنتظار ...", + "page_from_to" => "عرض {0} إلى {1} من {2} صفوف", + "refresh" => "إعادة تحميل", + "rows_per_page" => "{0} صف بالصفحة", + "toggle" => "تغيير", ]; diff --git a/app/Language/ar-EG/Cashups.php b/app/Language/ar-EG/Cashups.php index 7f2f34d9f..4873763b9 100644 --- a/app/Language/ar-EG/Cashups.php +++ b/app/Language/ar-EG/Cashups.php @@ -1,49 +1,49 @@ "قيمة المبلغ", - "amount_number" => "قيمة المبلغ يجب ان تتكون من ارقام", - "amount_required" => "قيمة المبلغ هي خانة إجبارية.", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "لا يمكن حذف الصندوق النقدي", - "cash_difference" => "", - "close_date" => "تاريخ تسكير الصندوق", - "close_employee" => "تم التسكير من قبل", - "closed_amount_card" => "بطاقات ائتمان", - "closed_amount_cash" => "الصندوق النقدي", - "closed_amount_check" => "شيكات", - "closed_amount_due" => "الديون", - "closed_amount_giftcard" => "", - "closed_amount_total" => "المجموع", - "closed_date" => "تاريخ تسكير الصندوق", - "confirm_delete" => "هل انت متأكد من حذف الصندوق النقدي؟", - "confirm_restore" => "هل انت متأكد من استعادة الصندوق النقدي؟", - "confirm_submit" => "", - "date_number" => "التاريخ يجب ان يكون مكون من ارقام", - "date_required" => "التاريخ هي خانة اجبارية", - "description" => "الوصف", - "enable_expected" => "", - "error_adding_updating" => "خطأ في تعديل او اضافة صندوق نقدي", - "giftcard" => "", - "id" => "كود", - "info" => "معلومات عن الصندوق النقدي", - "info_employee" => "", - "is_deleted" => "محذوف", - "new" => "صندوق نقدي جديد", - "no_cashups_to_display" => "لا يوجد صناديق نقدية للاظهار", - "none_selected" => "لم يتم اختيار اي صندوق نقدي", - "note" => "ملاحظات", - "one_or_multiple" => "صندوق او صناديق نقدية", - "open_amount_cash" => "بداية صندوق نقدي", - "open_date" => "تاريخ بداية الصندوق النقدي", - "open_employee" => "تمت بداية الصندوق النقدي من قبل", - "opened_date" => "تاريخ بداية الصندوق النقدي", - "successful_adding" => "تمت إضافة الصندوق النقدي بنجاح", - "successful_deleted" => "تم حذف الصندوق النقدي بنجاح", - "successful_updating" => "تم تعديل الصندوق النقدي بنجاح", - "total" => "المجموع", - "transfer_amount_cash" => "حركة الصندوق", - "transfer_amount_cash_minus" => "", - "update" => "تعديل/تحديث الصندوق النقدي", - "warning" => "", + "amount" => "قيمة المبلغ", + "amount_number" => "قيمة المبلغ يجب ان تتكون من ارقام", + "amount_required" => "قيمة المبلغ هي خانة إجبارية.", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "لا يمكن حذف الصندوق النقدي", + "cash_difference" => "", + "close_date" => "تاريخ تسكير الصندوق", + "close_employee" => "تم التسكير من قبل", + "closed_amount_card" => "بطاقات ائتمان", + "closed_amount_cash" => "الصندوق النقدي", + "closed_amount_check" => "شيكات", + "closed_amount_due" => "الديون", + "closed_amount_giftcard" => "", + "closed_amount_total" => "المجموع", + "closed_date" => "تاريخ تسكير الصندوق", + "confirm_delete" => "هل انت متأكد من حذف الصندوق النقدي؟", + "confirm_restore" => "هل انت متأكد من استعادة الصندوق النقدي؟", + "confirm_submit" => "", + "date_number" => "التاريخ يجب ان يكون مكون من ارقام", + "date_required" => "التاريخ هي خانة اجبارية", + "description" => "الوصف", + "enable_expected" => "", + "error_adding_updating" => "خطأ في تعديل او اضافة صندوق نقدي", + "giftcard" => "", + "id" => "كود", + "info" => "معلومات عن الصندوق النقدي", + "info_employee" => "", + "is_deleted" => "محذوف", + "new" => "صندوق نقدي جديد", + "no_cashups_to_display" => "لا يوجد صناديق نقدية للاظهار", + "none_selected" => "لم يتم اختيار اي صندوق نقدي", + "note" => "ملاحظات", + "one_or_multiple" => "صندوق او صناديق نقدية", + "open_amount_cash" => "بداية صندوق نقدي", + "open_date" => "تاريخ بداية الصندوق النقدي", + "open_employee" => "تمت بداية الصندوق النقدي من قبل", + "opened_date" => "تاريخ بداية الصندوق النقدي", + "successful_adding" => "تمت إضافة الصندوق النقدي بنجاح", + "successful_deleted" => "تم حذف الصندوق النقدي بنجاح", + "successful_updating" => "تم تعديل الصندوق النقدي بنجاح", + "total" => "المجموع", + "transfer_amount_cash" => "حركة الصندوق", + "transfer_amount_cash_minus" => "", + "update" => "تعديل/تحديث الصندوق النقدي", + "warning" => "", ]; diff --git a/app/Language/ar-EG/Common.php b/app/Language/ar-EG/Common.php index 9cdc49455..c434f13cc 100644 --- a/app/Language/ar-EG/Common.php +++ b/app/Language/ar-EG/Common.php @@ -1,88 +1,88 @@ "العنوان 1", - "address_2" => "العنوان 2", - "admin" => "", - "city" => "المدينة", - "clerk" => "", - "close" => "إغلاق", - "color" => "", - "comments" => "تعليقات", - "common" => "عام", - "confirm_search" => "لقد قمت اختيار أكتر من سجل، سوف تفقد هذه الاختيارات عند إرسال البحث، موافق؟", - "copyrights" => "© 2010 - {0}", - "correct_errors" => "يرجى تصحيح الأخطاء المحددة قبل الحفظ", - "country" => "البلد", - "dashboard" => "", - "date" => "التاريخ", - "delete" => "حذف", - "det" => "تفاصيل", - "download_import_template" => "تنزيل قالب الاستيراد من اكسل (CSV)", - "edit" => "تحرير", - "email" => "بريد إلكتروني", - "email_invalid_format" => "شكل البريد الإلكتروني غير صحيح.", - "export_csv" => "تصدير إلى اكسل", - "export_csv_no" => "لا", - "export_csv_yes" => "نعم", - "fields_required_message" => "الحقول التي بالأحمر مطلوبة", - "fields_required_message_unique" => "", - "first_name" => "الاسم الأول", - "first_name_required" => "الاسم الأول مطلوب.", - "first_page" => "الأول", - "gender" => "النوع", - "gender_female" => "أنثى", - "gender_male" => "ذكر", - "gender_undefined" => "", - "icon" => "أيقونة", - "id" => "رقم التعريف", - "import" => "استيراد", - "import_change_file" => "تغيير", - "import_csv" => "استيراد من اكسل", - "import_full_path" => "المسار الكامل لملف اكسل مطلوب", - "import_remove_file" => "إزالة", - "import_select_file" => "اختار ملف", - "inv" => "المخزن", - "last_name" => "الاسم الأخير", - "last_name_required" => "الاسم الأخير مطلوب.", - "last_page" => "الأخيرة", - "learn_about_project" => "للتعرف على أخر المعلومات حول المشروع.", - "list_of" => "قائمة بـ", - "logo" => "شعار", - "logo_mark" => "علامة الشعار", - "logout" => "خروج", - "manager" => "", - "migration_needed" => "سيبدأ ترحيل قاعدة البيانات إلى {0} بعد تسجيل الدخول.", - "new" => "جديد", - "no" => "", - "no_persons_to_display" => "لا يوجد اناس لعرضهم.", - "none_selected_text" => "[إختيار]", - "or" => "أو", - "people" => "", - "phone_number" => "رقم التليفون", - "phone_number_required" => "رقم التليفون مطلوب", - "please_visit_my" => "برجاء زيارة", - "position" => "", - "powered_by" => "مدعوم بواسطة", - "price" => "السعر", - "print" => "طباعة", - "remove" => "إزالة", - "required" => "مطلوب", - "restore" => "الإستعادة", - "return_policy" => "سياسة الاسترجاع", - "search" => "بحث", - "search_options" => "خيارات البحث", - "searched_for" => "بحث عن", - "software_short" => "OSPOS", - "software_title" => "برنامج OSPOS", - "state" => "المحافظة", - "submit" => "حفظ", - "total_spent" => "مجموع الصرف", - "unknown" => "غير معروف", - "view_recent_sales" => "عرض أحدث المبيعات", - "website" => "الموقع الإلكترونى", - "welcome" => "مرحباً", - "welcome_message" => "مرحباً فى OSPOS برجاء إختيار أى قسم للبدء.", - "yes" => "", - "you_are_using_ospos" => "أنت تستخدم إصدار Open Source Point Of Sale", - "zip" => "الرقم البريدى", + "address_1" => "العنوان 1", + "address_2" => "العنوان 2", + "admin" => "", + "city" => "المدينة", + "clerk" => "", + "close" => "إغلاق", + "color" => "", + "comments" => "تعليقات", + "common" => "عام", + "confirm_search" => "لقد قمت اختيار أكتر من سجل، سوف تفقد هذه الاختيارات عند إرسال البحث، موافق؟", + "copyrights" => "© 2010 - {0}", + "correct_errors" => "يرجى تصحيح الأخطاء المحددة قبل الحفظ", + "country" => "البلد", + "dashboard" => "", + "date" => "التاريخ", + "delete" => "حذف", + "det" => "تفاصيل", + "download_import_template" => "تنزيل قالب الاستيراد من اكسل (CSV)", + "edit" => "تحرير", + "email" => "بريد إلكتروني", + "email_invalid_format" => "شكل البريد الإلكتروني غير صحيح.", + "export_csv" => "تصدير إلى اكسل", + "export_csv_no" => "لا", + "export_csv_yes" => "نعم", + "fields_required_message" => "الحقول التي بالأحمر مطلوبة", + "fields_required_message_unique" => "", + "first_name" => "الاسم الأول", + "first_name_required" => "الاسم الأول مطلوب.", + "first_page" => "الأول", + "gender" => "النوع", + "gender_female" => "أنثى", + "gender_male" => "ذكر", + "gender_undefined" => "", + "icon" => "أيقونة", + "id" => "رقم التعريف", + "import" => "استيراد", + "import_change_file" => "تغيير", + "import_csv" => "استيراد من اكسل", + "import_full_path" => "المسار الكامل لملف اكسل مطلوب", + "import_remove_file" => "إزالة", + "import_select_file" => "اختار ملف", + "inv" => "المخزن", + "last_name" => "الاسم الأخير", + "last_name_required" => "الاسم الأخير مطلوب.", + "last_page" => "الأخيرة", + "learn_about_project" => "للتعرف على أخر المعلومات حول المشروع.", + "list_of" => "قائمة بـ", + "logo" => "شعار", + "logo_mark" => "علامة الشعار", + "logout" => "خروج", + "manager" => "", + "migration_needed" => "سيبدأ ترحيل قاعدة البيانات إلى {0} بعد تسجيل الدخول.", + "new" => "جديد", + "no" => "", + "no_persons_to_display" => "لا يوجد اناس لعرضهم.", + "none_selected_text" => "[إختيار]", + "or" => "أو", + "people" => "", + "phone_number" => "رقم التليفون", + "phone_number_required" => "رقم التليفون مطلوب", + "please_visit_my" => "برجاء زيارة", + "position" => "", + "powered_by" => "مدعوم بواسطة", + "price" => "السعر", + "print" => "طباعة", + "remove" => "إزالة", + "required" => "مطلوب", + "restore" => "الإستعادة", + "return_policy" => "سياسة الاسترجاع", + "search" => "بحث", + "search_options" => "خيارات البحث", + "searched_for" => "بحث عن", + "software_short" => "OSPOS", + "software_title" => "برنامج OSPOS", + "state" => "المحافظة", + "submit" => "حفظ", + "total_spent" => "مجموع الصرف", + "unknown" => "غير معروف", + "view_recent_sales" => "عرض أحدث المبيعات", + "website" => "الموقع الإلكترونى", + "welcome" => "مرحباً", + "welcome_message" => "مرحباً فى OSPOS برجاء إختيار أى قسم للبدء.", + "yes" => "", + "you_are_using_ospos" => "أنت تستخدم إصدار Open Source Point Of Sale", + "zip" => "الرقم البريدى", ]; diff --git a/app/Language/ar-EG/Config.php b/app/Language/ar-EG/Config.php index 096f1594a..5f86c4841 100644 --- a/app/Language/ar-EG/Config.php +++ b/app/Language/ar-EG/Config.php @@ -1,330 +1,330 @@ "عنوان الشركة", - "address_required" => "عنوان الشركة مطلوب.", - "all_set" => "صلاحيات الملفات مضبطة بالطريقه الصحيحه!", - "allow_duplicate_barcodes" => "السماح بتشابة الباركود", - "apostrophe" => "الفاصلة", - "backup_button" => "نسخ إحتياطى", - "backup_database" => "نسخ إحتياطى لقاعدة البيانات", - "barcode" => "باركود", - "barcode_company" => "اسم الشركة", - "barcode_configuration" => "اعدادات الباركود", - "barcode_content" => "محتويات الباركود", - "barcode_first_row" => "الصف 1", - "barcode_font" => "الخط", - "barcode_formats" => "اشكال الادخال", - "barcode_generate_if_empty" => "توليد اذا كان الباركود فارغ.", - "barcode_height" => "الارتفاع (px)", - "barcode_id" => "كود/اسم الصنف", - "barcode_info" => "معلومات اعدادات الباركود", - "barcode_layout" => "تخطيط الباركود", - "barcode_name" => "الاسم", - "barcode_number" => "الباركود UPC/EAN/ISBN", - "barcode_number_in_row" => "الرقم فى الصف", - "barcode_page_cellspacing" => "المسافة بين الخلايا فى صفحة العرض.", - "barcode_page_width" => "عرض الصفحة", - "barcode_price" => "السعر", - "barcode_second_row" => "الصف 2", - "barcode_third_row" => "الصف 3", - "barcode_tooltip" => "تحذير: قد تؤدي هذه الميزة إلى استيراد اصناف مكررة أو إنشاؤها. لا تستخدمها إذا كنت لا تريد الباركود مكررة.", - "barcode_type" => "نوعية الباركود", - "barcode_width" => "العرض (px)", - "bottom" => "الأسفل", - "cash_button" => "", - "cash_button_1" => "", - "cash_button_2" => "", - "cash_button_3" => "", - "cash_button_4" => "", - "cash_button_5" => "", - "cash_button_6" => "", - "cash_decimals" => "فواصل النقدية", - "cash_decimals_tooltip" => "إذا كانت الكسور العشرية النقدية وعشرية العملات هي نفسها ثم لن يتم تقريب النقدية.", - "cash_rounding" => "التقريب النقدي", - "category_dropdown" => "إظهار الفئة كقائمة منسدلة", - "center" => "الوسط", - "change_apperance_tooltip" => "", - "comma" => "فاصلة", - "company" => "اسم الشركة", - "company_avatar" => "", - "company_change_image" => "تغيير الصورة", - "company_logo" => "شعار الشركة", - "company_remove_image" => "إزالة الصورة", - "company_required" => "اسم الشركة مطلوب", - "company_select_image" => "اختار صورة", - "company_website_url" => "الموقع الإلكترونى للشركة غير صحيح.", - "country_codes" => "أكواد الدولة", - "country_codes_tooltip" => "قائمة مفصولة بفاصلة لاسماء الدول للبحث.", - "currency_code" => "رمز العملة", - "currency_decimals" => "العلامة العشرية للعملة", - "currency_symbol" => "رمز العملة", - "current_employee_only" => "", - "customer_reward" => "المكافآت", - "customer_reward_duplicate" => "المكافئة يجب ان تكون فريدة.", - "customer_reward_enable" => "تمكين مكافآت العميل", - "customer_reward_invalid_chars" => "لا يمكن أن تحتوي المكافأة على '_'", - "customer_reward_required" => "المكافأة هي حقل مطلوب", - "customer_sales_tax_support" => "دعم الضرائب المبيعات العملاء", - "date_or_time_format" => "تصفية التاريخ والوقت", - "datetimeformat" => "شكل الوقت و التاريخ", - "decimal_point" => "العلامة العشرية", - "default_barcode_font_size_number" => "الحجم الافتراضي لخط الباركود لابد أن يكون رقم.", - "default_barcode_font_size_required" => "الحجم الافتراضي لخط الباركود مطلوب.", - "default_barcode_height_number" => "الارتفاع الافتراضي للباركود لابد ان يكون رقم.", - "default_barcode_height_required" => "الارتفاع الافتراضي للباركود مطلوب.", - "default_barcode_num_in_row_number" => "رقم الباركود فى اى سطر لابد ان يكون رقم.", - "default_barcode_num_in_row_required" => "رقم الباركود فى اى سطر مطلوب.", - "default_barcode_page_cellspacing_number" => "المسافة الافتراضية بين خلايا الباركود لابد أن تكون رقم.", - "default_barcode_page_cellspacing_required" => "المسافة الافتراضية بين خلايا الباركود مطلوبة.", - "default_barcode_page_width_number" => "عرض الصفحة الافتراضي للباركود لابد ان يكون رقم.", - "default_barcode_page_width_required" => "عرض الصفحة الافتراضي للباركود مطلوب.", - "default_barcode_width_number" => "العرض الافتراضي للباركود لابد ان يكون رقم.", - "default_barcode_width_required" => "العرض الافتراضي للباركود مطلوب.", - "default_item_columns" => "الخانات المراد إظهارها", - "default_origin_tax_code" => "كود الضريبة الاساسي الافتراضي", - "default_receivings_discount" => "خصم الإيصالات الافتراضي", - "default_receivings_discount_number" => "خصم الإيصالات الافتراضي يجب ان يكون رقم.", - "default_receivings_discount_required" => "خصم الإيصالات الافتراضي هي خانة اجبارية.", - "default_sales_discount" => "نسبة الخصم الافتراضية", - "default_sales_discount_number" => "نسبة الخصم الافتراضية لابد ان تكون رقم.", - "default_sales_discount_required" => "نسبة الخصم الافتراضية مطلوبة.", - "default_tax_category" => "فئة الضرائب الافتراضية", - "default_tax_code" => "قانون الضرائب الافتراضي", - "default_tax_jurisdiction" => "الاختصاص الضريبي الافتراضي", - "default_tax_name_number" => "يجب أن يكون الاسم الافتراضي للضريبة سلسلة.", - "default_tax_name_required" => "اسم الضريبة الافتراضية مطلوب.", - "default_tax_rate" => "معدل الضريبة الافتراضي %", - "default_tax_rate_1" => "معدل الضريبة 1", - "default_tax_rate_2" => "معدل الضريبة 2", - "default_tax_rate_3" => "", - "default_tax_rate_number" => "معدل الضريبة الافتراضي يجب أن يكون رقم.", - "default_tax_rate_required" => "معدل الضريبة الافتراضي مطلوب.", - "derive_sale_quantity" => "السماح بأسعار البيع المشتقة", - "derive_sale_quantity_tooltip" => "إذا تم تحديدها، فسيتم توفير نوع جديد من الاصناف للاصناف المطلوبة حسب المبلغ الموسع", - "dinner_table" => "طاولة", - "dinner_table_duplicate" => "الطاولة يجب ان تكون فريدة.", - "dinner_table_enable" => "تمكين جداول الطاولات", - "dinner_table_invalid_chars" => "لا يمكن أن يحتوي اسم الطاولة على '_'.", - "dinner_table_required" => "الطاولة هو حقل مطلوب.", - "dot" => "نقطة", - "email" => "البريد الإلكتروني", - "email_configuration" => "إعدادات البريد الإلكتروني", - "email_mailpath" => "مسار ارسال البريد", - "email_protocol" => "بروتوكول", - "email_receipt_check_behaviour" => "ارسال رسائل الكترونية", - "email_receipt_check_behaviour_always" => "مختار دائما", - "email_receipt_check_behaviour_last" => "تذكر آخر إختيار", - "email_receipt_check_behaviour_never" => "دائما غير مختار", - "email_smtp_crypto" => "تشفير SMTP", - "email_smtp_host" => "خادم SMTP", - "email_smtp_pass" => "كلمة سر SMTP", - "email_smtp_port" => "رقم منفذ SMTP", - "email_smtp_timeout" => "وقت فشل المحاولة (ثوانى) لـ SMTP", - "email_smtp_user" => "اسم مستخدم SMTP", - "enable_avatar" => "", - "enable_avatar_tooltip" => "", - "enable_dropdown_tooltip" => "", - "enable_new_look" => "", - "enable_right_bar" => "", - "enable_right_bar_tooltip" => "", - "enforce_privacy" => "فرض نظام الخصوصية", - "enforce_privacy_tooltip" => "حماية ملفات ومعلومات المستخدم عند الحذف", - "fax" => "الفاكس", - "file_perm" => "يوجد خطأ في ضبط اعدادات وصلاحيات الملفات نرجوا إعادة الضبط.", - "financial_year" => "بداية السنة المالية", - "financial_year_apr" => "1 أبريل", - "financial_year_aug" => "1 أغسطس", - "financial_year_dec" => "1 ديسمبر", - "financial_year_feb" => "1 فبراير", - "financial_year_jan" => "1 يناير", - "financial_year_jul" => "1 يوليو", - "financial_year_jun" => "1 يونيو", - "financial_year_mar" => "1 مارس", - "financial_year_may" => "1 مايو", - "financial_year_nov" => "1 نوفمبر", - "financial_year_oct" => "1 أكتوبر", - "financial_year_sep" => "1 سبتمبر", - "floating_labels" => "تسميات عائمة", - "gcaptcha_enable" => "صفحة تسجيل الدخول ريكابتشا", - "gcaptcha_secret_key" => "مفتاح السرية ريكابتشا", - "gcaptcha_secret_key_required" => "مفتاح السرية ريكابتشا هو حقل مطلوب", - "gcaptcha_site_key" => "ريكابتشا مفتاح الموقع", - "gcaptcha_site_key_required" => "ريكابتشا مفتاح الموقع هو حقل مطلوب", - "gcaptcha_tooltip" => "احرص على حماية صفحة تسجيل الدخول باستخدام ريكابتشا من غوغل.", - "general" => "عام", - "general_configuration" => "إعدادات عامة", - "giftcard_number" => "رقم كارت الهدية", - "giftcard_random" => "توليد عشوائي", - "giftcard_series" => "توليد في السلسلة", - "image_allowed_file_types" => "أنواع الملفات المسموح بها", - "image_max_height_tooltip" => "أقصى ارتفاع مسموح به لتحميلات الصور بالبكسل (بكسل).", - "image_max_size_tooltip" => "أقصى حجم مسموح به للملف لتحميل الصور (بالكيلو بايت).", - "image_max_width_tooltip" => "أقصى عرض مسموح به لتحميلات الصور بالبكسل (بكسل).", - "image_restrictions" => "قيود تحميل الصور", - "include_hsn" => "تشمل الدعم لرمز نظام منسق", - "info" => "معلومات", - "info_configuration" => "معلومات الشركة", - "input_groups" => "مجموعات الإدخال", - "integrations" => "التكامل", - "integrations_configuration" => "تكامل", - "invoice" => "الفاتورة", - "invoice_configuration" => "إعدادات طباعة الفاتورة", - "invoice_default_comments" => "التعليق الافتراضي على الفاتورة", - "invoice_email_message" => "قالب البريد الإلكتروني للفاتورة", - "invoice_enable" => "تفعيل الفوترة", - "invoice_printer" => "طابعة الفواتير", - "invoice_type" => "نوع الفاتورة", - "is_readable" => "يمكن قراءته ، ولكن تم تعيين الأذونات بشكل غير صحيح. يرجى ضبطه على 640 أو 660 والتحديث.", - "is_writable" => "ممكن التعديل عليه، لكن الصلاحيات هي اكثر من 750. نرجوا الضبط الى 750.", - "item_markup" => "", - "jsprintsetup_required" => "تحذير! هذه الخاصية غير المفعلة سوف تعمل فقط مع وجود الاضافة jsPrintSetup على متصفح فايرفوكس. حفظ على أى حال؟", - "language" => "اللغة", - "last_used_invoice_number" => "اخر رقم مستخدم للفاتورة", - "last_used_quote_number" => "اخر رقم مستخدم لعرض الاسعار", - "last_used_work_order_number" => "آخر رقم مستخدم في طلبات العمل", - "left" => "يسار", - "license" => "الرخصة", - "license_configuration" => "نص الرخصة", - "line_sequence" => "تسلسل خطي", - "lines_per_page" => "عدد السطور فى الصفحة", - "lines_per_page_number" => "عدد السطور فى الصفحة يجب أن يكون رقم.", - "lines_per_page_required" => "عدد السطور فى الصفحة مطلوب.", - "locale" => "إقليمية", - "locale_configuration" => "الإعدادات الإقليمية", - "locale_info" => "معلومات التهيئة الإقليمية", - "location" => "المخزون", - "location_configuration" => "أماكن المخزون", - "location_info" => "معلومات تهيئة الأماكن", - "login_form" => "نمط نموذج تسجيل الدخول", - "logout" => "هل تريد عمل نسخة إحتياطية قبل الخروج؟ اضغط [نعم] لعمل النسخة أو [الغاء] للخروج.", - "mailchimp" => "ميل تشامب", - "mailchimp_api_key" => "مفتاح ميل شيمب", - "mailchimp_configuration" => "إعدادات ميل شيمب", - "mailchimp_key_successfully" => "نجاح.", - "mailchimp_key_unsuccessfully" => "فشل.", - "mailchimp_lists" => "إعدادات ميل شيمب", - "mailchimp_tooltip" => "انقر على رمز مفتاح API.", - "message" => "الرسائل", - "message_configuration" => "إعدادات الرسائل", - "msg_msg" => "الرسائل النصية المحفوظة", - "msg_msg_placeholder" => "إذا أردت إستخدام قالب للرسائل القصيرة احفظه هنا. عدا ذلك أترك هذا الحقل فارغ.", - "msg_pwd" => "SMS-API كلمة السر لـ", - "msg_pwd_required" => "مطلوب SMS-API كلمة السر لـ", - "msg_src" => "SMS-API كود المرسل لـ", - "msg_src_required" => "مطلوب SMS-API كود المرسل لـ", - "msg_uid" => "SMS-API اسم المستخدم لـ", - "msg_uid_required" => "مطلوب SMS-API اسم المستخدم لـ", - "multi_pack_enabled" => "رزم متعددة لكل صنف", - "no_risk" => "لا يوجد اي مشاكل في صلاحيات الملفات.", - "none" => "لايوجد", - "notify_alignment" => "مكان عرض رسائل المعلومات", - "number_format" => "شكل الرقم", - "number_locale" => "التهيئة الاقليمية", - "number_locale_invalid" => "التهيئة الإقليمية المختارة غير صحية، راجع الرابط الموجود فى الملاحظة لاختيار تهيئة مناسبة.", - "number_locale_required" => "رقم التهيئة الإقليمية مطلوب.", - "number_locale_tooltip" => "إيجاد تهيئة إقليمية مناسبة عبر الرابط.", - "os_timezone" => "المنطقة الزمنية OSPOS:", - "ospos_info" => "معلومات التثبيت OSPOS", - "payment_options_order" => "ترتيب خيارات الدفع", - "perm_risk" => "صلاحيات الملفات ممكن ان تشكل خطر في حال كانت غير صحيحة.", - "phone" => "هاتف الشركة", - "phone_required" => "هاتف الشركة مطلوب.", - "print_bottom_margin" => "الهامش السفلي", - "print_bottom_margin_number" => "الهامش السفلي يجب أن يكون رقم.", - "print_bottom_margin_required" => "الهامش السفلي مطلوب.", - "print_delay_autoreturn" => "العودة الى عمليات البيع تلقائيا ( عدد الثواني )", - "print_delay_autoreturn_number" => "الزمن المحدد للعودة الى عمليات البيع هو خانة اجبارية.", - "print_delay_autoreturn_required" => "الزمن المحدد للعودة الى عمليات البيع يجب ان يكون رقم.", - "print_footer" => "طباعة تذييل المتصفح", - "print_header" => "طباعة ترويسة المتصفح", - "print_left_margin" => "الهامش الأيسر", - "print_left_margin_number" => "الهامش الأيسر يجب ان يكون رقم.", - "print_left_margin_required" => "الهامش الأيسر مطلوب.", - "print_receipt_check_behaviour" => "خانة طباعة الفواتير", - "print_receipt_check_behaviour_always" => "دائما مختار", - "print_receipt_check_behaviour_last" => "تذكر آخر اختيار", - "print_receipt_check_behaviour_never" => "دائما ليس مختار", - "print_right_margin" => "الهامش الأيمن", - "print_right_margin_number" => "الهامش الأيمن يجب أن يكون رقم.", - "print_right_margin_required" => "الهامش الأيمن مطلوب.", - "print_silently" => "عرض صندوق حوار طباعة", - "print_top_margin" => "الهامش العلوى", - "print_top_margin_number" => "الهامش العلوى يجب أن يكون رقم.", - "print_top_margin_required" => "الهامش العلوى مطلوب.", - "quantity_decimals" => "العلامة العشرية للكمية", - "quick_cash_enable" => "", - "quote_default_comments" => "ملاحظات طلبات العمل الثابتة", - "receipt" => "الإيصال", - "receipt_category" => "", - "receipt_configuration" => "إعدادات طباعة الايصالات", - "receipt_default" => "افتراضى", - "receipt_font_size" => "الخط", - "receipt_font_size_number" => "رقم الخط يجب ان يكون رقم.", - "receipt_font_size_required" => "رقم الخط مطلوب.", - "receipt_info" => "معلومات تهيئة الإيصالات", - "receipt_printer" => "طابعة تذاكر", - "receipt_short" => "مختصر", - "receipt_show_company_name" => "عرض اسم الشركة", - "receipt_show_description" => "عرض الوصف", - "receipt_show_serialnumber" => "عرض الرقم المسلسل", - "receipt_show_tax_ind" => "عرض مؤشر الضريبة", - "receipt_show_taxes" => "عرض الضرائب", - "receipt_show_total_discount" => "عرض إجمالى الخصم", - "receipt_template" => "قالب الايصال", - "receiving_calculate_average_price" => "حساب متوسط سعر الأصناف المستلمة", - "recv_invoice_format" => "شكل فاتورة الإستلام", - "register_mode_default" => "نمط التسجيل الافتراضي", - "report_an_issue" => "بلغ عن خطأ", - "return_policy_required" => "سياسة الإسترجاع مطلوب.", - "reward" => "المكافاة", - "reward_configuration" => "اعدادات المكافاة", - "right" => "يمين", - "sales_invoice_format" => "شكل فاتورة البيع", - "sales_quote_format" => "شكل فاتورة عرض الاسعار", - "saved_successfully" => "تم حفظ التهيئة بنجاح.", - "saved_unsuccessfully" => "لم يتم حفظ التهيئة بنجاح.", - "security_issue" => "تحذير من ثغرة أمنية", - "server_notice" => "يرجى استخدام المعلومات أدناه للإبلاغ عن المشكلة.", - "service_charge" => "", - "show_due_enable" => "", - "show_office_group" => "اظهار ايكونة المكتب", - "statistics" => "إرسال اﻹحصائيات", - "statistics_tooltip" => "إرسال اﻹحصائيات ﻷغراض التطوير و التحسين.", - "stock_location" => "مكان المخزون", - "stock_location_duplicate" => "من فضلك إستخدم اسم مكان غير مكرر.", - "stock_location_invalid_chars" => "مكان المخزون لايمكن أن يحتوى على '_'.", - "stock_location_required" => "مكان المخزون مطلوب.", - "suggestions_fifth_column" => "", - "suggestions_first_column" => "العامود 1", - "suggestions_fourth_column" => "", - "suggestions_layout" => "تخطيط اقتراحات البحث", - "suggestions_second_column" => "العامود 2", - "suggestions_third_column" => "العامود 3", - "system_conf" => "اعدادات اخرى", - "system_info" => "System Info", - "table" => "جدول", - "table_configuration" => "اعدادات الجدول", - "takings_printer" => "طابعة الإيراد", - "tax" => "الضريبة", - "tax_category" => "تصنيف الضريبة", - "tax_category_duplicate" => "الفئة الضريبية اللتي تم ادخالها موجودة.", - "tax_category_invalid_chars" => "الفئة الضريبية اللتي تم ادخالها غير صحيحة.", - "tax_category_required" => "الفئة الضريبية مطلوبة.", - "tax_category_used" => "الفئة الضريبية اللتي تم تحديدها لا يمكن حذفها لانها قيد الاستعمال.", - "tax_configuration" => "إعدادات الضريبة", - "tax_decimals" => "العلامة العشرية للضريبة", - "tax_id" => "الرقم الضريبي", - "tax_included" => "شامل الضريبة", - "theme" => "السمة", - "theme_preview" => "معاينة المظهر:", - "thousands_separator" => "فاصل الاف", - "timezone" => "المنطقة الزمنية", - "timezone_error" => "تختلف منطقة OSPOS الزمنية عن منطقتك الزمنية المحلية.", - "top" => "علوى", - "use_destination_based_tax" => "استخدام الضريبة المستندة على الوجهة", - "user_timezone" => "المنطقة الزمنية المحلية:", - "website" => "موقع الشركة", - "wholesale_markup" => "", - "work_order_enable" => "تفعيل طلبات العمل", - "work_order_format" => "شكل طلبات العمل", + "address" => "عنوان الشركة", + "address_required" => "عنوان الشركة مطلوب.", + "all_set" => "صلاحيات الملفات مضبطة بالطريقه الصحيحه!", + "allow_duplicate_barcodes" => "السماح بتشابة الباركود", + "apostrophe" => "الفاصلة", + "backup_button" => "نسخ إحتياطى", + "backup_database" => "نسخ إحتياطى لقاعدة البيانات", + "barcode" => "باركود", + "barcode_company" => "اسم الشركة", + "barcode_configuration" => "اعدادات الباركود", + "barcode_content" => "محتويات الباركود", + "barcode_first_row" => "الصف 1", + "barcode_font" => "الخط", + "barcode_formats" => "اشكال الادخال", + "barcode_generate_if_empty" => "توليد اذا كان الباركود فارغ.", + "barcode_height" => "الارتفاع (px)", + "barcode_id" => "كود/اسم الصنف", + "barcode_info" => "معلومات اعدادات الباركود", + "barcode_layout" => "تخطيط الباركود", + "barcode_name" => "الاسم", + "barcode_number" => "الباركود UPC/EAN/ISBN", + "barcode_number_in_row" => "الرقم فى الصف", + "barcode_page_cellspacing" => "المسافة بين الخلايا فى صفحة العرض.", + "barcode_page_width" => "عرض الصفحة", + "barcode_price" => "السعر", + "barcode_second_row" => "الصف 2", + "barcode_third_row" => "الصف 3", + "barcode_tooltip" => "تحذير: قد تؤدي هذه الميزة إلى استيراد اصناف مكررة أو إنشاؤها. لا تستخدمها إذا كنت لا تريد الباركود مكررة.", + "barcode_type" => "نوعية الباركود", + "barcode_width" => "العرض (px)", + "bottom" => "الأسفل", + "cash_button" => "", + "cash_button_1" => "", + "cash_button_2" => "", + "cash_button_3" => "", + "cash_button_4" => "", + "cash_button_5" => "", + "cash_button_6" => "", + "cash_decimals" => "فواصل النقدية", + "cash_decimals_tooltip" => "إذا كانت الكسور العشرية النقدية وعشرية العملات هي نفسها ثم لن يتم تقريب النقدية.", + "cash_rounding" => "التقريب النقدي", + "category_dropdown" => "إظهار الفئة كقائمة منسدلة", + "center" => "الوسط", + "change_apperance_tooltip" => "", + "comma" => "فاصلة", + "company" => "اسم الشركة", + "company_avatar" => "", + "company_change_image" => "تغيير الصورة", + "company_logo" => "شعار الشركة", + "company_remove_image" => "إزالة الصورة", + "company_required" => "اسم الشركة مطلوب", + "company_select_image" => "اختار صورة", + "company_website_url" => "الموقع الإلكترونى للشركة غير صحيح.", + "country_codes" => "أكواد الدولة", + "country_codes_tooltip" => "قائمة مفصولة بفاصلة لاسماء الدول للبحث.", + "currency_code" => "رمز العملة", + "currency_decimals" => "العلامة العشرية للعملة", + "currency_symbol" => "رمز العملة", + "current_employee_only" => "", + "customer_reward" => "المكافآت", + "customer_reward_duplicate" => "المكافئة يجب ان تكون فريدة.", + "customer_reward_enable" => "تمكين مكافآت العميل", + "customer_reward_invalid_chars" => "لا يمكن أن تحتوي المكافأة على '_'", + "customer_reward_required" => "المكافأة هي حقل مطلوب", + "customer_sales_tax_support" => "دعم الضرائب المبيعات العملاء", + "date_or_time_format" => "تصفية التاريخ والوقت", + "datetimeformat" => "شكل الوقت و التاريخ", + "decimal_point" => "العلامة العشرية", + "default_barcode_font_size_number" => "الحجم الافتراضي لخط الباركود لابد أن يكون رقم.", + "default_barcode_font_size_required" => "الحجم الافتراضي لخط الباركود مطلوب.", + "default_barcode_height_number" => "الارتفاع الافتراضي للباركود لابد ان يكون رقم.", + "default_barcode_height_required" => "الارتفاع الافتراضي للباركود مطلوب.", + "default_barcode_num_in_row_number" => "رقم الباركود فى اى سطر لابد ان يكون رقم.", + "default_barcode_num_in_row_required" => "رقم الباركود فى اى سطر مطلوب.", + "default_barcode_page_cellspacing_number" => "المسافة الافتراضية بين خلايا الباركود لابد أن تكون رقم.", + "default_barcode_page_cellspacing_required" => "المسافة الافتراضية بين خلايا الباركود مطلوبة.", + "default_barcode_page_width_number" => "عرض الصفحة الافتراضي للباركود لابد ان يكون رقم.", + "default_barcode_page_width_required" => "عرض الصفحة الافتراضي للباركود مطلوب.", + "default_barcode_width_number" => "العرض الافتراضي للباركود لابد ان يكون رقم.", + "default_barcode_width_required" => "العرض الافتراضي للباركود مطلوب.", + "default_item_columns" => "الخانات المراد إظهارها", + "default_origin_tax_code" => "كود الضريبة الاساسي الافتراضي", + "default_receivings_discount" => "خصم الإيصالات الافتراضي", + "default_receivings_discount_number" => "خصم الإيصالات الافتراضي يجب ان يكون رقم.", + "default_receivings_discount_required" => "خصم الإيصالات الافتراضي هي خانة اجبارية.", + "default_sales_discount" => "نسبة الخصم الافتراضية", + "default_sales_discount_number" => "نسبة الخصم الافتراضية لابد ان تكون رقم.", + "default_sales_discount_required" => "نسبة الخصم الافتراضية مطلوبة.", + "default_tax_category" => "فئة الضرائب الافتراضية", + "default_tax_code" => "قانون الضرائب الافتراضي", + "default_tax_jurisdiction" => "الاختصاص الضريبي الافتراضي", + "default_tax_name_number" => "يجب أن يكون الاسم الافتراضي للضريبة سلسلة.", + "default_tax_name_required" => "اسم الضريبة الافتراضية مطلوب.", + "default_tax_rate" => "معدل الضريبة الافتراضي %", + "default_tax_rate_1" => "معدل الضريبة 1", + "default_tax_rate_2" => "معدل الضريبة 2", + "default_tax_rate_3" => "", + "default_tax_rate_number" => "معدل الضريبة الافتراضي يجب أن يكون رقم.", + "default_tax_rate_required" => "معدل الضريبة الافتراضي مطلوب.", + "derive_sale_quantity" => "السماح بأسعار البيع المشتقة", + "derive_sale_quantity_tooltip" => "إذا تم تحديدها، فسيتم توفير نوع جديد من الاصناف للاصناف المطلوبة حسب المبلغ الموسع", + "dinner_table" => "طاولة", + "dinner_table_duplicate" => "الطاولة يجب ان تكون فريدة.", + "dinner_table_enable" => "تمكين جداول الطاولات", + "dinner_table_invalid_chars" => "لا يمكن أن يحتوي اسم الطاولة على '_'.", + "dinner_table_required" => "الطاولة هو حقل مطلوب.", + "dot" => "نقطة", + "email" => "البريد الإلكتروني", + "email_configuration" => "إعدادات البريد الإلكتروني", + "email_mailpath" => "مسار ارسال البريد", + "email_protocol" => "بروتوكول", + "email_receipt_check_behaviour" => "ارسال رسائل الكترونية", + "email_receipt_check_behaviour_always" => "مختار دائما", + "email_receipt_check_behaviour_last" => "تذكر آخر إختيار", + "email_receipt_check_behaviour_never" => "دائما غير مختار", + "email_smtp_crypto" => "تشفير SMTP", + "email_smtp_host" => "خادم SMTP", + "email_smtp_pass" => "كلمة سر SMTP", + "email_smtp_port" => "رقم منفذ SMTP", + "email_smtp_timeout" => "وقت فشل المحاولة (ثوانى) لـ SMTP", + "email_smtp_user" => "اسم مستخدم SMTP", + "enable_avatar" => "", + "enable_avatar_tooltip" => "", + "enable_dropdown_tooltip" => "", + "enable_new_look" => "", + "enable_right_bar" => "", + "enable_right_bar_tooltip" => "", + "enforce_privacy" => "فرض نظام الخصوصية", + "enforce_privacy_tooltip" => "حماية ملفات ومعلومات المستخدم عند الحذف", + "fax" => "الفاكس", + "file_perm" => "يوجد خطأ في ضبط اعدادات وصلاحيات الملفات نرجوا إعادة الضبط.", + "financial_year" => "بداية السنة المالية", + "financial_year_apr" => "1 أبريل", + "financial_year_aug" => "1 أغسطس", + "financial_year_dec" => "1 ديسمبر", + "financial_year_feb" => "1 فبراير", + "financial_year_jan" => "1 يناير", + "financial_year_jul" => "1 يوليو", + "financial_year_jun" => "1 يونيو", + "financial_year_mar" => "1 مارس", + "financial_year_may" => "1 مايو", + "financial_year_nov" => "1 نوفمبر", + "financial_year_oct" => "1 أكتوبر", + "financial_year_sep" => "1 سبتمبر", + "floating_labels" => "تسميات عائمة", + "gcaptcha_enable" => "صفحة تسجيل الدخول ريكابتشا", + "gcaptcha_secret_key" => "مفتاح السرية ريكابتشا", + "gcaptcha_secret_key_required" => "مفتاح السرية ريكابتشا هو حقل مطلوب", + "gcaptcha_site_key" => "ريكابتشا مفتاح الموقع", + "gcaptcha_site_key_required" => "ريكابتشا مفتاح الموقع هو حقل مطلوب", + "gcaptcha_tooltip" => "احرص على حماية صفحة تسجيل الدخول باستخدام ريكابتشا من غوغل.", + "general" => "عام", + "general_configuration" => "إعدادات عامة", + "giftcard_number" => "رقم كارت الهدية", + "giftcard_random" => "توليد عشوائي", + "giftcard_series" => "توليد في السلسلة", + "image_allowed_file_types" => "أنواع الملفات المسموح بها", + "image_max_height_tooltip" => "أقصى ارتفاع مسموح به لتحميلات الصور بالبكسل (بكسل).", + "image_max_size_tooltip" => "أقصى حجم مسموح به للملف لتحميل الصور (بالكيلو بايت).", + "image_max_width_tooltip" => "أقصى عرض مسموح به لتحميلات الصور بالبكسل (بكسل).", + "image_restrictions" => "قيود تحميل الصور", + "include_hsn" => "تشمل الدعم لرمز نظام منسق", + "info" => "معلومات", + "info_configuration" => "معلومات الشركة", + "input_groups" => "مجموعات الإدخال", + "integrations" => "التكامل", + "integrations_configuration" => "تكامل", + "invoice" => "الفاتورة", + "invoice_configuration" => "إعدادات طباعة الفاتورة", + "invoice_default_comments" => "التعليق الافتراضي على الفاتورة", + "invoice_email_message" => "قالب البريد الإلكتروني للفاتورة", + "invoice_enable" => "تفعيل الفوترة", + "invoice_printer" => "طابعة الفواتير", + "invoice_type" => "نوع الفاتورة", + "is_readable" => "يمكن قراءته ، ولكن تم تعيين الأذونات بشكل غير صحيح. يرجى ضبطه على 640 أو 660 والتحديث.", + "is_writable" => "ممكن التعديل عليه، لكن الصلاحيات هي اكثر من 750. نرجوا الضبط الى 750.", + "item_markup" => "", + "jsprintsetup_required" => "تحذير! هذه الخاصية غير المفعلة سوف تعمل فقط مع وجود الاضافة jsPrintSetup على متصفح فايرفوكس. حفظ على أى حال؟", + "language" => "اللغة", + "last_used_invoice_number" => "اخر رقم مستخدم للفاتورة", + "last_used_quote_number" => "اخر رقم مستخدم لعرض الاسعار", + "last_used_work_order_number" => "آخر رقم مستخدم في طلبات العمل", + "left" => "يسار", + "license" => "الرخصة", + "license_configuration" => "نص الرخصة", + "line_sequence" => "تسلسل خطي", + "lines_per_page" => "عدد السطور فى الصفحة", + "lines_per_page_number" => "عدد السطور فى الصفحة يجب أن يكون رقم.", + "lines_per_page_required" => "عدد السطور فى الصفحة مطلوب.", + "locale" => "إقليمية", + "locale_configuration" => "الإعدادات الإقليمية", + "locale_info" => "معلومات التهيئة الإقليمية", + "location" => "المخزون", + "location_configuration" => "أماكن المخزون", + "location_info" => "معلومات تهيئة الأماكن", + "login_form" => "نمط نموذج تسجيل الدخول", + "logout" => "هل تريد عمل نسخة إحتياطية قبل الخروج؟ اضغط [نعم] لعمل النسخة أو [الغاء] للخروج.", + "mailchimp" => "ميل تشامب", + "mailchimp_api_key" => "مفتاح ميل شيمب", + "mailchimp_configuration" => "إعدادات ميل شيمب", + "mailchimp_key_successfully" => "نجاح.", + "mailchimp_key_unsuccessfully" => "فشل.", + "mailchimp_lists" => "إعدادات ميل شيمب", + "mailchimp_tooltip" => "انقر على رمز مفتاح API.", + "message" => "الرسائل", + "message_configuration" => "إعدادات الرسائل", + "msg_msg" => "الرسائل النصية المحفوظة", + "msg_msg_placeholder" => "إذا أردت إستخدام قالب للرسائل القصيرة احفظه هنا. عدا ذلك أترك هذا الحقل فارغ.", + "msg_pwd" => "SMS-API كلمة السر لـ", + "msg_pwd_required" => "مطلوب SMS-API كلمة السر لـ", + "msg_src" => "SMS-API كود المرسل لـ", + "msg_src_required" => "مطلوب SMS-API كود المرسل لـ", + "msg_uid" => "SMS-API اسم المستخدم لـ", + "msg_uid_required" => "مطلوب SMS-API اسم المستخدم لـ", + "multi_pack_enabled" => "رزم متعددة لكل صنف", + "no_risk" => "لا يوجد اي مشاكل في صلاحيات الملفات.", + "none" => "لايوجد", + "notify_alignment" => "مكان عرض رسائل المعلومات", + "number_format" => "شكل الرقم", + "number_locale" => "التهيئة الاقليمية", + "number_locale_invalid" => "التهيئة الإقليمية المختارة غير صحية، راجع الرابط الموجود فى الملاحظة لاختيار تهيئة مناسبة.", + "number_locale_required" => "رقم التهيئة الإقليمية مطلوب.", + "number_locale_tooltip" => "إيجاد تهيئة إقليمية مناسبة عبر الرابط.", + "os_timezone" => "المنطقة الزمنية OSPOS:", + "ospos_info" => "معلومات التثبيت OSPOS", + "payment_options_order" => "ترتيب خيارات الدفع", + "perm_risk" => "صلاحيات الملفات ممكن ان تشكل خطر في حال كانت غير صحيحة.", + "phone" => "هاتف الشركة", + "phone_required" => "هاتف الشركة مطلوب.", + "print_bottom_margin" => "الهامش السفلي", + "print_bottom_margin_number" => "الهامش السفلي يجب أن يكون رقم.", + "print_bottom_margin_required" => "الهامش السفلي مطلوب.", + "print_delay_autoreturn" => "العودة الى عمليات البيع تلقائيا ( عدد الثواني )", + "print_delay_autoreturn_number" => "الزمن المحدد للعودة الى عمليات البيع هو خانة اجبارية.", + "print_delay_autoreturn_required" => "الزمن المحدد للعودة الى عمليات البيع يجب ان يكون رقم.", + "print_footer" => "طباعة تذييل المتصفح", + "print_header" => "طباعة ترويسة المتصفح", + "print_left_margin" => "الهامش الأيسر", + "print_left_margin_number" => "الهامش الأيسر يجب ان يكون رقم.", + "print_left_margin_required" => "الهامش الأيسر مطلوب.", + "print_receipt_check_behaviour" => "خانة طباعة الفواتير", + "print_receipt_check_behaviour_always" => "دائما مختار", + "print_receipt_check_behaviour_last" => "تذكر آخر اختيار", + "print_receipt_check_behaviour_never" => "دائما ليس مختار", + "print_right_margin" => "الهامش الأيمن", + "print_right_margin_number" => "الهامش الأيمن يجب أن يكون رقم.", + "print_right_margin_required" => "الهامش الأيمن مطلوب.", + "print_silently" => "عرض صندوق حوار طباعة", + "print_top_margin" => "الهامش العلوى", + "print_top_margin_number" => "الهامش العلوى يجب أن يكون رقم.", + "print_top_margin_required" => "الهامش العلوى مطلوب.", + "quantity_decimals" => "العلامة العشرية للكمية", + "quick_cash_enable" => "", + "quote_default_comments" => "ملاحظات طلبات العمل الثابتة", + "receipt" => "الإيصال", + "receipt_category" => "", + "receipt_configuration" => "إعدادات طباعة الايصالات", + "receipt_default" => "افتراضى", + "receipt_font_size" => "الخط", + "receipt_font_size_number" => "رقم الخط يجب ان يكون رقم.", + "receipt_font_size_required" => "رقم الخط مطلوب.", + "receipt_info" => "معلومات تهيئة الإيصالات", + "receipt_printer" => "طابعة تذاكر", + "receipt_short" => "مختصر", + "receipt_show_company_name" => "عرض اسم الشركة", + "receipt_show_description" => "عرض الوصف", + "receipt_show_serialnumber" => "عرض الرقم المسلسل", + "receipt_show_tax_ind" => "عرض مؤشر الضريبة", + "receipt_show_taxes" => "عرض الضرائب", + "receipt_show_total_discount" => "عرض إجمالى الخصم", + "receipt_template" => "قالب الايصال", + "receiving_calculate_average_price" => "حساب متوسط سعر الأصناف المستلمة", + "recv_invoice_format" => "شكل فاتورة الإستلام", + "register_mode_default" => "نمط التسجيل الافتراضي", + "report_an_issue" => "بلغ عن خطأ", + "return_policy_required" => "سياسة الإسترجاع مطلوب.", + "reward" => "المكافاة", + "reward_configuration" => "اعدادات المكافاة", + "right" => "يمين", + "sales_invoice_format" => "شكل فاتورة البيع", + "sales_quote_format" => "شكل فاتورة عرض الاسعار", + "saved_successfully" => "تم حفظ التهيئة بنجاح.", + "saved_unsuccessfully" => "لم يتم حفظ التهيئة بنجاح.", + "security_issue" => "تحذير من ثغرة أمنية", + "server_notice" => "يرجى استخدام المعلومات أدناه للإبلاغ عن المشكلة.", + "service_charge" => "", + "show_due_enable" => "", + "show_office_group" => "اظهار ايكونة المكتب", + "statistics" => "إرسال اﻹحصائيات", + "statistics_tooltip" => "إرسال اﻹحصائيات ﻷغراض التطوير و التحسين.", + "stock_location" => "مكان المخزون", + "stock_location_duplicate" => "من فضلك إستخدم اسم مكان غير مكرر.", + "stock_location_invalid_chars" => "مكان المخزون لايمكن أن يحتوى على '_'.", + "stock_location_required" => "مكان المخزون مطلوب.", + "suggestions_fifth_column" => "", + "suggestions_first_column" => "العامود 1", + "suggestions_fourth_column" => "", + "suggestions_layout" => "تخطيط اقتراحات البحث", + "suggestions_second_column" => "العامود 2", + "suggestions_third_column" => "العامود 3", + "system_conf" => "اعدادات اخرى", + "system_info" => "System Info", + "table" => "جدول", + "table_configuration" => "اعدادات الجدول", + "takings_printer" => "طابعة الإيراد", + "tax" => "الضريبة", + "tax_category" => "تصنيف الضريبة", + "tax_category_duplicate" => "الفئة الضريبية اللتي تم ادخالها موجودة.", + "tax_category_invalid_chars" => "الفئة الضريبية اللتي تم ادخالها غير صحيحة.", + "tax_category_required" => "الفئة الضريبية مطلوبة.", + "tax_category_used" => "الفئة الضريبية اللتي تم تحديدها لا يمكن حذفها لانها قيد الاستعمال.", + "tax_configuration" => "إعدادات الضريبة", + "tax_decimals" => "العلامة العشرية للضريبة", + "tax_id" => "الرقم الضريبي", + "tax_included" => "شامل الضريبة", + "theme" => "السمة", + "theme_preview" => "معاينة المظهر:", + "thousands_separator" => "فاصل الاف", + "timezone" => "المنطقة الزمنية", + "timezone_error" => "تختلف منطقة OSPOS الزمنية عن منطقتك الزمنية المحلية.", + "top" => "علوى", + "use_destination_based_tax" => "استخدام الضريبة المستندة على الوجهة", + "user_timezone" => "المنطقة الزمنية المحلية:", + "website" => "موقع الشركة", + "wholesale_markup" => "", + "work_order_enable" => "تفعيل طلبات العمل", + "work_order_format" => "شكل طلبات العمل", ]; diff --git a/app/Language/ar-EG/Customers.php b/app/Language/ar-EG/Customers.php index a6581beb0..fe2854a4f 100644 --- a/app/Language/ar-EG/Customers.php +++ b/app/Language/ar-EG/Customers.php @@ -1,56 +1,56 @@ "رقم الحساب", - "account_number_duplicate" => "رقم الحساب هذا موجود فى قاعدة البيانات من قبل.", - "available_points" => "النقاط المتاحة", - "available_points_value" => "", - "average" => "معدل الصرف", - "avg_discount" => "معدل الخصم", - "basic_information" => "معلومات الزبون", - "cannot_be_deleted" => "لايمكن حذف هؤلاء العملاء، أحدهم/كلهم مرتبط/مرتبطين بمبيعات.", - "company_name" => "اسم الشركة", - "confirm_delete" => "هل تريد حذف هؤلاء العملاء حقاً؟", - "confirm_restore" => "هل انت متأكد من إستعادة قاعدة بيانات الزبائن ؟", - "consent" => "موافقة التسجيل", - "consent_required" => "موافقة التسجيل هي خانة اجبارية.", - "csv_import_failed" => "فشل الإستيراد من اكسل", - "csv_import_nodata_wrongformat" => "الملف الذى رفعته إما فارغ أو أنه مختلف البنية.", - "csv_import_partially_failed" => "تم استيراد معظم العملاء. البعض لم يتم استيرادهم ، وهذه هى القائمة:", - "csv_import_success" => "تم استيراد العملاء بنجاح.", - "customer" => "العميل", - "date" => "التاريخ", - "discount" => "نسبة الخصم", - "discount_fixed" => "حسم ثابت", - "discount_percent" => "نسبة الحبم", - "discount_type" => "نوع الحسم", - "email_duplicate" => "البريد الالكتروني مكرر.", - "employee" => "الموظف", - "error_adding_updating" => "خطاء فى إضافة أو تحديث العميل.", - "import_items_csv" => "استيراد العملا ء من ورقة عمل اكسل", - "mailchimp_activity_click" => "النقر على البريد الإلكتروني", - "mailchimp_activity_lastopen" => "آخر رسالة إلكترونية مفتوحة", - "mailchimp_activity_open" => "رسالة إلكترونية مفتوحة", - "mailchimp_activity_total" => "تم ارسال الرسالة الإلكترونية بنجاح", - "mailchimp_activity_unopen" => "رسالة إلكترونية غير مفتوحة", - "mailchimp_email_client" => "بريد الكتروني", - "mailchimp_info" => "ميل تشيمب", - "mailchimp_member_rating" => "التقييم", - "mailchimp_status" => "الحالة", - "mailchimp_vip" => "مهم", - "max" => "الحد الأقصى", - "min" => "الحد الأدنى", - "new" => "عميل جديد", - "none_selected" => "لم تختار عملاء للحذف.", - "one_or_multiple" => "عميل/عملاء", - "quantity" => "العدد", - "stats_info" => "الحالة", - "successful_adding" => "لقد أضفت عميل بنجاح", - "successful_deleted" => "لقد قمت بالحذف بنجاح", - "successful_updating" => "لقد قمت بتحديث بيانات العميل بنجاح", - "tax_code" => "كود الضريبة", - "tax_id" => "الرقم الضريبي", - "taxable" => "خاضع للضريبة", - "total" => "المجموع", - "update" => "تحديث بيانات عميل", - "rewards_package" => "فئة المكافئة", + "account_number" => "رقم الحساب", + "account_number_duplicate" => "رقم الحساب هذا موجود فى قاعدة البيانات من قبل.", + "available_points" => "النقاط المتاحة", + "available_points_value" => "", + "average" => "معدل الصرف", + "avg_discount" => "معدل الخصم", + "basic_information" => "معلومات الزبون", + "cannot_be_deleted" => "لايمكن حذف هؤلاء العملاء، أحدهم/كلهم مرتبط/مرتبطين بمبيعات.", + "company_name" => "اسم الشركة", + "confirm_delete" => "هل تريد حذف هؤلاء العملاء حقاً؟", + "confirm_restore" => "هل انت متأكد من إستعادة قاعدة بيانات الزبائن ؟", + "consent" => "موافقة التسجيل", + "consent_required" => "موافقة التسجيل هي خانة اجبارية.", + "csv_import_failed" => "فشل الإستيراد من اكسل", + "csv_import_nodata_wrongformat" => "الملف الذى رفعته إما فارغ أو أنه مختلف البنية.", + "csv_import_partially_failed" => "تم استيراد معظم العملاء. البعض لم يتم استيرادهم ، وهذه هى القائمة:", + "csv_import_success" => "تم استيراد العملاء بنجاح.", + "customer" => "العميل", + "date" => "التاريخ", + "discount" => "نسبة الخصم", + "discount_fixed" => "حسم ثابت", + "discount_percent" => "نسبة الحبم", + "discount_type" => "نوع الحسم", + "email_duplicate" => "البريد الالكتروني مكرر.", + "employee" => "الموظف", + "error_adding_updating" => "خطاء فى إضافة أو تحديث العميل.", + "import_items_csv" => "استيراد العملا ء من ورقة عمل اكسل", + "mailchimp_activity_click" => "النقر على البريد الإلكتروني", + "mailchimp_activity_lastopen" => "آخر رسالة إلكترونية مفتوحة", + "mailchimp_activity_open" => "رسالة إلكترونية مفتوحة", + "mailchimp_activity_total" => "تم ارسال الرسالة الإلكترونية بنجاح", + "mailchimp_activity_unopen" => "رسالة إلكترونية غير مفتوحة", + "mailchimp_email_client" => "بريد الكتروني", + "mailchimp_info" => "ميل تشيمب", + "mailchimp_member_rating" => "التقييم", + "mailchimp_status" => "الحالة", + "mailchimp_vip" => "مهم", + "max" => "الحد الأقصى", + "min" => "الحد الأدنى", + "new" => "عميل جديد", + "none_selected" => "لم تختار عملاء للحذف.", + "one_or_multiple" => "عميل/عملاء", + "quantity" => "العدد", + "stats_info" => "الحالة", + "successful_adding" => "لقد أضفت عميل بنجاح", + "successful_deleted" => "لقد قمت بالحذف بنجاح", + "successful_updating" => "لقد قمت بتحديث بيانات العميل بنجاح", + "tax_code" => "كود الضريبة", + "tax_id" => "الرقم الضريبي", + "taxable" => "خاضع للضريبة", + "total" => "المجموع", + "update" => "تحديث بيانات عميل", + "rewards_package" => "فئة المكافئة", ]; diff --git a/app/Language/ar-EG/Datepicker.php b/app/Language/ar-EG/Datepicker.php index fef4add9d..e299746e6 100644 --- a/app/Language/ar-EG/Datepicker.php +++ b/app/Language/ar-EG/Datepicker.php @@ -1,23 +1,23 @@ "جميع الأوقات", - "apply" => "تطبيق", - "cancel" => "إلغاء", - "custom" => "مخصص", - "from" => "من", - "last_30" => "أخر 30 يوم", - "last_7" => "أخر سبعة أيام", - "last_financial_year" => "السنة المالية الماضية", - "last_month" => "أخر شهر", - "last_year" => "السنة الماضية", - "same_month_last_year" => "نفس الشهر من العام الماضي", - "same_month_to_same_day_last_year" => "نفس الشهر حتى اليوم من السنة الماضية", - "this_financial_year" => "السنة المالية الحالية", - "this_month" => "هذا الشهر", - "this_year" => "السنة الحالية", - "to" => "إلى", - "today" => "اليوم", - "today_last_year" => "نفس اليوم من السنة الماضية", - "weekstart" => "0", - "yesterday" => "أمس", + "all_time" => "جميع الأوقات", + "apply" => "تطبيق", + "cancel" => "إلغاء", + "custom" => "مخصص", + "from" => "من", + "last_30" => "أخر 30 يوم", + "last_7" => "أخر سبعة أيام", + "last_financial_year" => "السنة المالية الماضية", + "last_month" => "أخر شهر", + "last_year" => "السنة الماضية", + "same_month_last_year" => "نفس الشهر من العام الماضي", + "same_month_to_same_day_last_year" => "نفس الشهر حتى اليوم من السنة الماضية", + "this_financial_year" => "السنة المالية الحالية", + "this_month" => "هذا الشهر", + "this_year" => "السنة الحالية", + "to" => "إلى", + "today" => "اليوم", + "today_last_year" => "نفس اليوم من السنة الماضية", + "weekstart" => "0", + "yesterday" => "أمس", ]; diff --git a/app/Language/ar-EG/Employees.php b/app/Language/ar-EG/Employees.php index d9e3950b5..1c242ed75 100644 --- a/app/Language/ar-EG/Employees.php +++ b/app/Language/ar-EG/Employees.php @@ -1,44 +1,44 @@ "", - "basic_information" => "المعلومات الأساسية للموظف", - "cannot_be_deleted" => "لايمكن حذف الموظفين ، واحد أو أكثر من المظفين قام بإجراء مبيعات :).", - "change_employee" => "", - "change_password" => "تغيير كلمة المرور", - "clerk" => "", - "commission" => "", - "confirm_delete" => "هل أنت متأكد أنك تريد حذف الموظفين المختارين؟", - "confirm_restore" => "هل انت متاكد من استعادة الموظفين المحددين؟", - "current_password" => "كلمة المرور الحالية", - "current_password_invalid" => "كلمة المرور الحالية غير صحيحة.", - "employee" => "موظف", - "error_adding_updating" => "خطاء فى إضافة/تعديل موظف.", - "error_deleting_demo_admin" => "لايمكن حذف المستخدم admin الخاص بنسخة العرض.", - "error_updating_demo_admin" => "لايمكن تغيير بيانات المستخدم admin الخاص بنسخة العرض.", - "language" => "اللغة", - "login_info" => "معلومات دخول الموظف", - "manager" => "", - "new" => "موظف جديد", - "none_selected" => "لم تختار أى من الموظفين للحذف.", - "one_or_multiple" => "موظف/موظفين", - "password" => "كلمة السر", - "password_minlength" => "كلمة السر يجب أن تكون 8 حروف على الأقل.", - "password_must_match" => "كلمتى السر لا تتطابقان.", - "password_not_must_match" => "كلمة المرور الحالية والجديدة يجب ان يكونو فريدين.", - "password_required" => "كلمة السر مطلوبة.", - "permission_desc" => "قم بإضافة الصلاحيات بلإختيار من الأسفل.", - "permission_info" => "اذونات المستخدمين", - "repeat_password" => "كلمة السر مرة اخرى", - "subpermission_required" => "يجب إختيار صلاحية واحدة على الأقل لكل قسم.", - "successful_adding" => "لقد تم إضافة الموظف بنجاح.", - "successful_change_password" => "تم تغيير كلمة المرور بنجاح.", - "successful_deleted" => "لقد تم حذف الموظف بنجاح", - "successful_updating" => "لقد تم تحديث بيانات الموظف بنجاح", - "system_language" => "لغة النظام", - "unsuccessful_change_password" => "فشل في تغيير كلمة المرور.", - "update" => "تحديث بيانات موظف", - "username" => "اسم المستخدم", - "username_duplicate" => "حساب المحدد هو موجود في قاعدة البيانات. نرجوا استخدام اسم حساب مختلف.", - "username_minlength" => "اسم المستخدم يجب أن يكون 5 حروف على الأقل.", - "username_required" => "اسم المستخدم مطلوب.", + "administrator" => "", + "basic_information" => "المعلومات الأساسية للموظف", + "cannot_be_deleted" => "لايمكن حذف الموظفين ، واحد أو أكثر من المظفين قام بإجراء مبيعات :).", + "change_employee" => "", + "change_password" => "تغيير كلمة المرور", + "clerk" => "", + "commission" => "", + "confirm_delete" => "هل أنت متأكد أنك تريد حذف الموظفين المختارين؟", + "confirm_restore" => "هل انت متاكد من استعادة الموظفين المحددين؟", + "current_password" => "كلمة المرور الحالية", + "current_password_invalid" => "كلمة المرور الحالية غير صحيحة.", + "employee" => "موظف", + "error_adding_updating" => "خطاء فى إضافة/تعديل موظف.", + "error_deleting_demo_admin" => "لايمكن حذف المستخدم admin الخاص بنسخة العرض.", + "error_updating_demo_admin" => "لايمكن تغيير بيانات المستخدم admin الخاص بنسخة العرض.", + "language" => "اللغة", + "login_info" => "معلومات دخول الموظف", + "manager" => "", + "new" => "موظف جديد", + "none_selected" => "لم تختار أى من الموظفين للحذف.", + "one_or_multiple" => "موظف/موظفين", + "password" => "كلمة السر", + "password_minlength" => "كلمة السر يجب أن تكون 8 حروف على الأقل.", + "password_must_match" => "كلمتى السر لا تتطابقان.", + "password_not_must_match" => "كلمة المرور الحالية والجديدة يجب ان يكونو فريدين.", + "password_required" => "كلمة السر مطلوبة.", + "permission_desc" => "قم بإضافة الصلاحيات بلإختيار من الأسفل.", + "permission_info" => "اذونات المستخدمين", + "repeat_password" => "كلمة السر مرة اخرى", + "subpermission_required" => "يجب إختيار صلاحية واحدة على الأقل لكل قسم.", + "successful_adding" => "لقد تم إضافة الموظف بنجاح.", + "successful_change_password" => "تم تغيير كلمة المرور بنجاح.", + "successful_deleted" => "لقد تم حذف الموظف بنجاح", + "successful_updating" => "لقد تم تحديث بيانات الموظف بنجاح", + "system_language" => "لغة النظام", + "unsuccessful_change_password" => "فشل في تغيير كلمة المرور.", + "update" => "تحديث بيانات موظف", + "username" => "اسم المستخدم", + "username_duplicate" => "حساب المحدد هو موجود في قاعدة البيانات. نرجوا استخدام اسم حساب مختلف.", + "username_minlength" => "اسم المستخدم يجب أن يكون 5 حروف على الأقل.", + "username_required" => "اسم المستخدم مطلوب.", ]; diff --git a/app/Language/ar-EG/Enum.php b/app/Language/ar-EG/Enum.php index b33c709a2..888accc71 100644 --- a/app/Language/ar-EG/Enum.php +++ b/app/Language/ar-EG/Enum.php @@ -1,10 +1,10 @@ "تقريب نصفي", - "half_even" => "نصف مزدوج", - "half_five" => "نصف الخمس", - "half_odd" => "نصف فردي", - "half_up" => "تقريب نصفي", - "round_down" => "التقريب", - "round_up" => "التقريب", + "half_down" => "تقريب نصفي", + "half_even" => "نصف مزدوج", + "half_five" => "نصف الخمس", + "half_odd" => "نصف فردي", + "half_up" => "تقريب نصفي", + "round_down" => "التقريب", + "round_up" => "التقريب", ]; diff --git a/app/Language/ar-EG/Error.php b/app/Language/ar-EG/Error.php index d2123a9c2..fe717b43a 100644 --- a/app/Language/ar-EG/Error.php +++ b/app/Language/ar-EG/Error.php @@ -1,5 +1,5 @@ "ليس لديك صلاحيات للوصول لهذا القسم", - "unknown" => "غير معروف", + "no_permission_module" => "ليس لديك صلاحيات للوصول لهذا القسم", + "unknown" => "غير معروف", ]; diff --git a/app/Language/ar-EG/Expenses.php b/app/Language/ar-EG/Expenses.php index 5175d0bce..5b78995cf 100644 --- a/app/Language/ar-EG/Expenses.php +++ b/app/Language/ar-EG/Expenses.php @@ -1,50 +1,50 @@ "إضافة مصاريف جديدة", - "amount" => "قيمة المصاريف", - "amount_number" => "القيمة يجب ان تكون رقم", - "amount_required" => "القيمة المطلوبة", - "by_category" => "حسب الفئات", - "cannot_be_deleted" => "لا يمكن المسح", - "cash" => "نقدا", - "cash_filter" => "نقدا", - "categories_name" => "التصنيف", - "category_required" => "خانة مطلوبة: الفئات", - "check" => "شيك", - "check_filter" => "تصفية", - "confirm_delete" => "هل أنت متأكد أنك تريد حذف المصاريف المحددة؟", - "confirm_restore" => "هل تريد بالتأكيد استعادة النفقات المحددة؟", - "credit" => "بطاقة ائتمان", - "credit_filter" => "بطاقة ائتمان", - "date" => "تاريخ المصاريف", - "date_number" => "التاريخ يجب ان يتكون من ارقام", - "date_required" => "خانة مطلوبة: التاريخ", - "debit" => "بطاقة مدين", - "debit_filter" => "بطاقة مدين", - "description" => "الوصف", - "due" => "الدين", - "due_filter" => "تصفية الدين", - "employee" => "صنع من قبل", - "error_adding_updating" => "خطأ في الإضافة", - "expense_id" => "كود المصاريف", - "expenses_employee" => "موظف", - "info" => "معلومات عن المصاريف", - "ip_address" => "", - "is_deleted" => "ممسوحة", - "name_required" => "خانة مطلوبة: اسم المصاريف", - "new" => "مصاريف جديدة", - "new_supplier" => "", - "no_expenses_to_display" => "لا يوجد مصاريف في التاريخ المحدد", - "none_selected" => "لم يتم تحديد اي خيار", - "one_or_multiple" => "واحد او أكثر", - "payment" => "الدفع", - "start_typing_supplier_name" => "ابدا بكتابة اسم المورد...", - "successful_adding" => "تم إضافة المصاريف بنجاح", - "successful_deleted" => "تم مسح المصاريف بنجاح", - "successful_updating" => "تم تعديل المصاريف بنجاح", - "supplier_name" => "اسم المورد", - "supplier_tax_code" => "كود ضريبة المورد", - "tax_amount" => "قيمة الضريبة", - "tax_amount_number" => "", - "update" => "تعديل", + "add_item" => "إضافة مصاريف جديدة", + "amount" => "قيمة المصاريف", + "amount_number" => "القيمة يجب ان تكون رقم", + "amount_required" => "القيمة المطلوبة", + "by_category" => "حسب الفئات", + "cannot_be_deleted" => "لا يمكن المسح", + "cash" => "نقدا", + "cash_filter" => "نقدا", + "categories_name" => "التصنيف", + "category_required" => "خانة مطلوبة: الفئات", + "check" => "شيك", + "check_filter" => "تصفية", + "confirm_delete" => "هل أنت متأكد أنك تريد حذف المصاريف المحددة؟", + "confirm_restore" => "هل تريد بالتأكيد استعادة النفقات المحددة؟", + "credit" => "بطاقة ائتمان", + "credit_filter" => "بطاقة ائتمان", + "date" => "تاريخ المصاريف", + "date_number" => "التاريخ يجب ان يتكون من ارقام", + "date_required" => "خانة مطلوبة: التاريخ", + "debit" => "بطاقة مدين", + "debit_filter" => "بطاقة مدين", + "description" => "الوصف", + "due" => "الدين", + "due_filter" => "تصفية الدين", + "employee" => "صنع من قبل", + "error_adding_updating" => "خطأ في الإضافة", + "expense_id" => "كود المصاريف", + "expenses_employee" => "موظف", + "info" => "معلومات عن المصاريف", + "ip_address" => "", + "is_deleted" => "ممسوحة", + "name_required" => "خانة مطلوبة: اسم المصاريف", + "new" => "مصاريف جديدة", + "new_supplier" => "", + "no_expenses_to_display" => "لا يوجد مصاريف في التاريخ المحدد", + "none_selected" => "لم يتم تحديد اي خيار", + "one_or_multiple" => "واحد او أكثر", + "payment" => "الدفع", + "start_typing_supplier_name" => "ابدا بكتابة اسم المورد...", + "successful_adding" => "تم إضافة المصاريف بنجاح", + "successful_deleted" => "تم مسح المصاريف بنجاح", + "successful_updating" => "تم تعديل المصاريف بنجاح", + "supplier_name" => "اسم المورد", + "supplier_tax_code" => "كود ضريبة المورد", + "tax_amount" => "قيمة الضريبة", + "tax_amount_number" => "", + "update" => "تعديل", ]; diff --git a/app/Language/ar-EG/Expenses_categories.php b/app/Language/ar-EG/Expenses_categories.php index f36846196..ffd92e777 100644 --- a/app/Language/ar-EG/Expenses_categories.php +++ b/app/Language/ar-EG/Expenses_categories.php @@ -1,22 +1,22 @@ "اسم نوع المصاريف مطلوب", - "add_item" => "إضافة نوع", - "cannot_be_deleted" => "فشلت عملية مسح نوع المصاريف", - "category_id" => "الكود", - "confirm_delete" => "هل أنت متأكد من مسح نوع المصاريف الذي أخترته؟", - "confirm_restore" => "هل أنت متأكد من أنك تريد استعادة فئة المصاريف المحددة؟", - "description" => "وصف النوع", - "error_adding_updating" => "مشكلة أثناء أضافة أو تعديل نوع المصاريف", - "info" => "معلومات عن نوع المصاريف", - "name" => "اسم الفئة", - "new" => "نوع جديد", - "no_expenses_categories_to_display" => "لا يجد أنواع للعرض", - "none_selected" => "لم تختار أي نوع مصاريف", - "one_or_multiple" => "نوع المصاريف", - "quantity" => "الكمية", - "successful_adding" => "تم أضافة نوع المصاريف بنجاح", - "successful_deleted" => "تم مسح نوع المصاريف بنجاح", - "successful_updating" => "تم تعديل نوع المصاريف بنجاح", - "update" => "تعديل النوع", + "category_name_required" => "اسم نوع المصاريف مطلوب", + "add_item" => "إضافة نوع", + "cannot_be_deleted" => "فشلت عملية مسح نوع المصاريف", + "category_id" => "الكود", + "confirm_delete" => "هل أنت متأكد من مسح نوع المصاريف الذي أخترته؟", + "confirm_restore" => "هل أنت متأكد من أنك تريد استعادة فئة المصاريف المحددة؟", + "description" => "وصف النوع", + "error_adding_updating" => "مشكلة أثناء أضافة أو تعديل نوع المصاريف", + "info" => "معلومات عن نوع المصاريف", + "name" => "اسم الفئة", + "new" => "نوع جديد", + "no_expenses_categories_to_display" => "لا يجد أنواع للعرض", + "none_selected" => "لم تختار أي نوع مصاريف", + "one_or_multiple" => "نوع المصاريف", + "quantity" => "الكمية", + "successful_adding" => "تم أضافة نوع المصاريف بنجاح", + "successful_deleted" => "تم مسح نوع المصاريف بنجاح", + "successful_updating" => "تم تعديل نوع المصاريف بنجاح", + "update" => "تعديل النوع", ]; diff --git a/app/Language/ar-EG/Giftcards.php b/app/Language/ar-EG/Giftcards.php index a8c6f803b..1b608ef3d 100644 --- a/app/Language/ar-EG/Giftcards.php +++ b/app/Language/ar-EG/Giftcards.php @@ -1,71 +1,71 @@ "المخزن المضاف أو المطروح منه.", - "allow_alt_description" => "السماح بوصف بديل", - "bulk_edit" => "تحرير جماعى", - "cannot_be_deleted" => "لايمكن حذف بطاقات الهدية المختارة، واحد أو أكثر منها لديه مبيعات.", - "cannot_find_giftcard" => "لايمكن إيجاد معلومات حول كارت الهدية.", - "cannot_use" => "كارت الهدية {0} لا يمكن استعمالة في هذه العملية: اسم الزبون غير صحيح.", - "card_value" => "القيمة", - "category" => "الفئة", - "change_all_to_allow_alt_desc" => "السماح بوصف بديل للكل.", - "change_all_to_not_allow_allow_desc" => "غير مسموح بوصف بديل للكل.", - "change_all_to_serialized" => "تغيير الجميع لأرقام مسلسلة", - "change_all_to_unserialized" => "تغير الجميع لأرقام غير مسلسلة", - "confirm_bulk_edit" => "هل أنت متأكد انك تريد تحرير كل بطاقات الهدايا المختارة؟", - "confirm_delete" => "هل أنت متأكد انك تريد حذف كل بطاقات الهدايا المختارة؟", - "confirm_restore" => "هل تريد بالتأكيد استعادة بطاقة (بطاقات) الهدايا المحددة؟", - "cost_price" => "سعر التكلفة", - "count" => "تحديث المخزون", - "csv_import_failed" => "فشل الإستيراد من اكسل.", - "current_quantity" => "الكميات الحالية", - "description" => "الوصف", - "details_count" => "حركة الكارت", - "do_nothing" => "لا تفعل شىء", - "edit_fields_you_want_to_update" => "قم بتحديث الحقول المراد تحديثها لكل بطاقات الهدايا المختارة.", - "edit_multiple_giftcards" => "تحرير مجموعة من بطاقات الهدايا.", - "error_adding_updating" => "خطاء فى إضافة/تحديث بطاقة هدية.", - "error_updating_multiple" => "خطاء فى تحديث بيانات بطاقات الهدايا.", - "generate_barcodes" => "توليد أكواد الباركود", - "giftcard" => "بطاقة هدية", - "giftcard_number" => "رقم بطاقة الهدية", - "info_provided_by" => "المعلومات مقدمة بواسطة", - "inventory_comments" => "تعليقات", - "is_serialized" => "بطاقة الهدية لها رقم مسلسل", - "low_inventory_giftcards" => "مخزون قليل من بطاقات الهدايا", - "manually_editing_of_quantity" => "تحرير الكميات يدويا", - "must_select_giftcard_for_barcode" => "يجب إختيار بطاقة هدية واحدة على الأقل لتوليد أكواد الباركود.", - "new" => "بطاقة هدية جديدة", - "no_description_giftcards" => "لايوجد وصف لبطاقات الهدايا", - "no_giftcards_to_display" => "لايوجد بطاقات هدايا لعرضها.", - "none" => "لايوجد", - "none_selected" => "لم تقم بإختيار أى بطاقة هدية.", - "number" => "رقم بطاقة الهدية يجب أن يكون رقم.", - "number_information" => "رقم بطاقة الهدية", - "number_required" => "رقم بطاقة الهدية مطلوب.", - "one_or_multiple" => "بطاقة/بطاقات الهدية", - "person_id" => "العميل", - "quantity" => "الكمية", - "quantity_required" => "الكمية مطلوبة.", - "remaining_balance" => "كارت الهدية {0} القيمة المتبقية منه {1}!", - "reorder_level" => "نقطة إعادة الطلب", - "retrive_giftcard_info" => "إسترجاع بيانات بطاقة هدية", - "sales_tax_1" => "ضريبة المبيعات", - "sales_tax_2" => "ضريبة المبيعات 2", - "serialized_giftcards" => "بطاقات هدايا مسلسلة", - "successful_adding" => "تم إضافة بطاقة هدية بنجاح", - "successful_bulk_edit" => "تم تحديث بطاقات الهدايا بنجاح", - "successful_deleted" => "تم الحذف بنجاح", - "successful_updating" => "تم تحديث بطاقة الهدية بنجاح", - "supplier" => "المورد", - "tax_1" => "الضريبة 1", - "tax_2" => "الضريبة 2", - "tax_percent" => "نسبة الضريبة", - "tax_percents" => "نسبة/نسب الضريبة", - "unit_price" => "سعر الوحدة", - "upc_database" => "UPC قاعدة بيانات", - "update" => "تحديث بطاقة هدية", - "use_inventory_menu" => "استخدام تحديث المخزن", - "value" => "قيمة بطاقة الهدية يجب ان تكون رقم.", - "value_required" => "قيمة بطاقة الهدية مطلوبة.", + "add_minus" => "المخزن المضاف أو المطروح منه.", + "allow_alt_description" => "السماح بوصف بديل", + "bulk_edit" => "تحرير جماعى", + "cannot_be_deleted" => "لايمكن حذف بطاقات الهدية المختارة، واحد أو أكثر منها لديه مبيعات.", + "cannot_find_giftcard" => "لايمكن إيجاد معلومات حول كارت الهدية.", + "cannot_use" => "كارت الهدية {0} لا يمكن استعمالة في هذه العملية: اسم الزبون غير صحيح.", + "card_value" => "القيمة", + "category" => "الفئة", + "change_all_to_allow_alt_desc" => "السماح بوصف بديل للكل.", + "change_all_to_not_allow_allow_desc" => "غير مسموح بوصف بديل للكل.", + "change_all_to_serialized" => "تغيير الجميع لأرقام مسلسلة", + "change_all_to_unserialized" => "تغير الجميع لأرقام غير مسلسلة", + "confirm_bulk_edit" => "هل أنت متأكد انك تريد تحرير كل بطاقات الهدايا المختارة؟", + "confirm_delete" => "هل أنت متأكد انك تريد حذف كل بطاقات الهدايا المختارة؟", + "confirm_restore" => "هل تريد بالتأكيد استعادة بطاقة (بطاقات) الهدايا المحددة؟", + "cost_price" => "سعر التكلفة", + "count" => "تحديث المخزون", + "csv_import_failed" => "فشل الإستيراد من اكسل.", + "current_quantity" => "الكميات الحالية", + "description" => "الوصف", + "details_count" => "حركة الكارت", + "do_nothing" => "لا تفعل شىء", + "edit_fields_you_want_to_update" => "قم بتحديث الحقول المراد تحديثها لكل بطاقات الهدايا المختارة.", + "edit_multiple_giftcards" => "تحرير مجموعة من بطاقات الهدايا.", + "error_adding_updating" => "خطاء فى إضافة/تحديث بطاقة هدية.", + "error_updating_multiple" => "خطاء فى تحديث بيانات بطاقات الهدايا.", + "generate_barcodes" => "توليد أكواد الباركود", + "giftcard" => "بطاقة هدية", + "giftcard_number" => "رقم بطاقة الهدية", + "info_provided_by" => "المعلومات مقدمة بواسطة", + "inventory_comments" => "تعليقات", + "is_serialized" => "بطاقة الهدية لها رقم مسلسل", + "low_inventory_giftcards" => "مخزون قليل من بطاقات الهدايا", + "manually_editing_of_quantity" => "تحرير الكميات يدويا", + "must_select_giftcard_for_barcode" => "يجب إختيار بطاقة هدية واحدة على الأقل لتوليد أكواد الباركود.", + "new" => "بطاقة هدية جديدة", + "no_description_giftcards" => "لايوجد وصف لبطاقات الهدايا", + "no_giftcards_to_display" => "لايوجد بطاقات هدايا لعرضها.", + "none" => "لايوجد", + "none_selected" => "لم تقم بإختيار أى بطاقة هدية.", + "number" => "رقم بطاقة الهدية يجب أن يكون رقم.", + "number_information" => "رقم بطاقة الهدية", + "number_required" => "رقم بطاقة الهدية مطلوب.", + "one_or_multiple" => "بطاقة/بطاقات الهدية", + "person_id" => "العميل", + "quantity" => "الكمية", + "quantity_required" => "الكمية مطلوبة.", + "remaining_balance" => "كارت الهدية {0} القيمة المتبقية منه {1}!", + "reorder_level" => "نقطة إعادة الطلب", + "retrive_giftcard_info" => "إسترجاع بيانات بطاقة هدية", + "sales_tax_1" => "ضريبة المبيعات", + "sales_tax_2" => "ضريبة المبيعات 2", + "serialized_giftcards" => "بطاقات هدايا مسلسلة", + "successful_adding" => "تم إضافة بطاقة هدية بنجاح", + "successful_bulk_edit" => "تم تحديث بطاقات الهدايا بنجاح", + "successful_deleted" => "تم الحذف بنجاح", + "successful_updating" => "تم تحديث بطاقة الهدية بنجاح", + "supplier" => "المورد", + "tax_1" => "الضريبة 1", + "tax_2" => "الضريبة 2", + "tax_percent" => "نسبة الضريبة", + "tax_percents" => "نسبة/نسب الضريبة", + "unit_price" => "سعر الوحدة", + "upc_database" => "UPC قاعدة بيانات", + "update" => "تحديث بطاقة هدية", + "use_inventory_menu" => "استخدام تحديث المخزن", + "value" => "قيمة بطاقة الهدية يجب ان تكون رقم.", + "value_required" => "قيمة بطاقة الهدية مطلوبة.", ]; diff --git a/app/Language/ar-EG/Item_kits.php b/app/Language/ar-EG/Item_kits.php index 54e824e91..ce09a7147 100644 --- a/app/Language/ar-EG/Item_kits.php +++ b/app/Language/ar-EG/Item_kits.php @@ -1,41 +1,41 @@ "إضافة مجموعة", - "all" => "الكل", - "cannot_be_deleted" => "لايمكن حذف مجموعة/مجموعات.", - "confirm_delete" => "هل أنت متأكد أنك تريد حذف المجموعة؟", - "confirm_restore" => "هل أنت متأكد أنك تريد استعادة المجموعة المحددة؟", - "description" => "وصف المجموعة", - "discount" => "الخصم", - "discount_fixed" => "خصم قابل للتعديل", - "discount_percent" => "نسبة الخصم", - "discount_type" => "نوع الخصم", - "error_adding_updating" => "خطاء فى إضافة/تحديث المجموعة.", - "find_kit_item" => "صنف لمجموعة", - "info" => "معلومات المجموعة", - "item" => "صنف", - "item_kit_number" => "الباركود", - "item_kit_number_duplicate" => "رقم مجموعة الأصناف موجود في قاعدة البيانات.", - "item_number" => "", - "item_number_duplicate" => "", - "items" => "أصناف", - "kit" => "كود المجموعة", - "kit_and_components" => "المجموعة ومحتوياتها", - "kit_and_stock" => "المجموعه والصنف", - "kit_only" => "المجموعه فقط", - "name" => "اسم المجموعة", - "new" => "مجموعة جديده", - "no_item_kits_to_display" => "لاتوجد مجموعات لعرضها.", - "none_selected" => "لم تقم بإختيار مجموعات.", - "one_or_multiple" => "مجموعة/مجموعات", - "price_option" => "خيارات التسعير", - "priced_only" => "المسعرين فقط", - "print_option" => "خيارات الطباعة", - "quantity" => "الكمية", - "sequence" => "التسلسل", - "successful_adding" => "لقد تم إضافة المجموعة بنجاح", - "successful_deleted" => "لقد تم حذف المجموعة بنجاح", - "successful_updating" => "لقد تم تحديث بيانات المجموعة بنجاح", - "unit_price" => "", - "update" => "تحديث بيانات مجموعة", + "add_item" => "إضافة مجموعة", + "all" => "الكل", + "cannot_be_deleted" => "لايمكن حذف مجموعة/مجموعات.", + "confirm_delete" => "هل أنت متأكد أنك تريد حذف المجموعة؟", + "confirm_restore" => "هل أنت متأكد أنك تريد استعادة المجموعة المحددة؟", + "description" => "وصف المجموعة", + "discount" => "الخصم", + "discount_fixed" => "خصم قابل للتعديل", + "discount_percent" => "نسبة الخصم", + "discount_type" => "نوع الخصم", + "error_adding_updating" => "خطاء فى إضافة/تحديث المجموعة.", + "find_kit_item" => "صنف لمجموعة", + "info" => "معلومات المجموعة", + "item" => "صنف", + "item_kit_number" => "الباركود", + "item_kit_number_duplicate" => "رقم مجموعة الأصناف موجود في قاعدة البيانات.", + "item_number" => "", + "item_number_duplicate" => "", + "items" => "أصناف", + "kit" => "كود المجموعة", + "kit_and_components" => "المجموعة ومحتوياتها", + "kit_and_stock" => "المجموعه والصنف", + "kit_only" => "المجموعه فقط", + "name" => "اسم المجموعة", + "new" => "مجموعة جديده", + "no_item_kits_to_display" => "لاتوجد مجموعات لعرضها.", + "none_selected" => "لم تقم بإختيار مجموعات.", + "one_or_multiple" => "مجموعة/مجموعات", + "price_option" => "خيارات التسعير", + "priced_only" => "المسعرين فقط", + "print_option" => "خيارات الطباعة", + "quantity" => "الكمية", + "sequence" => "التسلسل", + "successful_adding" => "لقد تم إضافة المجموعة بنجاح", + "successful_deleted" => "لقد تم حذف المجموعة بنجاح", + "successful_updating" => "لقد تم تحديث بيانات المجموعة بنجاح", + "unit_price" => "", + "update" => "تحديث بيانات مجموعة", ]; diff --git a/app/Language/ar-EG/Items.php b/app/Language/ar-EG/Items.php index 0106aa5a4..8817ab6ea 100644 --- a/app/Language/ar-EG/Items.php +++ b/app/Language/ar-EG/Items.php @@ -1,120 +1,120 @@ "الكمية المطلوب خصمها أو اضافتها.", - "allow_alt_description" => "السماح بوصف بديل", - "amount_entry" => "إدخال القيمة", - "bulk_edit" => "تحرير جماعى", - "buy_price_required" => "سعر الشراء مطلوب.", - "cannot_be_deleted" => "لايمكن حذف الأصناف المختارة، واحد أو أكثر منها لديه مبيعات.", - "cannot_find_item" => "لايمكن ايجاد معلومات حول الصنف.", - "categories" => "", - "category" => "التصنيف", - "category_new" => "", - "category_required" => "التصنيف مطلوب.", - "change_all_to_allow_alt_desc" => "السماح بوصف بديل للجميع.", - "change_all_to_not_allow_allow_desc" => "عدم السماح بوصف بديل للجميع.", - "change_all_to_serialized" => "تغير الجميع لمتسلسل", - "change_all_to_unserialized" => "تغيير الجميع لغير متسلسل", - "change_image" => "تغيير الصورة", - "confirm_bulk_edit" => "هل أنت متأكد انك تريد تحرير كل الأصناف المختارة؟", - "confirm_bulk_edit_wipe_taxes" => "سوف يتم مسح معلومات الضرائب لجميع الأصناف.", - "confirm_delete" => "هل أنت متأكد انك تريد حذف كل الأصناف المختارة؟", - "confirm_restore" => "هل انت متاكد من إستعادة الاصناف المخطارة؟", - "cost_price" => "سعر التكلفة", - "cost_price_number" => "سعر التكلفة يجب أن يكون رقم.", - "cost_price_required" => "سعر التكلفة مطلوب.", - "count" => "تحديث المخزون", - "csv_import_failed" => "فشل الإستيراد من اكسل", - "csv_import_nodata_wrongformat" => "الملف الذى رفعته إما فارغ أو أنه مختلف البنية.", - "csv_import_partially_failed" => "يوجد خطأ بنسبة {0} في استيراد الاصناف في السطر: {1}. لم يتم استيرادهم.", - "csv_import_success" => "تم استيراد الأصناف بنجاح.", - "current_quantity" => "الكمية الحالية", - "default_pack_name" => "كل", - "description" => "الوصف", - "details_count" => "حركة الصنف", - "do_nothing" => "لاتفعل شئ", - "edit" => "", - "edit_fields_you_want_to_update" => "قم بتحديث الحقول المراد تحديثها لكل الأصناف المختارة.", - "edit_multiple_items" => "تحريد مجموعة اصناف", - "empty_upc_items" => "تفريغ اصناف UPC", - "error_adding_updating" => "خطاء فى إضافة/تحديث صنف", - "error_updating_multiple" => "خطاء فى تحديث بيانات أصناف", - "generate_barcodes" => "توليد أكواد الباركود", - "hsn_code" => "تسميات النظام المنسق", - "image" => "صورة", - "import_items_csv" => "استيراد من اكسل", - "info_provided_by" => "المعلومات مقدمة بواسطة", - "inventory" => "المخزن", - "inventory_CSV_import_quantity" => "العدد المستورد من ملفات ال CSV", - "inventory_comments" => "تعليقات", - "inventory_data_tracking" => "تتبع بيانات المخزون", - "inventory_date" => "التاريخ", - "inventory_employee" => "الموظف", - "inventory_in_out_quantity" => "+- كمية", - "inventory_remarks" => "ملاحظات", - "is_deleted" => "حذفت", - "is_printed" => "", - "is_serialized" => "الصنف له رقم مسلسل", - "item" => "صنف", - "item_id" => "", - "item_number" => "الباركود UPC/EAN/ISBN", - "item_number_duplicate" => "رقم الصنف موجود فى قاعدة البيانات من قبل.", - "kit" => "مجموعة اصناف", - "location" => "مكان", - "low_inventory_items" => "الأصناف التى لا يوجد لها مخزون", - "low_sell_item" => "الصنف المركب", - "manually_editing_of_quantity" => "تحرير الكمية يدوياً", - "markup" => "", - "name" => "اسم الصنف", - "name_required" => "اسم الصنف مطلوب.", - "new" => "صنف جديد", - "no_description_items" => "الأصناف التى بلا وصف", - "no_items_to_display" => "لايوجد أصناف لعرضها.", - "none" => "لاشىء", - "none_selected" => "لم تختار أى أصناف لتحريرها", - "nonstock" => "غير مخزنة", - "number_information" => "رقم الصنف", - "number_required" => "مطلوب UPC/EAN/ISBN رقم الباركود.", - "one_or_multiple" => "صنف/أصناف", - "pack_name" => "اسم الحزمة", - "qty_per_pack" => "العدد بكل الحزمة", - "quantity" => "الكمية", - "quantity_number" => "الكمية يجب أن تكون رقم.", - "quantity_required" => "الكمية مطلوبة.", - "receiving_quantity" => "الكمية المستلمة", - "remove_image" => "ازالة الصورة", - "reorder_level" => "نقطة إعادة الطلب", - "reorder_level_number" => "نقطة إعادة الطلب يجب أن تكون رقم.", - "reorder_level_required" => "نقطة إعادة الطلب مطلوبة.", - "retrive_item_info" => "الحصول على بيانات الصنف", - "sales_tax_1" => "ضريبة المبيعات", - "sales_tax_2" => "ضريبة المبيعات 2", - "search_attributes" => "بحث الحقول المخصصة", - "select_image" => "اختار صورة", - "serialized_items" => "أصناف مسلسلة", - "standard" => "اساسي", - "stock" => "مخزن", - "stock_location" => "مكان المخزون", - "stock_type" => "نوع المخزن", - "successful_adding" => "لقد تم إضافة صنف بنجاح", - "successful_bulk_edit" => "لقد تم تحديث بيانات صنف/أصناف بنجاح", - "successful_deleted" => "لقد تم الحذف بنجاح", - "successful_updating" => "لقد تم تحديث بيانات صنف بنجاح", - "supplier" => "المورد", - "tax_1" => "الضريبة 1", - "tax_2" => "الضريبة 2", - "tax_3" => "", - "tax_category" => "الفئة الضريبية", - "tax_percent" => "نسبة الضريبة", - "tax_percent_number" => "نسبة الضريبة يجب ان تكون رقم", - "tax_percent_required" => "نسبة الضريبة مطلوبة.", - "tax_percents" => "نسبة/نسب الضريبة", - "temp" => "مؤقت", - "type" => "نوع الصنف", - "unit_price" => "السعر", - "unit_price_number" => "السعر يجب أن يكون رقم.", - "unit_price_required" => "السعر مطلوب.", - "upc_database" => "UPC قاعدة بيانات", - "update" => "تحديث بيانات صنف", - "use_inventory_menu" => "استخدام تحديث المخزن", + "add_minus" => "الكمية المطلوب خصمها أو اضافتها.", + "allow_alt_description" => "السماح بوصف بديل", + "amount_entry" => "إدخال القيمة", + "bulk_edit" => "تحرير جماعى", + "buy_price_required" => "سعر الشراء مطلوب.", + "cannot_be_deleted" => "لايمكن حذف الأصناف المختارة، واحد أو أكثر منها لديه مبيعات.", + "cannot_find_item" => "لايمكن ايجاد معلومات حول الصنف.", + "categories" => "", + "category" => "التصنيف", + "category_new" => "", + "category_required" => "التصنيف مطلوب.", + "change_all_to_allow_alt_desc" => "السماح بوصف بديل للجميع.", + "change_all_to_not_allow_allow_desc" => "عدم السماح بوصف بديل للجميع.", + "change_all_to_serialized" => "تغير الجميع لمتسلسل", + "change_all_to_unserialized" => "تغيير الجميع لغير متسلسل", + "change_image" => "تغيير الصورة", + "confirm_bulk_edit" => "هل أنت متأكد انك تريد تحرير كل الأصناف المختارة؟", + "confirm_bulk_edit_wipe_taxes" => "سوف يتم مسح معلومات الضرائب لجميع الأصناف.", + "confirm_delete" => "هل أنت متأكد انك تريد حذف كل الأصناف المختارة؟", + "confirm_restore" => "هل انت متاكد من إستعادة الاصناف المخطارة؟", + "cost_price" => "سعر التكلفة", + "cost_price_number" => "سعر التكلفة يجب أن يكون رقم.", + "cost_price_required" => "سعر التكلفة مطلوب.", + "count" => "تحديث المخزون", + "csv_import_failed" => "فشل الإستيراد من اكسل", + "csv_import_nodata_wrongformat" => "الملف الذى رفعته إما فارغ أو أنه مختلف البنية.", + "csv_import_partially_failed" => "يوجد خطأ بنسبة {0} في استيراد الاصناف في السطر: {1}. لم يتم استيرادهم.", + "csv_import_success" => "تم استيراد الأصناف بنجاح.", + "current_quantity" => "الكمية الحالية", + "default_pack_name" => "كل", + "description" => "الوصف", + "details_count" => "حركة الصنف", + "do_nothing" => "لاتفعل شئ", + "edit" => "", + "edit_fields_you_want_to_update" => "قم بتحديث الحقول المراد تحديثها لكل الأصناف المختارة.", + "edit_multiple_items" => "تحريد مجموعة اصناف", + "empty_upc_items" => "تفريغ اصناف UPC", + "error_adding_updating" => "خطاء فى إضافة/تحديث صنف", + "error_updating_multiple" => "خطاء فى تحديث بيانات أصناف", + "generate_barcodes" => "توليد أكواد الباركود", + "hsn_code" => "تسميات النظام المنسق", + "image" => "صورة", + "import_items_csv" => "استيراد من اكسل", + "info_provided_by" => "المعلومات مقدمة بواسطة", + "inventory" => "المخزن", + "inventory_CSV_import_quantity" => "العدد المستورد من ملفات ال CSV", + "inventory_comments" => "تعليقات", + "inventory_data_tracking" => "تتبع بيانات المخزون", + "inventory_date" => "التاريخ", + "inventory_employee" => "الموظف", + "inventory_in_out_quantity" => "+- كمية", + "inventory_remarks" => "ملاحظات", + "is_deleted" => "حذفت", + "is_printed" => "", + "is_serialized" => "الصنف له رقم مسلسل", + "item" => "صنف", + "item_id" => "", + "item_number" => "الباركود UPC/EAN/ISBN", + "item_number_duplicate" => "رقم الصنف موجود فى قاعدة البيانات من قبل.", + "kit" => "مجموعة اصناف", + "location" => "مكان", + "low_inventory_items" => "الأصناف التى لا يوجد لها مخزون", + "low_sell_item" => "الصنف المركب", + "manually_editing_of_quantity" => "تحرير الكمية يدوياً", + "markup" => "", + "name" => "اسم الصنف", + "name_required" => "اسم الصنف مطلوب.", + "new" => "صنف جديد", + "no_description_items" => "الأصناف التى بلا وصف", + "no_items_to_display" => "لايوجد أصناف لعرضها.", + "none" => "لاشىء", + "none_selected" => "لم تختار أى أصناف لتحريرها", + "nonstock" => "غير مخزنة", + "number_information" => "رقم الصنف", + "number_required" => "مطلوب UPC/EAN/ISBN رقم الباركود.", + "one_or_multiple" => "صنف/أصناف", + "pack_name" => "اسم الحزمة", + "qty_per_pack" => "العدد بكل الحزمة", + "quantity" => "الكمية", + "quantity_number" => "الكمية يجب أن تكون رقم.", + "quantity_required" => "الكمية مطلوبة.", + "receiving_quantity" => "الكمية المستلمة", + "remove_image" => "ازالة الصورة", + "reorder_level" => "نقطة إعادة الطلب", + "reorder_level_number" => "نقطة إعادة الطلب يجب أن تكون رقم.", + "reorder_level_required" => "نقطة إعادة الطلب مطلوبة.", + "retrive_item_info" => "الحصول على بيانات الصنف", + "sales_tax_1" => "ضريبة المبيعات", + "sales_tax_2" => "ضريبة المبيعات 2", + "search_attributes" => "بحث الحقول المخصصة", + "select_image" => "اختار صورة", + "serialized_items" => "أصناف مسلسلة", + "standard" => "اساسي", + "stock" => "مخزن", + "stock_location" => "مكان المخزون", + "stock_type" => "نوع المخزن", + "successful_adding" => "لقد تم إضافة صنف بنجاح", + "successful_bulk_edit" => "لقد تم تحديث بيانات صنف/أصناف بنجاح", + "successful_deleted" => "لقد تم الحذف بنجاح", + "successful_updating" => "لقد تم تحديث بيانات صنف بنجاح", + "supplier" => "المورد", + "tax_1" => "الضريبة 1", + "tax_2" => "الضريبة 2", + "tax_3" => "", + "tax_category" => "الفئة الضريبية", + "tax_percent" => "نسبة الضريبة", + "tax_percent_number" => "نسبة الضريبة يجب ان تكون رقم", + "tax_percent_required" => "نسبة الضريبة مطلوبة.", + "tax_percents" => "نسبة/نسب الضريبة", + "temp" => "مؤقت", + "type" => "نوع الصنف", + "unit_price" => "السعر", + "unit_price_number" => "السعر يجب أن يكون رقم.", + "unit_price_required" => "السعر مطلوب.", + "upc_database" => "UPC قاعدة بيانات", + "update" => "تحديث بيانات صنف", + "use_inventory_menu" => "استخدام تحديث المخزن", ]; diff --git a/app/Language/ar-EG/Login.php b/app/Language/ar-EG/Login.php index 36e42b244..b9f8221d4 100644 --- a/app/Language/ar-EG/Login.php +++ b/app/Language/ar-EG/Login.php @@ -1,15 +1,15 @@ "أنا لست بوت.", - "go" => "البدء", - "invalid_gcaptcha" => "يرجى التأكيد على أنك لست روبوتا.", - "invalid_installation" => "يوجد مشكلة بالتنصيب, الرجاء التحقق من ملف php.ini.", - "invalid_username_and_password" => "اسم مستخدم/كلمة سر غير صحيح.", - "login" => "دخول", - "logout" => "تسجيل خروج", - "migration_needed" => "سيبدأ ترحيل قاعدة البيانات إلى{0} بعد تسجيل الدخول.", - "password" => "كلمة السر", - "required_username" => "", - "username" => "اسم المستخدم", - "welcome" => "مرحباً بك في{0}!", + "gcaptcha" => "أنا لست بوت.", + "go" => "البدء", + "invalid_gcaptcha" => "يرجى التأكيد على أنك لست روبوتا.", + "invalid_installation" => "يوجد مشكلة بالتنصيب, الرجاء التحقق من ملف php.ini.", + "invalid_username_and_password" => "اسم مستخدم/كلمة سر غير صحيح.", + "login" => "دخول", + "logout" => "تسجيل خروج", + "migration_needed" => "سيبدأ ترحيل قاعدة البيانات إلى{0} بعد تسجيل الدخول.", + "password" => "كلمة السر", + "required_username" => "", + "username" => "اسم المستخدم", + "welcome" => "مرحباً بك في{0}!", ]; diff --git a/app/Language/ar-EG/Messages.php b/app/Language/ar-EG/Messages.php index f297a0638..3aa171e82 100644 --- a/app/Language/ar-EG/Messages.php +++ b/app/Language/ar-EG/Messages.php @@ -1,15 +1,15 @@ "الإسم الأول", - "last_name" => "الأسم الأخير", - "message" => "الرسالة", - "message_placeholder" => "رسالتك هنا...", - "message_required" => "الرسالة مطلوبة", - "multiple_phones" => "فى حالة إرسال الرسالة لأكثر من شخص قم بفصل الأرقام بعلامة الفاصلة", - "phone" => "رقم المحمول", - "phone_number_required" => "رقم المحمول مطلوب", - "phone_placeholder" => "رقم/أرقام المحمول هنا...", - "sms_send" => "إرسال SMS", - "successfully_sent" => "تم إرسال الرسالة بنجاح إلى: ", - "unsuccessfully_sent" => "لم يتم إرسال الرسالة بنجاح إلى: ", + "first_name" => "الإسم الأول", + "last_name" => "الأسم الأخير", + "message" => "الرسالة", + "message_placeholder" => "رسالتك هنا...", + "message_required" => "الرسالة مطلوبة", + "multiple_phones" => "فى حالة إرسال الرسالة لأكثر من شخص قم بفصل الأرقام بعلامة الفاصلة", + "phone" => "رقم المحمول", + "phone_number_required" => "رقم المحمول مطلوب", + "phone_placeholder" => "رقم/أرقام المحمول هنا...", + "sms_send" => "إرسال SMS", + "successfully_sent" => "تم إرسال الرسالة بنجاح إلى: ", + "unsuccessfully_sent" => "لم يتم إرسال الرسالة بنجاح إلى: ", ]; diff --git a/app/Language/ar-EG/Module.php b/app/Language/ar-EG/Module.php index 073d25872..1d4483061 100644 --- a/app/Language/ar-EG/Module.php +++ b/app/Language/ar-EG/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "ميزات/مميزات", - "attributes_desc" => "إضافة، تعديل، حذف، وبحث بالميزات.", - "both" => "الاثنين", - "cashups" => "الصندوق النقدي", - "cashups_desc" => "إضافة، تعديل، حذف، وبحث بالصندوق النقدي.", - "config" => "إعدادات الشركة", - "config_desc" => "تغيير إعدادات الشركة.", - "customers" => "العملاء", - "customers_desc" => "إضافة، تحديث ، بحث و حذف العملاء.", - "employees" => "الموظفين", - "employees_desc" => "إضافة، تحديث ، بحث و حذف الموظفين.", - "expenses" => "المصاريف", - "expenses_categories" => "فئات المصاريف", - "expenses_categories_desc" => "إضافة، تحديث ، بحث و حذف فئات المصاريف.", - "expenses_desc" => "إضافة، تحديث ، بحث و حذف مصاريف.", - "giftcards" => "بطاقات الهدايا", - "giftcards_desc" => "إضافة، تحديث ، بحث و حذف بطاقات الهدايا.", - "home" => "الرئيسية", - "home_desc" => "اظهار الائحة الرئيسية.", - "item_kits" => "مجموعات الأصناف", - "item_kits_desc" => "إضافة، تحديث ، بحث و حذف مجموعات الأصناف.", - "items" => "الأصناف", - "items_desc" => "إضافة، تحديث ، بحث و حذف الأصناف.", - "messages" => "الرسائل", - "messages_desc" => "إرسال رسائل للعملاء ، الموردين او الموظفين.", - "migrate" => "النقل", - "migrate_desc" => "تحديث قاعدة البيانات.", - "office" => "المكتب", - "office_desc" => "اظهار الائحة المكتبية.", - "receivings" => "استلام الأصناف", - "receivings_desc" => "معالجة أوامر الشراء و استلام الأصناف.", - "reports" => "التقارير", - "reports_desc" => "عرض وتوليد التقارير.", - "sales" => "المبيعات", - "sales_desc" => "معالجة المبيعات و المرتجعات.", - "suppliers" => "الموردين", - "suppliers_desc" => "إضافة، تحديث ، بحث و حذف مجموعات الموردين.", - "taxes" => "الضرائب", - "taxes_desc" => "اعدادات ضريبة المبيعات.", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "ميزات/مميزات", + "attributes_desc" => "إضافة، تعديل، حذف، وبحث بالميزات.", + "both" => "الاثنين", + "cashups" => "الصندوق النقدي", + "cashups_desc" => "إضافة، تعديل، حذف، وبحث بالصندوق النقدي.", + "config" => "إعدادات الشركة", + "config_desc" => "تغيير إعدادات الشركة.", + "customers" => "العملاء", + "customers_desc" => "إضافة، تحديث ، بحث و حذف العملاء.", + "employees" => "الموظفين", + "employees_desc" => "إضافة، تحديث ، بحث و حذف الموظفين.", + "expenses" => "المصاريف", + "expenses_categories" => "فئات المصاريف", + "expenses_categories_desc" => "إضافة، تحديث ، بحث و حذف فئات المصاريف.", + "expenses_desc" => "إضافة، تحديث ، بحث و حذف مصاريف.", + "giftcards" => "بطاقات الهدايا", + "giftcards_desc" => "إضافة، تحديث ، بحث و حذف بطاقات الهدايا.", + "home" => "الرئيسية", + "home_desc" => "اظهار الائحة الرئيسية.", + "item_kits" => "مجموعات الأصناف", + "item_kits_desc" => "إضافة، تحديث ، بحث و حذف مجموعات الأصناف.", + "items" => "الأصناف", + "items_desc" => "إضافة، تحديث ، بحث و حذف الأصناف.", + "messages" => "الرسائل", + "messages_desc" => "إرسال رسائل للعملاء ، الموردين او الموظفين.", + "migrate" => "النقل", + "migrate_desc" => "تحديث قاعدة البيانات.", + "office" => "المكتب", + "office_desc" => "اظهار الائحة المكتبية.", + "receivings" => "استلام الأصناف", + "receivings_desc" => "معالجة أوامر الشراء و استلام الأصناف.", + "reports" => "التقارير", + "reports_desc" => "عرض وتوليد التقارير.", + "sales" => "المبيعات", + "sales_desc" => "معالجة المبيعات و المرتجعات.", + "suppliers" => "الموردين", + "suppliers_desc" => "إضافة، تحديث ، بحث و حذف مجموعات الموردين.", + "taxes" => "الضرائب", + "taxes_desc" => "اعدادات ضريبة المبيعات.", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/ar-EG/Receivings.php b/app/Language/ar-EG/Receivings.php index d97a17538..9eb865550 100644 --- a/app/Language/ar-EG/Receivings.php +++ b/app/Language/ar-EG/Receivings.php @@ -1,58 +1,58 @@ "", - "cancel_receiving" => "إلغاء", - "cannot_be_deleted" => "لايمكن حذف الإستلام/الإستلامات.", - "comments" => "تعليقات", - "complete_receiving" => "إنهاء", - "confirm_cancel_receiving" => "هل أنت متاكد أنك تريد إلغاء هذا الإستلام؟ سيتم حذف كل الأصناف.", - "confirm_delete" => "هل أنت متاكد أنك تريد حذف هذا الإستلام؟ سيتم حذف كل الأصناف. لايمكن التراجع بعد الحذف.", - "confirm_finish_receiving" => "هل أنت متاكد أنك تريد تنفيذ هذا الإستلام؟ لايمكن التراجع بعد الإرسال.", - "confirm_restore" => "", - "cost" => "التكلفة", - "daily" => "", - "date" => "تاريخ الإستلام", - "date_required" => "يجب إدخال تاريخ صحيح.", - "date_type" => "التاريخ مطلوب.", - "delete_entire_sale" => "حذف عملية البيع بالكامل", - "discount" => "نسبة الخصم", - "edit" => "تحرير", - "edit_sale" => "تحرير إستلام", - "employee" => "الموظف", - "error_editing_item" => "خطاء فى تحرير الصنف.", - "error_requisition" => "غير قادر على تحريك الصنف من و إلى نفس المكان.", - "find_or_scan_item" => "بحث/مسح باركود صنف", - "find_or_scan_item_or_receipt" => "بحث/مسح باركود صنف أو إيصال", - "id" => "كود الإستلام", - "item_name" => "اسم الصنف", - "mode" => "وضع الإستلام", - "new_supplier" => "مورد جديد", - "one_or_multiple" => "إستلام/إستلامات", - "print_after_sale" => "طباعة بعد الإستلام", - "quantity" => "الكمية.", - "receipt" => "إيصال إستلام", - "receipt_number" => "كود الإستلام", - "receiving" => "إستلام", - "reference" => "رقم المرجع", - "register" => "استلام الأصناف", - "requisition" => "طلب شراء", - "return" => "إرتجاع لمورد", - "select_supplier" => "اختار المورد (اختيارى)", - "ship_pack" => "حزمة توصيل", - "start_typing_supplier_name" => "ابداء بكتابة اسم المورد....", - "stock" => "المخزون", - "stock_destination" => "المخزون المحول له", - "stock_locaiton" => "مكان المخزون", - "stock_source" => "مصدر المخزون", - "successfully_deleted" => "لقد تم الحذف", - "successfully_updated" => "لقد تم التحديث", - "supplier" => "المورد", - "supplier_address" => "العنوان", - "supplier_email" => "البريد الإلكتروني", - "supplier_location" => "المكان", - "total" => "الإجمالى", - "transaction_failed" => "حركات الإستلام فشلت.", - "unable_to_add_item" => "غير قادر على إضافة صنف للإستلام.", - "unsuccessfully_updated" => "لم يتم تحديث الإستلام بنجاح.", - "update" => "تحديث", + "amount_due" => "", + "cancel_receiving" => "إلغاء", + "cannot_be_deleted" => "لايمكن حذف الإستلام/الإستلامات.", + "comments" => "تعليقات", + "complete_receiving" => "إنهاء", + "confirm_cancel_receiving" => "هل أنت متاكد أنك تريد إلغاء هذا الإستلام؟ سيتم حذف كل الأصناف.", + "confirm_delete" => "هل أنت متاكد أنك تريد حذف هذا الإستلام؟ سيتم حذف كل الأصناف. لايمكن التراجع بعد الحذف.", + "confirm_finish_receiving" => "هل أنت متاكد أنك تريد تنفيذ هذا الإستلام؟ لايمكن التراجع بعد الإرسال.", + "confirm_restore" => "", + "cost" => "التكلفة", + "daily" => "", + "date" => "تاريخ الإستلام", + "date_required" => "يجب إدخال تاريخ صحيح.", + "date_type" => "التاريخ مطلوب.", + "delete_entire_sale" => "حذف عملية البيع بالكامل", + "discount" => "نسبة الخصم", + "edit" => "تحرير", + "edit_sale" => "تحرير إستلام", + "employee" => "الموظف", + "error_editing_item" => "خطاء فى تحرير الصنف.", + "error_requisition" => "غير قادر على تحريك الصنف من و إلى نفس المكان.", + "find_or_scan_item" => "بحث/مسح باركود صنف", + "find_or_scan_item_or_receipt" => "بحث/مسح باركود صنف أو إيصال", + "id" => "كود الإستلام", + "item_name" => "اسم الصنف", + "mode" => "وضع الإستلام", + "new_supplier" => "مورد جديد", + "one_or_multiple" => "إستلام/إستلامات", + "print_after_sale" => "طباعة بعد الإستلام", + "quantity" => "الكمية.", + "receipt" => "إيصال إستلام", + "receipt_number" => "كود الإستلام", + "receiving" => "إستلام", + "reference" => "رقم المرجع", + "register" => "استلام الأصناف", + "requisition" => "طلب شراء", + "return" => "إرتجاع لمورد", + "select_supplier" => "اختار المورد (اختيارى)", + "ship_pack" => "حزمة توصيل", + "start_typing_supplier_name" => "ابداء بكتابة اسم المورد....", + "stock" => "المخزون", + "stock_destination" => "المخزون المحول له", + "stock_locaiton" => "مكان المخزون", + "stock_source" => "مصدر المخزون", + "successfully_deleted" => "لقد تم الحذف", + "successfully_updated" => "لقد تم التحديث", + "supplier" => "المورد", + "supplier_address" => "العنوان", + "supplier_email" => "البريد الإلكتروني", + "supplier_location" => "المكان", + "total" => "الإجمالى", + "transaction_failed" => "حركات الإستلام فشلت.", + "unable_to_add_item" => "غير قادر على إضافة صنف للإستلام.", + "unsuccessfully_updated" => "لم يتم تحديث الإستلام بنجاح.", + "update" => "تحديث", ]; diff --git a/app/Language/ar-EG/Reports.php b/app/Language/ar-EG/Reports.php index 15d8cb9e2..84e8364a6 100644 --- a/app/Language/ar-EG/Reports.php +++ b/app/Language/ar-EG/Reports.php @@ -1,148 +1,148 @@ "الكل", - "authority" => "السلطة", - "canceled" => "ملغى", - "categories" => "التصنيفات", - "categories_summary_report" => "تقرير ملخص التصنيفات", - "category" => "تصنيف", - "code_canceled" => "كود العمليات الملغية", - "code_invoice" => "كود الفواتير الرسمية", - "code_pos" => "نقطة بيع", - "code_quote" => "كود عروض الاسعار", - "code_return" => "كود عمليات المرتجع", - "code_type" => "النوع", - "code_work_order" => "طلب عمل", - "comments" => "التعليقات", - "commission" => "", - "complete" => "عمليات البيع والمرتجع المكتملة", - "completed_sales" => "المبيعات المكتملة", - "confirm_delete" => "هل انت متاكد من مسح البيانات المحددة؟", - "confirm_restore" => "هل انت متاكد من استعادة البيانات المحددة؟", - "cost" => "سعر التكلفة", - "cost_price" => "سعر التكلفة", - "count" => "عدد", - "customer" => "عميل", - "customers" => "عملاء", - "customers_summary_report" => "تقرير ملخص العملاء", - "date" => "التاريخ", - "date_range" => "الفترة الزمنية", - "description" => "الوصف", - "detailed_receivings_report" => "تقرير مفصل لاستلام البضاعة", - "detailed_receivings_report_input" => "", - "detailed_reports" => "التقارير التفصيلية", - "detailed_requisition_report" => "تقرير مفصل لطلبات الشراء", - "detailed_sales_report" => "تقرير مفصل للمبيعات", - "discount" => "الخصم", - "discount_fixed" => "حسم ثابت", - "discount_percent" => "نسبة الخصم", - "discount_type" => "نوع الحسم", - "discounts" => "الخصومات", - "discounts_summary_report" => "تقرير ملخص الخصومات", - "earned" => "النقاط المحصلة", - "employee" => "موظف", - "employees" => "الموظفين", - "employees_summary_report" => "تقرير ملخص الموظفين", - "expenses" => "المصاريف", - "expenses_amount" => "القيمة", - "expenses_categories" => "فئات المصاريف", - "expenses_categories_summary_report" => "تقرير المصاريف حسب الفئات", - "expenses_category" => "الفئة", - "expenses_payment_amount" => "", - "expenses_tax_amount" => "الضريبة", - "expenses_total_amount" => "المبلغ الإجمالي", - "expenses_total_tax_amount" => "الضريبة الإجمالية", - "graphical_reports" => "تقارير رسومية", - "inventory" => "المخزن", - "inventory_low" => "نواقص المخزون", - "inventory_low_report" => "تقرير نواقص المخزون", - "inventory_reports" => "تقارير المخزن", - "inventory_summary" => "ملخص المخزن", - "inventory_summary_report" => "تقرير ملخص المخزن", - "item" => "صنف", - "item_count" => "تصفية عداد الصنف", - "item_name" => "اسم الصنف", - "item_number" => "باركود", - "items" => "الأصناف", - "items_purchased" => "الأصناف مشتراه", - "items_received" => "الأصناف مستلمة", - "items_summary_report" => "تقرير ملخص الأصناف", - "jurisdiction" => "الاختصاص القضائي", - "low_inventory" => "النواقص", - "low_inventory_report" => "تقرير نواقص المخزون", - "low_sell_quantity" => "كميات حسب الصنف الاولي", - "more_than_zero" => "أكثر من صفر", - "name" => "الاسم", - "no_reports_to_display" => "لايوجد أصناف لعرضها.", - "payment_type" => "طريقة الدفع", - "payments" => "المدفوعات", - "payments_summary_report" => "ملخص المدفوعات", - "profit" => "الربح", - "quantity" => "الكمية", - "quantity_purchased" => "المستلم", - "quotes" => "عروض اسعار", - "received_by" => "مستلمة بواسطة", - "receiving_id" => "كود الاستلام", - "receiving_type" => "نوع الاستلام", - "receivings" => "استلام البضاعة", - "reorder_level" => "نقطة اعادة الطلب", - "report" => "تقرير", - "report_input" => "مدخلات التقرير", - "reports" => "تقارير", - "requisition" => "طلب الشراء", - "requisition_by" => "القائم بطلب الشراء", - "requisition_id" => "كود طلب الشراء", - "requisition_item" => "الصنف", - "requisition_item_quantity" => "الكمية المطلوبة", - "requisition_related_item" => "الصنف", - "requisition_related_item_total_quantity" => "إجمالى الكمية", - "requisition_related_item_unit_quantity" => "الكمية", - "requisitions" => "طلبات الشراء", - "returns" => "المرتجعات", - "revenue" => "العائد", - "sale_id" => "كود عملية البيع", - "sale_type" => "طريقة البيع", - "sales" => "بيع", - "sales_amount" => "كمية المبيعات", - "sales_summary_report" => "تقرير ملخص المبيعات", - "sales_taxes" => "ضرائب المبيعات", - "sales_taxes_summary_report" => "تقرير ملخص ضرائب المبيعات", - "serial_number" => "مسلسل", - "service_charge" => "", - "sold_by" => "البائع", - "sold_items" => "", - "sold_to" => "مباع الى", - "stock_location" => "مكان المخزون", - "sub_total_value" => "المجموع الفرعى", - "subtotal" => "المجموع الفرعى", - "summary_reports" => "تقارير ملخصة", - "supplied_by" => "مورده بواسطة", - "supplier" => "المورد", - "suppliers" => "الموردين", - "suppliers_summary_report" => "تقرير ملخص الموردين", - "tax" => "الضريبة", - "tax_category" => "الفئة الضريبية", - "tax_name" => "اسم الضريبه", - "tax_percent" => "نسبة الضريبة", - "tax_rate" => "معدل الضريبة", - "taxes" => "الضرائب", - "taxes_summary_report" => "تقرير ملخص الضرائب", - "total" => "الإجمالى", - "total_inventory_value" => "إجمالى قيمة المخزن", - "total_low_sell_quantity" => "مجموع الكميات حسب الصنف الاولي", - "total_quantity" => "الكمية/العدد", - "total_retail" => "قيمة المبيع", - "trans_amount" => "قيمة العملية التجارية", - "trans_due" => "مستحق", - "trans_group" => "مجموعة العمليات التجارية", - "trans_nopay_sales" => "المبيعات الغير مسدده", - "trans_payments" => "المدفوعات", - "trans_refunded" => "المرتجع", - "trans_sales" => "المبيعات", - "trans_type" => "نوع العملية التجارية", - "type" => "النوع", - "unit_price" => "السعر", - "used" => "النقاط المستخدمة", - "work_orders" => "طلبات عمل", - "zero_and_less" => "صفر و أقل", + "all" => "الكل", + "authority" => "السلطة", + "canceled" => "ملغى", + "categories" => "التصنيفات", + "categories_summary_report" => "تقرير ملخص التصنيفات", + "category" => "تصنيف", + "code_canceled" => "كود العمليات الملغية", + "code_invoice" => "كود الفواتير الرسمية", + "code_pos" => "نقطة بيع", + "code_quote" => "كود عروض الاسعار", + "code_return" => "كود عمليات المرتجع", + "code_type" => "النوع", + "code_work_order" => "طلب عمل", + "comments" => "التعليقات", + "commission" => "", + "complete" => "عمليات البيع والمرتجع المكتملة", + "completed_sales" => "المبيعات المكتملة", + "confirm_delete" => "هل انت متاكد من مسح البيانات المحددة؟", + "confirm_restore" => "هل انت متاكد من استعادة البيانات المحددة؟", + "cost" => "سعر التكلفة", + "cost_price" => "سعر التكلفة", + "count" => "عدد", + "customer" => "عميل", + "customers" => "عملاء", + "customers_summary_report" => "تقرير ملخص العملاء", + "date" => "التاريخ", + "date_range" => "الفترة الزمنية", + "description" => "الوصف", + "detailed_receivings_report" => "تقرير مفصل لاستلام البضاعة", + "detailed_receivings_report_input" => "", + "detailed_reports" => "التقارير التفصيلية", + "detailed_requisition_report" => "تقرير مفصل لطلبات الشراء", + "detailed_sales_report" => "تقرير مفصل للمبيعات", + "discount" => "الخصم", + "discount_fixed" => "حسم ثابت", + "discount_percent" => "نسبة الخصم", + "discount_type" => "نوع الحسم", + "discounts" => "الخصومات", + "discounts_summary_report" => "تقرير ملخص الخصومات", + "earned" => "النقاط المحصلة", + "employee" => "موظف", + "employees" => "الموظفين", + "employees_summary_report" => "تقرير ملخص الموظفين", + "expenses" => "المصاريف", + "expenses_amount" => "القيمة", + "expenses_categories" => "فئات المصاريف", + "expenses_categories_summary_report" => "تقرير المصاريف حسب الفئات", + "expenses_category" => "الفئة", + "expenses_payment_amount" => "", + "expenses_tax_amount" => "الضريبة", + "expenses_total_amount" => "المبلغ الإجمالي", + "expenses_total_tax_amount" => "الضريبة الإجمالية", + "graphical_reports" => "تقارير رسومية", + "inventory" => "المخزن", + "inventory_low" => "نواقص المخزون", + "inventory_low_report" => "تقرير نواقص المخزون", + "inventory_reports" => "تقارير المخزن", + "inventory_summary" => "ملخص المخزن", + "inventory_summary_report" => "تقرير ملخص المخزن", + "item" => "صنف", + "item_count" => "تصفية عداد الصنف", + "item_name" => "اسم الصنف", + "item_number" => "باركود", + "items" => "الأصناف", + "items_purchased" => "الأصناف مشتراه", + "items_received" => "الأصناف مستلمة", + "items_summary_report" => "تقرير ملخص الأصناف", + "jurisdiction" => "الاختصاص القضائي", + "low_inventory" => "النواقص", + "low_inventory_report" => "تقرير نواقص المخزون", + "low_sell_quantity" => "كميات حسب الصنف الاولي", + "more_than_zero" => "أكثر من صفر", + "name" => "الاسم", + "no_reports_to_display" => "لايوجد أصناف لعرضها.", + "payment_type" => "طريقة الدفع", + "payments" => "المدفوعات", + "payments_summary_report" => "ملخص المدفوعات", + "profit" => "الربح", + "quantity" => "الكمية", + "quantity_purchased" => "المستلم", + "quotes" => "عروض اسعار", + "received_by" => "مستلمة بواسطة", + "receiving_id" => "كود الاستلام", + "receiving_type" => "نوع الاستلام", + "receivings" => "استلام البضاعة", + "reorder_level" => "نقطة اعادة الطلب", + "report" => "تقرير", + "report_input" => "مدخلات التقرير", + "reports" => "تقارير", + "requisition" => "طلب الشراء", + "requisition_by" => "القائم بطلب الشراء", + "requisition_id" => "كود طلب الشراء", + "requisition_item" => "الصنف", + "requisition_item_quantity" => "الكمية المطلوبة", + "requisition_related_item" => "الصنف", + "requisition_related_item_total_quantity" => "إجمالى الكمية", + "requisition_related_item_unit_quantity" => "الكمية", + "requisitions" => "طلبات الشراء", + "returns" => "المرتجعات", + "revenue" => "العائد", + "sale_id" => "كود عملية البيع", + "sale_type" => "طريقة البيع", + "sales" => "بيع", + "sales_amount" => "كمية المبيعات", + "sales_summary_report" => "تقرير ملخص المبيعات", + "sales_taxes" => "ضرائب المبيعات", + "sales_taxes_summary_report" => "تقرير ملخص ضرائب المبيعات", + "serial_number" => "مسلسل", + "service_charge" => "", + "sold_by" => "البائع", + "sold_items" => "", + "sold_to" => "مباع الى", + "stock_location" => "مكان المخزون", + "sub_total_value" => "المجموع الفرعى", + "subtotal" => "المجموع الفرعى", + "summary_reports" => "تقارير ملخصة", + "supplied_by" => "مورده بواسطة", + "supplier" => "المورد", + "suppliers" => "الموردين", + "suppliers_summary_report" => "تقرير ملخص الموردين", + "tax" => "الضريبة", + "tax_category" => "الفئة الضريبية", + "tax_name" => "اسم الضريبه", + "tax_percent" => "نسبة الضريبة", + "tax_rate" => "معدل الضريبة", + "taxes" => "الضرائب", + "taxes_summary_report" => "تقرير ملخص الضرائب", + "total" => "الإجمالى", + "total_inventory_value" => "إجمالى قيمة المخزن", + "total_low_sell_quantity" => "مجموع الكميات حسب الصنف الاولي", + "total_quantity" => "الكمية/العدد", + "total_retail" => "قيمة المبيع", + "trans_amount" => "قيمة العملية التجارية", + "trans_due" => "مستحق", + "trans_group" => "مجموعة العمليات التجارية", + "trans_nopay_sales" => "المبيعات الغير مسدده", + "trans_payments" => "المدفوعات", + "trans_refunded" => "المرتجع", + "trans_sales" => "المبيعات", + "trans_type" => "نوع العملية التجارية", + "type" => "النوع", + "unit_price" => "السعر", + "used" => "النقاط المستخدمة", + "work_orders" => "طلبات عمل", + "zero_and_less" => "صفر و أقل", ]; diff --git a/app/Language/ar-EG/Sales.php b/app/Language/ar-EG/Sales.php index dada024a7..34b29797c 100644 --- a/app/Language/ar-EG/Sales.php +++ b/app/Language/ar-EG/Sales.php @@ -1,224 +1,224 @@ "النقاط المتاحة", - "rewards_package" => "فئة المكافئة", - "rewards_remaining_balance" => "رصيد النقاط المتبقي هو ", - "account_number" => "حساب", - "add_payment" => "إضافة دفع", - "amount_due" => "المبلغ المطلوب", - "amount_tendered" => "المبلغ المدفوع", - "authorized_signature" => "توقيع معتمد", - "cancel_sale" => "الغاء عملية البيع", - "cash" => "نقدى", - "cash_1" => "", - "cash_2" => "", - "cash_3" => "", - "cash_4" => "", - "cash_adjustment" => "تعديل الصندوق", - "cash_deposit" => "ايداع نقدي", - "cash_filter" => "نقدى", - "change_due" => "الباقى", - "change_price" => "تغيير سعر البيع", - "check" => "شيك", - "check_balance" => "تذكير بموعد الشيك", - "check_filter" => "شيك", - "close" => "", - "comment" => "تعليق", - "comments" => "تعليقات", - "company_name" => "", - "complete" => "", - "complete_sale" => "إتمام البيع", - "confirm_cancel_sale" => "هل أنت متأكد من الغاء عملية البيع ؟ سيتم إزالة كل الأصناف.", - "confirm_delete" => "هل تريد حذف عمليات البيع المختارة؟", - "confirm_restore" => "هل انت متاكد من استعادة عملية البيع؟", - "credit" => "بطاقة إئتمانية", - "credit_deposit" => "ايداع ببطاقة ائتمان", - "credit_filter" => "بطاقة بنكية", - "current_table" => "", - "customer" => "العميل", - "customer_address" => "العنوان", - "customer_discount" => "الخصم", - "customer_email" => "البريد الإلكترونى", - "customer_location" => "المكان", - "customer_mailchimp_status" => "حالة بريد ميل تشيمب", - "customer_optional" => "(مطلوب للدفعات المستحقة)", - "customer_required" => "(اجباري)", - "customer_total" => "المجموع", - "customer_total_spent" => "", - "daily_sales" => "", - "date" => "تاريخ البيع", - "date_range" => "الفترة الزمنية", - "date_required" => "يجب إدخال تاريخ صحيح.", - "date_type" => "التاريخ مطلوب.", - "debit" => "بطاقة خصم", - "debit_filter" => "", - "delete" => "اسمح بالمسح", - "delete_confirmation" => "هل أنت متأكد أنك تريد حذف عملية البيع هذه؟ لايمكن التراجع بعد الحذف.", - "delete_entire_sale" => "حذف عملية البيع بالكامل", - "delete_successful" => "لقد تم حذف عملية البيع بنجاح.", - "delete_unsuccessful" => "لقد فشل حذف عملية البيع.", - "description_abbrv" => "الوصف.", - "discard" => "الغاء", - "discard_quote" => "", - "discount" => "خصم", - "discount_included" => "% خصم", - "discount_short" => "%", - "due" => "مستحق", - "due_filter" => "مستحق", - "edit" => "تحرير", - "edit_item" => "تحرير صنف", - "edit_sale" => "تحرير عملية بيع", - "email_receipt" => "إرسال الايصال بالبريد الالكترونى", - "employee" => "الموظف", - "entry" => "ادخال", - "error_editing_item" => "خطاء فى تحرير الصنف", - "find_or_scan_item" => "بحث/مسح باركود صنف", - "find_or_scan_item_or_receipt" => "بحث/مسح باركود صنف أو ايصال", - "giftcard" => "بطاقة هدية", - "giftcard_balance" => "رصيد بطاقة الهدية", - "giftcard_filter" => "", - "giftcard_number" => "رقم بطاقة الهدية", - "group_by_category" => "تصفية حسب الفئة", - "group_by_type" => "تجميع حسب النوع", - "hsn" => "رمز نظام منسق", - "id" => "كود عملية البيع", - "include_prices" => "يشمل الاسعار؟", - "invoice" => "فاتورة", - "invoice_confirm" => "هذه الفاتورة سوف ترسل إلى", - "invoice_enable" => "إنشاء فاتورة", - "invoice_filter" => "الفواتير", - "invoice_no_email" => "هذا العميل ليس لدية بريد الكترونى صالح.", - "invoice_number" => "فاتورة رقم #", - "invoice_number_duplicate" => "من فضلك أدخل رقم فاتورة غير مكرر.", - "invoice_sent" => "تم إرسال الفاتورة إلى", - "invoice_total" => "إجمالي الفاتورة", - "invoice_type_custom_invoice" => "فاتورة مخصصة (custom_invoice.php)", - "invoice_type_custom_tax_invoice" => "الفاتورة الضريبية المخصصة (custom_tax_invoice.php)", - "invoice_type_invoice" => "الفاتورة (invoice.php)", - "invoice_type_tax_invoice" => "الفاتورة الضريبية (tax_invoice.php)", - "invoice_unsent" => "فشل إرسال الفاتورة إلى", - "invoice_update" => "إعادة العد", - "item_insufficient_of_stock" => "لايوجد مخزون كافى من الصنف.", - "item_name" => "اسم الصنف", - "item_number" => "صنف #", - "item_out_of_stock" => "لايوجد مخزون من الصنف.", - "key_browser" => "اختصارات مفيده", - "key_cancel" => "الغاء عملية البيع/فاتوره/عرض السعار", - "key_customer_search" => "بحث عن عميل", - "key_finish_quote" => "انهاء عملية البيع/الفاتورة من دون الدفع", - "key_finish_sale" => "اضافة دفع نقدي كمل واتمام عملية البيع", - "key_full" => "الإظهار في صفحه كامله", - "key_function" => "Function", - "key_help" => "اختصارات", - "key_help_modal" => "إظهار الاختصارات", - "key_in" => "تكبير الصفحه", - "key_item_search" => "بحث حسب الصنف", - "key_out" => "تصغير الصفحه", - "key_payment" => "اضافة دفعه", - "key_print" => "طباعة الصفحة الحالية", - "key_restore" => "إعادة ضبط اعدادات الصفحه", - "key_search" => "البحث في التقارير", - "key_suspend" => "حفط عملية البيع", - "key_suspended" => "إظهار عمليات البيع المحفظه", - "key_system" => "اختصارات متاحه", - "key_tendered" => "تعديل المبلغ المدفوع", - "key_title" => "اختصارات صفحة المبيعات", - "mc" => "", - "mode" => "وضع التسجيل", - "must_enter_numeric" => "يجب إدخال رقم للمبلغ الفعلى المدفوع.", - "must_enter_numeric_giftcard" => "رقم بطاقة الهدية يجب أن يكون رقم.", - "new_customer" => "عميل جديد", - "new_item" => "صنف جديد", - "no_description" => "بدون وصف", - "no_filter" => "الكل", - "no_items_in_cart" => "لايوجد أصناف فى السلة.", - "no_sales_to_display" => "لاتوجد عمليات بيع لعرضها.", - "none_selected" => "لم تقم بإختيار أى عمليات بيع لحذفها.", - "nontaxed_ind" => " ", - "not_authorized" => "هذه العملية لا يمكن فعلها لعدم تخويلك.", - "one_or_multiple" => "عمليات بيع", - "payment" => "طريقة الدفع", - "payment_amount" => "المبلغ", - "payment_not_cover_total" => "المبلغ المدفوع لايغطى المبلغ الإجمالى.", - "payment_type" => "طريقة", - "payments" => "", - "payments_total" => "إجمالى المدفوعات", - "price" => "السعر", - "print_after_sale" => "اطبع بعد عملية البيع", - "quantity" => "الكمية", - "quantity_less_than_reorder_level" => "تحذير: الكمية/العدد المطلوب غير متوفر لهذا الصنف.", - "quantity_less_than_zero" => "تحذير! الكمية المطلوبة غير كافية، بإمكانك إتمام عملية البيع ، لكن تحقق من مخزنك.", - "quantity_of_items" => "عدد ال {0} من الاصناف", - "quote" => "عرض اسعار", - "quote_number" => "رقم عرض الاسعار", - "quote_number_duplicate" => "رقم عرض الاسعار يجب ان يكون فريد.", - "quote_sent" => "عرض الاسعار ارسل الى", - "quote_unsent" => "لم يتم ارسال عرض الاسعار الى", - "receipt" => "عملية بيع #", - "receipt_no_email" => "هذا العميل ليس له اي بريد الكتروني صحيح.", - "receipt_number" => "إيصال بيع", - "receipt_sent" => "تم إرسال الإيصال إلى", - "receipt_unsent" => "فشل إرسال الإيصال إلى", - "refund" => "نوع/سبب الاسترجاع", - "register" => "مسجل المبيعات", - "remove_customer" => "حذف عميل", - "remove_discount" => "", - "return" => "إرتجاع", - "rewards" => "نقاط المكافئة", - "rewards_balance" => "رصيد نقاط المكافئة", - "sale" => "بيع", - "sale_by_invoice" => "البيع بفاتورة رسمية", - "sale_for_customer" => "العميل:", - "sale_time" => "الوقت", - "sales_tax" => "ضريبة البيع", - "sales_total" => "", - "select_customer" => "اختيار عميل (اختياري)", - "send_invoice" => "إرسال الفاتورة", - "send_quote" => "ارسال عرض الاسعار", - "send_receipt" => "إرسال إيصال", - "send_work_order" => "ارسال طلب عمل", - "serial" => "مسلسل", - "service_charge" => "", - "show_due" => "", - "show_invoice" => "عرض الفاتورة", - "show_receipt" => "عرض الإيصال", - "start_typing_customer_name" => "ابداء بكتابة اسم العميل...", - "start_typing_item_name" => "ابداء بكتابة اسم أو مسح باركود الصنف...", - "stock" => "المخزن", - "stock_location" => "مكان المخزون", - "sub_total" => "المجموع الفرعي", - "successfully_deleted" => "لقد تم الحذف بنجاح", - "successfully_restored" => "لقد تمت عملية الاستعادة بنجاح", - "successfully_suspended_sale" => "لقد تم تعليق عملية البيع بنجاح.", - "successfully_updated" => "لقد تم تحديث بيانات عملية البيع بنجاح.", - "suspend_sale" => "تعليق عملية البيع", - "suspended_doc_id" => "ملف", - "suspended_sale_id" => "كود عملية البيع", - "suspended_sales" => "المبيعات المعلقة", - "table" => "طاولة", - "takings" => "المبيع اليومي", - "tax" => "ضريبة", - "tax_id" => "الرقم الضريبي", - "tax_invoice" => "فاتورة ضريبية", - "tax_percent" => "ضريبة %", - "taxed_ind" => "ض", - "total" => "المجموع", - "total_tax_exclusive" => "الإجمالى بدون الضرائب", - "transaction_failed" => "فشل حركة البيع.", - "unable_to_add_item" => "غير قادر على إضافة صنف لعملية البيع", - "unsuccessfully_deleted" => "لايمكن حذف عملية/عمليات البيع.", - "unsuccessfully_restored" => "فشل في استعادة عملية البيع.", - "unsuccessfully_suspended_sale" => "فشل تعليق عملية البيع.", - "unsuccessfully_updated" => "فشل تحديث عملية البيع.", - "unsuspend" => "إلغاء تعليق", - "unsuspend_and_delete" => "إلغاء تعليق وحذف", - "update" => "تحديث", - "upi" => "رقم التعريف الشخصي", - "visa" => "", - "wholesale" => "", - "work_order" => "طلب عمل", - "work_order_number" => "رقم طلب العمل", - "work_order_number_duplicate" => "رقم طلب العمل يجب ان يكون فريد.", - "work_order_sent" => "تم ارسال طلب العمل الى", - "work_order_unsent" => "فشل في ارسال طلب العمل الى", + "customers_available_points" => "النقاط المتاحة", + "rewards_package" => "فئة المكافئة", + "rewards_remaining_balance" => "رصيد النقاط المتبقي هو ", + "account_number" => "حساب", + "add_payment" => "إضافة دفع", + "amount_due" => "المبلغ المطلوب", + "amount_tendered" => "المبلغ المدفوع", + "authorized_signature" => "توقيع معتمد", + "cancel_sale" => "الغاء عملية البيع", + "cash" => "نقدى", + "cash_1" => "", + "cash_2" => "", + "cash_3" => "", + "cash_4" => "", + "cash_adjustment" => "تعديل الصندوق", + "cash_deposit" => "ايداع نقدي", + "cash_filter" => "نقدى", + "change_due" => "الباقى", + "change_price" => "تغيير سعر البيع", + "check" => "شيك", + "check_balance" => "تذكير بموعد الشيك", + "check_filter" => "شيك", + "close" => "", + "comment" => "تعليق", + "comments" => "تعليقات", + "company_name" => "", + "complete" => "", + "complete_sale" => "إتمام البيع", + "confirm_cancel_sale" => "هل أنت متأكد من الغاء عملية البيع ؟ سيتم إزالة كل الأصناف.", + "confirm_delete" => "هل تريد حذف عمليات البيع المختارة؟", + "confirm_restore" => "هل انت متاكد من استعادة عملية البيع؟", + "credit" => "بطاقة إئتمانية", + "credit_deposit" => "ايداع ببطاقة ائتمان", + "credit_filter" => "بطاقة بنكية", + "current_table" => "", + "customer" => "العميل", + "customer_address" => "العنوان", + "customer_discount" => "الخصم", + "customer_email" => "البريد الإلكترونى", + "customer_location" => "المكان", + "customer_mailchimp_status" => "حالة بريد ميل تشيمب", + "customer_optional" => "(مطلوب للدفعات المستحقة)", + "customer_required" => "(اجباري)", + "customer_total" => "المجموع", + "customer_total_spent" => "", + "daily_sales" => "", + "date" => "تاريخ البيع", + "date_range" => "الفترة الزمنية", + "date_required" => "يجب إدخال تاريخ صحيح.", + "date_type" => "التاريخ مطلوب.", + "debit" => "بطاقة خصم", + "debit_filter" => "", + "delete" => "اسمح بالمسح", + "delete_confirmation" => "هل أنت متأكد أنك تريد حذف عملية البيع هذه؟ لايمكن التراجع بعد الحذف.", + "delete_entire_sale" => "حذف عملية البيع بالكامل", + "delete_successful" => "لقد تم حذف عملية البيع بنجاح.", + "delete_unsuccessful" => "لقد فشل حذف عملية البيع.", + "description_abbrv" => "الوصف.", + "discard" => "الغاء", + "discard_quote" => "", + "discount" => "خصم", + "discount_included" => "% خصم", + "discount_short" => "%", + "due" => "مستحق", + "due_filter" => "مستحق", + "edit" => "تحرير", + "edit_item" => "تحرير صنف", + "edit_sale" => "تحرير عملية بيع", + "email_receipt" => "إرسال الايصال بالبريد الالكترونى", + "employee" => "الموظف", + "entry" => "ادخال", + "error_editing_item" => "خطاء فى تحرير الصنف", + "find_or_scan_item" => "بحث/مسح باركود صنف", + "find_or_scan_item_or_receipt" => "بحث/مسح باركود صنف أو ايصال", + "giftcard" => "بطاقة هدية", + "giftcard_balance" => "رصيد بطاقة الهدية", + "giftcard_filter" => "", + "giftcard_number" => "رقم بطاقة الهدية", + "group_by_category" => "تصفية حسب الفئة", + "group_by_type" => "تجميع حسب النوع", + "hsn" => "رمز نظام منسق", + "id" => "كود عملية البيع", + "include_prices" => "يشمل الاسعار؟", + "invoice" => "فاتورة", + "invoice_confirm" => "هذه الفاتورة سوف ترسل إلى", + "invoice_enable" => "إنشاء فاتورة", + "invoice_filter" => "الفواتير", + "invoice_no_email" => "هذا العميل ليس لدية بريد الكترونى صالح.", + "invoice_number" => "فاتورة رقم #", + "invoice_number_duplicate" => "من فضلك أدخل رقم فاتورة غير مكرر.", + "invoice_sent" => "تم إرسال الفاتورة إلى", + "invoice_total" => "إجمالي الفاتورة", + "invoice_type_custom_invoice" => "فاتورة مخصصة (custom_invoice.php)", + "invoice_type_custom_tax_invoice" => "الفاتورة الضريبية المخصصة (custom_tax_invoice.php)", + "invoice_type_invoice" => "الفاتورة (invoice.php)", + "invoice_type_tax_invoice" => "الفاتورة الضريبية (tax_invoice.php)", + "invoice_unsent" => "فشل إرسال الفاتورة إلى", + "invoice_update" => "إعادة العد", + "item_insufficient_of_stock" => "لايوجد مخزون كافى من الصنف.", + "item_name" => "اسم الصنف", + "item_number" => "صنف #", + "item_out_of_stock" => "لايوجد مخزون من الصنف.", + "key_browser" => "اختصارات مفيده", + "key_cancel" => "الغاء عملية البيع/فاتوره/عرض السعار", + "key_customer_search" => "بحث عن عميل", + "key_finish_quote" => "انهاء عملية البيع/الفاتورة من دون الدفع", + "key_finish_sale" => "اضافة دفع نقدي كمل واتمام عملية البيع", + "key_full" => "الإظهار في صفحه كامله", + "key_function" => "Function", + "key_help" => "اختصارات", + "key_help_modal" => "إظهار الاختصارات", + "key_in" => "تكبير الصفحه", + "key_item_search" => "بحث حسب الصنف", + "key_out" => "تصغير الصفحه", + "key_payment" => "اضافة دفعه", + "key_print" => "طباعة الصفحة الحالية", + "key_restore" => "إعادة ضبط اعدادات الصفحه", + "key_search" => "البحث في التقارير", + "key_suspend" => "حفط عملية البيع", + "key_suspended" => "إظهار عمليات البيع المحفظه", + "key_system" => "اختصارات متاحه", + "key_tendered" => "تعديل المبلغ المدفوع", + "key_title" => "اختصارات صفحة المبيعات", + "mc" => "", + "mode" => "وضع التسجيل", + "must_enter_numeric" => "يجب إدخال رقم للمبلغ الفعلى المدفوع.", + "must_enter_numeric_giftcard" => "رقم بطاقة الهدية يجب أن يكون رقم.", + "new_customer" => "عميل جديد", + "new_item" => "صنف جديد", + "no_description" => "بدون وصف", + "no_filter" => "الكل", + "no_items_in_cart" => "لايوجد أصناف فى السلة.", + "no_sales_to_display" => "لاتوجد عمليات بيع لعرضها.", + "none_selected" => "لم تقم بإختيار أى عمليات بيع لحذفها.", + "nontaxed_ind" => " ", + "not_authorized" => "هذه العملية لا يمكن فعلها لعدم تخويلك.", + "one_or_multiple" => "عمليات بيع", + "payment" => "طريقة الدفع", + "payment_amount" => "المبلغ", + "payment_not_cover_total" => "المبلغ المدفوع لايغطى المبلغ الإجمالى.", + "payment_type" => "طريقة", + "payments" => "", + "payments_total" => "إجمالى المدفوعات", + "price" => "السعر", + "print_after_sale" => "اطبع بعد عملية البيع", + "quantity" => "الكمية", + "quantity_less_than_reorder_level" => "تحذير: الكمية/العدد المطلوب غير متوفر لهذا الصنف.", + "quantity_less_than_zero" => "تحذير! الكمية المطلوبة غير كافية، بإمكانك إتمام عملية البيع ، لكن تحقق من مخزنك.", + "quantity_of_items" => "عدد ال {0} من الاصناف", + "quote" => "عرض اسعار", + "quote_number" => "رقم عرض الاسعار", + "quote_number_duplicate" => "رقم عرض الاسعار يجب ان يكون فريد.", + "quote_sent" => "عرض الاسعار ارسل الى", + "quote_unsent" => "لم يتم ارسال عرض الاسعار الى", + "receipt" => "عملية بيع #", + "receipt_no_email" => "هذا العميل ليس له اي بريد الكتروني صحيح.", + "receipt_number" => "إيصال بيع", + "receipt_sent" => "تم إرسال الإيصال إلى", + "receipt_unsent" => "فشل إرسال الإيصال إلى", + "refund" => "نوع/سبب الاسترجاع", + "register" => "مسجل المبيعات", + "remove_customer" => "حذف عميل", + "remove_discount" => "", + "return" => "إرتجاع", + "rewards" => "نقاط المكافئة", + "rewards_balance" => "رصيد نقاط المكافئة", + "sale" => "بيع", + "sale_by_invoice" => "البيع بفاتورة رسمية", + "sale_for_customer" => "العميل:", + "sale_time" => "الوقت", + "sales_tax" => "ضريبة البيع", + "sales_total" => "", + "select_customer" => "اختيار عميل (اختياري)", + "send_invoice" => "إرسال الفاتورة", + "send_quote" => "ارسال عرض الاسعار", + "send_receipt" => "إرسال إيصال", + "send_work_order" => "ارسال طلب عمل", + "serial" => "مسلسل", + "service_charge" => "", + "show_due" => "", + "show_invoice" => "عرض الفاتورة", + "show_receipt" => "عرض الإيصال", + "start_typing_customer_name" => "ابداء بكتابة اسم العميل...", + "start_typing_item_name" => "ابداء بكتابة اسم أو مسح باركود الصنف...", + "stock" => "المخزن", + "stock_location" => "مكان المخزون", + "sub_total" => "المجموع الفرعي", + "successfully_deleted" => "لقد تم الحذف بنجاح", + "successfully_restored" => "لقد تمت عملية الاستعادة بنجاح", + "successfully_suspended_sale" => "لقد تم تعليق عملية البيع بنجاح.", + "successfully_updated" => "لقد تم تحديث بيانات عملية البيع بنجاح.", + "suspend_sale" => "تعليق عملية البيع", + "suspended_doc_id" => "ملف", + "suspended_sale_id" => "كود عملية البيع", + "suspended_sales" => "المبيعات المعلقة", + "table" => "طاولة", + "takings" => "المبيع اليومي", + "tax" => "ضريبة", + "tax_id" => "الرقم الضريبي", + "tax_invoice" => "فاتورة ضريبية", + "tax_percent" => "ضريبة %", + "taxed_ind" => "ض", + "total" => "المجموع", + "total_tax_exclusive" => "الإجمالى بدون الضرائب", + "transaction_failed" => "فشل حركة البيع.", + "unable_to_add_item" => "غير قادر على إضافة صنف لعملية البيع", + "unsuccessfully_deleted" => "لايمكن حذف عملية/عمليات البيع.", + "unsuccessfully_restored" => "فشل في استعادة عملية البيع.", + "unsuccessfully_suspended_sale" => "فشل تعليق عملية البيع.", + "unsuccessfully_updated" => "فشل تحديث عملية البيع.", + "unsuspend" => "إلغاء تعليق", + "unsuspend_and_delete" => "إلغاء تعليق وحذف", + "update" => "تحديث", + "upi" => "رقم التعريف الشخصي", + "visa" => "", + "wholesale" => "", + "work_order" => "طلب عمل", + "work_order_number" => "رقم طلب العمل", + "work_order_number_duplicate" => "رقم طلب العمل يجب ان يكون فريد.", + "work_order_sent" => "تم ارسال طلب العمل الى", + "work_order_unsent" => "فشل في ارسال طلب العمل الى", ]; diff --git a/app/Language/ar-EG/Suppliers.php b/app/Language/ar-EG/Suppliers.php index 437a84d11..457997b35 100644 --- a/app/Language/ar-EG/Suppliers.php +++ b/app/Language/ar-EG/Suppliers.php @@ -1,24 +1,24 @@ "رقم الحساب", - "agency_name" => "اسم الوكالة", - "cannot_be_deleted" => "لايمكن حذف المورد/الموردين لوجود مبيعات مرتبطة بهم.", - "category" => "الفئة", - "company_name" => "اسم الشركة", - "company_name_required" => "اسم الشركة مطلوب.", - "confirm_delete" => "هل تريد حقا حذف هؤلاء الموردين؟", - "confirm_restore" => "هل تريد بالتأكيد استعادة المورد (الموردين) المحددين؟", - "cost" => "مورد كلفة", - "error_adding_updating" => "خطاء فى إضافة/تحديث المورد.", - "goods" => "مورد بضائع", - "new" => "مورد جديد", - "none_selected" => "لم تختار موردين لحذفهم.", - "one_or_multiple" => "مورد/موردين", - "successful_adding" => "لقد تم إضافة المورد بنجاح", - "successful_deleted" => "لقد تم حذف المورد بنجاح", - "successful_updating" => "لقد تم تحديث بيانات المورد بنجاح", - "supplier" => "مورد", - "supplier_id" => "كود المورد", - "tax_id" => "الرقم الضريبي", - "update" => "تحديث بيانات المورد", + "account_number" => "رقم الحساب", + "agency_name" => "اسم الوكالة", + "cannot_be_deleted" => "لايمكن حذف المورد/الموردين لوجود مبيعات مرتبطة بهم.", + "category" => "الفئة", + "company_name" => "اسم الشركة", + "company_name_required" => "اسم الشركة مطلوب.", + "confirm_delete" => "هل تريد حقا حذف هؤلاء الموردين؟", + "confirm_restore" => "هل تريد بالتأكيد استعادة المورد (الموردين) المحددين؟", + "cost" => "مورد كلفة", + "error_adding_updating" => "خطاء فى إضافة/تحديث المورد.", + "goods" => "مورد بضائع", + "new" => "مورد جديد", + "none_selected" => "لم تختار موردين لحذفهم.", + "one_or_multiple" => "مورد/موردين", + "successful_adding" => "لقد تم إضافة المورد بنجاح", + "successful_deleted" => "لقد تم حذف المورد بنجاح", + "successful_updating" => "لقد تم تحديث بيانات المورد بنجاح", + "supplier" => "مورد", + "supplier_id" => "كود المورد", + "tax_id" => "الرقم الضريبي", + "update" => "تحديث بيانات المورد", ]; diff --git a/app/Language/ar-EG/Taxes.php b/app/Language/ar-EG/Taxes.php index 73a3a44a3..dd0851d82 100644 --- a/app/Language/ar-EG/Taxes.php +++ b/app/Language/ar-EG/Taxes.php @@ -1,82 +1,82 @@ "أضافة أستثناء", - "cascade" => "تتالي", - "cascade_sequence" => "تسلسل متتالي", - "city" => "مدينة", - "code" => "الشفرة", - "confirm_delete" => "هل أنت متأكد أنك تريد حذف قانون الضرائب؟ لا يمكن التراجع عن هذا الإجراء", - "confirm_restore" => "هل أنت متأكد من أستعادة الأكواد الضريبية؟", - "default_tax_category" => "التصنيف الضريبي الأفتراضي", - "default_tax_rate" => "معدل الضريبة الافتراضي", - "error_adding_updating" => "فشل إضافة أو تحديث قانون الضرائب", - "group_seq" => "تسلسل المجموعة", - "jurisdiction_name" => "اسم الولاية القضائية", - "name" => "الاسم", - "new" => "ضريبة جديدة", - "no_taxes" => "", - "no_taxes_to_display" => "لا يوجد أكواد ضريبية للعرض", - "reporting_authority" => "السلطة الضريبية", - "round_half_down" => "نصف الاسفل", - "round_half_even" => "تقريب للنصف", - "round_half_odd" => "تقريب غريب", - "round_half_up" => "تقريب للاعلى", - "rounding_code" => "كود التقريب", - "sales_tax" => "ضريبة المبيعات", - "sales_tax_by_invoice" => "ضريبة المبيعات بالفاتورة", - "sequence" => "تسلسل", - "state" => "حالة", - "successful_deleted" => "تم المسح بنجاح", - "tax_categories" => "فئات الضرائب", - "tax_categories_configuration" => "اعدادات فئات الضرائب", - "tax_categories_saved_successfully" => "تم حفظ تغييرات الفئات الضريبية", - "tax_categories_saved_unsuccessfully" => "لم يتم حفظ تغييرات الفئات الضريبة", - "tax_category" => "الفئة الضريبية", - "tax_category_code" => "رمز الفئة الضريبية", - "tax_category_duplicate" => "الفئة الضريبية مكررة", - "tax_category_invalid_chars" => "أحرف غير صالحة في اسم الفئة الضريبية", - "tax_category_name" => "اسم فئة الضريبة", - "tax_category_new" => "فئة الضريبية جديدة", - "tax_category_required" => "الفئة الضريبة مطلوبة", - "tax_code" => "كود الضريبة", - "tax_code_cannot_be_deleted" => "فشل مسح الكود الضريبي", - "tax_code_duplicate" => "رمز الضريبة مكرر", - "tax_code_invalid_chars" => "أحرف لا يمكن استعمالها في قانون الضرائب", - "tax_code_name" => "اسم الكود الضريبي", - "tax_code_required" => "حقل الكود الضريبي مطلوب", - "tax_code_successful_deleted" => "تم مسح الكود الضريبي", - "tax_code_successful_updated" => "تم التعديل بنجاح", - "tax_code_successful_updating" => "تم تعديل الكود الضريبي بنجاح", - "tax_code_successfully_added" => "لقد تم إضافة المورد بنجاح", - "tax_code_type" => "نوع كود الضريبة", - "tax_codes" => "الرموز الضريبية", - "tax_codes_configuration" => "اعدادات الرموز الضريبية", - "tax_codes_saved_successfully" => "تم حفظ تغييرات قانون الضرائب", - "tax_codes_saved_unsuccessfully" => "لم يتم حفظ تغييرات قانون الضريبة", - "tax_excluded" => "لا تشمل الضرائب", - "tax_group" => "المجموعة الضريبية", - "tax_group_not_unique" => "فئة الضرائب يجب ان تكون فريده", - "tax_group_sequence" => "تسلسل مجموعة الضرائب", - "tax_included" => "الضريبة مشمولة", - "tax_jurisdiction" => "الاختصاص الضريبي", - "tax_jurisdiction_duplicate" => "تكرير الاختصاص الضريبي", - "tax_jurisdiction_invalid_chars" => "أحرف لا يمكن استعمالها في اسم الولاية القضائية", - "tax_jurisdiction_required" => "الاختصاص الضريبي هي خانة اجبارية", - "tax_jurisdictions" => "الاختصاصات الضريبية", - "tax_jurisdictions_configuration" => "اعجدادات الاختصاصات الضريبية", - "tax_jurisdictions_saved_successfully" => "تم حفظ تغييرات الاختصاص الضريبي", - "tax_jurisdictions_saved_unsuccessfully" => "لم يتم حفظ تغييرات الاختصاص الضريبي", - "tax_rate" => "معدل الضريبة الافتراضي %", - "tax_rate_configuration" => "اعجدادات معدل الضريبة", - "tax_rate_error_adding_updating" => "فشل إضافة أو تحديث معدل الضريبة", - "tax_rate_numeric" => "معدل الضريبة الافتراضي يجب أن يكون رقم", - "tax_rate_required" => "معدل الضريبة الافتراضي مطلوب", - "tax_rate_successful_updated" => "لقد تم بالتحديث بنجاح", - "tax_rate_successfully_added" => "لقد تم الاضافة بنجاح", - "tax_rates" => "معدلات الضريبة", - "tax_rates_configuration" => "اعدادات معدلات الضريبة", - "tax_rounding" => "التقريب الضريبي", - "tax_type" => "نوع الضريبة", - "update" => "تحديث معدل الضريبة", - "vat_tax" => "ضريبة القيمة المضافة", + "add_exception" => "أضافة أستثناء", + "cascade" => "تتالي", + "cascade_sequence" => "تسلسل متتالي", + "city" => "مدينة", + "code" => "الشفرة", + "confirm_delete" => "هل أنت متأكد أنك تريد حذف قانون الضرائب؟ لا يمكن التراجع عن هذا الإجراء", + "confirm_restore" => "هل أنت متأكد من أستعادة الأكواد الضريبية؟", + "default_tax_category" => "التصنيف الضريبي الأفتراضي", + "default_tax_rate" => "معدل الضريبة الافتراضي", + "error_adding_updating" => "فشل إضافة أو تحديث قانون الضرائب", + "group_seq" => "تسلسل المجموعة", + "jurisdiction_name" => "اسم الولاية القضائية", + "name" => "الاسم", + "new" => "ضريبة جديدة", + "no_taxes" => "", + "no_taxes_to_display" => "لا يوجد أكواد ضريبية للعرض", + "reporting_authority" => "السلطة الضريبية", + "round_half_down" => "نصف الاسفل", + "round_half_even" => "تقريب للنصف", + "round_half_odd" => "تقريب غريب", + "round_half_up" => "تقريب للاعلى", + "rounding_code" => "كود التقريب", + "sales_tax" => "ضريبة المبيعات", + "sales_tax_by_invoice" => "ضريبة المبيعات بالفاتورة", + "sequence" => "تسلسل", + "state" => "حالة", + "successful_deleted" => "تم المسح بنجاح", + "tax_categories" => "فئات الضرائب", + "tax_categories_configuration" => "اعدادات فئات الضرائب", + "tax_categories_saved_successfully" => "تم حفظ تغييرات الفئات الضريبية", + "tax_categories_saved_unsuccessfully" => "لم يتم حفظ تغييرات الفئات الضريبة", + "tax_category" => "الفئة الضريبية", + "tax_category_code" => "رمز الفئة الضريبية", + "tax_category_duplicate" => "الفئة الضريبية مكررة", + "tax_category_invalid_chars" => "أحرف غير صالحة في اسم الفئة الضريبية", + "tax_category_name" => "اسم فئة الضريبة", + "tax_category_new" => "فئة الضريبية جديدة", + "tax_category_required" => "الفئة الضريبة مطلوبة", + "tax_code" => "كود الضريبة", + "tax_code_cannot_be_deleted" => "فشل مسح الكود الضريبي", + "tax_code_duplicate" => "رمز الضريبة مكرر", + "tax_code_invalid_chars" => "أحرف لا يمكن استعمالها في قانون الضرائب", + "tax_code_name" => "اسم الكود الضريبي", + "tax_code_required" => "حقل الكود الضريبي مطلوب", + "tax_code_successful_deleted" => "تم مسح الكود الضريبي", + "tax_code_successful_updated" => "تم التعديل بنجاح", + "tax_code_successful_updating" => "تم تعديل الكود الضريبي بنجاح", + "tax_code_successfully_added" => "لقد تم إضافة المورد بنجاح", + "tax_code_type" => "نوع كود الضريبة", + "tax_codes" => "الرموز الضريبية", + "tax_codes_configuration" => "اعدادات الرموز الضريبية", + "tax_codes_saved_successfully" => "تم حفظ تغييرات قانون الضرائب", + "tax_codes_saved_unsuccessfully" => "لم يتم حفظ تغييرات قانون الضريبة", + "tax_excluded" => "لا تشمل الضرائب", + "tax_group" => "المجموعة الضريبية", + "tax_group_not_unique" => "فئة الضرائب يجب ان تكون فريده", + "tax_group_sequence" => "تسلسل مجموعة الضرائب", + "tax_included" => "الضريبة مشمولة", + "tax_jurisdiction" => "الاختصاص الضريبي", + "tax_jurisdiction_duplicate" => "تكرير الاختصاص الضريبي", + "tax_jurisdiction_invalid_chars" => "أحرف لا يمكن استعمالها في اسم الولاية القضائية", + "tax_jurisdiction_required" => "الاختصاص الضريبي هي خانة اجبارية", + "tax_jurisdictions" => "الاختصاصات الضريبية", + "tax_jurisdictions_configuration" => "اعجدادات الاختصاصات الضريبية", + "tax_jurisdictions_saved_successfully" => "تم حفظ تغييرات الاختصاص الضريبي", + "tax_jurisdictions_saved_unsuccessfully" => "لم يتم حفظ تغييرات الاختصاص الضريبي", + "tax_rate" => "معدل الضريبة الافتراضي %", + "tax_rate_configuration" => "اعجدادات معدل الضريبة", + "tax_rate_error_adding_updating" => "فشل إضافة أو تحديث معدل الضريبة", + "tax_rate_numeric" => "معدل الضريبة الافتراضي يجب أن يكون رقم", + "tax_rate_required" => "معدل الضريبة الافتراضي مطلوب", + "tax_rate_successful_updated" => "لقد تم بالتحديث بنجاح", + "tax_rate_successfully_added" => "لقد تم الاضافة بنجاح", + "tax_rates" => "معدلات الضريبة", + "tax_rates_configuration" => "اعدادات معدلات الضريبة", + "tax_rounding" => "التقريب الضريبي", + "tax_type" => "نوع الضريبة", + "update" => "تحديث معدل الضريبة", + "vat_tax" => "ضريبة القيمة المضافة", ]; diff --git a/app/Language/ar-EG/index.html b/app/Language/ar-EG/index.html index b702fbc39..69df4e1df 100644 --- a/app/Language/ar-EG/index.html +++ b/app/Language/ar-EG/index.html @@ -1,7 +1,7 @@ - 403 Forbidden + 403 Forbidden diff --git a/app/Language/ar-LB/Attributes.php b/app/Language/ar-LB/Attributes.php index 7a1227820..2d7fa6b9c 100644 --- a/app/Language/ar-LB/Attributes.php +++ b/app/Language/ar-LB/Attributes.php @@ -1,32 +1,32 @@ "الميزات لا يمكن أن تحتوي على ':' أو'|'", - "confirm_delete" => "هل أنت متأكد من أنك تريد حذف الميزات المحددة ؟", - "confirm_restore" => "هل أنت متأكد من أنك تريد استعادة السمة (السمات) المحددة؟", - "definition_cannot_be_deleted" => "لا يمكن حذف السمات المحددة", - "definition_error_adding_updating" => "لا يمكن إضافة السمة {0} أو تحديثها. يرجى التحقق من سجل الخطأ.", - "definition_flags" => "رؤية الميزات", - "definition_group" => "المجموعة", - "definition_id" => "كود", - "definition_name" => "إضافة ميزة", - "definition_name_required" => "اسم الميزة هي خانة اجبارية", - "definition_one_or_multiple" => "ميزة/ميزات", - "definition_successful_adding" => "لقد تم إضافة صنف بنجاح", - "definition_successful_deleted" => "لقد تم حذف ميزة بنجاح", - "definition_successful_updating" => "تم تعديل الميزة بنجاح", - "definition_type" => "نوع الميزة", - "definition_type_required" => "نوع الميزة هي خانة إجبارية", - "definition_unit" => "وحدة قياس", - "definition_values" => "قيمة الميزة", - "new" => "اضافة ميزة جديده", - "no_attributes_to_display" => "لا يوجد اصناف للعرض", - "receipt_visibility" => "وصل", - "show_in_items" => "اظهار في الصنف", - "show_in_items_visibility" => "الصنف", - "show_in_receipt" => "اظهار على الوصل", - "show_in_receivings" => "اظهار في استلام البضائع", - "show_in_receivings_visibility" => "استلام البضائع", - "show_in_sales" => "اظهار خلال البيع", - "show_in_sales_visibility" => "البيع", - "update" => "تحديث الميزات", + "attribute_value_invalid_chars" => "الميزات لا يمكن أن تحتوي على ':' أو'|'", + "confirm_delete" => "هل أنت متأكد من أنك تريد حذف الميزات المحددة ؟", + "confirm_restore" => "هل أنت متأكد من أنك تريد استعادة السمة (السمات) المحددة؟", + "definition_cannot_be_deleted" => "لا يمكن حذف السمات المحددة", + "definition_error_adding_updating" => "لا يمكن إضافة السمة {0} أو تحديثها. يرجى التحقق من سجل الخطأ.", + "definition_flags" => "رؤية الميزات", + "definition_group" => "المجموعة", + "definition_id" => "كود", + "definition_name" => "إضافة ميزة", + "definition_name_required" => "اسم الميزة هي خانة اجبارية", + "definition_one_or_multiple" => "ميزة/ميزات", + "definition_successful_adding" => "لقد تم إضافة صنف بنجاح", + "definition_successful_deleted" => "لقد تم حذف ميزة بنجاح", + "definition_successful_updating" => "تم تعديل الميزة بنجاح", + "definition_type" => "نوع الميزة", + "definition_type_required" => "نوع الميزة هي خانة إجبارية", + "definition_unit" => "وحدة قياس", + "definition_values" => "قيمة الميزة", + "new" => "اضافة ميزة جديده", + "no_attributes_to_display" => "لا يوجد اصناف للعرض", + "receipt_visibility" => "وصل", + "show_in_items" => "اظهار في الصنف", + "show_in_items_visibility" => "الصنف", + "show_in_receipt" => "اظهار على الوصل", + "show_in_receivings" => "اظهار في استلام البضائع", + "show_in_receivings_visibility" => "استلام البضائع", + "show_in_sales" => "اظهار خلال البيع", + "show_in_sales_visibility" => "البيع", + "update" => "تحديث الميزات", ]; diff --git a/app/Language/ar-LB/Bootstrap_tables.php b/app/Language/ar-LB/Bootstrap_tables.php index fcba2c0a9..e2877aae1 100644 --- a/app/Language/ar-LB/Bootstrap_tables.php +++ b/app/Language/ar-LB/Bootstrap_tables.php @@ -1,11 +1,11 @@ "الكل", - "columns" => "أعمدة", - "hide_show_pagination" => "عرض/إخفاء أرقام الصفحات", - "loading" => "جارى التحميل، برجاء الإنتظار ...", - "page_from_to" => "عرض {0} إلى {1} من {2} صفوف", - "refresh" => "إعادة تحميل", - "rows_per_page" => "{0} صف بالصفحة", - "toggle" => "تغيير", + "all" => "الكل", + "columns" => "أعمدة", + "hide_show_pagination" => "عرض/إخفاء أرقام الصفحات", + "loading" => "جارى التحميل، برجاء الإنتظار ...", + "page_from_to" => "عرض {0} إلى {1} من {2} صفوف", + "refresh" => "إعادة تحميل", + "rows_per_page" => "{0} صف بالصفحة", + "toggle" => "تغيير", ]; diff --git a/app/Language/ar-LB/Calendar.php b/app/Language/ar-LB/Calendar.php index b477ce459..b26577861 100644 --- a/app/Language/ar-LB/Calendar.php +++ b/app/Language/ar-LB/Calendar.php @@ -1,48 +1,48 @@ "أح", - "mo" => "إث", - "tu" => "ثل", - "we" => "أر", - "th" => "خم", - "fr" => "جم", - "sa" => "سب", - "sun" => "أح", - "mon" => "إث", - "tue" => "ثل", - "wed" => "أر", - "thu" => "خم", - "fri" => "جم", - "sat" => "سب", - "sunday" => "الأحد", - "monday" => "الإتنين", - "tuesday" => "الثلاثاء", - "wednesday" => "الأربعاء", - "thursday" => "الخميس", - "friday" => "الجمعة", - "saturday" => "السبت", - "jan" => "ينا", - "feb" => "فبر", - "mar" => "مار", - "apr" => "أبر", - "may" => "ماي", - "jun" => "يون", - "jul" => "يول", - "aug" => "أغس", - "sep" => "سبت", - "oct" => "أوك", - "nov" => "نوف", - "dec" => "ديس", - "january" => "يناير", - "february" => "فبراير", - "march" => "مارس", - "april" => "إبريل", - "mayl" => "مايو", - "june" => "يونيو", - "july" => "يوليو", - "august" => "أغسطس", - "september" => "سبتمبر", - "october" => "أكتوبر", - "november" => "نوفمبر", - "december" => "ديسمبر", + "su" => "أح", + "mo" => "إث", + "tu" => "ثل", + "we" => "أر", + "th" => "خم", + "fr" => "جم", + "sa" => "سب", + "sun" => "أح", + "mon" => "إث", + "tue" => "ثل", + "wed" => "أر", + "thu" => "خم", + "fri" => "جم", + "sat" => "سب", + "sunday" => "الأحد", + "monday" => "الإتنين", + "tuesday" => "الثلاثاء", + "wednesday" => "الأربعاء", + "thursday" => "الخميس", + "friday" => "الجمعة", + "saturday" => "السبت", + "jan" => "ينا", + "feb" => "فبر", + "mar" => "مار", + "apr" => "أبر", + "may" => "ماي", + "jun" => "يون", + "jul" => "يول", + "aug" => "أغس", + "sep" => "سبت", + "oct" => "أوك", + "nov" => "نوف", + "dec" => "ديس", + "january" => "يناير", + "february" => "فبراير", + "march" => "مارس", + "april" => "إبريل", + "mayl" => "مايو", + "june" => "يونيو", + "july" => "يوليو", + "august" => "أغسطس", + "september" => "سبتمبر", + "october" => "أكتوبر", + "november" => "نوفمبر", + "december" => "ديسمبر", ]; diff --git a/app/Language/ar-LB/Cashups.php b/app/Language/ar-LB/Cashups.php index 7f2f34d9f..4873763b9 100644 --- a/app/Language/ar-LB/Cashups.php +++ b/app/Language/ar-LB/Cashups.php @@ -1,49 +1,49 @@ "قيمة المبلغ", - "amount_number" => "قيمة المبلغ يجب ان تتكون من ارقام", - "amount_required" => "قيمة المبلغ هي خانة إجبارية.", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "لا يمكن حذف الصندوق النقدي", - "cash_difference" => "", - "close_date" => "تاريخ تسكير الصندوق", - "close_employee" => "تم التسكير من قبل", - "closed_amount_card" => "بطاقات ائتمان", - "closed_amount_cash" => "الصندوق النقدي", - "closed_amount_check" => "شيكات", - "closed_amount_due" => "الديون", - "closed_amount_giftcard" => "", - "closed_amount_total" => "المجموع", - "closed_date" => "تاريخ تسكير الصندوق", - "confirm_delete" => "هل انت متأكد من حذف الصندوق النقدي؟", - "confirm_restore" => "هل انت متأكد من استعادة الصندوق النقدي؟", - "confirm_submit" => "", - "date_number" => "التاريخ يجب ان يكون مكون من ارقام", - "date_required" => "التاريخ هي خانة اجبارية", - "description" => "الوصف", - "enable_expected" => "", - "error_adding_updating" => "خطأ في تعديل او اضافة صندوق نقدي", - "giftcard" => "", - "id" => "كود", - "info" => "معلومات عن الصندوق النقدي", - "info_employee" => "", - "is_deleted" => "محذوف", - "new" => "صندوق نقدي جديد", - "no_cashups_to_display" => "لا يوجد صناديق نقدية للاظهار", - "none_selected" => "لم يتم اختيار اي صندوق نقدي", - "note" => "ملاحظات", - "one_or_multiple" => "صندوق او صناديق نقدية", - "open_amount_cash" => "بداية صندوق نقدي", - "open_date" => "تاريخ بداية الصندوق النقدي", - "open_employee" => "تمت بداية الصندوق النقدي من قبل", - "opened_date" => "تاريخ بداية الصندوق النقدي", - "successful_adding" => "تمت إضافة الصندوق النقدي بنجاح", - "successful_deleted" => "تم حذف الصندوق النقدي بنجاح", - "successful_updating" => "تم تعديل الصندوق النقدي بنجاح", - "total" => "المجموع", - "transfer_amount_cash" => "حركة الصندوق", - "transfer_amount_cash_minus" => "", - "update" => "تعديل/تحديث الصندوق النقدي", - "warning" => "", + "amount" => "قيمة المبلغ", + "amount_number" => "قيمة المبلغ يجب ان تتكون من ارقام", + "amount_required" => "قيمة المبلغ هي خانة إجبارية.", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "لا يمكن حذف الصندوق النقدي", + "cash_difference" => "", + "close_date" => "تاريخ تسكير الصندوق", + "close_employee" => "تم التسكير من قبل", + "closed_amount_card" => "بطاقات ائتمان", + "closed_amount_cash" => "الصندوق النقدي", + "closed_amount_check" => "شيكات", + "closed_amount_due" => "الديون", + "closed_amount_giftcard" => "", + "closed_amount_total" => "المجموع", + "closed_date" => "تاريخ تسكير الصندوق", + "confirm_delete" => "هل انت متأكد من حذف الصندوق النقدي؟", + "confirm_restore" => "هل انت متأكد من استعادة الصندوق النقدي؟", + "confirm_submit" => "", + "date_number" => "التاريخ يجب ان يكون مكون من ارقام", + "date_required" => "التاريخ هي خانة اجبارية", + "description" => "الوصف", + "enable_expected" => "", + "error_adding_updating" => "خطأ في تعديل او اضافة صندوق نقدي", + "giftcard" => "", + "id" => "كود", + "info" => "معلومات عن الصندوق النقدي", + "info_employee" => "", + "is_deleted" => "محذوف", + "new" => "صندوق نقدي جديد", + "no_cashups_to_display" => "لا يوجد صناديق نقدية للاظهار", + "none_selected" => "لم يتم اختيار اي صندوق نقدي", + "note" => "ملاحظات", + "one_or_multiple" => "صندوق او صناديق نقدية", + "open_amount_cash" => "بداية صندوق نقدي", + "open_date" => "تاريخ بداية الصندوق النقدي", + "open_employee" => "تمت بداية الصندوق النقدي من قبل", + "opened_date" => "تاريخ بداية الصندوق النقدي", + "successful_adding" => "تمت إضافة الصندوق النقدي بنجاح", + "successful_deleted" => "تم حذف الصندوق النقدي بنجاح", + "successful_updating" => "تم تعديل الصندوق النقدي بنجاح", + "total" => "المجموع", + "transfer_amount_cash" => "حركة الصندوق", + "transfer_amount_cash_minus" => "", + "update" => "تعديل/تحديث الصندوق النقدي", + "warning" => "", ]; diff --git a/app/Language/ar-LB/Common.php b/app/Language/ar-LB/Common.php index b59825799..2b35fffd9 100644 --- a/app/Language/ar-LB/Common.php +++ b/app/Language/ar-LB/Common.php @@ -1,88 +1,88 @@ "العنوان 1", - "address_2" => "العنوان 2", - "admin" => "", - "city" => "المدينة", - "clerk" => "", - "close" => "إغلاق", - "color" => "", - "comments" => "تعليقات", - "common" => "عام", - "confirm_search" => "لقد قمت اختيار أكتر من سجل، سوف تفقد هذه الاختيارات عند إرسال البحث، موافق؟", - "copyrights" => "© 2010 - {0}", - "correct_errors" => "يرجى تصحيح الأخطاء المحددة قبل الحفظ", - "country" => "البلد", - "dashboard" => "", - "date" => "التاريخ", - "delete" => "حذف", - "det" => "تفاصيل", - "download_import_template" => "تنزيل قالب الاستيراد من اكسل (CSV)", - "edit" => "تحرير", - "email" => "بريد إلكتروني", - "email_invalid_format" => "شكل البريد الإلكتروني غير صحيح.", - "export_csv" => "تصدير إلى اكسل", - "export_csv_no" => "لا", - "export_csv_yes" => "نعم", - "fields_required_message" => "الحقول التي بالأحمر مطلوبة", - "fields_required_message_unique" => "", - "first_name" => "الاسم الأول", - "first_name_required" => "الاسم الأول مطلوب.", - "first_page" => "الأول", - "gender" => "النوع", - "gender_female" => "أنثى", - "gender_male" => "ذكر", - "gender_undefined" => "", - "icon" => "أيقونة", - "id" => "رقم التعريف", - "import" => "استيراد", - "import_change_file" => "تغيير", - "import_csv" => "استيراد من اكسل", - "import_full_path" => "المسار الكامل لملف اكسل مطلوب", - "import_remove_file" => "إزالة", - "import_select_file" => "اختار ملف", - "inv" => "فاتورة", - "last_name" => "الاسم الأخير", - "last_name_required" => "الاسم الأخير مطلوب.", - "last_page" => "الأخيرة", - "learn_about_project" => "للتعرف على أخر المعلومات حول المشروع.", - "list_of" => "قائمة بـ", - "logo" => "شعار", - "logo_mark" => "علامة الشعار", - "logout" => "خروج", - "manager" => "", - "migration_needed" => "سيبدأ ترحيل قاعدة البيانات إلى {0} بعد تسجيل الدخول.", - "new" => "جديد", - "no" => "", - "no_persons_to_display" => "لا يوجد اناس لعرضهم.", - "none_selected_text" => "[إختيار]", - "or" => "أو", - "people" => "", - "phone_number" => "رقم التليفون", - "phone_number_required" => "رقم التليفون مطلوب", - "please_visit_my" => "برجاء زيارة", - "position" => "", - "powered_by" => "مدعوم بواسطة", - "price" => "السعر", - "print" => "طباعة", - "remove" => "إزالة", - "required" => "مطلوب", - "restore" => "الإستعادة", - "return_policy" => "سياسة الاسترجاع", - "search" => "بحث", - "search_options" => "خيارات البحث", - "searched_for" => "بحث عن", - "software_short" => "OSPOS", - "software_title" => "برنامج OSPOS", - "state" => "المحافظة", - "submit" => "حفظ", - "total_spent" => "مجموع الصرف", - "unknown" => "غير معروف", - "view_recent_sales" => "عرض أحدث المبيعات", - "website" => "الموقع الإلكترونى", - "welcome" => "مرحباً", - "welcome_message" => "مرحباً فى OSPOS برجاء إختيار أى قسم للبدء.", - "yes" => "", - "you_are_using_ospos" => "أنت تستخدم إصدار Open Source Point Of Sale", - "zip" => "الرقم البريدى", + "address_1" => "العنوان 1", + "address_2" => "العنوان 2", + "admin" => "", + "city" => "المدينة", + "clerk" => "", + "close" => "إغلاق", + "color" => "", + "comments" => "تعليقات", + "common" => "عام", + "confirm_search" => "لقد قمت اختيار أكتر من سجل، سوف تفقد هذه الاختيارات عند إرسال البحث، موافق؟", + "copyrights" => "© 2010 - {0}", + "correct_errors" => "يرجى تصحيح الأخطاء المحددة قبل الحفظ", + "country" => "البلد", + "dashboard" => "", + "date" => "التاريخ", + "delete" => "حذف", + "det" => "تفاصيل", + "download_import_template" => "تنزيل قالب الاستيراد من اكسل (CSV)", + "edit" => "تحرير", + "email" => "بريد إلكتروني", + "email_invalid_format" => "شكل البريد الإلكتروني غير صحيح.", + "export_csv" => "تصدير إلى اكسل", + "export_csv_no" => "لا", + "export_csv_yes" => "نعم", + "fields_required_message" => "الحقول التي بالأحمر مطلوبة", + "fields_required_message_unique" => "", + "first_name" => "الاسم الأول", + "first_name_required" => "الاسم الأول مطلوب.", + "first_page" => "الأول", + "gender" => "النوع", + "gender_female" => "أنثى", + "gender_male" => "ذكر", + "gender_undefined" => "", + "icon" => "أيقونة", + "id" => "رقم التعريف", + "import" => "استيراد", + "import_change_file" => "تغيير", + "import_csv" => "استيراد من اكسل", + "import_full_path" => "المسار الكامل لملف اكسل مطلوب", + "import_remove_file" => "إزالة", + "import_select_file" => "اختار ملف", + "inv" => "فاتورة", + "last_name" => "الاسم الأخير", + "last_name_required" => "الاسم الأخير مطلوب.", + "last_page" => "الأخيرة", + "learn_about_project" => "للتعرف على أخر المعلومات حول المشروع.", + "list_of" => "قائمة بـ", + "logo" => "شعار", + "logo_mark" => "علامة الشعار", + "logout" => "خروج", + "manager" => "", + "migration_needed" => "سيبدأ ترحيل قاعدة البيانات إلى {0} بعد تسجيل الدخول.", + "new" => "جديد", + "no" => "", + "no_persons_to_display" => "لا يوجد اناس لعرضهم.", + "none_selected_text" => "[إختيار]", + "or" => "أو", + "people" => "", + "phone_number" => "رقم التليفون", + "phone_number_required" => "رقم التليفون مطلوب", + "please_visit_my" => "برجاء زيارة", + "position" => "", + "powered_by" => "مدعوم بواسطة", + "price" => "السعر", + "print" => "طباعة", + "remove" => "إزالة", + "required" => "مطلوب", + "restore" => "الإستعادة", + "return_policy" => "سياسة الاسترجاع", + "search" => "بحث", + "search_options" => "خيارات البحث", + "searched_for" => "بحث عن", + "software_short" => "OSPOS", + "software_title" => "برنامج OSPOS", + "state" => "المحافظة", + "submit" => "حفظ", + "total_spent" => "مجموع الصرف", + "unknown" => "غير معروف", + "view_recent_sales" => "عرض أحدث المبيعات", + "website" => "الموقع الإلكترونى", + "welcome" => "مرحباً", + "welcome_message" => "مرحباً فى OSPOS برجاء إختيار أى قسم للبدء.", + "yes" => "", + "you_are_using_ospos" => "أنت تستخدم إصدار Open Source Point Of Sale", + "zip" => "الرقم البريدى", ]; diff --git a/app/Language/ar-LB/Config.php b/app/Language/ar-LB/Config.php index 407443657..108abedd8 100644 --- a/app/Language/ar-LB/Config.php +++ b/app/Language/ar-LB/Config.php @@ -1,330 +1,330 @@ "عنوان الشركة", - "address_required" => "عنوان الشركة مطلوب.", - "all_set" => "صلاحيات الملفات مضبطة بالطريقه الصحيحه!", - "allow_duplicate_barcodes" => "السماح بتشابة الباركود", - "apostrophe" => "الفاصلة", - "backup_button" => "نسخ إحتياطى", - "backup_database" => "نسخ إحتياطى لقاعدة البيانات", - "barcode" => "باركود", - "barcode_company" => "اسم الشركة", - "barcode_configuration" => "اعدادات الباركود", - "barcode_content" => "محتويات الباركود", - "barcode_first_row" => "الصف 1", - "barcode_font" => "الخط", - "barcode_formats" => "اشكال الادخال", - "barcode_generate_if_empty" => "توليد اذا كان الباركود فارغ.", - "barcode_height" => "الارتفاع (px)", - "barcode_id" => "كود/اسم الصنف", - "barcode_info" => "معلومات اعدادات الباركود", - "barcode_layout" => "تخطيط الباركود", - "barcode_name" => "الاسم", - "barcode_number" => "الباركود UPC/EAN/ISBN", - "barcode_number_in_row" => "الرقم فى الصف", - "barcode_page_cellspacing" => "المسافة بين الخلايا فى صفحة العرض.", - "barcode_page_width" => "عرض الصفحة", - "barcode_price" => "السعر", - "barcode_second_row" => "الصف 2", - "barcode_third_row" => "الصف 3", - "barcode_tooltip" => "تحذير: قد تؤدي هذه الميزة إلى استيراد اصناف مكررة أو إنشاؤها. لا تستخدمها إذا كنت لا تريد الباركود مكررة.", - "barcode_type" => "نوعية الباركود", - "barcode_width" => "العرض (px)", - "bottom" => "الأسفل", - "cash_button" => "", - "cash_button_1" => "", - "cash_button_2" => "", - "cash_button_3" => "", - "cash_button_4" => "", - "cash_button_5" => "", - "cash_button_6" => "", - "cash_decimals" => "فواصل النقدية", - "cash_decimals_tooltip" => "إذا كانت الكسور العشرية النقدية وعشرية العملات هي نفسها ثم لن يتم تقريب النقدية.", - "cash_rounding" => "التقريب النقدي", - "category_dropdown" => "إظهار الفئة كقائمة منسدلة", - "center" => "الوسط", - "change_apperance_tooltip" => "", - "comma" => "فاصلة", - "company" => "اسم الشركة", - "company_avatar" => "", - "company_change_image" => "تغيير الصورة", - "company_logo" => "شعار الشركة", - "company_remove_image" => "إزالة الصورة", - "company_required" => "اسم الشركة مطلوب", - "company_select_image" => "اختار صورة", - "company_website_url" => "الموقع الإلكترونى للشركة غير صحيح.", - "country_codes" => "أكواد الدولة", - "country_codes_tooltip" => "قائمة مفصولة بفاصلة لاسماء الدول للبحث.", - "currency_code" => "رمز العملة", - "currency_decimals" => "العلامة العشرية للعملة", - "currency_symbol" => "رمز العملة", - "current_employee_only" => "", - "customer_reward" => "المكافآت", - "customer_reward_duplicate" => "المكافئة يجب ان تكون فريدة.", - "customer_reward_enable" => "تمكين مكافآت العميل", - "customer_reward_invalid_chars" => "لا يمكن أن تحتوي المكافأة على '_'", - "customer_reward_required" => "المكافأة هي حقل مطلوب", - "customer_sales_tax_support" => "دعم الضرائب المبيعات العملاء", - "date_or_time_format" => "تصفية التاريخ والوقت", - "datetimeformat" => "شكل الوقت و التاريخ", - "decimal_point" => "العلامة العشرية", - "default_barcode_font_size_number" => "الحجم الافتراضي لخط الباركود لابد أن يكون رقم.", - "default_barcode_font_size_required" => "الحجم الافتراضي لخط الباركود مطلوب.", - "default_barcode_height_number" => "الارتفاع الافتراضي للباركود لابد ان يكون رقم.", - "default_barcode_height_required" => "الارتفاع الافتراضي للباركود مطلوب.", - "default_barcode_num_in_row_number" => "رقم الباركود فى اى سطر لابد ان يكون رقم.", - "default_barcode_num_in_row_required" => "رقم الباركود فى اى سطر مطلوب.", - "default_barcode_page_cellspacing_number" => "المسافة الافتراضية بين خلايا الباركود لابد أن تكون رقم.", - "default_barcode_page_cellspacing_required" => "المسافة الافتراضية بين خلايا الباركود مطلوبة.", - "default_barcode_page_width_number" => "عرض الصفحة الافتراضي للباركود لابد ان يكون رقم.", - "default_barcode_page_width_required" => "عرض الصفحة الافتراضي للباركود مطلوب.", - "default_barcode_width_number" => "العرض الافتراضي للباركود لابد ان يكون رقم.", - "default_barcode_width_required" => "العرض الافتراضي للباركود مطلوب.", - "default_item_columns" => "الخانات المراد إظهارها", - "default_origin_tax_code" => "كود الضريبة الاساسي الافتراضي", - "default_receivings_discount" => "خصم الإيصالات الافتراضي", - "default_receivings_discount_number" => "خصم الإيصالات الافتراضي يجب ان يكون رقم.", - "default_receivings_discount_required" => "خصم الإيصالات الافتراضي هي خانة اجبارية.", - "default_sales_discount" => "نسبة الخصم الافتراضية", - "default_sales_discount_number" => "نسبة الخصم الافتراضية لابد ان تكون رقم.", - "default_sales_discount_required" => "نسبة الخصم الافتراضية مطلوبة.", - "default_tax_category" => "فئة الضرائب الافتراضية", - "default_tax_code" => "قانون الضرائب الافتراضي", - "default_tax_jurisdiction" => "الاختصاص الضريبي الافتراضي", - "default_tax_name_number" => "يجب أن يكون الاسم الافتراضي للضريبة سلسلة.", - "default_tax_name_required" => "اسم الضريبة الافتراضية مطلوب.", - "default_tax_rate" => "معدل الضريبة الافتراضي %", - "default_tax_rate_1" => "معدل الضريبة 1", - "default_tax_rate_2" => "معدل الضريبة 2", - "default_tax_rate_3" => "", - "default_tax_rate_number" => "معدل الضريبة الافتراضي يجب أن يكون رقم.", - "default_tax_rate_required" => "معدل الضريبة الافتراضي مطلوب.", - "derive_sale_quantity" => "السماح بأسعار البيع المشتقة", - "derive_sale_quantity_tooltip" => "إذا تم تحديدها، فسيتم توفير نوع جديد من الاصناف للاصناف المطلوبة حسب المبلغ الموسع", - "dinner_table" => "طاولة", - "dinner_table_duplicate" => "الطاولة يجب ان تكون فريدة.", - "dinner_table_enable" => "تمكين جداول الطاولات", - "dinner_table_invalid_chars" => "لا يمكن أن يحتوي اسم الطاولة على '_'.", - "dinner_table_required" => "الطاولة هو حقل مطلوب.", - "dot" => "نقطة", - "email" => "البريد الإلكتروني", - "email_configuration" => "إعدادات البريد الإلكتروني", - "email_mailpath" => "مسار ارسال البريد", - "email_protocol" => "بروتوكول", - "email_receipt_check_behaviour" => "ارسال رسائل الكترونية", - "email_receipt_check_behaviour_always" => "مختار دائما", - "email_receipt_check_behaviour_last" => "تذكر آخر إختيار", - "email_receipt_check_behaviour_never" => "دائما غير مختار", - "email_smtp_crypto" => "تشفير SMTP", - "email_smtp_host" => "خادم SMTP", - "email_smtp_pass" => "كلمة سر SMTP", - "email_smtp_port" => "رقم منفذ SMTP", - "email_smtp_timeout" => "وقت فشل المحاولة (ثوانى) لـ SMTP", - "email_smtp_user" => "اسم مستخدم SMTP", - "enable_avatar" => "", - "enable_avatar_tooltip" => "", - "enable_dropdown_tooltip" => "", - "enable_new_look" => "", - "enable_right_bar" => "", - "enable_right_bar_tooltip" => "", - "enforce_privacy" => "فرض نظام الخصوصية", - "enforce_privacy_tooltip" => "حماية ملفات ومعلومات المستخدم عند الحذف", - "fax" => "الفاكس", - "file_perm" => "يوجد خطأ في ضبط اعدادات وصلاحيات الملفات نرجوا إعادة الضبط.", - "financial_year" => "بداية السنة المالية", - "financial_year_apr" => "1 أبريل", - "financial_year_aug" => "1 أغسطس", - "financial_year_dec" => "1 ديسمبر", - "financial_year_feb" => "1 فبراير", - "financial_year_jan" => "1 يناير", - "financial_year_jul" => "1 يوليو", - "financial_year_jun" => "1 يونيو", - "financial_year_mar" => "1 مارس", - "financial_year_may" => "1 مايو", - "financial_year_nov" => "1 نوفمبر", - "financial_year_oct" => "1 أكتوبر", - "financial_year_sep" => "1 سبتمبر", - "floating_labels" => "تسميات عائمة", - "gcaptcha_enable" => "صفحة تسجيل الدخول ريكابتشا", - "gcaptcha_secret_key" => "مفتاح السرية ريكابتشا", - "gcaptcha_secret_key_required" => "مفتاح السرية ريكابتشا هو حقل مطلوب", - "gcaptcha_site_key" => "ريكابتشا مفتاح الموقع", - "gcaptcha_site_key_required" => "ريكابتشا مفتاح الموقع هو حقل مطلوب", - "gcaptcha_tooltip" => "احرص على حماية صفحة تسجيل الدخول باستخدام ريكابتشا من غوغل.", - "general" => "عام", - "general_configuration" => "إعدادات عامة", - "giftcard_number" => "رقم كارت الهدية", - "giftcard_random" => "توليد عشوائي", - "giftcard_series" => "توليد في السلسلة", - "image_allowed_file_types" => "أنواع الملفات المسموح بها", - "image_max_height_tooltip" => "أقصى ارتفاع مسموح به لتحميلات الصور بالبكسل (بكسل).", - "image_max_size_tooltip" => "أقصى حجم مسموح به للملف لتحميل الصور (بالكيلو بايت).", - "image_max_width_tooltip" => "أقصى عرض مسموح به لتحميلات الصور بالبكسل (بكسل).", - "image_restrictions" => "قيود تحميل الصور", - "include_hsn" => "تشمل الدعم لرمز نظام منسق", - "info" => "معلومات", - "info_configuration" => "معلومات الشركة", - "input_groups" => "مجموعات الإدخال", - "integrations" => "التكامل", - "integrations_configuration" => "تكامل", - "invoice" => "الفاتورة", - "invoice_configuration" => "إعدادات طباعة الفاتورة", - "invoice_default_comments" => "التعليق الافتراضي على الفاتورة", - "invoice_email_message" => "قالب البريد الإلكتروني للفاتورة", - "invoice_enable" => "تفعيل الفوترة", - "invoice_printer" => "طابعة الفواتير", - "invoice_type" => "نوع الفاتورة", - "is_readable" => "يمكن قراءته ، ولكن تم تعيين الأذونات بشكل غير صحيح. يرجى ضبطه على 640 أو 660 والتحديث.", - "is_writable" => "ممكن التعديل عليه، لكن الصلاحيات هي اكثر من 750. نرجوا الضبط الى 750.", - "item_markup" => "", - "jsprintsetup_required" => "تحذير! هذه الخاصية غير المفعلة سوف تعمل فقط مع وجود الاضافة jsPrintSetup على متصفح فايرفوكس. حفظ على أى حال؟", - "language" => "اللغة", - "last_used_invoice_number" => "اخر رقم مستخدم للفاتورة", - "last_used_quote_number" => "اخر رقم مستخدم لعرض الاسعار", - "last_used_work_order_number" => "آخر رقم مستخدم في طلبات العمل", - "left" => "يسار", - "license" => "الرخصة", - "license_configuration" => "نص الرخصة", - "line_sequence" => "تسلسل خطي", - "lines_per_page" => "عدد السطور فى الصفحة", - "lines_per_page_number" => "عدد السطور فى الصفحة يجب أن يكون رقم.", - "lines_per_page_required" => "عدد السطور فى الصفحة مطلوب.", - "locale" => "إقليمية", - "locale_configuration" => "الإعدادات الإقليمية", - "locale_info" => "معلومات التهيئة الإقليمية", - "location" => "المخزون", - "location_configuration" => "أماكن المخزون", - "location_info" => "معلومات تهيئة الأماكن", - "login_form" => "نمط نموذج تسجيل الدخول", - "logout" => "هل تريد عمل نسخة إحتياطية قبل الخروج؟ اضغط [نعم] لعمل النسخة أو [الغاء] للخروج.", - "mailchimp" => "ميل تشامب", - "mailchimp_api_key" => "مفتاح ميل شيمب", - "mailchimp_configuration" => "إعدادات ميل شيمب", - "mailchimp_key_successfully" => "نجاح.", - "mailchimp_key_unsuccessfully" => "فشل.", - "mailchimp_lists" => "قوائم ميل شيمب", - "mailchimp_tooltip" => "انقر على رمز مفتاح API.", - "message" => "الرسائل", - "message_configuration" => "إعدادات الرسائل", - "msg_msg" => "الرسائل النصية المحفوظة", - "msg_msg_placeholder" => "إذا أردت إستخدام قالب للرسائل القصيرة احفظه هنا. عدا ذلك أترك هذا الحقل فارغ.", - "msg_pwd" => "SMS-API كلمة السر لـ", - "msg_pwd_required" => "مطلوب SMS-API كلمة السر لـ", - "msg_src" => "SMS-API كود المرسل لـ", - "msg_src_required" => "مطلوب SMS-API كود المرسل لـ", - "msg_uid" => "SMS-API اسم المستخدم لـ", - "msg_uid_required" => "مطلوب SMS-API اسم المستخدم لـ", - "multi_pack_enabled" => "رزم متعددة لكل صنف", - "no_risk" => "لا يوجد اي مشاكل في صلاحيات الملفات.", - "none" => "لايوجد", - "notify_alignment" => "مكان عرض رسائل المعلومات", - "number_format" => "شكل الرقم", - "number_locale" => "التهيئة الاقليمية", - "number_locale_invalid" => "التهيئة الإقليمية المختارة غير صحية، راجع الرابط الموجود فى الملاحظة لاختيار تهيئة مناسبة.", - "number_locale_required" => "رقم التهيئة الإقليمية مطلوب.", - "number_locale_tooltip" => "إيجاد تهيئة إقليمية مناسبة عبر الرابط.", - "os_timezone" => "المنطقة الزمنية OSPOS:", - "ospos_info" => "معلومات التثبيت OSPOS", - "payment_options_order" => "ترتيب خيارات الدفع", - "perm_risk" => "صلاحيات الملفات ممكن ان تشكل خطر في حال كانت غير صحيحة.", - "phone" => "هاتف الشركة", - "phone_required" => "هاتف الشركة مطلوب.", - "print_bottom_margin" => "الهامش السفلي", - "print_bottom_margin_number" => "الهامش السفلي يجب أن يكون رقم.", - "print_bottom_margin_required" => "الهامش السفلي مطلوب.", - "print_delay_autoreturn" => "العودة الى عمليات البيع تلقائيا ( عدد الثواني )", - "print_delay_autoreturn_number" => "الزمن المحدد للعودة الى عمليات البيع هو خانة اجبارية.", - "print_delay_autoreturn_required" => "الزمن المحدد للعودة الى عمليات البيع يجب ان يكون رقم.", - "print_footer" => "طباعة تذييل المتصفح", - "print_header" => "طباعة ترويسة المتصفح", - "print_left_margin" => "الهامش الأيسر", - "print_left_margin_number" => "الهامش الأيسر يجب ان يكون رقم.", - "print_left_margin_required" => "الهامش الأيسر مطلوب.", - "print_receipt_check_behaviour" => "خانة طباعة الفواتير", - "print_receipt_check_behaviour_always" => "دائما مختار", - "print_receipt_check_behaviour_last" => "تذكر آخر اختيار", - "print_receipt_check_behaviour_never" => "دائما ليس مختار", - "print_right_margin" => "الهامش الأيمن", - "print_right_margin_number" => "الهامش الأيمن يجب أن يكون رقم.", - "print_right_margin_required" => "الهامش الأيمن مطلوب.", - "print_silently" => "عرض صندوق حوار طباعة", - "print_top_margin" => "الهامش العلوى", - "print_top_margin_number" => "الهامش العلوى يجب أن يكون رقم.", - "print_top_margin_required" => "الهامش العلوى مطلوب.", - "quantity_decimals" => "العلامة العشرية للكمية", - "quick_cash_enable" => "", - "quote_default_comments" => "ملاحظات طلبات العمل الثابتة", - "receipt" => "الإيصال", - "receipt_category" => "", - "receipt_configuration" => "إعدادات طباعة الايصالات", - "receipt_default" => "افتراضى", - "receipt_font_size" => "الخط", - "receipt_font_size_number" => "رقم الخط يجب ان يكون رقم.", - "receipt_font_size_required" => "رقم الخط مطلوب.", - "receipt_info" => "معلومات تهيئة الإيصالات", - "receipt_printer" => "طابعة تذاكر", - "receipt_short" => "مختصر", - "receipt_show_company_name" => "عرض اسم الشركة", - "receipt_show_description" => "عرض الوصف", - "receipt_show_serialnumber" => "عرض الرقم المسلسل", - "receipt_show_tax_ind" => "عرض مؤشر الضريبة", - "receipt_show_taxes" => "عرض الضرائب", - "receipt_show_total_discount" => "عرض إجمالى الخصم", - "receipt_template" => "قالب الايصال", - "receiving_calculate_average_price" => "حساب متوسط سعر الأصناف المستلمة", - "recv_invoice_format" => "شكل فاتورة الإستلام", - "register_mode_default" => "نمط التسجيل الافتراضي", - "report_an_issue" => "بلغ عن خطأ", - "return_policy_required" => "سياسة الإسترجاع مطلوب.", - "reward" => "المكافاة", - "reward_configuration" => "اعدادات المكافاة", - "right" => "يمين", - "sales_invoice_format" => "شكل فاتورة البيع", - "sales_quote_format" => "شكل فاتورة عرض الاسعار", - "saved_successfully" => "تم حفظ التهيئة بنجاح.", - "saved_unsuccessfully" => "لم يتم حفظ التهيئة بنجاح.", - "security_issue" => "تحذير من ثغرة أمنية", - "server_notice" => "يرجى استخدام المعلومات أدناه للإبلاغ عن المشكلة.", - "service_charge" => "", - "show_due_enable" => "", - "show_office_group" => "اظهار ايكونة المكتب", - "statistics" => "إرسال اﻹحصائيات", - "statistics_tooltip" => "إرسال اﻹحصائيات ﻷغراض التطوير و التحسين.", - "stock_location" => "مكان المخزون", - "stock_location_duplicate" => "من فضلك إستخدم اسم مكان غير مكرر.", - "stock_location_invalid_chars" => "مكان المخزون لايمكن أن يحتوى على '_'.", - "stock_location_required" => "مكان المخزون مطلوب.", - "suggestions_fifth_column" => "", - "suggestions_first_column" => "العامود 1", - "suggestions_fourth_column" => "", - "suggestions_layout" => "تخطيط اقتراحات البحث", - "suggestions_second_column" => "العامود 2", - "suggestions_third_column" => "العامود 3", - "system_conf" => "اعدادات اخرى", - "system_info" => "System Info", - "table" => "جدول", - "table_configuration" => "اعدادات الجدول", - "takings_printer" => "طابعة الإيراد", - "tax" => "الضريبة", - "tax_category" => "تصنيف الضريبة", - "tax_category_duplicate" => "الفئة الضريبية اللتي تم ادخالها موجودة.", - "tax_category_invalid_chars" => "الفئة الضريبية اللتي تم ادخالها غير صحيحة.", - "tax_category_required" => "الفئة الضريبية مطلوبة.", - "tax_category_used" => "الفئة الضريبية اللتي تم تحديدها لا يمكن حذفها لانها قيد الاستعمال.", - "tax_configuration" => "إعدادات الضريبة", - "tax_decimals" => "العلامة العشرية للضريبة", - "tax_id" => "الرقم الضريبي", - "tax_included" => "شامل الضريبة", - "theme" => "السمة", - "theme_preview" => "معاينة المظهر:", - "thousands_separator" => "فاصل الاف", - "timezone" => "المنطقة الزمنية", - "timezone_error" => "تختلف منطقة OSPOS الزمنية عن منطقتك الزمنية المحلية.", - "top" => "علوى", - "use_destination_based_tax" => "استخدام الضريبة المستندة على الوجهة", - "user_timezone" => "المنطقة الزمنية المحلية:", - "website" => "موقع الشركة", - "wholesale_markup" => "", - "work_order_enable" => "تفعيل طلبات العمل", - "work_order_format" => "شكل طلبات العمل", + "address" => "عنوان الشركة", + "address_required" => "عنوان الشركة مطلوب.", + "all_set" => "صلاحيات الملفات مضبطة بالطريقه الصحيحه!", + "allow_duplicate_barcodes" => "السماح بتشابة الباركود", + "apostrophe" => "الفاصلة", + "backup_button" => "نسخ إحتياطى", + "backup_database" => "نسخ إحتياطى لقاعدة البيانات", + "barcode" => "باركود", + "barcode_company" => "اسم الشركة", + "barcode_configuration" => "اعدادات الباركود", + "barcode_content" => "محتويات الباركود", + "barcode_first_row" => "الصف 1", + "barcode_font" => "الخط", + "barcode_formats" => "اشكال الادخال", + "barcode_generate_if_empty" => "توليد اذا كان الباركود فارغ.", + "barcode_height" => "الارتفاع (px)", + "barcode_id" => "كود/اسم الصنف", + "barcode_info" => "معلومات اعدادات الباركود", + "barcode_layout" => "تخطيط الباركود", + "barcode_name" => "الاسم", + "barcode_number" => "الباركود UPC/EAN/ISBN", + "barcode_number_in_row" => "الرقم فى الصف", + "barcode_page_cellspacing" => "المسافة بين الخلايا فى صفحة العرض.", + "barcode_page_width" => "عرض الصفحة", + "barcode_price" => "السعر", + "barcode_second_row" => "الصف 2", + "barcode_third_row" => "الصف 3", + "barcode_tooltip" => "تحذير: قد تؤدي هذه الميزة إلى استيراد اصناف مكررة أو إنشاؤها. لا تستخدمها إذا كنت لا تريد الباركود مكررة.", + "barcode_type" => "نوعية الباركود", + "barcode_width" => "العرض (px)", + "bottom" => "الأسفل", + "cash_button" => "", + "cash_button_1" => "", + "cash_button_2" => "", + "cash_button_3" => "", + "cash_button_4" => "", + "cash_button_5" => "", + "cash_button_6" => "", + "cash_decimals" => "فواصل النقدية", + "cash_decimals_tooltip" => "إذا كانت الكسور العشرية النقدية وعشرية العملات هي نفسها ثم لن يتم تقريب النقدية.", + "cash_rounding" => "التقريب النقدي", + "category_dropdown" => "إظهار الفئة كقائمة منسدلة", + "center" => "الوسط", + "change_apperance_tooltip" => "", + "comma" => "فاصلة", + "company" => "اسم الشركة", + "company_avatar" => "", + "company_change_image" => "تغيير الصورة", + "company_logo" => "شعار الشركة", + "company_remove_image" => "إزالة الصورة", + "company_required" => "اسم الشركة مطلوب", + "company_select_image" => "اختار صورة", + "company_website_url" => "الموقع الإلكترونى للشركة غير صحيح.", + "country_codes" => "أكواد الدولة", + "country_codes_tooltip" => "قائمة مفصولة بفاصلة لاسماء الدول للبحث.", + "currency_code" => "رمز العملة", + "currency_decimals" => "العلامة العشرية للعملة", + "currency_symbol" => "رمز العملة", + "current_employee_only" => "", + "customer_reward" => "المكافآت", + "customer_reward_duplicate" => "المكافئة يجب ان تكون فريدة.", + "customer_reward_enable" => "تمكين مكافآت العميل", + "customer_reward_invalid_chars" => "لا يمكن أن تحتوي المكافأة على '_'", + "customer_reward_required" => "المكافأة هي حقل مطلوب", + "customer_sales_tax_support" => "دعم الضرائب المبيعات العملاء", + "date_or_time_format" => "تصفية التاريخ والوقت", + "datetimeformat" => "شكل الوقت و التاريخ", + "decimal_point" => "العلامة العشرية", + "default_barcode_font_size_number" => "الحجم الافتراضي لخط الباركود لابد أن يكون رقم.", + "default_barcode_font_size_required" => "الحجم الافتراضي لخط الباركود مطلوب.", + "default_barcode_height_number" => "الارتفاع الافتراضي للباركود لابد ان يكون رقم.", + "default_barcode_height_required" => "الارتفاع الافتراضي للباركود مطلوب.", + "default_barcode_num_in_row_number" => "رقم الباركود فى اى سطر لابد ان يكون رقم.", + "default_barcode_num_in_row_required" => "رقم الباركود فى اى سطر مطلوب.", + "default_barcode_page_cellspacing_number" => "المسافة الافتراضية بين خلايا الباركود لابد أن تكون رقم.", + "default_barcode_page_cellspacing_required" => "المسافة الافتراضية بين خلايا الباركود مطلوبة.", + "default_barcode_page_width_number" => "عرض الصفحة الافتراضي للباركود لابد ان يكون رقم.", + "default_barcode_page_width_required" => "عرض الصفحة الافتراضي للباركود مطلوب.", + "default_barcode_width_number" => "العرض الافتراضي للباركود لابد ان يكون رقم.", + "default_barcode_width_required" => "العرض الافتراضي للباركود مطلوب.", + "default_item_columns" => "الخانات المراد إظهارها", + "default_origin_tax_code" => "كود الضريبة الاساسي الافتراضي", + "default_receivings_discount" => "خصم الإيصالات الافتراضي", + "default_receivings_discount_number" => "خصم الإيصالات الافتراضي يجب ان يكون رقم.", + "default_receivings_discount_required" => "خصم الإيصالات الافتراضي هي خانة اجبارية.", + "default_sales_discount" => "نسبة الخصم الافتراضية", + "default_sales_discount_number" => "نسبة الخصم الافتراضية لابد ان تكون رقم.", + "default_sales_discount_required" => "نسبة الخصم الافتراضية مطلوبة.", + "default_tax_category" => "فئة الضرائب الافتراضية", + "default_tax_code" => "قانون الضرائب الافتراضي", + "default_tax_jurisdiction" => "الاختصاص الضريبي الافتراضي", + "default_tax_name_number" => "يجب أن يكون الاسم الافتراضي للضريبة سلسلة.", + "default_tax_name_required" => "اسم الضريبة الافتراضية مطلوب.", + "default_tax_rate" => "معدل الضريبة الافتراضي %", + "default_tax_rate_1" => "معدل الضريبة 1", + "default_tax_rate_2" => "معدل الضريبة 2", + "default_tax_rate_3" => "", + "default_tax_rate_number" => "معدل الضريبة الافتراضي يجب أن يكون رقم.", + "default_tax_rate_required" => "معدل الضريبة الافتراضي مطلوب.", + "derive_sale_quantity" => "السماح بأسعار البيع المشتقة", + "derive_sale_quantity_tooltip" => "إذا تم تحديدها، فسيتم توفير نوع جديد من الاصناف للاصناف المطلوبة حسب المبلغ الموسع", + "dinner_table" => "طاولة", + "dinner_table_duplicate" => "الطاولة يجب ان تكون فريدة.", + "dinner_table_enable" => "تمكين جداول الطاولات", + "dinner_table_invalid_chars" => "لا يمكن أن يحتوي اسم الطاولة على '_'.", + "dinner_table_required" => "الطاولة هو حقل مطلوب.", + "dot" => "نقطة", + "email" => "البريد الإلكتروني", + "email_configuration" => "إعدادات البريد الإلكتروني", + "email_mailpath" => "مسار ارسال البريد", + "email_protocol" => "بروتوكول", + "email_receipt_check_behaviour" => "ارسال رسائل الكترونية", + "email_receipt_check_behaviour_always" => "مختار دائما", + "email_receipt_check_behaviour_last" => "تذكر آخر إختيار", + "email_receipt_check_behaviour_never" => "دائما غير مختار", + "email_smtp_crypto" => "تشفير SMTP", + "email_smtp_host" => "خادم SMTP", + "email_smtp_pass" => "كلمة سر SMTP", + "email_smtp_port" => "رقم منفذ SMTP", + "email_smtp_timeout" => "وقت فشل المحاولة (ثوانى) لـ SMTP", + "email_smtp_user" => "اسم مستخدم SMTP", + "enable_avatar" => "", + "enable_avatar_tooltip" => "", + "enable_dropdown_tooltip" => "", + "enable_new_look" => "", + "enable_right_bar" => "", + "enable_right_bar_tooltip" => "", + "enforce_privacy" => "فرض نظام الخصوصية", + "enforce_privacy_tooltip" => "حماية ملفات ومعلومات المستخدم عند الحذف", + "fax" => "الفاكس", + "file_perm" => "يوجد خطأ في ضبط اعدادات وصلاحيات الملفات نرجوا إعادة الضبط.", + "financial_year" => "بداية السنة المالية", + "financial_year_apr" => "1 أبريل", + "financial_year_aug" => "1 أغسطس", + "financial_year_dec" => "1 ديسمبر", + "financial_year_feb" => "1 فبراير", + "financial_year_jan" => "1 يناير", + "financial_year_jul" => "1 يوليو", + "financial_year_jun" => "1 يونيو", + "financial_year_mar" => "1 مارس", + "financial_year_may" => "1 مايو", + "financial_year_nov" => "1 نوفمبر", + "financial_year_oct" => "1 أكتوبر", + "financial_year_sep" => "1 سبتمبر", + "floating_labels" => "تسميات عائمة", + "gcaptcha_enable" => "صفحة تسجيل الدخول ريكابتشا", + "gcaptcha_secret_key" => "مفتاح السرية ريكابتشا", + "gcaptcha_secret_key_required" => "مفتاح السرية ريكابتشا هو حقل مطلوب", + "gcaptcha_site_key" => "ريكابتشا مفتاح الموقع", + "gcaptcha_site_key_required" => "ريكابتشا مفتاح الموقع هو حقل مطلوب", + "gcaptcha_tooltip" => "احرص على حماية صفحة تسجيل الدخول باستخدام ريكابتشا من غوغل.", + "general" => "عام", + "general_configuration" => "إعدادات عامة", + "giftcard_number" => "رقم كارت الهدية", + "giftcard_random" => "توليد عشوائي", + "giftcard_series" => "توليد في السلسلة", + "image_allowed_file_types" => "أنواع الملفات المسموح بها", + "image_max_height_tooltip" => "أقصى ارتفاع مسموح به لتحميلات الصور بالبكسل (بكسل).", + "image_max_size_tooltip" => "أقصى حجم مسموح به للملف لتحميل الصور (بالكيلو بايت).", + "image_max_width_tooltip" => "أقصى عرض مسموح به لتحميلات الصور بالبكسل (بكسل).", + "image_restrictions" => "قيود تحميل الصور", + "include_hsn" => "تشمل الدعم لرمز نظام منسق", + "info" => "معلومات", + "info_configuration" => "معلومات الشركة", + "input_groups" => "مجموعات الإدخال", + "integrations" => "التكامل", + "integrations_configuration" => "تكامل", + "invoice" => "الفاتورة", + "invoice_configuration" => "إعدادات طباعة الفاتورة", + "invoice_default_comments" => "التعليق الافتراضي على الفاتورة", + "invoice_email_message" => "قالب البريد الإلكتروني للفاتورة", + "invoice_enable" => "تفعيل الفوترة", + "invoice_printer" => "طابعة الفواتير", + "invoice_type" => "نوع الفاتورة", + "is_readable" => "يمكن قراءته ، ولكن تم تعيين الأذونات بشكل غير صحيح. يرجى ضبطه على 640 أو 660 والتحديث.", + "is_writable" => "ممكن التعديل عليه، لكن الصلاحيات هي اكثر من 750. نرجوا الضبط الى 750.", + "item_markup" => "", + "jsprintsetup_required" => "تحذير! هذه الخاصية غير المفعلة سوف تعمل فقط مع وجود الاضافة jsPrintSetup على متصفح فايرفوكس. حفظ على أى حال؟", + "language" => "اللغة", + "last_used_invoice_number" => "اخر رقم مستخدم للفاتورة", + "last_used_quote_number" => "اخر رقم مستخدم لعرض الاسعار", + "last_used_work_order_number" => "آخر رقم مستخدم في طلبات العمل", + "left" => "يسار", + "license" => "الرخصة", + "license_configuration" => "نص الرخصة", + "line_sequence" => "تسلسل خطي", + "lines_per_page" => "عدد السطور فى الصفحة", + "lines_per_page_number" => "عدد السطور فى الصفحة يجب أن يكون رقم.", + "lines_per_page_required" => "عدد السطور فى الصفحة مطلوب.", + "locale" => "إقليمية", + "locale_configuration" => "الإعدادات الإقليمية", + "locale_info" => "معلومات التهيئة الإقليمية", + "location" => "المخزون", + "location_configuration" => "أماكن المخزون", + "location_info" => "معلومات تهيئة الأماكن", + "login_form" => "نمط نموذج تسجيل الدخول", + "logout" => "هل تريد عمل نسخة إحتياطية قبل الخروج؟ اضغط [نعم] لعمل النسخة أو [الغاء] للخروج.", + "mailchimp" => "ميل تشامب", + "mailchimp_api_key" => "مفتاح ميل شيمب", + "mailchimp_configuration" => "إعدادات ميل شيمب", + "mailchimp_key_successfully" => "نجاح.", + "mailchimp_key_unsuccessfully" => "فشل.", + "mailchimp_lists" => "قوائم ميل شيمب", + "mailchimp_tooltip" => "انقر على رمز مفتاح API.", + "message" => "الرسائل", + "message_configuration" => "إعدادات الرسائل", + "msg_msg" => "الرسائل النصية المحفوظة", + "msg_msg_placeholder" => "إذا أردت إستخدام قالب للرسائل القصيرة احفظه هنا. عدا ذلك أترك هذا الحقل فارغ.", + "msg_pwd" => "SMS-API كلمة السر لـ", + "msg_pwd_required" => "مطلوب SMS-API كلمة السر لـ", + "msg_src" => "SMS-API كود المرسل لـ", + "msg_src_required" => "مطلوب SMS-API كود المرسل لـ", + "msg_uid" => "SMS-API اسم المستخدم لـ", + "msg_uid_required" => "مطلوب SMS-API اسم المستخدم لـ", + "multi_pack_enabled" => "رزم متعددة لكل صنف", + "no_risk" => "لا يوجد اي مشاكل في صلاحيات الملفات.", + "none" => "لايوجد", + "notify_alignment" => "مكان عرض رسائل المعلومات", + "number_format" => "شكل الرقم", + "number_locale" => "التهيئة الاقليمية", + "number_locale_invalid" => "التهيئة الإقليمية المختارة غير صحية، راجع الرابط الموجود فى الملاحظة لاختيار تهيئة مناسبة.", + "number_locale_required" => "رقم التهيئة الإقليمية مطلوب.", + "number_locale_tooltip" => "إيجاد تهيئة إقليمية مناسبة عبر الرابط.", + "os_timezone" => "المنطقة الزمنية OSPOS:", + "ospos_info" => "معلومات التثبيت OSPOS", + "payment_options_order" => "ترتيب خيارات الدفع", + "perm_risk" => "صلاحيات الملفات ممكن ان تشكل خطر في حال كانت غير صحيحة.", + "phone" => "هاتف الشركة", + "phone_required" => "هاتف الشركة مطلوب.", + "print_bottom_margin" => "الهامش السفلي", + "print_bottom_margin_number" => "الهامش السفلي يجب أن يكون رقم.", + "print_bottom_margin_required" => "الهامش السفلي مطلوب.", + "print_delay_autoreturn" => "العودة الى عمليات البيع تلقائيا ( عدد الثواني )", + "print_delay_autoreturn_number" => "الزمن المحدد للعودة الى عمليات البيع هو خانة اجبارية.", + "print_delay_autoreturn_required" => "الزمن المحدد للعودة الى عمليات البيع يجب ان يكون رقم.", + "print_footer" => "طباعة تذييل المتصفح", + "print_header" => "طباعة ترويسة المتصفح", + "print_left_margin" => "الهامش الأيسر", + "print_left_margin_number" => "الهامش الأيسر يجب ان يكون رقم.", + "print_left_margin_required" => "الهامش الأيسر مطلوب.", + "print_receipt_check_behaviour" => "خانة طباعة الفواتير", + "print_receipt_check_behaviour_always" => "دائما مختار", + "print_receipt_check_behaviour_last" => "تذكر آخر اختيار", + "print_receipt_check_behaviour_never" => "دائما ليس مختار", + "print_right_margin" => "الهامش الأيمن", + "print_right_margin_number" => "الهامش الأيمن يجب أن يكون رقم.", + "print_right_margin_required" => "الهامش الأيمن مطلوب.", + "print_silently" => "عرض صندوق حوار طباعة", + "print_top_margin" => "الهامش العلوى", + "print_top_margin_number" => "الهامش العلوى يجب أن يكون رقم.", + "print_top_margin_required" => "الهامش العلوى مطلوب.", + "quantity_decimals" => "العلامة العشرية للكمية", + "quick_cash_enable" => "", + "quote_default_comments" => "ملاحظات طلبات العمل الثابتة", + "receipt" => "الإيصال", + "receipt_category" => "", + "receipt_configuration" => "إعدادات طباعة الايصالات", + "receipt_default" => "افتراضى", + "receipt_font_size" => "الخط", + "receipt_font_size_number" => "رقم الخط يجب ان يكون رقم.", + "receipt_font_size_required" => "رقم الخط مطلوب.", + "receipt_info" => "معلومات تهيئة الإيصالات", + "receipt_printer" => "طابعة تذاكر", + "receipt_short" => "مختصر", + "receipt_show_company_name" => "عرض اسم الشركة", + "receipt_show_description" => "عرض الوصف", + "receipt_show_serialnumber" => "عرض الرقم المسلسل", + "receipt_show_tax_ind" => "عرض مؤشر الضريبة", + "receipt_show_taxes" => "عرض الضرائب", + "receipt_show_total_discount" => "عرض إجمالى الخصم", + "receipt_template" => "قالب الايصال", + "receiving_calculate_average_price" => "حساب متوسط سعر الأصناف المستلمة", + "recv_invoice_format" => "شكل فاتورة الإستلام", + "register_mode_default" => "نمط التسجيل الافتراضي", + "report_an_issue" => "بلغ عن خطأ", + "return_policy_required" => "سياسة الإسترجاع مطلوب.", + "reward" => "المكافاة", + "reward_configuration" => "اعدادات المكافاة", + "right" => "يمين", + "sales_invoice_format" => "شكل فاتورة البيع", + "sales_quote_format" => "شكل فاتورة عرض الاسعار", + "saved_successfully" => "تم حفظ التهيئة بنجاح.", + "saved_unsuccessfully" => "لم يتم حفظ التهيئة بنجاح.", + "security_issue" => "تحذير من ثغرة أمنية", + "server_notice" => "يرجى استخدام المعلومات أدناه للإبلاغ عن المشكلة.", + "service_charge" => "", + "show_due_enable" => "", + "show_office_group" => "اظهار ايكونة المكتب", + "statistics" => "إرسال اﻹحصائيات", + "statistics_tooltip" => "إرسال اﻹحصائيات ﻷغراض التطوير و التحسين.", + "stock_location" => "مكان المخزون", + "stock_location_duplicate" => "من فضلك إستخدم اسم مكان غير مكرر.", + "stock_location_invalid_chars" => "مكان المخزون لايمكن أن يحتوى على '_'.", + "stock_location_required" => "مكان المخزون مطلوب.", + "suggestions_fifth_column" => "", + "suggestions_first_column" => "العامود 1", + "suggestions_fourth_column" => "", + "suggestions_layout" => "تخطيط اقتراحات البحث", + "suggestions_second_column" => "العامود 2", + "suggestions_third_column" => "العامود 3", + "system_conf" => "اعدادات اخرى", + "system_info" => "System Info", + "table" => "جدول", + "table_configuration" => "اعدادات الجدول", + "takings_printer" => "طابعة الإيراد", + "tax" => "الضريبة", + "tax_category" => "تصنيف الضريبة", + "tax_category_duplicate" => "الفئة الضريبية اللتي تم ادخالها موجودة.", + "tax_category_invalid_chars" => "الفئة الضريبية اللتي تم ادخالها غير صحيحة.", + "tax_category_required" => "الفئة الضريبية مطلوبة.", + "tax_category_used" => "الفئة الضريبية اللتي تم تحديدها لا يمكن حذفها لانها قيد الاستعمال.", + "tax_configuration" => "إعدادات الضريبة", + "tax_decimals" => "العلامة العشرية للضريبة", + "tax_id" => "الرقم الضريبي", + "tax_included" => "شامل الضريبة", + "theme" => "السمة", + "theme_preview" => "معاينة المظهر:", + "thousands_separator" => "فاصل الاف", + "timezone" => "المنطقة الزمنية", + "timezone_error" => "تختلف منطقة OSPOS الزمنية عن منطقتك الزمنية المحلية.", + "top" => "علوى", + "use_destination_based_tax" => "استخدام الضريبة المستندة على الوجهة", + "user_timezone" => "المنطقة الزمنية المحلية:", + "website" => "موقع الشركة", + "wholesale_markup" => "", + "work_order_enable" => "تفعيل طلبات العمل", + "work_order_format" => "شكل طلبات العمل", ]; diff --git a/app/Language/ar-LB/Customers.php b/app/Language/ar-LB/Customers.php index a6581beb0..fe2854a4f 100644 --- a/app/Language/ar-LB/Customers.php +++ b/app/Language/ar-LB/Customers.php @@ -1,56 +1,56 @@ "رقم الحساب", - "account_number_duplicate" => "رقم الحساب هذا موجود فى قاعدة البيانات من قبل.", - "available_points" => "النقاط المتاحة", - "available_points_value" => "", - "average" => "معدل الصرف", - "avg_discount" => "معدل الخصم", - "basic_information" => "معلومات الزبون", - "cannot_be_deleted" => "لايمكن حذف هؤلاء العملاء، أحدهم/كلهم مرتبط/مرتبطين بمبيعات.", - "company_name" => "اسم الشركة", - "confirm_delete" => "هل تريد حذف هؤلاء العملاء حقاً؟", - "confirm_restore" => "هل انت متأكد من إستعادة قاعدة بيانات الزبائن ؟", - "consent" => "موافقة التسجيل", - "consent_required" => "موافقة التسجيل هي خانة اجبارية.", - "csv_import_failed" => "فشل الإستيراد من اكسل", - "csv_import_nodata_wrongformat" => "الملف الذى رفعته إما فارغ أو أنه مختلف البنية.", - "csv_import_partially_failed" => "تم استيراد معظم العملاء. البعض لم يتم استيرادهم ، وهذه هى القائمة:", - "csv_import_success" => "تم استيراد العملاء بنجاح.", - "customer" => "العميل", - "date" => "التاريخ", - "discount" => "نسبة الخصم", - "discount_fixed" => "حسم ثابت", - "discount_percent" => "نسبة الحبم", - "discount_type" => "نوع الحسم", - "email_duplicate" => "البريد الالكتروني مكرر.", - "employee" => "الموظف", - "error_adding_updating" => "خطاء فى إضافة أو تحديث العميل.", - "import_items_csv" => "استيراد العملا ء من ورقة عمل اكسل", - "mailchimp_activity_click" => "النقر على البريد الإلكتروني", - "mailchimp_activity_lastopen" => "آخر رسالة إلكترونية مفتوحة", - "mailchimp_activity_open" => "رسالة إلكترونية مفتوحة", - "mailchimp_activity_total" => "تم ارسال الرسالة الإلكترونية بنجاح", - "mailchimp_activity_unopen" => "رسالة إلكترونية غير مفتوحة", - "mailchimp_email_client" => "بريد الكتروني", - "mailchimp_info" => "ميل تشيمب", - "mailchimp_member_rating" => "التقييم", - "mailchimp_status" => "الحالة", - "mailchimp_vip" => "مهم", - "max" => "الحد الأقصى", - "min" => "الحد الأدنى", - "new" => "عميل جديد", - "none_selected" => "لم تختار عملاء للحذف.", - "one_or_multiple" => "عميل/عملاء", - "quantity" => "العدد", - "stats_info" => "الحالة", - "successful_adding" => "لقد أضفت عميل بنجاح", - "successful_deleted" => "لقد قمت بالحذف بنجاح", - "successful_updating" => "لقد قمت بتحديث بيانات العميل بنجاح", - "tax_code" => "كود الضريبة", - "tax_id" => "الرقم الضريبي", - "taxable" => "خاضع للضريبة", - "total" => "المجموع", - "update" => "تحديث بيانات عميل", - "rewards_package" => "فئة المكافئة", + "account_number" => "رقم الحساب", + "account_number_duplicate" => "رقم الحساب هذا موجود فى قاعدة البيانات من قبل.", + "available_points" => "النقاط المتاحة", + "available_points_value" => "", + "average" => "معدل الصرف", + "avg_discount" => "معدل الخصم", + "basic_information" => "معلومات الزبون", + "cannot_be_deleted" => "لايمكن حذف هؤلاء العملاء، أحدهم/كلهم مرتبط/مرتبطين بمبيعات.", + "company_name" => "اسم الشركة", + "confirm_delete" => "هل تريد حذف هؤلاء العملاء حقاً؟", + "confirm_restore" => "هل انت متأكد من إستعادة قاعدة بيانات الزبائن ؟", + "consent" => "موافقة التسجيل", + "consent_required" => "موافقة التسجيل هي خانة اجبارية.", + "csv_import_failed" => "فشل الإستيراد من اكسل", + "csv_import_nodata_wrongformat" => "الملف الذى رفعته إما فارغ أو أنه مختلف البنية.", + "csv_import_partially_failed" => "تم استيراد معظم العملاء. البعض لم يتم استيرادهم ، وهذه هى القائمة:", + "csv_import_success" => "تم استيراد العملاء بنجاح.", + "customer" => "العميل", + "date" => "التاريخ", + "discount" => "نسبة الخصم", + "discount_fixed" => "حسم ثابت", + "discount_percent" => "نسبة الحبم", + "discount_type" => "نوع الحسم", + "email_duplicate" => "البريد الالكتروني مكرر.", + "employee" => "الموظف", + "error_adding_updating" => "خطاء فى إضافة أو تحديث العميل.", + "import_items_csv" => "استيراد العملا ء من ورقة عمل اكسل", + "mailchimp_activity_click" => "النقر على البريد الإلكتروني", + "mailchimp_activity_lastopen" => "آخر رسالة إلكترونية مفتوحة", + "mailchimp_activity_open" => "رسالة إلكترونية مفتوحة", + "mailchimp_activity_total" => "تم ارسال الرسالة الإلكترونية بنجاح", + "mailchimp_activity_unopen" => "رسالة إلكترونية غير مفتوحة", + "mailchimp_email_client" => "بريد الكتروني", + "mailchimp_info" => "ميل تشيمب", + "mailchimp_member_rating" => "التقييم", + "mailchimp_status" => "الحالة", + "mailchimp_vip" => "مهم", + "max" => "الحد الأقصى", + "min" => "الحد الأدنى", + "new" => "عميل جديد", + "none_selected" => "لم تختار عملاء للحذف.", + "one_or_multiple" => "عميل/عملاء", + "quantity" => "العدد", + "stats_info" => "الحالة", + "successful_adding" => "لقد أضفت عميل بنجاح", + "successful_deleted" => "لقد قمت بالحذف بنجاح", + "successful_updating" => "لقد قمت بتحديث بيانات العميل بنجاح", + "tax_code" => "كود الضريبة", + "tax_id" => "الرقم الضريبي", + "taxable" => "خاضع للضريبة", + "total" => "المجموع", + "update" => "تحديث بيانات عميل", + "rewards_package" => "فئة المكافئة", ]; diff --git a/app/Language/ar-LB/Datepicker.php b/app/Language/ar-LB/Datepicker.php index fef4add9d..e299746e6 100644 --- a/app/Language/ar-LB/Datepicker.php +++ b/app/Language/ar-LB/Datepicker.php @@ -1,23 +1,23 @@ "جميع الأوقات", - "apply" => "تطبيق", - "cancel" => "إلغاء", - "custom" => "مخصص", - "from" => "من", - "last_30" => "أخر 30 يوم", - "last_7" => "أخر سبعة أيام", - "last_financial_year" => "السنة المالية الماضية", - "last_month" => "أخر شهر", - "last_year" => "السنة الماضية", - "same_month_last_year" => "نفس الشهر من العام الماضي", - "same_month_to_same_day_last_year" => "نفس الشهر حتى اليوم من السنة الماضية", - "this_financial_year" => "السنة المالية الحالية", - "this_month" => "هذا الشهر", - "this_year" => "السنة الحالية", - "to" => "إلى", - "today" => "اليوم", - "today_last_year" => "نفس اليوم من السنة الماضية", - "weekstart" => "0", - "yesterday" => "أمس", + "all_time" => "جميع الأوقات", + "apply" => "تطبيق", + "cancel" => "إلغاء", + "custom" => "مخصص", + "from" => "من", + "last_30" => "أخر 30 يوم", + "last_7" => "أخر سبعة أيام", + "last_financial_year" => "السنة المالية الماضية", + "last_month" => "أخر شهر", + "last_year" => "السنة الماضية", + "same_month_last_year" => "نفس الشهر من العام الماضي", + "same_month_to_same_day_last_year" => "نفس الشهر حتى اليوم من السنة الماضية", + "this_financial_year" => "السنة المالية الحالية", + "this_month" => "هذا الشهر", + "this_year" => "السنة الحالية", + "to" => "إلى", + "today" => "اليوم", + "today_last_year" => "نفس اليوم من السنة الماضية", + "weekstart" => "0", + "yesterday" => "أمس", ]; diff --git a/app/Language/ar-LB/Employees.php b/app/Language/ar-LB/Employees.php index d9e3950b5..1c242ed75 100644 --- a/app/Language/ar-LB/Employees.php +++ b/app/Language/ar-LB/Employees.php @@ -1,44 +1,44 @@ "", - "basic_information" => "المعلومات الأساسية للموظف", - "cannot_be_deleted" => "لايمكن حذف الموظفين ، واحد أو أكثر من المظفين قام بإجراء مبيعات :).", - "change_employee" => "", - "change_password" => "تغيير كلمة المرور", - "clerk" => "", - "commission" => "", - "confirm_delete" => "هل أنت متأكد أنك تريد حذف الموظفين المختارين؟", - "confirm_restore" => "هل انت متاكد من استعادة الموظفين المحددين؟", - "current_password" => "كلمة المرور الحالية", - "current_password_invalid" => "كلمة المرور الحالية غير صحيحة.", - "employee" => "موظف", - "error_adding_updating" => "خطاء فى إضافة/تعديل موظف.", - "error_deleting_demo_admin" => "لايمكن حذف المستخدم admin الخاص بنسخة العرض.", - "error_updating_demo_admin" => "لايمكن تغيير بيانات المستخدم admin الخاص بنسخة العرض.", - "language" => "اللغة", - "login_info" => "معلومات دخول الموظف", - "manager" => "", - "new" => "موظف جديد", - "none_selected" => "لم تختار أى من الموظفين للحذف.", - "one_or_multiple" => "موظف/موظفين", - "password" => "كلمة السر", - "password_minlength" => "كلمة السر يجب أن تكون 8 حروف على الأقل.", - "password_must_match" => "كلمتى السر لا تتطابقان.", - "password_not_must_match" => "كلمة المرور الحالية والجديدة يجب ان يكونو فريدين.", - "password_required" => "كلمة السر مطلوبة.", - "permission_desc" => "قم بإضافة الصلاحيات بلإختيار من الأسفل.", - "permission_info" => "اذونات المستخدمين", - "repeat_password" => "كلمة السر مرة اخرى", - "subpermission_required" => "يجب إختيار صلاحية واحدة على الأقل لكل قسم.", - "successful_adding" => "لقد تم إضافة الموظف بنجاح.", - "successful_change_password" => "تم تغيير كلمة المرور بنجاح.", - "successful_deleted" => "لقد تم حذف الموظف بنجاح", - "successful_updating" => "لقد تم تحديث بيانات الموظف بنجاح", - "system_language" => "لغة النظام", - "unsuccessful_change_password" => "فشل في تغيير كلمة المرور.", - "update" => "تحديث بيانات موظف", - "username" => "اسم المستخدم", - "username_duplicate" => "حساب المحدد هو موجود في قاعدة البيانات. نرجوا استخدام اسم حساب مختلف.", - "username_minlength" => "اسم المستخدم يجب أن يكون 5 حروف على الأقل.", - "username_required" => "اسم المستخدم مطلوب.", + "administrator" => "", + "basic_information" => "المعلومات الأساسية للموظف", + "cannot_be_deleted" => "لايمكن حذف الموظفين ، واحد أو أكثر من المظفين قام بإجراء مبيعات :).", + "change_employee" => "", + "change_password" => "تغيير كلمة المرور", + "clerk" => "", + "commission" => "", + "confirm_delete" => "هل أنت متأكد أنك تريد حذف الموظفين المختارين؟", + "confirm_restore" => "هل انت متاكد من استعادة الموظفين المحددين؟", + "current_password" => "كلمة المرور الحالية", + "current_password_invalid" => "كلمة المرور الحالية غير صحيحة.", + "employee" => "موظف", + "error_adding_updating" => "خطاء فى إضافة/تعديل موظف.", + "error_deleting_demo_admin" => "لايمكن حذف المستخدم admin الخاص بنسخة العرض.", + "error_updating_demo_admin" => "لايمكن تغيير بيانات المستخدم admin الخاص بنسخة العرض.", + "language" => "اللغة", + "login_info" => "معلومات دخول الموظف", + "manager" => "", + "new" => "موظف جديد", + "none_selected" => "لم تختار أى من الموظفين للحذف.", + "one_or_multiple" => "موظف/موظفين", + "password" => "كلمة السر", + "password_minlength" => "كلمة السر يجب أن تكون 8 حروف على الأقل.", + "password_must_match" => "كلمتى السر لا تتطابقان.", + "password_not_must_match" => "كلمة المرور الحالية والجديدة يجب ان يكونو فريدين.", + "password_required" => "كلمة السر مطلوبة.", + "permission_desc" => "قم بإضافة الصلاحيات بلإختيار من الأسفل.", + "permission_info" => "اذونات المستخدمين", + "repeat_password" => "كلمة السر مرة اخرى", + "subpermission_required" => "يجب إختيار صلاحية واحدة على الأقل لكل قسم.", + "successful_adding" => "لقد تم إضافة الموظف بنجاح.", + "successful_change_password" => "تم تغيير كلمة المرور بنجاح.", + "successful_deleted" => "لقد تم حذف الموظف بنجاح", + "successful_updating" => "لقد تم تحديث بيانات الموظف بنجاح", + "system_language" => "لغة النظام", + "unsuccessful_change_password" => "فشل في تغيير كلمة المرور.", + "update" => "تحديث بيانات موظف", + "username" => "اسم المستخدم", + "username_duplicate" => "حساب المحدد هو موجود في قاعدة البيانات. نرجوا استخدام اسم حساب مختلف.", + "username_minlength" => "اسم المستخدم يجب أن يكون 5 حروف على الأقل.", + "username_required" => "اسم المستخدم مطلوب.", ]; diff --git a/app/Language/ar-LB/Enum.php b/app/Language/ar-LB/Enum.php index b33c709a2..888accc71 100644 --- a/app/Language/ar-LB/Enum.php +++ b/app/Language/ar-LB/Enum.php @@ -1,10 +1,10 @@ "تقريب نصفي", - "half_even" => "نصف مزدوج", - "half_five" => "نصف الخمس", - "half_odd" => "نصف فردي", - "half_up" => "تقريب نصفي", - "round_down" => "التقريب", - "round_up" => "التقريب", + "half_down" => "تقريب نصفي", + "half_even" => "نصف مزدوج", + "half_five" => "نصف الخمس", + "half_odd" => "نصف فردي", + "half_up" => "تقريب نصفي", + "round_down" => "التقريب", + "round_up" => "التقريب", ]; diff --git a/app/Language/ar-LB/Error.php b/app/Language/ar-LB/Error.php index d2123a9c2..fe717b43a 100644 --- a/app/Language/ar-LB/Error.php +++ b/app/Language/ar-LB/Error.php @@ -1,5 +1,5 @@ "ليس لديك صلاحيات للوصول لهذا القسم", - "unknown" => "غير معروف", + "no_permission_module" => "ليس لديك صلاحيات للوصول لهذا القسم", + "unknown" => "غير معروف", ]; diff --git a/app/Language/ar-LB/Expenses.php b/app/Language/ar-LB/Expenses.php index bcea06e79..d902aa21d 100644 --- a/app/Language/ar-LB/Expenses.php +++ b/app/Language/ar-LB/Expenses.php @@ -1,50 +1,50 @@ "إضافة مصاريف جديدة", - "amount" => "قيمة المصاريف", - "amount_number" => "القيمة يجب ان تكون رقم", - "amount_required" => "القيمة المطلوبة", - "by_category" => "حسب الفئات", - "cannot_be_deleted" => "لا يمكن المسح", - "cash" => "نقدا", - "cash_filter" => "نقدا", - "categories_name" => "التصنيف", - "category_required" => "خانة مطلوبة: الفئات", - "check" => "شيك", - "check_filter" => "تصفية", - "confirm_delete" => "هل أنت متأكد أنك تريد حذف المصاريف المحددة؟", - "confirm_restore" => "هل تريد بالتأكيد استعادة المصاريف المحددة؟", - "credit" => "بطاقة ائتمان", - "credit_filter" => "بطاقة ائتمان", - "date" => "تاريخ المصاريف", - "date_number" => "التاريخ يجب ان يتكون من ارقام", - "date_required" => "خانة مطلوبة: التاريخ", - "debit" => "بطاقة مدين", - "debit_filter" => "بطاقة مدين", - "description" => "الوصف", - "due" => "الدين", - "due_filter" => "تصفية الدين", - "employee" => "صنع من قبل", - "error_adding_updating" => "خطأ في الإضافة", - "expense_id" => "كود المصاريف", - "expenses_employee" => "موظف", - "info" => "معلومات عن المصاريف", - "ip_address" => "", - "is_deleted" => "ممسوحة", - "name_required" => "خانة مطلوبة: اسم المصاريف", - "new" => "مصاريف جديدة", - "new_supplier" => "", - "no_expenses_to_display" => "لا يوجد مصاريف في التاريخ المحدد", - "none_selected" => "لم يتم تحديد اي خيار", - "one_or_multiple" => "واحد او أكثر", - "payment" => "الدفع", - "start_typing_supplier_name" => "ابدا بكتابة اسم المورد...", - "successful_adding" => "تم إضافة المصاريف بنجاح", - "successful_deleted" => "تم مسح المصاريف بنجاح", - "successful_updating" => "تم تعديل المصاريف بنجاح", - "supplier_name" => "اسم المورد", - "supplier_tax_code" => "كود ضريبة المورد", - "tax_amount" => "قيمة الضريبة", - "tax_amount_number" => "", - "update" => "تعديل", + "add_item" => "إضافة مصاريف جديدة", + "amount" => "قيمة المصاريف", + "amount_number" => "القيمة يجب ان تكون رقم", + "amount_required" => "القيمة المطلوبة", + "by_category" => "حسب الفئات", + "cannot_be_deleted" => "لا يمكن المسح", + "cash" => "نقدا", + "cash_filter" => "نقدا", + "categories_name" => "التصنيف", + "category_required" => "خانة مطلوبة: الفئات", + "check" => "شيك", + "check_filter" => "تصفية", + "confirm_delete" => "هل أنت متأكد أنك تريد حذف المصاريف المحددة؟", + "confirm_restore" => "هل تريد بالتأكيد استعادة المصاريف المحددة؟", + "credit" => "بطاقة ائتمان", + "credit_filter" => "بطاقة ائتمان", + "date" => "تاريخ المصاريف", + "date_number" => "التاريخ يجب ان يتكون من ارقام", + "date_required" => "خانة مطلوبة: التاريخ", + "debit" => "بطاقة مدين", + "debit_filter" => "بطاقة مدين", + "description" => "الوصف", + "due" => "الدين", + "due_filter" => "تصفية الدين", + "employee" => "صنع من قبل", + "error_adding_updating" => "خطأ في الإضافة", + "expense_id" => "كود المصاريف", + "expenses_employee" => "موظف", + "info" => "معلومات عن المصاريف", + "ip_address" => "", + "is_deleted" => "ممسوحة", + "name_required" => "خانة مطلوبة: اسم المصاريف", + "new" => "مصاريف جديدة", + "new_supplier" => "", + "no_expenses_to_display" => "لا يوجد مصاريف في التاريخ المحدد", + "none_selected" => "لم يتم تحديد اي خيار", + "one_or_multiple" => "واحد او أكثر", + "payment" => "الدفع", + "start_typing_supplier_name" => "ابدا بكتابة اسم المورد...", + "successful_adding" => "تم إضافة المصاريف بنجاح", + "successful_deleted" => "تم مسح المصاريف بنجاح", + "successful_updating" => "تم تعديل المصاريف بنجاح", + "supplier_name" => "اسم المورد", + "supplier_tax_code" => "كود ضريبة المورد", + "tax_amount" => "قيمة الضريبة", + "tax_amount_number" => "", + "update" => "تعديل", ]; diff --git a/app/Language/ar-LB/Expenses_categories.php b/app/Language/ar-LB/Expenses_categories.php index f36846196..ffd92e777 100644 --- a/app/Language/ar-LB/Expenses_categories.php +++ b/app/Language/ar-LB/Expenses_categories.php @@ -1,22 +1,22 @@ "اسم نوع المصاريف مطلوب", - "add_item" => "إضافة نوع", - "cannot_be_deleted" => "فشلت عملية مسح نوع المصاريف", - "category_id" => "الكود", - "confirm_delete" => "هل أنت متأكد من مسح نوع المصاريف الذي أخترته؟", - "confirm_restore" => "هل أنت متأكد من أنك تريد استعادة فئة المصاريف المحددة؟", - "description" => "وصف النوع", - "error_adding_updating" => "مشكلة أثناء أضافة أو تعديل نوع المصاريف", - "info" => "معلومات عن نوع المصاريف", - "name" => "اسم الفئة", - "new" => "نوع جديد", - "no_expenses_categories_to_display" => "لا يجد أنواع للعرض", - "none_selected" => "لم تختار أي نوع مصاريف", - "one_or_multiple" => "نوع المصاريف", - "quantity" => "الكمية", - "successful_adding" => "تم أضافة نوع المصاريف بنجاح", - "successful_deleted" => "تم مسح نوع المصاريف بنجاح", - "successful_updating" => "تم تعديل نوع المصاريف بنجاح", - "update" => "تعديل النوع", + "category_name_required" => "اسم نوع المصاريف مطلوب", + "add_item" => "إضافة نوع", + "cannot_be_deleted" => "فشلت عملية مسح نوع المصاريف", + "category_id" => "الكود", + "confirm_delete" => "هل أنت متأكد من مسح نوع المصاريف الذي أخترته؟", + "confirm_restore" => "هل أنت متأكد من أنك تريد استعادة فئة المصاريف المحددة؟", + "description" => "وصف النوع", + "error_adding_updating" => "مشكلة أثناء أضافة أو تعديل نوع المصاريف", + "info" => "معلومات عن نوع المصاريف", + "name" => "اسم الفئة", + "new" => "نوع جديد", + "no_expenses_categories_to_display" => "لا يجد أنواع للعرض", + "none_selected" => "لم تختار أي نوع مصاريف", + "one_or_multiple" => "نوع المصاريف", + "quantity" => "الكمية", + "successful_adding" => "تم أضافة نوع المصاريف بنجاح", + "successful_deleted" => "تم مسح نوع المصاريف بنجاح", + "successful_updating" => "تم تعديل نوع المصاريف بنجاح", + "update" => "تعديل النوع", ]; diff --git a/app/Language/ar-LB/Giftcards.php b/app/Language/ar-LB/Giftcards.php index a8c6f803b..1b608ef3d 100644 --- a/app/Language/ar-LB/Giftcards.php +++ b/app/Language/ar-LB/Giftcards.php @@ -1,71 +1,71 @@ "المخزن المضاف أو المطروح منه.", - "allow_alt_description" => "السماح بوصف بديل", - "bulk_edit" => "تحرير جماعى", - "cannot_be_deleted" => "لايمكن حذف بطاقات الهدية المختارة، واحد أو أكثر منها لديه مبيعات.", - "cannot_find_giftcard" => "لايمكن إيجاد معلومات حول كارت الهدية.", - "cannot_use" => "كارت الهدية {0} لا يمكن استعمالة في هذه العملية: اسم الزبون غير صحيح.", - "card_value" => "القيمة", - "category" => "الفئة", - "change_all_to_allow_alt_desc" => "السماح بوصف بديل للكل.", - "change_all_to_not_allow_allow_desc" => "غير مسموح بوصف بديل للكل.", - "change_all_to_serialized" => "تغيير الجميع لأرقام مسلسلة", - "change_all_to_unserialized" => "تغير الجميع لأرقام غير مسلسلة", - "confirm_bulk_edit" => "هل أنت متأكد انك تريد تحرير كل بطاقات الهدايا المختارة؟", - "confirm_delete" => "هل أنت متأكد انك تريد حذف كل بطاقات الهدايا المختارة؟", - "confirm_restore" => "هل تريد بالتأكيد استعادة بطاقة (بطاقات) الهدايا المحددة؟", - "cost_price" => "سعر التكلفة", - "count" => "تحديث المخزون", - "csv_import_failed" => "فشل الإستيراد من اكسل.", - "current_quantity" => "الكميات الحالية", - "description" => "الوصف", - "details_count" => "حركة الكارت", - "do_nothing" => "لا تفعل شىء", - "edit_fields_you_want_to_update" => "قم بتحديث الحقول المراد تحديثها لكل بطاقات الهدايا المختارة.", - "edit_multiple_giftcards" => "تحرير مجموعة من بطاقات الهدايا.", - "error_adding_updating" => "خطاء فى إضافة/تحديث بطاقة هدية.", - "error_updating_multiple" => "خطاء فى تحديث بيانات بطاقات الهدايا.", - "generate_barcodes" => "توليد أكواد الباركود", - "giftcard" => "بطاقة هدية", - "giftcard_number" => "رقم بطاقة الهدية", - "info_provided_by" => "المعلومات مقدمة بواسطة", - "inventory_comments" => "تعليقات", - "is_serialized" => "بطاقة الهدية لها رقم مسلسل", - "low_inventory_giftcards" => "مخزون قليل من بطاقات الهدايا", - "manually_editing_of_quantity" => "تحرير الكميات يدويا", - "must_select_giftcard_for_barcode" => "يجب إختيار بطاقة هدية واحدة على الأقل لتوليد أكواد الباركود.", - "new" => "بطاقة هدية جديدة", - "no_description_giftcards" => "لايوجد وصف لبطاقات الهدايا", - "no_giftcards_to_display" => "لايوجد بطاقات هدايا لعرضها.", - "none" => "لايوجد", - "none_selected" => "لم تقم بإختيار أى بطاقة هدية.", - "number" => "رقم بطاقة الهدية يجب أن يكون رقم.", - "number_information" => "رقم بطاقة الهدية", - "number_required" => "رقم بطاقة الهدية مطلوب.", - "one_or_multiple" => "بطاقة/بطاقات الهدية", - "person_id" => "العميل", - "quantity" => "الكمية", - "quantity_required" => "الكمية مطلوبة.", - "remaining_balance" => "كارت الهدية {0} القيمة المتبقية منه {1}!", - "reorder_level" => "نقطة إعادة الطلب", - "retrive_giftcard_info" => "إسترجاع بيانات بطاقة هدية", - "sales_tax_1" => "ضريبة المبيعات", - "sales_tax_2" => "ضريبة المبيعات 2", - "serialized_giftcards" => "بطاقات هدايا مسلسلة", - "successful_adding" => "تم إضافة بطاقة هدية بنجاح", - "successful_bulk_edit" => "تم تحديث بطاقات الهدايا بنجاح", - "successful_deleted" => "تم الحذف بنجاح", - "successful_updating" => "تم تحديث بطاقة الهدية بنجاح", - "supplier" => "المورد", - "tax_1" => "الضريبة 1", - "tax_2" => "الضريبة 2", - "tax_percent" => "نسبة الضريبة", - "tax_percents" => "نسبة/نسب الضريبة", - "unit_price" => "سعر الوحدة", - "upc_database" => "UPC قاعدة بيانات", - "update" => "تحديث بطاقة هدية", - "use_inventory_menu" => "استخدام تحديث المخزن", - "value" => "قيمة بطاقة الهدية يجب ان تكون رقم.", - "value_required" => "قيمة بطاقة الهدية مطلوبة.", + "add_minus" => "المخزن المضاف أو المطروح منه.", + "allow_alt_description" => "السماح بوصف بديل", + "bulk_edit" => "تحرير جماعى", + "cannot_be_deleted" => "لايمكن حذف بطاقات الهدية المختارة، واحد أو أكثر منها لديه مبيعات.", + "cannot_find_giftcard" => "لايمكن إيجاد معلومات حول كارت الهدية.", + "cannot_use" => "كارت الهدية {0} لا يمكن استعمالة في هذه العملية: اسم الزبون غير صحيح.", + "card_value" => "القيمة", + "category" => "الفئة", + "change_all_to_allow_alt_desc" => "السماح بوصف بديل للكل.", + "change_all_to_not_allow_allow_desc" => "غير مسموح بوصف بديل للكل.", + "change_all_to_serialized" => "تغيير الجميع لأرقام مسلسلة", + "change_all_to_unserialized" => "تغير الجميع لأرقام غير مسلسلة", + "confirm_bulk_edit" => "هل أنت متأكد انك تريد تحرير كل بطاقات الهدايا المختارة؟", + "confirm_delete" => "هل أنت متأكد انك تريد حذف كل بطاقات الهدايا المختارة؟", + "confirm_restore" => "هل تريد بالتأكيد استعادة بطاقة (بطاقات) الهدايا المحددة؟", + "cost_price" => "سعر التكلفة", + "count" => "تحديث المخزون", + "csv_import_failed" => "فشل الإستيراد من اكسل.", + "current_quantity" => "الكميات الحالية", + "description" => "الوصف", + "details_count" => "حركة الكارت", + "do_nothing" => "لا تفعل شىء", + "edit_fields_you_want_to_update" => "قم بتحديث الحقول المراد تحديثها لكل بطاقات الهدايا المختارة.", + "edit_multiple_giftcards" => "تحرير مجموعة من بطاقات الهدايا.", + "error_adding_updating" => "خطاء فى إضافة/تحديث بطاقة هدية.", + "error_updating_multiple" => "خطاء فى تحديث بيانات بطاقات الهدايا.", + "generate_barcodes" => "توليد أكواد الباركود", + "giftcard" => "بطاقة هدية", + "giftcard_number" => "رقم بطاقة الهدية", + "info_provided_by" => "المعلومات مقدمة بواسطة", + "inventory_comments" => "تعليقات", + "is_serialized" => "بطاقة الهدية لها رقم مسلسل", + "low_inventory_giftcards" => "مخزون قليل من بطاقات الهدايا", + "manually_editing_of_quantity" => "تحرير الكميات يدويا", + "must_select_giftcard_for_barcode" => "يجب إختيار بطاقة هدية واحدة على الأقل لتوليد أكواد الباركود.", + "new" => "بطاقة هدية جديدة", + "no_description_giftcards" => "لايوجد وصف لبطاقات الهدايا", + "no_giftcards_to_display" => "لايوجد بطاقات هدايا لعرضها.", + "none" => "لايوجد", + "none_selected" => "لم تقم بإختيار أى بطاقة هدية.", + "number" => "رقم بطاقة الهدية يجب أن يكون رقم.", + "number_information" => "رقم بطاقة الهدية", + "number_required" => "رقم بطاقة الهدية مطلوب.", + "one_or_multiple" => "بطاقة/بطاقات الهدية", + "person_id" => "العميل", + "quantity" => "الكمية", + "quantity_required" => "الكمية مطلوبة.", + "remaining_balance" => "كارت الهدية {0} القيمة المتبقية منه {1}!", + "reorder_level" => "نقطة إعادة الطلب", + "retrive_giftcard_info" => "إسترجاع بيانات بطاقة هدية", + "sales_tax_1" => "ضريبة المبيعات", + "sales_tax_2" => "ضريبة المبيعات 2", + "serialized_giftcards" => "بطاقات هدايا مسلسلة", + "successful_adding" => "تم إضافة بطاقة هدية بنجاح", + "successful_bulk_edit" => "تم تحديث بطاقات الهدايا بنجاح", + "successful_deleted" => "تم الحذف بنجاح", + "successful_updating" => "تم تحديث بطاقة الهدية بنجاح", + "supplier" => "المورد", + "tax_1" => "الضريبة 1", + "tax_2" => "الضريبة 2", + "tax_percent" => "نسبة الضريبة", + "tax_percents" => "نسبة/نسب الضريبة", + "unit_price" => "سعر الوحدة", + "upc_database" => "UPC قاعدة بيانات", + "update" => "تحديث بطاقة هدية", + "use_inventory_menu" => "استخدام تحديث المخزن", + "value" => "قيمة بطاقة الهدية يجب ان تكون رقم.", + "value_required" => "قيمة بطاقة الهدية مطلوبة.", ]; diff --git a/app/Language/ar-LB/Item_kits.php b/app/Language/ar-LB/Item_kits.php index f66ce33a4..617e82d11 100644 --- a/app/Language/ar-LB/Item_kits.php +++ b/app/Language/ar-LB/Item_kits.php @@ -1,41 +1,41 @@ "إضافة مجموعة", - "all" => "الكل", - "cannot_be_deleted" => "لايمكن حذف مجموعة/مجموعات.", - "confirm_delete" => "هل أنت متأكد أنك تريد حذف المجموعة؟", - "confirm_restore" => "هل أنت متأكد أنك تريد استعادة المجموعة المحددة؟", - "description" => "وصف المجموعة", - "discount" => "الخصم", - "discount_fixed" => "خصم قابل للتعديل", - "discount_percent" => "نسبة الخصم", - "discount_type" => "نوع الخصم", - "error_adding_updating" => "خطاء فى إضافة/تحديث المجموعة.", - "find_kit_item" => "صنف لمجموعة", - "info" => "معلومات المجموعة", - "item" => "صنف", - "item_kit_number" => "الباركود", - "item_kit_number_duplicate" => "رقم مجموعة الأدوات موجود في قاعدة البيانات.", - "item_number" => "", - "item_number_duplicate" => "", - "items" => "أصناف", - "kit" => "كود المجموعة", - "kit_and_components" => "المجموعة ومحتوياتها", - "kit_and_stock" => "المجموعه والصنف", - "kit_only" => "المجموعه فقط", - "name" => "اسم المجموعة", - "new" => "مجموعة جديده", - "no_item_kits_to_display" => "لاتوجد مجموعات لعرضها.", - "none_selected" => "لم تقم بإختيار مجموعات.", - "one_or_multiple" => "مجموعة/مجموعات", - "price_option" => "خيارات التسعير", - "priced_only" => "المسعرين فقط", - "print_option" => "خيارات الطباعة", - "quantity" => "الكمية", - "sequence" => "التسلسل", - "successful_adding" => "لقد تم إضافة المجموعة بنجاح", - "successful_deleted" => "لقد تم حذف المجموعة بنجاح", - "successful_updating" => "لقد تم تحديث بيانات المجموعة بنجاح", - "unit_price" => "", - "update" => "تحديث بيانات مجموعة", + "add_item" => "إضافة مجموعة", + "all" => "الكل", + "cannot_be_deleted" => "لايمكن حذف مجموعة/مجموعات.", + "confirm_delete" => "هل أنت متأكد أنك تريد حذف المجموعة؟", + "confirm_restore" => "هل أنت متأكد أنك تريد استعادة المجموعة المحددة؟", + "description" => "وصف المجموعة", + "discount" => "الخصم", + "discount_fixed" => "خصم قابل للتعديل", + "discount_percent" => "نسبة الخصم", + "discount_type" => "نوع الخصم", + "error_adding_updating" => "خطاء فى إضافة/تحديث المجموعة.", + "find_kit_item" => "صنف لمجموعة", + "info" => "معلومات المجموعة", + "item" => "صنف", + "item_kit_number" => "الباركود", + "item_kit_number_duplicate" => "رقم مجموعة الأدوات موجود في قاعدة البيانات.", + "item_number" => "", + "item_number_duplicate" => "", + "items" => "أصناف", + "kit" => "كود المجموعة", + "kit_and_components" => "المجموعة ومحتوياتها", + "kit_and_stock" => "المجموعه والصنف", + "kit_only" => "المجموعه فقط", + "name" => "اسم المجموعة", + "new" => "مجموعة جديده", + "no_item_kits_to_display" => "لاتوجد مجموعات لعرضها.", + "none_selected" => "لم تقم بإختيار مجموعات.", + "one_or_multiple" => "مجموعة/مجموعات", + "price_option" => "خيارات التسعير", + "priced_only" => "المسعرين فقط", + "print_option" => "خيارات الطباعة", + "quantity" => "الكمية", + "sequence" => "التسلسل", + "successful_adding" => "لقد تم إضافة المجموعة بنجاح", + "successful_deleted" => "لقد تم حذف المجموعة بنجاح", + "successful_updating" => "لقد تم تحديث بيانات المجموعة بنجاح", + "unit_price" => "", + "update" => "تحديث بيانات مجموعة", ]; diff --git a/app/Language/ar-LB/Items.php b/app/Language/ar-LB/Items.php index 0106aa5a4..8817ab6ea 100644 --- a/app/Language/ar-LB/Items.php +++ b/app/Language/ar-LB/Items.php @@ -1,120 +1,120 @@ "الكمية المطلوب خصمها أو اضافتها.", - "allow_alt_description" => "السماح بوصف بديل", - "amount_entry" => "إدخال القيمة", - "bulk_edit" => "تحرير جماعى", - "buy_price_required" => "سعر الشراء مطلوب.", - "cannot_be_deleted" => "لايمكن حذف الأصناف المختارة، واحد أو أكثر منها لديه مبيعات.", - "cannot_find_item" => "لايمكن ايجاد معلومات حول الصنف.", - "categories" => "", - "category" => "التصنيف", - "category_new" => "", - "category_required" => "التصنيف مطلوب.", - "change_all_to_allow_alt_desc" => "السماح بوصف بديل للجميع.", - "change_all_to_not_allow_allow_desc" => "عدم السماح بوصف بديل للجميع.", - "change_all_to_serialized" => "تغير الجميع لمتسلسل", - "change_all_to_unserialized" => "تغيير الجميع لغير متسلسل", - "change_image" => "تغيير الصورة", - "confirm_bulk_edit" => "هل أنت متأكد انك تريد تحرير كل الأصناف المختارة؟", - "confirm_bulk_edit_wipe_taxes" => "سوف يتم مسح معلومات الضرائب لجميع الأصناف.", - "confirm_delete" => "هل أنت متأكد انك تريد حذف كل الأصناف المختارة؟", - "confirm_restore" => "هل انت متاكد من إستعادة الاصناف المخطارة؟", - "cost_price" => "سعر التكلفة", - "cost_price_number" => "سعر التكلفة يجب أن يكون رقم.", - "cost_price_required" => "سعر التكلفة مطلوب.", - "count" => "تحديث المخزون", - "csv_import_failed" => "فشل الإستيراد من اكسل", - "csv_import_nodata_wrongformat" => "الملف الذى رفعته إما فارغ أو أنه مختلف البنية.", - "csv_import_partially_failed" => "يوجد خطأ بنسبة {0} في استيراد الاصناف في السطر: {1}. لم يتم استيرادهم.", - "csv_import_success" => "تم استيراد الأصناف بنجاح.", - "current_quantity" => "الكمية الحالية", - "default_pack_name" => "كل", - "description" => "الوصف", - "details_count" => "حركة الصنف", - "do_nothing" => "لاتفعل شئ", - "edit" => "", - "edit_fields_you_want_to_update" => "قم بتحديث الحقول المراد تحديثها لكل الأصناف المختارة.", - "edit_multiple_items" => "تحريد مجموعة اصناف", - "empty_upc_items" => "تفريغ اصناف UPC", - "error_adding_updating" => "خطاء فى إضافة/تحديث صنف", - "error_updating_multiple" => "خطاء فى تحديث بيانات أصناف", - "generate_barcodes" => "توليد أكواد الباركود", - "hsn_code" => "تسميات النظام المنسق", - "image" => "صورة", - "import_items_csv" => "استيراد من اكسل", - "info_provided_by" => "المعلومات مقدمة بواسطة", - "inventory" => "المخزن", - "inventory_CSV_import_quantity" => "العدد المستورد من ملفات ال CSV", - "inventory_comments" => "تعليقات", - "inventory_data_tracking" => "تتبع بيانات المخزون", - "inventory_date" => "التاريخ", - "inventory_employee" => "الموظف", - "inventory_in_out_quantity" => "+- كمية", - "inventory_remarks" => "ملاحظات", - "is_deleted" => "حذفت", - "is_printed" => "", - "is_serialized" => "الصنف له رقم مسلسل", - "item" => "صنف", - "item_id" => "", - "item_number" => "الباركود UPC/EAN/ISBN", - "item_number_duplicate" => "رقم الصنف موجود فى قاعدة البيانات من قبل.", - "kit" => "مجموعة اصناف", - "location" => "مكان", - "low_inventory_items" => "الأصناف التى لا يوجد لها مخزون", - "low_sell_item" => "الصنف المركب", - "manually_editing_of_quantity" => "تحرير الكمية يدوياً", - "markup" => "", - "name" => "اسم الصنف", - "name_required" => "اسم الصنف مطلوب.", - "new" => "صنف جديد", - "no_description_items" => "الأصناف التى بلا وصف", - "no_items_to_display" => "لايوجد أصناف لعرضها.", - "none" => "لاشىء", - "none_selected" => "لم تختار أى أصناف لتحريرها", - "nonstock" => "غير مخزنة", - "number_information" => "رقم الصنف", - "number_required" => "مطلوب UPC/EAN/ISBN رقم الباركود.", - "one_or_multiple" => "صنف/أصناف", - "pack_name" => "اسم الحزمة", - "qty_per_pack" => "العدد بكل الحزمة", - "quantity" => "الكمية", - "quantity_number" => "الكمية يجب أن تكون رقم.", - "quantity_required" => "الكمية مطلوبة.", - "receiving_quantity" => "الكمية المستلمة", - "remove_image" => "ازالة الصورة", - "reorder_level" => "نقطة إعادة الطلب", - "reorder_level_number" => "نقطة إعادة الطلب يجب أن تكون رقم.", - "reorder_level_required" => "نقطة إعادة الطلب مطلوبة.", - "retrive_item_info" => "الحصول على بيانات الصنف", - "sales_tax_1" => "ضريبة المبيعات", - "sales_tax_2" => "ضريبة المبيعات 2", - "search_attributes" => "بحث الحقول المخصصة", - "select_image" => "اختار صورة", - "serialized_items" => "أصناف مسلسلة", - "standard" => "اساسي", - "stock" => "مخزن", - "stock_location" => "مكان المخزون", - "stock_type" => "نوع المخزن", - "successful_adding" => "لقد تم إضافة صنف بنجاح", - "successful_bulk_edit" => "لقد تم تحديث بيانات صنف/أصناف بنجاح", - "successful_deleted" => "لقد تم الحذف بنجاح", - "successful_updating" => "لقد تم تحديث بيانات صنف بنجاح", - "supplier" => "المورد", - "tax_1" => "الضريبة 1", - "tax_2" => "الضريبة 2", - "tax_3" => "", - "tax_category" => "الفئة الضريبية", - "tax_percent" => "نسبة الضريبة", - "tax_percent_number" => "نسبة الضريبة يجب ان تكون رقم", - "tax_percent_required" => "نسبة الضريبة مطلوبة.", - "tax_percents" => "نسبة/نسب الضريبة", - "temp" => "مؤقت", - "type" => "نوع الصنف", - "unit_price" => "السعر", - "unit_price_number" => "السعر يجب أن يكون رقم.", - "unit_price_required" => "السعر مطلوب.", - "upc_database" => "UPC قاعدة بيانات", - "update" => "تحديث بيانات صنف", - "use_inventory_menu" => "استخدام تحديث المخزن", + "add_minus" => "الكمية المطلوب خصمها أو اضافتها.", + "allow_alt_description" => "السماح بوصف بديل", + "amount_entry" => "إدخال القيمة", + "bulk_edit" => "تحرير جماعى", + "buy_price_required" => "سعر الشراء مطلوب.", + "cannot_be_deleted" => "لايمكن حذف الأصناف المختارة، واحد أو أكثر منها لديه مبيعات.", + "cannot_find_item" => "لايمكن ايجاد معلومات حول الصنف.", + "categories" => "", + "category" => "التصنيف", + "category_new" => "", + "category_required" => "التصنيف مطلوب.", + "change_all_to_allow_alt_desc" => "السماح بوصف بديل للجميع.", + "change_all_to_not_allow_allow_desc" => "عدم السماح بوصف بديل للجميع.", + "change_all_to_serialized" => "تغير الجميع لمتسلسل", + "change_all_to_unserialized" => "تغيير الجميع لغير متسلسل", + "change_image" => "تغيير الصورة", + "confirm_bulk_edit" => "هل أنت متأكد انك تريد تحرير كل الأصناف المختارة؟", + "confirm_bulk_edit_wipe_taxes" => "سوف يتم مسح معلومات الضرائب لجميع الأصناف.", + "confirm_delete" => "هل أنت متأكد انك تريد حذف كل الأصناف المختارة؟", + "confirm_restore" => "هل انت متاكد من إستعادة الاصناف المخطارة؟", + "cost_price" => "سعر التكلفة", + "cost_price_number" => "سعر التكلفة يجب أن يكون رقم.", + "cost_price_required" => "سعر التكلفة مطلوب.", + "count" => "تحديث المخزون", + "csv_import_failed" => "فشل الإستيراد من اكسل", + "csv_import_nodata_wrongformat" => "الملف الذى رفعته إما فارغ أو أنه مختلف البنية.", + "csv_import_partially_failed" => "يوجد خطأ بنسبة {0} في استيراد الاصناف في السطر: {1}. لم يتم استيرادهم.", + "csv_import_success" => "تم استيراد الأصناف بنجاح.", + "current_quantity" => "الكمية الحالية", + "default_pack_name" => "كل", + "description" => "الوصف", + "details_count" => "حركة الصنف", + "do_nothing" => "لاتفعل شئ", + "edit" => "", + "edit_fields_you_want_to_update" => "قم بتحديث الحقول المراد تحديثها لكل الأصناف المختارة.", + "edit_multiple_items" => "تحريد مجموعة اصناف", + "empty_upc_items" => "تفريغ اصناف UPC", + "error_adding_updating" => "خطاء فى إضافة/تحديث صنف", + "error_updating_multiple" => "خطاء فى تحديث بيانات أصناف", + "generate_barcodes" => "توليد أكواد الباركود", + "hsn_code" => "تسميات النظام المنسق", + "image" => "صورة", + "import_items_csv" => "استيراد من اكسل", + "info_provided_by" => "المعلومات مقدمة بواسطة", + "inventory" => "المخزن", + "inventory_CSV_import_quantity" => "العدد المستورد من ملفات ال CSV", + "inventory_comments" => "تعليقات", + "inventory_data_tracking" => "تتبع بيانات المخزون", + "inventory_date" => "التاريخ", + "inventory_employee" => "الموظف", + "inventory_in_out_quantity" => "+- كمية", + "inventory_remarks" => "ملاحظات", + "is_deleted" => "حذفت", + "is_printed" => "", + "is_serialized" => "الصنف له رقم مسلسل", + "item" => "صنف", + "item_id" => "", + "item_number" => "الباركود UPC/EAN/ISBN", + "item_number_duplicate" => "رقم الصنف موجود فى قاعدة البيانات من قبل.", + "kit" => "مجموعة اصناف", + "location" => "مكان", + "low_inventory_items" => "الأصناف التى لا يوجد لها مخزون", + "low_sell_item" => "الصنف المركب", + "manually_editing_of_quantity" => "تحرير الكمية يدوياً", + "markup" => "", + "name" => "اسم الصنف", + "name_required" => "اسم الصنف مطلوب.", + "new" => "صنف جديد", + "no_description_items" => "الأصناف التى بلا وصف", + "no_items_to_display" => "لايوجد أصناف لعرضها.", + "none" => "لاشىء", + "none_selected" => "لم تختار أى أصناف لتحريرها", + "nonstock" => "غير مخزنة", + "number_information" => "رقم الصنف", + "number_required" => "مطلوب UPC/EAN/ISBN رقم الباركود.", + "one_or_multiple" => "صنف/أصناف", + "pack_name" => "اسم الحزمة", + "qty_per_pack" => "العدد بكل الحزمة", + "quantity" => "الكمية", + "quantity_number" => "الكمية يجب أن تكون رقم.", + "quantity_required" => "الكمية مطلوبة.", + "receiving_quantity" => "الكمية المستلمة", + "remove_image" => "ازالة الصورة", + "reorder_level" => "نقطة إعادة الطلب", + "reorder_level_number" => "نقطة إعادة الطلب يجب أن تكون رقم.", + "reorder_level_required" => "نقطة إعادة الطلب مطلوبة.", + "retrive_item_info" => "الحصول على بيانات الصنف", + "sales_tax_1" => "ضريبة المبيعات", + "sales_tax_2" => "ضريبة المبيعات 2", + "search_attributes" => "بحث الحقول المخصصة", + "select_image" => "اختار صورة", + "serialized_items" => "أصناف مسلسلة", + "standard" => "اساسي", + "stock" => "مخزن", + "stock_location" => "مكان المخزون", + "stock_type" => "نوع المخزن", + "successful_adding" => "لقد تم إضافة صنف بنجاح", + "successful_bulk_edit" => "لقد تم تحديث بيانات صنف/أصناف بنجاح", + "successful_deleted" => "لقد تم الحذف بنجاح", + "successful_updating" => "لقد تم تحديث بيانات صنف بنجاح", + "supplier" => "المورد", + "tax_1" => "الضريبة 1", + "tax_2" => "الضريبة 2", + "tax_3" => "", + "tax_category" => "الفئة الضريبية", + "tax_percent" => "نسبة الضريبة", + "tax_percent_number" => "نسبة الضريبة يجب ان تكون رقم", + "tax_percent_required" => "نسبة الضريبة مطلوبة.", + "tax_percents" => "نسبة/نسب الضريبة", + "temp" => "مؤقت", + "type" => "نوع الصنف", + "unit_price" => "السعر", + "unit_price_number" => "السعر يجب أن يكون رقم.", + "unit_price_required" => "السعر مطلوب.", + "upc_database" => "UPC قاعدة بيانات", + "update" => "تحديث بيانات صنف", + "use_inventory_menu" => "استخدام تحديث المخزن", ]; diff --git a/app/Language/ar-LB/Messages.php b/app/Language/ar-LB/Messages.php index f297a0638..3aa171e82 100644 --- a/app/Language/ar-LB/Messages.php +++ b/app/Language/ar-LB/Messages.php @@ -1,15 +1,15 @@ "الإسم الأول", - "last_name" => "الأسم الأخير", - "message" => "الرسالة", - "message_placeholder" => "رسالتك هنا...", - "message_required" => "الرسالة مطلوبة", - "multiple_phones" => "فى حالة إرسال الرسالة لأكثر من شخص قم بفصل الأرقام بعلامة الفاصلة", - "phone" => "رقم المحمول", - "phone_number_required" => "رقم المحمول مطلوب", - "phone_placeholder" => "رقم/أرقام المحمول هنا...", - "sms_send" => "إرسال SMS", - "successfully_sent" => "تم إرسال الرسالة بنجاح إلى: ", - "unsuccessfully_sent" => "لم يتم إرسال الرسالة بنجاح إلى: ", + "first_name" => "الإسم الأول", + "last_name" => "الأسم الأخير", + "message" => "الرسالة", + "message_placeholder" => "رسالتك هنا...", + "message_required" => "الرسالة مطلوبة", + "multiple_phones" => "فى حالة إرسال الرسالة لأكثر من شخص قم بفصل الأرقام بعلامة الفاصلة", + "phone" => "رقم المحمول", + "phone_number_required" => "رقم المحمول مطلوب", + "phone_placeholder" => "رقم/أرقام المحمول هنا...", + "sms_send" => "إرسال SMS", + "successfully_sent" => "تم إرسال الرسالة بنجاح إلى: ", + "unsuccessfully_sent" => "لم يتم إرسال الرسالة بنجاح إلى: ", ]; diff --git a/app/Language/ar-LB/Module.php b/app/Language/ar-LB/Module.php index 073d25872..1d4483061 100644 --- a/app/Language/ar-LB/Module.php +++ b/app/Language/ar-LB/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "ميزات/مميزات", - "attributes_desc" => "إضافة، تعديل، حذف، وبحث بالميزات.", - "both" => "الاثنين", - "cashups" => "الصندوق النقدي", - "cashups_desc" => "إضافة، تعديل، حذف، وبحث بالصندوق النقدي.", - "config" => "إعدادات الشركة", - "config_desc" => "تغيير إعدادات الشركة.", - "customers" => "العملاء", - "customers_desc" => "إضافة، تحديث ، بحث و حذف العملاء.", - "employees" => "الموظفين", - "employees_desc" => "إضافة، تحديث ، بحث و حذف الموظفين.", - "expenses" => "المصاريف", - "expenses_categories" => "فئات المصاريف", - "expenses_categories_desc" => "إضافة، تحديث ، بحث و حذف فئات المصاريف.", - "expenses_desc" => "إضافة، تحديث ، بحث و حذف مصاريف.", - "giftcards" => "بطاقات الهدايا", - "giftcards_desc" => "إضافة، تحديث ، بحث و حذف بطاقات الهدايا.", - "home" => "الرئيسية", - "home_desc" => "اظهار الائحة الرئيسية.", - "item_kits" => "مجموعات الأصناف", - "item_kits_desc" => "إضافة، تحديث ، بحث و حذف مجموعات الأصناف.", - "items" => "الأصناف", - "items_desc" => "إضافة، تحديث ، بحث و حذف الأصناف.", - "messages" => "الرسائل", - "messages_desc" => "إرسال رسائل للعملاء ، الموردين او الموظفين.", - "migrate" => "النقل", - "migrate_desc" => "تحديث قاعدة البيانات.", - "office" => "المكتب", - "office_desc" => "اظهار الائحة المكتبية.", - "receivings" => "استلام الأصناف", - "receivings_desc" => "معالجة أوامر الشراء و استلام الأصناف.", - "reports" => "التقارير", - "reports_desc" => "عرض وتوليد التقارير.", - "sales" => "المبيعات", - "sales_desc" => "معالجة المبيعات و المرتجعات.", - "suppliers" => "الموردين", - "suppliers_desc" => "إضافة، تحديث ، بحث و حذف مجموعات الموردين.", - "taxes" => "الضرائب", - "taxes_desc" => "اعدادات ضريبة المبيعات.", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "ميزات/مميزات", + "attributes_desc" => "إضافة، تعديل، حذف، وبحث بالميزات.", + "both" => "الاثنين", + "cashups" => "الصندوق النقدي", + "cashups_desc" => "إضافة، تعديل، حذف، وبحث بالصندوق النقدي.", + "config" => "إعدادات الشركة", + "config_desc" => "تغيير إعدادات الشركة.", + "customers" => "العملاء", + "customers_desc" => "إضافة، تحديث ، بحث و حذف العملاء.", + "employees" => "الموظفين", + "employees_desc" => "إضافة، تحديث ، بحث و حذف الموظفين.", + "expenses" => "المصاريف", + "expenses_categories" => "فئات المصاريف", + "expenses_categories_desc" => "إضافة، تحديث ، بحث و حذف فئات المصاريف.", + "expenses_desc" => "إضافة، تحديث ، بحث و حذف مصاريف.", + "giftcards" => "بطاقات الهدايا", + "giftcards_desc" => "إضافة، تحديث ، بحث و حذف بطاقات الهدايا.", + "home" => "الرئيسية", + "home_desc" => "اظهار الائحة الرئيسية.", + "item_kits" => "مجموعات الأصناف", + "item_kits_desc" => "إضافة، تحديث ، بحث و حذف مجموعات الأصناف.", + "items" => "الأصناف", + "items_desc" => "إضافة، تحديث ، بحث و حذف الأصناف.", + "messages" => "الرسائل", + "messages_desc" => "إرسال رسائل للعملاء ، الموردين او الموظفين.", + "migrate" => "النقل", + "migrate_desc" => "تحديث قاعدة البيانات.", + "office" => "المكتب", + "office_desc" => "اظهار الائحة المكتبية.", + "receivings" => "استلام الأصناف", + "receivings_desc" => "معالجة أوامر الشراء و استلام الأصناف.", + "reports" => "التقارير", + "reports_desc" => "عرض وتوليد التقارير.", + "sales" => "المبيعات", + "sales_desc" => "معالجة المبيعات و المرتجعات.", + "suppliers" => "الموردين", + "suppliers_desc" => "إضافة، تحديث ، بحث و حذف مجموعات الموردين.", + "taxes" => "الضرائب", + "taxes_desc" => "اعدادات ضريبة المبيعات.", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/ar-LB/Receivings.php b/app/Language/ar-LB/Receivings.php index d97a17538..9eb865550 100644 --- a/app/Language/ar-LB/Receivings.php +++ b/app/Language/ar-LB/Receivings.php @@ -1,58 +1,58 @@ "", - "cancel_receiving" => "إلغاء", - "cannot_be_deleted" => "لايمكن حذف الإستلام/الإستلامات.", - "comments" => "تعليقات", - "complete_receiving" => "إنهاء", - "confirm_cancel_receiving" => "هل أنت متاكد أنك تريد إلغاء هذا الإستلام؟ سيتم حذف كل الأصناف.", - "confirm_delete" => "هل أنت متاكد أنك تريد حذف هذا الإستلام؟ سيتم حذف كل الأصناف. لايمكن التراجع بعد الحذف.", - "confirm_finish_receiving" => "هل أنت متاكد أنك تريد تنفيذ هذا الإستلام؟ لايمكن التراجع بعد الإرسال.", - "confirm_restore" => "", - "cost" => "التكلفة", - "daily" => "", - "date" => "تاريخ الإستلام", - "date_required" => "يجب إدخال تاريخ صحيح.", - "date_type" => "التاريخ مطلوب.", - "delete_entire_sale" => "حذف عملية البيع بالكامل", - "discount" => "نسبة الخصم", - "edit" => "تحرير", - "edit_sale" => "تحرير إستلام", - "employee" => "الموظف", - "error_editing_item" => "خطاء فى تحرير الصنف.", - "error_requisition" => "غير قادر على تحريك الصنف من و إلى نفس المكان.", - "find_or_scan_item" => "بحث/مسح باركود صنف", - "find_or_scan_item_or_receipt" => "بحث/مسح باركود صنف أو إيصال", - "id" => "كود الإستلام", - "item_name" => "اسم الصنف", - "mode" => "وضع الإستلام", - "new_supplier" => "مورد جديد", - "one_or_multiple" => "إستلام/إستلامات", - "print_after_sale" => "طباعة بعد الإستلام", - "quantity" => "الكمية.", - "receipt" => "إيصال إستلام", - "receipt_number" => "كود الإستلام", - "receiving" => "إستلام", - "reference" => "رقم المرجع", - "register" => "استلام الأصناف", - "requisition" => "طلب شراء", - "return" => "إرتجاع لمورد", - "select_supplier" => "اختار المورد (اختيارى)", - "ship_pack" => "حزمة توصيل", - "start_typing_supplier_name" => "ابداء بكتابة اسم المورد....", - "stock" => "المخزون", - "stock_destination" => "المخزون المحول له", - "stock_locaiton" => "مكان المخزون", - "stock_source" => "مصدر المخزون", - "successfully_deleted" => "لقد تم الحذف", - "successfully_updated" => "لقد تم التحديث", - "supplier" => "المورد", - "supplier_address" => "العنوان", - "supplier_email" => "البريد الإلكتروني", - "supplier_location" => "المكان", - "total" => "الإجمالى", - "transaction_failed" => "حركات الإستلام فشلت.", - "unable_to_add_item" => "غير قادر على إضافة صنف للإستلام.", - "unsuccessfully_updated" => "لم يتم تحديث الإستلام بنجاح.", - "update" => "تحديث", + "amount_due" => "", + "cancel_receiving" => "إلغاء", + "cannot_be_deleted" => "لايمكن حذف الإستلام/الإستلامات.", + "comments" => "تعليقات", + "complete_receiving" => "إنهاء", + "confirm_cancel_receiving" => "هل أنت متاكد أنك تريد إلغاء هذا الإستلام؟ سيتم حذف كل الأصناف.", + "confirm_delete" => "هل أنت متاكد أنك تريد حذف هذا الإستلام؟ سيتم حذف كل الأصناف. لايمكن التراجع بعد الحذف.", + "confirm_finish_receiving" => "هل أنت متاكد أنك تريد تنفيذ هذا الإستلام؟ لايمكن التراجع بعد الإرسال.", + "confirm_restore" => "", + "cost" => "التكلفة", + "daily" => "", + "date" => "تاريخ الإستلام", + "date_required" => "يجب إدخال تاريخ صحيح.", + "date_type" => "التاريخ مطلوب.", + "delete_entire_sale" => "حذف عملية البيع بالكامل", + "discount" => "نسبة الخصم", + "edit" => "تحرير", + "edit_sale" => "تحرير إستلام", + "employee" => "الموظف", + "error_editing_item" => "خطاء فى تحرير الصنف.", + "error_requisition" => "غير قادر على تحريك الصنف من و إلى نفس المكان.", + "find_or_scan_item" => "بحث/مسح باركود صنف", + "find_or_scan_item_or_receipt" => "بحث/مسح باركود صنف أو إيصال", + "id" => "كود الإستلام", + "item_name" => "اسم الصنف", + "mode" => "وضع الإستلام", + "new_supplier" => "مورد جديد", + "one_or_multiple" => "إستلام/إستلامات", + "print_after_sale" => "طباعة بعد الإستلام", + "quantity" => "الكمية.", + "receipt" => "إيصال إستلام", + "receipt_number" => "كود الإستلام", + "receiving" => "إستلام", + "reference" => "رقم المرجع", + "register" => "استلام الأصناف", + "requisition" => "طلب شراء", + "return" => "إرتجاع لمورد", + "select_supplier" => "اختار المورد (اختيارى)", + "ship_pack" => "حزمة توصيل", + "start_typing_supplier_name" => "ابداء بكتابة اسم المورد....", + "stock" => "المخزون", + "stock_destination" => "المخزون المحول له", + "stock_locaiton" => "مكان المخزون", + "stock_source" => "مصدر المخزون", + "successfully_deleted" => "لقد تم الحذف", + "successfully_updated" => "لقد تم التحديث", + "supplier" => "المورد", + "supplier_address" => "العنوان", + "supplier_email" => "البريد الإلكتروني", + "supplier_location" => "المكان", + "total" => "الإجمالى", + "transaction_failed" => "حركات الإستلام فشلت.", + "unable_to_add_item" => "غير قادر على إضافة صنف للإستلام.", + "unsuccessfully_updated" => "لم يتم تحديث الإستلام بنجاح.", + "update" => "تحديث", ]; diff --git a/app/Language/ar-LB/Reports.php b/app/Language/ar-LB/Reports.php index 15d8cb9e2..84e8364a6 100644 --- a/app/Language/ar-LB/Reports.php +++ b/app/Language/ar-LB/Reports.php @@ -1,148 +1,148 @@ "الكل", - "authority" => "السلطة", - "canceled" => "ملغى", - "categories" => "التصنيفات", - "categories_summary_report" => "تقرير ملخص التصنيفات", - "category" => "تصنيف", - "code_canceled" => "كود العمليات الملغية", - "code_invoice" => "كود الفواتير الرسمية", - "code_pos" => "نقطة بيع", - "code_quote" => "كود عروض الاسعار", - "code_return" => "كود عمليات المرتجع", - "code_type" => "النوع", - "code_work_order" => "طلب عمل", - "comments" => "التعليقات", - "commission" => "", - "complete" => "عمليات البيع والمرتجع المكتملة", - "completed_sales" => "المبيعات المكتملة", - "confirm_delete" => "هل انت متاكد من مسح البيانات المحددة؟", - "confirm_restore" => "هل انت متاكد من استعادة البيانات المحددة؟", - "cost" => "سعر التكلفة", - "cost_price" => "سعر التكلفة", - "count" => "عدد", - "customer" => "عميل", - "customers" => "عملاء", - "customers_summary_report" => "تقرير ملخص العملاء", - "date" => "التاريخ", - "date_range" => "الفترة الزمنية", - "description" => "الوصف", - "detailed_receivings_report" => "تقرير مفصل لاستلام البضاعة", - "detailed_receivings_report_input" => "", - "detailed_reports" => "التقارير التفصيلية", - "detailed_requisition_report" => "تقرير مفصل لطلبات الشراء", - "detailed_sales_report" => "تقرير مفصل للمبيعات", - "discount" => "الخصم", - "discount_fixed" => "حسم ثابت", - "discount_percent" => "نسبة الخصم", - "discount_type" => "نوع الحسم", - "discounts" => "الخصومات", - "discounts_summary_report" => "تقرير ملخص الخصومات", - "earned" => "النقاط المحصلة", - "employee" => "موظف", - "employees" => "الموظفين", - "employees_summary_report" => "تقرير ملخص الموظفين", - "expenses" => "المصاريف", - "expenses_amount" => "القيمة", - "expenses_categories" => "فئات المصاريف", - "expenses_categories_summary_report" => "تقرير المصاريف حسب الفئات", - "expenses_category" => "الفئة", - "expenses_payment_amount" => "", - "expenses_tax_amount" => "الضريبة", - "expenses_total_amount" => "المبلغ الإجمالي", - "expenses_total_tax_amount" => "الضريبة الإجمالية", - "graphical_reports" => "تقارير رسومية", - "inventory" => "المخزن", - "inventory_low" => "نواقص المخزون", - "inventory_low_report" => "تقرير نواقص المخزون", - "inventory_reports" => "تقارير المخزن", - "inventory_summary" => "ملخص المخزن", - "inventory_summary_report" => "تقرير ملخص المخزن", - "item" => "صنف", - "item_count" => "تصفية عداد الصنف", - "item_name" => "اسم الصنف", - "item_number" => "باركود", - "items" => "الأصناف", - "items_purchased" => "الأصناف مشتراه", - "items_received" => "الأصناف مستلمة", - "items_summary_report" => "تقرير ملخص الأصناف", - "jurisdiction" => "الاختصاص القضائي", - "low_inventory" => "النواقص", - "low_inventory_report" => "تقرير نواقص المخزون", - "low_sell_quantity" => "كميات حسب الصنف الاولي", - "more_than_zero" => "أكثر من صفر", - "name" => "الاسم", - "no_reports_to_display" => "لايوجد أصناف لعرضها.", - "payment_type" => "طريقة الدفع", - "payments" => "المدفوعات", - "payments_summary_report" => "ملخص المدفوعات", - "profit" => "الربح", - "quantity" => "الكمية", - "quantity_purchased" => "المستلم", - "quotes" => "عروض اسعار", - "received_by" => "مستلمة بواسطة", - "receiving_id" => "كود الاستلام", - "receiving_type" => "نوع الاستلام", - "receivings" => "استلام البضاعة", - "reorder_level" => "نقطة اعادة الطلب", - "report" => "تقرير", - "report_input" => "مدخلات التقرير", - "reports" => "تقارير", - "requisition" => "طلب الشراء", - "requisition_by" => "القائم بطلب الشراء", - "requisition_id" => "كود طلب الشراء", - "requisition_item" => "الصنف", - "requisition_item_quantity" => "الكمية المطلوبة", - "requisition_related_item" => "الصنف", - "requisition_related_item_total_quantity" => "إجمالى الكمية", - "requisition_related_item_unit_quantity" => "الكمية", - "requisitions" => "طلبات الشراء", - "returns" => "المرتجعات", - "revenue" => "العائد", - "sale_id" => "كود عملية البيع", - "sale_type" => "طريقة البيع", - "sales" => "بيع", - "sales_amount" => "كمية المبيعات", - "sales_summary_report" => "تقرير ملخص المبيعات", - "sales_taxes" => "ضرائب المبيعات", - "sales_taxes_summary_report" => "تقرير ملخص ضرائب المبيعات", - "serial_number" => "مسلسل", - "service_charge" => "", - "sold_by" => "البائع", - "sold_items" => "", - "sold_to" => "مباع الى", - "stock_location" => "مكان المخزون", - "sub_total_value" => "المجموع الفرعى", - "subtotal" => "المجموع الفرعى", - "summary_reports" => "تقارير ملخصة", - "supplied_by" => "مورده بواسطة", - "supplier" => "المورد", - "suppliers" => "الموردين", - "suppliers_summary_report" => "تقرير ملخص الموردين", - "tax" => "الضريبة", - "tax_category" => "الفئة الضريبية", - "tax_name" => "اسم الضريبه", - "tax_percent" => "نسبة الضريبة", - "tax_rate" => "معدل الضريبة", - "taxes" => "الضرائب", - "taxes_summary_report" => "تقرير ملخص الضرائب", - "total" => "الإجمالى", - "total_inventory_value" => "إجمالى قيمة المخزن", - "total_low_sell_quantity" => "مجموع الكميات حسب الصنف الاولي", - "total_quantity" => "الكمية/العدد", - "total_retail" => "قيمة المبيع", - "trans_amount" => "قيمة العملية التجارية", - "trans_due" => "مستحق", - "trans_group" => "مجموعة العمليات التجارية", - "trans_nopay_sales" => "المبيعات الغير مسدده", - "trans_payments" => "المدفوعات", - "trans_refunded" => "المرتجع", - "trans_sales" => "المبيعات", - "trans_type" => "نوع العملية التجارية", - "type" => "النوع", - "unit_price" => "السعر", - "used" => "النقاط المستخدمة", - "work_orders" => "طلبات عمل", - "zero_and_less" => "صفر و أقل", + "all" => "الكل", + "authority" => "السلطة", + "canceled" => "ملغى", + "categories" => "التصنيفات", + "categories_summary_report" => "تقرير ملخص التصنيفات", + "category" => "تصنيف", + "code_canceled" => "كود العمليات الملغية", + "code_invoice" => "كود الفواتير الرسمية", + "code_pos" => "نقطة بيع", + "code_quote" => "كود عروض الاسعار", + "code_return" => "كود عمليات المرتجع", + "code_type" => "النوع", + "code_work_order" => "طلب عمل", + "comments" => "التعليقات", + "commission" => "", + "complete" => "عمليات البيع والمرتجع المكتملة", + "completed_sales" => "المبيعات المكتملة", + "confirm_delete" => "هل انت متاكد من مسح البيانات المحددة؟", + "confirm_restore" => "هل انت متاكد من استعادة البيانات المحددة؟", + "cost" => "سعر التكلفة", + "cost_price" => "سعر التكلفة", + "count" => "عدد", + "customer" => "عميل", + "customers" => "عملاء", + "customers_summary_report" => "تقرير ملخص العملاء", + "date" => "التاريخ", + "date_range" => "الفترة الزمنية", + "description" => "الوصف", + "detailed_receivings_report" => "تقرير مفصل لاستلام البضاعة", + "detailed_receivings_report_input" => "", + "detailed_reports" => "التقارير التفصيلية", + "detailed_requisition_report" => "تقرير مفصل لطلبات الشراء", + "detailed_sales_report" => "تقرير مفصل للمبيعات", + "discount" => "الخصم", + "discount_fixed" => "حسم ثابت", + "discount_percent" => "نسبة الخصم", + "discount_type" => "نوع الحسم", + "discounts" => "الخصومات", + "discounts_summary_report" => "تقرير ملخص الخصومات", + "earned" => "النقاط المحصلة", + "employee" => "موظف", + "employees" => "الموظفين", + "employees_summary_report" => "تقرير ملخص الموظفين", + "expenses" => "المصاريف", + "expenses_amount" => "القيمة", + "expenses_categories" => "فئات المصاريف", + "expenses_categories_summary_report" => "تقرير المصاريف حسب الفئات", + "expenses_category" => "الفئة", + "expenses_payment_amount" => "", + "expenses_tax_amount" => "الضريبة", + "expenses_total_amount" => "المبلغ الإجمالي", + "expenses_total_tax_amount" => "الضريبة الإجمالية", + "graphical_reports" => "تقارير رسومية", + "inventory" => "المخزن", + "inventory_low" => "نواقص المخزون", + "inventory_low_report" => "تقرير نواقص المخزون", + "inventory_reports" => "تقارير المخزن", + "inventory_summary" => "ملخص المخزن", + "inventory_summary_report" => "تقرير ملخص المخزن", + "item" => "صنف", + "item_count" => "تصفية عداد الصنف", + "item_name" => "اسم الصنف", + "item_number" => "باركود", + "items" => "الأصناف", + "items_purchased" => "الأصناف مشتراه", + "items_received" => "الأصناف مستلمة", + "items_summary_report" => "تقرير ملخص الأصناف", + "jurisdiction" => "الاختصاص القضائي", + "low_inventory" => "النواقص", + "low_inventory_report" => "تقرير نواقص المخزون", + "low_sell_quantity" => "كميات حسب الصنف الاولي", + "more_than_zero" => "أكثر من صفر", + "name" => "الاسم", + "no_reports_to_display" => "لايوجد أصناف لعرضها.", + "payment_type" => "طريقة الدفع", + "payments" => "المدفوعات", + "payments_summary_report" => "ملخص المدفوعات", + "profit" => "الربح", + "quantity" => "الكمية", + "quantity_purchased" => "المستلم", + "quotes" => "عروض اسعار", + "received_by" => "مستلمة بواسطة", + "receiving_id" => "كود الاستلام", + "receiving_type" => "نوع الاستلام", + "receivings" => "استلام البضاعة", + "reorder_level" => "نقطة اعادة الطلب", + "report" => "تقرير", + "report_input" => "مدخلات التقرير", + "reports" => "تقارير", + "requisition" => "طلب الشراء", + "requisition_by" => "القائم بطلب الشراء", + "requisition_id" => "كود طلب الشراء", + "requisition_item" => "الصنف", + "requisition_item_quantity" => "الكمية المطلوبة", + "requisition_related_item" => "الصنف", + "requisition_related_item_total_quantity" => "إجمالى الكمية", + "requisition_related_item_unit_quantity" => "الكمية", + "requisitions" => "طلبات الشراء", + "returns" => "المرتجعات", + "revenue" => "العائد", + "sale_id" => "كود عملية البيع", + "sale_type" => "طريقة البيع", + "sales" => "بيع", + "sales_amount" => "كمية المبيعات", + "sales_summary_report" => "تقرير ملخص المبيعات", + "sales_taxes" => "ضرائب المبيعات", + "sales_taxes_summary_report" => "تقرير ملخص ضرائب المبيعات", + "serial_number" => "مسلسل", + "service_charge" => "", + "sold_by" => "البائع", + "sold_items" => "", + "sold_to" => "مباع الى", + "stock_location" => "مكان المخزون", + "sub_total_value" => "المجموع الفرعى", + "subtotal" => "المجموع الفرعى", + "summary_reports" => "تقارير ملخصة", + "supplied_by" => "مورده بواسطة", + "supplier" => "المورد", + "suppliers" => "الموردين", + "suppliers_summary_report" => "تقرير ملخص الموردين", + "tax" => "الضريبة", + "tax_category" => "الفئة الضريبية", + "tax_name" => "اسم الضريبه", + "tax_percent" => "نسبة الضريبة", + "tax_rate" => "معدل الضريبة", + "taxes" => "الضرائب", + "taxes_summary_report" => "تقرير ملخص الضرائب", + "total" => "الإجمالى", + "total_inventory_value" => "إجمالى قيمة المخزن", + "total_low_sell_quantity" => "مجموع الكميات حسب الصنف الاولي", + "total_quantity" => "الكمية/العدد", + "total_retail" => "قيمة المبيع", + "trans_amount" => "قيمة العملية التجارية", + "trans_due" => "مستحق", + "trans_group" => "مجموعة العمليات التجارية", + "trans_nopay_sales" => "المبيعات الغير مسدده", + "trans_payments" => "المدفوعات", + "trans_refunded" => "المرتجع", + "trans_sales" => "المبيعات", + "trans_type" => "نوع العملية التجارية", + "type" => "النوع", + "unit_price" => "السعر", + "used" => "النقاط المستخدمة", + "work_orders" => "طلبات عمل", + "zero_and_less" => "صفر و أقل", ]; diff --git a/app/Language/ar-LB/Sales.php b/app/Language/ar-LB/Sales.php index 50435b15d..6db47135a 100644 --- a/app/Language/ar-LB/Sales.php +++ b/app/Language/ar-LB/Sales.php @@ -1,224 +1,224 @@ "النقاط المتاحة", - "rewards_package" => "فئة المكافئة", - "rewards_remaining_balance" => "رصيد النقاط المتبقي هو ", - "account_number" => "حساب", - "add_payment" => "إضافة دفع", - "amount_due" => "المبلغ المطلوب", - "amount_tendered" => "المبلغ المدفوع", - "authorized_signature" => "توقيع معتمد", - "cancel_sale" => "الغاء عملية البيع", - "cash" => "نقدى", - "cash_1" => "", - "cash_2" => "", - "cash_3" => "", - "cash_4" => "", - "cash_adjustment" => "تعديل الصندوق", - "cash_deposit" => "ايداع نقدي", - "cash_filter" => "نقدى", - "change_due" => "الباقى", - "change_price" => "تغيير سعر البيع", - "check" => "شيك", - "check_balance" => "تذكير بموعد الشيك", - "check_filter" => "شيك", - "close" => "", - "comment" => "تعليق", - "comments" => "تعليقات", - "company_name" => "", - "complete" => "", - "complete_sale" => "إتمام البيع", - "confirm_cancel_sale" => "هل أنت متأكد من الغاء عملية البيع ؟ سيتم إزالة كل الأصناف.", - "confirm_delete" => "هل تريد حذف عمليات البيع المختارة؟", - "confirm_restore" => "هل انت متاكد من استعادة عملية البيع؟", - "credit" => "بطاقة إئتمانية", - "credit_deposit" => "ايداع ببطاقة ائتمان", - "credit_filter" => "بطاقة بنكية", - "current_table" => "", - "customer" => "العميل", - "customer_address" => "العنوان", - "customer_discount" => "الخصم", - "customer_email" => "البريد الإلكترونى", - "customer_location" => "المكان", - "customer_mailchimp_status" => "حالة بريد ميل تشيمب", - "customer_optional" => "(مطلوب للدفعات المستحقة)", - "customer_required" => "(اجباري)", - "customer_total" => "المجموع", - "customer_total_spent" => "", - "daily_sales" => "", - "date" => "تاريخ البيع", - "date_range" => "الفترة الزمنية", - "date_required" => "يجب إدخال تاريخ صحيح.", - "date_type" => "التاريخ مطلوب.", - "debit" => "بطاقة خصم", - "debit_filter" => "", - "delete" => "اسمح بالمسح", - "delete_confirmation" => "هل أنت متأكد أنك تريد حذف عملية البيع هذه؟ لايمكن التراجع بعد الحذف.", - "delete_entire_sale" => "حذف عملية البيع بالكامل", - "delete_successful" => "لقد تم حذف عملية البيع بنجاح.", - "delete_unsuccessful" => "لقد فشل حذف عملية البيع.", - "description_abbrv" => "الوصف.", - "discard" => "الغاء", - "discard_quote" => "", - "discount" => "خصم", - "discount_included" => "% خصم", - "discount_short" => "%", - "due" => "مستحق", - "due_filter" => "مستحق", - "edit" => "تعديل", - "edit_item" => "تعديل مادة", - "edit_sale" => "تعديل عملية بيع", - "email_receipt" => "إرسال الايصال بالبريد الالكترونى", - "employee" => "الموظف", - "entry" => "ادخال", - "error_editing_item" => "خطاء فى تعديل المادة", - "find_or_scan_item" => "بحث/مسح باركود المادة", - "find_or_scan_item_or_receipt" => "بحث/مسح باركود المادة أو الايصال", - "giftcard" => "بطاقة هدية", - "giftcard_balance" => "رصيد بطاقة الهدية", - "giftcard_filter" => "", - "giftcard_number" => "رقم بطاقة الهدية", - "group_by_category" => "ترتيب حسب الفئة", - "group_by_type" => "ترتيب حسب النوع", - "hsn" => "رمز نظام منسق", - "id" => "رقم عملية البيع", - "include_prices" => "يشمل الاسعار؟", - "invoice" => "فاتورة", - "invoice_confirm" => "هذه الفاتورة سوف ترسل إلى", - "invoice_enable" => "رقم فاتورة", - "invoice_filter" => "الفواتير", - "invoice_no_email" => "هذا العميل ليس لدية بريد الكترونى صالح.", - "invoice_number" => "فاتورة رقم #", - "invoice_number_duplicate" => "من فضلك أدخل رقم فاتورة غير مكرر.", - "invoice_sent" => "تم إرسال الفاتورة إلى", - "invoice_total" => "إجمالي الفاتورة", - "invoice_type_custom_invoice" => "فاتورة مخصصة (custom_invoice.php)", - "invoice_type_custom_tax_invoice" => "الفاتورة الضريبية المخصصة (custom_tax_invoice.php)", - "invoice_type_invoice" => "الفاتورة (invoice.php)", - "invoice_type_tax_invoice" => "الفاتورة الضريبية (tax_invoice.php)", - "invoice_unsent" => "فشل إرسال الفاتورة إلى", - "invoice_update" => "إعادة العد", - "item_insufficient_of_stock" => "لايوجد مخزون كافى من المادة.", - "item_name" => "اسم المادة", - "item_number" => "مادة رقم #", - "item_out_of_stock" => "لايوجد مخزون من المادة.", - "key_browser" => "اختصارات مفيده", - "key_cancel" => "الغاء عملية البيع/فاتوره/عرض السعار", - "key_customer_search" => "بحث عن عميل", - "key_finish_quote" => "انهاء عملية البيع/الفاتورة من دون الدفع", - "key_finish_sale" => "اضافة دفع نقدي كمل واتمام عملية البيع", - "key_full" => "الإظهار في صفحه كامله", - "key_function" => "Function", - "key_help" => "اختصارات", - "key_help_modal" => "إظهار الاختصارات", - "key_in" => "تكبير الصفحه", - "key_item_search" => "بحث حسب الصنف", - "key_out" => "تصغير الصفحه", - "key_payment" => "اضافة دفعه", - "key_print" => "طباعة الصفحة الحالية", - "key_restore" => "إعادة ضبط اعدادات الصفحه", - "key_search" => "البحث في التقارير", - "key_suspend" => "حفط عملية البيع", - "key_suspended" => "إظهار عمليات البيع المحفظه", - "key_system" => "اختصارات متاحه", - "key_tendered" => "تعديل المبلغ المدفوع", - "key_title" => "اختصارات صفحة المبيعات", - "mc" => "", - "mode" => "وضع التسجيل", - "must_enter_numeric" => "يجب إدخال رقم للمبلغ الفعلى المدفوع.", - "must_enter_numeric_giftcard" => "رمز بطاقة الهدية يجب أن يكتون ارقام فقط.", - "new_customer" => "عميل جديد", - "new_item" => "مادة جديدة", - "no_description" => "بدون وصف", - "no_filter" => "الكل", - "no_items_in_cart" => "لايوجد اي مادة فى السلة.", - "no_sales_to_display" => "لاتوجد عمليات بيع لعرضها.", - "none_selected" => "لم تقم بإختيار أى عمليات بيع لحذفها.", - "nontaxed_ind" => " ", - "not_authorized" => "ليس لديك صلاحية.", - "one_or_multiple" => "عمليات بيع", - "payment" => "طريقة الدفع", - "payment_amount" => "القيمة", - "payment_not_cover_total" => "المبلغ المدفوع لايغطى المبلغ الإجمالى.", - "payment_type" => "طريقة", - "payments" => "", - "payments_total" => "إجمالى المدفوعات", - "price" => "السعر", - "print_after_sale" => "اطبع بعد عملية البيع", - "quantity" => "الكمية", - "quantity_less_than_reorder_level" => "تحذير: الكمية أقل من الحد المطلوب لهذه المادة.", - "quantity_less_than_zero" => "تحذير! الكمية المطلوبة غير كافية، بإمكانك إتمام عملية البيع ، لكن تحقق من مخزنك.", - "quantity_of_items" => "عدد ال {0} من الاصناف", - "quote" => "عرض اسعار", - "quote_number" => "رقم عرض الاسعار", - "quote_number_duplicate" => "رقم عرض الاسعار يجب ان يكون فريد.", - "quote_sent" => "عرض الاسعار ارسل الى", - "quote_unsent" => "لم يتم ارسال عرض الاسعار الى", - "receipt" => "عملية بيع #", - "receipt_no_email" => "هذا العميل ليس له اي بريد الكتروني صحيح.", - "receipt_number" => "إيصال بيع", - "receipt_sent" => "تم إرسال الإيصال إلى", - "receipt_unsent" => "فشل إرسال الإيصال إلى", - "refund" => "نوع/سبب الاسترجاع", - "register" => "سجل المبيعات", - "remove_customer" => "حذف عميل", - "remove_discount" => "", - "return" => "إسترجاع", - "rewards" => "نقاط المكافئة", - "rewards_balance" => "رصيد نقاط المكافئة", - "sale" => "بيع", - "sale_by_invoice" => "البيع بفاتورة رسمية", - "sale_for_customer" => "العميل:", - "sale_time" => "الوقت", - "sales_tax" => "ضريبة البيع", - "sales_total" => "", - "select_customer" => "اختيار عميل (اختياري)", - "send_invoice" => "إرسال الفاتورة", - "send_quote" => "ارسال عرض الاسعار", - "send_receipt" => "إرسال إيصال", - "send_work_order" => "ارسال طلب عمل", - "serial" => "مسلسل", - "service_charge" => "", - "show_due" => "", - "show_invoice" => "عرض الفاتورة", - "show_receipt" => "عرض الإيصال", - "start_typing_customer_name" => "ابداء بكتابة اسم العميل...", - "start_typing_item_name" => "ابداء بكتابة اسم أو مسح باركود الصنف...", - "stock" => "المخزن", - "stock_location" => "موقع التخزين", - "sub_total" => "المجموع الفرعي", - "successfully_deleted" => "لقد تم الحذف بنجاح", - "successfully_restored" => "لقد تمت عملية الاستعادة بنجاح", - "successfully_suspended_sale" => "لقد تم تعليق عملية البيع بنجاح.", - "successfully_updated" => "لقد تم تحديث بيانات عملية البيع بنجاح.", - "suspend_sale" => "تعليق عملية البيع", - "suspended_doc_id" => "ملف", - "suspended_sale_id" => "كود عملية البيع", - "suspended_sales" => "المبيعات المعلقة", - "table" => "طاولة", - "takings" => "المبيع اليومي", - "tax" => "ضريبة", - "tax_id" => "الرقم الضريبي", - "tax_invoice" => "فاتورة ضريبية", - "tax_percent" => "ضريبة %", - "taxed_ind" => "ض", - "total" => "المجموع", - "total_tax_exclusive" => "الإجمالى بدون الضرائب", - "transaction_failed" => "فشل حركة البيع.", - "unable_to_add_item" => "غير قادر على إضافة صنف لعملية البيع", - "unsuccessfully_deleted" => "لايمكن حذف عملية/عمليات البيع.", - "unsuccessfully_restored" => "فشل في استعادة عملية البيع.", - "unsuccessfully_suspended_sale" => "فشل تعليق عملية البيع.", - "unsuccessfully_updated" => "فشل تحديث عملية البيع.", - "unsuspend" => "إلغاء تعليق", - "unsuspend_and_delete" => "إلغاء تعليق وحذف", - "update" => "تحديث", - "upi" => "رقم التعريف الشخصي", - "visa" => "", - "wholesale" => "", - "work_order" => "طلب عمل", - "work_order_number" => "رقم طلب العمل", - "work_order_number_duplicate" => "رقم طلب العمل يجب ان يكون فريد.", - "work_order_sent" => "تم ارسال طلب العمل الى", - "work_order_unsent" => "فشل في ارسال طلب العمل الى", + "customers_available_points" => "النقاط المتاحة", + "rewards_package" => "فئة المكافئة", + "rewards_remaining_balance" => "رصيد النقاط المتبقي هو ", + "account_number" => "حساب", + "add_payment" => "إضافة دفع", + "amount_due" => "المبلغ المطلوب", + "amount_tendered" => "المبلغ المدفوع", + "authorized_signature" => "توقيع معتمد", + "cancel_sale" => "الغاء عملية البيع", + "cash" => "نقدى", + "cash_1" => "", + "cash_2" => "", + "cash_3" => "", + "cash_4" => "", + "cash_adjustment" => "تعديل الصندوق", + "cash_deposit" => "ايداع نقدي", + "cash_filter" => "نقدى", + "change_due" => "الباقى", + "change_price" => "تغيير سعر البيع", + "check" => "شيك", + "check_balance" => "تذكير بموعد الشيك", + "check_filter" => "شيك", + "close" => "", + "comment" => "تعليق", + "comments" => "تعليقات", + "company_name" => "", + "complete" => "", + "complete_sale" => "إتمام البيع", + "confirm_cancel_sale" => "هل أنت متأكد من الغاء عملية البيع ؟ سيتم إزالة كل الأصناف.", + "confirm_delete" => "هل تريد حذف عمليات البيع المختارة؟", + "confirm_restore" => "هل انت متاكد من استعادة عملية البيع؟", + "credit" => "بطاقة إئتمانية", + "credit_deposit" => "ايداع ببطاقة ائتمان", + "credit_filter" => "بطاقة بنكية", + "current_table" => "", + "customer" => "العميل", + "customer_address" => "العنوان", + "customer_discount" => "الخصم", + "customer_email" => "البريد الإلكترونى", + "customer_location" => "المكان", + "customer_mailchimp_status" => "حالة بريد ميل تشيمب", + "customer_optional" => "(مطلوب للدفعات المستحقة)", + "customer_required" => "(اجباري)", + "customer_total" => "المجموع", + "customer_total_spent" => "", + "daily_sales" => "", + "date" => "تاريخ البيع", + "date_range" => "الفترة الزمنية", + "date_required" => "يجب إدخال تاريخ صحيح.", + "date_type" => "التاريخ مطلوب.", + "debit" => "بطاقة خصم", + "debit_filter" => "", + "delete" => "اسمح بالمسح", + "delete_confirmation" => "هل أنت متأكد أنك تريد حذف عملية البيع هذه؟ لايمكن التراجع بعد الحذف.", + "delete_entire_sale" => "حذف عملية البيع بالكامل", + "delete_successful" => "لقد تم حذف عملية البيع بنجاح.", + "delete_unsuccessful" => "لقد فشل حذف عملية البيع.", + "description_abbrv" => "الوصف.", + "discard" => "الغاء", + "discard_quote" => "", + "discount" => "خصم", + "discount_included" => "% خصم", + "discount_short" => "%", + "due" => "مستحق", + "due_filter" => "مستحق", + "edit" => "تعديل", + "edit_item" => "تعديل مادة", + "edit_sale" => "تعديل عملية بيع", + "email_receipt" => "إرسال الايصال بالبريد الالكترونى", + "employee" => "الموظف", + "entry" => "ادخال", + "error_editing_item" => "خطاء فى تعديل المادة", + "find_or_scan_item" => "بحث/مسح باركود المادة", + "find_or_scan_item_or_receipt" => "بحث/مسح باركود المادة أو الايصال", + "giftcard" => "بطاقة هدية", + "giftcard_balance" => "رصيد بطاقة الهدية", + "giftcard_filter" => "", + "giftcard_number" => "رقم بطاقة الهدية", + "group_by_category" => "ترتيب حسب الفئة", + "group_by_type" => "ترتيب حسب النوع", + "hsn" => "رمز نظام منسق", + "id" => "رقم عملية البيع", + "include_prices" => "يشمل الاسعار؟", + "invoice" => "فاتورة", + "invoice_confirm" => "هذه الفاتورة سوف ترسل إلى", + "invoice_enable" => "رقم فاتورة", + "invoice_filter" => "الفواتير", + "invoice_no_email" => "هذا العميل ليس لدية بريد الكترونى صالح.", + "invoice_number" => "فاتورة رقم #", + "invoice_number_duplicate" => "من فضلك أدخل رقم فاتورة غير مكرر.", + "invoice_sent" => "تم إرسال الفاتورة إلى", + "invoice_total" => "إجمالي الفاتورة", + "invoice_type_custom_invoice" => "فاتورة مخصصة (custom_invoice.php)", + "invoice_type_custom_tax_invoice" => "الفاتورة الضريبية المخصصة (custom_tax_invoice.php)", + "invoice_type_invoice" => "الفاتورة (invoice.php)", + "invoice_type_tax_invoice" => "الفاتورة الضريبية (tax_invoice.php)", + "invoice_unsent" => "فشل إرسال الفاتورة إلى", + "invoice_update" => "إعادة العد", + "item_insufficient_of_stock" => "لايوجد مخزون كافى من المادة.", + "item_name" => "اسم المادة", + "item_number" => "مادة رقم #", + "item_out_of_stock" => "لايوجد مخزون من المادة.", + "key_browser" => "اختصارات مفيده", + "key_cancel" => "الغاء عملية البيع/فاتوره/عرض السعار", + "key_customer_search" => "بحث عن عميل", + "key_finish_quote" => "انهاء عملية البيع/الفاتورة من دون الدفع", + "key_finish_sale" => "اضافة دفع نقدي كمل واتمام عملية البيع", + "key_full" => "الإظهار في صفحه كامله", + "key_function" => "Function", + "key_help" => "اختصارات", + "key_help_modal" => "إظهار الاختصارات", + "key_in" => "تكبير الصفحه", + "key_item_search" => "بحث حسب الصنف", + "key_out" => "تصغير الصفحه", + "key_payment" => "اضافة دفعه", + "key_print" => "طباعة الصفحة الحالية", + "key_restore" => "إعادة ضبط اعدادات الصفحه", + "key_search" => "البحث في التقارير", + "key_suspend" => "حفط عملية البيع", + "key_suspended" => "إظهار عمليات البيع المحفظه", + "key_system" => "اختصارات متاحه", + "key_tendered" => "تعديل المبلغ المدفوع", + "key_title" => "اختصارات صفحة المبيعات", + "mc" => "", + "mode" => "وضع التسجيل", + "must_enter_numeric" => "يجب إدخال رقم للمبلغ الفعلى المدفوع.", + "must_enter_numeric_giftcard" => "رمز بطاقة الهدية يجب أن يكتون ارقام فقط.", + "new_customer" => "عميل جديد", + "new_item" => "مادة جديدة", + "no_description" => "بدون وصف", + "no_filter" => "الكل", + "no_items_in_cart" => "لايوجد اي مادة فى السلة.", + "no_sales_to_display" => "لاتوجد عمليات بيع لعرضها.", + "none_selected" => "لم تقم بإختيار أى عمليات بيع لحذفها.", + "nontaxed_ind" => " ", + "not_authorized" => "ليس لديك صلاحية.", + "one_or_multiple" => "عمليات بيع", + "payment" => "طريقة الدفع", + "payment_amount" => "القيمة", + "payment_not_cover_total" => "المبلغ المدفوع لايغطى المبلغ الإجمالى.", + "payment_type" => "طريقة", + "payments" => "", + "payments_total" => "إجمالى المدفوعات", + "price" => "السعر", + "print_after_sale" => "اطبع بعد عملية البيع", + "quantity" => "الكمية", + "quantity_less_than_reorder_level" => "تحذير: الكمية أقل من الحد المطلوب لهذه المادة.", + "quantity_less_than_zero" => "تحذير! الكمية المطلوبة غير كافية، بإمكانك إتمام عملية البيع ، لكن تحقق من مخزنك.", + "quantity_of_items" => "عدد ال {0} من الاصناف", + "quote" => "عرض اسعار", + "quote_number" => "رقم عرض الاسعار", + "quote_number_duplicate" => "رقم عرض الاسعار يجب ان يكون فريد.", + "quote_sent" => "عرض الاسعار ارسل الى", + "quote_unsent" => "لم يتم ارسال عرض الاسعار الى", + "receipt" => "عملية بيع #", + "receipt_no_email" => "هذا العميل ليس له اي بريد الكتروني صحيح.", + "receipt_number" => "إيصال بيع", + "receipt_sent" => "تم إرسال الإيصال إلى", + "receipt_unsent" => "فشل إرسال الإيصال إلى", + "refund" => "نوع/سبب الاسترجاع", + "register" => "سجل المبيعات", + "remove_customer" => "حذف عميل", + "remove_discount" => "", + "return" => "إسترجاع", + "rewards" => "نقاط المكافئة", + "rewards_balance" => "رصيد نقاط المكافئة", + "sale" => "بيع", + "sale_by_invoice" => "البيع بفاتورة رسمية", + "sale_for_customer" => "العميل:", + "sale_time" => "الوقت", + "sales_tax" => "ضريبة البيع", + "sales_total" => "", + "select_customer" => "اختيار عميل (اختياري)", + "send_invoice" => "إرسال الفاتورة", + "send_quote" => "ارسال عرض الاسعار", + "send_receipt" => "إرسال إيصال", + "send_work_order" => "ارسال طلب عمل", + "serial" => "مسلسل", + "service_charge" => "", + "show_due" => "", + "show_invoice" => "عرض الفاتورة", + "show_receipt" => "عرض الإيصال", + "start_typing_customer_name" => "ابداء بكتابة اسم العميل...", + "start_typing_item_name" => "ابداء بكتابة اسم أو مسح باركود الصنف...", + "stock" => "المخزن", + "stock_location" => "موقع التخزين", + "sub_total" => "المجموع الفرعي", + "successfully_deleted" => "لقد تم الحذف بنجاح", + "successfully_restored" => "لقد تمت عملية الاستعادة بنجاح", + "successfully_suspended_sale" => "لقد تم تعليق عملية البيع بنجاح.", + "successfully_updated" => "لقد تم تحديث بيانات عملية البيع بنجاح.", + "suspend_sale" => "تعليق عملية البيع", + "suspended_doc_id" => "ملف", + "suspended_sale_id" => "كود عملية البيع", + "suspended_sales" => "المبيعات المعلقة", + "table" => "طاولة", + "takings" => "المبيع اليومي", + "tax" => "ضريبة", + "tax_id" => "الرقم الضريبي", + "tax_invoice" => "فاتورة ضريبية", + "tax_percent" => "ضريبة %", + "taxed_ind" => "ض", + "total" => "المجموع", + "total_tax_exclusive" => "الإجمالى بدون الضرائب", + "transaction_failed" => "فشل حركة البيع.", + "unable_to_add_item" => "غير قادر على إضافة صنف لعملية البيع", + "unsuccessfully_deleted" => "لايمكن حذف عملية/عمليات البيع.", + "unsuccessfully_restored" => "فشل في استعادة عملية البيع.", + "unsuccessfully_suspended_sale" => "فشل تعليق عملية البيع.", + "unsuccessfully_updated" => "فشل تحديث عملية البيع.", + "unsuspend" => "إلغاء تعليق", + "unsuspend_and_delete" => "إلغاء تعليق وحذف", + "update" => "تحديث", + "upi" => "رقم التعريف الشخصي", + "visa" => "", + "wholesale" => "", + "work_order" => "طلب عمل", + "work_order_number" => "رقم طلب العمل", + "work_order_number_duplicate" => "رقم طلب العمل يجب ان يكون فريد.", + "work_order_sent" => "تم ارسال طلب العمل الى", + "work_order_unsent" => "فشل في ارسال طلب العمل الى", ]; diff --git a/app/Language/ar-LB/Suppliers.php b/app/Language/ar-LB/Suppliers.php index 437a84d11..457997b35 100644 --- a/app/Language/ar-LB/Suppliers.php +++ b/app/Language/ar-LB/Suppliers.php @@ -1,24 +1,24 @@ "رقم الحساب", - "agency_name" => "اسم الوكالة", - "cannot_be_deleted" => "لايمكن حذف المورد/الموردين لوجود مبيعات مرتبطة بهم.", - "category" => "الفئة", - "company_name" => "اسم الشركة", - "company_name_required" => "اسم الشركة مطلوب.", - "confirm_delete" => "هل تريد حقا حذف هؤلاء الموردين؟", - "confirm_restore" => "هل تريد بالتأكيد استعادة المورد (الموردين) المحددين؟", - "cost" => "مورد كلفة", - "error_adding_updating" => "خطاء فى إضافة/تحديث المورد.", - "goods" => "مورد بضائع", - "new" => "مورد جديد", - "none_selected" => "لم تختار موردين لحذفهم.", - "one_or_multiple" => "مورد/موردين", - "successful_adding" => "لقد تم إضافة المورد بنجاح", - "successful_deleted" => "لقد تم حذف المورد بنجاح", - "successful_updating" => "لقد تم تحديث بيانات المورد بنجاح", - "supplier" => "مورد", - "supplier_id" => "كود المورد", - "tax_id" => "الرقم الضريبي", - "update" => "تحديث بيانات المورد", + "account_number" => "رقم الحساب", + "agency_name" => "اسم الوكالة", + "cannot_be_deleted" => "لايمكن حذف المورد/الموردين لوجود مبيعات مرتبطة بهم.", + "category" => "الفئة", + "company_name" => "اسم الشركة", + "company_name_required" => "اسم الشركة مطلوب.", + "confirm_delete" => "هل تريد حقا حذف هؤلاء الموردين؟", + "confirm_restore" => "هل تريد بالتأكيد استعادة المورد (الموردين) المحددين؟", + "cost" => "مورد كلفة", + "error_adding_updating" => "خطاء فى إضافة/تحديث المورد.", + "goods" => "مورد بضائع", + "new" => "مورد جديد", + "none_selected" => "لم تختار موردين لحذفهم.", + "one_or_multiple" => "مورد/موردين", + "successful_adding" => "لقد تم إضافة المورد بنجاح", + "successful_deleted" => "لقد تم حذف المورد بنجاح", + "successful_updating" => "لقد تم تحديث بيانات المورد بنجاح", + "supplier" => "مورد", + "supplier_id" => "كود المورد", + "tax_id" => "الرقم الضريبي", + "update" => "تحديث بيانات المورد", ]; diff --git a/app/Language/ar-LB/Taxes.php b/app/Language/ar-LB/Taxes.php index 73a3a44a3..dd0851d82 100644 --- a/app/Language/ar-LB/Taxes.php +++ b/app/Language/ar-LB/Taxes.php @@ -1,82 +1,82 @@ "أضافة أستثناء", - "cascade" => "تتالي", - "cascade_sequence" => "تسلسل متتالي", - "city" => "مدينة", - "code" => "الشفرة", - "confirm_delete" => "هل أنت متأكد أنك تريد حذف قانون الضرائب؟ لا يمكن التراجع عن هذا الإجراء", - "confirm_restore" => "هل أنت متأكد من أستعادة الأكواد الضريبية؟", - "default_tax_category" => "التصنيف الضريبي الأفتراضي", - "default_tax_rate" => "معدل الضريبة الافتراضي", - "error_adding_updating" => "فشل إضافة أو تحديث قانون الضرائب", - "group_seq" => "تسلسل المجموعة", - "jurisdiction_name" => "اسم الولاية القضائية", - "name" => "الاسم", - "new" => "ضريبة جديدة", - "no_taxes" => "", - "no_taxes_to_display" => "لا يوجد أكواد ضريبية للعرض", - "reporting_authority" => "السلطة الضريبية", - "round_half_down" => "نصف الاسفل", - "round_half_even" => "تقريب للنصف", - "round_half_odd" => "تقريب غريب", - "round_half_up" => "تقريب للاعلى", - "rounding_code" => "كود التقريب", - "sales_tax" => "ضريبة المبيعات", - "sales_tax_by_invoice" => "ضريبة المبيعات بالفاتورة", - "sequence" => "تسلسل", - "state" => "حالة", - "successful_deleted" => "تم المسح بنجاح", - "tax_categories" => "فئات الضرائب", - "tax_categories_configuration" => "اعدادات فئات الضرائب", - "tax_categories_saved_successfully" => "تم حفظ تغييرات الفئات الضريبية", - "tax_categories_saved_unsuccessfully" => "لم يتم حفظ تغييرات الفئات الضريبة", - "tax_category" => "الفئة الضريبية", - "tax_category_code" => "رمز الفئة الضريبية", - "tax_category_duplicate" => "الفئة الضريبية مكررة", - "tax_category_invalid_chars" => "أحرف غير صالحة في اسم الفئة الضريبية", - "tax_category_name" => "اسم فئة الضريبة", - "tax_category_new" => "فئة الضريبية جديدة", - "tax_category_required" => "الفئة الضريبة مطلوبة", - "tax_code" => "كود الضريبة", - "tax_code_cannot_be_deleted" => "فشل مسح الكود الضريبي", - "tax_code_duplicate" => "رمز الضريبة مكرر", - "tax_code_invalid_chars" => "أحرف لا يمكن استعمالها في قانون الضرائب", - "tax_code_name" => "اسم الكود الضريبي", - "tax_code_required" => "حقل الكود الضريبي مطلوب", - "tax_code_successful_deleted" => "تم مسح الكود الضريبي", - "tax_code_successful_updated" => "تم التعديل بنجاح", - "tax_code_successful_updating" => "تم تعديل الكود الضريبي بنجاح", - "tax_code_successfully_added" => "لقد تم إضافة المورد بنجاح", - "tax_code_type" => "نوع كود الضريبة", - "tax_codes" => "الرموز الضريبية", - "tax_codes_configuration" => "اعدادات الرموز الضريبية", - "tax_codes_saved_successfully" => "تم حفظ تغييرات قانون الضرائب", - "tax_codes_saved_unsuccessfully" => "لم يتم حفظ تغييرات قانون الضريبة", - "tax_excluded" => "لا تشمل الضرائب", - "tax_group" => "المجموعة الضريبية", - "tax_group_not_unique" => "فئة الضرائب يجب ان تكون فريده", - "tax_group_sequence" => "تسلسل مجموعة الضرائب", - "tax_included" => "الضريبة مشمولة", - "tax_jurisdiction" => "الاختصاص الضريبي", - "tax_jurisdiction_duplicate" => "تكرير الاختصاص الضريبي", - "tax_jurisdiction_invalid_chars" => "أحرف لا يمكن استعمالها في اسم الولاية القضائية", - "tax_jurisdiction_required" => "الاختصاص الضريبي هي خانة اجبارية", - "tax_jurisdictions" => "الاختصاصات الضريبية", - "tax_jurisdictions_configuration" => "اعجدادات الاختصاصات الضريبية", - "tax_jurisdictions_saved_successfully" => "تم حفظ تغييرات الاختصاص الضريبي", - "tax_jurisdictions_saved_unsuccessfully" => "لم يتم حفظ تغييرات الاختصاص الضريبي", - "tax_rate" => "معدل الضريبة الافتراضي %", - "tax_rate_configuration" => "اعجدادات معدل الضريبة", - "tax_rate_error_adding_updating" => "فشل إضافة أو تحديث معدل الضريبة", - "tax_rate_numeric" => "معدل الضريبة الافتراضي يجب أن يكون رقم", - "tax_rate_required" => "معدل الضريبة الافتراضي مطلوب", - "tax_rate_successful_updated" => "لقد تم بالتحديث بنجاح", - "tax_rate_successfully_added" => "لقد تم الاضافة بنجاح", - "tax_rates" => "معدلات الضريبة", - "tax_rates_configuration" => "اعدادات معدلات الضريبة", - "tax_rounding" => "التقريب الضريبي", - "tax_type" => "نوع الضريبة", - "update" => "تحديث معدل الضريبة", - "vat_tax" => "ضريبة القيمة المضافة", + "add_exception" => "أضافة أستثناء", + "cascade" => "تتالي", + "cascade_sequence" => "تسلسل متتالي", + "city" => "مدينة", + "code" => "الشفرة", + "confirm_delete" => "هل أنت متأكد أنك تريد حذف قانون الضرائب؟ لا يمكن التراجع عن هذا الإجراء", + "confirm_restore" => "هل أنت متأكد من أستعادة الأكواد الضريبية؟", + "default_tax_category" => "التصنيف الضريبي الأفتراضي", + "default_tax_rate" => "معدل الضريبة الافتراضي", + "error_adding_updating" => "فشل إضافة أو تحديث قانون الضرائب", + "group_seq" => "تسلسل المجموعة", + "jurisdiction_name" => "اسم الولاية القضائية", + "name" => "الاسم", + "new" => "ضريبة جديدة", + "no_taxes" => "", + "no_taxes_to_display" => "لا يوجد أكواد ضريبية للعرض", + "reporting_authority" => "السلطة الضريبية", + "round_half_down" => "نصف الاسفل", + "round_half_even" => "تقريب للنصف", + "round_half_odd" => "تقريب غريب", + "round_half_up" => "تقريب للاعلى", + "rounding_code" => "كود التقريب", + "sales_tax" => "ضريبة المبيعات", + "sales_tax_by_invoice" => "ضريبة المبيعات بالفاتورة", + "sequence" => "تسلسل", + "state" => "حالة", + "successful_deleted" => "تم المسح بنجاح", + "tax_categories" => "فئات الضرائب", + "tax_categories_configuration" => "اعدادات فئات الضرائب", + "tax_categories_saved_successfully" => "تم حفظ تغييرات الفئات الضريبية", + "tax_categories_saved_unsuccessfully" => "لم يتم حفظ تغييرات الفئات الضريبة", + "tax_category" => "الفئة الضريبية", + "tax_category_code" => "رمز الفئة الضريبية", + "tax_category_duplicate" => "الفئة الضريبية مكررة", + "tax_category_invalid_chars" => "أحرف غير صالحة في اسم الفئة الضريبية", + "tax_category_name" => "اسم فئة الضريبة", + "tax_category_new" => "فئة الضريبية جديدة", + "tax_category_required" => "الفئة الضريبة مطلوبة", + "tax_code" => "كود الضريبة", + "tax_code_cannot_be_deleted" => "فشل مسح الكود الضريبي", + "tax_code_duplicate" => "رمز الضريبة مكرر", + "tax_code_invalid_chars" => "أحرف لا يمكن استعمالها في قانون الضرائب", + "tax_code_name" => "اسم الكود الضريبي", + "tax_code_required" => "حقل الكود الضريبي مطلوب", + "tax_code_successful_deleted" => "تم مسح الكود الضريبي", + "tax_code_successful_updated" => "تم التعديل بنجاح", + "tax_code_successful_updating" => "تم تعديل الكود الضريبي بنجاح", + "tax_code_successfully_added" => "لقد تم إضافة المورد بنجاح", + "tax_code_type" => "نوع كود الضريبة", + "tax_codes" => "الرموز الضريبية", + "tax_codes_configuration" => "اعدادات الرموز الضريبية", + "tax_codes_saved_successfully" => "تم حفظ تغييرات قانون الضرائب", + "tax_codes_saved_unsuccessfully" => "لم يتم حفظ تغييرات قانون الضريبة", + "tax_excluded" => "لا تشمل الضرائب", + "tax_group" => "المجموعة الضريبية", + "tax_group_not_unique" => "فئة الضرائب يجب ان تكون فريده", + "tax_group_sequence" => "تسلسل مجموعة الضرائب", + "tax_included" => "الضريبة مشمولة", + "tax_jurisdiction" => "الاختصاص الضريبي", + "tax_jurisdiction_duplicate" => "تكرير الاختصاص الضريبي", + "tax_jurisdiction_invalid_chars" => "أحرف لا يمكن استعمالها في اسم الولاية القضائية", + "tax_jurisdiction_required" => "الاختصاص الضريبي هي خانة اجبارية", + "tax_jurisdictions" => "الاختصاصات الضريبية", + "tax_jurisdictions_configuration" => "اعجدادات الاختصاصات الضريبية", + "tax_jurisdictions_saved_successfully" => "تم حفظ تغييرات الاختصاص الضريبي", + "tax_jurisdictions_saved_unsuccessfully" => "لم يتم حفظ تغييرات الاختصاص الضريبي", + "tax_rate" => "معدل الضريبة الافتراضي %", + "tax_rate_configuration" => "اعجدادات معدل الضريبة", + "tax_rate_error_adding_updating" => "فشل إضافة أو تحديث معدل الضريبة", + "tax_rate_numeric" => "معدل الضريبة الافتراضي يجب أن يكون رقم", + "tax_rate_required" => "معدل الضريبة الافتراضي مطلوب", + "tax_rate_successful_updated" => "لقد تم بالتحديث بنجاح", + "tax_rate_successfully_added" => "لقد تم الاضافة بنجاح", + "tax_rates" => "معدلات الضريبة", + "tax_rates_configuration" => "اعدادات معدلات الضريبة", + "tax_rounding" => "التقريب الضريبي", + "tax_type" => "نوع الضريبة", + "update" => "تحديث معدل الضريبة", + "vat_tax" => "ضريبة القيمة المضافة", ]; diff --git a/app/Language/ar-LB/index.html b/app/Language/ar-LB/index.html index b702fbc39..69df4e1df 100644 --- a/app/Language/ar-LB/index.html +++ b/app/Language/ar-LB/index.html @@ -1,7 +1,7 @@ - 403 Forbidden + 403 Forbidden diff --git a/app/Language/az/Attributes.php b/app/Language/az/Attributes.php index bce467aac..87ce309a7 100644 --- a/app/Language/az/Attributes.php +++ b/app/Language/az/Attributes.php @@ -1,32 +1,32 @@ "Atribut dəyəri bu ':' və ya '|' olmaz", - "confirm_delete" => "Seçilmiş Atributları silmək istədiyinizdən əminsinizmi?", - "confirm_restore" => "Seçilmiş atributları bərpa etmək istədiyinizə əminsinizmi?", - "definition_cannot_be_deleted" => "Seçilmiş xüsusiyyətləri silmək olmadı", - "definition_error_adding_updating" => "{0} -in atributları əlavə oluna və yenilənə bilmədi. Lütfən XƏTA loq faylını yoxlayın.", - "definition_flags" => "Atribut görünüşü", - "definition_group" => "Qrup", - "definition_id" => "Id", - "definition_name" => "Atribut əlavə et", - "definition_name_required" => "Atribut adı zəruri bir sahədir", - "definition_one_or_multiple" => "atribut (lar)", - "definition_successful_adding" => "Malı uğurla əlavə etdiniz", - "definition_successful_deleted" => "Siz uğurla sildiniz", - "definition_successful_updating" => "Atributunuzu müvəffəqiyyətlə yenilədiniz", - "definition_type" => "Atribut Tipi", - "definition_type_required" => "Atribut növü tələb olunan sahədir", - "definition_unit" => "Ölçü vahidi", - "definition_values" => "Atribut dəyərləri", - "new" => "Yeni atributlar", - "no_attributes_to_display" => "Göstərmək üçün heç bir element yoxdur", - "receipt_visibility" => "Qəbz", - "show_in_items" => "Malları göstər", - "show_in_items_visibility" => "Mallar", - "show_in_receipt" => "Qəbzi göstərin", - "show_in_receivings" => "Alacaqlarda göstərin", - "show_in_receivings_visibility" => "Alınanlar", - "show_in_sales" => "Satışda göstərin", - "show_in_sales_visibility" => "Satışlar", - "update" => "Atributları yenilə", + "attribute_value_invalid_chars" => "Atribut dəyəri bu ':' və ya '|' olmaz", + "confirm_delete" => "Seçilmiş Atributları silmək istədiyinizdən əminsinizmi?", + "confirm_restore" => "Seçilmiş atributları bərpa etmək istədiyinizə əminsinizmi?", + "definition_cannot_be_deleted" => "Seçilmiş xüsusiyyətləri silmək olmadı", + "definition_error_adding_updating" => "{0} -in atributları əlavə oluna və yenilənə bilmədi. Lütfən XƏTA loq faylını yoxlayın.", + "definition_flags" => "Atribut görünüşü", + "definition_group" => "Qrup", + "definition_id" => "Id", + "definition_name" => "Atribut əlavə et", + "definition_name_required" => "Atribut adı zəruri bir sahədir", + "definition_one_or_multiple" => "atribut (lar)", + "definition_successful_adding" => "Malı uğurla əlavə etdiniz", + "definition_successful_deleted" => "Siz uğurla sildiniz", + "definition_successful_updating" => "Atributunuzu müvəffəqiyyətlə yenilədiniz", + "definition_type" => "Atribut Tipi", + "definition_type_required" => "Atribut növü tələb olunan sahədir", + "definition_unit" => "Ölçü vahidi", + "definition_values" => "Atribut dəyərləri", + "new" => "Yeni atributlar", + "no_attributes_to_display" => "Göstərmək üçün heç bir element yoxdur", + "receipt_visibility" => "Qəbz", + "show_in_items" => "Malları göstər", + "show_in_items_visibility" => "Mallar", + "show_in_receipt" => "Qəbzi göstərin", + "show_in_receivings" => "Alacaqlarda göstərin", + "show_in_receivings_visibility" => "Alınanlar", + "show_in_sales" => "Satışda göstərin", + "show_in_sales_visibility" => "Satışlar", + "update" => "Atributları yenilə", ]; diff --git a/app/Language/az/Bootstrap_tables.php b/app/Language/az/Bootstrap_tables.php index 1ee087a05..f087969ae 100644 --- a/app/Language/az/Bootstrap_tables.php +++ b/app/Language/az/Bootstrap_tables.php @@ -1,11 +1,11 @@ "hamısı", - "columns" => "Sütunlar", - "hide_show_pagination" => "Gizlət/Göstər səhifənin nömrələnməsin", - "loading" => "Lütfən gözləyin, səhifə yüklənir...", - "page_from_to" => "Göstər {0} bundan {1} buna {2} kimi", - "refresh" => "Yenilə", - "rows_per_page" => "{0} yazı səhifədə", - "toggle" => "Keçid", + "all" => "hamısı", + "columns" => "Sütunlar", + "hide_show_pagination" => "Gizlət/Göstər səhifənin nömrələnməsin", + "loading" => "Lütfən gözləyin, səhifə yüklənir...", + "page_from_to" => "Göstər {0} bundan {1} buna {2} kimi", + "refresh" => "Yenilə", + "rows_per_page" => "{0} yazı səhifədə", + "toggle" => "Keçid", ]; diff --git a/app/Language/az/Calendar.php b/app/Language/az/Calendar.php index 07445e652..93a40e9db 100644 --- a/app/Language/az/Calendar.php +++ b/app/Language/az/Calendar.php @@ -1,48 +1,48 @@ "Ba", - "mo" => "Be", - "tu" => "Ça", - "we" => "Çə", - "th" => "Cə", - "fr" => "Cü", - "sa" => "Şə", - "sun" => "Baz", - "mon" => "Bae", - "tue" => "Çəa", - "wed" => "Çər", - "thu" => "Cüa", - "fri" => "Cüm", - "sat" => "Şən", - "sunday" => "Bazar", - "monday" => "Bazaretrəsi", - "tuesday" => "Çərşənbə axşamı", - "wednesday" => "Çərşənbə", - "thursday" => "Cümə axşamı", - "friday" => "Cümə", - "saturday" => "Şənbə", - "jan" => "Yan", - "feb" => "Fev", - "mar" => "Apr", - "apr" => "Mar", - "may" => "May", - "jun" => "İyn", - "jul" => "İyl", - "aug" => "Avq", - "sep" => "Sen", - "oct" => "Okt", - "nov" => "Noy", - "dec" => "Dek", - "january" => "Yanvar", - "february" => "Fevral", - "march" => "Mart", - "april" => "Aprel", - "mayl" => "May", - "june" => "İyun", - "july" => "İyul", - "august" => "Avqust", - "september" => "Sentyabr", - "october" => "Oktyabr", - "november" => "Noyabr", - "december" => "Dekabr", + "su" => "Ba", + "mo" => "Be", + "tu" => "Ça", + "we" => "Çə", + "th" => "Cə", + "fr" => "Cü", + "sa" => "Şə", + "sun" => "Baz", + "mon" => "Bae", + "tue" => "Çəa", + "wed" => "Çər", + "thu" => "Cüa", + "fri" => "Cüm", + "sat" => "Şən", + "sunday" => "Bazar", + "monday" => "Bazaretrəsi", + "tuesday" => "Çərşənbə axşamı", + "wednesday" => "Çərşənbə", + "thursday" => "Cümə axşamı", + "friday" => "Cümə", + "saturday" => "Şənbə", + "jan" => "Yan", + "feb" => "Fev", + "mar" => "Apr", + "apr" => "Mar", + "may" => "May", + "jun" => "İyn", + "jul" => "İyl", + "aug" => "Avq", + "sep" => "Sen", + "oct" => "Okt", + "nov" => "Noy", + "dec" => "Dek", + "january" => "Yanvar", + "february" => "Fevral", + "march" => "Mart", + "april" => "Aprel", + "mayl" => "May", + "june" => "İyun", + "july" => "İyul", + "august" => "Avqust", + "september" => "Sentyabr", + "october" => "Oktyabr", + "november" => "Noyabr", + "december" => "Dekabr", ]; diff --git a/app/Language/az/Cashups.php b/app/Language/az/Cashups.php index d27c470d1..ac07cc040 100644 --- a/app/Language/az/Cashups.php +++ b/app/Language/az/Cashups.php @@ -1,49 +1,49 @@ "Məbləğ", - "amount_number" => "Məbləğ rəqəmlə olmalıdır", - "amount_required" => "Məbləğ zəruri sahədir.", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "Pul vahidi silinməsi mümkün deyil", - "cash_difference" => "", - "close_date" => "Bağlanma Tarixi", - "close_employee" => "Bağlıdır", - "closed_amount_card" => "Kartlar", - "closed_amount_cash" => "Kassanın Bağlanması", - "closed_amount_check" => "Çeklər", - "closed_amount_due" => "Rüsum", - "closed_amount_giftcard" => "", - "closed_amount_total" => "Cəmi", - "closed_date" => "Bağlanma tarixi", - "confirm_delete" => "Seçilmiş Pul vahidi silmək istədiyinizə əminsinizmi?", - "confirm_restore" => "Seçilmiş Pul vahidi bərpa etmək istədiyinizə əminsinizmi?", - "confirm_submit" => "", - "date_number" => "Tarix rəqəmlə olmalıdır", - "date_required" => "Tarixi tələb olunan bir sahədir", - "description" => "Təsvir", - "enable_expected" => "", - "error_adding_updating" => "XƏTA Pul vahidi Əvavə/yenilənmədə", - "giftcard" => "", - "id" => "İD", - "info" => "Pul vahidi məlumatı", - "info_employee" => "", - "is_deleted" => "Silindi", - "new" => "Yeni Pul vahidi", - "no_cashups_to_display" => "Göstərmək üçün heç nağd pul yoxdur", - "none_selected" => "Siz pul seçmədiniz", - "note" => "Qeydlər", - "one_or_multiple" => "Pul Vahidləri", - "open_amount_cash" => "Kassanı aç", - "open_date" => "Tarixi aç", - "open_employee" => "Açıqdır", - "opened_date" => "Açılma Tarixi", - "successful_adding" => "Pul vahidi əlavə edildi", - "successful_deleted" => "Pul vahidi silindi", - "successful_updating" => "Pul vahidi yeniləndi", - "total" => "Cəmi", - "transfer_amount_cash" => "Pul vahidi Giriş/Çıxışları", - "transfer_amount_cash_minus" => "", - "update" => "Pul vahidi Yeniləndi", - "warning" => "", + "amount" => "Məbləğ", + "amount_number" => "Məbləğ rəqəmlə olmalıdır", + "amount_required" => "Məbləğ zəruri sahədir.", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "Pul vahidi silinməsi mümkün deyil", + "cash_difference" => "", + "close_date" => "Bağlanma Tarixi", + "close_employee" => "Bağlıdır", + "closed_amount_card" => "Kartlar", + "closed_amount_cash" => "Kassanın Bağlanması", + "closed_amount_check" => "Çeklər", + "closed_amount_due" => "Rüsum", + "closed_amount_giftcard" => "", + "closed_amount_total" => "Cəmi", + "closed_date" => "Bağlanma tarixi", + "confirm_delete" => "Seçilmiş Pul vahidi silmək istədiyinizə əminsinizmi?", + "confirm_restore" => "Seçilmiş Pul vahidi bərpa etmək istədiyinizə əminsinizmi?", + "confirm_submit" => "", + "date_number" => "Tarix rəqəmlə olmalıdır", + "date_required" => "Tarixi tələb olunan bir sahədir", + "description" => "Təsvir", + "enable_expected" => "", + "error_adding_updating" => "XƏTA Pul vahidi Əvavə/yenilənmədə", + "giftcard" => "", + "id" => "İD", + "info" => "Pul vahidi məlumatı", + "info_employee" => "", + "is_deleted" => "Silindi", + "new" => "Yeni Pul vahidi", + "no_cashups_to_display" => "Göstərmək üçün heç nağd pul yoxdur", + "none_selected" => "Siz pul seçmədiniz", + "note" => "Qeydlər", + "one_or_multiple" => "Pul Vahidləri", + "open_amount_cash" => "Kassanı aç", + "open_date" => "Tarixi aç", + "open_employee" => "Açıqdır", + "opened_date" => "Açılma Tarixi", + "successful_adding" => "Pul vahidi əlavə edildi", + "successful_deleted" => "Pul vahidi silindi", + "successful_updating" => "Pul vahidi yeniləndi", + "total" => "Cəmi", + "transfer_amount_cash" => "Pul vahidi Giriş/Çıxışları", + "transfer_amount_cash_minus" => "", + "update" => "Pul vahidi Yeniləndi", + "warning" => "", ]; diff --git a/app/Language/az/Common.php b/app/Language/az/Common.php index caa413fcd..5841831b0 100644 --- a/app/Language/az/Common.php +++ b/app/Language/az/Common.php @@ -1,88 +1,88 @@ "Ünvan 1", - "address_2" => "Ünvan 2", - "admin" => "", - "city" => "Şəhər", - "clerk" => "", - "close" => "Bağlı", - "color" => "", - "comments" => "Rəylər", - "common" => "ortaq", - "confirm_search" => "Bir və ya bir neçə sətir seçdiniz, bunlar axtarışınızdan sonra artıq seçilməyəcək. Bu axtarışı göndərmək istədiyinizə əminsinizmi?", - "copyrights" => "© 2010 - {0}", - "correct_errors" => "Xahiş edirik təsdiqlə-dən əvvəl səhvləri düzəldin", - "country" => "Ölkə", - "dashboard" => "", - "date" => "Təqvim", - "delete" => "Sil", - "det" => "detallar", - "download_import_template" => "CSV Şablonunu (CSV) daxil edin", - "edit" => "Redaktə Et", - "email" => "E-poçt", - "email_invalid_format" => "E-poçt ünvanı düzgün formatda deyil.", - "export_csv" => "CSV Export", - "export_csv_no" => "Xeyr", - "export_csv_yes" => "Bəli", - "fields_required_message" => "Qırmızı sahələr tələb olunur", - "fields_required_message_unique" => "", - "first_name" => "Ad", - "first_name_required" => "Ad yazmağınız tələb olunur.", - "first_page" => "Birinci", - "gender" => "Cins", - "gender_female" => "Q", - "gender_male" => "K", - "gender_undefined" => "", - "icon" => "İkon", - "id" => "İD", - "import" => "Daxil et", - "import_change_file" => "Dəyiş", - "import_csv" => "CSV daxil et", - "import_full_path" => "CSV faylına tam yol tələb olunur", - "import_remove_file" => "Sil(Gizlət)", - "import_select_file" => "Fayl Seç", - "inv" => "Qaimə", - "last_name" => "Soyad", - "last_name_required" => "Soyad tələb olunur.", - "last_page" => "Son", - "learn_about_project" => "Proyekt haqqında ən son məlumatı öyrənmək.", - "list_of" => "Siyahısı", - "logo" => "Loqo", - "logo_mark" => "Mark", - "logout" => "Çıxış", - "manager" => "", - "migration_needed" => "Girişdən sonra bazaya {0} köçməsi başlayacaq.", - "new" => "Yenisi", - "no" => "", - "no_persons_to_display" => "Göstərmək üçün heç kim yoxdur.", - "none_selected_text" => "Seçin", - "or" => "Və ya", - "people" => "", - "phone_number" => "Telefon", - "phone_number_required" => "çıxarış ", - "please_visit_my" => "Xahiş edirik ziyarət edin", - "position" => "", - "powered_by" => "Yaradıcı", - "price" => "Qiymət", - "print" => "Çap", - "remove" => "Silmək", - "required" => "Vacib", - "restore" => "Bərpa Etmək", - "return_policy" => "Qaytarma siyasəti", - "search" => "Axtarış", - "search_options" => "Axtarış variantları", - "searched_for" => "Axtarıldı", - "software_short" => "OSPOS", - "software_title" => "Açıq mənbəli satış nöqtəsi", - "state" => "Əyalət", - "submit" => "Təsdiqlə", - "total_spent" => "Ümumi xərc", - "unknown" => "Naməlum", - "view_recent_sales" => "Son Satışları Göstər", - "website" => "Veb Sayt", - "welcome" => "Xoş Gəlmisiniz", - "welcome_message" => "OSPOS-a Xoş gəlmisiniz, başlamaq üçün bir modula basın.", - "yes" => "", - "you_are_using_ospos" => "Açıq Layihədə Satışın Avtomatlaşdırma Nöqtəsi versiya", - "zip" => "Poçt Kodu", + "address_1" => "Ünvan 1", + "address_2" => "Ünvan 2", + "admin" => "", + "city" => "Şəhər", + "clerk" => "", + "close" => "Bağlı", + "color" => "", + "comments" => "Rəylər", + "common" => "ortaq", + "confirm_search" => "Bir və ya bir neçə sətir seçdiniz, bunlar axtarışınızdan sonra artıq seçilməyəcək. Bu axtarışı göndərmək istədiyinizə əminsinizmi?", + "copyrights" => "© 2010 - {0}", + "correct_errors" => "Xahiş edirik təsdiqlə-dən əvvəl səhvləri düzəldin", + "country" => "Ölkə", + "dashboard" => "", + "date" => "Təqvim", + "delete" => "Sil", + "det" => "detallar", + "download_import_template" => "CSV Şablonunu (CSV) daxil edin", + "edit" => "Redaktə Et", + "email" => "E-poçt", + "email_invalid_format" => "E-poçt ünvanı düzgün formatda deyil.", + "export_csv" => "CSV Export", + "export_csv_no" => "Xeyr", + "export_csv_yes" => "Bəli", + "fields_required_message" => "Qırmızı sahələr tələb olunur", + "fields_required_message_unique" => "", + "first_name" => "Ad", + "first_name_required" => "Ad yazmağınız tələb olunur.", + "first_page" => "Birinci", + "gender" => "Cins", + "gender_female" => "Q", + "gender_male" => "K", + "gender_undefined" => "", + "icon" => "İkon", + "id" => "İD", + "import" => "Daxil et", + "import_change_file" => "Dəyiş", + "import_csv" => "CSV daxil et", + "import_full_path" => "CSV faylına tam yol tələb olunur", + "import_remove_file" => "Sil(Gizlət)", + "import_select_file" => "Fayl Seç", + "inv" => "Qaimə", + "last_name" => "Soyad", + "last_name_required" => "Soyad tələb olunur.", + "last_page" => "Son", + "learn_about_project" => "Proyekt haqqında ən son məlumatı öyrənmək.", + "list_of" => "Siyahısı", + "logo" => "Loqo", + "logo_mark" => "Mark", + "logout" => "Çıxış", + "manager" => "", + "migration_needed" => "Girişdən sonra bazaya {0} köçməsi başlayacaq.", + "new" => "Yenisi", + "no" => "", + "no_persons_to_display" => "Göstərmək üçün heç kim yoxdur.", + "none_selected_text" => "Seçin", + "or" => "Və ya", + "people" => "", + "phone_number" => "Telefon", + "phone_number_required" => "çıxarış ", + "please_visit_my" => "Xahiş edirik ziyarət edin", + "position" => "", + "powered_by" => "Yaradıcı", + "price" => "Qiymət", + "print" => "Çap", + "remove" => "Silmək", + "required" => "Vacib", + "restore" => "Bərpa Etmək", + "return_policy" => "Qaytarma siyasəti", + "search" => "Axtarış", + "search_options" => "Axtarış variantları", + "searched_for" => "Axtarıldı", + "software_short" => "OSPOS", + "software_title" => "Açıq mənbəli satış nöqtəsi", + "state" => "Əyalət", + "submit" => "Təsdiqlə", + "total_spent" => "Ümumi xərc", + "unknown" => "Naməlum", + "view_recent_sales" => "Son Satışları Göstər", + "website" => "Veb Sayt", + "welcome" => "Xoş Gəlmisiniz", + "welcome_message" => "OSPOS-a Xoş gəlmisiniz, başlamaq üçün bir modula basın.", + "yes" => "", + "you_are_using_ospos" => "Açıq Layihədə Satışın Avtomatlaşdırma Nöqtəsi versiya", + "zip" => "Poçt Kodu", ]; diff --git a/app/Language/az/Config.php b/app/Language/az/Config.php index 6580a2fdd..30c914782 100644 --- a/app/Language/az/Config.php +++ b/app/Language/az/Config.php @@ -1,330 +1,330 @@ "Şirkət Unvanı", - "address_required" => "Şirkətin adı olan boşluq sahəsi doldurulmalıdı.", - "all_set" => "Bütün fayl icazələri düzgün qurulub!", - "allow_duplicate_barcodes" => "Dublikat Barkodlarına icazə verin", - "apostrophe" => "Apastrof", - "backup_button" => "Ehtiyyat Köçürmə", - "backup_database" => "Məlumat Bazasını Ehtiyyat Yaddaşına Göndər", - "barcode" => "Barkod", - "barcode_company" => "Şirkətin Adı", - "barcode_configuration" => "Barkod Konfiqurasiyası", - "barcode_content" => "Barkod Məzmunu", - "barcode_first_row" => "Sıra 1", - "barcode_font" => "Yazı Tipi", - "barcode_formats" => "Giriş Formatları", - "barcode_generate_if_empty" => "Boşdursa Yarat.", - "barcode_height" => "Hündürlük", - "barcode_id" => "Malın İd/Adı", - "barcode_info" => "Barkod Konfiqurasiya Məlumatı", - "barcode_layout" => "Barkod Çərçivəsi", - "barcode_name" => "Ad", - "barcode_number" => "Barkod", - "barcode_number_in_row" => "Sıradakı Nömrə", - "barcode_page_cellspacing" => "Səhifədə hüceyrə sahəsini göstərin.", - "barcode_page_width" => "Səyfənin genişliyini göstər", - "barcode_price" => "Qiymət", - "barcode_second_row" => "Sıra 2", - "barcode_third_row" => "Sira 3", - "barcode_tooltip" => "Diqqət: Bu xüsusiyyət malların dublikat olmaslna, idxal edilməsinə və ya yaradılmasına səbəb ola bilər. Çoğaltıcı barkod istəmirsinizsə istifadə etməyin.", - "barcode_type" => "Barkod Növü", - "barcode_width" => "Genişlik", - "bottom" => "Aşağı", - "cash_button" => "", - "cash_button_1" => "", - "cash_button_2" => "", - "cash_button_3" => "", - "cash_button_4" => "", - "cash_button_5" => "", - "cash_button_6" => "", - "cash_decimals" => "Nəğd Pul Cədvəlləri", - "cash_decimals_tooltip" => "Nağd pul və Məzənnədəki ədədlər eyni olarsa, onda nağd pul yuvarlaqlaşması baş verməz.", - "cash_rounding" => "Nəğd Pul Yuvarlaqlaşdırılması", - "category_dropdown" => "Bölməni açılan siyahida göstər", - "center" => "Mərkəz", - "change_apperance_tooltip" => "", - "comma" => "vergül", - "company" => "Şirkətin Adı", - "company_avatar" => "", - "company_change_image" => "Şəkili Dəyiş", - "company_logo" => "Şirkətin Logosu", - "company_remove_image" => "Şəkili Sil", - "company_required" => "Şirkətin adı qeyd olunmalıdır", - "company_select_image" => "Şəkil Seç", - "company_website_url" => "Şirkətin web saytı düzgün URL deyil.", - "country_codes" => "Ölkə Kodları", - "country_codes_tooltip" => "Vergüllə ayrılmış ölkə kodları üçün nominantim adres axtarışı.", - "currency_code" => "Valyuta Kodu", - "currency_decimals" => "Məzənnə Rəqəmləri", - "currency_symbol" => "Valyuta Simvolu", - "current_employee_only" => "", - "customer_reward" => "Mükafat", - "customer_reward_duplicate" => "Mükafat unikal olmalıdir.", - "customer_reward_enable" => "Müştəri mükafatlarını aktivləşdirin", - "customer_reward_invalid_chars" => "Mukafat '_ ' təşkil edə bilməz", - "customer_reward_required" => "Mükafat olan sahə boş qala bilməz", - "customer_sales_tax_support" => "Müştəri Satış Vergi Dəstəyi", - "date_or_time_format" => "Tarix və Vaxt Filteri", - "datetimeformat" => "Tarix və Vaxt formatı", - "decimal_point" => "Ondaliq Nöqtə", - "default_barcode_font_size_number" => "Standart Barkod Yazı Növü Ölçüsü rəqəm ilə olmalıdır.", - "default_barcode_font_size_required" => "Standart Barkod Yazı Növü Ölçüsü olan sahə boş qala bilməz.", - "default_barcode_height_number" => "Standart Barkod hündürlüyü rəqəm ilə olmalıdır.", - "default_barcode_height_required" => "Standart Barkod olan sahə boş qala bilməz.", - "default_barcode_num_in_row_number" => "Sıradakı Barkod Nömrəsi rəqəm ilə olmalıdır.", - "default_barcode_num_in_row_required" => "Standart Barkod Nömrəsi olan sahə boş qala bilməz.", - "default_barcode_page_cellspacing_number" => "Standart Barkod Səhifədki hücrə boşluğu rəqəm ilə olmalıdır.", - "default_barcode_page_cellspacing_required" => "Standart Barkod Səhifədəki hücrə boşluğu olan sahə boş qala bilməz.", - "default_barcode_page_width_number" => "Standart Barkod Sahifə genişliyi rəqəm ilə olmalıdır.", - "default_barcode_page_width_required" => "Standart Barkod Səhifə Genişliyi olan sahə boş qala bilməz.", - "default_barcode_width_number" => "Standart Barkod Genişliyi rəqəm ilə olmalıdır.", - "default_barcode_width_required" => "Standart Barkod Genişliyi olan sahə boş qala bilməz.", - "default_item_columns" => "Sabit Görünür Malların Sütunları", - "default_origin_tax_code" => "Vergi Kodunun Standart Mənbəyi", - "default_receivings_discount" => "Alışdan sonra standart endirim", - "default_receivings_discount_number" => "Sabit alacaqlar endirimi bir nömrə olmalıdır.", - "default_receivings_discount_required" => "Standart alış endirimi tələb olunan sahədir.", - "default_sales_discount" => "Standart Satış Endirimi", - "default_sales_discount_number" => "Standart Satış Endirimi rəqəm ilə olmalıdır.", - "default_sales_discount_required" => "Standart Satış Endirimi tələb olunan sahədi.", - "default_tax_category" => "Standart Vergi Bölməsi", - "default_tax_code" => "Standart Vergo kodu", - "default_tax_jurisdiction" => "Standart Vergi Yurisdiksiyası", - "default_tax_name_number" => "Standart Vergi Adı uzun adlı olmalıdır .", - "default_tax_name_required" => "Adi vergi mütləq rəqəmlə olmalıdır.", - "default_tax_rate" => "Adi vergi dərəcəsi %", - "default_tax_rate_1" => "Vergi Dərəcəsi 1", - "default_tax_rate_2" => "Vergi Məzənnəsi 2", - "default_tax_rate_3" => "", - "default_tax_rate_number" => "Standart Vergi Məzənnəsi rəqəm ilə olmalıdır.", - "default_tax_rate_required" => "Standart Vergi Məzənnəsi olan sahə boş qala bilməz.", - "derive_sale_quantity" => "Tərtib edilmiş satış məbləğinə icazə verin", - "derive_sale_quantity_tooltip" => "Əgər yoxlanılırsa, uzunmüddətli məbləğdə sifariş edilən əşyalar üçün yeni bir mal növü veriləcəkdir", - "dinner_table" => "Cədvəl", - "dinner_table_duplicate" => "Cədvəl unikal olmalıdır.", - "dinner_table_enable" => "Axşam yeməyi masalarını aktiv edin", - "dinner_table_invalid_chars" => "Masanın adı '_' təşkil etməməlidir.", - "dinner_table_required" => "Masa olan sahə boş qala bilməz.", - "dot" => "nöqtə", - "email" => "Elektron Adres", - "email_configuration" => "Elektron Adres Konfiqurasiyası", - "email_mailpath" => "Email Göndətməyə qısa yol", - "email_protocol" => "Protokol", - "email_receipt_check_behaviour" => "E-poçt qəbzi qutusu", - "email_receipt_check_behaviour_always" => "Həmişə yoxlanılır", - "email_receipt_check_behaviour_last" => "Son seçimi yadda saxla", - "email_receipt_check_behaviour_never" => "Həmişə aktiv deyil", - "email_smtp_crypto" => "SMTP Şifrələmə", - "email_smtp_host" => "SMTP Serveri", - "email_smtp_pass" => "Faks", - "email_smtp_port" => "SMTP Portu", - "email_smtp_timeout" => "STMTP vaxt bitimi (lər)", - "email_smtp_user" => "SMTP İstifadəçi Adı", - "enable_avatar" => "", - "enable_avatar_tooltip" => "", - "enable_dropdown_tooltip" => "", - "enable_new_look" => "", - "enable_right_bar" => "", - "enable_right_bar_tooltip" => "", - "enforce_privacy" => "Məxvilik Təmin edin", - "enforce_privacy_tooltip" => "Müştərilərin gizliliyini qorumaq, silmək halında məlumat şifrələməsini təmin etmək", - "fax" => "Faks", - "file_perm" => "Fayl icazəsində problem var, lütfən bu səhvləri düzəldib səhifəni yeniləyin.", - "financial_year" => "Maliyyə İli Başlancığı", - "financial_year_apr" => "1 Aprel", - "financial_year_aug" => "1 Avgust", - "financial_year_dec" => "1 Dekabr", - "financial_year_feb" => "1 Fevral", - "financial_year_jan" => "1 Yanvar", - "financial_year_jul" => "1 İyul", - "financial_year_jun" => "1 İyun", - "financial_year_mar" => "1 Mart", - "financial_year_may" => "1 May", - "financial_year_nov" => "1 Noyabr", - "financial_year_oct" => "1 Oktyabr", - "financial_year_sep" => "1 Sentyabr", - "floating_labels" => "", - "gcaptcha_enable" => "Giriş Səyfəsi reCAPTCHA", - "gcaptcha_secret_key" => "reCAPTCHA Gizli Açarı", - "gcaptcha_secret_key_required" => "reCAPTCHA Gizli Açar olan sahə boş qala bilməz", - "gcaptcha_site_key" => "reCAPTCHA Sayt Açarı", - "gcaptcha_site_key_required" => "reCAPTCHA Sayt Açarı olan sahə boş qala bilməz", - "gcaptcha_tooltip" => "Giriş səhifəsini Google reCAPTCHA ilə qoruyun, APİ açarını uyğunlaşdırmaq üçün işarə ilə göstərilən düyməyə basın.", - "general" => "Ümumi", - "general_configuration" => "Ümumi Konfiqurasiya", - "giftcard_number" => "Hədiyyə Kartı Nömrəsi", - "giftcard_random" => "Təsadüfən Yarat", - "giftcard_series" => "Bölümlərə görə Yarat", - "image_allowed_file_types" => "İcazəli fayl növləri", - "image_max_height_tooltip" => "Şəkillərinin maksimum hündürlüyü pikselə(px).", - "image_max_size_tooltip" => "Şəkil yükləmələrinin maksimum fayl ölçüsü kilobaytla(kb).", - "image_max_width_tooltip" => "Şəkillərinin maksimum enliliyi pikselə(px).", - "image_restrictions" => "Şəkil yükləmə məhdudiyyətləri", - "include_hsn" => "HSN Kodlarına dəstək verin", - "info" => "Məlumat", - "info_configuration" => "Dükan İnformasiyası", - "input_groups" => "", - "integrations" => "İnteqrasiya", - "integrations_configuration" => "Üçüncü tərəf inteqrasiya", - "invoice" => "Faktura", - "invoice_configuration" => "Faktura Çap Parametrləri", - "invoice_default_comments" => "Standart Faktura Şərhləri", - "invoice_email_message" => "Dil", - "invoice_enable" => "Fakturanı Aktivləşdir", - "invoice_printer" => "Faktura Printeri", - "invoice_type" => "Qaimənin Tipi", - "is_readable" => "oxunur, lakin icazələr 660-dan yüksəkdir.", - "is_writable" => "yazılabilir, lakin icazələr 750-dən yüksəkdir.", - "item_markup" => "", - "jsprintsetup_required" => "Xəbərdarlıq: Bu funksiya yalnız FireFox jsPrintSetup addon quraşdırıldığı halda işləyəcəkdir. Yadda saxlanılsın?", - "language" => "Dil", - "last_used_invoice_number" => "Son istifadə edilmiş Faktura nömrəsi", - "last_used_quote_number" => "Son istifadə edilmiş Kvota sayı", - "last_used_work_order_number" => "Son istifadə edilən W / O sayı", - "left" => "Sol", - "license" => "Lisenziya", - "license_configuration" => "Lisenziya bəyanatı", - "line_sequence" => "Sıra Ardıcıllığı", - "lines_per_page" => "Səhifə başına xəttlər", - "lines_per_page_number" => "Səhifə başına sətirlər bir rəqəm ilə olmalıdır.", - "lines_per_page_required" => "Səyfə Başına olan xəttər sahəsi boş qala bilməz.", - "locale" => "Yerləşdirmə", - "locale_configuration" => "Lokallaşdırma Konfiqurasiyası", - "locale_info" => "Lokallaşdırma Konfiqurasiya Məlumatı", - "location" => "Fond", - "location_configuration" => "Anbar Yerləri", - "location_info" => "Yer Konfiqurasiya Məlumatı", - "login_form" => "", - "logout" => "Çıxışdan əvvəl məlumatlari ehtiyat bazasına köçürmək istəyirsinizmi? Çıxış üçün Bekap və ya [Ləğv] üçün [OK]' düyməsinə basın.", - "mailchimp" => "Mailçimp", - "mailchimp_api_key" => "Mailchimp API Açarı", - "mailchimp_configuration" => "Mailchimp Konfiqurasiyası", - "mailchimp_key_successfully" => "API Açarı etibarlıdır.", - "mailchimp_key_unsuccessfully" => "API Açarı etibarsızdır.", - "mailchimp_lists" => "Mailchimp siyahısı (lar)", - "mailchimp_tooltip" => "API Açarının İşarəsinə basın.", - "message" => "Mesaj", - "message_configuration" => "Mesaj Konfiqurasiyası", - "msg_msg" => "Saxlanılan Mətn Mesajı", - "msg_msg_placeholder" => "SMS şablonunu istifadə etmək istəyirsinizsə, mesajınızı buraya qeyd edin, əks halda qutunu boş buraxın.", - "msg_pwd" => "SMS-API Şifrəsi", - "msg_pwd_required" => "SMS-API şifrəsi tələb olunan bir sahədir", - "msg_src" => "SMS-API Göndərici ID", - "msg_src_required" => "SMS-API Göndərici ID tələb olunan sahədir", - "msg_uid" => "SMS-API İstifadəçi adı", - "msg_uid_required" => "SMS-API İstifadəçi adı tələb olunan sahədir", - "multi_pack_enabled" => "Hər bir elementə birdən çox paket", - "no_risk" => "Təhlükəsizlik / zəiflik riski yoxdur.", - "none" => "Heç biri", - "notify_alignment" => "Bildiriş Pəncərə Mövqeyi", - "number_format" => "Nömrə Formatı", - "number_locale" => "Yerləşdirmə", - "number_locale_invalid" => "Kompaniyanın tel.", - "number_locale_required" => "Şirkət telefonu olan sahə boş qalma bilməz.", - "number_locale_tooltip" => "Bu link vasitəsilə uyğun bir yer tapın.", - "os_timezone" => "OSPOS Saat qurşağı:", - "ospos_info" => "OSPOS quraşdırılması məlumatı", - "payment_options_order" => "Sifariş üçün Ödəmə Şərtləri", - "perm_risk" => "Permissions higher than 750 leaves this software at risk.", - "phone" => "Şirkətin Telefon Nömrəsi", - "phone_required" => "Şirkət Telefonu tələb olunan bir sahədir.", - "print_bottom_margin" => "Çərçivədki aşağı Sərhəd", - "print_bottom_margin_number" => "Aşağıdaki Sərhəd rəqəm ilə olmalıdır.", - "print_bottom_margin_required" => "Aşağıdakı Sərhəd boş qala bilməz.", - "print_delay_autoreturn" => "Gecikmiş satışa Avto qaytarılma", - "print_delay_autoreturn_number" => "Satışı dayandırmaq üçün autoqaytarılma zəruri bir sahədir.", - "print_delay_autoreturn_required" => "Satışı dayandırmaq üçün autoqaytarılma bir sıra olmalıdır.", - "print_footer" => "Brauzer Altlığını Çap Et", - "print_header" => "Brauzer Başlığını çap et", - "print_left_margin" => "Soldaki Künc", - "print_left_margin_number" => "Soldaki Künc rəqəm ilə olmalıdır.", - "print_left_margin_required" => "Soldaki Künc olan sahə boş qala bilməz.", - "print_receipt_check_behaviour" => "Qəbzin çapını təsdiqləyin", - "print_receipt_check_behaviour_always" => "Həmişə yoxlanılır", - "print_receipt_check_behaviour_last" => "Son seçimi yadda saxla", - "print_receipt_check_behaviour_never" => "Həmişə təsdiqləsin", - "print_right_margin" => "Sağdaki Künc", - "print_right_margin_number" => "Sağdakı Künc rəqəm ilə olmalıdır.", - "print_right_margin_required" => "Sağdakı Künc olan sahə boş qala bilməz.", - "print_silently" => "Çap Edilmiş Yazışmanı Gostər", - "print_top_margin" => "Üstdəki Künc", - "print_top_margin_number" => "Üstdəki Künc rəqəm ilə olmalıdır.", - "print_top_margin_required" => "Üstdəki Sahə Boş qala bilməz.", - "quantity_decimals" => "Ondalıqların Miqdarı", - "quick_cash_enable" => "", - "quote_default_comments" => "Standart şərhlər", - "receipt" => "Çek", - "receipt_category" => "", - "receipt_configuration" => "Çek Cap Parametirləri", - "receipt_default" => "Adi", - "receipt_font_size" => "Yazı Tipi", - "receipt_font_size_number" => "Yazı ölçüsü bir sıra olmalıdır.", - "receipt_font_size_required" => "Yazı tipi ölçüsü zəruri bir sahədir.", - "receipt_info" => "Alınan Konfiqurasiya Məlumatı", - "receipt_printer" => "Bilet Çap edən", - "receipt_short" => "Qısa", - "receipt_show_company_name" => "Şirkətin Adını Göstər", - "receipt_show_description" => "Təsviri Göstər", - "receipt_show_serialnumber" => "Serial nömrəsi göstər", - "receipt_show_tax_ind" => "Vergi göstəricisinə bax", - "receipt_show_taxes" => "Vergini Göstər", - "receipt_show_total_discount" => "Ümumi Endirim göstər", - "receipt_template" => "Geri qaytarmaq mütləq məsafə lazımdır", - "receiving_calculate_average_price" => "Otalama Qiyməti Hesabla (Alınan)", - "recv_invoice_format" => "Alınan Fatura Formatı", - "register_mode_default" => "Standart Qeydiyyat Rejimi", - "report_an_issue" => "Bir problemi bildirişi", - "return_policy_required" => "Geri Qaytarma Qanunu olan sahə zəruri sahədir.", - "reward" => "Mükafat", - "reward_configuration" => "Konfiqurasiya ugurla saxlanıldı", - "right" => "Konfiqurasiya ugursuz oldu saxlanilmadi", - "sales_invoice_format" => "Satış Fatura Formatı", - "sales_quote_format" => "Satış Sitat Formati", - "saved_successfully" => "Konfiqurasiya uğurla saxlanıldı.", - "saved_unsuccessfully" => "Konfiqurasiyanı saxlamq mümkün olmadı.", - "security_issue" => "Təhlükəsizlik açığı xəbərdarlığı", - "server_notice" => "Xahiş edirik, hesabatın təqdim edilməsi üçün aşağıdakı məlumatı istifadə edin.", - "service_charge" => "", - "show_due_enable" => "", - "show_office_group" => "Ofis İşarəsini Göstər", - "statistics" => "Statistikalari Göndər", - "statistics_tooltip" => "İnkişaf və xüsusiyyət təkmilləşdirilməsi məqsədi ilə statistika göndərin.", - "stock_location" => "Ehtiyyat Yeri", - "stock_location_duplicate" => "Ehtiyyat Olan Yer Unikal Olmalıdir.", - "stock_location_invalid_chars" => "Ehtiyyat Yeri təşkil etməməlidir '_'.", - "stock_location_required" => "Ehtiyyat Yeri Olan Sahə boş qala bilməz.", - "suggestions_fifth_column" => "", - "suggestions_first_column" => "Sütun 1", - "suggestions_fourth_column" => "", - "suggestions_layout" => "Təklif Çərçivələrini Axtar", - "suggestions_second_column" => "Sütun 2", - "suggestions_third_column" => "Sütun 3", - "system_conf" => "Quraşdırma və Conf", - "system_info" => "System Info", - "table" => "Masa", - "table_configuration" => "Cədvəl Konfiqurasiyası", - "takings_printer" => "Printer Çeki", - "tax" => "Vergi", - "tax_category" => "Vergi Kategoriyasi", - "tax_category_duplicate" => "Daxil edilən vergi kategoriyası artıq mövcuddur.", - "tax_category_invalid_chars" => "Daxil edilən vergi kategoriyası səhvdir.", - "tax_category_required" => "Vergi Kategoriyası tələb olunur.", - "tax_category_used" => "Vergi kateqoriyası istifadə olunduğu üçün silinə bilməz.", - "tax_configuration" => "Vergi Konfiqurasiyası", - "tax_decimals" => "Vaxt", - "tax_id" => "Vergi İD", - "tax_included" => "Vergi Daxildir", - "theme" => "Vebsayt", - "theme_preview" => "", - "thousands_separator" => "Minliklər Ayıran", - "timezone" => "Vaxt Zonası", - "timezone_error" => "OSPOS Saat qurşağı Yerli saat qurşağınızdan fərqlidir.", - "top" => "Yuxarı", - "use_destination_based_tax" => "Təyinatından vergi istifadə edin", - "user_timezone" => "Yerli saat qurşağı:", - "website" => "Vebsayt", - "wholesale_markup" => "", - "work_order_enable" => "İş Sifariş Dəstəyi", - "work_order_format" => "İş Sifarş Farmatı", + "address" => "Şirkət Unvanı", + "address_required" => "Şirkətin adı olan boşluq sahəsi doldurulmalıdı.", + "all_set" => "Bütün fayl icazələri düzgün qurulub!", + "allow_duplicate_barcodes" => "Dublikat Barkodlarına icazə verin", + "apostrophe" => "Apastrof", + "backup_button" => "Ehtiyyat Köçürmə", + "backup_database" => "Məlumat Bazasını Ehtiyyat Yaddaşına Göndər", + "barcode" => "Barkod", + "barcode_company" => "Şirkətin Adı", + "barcode_configuration" => "Barkod Konfiqurasiyası", + "barcode_content" => "Barkod Məzmunu", + "barcode_first_row" => "Sıra 1", + "barcode_font" => "Yazı Tipi", + "barcode_formats" => "Giriş Formatları", + "barcode_generate_if_empty" => "Boşdursa Yarat.", + "barcode_height" => "Hündürlük", + "barcode_id" => "Malın İd/Adı", + "barcode_info" => "Barkod Konfiqurasiya Məlumatı", + "barcode_layout" => "Barkod Çərçivəsi", + "barcode_name" => "Ad", + "barcode_number" => "Barkod", + "barcode_number_in_row" => "Sıradakı Nömrə", + "barcode_page_cellspacing" => "Səhifədə hüceyrə sahəsini göstərin.", + "barcode_page_width" => "Səyfənin genişliyini göstər", + "barcode_price" => "Qiymət", + "barcode_second_row" => "Sıra 2", + "barcode_third_row" => "Sira 3", + "barcode_tooltip" => "Diqqət: Bu xüsusiyyət malların dublikat olmaslna, idxal edilməsinə və ya yaradılmasına səbəb ola bilər. Çoğaltıcı barkod istəmirsinizsə istifadə etməyin.", + "barcode_type" => "Barkod Növü", + "barcode_width" => "Genişlik", + "bottom" => "Aşağı", + "cash_button" => "", + "cash_button_1" => "", + "cash_button_2" => "", + "cash_button_3" => "", + "cash_button_4" => "", + "cash_button_5" => "", + "cash_button_6" => "", + "cash_decimals" => "Nəğd Pul Cədvəlləri", + "cash_decimals_tooltip" => "Nağd pul və Məzənnədəki ədədlər eyni olarsa, onda nağd pul yuvarlaqlaşması baş verməz.", + "cash_rounding" => "Nəğd Pul Yuvarlaqlaşdırılması", + "category_dropdown" => "Bölməni açılan siyahida göstər", + "center" => "Mərkəz", + "change_apperance_tooltip" => "", + "comma" => "vergül", + "company" => "Şirkətin Adı", + "company_avatar" => "", + "company_change_image" => "Şəkili Dəyiş", + "company_logo" => "Şirkətin Logosu", + "company_remove_image" => "Şəkili Sil", + "company_required" => "Şirkətin adı qeyd olunmalıdır", + "company_select_image" => "Şəkil Seç", + "company_website_url" => "Şirkətin web saytı düzgün URL deyil.", + "country_codes" => "Ölkə Kodları", + "country_codes_tooltip" => "Vergüllə ayrılmış ölkə kodları üçün nominantim adres axtarışı.", + "currency_code" => "Valyuta Kodu", + "currency_decimals" => "Məzənnə Rəqəmləri", + "currency_symbol" => "Valyuta Simvolu", + "current_employee_only" => "", + "customer_reward" => "Mükafat", + "customer_reward_duplicate" => "Mükafat unikal olmalıdir.", + "customer_reward_enable" => "Müştəri mükafatlarını aktivləşdirin", + "customer_reward_invalid_chars" => "Mukafat '_ ' təşkil edə bilməz", + "customer_reward_required" => "Mükafat olan sahə boş qala bilməz", + "customer_sales_tax_support" => "Müştəri Satış Vergi Dəstəyi", + "date_or_time_format" => "Tarix və Vaxt Filteri", + "datetimeformat" => "Tarix və Vaxt formatı", + "decimal_point" => "Ondaliq Nöqtə", + "default_barcode_font_size_number" => "Standart Barkod Yazı Növü Ölçüsü rəqəm ilə olmalıdır.", + "default_barcode_font_size_required" => "Standart Barkod Yazı Növü Ölçüsü olan sahə boş qala bilməz.", + "default_barcode_height_number" => "Standart Barkod hündürlüyü rəqəm ilə olmalıdır.", + "default_barcode_height_required" => "Standart Barkod olan sahə boş qala bilməz.", + "default_barcode_num_in_row_number" => "Sıradakı Barkod Nömrəsi rəqəm ilə olmalıdır.", + "default_barcode_num_in_row_required" => "Standart Barkod Nömrəsi olan sahə boş qala bilməz.", + "default_barcode_page_cellspacing_number" => "Standart Barkod Səhifədki hücrə boşluğu rəqəm ilə olmalıdır.", + "default_barcode_page_cellspacing_required" => "Standart Barkod Səhifədəki hücrə boşluğu olan sahə boş qala bilməz.", + "default_barcode_page_width_number" => "Standart Barkod Sahifə genişliyi rəqəm ilə olmalıdır.", + "default_barcode_page_width_required" => "Standart Barkod Səhifə Genişliyi olan sahə boş qala bilməz.", + "default_barcode_width_number" => "Standart Barkod Genişliyi rəqəm ilə olmalıdır.", + "default_barcode_width_required" => "Standart Barkod Genişliyi olan sahə boş qala bilməz.", + "default_item_columns" => "Sabit Görünür Malların Sütunları", + "default_origin_tax_code" => "Vergi Kodunun Standart Mənbəyi", + "default_receivings_discount" => "Alışdan sonra standart endirim", + "default_receivings_discount_number" => "Sabit alacaqlar endirimi bir nömrə olmalıdır.", + "default_receivings_discount_required" => "Standart alış endirimi tələb olunan sahədir.", + "default_sales_discount" => "Standart Satış Endirimi", + "default_sales_discount_number" => "Standart Satış Endirimi rəqəm ilə olmalıdır.", + "default_sales_discount_required" => "Standart Satış Endirimi tələb olunan sahədi.", + "default_tax_category" => "Standart Vergi Bölməsi", + "default_tax_code" => "Standart Vergo kodu", + "default_tax_jurisdiction" => "Standart Vergi Yurisdiksiyası", + "default_tax_name_number" => "Standart Vergi Adı uzun adlı olmalıdır .", + "default_tax_name_required" => "Adi vergi mütləq rəqəmlə olmalıdır.", + "default_tax_rate" => "Adi vergi dərəcəsi %", + "default_tax_rate_1" => "Vergi Dərəcəsi 1", + "default_tax_rate_2" => "Vergi Məzənnəsi 2", + "default_tax_rate_3" => "", + "default_tax_rate_number" => "Standart Vergi Məzənnəsi rəqəm ilə olmalıdır.", + "default_tax_rate_required" => "Standart Vergi Məzənnəsi olan sahə boş qala bilməz.", + "derive_sale_quantity" => "Tərtib edilmiş satış məbləğinə icazə verin", + "derive_sale_quantity_tooltip" => "Əgər yoxlanılırsa, uzunmüddətli məbləğdə sifariş edilən əşyalar üçün yeni bir mal növü veriləcəkdir", + "dinner_table" => "Cədvəl", + "dinner_table_duplicate" => "Cədvəl unikal olmalıdır.", + "dinner_table_enable" => "Axşam yeməyi masalarını aktiv edin", + "dinner_table_invalid_chars" => "Masanın adı '_' təşkil etməməlidir.", + "dinner_table_required" => "Masa olan sahə boş qala bilməz.", + "dot" => "nöqtə", + "email" => "Elektron Adres", + "email_configuration" => "Elektron Adres Konfiqurasiyası", + "email_mailpath" => "Email Göndətməyə qısa yol", + "email_protocol" => "Protokol", + "email_receipt_check_behaviour" => "E-poçt qəbzi qutusu", + "email_receipt_check_behaviour_always" => "Həmişə yoxlanılır", + "email_receipt_check_behaviour_last" => "Son seçimi yadda saxla", + "email_receipt_check_behaviour_never" => "Həmişə aktiv deyil", + "email_smtp_crypto" => "SMTP Şifrələmə", + "email_smtp_host" => "SMTP Serveri", + "email_smtp_pass" => "Faks", + "email_smtp_port" => "SMTP Portu", + "email_smtp_timeout" => "STMTP vaxt bitimi (lər)", + "email_smtp_user" => "SMTP İstifadəçi Adı", + "enable_avatar" => "", + "enable_avatar_tooltip" => "", + "enable_dropdown_tooltip" => "", + "enable_new_look" => "", + "enable_right_bar" => "", + "enable_right_bar_tooltip" => "", + "enforce_privacy" => "Məxvilik Təmin edin", + "enforce_privacy_tooltip" => "Müştərilərin gizliliyini qorumaq, silmək halında məlumat şifrələməsini təmin etmək", + "fax" => "Faks", + "file_perm" => "Fayl icazəsində problem var, lütfən bu səhvləri düzəldib səhifəni yeniləyin.", + "financial_year" => "Maliyyə İli Başlancığı", + "financial_year_apr" => "1 Aprel", + "financial_year_aug" => "1 Avgust", + "financial_year_dec" => "1 Dekabr", + "financial_year_feb" => "1 Fevral", + "financial_year_jan" => "1 Yanvar", + "financial_year_jul" => "1 İyul", + "financial_year_jun" => "1 İyun", + "financial_year_mar" => "1 Mart", + "financial_year_may" => "1 May", + "financial_year_nov" => "1 Noyabr", + "financial_year_oct" => "1 Oktyabr", + "financial_year_sep" => "1 Sentyabr", + "floating_labels" => "", + "gcaptcha_enable" => "Giriş Səyfəsi reCAPTCHA", + "gcaptcha_secret_key" => "reCAPTCHA Gizli Açarı", + "gcaptcha_secret_key_required" => "reCAPTCHA Gizli Açar olan sahə boş qala bilməz", + "gcaptcha_site_key" => "reCAPTCHA Sayt Açarı", + "gcaptcha_site_key_required" => "reCAPTCHA Sayt Açarı olan sahə boş qala bilməz", + "gcaptcha_tooltip" => "Giriş səhifəsini Google reCAPTCHA ilə qoruyun, APİ açarını uyğunlaşdırmaq üçün işarə ilə göstərilən düyməyə basın.", + "general" => "Ümumi", + "general_configuration" => "Ümumi Konfiqurasiya", + "giftcard_number" => "Hədiyyə Kartı Nömrəsi", + "giftcard_random" => "Təsadüfən Yarat", + "giftcard_series" => "Bölümlərə görə Yarat", + "image_allowed_file_types" => "İcazəli fayl növləri", + "image_max_height_tooltip" => "Şəkillərinin maksimum hündürlüyü pikselə(px).", + "image_max_size_tooltip" => "Şəkil yükləmələrinin maksimum fayl ölçüsü kilobaytla(kb).", + "image_max_width_tooltip" => "Şəkillərinin maksimum enliliyi pikselə(px).", + "image_restrictions" => "Şəkil yükləmə məhdudiyyətləri", + "include_hsn" => "HSN Kodlarına dəstək verin", + "info" => "Məlumat", + "info_configuration" => "Dükan İnformasiyası", + "input_groups" => "", + "integrations" => "İnteqrasiya", + "integrations_configuration" => "Üçüncü tərəf inteqrasiya", + "invoice" => "Faktura", + "invoice_configuration" => "Faktura Çap Parametrləri", + "invoice_default_comments" => "Standart Faktura Şərhləri", + "invoice_email_message" => "Dil", + "invoice_enable" => "Fakturanı Aktivləşdir", + "invoice_printer" => "Faktura Printeri", + "invoice_type" => "Qaimənin Tipi", + "is_readable" => "oxunur, lakin icazələr 660-dan yüksəkdir.", + "is_writable" => "yazılabilir, lakin icazələr 750-dən yüksəkdir.", + "item_markup" => "", + "jsprintsetup_required" => "Xəbərdarlıq: Bu funksiya yalnız FireFox jsPrintSetup addon quraşdırıldığı halda işləyəcəkdir. Yadda saxlanılsın?", + "language" => "Dil", + "last_used_invoice_number" => "Son istifadə edilmiş Faktura nömrəsi", + "last_used_quote_number" => "Son istifadə edilmiş Kvota sayı", + "last_used_work_order_number" => "Son istifadə edilən W / O sayı", + "left" => "Sol", + "license" => "Lisenziya", + "license_configuration" => "Lisenziya bəyanatı", + "line_sequence" => "Sıra Ardıcıllığı", + "lines_per_page" => "Səhifə başına xəttlər", + "lines_per_page_number" => "Səhifə başına sətirlər bir rəqəm ilə olmalıdır.", + "lines_per_page_required" => "Səyfə Başına olan xəttər sahəsi boş qala bilməz.", + "locale" => "Yerləşdirmə", + "locale_configuration" => "Lokallaşdırma Konfiqurasiyası", + "locale_info" => "Lokallaşdırma Konfiqurasiya Məlumatı", + "location" => "Fond", + "location_configuration" => "Anbar Yerləri", + "location_info" => "Yer Konfiqurasiya Məlumatı", + "login_form" => "", + "logout" => "Çıxışdan əvvəl məlumatlari ehtiyat bazasına köçürmək istəyirsinizmi? Çıxış üçün Bekap və ya [Ləğv] üçün [OK]' düyməsinə basın.", + "mailchimp" => "Mailçimp", + "mailchimp_api_key" => "Mailchimp API Açarı", + "mailchimp_configuration" => "Mailchimp Konfiqurasiyası", + "mailchimp_key_successfully" => "API Açarı etibarlıdır.", + "mailchimp_key_unsuccessfully" => "API Açarı etibarsızdır.", + "mailchimp_lists" => "Mailchimp siyahısı (lar)", + "mailchimp_tooltip" => "API Açarının İşarəsinə basın.", + "message" => "Mesaj", + "message_configuration" => "Mesaj Konfiqurasiyası", + "msg_msg" => "Saxlanılan Mətn Mesajı", + "msg_msg_placeholder" => "SMS şablonunu istifadə etmək istəyirsinizsə, mesajınızı buraya qeyd edin, əks halda qutunu boş buraxın.", + "msg_pwd" => "SMS-API Şifrəsi", + "msg_pwd_required" => "SMS-API şifrəsi tələb olunan bir sahədir", + "msg_src" => "SMS-API Göndərici ID", + "msg_src_required" => "SMS-API Göndərici ID tələb olunan sahədir", + "msg_uid" => "SMS-API İstifadəçi adı", + "msg_uid_required" => "SMS-API İstifadəçi adı tələb olunan sahədir", + "multi_pack_enabled" => "Hər bir elementə birdən çox paket", + "no_risk" => "Təhlükəsizlik / zəiflik riski yoxdur.", + "none" => "Heç biri", + "notify_alignment" => "Bildiriş Pəncərə Mövqeyi", + "number_format" => "Nömrə Formatı", + "number_locale" => "Yerləşdirmə", + "number_locale_invalid" => "Kompaniyanın tel.", + "number_locale_required" => "Şirkət telefonu olan sahə boş qalma bilməz.", + "number_locale_tooltip" => "Bu link vasitəsilə uyğun bir yer tapın.", + "os_timezone" => "OSPOS Saat qurşağı:", + "ospos_info" => "OSPOS quraşdırılması məlumatı", + "payment_options_order" => "Sifariş üçün Ödəmə Şərtləri", + "perm_risk" => "Permissions higher than 750 leaves this software at risk.", + "phone" => "Şirkətin Telefon Nömrəsi", + "phone_required" => "Şirkət Telefonu tələb olunan bir sahədir.", + "print_bottom_margin" => "Çərçivədki aşağı Sərhəd", + "print_bottom_margin_number" => "Aşağıdaki Sərhəd rəqəm ilə olmalıdır.", + "print_bottom_margin_required" => "Aşağıdakı Sərhəd boş qala bilməz.", + "print_delay_autoreturn" => "Gecikmiş satışa Avto qaytarılma", + "print_delay_autoreturn_number" => "Satışı dayandırmaq üçün autoqaytarılma zəruri bir sahədir.", + "print_delay_autoreturn_required" => "Satışı dayandırmaq üçün autoqaytarılma bir sıra olmalıdır.", + "print_footer" => "Brauzer Altlığını Çap Et", + "print_header" => "Brauzer Başlığını çap et", + "print_left_margin" => "Soldaki Künc", + "print_left_margin_number" => "Soldaki Künc rəqəm ilə olmalıdır.", + "print_left_margin_required" => "Soldaki Künc olan sahə boş qala bilməz.", + "print_receipt_check_behaviour" => "Qəbzin çapını təsdiqləyin", + "print_receipt_check_behaviour_always" => "Həmişə yoxlanılır", + "print_receipt_check_behaviour_last" => "Son seçimi yadda saxla", + "print_receipt_check_behaviour_never" => "Həmişə təsdiqləsin", + "print_right_margin" => "Sağdaki Künc", + "print_right_margin_number" => "Sağdakı Künc rəqəm ilə olmalıdır.", + "print_right_margin_required" => "Sağdakı Künc olan sahə boş qala bilməz.", + "print_silently" => "Çap Edilmiş Yazışmanı Gostər", + "print_top_margin" => "Üstdəki Künc", + "print_top_margin_number" => "Üstdəki Künc rəqəm ilə olmalıdır.", + "print_top_margin_required" => "Üstdəki Sahə Boş qala bilməz.", + "quantity_decimals" => "Ondalıqların Miqdarı", + "quick_cash_enable" => "", + "quote_default_comments" => "Standart şərhlər", + "receipt" => "Çek", + "receipt_category" => "", + "receipt_configuration" => "Çek Cap Parametirləri", + "receipt_default" => "Adi", + "receipt_font_size" => "Yazı Tipi", + "receipt_font_size_number" => "Yazı ölçüsü bir sıra olmalıdır.", + "receipt_font_size_required" => "Yazı tipi ölçüsü zəruri bir sahədir.", + "receipt_info" => "Alınan Konfiqurasiya Məlumatı", + "receipt_printer" => "Bilet Çap edən", + "receipt_short" => "Qısa", + "receipt_show_company_name" => "Şirkətin Adını Göstər", + "receipt_show_description" => "Təsviri Göstər", + "receipt_show_serialnumber" => "Serial nömrəsi göstər", + "receipt_show_tax_ind" => "Vergi göstəricisinə bax", + "receipt_show_taxes" => "Vergini Göstər", + "receipt_show_total_discount" => "Ümumi Endirim göstər", + "receipt_template" => "Geri qaytarmaq mütləq məsafə lazımdır", + "receiving_calculate_average_price" => "Otalama Qiyməti Hesabla (Alınan)", + "recv_invoice_format" => "Alınan Fatura Formatı", + "register_mode_default" => "Standart Qeydiyyat Rejimi", + "report_an_issue" => "Bir problemi bildirişi", + "return_policy_required" => "Geri Qaytarma Qanunu olan sahə zəruri sahədir.", + "reward" => "Mükafat", + "reward_configuration" => "Konfiqurasiya ugurla saxlanıldı", + "right" => "Konfiqurasiya ugursuz oldu saxlanilmadi", + "sales_invoice_format" => "Satış Fatura Formatı", + "sales_quote_format" => "Satış Sitat Formati", + "saved_successfully" => "Konfiqurasiya uğurla saxlanıldı.", + "saved_unsuccessfully" => "Konfiqurasiyanı saxlamq mümkün olmadı.", + "security_issue" => "Təhlükəsizlik açığı xəbərdarlığı", + "server_notice" => "Xahiş edirik, hesabatın təqdim edilməsi üçün aşağıdakı məlumatı istifadə edin.", + "service_charge" => "", + "show_due_enable" => "", + "show_office_group" => "Ofis İşarəsini Göstər", + "statistics" => "Statistikalari Göndər", + "statistics_tooltip" => "İnkişaf və xüsusiyyət təkmilləşdirilməsi məqsədi ilə statistika göndərin.", + "stock_location" => "Ehtiyyat Yeri", + "stock_location_duplicate" => "Ehtiyyat Olan Yer Unikal Olmalıdir.", + "stock_location_invalid_chars" => "Ehtiyyat Yeri təşkil etməməlidir '_'.", + "stock_location_required" => "Ehtiyyat Yeri Olan Sahə boş qala bilməz.", + "suggestions_fifth_column" => "", + "suggestions_first_column" => "Sütun 1", + "suggestions_fourth_column" => "", + "suggestions_layout" => "Təklif Çərçivələrini Axtar", + "suggestions_second_column" => "Sütun 2", + "suggestions_third_column" => "Sütun 3", + "system_conf" => "Quraşdırma və Conf", + "system_info" => "System Info", + "table" => "Masa", + "table_configuration" => "Cədvəl Konfiqurasiyası", + "takings_printer" => "Printer Çeki", + "tax" => "Vergi", + "tax_category" => "Vergi Kategoriyasi", + "tax_category_duplicate" => "Daxil edilən vergi kategoriyası artıq mövcuddur.", + "tax_category_invalid_chars" => "Daxil edilən vergi kategoriyası səhvdir.", + "tax_category_required" => "Vergi Kategoriyası tələb olunur.", + "tax_category_used" => "Vergi kateqoriyası istifadə olunduğu üçün silinə bilməz.", + "tax_configuration" => "Vergi Konfiqurasiyası", + "tax_decimals" => "Vaxt", + "tax_id" => "Vergi İD", + "tax_included" => "Vergi Daxildir", + "theme" => "Vebsayt", + "theme_preview" => "", + "thousands_separator" => "Minliklər Ayıran", + "timezone" => "Vaxt Zonası", + "timezone_error" => "OSPOS Saat qurşağı Yerli saat qurşağınızdan fərqlidir.", + "top" => "Yuxarı", + "use_destination_based_tax" => "Təyinatından vergi istifadə edin", + "user_timezone" => "Yerli saat qurşağı:", + "website" => "Vebsayt", + "wholesale_markup" => "", + "work_order_enable" => "İş Sifariş Dəstəyi", + "work_order_format" => "İş Sifarş Farmatı", ]; diff --git a/app/Language/az/Customers.php b/app/Language/az/Customers.php index 0a815721b..6c609172c 100644 --- a/app/Language/az/Customers.php +++ b/app/Language/az/Customers.php @@ -1,56 +1,56 @@ "Hesab nömrəsi", - "account_number_duplicate" => "Hesab nömrəsi artıq verilənlər bazasında mövcuddur.", - "available_points" => "Mövcud ballar", - "available_points_value" => "", - "average" => "Orta xərclənən", - "avg_discount" => "Orta endirim", - "basic_information" => "Məlumat", - "cannot_be_deleted" => "Seçilmiş müştərilər silinə bilməz, bir və ya birdən çox müştərilərin satışları var.", - "company_name" => "Şirkət", - "confirm_delete" => "Siz seçilmiş müştərini (lər) silməyə əminsinizmi?", - "confirm_restore" => "Seçilmiş müştəriləri bərpa etmək istədiyinizə əminsinizmi?", - "consent" => "Qeydiyyatın razılığı", - "consent_required" => "Qeydiyyatın razılığı tələb olunan bir sahədir.", - "csv_import_failed" => "CSV idxalı alınmadı", - "csv_import_nodata_wrongformat" => "Yüklənmiş faylda məlumat yoxdur və ya düzgün formatda deyil.", - "csv_import_partially_failed" => "Müştəri əlavəsi bəzi səhvlər olmaqla uğurla alındı:", - "csv_import_success" => "Müştəri Əlavəsi uğurla alındı.", - "customer" => "Müştəri", - "date" => "Tarix", - "discount" => "Endirim", - "discount_fixed" => "Sabit endirim", - "discount_percent" => "Faiz dərəcəsi", - "discount_type" => "Endirim növü", - "email_duplicate" => "Məlumat bazasında artıq bu e-poçt ünvanı var.", - "employee" => "Əməkdaş", - "error_adding_updating" => "Müştəri əlavəsində ya da yenilənməsində XƏTA.", - "import_items_csv" => "CSVdən müştəri əlavə et", - "mailchimp_activity_click" => "Elektron poçt düyməsi", - "mailchimp_activity_lastopen" => "Son açılan məktub", - "mailchimp_activity_open" => "Açıq məktub", - "mailchimp_activity_total" => "Məktub göndərildi", - "mailchimp_activity_unopen" => "Açılmamış məktub", - "mailchimp_email_client" => "Müştəriyə Məktub Göndər", - "mailchimp_info" => "Mailchimp-də", - "mailchimp_member_rating" => "Reytinq", - "mailchimp_status" => "Status", - "mailchimp_vip" => "siz silmək üçün heç bir müştəri seçməmisiniz", - "max" => "Ən çox xərclənən", - "min" => "Ən az xərclənən", - "new" => "Yeni Müştəri", - "none_selected" => "Siz silmək üçün müştəri seçməmisiniz.", - "one_or_multiple" => "müştəri (lər)", - "quantity" => "Miqdarı", - "stats_info" => "Statistikalar", - "successful_adding" => "Siz uğurla müştəri əlavə etdiniz", - "successful_deleted" => "Siz uğurla sildiniz", - "successful_updating" => "Siz uğurla müştərini sildiniz", - "tax_code" => "Vergi Kodu", - "tax_id" => "Vergi İD", - "taxable" => "Vergi ödəyirlər", - "total" => "Toplam xərcləndi", - "update" => "Müştərini yeniləyin", - "rewards_package" => "Mükafatlar Paketi", + "account_number" => "Hesab nömrəsi", + "account_number_duplicate" => "Hesab nömrəsi artıq verilənlər bazasında mövcuddur.", + "available_points" => "Mövcud ballar", + "available_points_value" => "", + "average" => "Orta xərclənən", + "avg_discount" => "Orta endirim", + "basic_information" => "Məlumat", + "cannot_be_deleted" => "Seçilmiş müştərilər silinə bilməz, bir və ya birdən çox müştərilərin satışları var.", + "company_name" => "Şirkət", + "confirm_delete" => "Siz seçilmiş müştərini (lər) silməyə əminsinizmi?", + "confirm_restore" => "Seçilmiş müştəriləri bərpa etmək istədiyinizə əminsinizmi?", + "consent" => "Qeydiyyatın razılığı", + "consent_required" => "Qeydiyyatın razılığı tələb olunan bir sahədir.", + "csv_import_failed" => "CSV idxalı alınmadı", + "csv_import_nodata_wrongformat" => "Yüklənmiş faylda məlumat yoxdur və ya düzgün formatda deyil.", + "csv_import_partially_failed" => "Müştəri əlavəsi bəzi səhvlər olmaqla uğurla alındı:", + "csv_import_success" => "Müştəri Əlavəsi uğurla alındı.", + "customer" => "Müştəri", + "date" => "Tarix", + "discount" => "Endirim", + "discount_fixed" => "Sabit endirim", + "discount_percent" => "Faiz dərəcəsi", + "discount_type" => "Endirim növü", + "email_duplicate" => "Məlumat bazasında artıq bu e-poçt ünvanı var.", + "employee" => "Əməkdaş", + "error_adding_updating" => "Müştəri əlavəsində ya da yenilənməsində XƏTA.", + "import_items_csv" => "CSVdən müştəri əlavə et", + "mailchimp_activity_click" => "Elektron poçt düyməsi", + "mailchimp_activity_lastopen" => "Son açılan məktub", + "mailchimp_activity_open" => "Açıq məktub", + "mailchimp_activity_total" => "Məktub göndərildi", + "mailchimp_activity_unopen" => "Açılmamış məktub", + "mailchimp_email_client" => "Müştəriyə Məktub Göndər", + "mailchimp_info" => "Mailchimp-də", + "mailchimp_member_rating" => "Reytinq", + "mailchimp_status" => "Status", + "mailchimp_vip" => "siz silmək üçün heç bir müştəri seçməmisiniz", + "max" => "Ən çox xərclənən", + "min" => "Ən az xərclənən", + "new" => "Yeni Müştəri", + "none_selected" => "Siz silmək üçün müştəri seçməmisiniz.", + "one_or_multiple" => "müştəri (lər)", + "quantity" => "Miqdarı", + "stats_info" => "Statistikalar", + "successful_adding" => "Siz uğurla müştəri əlavə etdiniz", + "successful_deleted" => "Siz uğurla sildiniz", + "successful_updating" => "Siz uğurla müştərini sildiniz", + "tax_code" => "Vergi Kodu", + "tax_id" => "Vergi İD", + "taxable" => "Vergi ödəyirlər", + "total" => "Toplam xərcləndi", + "update" => "Müştərini yeniləyin", + "rewards_package" => "Mükafatlar Paketi", ]; diff --git a/app/Language/az/Datepicker.php b/app/Language/az/Datepicker.php index 274d97cf3..20b5199f9 100644 --- a/app/Language/az/Datepicker.php +++ b/app/Language/az/Datepicker.php @@ -1,23 +1,23 @@ "Bütün vaxta", - "apply" => "Uygula", - "cancel" => "İmtina", - "custom" => "Fərqli", - "from" => "Bundan", - "last_30" => "Son 30 gün", - "last_7" => "Son 7 Gün", - "last_financial_year" => "Son Maliyyə ili", - "last_month" => "Ötən ay", - "last_year" => "Ötən il", - "same_month_last_year" => "Ötən il eyni ay", - "same_month_to_same_day_last_year" => "Ötən ilin eyni ayindan", - "this_financial_year" => "Cari maliyyə ili", - "this_month" => "Bu ay", - "this_year" => "Bu il", - "to" => "Buna", - "today" => "Bugün", - "today_last_year" => "Keçən il bu gün", - "weekstart" => "0", - "yesterday" => "Dünən", + "all_time" => "Bütün vaxta", + "apply" => "Uygula", + "cancel" => "İmtina", + "custom" => "Fərqli", + "from" => "Bundan", + "last_30" => "Son 30 gün", + "last_7" => "Son 7 Gün", + "last_financial_year" => "Son Maliyyə ili", + "last_month" => "Ötən ay", + "last_year" => "Ötən il", + "same_month_last_year" => "Ötən il eyni ay", + "same_month_to_same_day_last_year" => "Ötən ilin eyni ayindan", + "this_financial_year" => "Cari maliyyə ili", + "this_month" => "Bu ay", + "this_year" => "Bu il", + "to" => "Buna", + "today" => "Bugün", + "today_last_year" => "Keçən il bu gün", + "weekstart" => "0", + "yesterday" => "Dünən", ]; diff --git a/app/Language/az/Employees.php b/app/Language/az/Employees.php index 6807df2f8..1670182c3 100644 --- a/app/Language/az/Employees.php +++ b/app/Language/az/Employees.php @@ -1,44 +1,44 @@ "", - "basic_information" => "Məlumat", - "cannot_be_deleted" => "Seçilmiş əməkdaş (lar) silinə bilməz, bir və ya birdən çox əməkdaş satışlar edib, əks halda siz öz heasabınızı silməyə çalışırsınız.", - "change_employee" => "", - "change_password" => "Şifrəni Dəyiş", - "clerk" => "", - "commission" => "", - "confirm_delete" => "Siz əminsiniz ki seçilmiş əməkdaşları silmək istəyirsiniz?", - "confirm_restore" => "Seçilmiş əməkdaşı (lar) yenidən bərpa etməyinizə əminsinizmi?", - "current_password" => "İndiki Şifrə", - "current_password_invalid" => "Hazirki Şifrə düzgün deyil.", - "employee" => "Əməkdaş", - "error_adding_updating" => "Əməkdaş əlavə etməsk və ya yeniləməsi baş vermədi.", - "error_deleting_demo_admin" => "Demo administrator istifadəçisini silə bilməzsiniz.", - "error_updating_demo_admin" => "Demo administrator istifadəçisini dəyişə bilməzsiniz.", - "language" => "Dil", - "login_info" => "Daxil Ol", - "manager" => "", - "new" => "Yeni Əməkdaş", - "none_selected" => "Silmək üçün heç bir işçi (lər) seçməmisiniz.", - "one_or_multiple" => "İşçi (lər)", - "password" => "Şifrə", - "password_minlength" => "Şifrə ən azı 8 simvol olmalıdır.", - "password_must_match" => "Şifrələr uyğun gəlmir.", - "password_not_must_match" => "Hazırki şifrə və yeni şifrə unikal olmalıdır.", - "password_required" => "Şifrə tələb olunur.", - "permission_desc" => "Modullara giriş imkanı vermək üçün aşağıdakı qutuları yoxlayın.", - "permission_info" => "İcazələr", - "repeat_password" => "Şifrəni yenidən təkrar edin", - "subpermission_required" => "Hər bir modul üçün ən azı bir qrant əlavə edin.", - "successful_adding" => "Əməkdaş müvəffəqiyyətə əlavə olundu.", - "successful_change_password" => "Şifrə müvəffəqiyyətlə dəyişildi.", - "successful_deleted" => "Siz uğurla sildiniz", - "successful_updating" => "Siz uğurla əməkdaşı yenilədiniz", - "system_language" => "Sistem Dili", - "unsuccessful_change_password" => "Şifrə dəyişməsi uğursuz oldu.", - "update" => "İşçini yeniləyin", - "username" => "İstifadəçi Adı", - "username_duplicate" => "", - "username_minlength" => "İstifadəçi adı ən azı 5 simvol olmalıdır.", - "username_required" => "İstifadəçi adı tələb olunan sahədir.", + "administrator" => "", + "basic_information" => "Məlumat", + "cannot_be_deleted" => "Seçilmiş əməkdaş (lar) silinə bilməz, bir və ya birdən çox əməkdaş satışlar edib, əks halda siz öz heasabınızı silməyə çalışırsınız.", + "change_employee" => "", + "change_password" => "Şifrəni Dəyiş", + "clerk" => "", + "commission" => "", + "confirm_delete" => "Siz əminsiniz ki seçilmiş əməkdaşları silmək istəyirsiniz?", + "confirm_restore" => "Seçilmiş əməkdaşı (lar) yenidən bərpa etməyinizə əminsinizmi?", + "current_password" => "İndiki Şifrə", + "current_password_invalid" => "Hazirki Şifrə düzgün deyil.", + "employee" => "Əməkdaş", + "error_adding_updating" => "Əməkdaş əlavə etməsk və ya yeniləməsi baş vermədi.", + "error_deleting_demo_admin" => "Demo administrator istifadəçisini silə bilməzsiniz.", + "error_updating_demo_admin" => "Demo administrator istifadəçisini dəyişə bilməzsiniz.", + "language" => "Dil", + "login_info" => "Daxil Ol", + "manager" => "", + "new" => "Yeni Əməkdaş", + "none_selected" => "Silmək üçün heç bir işçi (lər) seçməmisiniz.", + "one_or_multiple" => "İşçi (lər)", + "password" => "Şifrə", + "password_minlength" => "Şifrə ən azı 8 simvol olmalıdır.", + "password_must_match" => "Şifrələr uyğun gəlmir.", + "password_not_must_match" => "Hazırki şifrə və yeni şifrə unikal olmalıdır.", + "password_required" => "Şifrə tələb olunur.", + "permission_desc" => "Modullara giriş imkanı vermək üçün aşağıdakı qutuları yoxlayın.", + "permission_info" => "İcazələr", + "repeat_password" => "Şifrəni yenidən təkrar edin", + "subpermission_required" => "Hər bir modul üçün ən azı bir qrant əlavə edin.", + "successful_adding" => "Əməkdaş müvəffəqiyyətə əlavə olundu.", + "successful_change_password" => "Şifrə müvəffəqiyyətlə dəyişildi.", + "successful_deleted" => "Siz uğurla sildiniz", + "successful_updating" => "Siz uğurla əməkdaşı yenilədiniz", + "system_language" => "Sistem Dili", + "unsuccessful_change_password" => "Şifrə dəyişməsi uğursuz oldu.", + "update" => "İşçini yeniləyin", + "username" => "İstifadəçi Adı", + "username_duplicate" => "", + "username_minlength" => "İstifadəçi adı ən azı 5 simvol olmalıdır.", + "username_required" => "İstifadəçi adı tələb olunan sahədir.", ]; diff --git a/app/Language/az/Enum.php b/app/Language/az/Enum.php index e069c17d0..9306aa9af 100644 --- a/app/Language/az/Enum.php +++ b/app/Language/az/Enum.php @@ -1,10 +1,10 @@ "Yarım aşağı", - "half_even" => "Yarım hətta", - "half_five" => "Yarısı", - "half_odd" => "Yarım təkliklərdə", - "half_up" => "Yarım yuxarı", - "round_down" => "Yuvarla aşağı", - "round_up" => "Yuvarla yuxarı", + "half_down" => "Yarım aşağı", + "half_even" => "Yarım hətta", + "half_five" => "Yarısı", + "half_odd" => "Yarım təkliklərdə", + "half_up" => "Yarım yuxarı", + "round_down" => "Yuvarla aşağı", + "round_up" => "Yuvarla yuxarı", ]; diff --git a/app/Language/az/Error.php b/app/Language/az/Error.php index 493564461..fbcf273f0 100644 --- a/app/Language/az/Error.php +++ b/app/Language/az/Error.php @@ -1,5 +1,5 @@ "sizin icazəniz yoxdur", - "unknown" => "naməlum", + "no_permission_module" => "sizin icazəniz yoxdur", + "unknown" => "naməlum", ]; diff --git a/app/Language/az/Expenses.php b/app/Language/az/Expenses.php index 3d6954d26..41dbd65cd 100644 --- a/app/Language/az/Expenses.php +++ b/app/Language/az/Expenses.php @@ -1,50 +1,50 @@ "Xərc Əlavə Et", - "amount" => "Məbləğ", - "amount_number" => "Məbləğ rəqəm ilə olmalıdır", - "amount_required" => "Xərc Məbləği tələb olunur", - "by_category" => "Kategoriya", - "cannot_be_deleted" => "Xərc Kategoriya (lar) silinnə bilməz", - "cash" => "Nəğd Pul", - "cash_filter" => "Nəğd", - "categories_name" => "Kategoriya", - "category_required" => "Kategoriya bölməsi boş qala bilməz", - "check" => "Çek", - "check_filter" => "Çek", - "confirm_delete" => "Siz əminsinizmi ki işarələnmiş butun malları redaktə etmək istəyirsiniz?", - "confirm_restore" => "Seçilmiş xərci (lər) bərpa etmək istədiyinizə əminsinizmi?", - "credit" => "Kredit Kartı", - "credit_filter" => "Kredit Kartı", - "date" => "Tarix", - "date_number" => "Tarix rəqəm ilə olmalıdır", - "date_required" => "Tarix qeyd edilməlidir", - "debit" => "Debit Kartı", - "debit_filter" => "Debit Kard", - "description" => "Təsvir", - "due" => "görə", - "due_filter" => "Görə", - "employee" => "Tərəfindən Yaradıldı", - "error_adding_updating" => "Əlavədə Səhv/Xərci yeniləmək", - "expense_id" => "Kimlilk", - "expenses_employee" => "Əməkdaş", - "info" => "Xərc Məlumatı", - "ip_address" => "", - "is_deleted" => "Silinib", - "name_required" => "Xərcin məlumatı qeyd edilməlidir", - "new" => "Yeni Xərc", - "new_supplier" => "", - "no_expenses_to_display" => "Heç bir Xərclər göstərilmir", - "none_selected" => "Siz heç bir xərc seçməmisiniz", - "one_or_multiple" => "Xərc (lər)", - "payment" => "Ödəmə Növü", - "start_typing_supplier_name" => "Təchizatçıın adını yazmağa başlayın ...", - "successful_adding" => "Xərc uğurla əlavə edildi", - "successful_deleted" => "Xərc uğurla silindi", - "successful_updating" => "Xərc Uğurla Yeniləndi", - "supplier_name" => "Təchizatçı", - "supplier_tax_code" => "Vergi Məcəlləsi", - "tax_amount" => "Vergi", - "tax_amount_number" => "", - "update" => "Xərci Yenilə", + "add_item" => "Xərc Əlavə Et", + "amount" => "Məbləğ", + "amount_number" => "Məbləğ rəqəm ilə olmalıdır", + "amount_required" => "Xərc Məbləği tələb olunur", + "by_category" => "Kategoriya", + "cannot_be_deleted" => "Xərc Kategoriya (lar) silinnə bilməz", + "cash" => "Nəğd Pul", + "cash_filter" => "Nəğd", + "categories_name" => "Kategoriya", + "category_required" => "Kategoriya bölməsi boş qala bilməz", + "check" => "Çek", + "check_filter" => "Çek", + "confirm_delete" => "Siz əminsinizmi ki işarələnmiş butun malları redaktə etmək istəyirsiniz?", + "confirm_restore" => "Seçilmiş xərci (lər) bərpa etmək istədiyinizə əminsinizmi?", + "credit" => "Kredit Kartı", + "credit_filter" => "Kredit Kartı", + "date" => "Tarix", + "date_number" => "Tarix rəqəm ilə olmalıdır", + "date_required" => "Tarix qeyd edilməlidir", + "debit" => "Debit Kartı", + "debit_filter" => "Debit Kard", + "description" => "Təsvir", + "due" => "görə", + "due_filter" => "Görə", + "employee" => "Tərəfindən Yaradıldı", + "error_adding_updating" => "Əlavədə Səhv/Xərci yeniləmək", + "expense_id" => "Kimlilk", + "expenses_employee" => "Əməkdaş", + "info" => "Xərc Məlumatı", + "ip_address" => "", + "is_deleted" => "Silinib", + "name_required" => "Xərcin məlumatı qeyd edilməlidir", + "new" => "Yeni Xərc", + "new_supplier" => "", + "no_expenses_to_display" => "Heç bir Xərclər göstərilmir", + "none_selected" => "Siz heç bir xərc seçməmisiniz", + "one_or_multiple" => "Xərc (lər)", + "payment" => "Ödəmə Növü", + "start_typing_supplier_name" => "Təchizatçıın adını yazmağa başlayın ...", + "successful_adding" => "Xərc uğurla əlavə edildi", + "successful_deleted" => "Xərc uğurla silindi", + "successful_updating" => "Xərc Uğurla Yeniləndi", + "supplier_name" => "Təchizatçı", + "supplier_tax_code" => "Vergi Məcəlləsi", + "tax_amount" => "Vergi", + "tax_amount_number" => "", + "update" => "Xərci Yenilə", ]; diff --git a/app/Language/az/Expenses_categories.php b/app/Language/az/Expenses_categories.php index d570d5283..3d15708e2 100644 --- a/app/Language/az/Expenses_categories.php +++ b/app/Language/az/Expenses_categories.php @@ -1,22 +1,22 @@ "Xərc kateqoriyası adı tələb olunur", - "add_item" => "Kateqoriya əlavə et", - "cannot_be_deleted" => "Kateqoriya xərcləri silinmədi", - "category_id" => "Kimlik", - "confirm_delete" => "Seçilmiş xərc kateqoriyasını silmək istədiyinizə əminsinizmi?", - "confirm_restore" => "Seçilmiş xərc bölməsini bərpa etmək istədiyinizə əminsiniz?", - "description" => "Kateqoriya təsviri", - "error_adding_updating" => "Əlavədə Səhv/Xərcl Kategotiyasi yenilənir", - "info" => "Xərc kateqoriyası haqqında məlumat", - "name" => "Kateqoriya adı", - "new" => "Yeni Kateqoriya", - "no_expenses_categories_to_display" => "Heç bir kateqoriya göstərilmir", - "none_selected" => "Siz heç bir Xərc Kateqoriyası seçməmisiniz", - "one_or_multiple" => "Xərc Kateqoriyası", - "quantity" => "Miqdarı", - "successful_adding" => "Xərc Kategoriyası uğurla əlavə edildi", - "successful_deleted" => "Xərc Kategoriyası uğurla silindi", - "successful_updating" => "Xərcləri Kateqoriya yeniləmə müvəffəqiyyətli", - "update" => "Kateqoriya yeniləmə", + "category_name_required" => "Xərc kateqoriyası adı tələb olunur", + "add_item" => "Kateqoriya əlavə et", + "cannot_be_deleted" => "Kateqoriya xərcləri silinmədi", + "category_id" => "Kimlik", + "confirm_delete" => "Seçilmiş xərc kateqoriyasını silmək istədiyinizə əminsinizmi?", + "confirm_restore" => "Seçilmiş xərc bölməsini bərpa etmək istədiyinizə əminsiniz?", + "description" => "Kateqoriya təsviri", + "error_adding_updating" => "Əlavədə Səhv/Xərcl Kategotiyasi yenilənir", + "info" => "Xərc kateqoriyası haqqında məlumat", + "name" => "Kateqoriya adı", + "new" => "Yeni Kateqoriya", + "no_expenses_categories_to_display" => "Heç bir kateqoriya göstərilmir", + "none_selected" => "Siz heç bir Xərc Kateqoriyası seçməmisiniz", + "one_or_multiple" => "Xərc Kateqoriyası", + "quantity" => "Miqdarı", + "successful_adding" => "Xərc Kategoriyası uğurla əlavə edildi", + "successful_deleted" => "Xərc Kategoriyası uğurla silindi", + "successful_updating" => "Xərcləri Kateqoriya yeniləmə müvəffəqiyyətli", + "update" => "Kateqoriya yeniləmə", ]; diff --git a/app/Language/az/Giftcards.php b/app/Language/az/Giftcards.php index 9d240757c..cd1d74bb6 100644 --- a/app/Language/az/Giftcards.php +++ b/app/Language/az/Giftcards.php @@ -1,71 +1,71 @@ "Əlavə etmək və ya çıxarmaq üçün inventar.", - "allow_alt_description" => "Alternativ Təsvirə Icazə Verin", - "bulk_edit" => "Kütləvi Redaktə", - "cannot_be_deleted" => "Seçilmiş Hədiyyə Kartlarını silmək mümkün deyil, seçilmiş Hədiyyə Kartlarının bir və ya bir neçəsi satışa sahibdir.", - "cannot_find_giftcard" => "Hədiyyə kartı tapılmadı.", - "cannot_use" => "Bu satış üçün {0} Hədiyyə kartı istifadə edilə bilməz: Müştəri Etibarsızdır.", - "card_value" => "Dəyəri", - "category" => "Kategoriya", - "change_all_to_allow_alt_desc" => "Hamısı üçün Alternativ təsvirə icazə ver.", - "change_all_to_not_allow_allow_desc" => "Hamısı üçün alternativ təsvirə icazə vermə.", - "change_all_to_serialized" => "Tamamını Serialara Görə Dəyiş", - "change_all_to_unserialized" => "Hamısını qeyri seriyalara görə dəyiş", - "confirm_bulk_edit" => "Seçilmiş Hədiyyə Kartlarını redaktə etmək istədiyinizə əminsinizmi?", - "confirm_delete" => "Seçilmiş Hədiyyə Kartlarını ləğv etmək istədiyinizə əminsinizmi?", - "confirm_restore" => "Seçilmiş Hədiyyə Kartlarını (lər) bərpa etmək istədiyinizə əminsinizmi?", - "cost_price" => "Topdan Satış Qiyməti", - "count" => "İnventarlaşdırmanı Yenilə", - "csv_import_failed" => "CSV idxalı uğursuz oldu.", - "current_quantity" => "Hazırkı Sayı", - "description" => "Təsvir", - "details_count" => "İnventarlaşdırma Sayının Detalları", - "do_nothing" => "Heç nə etmə", - "edit_fields_you_want_to_update" => "Seçilmiş Hədiyyə Kartları üçün istədiyiniz sahələri redaktə edin.", - "edit_multiple_giftcards" => "Birneçə Hədiyyə Kartını redaktə et.", - "error_adding_updating" => "Hədiyyə Kartı əlavə və ya yenilənməsində XƏTA.", - "error_updating_multiple" => "Hədiyyə kartlarının yeniləməsi uğursuz oldu.", - "generate_barcodes" => "Barkodlar Yarat", - "giftcard" => "Hədiyyə Kartı", - "giftcard_number" => "Hədiyyə Kartı Nömrəsi", - "info_provided_by" => "Məlumat tərəfindən verildi", - "inventory_comments" => "Rəylər", - "is_serialized" => "Hədiyyə kartının Serial Nömrəsi var", - "low_inventory_giftcards" => "Aşağı İnvertizasiyalı Hədiyyə Karti", - "manually_editing_of_quantity" => "Sayı əl ilə redaktə edilməsi", - "must_select_giftcard_for_barcode" => "Barkod yaratmaq üçün ən az bir 1 Hədiyyə Kartı seçməlisiniz.", - "new" => "Yeni Hədiyyə Kartı", - "no_description_giftcards" => "Hədiyyə Kartının heç bir təsviri yoxdur", - "no_giftcards_to_display" => "Heç bir Hədiyyə Kartı göstərilmir.", - "none" => "Heç Biri", - "none_selected" => "Redaktə etmək üçün Hədiyyə Kartları yoxdu.", - "number" => "Hədiyyə Kartı Nömrəsi rəqəm ilə olmalıdır.", - "number_information" => "Hədiyyə Karti Nömrəsi", - "number_required" => "Hədiyyə kartı nömrəsi tələb olunan sahədir.", - "one_or_multiple" => "Hədiyyə Kartı (lar)", - "person_id" => "Müştəri", - "quantity" => "Sayı", - "quantity_required" => "Miqyas tələb olunan sahədir. Ləğv etmək üçün xahiş olunur (X).", - "remaining_balance" => "Hədiyyə kartının {0} qalan dəyəri -{1}!", - "reorder_level" => "Yenidən Sifariş Səviyyəsi", - "retrive_giftcard_info" => "siz uğurla hədiyyə kartı əlavə etdiz", - "sales_tax_1" => "Satış Vergisi", - "sales_tax_2" => "Satış Vergisi 2", - "serialized_giftcards" => "Serialara görə Hədiyyə Kartları", - "successful_adding" => "Siz uğurla Hədiyyə Kartını əlavə etdiniz", - "successful_bulk_edit" => "Seçdiyiniz Gift Card (lar) ı uğurla yenilədiniz", - "successful_deleted" => "Siz Uğurla Sildiniz", - "successful_updating" => "Hədiyyə Kartını müvəffəqiyyətlə yenilədiniz", - "supplier" => "Təchizatçı", - "tax_1" => "Vergi 1", - "tax_2" => "Vergi 2", - "tax_percent" => "Vergi Faizi", - "tax_percents" => "Vergi Faiz (lər) i", - "unit_price" => "Pərakəndə Dəyəri", - "upc_database" => "Barkod Məlumat Bazası", - "update" => "Hədiyyə kartını Yeniləyin", - "use_inventory_menu" => "İnventarlaşdırma menyusundan istifadə edin", - "value" => "Hədiyyə Kartı Dəyəri rəqəm ilə olmalıdır.", - "value_required" => "Hədiyyə kartı dəyəri zəruri bir sahədir.", + "add_minus" => "Əlavə etmək və ya çıxarmaq üçün inventar.", + "allow_alt_description" => "Alternativ Təsvirə Icazə Verin", + "bulk_edit" => "Kütləvi Redaktə", + "cannot_be_deleted" => "Seçilmiş Hədiyyə Kartlarını silmək mümkün deyil, seçilmiş Hədiyyə Kartlarının bir və ya bir neçəsi satışa sahibdir.", + "cannot_find_giftcard" => "Hədiyyə kartı tapılmadı.", + "cannot_use" => "Bu satış üçün {0} Hədiyyə kartı istifadə edilə bilməz: Müştəri Etibarsızdır.", + "card_value" => "Dəyəri", + "category" => "Kategoriya", + "change_all_to_allow_alt_desc" => "Hamısı üçün Alternativ təsvirə icazə ver.", + "change_all_to_not_allow_allow_desc" => "Hamısı üçün alternativ təsvirə icazə vermə.", + "change_all_to_serialized" => "Tamamını Serialara Görə Dəyiş", + "change_all_to_unserialized" => "Hamısını qeyri seriyalara görə dəyiş", + "confirm_bulk_edit" => "Seçilmiş Hədiyyə Kartlarını redaktə etmək istədiyinizə əminsinizmi?", + "confirm_delete" => "Seçilmiş Hədiyyə Kartlarını ləğv etmək istədiyinizə əminsinizmi?", + "confirm_restore" => "Seçilmiş Hədiyyə Kartlarını (lər) bərpa etmək istədiyinizə əminsinizmi?", + "cost_price" => "Topdan Satış Qiyməti", + "count" => "İnventarlaşdırmanı Yenilə", + "csv_import_failed" => "CSV idxalı uğursuz oldu.", + "current_quantity" => "Hazırkı Sayı", + "description" => "Təsvir", + "details_count" => "İnventarlaşdırma Sayının Detalları", + "do_nothing" => "Heç nə etmə", + "edit_fields_you_want_to_update" => "Seçilmiş Hədiyyə Kartları üçün istədiyiniz sahələri redaktə edin.", + "edit_multiple_giftcards" => "Birneçə Hədiyyə Kartını redaktə et.", + "error_adding_updating" => "Hədiyyə Kartı əlavə və ya yenilənməsində XƏTA.", + "error_updating_multiple" => "Hədiyyə kartlarının yeniləməsi uğursuz oldu.", + "generate_barcodes" => "Barkodlar Yarat", + "giftcard" => "Hədiyyə Kartı", + "giftcard_number" => "Hədiyyə Kartı Nömrəsi", + "info_provided_by" => "Məlumat tərəfindən verildi", + "inventory_comments" => "Rəylər", + "is_serialized" => "Hədiyyə kartının Serial Nömrəsi var", + "low_inventory_giftcards" => "Aşağı İnvertizasiyalı Hədiyyə Karti", + "manually_editing_of_quantity" => "Sayı əl ilə redaktə edilməsi", + "must_select_giftcard_for_barcode" => "Barkod yaratmaq üçün ən az bir 1 Hədiyyə Kartı seçməlisiniz.", + "new" => "Yeni Hədiyyə Kartı", + "no_description_giftcards" => "Hədiyyə Kartının heç bir təsviri yoxdur", + "no_giftcards_to_display" => "Heç bir Hədiyyə Kartı göstərilmir.", + "none" => "Heç Biri", + "none_selected" => "Redaktə etmək üçün Hədiyyə Kartları yoxdu.", + "number" => "Hədiyyə Kartı Nömrəsi rəqəm ilə olmalıdır.", + "number_information" => "Hədiyyə Karti Nömrəsi", + "number_required" => "Hədiyyə kartı nömrəsi tələb olunan sahədir.", + "one_or_multiple" => "Hədiyyə Kartı (lar)", + "person_id" => "Müştəri", + "quantity" => "Sayı", + "quantity_required" => "Miqyas tələb olunan sahədir. Ləğv etmək üçün xahiş olunur (X).", + "remaining_balance" => "Hədiyyə kartının {0} qalan dəyəri -{1}!", + "reorder_level" => "Yenidən Sifariş Səviyyəsi", + "retrive_giftcard_info" => "siz uğurla hədiyyə kartı əlavə etdiz", + "sales_tax_1" => "Satış Vergisi", + "sales_tax_2" => "Satış Vergisi 2", + "serialized_giftcards" => "Serialara görə Hədiyyə Kartları", + "successful_adding" => "Siz uğurla Hədiyyə Kartını əlavə etdiniz", + "successful_bulk_edit" => "Seçdiyiniz Gift Card (lar) ı uğurla yenilədiniz", + "successful_deleted" => "Siz Uğurla Sildiniz", + "successful_updating" => "Hədiyyə Kartını müvəffəqiyyətlə yenilədiniz", + "supplier" => "Təchizatçı", + "tax_1" => "Vergi 1", + "tax_2" => "Vergi 2", + "tax_percent" => "Vergi Faizi", + "tax_percents" => "Vergi Faiz (lər) i", + "unit_price" => "Pərakəndə Dəyəri", + "upc_database" => "Barkod Məlumat Bazası", + "update" => "Hədiyyə kartını Yeniləyin", + "use_inventory_menu" => "İnventarlaşdırma menyusundan istifadə edin", + "value" => "Hədiyyə Kartı Dəyəri rəqəm ilə olmalıdır.", + "value_required" => "Hədiyyə kartı dəyəri zəruri bir sahədir.", ]; diff --git a/app/Language/az/Item_kits.php b/app/Language/az/Item_kits.php index c68869d15..77e43f515 100644 --- a/app/Language/az/Item_kits.php +++ b/app/Language/az/Item_kits.php @@ -1,41 +1,41 @@ "Mal Əlavə Etmək", - "all" => "Hamısı", - "cannot_be_deleted" => "Dəst Mal (lar) silinə bilməz.", - "confirm_delete" => "Seçilmiş mallar dəstlərini silmək istəyinizə əminsiniz?", - "confirm_restore" => "Seçilən Mal dəstini (lər) bərpa etmək istədiyinizə əminsiniz?", - "description" => "Mal Dəstinin Təsviri", - "discount" => "Endirim", - "discount_fixed" => "Sabit Endirim", - "discount_percent" => "Endirim Faizi", - "discount_type" => "Endirim növü", - "error_adding_updating" => "Malı yeniləməkdə və ya əlavə etməkdə səhv var.", - "find_kit_item" => "Mal Dəsti", - "info" => "Mal Dəsti haqqında informasiya", - "item" => "Maddə", - "item_kit_number" => "Barkod", - "item_kit_number_duplicate" => "", - "item_number" => "", - "item_number_duplicate" => "", - "items" => "Mallar", - "kit" => "Dəstin İd", - "kit_and_components" => "Dəst və Komponentlər", - "kit_and_stock" => "Dəst və Anbar", - "kit_only" => "Yalnız Dəst", - "name" => "Malın Adlandırılması", - "new" => "Yeni Mal Dəsti", - "no_item_kits_to_display" => "Göstərmək üçün mal yoxdur.", - "none_selected" => "Hər hansı bir mal dəstini seçmədiniz.", - "one_or_multiple" => "Mal (lar)", - "price_option" => "Qiymət Seçimi", - "priced_only" => "Ancaq Qiyməti Olanlar", - "print_option" => "Çap Seçimi", - "quantity" => "Sayı", - "sequence" => "Ardıcıllıq", - "successful_adding" => "Siz uğurla mal dəsti əlavə etdiniz", - "successful_deleted" => "siz uğurla sildiniz", - "successful_updating" => "Siz uğurla malı yenilədiniz", - "unit_price" => "", - "update" => "Mal Dəstini Yenilənməsi", + "add_item" => "Mal Əlavə Etmək", + "all" => "Hamısı", + "cannot_be_deleted" => "Dəst Mal (lar) silinə bilməz.", + "confirm_delete" => "Seçilmiş mallar dəstlərini silmək istəyinizə əminsiniz?", + "confirm_restore" => "Seçilən Mal dəstini (lər) bərpa etmək istədiyinizə əminsiniz?", + "description" => "Mal Dəstinin Təsviri", + "discount" => "Endirim", + "discount_fixed" => "Sabit Endirim", + "discount_percent" => "Endirim Faizi", + "discount_type" => "Endirim növü", + "error_adding_updating" => "Malı yeniləməkdə və ya əlavə etməkdə səhv var.", + "find_kit_item" => "Mal Dəsti", + "info" => "Mal Dəsti haqqında informasiya", + "item" => "Maddə", + "item_kit_number" => "Barkod", + "item_kit_number_duplicate" => "", + "item_number" => "", + "item_number_duplicate" => "", + "items" => "Mallar", + "kit" => "Dəstin İd", + "kit_and_components" => "Dəst və Komponentlər", + "kit_and_stock" => "Dəst və Anbar", + "kit_only" => "Yalnız Dəst", + "name" => "Malın Adlandırılması", + "new" => "Yeni Mal Dəsti", + "no_item_kits_to_display" => "Göstərmək üçün mal yoxdur.", + "none_selected" => "Hər hansı bir mal dəstini seçmədiniz.", + "one_or_multiple" => "Mal (lar)", + "price_option" => "Qiymət Seçimi", + "priced_only" => "Ancaq Qiyməti Olanlar", + "print_option" => "Çap Seçimi", + "quantity" => "Sayı", + "sequence" => "Ardıcıllıq", + "successful_adding" => "Siz uğurla mal dəsti əlavə etdiniz", + "successful_deleted" => "siz uğurla sildiniz", + "successful_updating" => "Siz uğurla malı yenilədiniz", + "unit_price" => "", + "update" => "Mal Dəstini Yenilənməsi", ]; diff --git a/app/Language/az/Items.php b/app/Language/az/Items.php index 42b4c07cd..a05e32d20 100644 --- a/app/Language/az/Items.php +++ b/app/Language/az/Items.php @@ -1,120 +1,120 @@ "İnventar + Topla və ya - Çıx.", - "allow_alt_description" => "Alternativ təsvirə icazə verin", - "amount_entry" => "Məbləğ Əlavəsi", - "bulk_edit" => "Kütləvi Redaktə", - "buy_price_required" => "Alış qiyməti tələb olunan sahədir.", - "cannot_be_deleted" => "Seçilmiş Mal (lar) silmək mükün deyil, bir və ya birdən çox Mallarda Satışlar var.", - "cannot_find_item" => "Mal Tapılmadı.", - "categories" => "", - "category" => "Bolmə", - "category_new" => "", - "category_required" => "Bölmə sahəsi boş qala bilməz.", - "change_all_to_allow_alt_desc" => "Hamısı üçün Alternativ Təsvirə İcazə Verin.", - "change_all_to_not_allow_allow_desc" => "Hamısı üçün Alternativ Təsvirə İcazə Verməyin.", - "change_all_to_serialized" => "Hamısını Seriyalaşdırılmışa görə dəyişin", - "change_all_to_unserialized" => "Qeyri Seriyalara görə dəyiş", - "change_image" => "Şəkili Dəyiş", - "confirm_bulk_edit" => "Siz əminsinizmi ki işarələnmiş butun malları redaktə etmək istəyirsiniz?", - "confirm_bulk_edit_wipe_taxes" => "Bütün Məhsul Vergisi məlumatları dəyişdiriləcək.", - "confirm_delete" => "Seçilmiş element(ləri) silmək istədiyinizə əminsiniz?", - "confirm_restore" => "Seçilmiş element (lər) bərpa etmək istədiyinizə əminsinizmi?", - "cost_price" => "Topdan Satış qiyməti", - "cost_price_number" => "Topdansatış qiyməti rəqəm olmalıdır.", - "cost_price_required" => "Topdan satiış - doldurulması vacib sahə.", - "count" => "inventorun yenilənməsi", - "csv_import_failed" => "səhv csv import", - "csv_import_nodata_wrongformat" => "Yüklənmiş faylda məlumat yoxdur və ya düzgün formatlanmır.", - "csv_import_partially_failed" => "Xətlərdə {0} element idxalı uğursuzluq (lar) var: {1}. Heç bir sıra idxal edilmədi.", - "csv_import_success" => "Malların İdxalı Uğurla Həyata Keçdi.", - "current_quantity" => "indiki say", - "default_pack_name" => "Hər biri", - "description" => "təsvir", - "details_count" => "detallı inventor sayı", - "do_nothing" => "heç nə etməmək", - "edit" => "", - "edit_fields_you_want_to_update" => "Seçilmiş məhsullar üçün tələb olunan sahələri redaktə edin.", - "edit_multiple_items" => "bir neçə malın redaktəsi", - "empty_upc_items" => "Boş Barkod Malları", - "error_adding_updating" => "mal əlavə etməkdə və ya yeniləməkdə səhv var", - "error_updating_multiple" => "malların yenilənməsində səhv var", - "generate_barcodes" => "şifrə yarat", - "hsn_code" => "Harmonize Sistem Nomenklaturası", - "image" => "Avatar", - "import_items_csv" => "CSVdən Malları İdxal Et", - "info_provided_by" => "Məlumat təqdim olundu", - "inventory" => "inventor", - "inventory_CSV_import_quantity" => "Miqdarı CSV-dən idxal olunur", - "inventory_comments" => "komentariyalar", - "inventory_data_tracking" => "İnventarlaşdırma Üçün Məlumat İzləmə", - "inventory_date" => "Tarix", - "inventory_employee" => "Əmakdaş", - "inventory_in_out_quantity" => "Daxili və Xarici Say", - "inventory_remarks" => "Qeydlər", - "is_deleted" => "Silindi", - "is_printed" => "", - "is_serialized" => "Malın Seriya Nömrəsi var", - "item" => "Mal", - "item_id" => "", - "item_number" => "Barkod", - "item_number_duplicate" => "Malın Nömrəsi artiq Məlumat bazasında var.", - "kit" => "Dəst", - "location" => "Yer", - "low_inventory_items" => "Bitmış Mallar", - "low_sell_item" => "Malların aşağı qiy. satışı", - "manually_editing_of_quantity" => "Sayı Əl ilə Redeaktə Etmək", - "markup" => "", - "name" => "Malın Adı", - "name_required" => "Malın adı olan sahə boş qala bilməz.", - "new" => "Yeni Mal", - "no_description_items" => "Mallar haqqında Təsvir Yoxdur", - "no_items_to_display" => "Mallar Göstərilmir.", - "none" => "Heçnə", - "none_selected" => "Siz redaktə etmək üçün hər hansı bir mal seçməmisiniz", - "nonstock" => "Əldə Olmayan", - "number_information" => "Malın Nömrəsi", - "number_required" => "Barkod tələb olunan sahədir.", - "one_or_multiple" => "Mal (lar)", - "pack_name" => "Paket Adı", - "qty_per_pack" => "Paketin miqdarı", - "quantity" => "Sayı", - "quantity_number" => "Miqdarı mütləq rəqəmlə olmalıdır.", - "quantity_required" => "Miqyas tələb olunan sahədir.", - "receiving_quantity" => "Qəbul Olunan Miqdar", - "remove_image" => "Şəkili Sil", - "reorder_level" => "Səviyyani yenidən düzəlt", - "reorder_level_number" => "Yenidən sıralama səviyyəsi rəqəmlə olmalıdır.", - "reorder_level_required" => "Düzəliş Səviyyəsi zəruri bir sahədir.", - "retrive_item_info" => "Mal Haqqında Məlumat", - "sales_tax_1" => "Satış Vergisi", - "sales_tax_2" => "Satış Vergisi 2", - "search_attributes" => "Atributları Axtar", - "select_image" => "Şəkil Seç", - "serialized_items" => "Seriyalı Mallar", - "standard" => "Standart", - "stock" => "Ehtiyyat", - "stock_location" => "Ehtiyyatın Yerləşdiyi Yer", - "stock_type" => "Ehtiyyatda olanın Növü", - "successful_adding" => "Siz uğurla malı əlavə etdiniz", - "successful_bulk_edit" => "Siz uğurla bütun mallari yenilədiniz", - "successful_deleted" => "Siz uğurla sildiniz", - "successful_updating" => "Siz uğurla malı yenilədiniz", - "supplier" => "Təchizatcı", - "tax_1" => "Vergi 1", - "tax_2" => "Vergi 2", - "tax_3" => "", - "tax_category" => "Vergi Bolməsi", - "tax_percent" => "Vergi Faizi", - "tax_percent_number" => "Vergi Faizi rəqəmli dəyər vahidi olmalıdir", - "tax_percent_required" => "Vergi Faizi tələb olunan sahədir.", - "tax_percents" => "Vergi Faiz(lər) i", - "temp" => "Müvəqqəti", - "type" => "Malın Növü", - "unit_price" => "Pərakəndə Satış", - "unit_price_number" => "Vahid qiyməti rəqəmlə olmalıdır.", - "unit_price_required" => "Pərakəndə qiymət - vacib sahədir.", - "upc_database" => "Barkod Məlumat Bazası", - "update" => "Malı Yenilə", - "use_inventory_menu" => "İnvertizasiya Menyusundan İstifadə Et", + "add_minus" => "İnventar + Topla və ya - Çıx.", + "allow_alt_description" => "Alternativ təsvirə icazə verin", + "amount_entry" => "Məbləğ Əlavəsi", + "bulk_edit" => "Kütləvi Redaktə", + "buy_price_required" => "Alış qiyməti tələb olunan sahədir.", + "cannot_be_deleted" => "Seçilmiş Mal (lar) silmək mükün deyil, bir və ya birdən çox Mallarda Satışlar var.", + "cannot_find_item" => "Mal Tapılmadı.", + "categories" => "", + "category" => "Bolmə", + "category_new" => "", + "category_required" => "Bölmə sahəsi boş qala bilməz.", + "change_all_to_allow_alt_desc" => "Hamısı üçün Alternativ Təsvirə İcazə Verin.", + "change_all_to_not_allow_allow_desc" => "Hamısı üçün Alternativ Təsvirə İcazə Verməyin.", + "change_all_to_serialized" => "Hamısını Seriyalaşdırılmışa görə dəyişin", + "change_all_to_unserialized" => "Qeyri Seriyalara görə dəyiş", + "change_image" => "Şəkili Dəyiş", + "confirm_bulk_edit" => "Siz əminsinizmi ki işarələnmiş butun malları redaktə etmək istəyirsiniz?", + "confirm_bulk_edit_wipe_taxes" => "Bütün Məhsul Vergisi məlumatları dəyişdiriləcək.", + "confirm_delete" => "Seçilmiş element(ləri) silmək istədiyinizə əminsiniz?", + "confirm_restore" => "Seçilmiş element (lər) bərpa etmək istədiyinizə əminsinizmi?", + "cost_price" => "Topdan Satış qiyməti", + "cost_price_number" => "Topdansatış qiyməti rəqəm olmalıdır.", + "cost_price_required" => "Topdan satiış - doldurulması vacib sahə.", + "count" => "inventorun yenilənməsi", + "csv_import_failed" => "səhv csv import", + "csv_import_nodata_wrongformat" => "Yüklənmiş faylda məlumat yoxdur və ya düzgün formatlanmır.", + "csv_import_partially_failed" => "Xətlərdə {0} element idxalı uğursuzluq (lar) var: {1}. Heç bir sıra idxal edilmədi.", + "csv_import_success" => "Malların İdxalı Uğurla Həyata Keçdi.", + "current_quantity" => "indiki say", + "default_pack_name" => "Hər biri", + "description" => "təsvir", + "details_count" => "detallı inventor sayı", + "do_nothing" => "heç nə etməmək", + "edit" => "", + "edit_fields_you_want_to_update" => "Seçilmiş məhsullar üçün tələb olunan sahələri redaktə edin.", + "edit_multiple_items" => "bir neçə malın redaktəsi", + "empty_upc_items" => "Boş Barkod Malları", + "error_adding_updating" => "mal əlavə etməkdə və ya yeniləməkdə səhv var", + "error_updating_multiple" => "malların yenilənməsində səhv var", + "generate_barcodes" => "şifrə yarat", + "hsn_code" => "Harmonize Sistem Nomenklaturası", + "image" => "Avatar", + "import_items_csv" => "CSVdən Malları İdxal Et", + "info_provided_by" => "Məlumat təqdim olundu", + "inventory" => "inventor", + "inventory_CSV_import_quantity" => "Miqdarı CSV-dən idxal olunur", + "inventory_comments" => "komentariyalar", + "inventory_data_tracking" => "İnventarlaşdırma Üçün Məlumat İzləmə", + "inventory_date" => "Tarix", + "inventory_employee" => "Əmakdaş", + "inventory_in_out_quantity" => "Daxili və Xarici Say", + "inventory_remarks" => "Qeydlər", + "is_deleted" => "Silindi", + "is_printed" => "", + "is_serialized" => "Malın Seriya Nömrəsi var", + "item" => "Mal", + "item_id" => "", + "item_number" => "Barkod", + "item_number_duplicate" => "Malın Nömrəsi artiq Məlumat bazasında var.", + "kit" => "Dəst", + "location" => "Yer", + "low_inventory_items" => "Bitmış Mallar", + "low_sell_item" => "Malların aşağı qiy. satışı", + "manually_editing_of_quantity" => "Sayı Əl ilə Redeaktə Etmək", + "markup" => "", + "name" => "Malın Adı", + "name_required" => "Malın adı olan sahə boş qala bilməz.", + "new" => "Yeni Mal", + "no_description_items" => "Mallar haqqında Təsvir Yoxdur", + "no_items_to_display" => "Mallar Göstərilmir.", + "none" => "Heçnə", + "none_selected" => "Siz redaktə etmək üçün hər hansı bir mal seçməmisiniz", + "nonstock" => "Əldə Olmayan", + "number_information" => "Malın Nömrəsi", + "number_required" => "Barkod tələb olunan sahədir.", + "one_or_multiple" => "Mal (lar)", + "pack_name" => "Paket Adı", + "qty_per_pack" => "Paketin miqdarı", + "quantity" => "Sayı", + "quantity_number" => "Miqdarı mütləq rəqəmlə olmalıdır.", + "quantity_required" => "Miqyas tələb olunan sahədir.", + "receiving_quantity" => "Qəbul Olunan Miqdar", + "remove_image" => "Şəkili Sil", + "reorder_level" => "Səviyyani yenidən düzəlt", + "reorder_level_number" => "Yenidən sıralama səviyyəsi rəqəmlə olmalıdır.", + "reorder_level_required" => "Düzəliş Səviyyəsi zəruri bir sahədir.", + "retrive_item_info" => "Mal Haqqında Məlumat", + "sales_tax_1" => "Satış Vergisi", + "sales_tax_2" => "Satış Vergisi 2", + "search_attributes" => "Atributları Axtar", + "select_image" => "Şəkil Seç", + "serialized_items" => "Seriyalı Mallar", + "standard" => "Standart", + "stock" => "Ehtiyyat", + "stock_location" => "Ehtiyyatın Yerləşdiyi Yer", + "stock_type" => "Ehtiyyatda olanın Növü", + "successful_adding" => "Siz uğurla malı əlavə etdiniz", + "successful_bulk_edit" => "Siz uğurla bütun mallari yenilədiniz", + "successful_deleted" => "Siz uğurla sildiniz", + "successful_updating" => "Siz uğurla malı yenilədiniz", + "supplier" => "Təchizatcı", + "tax_1" => "Vergi 1", + "tax_2" => "Vergi 2", + "tax_3" => "", + "tax_category" => "Vergi Bolməsi", + "tax_percent" => "Vergi Faizi", + "tax_percent_number" => "Vergi Faizi rəqəmli dəyər vahidi olmalıdir", + "tax_percent_required" => "Vergi Faizi tələb olunan sahədir.", + "tax_percents" => "Vergi Faiz(lər) i", + "temp" => "Müvəqqəti", + "type" => "Malın Növü", + "unit_price" => "Pərakəndə Satış", + "unit_price_number" => "Vahid qiyməti rəqəmlə olmalıdır.", + "unit_price_required" => "Pərakəndə qiymət - vacib sahədir.", + "upc_database" => "Barkod Məlumat Bazası", + "update" => "Malı Yenilə", + "use_inventory_menu" => "İnvertizasiya Menyusundan İstifadə Et", ]; diff --git a/app/Language/az/Login.php b/app/Language/az/Login.php index e49985260..c11973401 100644 --- a/app/Language/az/Login.php +++ b/app/Language/az/Login.php @@ -1,15 +1,15 @@ "Mən robot deyiləm.", - "go" => "daxil ol", - "invalid_gcaptcha" => "Robot olmadığınızı təsdiqləyin.", - "invalid_installation" => "Quraşdırma düzgün deyil, php.ini faylını yoxlayın.", - "invalid_username_and_password" => "Yanlış istifadəçi adı və ya şifrə.", - "login" => "Giriş", - "logout" => "Çıxış", - "migration_needed" => "{0} -ə daxil olandan sonra verilənlər bazası miqrasiyası başlayacaq.", - "password" => "Şifrə", - "required_username" => "", - "username" => "İstifadəçi", - "welcome" => "{0} -ə xoş gəlmisiniz!", + "gcaptcha" => "Mən robot deyiləm.", + "go" => "daxil ol", + "invalid_gcaptcha" => "Robot olmadığınızı təsdiqləyin.", + "invalid_installation" => "Quraşdırma düzgün deyil, php.ini faylını yoxlayın.", + "invalid_username_and_password" => "Yanlış istifadəçi adı və ya şifrə.", + "login" => "Giriş", + "logout" => "Çıxış", + "migration_needed" => "{0} -ə daxil olandan sonra verilənlər bazası miqrasiyası başlayacaq.", + "password" => "Şifrə", + "required_username" => "", + "username" => "İstifadəçi", + "welcome" => "{0} -ə xoş gəlmisiniz!", ]; diff --git a/app/Language/az/Messages.php b/app/Language/az/Messages.php index ad3a41945..db33944f1 100644 --- a/app/Language/az/Messages.php +++ b/app/Language/az/Messages.php @@ -1,15 +1,15 @@ "Adı", - "last_name" => "Soyadı", - "message" => "Mesaj", - "message_placeholder" => "Mesajınız burada...", - "message_required" => "Mesaj tələb olunur", - "multiple_phones" => "(Birdən çox alıcı halında, vergüllə ayrılan mobil nömrələri daxil edin)", - "phone" => "Telefon", - "phone_number_required" => "Telefon nömrəsi tələb olunur", - "phone_placeholder" => "Mobil Nömrə(lər) burada...", - "sms_send" => "SMS Göndər", - "successfully_sent" => "Mesaj uğurla göndərildi: ", - "unsuccessfully_sent" => "Mesaj uğursuz olaraq göndərildi: ", + "first_name" => "Adı", + "last_name" => "Soyadı", + "message" => "Mesaj", + "message_placeholder" => "Mesajınız burada...", + "message_required" => "Mesaj tələb olunur", + "multiple_phones" => "(Birdən çox alıcı halında, vergüllə ayrılan mobil nömrələri daxil edin)", + "phone" => "Telefon", + "phone_number_required" => "Telefon nömrəsi tələb olunur", + "phone_placeholder" => "Mobil Nömrə(lər) burada...", + "sms_send" => "SMS Göndər", + "successfully_sent" => "Mesaj uğurla göndərildi: ", + "unsuccessfully_sent" => "Mesaj uğursuz olaraq göndərildi: ", ]; diff --git a/app/Language/az/Module.php b/app/Language/az/Module.php index 06af3a227..7676a7b6b 100644 --- a/app/Language/az/Module.php +++ b/app/Language/az/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "Atributlar", - "attributes_desc" => "Atributları əlavə et, yenilə, sil və ya axtar.", - "both" => "Hər ikizi", - "cashups" => "Qazanclar", - "cashups_desc" => "Əlavə et, Yenilə, Sil və Qazancları axtar.", - "config" => "Konfiqursiya", - "config_desc" => "ALSAN Konfiqurasiyasını dəyiş.", - "customers" => "Müştərilər", - "customers_desc" => "Əlavə et, Yenilə, Sil və Müştəriləri axtar.", - "employees" => "Əməkdaşlar", - "employees_desc" => "Əlavə et,Yenilə,Sil və Əməkdaşları axtar.", - "expenses" => "Xərclər", - "expenses_categories" => "Xərclər Bölməsi", - "expenses_categories_desc" => "Əlavə et,Yenilə və ya Xərclər bölməsini sil.", - "expenses_desc" => "Əlavə et,Yenilə və ya Xərclər bölməsini axtar.", - "giftcards" => "Hədiyyə kartı", - "giftcards_desc" => "Əlavə et,Yenilə,Sil və ya Hədiyyə kartlarını axtar.", - "home" => "Əsas", - "home_desc" => "Əsas menyu modullarının siyahısı.", - "item_kits" => "Mal Dəstləri", - "item_kits_desc" => "Əlavə et,Yenilə,Sil və ya Mal Dəstini Axtar.", - "items" => "Mallar", - "items_desc" => "Əlavə et,Yenilə,Sil və ya Malları Axtar.", - "messages" => "Mesajlar", - "messages_desc" => "Müştərilərə, Təchizatçılara və İşçilərə Mesaj göndərin.", - "migrate" => "Köçür", - "migrate_desc" => "ALSAN Məlumat Bazasıni Yenilə.", - "office" => "Ofis", - "office_desc" => "Ofis menyusu siyahısı modulları.", - "receivings" => "Qəbul Edilənlər", - "receivings_desc" => "Satınalma sifarişləri işləyin.", - "reports" => "Hesabatlar", - "reports_desc" => "Hesabatları Yarat və Göstər.", - "sales" => "Satışlar", - "sales_desc" => "Satış prosesləri və Qaytarılanlar.", - "suppliers" => "Təchizatçılar", - "suppliers_desc" => "Əlavə et, Yenilə, Sil və Təchizatçıları Axtar.", - "taxes" => "Vergi", - "taxes_desc" => "Satış üçün Vergiləri Ayarla.", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "Atributlar", + "attributes_desc" => "Atributları əlavə et, yenilə, sil və ya axtar.", + "both" => "Hər ikizi", + "cashups" => "Qazanclar", + "cashups_desc" => "Əlavə et, Yenilə, Sil və Qazancları axtar.", + "config" => "Konfiqursiya", + "config_desc" => "ALSAN Konfiqurasiyasını dəyiş.", + "customers" => "Müştərilər", + "customers_desc" => "Əlavə et, Yenilə, Sil və Müştəriləri axtar.", + "employees" => "Əməkdaşlar", + "employees_desc" => "Əlavə et,Yenilə,Sil və Əməkdaşları axtar.", + "expenses" => "Xərclər", + "expenses_categories" => "Xərclər Bölməsi", + "expenses_categories_desc" => "Əlavə et,Yenilə və ya Xərclər bölməsini sil.", + "expenses_desc" => "Əlavə et,Yenilə və ya Xərclər bölməsini axtar.", + "giftcards" => "Hədiyyə kartı", + "giftcards_desc" => "Əlavə et,Yenilə,Sil və ya Hədiyyə kartlarını axtar.", + "home" => "Əsas", + "home_desc" => "Əsas menyu modullarının siyahısı.", + "item_kits" => "Mal Dəstləri", + "item_kits_desc" => "Əlavə et,Yenilə,Sil və ya Mal Dəstini Axtar.", + "items" => "Mallar", + "items_desc" => "Əlavə et,Yenilə,Sil və ya Malları Axtar.", + "messages" => "Mesajlar", + "messages_desc" => "Müştərilərə, Təchizatçılara və İşçilərə Mesaj göndərin.", + "migrate" => "Köçür", + "migrate_desc" => "ALSAN Məlumat Bazasıni Yenilə.", + "office" => "Ofis", + "office_desc" => "Ofis menyusu siyahısı modulları.", + "receivings" => "Qəbul Edilənlər", + "receivings_desc" => "Satınalma sifarişləri işləyin.", + "reports" => "Hesabatlar", + "reports_desc" => "Hesabatları Yarat və Göstər.", + "sales" => "Satışlar", + "sales_desc" => "Satış prosesləri və Qaytarılanlar.", + "suppliers" => "Təchizatçılar", + "suppliers_desc" => "Əlavə et, Yenilə, Sil və Təchizatçıları Axtar.", + "taxes" => "Vergi", + "taxes_desc" => "Satış üçün Vergiləri Ayarla.", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/az/Receivings.php b/app/Language/az/Receivings.php index 829ad0c51..a0d4d6c88 100644 --- a/app/Language/az/Receivings.php +++ b/app/Language/az/Receivings.php @@ -1,58 +1,58 @@ "", - "cancel_receiving" => "İmtina", - "cannot_be_deleted" => "Qəbul olunanlar silinmədi.", - "comments" => "Rəylər", - "complete_receiving" => "Bitirmək", - "confirm_cancel_receiving" => "Siz əminsinizmi bu qəbul olunanları silməyinizə? Bütün mallar təmizlənəcək.", - "confirm_delete" => "Bu qəbuldan silmək istədiyinizə əminsiniz? Bu hərəkət geri qaytarıla bilməz.", - "confirm_finish_receiving" => "Bu qəbulu təqdim etmək istədiyinizə əminsiniz? Bunu geri qaytarmaq mümkün deyil.", - "confirm_restore" => "", - "cost" => "Xərc", - "daily" => "", - "date" => "Qəbul olunma tarixi", - "date_required" => "Düzgün bir tarix daxil olunmalıdır.", - "date_type" => "Tarixi tələb olunan bir sahədir.", - "delete_entire_sale" => "red. etmək", - "discount" => "Endirim %", - "edit" => "Redaktə Et", - "edit_sale" => "malın redaktəsi səhvdir", - "employee" => "Əməkdaş", - "error_editing_item" => "Mal redaktə edilmədi.", - "error_requisition" => "İnventarın yerdəyişməsi və ya yerinə qoyulması mümkün olmadı.", - "find_or_scan_item" => "Məhsulu tap və ya skan et", - "find_or_scan_item_or_receipt" => "malın adı", - "id" => "alınma rejimi", - "item_name" => "yeni tədarükçü", - "mode" => "Qəbul Rejimi", - "new_supplier" => "Yeni Təchizatçı", - "one_or_multiple" => "qəbul (lar)", - "print_after_sale" => "alış haqqında kvitansiya", - "quantity" => "Sayı", - "receipt" => "alış", - "receipt_number" => "Qəbul №", - "receiving" => "tədarükçünün adını yazmağa başlayın", - "reference" => "Arayış", - "register" => "Qəbul Olunan Mallar", - "requisition" => "Rəsmi Tələb", - "return" => "Qaytar", - "select_supplier" => "Təchizatçını Seç", - "ship_pack" => "Paket cəmi", - "start_typing_supplier_name" => "Təchizatçıın adını yazmağa başlayın ...", - "stock" => "Ehtiyyat", - "stock_destination" => "Ehtiyyatın Hədəfi", - "stock_locaiton" => "Ehtiyyatın Yeri", - "stock_source" => "Ehtiyyatın Mənbəyi", - "successfully_deleted" => "cəmi", - "successfully_updated" => "alışda sehv var", - "supplier" => "mal əlavə etmək mümkün deyil", - "supplier_address" => "Ünvan", - "supplier_email" => "Elektron Ünvanı", - "supplier_location" => "Yer", - "total" => "Cəm", - "transaction_failed" => "Alınan əməliyyatlar uğursuz oldu.", - "unable_to_add_item" => "Qəbul etmək üçün əlavə addım uğursuz oldu.", - "unsuccessfully_updated" => "Yeniləmə alınmadı.", - "update" => "Yenilə", + "amount_due" => "", + "cancel_receiving" => "İmtina", + "cannot_be_deleted" => "Qəbul olunanlar silinmədi.", + "comments" => "Rəylər", + "complete_receiving" => "Bitirmək", + "confirm_cancel_receiving" => "Siz əminsinizmi bu qəbul olunanları silməyinizə? Bütün mallar təmizlənəcək.", + "confirm_delete" => "Bu qəbuldan silmək istədiyinizə əminsiniz? Bu hərəkət geri qaytarıla bilməz.", + "confirm_finish_receiving" => "Bu qəbulu təqdim etmək istədiyinizə əminsiniz? Bunu geri qaytarmaq mümkün deyil.", + "confirm_restore" => "", + "cost" => "Xərc", + "daily" => "", + "date" => "Qəbul olunma tarixi", + "date_required" => "Düzgün bir tarix daxil olunmalıdır.", + "date_type" => "Tarixi tələb olunan bir sahədir.", + "delete_entire_sale" => "red. etmək", + "discount" => "Endirim %", + "edit" => "Redaktə Et", + "edit_sale" => "malın redaktəsi səhvdir", + "employee" => "Əməkdaş", + "error_editing_item" => "Mal redaktə edilmədi.", + "error_requisition" => "İnventarın yerdəyişməsi və ya yerinə qoyulması mümkün olmadı.", + "find_or_scan_item" => "Məhsulu tap və ya skan et", + "find_or_scan_item_or_receipt" => "malın adı", + "id" => "alınma rejimi", + "item_name" => "yeni tədarükçü", + "mode" => "Qəbul Rejimi", + "new_supplier" => "Yeni Təchizatçı", + "one_or_multiple" => "qəbul (lar)", + "print_after_sale" => "alış haqqında kvitansiya", + "quantity" => "Sayı", + "receipt" => "alış", + "receipt_number" => "Qəbul №", + "receiving" => "tədarükçünün adını yazmağa başlayın", + "reference" => "Arayış", + "register" => "Qəbul Olunan Mallar", + "requisition" => "Rəsmi Tələb", + "return" => "Qaytar", + "select_supplier" => "Təchizatçını Seç", + "ship_pack" => "Paket cəmi", + "start_typing_supplier_name" => "Təchizatçıın adını yazmağa başlayın ...", + "stock" => "Ehtiyyat", + "stock_destination" => "Ehtiyyatın Hədəfi", + "stock_locaiton" => "Ehtiyyatın Yeri", + "stock_source" => "Ehtiyyatın Mənbəyi", + "successfully_deleted" => "cəmi", + "successfully_updated" => "alışda sehv var", + "supplier" => "mal əlavə etmək mümkün deyil", + "supplier_address" => "Ünvan", + "supplier_email" => "Elektron Ünvanı", + "supplier_location" => "Yer", + "total" => "Cəm", + "transaction_failed" => "Alınan əməliyyatlar uğursuz oldu.", + "unable_to_add_item" => "Qəbul etmək üçün əlavə addım uğursuz oldu.", + "unsuccessfully_updated" => "Yeniləmə alınmadı.", + "update" => "Yenilə", ]; diff --git a/app/Language/az/Sales.php b/app/Language/az/Sales.php index 67596436d..b671fcffa 100644 --- a/app/Language/az/Sales.php +++ b/app/Language/az/Sales.php @@ -1,224 +1,224 @@ "Mövcud ballar", - "rewards_package" => "Mükafatlar", - "rewards_remaining_balance" => "Mükafatın yerdə qalan bal dəyəri ", - "account_number" => "Hesab #", - "add_payment" => "Ödəniş Əlavə Etmək", - "amount_due" => "Qalıq", - "amount_tendered" => "Ödənilən məbləğ", - "authorized_signature" => "Səlahiyyətli İmza", - "cancel_sale" => "İmtina", - "cash" => "Nəğd pullar", - "cash_1" => "", - "cash_2" => "", - "cash_3" => "", - "cash_4" => "", - "cash_adjustment" => "Nağd pulun tənzimlənməsi", - "cash_deposit" => "Nağd depozit", - "cash_filter" => "Nəğd Pul", - "change_due" => "Qalıq", - "change_price" => "Satış qiymətini dəyiş", - "check" => "Çek", - "check_balance" => "Çek Xatırladan", - "check_filter" => "Çek", - "close" => "", - "comment" => "Şərh", - "comments" => "Şərhlər", - "company_name" => "", - "complete" => "", - "complete_sale" => "Tamamlayın", - "confirm_cancel_sale" => "Siz əminsiniz ki,satışı ləğv etmək istəyirsiniz? Bütün detallar silinəcək.", - "confirm_delete" => "Siz əminsiniz ki seçilmiş satışı (lar) silmək istəyirsiz?", - "confirm_restore" => "Seçilmiş Satışları bərpa etmək istədiyinizə əminsinizmi?", - "credit" => "Kredit kartı", - "credit_deposit" => "Kredit Depoziti", - "credit_filter" => "Kredit kartı", - "current_table" => "", - "customer" => "Ad", - "customer_address" => "Ünvan", - "customer_discount" => "Endirim", - "customer_email" => "E-poçt", - "customer_location" => "Yer", - "customer_mailchimp_status" => "Mailchimp Statusu", - "customer_optional" => "(Ödənişlərdə tələb olunur)", - "customer_required" => "(Vacib)", - "customer_total" => "Cəmi", - "customer_total_spent" => "", - "daily_sales" => "", - "date" => "Satış Tarixi", - "date_range" => "Tarix Aralığı", - "date_required" => "Düzgün tarix daxil edilməlidir.", - "date_type" => "Boşluğa tarix əlavə edilməlidir.", - "debit" => "Debit kart", - "debit_filter" => "", - "delete" => "Silməyə izin ver", - "delete_confirmation" => "Siz bu satışı silmək istəyinizə əminsiniz? Bu əməlliyat bərpa edilməyəcək.", - "delete_entire_sale" => "Bütün Satışı Silmək", - "delete_successful" => "Siz uğurla satışı sildiniz.", - "delete_unsuccessful" => "Satışın silinməsi uğursuz oldu.", - "description_abbrv" => "Təsvir.", - "discard" => "İmtina", - "discard_quote" => "", - "discount" => "Disk", - "discount_included" => "% Endirim", - "discount_short" => "%", - "due" => "Görə", - "due_filter" => "Görə", - "edit" => "Redaktə", - "edit_item" => "Malın Redaktəsi", - "edit_sale" => "Satışın Redaktəsi", - "email_receipt" => "E-poçt Qəbz", - "employee" => "Əməkdaş", - "entry" => "Daxil", - "error_editing_item" => "XƏTA Malın redaktəsində", - "find_or_scan_item" => "Malın axtarışı", - "find_or_scan_item_or_receipt" => "Tapmaq skan etmək və ya kvitansiya", - "giftcard" => "Hədiyyə Kartı", - "giftcard_balance" => "Hədiyyə Kartı Balansı", - "giftcard_filter" => "", - "giftcard_number" => "Hədiyyə kartının nömrəsi", - "group_by_category" => "Bölməyə görə grup", - "group_by_type" => "Növə görə qrup", - "hsn" => "HSN", - "id" => "Satış İD", - "include_prices" => "Qiymətlər daxildir?", - "invoice" => "Qaimə", - "invoice_confirm" => "Bu qaimə göndəriləcək", - "invoice_enable" => "Qaimə Yarat", - "invoice_filter" => "Qaimələr", - "invoice_no_email" => "Bu müştərinin elektron ünvanı düzgün deyil.", - "invoice_number" => "Qaimə #", - "invoice_number_duplicate" => "Qaimə nömrəsi unikal olmalıdır.", - "invoice_sent" => "Qaimə göndərildi", - "invoice_total" => "Qaimə Çəmi", - "invoice_type_custom_invoice" => "Fərqli Qaimə (custom_invoice.php)", - "invoice_type_custom_tax_invoice" => "Fərqli Vergi Qaiməsi (custom_tax_invoice.php)", - "invoice_type_invoice" => "Qaimə (invoice.php)", - "invoice_type_tax_invoice" => "Vergi Qaiməsi (tax_invoice.php)", - "invoice_unsent" => "Qaimə göndərilə bilmədi", - "invoice_update" => "Yeniden say", - "item_insufficient_of_stock" => "Anbarda kifayət qədər mal yoxdur.", - "item_name" => "Malın adı", - "item_number" => "Mal #", - "item_out_of_stock" => "Mal satılıb.", - "key_browser" => "Faydalı Qısayollar", - "key_cancel" => "Cari Kotirovka/Fatura/Satışı ləğv edir", - "key_customer_search" => "Müştəri Axtarışı", - "key_finish_quote" => "Ödəniş etmədən Kotirovka/Faturanı tamamlayın", - "key_finish_sale" => "Ödəniş əlavə edib, faktura/satışı tamamlayın", - "key_full" => "Tam Ekran rejimində açın", - "key_function" => "Function", - "key_help" => "Qısa yollar", - "key_help_modal" => "Qısa yollar pəncərəsini açın", - "key_in" => "Yaxınlaşdır", - "key_item_search" => "Element Axtarışı", - "key_out" => "Uzaqlaşdır", - "key_payment" => "Ödəniş əlavə et", - "key_print" => "Cari səhifəni çap et", - "key_restore" => "Orjinal ekran ölçüsünə qayıt", - "key_search" => "Axtarışın hesabat cədvəlləri", - "key_suspend" => "Cari satışı dayandırın", - "key_suspended" => "Dayandırılmış Satışları göstər", - "key_system" => "Sistem Qısayolları", - "key_tendered" => "Təklif olunan məbləği dəyişdirin", - "key_title" => "Satış üçün klaviatura qısa yolları", - "mc" => "", - "mode" => "Qeydiyyat Rejimi", - "must_enter_numeric" => "Ödəniş məbləği rəqəm ilə olmalıdır.", - "must_enter_numeric_giftcard" => "Hədiyyə Kartın nömrəsi rəqəmlə olmalıdır.", - "new_customer" => "Yeni Müştəri", - "new_item" => "Yeni Mal", - "no_description" => "Heç Biri", - "no_filter" => "Hamısı", - "no_items_in_cart" => "Səbətdə heç bir mal yoxdur.", - "no_sales_to_display" => "Satış yoxdur.", - "none_selected" => "Silmək üçün hər hansı bir Satış (lar) seçmədiniz.", - "nontaxed_ind" => " . ", - "not_authorized" => "Bu hərəkət səlahiyyətli deyil.", - "one_or_multiple" => "Satış (lar)", - "payment" => "Ödəniş Növü", - "payment_amount" => "Məbləğ", - "payment_not_cover_total" => "Ödəmə məbləği Toplamdan çox və ya bərabər olmalıdır.", - "payment_type" => "Növ", - "payments" => "", - "payments_total" => "Cəmi Ödənilənlər", - "price" => "Qiymət", - "print_after_sale" => "Satışdan sonra Çap edin", - "quantity" => "Miqdarı", - "quantity_less_than_reorder_level" => "Diqqət: İstədiyinizin Miqdarı bu Öhdəlik üçün Yenidən Səviyyə səviyyəsindən aşağıdadır.", - "quantity_less_than_zero" => "Xəbərdarlıq: İstədiyiniz miqdar kifayət deyil. Siz hələ də satışı edə bilərsiniz, lakin malın sayını yoxlayın.", - "quantity_of_items" => "{0} Məhsulların miqdarı", - "quote" => "Qiymət ver", - "quote_number" => "Sitat Nömrəsi", - "quote_number_duplicate" => "Sitatın nömrəsi unikal olmalıdır.", - "quote_sent" => "Sitat göndərildi", - "quote_unsent" => "Sitat göndırilə bilmədi", - "receipt" => "malın çeki", - "receipt_no_email" => "Bu müştərinin etibarlı bir e-poçt ünvanı yoxdur.", - "receipt_number" => "Satış №", - "receipt_sent" => "Çek Göndərildi", - "receipt_unsent" => "Çek göndərilə Bilmədi", - "refund" => "Qaytarılma növü", - "register" => "jurnal satışı", - "remove_customer" => "müştəriləri silmək", - "remove_discount" => "", - "return" => "qaytarmaq", - "rewards" => "Mükafat Balları", - "rewards_balance" => "Mükafat Balları Balansı", - "sale" => "satış", - "sale_by_invoice" => "Faktura ilə Satış", - "sale_for_customer" => "Müştəri:", - "sale_time" => "Vaxt", - "sales_tax" => "Satış Vergisi", - "sales_total" => "", - "select_customer" => "Müştəri seçmək", - "send_invoice" => "Faktura Göndər", - "send_quote" => "Sitat Göndər", - "send_receipt" => "Çek Göndər", - "send_work_order" => "İş Sifarişini Göndərin", - "serial" => "seriya nömrəsi", - "service_charge" => "", - "show_due" => "", - "show_invoice" => "Fakturanı Göstər", - "show_receipt" => "Çek Göstər", - "start_typing_customer_name" => "müştəri adını çap etməyə başlayın...", - "start_typing_item_name" => "Malın adın başlayın çap etməyə yada skan edin şifrəni...", - "stock" => "Anbar", - "stock_location" => "Ehtiyyatın Yeri", - "sub_total" => "yekun", - "successfully_deleted" => "satış", - "successfully_restored" => "Siz uğurla bərpa etdimiz", - "successfully_suspended_sale" => "Sizin satışınız uğurla dayandırıldı.", - "successfully_updated" => "Satış uğurla yeniləndi.", - "suspend_sale" => "Dayandırmaq", - "suspended_doc_id" => "Sənəd", - "suspended_sale_id" => "Satış dayandırıldı İD", - "suspended_sales" => "satış dayandırıldı", - "table" => "Masa", - "takings" => "Gündəlik Satışlar", - "tax" => "vergi", - "tax_id" => "Vergi İD", - "tax_invoice" => "Vergi Qaimə", - "tax_percent" => "vergi %", - "taxed_ind" => "T", - "total" => "cəm", - "total_tax_exclusive" => "Vergi Xaric", - "transaction_failed" => "Satış əməliyyatı uğursuz oldu.", - "unable_to_add_item" => "Satışa əlavə edilən məhsul uğursuz oldu", - "unsuccessfully_deleted" => "Satış (lar) silmək uğursuz oldu.", - "unsuccessfully_restored" => "Satış (lar) bərpa olunmadı.", - "unsuccessfully_suspended_sale" => "Satış dayandırıla bilmədi.", - "unsuccessfully_updated" => "Satış yeniləməsi uğursuz oldu.", - "unsuspend" => "blok etmək", - "unsuspend_and_delete" => "blok etmək və silmək", - "update" => "Yenilə", - "upi" => "UPI", - "visa" => "", - "wholesale" => "", - "work_order" => "İş Sifarişi", - "work_order_number" => "Sifariş nömrəsi", - "work_order_number_duplicate" => "İş sifarişinin nömrəsi unikal olmalıdır.", - "work_order_sent" => "İş sifarişi göndərildi", - "work_order_unsent" => "İş Sifarişi göndərilməmişdi", + "customers_available_points" => "Mövcud ballar", + "rewards_package" => "Mükafatlar", + "rewards_remaining_balance" => "Mükafatın yerdə qalan bal dəyəri ", + "account_number" => "Hesab #", + "add_payment" => "Ödəniş Əlavə Etmək", + "amount_due" => "Qalıq", + "amount_tendered" => "Ödənilən məbləğ", + "authorized_signature" => "Səlahiyyətli İmza", + "cancel_sale" => "İmtina", + "cash" => "Nəğd pullar", + "cash_1" => "", + "cash_2" => "", + "cash_3" => "", + "cash_4" => "", + "cash_adjustment" => "Nağd pulun tənzimlənməsi", + "cash_deposit" => "Nağd depozit", + "cash_filter" => "Nəğd Pul", + "change_due" => "Qalıq", + "change_price" => "Satış qiymətini dəyiş", + "check" => "Çek", + "check_balance" => "Çek Xatırladan", + "check_filter" => "Çek", + "close" => "", + "comment" => "Şərh", + "comments" => "Şərhlər", + "company_name" => "", + "complete" => "", + "complete_sale" => "Tamamlayın", + "confirm_cancel_sale" => "Siz əminsiniz ki,satışı ləğv etmək istəyirsiniz? Bütün detallar silinəcək.", + "confirm_delete" => "Siz əminsiniz ki seçilmiş satışı (lar) silmək istəyirsiz?", + "confirm_restore" => "Seçilmiş Satışları bərpa etmək istədiyinizə əminsinizmi?", + "credit" => "Kredit kartı", + "credit_deposit" => "Kredit Depoziti", + "credit_filter" => "Kredit kartı", + "current_table" => "", + "customer" => "Ad", + "customer_address" => "Ünvan", + "customer_discount" => "Endirim", + "customer_email" => "E-poçt", + "customer_location" => "Yer", + "customer_mailchimp_status" => "Mailchimp Statusu", + "customer_optional" => "(Ödənişlərdə tələb olunur)", + "customer_required" => "(Vacib)", + "customer_total" => "Cəmi", + "customer_total_spent" => "", + "daily_sales" => "", + "date" => "Satış Tarixi", + "date_range" => "Tarix Aralığı", + "date_required" => "Düzgün tarix daxil edilməlidir.", + "date_type" => "Boşluğa tarix əlavə edilməlidir.", + "debit" => "Debit kart", + "debit_filter" => "", + "delete" => "Silməyə izin ver", + "delete_confirmation" => "Siz bu satışı silmək istəyinizə əminsiniz? Bu əməlliyat bərpa edilməyəcək.", + "delete_entire_sale" => "Bütün Satışı Silmək", + "delete_successful" => "Siz uğurla satışı sildiniz.", + "delete_unsuccessful" => "Satışın silinməsi uğursuz oldu.", + "description_abbrv" => "Təsvir.", + "discard" => "İmtina", + "discard_quote" => "", + "discount" => "Disk", + "discount_included" => "% Endirim", + "discount_short" => "%", + "due" => "Görə", + "due_filter" => "Görə", + "edit" => "Redaktə", + "edit_item" => "Malın Redaktəsi", + "edit_sale" => "Satışın Redaktəsi", + "email_receipt" => "E-poçt Qəbz", + "employee" => "Əməkdaş", + "entry" => "Daxil", + "error_editing_item" => "XƏTA Malın redaktəsində", + "find_or_scan_item" => "Malın axtarışı", + "find_or_scan_item_or_receipt" => "Tapmaq skan etmək və ya kvitansiya", + "giftcard" => "Hədiyyə Kartı", + "giftcard_balance" => "Hədiyyə Kartı Balansı", + "giftcard_filter" => "", + "giftcard_number" => "Hədiyyə kartının nömrəsi", + "group_by_category" => "Bölməyə görə grup", + "group_by_type" => "Növə görə qrup", + "hsn" => "HSN", + "id" => "Satış İD", + "include_prices" => "Qiymətlər daxildir?", + "invoice" => "Qaimə", + "invoice_confirm" => "Bu qaimə göndəriləcək", + "invoice_enable" => "Qaimə Yarat", + "invoice_filter" => "Qaimələr", + "invoice_no_email" => "Bu müştərinin elektron ünvanı düzgün deyil.", + "invoice_number" => "Qaimə #", + "invoice_number_duplicate" => "Qaimə nömrəsi unikal olmalıdır.", + "invoice_sent" => "Qaimə göndərildi", + "invoice_total" => "Qaimə Çəmi", + "invoice_type_custom_invoice" => "Fərqli Qaimə (custom_invoice.php)", + "invoice_type_custom_tax_invoice" => "Fərqli Vergi Qaiməsi (custom_tax_invoice.php)", + "invoice_type_invoice" => "Qaimə (invoice.php)", + "invoice_type_tax_invoice" => "Vergi Qaiməsi (tax_invoice.php)", + "invoice_unsent" => "Qaimə göndərilə bilmədi", + "invoice_update" => "Yeniden say", + "item_insufficient_of_stock" => "Anbarda kifayət qədər mal yoxdur.", + "item_name" => "Malın adı", + "item_number" => "Mal #", + "item_out_of_stock" => "Mal satılıb.", + "key_browser" => "Faydalı Qısayollar", + "key_cancel" => "Cari Kotirovka/Fatura/Satışı ləğv edir", + "key_customer_search" => "Müştəri Axtarışı", + "key_finish_quote" => "Ödəniş etmədən Kotirovka/Faturanı tamamlayın", + "key_finish_sale" => "Ödəniş əlavə edib, faktura/satışı tamamlayın", + "key_full" => "Tam Ekran rejimində açın", + "key_function" => "Function", + "key_help" => "Qısa yollar", + "key_help_modal" => "Qısa yollar pəncərəsini açın", + "key_in" => "Yaxınlaşdır", + "key_item_search" => "Element Axtarışı", + "key_out" => "Uzaqlaşdır", + "key_payment" => "Ödəniş əlavə et", + "key_print" => "Cari səhifəni çap et", + "key_restore" => "Orjinal ekran ölçüsünə qayıt", + "key_search" => "Axtarışın hesabat cədvəlləri", + "key_suspend" => "Cari satışı dayandırın", + "key_suspended" => "Dayandırılmış Satışları göstər", + "key_system" => "Sistem Qısayolları", + "key_tendered" => "Təklif olunan məbləği dəyişdirin", + "key_title" => "Satış üçün klaviatura qısa yolları", + "mc" => "", + "mode" => "Qeydiyyat Rejimi", + "must_enter_numeric" => "Ödəniş məbləği rəqəm ilə olmalıdır.", + "must_enter_numeric_giftcard" => "Hədiyyə Kartın nömrəsi rəqəmlə olmalıdır.", + "new_customer" => "Yeni Müştəri", + "new_item" => "Yeni Mal", + "no_description" => "Heç Biri", + "no_filter" => "Hamısı", + "no_items_in_cart" => "Səbətdə heç bir mal yoxdur.", + "no_sales_to_display" => "Satış yoxdur.", + "none_selected" => "Silmək üçün hər hansı bir Satış (lar) seçmədiniz.", + "nontaxed_ind" => " . ", + "not_authorized" => "Bu hərəkət səlahiyyətli deyil.", + "one_or_multiple" => "Satış (lar)", + "payment" => "Ödəniş Növü", + "payment_amount" => "Məbləğ", + "payment_not_cover_total" => "Ödəmə məbləği Toplamdan çox və ya bərabər olmalıdır.", + "payment_type" => "Növ", + "payments" => "", + "payments_total" => "Cəmi Ödənilənlər", + "price" => "Qiymət", + "print_after_sale" => "Satışdan sonra Çap edin", + "quantity" => "Miqdarı", + "quantity_less_than_reorder_level" => "Diqqət: İstədiyinizin Miqdarı bu Öhdəlik üçün Yenidən Səviyyə səviyyəsindən aşağıdadır.", + "quantity_less_than_zero" => "Xəbərdarlıq: İstədiyiniz miqdar kifayət deyil. Siz hələ də satışı edə bilərsiniz, lakin malın sayını yoxlayın.", + "quantity_of_items" => "{0} Məhsulların miqdarı", + "quote" => "Qiymət ver", + "quote_number" => "Sitat Nömrəsi", + "quote_number_duplicate" => "Sitatın nömrəsi unikal olmalıdır.", + "quote_sent" => "Sitat göndərildi", + "quote_unsent" => "Sitat göndırilə bilmədi", + "receipt" => "malın çeki", + "receipt_no_email" => "Bu müştərinin etibarlı bir e-poçt ünvanı yoxdur.", + "receipt_number" => "Satış №", + "receipt_sent" => "Çek Göndərildi", + "receipt_unsent" => "Çek göndərilə Bilmədi", + "refund" => "Qaytarılma növü", + "register" => "jurnal satışı", + "remove_customer" => "müştəriləri silmək", + "remove_discount" => "", + "return" => "qaytarmaq", + "rewards" => "Mükafat Balları", + "rewards_balance" => "Mükafat Balları Balansı", + "sale" => "satış", + "sale_by_invoice" => "Faktura ilə Satış", + "sale_for_customer" => "Müştəri:", + "sale_time" => "Vaxt", + "sales_tax" => "Satış Vergisi", + "sales_total" => "", + "select_customer" => "Müştəri seçmək", + "send_invoice" => "Faktura Göndər", + "send_quote" => "Sitat Göndər", + "send_receipt" => "Çek Göndər", + "send_work_order" => "İş Sifarişini Göndərin", + "serial" => "seriya nömrəsi", + "service_charge" => "", + "show_due" => "", + "show_invoice" => "Fakturanı Göstər", + "show_receipt" => "Çek Göstər", + "start_typing_customer_name" => "müştəri adını çap etməyə başlayın...", + "start_typing_item_name" => "Malın adın başlayın çap etməyə yada skan edin şifrəni...", + "stock" => "Anbar", + "stock_location" => "Ehtiyyatın Yeri", + "sub_total" => "yekun", + "successfully_deleted" => "satış", + "successfully_restored" => "Siz uğurla bərpa etdimiz", + "successfully_suspended_sale" => "Sizin satışınız uğurla dayandırıldı.", + "successfully_updated" => "Satış uğurla yeniləndi.", + "suspend_sale" => "Dayandırmaq", + "suspended_doc_id" => "Sənəd", + "suspended_sale_id" => "Satış dayandırıldı İD", + "suspended_sales" => "satış dayandırıldı", + "table" => "Masa", + "takings" => "Gündəlik Satışlar", + "tax" => "vergi", + "tax_id" => "Vergi İD", + "tax_invoice" => "Vergi Qaimə", + "tax_percent" => "vergi %", + "taxed_ind" => "T", + "total" => "cəm", + "total_tax_exclusive" => "Vergi Xaric", + "transaction_failed" => "Satış əməliyyatı uğursuz oldu.", + "unable_to_add_item" => "Satışa əlavə edilən məhsul uğursuz oldu", + "unsuccessfully_deleted" => "Satış (lar) silmək uğursuz oldu.", + "unsuccessfully_restored" => "Satış (lar) bərpa olunmadı.", + "unsuccessfully_suspended_sale" => "Satış dayandırıla bilmədi.", + "unsuccessfully_updated" => "Satış yeniləməsi uğursuz oldu.", + "unsuspend" => "blok etmək", + "unsuspend_and_delete" => "blok etmək və silmək", + "update" => "Yenilə", + "upi" => "UPI", + "visa" => "", + "wholesale" => "", + "work_order" => "İş Sifarişi", + "work_order_number" => "Sifariş nömrəsi", + "work_order_number_duplicate" => "İş sifarişinin nömrəsi unikal olmalıdır.", + "work_order_sent" => "İş sifarişi göndərildi", + "work_order_unsent" => "İş Sifarişi göndərilməmişdi", ]; diff --git a/app/Language/az/Suppliers.php b/app/Language/az/Suppliers.php index 4b4d3c95d..c6c4b87a8 100644 --- a/app/Language/az/Suppliers.php +++ b/app/Language/az/Suppliers.php @@ -1,24 +1,24 @@ "Hesab №", - "agency_name" => "Agentliyin Adı", - "cannot_be_deleted" => "Seçilmiş Təchizatçı (lar) silinə bilmədi. Bir və ya birdən çox satışlar var.", - "category" => "Bölmə", - "company_name" => "Firma Adı", - "company_name_required" => "Şirkətin Adı - yazılması vacib sahə.", - "confirm_delete" => "Siz əminsiniz ki seçilmiş təchizatçı (lar) ı silmək istəyirsiniz?", - "confirm_restore" => "Seçilmiş təchizatçı (lar) bərpa etmək istədiyinizə əminsinizmi?", - "cost" => "Maliyə Təchizatçı", - "error_adding_updating" => "Təchizatçı əlavə et / yenilə XƏTA.", - "goods" => "Məhsullar Təchizatçı", - "new" => "Yeni Təchizatçı", - "none_selected" => "Siz silmək üçün heç bir təchizatçı seçmədiniz.", - "one_or_multiple" => "Təchizatçı (lar)", - "successful_adding" => "Siz Təchizatçını uğurla əlavə etdiniz", - "successful_deleted" => "Siz uğurla sildiniz", - "successful_updating" => "Siz uğurla Təchizatçını yenilədiniz", - "supplier" => "Təchizatçı", - "supplier_id" => "Kimlik", - "tax_id" => "Vergi İD", - "update" => "Təchizatçı Yenilənməsi", + "account_number" => "Hesab №", + "agency_name" => "Agentliyin Adı", + "cannot_be_deleted" => "Seçilmiş Təchizatçı (lar) silinə bilmədi. Bir və ya birdən çox satışlar var.", + "category" => "Bölmə", + "company_name" => "Firma Adı", + "company_name_required" => "Şirkətin Adı - yazılması vacib sahə.", + "confirm_delete" => "Siz əminsiniz ki seçilmiş təchizatçı (lar) ı silmək istəyirsiniz?", + "confirm_restore" => "Seçilmiş təchizatçı (lar) bərpa etmək istədiyinizə əminsinizmi?", + "cost" => "Maliyə Təchizatçı", + "error_adding_updating" => "Təchizatçı əlavə et / yenilə XƏTA.", + "goods" => "Məhsullar Təchizatçı", + "new" => "Yeni Təchizatçı", + "none_selected" => "Siz silmək üçün heç bir təchizatçı seçmədiniz.", + "one_or_multiple" => "Təchizatçı (lar)", + "successful_adding" => "Siz Təchizatçını uğurla əlavə etdiniz", + "successful_deleted" => "Siz uğurla sildiniz", + "successful_updating" => "Siz uğurla Təchizatçını yenilədiniz", + "supplier" => "Təchizatçı", + "supplier_id" => "Kimlik", + "tax_id" => "Vergi İD", + "update" => "Təchizatçı Yenilənməsi", ]; diff --git a/app/Language/az/Taxes.php b/app/Language/az/Taxes.php index f3d674b5f..b9aa1c20d 100644 --- a/app/Language/az/Taxes.php +++ b/app/Language/az/Taxes.php @@ -1,82 +1,82 @@ "İstisna Əlavə Et", - "cascade" => "Çağlayan", - "cascade_sequence" => "Çağlayan sırası", - "city" => "Şəhər", - "code" => "Kod", - "confirm_delete" => "Vergi Məcəlləsini silmək istədiyinizə əminsinizmi? Bu hərəkət geri qaytarıla bilməz", - "confirm_restore" => "Seçilmiş Vergi Məcəlləsini (lər) bərpa etmək istədiyinizə əminsinizmi?", - "default_tax_category" => "Cari Vergi Kategoriyası", - "default_tax_rate" => "Sabit Vergi dərəcəsi", - "error_adding_updating" => "Vergi kodu Əlavə ya yeniləmə uğursuzdur", - "group_seq" => "Qrup seq", - "jurisdiction_name" => "Yurisdiksiya Adı", - "name" => "Ad", - "new" => "Yeni Vergi", - "no_taxes" => "", - "no_taxes_to_display" => "Göstərməyə Vergi Kodu yoxdur", - "reporting_authority" => "Hesabat orqanı", - "round_half_down" => "Yarı Aşağı", - "round_half_even" => "Cüt Rəqəm", - "round_half_odd" => "Tək Rəqəm", - "round_half_up" => "Yarı Rəqəmdən Yuxarı", - "rounding_code" => "Yuvarlama Kodu", - "sales_tax" => "Satış Vergisi", - "sales_tax_by_invoice" => "Satış Vergisi Faktura ilə", - "sequence" => "Ardı.", - "state" => "Bölgə", - "successful_deleted" => "Siz uğurla sildiniz", - "tax_categories" => "Vergi bölməsi", - "tax_categories_configuration" => "Vergi Bölmələrinin Konfiqurasiyası", - "tax_categories_saved_successfully" => "Vergi bölmələrində dəyişikliklər edildi", - "tax_categories_saved_unsuccessfully" => "Vergi bölmələrində dəyişikliklər edilməmişdir", - "tax_category" => "Vergi Bölməsi", - "tax_category_code" => "Vergi bölmə kodu", - "tax_category_duplicate" => "Vergi bölməsinin dublikatı", - "tax_category_invalid_chars" => "Vergi bölmə adında icazə veilməyən simvollar", - "tax_category_name" => "Vergi Bölmə Adı", - "tax_category_new" => "Yeni vergi Bölməsi", - "tax_category_required" => "Vergi Bölməsi tələb olunur", - "tax_code" => "Vergi kodu", - "tax_code_cannot_be_deleted" => "Vergi kodu silinmədi", - "tax_code_duplicate" => "Vergi kodunun dublikatı", - "tax_code_invalid_chars" => "Vergi kodunda yararsız simvollar", - "tax_code_name" => "Vergi kodu adı", - "tax_code_required" => "Vergi kodu zəruri bir sahədir", - "tax_code_successful_deleted" => "Vergi kodu müvəffəqiyyətlə silindi", - "tax_code_successful_updated" => "Müvəffəqiyyətlə yenilədiniz", - "tax_code_successful_updating" => "Vergi kodunuzu uğurla yenilədiniz", - "tax_code_successfully_added" => "Siz uğurla əlavə etdiniz", - "tax_code_type" => "Vergi Məcəlləsi növü", - "tax_codes" => "Vergi kodları", - "tax_codes_configuration" => "Vergi kodları konfiqurasiyası", - "tax_codes_saved_successfully" => "Vergi kodu dəyişikliyi saxlanıldı", - "tax_codes_saved_unsuccessfully" => "Vergi kodu dəyişikliyi saxlanılmadı", - "tax_excluded" => "Vergi istisna olunur", - "tax_group" => "Vergi qurupu", - "tax_group_not_unique" => "Vergi Qrupu {0} unikal deyil", - "tax_group_sequence" => "Vergi Qrupu Sırası", - "tax_included" => "Vergi daxildir", - "tax_jurisdiction" => "Vergi Yurisdiksiya", - "tax_jurisdiction_duplicate" => "Vergi yurisdiksiyasının dublikatı", - "tax_jurisdiction_invalid_chars" => "Yurisdiksiyası adına Yanlış simvol", - "tax_jurisdiction_required" => "Vergi yurisdiksiyası tələb olunur", - "tax_jurisdictions" => "Vergi yurisdiksiyalarda", - "tax_jurisdictions_configuration" => "Vergi yurisdiksiyalarda Konfiqurasiya", - "tax_jurisdictions_saved_successfully" => "Vergi Yurisdiksiyası dəyişiklikləri saxlanıldı", - "tax_jurisdictions_saved_unsuccessfully" => "Vergi Yurisdiksiyası dəyişiklikləri saxlanılmadı", - "tax_rate" => "Vergi Dərəcəsi", - "tax_rate_configuration" => "Vergi dərəcəsi konfiqurasiyası", - "tax_rate_error_adding_updating" => "Vergi dərəcəsi əlavə ya yeniləmə baş verdi", - "tax_rate_numeric" => "Vergi dərəcəsi rəqəmlə olmalıdır", - "tax_rate_required" => "Vergi Dərəcəsi sahəsi boş qala bilməz", - "tax_rate_successful_updated" => "Müvəffəqiyyətlə yenilənmisiniz", - "tax_rate_successfully_added" => "Siz uğurla əlavə etdiniz", - "tax_rates" => "Vergi dərəcələri", - "tax_rates_configuration" => "Vergi məzənnələri konfiqurasiyası", - "tax_rounding" => "Vergi yuvarlaqlaşdırması", - "tax_type" => "Vergi növü", - "update" => "Vergi dərəcəsini yenilənir", - "vat_tax" => "ƏDV Vergisi", + "add_exception" => "İstisna Əlavə Et", + "cascade" => "Çağlayan", + "cascade_sequence" => "Çağlayan sırası", + "city" => "Şəhər", + "code" => "Kod", + "confirm_delete" => "Vergi Məcəlləsini silmək istədiyinizə əminsinizmi? Bu hərəkət geri qaytarıla bilməz", + "confirm_restore" => "Seçilmiş Vergi Məcəlləsini (lər) bərpa etmək istədiyinizə əminsinizmi?", + "default_tax_category" => "Cari Vergi Kategoriyası", + "default_tax_rate" => "Sabit Vergi dərəcəsi", + "error_adding_updating" => "Vergi kodu Əlavə ya yeniləmə uğursuzdur", + "group_seq" => "Qrup seq", + "jurisdiction_name" => "Yurisdiksiya Adı", + "name" => "Ad", + "new" => "Yeni Vergi", + "no_taxes" => "", + "no_taxes_to_display" => "Göstərməyə Vergi Kodu yoxdur", + "reporting_authority" => "Hesabat orqanı", + "round_half_down" => "Yarı Aşağı", + "round_half_even" => "Cüt Rəqəm", + "round_half_odd" => "Tək Rəqəm", + "round_half_up" => "Yarı Rəqəmdən Yuxarı", + "rounding_code" => "Yuvarlama Kodu", + "sales_tax" => "Satış Vergisi", + "sales_tax_by_invoice" => "Satış Vergisi Faktura ilə", + "sequence" => "Ardı.", + "state" => "Bölgə", + "successful_deleted" => "Siz uğurla sildiniz", + "tax_categories" => "Vergi bölməsi", + "tax_categories_configuration" => "Vergi Bölmələrinin Konfiqurasiyası", + "tax_categories_saved_successfully" => "Vergi bölmələrində dəyişikliklər edildi", + "tax_categories_saved_unsuccessfully" => "Vergi bölmələrində dəyişikliklər edilməmişdir", + "tax_category" => "Vergi Bölməsi", + "tax_category_code" => "Vergi bölmə kodu", + "tax_category_duplicate" => "Vergi bölməsinin dublikatı", + "tax_category_invalid_chars" => "Vergi bölmə adında icazə veilməyən simvollar", + "tax_category_name" => "Vergi Bölmə Adı", + "tax_category_new" => "Yeni vergi Bölməsi", + "tax_category_required" => "Vergi Bölməsi tələb olunur", + "tax_code" => "Vergi kodu", + "tax_code_cannot_be_deleted" => "Vergi kodu silinmədi", + "tax_code_duplicate" => "Vergi kodunun dublikatı", + "tax_code_invalid_chars" => "Vergi kodunda yararsız simvollar", + "tax_code_name" => "Vergi kodu adı", + "tax_code_required" => "Vergi kodu zəruri bir sahədir", + "tax_code_successful_deleted" => "Vergi kodu müvəffəqiyyətlə silindi", + "tax_code_successful_updated" => "Müvəffəqiyyətlə yenilədiniz", + "tax_code_successful_updating" => "Vergi kodunuzu uğurla yenilədiniz", + "tax_code_successfully_added" => "Siz uğurla əlavə etdiniz", + "tax_code_type" => "Vergi Məcəlləsi növü", + "tax_codes" => "Vergi kodları", + "tax_codes_configuration" => "Vergi kodları konfiqurasiyası", + "tax_codes_saved_successfully" => "Vergi kodu dəyişikliyi saxlanıldı", + "tax_codes_saved_unsuccessfully" => "Vergi kodu dəyişikliyi saxlanılmadı", + "tax_excluded" => "Vergi istisna olunur", + "tax_group" => "Vergi qurupu", + "tax_group_not_unique" => "Vergi Qrupu {0} unikal deyil", + "tax_group_sequence" => "Vergi Qrupu Sırası", + "tax_included" => "Vergi daxildir", + "tax_jurisdiction" => "Vergi Yurisdiksiya", + "tax_jurisdiction_duplicate" => "Vergi yurisdiksiyasının dublikatı", + "tax_jurisdiction_invalid_chars" => "Yurisdiksiyası adına Yanlış simvol", + "tax_jurisdiction_required" => "Vergi yurisdiksiyası tələb olunur", + "tax_jurisdictions" => "Vergi yurisdiksiyalarda", + "tax_jurisdictions_configuration" => "Vergi yurisdiksiyalarda Konfiqurasiya", + "tax_jurisdictions_saved_successfully" => "Vergi Yurisdiksiyası dəyişiklikləri saxlanıldı", + "tax_jurisdictions_saved_unsuccessfully" => "Vergi Yurisdiksiyası dəyişiklikləri saxlanılmadı", + "tax_rate" => "Vergi Dərəcəsi", + "tax_rate_configuration" => "Vergi dərəcəsi konfiqurasiyası", + "tax_rate_error_adding_updating" => "Vergi dərəcəsi əlavə ya yeniləmə baş verdi", + "tax_rate_numeric" => "Vergi dərəcəsi rəqəmlə olmalıdır", + "tax_rate_required" => "Vergi Dərəcəsi sahəsi boş qala bilməz", + "tax_rate_successful_updated" => "Müvəffəqiyyətlə yenilənmisiniz", + "tax_rate_successfully_added" => "Siz uğurla əlavə etdiniz", + "tax_rates" => "Vergi dərəcələri", + "tax_rates_configuration" => "Vergi məzənnələri konfiqurasiyası", + "tax_rounding" => "Vergi yuvarlaqlaşdırması", + "tax_type" => "Vergi növü", + "update" => "Vergi dərəcəsini yenilənir", + "vat_tax" => "ƏDV Vergisi", ]; diff --git a/app/Language/az/index.html b/app/Language/az/index.html index b702fbc39..69df4e1df 100644 --- a/app/Language/az/index.html +++ b/app/Language/az/index.html @@ -1,7 +1,7 @@ - 403 Forbidden + 403 Forbidden diff --git a/app/Language/bg/Attributes.php b/app/Language/bg/Attributes.php index 0adb3846e..cb64f590d 100644 --- a/app/Language/bg/Attributes.php +++ b/app/Language/bg/Attributes.php @@ -1,32 +1,32 @@ "", - "confirm_delete" => "", - "confirm_restore" => "", - "definition_cannot_be_deleted" => "", - "definition_error_adding_updating" => "", - "definition_flags" => "", - "definition_group" => "", - "definition_id" => "", - "definition_name" => "", - "definition_name_required" => "", - "definition_one_or_multiple" => "", - "definition_successful_adding" => "", - "definition_successful_deleted" => "", - "definition_successful_updating" => "", - "definition_type" => "", - "definition_type_required" => "", - "definition_unit" => "", - "definition_values" => "", - "new" => "", - "no_attributes_to_display" => "", - "receipt_visibility" => "", - "show_in_items" => "", - "show_in_items_visibility" => "", - "show_in_receipt" => "", - "show_in_receivings" => "", - "show_in_receivings_visibility" => "", - "show_in_sales" => "", - "show_in_sales_visibility" => "", - "update" => "", + "attribute_value_invalid_chars" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "definition_cannot_be_deleted" => "", + "definition_error_adding_updating" => "", + "definition_flags" => "", + "definition_group" => "", + "definition_id" => "", + "definition_name" => "", + "definition_name_required" => "", + "definition_one_or_multiple" => "", + "definition_successful_adding" => "", + "definition_successful_deleted" => "", + "definition_successful_updating" => "", + "definition_type" => "", + "definition_type_required" => "", + "definition_unit" => "", + "definition_values" => "", + "new" => "", + "no_attributes_to_display" => "", + "receipt_visibility" => "", + "show_in_items" => "", + "show_in_items_visibility" => "", + "show_in_receipt" => "", + "show_in_receivings" => "", + "show_in_receivings_visibility" => "", + "show_in_sales" => "", + "show_in_sales_visibility" => "", + "update" => "", ]; diff --git a/app/Language/bg/Bootstrap_tables.php b/app/Language/bg/Bootstrap_tables.php index d8fa8519b..4b84c1655 100644 --- a/app/Language/bg/Bootstrap_tables.php +++ b/app/Language/bg/Bootstrap_tables.php @@ -1,11 +1,11 @@ "Всичко/и", - "columns" => "Колони", - "hide_show_pagination" => "Скриване / Показване на страници", - "loading" => "Зареждане, моля изчакайте...", - "page_from_to" => "Показани са {0} до {1} от {2} реда", - "refresh" => "Опресняване", - "rows_per_page" => "{0} редове на страница", - "toggle" => "Щифт", + "all" => "Всичко/и", + "columns" => "Колони", + "hide_show_pagination" => "Скриване / Показване на страници", + "loading" => "Зареждане, моля изчакайте...", + "page_from_to" => "Показани са {0} до {1} от {2} реда", + "refresh" => "Опресняване", + "rows_per_page" => "{0} редове на страница", + "toggle" => "Щифт", ]; diff --git a/app/Language/bg/Calendar.php b/app/Language/bg/Calendar.php index c0b688e5f..5b4646bf9 100644 --- a/app/Language/bg/Calendar.php +++ b/app/Language/bg/Calendar.php @@ -1,48 +1,48 @@ "Нд", - "mo" => "Пн", - "tu" => "Вт", - "we" => "Ср", - "th" => "Чт", - "fr" => "Пт", - "sa" => "Сб", - "sun" => "Нед", - "mon" => "Пон", - "tue" => "Вто", - "wed" => "Сря", - "thu" => "Чет", - "fri" => "Пет", - "sat" => "Съб", - "sunday" => "Неделя", - "monday" => "Понеделник", - "tuesday" => "Вторник", - "wednesday" => "Сряда", - "thursday" => "Четвъртък", - "friday" => "Петък", - "saturday" => "Събота", - "jan" => "Яну", - "feb" => "Фев", - "mar" => "Мар", - "apr" => "Апр", - "may" => "Май", - "jun" => "Юни", - "jul" => "Юли", - "aug" => "Авг", - "sep" => "Сеп", - "oct" => "Окт", - "nov" => "Ное", - "dec" => "Дек", - "january" => "Януари", - "february" => "Февруари", - "march" => "Март", - "april" => "Април", - "mayl" => "Май", - "june" => "Юни", - "july" => "Юли", - "august" => "Август", - "september" => "Септември", - "october" => "Октомври", - "november" => "Ноември", - "december" => "Декември", + "su" => "Нд", + "mo" => "Пн", + "tu" => "Вт", + "we" => "Ср", + "th" => "Чт", + "fr" => "Пт", + "sa" => "Сб", + "sun" => "Нед", + "mon" => "Пон", + "tue" => "Вто", + "wed" => "Сря", + "thu" => "Чет", + "fri" => "Пет", + "sat" => "Съб", + "sunday" => "Неделя", + "monday" => "Понеделник", + "tuesday" => "Вторник", + "wednesday" => "Сряда", + "thursday" => "Четвъртък", + "friday" => "Петък", + "saturday" => "Събота", + "jan" => "Яну", + "feb" => "Фев", + "mar" => "Мар", + "apr" => "Апр", + "may" => "Май", + "jun" => "Юни", + "jul" => "Юли", + "aug" => "Авг", + "sep" => "Сеп", + "oct" => "Окт", + "nov" => "Ное", + "dec" => "Дек", + "january" => "Януари", + "february" => "Февруари", + "march" => "Март", + "april" => "Април", + "mayl" => "Май", + "june" => "Юни", + "july" => "Юли", + "august" => "Август", + "september" => "Септември", + "october" => "Октомври", + "november" => "Ноември", + "december" => "Декември", ]; diff --git a/app/Language/bg/Cashups.php b/app/Language/bg/Cashups.php index 2ffc8c593..04d19c94f 100644 --- a/app/Language/bg/Cashups.php +++ b/app/Language/bg/Cashups.php @@ -1,49 +1,49 @@ "", - "amount_number" => "", - "amount_required" => "", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "", - "cash_difference" => "", - "close_date" => "", - "close_employee" => "", - "closed_amount_card" => "", - "closed_amount_cash" => "", - "closed_amount_check" => "", - "closed_amount_due" => "", - "closed_amount_giftcard" => "", - "closed_amount_total" => "", - "closed_date" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "confirm_submit" => "", - "date_number" => "", - "date_required" => "", - "description" => "", - "enable_expected" => "", - "error_adding_updating" => "", - "giftcard" => "", - "id" => "", - "info" => "", - "info_employee" => "", - "is_deleted" => "", - "new" => "", - "no_cashups_to_display" => "", - "none_selected" => "", - "note" => "", - "one_or_multiple" => "", - "open_amount_cash" => "", - "open_date" => "", - "open_employee" => "", - "opened_date" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "total" => "", - "transfer_amount_cash" => "", - "transfer_amount_cash_minus" => "", - "update" => "", - "warning" => "", + "amount" => "", + "amount_number" => "", + "amount_required" => "", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "", + "cash_difference" => "", + "close_date" => "", + "close_employee" => "", + "closed_amount_card" => "", + "closed_amount_cash" => "", + "closed_amount_check" => "", + "closed_amount_due" => "", + "closed_amount_giftcard" => "", + "closed_amount_total" => "", + "closed_date" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "confirm_submit" => "", + "date_number" => "", + "date_required" => "", + "description" => "", + "enable_expected" => "", + "error_adding_updating" => "", + "giftcard" => "", + "id" => "", + "info" => "", + "info_employee" => "", + "is_deleted" => "", + "new" => "", + "no_cashups_to_display" => "", + "none_selected" => "", + "note" => "", + "one_or_multiple" => "", + "open_amount_cash" => "", + "open_date" => "", + "open_employee" => "", + "opened_date" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "total" => "", + "transfer_amount_cash" => "", + "transfer_amount_cash_minus" => "", + "update" => "", + "warning" => "", ]; diff --git a/app/Language/bg/Common.php b/app/Language/bg/Common.php index d0eb96a75..c0d38005b 100644 --- a/app/Language/bg/Common.php +++ b/app/Language/bg/Common.php @@ -1,88 +1,88 @@ "Адрес 1", - "address_2" => "Адрес 2", - "admin" => "", - "city" => "Град", - "clerk" => "", - "close" => "Затвори", - "color" => "", - "comments" => "Коментари", - "common" => "Често срещани", - "confirm_search" => "Избрали сте един или повече редове, след търсене няма да бъдат избрани. Наистина ли искате да подадете това търсене?", - "copyrights" => "© 2010 - {0}", - "correct_errors" => "Моля, коригирайте установените грешки преди записване", - "country" => "Държава", - "dashboard" => "", - "date" => "Дата", - "delete" => "Изтриване", - "det" => "Детайли", - "download_import_template" => "Изтегляне на шаблон за импортиране на CSV (CSV)", - "edit" => "Редактиране", - "email" => "Електронна поща", - "email_invalid_format" => "Имейл адресът не е в правилния формат.", - "export_csv" => "Експорт на CSV", - "export_csv_no" => "Не", - "export_csv_yes" => "Да", - "fields_required_message" => "Полетата в червено са задължителни", - "fields_required_message_unique" => "", - "first_name" => "Име", - "first_name_required" => "Име е задължително поле.", - "first_page" => "Първи", - "gender" => "Пол", - "gender_female" => "Ж", - "gender_male" => "М", - "gender_undefined" => "", - "icon" => "", - "id" => "Номер", - "import" => "Внос", - "import_change_file" => "Промяна", - "import_csv" => "Внос на CSV", - "import_full_path" => "Необходим е пълен пътека към файл с CSV", - "import_remove_file" => "Премахване", - "import_select_file" => "Изберете файл", - "inv" => "Покана", - "last_name" => "Фамилия", - "last_name_required" => "Фамилия е задължително поле.", - "last_page" => "Последна", - "learn_about_project" => "за да научите най-новата информация за проекта.", - "list_of" => "Списък с", - "logo" => "", - "logo_mark" => "", - "logout" => "Излизане от профила", - "manager" => "", - "migration_needed" => "Мигриране на база данни ще започне след влизане.", - "new" => "Нов", - "no" => "", - "no_persons_to_display" => "Няма хора за показване.", - "none_selected_text" => "Нищо не е избрано", - "or" => "Или", - "people" => "", - "phone_number" => "Телефонен номер", - "phone_number_required" => "", - "please_visit_my" => "Моля, посетете", - "position" => "", - "powered_by" => "С подкрепата на", - "price" => "Цена", - "print" => "Принтиране", - "remove" => "Премахване", - "required" => "Необходим", - "restore" => "Въстановяване", - "return_policy" => "Условия за връщане", - "search" => "Търсене", - "search_options" => "Опции за търсене", - "searched_for" => "Търсене за", - "software_short" => "", - "software_title" => "", - "state" => "Щат", - "submit" => "Изпращане", - "total_spent" => "Общо изразходвани", - "unknown" => "Неизвестен", - "view_recent_sales" => "Преглед на последните продажби", - "website" => "Уебсайт", - "welcome" => "Добре дошли", - "welcome_message" => "Добре дошли в OSPOS, кликнете върху модул по-долу, за да започнете.", - "yes" => "", - "you_are_using_ospos" => "Вие използвате Open Source Point Оf Sale версия", - "zip" => "Пощенски код", + "address_1" => "Адрес 1", + "address_2" => "Адрес 2", + "admin" => "", + "city" => "Град", + "clerk" => "", + "close" => "Затвори", + "color" => "", + "comments" => "Коментари", + "common" => "Често срещани", + "confirm_search" => "Избрали сте един или повече редове, след търсене няма да бъдат избрани. Наистина ли искате да подадете това търсене?", + "copyrights" => "© 2010 - {0}", + "correct_errors" => "Моля, коригирайте установените грешки преди записване", + "country" => "Държава", + "dashboard" => "", + "date" => "Дата", + "delete" => "Изтриване", + "det" => "Детайли", + "download_import_template" => "Изтегляне на шаблон за импортиране на CSV (CSV)", + "edit" => "Редактиране", + "email" => "Електронна поща", + "email_invalid_format" => "Имейл адресът не е в правилния формат.", + "export_csv" => "Експорт на CSV", + "export_csv_no" => "Не", + "export_csv_yes" => "Да", + "fields_required_message" => "Полетата в червено са задължителни", + "fields_required_message_unique" => "", + "first_name" => "Име", + "first_name_required" => "Име е задължително поле.", + "first_page" => "Първи", + "gender" => "Пол", + "gender_female" => "Ж", + "gender_male" => "М", + "gender_undefined" => "", + "icon" => "", + "id" => "Номер", + "import" => "Внос", + "import_change_file" => "Промяна", + "import_csv" => "Внос на CSV", + "import_full_path" => "Необходим е пълен пътека към файл с CSV", + "import_remove_file" => "Премахване", + "import_select_file" => "Изберете файл", + "inv" => "Покана", + "last_name" => "Фамилия", + "last_name_required" => "Фамилия е задължително поле.", + "last_page" => "Последна", + "learn_about_project" => "за да научите най-новата информация за проекта.", + "list_of" => "Списък с", + "logo" => "", + "logo_mark" => "", + "logout" => "Излизане от профила", + "manager" => "", + "migration_needed" => "Мигриране на база данни ще започне след влизане.", + "new" => "Нов", + "no" => "", + "no_persons_to_display" => "Няма хора за показване.", + "none_selected_text" => "Нищо не е избрано", + "or" => "Или", + "people" => "", + "phone_number" => "Телефонен номер", + "phone_number_required" => "", + "please_visit_my" => "Моля, посетете", + "position" => "", + "powered_by" => "С подкрепата на", + "price" => "Цена", + "print" => "Принтиране", + "remove" => "Премахване", + "required" => "Необходим", + "restore" => "Въстановяване", + "return_policy" => "Условия за връщане", + "search" => "Търсене", + "search_options" => "Опции за търсене", + "searched_for" => "Търсене за", + "software_short" => "", + "software_title" => "", + "state" => "Щат", + "submit" => "Изпращане", + "total_spent" => "Общо изразходвани", + "unknown" => "Неизвестен", + "view_recent_sales" => "Преглед на последните продажби", + "website" => "Уебсайт", + "welcome" => "Добре дошли", + "welcome_message" => "Добре дошли в OSPOS, кликнете върху модул по-долу, за да започнете.", + "yes" => "", + "you_are_using_ospos" => "Вие използвате Open Source Point Оf Sale версия", + "zip" => "Пощенски код", ]; diff --git a/app/Language/bg/Config.php b/app/Language/bg/Config.php index 44941af03..42f6eb649 100644 --- a/app/Language/bg/Config.php +++ b/app/Language/bg/Config.php @@ -1,330 +1,330 @@ "Адрес на компанията", - "address_required" => "Адресът на компанията е задължително поле.", - "all_set" => "All file permissions are set correctly!", - "allow_duplicate_barcodes" => "Разрешаване на дублирани баркодове", - "apostrophe" => "апостроф", - "backup_button" => "резервно копие", - "backup_database" => "Резервно копие база данни", - "barcode" => "Баркод", - "barcode_company" => "Име на компанията", - "barcode_configuration" => "Конфигуриране на баркод", - "barcode_content" => "Съдържание на баркод", - "barcode_first_row" => "Ред 1", - "barcode_font" => "Font", - "barcode_formats" => "Input Formats", - "barcode_generate_if_empty" => "Generate if empty.", - "barcode_height" => "Height (px)", - "barcode_id" => "Item Id/Name", - "barcode_info" => "Barcode Configuration Information", - "barcode_layout" => "Barcode Layout", - "barcode_name" => "Name", - "barcode_number" => "Barcode", - "barcode_number_in_row" => "Number in row", - "barcode_page_cellspacing" => "Display page cellspacing.", - "barcode_page_width" => "Display page width", - "barcode_price" => "Price", - "barcode_second_row" => "Row 2", - "barcode_third_row" => "Row 3", - "barcode_tooltip" => "Warning: This feature can cause duplicate items to be imported or created. Do not use if you do not want duplicate barcodes.", - "barcode_type" => "Barcode Type", - "barcode_width" => "Width (px)", - "bottom" => "Bottom", - "cash_button" => "", - "cash_button_1" => "", - "cash_button_2" => "", - "cash_button_3" => "", - "cash_button_4" => "", - "cash_button_5" => "", - "cash_button_6" => "", - "cash_decimals" => "Cash Decimals", - "cash_decimals_tooltip" => "If Cash Decimals and Currency Decimals are the same then no cash rounding will take place.", - "cash_rounding" => "Cash Rounding", - "category_dropdown" => "", - "center" => "Center", - "change_apperance_tooltip" => "", - "comma" => "comma", - "company" => "Company Name", - "company_avatar" => "", - "company_change_image" => "Change Image", - "company_logo" => "Company Logo", - "company_remove_image" => "Remove Image", - "company_required" => "Company name is a required field", - "company_select_image" => "Select Image", - "company_website_url" => "Company website is not a valid URL (http://...).", - "country_codes" => "Country Codes", - "country_codes_tooltip" => "Comma separated list of country codes for nominatim address lookup.", - "currency_code" => "", - "currency_decimals" => "Currency Decimals", - "currency_symbol" => "Currency Symbol", - "current_employee_only" => "", - "customer_reward" => "Reward", - "customer_reward_duplicate" => "Reward must be unique.", - "customer_reward_enable" => "Enable Customer Rewards", - "customer_reward_invalid_chars" => "Reward can not contain '_'", - "customer_reward_required" => "Reward is a required field", - "customer_sales_tax_support" => "Customer Sales Tax Support", - "date_or_time_format" => "Date and Time Filter", - "datetimeformat" => "Date and Time Format", - "decimal_point" => "Decimal Point", - "default_barcode_font_size_number" => "Default Barcode Font Size must be a number.", - "default_barcode_font_size_required" => "Default Barcode Font Size is a required field.", - "default_barcode_height_number" => "Default Barcode Height must be a number.", - "default_barcode_height_required" => "Default Barcode Height is a required field.", - "default_barcode_num_in_row_number" => "Default Barcode Number in Row must be a number.", - "default_barcode_num_in_row_required" => "Default Barcode Number in Row is a required field.", - "default_barcode_page_cellspacing_number" => "Default Barcode Page Cellspacing must be a number.", - "default_barcode_page_cellspacing_required" => "Default Barcode Page Cellspacing is a required field.", - "default_barcode_page_width_number" => "Default Barcode Page Width must be a number.", - "default_barcode_page_width_required" => "Default Barcode Page Width is a required field.", - "default_barcode_width_number" => "Default Barcode Width must be a number.", - "default_barcode_width_required" => "Default Barcode Width is a required field.", - "default_item_columns" => "", - "default_origin_tax_code" => "Default Origin Tax Code", - "default_receivings_discount" => "", - "default_receivings_discount_number" => "", - "default_receivings_discount_required" => "", - "default_sales_discount" => "Default Sales Discount %", - "default_sales_discount_number" => "Default Sales Discount must be a number.", - "default_sales_discount_required" => "Default Sales Discount is a required field.", - "default_tax_category" => "", - "default_tax_code" => "", - "default_tax_jurisdiction" => "", - "default_tax_name_number" => "Default Tax Name must be a string.", - "default_tax_name_required" => "Default Tax Name is a required field.", - "default_tax_rate" => "Default Tax Rate %", - "default_tax_rate_1" => "Tax 1 Rate", - "default_tax_rate_2" => "Tax 2 Rate", - "default_tax_rate_3" => "", - "default_tax_rate_number" => "Default Tax Rate must be a number.", - "default_tax_rate_required" => "Default Tax Rate is a required field.", - "derive_sale_quantity" => "", - "derive_sale_quantity_tooltip" => "", - "dinner_table" => "Table", - "dinner_table_duplicate" => "Table must be unique.", - "dinner_table_enable" => "Enable Dinner Tables", - "dinner_table_invalid_chars" => "Table Name can not contain '_'.", - "dinner_table_required" => "Table is a required field.", - "dot" => "dot", - "email" => "Email", - "email_configuration" => "Email Configuration", - "email_mailpath" => "Path to Sendmail", - "email_protocol" => "Protocol", - "email_receipt_check_behaviour" => "", - "email_receipt_check_behaviour_always" => "", - "email_receipt_check_behaviour_last" => "", - "email_receipt_check_behaviour_never" => "", - "email_smtp_crypto" => "SMTP Encryption", - "email_smtp_host" => "SMTP Server", - "email_smtp_pass" => "SMTP Password", - "email_smtp_port" => "SMTP Port", - "email_smtp_timeout" => "SMTP Timeout (s)", - "email_smtp_user" => "SMTP Username", - "enable_avatar" => "", - "enable_avatar_tooltip" => "", - "enable_dropdown_tooltip" => "", - "enable_new_look" => "", - "enable_right_bar" => "", - "enable_right_bar_tooltip" => "", - "enforce_privacy" => "", - "enforce_privacy_tooltip" => "", - "fax" => "Fax", - "file_perm" => "There are problems with file permissions please fix and reload this page.", - "financial_year" => "Fiscal Year Start", - "financial_year_apr" => "1st of April", - "financial_year_aug" => "1st of August", - "financial_year_dec" => "1st of December", - "financial_year_feb" => "1st of February", - "financial_year_jan" => "1st of January", - "financial_year_jul" => "1st of July", - "financial_year_jun" => "1st of June", - "financial_year_mar" => "1st of March", - "financial_year_may" => "1st of May", - "financial_year_nov" => "1st of November", - "financial_year_oct" => "1st of October", - "financial_year_sep" => "1st of September", - "floating_labels" => "", - "gcaptcha_enable" => "Login Page reCAPTCHA", - "gcaptcha_secret_key" => "reCAPTCHA Secret Key", - "gcaptcha_secret_key_required" => "reCAPTCHA Secret Key is a required field", - "gcaptcha_site_key" => "reCAPTCHA Site Key", - "gcaptcha_site_key_required" => "reCAPTCHA Site Key is a required field", - "gcaptcha_tooltip" => "Protect the Login page with Google reCAPTCHA, click the icon for an API key pair.", - "general" => "General", - "general_configuration" => "General Configuration", - "giftcard_number" => "Gift Card Number", - "giftcard_random" => "Generate Random", - "giftcard_series" => "Generate in Series", - "image_allowed_file_types" => "", - "image_max_height_tooltip" => "", - "image_max_size_tooltip" => "", - "image_max_width_tooltip" => "", - "image_restrictions" => "", - "include_hsn" => "", - "info" => "Information", - "info_configuration" => "Store Information", - "input_groups" => "", - "integrations" => "", - "integrations_configuration" => "", - "invoice" => "Invoice", - "invoice_configuration" => "Invoice Print Settings", - "invoice_default_comments" => "Default Invoice Comments", - "invoice_email_message" => "Invoice Email Template", - "invoice_enable" => "Enable Invoicing", - "invoice_printer" => "Invoice Printer", - "invoice_type" => "", - "is_readable" => "", - "is_writable" => "is writable, but the permissions are higher than 750.", - "item_markup" => "", - "jsprintsetup_required" => "Warning: This functionality will only work if you have the FireFox jsPrintSetup addon installed. Save anyway?", - "language" => "Language", - "last_used_invoice_number" => "Last used Invoice Number", - "last_used_quote_number" => "Last used Quote Number", - "last_used_work_order_number" => "Last used W/O Number", - "left" => "Left", - "license" => "License", - "license_configuration" => "License Statement", - "line_sequence" => "Line Sequence", - "lines_per_page" => "Lines per Page", - "lines_per_page_number" => "Линиите на страница трябва да са число.", - "lines_per_page_required" => "Lines per Page is a required field.", - "locale" => "Localization", - "locale_configuration" => "Localization Configuration", - "locale_info" => "Localization Configuration Information", - "location" => "Stock", - "location_configuration" => "Stock Locations", - "location_info" => "Location Configuration Information", - "login_form" => "", - "logout" => "Do you want to make a backup before logging out? Click [OK] to backup or [Cancel] to logout.", - "mailchimp" => "Mailchimp", - "mailchimp_api_key" => "Mailchimp API Key", - "mailchimp_configuration" => "Mailchimp Configuration", - "mailchimp_key_successfully" => "API Key is valid.", - "mailchimp_key_unsuccessfully" => "API Key is invalid.", - "mailchimp_lists" => "Mailchimp List(s)", - "mailchimp_tooltip" => "Click the icon for an API Key.", - "message" => "Message", - "message_configuration" => "Message Configuration", - "msg_msg" => "Saved Text Message", - "msg_msg_placeholder" => "If you wish to use a SMS template save your message here, otherwise leave the box blank.", - "msg_pwd" => "SMS-API Password", - "msg_pwd_required" => "SMS-API Password is a required field", - "msg_src" => "SMS-API Sender ID", - "msg_src_required" => "SMS-API Sender ID is a required field", - "msg_uid" => "SMS-API Username", - "msg_uid_required" => "SMS-API Username is a required field", - "multi_pack_enabled" => "", - "no_risk" => "No security/vulnerability risks.", - "none" => "none", - "notify_alignment" => "Notification Popup Position", - "number_format" => "Number Format", - "number_locale" => "Localization", - "number_locale_invalid" => "The entered locale is invalid. Check the link in the tooltip to find a valid locale.", - "number_locale_required" => "Number Locale is a required field.", - "number_locale_tooltip" => "Find a suitable locale through this link.", - "os_timezone" => "", - "ospos_info" => "", - "payment_options_order" => "Payment Options Order", - "perm_risk" => "Permissions higher than 750 leaves this software at risk.", - "phone" => "Company Phone", - "phone_required" => "Company Phone is a required field.", - "print_bottom_margin" => "Margin Bottom", - "print_bottom_margin_number" => "Margin Bottom must be a number.", - "print_bottom_margin_required" => "Margin Bottom is a required field.", - "print_delay_autoreturn" => "", - "print_delay_autoreturn_number" => "", - "print_delay_autoreturn_required" => "", - "print_footer" => "Print Browser Footer", - "print_header" => "Print Browser Header", - "print_left_margin" => "Margin Left", - "print_left_margin_number" => "Margin Left must be a number.", - "print_left_margin_required" => "Margin Left is a required field.", - "print_receipt_check_behaviour" => "", - "print_receipt_check_behaviour_always" => "", - "print_receipt_check_behaviour_last" => "", - "print_receipt_check_behaviour_never" => "", - "print_right_margin" => "Margin Right", - "print_right_margin_number" => "Margin Right must be a number.", - "print_right_margin_required" => "Margin Right is a required field.", - "print_silently" => "Show Print Dialog", - "print_top_margin" => "Margin Top", - "print_top_margin_number" => "Margin Top must be a number.", - "print_top_margin_required" => "Margin Top is a required field.", - "quantity_decimals" => "Quantity Decimals", - "quick_cash_enable" => "", - "quote_default_comments" => "", - "receipt" => "Receipt", - "receipt_category" => "", - "receipt_configuration" => "Receipt Print Settings", - "receipt_default" => "Default", - "receipt_font_size" => "Font Size", - "receipt_font_size_number" => "Font Size must be a number.", - "receipt_font_size_required" => "Font Size is a required field.", - "receipt_info" => "Receipt Configuration Information", - "receipt_printer" => "Ticket Printer", - "receipt_short" => "Short", - "receipt_show_company_name" => "Show Company Name", - "receipt_show_description" => "Show Description", - "receipt_show_serialnumber" => "Show Serial Number", - "receipt_show_tax_ind" => "", - "receipt_show_taxes" => "Show Taxes", - "receipt_show_total_discount" => "Show Total Discount", - "receipt_template" => "Receipt Template", - "receiving_calculate_average_price" => "Calc avg. Price (Receiving)", - "recv_invoice_format" => "Receivings Invoice Format", - "register_mode_default" => "Default Register Mode", - "report_an_issue" => "", - "return_policy_required" => "Return policy is a required field.", - "reward" => "Reward", - "reward_configuration" => "Reward Configuration", - "right" => "Right", - "sales_invoice_format" => "Sales Invoice Format", - "sales_quote_format" => "Sales Quote Format", - "saved_successfully" => "Configuration save successful.", - "saved_unsuccessfully" => "Configuration save failed.", - "security_issue" => "Security Vulnerability Warning", - "server_notice" => "Please use the below info for issue reporting.", - "service_charge" => "", - "show_due_enable" => "", - "show_office_group" => "Show office icon", - "statistics" => "Send Statistics", - "statistics_tooltip" => "Send statistics for development and feature improvement purposes.", - "stock_location" => "Stock location", - "stock_location_duplicate" => "Stock Location must be unique.", - "stock_location_invalid_chars" => "Stock Location can not contain '_'.", - "stock_location_required" => "Stock location is a required field.", - "suggestions_fifth_column" => "", - "suggestions_first_column" => "Column 1", - "suggestions_fourth_column" => "", - "suggestions_layout" => "Search Suggestions Layout", - "suggestions_second_column" => "Column 2", - "suggestions_third_column" => "Column 3", - "system_conf" => "Setup & Conf", - "system_info" => "System Info", - "table" => "Table", - "table_configuration" => "Table Configuration", - "takings_printer" => "Receipt Printer", - "tax" => "Tax", - "tax_category" => "Tax Category", - "tax_category_duplicate" => "", - "tax_category_invalid_chars" => "", - "tax_category_required" => "", - "tax_category_used" => "Tax category cannot be deleted because it is being used.", - "tax_configuration" => "Tax Configuration", - "tax_decimals" => "Tax Decimals", - "tax_id" => "", - "tax_included" => "Tax Included", - "theme" => "Theme", - "theme_preview" => "", - "thousands_separator" => "Thousands Separator", - "timezone" => "Timezone", - "timezone_error" => "", - "top" => "Top", - "use_destination_based_tax" => "", - "user_timezone" => "", - "website" => "Website", - "wholesale_markup" => "", - "work_order_enable" => "Work Order Support", - "work_order_format" => "Work Order Format", + "address" => "Адрес на компанията", + "address_required" => "Адресът на компанията е задължително поле.", + "all_set" => "All file permissions are set correctly!", + "allow_duplicate_barcodes" => "Разрешаване на дублирани баркодове", + "apostrophe" => "апостроф", + "backup_button" => "резервно копие", + "backup_database" => "Резервно копие база данни", + "barcode" => "Баркод", + "barcode_company" => "Име на компанията", + "barcode_configuration" => "Конфигуриране на баркод", + "barcode_content" => "Съдържание на баркод", + "barcode_first_row" => "Ред 1", + "barcode_font" => "Font", + "barcode_formats" => "Input Formats", + "barcode_generate_if_empty" => "Generate if empty.", + "barcode_height" => "Height (px)", + "barcode_id" => "Item Id/Name", + "barcode_info" => "Barcode Configuration Information", + "barcode_layout" => "Barcode Layout", + "barcode_name" => "Name", + "barcode_number" => "Barcode", + "barcode_number_in_row" => "Number in row", + "barcode_page_cellspacing" => "Display page cellspacing.", + "barcode_page_width" => "Display page width", + "barcode_price" => "Price", + "barcode_second_row" => "Row 2", + "barcode_third_row" => "Row 3", + "barcode_tooltip" => "Warning: This feature can cause duplicate items to be imported or created. Do not use if you do not want duplicate barcodes.", + "barcode_type" => "Barcode Type", + "barcode_width" => "Width (px)", + "bottom" => "Bottom", + "cash_button" => "", + "cash_button_1" => "", + "cash_button_2" => "", + "cash_button_3" => "", + "cash_button_4" => "", + "cash_button_5" => "", + "cash_button_6" => "", + "cash_decimals" => "Cash Decimals", + "cash_decimals_tooltip" => "If Cash Decimals and Currency Decimals are the same then no cash rounding will take place.", + "cash_rounding" => "Cash Rounding", + "category_dropdown" => "", + "center" => "Center", + "change_apperance_tooltip" => "", + "comma" => "comma", + "company" => "Company Name", + "company_avatar" => "", + "company_change_image" => "Change Image", + "company_logo" => "Company Logo", + "company_remove_image" => "Remove Image", + "company_required" => "Company name is a required field", + "company_select_image" => "Select Image", + "company_website_url" => "Company website is not a valid URL (http://...).", + "country_codes" => "Country Codes", + "country_codes_tooltip" => "Comma separated list of country codes for nominatim address lookup.", + "currency_code" => "", + "currency_decimals" => "Currency Decimals", + "currency_symbol" => "Currency Symbol", + "current_employee_only" => "", + "customer_reward" => "Reward", + "customer_reward_duplicate" => "Reward must be unique.", + "customer_reward_enable" => "Enable Customer Rewards", + "customer_reward_invalid_chars" => "Reward can not contain '_'", + "customer_reward_required" => "Reward is a required field", + "customer_sales_tax_support" => "Customer Sales Tax Support", + "date_or_time_format" => "Date and Time Filter", + "datetimeformat" => "Date and Time Format", + "decimal_point" => "Decimal Point", + "default_barcode_font_size_number" => "Default Barcode Font Size must be a number.", + "default_barcode_font_size_required" => "Default Barcode Font Size is a required field.", + "default_barcode_height_number" => "Default Barcode Height must be a number.", + "default_barcode_height_required" => "Default Barcode Height is a required field.", + "default_barcode_num_in_row_number" => "Default Barcode Number in Row must be a number.", + "default_barcode_num_in_row_required" => "Default Barcode Number in Row is a required field.", + "default_barcode_page_cellspacing_number" => "Default Barcode Page Cellspacing must be a number.", + "default_barcode_page_cellspacing_required" => "Default Barcode Page Cellspacing is a required field.", + "default_barcode_page_width_number" => "Default Barcode Page Width must be a number.", + "default_barcode_page_width_required" => "Default Barcode Page Width is a required field.", + "default_barcode_width_number" => "Default Barcode Width must be a number.", + "default_barcode_width_required" => "Default Barcode Width is a required field.", + "default_item_columns" => "", + "default_origin_tax_code" => "Default Origin Tax Code", + "default_receivings_discount" => "", + "default_receivings_discount_number" => "", + "default_receivings_discount_required" => "", + "default_sales_discount" => "Default Sales Discount %", + "default_sales_discount_number" => "Default Sales Discount must be a number.", + "default_sales_discount_required" => "Default Sales Discount is a required field.", + "default_tax_category" => "", + "default_tax_code" => "", + "default_tax_jurisdiction" => "", + "default_tax_name_number" => "Default Tax Name must be a string.", + "default_tax_name_required" => "Default Tax Name is a required field.", + "default_tax_rate" => "Default Tax Rate %", + "default_tax_rate_1" => "Tax 1 Rate", + "default_tax_rate_2" => "Tax 2 Rate", + "default_tax_rate_3" => "", + "default_tax_rate_number" => "Default Tax Rate must be a number.", + "default_tax_rate_required" => "Default Tax Rate is a required field.", + "derive_sale_quantity" => "", + "derive_sale_quantity_tooltip" => "", + "dinner_table" => "Table", + "dinner_table_duplicate" => "Table must be unique.", + "dinner_table_enable" => "Enable Dinner Tables", + "dinner_table_invalid_chars" => "Table Name can not contain '_'.", + "dinner_table_required" => "Table is a required field.", + "dot" => "dot", + "email" => "Email", + "email_configuration" => "Email Configuration", + "email_mailpath" => "Path to Sendmail", + "email_protocol" => "Protocol", + "email_receipt_check_behaviour" => "", + "email_receipt_check_behaviour_always" => "", + "email_receipt_check_behaviour_last" => "", + "email_receipt_check_behaviour_never" => "", + "email_smtp_crypto" => "SMTP Encryption", + "email_smtp_host" => "SMTP Server", + "email_smtp_pass" => "SMTP Password", + "email_smtp_port" => "SMTP Port", + "email_smtp_timeout" => "SMTP Timeout (s)", + "email_smtp_user" => "SMTP Username", + "enable_avatar" => "", + "enable_avatar_tooltip" => "", + "enable_dropdown_tooltip" => "", + "enable_new_look" => "", + "enable_right_bar" => "", + "enable_right_bar_tooltip" => "", + "enforce_privacy" => "", + "enforce_privacy_tooltip" => "", + "fax" => "Fax", + "file_perm" => "There are problems with file permissions please fix and reload this page.", + "financial_year" => "Fiscal Year Start", + "financial_year_apr" => "1st of April", + "financial_year_aug" => "1st of August", + "financial_year_dec" => "1st of December", + "financial_year_feb" => "1st of February", + "financial_year_jan" => "1st of January", + "financial_year_jul" => "1st of July", + "financial_year_jun" => "1st of June", + "financial_year_mar" => "1st of March", + "financial_year_may" => "1st of May", + "financial_year_nov" => "1st of November", + "financial_year_oct" => "1st of October", + "financial_year_sep" => "1st of September", + "floating_labels" => "", + "gcaptcha_enable" => "Login Page reCAPTCHA", + "gcaptcha_secret_key" => "reCAPTCHA Secret Key", + "gcaptcha_secret_key_required" => "reCAPTCHA Secret Key is a required field", + "gcaptcha_site_key" => "reCAPTCHA Site Key", + "gcaptcha_site_key_required" => "reCAPTCHA Site Key is a required field", + "gcaptcha_tooltip" => "Protect the Login page with Google reCAPTCHA, click the icon for an API key pair.", + "general" => "General", + "general_configuration" => "General Configuration", + "giftcard_number" => "Gift Card Number", + "giftcard_random" => "Generate Random", + "giftcard_series" => "Generate in Series", + "image_allowed_file_types" => "", + "image_max_height_tooltip" => "", + "image_max_size_tooltip" => "", + "image_max_width_tooltip" => "", + "image_restrictions" => "", + "include_hsn" => "", + "info" => "Information", + "info_configuration" => "Store Information", + "input_groups" => "", + "integrations" => "", + "integrations_configuration" => "", + "invoice" => "Invoice", + "invoice_configuration" => "Invoice Print Settings", + "invoice_default_comments" => "Default Invoice Comments", + "invoice_email_message" => "Invoice Email Template", + "invoice_enable" => "Enable Invoicing", + "invoice_printer" => "Invoice Printer", + "invoice_type" => "", + "is_readable" => "", + "is_writable" => "is writable, but the permissions are higher than 750.", + "item_markup" => "", + "jsprintsetup_required" => "Warning: This functionality will only work if you have the FireFox jsPrintSetup addon installed. Save anyway?", + "language" => "Language", + "last_used_invoice_number" => "Last used Invoice Number", + "last_used_quote_number" => "Last used Quote Number", + "last_used_work_order_number" => "Last used W/O Number", + "left" => "Left", + "license" => "License", + "license_configuration" => "License Statement", + "line_sequence" => "Line Sequence", + "lines_per_page" => "Lines per Page", + "lines_per_page_number" => "Линиите на страница трябва да са число.", + "lines_per_page_required" => "Lines per Page is a required field.", + "locale" => "Localization", + "locale_configuration" => "Localization Configuration", + "locale_info" => "Localization Configuration Information", + "location" => "Stock", + "location_configuration" => "Stock Locations", + "location_info" => "Location Configuration Information", + "login_form" => "", + "logout" => "Do you want to make a backup before logging out? Click [OK] to backup or [Cancel] to logout.", + "mailchimp" => "Mailchimp", + "mailchimp_api_key" => "Mailchimp API Key", + "mailchimp_configuration" => "Mailchimp Configuration", + "mailchimp_key_successfully" => "API Key is valid.", + "mailchimp_key_unsuccessfully" => "API Key is invalid.", + "mailchimp_lists" => "Mailchimp List(s)", + "mailchimp_tooltip" => "Click the icon for an API Key.", + "message" => "Message", + "message_configuration" => "Message Configuration", + "msg_msg" => "Saved Text Message", + "msg_msg_placeholder" => "If you wish to use a SMS template save your message here, otherwise leave the box blank.", + "msg_pwd" => "SMS-API Password", + "msg_pwd_required" => "SMS-API Password is a required field", + "msg_src" => "SMS-API Sender ID", + "msg_src_required" => "SMS-API Sender ID is a required field", + "msg_uid" => "SMS-API Username", + "msg_uid_required" => "SMS-API Username is a required field", + "multi_pack_enabled" => "", + "no_risk" => "No security/vulnerability risks.", + "none" => "none", + "notify_alignment" => "Notification Popup Position", + "number_format" => "Number Format", + "number_locale" => "Localization", + "number_locale_invalid" => "The entered locale is invalid. Check the link in the tooltip to find a valid locale.", + "number_locale_required" => "Number Locale is a required field.", + "number_locale_tooltip" => "Find a suitable locale through this link.", + "os_timezone" => "", + "ospos_info" => "", + "payment_options_order" => "Payment Options Order", + "perm_risk" => "Permissions higher than 750 leaves this software at risk.", + "phone" => "Company Phone", + "phone_required" => "Company Phone is a required field.", + "print_bottom_margin" => "Margin Bottom", + "print_bottom_margin_number" => "Margin Bottom must be a number.", + "print_bottom_margin_required" => "Margin Bottom is a required field.", + "print_delay_autoreturn" => "", + "print_delay_autoreturn_number" => "", + "print_delay_autoreturn_required" => "", + "print_footer" => "Print Browser Footer", + "print_header" => "Print Browser Header", + "print_left_margin" => "Margin Left", + "print_left_margin_number" => "Margin Left must be a number.", + "print_left_margin_required" => "Margin Left is a required field.", + "print_receipt_check_behaviour" => "", + "print_receipt_check_behaviour_always" => "", + "print_receipt_check_behaviour_last" => "", + "print_receipt_check_behaviour_never" => "", + "print_right_margin" => "Margin Right", + "print_right_margin_number" => "Margin Right must be a number.", + "print_right_margin_required" => "Margin Right is a required field.", + "print_silently" => "Show Print Dialog", + "print_top_margin" => "Margin Top", + "print_top_margin_number" => "Margin Top must be a number.", + "print_top_margin_required" => "Margin Top is a required field.", + "quantity_decimals" => "Quantity Decimals", + "quick_cash_enable" => "", + "quote_default_comments" => "", + "receipt" => "Receipt", + "receipt_category" => "", + "receipt_configuration" => "Receipt Print Settings", + "receipt_default" => "Default", + "receipt_font_size" => "Font Size", + "receipt_font_size_number" => "Font Size must be a number.", + "receipt_font_size_required" => "Font Size is a required field.", + "receipt_info" => "Receipt Configuration Information", + "receipt_printer" => "Ticket Printer", + "receipt_short" => "Short", + "receipt_show_company_name" => "Show Company Name", + "receipt_show_description" => "Show Description", + "receipt_show_serialnumber" => "Show Serial Number", + "receipt_show_tax_ind" => "", + "receipt_show_taxes" => "Show Taxes", + "receipt_show_total_discount" => "Show Total Discount", + "receipt_template" => "Receipt Template", + "receiving_calculate_average_price" => "Calc avg. Price (Receiving)", + "recv_invoice_format" => "Receivings Invoice Format", + "register_mode_default" => "Default Register Mode", + "report_an_issue" => "", + "return_policy_required" => "Return policy is a required field.", + "reward" => "Reward", + "reward_configuration" => "Reward Configuration", + "right" => "Right", + "sales_invoice_format" => "Sales Invoice Format", + "sales_quote_format" => "Sales Quote Format", + "saved_successfully" => "Configuration save successful.", + "saved_unsuccessfully" => "Configuration save failed.", + "security_issue" => "Security Vulnerability Warning", + "server_notice" => "Please use the below info for issue reporting.", + "service_charge" => "", + "show_due_enable" => "", + "show_office_group" => "Show office icon", + "statistics" => "Send Statistics", + "statistics_tooltip" => "Send statistics for development and feature improvement purposes.", + "stock_location" => "Stock location", + "stock_location_duplicate" => "Stock Location must be unique.", + "stock_location_invalid_chars" => "Stock Location can not contain '_'.", + "stock_location_required" => "Stock location is a required field.", + "suggestions_fifth_column" => "", + "suggestions_first_column" => "Column 1", + "suggestions_fourth_column" => "", + "suggestions_layout" => "Search Suggestions Layout", + "suggestions_second_column" => "Column 2", + "suggestions_third_column" => "Column 3", + "system_conf" => "Setup & Conf", + "system_info" => "System Info", + "table" => "Table", + "table_configuration" => "Table Configuration", + "takings_printer" => "Receipt Printer", + "tax" => "Tax", + "tax_category" => "Tax Category", + "tax_category_duplicate" => "", + "tax_category_invalid_chars" => "", + "tax_category_required" => "", + "tax_category_used" => "Tax category cannot be deleted because it is being used.", + "tax_configuration" => "Tax Configuration", + "tax_decimals" => "Tax Decimals", + "tax_id" => "", + "tax_included" => "Tax Included", + "theme" => "Theme", + "theme_preview" => "", + "thousands_separator" => "Thousands Separator", + "timezone" => "Timezone", + "timezone_error" => "", + "top" => "Top", + "use_destination_based_tax" => "", + "user_timezone" => "", + "website" => "Website", + "wholesale_markup" => "", + "work_order_enable" => "Work Order Support", + "work_order_format" => "Work Order Format", ]; diff --git a/app/Language/bg/Customers.php b/app/Language/bg/Customers.php index 670e3eec2..913548b6a 100644 --- a/app/Language/bg/Customers.php +++ b/app/Language/bg/Customers.php @@ -1,56 +1,56 @@ "Сметка #", - "account_number_duplicate" => "Номерът на сметката вече е в базата данни.", - "available_points" => "Налични точки", - "available_points_value" => "", - "average" => "Средно изразходвани", - "avg_discount" => "Средна отстъпка", - "basic_information" => "Информация", - "cannot_be_deleted" => "Избраните клиенти не могат да бъдат изтрити, един или повече от избраните клиенти имат продажби.", - "company_name" => "Компания", - "confirm_delete" => "Наистина ли искате да изтриете избраните клиенти?", - "confirm_restore" => "Наистина ли искате да възстановите избраните клиенти?", - "consent" => "Съгласие за регистрация", - "consent_required" => "Регистрационното съгласие е задължително поле.", - "csv_import_failed" => "Вносът от CSV не бе успешен", - "csv_import_nodata_wrongformat" => "Каченият файл няма данни или е неправилно форматиран.", - "csv_import_partially_failed" => "Вносът на клиента е успешен с няколко грешки:", - "csv_import_success" => "Вносът на клиенти е успешен.", - "customer" => "Клиент", - "date" => "Дата", - "discount" => "Отстъпка", - "discount_fixed" => "Фиксирана отстъпка", - "discount_percent" => "Процент отстъпка", - "discount_type" => "Вид отстъпка", - "email_duplicate" => "Имейл адресът вече е в базата данни.", - "employee" => "Служител", - "error_adding_updating" => "Добавянето или актуализирането на клиента е неуспешно.", - "import_items_csv" => "Импортиране на клиент от CSV", - "mailchimp_activity_click" => "Email click", - "mailchimp_activity_lastopen" => "Последно отворен Имейл", - "mailchimp_activity_open" => "Имейлът е отворен", - "mailchimp_activity_total" => "Имейлът е изпратен", - "mailchimp_activity_unopen" => "Имейлът е неотворен", - "mailchimp_email_client" => "Имейл клиент", - "mailchimp_info" => "Mailchimp (Услуга)", - "mailchimp_member_rating" => "Оценка", - "mailchimp_status" => "Статус", - "mailchimp_vip" => "VIP", - "max" => "Максимално похарчени", - "min" => "Минимално похарчено", - "new" => "Нов клиент", - "none_selected" => "Не сте избрали клиент (и), който да изтриете.", - "one_or_multiple" => "Клиент(ти)", - "quantity" => "Количество", - "stats_info" => "Статус", - "successful_adding" => "Успешно добавихте клиент", - "successful_deleted" => "Вие успешно сте изтрили", - "successful_updating" => "Актуализирахте успешно клиента си", - "tax_code" => "Данъчен код", - "tax_id" => "Данъчен номер", - "taxable" => "Облагаем", - "total" => "Общо изразходвани средства", - "update" => "Актуализиране на клиента", - "rewards_package" => "Пакетни награди", + "account_number" => "Сметка #", + "account_number_duplicate" => "Номерът на сметката вече е в базата данни.", + "available_points" => "Налични точки", + "available_points_value" => "", + "average" => "Средно изразходвани", + "avg_discount" => "Средна отстъпка", + "basic_information" => "Информация", + "cannot_be_deleted" => "Избраните клиенти не могат да бъдат изтрити, един или повече от избраните клиенти имат продажби.", + "company_name" => "Компания", + "confirm_delete" => "Наистина ли искате да изтриете избраните клиенти?", + "confirm_restore" => "Наистина ли искате да възстановите избраните клиенти?", + "consent" => "Съгласие за регистрация", + "consent_required" => "Регистрационното съгласие е задължително поле.", + "csv_import_failed" => "Вносът от CSV не бе успешен", + "csv_import_nodata_wrongformat" => "Каченият файл няма данни или е неправилно форматиран.", + "csv_import_partially_failed" => "Вносът на клиента е успешен с няколко грешки:", + "csv_import_success" => "Вносът на клиенти е успешен.", + "customer" => "Клиент", + "date" => "Дата", + "discount" => "Отстъпка", + "discount_fixed" => "Фиксирана отстъпка", + "discount_percent" => "Процент отстъпка", + "discount_type" => "Вид отстъпка", + "email_duplicate" => "Имейл адресът вече е в базата данни.", + "employee" => "Служител", + "error_adding_updating" => "Добавянето или актуализирането на клиента е неуспешно.", + "import_items_csv" => "Импортиране на клиент от CSV", + "mailchimp_activity_click" => "Email click", + "mailchimp_activity_lastopen" => "Последно отворен Имейл", + "mailchimp_activity_open" => "Имейлът е отворен", + "mailchimp_activity_total" => "Имейлът е изпратен", + "mailchimp_activity_unopen" => "Имейлът е неотворен", + "mailchimp_email_client" => "Имейл клиент", + "mailchimp_info" => "Mailchimp (Услуга)", + "mailchimp_member_rating" => "Оценка", + "mailchimp_status" => "Статус", + "mailchimp_vip" => "VIP", + "max" => "Максимално похарчени", + "min" => "Минимално похарчено", + "new" => "Нов клиент", + "none_selected" => "Не сте избрали клиент (и), който да изтриете.", + "one_or_multiple" => "Клиент(ти)", + "quantity" => "Количество", + "stats_info" => "Статус", + "successful_adding" => "Успешно добавихте клиент", + "successful_deleted" => "Вие успешно сте изтрили", + "successful_updating" => "Актуализирахте успешно клиента си", + "tax_code" => "Данъчен код", + "tax_id" => "Данъчен номер", + "taxable" => "Облагаем", + "total" => "Общо изразходвани средства", + "update" => "Актуализиране на клиента", + "rewards_package" => "Пакетни награди", ]; diff --git a/app/Language/bg/Datepicker.php b/app/Language/bg/Datepicker.php index 222a616d2..3ce895ebb 100644 --- a/app/Language/bg/Datepicker.php +++ b/app/Language/bg/Datepicker.php @@ -1,23 +1,23 @@ "All Time", - "apply" => "Apply", - "cancel" => "Cancel", - "custom" => "Custom", - "from" => "From", - "last_30" => "Last 30 Days", - "last_7" => "Last 7 Days", - "last_financial_year" => "Last Fiscal Year", - "last_month" => "Last Month", - "last_year" => "Last Year", - "same_month_last_year" => "Same Month Last Year", - "same_month_to_same_day_last_year" => "Same Month To Same Day Last Year", - "this_financial_year" => "Current Fiscal Year", - "this_month" => "Current Month", - "this_year" => "Current Year", - "to" => "To", - "today" => "Today", - "today_last_year" => "Today Last Year", - "weekstart" => "0", - "yesterday" => "Yesterday", + "all_time" => "All Time", + "apply" => "Apply", + "cancel" => "Cancel", + "custom" => "Custom", + "from" => "From", + "last_30" => "Last 30 Days", + "last_7" => "Last 7 Days", + "last_financial_year" => "Last Fiscal Year", + "last_month" => "Last Month", + "last_year" => "Last Year", + "same_month_last_year" => "Same Month Last Year", + "same_month_to_same_day_last_year" => "Same Month To Same Day Last Year", + "this_financial_year" => "Current Fiscal Year", + "this_month" => "Current Month", + "this_year" => "Current Year", + "to" => "To", + "today" => "Today", + "today_last_year" => "Today Last Year", + "weekstart" => "0", + "yesterday" => "Yesterday", ]; diff --git a/app/Language/bg/Employees.php b/app/Language/bg/Employees.php index c0c2ffd6c..f3c82d1b6 100644 --- a/app/Language/bg/Employees.php +++ b/app/Language/bg/Employees.php @@ -1,44 +1,44 @@ "", - "basic_information" => "Информация", - "cannot_be_deleted" => "Невъзможно е да изтриете избрани служители, един или повече от тях са обработили продажби или се опитвате да изтриете профила си.", - "change_employee" => "", - "change_password" => "Промяна на паролата", - "clerk" => "", - "commission" => "", - "confirm_delete" => "Наистина ли искате да изтриете избрания служител (и)?", - "confirm_restore" => "Наистина ли искате да възстановите избраните служители?", - "current_password" => "Настояща парола", - "current_password_invalid" => "Текущата парола е невалидна.", - "employee" => "Служител", - "error_adding_updating" => "Добавянето или актуализирането на служителите е неуспешно.", - "error_deleting_demo_admin" => "Не може да изтриете Пробният Администратор.", - "error_updating_demo_admin" => "Не може да промените Пробният Администратор.", - "language" => "Език", - "login_info" => "Login", - "manager" => "", - "new" => "Нов служител", - "none_selected" => "Не сте избрали служител (и), който да изтриете.", - "one_or_multiple" => "служител (и)", - "password" => "Password", - "password_minlength" => "Паролата трябва да е с дължина най-малко 8 знака.", - "password_must_match" => "Паролите не съвпадат.", - "password_not_must_match" => "Текущата парола и новата парола трябва да са уникални.", - "password_required" => "Изисква се парола.", - "permission_desc" => "Поставете отметка в квадратчетата по-долу, за да получите достъп до модулите.", - "permission_info" => "Разрешения", - "repeat_password" => "Паролата отново", - "subpermission_required" => "Добавете поне един грант за всеки модул.", - "successful_adding" => "Служителя е добавен успешно.", - "successful_change_password" => "Промяна на паролата е успешна.", - "successful_deleted" => "Вие успешно сте изтрили", - "successful_updating" => "Успешно сте актуализирали служител", - "system_language" => "Системен език", - "unsuccessful_change_password" => "Промяната на паролата се провали.", - "update" => "Актуализиране на служителя", - "username" => "Потребител", - "username_duplicate" => "", - "username_minlength" => "Потребителското име трябва да е с дължина най-малко 5 знака.", - "username_required" => "Потребителското име е задължително поле.", + "administrator" => "", + "basic_information" => "Информация", + "cannot_be_deleted" => "Невъзможно е да изтриете избрани служители, един или повече от тях са обработили продажби или се опитвате да изтриете профила си.", + "change_employee" => "", + "change_password" => "Промяна на паролата", + "clerk" => "", + "commission" => "", + "confirm_delete" => "Наистина ли искате да изтриете избрания служител (и)?", + "confirm_restore" => "Наистина ли искате да възстановите избраните служители?", + "current_password" => "Настояща парола", + "current_password_invalid" => "Текущата парола е невалидна.", + "employee" => "Служител", + "error_adding_updating" => "Добавянето или актуализирането на служителите е неуспешно.", + "error_deleting_demo_admin" => "Не може да изтриете Пробният Администратор.", + "error_updating_demo_admin" => "Не може да промените Пробният Администратор.", + "language" => "Език", + "login_info" => "Login", + "manager" => "", + "new" => "Нов служител", + "none_selected" => "Не сте избрали служител (и), който да изтриете.", + "one_or_multiple" => "служител (и)", + "password" => "Password", + "password_minlength" => "Паролата трябва да е с дължина най-малко 8 знака.", + "password_must_match" => "Паролите не съвпадат.", + "password_not_must_match" => "Текущата парола и новата парола трябва да са уникални.", + "password_required" => "Изисква се парола.", + "permission_desc" => "Поставете отметка в квадратчетата по-долу, за да получите достъп до модулите.", + "permission_info" => "Разрешения", + "repeat_password" => "Паролата отново", + "subpermission_required" => "Добавете поне един грант за всеки модул.", + "successful_adding" => "Служителя е добавен успешно.", + "successful_change_password" => "Промяна на паролата е успешна.", + "successful_deleted" => "Вие успешно сте изтрили", + "successful_updating" => "Успешно сте актуализирали служител", + "system_language" => "Системен език", + "unsuccessful_change_password" => "Промяната на паролата се провали.", + "update" => "Актуализиране на служителя", + "username" => "Потребител", + "username_duplicate" => "", + "username_minlength" => "Потребителското име трябва да е с дължина най-малко 5 знака.", + "username_required" => "Потребителското име е задължително поле.", ]; diff --git a/app/Language/bg/Enum.php b/app/Language/bg/Enum.php index 6189977b6..5068622a4 100644 --- a/app/Language/bg/Enum.php +++ b/app/Language/bg/Enum.php @@ -1,10 +1,10 @@ "Half Down", - "half_even" => "Half Even", - "half_five" => "Half Five", - "half_odd" => "Half Odd", - "half_up" => "Half Up", - "round_down" => "Round Down", - "round_up" => "Round Up", + "half_down" => "Half Down", + "half_even" => "Half Even", + "half_five" => "Half Five", + "half_odd" => "Half Odd", + "half_up" => "Half Up", + "round_down" => "Round Down", + "round_up" => "Round Up", ]; diff --git a/app/Language/bg/Error.php b/app/Language/bg/Error.php index 2b169d217..d969ad9b3 100644 --- a/app/Language/bg/Error.php +++ b/app/Language/bg/Error.php @@ -1,5 +1,5 @@ "Нямате разрешение за достъп до модула с име", - "unknown" => "Неизвестна грешка", + "no_permission_module" => "Нямате разрешение за достъп до модула с име", + "unknown" => "Неизвестна грешка", ]; diff --git a/app/Language/bg/Expenses.php b/app/Language/bg/Expenses.php index d5c0d4170..d3910397f 100644 --- a/app/Language/bg/Expenses.php +++ b/app/Language/bg/Expenses.php @@ -1,50 +1,50 @@ "Add Expense", - "amount" => "Amount", - "amount_number" => "Amount must be a number", - "amount_required" => "Expense Amount required", - "by_category" => "Category", - "cannot_be_deleted" => "Could not delete Category Expense(s)", - "cash" => "Cash", - "cash_filter" => "Cash", - "categories_name" => "Category", - "category_required" => "category is a required field", - "check" => "Check", - "check_filter" => "Check", - "confirm_delete" => "Are you sure you want to delete the selected Expense?", - "confirm_restore" => "", - "credit" => "Credit Card", - "credit_filter" => "Credit Card", - "date" => "Date", - "date_number" => "date must be a number", - "date_required" => "date is a required field", - "debit" => "Debit Card", - "debit_filter" => "Debit Card", - "description" => "Description", - "due" => "Due", - "due_filter" => "Due", - "employee" => "Created By", - "error_adding_updating" => "Error adding/updating Expense", - "expense_id" => "Id", - "expenses_employee" => "Employee", - "info" => "Expense Info", - "ip_address" => "", - "is_deleted" => "Deleted", - "name_required" => "Expense Name required", - "new" => "New Expense", - "new_supplier" => "", - "no_expenses_to_display" => "There are no Expenses to display", - "none_selected" => "You have not selected any Expense", - "one_or_multiple" => "Expense(s)", - "payment" => "Payment Type", - "start_typing_supplier_name" => "", - "successful_adding" => "Expense add successful", - "successful_deleted" => "Expense delete successful", - "successful_updating" => "Expense update successful", - "supplier_name" => "Supplier", - "supplier_tax_code" => "Tax Code", - "tax_amount" => "Tax", - "tax_amount_number" => "", - "update" => "Update Expense", + "add_item" => "Add Expense", + "amount" => "Amount", + "amount_number" => "Amount must be a number", + "amount_required" => "Expense Amount required", + "by_category" => "Category", + "cannot_be_deleted" => "Could not delete Category Expense(s)", + "cash" => "Cash", + "cash_filter" => "Cash", + "categories_name" => "Category", + "category_required" => "category is a required field", + "check" => "Check", + "check_filter" => "Check", + "confirm_delete" => "Are you sure you want to delete the selected Expense?", + "confirm_restore" => "", + "credit" => "Credit Card", + "credit_filter" => "Credit Card", + "date" => "Date", + "date_number" => "date must be a number", + "date_required" => "date is a required field", + "debit" => "Debit Card", + "debit_filter" => "Debit Card", + "description" => "Description", + "due" => "Due", + "due_filter" => "Due", + "employee" => "Created By", + "error_adding_updating" => "Error adding/updating Expense", + "expense_id" => "Id", + "expenses_employee" => "Employee", + "info" => "Expense Info", + "ip_address" => "", + "is_deleted" => "Deleted", + "name_required" => "Expense Name required", + "new" => "New Expense", + "new_supplier" => "", + "no_expenses_to_display" => "There are no Expenses to display", + "none_selected" => "You have not selected any Expense", + "one_or_multiple" => "Expense(s)", + "payment" => "Payment Type", + "start_typing_supplier_name" => "", + "successful_adding" => "Expense add successful", + "successful_deleted" => "Expense delete successful", + "successful_updating" => "Expense update successful", + "supplier_name" => "Supplier", + "supplier_tax_code" => "Tax Code", + "tax_amount" => "Tax", + "tax_amount_number" => "", + "update" => "Update Expense", ]; diff --git a/app/Language/bg/Expenses_categories.php b/app/Language/bg/Expenses_categories.php index 87ec843ab..c4e9be902 100644 --- a/app/Language/bg/Expenses_categories.php +++ b/app/Language/bg/Expenses_categories.php @@ -1,22 +1,22 @@ "Expense Category name required", - "add_item" => "Add Category", - "cannot_be_deleted" => "Could not delete Category Expense(s)", - "category_id" => "Id", - "confirm_delete" => "Are you sure you want to delete the selected Expense Category?", - "confirm_restore" => "", - "description" => "Category Description", - "error_adding_updating" => "Error adding/updating Expense Category", - "info" => "Category Expense Info", - "name" => "Category Name", - "new" => "New Category", - "no_expenses_categories_to_display" => "No Category to display", - "none_selected" => "You have not selected any Category Expense", - "one_or_multiple" => "Category Expense", - "quantity" => "Quantity", - "successful_adding" => "Expense Category add successful", - "successful_deleted" => "Expense Category delete successful", - "successful_updating" => "Expense Category update successful", - "update" => "Update Category", + "category_name_required" => "Expense Category name required", + "add_item" => "Add Category", + "cannot_be_deleted" => "Could not delete Category Expense(s)", + "category_id" => "Id", + "confirm_delete" => "Are you sure you want to delete the selected Expense Category?", + "confirm_restore" => "", + "description" => "Category Description", + "error_adding_updating" => "Error adding/updating Expense Category", + "info" => "Category Expense Info", + "name" => "Category Name", + "new" => "New Category", + "no_expenses_categories_to_display" => "No Category to display", + "none_selected" => "You have not selected any Category Expense", + "one_or_multiple" => "Category Expense", + "quantity" => "Quantity", + "successful_adding" => "Expense Category add successful", + "successful_deleted" => "Expense Category delete successful", + "successful_updating" => "Expense Category update successful", + "update" => "Update Category", ]; diff --git a/app/Language/bg/Giftcards.php b/app/Language/bg/Giftcards.php index a99855b92..7b37589ff 100644 --- a/app/Language/bg/Giftcards.php +++ b/app/Language/bg/Giftcards.php @@ -1,71 +1,71 @@ "Inventory to add or subtract.", - "allow_alt_description" => "Allow Alternate Description", - "bulk_edit" => "Bulk Edit", - "cannot_be_deleted" => "Could not delete selected Gift Card(s), one or more of the selected Gift Cards has sales.", - "cannot_find_giftcard" => "Gift Card not found.", - "cannot_use" => "Gift Card {0} cannot be used for this sale: invalid Customer.", - "card_value" => "Value", - "category" => "Category", - "change_all_to_allow_alt_desc" => "Allow alternate description for all.", - "change_all_to_not_allow_allow_desc" => "Do not allow alternate description for all.", - "change_all_to_serialized" => "Change All To Serialized", - "change_all_to_unserialized" => "Change All To Unserialized", - "confirm_bulk_edit" => "Are you sure you want to edit the selected Gift Card(s)?", - "confirm_delete" => "Are you sure you want to delete the selected Gift Card(s)?", - "confirm_restore" => "", - "cost_price" => "Wholesale Price", - "count" => "Update Inventory", - "csv_import_failed" => "CSV import failed.", - "current_quantity" => "Current Quantity", - "description" => "Description", - "details_count" => "Inventory Count Details", - "do_nothing" => "Do Nothing", - "edit_fields_you_want_to_update" => "Edit desired fields for selected Gift Card(s).", - "edit_multiple_giftcards" => "Edit Multiple Gift Cards.", - "error_adding_updating" => "Gift Card add or update failed.", - "error_updating_multiple" => "Gift Card(s) update failed.", - "generate_barcodes" => "Generate Barcodes", - "giftcard" => "Gift Card", - "giftcard_number" => "Gift Card Number", - "info_provided_by" => "Info provided by", - "inventory_comments" => "Comments", - "is_serialized" => "Gift Card has Serial Number", - "low_inventory_giftcards" => "Low Inventory Gift Cards", - "manually_editing_of_quantity" => "Manual Edit of Quantity", - "must_select_giftcard_for_barcode" => "You must select at least one (1) Gift Card to generate barcodes.", - "new" => "New Gift Card", - "no_description_giftcards" => "No Description Gift Cards", - "no_giftcards_to_display" => "No Gift Cards to display.", - "none" => "None", - "none_selected" => "No Gift Card(s) selected to edit.", - "number" => "Gift Card Number must be a number.", - "number_information" => "Gift Card Number", - "number_required" => "Gift Card Number is a required field.", - "one_or_multiple" => "Gift Card(s)", - "person_id" => "Customer", - "quantity" => "Quantity", - "quantity_required" => "Quantity is a required field. Please close (X) to cancel.", - "remaining_balance" => "Gift Card {0} remaining value is {1}!", - "reorder_level" => "Reorder Level", - "retrive_giftcard_info" => "Retrieve Gift Card Info", - "sales_tax_1" => "Sales Tax", - "sales_tax_2" => "Sales Tax 2", - "serialized_giftcards" => "Serialized Gift Cards", - "successful_adding" => "You have successfully added Gift Card", - "successful_bulk_edit" => "You have successfully updated the selected Gift Card(s)", - "successful_deleted" => "You have successfully deleted", - "successful_updating" => "You have successfully updated Gift Card", - "supplier" => "Supplier", - "tax_1" => "Tax 1", - "tax_2" => "Tax 2", - "tax_percent" => "Tax Percent", - "tax_percents" => "Tax Percent(s)", - "unit_price" => "Retail Value", - "upc_database" => "Barcode Database", - "update" => "Update Gift Card", - "use_inventory_menu" => "Use Inventory Menu", - "value" => "Gift Card Value must be a number.", - "value_required" => "Gift Card Value is a required field.", + "add_minus" => "Inventory to add or subtract.", + "allow_alt_description" => "Allow Alternate Description", + "bulk_edit" => "Bulk Edit", + "cannot_be_deleted" => "Could not delete selected Gift Card(s), one or more of the selected Gift Cards has sales.", + "cannot_find_giftcard" => "Gift Card not found.", + "cannot_use" => "Gift Card {0} cannot be used for this sale: invalid Customer.", + "card_value" => "Value", + "category" => "Category", + "change_all_to_allow_alt_desc" => "Allow alternate description for all.", + "change_all_to_not_allow_allow_desc" => "Do not allow alternate description for all.", + "change_all_to_serialized" => "Change All To Serialized", + "change_all_to_unserialized" => "Change All To Unserialized", + "confirm_bulk_edit" => "Are you sure you want to edit the selected Gift Card(s)?", + "confirm_delete" => "Are you sure you want to delete the selected Gift Card(s)?", + "confirm_restore" => "", + "cost_price" => "Wholesale Price", + "count" => "Update Inventory", + "csv_import_failed" => "CSV import failed.", + "current_quantity" => "Current Quantity", + "description" => "Description", + "details_count" => "Inventory Count Details", + "do_nothing" => "Do Nothing", + "edit_fields_you_want_to_update" => "Edit desired fields for selected Gift Card(s).", + "edit_multiple_giftcards" => "Edit Multiple Gift Cards.", + "error_adding_updating" => "Gift Card add or update failed.", + "error_updating_multiple" => "Gift Card(s) update failed.", + "generate_barcodes" => "Generate Barcodes", + "giftcard" => "Gift Card", + "giftcard_number" => "Gift Card Number", + "info_provided_by" => "Info provided by", + "inventory_comments" => "Comments", + "is_serialized" => "Gift Card has Serial Number", + "low_inventory_giftcards" => "Low Inventory Gift Cards", + "manually_editing_of_quantity" => "Manual Edit of Quantity", + "must_select_giftcard_for_barcode" => "You must select at least one (1) Gift Card to generate barcodes.", + "new" => "New Gift Card", + "no_description_giftcards" => "No Description Gift Cards", + "no_giftcards_to_display" => "No Gift Cards to display.", + "none" => "None", + "none_selected" => "No Gift Card(s) selected to edit.", + "number" => "Gift Card Number must be a number.", + "number_information" => "Gift Card Number", + "number_required" => "Gift Card Number is a required field.", + "one_or_multiple" => "Gift Card(s)", + "person_id" => "Customer", + "quantity" => "Quantity", + "quantity_required" => "Quantity is a required field. Please close (X) to cancel.", + "remaining_balance" => "Gift Card {0} remaining value is {1}!", + "reorder_level" => "Reorder Level", + "retrive_giftcard_info" => "Retrieve Gift Card Info", + "sales_tax_1" => "Sales Tax", + "sales_tax_2" => "Sales Tax 2", + "serialized_giftcards" => "Serialized Gift Cards", + "successful_adding" => "You have successfully added Gift Card", + "successful_bulk_edit" => "You have successfully updated the selected Gift Card(s)", + "successful_deleted" => "You have successfully deleted", + "successful_updating" => "You have successfully updated Gift Card", + "supplier" => "Supplier", + "tax_1" => "Tax 1", + "tax_2" => "Tax 2", + "tax_percent" => "Tax Percent", + "tax_percents" => "Tax Percent(s)", + "unit_price" => "Retail Value", + "upc_database" => "Barcode Database", + "update" => "Update Gift Card", + "use_inventory_menu" => "Use Inventory Menu", + "value" => "Gift Card Value must be a number.", + "value_required" => "Gift Card Value is a required field.", ]; diff --git a/app/Language/bg/Item_kits.php b/app/Language/bg/Item_kits.php index b7c9ee07b..a7b0486d4 100644 --- a/app/Language/bg/Item_kits.php +++ b/app/Language/bg/Item_kits.php @@ -1,41 +1,41 @@ "Add Item", - "all" => "All", - "cannot_be_deleted" => "Item Kit(s) delete failed.", - "confirm_delete" => "Are you sure you want to delete the selected Item Kit(s)?", - "confirm_restore" => "", - "description" => "Item Kit Description", - "discount" => "", - "discount_fixed" => "", - "discount_percent" => "Discount Percent", - "discount_type" => "", - "error_adding_updating" => "Item Kit add or update failed.", - "find_kit_item" => "Kit Item", - "info" => "Item Kit Info", - "item" => "Item", - "item_kit_number" => "", - "item_kit_number_duplicate" => "", - "item_number" => "", - "item_number_duplicate" => "", - "items" => "Items", - "kit" => "Kit ID", - "kit_and_components" => "Kit and Components", - "kit_and_stock" => "Kit and Stock", - "kit_only" => "Kit Only", - "name" => "Item Kit Name", - "new" => "New Item Kit", - "no_item_kits_to_display" => "No Item Kits to display.", - "none_selected" => "You have not selected any Item Kits.", - "one_or_multiple" => "Item Kit(s)", - "price_option" => "Price Option", - "priced_only" => "Priced Only", - "print_option" => "Print Option", - "quantity" => "Quantity", - "sequence" => "Sequence", - "successful_adding" => "You have successfully added Item Kit", - "successful_deleted" => "You have successfully deleted", - "successful_updating" => "You have successfully updated Item Kit", - "unit_price" => "", - "update" => "Update Item Kit", + "add_item" => "Add Item", + "all" => "All", + "cannot_be_deleted" => "Item Kit(s) delete failed.", + "confirm_delete" => "Are you sure you want to delete the selected Item Kit(s)?", + "confirm_restore" => "", + "description" => "Item Kit Description", + "discount" => "", + "discount_fixed" => "", + "discount_percent" => "Discount Percent", + "discount_type" => "", + "error_adding_updating" => "Item Kit add or update failed.", + "find_kit_item" => "Kit Item", + "info" => "Item Kit Info", + "item" => "Item", + "item_kit_number" => "", + "item_kit_number_duplicate" => "", + "item_number" => "", + "item_number_duplicate" => "", + "items" => "Items", + "kit" => "Kit ID", + "kit_and_components" => "Kit and Components", + "kit_and_stock" => "Kit and Stock", + "kit_only" => "Kit Only", + "name" => "Item Kit Name", + "new" => "New Item Kit", + "no_item_kits_to_display" => "No Item Kits to display.", + "none_selected" => "You have not selected any Item Kits.", + "one_or_multiple" => "Item Kit(s)", + "price_option" => "Price Option", + "priced_only" => "Priced Only", + "print_option" => "Print Option", + "quantity" => "Quantity", + "sequence" => "Sequence", + "successful_adding" => "You have successfully added Item Kit", + "successful_deleted" => "You have successfully deleted", + "successful_updating" => "You have successfully updated Item Kit", + "unit_price" => "", + "update" => "Update Item Kit", ]; diff --git a/app/Language/bg/Items.php b/app/Language/bg/Items.php index affeea428..93f38e876 100644 --- a/app/Language/bg/Items.php +++ b/app/Language/bg/Items.php @@ -1,120 +1,120 @@ "Inventory to add or subtract.", - "allow_alt_description" => "Allow Alternate Description", - "amount_entry" => "", - "bulk_edit" => "Bulk Edit", - "buy_price_required" => "Purchase Price is a required field.", - "cannot_be_deleted" => "Could not delete selected Item(s), one or more of the selected Items have sales.", - "cannot_find_item" => "Item not found.", - "categories" => "", - "category" => "Category", - "category_new" => "", - "category_required" => "Category is a required field.", - "change_all_to_allow_alt_desc" => "Allow Alternate Description for all.", - "change_all_to_not_allow_allow_desc" => "Do not allow Alternate Description for all.", - "change_all_to_serialized" => "Change all to Serialized", - "change_all_to_unserialized" => "Change all to Unserialized", - "change_image" => "Change Image", - "confirm_bulk_edit" => "Are you sure you want to edit selected Item(s)?", - "confirm_bulk_edit_wipe_taxes" => "All Item Tax information will be replaced.", - "confirm_delete" => "Are you sure you want to delete selected item(s)?", - "confirm_restore" => "", - "cost_price" => "Wholesale Price", - "cost_price_number" => "Wholesale Price must be a number.", - "cost_price_required" => "Wholesale Price is a required field.", - "count" => "Update Inventory", - "csv_import_failed" => "CSV import failed", - "csv_import_nodata_wrongformat" => "The uploaded file has no data or is formatted incorrectly.", - "csv_import_partially_failed" => "Item import successful with some failures:", - "csv_import_success" => "Item import successful.", - "current_quantity" => "Current Quantity", - "default_pack_name" => "", - "description" => "Description", - "details_count" => "Inventory Count Details", - "do_nothing" => "Do Nothing", - "edit" => "", - "edit_fields_you_want_to_update" => "Edit the desired fields for selected item(s).", - "edit_multiple_items" => "Editing Multiple Items", - "empty_upc_items" => "Empty Barcode Items", - "error_adding_updating" => "Error adding/updating item", - "error_updating_multiple" => "Error updating items", - "generate_barcodes" => "Generate Barcodes", - "hsn_code" => "", - "image" => "Avatar", - "import_items_csv" => "Item Import from CSV", - "info_provided_by" => "Information provided by", - "inventory" => "Inventory", - "inventory_CSV_import_quantity" => "", - "inventory_comments" => "Comments", - "inventory_data_tracking" => "Inventory Data Tracking", - "inventory_date" => "Date", - "inventory_employee" => "Employee", - "inventory_in_out_quantity" => "In/Out Quantity", - "inventory_remarks" => "Remarks", - "is_deleted" => "Deleted", - "is_printed" => "", - "is_serialized" => "Item has Serial Number", - "item" => "Item", - "item_id" => "", - "item_number" => "Barcode", - "item_number_duplicate" => "Item Number is already present in the database.", - "kit" => "Kit", - "location" => "Location", - "low_inventory_items" => "Out Of Stock Items", - "low_sell_item" => "", - "manually_editing_of_quantity" => "Manual Edit of Quantity", - "markup" => "", - "name" => "Item Name", - "name_required" => "Item Name is a required field.", - "new" => "New Item", - "no_description_items" => "No Description Items", - "no_items_to_display" => "No Items to display.", - "none" => "None", - "none_selected" => "You have not selected any Item(s) to edit", - "nonstock" => "Non-stocked", - "number_information" => "Item Number", - "number_required" => "Barcode is a required field.", - "one_or_multiple" => "item(s)", - "pack_name" => "", - "qty_per_pack" => "", - "quantity" => "Quantity", - "quantity_number" => "Quantity must be a number.", - "quantity_required" => "Quantity is a required field.", - "receiving_quantity" => "Receiving Quantity", - "remove_image" => "Remove Image", - "reorder_level" => "Reorder Level", - "reorder_level_number" => "Reorder Level must be a number.", - "reorder_level_required" => "Reorder Level is a required field.", - "retrive_item_info" => "Retrive Item Info", - "sales_tax_1" => "Sales Tax", - "sales_tax_2" => "Sales Tax 2", - "search_attributes" => "Search Attributes", - "select_image" => "Select Image", - "serialized_items" => "Serialized Items", - "standard" => "Standard", - "stock" => "Stock", - "stock_location" => "Stock location", - "stock_type" => "Stock Type", - "successful_adding" => "You have successfully added item", - "successful_bulk_edit" => "You have successfully updated the selected item(s)", - "successful_deleted" => "You have successfully deleted", - "successful_updating" => "You have successfully updated item", - "supplier" => "Supplier", - "tax_1" => "Tax 1", - "tax_2" => "Tax 2", - "tax_3" => "", - "tax_category" => "", - "tax_percent" => "Tax Percent", - "tax_percent_number" => "", - "tax_percent_required" => "Tax Percent is a required field.", - "tax_percents" => "Tax Percent(s)", - "temp" => "", - "type" => "Item Type", - "unit_price" => "Retail Price", - "unit_price_number" => "Unit price must be a number.", - "unit_price_required" => "Retail Price is a required field.", - "upc_database" => "Barcode Database", - "update" => "Update Item", - "use_inventory_menu" => "Use Inventory Menu", + "add_minus" => "Inventory to add or subtract.", + "allow_alt_description" => "Allow Alternate Description", + "amount_entry" => "", + "bulk_edit" => "Bulk Edit", + "buy_price_required" => "Purchase Price is a required field.", + "cannot_be_deleted" => "Could not delete selected Item(s), one or more of the selected Items have sales.", + "cannot_find_item" => "Item not found.", + "categories" => "", + "category" => "Category", + "category_new" => "", + "category_required" => "Category is a required field.", + "change_all_to_allow_alt_desc" => "Allow Alternate Description for all.", + "change_all_to_not_allow_allow_desc" => "Do not allow Alternate Description for all.", + "change_all_to_serialized" => "Change all to Serialized", + "change_all_to_unserialized" => "Change all to Unserialized", + "change_image" => "Change Image", + "confirm_bulk_edit" => "Are you sure you want to edit selected Item(s)?", + "confirm_bulk_edit_wipe_taxes" => "All Item Tax information will be replaced.", + "confirm_delete" => "Are you sure you want to delete selected item(s)?", + "confirm_restore" => "", + "cost_price" => "Wholesale Price", + "cost_price_number" => "Wholesale Price must be a number.", + "cost_price_required" => "Wholesale Price is a required field.", + "count" => "Update Inventory", + "csv_import_failed" => "CSV import failed", + "csv_import_nodata_wrongformat" => "The uploaded file has no data or is formatted incorrectly.", + "csv_import_partially_failed" => "Item import successful with some failures:", + "csv_import_success" => "Item import successful.", + "current_quantity" => "Current Quantity", + "default_pack_name" => "", + "description" => "Description", + "details_count" => "Inventory Count Details", + "do_nothing" => "Do Nothing", + "edit" => "", + "edit_fields_you_want_to_update" => "Edit the desired fields for selected item(s).", + "edit_multiple_items" => "Editing Multiple Items", + "empty_upc_items" => "Empty Barcode Items", + "error_adding_updating" => "Error adding/updating item", + "error_updating_multiple" => "Error updating items", + "generate_barcodes" => "Generate Barcodes", + "hsn_code" => "", + "image" => "Avatar", + "import_items_csv" => "Item Import from CSV", + "info_provided_by" => "Information provided by", + "inventory" => "Inventory", + "inventory_CSV_import_quantity" => "", + "inventory_comments" => "Comments", + "inventory_data_tracking" => "Inventory Data Tracking", + "inventory_date" => "Date", + "inventory_employee" => "Employee", + "inventory_in_out_quantity" => "In/Out Quantity", + "inventory_remarks" => "Remarks", + "is_deleted" => "Deleted", + "is_printed" => "", + "is_serialized" => "Item has Serial Number", + "item" => "Item", + "item_id" => "", + "item_number" => "Barcode", + "item_number_duplicate" => "Item Number is already present in the database.", + "kit" => "Kit", + "location" => "Location", + "low_inventory_items" => "Out Of Stock Items", + "low_sell_item" => "", + "manually_editing_of_quantity" => "Manual Edit of Quantity", + "markup" => "", + "name" => "Item Name", + "name_required" => "Item Name is a required field.", + "new" => "New Item", + "no_description_items" => "No Description Items", + "no_items_to_display" => "No Items to display.", + "none" => "None", + "none_selected" => "You have not selected any Item(s) to edit", + "nonstock" => "Non-stocked", + "number_information" => "Item Number", + "number_required" => "Barcode is a required field.", + "one_or_multiple" => "item(s)", + "pack_name" => "", + "qty_per_pack" => "", + "quantity" => "Quantity", + "quantity_number" => "Quantity must be a number.", + "quantity_required" => "Quantity is a required field.", + "receiving_quantity" => "Receiving Quantity", + "remove_image" => "Remove Image", + "reorder_level" => "Reorder Level", + "reorder_level_number" => "Reorder Level must be a number.", + "reorder_level_required" => "Reorder Level is a required field.", + "retrive_item_info" => "Retrive Item Info", + "sales_tax_1" => "Sales Tax", + "sales_tax_2" => "Sales Tax 2", + "search_attributes" => "Search Attributes", + "select_image" => "Select Image", + "serialized_items" => "Serialized Items", + "standard" => "Standard", + "stock" => "Stock", + "stock_location" => "Stock location", + "stock_type" => "Stock Type", + "successful_adding" => "You have successfully added item", + "successful_bulk_edit" => "You have successfully updated the selected item(s)", + "successful_deleted" => "You have successfully deleted", + "successful_updating" => "You have successfully updated item", + "supplier" => "Supplier", + "tax_1" => "Tax 1", + "tax_2" => "Tax 2", + "tax_3" => "", + "tax_category" => "", + "tax_percent" => "Tax Percent", + "tax_percent_number" => "", + "tax_percent_required" => "Tax Percent is a required field.", + "tax_percents" => "Tax Percent(s)", + "temp" => "", + "type" => "Item Type", + "unit_price" => "Retail Price", + "unit_price_number" => "Unit price must be a number.", + "unit_price_required" => "Retail Price is a required field.", + "upc_database" => "Barcode Database", + "update" => "Update Item", + "use_inventory_menu" => "Use Inventory Menu", ]; diff --git a/app/Language/bg/Login.php b/app/Language/bg/Login.php index 6e5771e3d..d6e85e157 100644 --- a/app/Language/bg/Login.php +++ b/app/Language/bg/Login.php @@ -1,15 +1,15 @@ "Не съм робот.", - "go" => "Go", - "invalid_gcaptcha" => "Invalid I'm not a robot.", - "invalid_installation" => "The installation is not correct, check your php.ini file.", - "invalid_username_and_password" => "Invalid Username or Password.", - "login" => "Login", - "logout" => "", - "migration_needed" => "", - "password" => "Password", - "required_username" => "", - "username" => "Username", - "welcome" => "", + "gcaptcha" => "Не съм робот.", + "go" => "Go", + "invalid_gcaptcha" => "Invalid I'm not a robot.", + "invalid_installation" => "The installation is not correct, check your php.ini file.", + "invalid_username_and_password" => "Invalid Username or Password.", + "login" => "Login", + "logout" => "", + "migration_needed" => "", + "password" => "Password", + "required_username" => "", + "username" => "Username", + "welcome" => "", ]; diff --git a/app/Language/bg/Messages.php b/app/Language/bg/Messages.php index dabf5733c..eb254d6dd 100644 --- a/app/Language/bg/Messages.php +++ b/app/Language/bg/Messages.php @@ -1,15 +1,15 @@ "First name", - "last_name" => "Last name", - "message" => "Message", - "message_placeholder" => "Your Message here...", - "message_required" => "Message required", - "multiple_phones" => "(In case of multiple recipients, enter mobile numbers separated by commas)", - "phone" => "Phone number", - "phone_number_required" => "Phone number required", - "phone_placeholder" => "Mobile Number(s) here...", - "sms_send" => "Send SMS", - "successfully_sent" => "Message successfully sent to: ", - "unsuccessfully_sent" => "Message unsuccessfully sent to: ", + "first_name" => "First name", + "last_name" => "Last name", + "message" => "Message", + "message_placeholder" => "Your Message here...", + "message_required" => "Message required", + "multiple_phones" => "(In case of multiple recipients, enter mobile numbers separated by commas)", + "phone" => "Phone number", + "phone_number_required" => "Phone number required", + "phone_placeholder" => "Mobile Number(s) here...", + "sms_send" => "Send SMS", + "successfully_sent" => "Message successfully sent to: ", + "unsuccessfully_sent" => "Message unsuccessfully sent to: ", ]; diff --git a/app/Language/bg/Module.php b/app/Language/bg/Module.php index ff7129f05..dedc913d6 100644 --- a/app/Language/bg/Module.php +++ b/app/Language/bg/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "", - "attributes_desc" => "", - "both" => "Both", - "cashups" => "", - "cashups_desc" => "", - "config" => "Configuration", - "config_desc" => "Change OSPOS's Configuration.", - "customers" => "Customers", - "customers_desc" => "Add, Update, Delete, and Search Customers.", - "employees" => "Employees", - "employees_desc" => "Add, Update, Delete, and Search Employees.", - "expenses" => "Expenses", - "expenses_categories" => "Expenses Categories", - "expenses_categories_desc" => "Add, Update, and Delete Expenses Categories.", - "expenses_desc" => "Add, Update, Delete, and Search Expenses.", - "giftcards" => "Gift Cards", - "giftcards_desc" => "Add, Update, Delete and Search Gift Cards.", - "home" => "Home", - "home_desc" => "List home menu modules.", - "item_kits" => "Item Kits", - "item_kits_desc" => "Add, Update, Delete and Search Item Kits.", - "items" => "Items", - "items_desc" => "Add, Update, Delete, and Search Items.", - "messages" => "Messages", - "messages_desc" => "Send Messages to Customers, Suppliers and Employees.", - "migrate" => "Migrate", - "migrate_desc" => "Update the OSPOS Database.", - "office" => "Office", - "office_desc" => "List office menu modules.", - "receivings" => "Receivings", - "receivings_desc" => "Process Purchase Orders.", - "reports" => "Reports", - "reports_desc" => "View and generate Reports.", - "sales" => "Sales", - "sales_desc" => "Process Sales and Returns.", - "suppliers" => "Suppliers", - "suppliers_desc" => "Add, Update, Delete, and Search Suppliers.", - "taxes" => "Taxes", - "taxes_desc" => "Configure Sales Taxes.", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "", + "attributes_desc" => "", + "both" => "Both", + "cashups" => "", + "cashups_desc" => "", + "config" => "Configuration", + "config_desc" => "Change OSPOS's Configuration.", + "customers" => "Customers", + "customers_desc" => "Add, Update, Delete, and Search Customers.", + "employees" => "Employees", + "employees_desc" => "Add, Update, Delete, and Search Employees.", + "expenses" => "Expenses", + "expenses_categories" => "Expenses Categories", + "expenses_categories_desc" => "Add, Update, and Delete Expenses Categories.", + "expenses_desc" => "Add, Update, Delete, and Search Expenses.", + "giftcards" => "Gift Cards", + "giftcards_desc" => "Add, Update, Delete and Search Gift Cards.", + "home" => "Home", + "home_desc" => "List home menu modules.", + "item_kits" => "Item Kits", + "item_kits_desc" => "Add, Update, Delete and Search Item Kits.", + "items" => "Items", + "items_desc" => "Add, Update, Delete, and Search Items.", + "messages" => "Messages", + "messages_desc" => "Send Messages to Customers, Suppliers and Employees.", + "migrate" => "Migrate", + "migrate_desc" => "Update the OSPOS Database.", + "office" => "Office", + "office_desc" => "List office menu modules.", + "receivings" => "Receivings", + "receivings_desc" => "Process Purchase Orders.", + "reports" => "Reports", + "reports_desc" => "View and generate Reports.", + "sales" => "Sales", + "sales_desc" => "Process Sales and Returns.", + "suppliers" => "Suppliers", + "suppliers_desc" => "Add, Update, Delete, and Search Suppliers.", + "taxes" => "Taxes", + "taxes_desc" => "Configure Sales Taxes.", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/bg/Receivings.php b/app/Language/bg/Receivings.php index c3f8eacca..2869cdc96 100644 --- a/app/Language/bg/Receivings.php +++ b/app/Language/bg/Receivings.php @@ -1,58 +1,58 @@ "", - "cancel_receiving" => "Cancel", - "cannot_be_deleted" => "Receiving(s) delete failed.", - "comments" => "Comments", - "complete_receiving" => "Finish", - "confirm_cancel_receiving" => "Are you sure you want to clear this receiving? All items will cleared.", - "confirm_delete" => "Are you sure you want to delete this receiving? This action cannot be undone.", - "confirm_finish_receiving" => "Are you sure you want to submit this receiving? This cannot be undone.", - "confirm_restore" => "", - "cost" => "Cost", - "daily" => "", - "date" => "Receiving Date", - "date_required" => "A correct date must be entered.", - "date_type" => "Date is a required field.", - "delete_entire_sale" => "Delete Entire Sale", - "discount" => "Discount %", - "edit" => "Edit", - "edit_sale" => "Edit Receiving", - "employee" => "Employee", - "error_editing_item" => "Item edit failed.", - "error_requisition" => "Unable to move Inventory from or to the same Stock Location.", - "find_or_scan_item" => "Find or Scan Item", - "find_or_scan_item_or_receipt" => "Find or Scan Item or Receipt", - "id" => "Receiving ID", - "item_name" => "Item Name", - "mode" => "Receiving Mode", - "new_supplier" => "New Supplier", - "one_or_multiple" => "receiving(s)", - "print_after_sale" => "Print After Sale", - "quantity" => "Qty.", - "receipt" => "Receivings Receipt", - "receipt_number" => "Receiving #", - "receiving" => "Receive", - "reference" => "Reference", - "register" => "Items Receiving", - "requisition" => "Requisition", - "return" => "Return", - "select_supplier" => "Select Supplier (Optional)", - "ship_pack" => "", - "start_typing_supplier_name" => "Start Typing Supplier's name...", - "stock" => "", - "stock_destination" => "Stock Destination", - "stock_locaiton" => "Stock Location", - "stock_source" => "Stock Source", - "successfully_deleted" => "You have successfully deleted", - "successfully_updated" => "Receiving successfully updated", - "supplier" => "Supplier", - "supplier_address" => "Address", - "supplier_email" => "Email", - "supplier_location" => "Location", - "total" => "Total", - "transaction_failed" => "Receivings transaction(s) failed.", - "unable_to_add_item" => "Item add to Receiving failed.", - "unsuccessfully_updated" => "Receiving update failed.", - "update" => "Update", + "amount_due" => "", + "cancel_receiving" => "Cancel", + "cannot_be_deleted" => "Receiving(s) delete failed.", + "comments" => "Comments", + "complete_receiving" => "Finish", + "confirm_cancel_receiving" => "Are you sure you want to clear this receiving? All items will cleared.", + "confirm_delete" => "Are you sure you want to delete this receiving? This action cannot be undone.", + "confirm_finish_receiving" => "Are you sure you want to submit this receiving? This cannot be undone.", + "confirm_restore" => "", + "cost" => "Cost", + "daily" => "", + "date" => "Receiving Date", + "date_required" => "A correct date must be entered.", + "date_type" => "Date is a required field.", + "delete_entire_sale" => "Delete Entire Sale", + "discount" => "Discount %", + "edit" => "Edit", + "edit_sale" => "Edit Receiving", + "employee" => "Employee", + "error_editing_item" => "Item edit failed.", + "error_requisition" => "Unable to move Inventory from or to the same Stock Location.", + "find_or_scan_item" => "Find or Scan Item", + "find_or_scan_item_or_receipt" => "Find or Scan Item or Receipt", + "id" => "Receiving ID", + "item_name" => "Item Name", + "mode" => "Receiving Mode", + "new_supplier" => "New Supplier", + "one_or_multiple" => "receiving(s)", + "print_after_sale" => "Print After Sale", + "quantity" => "Qty.", + "receipt" => "Receivings Receipt", + "receipt_number" => "Receiving #", + "receiving" => "Receive", + "reference" => "Reference", + "register" => "Items Receiving", + "requisition" => "Requisition", + "return" => "Return", + "select_supplier" => "Select Supplier (Optional)", + "ship_pack" => "", + "start_typing_supplier_name" => "Start Typing Supplier's name...", + "stock" => "", + "stock_destination" => "Stock Destination", + "stock_locaiton" => "Stock Location", + "stock_source" => "Stock Source", + "successfully_deleted" => "You have successfully deleted", + "successfully_updated" => "Receiving successfully updated", + "supplier" => "Supplier", + "supplier_address" => "Address", + "supplier_email" => "Email", + "supplier_location" => "Location", + "total" => "Total", + "transaction_failed" => "Receivings transaction(s) failed.", + "unable_to_add_item" => "Item add to Receiving failed.", + "unsuccessfully_updated" => "Receiving update failed.", + "update" => "Update", ]; diff --git a/app/Language/bg/Reports.php b/app/Language/bg/Reports.php index f6be9f146..017931458 100644 --- a/app/Language/bg/Reports.php +++ b/app/Language/bg/Reports.php @@ -1,148 +1,148 @@ "All", - "authority" => "", - "canceled" => "Canceled", - "categories" => "Categories", - "categories_summary_report" => "Categories Summary Report", - "category" => "Category", - "code_canceled" => "CNL", - "code_invoice" => "INV", - "code_pos" => "", - "code_quote" => "Q", - "code_return" => "RET", - "code_type" => "Type", - "code_work_order" => "W/O", - "comments" => "Comments", - "commission" => "", - "complete" => "Completed Sales and Returns", - "completed_sales" => "Completed Sales", - "confirm_delete" => "", - "confirm_restore" => "", - "cost" => "Wholesale", - "cost_price" => "Wholesale Price", - "count" => "Count", - "customer" => "Customer", - "customers" => "Customers", - "customers_summary_report" => "Customers Summary Report", - "date" => "Date", - "date_range" => "Date Range", - "description" => "Description", - "detailed_receivings_report" => "Detailed Receivings Report", - "detailed_receivings_report_input" => "", - "detailed_reports" => "Detailed Reports", - "detailed_requisition_report" => "", - "detailed_sales_report" => "Detailed Transactions Report", - "discount" => "Discount", - "discount_fixed" => "", - "discount_percent" => "Discount Percent", - "discount_type" => "", - "discounts" => "Discounts", - "discounts_summary_report" => "Discounts Summary Report", - "earned" => "Points Earned", - "employee" => "Employee", - "employees" => "Employees", - "employees_summary_report" => "Employees Summary Report", - "expenses" => "", - "expenses_amount" => "Amount", - "expenses_categories" => "Expenses", - "expenses_categories_summary_report" => "Expense Categories Summary Report", - "expenses_category" => "Category", - "expenses_payment_amount" => "", - "expenses_tax_amount" => "Tax", - "expenses_total_amount" => "Total Amount", - "expenses_total_tax_amount" => "Total Tax", - "graphical_reports" => "Graphical Reports", - "inventory" => "Inventory", - "inventory_low" => "Low Inventory", - "inventory_low_report" => "Low Inventory Report", - "inventory_reports" => "Inventory Reports", - "inventory_summary" => "Inventory Summary", - "inventory_summary_report" => "Inventory Summary Report", - "item" => "Item", - "item_count" => "Filter Item Count", - "item_name" => "Item Name", - "item_number" => "Barcode", - "items" => "Items", - "items_purchased" => "Items Purchased", - "items_received" => "Items Received", - "items_summary_report" => "Items Summary Report", - "jurisdiction" => "", - "low_inventory" => "", - "low_inventory_report" => "", - "low_sell_quantity" => "", - "more_than_zero" => "More than zero", - "name" => "Name", - "no_reports_to_display" => "No Items to display.", - "payment_type" => "Payment Type", - "payments" => "Payments", - "payments_summary_report" => "Payments Summary Report", - "profit" => "Profit", - "quantity" => "Quantity", - "quantity_purchased" => "Quantity Purchased", - "quotes" => "Quotes", - "received_by" => "Received By", - "receiving_id" => "Receiving ID", - "receiving_type" => "Receiving Type", - "receivings" => "Receivings", - "reorder_level" => "Reorder Level", - "report" => "Report", - "report_input" => "Report Input", - "reports" => "Reports", - "requisition" => "", - "requisition_by" => "", - "requisition_id" => "", - "requisition_item" => "", - "requisition_item_quantity" => "", - "requisition_related_item" => "", - "requisition_related_item_total_quantity" => "", - "requisition_related_item_unit_quantity" => "", - "requisitions" => "Requisitions", - "returns" => "Returns", - "revenue" => "Revenue", - "sale_id" => "Trans. ID", - "sale_type" => "Transaction Type", - "sales" => "Transactions", - "sales_amount" => "Transactions amount", - "sales_summary_report" => "Transactions Summary Report", - "sales_taxes" => "", - "sales_taxes_summary_report" => "", - "serial_number" => "Serial Number", - "service_charge" => "", - "sold_by" => "Sold By", - "sold_items" => "", - "sold_to" => "Sold To", - "stock_location" => "Stock Location", - "sub_total_value" => "Subtotal", - "subtotal" => "Subtotal", - "summary_reports" => "Summary Reports", - "supplied_by" => "Supplied by", - "supplier" => "Supplier", - "suppliers" => "Suppliers", - "suppliers_summary_report" => "Suppliers Summary Report", - "tax" => "Tax", - "tax_category" => "", - "tax_name" => "", - "tax_percent" => "Tax Percent", - "tax_rate" => "", - "taxes" => "Taxes", - "taxes_summary_report" => "Taxes Summary Report", - "total" => "Total", - "total_inventory_value" => "Total Inventory Value", - "total_low_sell_quantity" => "", - "total_quantity" => "Total Quantity", - "total_retail" => "Total Inv. Retail Value", - "trans_amount" => "", - "trans_due" => "", - "trans_group" => "", - "trans_nopay_sales" => "", - "trans_payments" => "", - "trans_refunded" => "", - "trans_sales" => "", - "trans_type" => "", - "type" => "Type", - "unit_price" => "Retail Price", - "used" => "Points Used", - "work_orders" => "Work Orders", - "zero_and_less" => "Zero and less", + "all" => "All", + "authority" => "", + "canceled" => "Canceled", + "categories" => "Categories", + "categories_summary_report" => "Categories Summary Report", + "category" => "Category", + "code_canceled" => "CNL", + "code_invoice" => "INV", + "code_pos" => "", + "code_quote" => "Q", + "code_return" => "RET", + "code_type" => "Type", + "code_work_order" => "W/O", + "comments" => "Comments", + "commission" => "", + "complete" => "Completed Sales and Returns", + "completed_sales" => "Completed Sales", + "confirm_delete" => "", + "confirm_restore" => "", + "cost" => "Wholesale", + "cost_price" => "Wholesale Price", + "count" => "Count", + "customer" => "Customer", + "customers" => "Customers", + "customers_summary_report" => "Customers Summary Report", + "date" => "Date", + "date_range" => "Date Range", + "description" => "Description", + "detailed_receivings_report" => "Detailed Receivings Report", + "detailed_receivings_report_input" => "", + "detailed_reports" => "Detailed Reports", + "detailed_requisition_report" => "", + "detailed_sales_report" => "Detailed Transactions Report", + "discount" => "Discount", + "discount_fixed" => "", + "discount_percent" => "Discount Percent", + "discount_type" => "", + "discounts" => "Discounts", + "discounts_summary_report" => "Discounts Summary Report", + "earned" => "Points Earned", + "employee" => "Employee", + "employees" => "Employees", + "employees_summary_report" => "Employees Summary Report", + "expenses" => "", + "expenses_amount" => "Amount", + "expenses_categories" => "Expenses", + "expenses_categories_summary_report" => "Expense Categories Summary Report", + "expenses_category" => "Category", + "expenses_payment_amount" => "", + "expenses_tax_amount" => "Tax", + "expenses_total_amount" => "Total Amount", + "expenses_total_tax_amount" => "Total Tax", + "graphical_reports" => "Graphical Reports", + "inventory" => "Inventory", + "inventory_low" => "Low Inventory", + "inventory_low_report" => "Low Inventory Report", + "inventory_reports" => "Inventory Reports", + "inventory_summary" => "Inventory Summary", + "inventory_summary_report" => "Inventory Summary Report", + "item" => "Item", + "item_count" => "Filter Item Count", + "item_name" => "Item Name", + "item_number" => "Barcode", + "items" => "Items", + "items_purchased" => "Items Purchased", + "items_received" => "Items Received", + "items_summary_report" => "Items Summary Report", + "jurisdiction" => "", + "low_inventory" => "", + "low_inventory_report" => "", + "low_sell_quantity" => "", + "more_than_zero" => "More than zero", + "name" => "Name", + "no_reports_to_display" => "No Items to display.", + "payment_type" => "Payment Type", + "payments" => "Payments", + "payments_summary_report" => "Payments Summary Report", + "profit" => "Profit", + "quantity" => "Quantity", + "quantity_purchased" => "Quantity Purchased", + "quotes" => "Quotes", + "received_by" => "Received By", + "receiving_id" => "Receiving ID", + "receiving_type" => "Receiving Type", + "receivings" => "Receivings", + "reorder_level" => "Reorder Level", + "report" => "Report", + "report_input" => "Report Input", + "reports" => "Reports", + "requisition" => "", + "requisition_by" => "", + "requisition_id" => "", + "requisition_item" => "", + "requisition_item_quantity" => "", + "requisition_related_item" => "", + "requisition_related_item_total_quantity" => "", + "requisition_related_item_unit_quantity" => "", + "requisitions" => "Requisitions", + "returns" => "Returns", + "revenue" => "Revenue", + "sale_id" => "Trans. ID", + "sale_type" => "Transaction Type", + "sales" => "Transactions", + "sales_amount" => "Transactions amount", + "sales_summary_report" => "Transactions Summary Report", + "sales_taxes" => "", + "sales_taxes_summary_report" => "", + "serial_number" => "Serial Number", + "service_charge" => "", + "sold_by" => "Sold By", + "sold_items" => "", + "sold_to" => "Sold To", + "stock_location" => "Stock Location", + "sub_total_value" => "Subtotal", + "subtotal" => "Subtotal", + "summary_reports" => "Summary Reports", + "supplied_by" => "Supplied by", + "supplier" => "Supplier", + "suppliers" => "Suppliers", + "suppliers_summary_report" => "Suppliers Summary Report", + "tax" => "Tax", + "tax_category" => "", + "tax_name" => "", + "tax_percent" => "Tax Percent", + "tax_rate" => "", + "taxes" => "Taxes", + "taxes_summary_report" => "Taxes Summary Report", + "total" => "Total", + "total_inventory_value" => "Total Inventory Value", + "total_low_sell_quantity" => "", + "total_quantity" => "Total Quantity", + "total_retail" => "Total Inv. Retail Value", + "trans_amount" => "", + "trans_due" => "", + "trans_group" => "", + "trans_nopay_sales" => "", + "trans_payments" => "", + "trans_refunded" => "", + "trans_sales" => "", + "trans_type" => "", + "type" => "Type", + "unit_price" => "Retail Price", + "used" => "Points Used", + "work_orders" => "Work Orders", + "zero_and_less" => "Zero and less", ]; diff --git a/app/Language/bg/Sales.php b/app/Language/bg/Sales.php index 3a6d07b8d..c88c215c7 100644 --- a/app/Language/bg/Sales.php +++ b/app/Language/bg/Sales.php @@ -1,224 +1,224 @@ "Налични точки", - "rewards_package" => "Награди", - "rewards_remaining_balance" => "Оставащата стойност на точките за награда е ", - "account_number" => "Номер на акаунт", - "add_payment" => "Добавяне на плащане", - "amount_due" => "Дължима сума", - "amount_tendered" => "Предоставена сума", - "authorized_signature" => "Оторизиран подпис", - "cancel_sale" => "Отказ", - "cash" => "В брой", - "cash_1" => "", - "cash_2" => "", - "cash_3" => "", - "cash_4" => "", - "cash_adjustment" => "Корекция на пари в брой", - "cash_deposit" => "Депозит в брой", - "cash_filter" => "В брой", - "change_due" => "Промяна на дължимото", - "change_price" => "Промяна на продажната цена", - "check" => "Проверка", - "check_balance" => "Проверете остатъка", - "check_filter" => "Проверка", - "close" => "", - "comment" => "Коментар", - "comments" => "Коментари", - "company_name" => "", - "complete" => "", - "complete_sale" => "Завършен", - "confirm_cancel_sale" => "Сигурни ли сте, че искате да изчистите тази продажба? Всичко ще бъде изтрито.", - "confirm_delete" => "Наистина ли искате да изтриете избраната Продажба (и)?", - "confirm_restore" => "Наистина ли искате да възстановите избраната Продажба (и)?", - "credit" => "Кредитна карта", - "credit_deposit" => "Кредитен депозит", - "credit_filter" => "Кредитна карта", - "current_table" => "", - "customer" => "Име", - "customer_address" => "Адрес", - "customer_discount" => "Намаление", - "customer_email" => "Електронна поща", - "customer_location" => "Местоположение", - "customer_mailchimp_status" => "Състояние на Mailchimp", - "customer_optional" => "(Незадължително)", - "customer_required" => "(Задължително)", - "customer_total" => "Обща сума", - "customer_total_spent" => "", - "daily_sales" => "", - "date" => "Дата на продажба", - "date_range" => "Период от време", - "date_required" => "Трябва да въведете правилна дата.", - "date_type" => "Датата е задължително поле.", - "debit" => "Дебитна карта", - "debit_filter" => "", - "delete" => "Разреши изтриване", - "delete_confirmation" => "Наистина ли искате да изтриете тази продажба? Това действие не може да бъде отменено.", - "delete_entire_sale" => "Изтриване на цялата продажба", - "delete_successful" => "Продажбата е изтрита успешно.", - "delete_unsuccessful" => "Изтриването на продажба не бе успешно.", - "description_abbrv" => "Описание.", - "discard" => "Разпродажба", - "discard_quote" => "", - "discount" => "Намаление%", - "discount_included" => "% Отстъпка", - "discount_short" => "%", - "due" => "Дължимото", - "due_filter" => "Дължимо", - "edit" => "Редактиране", - "edit_item" => "Редактиране на елемент", - "edit_sale" => "Редактиране на продажбата", - "email_receipt" => "Електронна разписка", - "employee" => "Служител", - "entry" => "Вход", - "error_editing_item" => "Грешка при редактирането на елемента", - "find_or_scan_item" => "Намерете или сканирайте елемента", - "find_or_scan_item_or_receipt" => "Намерете или сканирайте елемент или разпис", - "giftcard" => "Gift Карта", - "giftcard_balance" => "Gift Card Баланс", - "giftcard_filter" => "", - "giftcard_number" => "Gift Card Номер", - "group_by_category" => "Групирайте по категория", - "group_by_type" => "Групиране по тип", - "hsn" => "HSN", - "id" => "Номер на продажба", - "include_prices" => "Включва цени?", - "invoice" => "Фактура", - "invoice_confirm" => "Тази фактура ще бъде изпратена до", - "invoice_enable" => "Създаване на фактура", - "invoice_filter" => "Фактури", - "invoice_no_email" => "Този клиент няма валиден имейл адрес.", - "invoice_number" => "Фактура #", - "invoice_number_duplicate" => "Номерът на фактурите трябва да е уникален.", - "invoice_sent" => "Фактура, изпратена до", - "invoice_total" => "Фактура общо", - "invoice_type_custom_invoice" => "Ръчна фактура", - "invoice_type_custom_tax_invoice" => "Фактура по избор(custom_tax_invoice.php)", - "invoice_type_invoice" => "Фактура", - "invoice_type_tax_invoice" => "Данъчна фактура (tax_invoice.php)", - "invoice_unsent" => "Фактурата не можа да бъде изпратена до", - "invoice_update" => "Преизчисляване", - "item_insufficient_of_stock" => "Елементът има недостатъчен запас.", - "item_name" => "Име на предмета", - "item_number" => "Предмет #", - "item_out_of_stock" => "Елементът е изчерпан.", - "key_browser" => "", - "key_cancel" => "Cancels Current Quote/Invoice/Sale", - "key_customer_search" => "Customer Search", - "key_finish_quote" => "Finish Quote/Invoice witdout payment", - "key_finish_sale" => "Add Payment and Complete Invoice/Sale", - "key_full" => "", - "key_function" => "Function", - "key_help" => "Shortcuts", - "key_help_modal" => "Open Shortcuts Window", - "key_in" => "", - "key_item_search" => "Item Search", - "key_out" => "", - "key_payment" => "Add Payment", - "key_print" => "", - "key_restore" => "", - "key_search" => "", - "key_suspend" => "Suspend Current Sale", - "key_suspended" => "Show Suspended Sales", - "key_system" => "", - "key_tendered" => "Edit Amount Tendered", - "key_title" => "Sales Keyboard Shortcuts", - "mc" => "", - "mode" => "Режим на регистрация", - "must_enter_numeric" => "Сумата Предложена трябва да е число.", - "must_enter_numeric_giftcard" => "Gift Card номера трябва да бъде число.", - "new_customer" => "Нов клиент", - "new_item" => "Нов продукт", - "no_description" => "Нито един", - "no_filter" => "Всичко", - "no_items_in_cart" => "В количката няма продукти.", - "no_sales_to_display" => "Няма продажби за показване .", - "none_selected" => "Не сте избрали каквито и да е Продажби за изтриване.", - "nontaxed_ind" => " sales nontaxed ind ", - "not_authorized" => "Това действие не е разрешено.", - "one_or_multiple" => "Продажба (и)", - "payment" => "Вид плащане", - "payment_amount" => "Количество", - "payment_not_cover_total" => "Сумата за плащане трябва да е по-голяма или равна на цялата сума.", - "payment_type" => "Тип", - "payments" => "", - "payments_total" => "Общо плащания", - "price" => "Цена", - "print_after_sale" => "Печат след продажбата", - "quantity" => "Количество", - "quantity_less_than_reorder_level" => "Предупреждение: Желаното количество е под нивото на зареждане за тази позиция.", - "quantity_less_than_zero" => "Предупреждение: Желаното количество е недостатъчно. Все още можете да обработвате продажбата, но одитирайте инвентара си.", - "quantity_of_items" => "Количество{0} елементи", - "quote" => "Цитат", - "quote_number" => "Номер на цитата", - "quote_number_duplicate" => "Номерът на Цитат трябва да е уникален.", - "quote_sent" => "Цитат изпратен до", - "quote_unsent" => "Цитатът не можа да бъде изпратен до", - "receipt" => "Касова бележка", - "receipt_no_email" => "Този клиент няма валиден имейл адрес.", - "receipt_number" => "Продажба #", - "receipt_sent" => "Разписката е изпратена до", - "receipt_unsent" => "Разписката не бе изпратена до", - "refund" => "Вид на въстановяването", - "register" => "Регистър на продажбите", - "remove_customer" => "Премахване на клиент", - "remove_discount" => "", - "return" => "Връщане", - "rewards" => "Наградни точки", - "rewards_balance" => "Reward Points Баланс", - "sale" => "Продажба", - "sale_by_invoice" => "Продажба по фактура", - "sale_for_customer" => "Клиент:", - "sale_time" => "Време", - "sales_tax" => "Данък върху продажбите", - "sales_total" => "", - "select_customer" => "Изберете клиент (по избор)", - "send_invoice" => "Изпратете фактура", - "send_quote" => "Изпрати цитат", - "send_receipt" => "Изпращане на разписка", - "send_work_order" => "Изпращане на поръчка за работа", - "serial" => "Сериен", - "service_charge" => "", - "show_due" => "", - "show_invoice" => "Показване на фактурата", - "show_receipt" => "Показване на разписката", - "start_typing_customer_name" => "Започнете да пишете подробности за клиента ...", - "start_typing_item_name" => "Започнете да въвеждате името на елемента или да сканирате баркод ...", - "stock" => "Наличност", - "stock_location" => "Местоположение на наличност", - "sub_total" => "Междинна сума", - "successfully_deleted" => "Вие успешно сте изтрили", - "successfully_restored" => "Вие успешно сте възстановили", - "successfully_suspended_sale" => "Успешно спиране на продажбата.", - "successfully_updated" => "Обновихте продажбата успешно.", - "suspend_sale" => "Задържане", - "suspended_doc_id" => "Документ", - "suspended_sale_id" => "Номер", - "suspended_sales" => "Преустановен", - "table" => "Маса", - "takings" => "Ежедневни продажби", - "tax" => "Данък", - "tax_id" => "Данъчен номер", - "tax_invoice" => "Данъчна фактура", - "tax_percent" => "Данък %", - "taxed_ind" => "", - "total" => "Обща сума", - "total_tax_exclusive" => "Без данък", - "transaction_failed" => "Продажната транзакция е неуспешна.", - "unable_to_add_item" => "Добавянето на продукта към продажбата не бе успешно", - "unsuccessfully_deleted" => "Изтриването на продажба (и) не бе успешно.", - "unsuccessfully_restored" => "Възстановяването на Продажбата (ите) не бе успешна.", - "unsuccessfully_suspended_sale" => "Преустановяването на продажбата бе неуспешно.", - "unsuccessfully_updated" => "Актуализацията на продажбата не бе успешна.", - "unsuspend" => "Възстановяване", - "unsuspend_and_delete" => "Action", - "update" => "Актуализация", - "upi" => "", - "visa" => "", - "wholesale" => "", - "work_order" => "Работна поръчка", - "work_order_number" => "Номер работна поръчка", - "work_order_number_duplicate" => "Номерът на работната поръчка трябва да е уникален.", - "work_order_sent" => "Работната поръчка е изпратена до", - "work_order_unsent" => "Работната поръчка не бе изпратена до", + "customers_available_points" => "Налични точки", + "rewards_package" => "Награди", + "rewards_remaining_balance" => "Оставащата стойност на точките за награда е ", + "account_number" => "Номер на акаунт", + "add_payment" => "Добавяне на плащане", + "amount_due" => "Дължима сума", + "amount_tendered" => "Предоставена сума", + "authorized_signature" => "Оторизиран подпис", + "cancel_sale" => "Отказ", + "cash" => "В брой", + "cash_1" => "", + "cash_2" => "", + "cash_3" => "", + "cash_4" => "", + "cash_adjustment" => "Корекция на пари в брой", + "cash_deposit" => "Депозит в брой", + "cash_filter" => "В брой", + "change_due" => "Промяна на дължимото", + "change_price" => "Промяна на продажната цена", + "check" => "Проверка", + "check_balance" => "Проверете остатъка", + "check_filter" => "Проверка", + "close" => "", + "comment" => "Коментар", + "comments" => "Коментари", + "company_name" => "", + "complete" => "", + "complete_sale" => "Завършен", + "confirm_cancel_sale" => "Сигурни ли сте, че искате да изчистите тази продажба? Всичко ще бъде изтрито.", + "confirm_delete" => "Наистина ли искате да изтриете избраната Продажба (и)?", + "confirm_restore" => "Наистина ли искате да възстановите избраната Продажба (и)?", + "credit" => "Кредитна карта", + "credit_deposit" => "Кредитен депозит", + "credit_filter" => "Кредитна карта", + "current_table" => "", + "customer" => "Име", + "customer_address" => "Адрес", + "customer_discount" => "Намаление", + "customer_email" => "Електронна поща", + "customer_location" => "Местоположение", + "customer_mailchimp_status" => "Състояние на Mailchimp", + "customer_optional" => "(Незадължително)", + "customer_required" => "(Задължително)", + "customer_total" => "Обща сума", + "customer_total_spent" => "", + "daily_sales" => "", + "date" => "Дата на продажба", + "date_range" => "Период от време", + "date_required" => "Трябва да въведете правилна дата.", + "date_type" => "Датата е задължително поле.", + "debit" => "Дебитна карта", + "debit_filter" => "", + "delete" => "Разреши изтриване", + "delete_confirmation" => "Наистина ли искате да изтриете тази продажба? Това действие не може да бъде отменено.", + "delete_entire_sale" => "Изтриване на цялата продажба", + "delete_successful" => "Продажбата е изтрита успешно.", + "delete_unsuccessful" => "Изтриването на продажба не бе успешно.", + "description_abbrv" => "Описание.", + "discard" => "Разпродажба", + "discard_quote" => "", + "discount" => "Намаление%", + "discount_included" => "% Отстъпка", + "discount_short" => "%", + "due" => "Дължимото", + "due_filter" => "Дължимо", + "edit" => "Редактиране", + "edit_item" => "Редактиране на елемент", + "edit_sale" => "Редактиране на продажбата", + "email_receipt" => "Електронна разписка", + "employee" => "Служител", + "entry" => "Вход", + "error_editing_item" => "Грешка при редактирането на елемента", + "find_or_scan_item" => "Намерете или сканирайте елемента", + "find_or_scan_item_or_receipt" => "Намерете или сканирайте елемент или разпис", + "giftcard" => "Gift Карта", + "giftcard_balance" => "Gift Card Баланс", + "giftcard_filter" => "", + "giftcard_number" => "Gift Card Номер", + "group_by_category" => "Групирайте по категория", + "group_by_type" => "Групиране по тип", + "hsn" => "HSN", + "id" => "Номер на продажба", + "include_prices" => "Включва цени?", + "invoice" => "Фактура", + "invoice_confirm" => "Тази фактура ще бъде изпратена до", + "invoice_enable" => "Създаване на фактура", + "invoice_filter" => "Фактури", + "invoice_no_email" => "Този клиент няма валиден имейл адрес.", + "invoice_number" => "Фактура #", + "invoice_number_duplicate" => "Номерът на фактурите трябва да е уникален.", + "invoice_sent" => "Фактура, изпратена до", + "invoice_total" => "Фактура общо", + "invoice_type_custom_invoice" => "Ръчна фактура", + "invoice_type_custom_tax_invoice" => "Фактура по избор(custom_tax_invoice.php)", + "invoice_type_invoice" => "Фактура", + "invoice_type_tax_invoice" => "Данъчна фактура (tax_invoice.php)", + "invoice_unsent" => "Фактурата не можа да бъде изпратена до", + "invoice_update" => "Преизчисляване", + "item_insufficient_of_stock" => "Елементът има недостатъчен запас.", + "item_name" => "Име на предмета", + "item_number" => "Предмет #", + "item_out_of_stock" => "Елементът е изчерпан.", + "key_browser" => "", + "key_cancel" => "Cancels Current Quote/Invoice/Sale", + "key_customer_search" => "Customer Search", + "key_finish_quote" => "Finish Quote/Invoice witdout payment", + "key_finish_sale" => "Add Payment and Complete Invoice/Sale", + "key_full" => "", + "key_function" => "Function", + "key_help" => "Shortcuts", + "key_help_modal" => "Open Shortcuts Window", + "key_in" => "", + "key_item_search" => "Item Search", + "key_out" => "", + "key_payment" => "Add Payment", + "key_print" => "", + "key_restore" => "", + "key_search" => "", + "key_suspend" => "Suspend Current Sale", + "key_suspended" => "Show Suspended Sales", + "key_system" => "", + "key_tendered" => "Edit Amount Tendered", + "key_title" => "Sales Keyboard Shortcuts", + "mc" => "", + "mode" => "Режим на регистрация", + "must_enter_numeric" => "Сумата Предложена трябва да е число.", + "must_enter_numeric_giftcard" => "Gift Card номера трябва да бъде число.", + "new_customer" => "Нов клиент", + "new_item" => "Нов продукт", + "no_description" => "Нито един", + "no_filter" => "Всичко", + "no_items_in_cart" => "В количката няма продукти.", + "no_sales_to_display" => "Няма продажби за показване .", + "none_selected" => "Не сте избрали каквито и да е Продажби за изтриване.", + "nontaxed_ind" => " sales nontaxed ind ", + "not_authorized" => "Това действие не е разрешено.", + "one_or_multiple" => "Продажба (и)", + "payment" => "Вид плащане", + "payment_amount" => "Количество", + "payment_not_cover_total" => "Сумата за плащане трябва да е по-голяма или равна на цялата сума.", + "payment_type" => "Тип", + "payments" => "", + "payments_total" => "Общо плащания", + "price" => "Цена", + "print_after_sale" => "Печат след продажбата", + "quantity" => "Количество", + "quantity_less_than_reorder_level" => "Предупреждение: Желаното количество е под нивото на зареждане за тази позиция.", + "quantity_less_than_zero" => "Предупреждение: Желаното количество е недостатъчно. Все още можете да обработвате продажбата, но одитирайте инвентара си.", + "quantity_of_items" => "Количество{0} елементи", + "quote" => "Цитат", + "quote_number" => "Номер на цитата", + "quote_number_duplicate" => "Номерът на Цитат трябва да е уникален.", + "quote_sent" => "Цитат изпратен до", + "quote_unsent" => "Цитатът не можа да бъде изпратен до", + "receipt" => "Касова бележка", + "receipt_no_email" => "Този клиент няма валиден имейл адрес.", + "receipt_number" => "Продажба #", + "receipt_sent" => "Разписката е изпратена до", + "receipt_unsent" => "Разписката не бе изпратена до", + "refund" => "Вид на въстановяването", + "register" => "Регистър на продажбите", + "remove_customer" => "Премахване на клиент", + "remove_discount" => "", + "return" => "Връщане", + "rewards" => "Наградни точки", + "rewards_balance" => "Reward Points Баланс", + "sale" => "Продажба", + "sale_by_invoice" => "Продажба по фактура", + "sale_for_customer" => "Клиент:", + "sale_time" => "Време", + "sales_tax" => "Данък върху продажбите", + "sales_total" => "", + "select_customer" => "Изберете клиент (по избор)", + "send_invoice" => "Изпратете фактура", + "send_quote" => "Изпрати цитат", + "send_receipt" => "Изпращане на разписка", + "send_work_order" => "Изпращане на поръчка за работа", + "serial" => "Сериен", + "service_charge" => "", + "show_due" => "", + "show_invoice" => "Показване на фактурата", + "show_receipt" => "Показване на разписката", + "start_typing_customer_name" => "Започнете да пишете подробности за клиента ...", + "start_typing_item_name" => "Започнете да въвеждате името на елемента или да сканирате баркод ...", + "stock" => "Наличност", + "stock_location" => "Местоположение на наличност", + "sub_total" => "Междинна сума", + "successfully_deleted" => "Вие успешно сте изтрили", + "successfully_restored" => "Вие успешно сте възстановили", + "successfully_suspended_sale" => "Успешно спиране на продажбата.", + "successfully_updated" => "Обновихте продажбата успешно.", + "suspend_sale" => "Задържане", + "suspended_doc_id" => "Документ", + "suspended_sale_id" => "Номер", + "suspended_sales" => "Преустановен", + "table" => "Маса", + "takings" => "Ежедневни продажби", + "tax" => "Данък", + "tax_id" => "Данъчен номер", + "tax_invoice" => "Данъчна фактура", + "tax_percent" => "Данък %", + "taxed_ind" => "", + "total" => "Обща сума", + "total_tax_exclusive" => "Без данък", + "transaction_failed" => "Продажната транзакция е неуспешна.", + "unable_to_add_item" => "Добавянето на продукта към продажбата не бе успешно", + "unsuccessfully_deleted" => "Изтриването на продажба (и) не бе успешно.", + "unsuccessfully_restored" => "Възстановяването на Продажбата (ите) не бе успешна.", + "unsuccessfully_suspended_sale" => "Преустановяването на продажбата бе неуспешно.", + "unsuccessfully_updated" => "Актуализацията на продажбата не бе успешна.", + "unsuspend" => "Възстановяване", + "unsuspend_and_delete" => "Action", + "update" => "Актуализация", + "upi" => "", + "visa" => "", + "wholesale" => "", + "work_order" => "Работна поръчка", + "work_order_number" => "Номер работна поръчка", + "work_order_number_duplicate" => "Номерът на работната поръчка трябва да е уникален.", + "work_order_sent" => "Работната поръчка е изпратена до", + "work_order_unsent" => "Работната поръчка не бе изпратена до", ]; diff --git a/app/Language/bg/Suppliers.php b/app/Language/bg/Suppliers.php index dcbc1d176..8e0de56da 100644 --- a/app/Language/bg/Suppliers.php +++ b/app/Language/bg/Suppliers.php @@ -1,24 +1,24 @@ "Account Number", - "agency_name" => "Име на агенцията", - "cannot_be_deleted" => "Избраните доставчици не можаха да бъдат изтрити. Един или повече от тях имат продажби.", - "category" => "", - "company_name" => "Име на компанията", - "company_name_required" => "Името на фирмата е задължително поле.", - "confirm_delete" => "Наистина ли искате да изтриете избрания доставчик (и)?", - "confirm_restore" => "Наистина ли искате да възстановите избраните доставчици?", - "cost" => "", - "error_adding_updating" => "Актуализацията или добавянето на доставчик не бе успешно.", - "goods" => "", - "new" => "Нов доставчик", - "none_selected" => "Не сте избрали доставчик (и), който да изтриете.", - "one_or_multiple" => "Доставчик (и)", - "successful_adding" => "Вие успешно добавихте Доставчика", - "successful_deleted" => "Вие успешно изтрихте", - "successful_updating" => "Обновяването на доставчика е успешно", - "supplier" => "Доставчик", - "supplier_id" => "Id", - "tax_id" => "", - "update" => "Актуализиране на доставчик", + "account_number" => "Account Number", + "agency_name" => "Име на агенцията", + "cannot_be_deleted" => "Избраните доставчици не можаха да бъдат изтрити. Един или повече от тях имат продажби.", + "category" => "", + "company_name" => "Име на компанията", + "company_name_required" => "Името на фирмата е задължително поле.", + "confirm_delete" => "Наистина ли искате да изтриете избрания доставчик (и)?", + "confirm_restore" => "Наистина ли искате да възстановите избраните доставчици?", + "cost" => "", + "error_adding_updating" => "Актуализацията или добавянето на доставчик не бе успешно.", + "goods" => "", + "new" => "Нов доставчик", + "none_selected" => "Не сте избрали доставчик (и), който да изтриете.", + "one_or_multiple" => "Доставчик (и)", + "successful_adding" => "Вие успешно добавихте Доставчика", + "successful_deleted" => "Вие успешно изтрихте", + "successful_updating" => "Обновяването на доставчика е успешно", + "supplier" => "Доставчик", + "supplier_id" => "Id", + "tax_id" => "", + "update" => "Актуализиране на доставчик", ]; diff --git a/app/Language/bg/Taxes.php b/app/Language/bg/Taxes.php index ccff48f15..0b4b1c6e1 100644 --- a/app/Language/bg/Taxes.php +++ b/app/Language/bg/Taxes.php @@ -1,82 +1,82 @@ "Добавяне на изключение", - "cascade" => "", - "cascade_sequence" => "", - "city" => "", - "code" => "", - "confirm_delete" => "Наистина ли искате да изтриете този данъчен кодекс? Това действие не може да бъде отменено.", - "confirm_restore" => "Наистина ли искате да възстановите избраните данъчни кодове?", - "default_tax_category" => "Стандартна данъчна категория", - "default_tax_rate" => "", - "error_adding_updating" => "Добавянето или актуализацията на данъчния код беше неуспешна.", - "group_seq" => "", - "jurisdiction_name" => "", - "name" => "", - "new" => "Нов данъчен код", - "no_taxes" => "", - "no_taxes_to_display" => "Няма код за данъци, който да се показва.", - "reporting_authority" => "", - "round_half_down" => "Половина надолу", - "round_half_even" => "Равно", - "round_half_odd" => "Половин нечетно", - "round_half_up" => "Наполовина нагоре", - "rounding_code" => "Закръгляващ код", - "sales_tax" => "Данък върху продажбите", - "sales_tax_by_invoice" => "Данък върху продажбите по фактура", - "sequence" => "", - "state" => "", - "successful_deleted" => "Вие успешно изтрихте", - "tax_categories" => "", - "tax_categories_configuration" => "", - "tax_categories_saved_successfully" => "", - "tax_categories_saved_unsuccessfully" => "", - "tax_category" => "Данъчна категория", - "tax_category_code" => "", - "tax_category_duplicate" => "", - "tax_category_invalid_chars" => "", - "tax_category_name" => "", - "tax_category_new" => "", - "tax_category_required" => "", - "tax_code" => "Данъчен код", - "tax_code_cannot_be_deleted" => "Изтриването на данъчен код не бе успешно.", - "tax_code_duplicate" => "", - "tax_code_invalid_chars" => "", - "tax_code_name" => "Име на данъчния код", - "tax_code_required" => "Данъчният код е задължително поле.", - "tax_code_successful_deleted" => "Вие успешно изтрихте Данъчния код", - "tax_code_successful_updated" => "Актуализирахте успешно", - "tax_code_successful_updating" => "Успешно актуализирахте данъчния код", - "tax_code_successfully_added" => "Добавянето беше успешно", - "tax_code_type" => "Тип данъчен код", - "tax_codes" => "", - "tax_codes_configuration" => "", - "tax_codes_saved_successfully" => "", - "tax_codes_saved_unsuccessfully" => "", - "tax_excluded" => "", - "tax_group" => "", - "tax_group_not_unique" => "", - "tax_group_sequence" => "", - "tax_included" => "", - "tax_jurisdiction" => "", - "tax_jurisdiction_duplicate" => "", - "tax_jurisdiction_invalid_chars" => "", - "tax_jurisdiction_required" => "", - "tax_jurisdictions" => "", - "tax_jurisdictions_configuration" => "", - "tax_jurisdictions_saved_successfully" => "", - "tax_jurisdictions_saved_unsuccessfully" => "", - "tax_rate" => "Данъчна ставка", - "tax_rate_configuration" => "", - "tax_rate_error_adding_updating" => "", - "tax_rate_numeric" => "Данъчната ставка трябва да е число.", - "tax_rate_required" => "Данъчната ставка е задължително поле.", - "tax_rate_successful_updated" => "", - "tax_rate_successfully_added" => "", - "tax_rates" => "", - "tax_rates_configuration" => "", - "tax_rounding" => "", - "tax_type" => "", - "update" => "Актуализиране на данъка върху продажбите", - "vat_tax" => "Данък ДДС", + "add_exception" => "Добавяне на изключение", + "cascade" => "", + "cascade_sequence" => "", + "city" => "", + "code" => "", + "confirm_delete" => "Наистина ли искате да изтриете този данъчен кодекс? Това действие не може да бъде отменено.", + "confirm_restore" => "Наистина ли искате да възстановите избраните данъчни кодове?", + "default_tax_category" => "Стандартна данъчна категория", + "default_tax_rate" => "", + "error_adding_updating" => "Добавянето или актуализацията на данъчния код беше неуспешна.", + "group_seq" => "", + "jurisdiction_name" => "", + "name" => "", + "new" => "Нов данъчен код", + "no_taxes" => "", + "no_taxes_to_display" => "Няма код за данъци, който да се показва.", + "reporting_authority" => "", + "round_half_down" => "Половина надолу", + "round_half_even" => "Равно", + "round_half_odd" => "Половин нечетно", + "round_half_up" => "Наполовина нагоре", + "rounding_code" => "Закръгляващ код", + "sales_tax" => "Данък върху продажбите", + "sales_tax_by_invoice" => "Данък върху продажбите по фактура", + "sequence" => "", + "state" => "", + "successful_deleted" => "Вие успешно изтрихте", + "tax_categories" => "", + "tax_categories_configuration" => "", + "tax_categories_saved_successfully" => "", + "tax_categories_saved_unsuccessfully" => "", + "tax_category" => "Данъчна категория", + "tax_category_code" => "", + "tax_category_duplicate" => "", + "tax_category_invalid_chars" => "", + "tax_category_name" => "", + "tax_category_new" => "", + "tax_category_required" => "", + "tax_code" => "Данъчен код", + "tax_code_cannot_be_deleted" => "Изтриването на данъчен код не бе успешно.", + "tax_code_duplicate" => "", + "tax_code_invalid_chars" => "", + "tax_code_name" => "Име на данъчния код", + "tax_code_required" => "Данъчният код е задължително поле.", + "tax_code_successful_deleted" => "Вие успешно изтрихте Данъчния код", + "tax_code_successful_updated" => "Актуализирахте успешно", + "tax_code_successful_updating" => "Успешно актуализирахте данъчния код", + "tax_code_successfully_added" => "Добавянето беше успешно", + "tax_code_type" => "Тип данъчен код", + "tax_codes" => "", + "tax_codes_configuration" => "", + "tax_codes_saved_successfully" => "", + "tax_codes_saved_unsuccessfully" => "", + "tax_excluded" => "", + "tax_group" => "", + "tax_group_not_unique" => "", + "tax_group_sequence" => "", + "tax_included" => "", + "tax_jurisdiction" => "", + "tax_jurisdiction_duplicate" => "", + "tax_jurisdiction_invalid_chars" => "", + "tax_jurisdiction_required" => "", + "tax_jurisdictions" => "", + "tax_jurisdictions_configuration" => "", + "tax_jurisdictions_saved_successfully" => "", + "tax_jurisdictions_saved_unsuccessfully" => "", + "tax_rate" => "Данъчна ставка", + "tax_rate_configuration" => "", + "tax_rate_error_adding_updating" => "", + "tax_rate_numeric" => "Данъчната ставка трябва да е число.", + "tax_rate_required" => "Данъчната ставка е задължително поле.", + "tax_rate_successful_updated" => "", + "tax_rate_successfully_added" => "", + "tax_rates" => "", + "tax_rates_configuration" => "", + "tax_rounding" => "", + "tax_type" => "", + "update" => "Актуализиране на данъка върху продажбите", + "vat_tax" => "Данък ДДС", ]; diff --git a/app/Language/bg/index.html b/app/Language/bg/index.html index b702fbc39..69df4e1df 100644 --- a/app/Language/bg/index.html +++ b/app/Language/bg/index.html @@ -1,7 +1,7 @@ - 403 Forbidden + 403 Forbidden diff --git a/app/Language/bs/Attributes.php b/app/Language/bs/Attributes.php index fe12238eb..328b373a2 100644 --- a/app/Language/bs/Attributes.php +++ b/app/Language/bs/Attributes.php @@ -1,32 +1,32 @@ "Vrijednost atributa ne može sadržavati ':' ili '|'", - "confirm_delete" => "Da li ste sigurni da želite da izbrišete izabrani atribut?", - "confirm_restore" => "Da li ste sigurni da želite vratiti izabrane atribute?", - "definition_cannot_be_deleted" => "Nije moguće izbrisati izabrane atribut", - "definition_error_adding_updating" => "Atribut {0} nije moguće dodati ili ažurirati. Molimo provjerite dnevnik grešaka.", - "definition_flags" => "Vidljivost atributa", - "definition_group" => "Grupa", - "definition_id" => "Id", - "definition_name" => "Dodaj Atribut", - "definition_name_required" => "Ime atributa je obavezno polje", - "definition_one_or_multiple" => "atributi", - "definition_successful_adding" => "Uspješno ste dodali stavku", - "definition_successful_deleted" => "Uspješno ste izbrisali", - "definition_successful_updating" => "Uspješno ste ažurirali atribute", - "definition_type" => "Tip atributa", - "definition_type_required" => "Tip atributa je obavezno polje", - "definition_unit" => "Jedinice mjere", - "definition_values" => "Vrijednosti atributa", - "new" => "Novi atribut", - "no_attributes_to_display" => "Nema stavki za prikaz", - "receipt_visibility" => "Račun", - "show_in_items" => "Prikaži u stavkama", - "show_in_items_visibility" => "Stavka", - "show_in_receipt" => "Prikaži u računu", - "show_in_receivings" => "Prikaži na ulazima", - "show_in_receivings_visibility" => "Ulazi", - "show_in_sales" => "Prikaži u prodaji", - "show_in_sales_visibility" => "Prodaja", - "update" => "Ažuriraj atribut", + "attribute_value_invalid_chars" => "Vrijednost atributa ne može sadržavati ':' ili '|'", + "confirm_delete" => "Da li ste sigurni da želite da izbrišete izabrani atribut?", + "confirm_restore" => "Da li ste sigurni da želite vratiti izabrane atribute?", + "definition_cannot_be_deleted" => "Nije moguće izbrisati izabrane atribut", + "definition_error_adding_updating" => "Atribut {0} nije moguće dodati ili ažurirati. Molimo provjerite dnevnik grešaka.", + "definition_flags" => "Vidljivost atributa", + "definition_group" => "Grupa", + "definition_id" => "Id", + "definition_name" => "Dodaj Atribut", + "definition_name_required" => "Ime atributa je obavezno polje", + "definition_one_or_multiple" => "atributi", + "definition_successful_adding" => "Uspješno ste dodali stavku", + "definition_successful_deleted" => "Uspješno ste izbrisali", + "definition_successful_updating" => "Uspješno ste ažurirali atribute", + "definition_type" => "Tip atributa", + "definition_type_required" => "Tip atributa je obavezno polje", + "definition_unit" => "Jedinice mjere", + "definition_values" => "Vrijednosti atributa", + "new" => "Novi atribut", + "no_attributes_to_display" => "Nema stavki za prikaz", + "receipt_visibility" => "Račun", + "show_in_items" => "Prikaži u stavkama", + "show_in_items_visibility" => "Stavka", + "show_in_receipt" => "Prikaži u računu", + "show_in_receivings" => "Prikaži na ulazima", + "show_in_receivings_visibility" => "Ulazi", + "show_in_sales" => "Prikaži u prodaji", + "show_in_sales_visibility" => "Prodaja", + "update" => "Ažuriraj atribut", ]; diff --git a/app/Language/bs/Bootstrap_tables.php b/app/Language/bs/Bootstrap_tables.php index 218ad6717..211abb3b8 100644 --- a/app/Language/bs/Bootstrap_tables.php +++ b/app/Language/bs/Bootstrap_tables.php @@ -1,11 +1,11 @@ "Sve", - "columns" => "Kolone", - "hide_show_pagination" => "Sakrij / prikaži paginaciju", - "loading" => "Učitavanje sačekajte...", - "page_from_to" => "Prikazivanje {0} do {1} od {2} redova", - "refresh" => "Osvježi", - "rows_per_page" => "{0} redova po stranici", - "toggle" => "Promijeni prikaz", + "all" => "Sve", + "columns" => "Kolone", + "hide_show_pagination" => "Sakrij / prikaži paginaciju", + "loading" => "Učitavanje sačekajte...", + "page_from_to" => "Prikazivanje {0} do {1} od {2} redova", + "refresh" => "Osvježi", + "rows_per_page" => "{0} redova po stranici", + "toggle" => "Promijeni prikaz", ]; diff --git a/app/Language/bs/Calendar.php b/app/Language/bs/Calendar.php index 7a15ab3df..13982f536 100644 --- a/app/Language/bs/Calendar.php +++ b/app/Language/bs/Calendar.php @@ -1,48 +1,48 @@ "Ne", - "mo" => "Po", - "tu" => "Ut", - "we" => "Sr", - "th" => "Če", - "fr" => "Pe", - "sa" => "Su", - "sun" => "Ned", - "mon" => "Pon", - "tue" => "Uto", - "wed" => "Sre", - "thu" => "Čet", - "fri" => "Pet", - "sat" => "Sub", - "sunday" => "Nedjelja", - "monday" => "Ponedjeljak", - "tuesday" => "Utorak", - "wednesday" => "Srijeda", - "thursday" => "Četvrtak", - "friday" => "Petak", - "saturday" => "Subota", - "jan" => "Jan", - "feb" => "Feb", - "mar" => "Mar", - "apr" => "Apr", - "may" => "Maj", - "jun" => "Jun", - "jul" => "Jul", - "aug" => "Avg", - "sep" => "Sep", - "oct" => "Okt", - "nov" => "Nov", - "dec" => "Dec", - "january" => "Januar", - "february" => "Februar", - "march" => "Mart", - "april" => "April", - "mayl" => "Maj", - "june" => "Juni", - "july" => "Juli", - "august" => "Avgust", - "september" => "Septembar", - "october" => "Oktobar", - "november" => "Novembar", - "december" => "Decembar", + "su" => "Ne", + "mo" => "Po", + "tu" => "Ut", + "we" => "Sr", + "th" => "Če", + "fr" => "Pe", + "sa" => "Su", + "sun" => "Ned", + "mon" => "Pon", + "tue" => "Uto", + "wed" => "Sre", + "thu" => "Čet", + "fri" => "Pet", + "sat" => "Sub", + "sunday" => "Nedjelja", + "monday" => "Ponedjeljak", + "tuesday" => "Utorak", + "wednesday" => "Srijeda", + "thursday" => "Četvrtak", + "friday" => "Petak", + "saturday" => "Subota", + "jan" => "Jan", + "feb" => "Feb", + "mar" => "Mar", + "apr" => "Apr", + "may" => "Maj", + "jun" => "Jun", + "jul" => "Jul", + "aug" => "Avg", + "sep" => "Sep", + "oct" => "Okt", + "nov" => "Nov", + "dec" => "Dec", + "january" => "Januar", + "february" => "Februar", + "march" => "Mart", + "april" => "April", + "mayl" => "Maj", + "june" => "Juni", + "july" => "Juli", + "august" => "Avgust", + "september" => "Septembar", + "october" => "Oktobar", + "november" => "Novembar", + "december" => "Decembar", ]; diff --git a/app/Language/bs/Cashups.php b/app/Language/bs/Cashups.php index f6ab82597..559bfa405 100644 --- a/app/Language/bs/Cashups.php +++ b/app/Language/bs/Cashups.php @@ -1,49 +1,49 @@ "Iznos", - "amount_number" => "Iznos mora biti numerički", - "amount_required" => "Iznos je obavezno polje.", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "Isplata se ne može izbrisati", - "cash_difference" => "", - "close_date" => "Datum zatvaranja", - "close_employee" => "Zatvorio", - "closed_amount_card" => "Kartica", - "closed_amount_cash" => "Zatvorena gotovina", - "closed_amount_check" => "Ček", - "closed_amount_due" => "Taksa", - "closed_amount_giftcard" => "", - "closed_amount_total" => "Ukupno", - "closed_date" => "Datum zatvaranja", - "confirm_delete" => "Da li ste sigurni da želite izbrisati izabrane isplate?", - "confirm_restore" => "Da li ste sigurni da želite vratiti izabranu isplatu?", - "confirm_submit" => "", - "date_number" => "Datum mora biti numerički", - "date_required" => "Datum je obavezno polje", - "description" => "Opis", - "enable_expected" => "", - "error_adding_updating" => "Greška prilikom dodavanja/ažuriranja isplate", - "giftcard" => "", - "id" => "Id", - "info" => "Informacije o isplatama", - "info_employee" => "", - "is_deleted" => "Izbrisano", - "new" => "Nova isplata", - "no_cashups_to_display" => "Nema isplate za prikaz", - "none_selected" => "Niste odabrali nijednu isplatu", - "note" => "Napomene", - "one_or_multiple" => "Gotovina", - "open_amount_cash" => "Otvorena gotovina", - "open_date" => "Datum otvaranja", - "open_employee" => "Otvorio", - "opened_date" => "Datum otvaranja", - "successful_adding" => "Isplata je uspješno dodata", - "successful_deleted" => "Isplata je uspješno izbrisata", - "successful_updating" => "Isplata je uspješno ažurirana", - "total" => "Ukupno", - "transfer_amount_cash" => "Ulaz/izlaz gotovine", - "transfer_amount_cash_minus" => "", - "update" => "Ažuriranje isplate", - "warning" => "", + "amount" => "Iznos", + "amount_number" => "Iznos mora biti numerički", + "amount_required" => "Iznos je obavezno polje.", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "Isplata se ne može izbrisati", + "cash_difference" => "", + "close_date" => "Datum zatvaranja", + "close_employee" => "Zatvorio", + "closed_amount_card" => "Kartica", + "closed_amount_cash" => "Zatvorena gotovina", + "closed_amount_check" => "Ček", + "closed_amount_due" => "Taksa", + "closed_amount_giftcard" => "", + "closed_amount_total" => "Ukupno", + "closed_date" => "Datum zatvaranja", + "confirm_delete" => "Da li ste sigurni da želite izbrisati izabrane isplate?", + "confirm_restore" => "Da li ste sigurni da želite vratiti izabranu isplatu?", + "confirm_submit" => "", + "date_number" => "Datum mora biti numerički", + "date_required" => "Datum je obavezno polje", + "description" => "Opis", + "enable_expected" => "", + "error_adding_updating" => "Greška prilikom dodavanja/ažuriranja isplate", + "giftcard" => "", + "id" => "Id", + "info" => "Informacije o isplatama", + "info_employee" => "", + "is_deleted" => "Izbrisano", + "new" => "Nova isplata", + "no_cashups_to_display" => "Nema isplate za prikaz", + "none_selected" => "Niste odabrali nijednu isplatu", + "note" => "Napomene", + "one_or_multiple" => "Gotovina", + "open_amount_cash" => "Otvorena gotovina", + "open_date" => "Datum otvaranja", + "open_employee" => "Otvorio", + "opened_date" => "Datum otvaranja", + "successful_adding" => "Isplata je uspješno dodata", + "successful_deleted" => "Isplata je uspješno izbrisata", + "successful_updating" => "Isplata je uspješno ažurirana", + "total" => "Ukupno", + "transfer_amount_cash" => "Ulaz/izlaz gotovine", + "transfer_amount_cash_minus" => "", + "update" => "Ažuriranje isplate", + "warning" => "", ]; diff --git a/app/Language/bs/Common.php b/app/Language/bs/Common.php index ba1538d46..fa3ed660a 100644 --- a/app/Language/bs/Common.php +++ b/app/Language/bs/Common.php @@ -1,88 +1,88 @@ "Adresa 1", - "address_2" => "Adresa 2", - "admin" => "", - "city" => "Grad", - "clerk" => "", - "close" => "Zatvori", - "color" => "", - "comments" => "Komentari", - "common" => "Zajedničko", - "confirm_search" => "Odabrali ste jedan ili više redova koji neće biti izabrani nakon pretrage. Da li ste sigurni da želite pretragu?", - "copyrights" => "© 2010 - {0}", - "correct_errors" => "Ispravite identifikovane pogreške prije snimanja", - "country" => "Država", - "dashboard" => "", - "date" => "Datum", - "delete" => "Izbriši", - "det" => "Detalji", - "download_import_template" => "Preuzmite šablon za uvoz(CSV)", - "edit" => "Uredi", - "email" => "E-mail", - "email_invalid_format" => "Adresa e-pošte nije u ispravnom formatu.", - "export_csv" => "CSV izvoz", - "export_csv_no" => "Ne", - "export_csv_yes" => "Da", - "fields_required_message" => "Polja u crvenom su obavezna", - "fields_required_message_unique" => "", - "first_name" => "Ime", - "first_name_required" => "Ime je obavezno polje.", - "first_page" => "Prva", - "gender" => "Pol", - "gender_female" => "Ž", - "gender_male" => "M", - "gender_undefined" => "", - "icon" => "Ikona", - "id" => "ID", - "import" => "Uvoz", - "import_change_file" => "Promjena", - "import_csv" => "CSV uvoz", - "import_full_path" => "Potrebna je puna putanja do CSV datoteke", - "import_remove_file" => "Ukloni", - "import_select_file" => "Odaberite datoteku", - "inv" => "Zaliha", - "last_name" => "Prezime", - "last_name_required" => "Prezime je obavezno polje.", - "last_page" => "Poslednja", - "learn_about_project" => "da biste saznali najnovije informacije o projektu.", - "list_of" => "Lista", - "logo" => "Logo", - "logo_mark" => "Znak", - "logout" => "Odjava", - "manager" => "", - "migration_needed" => "Premještanje baze podataka na {0} počinje nakon prijave.", - "new" => "Novi", - "no" => "", - "no_persons_to_display" => "Nema ljudi za prikaz.", - "none_selected_text" => "[Izaberi]", - "or" => "Ili", - "people" => "", - "phone_number" => "Broj telefona", - "phone_number_required" => "Broj telefona je obavezan", - "please_visit_my" => "Posjetite", - "position" => "", - "powered_by" => "Podržano od", - "price" => "Cijena", - "print" => "Štampanje", - "remove" => "Ukloni", - "required" => "Obavezan", - "restore" => "Vrati", - "return_policy" => "Povratna informacija", - "search" => "Traži", - "search_options" => "Opcije pretrage", - "searched_for" => "Traženo", - "software_short" => "OSPOS", - "software_title" => "Prodajno mjesto otvorenog koda", - "state" => "Entitet", - "submit" => "Prihvati", - "total_spent" => "Ukupno potrošeno", - "unknown" => "Nepoznato", - "view_recent_sales" => "Pogledaj nedavne prodaje", - "website" => "opensourcepos.org", - "welcome" => "Dobrodošli", - "welcome_message" => "Dobrodošli u OSPOS, kliknite na modul ispod da biste započeli.", - "yes" => "", - "you_are_using_ospos" => "", - "zip" => "Poštanski broj", + "address_1" => "Adresa 1", + "address_2" => "Adresa 2", + "admin" => "", + "city" => "Grad", + "clerk" => "", + "close" => "Zatvori", + "color" => "", + "comments" => "Komentari", + "common" => "Zajedničko", + "confirm_search" => "Odabrali ste jedan ili više redova koji neće biti izabrani nakon pretrage. Da li ste sigurni da želite pretragu?", + "copyrights" => "© 2010 - {0}", + "correct_errors" => "Ispravite identifikovane pogreške prije snimanja", + "country" => "Država", + "dashboard" => "", + "date" => "Datum", + "delete" => "Izbriši", + "det" => "Detalji", + "download_import_template" => "Preuzmite šablon za uvoz(CSV)", + "edit" => "Uredi", + "email" => "E-mail", + "email_invalid_format" => "Adresa e-pošte nije u ispravnom formatu.", + "export_csv" => "CSV izvoz", + "export_csv_no" => "Ne", + "export_csv_yes" => "Da", + "fields_required_message" => "Polja u crvenom su obavezna", + "fields_required_message_unique" => "", + "first_name" => "Ime", + "first_name_required" => "Ime je obavezno polje.", + "first_page" => "Prva", + "gender" => "Pol", + "gender_female" => "Ž", + "gender_male" => "M", + "gender_undefined" => "", + "icon" => "Ikona", + "id" => "ID", + "import" => "Uvoz", + "import_change_file" => "Promjena", + "import_csv" => "CSV uvoz", + "import_full_path" => "Potrebna je puna putanja do CSV datoteke", + "import_remove_file" => "Ukloni", + "import_select_file" => "Odaberite datoteku", + "inv" => "Zaliha", + "last_name" => "Prezime", + "last_name_required" => "Prezime je obavezno polje.", + "last_page" => "Poslednja", + "learn_about_project" => "da biste saznali najnovije informacije o projektu.", + "list_of" => "Lista", + "logo" => "Logo", + "logo_mark" => "Znak", + "logout" => "Odjava", + "manager" => "", + "migration_needed" => "Premještanje baze podataka na {0} počinje nakon prijave.", + "new" => "Novi", + "no" => "", + "no_persons_to_display" => "Nema ljudi za prikaz.", + "none_selected_text" => "[Izaberi]", + "or" => "Ili", + "people" => "", + "phone_number" => "Broj telefona", + "phone_number_required" => "Broj telefona je obavezan", + "please_visit_my" => "Posjetite", + "position" => "", + "powered_by" => "Podržano od", + "price" => "Cijena", + "print" => "Štampanje", + "remove" => "Ukloni", + "required" => "Obavezan", + "restore" => "Vrati", + "return_policy" => "Povratna informacija", + "search" => "Traži", + "search_options" => "Opcije pretrage", + "searched_for" => "Traženo", + "software_short" => "OSPOS", + "software_title" => "Prodajno mjesto otvorenog koda", + "state" => "Entitet", + "submit" => "Prihvati", + "total_spent" => "Ukupno potrošeno", + "unknown" => "Nepoznato", + "view_recent_sales" => "Pogledaj nedavne prodaje", + "website" => "opensourcepos.org", + "welcome" => "Dobrodošli", + "welcome_message" => "Dobrodošli u OSPOS, kliknite na modul ispod da biste započeli.", + "yes" => "", + "you_are_using_ospos" => "", + "zip" => "Poštanski broj", ]; diff --git a/app/Language/bs/Config.php b/app/Language/bs/Config.php index 6fda475af..cc7ba6590 100644 --- a/app/Language/bs/Config.php +++ b/app/Language/bs/Config.php @@ -1,330 +1,330 @@ "Adresa kompanije", - "address_required" => "Adresa kompanije je obavezno polje.", - "all_set" => "Sva su dopuštenja datoteka ispravno postavljena!", - "allow_duplicate_barcodes" => "Dozvoli dvostruke barkodove", - "apostrophe" => "apostrof", - "backup_button" => "Rezervna kopija", - "backup_database" => "Rezervna kopija baze podataka", - "barcode" => "Barkod", - "barcode_company" => "Kompanija", - "barcode_configuration" => "Konfiguracija barkoda", - "barcode_content" => "Sadržaj barkoda", - "barcode_first_row" => "1 red", - "barcode_font" => "Font", - "barcode_formats" => "Unesi format", - "barcode_generate_if_empty" => "Generiši ako je prazno.", - "barcode_height" => "Visina(px)", - "barcode_id" => "Id / naziv artikla", - "barcode_info" => "Informacije o konfiguraciji barkoda", - "barcode_layout" => "Izgled barkoda", - "barcode_name" => "Naziv", - "barcode_number" => "Barkod", - "barcode_number_in_row" => "Broj u redu", - "barcode_page_cellspacing" => "Prikaži razmak ćelija na stranici.", - "barcode_page_width" => "Širina stranice", - "barcode_price" => "Cijena", - "barcode_second_row" => "2.red", - "barcode_third_row" => "3.red", - "barcode_tooltip" => "Upozorenje: Ova funkcija može prouzrokovati uvoz ili kreiranje duplikata. Ne koristite ako ne želite duple barkodove.", - "barcode_type" => "Tip barkoda", - "barcode_width" => "Širina (px)", - "bottom" => "Dno", - "cash_button" => "", - "cash_button_1" => "", - "cash_button_2" => "", - "cash_button_3" => "", - "cash_button_4" => "", - "cash_button_5" => "", - "cash_button_6" => "", - "cash_decimals" => "Decimale gotovine", - "cash_decimals_tooltip" => "Ako su Decimale gotovine i Valutne decimale iste, onda neće biti zaokruživanja gotovine.", - "cash_rounding" => "Zaokruživanje gotovine", - "category_dropdown" => "Prikaži kategoriju kao padajući meni", - "center" => "Centar", - "change_apperance_tooltip" => "", - "comma" => "zarez", - "company" => "Kompanija", - "company_avatar" => "", - "company_change_image" => "Promijeni logo", - "company_logo" => "Logo kompanije", - "company_remove_image" => "Ukloni logo", - "company_required" => "Naziv kompanije je obavezno polje", - "company_select_image" => "Izaberite sliku", - "company_website_url" => "Veb lokacija kompanije nije važeća URL adresa (http://...).", - "country_codes" => "Kod zemlje", - "country_codes_tooltip" => "Lista kodova zemalja odvojena zarezima za traženje nominalnih adresa.", - "currency_code" => "Kod valute", - "currency_decimals" => "Velutne decimale", - "currency_symbol" => "Simbol valute", - "current_employee_only" => "", - "customer_reward" => "Nagrada", - "customer_reward_duplicate" => "Nagrada mora biti jedinstvena.", - "customer_reward_enable" => "Omogući nagrade kupcima", - "customer_reward_invalid_chars" => "Nagrada ne može sadržavati '_'", - "customer_reward_required" => "Nagrada je obavezno polje", - "customer_sales_tax_support" => "", - "date_or_time_format" => "Filter datuma i vremena", - "datetimeformat" => "Format datuma i vremena", - "decimal_point" => "Decimalna točka", - "default_barcode_font_size_number" => "Veličina fonta za barkod mora biti broj.", - "default_barcode_font_size_required" => "Veličina fonta barkoda je obavezno polje.", - "default_barcode_height_number" => "Visina barkoda mora biti broj.", - "default_barcode_height_required" => "Visina barkoda je obavezno polje.", - "default_barcode_num_in_row_number" => "Broj barkoda u redu mora biti broj.", - "default_barcode_num_in_row_required" => "Broj barkoda u redu je obavezno polje.", - "default_barcode_page_cellspacing_number" => "Razmak između ćelija sa barkodom mora biti broj.", - "default_barcode_page_cellspacing_required" => "Rastojanje ćelija na stranici sa barkodom je obavezno polje.", - "default_barcode_page_width_number" => "Širina stranice sa bar kodom mora biti broj.", - "default_barcode_page_width_required" => "Širina stranice sa barkodom je obavezno polje.", - "default_barcode_width_number" => "Standardna širina barkoda mora biti broj.", - "default_barcode_width_required" => "Širina barkoda je obavezno polje.", - "default_item_columns" => "Vidljiva stavka kolone", - "default_origin_tax_code" => "Šifra poreza", - "default_receivings_discount" => "Popust za ulaze", - "default_receivings_discount_number" => "Popust za ulaz mora biti broj.", - "default_receivings_discount_required" => "Popust za ulaz je obavezno polje.", - "default_sales_discount" => "Popust na prodaju", - "default_sales_discount_number" => "Popust na prodaju mora biti broj.", - "default_sales_discount_required" => "Popust na prodaju je obavezno polje.", - "default_tax_category" => "Poreska kategorija", - "default_tax_code" => "Poreska šifra", - "default_tax_jurisdiction" => "Poreska uprava", - "default_tax_name_number" => "Naziv poreza mora biti string.", - "default_tax_name_required" => "Naziv poreza je obavezno polje.", - "default_tax_rate" => "Stopa poreza %", - "default_tax_rate_1" => "Stopa poreza 1 %", - "default_tax_rate_2" => "Stopa poreza 2 %", - "default_tax_rate_3" => "", - "default_tax_rate_number" => "Stopa poreza mora biti broj.", - "default_tax_rate_required" => "Stopa poreza je obavezno polje.", - "derive_sale_quantity" => "Dozvoli izvedenu količinu prodaje", - "derive_sale_quantity_tooltip" => "Ako se izabere, za artikle naručene po produženom iznosu biće obezbjeđen novi tip artikla", - "dinner_table" => "Sto", - "dinner_table_duplicate" => "Sto mora biti jedinstven.", - "dinner_table_enable" => "Omogući stolove za večeru", - "dinner_table_invalid_chars" => "Naziv stola ne može sadržavati '_'.", - "dinner_table_required" => "Sto je obavezno polje.", - "dot" => "tačka", - "email" => "E-mail", - "email_configuration" => "Konfiguracija e-mail", - "email_mailpath" => "Putanja do Sendmaila", - "email_protocol" => "Protokol", - "email_receipt_check_behaviour" => "Polje za potvrdu e-mail", - "email_receipt_check_behaviour_always" => "Uvijek potvrđeno", - "email_receipt_check_behaviour_last" => "Zapamti poslednji izbor", - "email_receipt_check_behaviour_never" => "Uvijek nepotvrđeno", - "email_smtp_crypto" => "SMTP šifriranje", - "email_smtp_host" => "SMTP Server", - "email_smtp_pass" => "SMTP Lozinka", - "email_smtp_port" => "SMTP Port", - "email_smtp_timeout" => "SMTP pauza", - "email_smtp_user" => "SMTP Korisničko ime", - "enable_avatar" => "", - "enable_avatar_tooltip" => "", - "enable_dropdown_tooltip" => "", - "enable_new_look" => "", - "enable_right_bar" => "", - "enable_right_bar_tooltip" => "", - "enforce_privacy" => "Ostvarite privatnost", - "enforce_privacy_tooltip" => "Zaštitite privatnost kupaca primjenjujući kodiranje podataka u slučaju brisanja njihovih podataka", - "fax" => "Faks", - "file_perm" => "Postoje problemi sa dozvolama za datoteke, popravite i ponovo učitajte ovu stranicu.", - "financial_year" => "Početak fiskalne godine", - "financial_year_apr" => "1. April", - "financial_year_aug" => "1. Avgust", - "financial_year_dec" => "1. Decembar", - "financial_year_feb" => "1. Februar", - "financial_year_jan" => "1. Januar", - "financial_year_jul" => "1. Juli", - "financial_year_jun" => "1. Juni", - "financial_year_mar" => "1. Mart", - "financial_year_may" => "1. Maj", - "financial_year_nov" => "1. Novembar", - "financial_year_oct" => "1. Oktobar", - "financial_year_sep" => "1. Septembar", - "floating_labels" => "Plutajuće etikete", - "gcaptcha_enable" => "Stranica za prijavu reCAPTCHA", - "gcaptcha_secret_key" => "reCAPTCHA tajni ključ", - "gcaptcha_secret_key_required" => "reCAPTCHA tajni ključ je obavezno polje", - "gcaptcha_site_key" => "reCAPTCHA ključ sajta", - "gcaptcha_site_key_required" => "reCAPTCHA Ključ sajta je obavezno polje", - "gcaptcha_tooltip" => "Zaštitite stranicu za prijavu pomoću Google reCAPTCHA, kliknite na ikonu za par API ključeva.", - "general" => "Generalno", - "general_configuration" => "Opšta konfiguracija", - "giftcard_number" => "Broj poklon kartice", - "giftcard_random" => "Generiši nasumice", - "giftcard_series" => "Generiši u seriji", - "image_allowed_file_types" => "Dozvoljeni tipovi datoteka", - "image_max_height_tooltip" => "Maksimalna dozvoljena visina učitavanja slike u pikselima (px).", - "image_max_size_tooltip" => "Maksimalna dozvoljena veličina datoteke za prijenos slike u kilobajtima (kb).", - "image_max_width_tooltip" => "Maksimalna dozvoljena širina slike u pikselima (px).", - "image_restrictions" => "Ograničenja za učitavanje slike", - "include_hsn" => "Uključite podršku za HSN kodove", - "info" => "Informacije", - "info_configuration" => "Info o web trgovini", - "input_groups" => "Grupe unosa", - "integrations" => "Integracije", - "integrations_configuration" => "Integracije trećih strana", - "invoice" => "Faktura", - "invoice_configuration" => "Podešavanja štamapnja", - "invoice_default_comments" => "Komentar na fakturi", - "invoice_email_message" => "Predložak e-mail za fakture", - "invoice_enable" => "Omogući fakturisanje", - "invoice_printer" => "Štampanje faktura", - "invoice_type" => "Tip fakture", - "is_readable" => "čitljiv je, ali dozvole su veće od 660.", - "is_writable" => "može se napisati, ali dozvole su veće od 750.", - "item_markup" => "", - "jsprintsetup_required" => "Upozorenje! Onemogućene opcije će raditi samo ako imate instaliran FireFox jsPrintSetup dodatak. Svakako snimiti?", - "language" => "Jezik", - "last_used_invoice_number" => "Zadnji korišćeni broj fakture", - "last_used_quote_number" => "Zadnji korišćeni broj citata", - "last_used_work_order_number" => "Zadnji korišćeni broj R/N", - "left" => "Lijevo", - "license" => "Licenca", - "license_configuration" => "Izjava o licenci", - "line_sequence" => "Redoslijed linija", - "lines_per_page" => "Linija po stranici", - "lines_per_page_number" => "Redovi po stranici moraju biti broj.", - "lines_per_page_required" => "Broj linija po stranici je obavezno polje.", - "locale" => "Lokalizacija", - "locale_configuration" => "Konfiguracija", - "locale_info" => "Info o lokalnoj konfiguraciji", - "location" => "Skladište", - "location_configuration" => "Lokacije skladišta", - "location_info" => "Informacije o konfiguraciji lokacije", - "login_form" => "Stil formulara za prijavu", - "logout" => "Zar ne želite da napravite rezervnu kopiju prije odjave? Kliknite [OK] za sigurnosnu kopiju, [Cancel] da biste se odjavili.", - "mailchimp" => "MeilChimp", - "mailchimp_api_key" => "MailChimp API ključ", - "mailchimp_configuration" => "MailChimp konfiguracija", - "mailchimp_key_successfully" => "API ključ je važeći.", - "mailchimp_key_unsuccessfully" => "API ključ je nevažeći.", - "mailchimp_lists" => "MailChimp lista(e)", - "mailchimp_tooltip" => "Kliknite na ikonu za API ključ.", - "message" => "Poruke", - "message_configuration" => "Konfigurisanje poruke", - "msg_msg" => "Snimljena tekst poruka", - "msg_msg_placeholder" => "Ako želite koristiti SMS šablon, snimite poruku ovdje. U suprotnom ostavite prazno polje.", - "msg_pwd" => "SMS-API lozinke", - "msg_pwd_required" => "SMS-API lozinke je obavezno polje", - "msg_src" => "SMS-API ID pošiljaoca", - "msg_src_required" => "SMS-API Id pošiljaoca je obavezno polje", - "msg_uid" => "SMS-API korisnika", - "msg_uid_required" => "SMS-API korisnika je obavezno polje", - "multi_pack_enabled" => "Više pakovanja po stavci", - "no_risk" => "Nema rizika / ugroženosti.", - "none" => "nijedan", - "notify_alignment" => "Položaj iskačuće obavijesti", - "number_format" => "Format broja", - "number_locale" => "Lokalizacija", - "number_locale_invalid" => "Unijeti jezik je nevažeći. Provjerite vezu u opisu alatke da biste pronašli važeći jezik.", - "number_locale_required" => "Broj lokacije je obavezno polje.", - "number_locale_tooltip" => "Pronađite odgovarajuću lokaciju na ovom linku.", - "os_timezone" => "OSPOS vremenska zona:", - "ospos_info" => "OSPOS instalacione informacije", - "payment_options_order" => "Narudžba opcije plaćanja", - "perm_risk" => "Dozvole veće od 750 za pisanje i 660 za čitanje dovode ovaj program u rizik.", - "phone" => "Telefon kompanije", - "phone_required" => "Telefon kompanije je obavezno polje.", - "print_bottom_margin" => "Donja margina", - "print_bottom_margin_number" => "Donja margina mora biti broj.", - "print_bottom_margin_required" => "Donja margina je obavezno polje.", - "print_delay_autoreturn" => "Automatski povratak na odgodu prodaje", - "print_delay_autoreturn_number" => "Odgoda automatskog povratka na prodaju je obavezno polje.", - "print_delay_autoreturn_required" => "Odlaganje automatskog povratka na prodaju mora biti broj.", - "print_footer" => "Štampanje podnožja", - "print_header" => "Štampanje zaglavlja", - "print_left_margin" => "Lijeva margina", - "print_left_margin_number" => "Lijeva margina mora biti broj.", - "print_left_margin_required" => "Lijeva margina je obavezno polje.", - "print_receipt_check_behaviour" => "Polje za potvrdu štampanja računa", - "print_receipt_check_behaviour_always" => "Uvijek potvrđeno", - "print_receipt_check_behaviour_last" => "Zapamti poslednji izbor", - "print_receipt_check_behaviour_never" => "Uvijek nepotvrđeno", - "print_right_margin" => "Desna margina", - "print_right_margin_number" => "Desna margina mora biti broj.", - "print_right_margin_required" => "Desna margina je obavezno polje.", - "print_silently" => "Prikaži dijalog za štampanje", - "print_top_margin" => "Gornja margina", - "print_top_margin_number" => "Gornja margina mora biti broj.", - "print_top_margin_required" => "Gornja margina je obavezno polje.", - "quantity_decimals" => "Decimale količine", - "quick_cash_enable" => "", - "quote_default_comments" => "Difoltni komentari citata", - "receipt" => "Račun", - "receipt_category" => "", - "receipt_configuration" => "Podešavanja štamapnja", - "receipt_default" => "Podrazumijevano", - "receipt_font_size" => "Veličina fonta", - "receipt_font_size_number" => "Veličina fonta mora biti broj.", - "receipt_font_size_required" => "Veličina fonta je obavezno polje.", - "receipt_info" => "Informacije o POS računu", - "receipt_printer" => "POS štampač", - "receipt_short" => "Kratko", - "receipt_show_company_name" => "Prikaži kompaniju", - "receipt_show_description" => "Prikaži opis", - "receipt_show_serialnumber" => "Prikaži serijski broj", - "receipt_show_tax_ind" => "Prikaži poreski indikator", - "receipt_show_taxes" => "Prikaži porez", - "receipt_show_total_discount" => "Prikaži ukupni popust", - "receipt_template" => "Šablon računa", - "receiving_calculate_average_price" => "Izrač. prosječnih cijena (ulaza)", - "recv_invoice_format" => "Format računa fakture", - "register_mode_default" => "Mod registracije", - "report_an_issue" => "Prijavi problem", - "return_policy_required" => "Politika povrata je obavezno polje.", - "reward" => "Nagrada", - "reward_configuration" => "Konfigurisanje poklona", - "right" => "Desno", - "sales_invoice_format" => "Format fakture", - "sales_quote_format" => "Format navedene prodaje", - "saved_successfully" => "Konfiguracija je uspješno snimljena.", - "saved_unsuccessfully" => "Konfiguracija nije uspješno snimljena.", - "security_issue" => "Upozorenje o sigurnosnoj ranjivosti", - "server_notice" => "Koristite informacije u nastavku za prijavljivanje problema.", - "service_charge" => "", - "show_due_enable" => "", - "show_office_group" => "Prikaži ikonu kancelarije", - "statistics" => "Pošalji statistiku", - "statistics_tooltip" => "Pošaljite statistiku u svrhu razvoja i poboljšanja funkcija.", - "stock_location" => "Lokacija skladišta", - "stock_location_duplicate" => "Lokacija zaliha mora biti jedinstvena.", - "stock_location_invalid_chars" => "Lokacija skaldišta ne može sadržavati '_'.", - "stock_location_required" => "Lokacija skladišta je obavezno polje.", - "suggestions_fifth_column" => "", - "suggestions_first_column" => "Kolona 1", - "suggestions_fourth_column" => "", - "suggestions_layout" => "Prijedlozi za pretraživanje", - "suggestions_second_column" => "Kolona 2", - "suggestions_third_column" => "Kolona 3", - "system_conf" => "Podešavanja & Konf", - "system_info" => "Sistem Info", - "table" => "Sto", - "table_configuration" => "Konfigurisanje stola", - "takings_printer" => "Štampanje računa", - "tax" => "Porez", - "tax_category" => "Kategorija", - "tax_category_duplicate" => "Unesena kategorija već postoji.", - "tax_category_invalid_chars" => "Unesena kategorija je nevažeća.", - "tax_category_required" => "Obavezna je kategorija.", - "tax_category_used" => "Kategorija se ne može izbrisati jer se koristi.", - "tax_configuration" => "Konfigurisanje poreza", - "tax_decimals" => "Poreske decimale", - "tax_id" => "ID poreza", - "tax_included" => "Uključen porez", - "theme" => "Tema", - "theme_preview" => "Pregled teme:", - "thousands_separator" => "Separator za hiljade", - "timezone" => "Vremenska zona", - "timezone_error" => "Vremenska zona OSPOS razlikuje se od vaše lokalne vremenske zone.", - "top" => "Vrh", - "use_destination_based_tax" => "Koristite porez na osnovu odredišta", - "user_timezone" => "Lokalna vremenska zona:", - "website" => "web stranica", - "wholesale_markup" => "", - "work_order_enable" => "Podnošenje radnog naloga", - "work_order_format" => "Format radnog naloga", + "address" => "Adresa kompanije", + "address_required" => "Adresa kompanije je obavezno polje.", + "all_set" => "Sva su dopuštenja datoteka ispravno postavljena!", + "allow_duplicate_barcodes" => "Dozvoli dvostruke barkodove", + "apostrophe" => "apostrof", + "backup_button" => "Rezervna kopija", + "backup_database" => "Rezervna kopija baze podataka", + "barcode" => "Barkod", + "barcode_company" => "Kompanija", + "barcode_configuration" => "Konfiguracija barkoda", + "barcode_content" => "Sadržaj barkoda", + "barcode_first_row" => "1 red", + "barcode_font" => "Font", + "barcode_formats" => "Unesi format", + "barcode_generate_if_empty" => "Generiši ako je prazno.", + "barcode_height" => "Visina(px)", + "barcode_id" => "Id / naziv artikla", + "barcode_info" => "Informacije o konfiguraciji barkoda", + "barcode_layout" => "Izgled barkoda", + "barcode_name" => "Naziv", + "barcode_number" => "Barkod", + "barcode_number_in_row" => "Broj u redu", + "barcode_page_cellspacing" => "Prikaži razmak ćelija na stranici.", + "barcode_page_width" => "Širina stranice", + "barcode_price" => "Cijena", + "barcode_second_row" => "2.red", + "barcode_third_row" => "3.red", + "barcode_tooltip" => "Upozorenje: Ova funkcija može prouzrokovati uvoz ili kreiranje duplikata. Ne koristite ako ne želite duple barkodove.", + "barcode_type" => "Tip barkoda", + "barcode_width" => "Širina (px)", + "bottom" => "Dno", + "cash_button" => "", + "cash_button_1" => "", + "cash_button_2" => "", + "cash_button_3" => "", + "cash_button_4" => "", + "cash_button_5" => "", + "cash_button_6" => "", + "cash_decimals" => "Decimale gotovine", + "cash_decimals_tooltip" => "Ako su Decimale gotovine i Valutne decimale iste, onda neće biti zaokruživanja gotovine.", + "cash_rounding" => "Zaokruživanje gotovine", + "category_dropdown" => "Prikaži kategoriju kao padajući meni", + "center" => "Centar", + "change_apperance_tooltip" => "", + "comma" => "zarez", + "company" => "Kompanija", + "company_avatar" => "", + "company_change_image" => "Promijeni logo", + "company_logo" => "Logo kompanije", + "company_remove_image" => "Ukloni logo", + "company_required" => "Naziv kompanije je obavezno polje", + "company_select_image" => "Izaberite sliku", + "company_website_url" => "Veb lokacija kompanije nije važeća URL adresa (http://...).", + "country_codes" => "Kod zemlje", + "country_codes_tooltip" => "Lista kodova zemalja odvojena zarezima za traženje nominalnih adresa.", + "currency_code" => "Kod valute", + "currency_decimals" => "Velutne decimale", + "currency_symbol" => "Simbol valute", + "current_employee_only" => "", + "customer_reward" => "Nagrada", + "customer_reward_duplicate" => "Nagrada mora biti jedinstvena.", + "customer_reward_enable" => "Omogući nagrade kupcima", + "customer_reward_invalid_chars" => "Nagrada ne može sadržavati '_'", + "customer_reward_required" => "Nagrada je obavezno polje", + "customer_sales_tax_support" => "", + "date_or_time_format" => "Filter datuma i vremena", + "datetimeformat" => "Format datuma i vremena", + "decimal_point" => "Decimalna točka", + "default_barcode_font_size_number" => "Veličina fonta za barkod mora biti broj.", + "default_barcode_font_size_required" => "Veličina fonta barkoda je obavezno polje.", + "default_barcode_height_number" => "Visina barkoda mora biti broj.", + "default_barcode_height_required" => "Visina barkoda je obavezno polje.", + "default_barcode_num_in_row_number" => "Broj barkoda u redu mora biti broj.", + "default_barcode_num_in_row_required" => "Broj barkoda u redu je obavezno polje.", + "default_barcode_page_cellspacing_number" => "Razmak između ćelija sa barkodom mora biti broj.", + "default_barcode_page_cellspacing_required" => "Rastojanje ćelija na stranici sa barkodom je obavezno polje.", + "default_barcode_page_width_number" => "Širina stranice sa bar kodom mora biti broj.", + "default_barcode_page_width_required" => "Širina stranice sa barkodom je obavezno polje.", + "default_barcode_width_number" => "Standardna širina barkoda mora biti broj.", + "default_barcode_width_required" => "Širina barkoda je obavezno polje.", + "default_item_columns" => "Vidljiva stavka kolone", + "default_origin_tax_code" => "Šifra poreza", + "default_receivings_discount" => "Popust za ulaze", + "default_receivings_discount_number" => "Popust za ulaz mora biti broj.", + "default_receivings_discount_required" => "Popust za ulaz je obavezno polje.", + "default_sales_discount" => "Popust na prodaju", + "default_sales_discount_number" => "Popust na prodaju mora biti broj.", + "default_sales_discount_required" => "Popust na prodaju je obavezno polje.", + "default_tax_category" => "Poreska kategorija", + "default_tax_code" => "Poreska šifra", + "default_tax_jurisdiction" => "Poreska uprava", + "default_tax_name_number" => "Naziv poreza mora biti string.", + "default_tax_name_required" => "Naziv poreza je obavezno polje.", + "default_tax_rate" => "Stopa poreza %", + "default_tax_rate_1" => "Stopa poreza 1 %", + "default_tax_rate_2" => "Stopa poreza 2 %", + "default_tax_rate_3" => "", + "default_tax_rate_number" => "Stopa poreza mora biti broj.", + "default_tax_rate_required" => "Stopa poreza je obavezno polje.", + "derive_sale_quantity" => "Dozvoli izvedenu količinu prodaje", + "derive_sale_quantity_tooltip" => "Ako se izabere, za artikle naručene po produženom iznosu biće obezbjeđen novi tip artikla", + "dinner_table" => "Sto", + "dinner_table_duplicate" => "Sto mora biti jedinstven.", + "dinner_table_enable" => "Omogući stolove za večeru", + "dinner_table_invalid_chars" => "Naziv stola ne može sadržavati '_'.", + "dinner_table_required" => "Sto je obavezno polje.", + "dot" => "tačka", + "email" => "E-mail", + "email_configuration" => "Konfiguracija e-mail", + "email_mailpath" => "Putanja do Sendmaila", + "email_protocol" => "Protokol", + "email_receipt_check_behaviour" => "Polje za potvrdu e-mail", + "email_receipt_check_behaviour_always" => "Uvijek potvrđeno", + "email_receipt_check_behaviour_last" => "Zapamti poslednji izbor", + "email_receipt_check_behaviour_never" => "Uvijek nepotvrđeno", + "email_smtp_crypto" => "SMTP šifriranje", + "email_smtp_host" => "SMTP Server", + "email_smtp_pass" => "SMTP Lozinka", + "email_smtp_port" => "SMTP Port", + "email_smtp_timeout" => "SMTP pauza", + "email_smtp_user" => "SMTP Korisničko ime", + "enable_avatar" => "", + "enable_avatar_tooltip" => "", + "enable_dropdown_tooltip" => "", + "enable_new_look" => "", + "enable_right_bar" => "", + "enable_right_bar_tooltip" => "", + "enforce_privacy" => "Ostvarite privatnost", + "enforce_privacy_tooltip" => "Zaštitite privatnost kupaca primjenjujući kodiranje podataka u slučaju brisanja njihovih podataka", + "fax" => "Faks", + "file_perm" => "Postoje problemi sa dozvolama za datoteke, popravite i ponovo učitajte ovu stranicu.", + "financial_year" => "Početak fiskalne godine", + "financial_year_apr" => "1. April", + "financial_year_aug" => "1. Avgust", + "financial_year_dec" => "1. Decembar", + "financial_year_feb" => "1. Februar", + "financial_year_jan" => "1. Januar", + "financial_year_jul" => "1. Juli", + "financial_year_jun" => "1. Juni", + "financial_year_mar" => "1. Mart", + "financial_year_may" => "1. Maj", + "financial_year_nov" => "1. Novembar", + "financial_year_oct" => "1. Oktobar", + "financial_year_sep" => "1. Septembar", + "floating_labels" => "Plutajuće etikete", + "gcaptcha_enable" => "Stranica za prijavu reCAPTCHA", + "gcaptcha_secret_key" => "reCAPTCHA tajni ključ", + "gcaptcha_secret_key_required" => "reCAPTCHA tajni ključ je obavezno polje", + "gcaptcha_site_key" => "reCAPTCHA ključ sajta", + "gcaptcha_site_key_required" => "reCAPTCHA Ključ sajta je obavezno polje", + "gcaptcha_tooltip" => "Zaštitite stranicu za prijavu pomoću Google reCAPTCHA, kliknite na ikonu za par API ključeva.", + "general" => "Generalno", + "general_configuration" => "Opšta konfiguracija", + "giftcard_number" => "Broj poklon kartice", + "giftcard_random" => "Generiši nasumice", + "giftcard_series" => "Generiši u seriji", + "image_allowed_file_types" => "Dozvoljeni tipovi datoteka", + "image_max_height_tooltip" => "Maksimalna dozvoljena visina učitavanja slike u pikselima (px).", + "image_max_size_tooltip" => "Maksimalna dozvoljena veličina datoteke za prijenos slike u kilobajtima (kb).", + "image_max_width_tooltip" => "Maksimalna dozvoljena širina slike u pikselima (px).", + "image_restrictions" => "Ograničenja za učitavanje slike", + "include_hsn" => "Uključite podršku za HSN kodove", + "info" => "Informacije", + "info_configuration" => "Info o web trgovini", + "input_groups" => "Grupe unosa", + "integrations" => "Integracije", + "integrations_configuration" => "Integracije trećih strana", + "invoice" => "Faktura", + "invoice_configuration" => "Podešavanja štamapnja", + "invoice_default_comments" => "Komentar na fakturi", + "invoice_email_message" => "Predložak e-mail za fakture", + "invoice_enable" => "Omogući fakturisanje", + "invoice_printer" => "Štampanje faktura", + "invoice_type" => "Tip fakture", + "is_readable" => "čitljiv je, ali dozvole su veće od 660.", + "is_writable" => "može se napisati, ali dozvole su veće od 750.", + "item_markup" => "", + "jsprintsetup_required" => "Upozorenje! Onemogućene opcije će raditi samo ako imate instaliran FireFox jsPrintSetup dodatak. Svakako snimiti?", + "language" => "Jezik", + "last_used_invoice_number" => "Zadnji korišćeni broj fakture", + "last_used_quote_number" => "Zadnji korišćeni broj citata", + "last_used_work_order_number" => "Zadnji korišćeni broj R/N", + "left" => "Lijevo", + "license" => "Licenca", + "license_configuration" => "Izjava o licenci", + "line_sequence" => "Redoslijed linija", + "lines_per_page" => "Linija po stranici", + "lines_per_page_number" => "Redovi po stranici moraju biti broj.", + "lines_per_page_required" => "Broj linija po stranici je obavezno polje.", + "locale" => "Lokalizacija", + "locale_configuration" => "Konfiguracija", + "locale_info" => "Info o lokalnoj konfiguraciji", + "location" => "Skladište", + "location_configuration" => "Lokacije skladišta", + "location_info" => "Informacije o konfiguraciji lokacije", + "login_form" => "Stil formulara za prijavu", + "logout" => "Zar ne želite da napravite rezervnu kopiju prije odjave? Kliknite [OK] za sigurnosnu kopiju, [Cancel] da biste se odjavili.", + "mailchimp" => "MeilChimp", + "mailchimp_api_key" => "MailChimp API ključ", + "mailchimp_configuration" => "MailChimp konfiguracija", + "mailchimp_key_successfully" => "API ključ je važeći.", + "mailchimp_key_unsuccessfully" => "API ključ je nevažeći.", + "mailchimp_lists" => "MailChimp lista(e)", + "mailchimp_tooltip" => "Kliknite na ikonu za API ključ.", + "message" => "Poruke", + "message_configuration" => "Konfigurisanje poruke", + "msg_msg" => "Snimljena tekst poruka", + "msg_msg_placeholder" => "Ako želite koristiti SMS šablon, snimite poruku ovdje. U suprotnom ostavite prazno polje.", + "msg_pwd" => "SMS-API lozinke", + "msg_pwd_required" => "SMS-API lozinke je obavezno polje", + "msg_src" => "SMS-API ID pošiljaoca", + "msg_src_required" => "SMS-API Id pošiljaoca je obavezno polje", + "msg_uid" => "SMS-API korisnika", + "msg_uid_required" => "SMS-API korisnika je obavezno polje", + "multi_pack_enabled" => "Više pakovanja po stavci", + "no_risk" => "Nema rizika / ugroženosti.", + "none" => "nijedan", + "notify_alignment" => "Položaj iskačuće obavijesti", + "number_format" => "Format broja", + "number_locale" => "Lokalizacija", + "number_locale_invalid" => "Unijeti jezik je nevažeći. Provjerite vezu u opisu alatke da biste pronašli važeći jezik.", + "number_locale_required" => "Broj lokacije je obavezno polje.", + "number_locale_tooltip" => "Pronađite odgovarajuću lokaciju na ovom linku.", + "os_timezone" => "OSPOS vremenska zona:", + "ospos_info" => "OSPOS instalacione informacije", + "payment_options_order" => "Narudžba opcije plaćanja", + "perm_risk" => "Dozvole veće od 750 za pisanje i 660 za čitanje dovode ovaj program u rizik.", + "phone" => "Telefon kompanije", + "phone_required" => "Telefon kompanije je obavezno polje.", + "print_bottom_margin" => "Donja margina", + "print_bottom_margin_number" => "Donja margina mora biti broj.", + "print_bottom_margin_required" => "Donja margina je obavezno polje.", + "print_delay_autoreturn" => "Automatski povratak na odgodu prodaje", + "print_delay_autoreturn_number" => "Odgoda automatskog povratka na prodaju je obavezno polje.", + "print_delay_autoreturn_required" => "Odlaganje automatskog povratka na prodaju mora biti broj.", + "print_footer" => "Štampanje podnožja", + "print_header" => "Štampanje zaglavlja", + "print_left_margin" => "Lijeva margina", + "print_left_margin_number" => "Lijeva margina mora biti broj.", + "print_left_margin_required" => "Lijeva margina je obavezno polje.", + "print_receipt_check_behaviour" => "Polje za potvrdu štampanja računa", + "print_receipt_check_behaviour_always" => "Uvijek potvrđeno", + "print_receipt_check_behaviour_last" => "Zapamti poslednji izbor", + "print_receipt_check_behaviour_never" => "Uvijek nepotvrđeno", + "print_right_margin" => "Desna margina", + "print_right_margin_number" => "Desna margina mora biti broj.", + "print_right_margin_required" => "Desna margina je obavezno polje.", + "print_silently" => "Prikaži dijalog za štampanje", + "print_top_margin" => "Gornja margina", + "print_top_margin_number" => "Gornja margina mora biti broj.", + "print_top_margin_required" => "Gornja margina je obavezno polje.", + "quantity_decimals" => "Decimale količine", + "quick_cash_enable" => "", + "quote_default_comments" => "Difoltni komentari citata", + "receipt" => "Račun", + "receipt_category" => "", + "receipt_configuration" => "Podešavanja štamapnja", + "receipt_default" => "Podrazumijevano", + "receipt_font_size" => "Veličina fonta", + "receipt_font_size_number" => "Veličina fonta mora biti broj.", + "receipt_font_size_required" => "Veličina fonta je obavezno polje.", + "receipt_info" => "Informacije o POS računu", + "receipt_printer" => "POS štampač", + "receipt_short" => "Kratko", + "receipt_show_company_name" => "Prikaži kompaniju", + "receipt_show_description" => "Prikaži opis", + "receipt_show_serialnumber" => "Prikaži serijski broj", + "receipt_show_tax_ind" => "Prikaži poreski indikator", + "receipt_show_taxes" => "Prikaži porez", + "receipt_show_total_discount" => "Prikaži ukupni popust", + "receipt_template" => "Šablon računa", + "receiving_calculate_average_price" => "Izrač. prosječnih cijena (ulaza)", + "recv_invoice_format" => "Format računa fakture", + "register_mode_default" => "Mod registracije", + "report_an_issue" => "Prijavi problem", + "return_policy_required" => "Politika povrata je obavezno polje.", + "reward" => "Nagrada", + "reward_configuration" => "Konfigurisanje poklona", + "right" => "Desno", + "sales_invoice_format" => "Format fakture", + "sales_quote_format" => "Format navedene prodaje", + "saved_successfully" => "Konfiguracija je uspješno snimljena.", + "saved_unsuccessfully" => "Konfiguracija nije uspješno snimljena.", + "security_issue" => "Upozorenje o sigurnosnoj ranjivosti", + "server_notice" => "Koristite informacije u nastavku za prijavljivanje problema.", + "service_charge" => "", + "show_due_enable" => "", + "show_office_group" => "Prikaži ikonu kancelarije", + "statistics" => "Pošalji statistiku", + "statistics_tooltip" => "Pošaljite statistiku u svrhu razvoja i poboljšanja funkcija.", + "stock_location" => "Lokacija skladišta", + "stock_location_duplicate" => "Lokacija zaliha mora biti jedinstvena.", + "stock_location_invalid_chars" => "Lokacija skaldišta ne može sadržavati '_'.", + "stock_location_required" => "Lokacija skladišta je obavezno polje.", + "suggestions_fifth_column" => "", + "suggestions_first_column" => "Kolona 1", + "suggestions_fourth_column" => "", + "suggestions_layout" => "Prijedlozi za pretraživanje", + "suggestions_second_column" => "Kolona 2", + "suggestions_third_column" => "Kolona 3", + "system_conf" => "Podešavanja & Konf", + "system_info" => "Sistem Info", + "table" => "Sto", + "table_configuration" => "Konfigurisanje stola", + "takings_printer" => "Štampanje računa", + "tax" => "Porez", + "tax_category" => "Kategorija", + "tax_category_duplicate" => "Unesena kategorija već postoji.", + "tax_category_invalid_chars" => "Unesena kategorija je nevažeća.", + "tax_category_required" => "Obavezna je kategorija.", + "tax_category_used" => "Kategorija se ne može izbrisati jer se koristi.", + "tax_configuration" => "Konfigurisanje poreza", + "tax_decimals" => "Poreske decimale", + "tax_id" => "ID poreza", + "tax_included" => "Uključen porez", + "theme" => "Tema", + "theme_preview" => "Pregled teme:", + "thousands_separator" => "Separator za hiljade", + "timezone" => "Vremenska zona", + "timezone_error" => "Vremenska zona OSPOS razlikuje se od vaše lokalne vremenske zone.", + "top" => "Vrh", + "use_destination_based_tax" => "Koristite porez na osnovu odredišta", + "user_timezone" => "Lokalna vremenska zona:", + "website" => "web stranica", + "wholesale_markup" => "", + "work_order_enable" => "Podnošenje radnog naloga", + "work_order_format" => "Format radnog naloga", ]; diff --git a/app/Language/bs/Customers.php b/app/Language/bs/Customers.php index 319160c69..db5eac903 100644 --- a/app/Language/bs/Customers.php +++ b/app/Language/bs/Customers.php @@ -1,56 +1,56 @@ "Račun #", - "account_number_duplicate" => "Broj računa već postoji u bazi podataka.", - "available_points" => "Dostupni poeni", - "available_points_value" => "", - "average" => "Prosječna potrošnja", - "avg_discount" => "Prosječni popust", - "basic_information" => "Informacija", - "cannot_be_deleted" => "Ne može se izbrisati izabrani kupac, jer jedan ili više izabranih kupaca imaju prodaju.", - "company_name" => "Kompanija", - "confirm_delete" => "Želite li izbrisati izabranog kupca?", - "confirm_restore" => "Da li ste sigurni da želite da povratite izabranog kupca?", - "consent" => "Pristanak na registraciju", - "consent_required" => "Prihvatanje registracije je obavezno polje.", - "csv_import_failed" => "Greška kod uvoza iz CSV-a", - "csv_import_nodata_wrongformat" => "Učitana datoteka nema podataka ili je pogrešno formatirana.", - "csv_import_partially_failed" => "Uvoz klijenata je uspio sa nekim greškama:", - "csv_import_success" => "Uvoz korisnika je uspješan.", - "customer" => "Kupac", - "date" => "Datum", - "discount" => "Popust", - "discount_fixed" => "Fiksni popust", - "discount_percent" => "Procenat popusta", - "discount_type" => "Vrsta popusta", - "email_duplicate" => "E-mail adresa već postoji u bazi podataka.", - "employee" => "Zaposlenik", - "error_adding_updating" => "Dodavanje ili ažuriranje kupca nije uspjelo.", - "import_items_csv" => "Uvezi kupce iz CSV datoteke", - "mailchimp_activity_click" => "Klik na e-mail", - "mailchimp_activity_lastopen" => "Zadnji otvoreni e-mail", - "mailchimp_activity_open" => "E-mail otvoren", - "mailchimp_activity_total" => "E-mail poslat", - "mailchimp_activity_unopen" => "E-mail nije otvoren", - "mailchimp_email_client" => "E-mail klijenta", - "mailchimp_info" => "MeilChimp", - "mailchimp_member_rating" => "Ocjena", - "mailchimp_status" => "Status", - "mailchimp_vip" => "VIP", - "max" => "Maks. potrošeno", - "min" => "Min. potrošeno", - "new" => "Novi kupac", - "none_selected" => "Niste izabrali nijednog kupca za brisanje.", - "one_or_multiple" => "kupac(i)", - "quantity" => "Količina", - "stats_info" => "Statistika", - "successful_adding" => "Uspješno ste dodali kupca", - "successful_deleted" => "Kupac je uspješno izbrisan", - "successful_updating" => "Podaci o kupcu su uspješno ažurirani", - "tax_code" => "Poreski broj", - "tax_id" => "Porez Id", - "taxable" => "Oporezivo", - "total" => "Ukupno", - "update" => "Ažuriraj kupca", - "rewards_package" => "Nagrade", + "account_number" => "Račun #", + "account_number_duplicate" => "Broj računa već postoji u bazi podataka.", + "available_points" => "Dostupni poeni", + "available_points_value" => "", + "average" => "Prosječna potrošnja", + "avg_discount" => "Prosječni popust", + "basic_information" => "Informacija", + "cannot_be_deleted" => "Ne može se izbrisati izabrani kupac, jer jedan ili više izabranih kupaca imaju prodaju.", + "company_name" => "Kompanija", + "confirm_delete" => "Želite li izbrisati izabranog kupca?", + "confirm_restore" => "Da li ste sigurni da želite da povratite izabranog kupca?", + "consent" => "Pristanak na registraciju", + "consent_required" => "Prihvatanje registracije je obavezno polje.", + "csv_import_failed" => "Greška kod uvoza iz CSV-a", + "csv_import_nodata_wrongformat" => "Učitana datoteka nema podataka ili je pogrešno formatirana.", + "csv_import_partially_failed" => "Uvoz klijenata je uspio sa nekim greškama:", + "csv_import_success" => "Uvoz korisnika je uspješan.", + "customer" => "Kupac", + "date" => "Datum", + "discount" => "Popust", + "discount_fixed" => "Fiksni popust", + "discount_percent" => "Procenat popusta", + "discount_type" => "Vrsta popusta", + "email_duplicate" => "E-mail adresa već postoji u bazi podataka.", + "employee" => "Zaposlenik", + "error_adding_updating" => "Dodavanje ili ažuriranje kupca nije uspjelo.", + "import_items_csv" => "Uvezi kupce iz CSV datoteke", + "mailchimp_activity_click" => "Klik na e-mail", + "mailchimp_activity_lastopen" => "Zadnji otvoreni e-mail", + "mailchimp_activity_open" => "E-mail otvoren", + "mailchimp_activity_total" => "E-mail poslat", + "mailchimp_activity_unopen" => "E-mail nije otvoren", + "mailchimp_email_client" => "E-mail klijenta", + "mailchimp_info" => "MeilChimp", + "mailchimp_member_rating" => "Ocjena", + "mailchimp_status" => "Status", + "mailchimp_vip" => "VIP", + "max" => "Maks. potrošeno", + "min" => "Min. potrošeno", + "new" => "Novi kupac", + "none_selected" => "Niste izabrali nijednog kupca za brisanje.", + "one_or_multiple" => "kupac(i)", + "quantity" => "Količina", + "stats_info" => "Statistika", + "successful_adding" => "Uspješno ste dodali kupca", + "successful_deleted" => "Kupac je uspješno izbrisan", + "successful_updating" => "Podaci o kupcu su uspješno ažurirani", + "tax_code" => "Poreski broj", + "tax_id" => "Porez Id", + "taxable" => "Oporezivo", + "total" => "Ukupno", + "update" => "Ažuriraj kupca", + "rewards_package" => "Nagrade", ]; diff --git a/app/Language/bs/Datepicker.php b/app/Language/bs/Datepicker.php index 3f2b61497..af982503a 100644 --- a/app/Language/bs/Datepicker.php +++ b/app/Language/bs/Datepicker.php @@ -1,23 +1,23 @@ "Sve", - "apply" => "Primjeni", - "cancel" => "Otkaži", - "custom" => "Slobodan izbor", - "from" => "Od", - "last_30" => "Zadnjih 30 dana", - "last_7" => "Zadnjih 7 dana", - "last_financial_year" => "Prošla fiskalna godina", - "last_month" => "Prošli mjesec", - "last_year" => "Prošla godina", - "same_month_last_year" => "Ovaj mjesec prošle godine", - "same_month_to_same_day_last_year" => "Prošle godine od istog mjeseca do istog dana", - "this_financial_year" => "Trenutna fiskalna godina", - "this_month" => "Ovaj mjesec", - "this_year" => "Ova godina", - "to" => "Do", - "today" => "Danas", - "today_last_year" => "Ovaj dan prošle godine", - "weekstart" => "1", - "yesterday" => "Juče", + "all_time" => "Sve", + "apply" => "Primjeni", + "cancel" => "Otkaži", + "custom" => "Slobodan izbor", + "from" => "Od", + "last_30" => "Zadnjih 30 dana", + "last_7" => "Zadnjih 7 dana", + "last_financial_year" => "Prošla fiskalna godina", + "last_month" => "Prošli mjesec", + "last_year" => "Prošla godina", + "same_month_last_year" => "Ovaj mjesec prošle godine", + "same_month_to_same_day_last_year" => "Prošle godine od istog mjeseca do istog dana", + "this_financial_year" => "Trenutna fiskalna godina", + "this_month" => "Ovaj mjesec", + "this_year" => "Ova godina", + "to" => "Do", + "today" => "Danas", + "today_last_year" => "Ovaj dan prošle godine", + "weekstart" => "1", + "yesterday" => "Juče", ]; diff --git a/app/Language/bs/Employees.php b/app/Language/bs/Employees.php index a2dc24b86..881a06584 100644 --- a/app/Language/bs/Employees.php +++ b/app/Language/bs/Employees.php @@ -1,44 +1,44 @@ "", - "basic_information" => "Informacije", - "cannot_be_deleted" => "Nije moguće izbrisati odabrane zaposlenike, jedan ili više njih su obradili prodaju ili pokušavate izbrisati svoj nalog.", - "change_employee" => "", - "change_password" => "Promijeni lozinku", - "clerk" => "", - "commission" => "", - "confirm_delete" => "Da li ste zaista sigurni da želite da izbrišete izabranog zaposlenika?", - "confirm_restore" => "Da li ste sigurni da želite da vratite izabranog zaposlenika?", - "current_password" => "Trenutna lozinka", - "current_password_invalid" => "Trenutna lozinka je nevažeća.", - "employee" => "Zaposlenik", - "error_adding_updating" => "Dodavanje ili ažuriranje zaposlenika nije uspjelo.", - "error_deleting_demo_admin" => "Ne možete izbrisati demo korisnika administratora.", - "error_updating_demo_admin" => "Ne možete promijeniti korisnika demo administratora.", - "language" => "Jezik", - "login_info" => "Prijava", - "manager" => "", - "new" => "Novi zaposlenik", - "none_selected" => "Nije izabran nijedan zaposlenik za brisanje.", - "one_or_multiple" => "Zaposlenici", - "password" => "Lozinka", - "password_minlength" => "Lozinka mora imati najmanje 8 znakova.", - "password_must_match" => "Lozinke se ne podudaraju.", - "password_not_must_match" => "Trenutna lozinka i nova lozinka moraju biti jedinstvene.", - "password_required" => "Lozinka je obavezna.", - "permission_desc" => "Označite polja u nastavku da biste odobrili pristup modulima.", - "permission_info" => "Dozvole", - "repeat_password" => "Ponovite lozinku", - "subpermission_required" => "Dodajte najmanje jedno odobrenje za svaki modul.", - "successful_adding" => "Uspješno ste dodali zaposlenika.", - "successful_change_password" => "Promjena lozinke je uspješna.", - "successful_deleted" => "Uspješno ste izbrisali zaposlenika", - "successful_updating" => "Uspješno ste ažurirali zaposlenika", - "system_language" => "Sistemski jezik", - "unsuccessful_change_password" => "Promjena lozinke nije uspjela.", - "update" => "Ažuriraj zaposlenika", - "username" => "Korisničko ime", - "username_duplicate" => "Korisničko ime zaposlenog je već u upotrebi. Molimo izaberite drugo.", - "username_minlength" => "Korisničko ime mora imati najmanje 5 znakova.", - "username_required" => "Korisničko ime je obavezno polje.", + "administrator" => "", + "basic_information" => "Informacije", + "cannot_be_deleted" => "Nije moguće izbrisati odabrane zaposlenike, jedan ili više njih su obradili prodaju ili pokušavate izbrisati svoj nalog.", + "change_employee" => "", + "change_password" => "Promijeni lozinku", + "clerk" => "", + "commission" => "", + "confirm_delete" => "Da li ste zaista sigurni da želite da izbrišete izabranog zaposlenika?", + "confirm_restore" => "Da li ste sigurni da želite da vratite izabranog zaposlenika?", + "current_password" => "Trenutna lozinka", + "current_password_invalid" => "Trenutna lozinka je nevažeća.", + "employee" => "Zaposlenik", + "error_adding_updating" => "Dodavanje ili ažuriranje zaposlenika nije uspjelo.", + "error_deleting_demo_admin" => "Ne možete izbrisati demo korisnika administratora.", + "error_updating_demo_admin" => "Ne možete promijeniti korisnika demo administratora.", + "language" => "Jezik", + "login_info" => "Prijava", + "manager" => "", + "new" => "Novi zaposlenik", + "none_selected" => "Nije izabran nijedan zaposlenik za brisanje.", + "one_or_multiple" => "Zaposlenici", + "password" => "Lozinka", + "password_minlength" => "Lozinka mora imati najmanje 8 znakova.", + "password_must_match" => "Lozinke se ne podudaraju.", + "password_not_must_match" => "Trenutna lozinka i nova lozinka moraju biti jedinstvene.", + "password_required" => "Lozinka je obavezna.", + "permission_desc" => "Označite polja u nastavku da biste odobrili pristup modulima.", + "permission_info" => "Dozvole", + "repeat_password" => "Ponovite lozinku", + "subpermission_required" => "Dodajte najmanje jedno odobrenje za svaki modul.", + "successful_adding" => "Uspješno ste dodali zaposlenika.", + "successful_change_password" => "Promjena lozinke je uspješna.", + "successful_deleted" => "Uspješno ste izbrisali zaposlenika", + "successful_updating" => "Uspješno ste ažurirali zaposlenika", + "system_language" => "Sistemski jezik", + "unsuccessful_change_password" => "Promjena lozinke nije uspjela.", + "update" => "Ažuriraj zaposlenika", + "username" => "Korisničko ime", + "username_duplicate" => "Korisničko ime zaposlenog je već u upotrebi. Molimo izaberite drugo.", + "username_minlength" => "Korisničko ime mora imati najmanje 5 znakova.", + "username_required" => "Korisničko ime je obavezno polje.", ]; diff --git a/app/Language/bs/Enum.php b/app/Language/bs/Enum.php index 8f2b8ac6d..c6b66aeeb 100644 --- a/app/Language/bs/Enum.php +++ b/app/Language/bs/Enum.php @@ -1,10 +1,10 @@ "Pola dolje", - "half_even" => "Pola ravnomjerno", - "half_five" => "Pola na pet", - "half_odd" => "Pola neparno", - "half_up" => "Pola gore", - "round_down" => "Zaokruži naniže", - "round_up" => "Zaokruži naviše", + "half_down" => "Pola dolje", + "half_even" => "Pola ravnomjerno", + "half_five" => "Pola na pet", + "half_odd" => "Pola neparno", + "half_up" => "Pola gore", + "round_down" => "Zaokruži naniže", + "round_up" => "Zaokruži naviše", ]; diff --git a/app/Language/bs/Error.php b/app/Language/bs/Error.php index 26c326893..4160b4ad7 100644 --- a/app/Language/bs/Error.php +++ b/app/Language/bs/Error.php @@ -1,5 +1,5 @@ "Nemate dozvolu za pristup modulu", - "unknown" => "Neočekivana greška", + "no_permission_module" => "Nemate dozvolu za pristup modulu", + "unknown" => "Neočekivana greška", ]; diff --git a/app/Language/bs/Expenses.php b/app/Language/bs/Expenses.php index 639014048..69133a51a 100644 --- a/app/Language/bs/Expenses.php +++ b/app/Language/bs/Expenses.php @@ -1,50 +1,50 @@ "Dodaj trošak", - "amount" => "Iznos", - "amount_number" => "Iznos mora biti broj", - "amount_required" => "Iznos troška je obavezan", - "by_category" => "Kategorija", - "cannot_be_deleted" => "Nije moguće izbrisati kategoriju", - "cash" => "Gotovina", - "cash_filter" => "Gotovina", - "categories_name" => "Kategorija", - "category_required" => "kategorija je obavezno polje", - "check" => "Ček", - "check_filter" => "Ček", - "confirm_delete" => "Da li ste sigurni da želite da izbrišete izabrane troškove?", - "confirm_restore" => "Da li ste sigurni da želite da vratite izabrane troškove?", - "credit" => "Kreditna kartica", - "credit_filter" => "Kreditna kartica", - "date" => "Datum", - "date_number" => "datum mora biti broj", - "date_required" => "datum je obavezno polje", - "debit" => "Dugovna kartica", - "debit_filter" => "Dugovna kartica", - "description" => "Opis", - "due" => "Dospijeće", - "due_filter" => "Dospijeće", - "employee" => "Napravio", - "error_adding_updating" => "Greška pri dodavanju / ažuriranju troškova", - "expense_id" => "Id", - "expenses_employee" => "Zaposlenik", - "info" => "Informacije o troškovima", - "ip_address" => "", - "is_deleted" => "Izbrisano", - "name_required" => "Naziv troška je obavezan", - "new" => "Novi trošak", - "new_supplier" => "", - "no_expenses_to_display" => "Nema troškova za prikaz", - "none_selected" => "Niste odabrali nijedan trošak", - "one_or_multiple" => "Trošak(ovi)", - "payment" => "Vrsta plaćanja", - "start_typing_supplier_name" => "Počnite pisati ime dobavljača...", - "successful_adding" => "Dodavanje troškova uspješno", - "successful_deleted" => "Brisanje troškova uspješno", - "successful_updating" => "Ažuriranje troškova uspješno", - "supplier_name" => "Dobavljač", - "supplier_tax_code" => "Poreski broj", - "tax_amount" => "Porez", - "tax_amount_number" => "", - "update" => "Ažuriraj trošak", + "add_item" => "Dodaj trošak", + "amount" => "Iznos", + "amount_number" => "Iznos mora biti broj", + "amount_required" => "Iznos troška je obavezan", + "by_category" => "Kategorija", + "cannot_be_deleted" => "Nije moguće izbrisati kategoriju", + "cash" => "Gotovina", + "cash_filter" => "Gotovina", + "categories_name" => "Kategorija", + "category_required" => "kategorija je obavezno polje", + "check" => "Ček", + "check_filter" => "Ček", + "confirm_delete" => "Da li ste sigurni da želite da izbrišete izabrane troškove?", + "confirm_restore" => "Da li ste sigurni da želite da vratite izabrane troškove?", + "credit" => "Kreditna kartica", + "credit_filter" => "Kreditna kartica", + "date" => "Datum", + "date_number" => "datum mora biti broj", + "date_required" => "datum je obavezno polje", + "debit" => "Dugovna kartica", + "debit_filter" => "Dugovna kartica", + "description" => "Opis", + "due" => "Dospijeće", + "due_filter" => "Dospijeće", + "employee" => "Napravio", + "error_adding_updating" => "Greška pri dodavanju / ažuriranju troškova", + "expense_id" => "Id", + "expenses_employee" => "Zaposlenik", + "info" => "Informacije o troškovima", + "ip_address" => "", + "is_deleted" => "Izbrisano", + "name_required" => "Naziv troška je obavezan", + "new" => "Novi trošak", + "new_supplier" => "", + "no_expenses_to_display" => "Nema troškova za prikaz", + "none_selected" => "Niste odabrali nijedan trošak", + "one_or_multiple" => "Trošak(ovi)", + "payment" => "Vrsta plaćanja", + "start_typing_supplier_name" => "Počnite pisati ime dobavljača...", + "successful_adding" => "Dodavanje troškova uspješno", + "successful_deleted" => "Brisanje troškova uspješno", + "successful_updating" => "Ažuriranje troškova uspješno", + "supplier_name" => "Dobavljač", + "supplier_tax_code" => "Poreski broj", + "tax_amount" => "Porez", + "tax_amount_number" => "", + "update" => "Ažuriraj trošak", ]; diff --git a/app/Language/bs/Expenses_categories.php b/app/Language/bs/Expenses_categories.php index 7dc075153..d4edccb96 100644 --- a/app/Language/bs/Expenses_categories.php +++ b/app/Language/bs/Expenses_categories.php @@ -1,22 +1,22 @@ "Naziv kategorije je obavezan", - "add_item" => "Dodaj kategoriju", - "cannot_be_deleted" => "Nije moguće izbrisati kategoriju", - "category_id" => "Id", - "confirm_delete" => "Da li ste sigurni da želite da izbrišete izabranu kategoriju?", - "confirm_restore" => "Da li ste sigurni da želite da vratite izabranu kategoriju?", - "description" => "Opis Kategorije", - "error_adding_updating" => "Greška prilikom dodavanja / ažuriranja kategorije", - "info" => "Informacije o Kategoriji", - "name" => "Naziv Kategorije", - "new" => "Nova Kategorija", - "no_expenses_categories_to_display" => "Nema kategorije za prikaz", - "none_selected" => "Niste odabrali nijednu Kategoriju", - "one_or_multiple" => "Kategorija", - "quantity" => "Količina", - "successful_adding" => "Kategorija je uspješno dodata", - "successful_deleted" => "Brisanje kategorije je uspješno", - "successful_updating" => "Ažuriranje kategorije je uspješno", - "update" => "Ažuriraj kategoriju", + "category_name_required" => "Naziv kategorije je obavezan", + "add_item" => "Dodaj kategoriju", + "cannot_be_deleted" => "Nije moguće izbrisati kategoriju", + "category_id" => "Id", + "confirm_delete" => "Da li ste sigurni da želite da izbrišete izabranu kategoriju?", + "confirm_restore" => "Da li ste sigurni da želite da vratite izabranu kategoriju?", + "description" => "Opis Kategorije", + "error_adding_updating" => "Greška prilikom dodavanja / ažuriranja kategorije", + "info" => "Informacije o Kategoriji", + "name" => "Naziv Kategorije", + "new" => "Nova Kategorija", + "no_expenses_categories_to_display" => "Nema kategorije za prikaz", + "none_selected" => "Niste odabrali nijednu Kategoriju", + "one_or_multiple" => "Kategorija", + "quantity" => "Količina", + "successful_adding" => "Kategorija je uspješno dodata", + "successful_deleted" => "Brisanje kategorije je uspješno", + "successful_updating" => "Ažuriranje kategorije je uspješno", + "update" => "Ažuriraj kategoriju", ]; diff --git a/app/Language/bs/Giftcards.php b/app/Language/bs/Giftcards.php index 8ec5b264b..714fd2a12 100644 --- a/app/Language/bs/Giftcards.php +++ b/app/Language/bs/Giftcards.php @@ -1,71 +1,71 @@ "Zaliha za dodavanje ili oduzimanje.", - "allow_alt_description" => "Dozvoli Alt opis", - "bulk_edit" => "Skupno uređivanje", - "cannot_be_deleted" => "Nije moguće izbrisati poklon karticu, jedna ili više poklon kartica ima prodaju.", - "cannot_find_giftcard" => "Poklon kartica nije pronađena.", - "cannot_use" => "Poklon kartica {0} se ne može koristiti za ovu prodaju: nevažeći kupac.", - "card_value" => "Vrijednost", - "category" => "Kategorija", - "change_all_to_allow_alt_desc" => "Dozvoli alternativni opis za sve.", - "change_all_to_not_allow_allow_desc" => "Nije dozvoljen alternativni opis za sve.", - "change_all_to_serialized" => "Promijeni sve u serijalizovano", - "change_all_to_unserialized" => "Promijeni sve u neserijalizovano", - "confirm_bulk_edit" => "Da li ste sigurni da želite da uredite izabranu poklon karticu(e)?", - "confirm_delete" => "Da li ste sigurni da želite da izbrišete izabranu poklon karticu(e)?", - "confirm_restore" => "Da li ste sigurni da želite da vratite izabranu poklon karticu(e)?", - "cost_price" => "Fakturna cijena", - "count" => "Ažuriraj zalihu", - "csv_import_failed" => "CSV uvoz nije uspio.", - "current_quantity" => "Trenutna količina", - "description" => "Opis", - "details_count" => "Detalji o popisu zaliha", - "do_nothing" => "Ne radi ništa", - "edit_fields_you_want_to_update" => "Uredite polja za izabrane poklon kartice.", - "edit_multiple_giftcards" => "Uređivanje više poklon kartica.", - "error_adding_updating" => "Dodavanje ili ažuriranje poklon kartice nije uspjelo.", - "error_updating_multiple" => "Ažuriranje poklon kartice(a) nije uspjelo.", - "generate_barcodes" => "Generiši barkod", - "giftcard" => "Poklon kartica", - "giftcard_number" => "Broj poklon kartice", - "info_provided_by" => "Informacije pruža", - "inventory_comments" => "Komentari", - "is_serialized" => "Poklon kartica ima serijski broj", - "low_inventory_giftcards" => "Poklon kartice niske zalihe", - "manually_editing_of_quantity" => "Ručna promjena količine", - "must_select_giftcard_for_barcode" => "Morate izabrati najmanje jednu (1) poklon karticu za generisanje bar kodova.", - "new" => "Nova poklon kartica", - "no_description_giftcards" => "Poklon kartica nema opisa", - "no_giftcards_to_display" => "Nema poklon kartica za prikaz.", - "none" => "Ništa", - "none_selected" => "Nijedna poklon kartica nije izabrana za uređivanje.", - "number" => "Broj poklon kartice mora biti broj.", - "number_information" => "Broj poklon kartice", - "number_required" => "Broj poklon kartice je obavezno polje.", - "one_or_multiple" => "Poklon kartica(e)", - "person_id" => "Kupac", - "quantity" => "Količina", - "quantity_required" => "Količina je obavezno polje. Zatvorite (X) da biste odustali.", - "remaining_balance" => "Na poklon kartici {0} ostala je još vrijednost {1}!", - "reorder_level" => "Nivo narudžbe", - "retrive_giftcard_info" => "Preuzmi informacije o poklon kartici", - "sales_tax_1" => "Prodajni porez 1", - "sales_tax_2" => "Prodajni porez 2", - "serialized_giftcards" => "Serijalizovane poklon kartice", - "successful_adding" => "Uspješno ste dodali poklon karticu", - "successful_bulk_edit" => "Uspješno ste ažurirali izabranu poklon karticu(e)", - "successful_deleted" => "Uspješno ste izbrisali poklon karticu", - "successful_updating" => "Uspješno ste ažurirali poklon karticu", - "supplier" => "Dobavljač", - "tax_1" => "Porez 1", - "tax_2" => "Porez 2", - "tax_percent" => "% poreza", - "tax_percents" => "% poreza", - "unit_price" => "Maloprodajna cijena", - "upc_database" => "Barkod tablica", - "update" => "Ažurirajte poklon karticu", - "use_inventory_menu" => "Koristite meni zalihe", - "value" => "Vrijednost poklon kartice mora biti broj.", - "value_required" => "Vrijednost poklon kartice je obavezno polje.", + "add_minus" => "Zaliha za dodavanje ili oduzimanje.", + "allow_alt_description" => "Dozvoli Alt opis", + "bulk_edit" => "Skupno uređivanje", + "cannot_be_deleted" => "Nije moguće izbrisati poklon karticu, jedna ili više poklon kartica ima prodaju.", + "cannot_find_giftcard" => "Poklon kartica nije pronađena.", + "cannot_use" => "Poklon kartica {0} se ne može koristiti za ovu prodaju: nevažeći kupac.", + "card_value" => "Vrijednost", + "category" => "Kategorija", + "change_all_to_allow_alt_desc" => "Dozvoli alternativni opis za sve.", + "change_all_to_not_allow_allow_desc" => "Nije dozvoljen alternativni opis za sve.", + "change_all_to_serialized" => "Promijeni sve u serijalizovano", + "change_all_to_unserialized" => "Promijeni sve u neserijalizovano", + "confirm_bulk_edit" => "Da li ste sigurni da želite da uredite izabranu poklon karticu(e)?", + "confirm_delete" => "Da li ste sigurni da želite da izbrišete izabranu poklon karticu(e)?", + "confirm_restore" => "Da li ste sigurni da želite da vratite izabranu poklon karticu(e)?", + "cost_price" => "Fakturna cijena", + "count" => "Ažuriraj zalihu", + "csv_import_failed" => "CSV uvoz nije uspio.", + "current_quantity" => "Trenutna količina", + "description" => "Opis", + "details_count" => "Detalji o popisu zaliha", + "do_nothing" => "Ne radi ništa", + "edit_fields_you_want_to_update" => "Uredite polja za izabrane poklon kartice.", + "edit_multiple_giftcards" => "Uređivanje više poklon kartica.", + "error_adding_updating" => "Dodavanje ili ažuriranje poklon kartice nije uspjelo.", + "error_updating_multiple" => "Ažuriranje poklon kartice(a) nije uspjelo.", + "generate_barcodes" => "Generiši barkod", + "giftcard" => "Poklon kartica", + "giftcard_number" => "Broj poklon kartice", + "info_provided_by" => "Informacije pruža", + "inventory_comments" => "Komentari", + "is_serialized" => "Poklon kartica ima serijski broj", + "low_inventory_giftcards" => "Poklon kartice niske zalihe", + "manually_editing_of_quantity" => "Ručna promjena količine", + "must_select_giftcard_for_barcode" => "Morate izabrati najmanje jednu (1) poklon karticu za generisanje bar kodova.", + "new" => "Nova poklon kartica", + "no_description_giftcards" => "Poklon kartica nema opisa", + "no_giftcards_to_display" => "Nema poklon kartica za prikaz.", + "none" => "Ništa", + "none_selected" => "Nijedna poklon kartica nije izabrana za uređivanje.", + "number" => "Broj poklon kartice mora biti broj.", + "number_information" => "Broj poklon kartice", + "number_required" => "Broj poklon kartice je obavezno polje.", + "one_or_multiple" => "Poklon kartica(e)", + "person_id" => "Kupac", + "quantity" => "Količina", + "quantity_required" => "Količina je obavezno polje. Zatvorite (X) da biste odustali.", + "remaining_balance" => "Na poklon kartici {0} ostala je još vrijednost {1}!", + "reorder_level" => "Nivo narudžbe", + "retrive_giftcard_info" => "Preuzmi informacije o poklon kartici", + "sales_tax_1" => "Prodajni porez 1", + "sales_tax_2" => "Prodajni porez 2", + "serialized_giftcards" => "Serijalizovane poklon kartice", + "successful_adding" => "Uspješno ste dodali poklon karticu", + "successful_bulk_edit" => "Uspješno ste ažurirali izabranu poklon karticu(e)", + "successful_deleted" => "Uspješno ste izbrisali poklon karticu", + "successful_updating" => "Uspješno ste ažurirali poklon karticu", + "supplier" => "Dobavljač", + "tax_1" => "Porez 1", + "tax_2" => "Porez 2", + "tax_percent" => "% poreza", + "tax_percents" => "% poreza", + "unit_price" => "Maloprodajna cijena", + "upc_database" => "Barkod tablica", + "update" => "Ažurirajte poklon karticu", + "use_inventory_menu" => "Koristite meni zalihe", + "value" => "Vrijednost poklon kartice mora biti broj.", + "value_required" => "Vrijednost poklon kartice je obavezno polje.", ]; diff --git a/app/Language/bs/Item_kits.php b/app/Language/bs/Item_kits.php index 97ef4bef7..61b0636e1 100644 --- a/app/Language/bs/Item_kits.php +++ b/app/Language/bs/Item_kits.php @@ -1,41 +1,41 @@ "Dodaj artikal", - "all" => "Sve", - "cannot_be_deleted" => "Brisanje kompleta artikala nije uspjelo.", - "confirm_delete" => "Da li ste sigurni da želite izbrisati izabrani komplet artikala?", - "confirm_restore" => "Da li ste sigurni da želite da vratite izabrane komplete stavki?", - "description" => "Opis kompleta", - "discount" => "Popust", - "discount_fixed" => "Fiksni popust", - "discount_percent" => "Procenat popusta", - "discount_type" => "Vrsta popusta", - "error_adding_updating" => "Dodavanje ili ažuriranje kompleta artikala nije uspjelo.", - "find_kit_item" => "Stavka kompleta", - "info" => "Informacije o kompletu", - "item" => "Artikal", - "item_kit_number" => "Barkod", - "item_kit_number_duplicate" => "Broj kompleta predmeta već je prisutan u bazi podataka.", - "item_number" => "", - "item_number_duplicate" => "", - "items" => "Artikli", - "kit" => "ID kompleta", - "kit_and_components" => "Komplet i komponente", - "kit_and_stock" => "Komplet i zaliha", - "kit_only" => "Samo komplet", - "name" => "Naziv kompleta", - "new" => "Novi komplet", - "no_item_kits_to_display" => "Nema kompleta artikala za prikaz.", - "none_selected" => "Niste odabrali nijedan komplet artikala.", - "one_or_multiple" => "Stavka(e) kompleta", - "price_option" => "Opcija cijene", - "priced_only" => "Samo po cijeni", - "print_option" => "Opcija štampanja", - "quantity" => "Količina", - "sequence" => "Redoslijed", - "successful_adding" => "Uspješno ste dodali komplet", - "successful_deleted" => "Uspješno ste izbrisali komplet", - "successful_updating" => "Uspješno ste ažurirali komplet", - "unit_price" => "", - "update" => "Ažuriranje komplet", + "add_item" => "Dodaj artikal", + "all" => "Sve", + "cannot_be_deleted" => "Brisanje kompleta artikala nije uspjelo.", + "confirm_delete" => "Da li ste sigurni da želite izbrisati izabrani komplet artikala?", + "confirm_restore" => "Da li ste sigurni da želite da vratite izabrane komplete stavki?", + "description" => "Opis kompleta", + "discount" => "Popust", + "discount_fixed" => "Fiksni popust", + "discount_percent" => "Procenat popusta", + "discount_type" => "Vrsta popusta", + "error_adding_updating" => "Dodavanje ili ažuriranje kompleta artikala nije uspjelo.", + "find_kit_item" => "Stavka kompleta", + "info" => "Informacije o kompletu", + "item" => "Artikal", + "item_kit_number" => "Barkod", + "item_kit_number_duplicate" => "Broj kompleta predmeta već je prisutan u bazi podataka.", + "item_number" => "", + "item_number_duplicate" => "", + "items" => "Artikli", + "kit" => "ID kompleta", + "kit_and_components" => "Komplet i komponente", + "kit_and_stock" => "Komplet i zaliha", + "kit_only" => "Samo komplet", + "name" => "Naziv kompleta", + "new" => "Novi komplet", + "no_item_kits_to_display" => "Nema kompleta artikala za prikaz.", + "none_selected" => "Niste odabrali nijedan komplet artikala.", + "one_or_multiple" => "Stavka(e) kompleta", + "price_option" => "Opcija cijene", + "priced_only" => "Samo po cijeni", + "print_option" => "Opcija štampanja", + "quantity" => "Količina", + "sequence" => "Redoslijed", + "successful_adding" => "Uspješno ste dodali komplet", + "successful_deleted" => "Uspješno ste izbrisali komplet", + "successful_updating" => "Uspješno ste ažurirali komplet", + "unit_price" => "", + "update" => "Ažuriranje komplet", ]; diff --git a/app/Language/bs/Items.php b/app/Language/bs/Items.php index 2a870e3b8..c2e0ecc4a 100644 --- a/app/Language/bs/Items.php +++ b/app/Language/bs/Items.php @@ -1,120 +1,120 @@ "Zaliha za dodavanje ili oduzimanje.", - "allow_alt_description" => "Dozvoli Alt opis", - "amount_entry" => "Unos iznosa", - "bulk_edit" => "Skupno uređivanje", - "buy_price_required" => "Nabavna cijena je obavezno polje.", - "cannot_be_deleted" => "Nije moguće izbrisati izabrane artikle, jedan ili više izabranih predmeta imaju prodaju.", - "cannot_find_item" => "Artikal nije pronađen.", - "categories" => "", - "category" => "Kategorija", - "category_new" => "", - "category_required" => "Kategorija je obavezno polje.", - "change_all_to_allow_alt_desc" => "Dozvoli alternativni opis za sve.", - "change_all_to_not_allow_allow_desc" => "Ne dozvoli alternativni opis za sve.", - "change_all_to_serialized" => "Promijeni sve u seriju", - "change_all_to_unserialized" => "Promijenite sve u ne seriju", - "change_image" => "Promijeni sliku", - "confirm_bulk_edit" => "Da li ste sigurni da želite urediti izabrane artikle?", - "confirm_bulk_edit_wipe_taxes" => "Sve informacije o porezu na artikal biće zamjenjene.", - "confirm_delete" => "Da li ste sigurni da želite izbrisati izabrani artikal?", - "confirm_restore" => "Da li ste sigurni da želite da vratite izabrani artikal?", - "cost_price" => "Fakturna cijena", - "cost_price_number" => "Fakturna cijena mora biti broj.", - "cost_price_required" => "Fakturna cijena je obavezno polje.", - "count" => "Ažuriraj zalihu", - "csv_import_failed" => "Uvoz CSV-a nije uspio", - "csv_import_nodata_wrongformat" => "Učitana CSV datoteka nema podatke ili je pogrešno formatirana.", - "csv_import_partially_failed" => "Bilo je {0} grešaka pri uvozu stavke na liniji: {1}. Nijedan red nije uvezen.", - "csv_import_success" => "Uvoz CSV stavke je uspješan.", - "current_quantity" => "Trenutna količina", - "default_pack_name" => "Svaki", - "description" => "Opis", - "details_count" => "Detalji o količinama zalihe", - "do_nothing" => "Ne radi ništa", - "edit" => "", - "edit_fields_you_want_to_update" => "Uredite željena polja za odabrane artikle.", - "edit_multiple_items" => "Uređivanje više artikala", - "empty_upc_items" => "Artikli sa praznim barkodom", - "error_adding_updating" => "Greška pri dodavanju / ažuriranju artikla", - "error_updating_multiple" => "Greška pri ažuriranju artikala", - "generate_barcodes" => "Generiši barkod", - "hsn_code" => "Nomenklatura sistema usklađena", - "image" => "Slika", - "import_items_csv" => "Uvezi artikle iz CSV datoteke", - "info_provided_by" => "Informacije pruža", - "inventory" => "Zaliha", - "inventory_CSV_import_quantity" => "Količina uvezena iz CSV-a", - "inventory_comments" => "Komentari", - "inventory_data_tracking" => "Praćenje podataka zalihe", - "inventory_date" => "Datum", - "inventory_employee" => "Zaposlenik", - "inventory_in_out_quantity" => "Količina ulaz/izlaz", - "inventory_remarks" => "Napomene", - "is_deleted" => "Izbrisano", - "is_printed" => "", - "is_serialized" => "Artikal ima ser. broj", - "item" => "Artikal", - "item_id" => "", - "item_number" => "Barkod", - "item_number_duplicate" => "Broj artikla već postoji u bazi podataka.", - "kit" => "Komplet", - "location" => "Mjesto", - "low_inventory_items" => "Prodaja artikala", - "low_sell_item" => "Niska prodaja artikla", - "manually_editing_of_quantity" => "Ručno uređivanje količine", - "markup" => "", - "name" => "Naziv artikla", - "name_required" => "Naziv artikla je obavezno polje.", - "new" => "Novi artikal", - "no_description_items" => "Artikal nema opisa", - "no_items_to_display" => "Nema artikala za prikaz.", - "none" => "Nijedan", - "none_selected" => "Niste odabrali nijedan artikal za uređivanje", - "nonstock" => "Bez zaliha", - "number_information" => "Redni broj", - "number_required" => "Barkod je obavezno polje.", - "one_or_multiple" => "artikal(i)", - "pack_name" => "Naziv pakovanja", - "qty_per_pack" => "Količina po pakovanju", - "quantity" => "Količina", - "quantity_number" => "Količina mora biti broj.", - "quantity_required" => "Količina je obavezno polje.", - "receiving_quantity" => "Zaprimljena količina", - "remove_image" => "Ukloni sliku", - "reorder_level" => "Minimalna zaliha", - "reorder_level_number" => "Nivo preuređivanja mora biti broj.", - "reorder_level_required" => "Nivo preuređivanja je obavezno polje.", - "retrive_item_info" => "Preuzmi informacije o artiklu", - "sales_tax_1" => "Prodajni porez", - "sales_tax_2" => "Prodajni porez 2", - "search_attributes" => "Pretraživanje atributa", - "select_image" => "Izaberite sliku", - "serialized_items" => "Artikal ima ser. broj", - "standard" => "Standard", - "stock" => "Skladište", - "stock_location" => "Mjesto skladišta", - "stock_type" => "Vrsta zalihe", - "successful_adding" => "Uspješno ste dodali artikal", - "successful_bulk_edit" => "Uspješno ste ažurirali izabrane artikle", - "successful_deleted" => "Uspješno ste izbrisali artikal", - "successful_updating" => "Uspješno ste ažurirali artikal", - "supplier" => "Dobavljač", - "tax_1" => "Porez 1", - "tax_2" => "Porez 2", - "tax_3" => "", - "tax_category" => "Kategorija poreza", - "tax_percent" => "Procenat poreza", - "tax_percent_number" => "Procenat poreza mora biti numerička vrijednost", - "tax_percent_required" => "Procenat poreza je obavezno polje.", - "tax_percents" => "Porez %", - "temp" => "Privremeno", - "type" => "Vrsta artikla", - "unit_price" => "Maloprodajna cijena", - "unit_price_number" => "Jedinična cijena mora biti broj.", - "unit_price_required" => "Maloprodajna cijena je obavezno polje.", - "upc_database" => "Baza podataka bar-kodova", - "update" => "Ažuriraj artikal", - "use_inventory_menu" => "Koristite meni zalihe", + "add_minus" => "Zaliha za dodavanje ili oduzimanje.", + "allow_alt_description" => "Dozvoli Alt opis", + "amount_entry" => "Unos iznosa", + "bulk_edit" => "Skupno uređivanje", + "buy_price_required" => "Nabavna cijena je obavezno polje.", + "cannot_be_deleted" => "Nije moguće izbrisati izabrane artikle, jedan ili više izabranih predmeta imaju prodaju.", + "cannot_find_item" => "Artikal nije pronađen.", + "categories" => "", + "category" => "Kategorija", + "category_new" => "", + "category_required" => "Kategorija je obavezno polje.", + "change_all_to_allow_alt_desc" => "Dozvoli alternativni opis za sve.", + "change_all_to_not_allow_allow_desc" => "Ne dozvoli alternativni opis za sve.", + "change_all_to_serialized" => "Promijeni sve u seriju", + "change_all_to_unserialized" => "Promijenite sve u ne seriju", + "change_image" => "Promijeni sliku", + "confirm_bulk_edit" => "Da li ste sigurni da želite urediti izabrane artikle?", + "confirm_bulk_edit_wipe_taxes" => "Sve informacije o porezu na artikal biće zamjenjene.", + "confirm_delete" => "Da li ste sigurni da želite izbrisati izabrani artikal?", + "confirm_restore" => "Da li ste sigurni da želite da vratite izabrani artikal?", + "cost_price" => "Fakturna cijena", + "cost_price_number" => "Fakturna cijena mora biti broj.", + "cost_price_required" => "Fakturna cijena je obavezno polje.", + "count" => "Ažuriraj zalihu", + "csv_import_failed" => "Uvoz CSV-a nije uspio", + "csv_import_nodata_wrongformat" => "Učitana CSV datoteka nema podatke ili je pogrešno formatirana.", + "csv_import_partially_failed" => "Bilo je {0} grešaka pri uvozu stavke na liniji: {1}. Nijedan red nije uvezen.", + "csv_import_success" => "Uvoz CSV stavke je uspješan.", + "current_quantity" => "Trenutna količina", + "default_pack_name" => "Svaki", + "description" => "Opis", + "details_count" => "Detalji o količinama zalihe", + "do_nothing" => "Ne radi ništa", + "edit" => "", + "edit_fields_you_want_to_update" => "Uredite željena polja za odabrane artikle.", + "edit_multiple_items" => "Uređivanje više artikala", + "empty_upc_items" => "Artikli sa praznim barkodom", + "error_adding_updating" => "Greška pri dodavanju / ažuriranju artikla", + "error_updating_multiple" => "Greška pri ažuriranju artikala", + "generate_barcodes" => "Generiši barkod", + "hsn_code" => "Nomenklatura sistema usklađena", + "image" => "Slika", + "import_items_csv" => "Uvezi artikle iz CSV datoteke", + "info_provided_by" => "Informacije pruža", + "inventory" => "Zaliha", + "inventory_CSV_import_quantity" => "Količina uvezena iz CSV-a", + "inventory_comments" => "Komentari", + "inventory_data_tracking" => "Praćenje podataka zalihe", + "inventory_date" => "Datum", + "inventory_employee" => "Zaposlenik", + "inventory_in_out_quantity" => "Količina ulaz/izlaz", + "inventory_remarks" => "Napomene", + "is_deleted" => "Izbrisano", + "is_printed" => "", + "is_serialized" => "Artikal ima ser. broj", + "item" => "Artikal", + "item_id" => "", + "item_number" => "Barkod", + "item_number_duplicate" => "Broj artikla već postoji u bazi podataka.", + "kit" => "Komplet", + "location" => "Mjesto", + "low_inventory_items" => "Prodaja artikala", + "low_sell_item" => "Niska prodaja artikla", + "manually_editing_of_quantity" => "Ručno uređivanje količine", + "markup" => "", + "name" => "Naziv artikla", + "name_required" => "Naziv artikla je obavezno polje.", + "new" => "Novi artikal", + "no_description_items" => "Artikal nema opisa", + "no_items_to_display" => "Nema artikala za prikaz.", + "none" => "Nijedan", + "none_selected" => "Niste odabrali nijedan artikal za uređivanje", + "nonstock" => "Bez zaliha", + "number_information" => "Redni broj", + "number_required" => "Barkod je obavezno polje.", + "one_or_multiple" => "artikal(i)", + "pack_name" => "Naziv pakovanja", + "qty_per_pack" => "Količina po pakovanju", + "quantity" => "Količina", + "quantity_number" => "Količina mora biti broj.", + "quantity_required" => "Količina je obavezno polje.", + "receiving_quantity" => "Zaprimljena količina", + "remove_image" => "Ukloni sliku", + "reorder_level" => "Minimalna zaliha", + "reorder_level_number" => "Nivo preuređivanja mora biti broj.", + "reorder_level_required" => "Nivo preuređivanja je obavezno polje.", + "retrive_item_info" => "Preuzmi informacije o artiklu", + "sales_tax_1" => "Prodajni porez", + "sales_tax_2" => "Prodajni porez 2", + "search_attributes" => "Pretraživanje atributa", + "select_image" => "Izaberite sliku", + "serialized_items" => "Artikal ima ser. broj", + "standard" => "Standard", + "stock" => "Skladište", + "stock_location" => "Mjesto skladišta", + "stock_type" => "Vrsta zalihe", + "successful_adding" => "Uspješno ste dodali artikal", + "successful_bulk_edit" => "Uspješno ste ažurirali izabrane artikle", + "successful_deleted" => "Uspješno ste izbrisali artikal", + "successful_updating" => "Uspješno ste ažurirali artikal", + "supplier" => "Dobavljač", + "tax_1" => "Porez 1", + "tax_2" => "Porez 2", + "tax_3" => "", + "tax_category" => "Kategorija poreza", + "tax_percent" => "Procenat poreza", + "tax_percent_number" => "Procenat poreza mora biti numerička vrijednost", + "tax_percent_required" => "Procenat poreza je obavezno polje.", + "tax_percents" => "Porez %", + "temp" => "Privremeno", + "type" => "Vrsta artikla", + "unit_price" => "Maloprodajna cijena", + "unit_price_number" => "Jedinična cijena mora biti broj.", + "unit_price_required" => "Maloprodajna cijena je obavezno polje.", + "upc_database" => "Baza podataka bar-kodova", + "update" => "Ažuriraj artikal", + "use_inventory_menu" => "Koristite meni zalihe", ]; diff --git a/app/Language/bs/Login.php b/app/Language/bs/Login.php index 88a1b8bc1..2bb76a893 100644 --- a/app/Language/bs/Login.php +++ b/app/Language/bs/Login.php @@ -1,15 +1,15 @@ "Ja nisam robot.", - "go" => "Idi", - "invalid_gcaptcha" => "Molimo potvrdite da niste robot.", - "invalid_installation" => "Instalacija nije ispravna, provjerite vašu php.ini datoteku.", - "invalid_username_and_password" => "Pogrešno korisničko ime i/ili lozinka.", - "login" => "Prijava", - "logout" => "Odjava", - "migration_needed" => "Migracija baze podataka na {0} će početi nakon prijavljivanja.", - "password" => "Lozinka", - "required_username" => "", - "username" => "Korisničko ime", - "welcome" => "Dobrodošli u {0}!", + "gcaptcha" => "Ja nisam robot.", + "go" => "Idi", + "invalid_gcaptcha" => "Molimo potvrdite da niste robot.", + "invalid_installation" => "Instalacija nije ispravna, provjerite vašu php.ini datoteku.", + "invalid_username_and_password" => "Pogrešno korisničko ime i/ili lozinka.", + "login" => "Prijava", + "logout" => "Odjava", + "migration_needed" => "Migracija baze podataka na {0} će početi nakon prijavljivanja.", + "password" => "Lozinka", + "required_username" => "", + "username" => "Korisničko ime", + "welcome" => "Dobrodošli u {0}!", ]; diff --git a/app/Language/bs/Messages.php b/app/Language/bs/Messages.php index 0948f2715..a6edd0539 100644 --- a/app/Language/bs/Messages.php +++ b/app/Language/bs/Messages.php @@ -1,15 +1,15 @@ "Ime", - "last_name" => "Prezime", - "message" => "Poruka", - "message_placeholder" => "Vaša poruka ovdje ...", - "message_required" => "Poruka je obavezna", - "multiple_phones" => "(U slučaju više primalaca, unesite mobilne brojeve odvojene zarezima)", - "phone" => "Telefonski broj", - "phone_number_required" => "Broj telefona je obavezan", - "phone_placeholder" => "Broj mobilnog telefona ovde...", - "sms_send" => "Pošalji SMS", - "successfully_sent" => "Poruka je uspješno poslata: ", - "unsuccessfully_sent" => "Poruka nije uspešno poslata: ", + "first_name" => "Ime", + "last_name" => "Prezime", + "message" => "Poruka", + "message_placeholder" => "Vaša poruka ovdje ...", + "message_required" => "Poruka je obavezna", + "multiple_phones" => "(U slučaju više primalaca, unesite mobilne brojeve odvojene zarezima)", + "phone" => "Telefonski broj", + "phone_number_required" => "Broj telefona je obavezan", + "phone_placeholder" => "Broj mobilnog telefona ovde...", + "sms_send" => "Pošalji SMS", + "successfully_sent" => "Poruka je uspješno poslata: ", + "unsuccessfully_sent" => "Poruka nije uspešno poslata: ", ]; diff --git a/app/Language/bs/Module.php b/app/Language/bs/Module.php index 04e627bc9..f2a28bdad 100644 --- a/app/Language/bs/Module.php +++ b/app/Language/bs/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "Atributi", - "attributes_desc" => "Dodavanje, ažuriranje, brisanje i pretraživanje atributa.", - "both" => "Oba", - "cashups" => "Gotovinsko plaćanje", - "cashups_desc" => "Dodavanje, ažuriranje, brisanje i pretraživanje isplata.", - "config" => "Podešavanja", - "config_desc" => "Promijenite konfiguraciju OSPOS-a.", - "customers" => "Kupci", - "customers_desc" => "Dodavanje, ažuriranje, brisanje i pretraživanje kupaca.", - "employees" => "Zaposleni", - "employees_desc" => "Dodavanje, ažuriranje, brisanje i pretraživanje zaposlenih.", - "expenses" => "Troškovi", - "expenses_categories" => "Kategorije", - "expenses_categories_desc" => "Dodavanje, ažuriranje, i brisanje kategorija.", - "expenses_desc" => "Dodavanje, ažuriranje, brisanje i pretraživanje troškova.", - "giftcards" => "Poklon kartice", - "giftcards_desc" => "Dodavanje, ažuriranje, brisanje i pretraživanje poklon kartica.", - "home" => "Početna", - "home_desc" => "Lista modula početnog menija.", - "item_kits" => "Kompleti artikala", - "item_kits_desc" => "Dodavanje, ažuriranje, brisanje i pretraživanje kompleta artikala.", - "items" => "Artikli", - "items_desc" => "Dodavanje, ažuriranje, brisanje i pretraživanje artikala.", - "messages" => "Poruke", - "messages_desc" => "Slanje poruka kupcima, dobavljačima i zaposlenima.", - "migrate" => "Migracija", - "migrate_desc" => "Ažurirajte OSPOS bazu podataka.", - "office" => "Administracija", - "office_desc" => "Lista modula kancelarijskog menija.", - "receivings" => "Ulazi", - "receivings_desc" => "Obrada narudžbenica.", - "reports" => "Izvještaji", - "reports_desc" => "Pogledajte i generišite izvještaje.", - "sales" => "Prodaja", - "sales_desc" => "Obrada prodaje i povrata.", - "suppliers" => "Dobavljači", - "suppliers_desc" => "Dodajte, ažurirajte, izbrišite i pretražite dobavljače.", - "taxes" => "Porezi", - "taxes_desc" => "Konfigurišite poreze na promet.", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "Atributi", + "attributes_desc" => "Dodavanje, ažuriranje, brisanje i pretraživanje atributa.", + "both" => "Oba", + "cashups" => "Gotovinsko plaćanje", + "cashups_desc" => "Dodavanje, ažuriranje, brisanje i pretraživanje isplata.", + "config" => "Podešavanja", + "config_desc" => "Promijenite konfiguraciju OSPOS-a.", + "customers" => "Kupci", + "customers_desc" => "Dodavanje, ažuriranje, brisanje i pretraživanje kupaca.", + "employees" => "Zaposleni", + "employees_desc" => "Dodavanje, ažuriranje, brisanje i pretraživanje zaposlenih.", + "expenses" => "Troškovi", + "expenses_categories" => "Kategorije", + "expenses_categories_desc" => "Dodavanje, ažuriranje, i brisanje kategorija.", + "expenses_desc" => "Dodavanje, ažuriranje, brisanje i pretraživanje troškova.", + "giftcards" => "Poklon kartice", + "giftcards_desc" => "Dodavanje, ažuriranje, brisanje i pretraživanje poklon kartica.", + "home" => "Početna", + "home_desc" => "Lista modula početnog menija.", + "item_kits" => "Kompleti artikala", + "item_kits_desc" => "Dodavanje, ažuriranje, brisanje i pretraživanje kompleta artikala.", + "items" => "Artikli", + "items_desc" => "Dodavanje, ažuriranje, brisanje i pretraživanje artikala.", + "messages" => "Poruke", + "messages_desc" => "Slanje poruka kupcima, dobavljačima i zaposlenima.", + "migrate" => "Migracija", + "migrate_desc" => "Ažurirajte OSPOS bazu podataka.", + "office" => "Administracija", + "office_desc" => "Lista modula kancelarijskog menija.", + "receivings" => "Ulazi", + "receivings_desc" => "Obrada narudžbenica.", + "reports" => "Izvještaji", + "reports_desc" => "Pogledajte i generišite izvještaje.", + "sales" => "Prodaja", + "sales_desc" => "Obrada prodaje i povrata.", + "suppliers" => "Dobavljači", + "suppliers_desc" => "Dodajte, ažurirajte, izbrišite i pretražite dobavljače.", + "taxes" => "Porezi", + "taxes_desc" => "Konfigurišite poreze na promet.", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/bs/Receivings.php b/app/Language/bs/Receivings.php index 4c7757cd1..b70357531 100644 --- a/app/Language/bs/Receivings.php +++ b/app/Language/bs/Receivings.php @@ -1,58 +1,58 @@ "", - "cancel_receiving" => "Otkaži", - "cannot_be_deleted" => "Ulaz(i) ne mogu biti Izbrisani.", - "comments" => "Komentar", - "complete_receiving" => "Završi", - "confirm_cancel_receiving" => "Da li ste sigurni da želite da izbrišete ovaj prijem? Sve stavke će biti izbrisane.", - "confirm_delete" => "Da li ste sigurni da želite da izbrišete ovaj prijem? Ova radnja se ne može opozvati.", - "confirm_finish_receiving" => "Da li ste sigurni da želite da pošaljete ovaj prijem? Ovo se ne može poništiti.", - "confirm_restore" => "", - "cost" => "Trošak", - "daily" => "", - "date" => "Datum", - "date_required" => "Mora se unijeti ispravan datum.", - "date_type" => "Datum je obavezno polje.", - "delete_entire_sale" => "Izbriši cijelu prodaju", - "discount" => "Popust", - "edit" => "Uredi", - "edit_sale" => "Uređivanje ulaza", - "employee" => "Zaposleni", - "error_editing_item" => "Uređivanje stavke nije uspjelo.", - "error_requisition" => "Nije moguće premjestiti zalihu sa ili na istu lokaciju skladišta.", - "find_or_scan_item" => "Pronađite ili skenirajte artikal", - "find_or_scan_item_or_receipt" => "Pronađite ili skenirajte stavku ili račun", - "id" => "ID prijema", - "item_name" => "Naziv artikla", - "mode" => "Način prijema", - "new_supplier" => "Novi dobavljač", - "one_or_multiple" => "Ulaz(i)", - "print_after_sale" => "Štampaj poslije prodaje", - "quantity" => "Količina", - "receipt" => "Ulazni račun", - "receipt_number" => "Ulazni račun #", - "receiving" => "Ulaz", - "reference" => "Referenca", - "register" => "Stavke ulaza", - "requisition" => "Trebovanje", - "return" => "Povrat", - "select_supplier" => "Izaberite dobavljača (neobavezno)", - "ship_pack" => "Otpremanje pakovanja", - "start_typing_supplier_name" => "Počnite upisivati ime dobavljača ...", - "stock" => "Skladište", - "stock_destination" => "Destinacija skladišta", - "stock_locaiton" => "Lokacija zaliha", - "stock_source" => "Izvor zaliha", - "successfully_deleted" => "Uspješno ste izbrisali prijem", - "successfully_updated" => "Uspješno ste ažurirali prijem", - "supplier" => "Dobavljač", - "supplier_address" => "Adresa", - "supplier_email" => "E-mail", - "supplier_location" => "Mjesto", - "total" => "Ukupno", - "transaction_failed" => "Transakcija(e) prijema nije uspela.", - "unable_to_add_item" => "Dodavanje stavke u prijem nije uspelo.", - "unsuccessfully_updated" => "Ažuriranje ulaza nije uspjelo.", - "update" => "Ažuriraj", + "amount_due" => "", + "cancel_receiving" => "Otkaži", + "cannot_be_deleted" => "Ulaz(i) ne mogu biti Izbrisani.", + "comments" => "Komentar", + "complete_receiving" => "Završi", + "confirm_cancel_receiving" => "Da li ste sigurni da želite da izbrišete ovaj prijem? Sve stavke će biti izbrisane.", + "confirm_delete" => "Da li ste sigurni da želite da izbrišete ovaj prijem? Ova radnja se ne može opozvati.", + "confirm_finish_receiving" => "Da li ste sigurni da želite da pošaljete ovaj prijem? Ovo se ne može poništiti.", + "confirm_restore" => "", + "cost" => "Trošak", + "daily" => "", + "date" => "Datum", + "date_required" => "Mora se unijeti ispravan datum.", + "date_type" => "Datum je obavezno polje.", + "delete_entire_sale" => "Izbriši cijelu prodaju", + "discount" => "Popust", + "edit" => "Uredi", + "edit_sale" => "Uređivanje ulaza", + "employee" => "Zaposleni", + "error_editing_item" => "Uređivanje stavke nije uspjelo.", + "error_requisition" => "Nije moguće premjestiti zalihu sa ili na istu lokaciju skladišta.", + "find_or_scan_item" => "Pronađite ili skenirajte artikal", + "find_or_scan_item_or_receipt" => "Pronađite ili skenirajte stavku ili račun", + "id" => "ID prijema", + "item_name" => "Naziv artikla", + "mode" => "Način prijema", + "new_supplier" => "Novi dobavljač", + "one_or_multiple" => "Ulaz(i)", + "print_after_sale" => "Štampaj poslije prodaje", + "quantity" => "Količina", + "receipt" => "Ulazni račun", + "receipt_number" => "Ulazni račun #", + "receiving" => "Ulaz", + "reference" => "Referenca", + "register" => "Stavke ulaza", + "requisition" => "Trebovanje", + "return" => "Povrat", + "select_supplier" => "Izaberite dobavljača (neobavezno)", + "ship_pack" => "Otpremanje pakovanja", + "start_typing_supplier_name" => "Počnite upisivati ime dobavljača ...", + "stock" => "Skladište", + "stock_destination" => "Destinacija skladišta", + "stock_locaiton" => "Lokacija zaliha", + "stock_source" => "Izvor zaliha", + "successfully_deleted" => "Uspješno ste izbrisali prijem", + "successfully_updated" => "Uspješno ste ažurirali prijem", + "supplier" => "Dobavljač", + "supplier_address" => "Adresa", + "supplier_email" => "E-mail", + "supplier_location" => "Mjesto", + "total" => "Ukupno", + "transaction_failed" => "Transakcija(e) prijema nije uspela.", + "unable_to_add_item" => "Dodavanje stavke u prijem nije uspelo.", + "unsuccessfully_updated" => "Ažuriranje ulaza nije uspjelo.", + "update" => "Ažuriraj", ]; diff --git a/app/Language/bs/Reports.php b/app/Language/bs/Reports.php index 34eb7470d..d08018017 100644 --- a/app/Language/bs/Reports.php +++ b/app/Language/bs/Reports.php @@ -1,148 +1,148 @@ "Svi", - "authority" => "Ovlašćenja", - "canceled" => "Otkazano", - "categories" => "Kategorije", - "categories_summary_report" => "Zbirni izvještaj po kategorijama", - "category" => "Kategorija", - "code_canceled" => "CNL", - "code_invoice" => "INV", - "code_pos" => "POS", - "code_quote" => "Q", - "code_return" => "RET", - "code_type" => "Tip", - "code_work_order" => "R/N", - "comments" => "Komentari", - "commission" => "", - "complete" => "Završena prodaja i povrat", - "completed_sales" => "Kompletirana prodaja", - "confirm_delete" => "Da li ste sigurni da želite da izbrišete izabrani unos?", - "confirm_restore" => "Da li ste sigurni da želite da vratite izabrani unos?", - "cost" => "Cijena", - "cost_price" => "Fakturna cijena", - "count" => "Broj", - "customer" => "Kupac", - "customers" => "Kupci", - "customers_summary_report" => "Zbirni izvještaj po kupcima", - "date" => "Datum", - "date_range" => "Vremenski period", - "description" => "Opis", - "detailed_receivings_report" => "Detaljan izvještaj primki", - "detailed_receivings_report_input" => "", - "detailed_reports" => "Izvještaji (detaljno)", - "detailed_requisition_report" => "Izvještaj: Trebovanje robe (detaljno)", - "detailed_sales_report" => "Izvještaj prodaje (detaljno)", - "discount" => "Ivještaj o popustu", - "discount_fixed" => "Fiksni popust", - "discount_percent" => "Procenat popusta", - "discount_type" => "Vrsta popusta", - "discounts" => "Popusti", - "discounts_summary_report" => "Zbirni izvještaj o popustima", - "earned" => "Zarađeni bodovi", - "employee" => "Zaposlenik", - "employees" => "Zaposleni", - "employees_summary_report" => "Zbirni izveštaj zaposlenih", - "expenses" => "Troškovi", - "expenses_amount" => "Iznos", - "expenses_categories" => "Troškovi", - "expenses_categories_summary_report" => "Sažeti izvještaj kategorija rashoda", - "expenses_category" => "Kategorija", - "expenses_payment_amount" => "", - "expenses_tax_amount" => "Porez", - "expenses_total_amount" => "Ukupno", - "expenses_total_tax_amount" => "Ukupan porez", - "graphical_reports" => "Grafički izvještaji", - "inventory" => "Zaliha", - "inventory_low" => "Niska zaliha", - "inventory_low_report" => "Izvještaj o niskoj zalihi", - "inventory_reports" => "Izvještaji zalihe", - "inventory_summary" => "Sažetak zalihe", - "inventory_summary_report" => "Sumarni izvještaj zaliha", - "item" => "Artikl", - "item_count" => "Filtriraj po broju artikala", - "item_name" => "Naziv artikla", - "item_number" => "Barkod", - "items" => "Artikli", - "items_purchased" => "Nabavljeni artikli", - "items_received" => "Primljeni artikli", - "items_summary_report" => "Sumarni izvještaj artikala", - "jurisdiction" => "Nadležnost", - "low_inventory" => "Niska zaliha", - "low_inventory_report" => "Izvještaj niske zalihe", - "low_sell_quantity" => "Niska prodaja", - "more_than_zero" => "Više od nule", - "name" => "Naziv", - "no_reports_to_display" => "Nema artikala za prikaz.", - "payment_type" => "Tip plaćanja", - "payments" => "Plaćanja", - "payments_summary_report" => "Zbirni izvještaj plaćanja", - "profit" => "Dobit", - "quantity" => "Količina", - "quantity_purchased" => "Nabavna količina", - "quotes" => "Citati", - "received_by" => "Primljeno od", - "receiving_id" => "ID ulaza", - "receiving_type" => "Tip ulaza", - "receivings" => "Ulazi", - "reorder_level" => "Preuređivanje nivoa", - "report" => "Izvještaj", - "report_input" => "Ulazni izvještaj", - "reports" => "Izvještaji", - "requisition" => "Trebovanje", - "requisition_by" => "Trebovanje od", - "requisition_id" => "ID trebovanja", - "requisition_item" => "Artikal", - "requisition_item_quantity" => "količina artikla", - "requisition_related_item" => "Povezani artikal", - "requisition_related_item_total_quantity" => "Ukupni zahtjev", - "requisition_related_item_unit_quantity" => "Potrebna količina", - "requisitions" => "Trebovanja", - "returns" => "Povrati", - "revenue" => "Prihod", - "sale_id" => "ID prodaje", - "sale_type" => "Tip prodaje", - "sales" => "Prodaje", - "sales_amount" => "Iznos transakcija", - "sales_summary_report" => "Zbirni izvještaj prodaje", - "sales_taxes" => "Porez na promet", - "sales_taxes_summary_report" => "Zbirni izvještaj poreza na promet", - "serial_number" => "Serijski broj", - "service_charge" => "", - "sold_by" => "Prodano od", - "sold_items" => "", - "sold_to" => "Prodano", - "stock_location" => "Lokacija skladišta", - "sub_total_value" => "Međuzbir", - "subtotal" => "Međuzbir", - "summary_reports" => "Zbirni izvještaji", - "supplied_by" => "Nabavljeno od", - "supplier" => "Dobavljač", - "suppliers" => "Dobavljači", - "suppliers_summary_report" => "Zbirni izvještaj po dobavljačima", - "tax" => "Porez", - "tax_category" => "Kategorija poreza", - "tax_name" => "Naziv poreza", - "tax_percent" => "Procenat poreza", - "tax_rate" => "Poreska stopa", - "taxes" => "Porezi", - "taxes_summary_report" => "Zbirni izvještaj poreza", - "total" => "Ukupno", - "total_inventory_value" => "Ukupan iznos zalihe", - "total_low_sell_quantity" => "Ukupno količina niskih prodaja", - "total_quantity" => "Ukupna količina", - "total_retail" => "Ukupna vrijednost zalihe na malo", - "trans_amount" => "Iznos transakcije", - "trans_due" => "Dug", - "trans_group" => "Grupa transakcije", - "trans_nopay_sales" => "Prodaje bez plaćanja", - "trans_payments" => "Plaćanja", - "trans_refunded" => "Refundirano", - "trans_sales" => "Prodaja", - "trans_type" => "Tip transakcije", - "type" => "Tip", - "unit_price" => "Maloprodajna cijena", - "used" => "Korišćeni poeni", - "work_orders" => "Radni nalozi", - "zero_and_less" => "Nula i manje", + "all" => "Svi", + "authority" => "Ovlašćenja", + "canceled" => "Otkazano", + "categories" => "Kategorije", + "categories_summary_report" => "Zbirni izvještaj po kategorijama", + "category" => "Kategorija", + "code_canceled" => "CNL", + "code_invoice" => "INV", + "code_pos" => "POS", + "code_quote" => "Q", + "code_return" => "RET", + "code_type" => "Tip", + "code_work_order" => "R/N", + "comments" => "Komentari", + "commission" => "", + "complete" => "Završena prodaja i povrat", + "completed_sales" => "Kompletirana prodaja", + "confirm_delete" => "Da li ste sigurni da želite da izbrišete izabrani unos?", + "confirm_restore" => "Da li ste sigurni da želite da vratite izabrani unos?", + "cost" => "Cijena", + "cost_price" => "Fakturna cijena", + "count" => "Broj", + "customer" => "Kupac", + "customers" => "Kupci", + "customers_summary_report" => "Zbirni izvještaj po kupcima", + "date" => "Datum", + "date_range" => "Vremenski period", + "description" => "Opis", + "detailed_receivings_report" => "Detaljan izvještaj primki", + "detailed_receivings_report_input" => "", + "detailed_reports" => "Izvještaji (detaljno)", + "detailed_requisition_report" => "Izvještaj: Trebovanje robe (detaljno)", + "detailed_sales_report" => "Izvještaj prodaje (detaljno)", + "discount" => "Ivještaj o popustu", + "discount_fixed" => "Fiksni popust", + "discount_percent" => "Procenat popusta", + "discount_type" => "Vrsta popusta", + "discounts" => "Popusti", + "discounts_summary_report" => "Zbirni izvještaj o popustima", + "earned" => "Zarađeni bodovi", + "employee" => "Zaposlenik", + "employees" => "Zaposleni", + "employees_summary_report" => "Zbirni izveštaj zaposlenih", + "expenses" => "Troškovi", + "expenses_amount" => "Iznos", + "expenses_categories" => "Troškovi", + "expenses_categories_summary_report" => "Sažeti izvještaj kategorija rashoda", + "expenses_category" => "Kategorija", + "expenses_payment_amount" => "", + "expenses_tax_amount" => "Porez", + "expenses_total_amount" => "Ukupno", + "expenses_total_tax_amount" => "Ukupan porez", + "graphical_reports" => "Grafički izvještaji", + "inventory" => "Zaliha", + "inventory_low" => "Niska zaliha", + "inventory_low_report" => "Izvještaj o niskoj zalihi", + "inventory_reports" => "Izvještaji zalihe", + "inventory_summary" => "Sažetak zalihe", + "inventory_summary_report" => "Sumarni izvještaj zaliha", + "item" => "Artikl", + "item_count" => "Filtriraj po broju artikala", + "item_name" => "Naziv artikla", + "item_number" => "Barkod", + "items" => "Artikli", + "items_purchased" => "Nabavljeni artikli", + "items_received" => "Primljeni artikli", + "items_summary_report" => "Sumarni izvještaj artikala", + "jurisdiction" => "Nadležnost", + "low_inventory" => "Niska zaliha", + "low_inventory_report" => "Izvještaj niske zalihe", + "low_sell_quantity" => "Niska prodaja", + "more_than_zero" => "Više od nule", + "name" => "Naziv", + "no_reports_to_display" => "Nema artikala za prikaz.", + "payment_type" => "Tip plaćanja", + "payments" => "Plaćanja", + "payments_summary_report" => "Zbirni izvještaj plaćanja", + "profit" => "Dobit", + "quantity" => "Količina", + "quantity_purchased" => "Nabavna količina", + "quotes" => "Citati", + "received_by" => "Primljeno od", + "receiving_id" => "ID ulaza", + "receiving_type" => "Tip ulaza", + "receivings" => "Ulazi", + "reorder_level" => "Preuređivanje nivoa", + "report" => "Izvještaj", + "report_input" => "Ulazni izvještaj", + "reports" => "Izvještaji", + "requisition" => "Trebovanje", + "requisition_by" => "Trebovanje od", + "requisition_id" => "ID trebovanja", + "requisition_item" => "Artikal", + "requisition_item_quantity" => "količina artikla", + "requisition_related_item" => "Povezani artikal", + "requisition_related_item_total_quantity" => "Ukupni zahtjev", + "requisition_related_item_unit_quantity" => "Potrebna količina", + "requisitions" => "Trebovanja", + "returns" => "Povrati", + "revenue" => "Prihod", + "sale_id" => "ID prodaje", + "sale_type" => "Tip prodaje", + "sales" => "Prodaje", + "sales_amount" => "Iznos transakcija", + "sales_summary_report" => "Zbirni izvještaj prodaje", + "sales_taxes" => "Porez na promet", + "sales_taxes_summary_report" => "Zbirni izvještaj poreza na promet", + "serial_number" => "Serijski broj", + "service_charge" => "", + "sold_by" => "Prodano od", + "sold_items" => "", + "sold_to" => "Prodano", + "stock_location" => "Lokacija skladišta", + "sub_total_value" => "Međuzbir", + "subtotal" => "Međuzbir", + "summary_reports" => "Zbirni izvještaji", + "supplied_by" => "Nabavljeno od", + "supplier" => "Dobavljač", + "suppliers" => "Dobavljači", + "suppliers_summary_report" => "Zbirni izvještaj po dobavljačima", + "tax" => "Porez", + "tax_category" => "Kategorija poreza", + "tax_name" => "Naziv poreza", + "tax_percent" => "Procenat poreza", + "tax_rate" => "Poreska stopa", + "taxes" => "Porezi", + "taxes_summary_report" => "Zbirni izvještaj poreza", + "total" => "Ukupno", + "total_inventory_value" => "Ukupan iznos zalihe", + "total_low_sell_quantity" => "Ukupno količina niskih prodaja", + "total_quantity" => "Ukupna količina", + "total_retail" => "Ukupna vrijednost zalihe na malo", + "trans_amount" => "Iznos transakcije", + "trans_due" => "Dug", + "trans_group" => "Grupa transakcije", + "trans_nopay_sales" => "Prodaje bez plaćanja", + "trans_payments" => "Plaćanja", + "trans_refunded" => "Refundirano", + "trans_sales" => "Prodaja", + "trans_type" => "Tip transakcije", + "type" => "Tip", + "unit_price" => "Maloprodajna cijena", + "used" => "Korišćeni poeni", + "work_orders" => "Radni nalozi", + "zero_and_less" => "Nula i manje", ]; diff --git a/app/Language/bs/Sales.php b/app/Language/bs/Sales.php index d47eb3409..bf73c6d66 100644 --- a/app/Language/bs/Sales.php +++ b/app/Language/bs/Sales.php @@ -1,224 +1,224 @@ "Dostupni poeni", - "rewards_package" => "Nagrade", - "rewards_remaining_balance" => "Preostala vrijednost nagradnih bodova je ", - "account_number" => "Broj računa", - "add_payment" => "Plaćanje", - "amount_due" => "Iznos duga", - "amount_tendered" => "Ponuđeni iznos", - "authorized_signature" => "Ovlašćeni potpis", - "cancel_sale" => "Otkaži", - "cash" => "Gotovina", - "cash_1" => "", - "cash_2" => "", - "cash_3" => "", - "cash_4" => "", - "cash_adjustment" => "Usklađivanje gotovine", - "cash_deposit" => "Polog gotovine", - "cash_filter" => "Gotovina", - "change_due" => "Kusur", - "change_price" => "Promjena prodajne cijene", - "check" => "Ček", - "check_balance" => "Provjeri razliku", - "check_filter" => "Ček", - "close" => "", - "comment" => "Komentar", - "comments" => "Komentari", - "company_name" => "", - "complete" => "", - "complete_sale" => "Završeno", - "confirm_cancel_sale" => "Da li ste sigurni da želite da očistite ovu prodaju? Sve stavke će biti izbrisane.", - "confirm_delete" => "Da li ste sigurni da želite da izbrišete izabranu prodaju?", - "confirm_restore" => "Da li ste sigurni da želite da vratite izabranu prodaju?", - "credit" => "Kreditna kartica", - "credit_deposit" => "Kreditni depozit", - "credit_filter" => "Kreditna kartica", - "current_table" => "", - "customer" => "Kupac", - "customer_address" => "Adresa kupca", - "customer_discount" => "Popust", - "customer_email" => "E-mail kupca", - "customer_location" => "Mjesto kupca", - "customer_mailchimp_status" => "Status MailChimp-a", - "customer_optional" => "(Potrebno za odloženo plaćanje)", - "customer_required" => "Obavezno", - "customer_total" => "Ukupno", - "customer_total_spent" => "", - "daily_sales" => "", - "date" => "Datum prodaje", - "date_range" => "Period", - "date_required" => "Morate unijeti ispravan datum.", - "date_type" => "Datum je obavezno polje.", - "debit" => "Dugovna kartica", - "debit_filter" => "", - "delete" => "Dozvoli brisanje", - "delete_confirmation" => "Da li ste sigurni da želite da izbrišete ovu prodaju? Ova radnja se ne može opozvati.", - "delete_entire_sale" => "Izbriši cijelu prodaju", - "delete_successful" => "Prodaja je uspješno izbrisana.", - "delete_unsuccessful" => "Brisanje prodaje nije uspjelo.", - "description_abbrv" => "Opis", - "discard" => "Odbaci", - "discard_quote" => "", - "discount" => "Popust", - "discount_included" => "% Rabat", - "discount_short" => "%", - "due" => "Dug", - "due_filter" => "Dug", - "edit" => "Uredi", - "edit_item" => "Uredi artikal", - "edit_sale" => "Uredi prodaju", - "email_receipt" => "Potvrda putem e-mail", - "employee" => "Zaposlenik", - "entry" => "Ulaz", - "error_editing_item" => "Greška pri uređivanju artikla", - "find_or_scan_item" => "Pronađi/Skeniraj artikal", - "find_or_scan_item_or_receipt" => "Pronađi/Skeniraj artikal ili priznanicu", - "giftcard" => "Poklon kartica", - "giftcard_balance" => "Saldo poklon kartice", - "giftcard_filter" => "", - "giftcard_number" => "Broj poklon kartice", - "group_by_category" => "Grupiraj po kategoriji", - "group_by_type" => "Grupiraj po tipu", - "hsn" => "HSN", - "id" => "ID prodaje", - "include_prices" => "Uključi cijene?", - "invoice" => "Faktura", - "invoice_confirm" => "Ova faktura će biti poslata na", - "invoice_enable" => "Broj fakture", - "invoice_filter" => "Fakture", - "invoice_no_email" => "Kupac nema važeću adresu e-pošte.", - "invoice_number" => "Broj fakture", - "invoice_number_duplicate" => "Broj fakture {0} mora biti jedinstven.", - "invoice_sent" => "Faktura poslata", - "invoice_total" => "Ukupan iznos fakture", - "invoice_type_custom_invoice" => "Prilagođena faktura (custom_invoice.php)", - "invoice_type_custom_tax_invoice" => "Prilagođena poreska faktura (custom_tax_invoice.php)", - "invoice_type_invoice" => "Faktura (invoice.php)", - "invoice_type_tax_invoice" => "Poreska faktura (tax_invoice.php)", - "invoice_unsent" => "Faktura nije poslata", - "invoice_update" => "Ažuriranje", - "item_insufficient_of_stock" => "Artikla nema dovoljno na zalihi.", - "item_name" => "Naziv artikla", - "item_number" => "Barkod", - "item_out_of_stock" => "Artikal je rasprodan.", - "key_browser" => "", - "key_cancel" => "Cancels Current Quote/Invoice/Sale", - "key_customer_search" => "Customer Search", - "key_finish_quote" => "Finish Quote/Invoice witdout payment", - "key_finish_sale" => "Add Payment and Complete Invoice/Sale", - "key_full" => "", - "key_function" => "Function", - "key_help" => "Shortcuts", - "key_help_modal" => "Open Shortcuts Window", - "key_in" => "", - "key_item_search" => "Item Search", - "key_out" => "", - "key_payment" => "Add Payment", - "key_print" => "", - "key_restore" => "", - "key_search" => "", - "key_suspend" => "Suspend Current Sale", - "key_suspended" => "Show Suspended Sales", - "key_system" => "", - "key_tendered" => "Edit Amount Tendered", - "key_title" => "Sales Keyboard Shortcuts", - "mc" => "", - "mode" => "Mod registrovanja", - "must_enter_numeric" => "Ponuđeni iznos mora biti broj.", - "must_enter_numeric_giftcard" => "Broj poklon kartice mora biti broj.", - "new_customer" => "Novi kupac", - "new_item" => "Novi artikal", - "no_description" => "Nema opisa", - "no_filter" => "Svi", - "no_items_in_cart" => "Nema artikala u korpi.", - "no_sales_to_display" => "Nema prodaje za prikaz.", - "none_selected" => "Niste izabrali nijedu prodaju za brisanje.", - "nontaxed_ind" => " ", - "not_authorized" => "Ova radnja nije ovlašćena.", - "one_or_multiple" => "Prodaja", - "payment" => "Tip plaćanja", - "payment_amount" => "Iznos", - "payment_not_cover_total" => "Iznos plaćanja mora biti veći ili jednak ukupnom iznosu.", - "payment_type" => "Tip", - "payments" => "", - "payments_total" => "Ukupno plaćeno", - "price" => "Cijena", - "print_after_sale" => "Štampaj poslije prodaje", - "quantity" => "Količina", - "quantity_less_than_reorder_level" => "Upozorenje! Željena količina je ispod minimalne.", - "quantity_less_than_zero" => "Upozorenje: Željena količina je nedovoljna. Možete nastaviti prodaju, ali provjerite svoju zalihu.", - "quantity_of_items" => "Količina od {0} stavke(i)", - "quote" => "Ponuda", - "quote_number" => "Broj ponude", - "quote_number_duplicate" => "Broj ponude mora biti jedinstven.", - "quote_sent" => "Ponuda poslata na", - "quote_unsent" => "Ponuda nije poslata na", - "receipt" => "Račun", - "receipt_no_email" => "Ovaj kupac nema važeću e-mail adresu.", - "receipt_number" => "Rasprodaja #", - "receipt_sent" => "Račun poslat", - "receipt_unsent" => "Račun nije poslat", - "refund" => "Tip povrata", - "register" => "Registar prodaje", - "remove_customer" => "Uklonite kupca", - "remove_discount" => "", - "return" => "Povrat", - "rewards" => "Nagradni bodovi", - "rewards_balance" => "Bilans nagradnih bodova", - "sale" => "Prodaja", - "sale_by_invoice" => "Prodaja po fakturi", - "sale_for_customer" => "Kupac:", - "sale_time" => "Vrijeme", - "sales_tax" => "Porez na promet", - "sales_total" => "", - "select_customer" => "Odaberi kupca", - "send_invoice" => "Pošalji fakturu", - "send_quote" => "Pošalji ponudu", - "send_receipt" => "Pošalji račun", - "send_work_order" => "Pošalji radni nalog", - "serial" => "Serijski broj", - "service_charge" => "", - "show_due" => "", - "show_invoice" => "Pokaži fakturu", - "show_receipt" => "Pokaži račun", - "start_typing_customer_name" => "Počnite upisivati naziv kupca ...", - "start_typing_item_name" => "Počnite upisivati naziv artikla ili skenirajte barkod...", - "stock" => "Zaliha", - "stock_location" => "Lokacija skladišta", - "sub_total" => "Međuzbir", - "successfully_deleted" => "Uspješno ste izbrisali", - "successfully_restored" => "Uspješno ste obnovili", - "successfully_suspended_sale" => "Obustava prodaje je uspjela.", - "successfully_updated" => "Prodaja je uspješno ažurirana.", - "suspend_sale" => "Obustavi", - "suspended_doc_id" => "Dokument", - "suspended_sale_id" => "ID", - "suspended_sales" => "Obustavljeno", - "table" => "Sto", - "takings" => "Dnevna prodaja", - "tax" => "Porez", - "tax_id" => "Porez Id", - "tax_invoice" => "Poreska faktura", - "tax_percent" => "Porez %", - "taxed_ind" => "P", - "total" => "Ukupno", - "total_tax_exclusive" => "Porez isključen", - "transaction_failed" => "Obrada nije ispravna.", - "unable_to_add_item" => "Dodavanje artikla u rasprodaju nije uspjelo", - "unsuccessfully_deleted" => "Brisanje prodaje nije uspjelo.", - "unsuccessfully_restored" => "Obnova prodaje(a) nije uspjela.", - "unsuccessfully_suspended_sale" => "Obustava prodaje nije uspjela.", - "unsuccessfully_updated" => "Ažuriranje prodaje nije uspjelo.", - "unsuspend" => "Odustani", - "unsuspend_and_delete" => "Akcija", - "update" => "Ažuriranje", - "upi" => "UPI", - "visa" => "", - "wholesale" => "", - "work_order" => "Radni nalog", - "work_order_number" => "Broj radnog naloga", - "work_order_number_duplicate" => "Broj radnog naloga mora biti jedinstven.", - "work_order_sent" => "Radni nalog poslat na", - "work_order_unsent" => "Slanje radnog naloga nije uspjelo", + "customers_available_points" => "Dostupni poeni", + "rewards_package" => "Nagrade", + "rewards_remaining_balance" => "Preostala vrijednost nagradnih bodova je ", + "account_number" => "Broj računa", + "add_payment" => "Plaćanje", + "amount_due" => "Iznos duga", + "amount_tendered" => "Ponuđeni iznos", + "authorized_signature" => "Ovlašćeni potpis", + "cancel_sale" => "Otkaži", + "cash" => "Gotovina", + "cash_1" => "", + "cash_2" => "", + "cash_3" => "", + "cash_4" => "", + "cash_adjustment" => "Usklađivanje gotovine", + "cash_deposit" => "Polog gotovine", + "cash_filter" => "Gotovina", + "change_due" => "Kusur", + "change_price" => "Promjena prodajne cijene", + "check" => "Ček", + "check_balance" => "Provjeri razliku", + "check_filter" => "Ček", + "close" => "", + "comment" => "Komentar", + "comments" => "Komentari", + "company_name" => "", + "complete" => "", + "complete_sale" => "Završeno", + "confirm_cancel_sale" => "Da li ste sigurni da želite da očistite ovu prodaju? Sve stavke će biti izbrisane.", + "confirm_delete" => "Da li ste sigurni da želite da izbrišete izabranu prodaju?", + "confirm_restore" => "Da li ste sigurni da želite da vratite izabranu prodaju?", + "credit" => "Kreditna kartica", + "credit_deposit" => "Kreditni depozit", + "credit_filter" => "Kreditna kartica", + "current_table" => "", + "customer" => "Kupac", + "customer_address" => "Adresa kupca", + "customer_discount" => "Popust", + "customer_email" => "E-mail kupca", + "customer_location" => "Mjesto kupca", + "customer_mailchimp_status" => "Status MailChimp-a", + "customer_optional" => "(Potrebno za odloženo plaćanje)", + "customer_required" => "Obavezno", + "customer_total" => "Ukupno", + "customer_total_spent" => "", + "daily_sales" => "", + "date" => "Datum prodaje", + "date_range" => "Period", + "date_required" => "Morate unijeti ispravan datum.", + "date_type" => "Datum je obavezno polje.", + "debit" => "Dugovna kartica", + "debit_filter" => "", + "delete" => "Dozvoli brisanje", + "delete_confirmation" => "Da li ste sigurni da želite da izbrišete ovu prodaju? Ova radnja se ne može opozvati.", + "delete_entire_sale" => "Izbriši cijelu prodaju", + "delete_successful" => "Prodaja je uspješno izbrisana.", + "delete_unsuccessful" => "Brisanje prodaje nije uspjelo.", + "description_abbrv" => "Opis", + "discard" => "Odbaci", + "discard_quote" => "", + "discount" => "Popust", + "discount_included" => "% Rabat", + "discount_short" => "%", + "due" => "Dug", + "due_filter" => "Dug", + "edit" => "Uredi", + "edit_item" => "Uredi artikal", + "edit_sale" => "Uredi prodaju", + "email_receipt" => "Potvrda putem e-mail", + "employee" => "Zaposlenik", + "entry" => "Ulaz", + "error_editing_item" => "Greška pri uređivanju artikla", + "find_or_scan_item" => "Pronađi/Skeniraj artikal", + "find_or_scan_item_or_receipt" => "Pronađi/Skeniraj artikal ili priznanicu", + "giftcard" => "Poklon kartica", + "giftcard_balance" => "Saldo poklon kartice", + "giftcard_filter" => "", + "giftcard_number" => "Broj poklon kartice", + "group_by_category" => "Grupiraj po kategoriji", + "group_by_type" => "Grupiraj po tipu", + "hsn" => "HSN", + "id" => "ID prodaje", + "include_prices" => "Uključi cijene?", + "invoice" => "Faktura", + "invoice_confirm" => "Ova faktura će biti poslata na", + "invoice_enable" => "Broj fakture", + "invoice_filter" => "Fakture", + "invoice_no_email" => "Kupac nema važeću adresu e-pošte.", + "invoice_number" => "Broj fakture", + "invoice_number_duplicate" => "Broj fakture {0} mora biti jedinstven.", + "invoice_sent" => "Faktura poslata", + "invoice_total" => "Ukupan iznos fakture", + "invoice_type_custom_invoice" => "Prilagođena faktura (custom_invoice.php)", + "invoice_type_custom_tax_invoice" => "Prilagođena poreska faktura (custom_tax_invoice.php)", + "invoice_type_invoice" => "Faktura (invoice.php)", + "invoice_type_tax_invoice" => "Poreska faktura (tax_invoice.php)", + "invoice_unsent" => "Faktura nije poslata", + "invoice_update" => "Ažuriranje", + "item_insufficient_of_stock" => "Artikla nema dovoljno na zalihi.", + "item_name" => "Naziv artikla", + "item_number" => "Barkod", + "item_out_of_stock" => "Artikal je rasprodan.", + "key_browser" => "", + "key_cancel" => "Cancels Current Quote/Invoice/Sale", + "key_customer_search" => "Customer Search", + "key_finish_quote" => "Finish Quote/Invoice witdout payment", + "key_finish_sale" => "Add Payment and Complete Invoice/Sale", + "key_full" => "", + "key_function" => "Function", + "key_help" => "Shortcuts", + "key_help_modal" => "Open Shortcuts Window", + "key_in" => "", + "key_item_search" => "Item Search", + "key_out" => "", + "key_payment" => "Add Payment", + "key_print" => "", + "key_restore" => "", + "key_search" => "", + "key_suspend" => "Suspend Current Sale", + "key_suspended" => "Show Suspended Sales", + "key_system" => "", + "key_tendered" => "Edit Amount Tendered", + "key_title" => "Sales Keyboard Shortcuts", + "mc" => "", + "mode" => "Mod registrovanja", + "must_enter_numeric" => "Ponuđeni iznos mora biti broj.", + "must_enter_numeric_giftcard" => "Broj poklon kartice mora biti broj.", + "new_customer" => "Novi kupac", + "new_item" => "Novi artikal", + "no_description" => "Nema opisa", + "no_filter" => "Svi", + "no_items_in_cart" => "Nema artikala u korpi.", + "no_sales_to_display" => "Nema prodaje za prikaz.", + "none_selected" => "Niste izabrali nijedu prodaju za brisanje.", + "nontaxed_ind" => " ", + "not_authorized" => "Ova radnja nije ovlašćena.", + "one_or_multiple" => "Prodaja", + "payment" => "Tip plaćanja", + "payment_amount" => "Iznos", + "payment_not_cover_total" => "Iznos plaćanja mora biti veći ili jednak ukupnom iznosu.", + "payment_type" => "Tip", + "payments" => "", + "payments_total" => "Ukupno plaćeno", + "price" => "Cijena", + "print_after_sale" => "Štampaj poslije prodaje", + "quantity" => "Količina", + "quantity_less_than_reorder_level" => "Upozorenje! Željena količina je ispod minimalne.", + "quantity_less_than_zero" => "Upozorenje: Željena količina je nedovoljna. Možete nastaviti prodaju, ali provjerite svoju zalihu.", + "quantity_of_items" => "Količina od {0} stavke(i)", + "quote" => "Ponuda", + "quote_number" => "Broj ponude", + "quote_number_duplicate" => "Broj ponude mora biti jedinstven.", + "quote_sent" => "Ponuda poslata na", + "quote_unsent" => "Ponuda nije poslata na", + "receipt" => "Račun", + "receipt_no_email" => "Ovaj kupac nema važeću e-mail adresu.", + "receipt_number" => "Rasprodaja #", + "receipt_sent" => "Račun poslat", + "receipt_unsent" => "Račun nije poslat", + "refund" => "Tip povrata", + "register" => "Registar prodaje", + "remove_customer" => "Uklonite kupca", + "remove_discount" => "", + "return" => "Povrat", + "rewards" => "Nagradni bodovi", + "rewards_balance" => "Bilans nagradnih bodova", + "sale" => "Prodaja", + "sale_by_invoice" => "Prodaja po fakturi", + "sale_for_customer" => "Kupac:", + "sale_time" => "Vrijeme", + "sales_tax" => "Porez na promet", + "sales_total" => "", + "select_customer" => "Odaberi kupca", + "send_invoice" => "Pošalji fakturu", + "send_quote" => "Pošalji ponudu", + "send_receipt" => "Pošalji račun", + "send_work_order" => "Pošalji radni nalog", + "serial" => "Serijski broj", + "service_charge" => "", + "show_due" => "", + "show_invoice" => "Pokaži fakturu", + "show_receipt" => "Pokaži račun", + "start_typing_customer_name" => "Počnite upisivati naziv kupca ...", + "start_typing_item_name" => "Počnite upisivati naziv artikla ili skenirajte barkod...", + "stock" => "Zaliha", + "stock_location" => "Lokacija skladišta", + "sub_total" => "Međuzbir", + "successfully_deleted" => "Uspješno ste izbrisali", + "successfully_restored" => "Uspješno ste obnovili", + "successfully_suspended_sale" => "Obustava prodaje je uspjela.", + "successfully_updated" => "Prodaja je uspješno ažurirana.", + "suspend_sale" => "Obustavi", + "suspended_doc_id" => "Dokument", + "suspended_sale_id" => "ID", + "suspended_sales" => "Obustavljeno", + "table" => "Sto", + "takings" => "Dnevna prodaja", + "tax" => "Porez", + "tax_id" => "Porez Id", + "tax_invoice" => "Poreska faktura", + "tax_percent" => "Porez %", + "taxed_ind" => "P", + "total" => "Ukupno", + "total_tax_exclusive" => "Porez isključen", + "transaction_failed" => "Obrada nije ispravna.", + "unable_to_add_item" => "Dodavanje artikla u rasprodaju nije uspjelo", + "unsuccessfully_deleted" => "Brisanje prodaje nije uspjelo.", + "unsuccessfully_restored" => "Obnova prodaje(a) nije uspjela.", + "unsuccessfully_suspended_sale" => "Obustava prodaje nije uspjela.", + "unsuccessfully_updated" => "Ažuriranje prodaje nije uspjelo.", + "unsuspend" => "Odustani", + "unsuspend_and_delete" => "Akcija", + "update" => "Ažuriranje", + "upi" => "UPI", + "visa" => "", + "wholesale" => "", + "work_order" => "Radni nalog", + "work_order_number" => "Broj radnog naloga", + "work_order_number_duplicate" => "Broj radnog naloga mora biti jedinstven.", + "work_order_sent" => "Radni nalog poslat na", + "work_order_unsent" => "Slanje radnog naloga nije uspjelo", ]; diff --git a/app/Language/bs/Suppliers.php b/app/Language/bs/Suppliers.php index 5de127663..da7848d91 100644 --- a/app/Language/bs/Suppliers.php +++ b/app/Language/bs/Suppliers.php @@ -1,24 +1,24 @@ "Broj računa", - "agency_name" => "Naziv agencije", - "cannot_be_deleted" => "Brisanje izabranih dobavljača nije uspjelo. Jedan ili više njih imaju prodaju.", - "category" => "Kategorija", - "company_name" => "Dobavljač", - "company_name_required" => "Dobavljač je obavezan.", - "confirm_delete" => "Da li ste sigurni da želite da izbrišete izabranog dobavljača?", - "confirm_restore" => "Da li ste sigurni da želite vratiti izabranog dobavljača?", - "cost" => "Trošak dobavljača", - "error_adding_updating" => "Ažuriranje ili dodavanje dobavljača nije uspjelo.", - "goods" => "Roba dobavljača", - "new" => "Novi dobavljač", - "none_selected" => "Niste izabrali nijednog dobavljača za brisanje.", - "one_or_multiple" => "Dobavljač(i)", - "successful_adding" => "Uspješno ste dodali dobavljača", - "successful_deleted" => "Uspješno ste Izbrisali dobavljača", - "successful_updating" => "Uspješno ste ažurirali dobavljača", - "supplier" => "Dobavljač", - "supplier_id" => "ID", - "tax_id" => "Porez Id", - "update" => "Ažuriranje dobavljača", + "account_number" => "Broj računa", + "agency_name" => "Naziv agencije", + "cannot_be_deleted" => "Brisanje izabranih dobavljača nije uspjelo. Jedan ili više njih imaju prodaju.", + "category" => "Kategorija", + "company_name" => "Dobavljač", + "company_name_required" => "Dobavljač je obavezan.", + "confirm_delete" => "Da li ste sigurni da želite da izbrišete izabranog dobavljača?", + "confirm_restore" => "Da li ste sigurni da želite vratiti izabranog dobavljača?", + "cost" => "Trošak dobavljača", + "error_adding_updating" => "Ažuriranje ili dodavanje dobavljača nije uspjelo.", + "goods" => "Roba dobavljača", + "new" => "Novi dobavljač", + "none_selected" => "Niste izabrali nijednog dobavljača za brisanje.", + "one_or_multiple" => "Dobavljač(i)", + "successful_adding" => "Uspješno ste dodali dobavljača", + "successful_deleted" => "Uspješno ste Izbrisali dobavljača", + "successful_updating" => "Uspješno ste ažurirali dobavljača", + "supplier" => "Dobavljač", + "supplier_id" => "ID", + "tax_id" => "Porez Id", + "update" => "Ažuriranje dobavljača", ]; diff --git a/app/Language/bs/Taxes.php b/app/Language/bs/Taxes.php index 11452f4b9..df3e88473 100644 --- a/app/Language/bs/Taxes.php +++ b/app/Language/bs/Taxes.php @@ -1,82 +1,82 @@ "Dodaj izuzetak", - "cascade" => "Kaskada", - "cascade_sequence" => "Kaskadni redoslijed", - "city" => "Mjesto", - "code" => "Šifra poreza", - "confirm_delete" => "Da li ste sigurni da želite da izbrišete ovu šifru poreza? Ova radnja se ne može opozvati", - "confirm_restore" => "Da li ste sigurni da želite da vratite izabranu šifru poreza?", - "default_tax_category" => "Podrazumjevana kategorija", - "default_tax_rate" => "Podrazumjevana stopa poreza", - "error_adding_updating" => "Dodavanje ili ažuriranje šifre poreza nije uspjelo", - "group_seq" => "Grupa Sekv", - "jurisdiction_name" => "Naziv nadležnosti", - "name" => "Naziv", - "new" => "Nova šifra poreza", - "no_taxes" => "", - "no_taxes_to_display" => "Nije dostupna nijedan šifra poreza", - "reporting_authority" => "Organ za izvještavanje", - "round_half_down" => "Pola dolje", - "round_half_even" => "Pola ravnomjerno", - "round_half_odd" => "Pola neparno", - "round_half_up" => "Pola gore", - "rounding_code" => "Kod zaokruživanja", - "sales_tax" => "Porez na promet", - "sales_tax_by_invoice" => "Porez na promet po fakturi", - "sequence" => "Sekv.", - "state" => "Država", - "successful_deleted" => "Uspješno ste izbrisali", - "tax_categories" => "Kategorije poreza", - "tax_categories_configuration" => "Konfiguracija poreskih kategorija", - "tax_categories_saved_successfully" => "Izmjene poreskih kategorija su snimljene", - "tax_categories_saved_unsuccessfully" => "Izmjene poreskih kategorija nisu snimljene", - "tax_category" => "Kategorija poreza", - "tax_category_code" => "Šifra poreske kategorije", - "tax_category_duplicate" => "Duplikat poreske kategorije", - "tax_category_invalid_chars" => "Nevažeći znakovi u nazivu kategorije", - "tax_category_name" => "Naziv kategorije", - "tax_category_new" => "Nova kategorija", - "tax_category_required" => "Kategorija poreza je obavezna", - "tax_code" => "Šifra poreza", - "tax_code_cannot_be_deleted" => "Brisanje šifre poreza nije uspjelo", - "tax_code_duplicate" => "Duplikat šifre poreza", - "tax_code_invalid_chars" => "Nevažeći znakovi u šifri poreza", - "tax_code_name" => "Naziv šifre poreza", - "tax_code_required" => "Šifra poreza je obavezna", - "tax_code_successful_deleted" => "Uspješno ste izbrisali šifru poreza", - "tax_code_successful_updated" => "Uspješno ste ažurirali", - "tax_code_successful_updating" => "Uspješno ste ažurirali šifru poreza", - "tax_code_successfully_added" => "Uspješno ste dodali", - "tax_code_type" => "Vrsta šifre poreza", - "tax_codes" => "Šifre poreza", - "tax_codes_configuration" => "Konfiguracija šifre poreza", - "tax_codes_saved_successfully" => "Izmjena šifre poreza je snimljena", - "tax_codes_saved_unsuccessfully" => "Izmjena šifre poreza nije snimljena", - "tax_excluded" => "Porez nije uključen", - "tax_group" => "Poreska grupa", - "tax_group_not_unique" => "Poreska grupa {0} nije jedinstvena", - "tax_group_sequence" => "Redoslijed poreske grupe", - "tax_included" => "Porez je uključen", - "tax_jurisdiction" => "Poreski organ", - "tax_jurisdiction_duplicate" => "Duplikat poreskog organa", - "tax_jurisdiction_invalid_chars" => "Nevažeći znakovi u nazivu nadležnosti", - "tax_jurisdiction_required" => "Poreski organ je obavezan", - "tax_jurisdictions" => "Poreski organi", - "tax_jurisdictions_configuration" => "Konfiguracija poreskog organa", - "tax_jurisdictions_saved_successfully" => "Izmjene poreskog organa su snimljene", - "tax_jurisdictions_saved_unsuccessfully" => "Izmjene poreskog organa nisu snimljene", - "tax_rate" => "Poreska stopa", - "tax_rate_configuration" => "Konfiguracija poreske stope", - "tax_rate_error_adding_updating" => "Dodavanje ili ažuriranje poreske stope nije uspjelo", - "tax_rate_numeric" => "Stopa poreza mora biti broj", - "tax_rate_required" => "Stopa poreza je obavezna", - "tax_rate_successful_updated" => "Uspješno ste ažurirali", - "tax_rate_successfully_added" => "Uspješno ste dodali", - "tax_rates" => "Poreske stope", - "tax_rates_configuration" => "Konfiguracija poreskih stopa", - "tax_rounding" => "Zaokruživanje poreza", - "tax_type" => "Vrsta poreza", - "update" => "Ažurirajte porez za kategoriju prodaje", - "vat_tax" => "Porez na dodatu vrednost", + "add_exception" => "Dodaj izuzetak", + "cascade" => "Kaskada", + "cascade_sequence" => "Kaskadni redoslijed", + "city" => "Mjesto", + "code" => "Šifra poreza", + "confirm_delete" => "Da li ste sigurni da želite da izbrišete ovu šifru poreza? Ova radnja se ne može opozvati", + "confirm_restore" => "Da li ste sigurni da želite da vratite izabranu šifru poreza?", + "default_tax_category" => "Podrazumjevana kategorija", + "default_tax_rate" => "Podrazumjevana stopa poreza", + "error_adding_updating" => "Dodavanje ili ažuriranje šifre poreza nije uspjelo", + "group_seq" => "Grupa Sekv", + "jurisdiction_name" => "Naziv nadležnosti", + "name" => "Naziv", + "new" => "Nova šifra poreza", + "no_taxes" => "", + "no_taxes_to_display" => "Nije dostupna nijedan šifra poreza", + "reporting_authority" => "Organ za izvještavanje", + "round_half_down" => "Pola dolje", + "round_half_even" => "Pola ravnomjerno", + "round_half_odd" => "Pola neparno", + "round_half_up" => "Pola gore", + "rounding_code" => "Kod zaokruživanja", + "sales_tax" => "Porez na promet", + "sales_tax_by_invoice" => "Porez na promet po fakturi", + "sequence" => "Sekv.", + "state" => "Država", + "successful_deleted" => "Uspješno ste izbrisali", + "tax_categories" => "Kategorije poreza", + "tax_categories_configuration" => "Konfiguracija poreskih kategorija", + "tax_categories_saved_successfully" => "Izmjene poreskih kategorija su snimljene", + "tax_categories_saved_unsuccessfully" => "Izmjene poreskih kategorija nisu snimljene", + "tax_category" => "Kategorija poreza", + "tax_category_code" => "Šifra poreske kategorije", + "tax_category_duplicate" => "Duplikat poreske kategorije", + "tax_category_invalid_chars" => "Nevažeći znakovi u nazivu kategorije", + "tax_category_name" => "Naziv kategorije", + "tax_category_new" => "Nova kategorija", + "tax_category_required" => "Kategorija poreza je obavezna", + "tax_code" => "Šifra poreza", + "tax_code_cannot_be_deleted" => "Brisanje šifre poreza nije uspjelo", + "tax_code_duplicate" => "Duplikat šifre poreza", + "tax_code_invalid_chars" => "Nevažeći znakovi u šifri poreza", + "tax_code_name" => "Naziv šifre poreza", + "tax_code_required" => "Šifra poreza je obavezna", + "tax_code_successful_deleted" => "Uspješno ste izbrisali šifru poreza", + "tax_code_successful_updated" => "Uspješno ste ažurirali", + "tax_code_successful_updating" => "Uspješno ste ažurirali šifru poreza", + "tax_code_successfully_added" => "Uspješno ste dodali", + "tax_code_type" => "Vrsta šifre poreza", + "tax_codes" => "Šifre poreza", + "tax_codes_configuration" => "Konfiguracija šifre poreza", + "tax_codes_saved_successfully" => "Izmjena šifre poreza je snimljena", + "tax_codes_saved_unsuccessfully" => "Izmjena šifre poreza nije snimljena", + "tax_excluded" => "Porez nije uključen", + "tax_group" => "Poreska grupa", + "tax_group_not_unique" => "Poreska grupa {0} nije jedinstvena", + "tax_group_sequence" => "Redoslijed poreske grupe", + "tax_included" => "Porez je uključen", + "tax_jurisdiction" => "Poreski organ", + "tax_jurisdiction_duplicate" => "Duplikat poreskog organa", + "tax_jurisdiction_invalid_chars" => "Nevažeći znakovi u nazivu nadležnosti", + "tax_jurisdiction_required" => "Poreski organ je obavezan", + "tax_jurisdictions" => "Poreski organi", + "tax_jurisdictions_configuration" => "Konfiguracija poreskog organa", + "tax_jurisdictions_saved_successfully" => "Izmjene poreskog organa su snimljene", + "tax_jurisdictions_saved_unsuccessfully" => "Izmjene poreskog organa nisu snimljene", + "tax_rate" => "Poreska stopa", + "tax_rate_configuration" => "Konfiguracija poreske stope", + "tax_rate_error_adding_updating" => "Dodavanje ili ažuriranje poreske stope nije uspjelo", + "tax_rate_numeric" => "Stopa poreza mora biti broj", + "tax_rate_required" => "Stopa poreza je obavezna", + "tax_rate_successful_updated" => "Uspješno ste ažurirali", + "tax_rate_successfully_added" => "Uspješno ste dodali", + "tax_rates" => "Poreske stope", + "tax_rates_configuration" => "Konfiguracija poreskih stopa", + "tax_rounding" => "Zaokruživanje poreza", + "tax_type" => "Vrsta poreza", + "update" => "Ažurirajte porez za kategoriju prodaje", + "vat_tax" => "Porez na dodatu vrednost", ]; diff --git a/app/Language/bs/index.html b/app/Language/bs/index.html index 5f0b6b7b3..d43079186 100644 --- a/app/Language/bs/index.html +++ b/app/Language/bs/index.html @@ -1,7 +1,7 @@ - 403 Zabranjeno + 403 Zabranjeno diff --git a/app/Language/cs/Attributes.php b/app/Language/cs/Attributes.php index 0adb3846e..cb64f590d 100644 --- a/app/Language/cs/Attributes.php +++ b/app/Language/cs/Attributes.php @@ -1,32 +1,32 @@ "", - "confirm_delete" => "", - "confirm_restore" => "", - "definition_cannot_be_deleted" => "", - "definition_error_adding_updating" => "", - "definition_flags" => "", - "definition_group" => "", - "definition_id" => "", - "definition_name" => "", - "definition_name_required" => "", - "definition_one_or_multiple" => "", - "definition_successful_adding" => "", - "definition_successful_deleted" => "", - "definition_successful_updating" => "", - "definition_type" => "", - "definition_type_required" => "", - "definition_unit" => "", - "definition_values" => "", - "new" => "", - "no_attributes_to_display" => "", - "receipt_visibility" => "", - "show_in_items" => "", - "show_in_items_visibility" => "", - "show_in_receipt" => "", - "show_in_receivings" => "", - "show_in_receivings_visibility" => "", - "show_in_sales" => "", - "show_in_sales_visibility" => "", - "update" => "", + "attribute_value_invalid_chars" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "definition_cannot_be_deleted" => "", + "definition_error_adding_updating" => "", + "definition_flags" => "", + "definition_group" => "", + "definition_id" => "", + "definition_name" => "", + "definition_name_required" => "", + "definition_one_or_multiple" => "", + "definition_successful_adding" => "", + "definition_successful_deleted" => "", + "definition_successful_updating" => "", + "definition_type" => "", + "definition_type_required" => "", + "definition_unit" => "", + "definition_values" => "", + "new" => "", + "no_attributes_to_display" => "", + "receipt_visibility" => "", + "show_in_items" => "", + "show_in_items_visibility" => "", + "show_in_receipt" => "", + "show_in_receivings" => "", + "show_in_receivings_visibility" => "", + "show_in_sales" => "", + "show_in_sales_visibility" => "", + "update" => "", ]; diff --git a/app/Language/cs/Bootstrap_tables.php b/app/Language/cs/Bootstrap_tables.php index f7f523bf2..379f9aada 100644 --- a/app/Language/cs/Bootstrap_tables.php +++ b/app/Language/cs/Bootstrap_tables.php @@ -1,11 +1,11 @@ "Vše", - "columns" => "Sloupce", - "hide_show_pagination" => "Zobrazit/skrýt stránkování", - "loading" => "Nahrávám, prosím počkejte...", - "page_from_to" => "Zobrazeno {0} až {1} z {2} řádků", - "refresh" => "Obnovit", - "rows_per_page" => "{0} řádků na stránku", - "toggle" => "Přepnout", + "all" => "Vše", + "columns" => "Sloupce", + "hide_show_pagination" => "Zobrazit/skrýt stránkování", + "loading" => "Nahrávám, prosím počkejte...", + "page_from_to" => "Zobrazeno {0} až {1} z {2} řádků", + "refresh" => "Obnovit", + "rows_per_page" => "{0} řádků na stránku", + "toggle" => "Přepnout", ]; diff --git a/app/Language/cs/Calendar.php b/app/Language/cs/Calendar.php index 7385defe0..d9d0f215c 100644 --- a/app/Language/cs/Calendar.php +++ b/app/Language/cs/Calendar.php @@ -1,48 +1,48 @@ "Ne", - "mo" => "Po", - "tu" => "Út", - "we" => "St", - "th" => "Čt", - "fr" => "Pá", - "sa" => "So", - "sun" => "Ne", - "mon" => "Po", - "tue" => "Út", - "wed" => "St", - "thu" => "Čt", - "fri" => "Pá", - "sat" => "So", - "sunday" => "Neděle", - "monday" => "Pondělí", - "tuesday" => "Úterý", - "wednesday" => "Středa", - "thursday" => "Čtvrtek", - "friday" => "Pátek", - "saturday" => "Sobota", - "jan" => "Led", - "feb" => "Ún", - "mar" => "Bře", - "apr" => "Dub", - "may" => "Kvě", - "jun" => "Čer", - "jul" => "Čvnc", - "aug" => "Srp", - "sep" => "Zář", - "oct" => "Říj", - "nov" => "Lis", - "dec" => "Pro", - "january" => "Leden", - "february" => "Únor", - "march" => "Březen", - "april" => "Duben", - "mayl" => "Květen", - "june" => "Červen", - "july" => "Červenec", - "august" => "Srpen", - "september" => "Září", - "october" => "Říjen", - "november" => "Listopad", - "december" => "Prosinec", + "su" => "Ne", + "mo" => "Po", + "tu" => "Út", + "we" => "St", + "th" => "Čt", + "fr" => "Pá", + "sa" => "So", + "sun" => "Ne", + "mon" => "Po", + "tue" => "Út", + "wed" => "St", + "thu" => "Čt", + "fri" => "Pá", + "sat" => "So", + "sunday" => "Neděle", + "monday" => "Pondělí", + "tuesday" => "Úterý", + "wednesday" => "Středa", + "thursday" => "Čtvrtek", + "friday" => "Pátek", + "saturday" => "Sobota", + "jan" => "Led", + "feb" => "Ún", + "mar" => "Bře", + "apr" => "Dub", + "may" => "Kvě", + "jun" => "Čer", + "jul" => "Čvnc", + "aug" => "Srp", + "sep" => "Zář", + "oct" => "Říj", + "nov" => "Lis", + "dec" => "Pro", + "january" => "Leden", + "february" => "Únor", + "march" => "Březen", + "april" => "Duben", + "mayl" => "Květen", + "june" => "Červen", + "july" => "Červenec", + "august" => "Srpen", + "september" => "Září", + "october" => "Říjen", + "november" => "Listopad", + "december" => "Prosinec", ]; diff --git a/app/Language/cs/Cashups.php b/app/Language/cs/Cashups.php index 2ffc8c593..04d19c94f 100644 --- a/app/Language/cs/Cashups.php +++ b/app/Language/cs/Cashups.php @@ -1,49 +1,49 @@ "", - "amount_number" => "", - "amount_required" => "", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "", - "cash_difference" => "", - "close_date" => "", - "close_employee" => "", - "closed_amount_card" => "", - "closed_amount_cash" => "", - "closed_amount_check" => "", - "closed_amount_due" => "", - "closed_amount_giftcard" => "", - "closed_amount_total" => "", - "closed_date" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "confirm_submit" => "", - "date_number" => "", - "date_required" => "", - "description" => "", - "enable_expected" => "", - "error_adding_updating" => "", - "giftcard" => "", - "id" => "", - "info" => "", - "info_employee" => "", - "is_deleted" => "", - "new" => "", - "no_cashups_to_display" => "", - "none_selected" => "", - "note" => "", - "one_or_multiple" => "", - "open_amount_cash" => "", - "open_date" => "", - "open_employee" => "", - "opened_date" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "total" => "", - "transfer_amount_cash" => "", - "transfer_amount_cash_minus" => "", - "update" => "", - "warning" => "", + "amount" => "", + "amount_number" => "", + "amount_required" => "", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "", + "cash_difference" => "", + "close_date" => "", + "close_employee" => "", + "closed_amount_card" => "", + "closed_amount_cash" => "", + "closed_amount_check" => "", + "closed_amount_due" => "", + "closed_amount_giftcard" => "", + "closed_amount_total" => "", + "closed_date" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "confirm_submit" => "", + "date_number" => "", + "date_required" => "", + "description" => "", + "enable_expected" => "", + "error_adding_updating" => "", + "giftcard" => "", + "id" => "", + "info" => "", + "info_employee" => "", + "is_deleted" => "", + "new" => "", + "no_cashups_to_display" => "", + "none_selected" => "", + "note" => "", + "one_or_multiple" => "", + "open_amount_cash" => "", + "open_date" => "", + "open_employee" => "", + "opened_date" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "total" => "", + "transfer_amount_cash" => "", + "transfer_amount_cash_minus" => "", + "update" => "", + "warning" => "", ]; diff --git a/app/Language/cs/Common.php b/app/Language/cs/Common.php index 2c2eed432..8e0c2313f 100644 --- a/app/Language/cs/Common.php +++ b/app/Language/cs/Common.php @@ -1,88 +1,88 @@ "Adresa 1", - "address_2" => "Adresa 2", - "admin" => "", - "city" => "Město", - "clerk" => "", - "close" => "Zavřít", - "color" => "", - "comments" => "Podrobnosti", - "common" => "", - "confirm_search" => "Máte vybráno jeden nebo více řádků a tyto po po vyhledání nebudou vybrány. Chcete opravdu pokračovat s vyhledáváním?", - "copyrights" => "© 2010 - {0}", - "correct_errors" => "", - "country" => "Země", - "dashboard" => "", - "date" => "Datum", - "delete" => "Smazat", - "det" => "podrobnosti", - "download_import_template" => "Stáhnout šablonu pro CSV (CSV)", - "edit" => "upravit", - "email" => "Email", - "email_invalid_format" => "Emailová adresa má špatný formát.", - "export_csv" => "Export do CSVu", - "export_csv_no" => "Ne", - "export_csv_yes" => "Ano", - "fields_required_message" => "Červená pole jsou vyžadována", - "fields_required_message_unique" => "", - "first_name" => "Jméno", - "first_name_required" => "Jméno je vyžadováno.", - "first_page" => "První", - "gender" => "Pohlaví", - "gender_female" => "Ž", - "gender_male" => "M", - "gender_undefined" => "", - "icon" => "", - "id" => "Id", - "import" => "Import", - "import_change_file" => "Změnit", - "import_csv" => "Import z CSVu", - "import_full_path" => "Úplná cesta k souboru CSV je vyžadována", - "import_remove_file" => "Vyjmout", - "import_select_file" => "Vybrat soubor", - "inv" => "", - "last_name" => "Příjmení", - "last_name_required" => "Příjmení je vyžadováno.", - "last_page" => "Poslední", - "learn_about_project" => "pro získání dalších informací k projektu.", - "list_of" => "Seznam", - "logo" => "", - "logo_mark" => "", - "logout" => "Odhlásit", - "manager" => "", - "migration_needed" => "", - "new" => "Nový", - "no" => "", - "no_persons_to_display" => "Žádní zákazníci k zobrazení.", - "none_selected_text" => "bez výběru", - "or" => "Nebo", - "people" => "", - "phone_number" => "Telefon", - "phone_number_required" => "", - "please_visit_my" => "Navštivte prosím", - "position" => "", - "powered_by" => "Používá", - "price" => "Cena", - "print" => "Tisk", - "remove" => "Vyjmout", - "required" => "Vyžadováno", - "restore" => "Obnovit", - "return_policy" => "Podmínky pro vrácení", - "search" => "Hledat", - "search_options" => "Volby pro hledání", - "searched_for" => "Hledat", - "software_short" => "", - "software_title" => "", - "state" => "Stát", - "submit" => "Odeslat", - "total_spent" => "Celkem utraceno", - "unknown" => "Neznámý", - "view_recent_sales" => "Zobrazit nedávné prodeje", - "website" => "www-stránky", - "welcome" => "Vítejte", - "welcome_message" => "Vítejte v OSPOS, vyberte si z modulů dole pro pokračování.", - "yes" => "", - "you_are_using_ospos" => "Používáte Open Source Point Of Sale verze", - "zip" => "PSČ", + "address_1" => "Adresa 1", + "address_2" => "Adresa 2", + "admin" => "", + "city" => "Město", + "clerk" => "", + "close" => "Zavřít", + "color" => "", + "comments" => "Podrobnosti", + "common" => "", + "confirm_search" => "Máte vybráno jeden nebo více řádků a tyto po po vyhledání nebudou vybrány. Chcete opravdu pokračovat s vyhledáváním?", + "copyrights" => "© 2010 - {0}", + "correct_errors" => "", + "country" => "Země", + "dashboard" => "", + "date" => "Datum", + "delete" => "Smazat", + "det" => "podrobnosti", + "download_import_template" => "Stáhnout šablonu pro CSV (CSV)", + "edit" => "upravit", + "email" => "Email", + "email_invalid_format" => "Emailová adresa má špatný formát.", + "export_csv" => "Export do CSVu", + "export_csv_no" => "Ne", + "export_csv_yes" => "Ano", + "fields_required_message" => "Červená pole jsou vyžadována", + "fields_required_message_unique" => "", + "first_name" => "Jméno", + "first_name_required" => "Jméno je vyžadováno.", + "first_page" => "První", + "gender" => "Pohlaví", + "gender_female" => "Ž", + "gender_male" => "M", + "gender_undefined" => "", + "icon" => "", + "id" => "Id", + "import" => "Import", + "import_change_file" => "Změnit", + "import_csv" => "Import z CSVu", + "import_full_path" => "Úplná cesta k souboru CSV je vyžadována", + "import_remove_file" => "Vyjmout", + "import_select_file" => "Vybrat soubor", + "inv" => "", + "last_name" => "Příjmení", + "last_name_required" => "Příjmení je vyžadováno.", + "last_page" => "Poslední", + "learn_about_project" => "pro získání dalších informací k projektu.", + "list_of" => "Seznam", + "logo" => "", + "logo_mark" => "", + "logout" => "Odhlásit", + "manager" => "", + "migration_needed" => "", + "new" => "Nový", + "no" => "", + "no_persons_to_display" => "Žádní zákazníci k zobrazení.", + "none_selected_text" => "bez výběru", + "or" => "Nebo", + "people" => "", + "phone_number" => "Telefon", + "phone_number_required" => "", + "please_visit_my" => "Navštivte prosím", + "position" => "", + "powered_by" => "Používá", + "price" => "Cena", + "print" => "Tisk", + "remove" => "Vyjmout", + "required" => "Vyžadováno", + "restore" => "Obnovit", + "return_policy" => "Podmínky pro vrácení", + "search" => "Hledat", + "search_options" => "Volby pro hledání", + "searched_for" => "Hledat", + "software_short" => "", + "software_title" => "", + "state" => "Stát", + "submit" => "Odeslat", + "total_spent" => "Celkem utraceno", + "unknown" => "Neznámý", + "view_recent_sales" => "Zobrazit nedávné prodeje", + "website" => "www-stránky", + "welcome" => "Vítejte", + "welcome_message" => "Vítejte v OSPOS, vyberte si z modulů dole pro pokračování.", + "yes" => "", + "you_are_using_ospos" => "Používáte Open Source Point Of Sale verze", + "zip" => "PSČ", ]; diff --git a/app/Language/cs/Config.php b/app/Language/cs/Config.php index 6c24a555e..2a047475e 100644 --- a/app/Language/cs/Config.php +++ b/app/Language/cs/Config.php @@ -1,330 +1,330 @@ "Adresa společnosti", - "address_required" => "", - "all_set" => "All file permissions are set correctly!", - "allow_duplicate_barcodes" => "", - "apostrophe" => "", - "backup_button" => "", - "backup_database" => "", - "barcode" => "", - "barcode_company" => "", - "barcode_configuration" => "", - "barcode_content" => "", - "barcode_first_row" => "", - "barcode_font" => "", - "barcode_formats" => "", - "barcode_generate_if_empty" => "", - "barcode_height" => "", - "barcode_id" => "", - "barcode_info" => "", - "barcode_layout" => "", - "barcode_name" => "", - "barcode_number" => "", - "barcode_number_in_row" => "", - "barcode_page_cellspacing" => "", - "barcode_page_width" => "", - "barcode_price" => "", - "barcode_second_row" => "", - "barcode_third_row" => "", - "barcode_tooltip" => "", - "barcode_type" => "", - "barcode_width" => "", - "bottom" => "", - "cash_button" => "", - "cash_button_1" => "", - "cash_button_2" => "", - "cash_button_3" => "", - "cash_button_4" => "", - "cash_button_5" => "", - "cash_button_6" => "", - "cash_decimals" => "", - "cash_decimals_tooltip" => "", - "cash_rounding" => "", - "category_dropdown" => "", - "center" => "", - "change_apperance_tooltip" => "", - "comma" => "", - "company" => "", - "company_avatar" => "", - "company_change_image" => "", - "company_logo" => "", - "company_remove_image" => "", - "company_required" => "", - "company_select_image" => "", - "company_website_url" => "", - "country_codes" => "", - "country_codes_tooltip" => "", - "currency_code" => "", - "currency_decimals" => "", - "currency_symbol" => "", - "current_employee_only" => "", - "customer_reward" => "", - "customer_reward_duplicate" => "", - "customer_reward_enable" => "", - "customer_reward_invalid_chars" => "", - "customer_reward_required" => "", - "customer_sales_tax_support" => "", - "date_or_time_format" => "", - "datetimeformat" => "", - "decimal_point" => "", - "default_barcode_font_size_number" => "", - "default_barcode_font_size_required" => "", - "default_barcode_height_number" => "", - "default_barcode_height_required" => "", - "default_barcode_num_in_row_number" => "", - "default_barcode_num_in_row_required" => "", - "default_barcode_page_cellspacing_number" => "", - "default_barcode_page_cellspacing_required" => "", - "default_barcode_page_width_number" => "", - "default_barcode_page_width_required" => "", - "default_barcode_width_number" => "", - "default_barcode_width_required" => "", - "default_item_columns" => "", - "default_origin_tax_code" => "", - "default_receivings_discount" => "", - "default_receivings_discount_number" => "", - "default_receivings_discount_required" => "", - "default_sales_discount" => "", - "default_sales_discount_number" => "", - "default_sales_discount_required" => "", - "default_tax_category" => "", - "default_tax_code" => "", - "default_tax_jurisdiction" => "", - "default_tax_name_number" => "", - "default_tax_name_required" => "", - "default_tax_rate" => "", - "default_tax_rate_1" => "", - "default_tax_rate_2" => "", - "default_tax_rate_3" => "", - "default_tax_rate_number" => "", - "default_tax_rate_required" => "", - "derive_sale_quantity" => "", - "derive_sale_quantity_tooltip" => "", - "dinner_table" => "", - "dinner_table_duplicate" => "", - "dinner_table_enable" => "", - "dinner_table_invalid_chars" => "", - "dinner_table_required" => "", - "dot" => "", - "email" => "", - "email_configuration" => "", - "email_mailpath" => "", - "email_protocol" => "", - "email_receipt_check_behaviour" => "", - "email_receipt_check_behaviour_always" => "", - "email_receipt_check_behaviour_last" => "", - "email_receipt_check_behaviour_never" => "", - "email_smtp_crypto" => "", - "email_smtp_host" => "", - "email_smtp_pass" => "", - "email_smtp_port" => "", - "email_smtp_timeout" => "", - "email_smtp_user" => "", - "enable_avatar" => "", - "enable_avatar_tooltip" => "", - "enable_dropdown_tooltip" => "", - "enable_new_look" => "", - "enable_right_bar" => "", - "enable_right_bar_tooltip" => "", - "enforce_privacy" => "", - "enforce_privacy_tooltip" => "", - "fax" => "", - "file_perm" => "There are problems with file permissions please fix and reload this page.", - "financial_year" => "", - "financial_year_apr" => "", - "financial_year_aug" => "", - "financial_year_dec" => "", - "financial_year_feb" => "", - "financial_year_jan" => "", - "financial_year_jul" => "", - "financial_year_jun" => "", - "financial_year_mar" => "", - "financial_year_may" => "", - "financial_year_nov" => "", - "financial_year_oct" => "", - "financial_year_sep" => "", - "floating_labels" => "", - "gcaptcha_enable" => "", - "gcaptcha_secret_key" => "", - "gcaptcha_secret_key_required" => "", - "gcaptcha_site_key" => "", - "gcaptcha_site_key_required" => "", - "gcaptcha_tooltip" => "", - "general" => "", - "general_configuration" => "", - "giftcard_number" => "", - "giftcard_random" => "", - "giftcard_series" => "", - "image_allowed_file_types" => "", - "image_max_height_tooltip" => "", - "image_max_size_tooltip" => "", - "image_max_width_tooltip" => "", - "image_restrictions" => "", - "include_hsn" => "", - "info" => "", - "info_configuration" => "", - "input_groups" => "", - "integrations" => "", - "integrations_configuration" => "", - "invoice" => "", - "invoice_configuration" => "", - "invoice_default_comments" => "", - "invoice_email_message" => "", - "invoice_enable" => "", - "invoice_printer" => "", - "invoice_type" => "", - "is_readable" => "", - "is_writable" => "is writable, but the permissions are higher than 750.", - "item_markup" => "", - "jsprintsetup_required" => "", - "language" => "", - "last_used_invoice_number" => "", - "last_used_quote_number" => "", - "last_used_work_order_number" => "", - "left" => "", - "license" => "", - "license_configuration" => "", - "line_sequence" => "", - "lines_per_page" => "", - "lines_per_page_number" => "", - "lines_per_page_required" => "", - "locale" => "", - "locale_configuration" => "", - "locale_info" => "", - "location" => "", - "location_configuration" => "", - "location_info" => "", - "login_form" => "", - "logout" => "", - "mailchimp" => "", - "mailchimp_api_key" => "", - "mailchimp_configuration" => "", - "mailchimp_key_successfully" => "", - "mailchimp_key_unsuccessfully" => "", - "mailchimp_lists" => "", - "mailchimp_tooltip" => "", - "message" => "", - "message_configuration" => "", - "msg_msg" => "", - "msg_msg_placeholder" => "", - "msg_pwd" => "", - "msg_pwd_required" => "", - "msg_src" => "", - "msg_src_required" => "", - "msg_uid" => "", - "msg_uid_required" => "", - "multi_pack_enabled" => "", - "no_risk" => "No security/vulnerability risks.", - "none" => "", - "notify_alignment" => "", - "number_format" => "", - "number_locale" => "", - "number_locale_invalid" => "", - "number_locale_required" => "", - "number_locale_tooltip" => "", - "os_timezone" => "", - "ospos_info" => "", - "payment_options_order" => "", - "perm_risk" => "Permissions higher than 750 leaves this software at risk.", - "phone" => "", - "phone_required" => "", - "print_bottom_margin" => "", - "print_bottom_margin_number" => "", - "print_bottom_margin_required" => "", - "print_delay_autoreturn" => "", - "print_delay_autoreturn_number" => "", - "print_delay_autoreturn_required" => "", - "print_footer" => "", - "print_header" => "", - "print_left_margin" => "", - "print_left_margin_number" => "", - "print_left_margin_required" => "", - "print_receipt_check_behaviour" => "", - "print_receipt_check_behaviour_always" => "", - "print_receipt_check_behaviour_last" => "", - "print_receipt_check_behaviour_never" => "", - "print_right_margin" => "", - "print_right_margin_number" => "", - "print_right_margin_required" => "", - "print_silently" => "", - "print_top_margin" => "", - "print_top_margin_number" => "", - "print_top_margin_required" => "", - "quantity_decimals" => "", - "quick_cash_enable" => "", - "quote_default_comments" => "", - "receipt" => "", - "receipt_category" => "", - "receipt_configuration" => "", - "receipt_default" => "", - "receipt_font_size" => "", - "receipt_font_size_number" => "", - "receipt_font_size_required" => "", - "receipt_info" => "", - "receipt_printer" => "", - "receipt_short" => "", - "receipt_show_company_name" => "", - "receipt_show_description" => "", - "receipt_show_serialnumber" => "", - "receipt_show_tax_ind" => "", - "receipt_show_taxes" => "", - "receipt_show_total_discount" => "", - "receipt_template" => "", - "receiving_calculate_average_price" => "", - "recv_invoice_format" => "", - "register_mode_default" => "", - "report_an_issue" => "", - "return_policy_required" => "", - "reward" => "", - "reward_configuration" => "", - "right" => "", - "sales_invoice_format" => "", - "sales_quote_format" => "", - "saved_successfully" => "", - "saved_unsuccessfully" => "", - "security_issue" => "Security Vulnerability Warning", - "server_notice" => "Please use the below info for issue reporting.", - "service_charge" => "", - "show_due_enable" => "", - "show_office_group" => "", - "statistics" => "", - "statistics_tooltip" => "", - "stock_location" => "", - "stock_location_duplicate" => "", - "stock_location_invalid_chars" => "", - "stock_location_required" => "", - "suggestions_fifth_column" => "", - "suggestions_first_column" => "", - "suggestions_fourth_column" => "", - "suggestions_layout" => "", - "suggestions_second_column" => "", - "suggestions_third_column" => "", - "system_conf" => "Setup & Conf", - "system_info" => "System Info", - "table" => "", - "table_configuration" => "", - "takings_printer" => "", - "tax" => "", - "tax_category" => "", - "tax_category_duplicate" => "", - "tax_category_invalid_chars" => "", - "tax_category_required" => "", - "tax_category_used" => "", - "tax_configuration" => "", - "tax_decimals" => "", - "tax_id" => "", - "tax_included" => "", - "theme" => "", - "theme_preview" => "", - "thousands_separator" => "", - "timezone" => "", - "timezone_error" => "", - "top" => "", - "use_destination_based_tax" => "", - "user_timezone" => "", - "website" => "", - "wholesale_markup" => "", - "work_order_enable" => "", - "work_order_format" => "", + "address" => "Adresa společnosti", + "address_required" => "", + "all_set" => "All file permissions are set correctly!", + "allow_duplicate_barcodes" => "", + "apostrophe" => "", + "backup_button" => "", + "backup_database" => "", + "barcode" => "", + "barcode_company" => "", + "barcode_configuration" => "", + "barcode_content" => "", + "barcode_first_row" => "", + "barcode_font" => "", + "barcode_formats" => "", + "barcode_generate_if_empty" => "", + "barcode_height" => "", + "barcode_id" => "", + "barcode_info" => "", + "barcode_layout" => "", + "barcode_name" => "", + "barcode_number" => "", + "barcode_number_in_row" => "", + "barcode_page_cellspacing" => "", + "barcode_page_width" => "", + "barcode_price" => "", + "barcode_second_row" => "", + "barcode_third_row" => "", + "barcode_tooltip" => "", + "barcode_type" => "", + "barcode_width" => "", + "bottom" => "", + "cash_button" => "", + "cash_button_1" => "", + "cash_button_2" => "", + "cash_button_3" => "", + "cash_button_4" => "", + "cash_button_5" => "", + "cash_button_6" => "", + "cash_decimals" => "", + "cash_decimals_tooltip" => "", + "cash_rounding" => "", + "category_dropdown" => "", + "center" => "", + "change_apperance_tooltip" => "", + "comma" => "", + "company" => "", + "company_avatar" => "", + "company_change_image" => "", + "company_logo" => "", + "company_remove_image" => "", + "company_required" => "", + "company_select_image" => "", + "company_website_url" => "", + "country_codes" => "", + "country_codes_tooltip" => "", + "currency_code" => "", + "currency_decimals" => "", + "currency_symbol" => "", + "current_employee_only" => "", + "customer_reward" => "", + "customer_reward_duplicate" => "", + "customer_reward_enable" => "", + "customer_reward_invalid_chars" => "", + "customer_reward_required" => "", + "customer_sales_tax_support" => "", + "date_or_time_format" => "", + "datetimeformat" => "", + "decimal_point" => "", + "default_barcode_font_size_number" => "", + "default_barcode_font_size_required" => "", + "default_barcode_height_number" => "", + "default_barcode_height_required" => "", + "default_barcode_num_in_row_number" => "", + "default_barcode_num_in_row_required" => "", + "default_barcode_page_cellspacing_number" => "", + "default_barcode_page_cellspacing_required" => "", + "default_barcode_page_width_number" => "", + "default_barcode_page_width_required" => "", + "default_barcode_width_number" => "", + "default_barcode_width_required" => "", + "default_item_columns" => "", + "default_origin_tax_code" => "", + "default_receivings_discount" => "", + "default_receivings_discount_number" => "", + "default_receivings_discount_required" => "", + "default_sales_discount" => "", + "default_sales_discount_number" => "", + "default_sales_discount_required" => "", + "default_tax_category" => "", + "default_tax_code" => "", + "default_tax_jurisdiction" => "", + "default_tax_name_number" => "", + "default_tax_name_required" => "", + "default_tax_rate" => "", + "default_tax_rate_1" => "", + "default_tax_rate_2" => "", + "default_tax_rate_3" => "", + "default_tax_rate_number" => "", + "default_tax_rate_required" => "", + "derive_sale_quantity" => "", + "derive_sale_quantity_tooltip" => "", + "dinner_table" => "", + "dinner_table_duplicate" => "", + "dinner_table_enable" => "", + "dinner_table_invalid_chars" => "", + "dinner_table_required" => "", + "dot" => "", + "email" => "", + "email_configuration" => "", + "email_mailpath" => "", + "email_protocol" => "", + "email_receipt_check_behaviour" => "", + "email_receipt_check_behaviour_always" => "", + "email_receipt_check_behaviour_last" => "", + "email_receipt_check_behaviour_never" => "", + "email_smtp_crypto" => "", + "email_smtp_host" => "", + "email_smtp_pass" => "", + "email_smtp_port" => "", + "email_smtp_timeout" => "", + "email_smtp_user" => "", + "enable_avatar" => "", + "enable_avatar_tooltip" => "", + "enable_dropdown_tooltip" => "", + "enable_new_look" => "", + "enable_right_bar" => "", + "enable_right_bar_tooltip" => "", + "enforce_privacy" => "", + "enforce_privacy_tooltip" => "", + "fax" => "", + "file_perm" => "There are problems with file permissions please fix and reload this page.", + "financial_year" => "", + "financial_year_apr" => "", + "financial_year_aug" => "", + "financial_year_dec" => "", + "financial_year_feb" => "", + "financial_year_jan" => "", + "financial_year_jul" => "", + "financial_year_jun" => "", + "financial_year_mar" => "", + "financial_year_may" => "", + "financial_year_nov" => "", + "financial_year_oct" => "", + "financial_year_sep" => "", + "floating_labels" => "", + "gcaptcha_enable" => "", + "gcaptcha_secret_key" => "", + "gcaptcha_secret_key_required" => "", + "gcaptcha_site_key" => "", + "gcaptcha_site_key_required" => "", + "gcaptcha_tooltip" => "", + "general" => "", + "general_configuration" => "", + "giftcard_number" => "", + "giftcard_random" => "", + "giftcard_series" => "", + "image_allowed_file_types" => "", + "image_max_height_tooltip" => "", + "image_max_size_tooltip" => "", + "image_max_width_tooltip" => "", + "image_restrictions" => "", + "include_hsn" => "", + "info" => "", + "info_configuration" => "", + "input_groups" => "", + "integrations" => "", + "integrations_configuration" => "", + "invoice" => "", + "invoice_configuration" => "", + "invoice_default_comments" => "", + "invoice_email_message" => "", + "invoice_enable" => "", + "invoice_printer" => "", + "invoice_type" => "", + "is_readable" => "", + "is_writable" => "is writable, but the permissions are higher than 750.", + "item_markup" => "", + "jsprintsetup_required" => "", + "language" => "", + "last_used_invoice_number" => "", + "last_used_quote_number" => "", + "last_used_work_order_number" => "", + "left" => "", + "license" => "", + "license_configuration" => "", + "line_sequence" => "", + "lines_per_page" => "", + "lines_per_page_number" => "", + "lines_per_page_required" => "", + "locale" => "", + "locale_configuration" => "", + "locale_info" => "", + "location" => "", + "location_configuration" => "", + "location_info" => "", + "login_form" => "", + "logout" => "", + "mailchimp" => "", + "mailchimp_api_key" => "", + "mailchimp_configuration" => "", + "mailchimp_key_successfully" => "", + "mailchimp_key_unsuccessfully" => "", + "mailchimp_lists" => "", + "mailchimp_tooltip" => "", + "message" => "", + "message_configuration" => "", + "msg_msg" => "", + "msg_msg_placeholder" => "", + "msg_pwd" => "", + "msg_pwd_required" => "", + "msg_src" => "", + "msg_src_required" => "", + "msg_uid" => "", + "msg_uid_required" => "", + "multi_pack_enabled" => "", + "no_risk" => "No security/vulnerability risks.", + "none" => "", + "notify_alignment" => "", + "number_format" => "", + "number_locale" => "", + "number_locale_invalid" => "", + "number_locale_required" => "", + "number_locale_tooltip" => "", + "os_timezone" => "", + "ospos_info" => "", + "payment_options_order" => "", + "perm_risk" => "Permissions higher than 750 leaves this software at risk.", + "phone" => "", + "phone_required" => "", + "print_bottom_margin" => "", + "print_bottom_margin_number" => "", + "print_bottom_margin_required" => "", + "print_delay_autoreturn" => "", + "print_delay_autoreturn_number" => "", + "print_delay_autoreturn_required" => "", + "print_footer" => "", + "print_header" => "", + "print_left_margin" => "", + "print_left_margin_number" => "", + "print_left_margin_required" => "", + "print_receipt_check_behaviour" => "", + "print_receipt_check_behaviour_always" => "", + "print_receipt_check_behaviour_last" => "", + "print_receipt_check_behaviour_never" => "", + "print_right_margin" => "", + "print_right_margin_number" => "", + "print_right_margin_required" => "", + "print_silently" => "", + "print_top_margin" => "", + "print_top_margin_number" => "", + "print_top_margin_required" => "", + "quantity_decimals" => "", + "quick_cash_enable" => "", + "quote_default_comments" => "", + "receipt" => "", + "receipt_category" => "", + "receipt_configuration" => "", + "receipt_default" => "", + "receipt_font_size" => "", + "receipt_font_size_number" => "", + "receipt_font_size_required" => "", + "receipt_info" => "", + "receipt_printer" => "", + "receipt_short" => "", + "receipt_show_company_name" => "", + "receipt_show_description" => "", + "receipt_show_serialnumber" => "", + "receipt_show_tax_ind" => "", + "receipt_show_taxes" => "", + "receipt_show_total_discount" => "", + "receipt_template" => "", + "receiving_calculate_average_price" => "", + "recv_invoice_format" => "", + "register_mode_default" => "", + "report_an_issue" => "", + "return_policy_required" => "", + "reward" => "", + "reward_configuration" => "", + "right" => "", + "sales_invoice_format" => "", + "sales_quote_format" => "", + "saved_successfully" => "", + "saved_unsuccessfully" => "", + "security_issue" => "Security Vulnerability Warning", + "server_notice" => "Please use the below info for issue reporting.", + "service_charge" => "", + "show_due_enable" => "", + "show_office_group" => "", + "statistics" => "", + "statistics_tooltip" => "", + "stock_location" => "", + "stock_location_duplicate" => "", + "stock_location_invalid_chars" => "", + "stock_location_required" => "", + "suggestions_fifth_column" => "", + "suggestions_first_column" => "", + "suggestions_fourth_column" => "", + "suggestions_layout" => "", + "suggestions_second_column" => "", + "suggestions_third_column" => "", + "system_conf" => "Setup & Conf", + "system_info" => "System Info", + "table" => "", + "table_configuration" => "", + "takings_printer" => "", + "tax" => "", + "tax_category" => "", + "tax_category_duplicate" => "", + "tax_category_invalid_chars" => "", + "tax_category_required" => "", + "tax_category_used" => "", + "tax_configuration" => "", + "tax_decimals" => "", + "tax_id" => "", + "tax_included" => "", + "theme" => "", + "theme_preview" => "", + "thousands_separator" => "", + "timezone" => "", + "timezone_error" => "", + "top" => "", + "use_destination_based_tax" => "", + "user_timezone" => "", + "website" => "", + "wholesale_markup" => "", + "work_order_enable" => "", + "work_order_format" => "", ]; diff --git a/app/Language/cs/Customers.php b/app/Language/cs/Customers.php index 226b56266..c403c1ed2 100644 --- a/app/Language/cs/Customers.php +++ b/app/Language/cs/Customers.php @@ -1,56 +1,56 @@ "Účet č. #", - "account_number_duplicate" => "Číslo účtu již existuje v databázi.", - "available_points" => "Dostupné body", - "available_points_value" => "", - "average" => "Průměrná útrata", - "avg_discount" => "Průměrná sleva", - "basic_information" => "Informace", - "cannot_be_deleted" => "", - "company_name" => "Společnost", - "confirm_delete" => "Jste si jisti že chcete smazat vybrané zákazníky?", - "confirm_restore" => "Jste si jisti že chcete obnovit vybrané zákazníky?", - "consent" => "Souhlas s registrací", - "consent_required" => "Souhlas s registrací je povinný.", - "csv_import_failed" => "Chyba při importu CSV", - "csv_import_nodata_wrongformat" => "Nahraný soubor neobsahuje žádná data nebo je chybně formátován.", - "csv_import_partially_failed" => "Import zákazníků byl úspěšný s chybami:", - "csv_import_success" => "Import zákazníků úspěšný.", - "customer" => "Zákazník", - "date" => "Datum", - "discount" => "Sleva", - "discount_fixed" => "Pevná Sleva", - "discount_percent" => "Sleva Procent", - "discount_type" => "Typ Slevy", - "email_duplicate" => "Emailová adresa již existuje v databázi.", - "employee" => "Zaměstnanec", - "error_adding_updating" => "Chyba při vytváření nebo aktualizaci zákazníka.", - "import_items_csv" => "Import zákazníků z CSV", - "mailchimp_activity_click" => "", - "mailchimp_activity_lastopen" => "Poslední otevřený email", - "mailchimp_activity_open" => "", - "mailchimp_activity_total" => "", - "mailchimp_activity_unopen" => "", - "mailchimp_email_client" => "", - "mailchimp_info" => "", - "mailchimp_member_rating" => "Hodnocení", - "mailchimp_status" => "", - "mailchimp_vip" => "VIP", - "max" => "", - "min" => "", - "new" => "", - "none_selected" => "", - "one_or_multiple" => "", - "quantity" => "", - "stats_info" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "tax_code" => "", - "tax_id" => "", - "taxable" => "", - "total" => "", - "update" => "", - "rewards_package" => "", + "account_number" => "Účet č. #", + "account_number_duplicate" => "Číslo účtu již existuje v databázi.", + "available_points" => "Dostupné body", + "available_points_value" => "", + "average" => "Průměrná útrata", + "avg_discount" => "Průměrná sleva", + "basic_information" => "Informace", + "cannot_be_deleted" => "", + "company_name" => "Společnost", + "confirm_delete" => "Jste si jisti že chcete smazat vybrané zákazníky?", + "confirm_restore" => "Jste si jisti že chcete obnovit vybrané zákazníky?", + "consent" => "Souhlas s registrací", + "consent_required" => "Souhlas s registrací je povinný.", + "csv_import_failed" => "Chyba při importu CSV", + "csv_import_nodata_wrongformat" => "Nahraný soubor neobsahuje žádná data nebo je chybně formátován.", + "csv_import_partially_failed" => "Import zákazníků byl úspěšný s chybami:", + "csv_import_success" => "Import zákazníků úspěšný.", + "customer" => "Zákazník", + "date" => "Datum", + "discount" => "Sleva", + "discount_fixed" => "Pevná Sleva", + "discount_percent" => "Sleva Procent", + "discount_type" => "Typ Slevy", + "email_duplicate" => "Emailová adresa již existuje v databázi.", + "employee" => "Zaměstnanec", + "error_adding_updating" => "Chyba při vytváření nebo aktualizaci zákazníka.", + "import_items_csv" => "Import zákazníků z CSV", + "mailchimp_activity_click" => "", + "mailchimp_activity_lastopen" => "Poslední otevřený email", + "mailchimp_activity_open" => "", + "mailchimp_activity_total" => "", + "mailchimp_activity_unopen" => "", + "mailchimp_email_client" => "", + "mailchimp_info" => "", + "mailchimp_member_rating" => "Hodnocení", + "mailchimp_status" => "", + "mailchimp_vip" => "VIP", + "max" => "", + "min" => "", + "new" => "", + "none_selected" => "", + "one_or_multiple" => "", + "quantity" => "", + "stats_info" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "tax_code" => "", + "tax_id" => "", + "taxable" => "", + "total" => "", + "update" => "", + "rewards_package" => "", ]; diff --git a/app/Language/cs/Datepicker.php b/app/Language/cs/Datepicker.php index 8e632ecbe..cf4671134 100644 --- a/app/Language/cs/Datepicker.php +++ b/app/Language/cs/Datepicker.php @@ -1,23 +1,23 @@ "Vše", - "apply" => "Použít", - "cancel" => "Zrušit", - "custom" => "Jiný", - "from" => "Od", - "last_30" => "Posledních 30 dnů", - "last_7" => "Posledních 7 dnů", - "last_financial_year" => "Minulý účetní rok", - "last_month" => "Minulý měsíc", - "last_year" => "Minulý rok", - "same_month_last_year" => "Stejný měsíc v loňském roce", - "same_month_to_same_day_last_year" => "Stejné období loni", - "this_financial_year" => "Aktuální účetní rok", - "this_month" => "Tento měsíc", - "this_year" => "Tento rok", - "to" => "Do", - "today" => "Dnes", - "today_last_year" => "Stejný den loni", - "weekstart" => "0", - "yesterday" => "Včera", + "all_time" => "Vše", + "apply" => "Použít", + "cancel" => "Zrušit", + "custom" => "Jiný", + "from" => "Od", + "last_30" => "Posledních 30 dnů", + "last_7" => "Posledních 7 dnů", + "last_financial_year" => "Minulý účetní rok", + "last_month" => "Minulý měsíc", + "last_year" => "Minulý rok", + "same_month_last_year" => "Stejný měsíc v loňském roce", + "same_month_to_same_day_last_year" => "Stejné období loni", + "this_financial_year" => "Aktuální účetní rok", + "this_month" => "Tento měsíc", + "this_year" => "Tento rok", + "to" => "Do", + "today" => "Dnes", + "today_last_year" => "Stejný den loni", + "weekstart" => "0", + "yesterday" => "Včera", ]; diff --git a/app/Language/cs/Employees.php b/app/Language/cs/Employees.php index 6f597ab5b..5aa444ff4 100644 --- a/app/Language/cs/Employees.php +++ b/app/Language/cs/Employees.php @@ -1,44 +1,44 @@ "", - "basic_information" => "", - "cannot_be_deleted" => "", - "change_employee" => "", - "change_password" => "", - "clerk" => "", - "commission" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "current_password" => "", - "current_password_invalid" => "", - "employee" => "", - "error_adding_updating" => "", - "error_deleting_demo_admin" => "", - "error_updating_demo_admin" => "", - "language" => "", - "login_info" => "", - "manager" => "", - "new" => "", - "none_selected" => "", - "one_or_multiple" => "", - "password" => "", - "password_minlength" => "", - "password_must_match" => "", - "password_not_must_match" => "", - "password_required" => "", - "permission_desc" => "", - "permission_info" => "", - "repeat_password" => "", - "subpermission_required" => "", - "successful_adding" => "", - "successful_change_password" => "", - "successful_deleted" => "", - "successful_updating" => "", - "system_language" => "", - "unsuccessful_change_password" => "", - "update" => "", - "username" => "", - "username_duplicate" => "", - "username_minlength" => "", - "username_required" => "", + "administrator" => "", + "basic_information" => "", + "cannot_be_deleted" => "", + "change_employee" => "", + "change_password" => "", + "clerk" => "", + "commission" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "current_password" => "", + "current_password_invalid" => "", + "employee" => "", + "error_adding_updating" => "", + "error_deleting_demo_admin" => "", + "error_updating_demo_admin" => "", + "language" => "", + "login_info" => "", + "manager" => "", + "new" => "", + "none_selected" => "", + "one_or_multiple" => "", + "password" => "", + "password_minlength" => "", + "password_must_match" => "", + "password_not_must_match" => "", + "password_required" => "", + "permission_desc" => "", + "permission_info" => "", + "repeat_password" => "", + "subpermission_required" => "", + "successful_adding" => "", + "successful_change_password" => "", + "successful_deleted" => "", + "successful_updating" => "", + "system_language" => "", + "unsuccessful_change_password" => "", + "update" => "", + "username" => "", + "username_duplicate" => "", + "username_minlength" => "", + "username_required" => "", ]; diff --git a/app/Language/cs/Enum.php b/app/Language/cs/Enum.php index c39655c3b..1ed7e9313 100644 --- a/app/Language/cs/Enum.php +++ b/app/Language/cs/Enum.php @@ -1,10 +1,10 @@ "", - "half_even" => "", - "half_five" => "", - "half_odd" => "", - "half_up" => "", - "round_down" => "", - "round_up" => "", + "half_down" => "", + "half_even" => "", + "half_five" => "", + "half_odd" => "", + "half_up" => "", + "round_down" => "", + "round_up" => "", ]; diff --git a/app/Language/cs/Error.php b/app/Language/cs/Error.php index 6134ea59a..ae85a3b54 100644 --- a/app/Language/cs/Error.php +++ b/app/Language/cs/Error.php @@ -1,5 +1,5 @@ "", - "unknown" => "", + "no_permission_module" => "", + "unknown" => "", ]; diff --git a/app/Language/cs/Expenses.php b/app/Language/cs/Expenses.php index e9e237376..8ef1fe954 100644 --- a/app/Language/cs/Expenses.php +++ b/app/Language/cs/Expenses.php @@ -1,50 +1,50 @@ "", - "amount" => "", - "amount_number" => "", - "amount_required" => "", - "by_category" => "", - "cannot_be_deleted" => "", - "cash" => "", - "cash_filter" => "", - "categories_name" => "", - "category_required" => "", - "check" => "", - "check_filter" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "credit" => "", - "credit_filter" => "", - "date" => "", - "date_number" => "", - "date_required" => "", - "debit" => "", - "debit_filter" => "", - "description" => "", - "due" => "", - "due_filter" => "", - "employee" => "", - "error_adding_updating" => "", - "expense_id" => "", - "expenses_employee" => "", - "info" => "", - "ip_address" => "", - "is_deleted" => "", - "name_required" => "", - "new" => "", - "new_supplier" => "", - "no_expenses_to_display" => "", - "none_selected" => "", - "one_or_multiple" => "", - "payment" => "", - "start_typing_supplier_name" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "supplier_name" => "", - "supplier_tax_code" => "", - "tax_amount" => "", - "tax_amount_number" => "", - "update" => "", + "add_item" => "", + "amount" => "", + "amount_number" => "", + "amount_required" => "", + "by_category" => "", + "cannot_be_deleted" => "", + "cash" => "", + "cash_filter" => "", + "categories_name" => "", + "category_required" => "", + "check" => "", + "check_filter" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "credit" => "", + "credit_filter" => "", + "date" => "", + "date_number" => "", + "date_required" => "", + "debit" => "", + "debit_filter" => "", + "description" => "", + "due" => "", + "due_filter" => "", + "employee" => "", + "error_adding_updating" => "", + "expense_id" => "", + "expenses_employee" => "", + "info" => "", + "ip_address" => "", + "is_deleted" => "", + "name_required" => "", + "new" => "", + "new_supplier" => "", + "no_expenses_to_display" => "", + "none_selected" => "", + "one_or_multiple" => "", + "payment" => "", + "start_typing_supplier_name" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "supplier_name" => "", + "supplier_tax_code" => "", + "tax_amount" => "", + "tax_amount_number" => "", + "update" => "", ]; diff --git a/app/Language/cs/Expenses_categories.php b/app/Language/cs/Expenses_categories.php index 03169e528..7d3b08c27 100644 --- a/app/Language/cs/Expenses_categories.php +++ b/app/Language/cs/Expenses_categories.php @@ -1,22 +1,22 @@ "", - "add_item" => "", - "cannot_be_deleted" => "", - "category_id" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "description" => "", - "error_adding_updating" => "", - "info" => "", - "name" => "", - "new" => "", - "no_expenses_categories_to_display" => "", - "none_selected" => "", - "one_or_multiple" => "", - "quantity" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "update" => "", + "category_name_required" => "", + "add_item" => "", + "cannot_be_deleted" => "", + "category_id" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "description" => "", + "error_adding_updating" => "", + "info" => "", + "name" => "", + "new" => "", + "no_expenses_categories_to_display" => "", + "none_selected" => "", + "one_or_multiple" => "", + "quantity" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "update" => "", ]; diff --git a/app/Language/cs/Giftcards.php b/app/Language/cs/Giftcards.php index f1b1bd322..00d291498 100644 --- a/app/Language/cs/Giftcards.php +++ b/app/Language/cs/Giftcards.php @@ -1,71 +1,71 @@ "", - "allow_alt_description" => "", - "bulk_edit" => "", - "cannot_be_deleted" => "", - "cannot_find_giftcard" => "", - "cannot_use" => "", - "card_value" => "", - "category" => "", - "change_all_to_allow_alt_desc" => "", - "change_all_to_not_allow_allow_desc" => "", - "change_all_to_serialized" => "", - "change_all_to_unserialized" => "", - "confirm_bulk_edit" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "cost_price" => "", - "count" => "", - "csv_import_failed" => "", - "current_quantity" => "", - "description" => "", - "details_count" => "", - "do_nothing" => "", - "edit_fields_you_want_to_update" => "", - "edit_multiple_giftcards" => "", - "error_adding_updating" => "", - "error_updating_multiple" => "", - "generate_barcodes" => "", - "giftcard" => "", - "giftcard_number" => "", - "info_provided_by" => "", - "inventory_comments" => "", - "is_serialized" => "", - "low_inventory_giftcards" => "", - "manually_editing_of_quantity" => "", - "must_select_giftcard_for_barcode" => "", - "new" => "", - "no_description_giftcards" => "", - "no_giftcards_to_display" => "", - "none" => "", - "none_selected" => "", - "number" => "", - "number_information" => "", - "number_required" => "", - "one_or_multiple" => "", - "person_id" => "", - "quantity" => "", - "quantity_required" => "", - "remaining_balance" => "", - "reorder_level" => "", - "retrive_giftcard_info" => "", - "sales_tax_1" => "", - "sales_tax_2" => "", - "serialized_giftcards" => "", - "successful_adding" => "", - "successful_bulk_edit" => "", - "successful_deleted" => "", - "successful_updating" => "", - "supplier" => "", - "tax_1" => "", - "tax_2" => "", - "tax_percent" => "", - "tax_percents" => "", - "unit_price" => "", - "upc_database" => "", - "update" => "", - "use_inventory_menu" => "", - "value" => "", - "value_required" => "", + "add_minus" => "", + "allow_alt_description" => "", + "bulk_edit" => "", + "cannot_be_deleted" => "", + "cannot_find_giftcard" => "", + "cannot_use" => "", + "card_value" => "", + "category" => "", + "change_all_to_allow_alt_desc" => "", + "change_all_to_not_allow_allow_desc" => "", + "change_all_to_serialized" => "", + "change_all_to_unserialized" => "", + "confirm_bulk_edit" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "cost_price" => "", + "count" => "", + "csv_import_failed" => "", + "current_quantity" => "", + "description" => "", + "details_count" => "", + "do_nothing" => "", + "edit_fields_you_want_to_update" => "", + "edit_multiple_giftcards" => "", + "error_adding_updating" => "", + "error_updating_multiple" => "", + "generate_barcodes" => "", + "giftcard" => "", + "giftcard_number" => "", + "info_provided_by" => "", + "inventory_comments" => "", + "is_serialized" => "", + "low_inventory_giftcards" => "", + "manually_editing_of_quantity" => "", + "must_select_giftcard_for_barcode" => "", + "new" => "", + "no_description_giftcards" => "", + "no_giftcards_to_display" => "", + "none" => "", + "none_selected" => "", + "number" => "", + "number_information" => "", + "number_required" => "", + "one_or_multiple" => "", + "person_id" => "", + "quantity" => "", + "quantity_required" => "", + "remaining_balance" => "", + "reorder_level" => "", + "retrive_giftcard_info" => "", + "sales_tax_1" => "", + "sales_tax_2" => "", + "serialized_giftcards" => "", + "successful_adding" => "", + "successful_bulk_edit" => "", + "successful_deleted" => "", + "successful_updating" => "", + "supplier" => "", + "tax_1" => "", + "tax_2" => "", + "tax_percent" => "", + "tax_percents" => "", + "unit_price" => "", + "upc_database" => "", + "update" => "", + "use_inventory_menu" => "", + "value" => "", + "value_required" => "", ]; diff --git a/app/Language/cs/Item_kits.php b/app/Language/cs/Item_kits.php index 2f21a4963..370929649 100644 --- a/app/Language/cs/Item_kits.php +++ b/app/Language/cs/Item_kits.php @@ -1,41 +1,41 @@ "", - "all" => "", - "cannot_be_deleted" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "description" => "", - "discount" => "", - "discount_fixed" => "", - "discount_percent" => "", - "discount_type" => "", - "error_adding_updating" => "", - "find_kit_item" => "", - "info" => "", - "item" => "", - "item_kit_number" => "", - "item_kit_number_duplicate" => "", - "item_number" => "", - "item_number_duplicate" => "", - "items" => "", - "kit" => "", - "kit_and_components" => "", - "kit_and_stock" => "", - "kit_only" => "", - "name" => "", - "new" => "", - "no_item_kits_to_display" => "", - "none_selected" => "", - "one_or_multiple" => "", - "price_option" => "", - "priced_only" => "", - "print_option" => "", - "quantity" => "", - "sequence" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "unit_price" => "", - "update" => "", + "add_item" => "", + "all" => "", + "cannot_be_deleted" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "description" => "", + "discount" => "", + "discount_fixed" => "", + "discount_percent" => "", + "discount_type" => "", + "error_adding_updating" => "", + "find_kit_item" => "", + "info" => "", + "item" => "", + "item_kit_number" => "", + "item_kit_number_duplicate" => "", + "item_number" => "", + "item_number_duplicate" => "", + "items" => "", + "kit" => "", + "kit_and_components" => "", + "kit_and_stock" => "", + "kit_only" => "", + "name" => "", + "new" => "", + "no_item_kits_to_display" => "", + "none_selected" => "", + "one_or_multiple" => "", + "price_option" => "", + "priced_only" => "", + "print_option" => "", + "quantity" => "", + "sequence" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "unit_price" => "", + "update" => "", ]; diff --git a/app/Language/cs/Items.php b/app/Language/cs/Items.php index c1dac80da..06bd2dde1 100644 --- a/app/Language/cs/Items.php +++ b/app/Language/cs/Items.php @@ -1,120 +1,120 @@ "Změna množství.", - "allow_alt_description" => "Povolit alternativní popis", - "amount_entry" => "Množství", - "bulk_edit" => "Hromadná editace", - "buy_price_required" => "Je nutno zadat nákupní cenu.", - "cannot_be_deleted" => "Nelze smazat vybrané pokožky protože již mají záznamy o prodeji.", - "cannot_find_item" => "Položka nenalezena.", - "categories" => "", - "category" => "Kategorie", - "category_new" => "", - "category_required" => "Je nutno zadat kategorii.", - "change_all_to_allow_alt_desc" => "Povolit pro všechny alternativní popis.", - "change_all_to_not_allow_allow_desc" => "Nepovolit alternativní popis pro všechny.", - "change_all_to_serialized" => "Upravit vše na položky se sériovým číslem", - "change_all_to_unserialized" => "Upravit vše na položky bez sériového čísla", - "change_image" => "Změnit obrázek", - "confirm_bulk_edit" => "Opravdu chcete upravit vybrané položky?", - "confirm_bulk_edit_wipe_taxes" => "Všechny záznamy o daních u položky budou nahrazeny.", - "confirm_delete" => "Opravdu chcete smazat vybrané položky?", - "confirm_restore" => "Opravdu chcete obnovit vybrané položky?", - "cost_price" => "Nákupní cena", - "cost_price_number" => "Nákupní cena musí být číslo.", - "cost_price_required" => "Musíte zadat nákupní cenu.", - "count" => "Upravit množství", - "csv_import_failed" => "Import z CSVu se nepovedl", - "csv_import_nodata_wrongformat" => "Nahraný soubor neobsahuje žádná data nebo má špatný formát.", - "csv_import_partially_failed" => "Při importu položek došlo k několika chybám:", - "csv_import_success" => "Import položek proběhl bez chyby.", - "current_quantity" => "Množství skladem", - "default_pack_name" => "", - "description" => "Popis", - "details_count" => "Další informace o množství na skladě", - "do_nothing" => "Nedělat nic", - "edit" => "", - "edit_fields_you_want_to_update" => "", - "edit_multiple_items" => "Úpravy více položek", - "empty_upc_items" => "Položky bez čárového kódu", - "error_adding_updating" => "Chyba při přidávání či úpravě položek", - "error_updating_multiple" => "Chyba při úpravě položek", - "generate_barcodes" => "Vytvořit čárový kód", - "hsn_code" => "", - "image" => "Avatar", - "import_items_csv" => "Import položek z CSVu", - "info_provided_by" => "", - "inventory" => "", - "inventory_CSV_import_quantity" => "", - "inventory_comments" => "Komentář", - "inventory_data_tracking" => "Pohyby na skladu", - "inventory_date" => "Datum", - "inventory_employee" => "Uživatel", - "inventory_in_out_quantity" => "Změna ks", - "inventory_remarks" => "Poznámky", - "is_deleted" => "Smazáno", - "is_printed" => "", - "is_serialized" => "Položka má sériové číslo", - "item" => "Položka", - "item_id" => "", - "item_number" => "Čárový kód", - "item_number_duplicate" => "Položka už je v databázi.", - "kit" => "Sada", - "location" => "Umístění", - "low_inventory_items" => "Položky co nejsou skladem", - "low_sell_item" => "", - "manually_editing_of_quantity" => "Ruční úprava množství", - "markup" => "", - "name" => "Název položky", - "name_required" => "Musíte zadat název položky.", - "new" => "Nová položka", - "no_description_items" => "Položky bez popisu", - "no_items_to_display" => "Žádné položky k zobrazení.", - "none" => "Žádný", - "none_selected" => "", - "nonstock" => "Neskladová", - "number_information" => "Číslo položky", - "number_required" => "Musíte zadat čárový kód.", - "one_or_multiple" => "Položky", - "pack_name" => "", - "qty_per_pack" => "", - "quantity" => "Množství", - "quantity_number" => "Množství musí být číslo.", - "quantity_required" => "Musíte zadat množství.", - "receiving_quantity" => "Kusů přijato", - "remove_image" => "Odstranit obrázek", - "reorder_level" => "Množství pro další objednávku", - "reorder_level_number" => "Množství pro další objednávku musí být číslo.", - "reorder_level_required" => "Musíte zadat množství pro další objednávku.", - "retrive_item_info" => "Získat informace o položce", - "sales_tax_1" => "DPH", - "sales_tax_2" => "DPH 2", - "search_attributes" => "", - "select_image" => "Vybrat obrázek", - "serialized_items" => "Položky se sériovým číslem", - "standard" => "Běžná", - "stock" => "Skladová", - "stock_location" => "Umístění skladu", - "stock_type" => "Druh evidence", - "successful_adding" => "Položka byla úspěšně přidána", - "successful_bulk_edit" => "Položka byla úspěšně upravena", - "successful_deleted" => "", - "successful_updating" => "Položka byla upravena", - "supplier" => "Dodavatel", - "tax_1" => "DPH základní", - "tax_2" => "DPH snížená", - "tax_3" => "", - "tax_category" => "", - "tax_percent" => "Sazba (procenta)", - "tax_percent_number" => "Sazba daně musí být číslo", - "tax_percent_required" => "Musíte zadat sazbu daně.", - "tax_percents" => "Sazba daně", - "temp" => "", - "type" => "Typ položky", - "unit_price" => "Koncová cena (vč. DPH)", - "unit_price_number" => "Cena musí být číslo.", - "unit_price_required" => "Musíte zadat koncovou cenu.", - "upc_database" => "Databáze čárových kódů", - "update" => "Upravit položku", - "use_inventory_menu" => "Použít nabídku Sklad", + "add_minus" => "Změna množství.", + "allow_alt_description" => "Povolit alternativní popis", + "amount_entry" => "Množství", + "bulk_edit" => "Hromadná editace", + "buy_price_required" => "Je nutno zadat nákupní cenu.", + "cannot_be_deleted" => "Nelze smazat vybrané pokožky protože již mají záznamy o prodeji.", + "cannot_find_item" => "Položka nenalezena.", + "categories" => "", + "category" => "Kategorie", + "category_new" => "", + "category_required" => "Je nutno zadat kategorii.", + "change_all_to_allow_alt_desc" => "Povolit pro všechny alternativní popis.", + "change_all_to_not_allow_allow_desc" => "Nepovolit alternativní popis pro všechny.", + "change_all_to_serialized" => "Upravit vše na položky se sériovým číslem", + "change_all_to_unserialized" => "Upravit vše na položky bez sériového čísla", + "change_image" => "Změnit obrázek", + "confirm_bulk_edit" => "Opravdu chcete upravit vybrané položky?", + "confirm_bulk_edit_wipe_taxes" => "Všechny záznamy o daních u položky budou nahrazeny.", + "confirm_delete" => "Opravdu chcete smazat vybrané položky?", + "confirm_restore" => "Opravdu chcete obnovit vybrané položky?", + "cost_price" => "Nákupní cena", + "cost_price_number" => "Nákupní cena musí být číslo.", + "cost_price_required" => "Musíte zadat nákupní cenu.", + "count" => "Upravit množství", + "csv_import_failed" => "Import z CSVu se nepovedl", + "csv_import_nodata_wrongformat" => "Nahraný soubor neobsahuje žádná data nebo má špatný formát.", + "csv_import_partially_failed" => "Při importu položek došlo k několika chybám:", + "csv_import_success" => "Import položek proběhl bez chyby.", + "current_quantity" => "Množství skladem", + "default_pack_name" => "", + "description" => "Popis", + "details_count" => "Další informace o množství na skladě", + "do_nothing" => "Nedělat nic", + "edit" => "", + "edit_fields_you_want_to_update" => "", + "edit_multiple_items" => "Úpravy více položek", + "empty_upc_items" => "Položky bez čárového kódu", + "error_adding_updating" => "Chyba při přidávání či úpravě položek", + "error_updating_multiple" => "Chyba při úpravě položek", + "generate_barcodes" => "Vytvořit čárový kód", + "hsn_code" => "", + "image" => "Avatar", + "import_items_csv" => "Import položek z CSVu", + "info_provided_by" => "", + "inventory" => "", + "inventory_CSV_import_quantity" => "", + "inventory_comments" => "Komentář", + "inventory_data_tracking" => "Pohyby na skladu", + "inventory_date" => "Datum", + "inventory_employee" => "Uživatel", + "inventory_in_out_quantity" => "Změna ks", + "inventory_remarks" => "Poznámky", + "is_deleted" => "Smazáno", + "is_printed" => "", + "is_serialized" => "Položka má sériové číslo", + "item" => "Položka", + "item_id" => "", + "item_number" => "Čárový kód", + "item_number_duplicate" => "Položka už je v databázi.", + "kit" => "Sada", + "location" => "Umístění", + "low_inventory_items" => "Položky co nejsou skladem", + "low_sell_item" => "", + "manually_editing_of_quantity" => "Ruční úprava množství", + "markup" => "", + "name" => "Název položky", + "name_required" => "Musíte zadat název položky.", + "new" => "Nová položka", + "no_description_items" => "Položky bez popisu", + "no_items_to_display" => "Žádné položky k zobrazení.", + "none" => "Žádný", + "none_selected" => "", + "nonstock" => "Neskladová", + "number_information" => "Číslo položky", + "number_required" => "Musíte zadat čárový kód.", + "one_or_multiple" => "Položky", + "pack_name" => "", + "qty_per_pack" => "", + "quantity" => "Množství", + "quantity_number" => "Množství musí být číslo.", + "quantity_required" => "Musíte zadat množství.", + "receiving_quantity" => "Kusů přijato", + "remove_image" => "Odstranit obrázek", + "reorder_level" => "Množství pro další objednávku", + "reorder_level_number" => "Množství pro další objednávku musí být číslo.", + "reorder_level_required" => "Musíte zadat množství pro další objednávku.", + "retrive_item_info" => "Získat informace o položce", + "sales_tax_1" => "DPH", + "sales_tax_2" => "DPH 2", + "search_attributes" => "", + "select_image" => "Vybrat obrázek", + "serialized_items" => "Položky se sériovým číslem", + "standard" => "Běžná", + "stock" => "Skladová", + "stock_location" => "Umístění skladu", + "stock_type" => "Druh evidence", + "successful_adding" => "Položka byla úspěšně přidána", + "successful_bulk_edit" => "Položka byla úspěšně upravena", + "successful_deleted" => "", + "successful_updating" => "Položka byla upravena", + "supplier" => "Dodavatel", + "tax_1" => "DPH základní", + "tax_2" => "DPH snížená", + "tax_3" => "", + "tax_category" => "", + "tax_percent" => "Sazba (procenta)", + "tax_percent_number" => "Sazba daně musí být číslo", + "tax_percent_required" => "Musíte zadat sazbu daně.", + "tax_percents" => "Sazba daně", + "temp" => "", + "type" => "Typ položky", + "unit_price" => "Koncová cena (vč. DPH)", + "unit_price_number" => "Cena musí být číslo.", + "unit_price_required" => "Musíte zadat koncovou cenu.", + "upc_database" => "Databáze čárových kódů", + "update" => "Upravit položku", + "use_inventory_menu" => "Použít nabídku Sklad", ]; diff --git a/app/Language/cs/Login.php b/app/Language/cs/Login.php index 21a2ea0cb..7d19e359c 100644 --- a/app/Language/cs/Login.php +++ b/app/Language/cs/Login.php @@ -1,15 +1,15 @@ "Nejsem robot.", - "go" => "Přihlásit", - "invalid_gcaptcha" => "Špatné zadání.", - "invalid_installation" => "Instalace není v pořádku, zkontrolujte soubor php.ini.", - "invalid_username_and_password" => "Neplatné jméno nebo heslo.", - "login" => "Login", - "logout" => "", - "migration_needed" => "", - "password" => "Heslo", - "required_username" => "", - "username" => "Uživatelské jméno", - "welcome" => "", + "gcaptcha" => "Nejsem robot.", + "go" => "Přihlásit", + "invalid_gcaptcha" => "Špatné zadání.", + "invalid_installation" => "Instalace není v pořádku, zkontrolujte soubor php.ini.", + "invalid_username_and_password" => "Neplatné jméno nebo heslo.", + "login" => "Login", + "logout" => "", + "migration_needed" => "", + "password" => "Heslo", + "required_username" => "", + "username" => "Uživatelské jméno", + "welcome" => "", ]; diff --git a/app/Language/cs/Messages.php b/app/Language/cs/Messages.php index eb8d22926..f74a32aa9 100644 --- a/app/Language/cs/Messages.php +++ b/app/Language/cs/Messages.php @@ -1,15 +1,15 @@ "Jméno", - "last_name" => "Příjmení", - "message" => "Zpráva", - "message_placeholder" => "Zde napište zprávu...", - "message_required" => "Zprávu je nutno napsat", - "multiple_phones" => "(V případě více adresátů oddělujte čísla na mobil čárkami)", - "phone" => "Telefonní číslo", - "phone_number_required" => "Telefonní číslo je vyžadováno", - "phone_placeholder" => "Telefonní číslo...", - "sms_send" => "Odeslat SMS", - "successfully_sent" => "Zpráva byla odeslána: ", - "unsuccessfully_sent" => "Zpráva nebyla odeslána: ", + "first_name" => "Jméno", + "last_name" => "Příjmení", + "message" => "Zpráva", + "message_placeholder" => "Zde napište zprávu...", + "message_required" => "Zprávu je nutno napsat", + "multiple_phones" => "(V případě více adresátů oddělujte čísla na mobil čárkami)", + "phone" => "Telefonní číslo", + "phone_number_required" => "Telefonní číslo je vyžadováno", + "phone_placeholder" => "Telefonní číslo...", + "sms_send" => "Odeslat SMS", + "successfully_sent" => "Zpráva byla odeslána: ", + "unsuccessfully_sent" => "Zpráva nebyla odeslána: ", ]; diff --git a/app/Language/cs/Module.php b/app/Language/cs/Module.php index fda29a58b..b8991a508 100644 --- a/app/Language/cs/Module.php +++ b/app/Language/cs/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "", - "attributes_desc" => "", - "both" => "Oba", - "cashups" => "", - "cashups_desc" => "", - "config" => "Nastavení", - "config_desc" => "Změnit nastavení OSPOS.", - "customers" => "Zákazníci", - "customers_desc" => "Slouží k přidání, úpravě, mazání a hledání zákazníků.", - "employees" => "Uživatelé", - "employees_desc" => "Slouží k přidání, úpravě, mazání a hledání uživatelů.", - "expenses" => "Náklady", - "expenses_categories" => "Kategorie nákladů", - "expenses_categories_desc" => "Slouží k přídání, úpravě a mazání kategorií nákladů.", - "expenses_desc" => "Slouží k přidání, úpravě, mazání a hledání nákladů.", - "giftcards" => "Dárkové poukázky", - "giftcards_desc" => "Slouží k tvorbě, úpravě, mazání a hledání dárkových poukázek.", - "home" => "Zpět", - "home_desc" => "Zpět na seznam všech modulů.", - "item_kits" => "Sady", - "item_kits_desc" => "Slouží k tvorbě, úpravě, mazání a hledání sad ze skladových položek.", - "items" => "Sklad", - "items_desc" => "Slouží k tvorbě, úpravám, mazání a hledání skladových položek.", - "messages" => "Zprávy", - "messages_desc" => "Slouží k posílání zpráv zákazníkům, dodavatelům a uživatelům.", - "migrate" => "Migrace", - "migrate_desc" => "Aktualizovat databázi OSPOS.", - "office" => "Správa", - "office_desc" => "Seznam modulů pro správu.", - "receivings" => "Příjem zboží", - "receivings_desc" => "", - "reports" => "Sestavy", - "reports_desc" => "Slouží pro zobrazení a tvorbu sestav.", - "sales" => "Prodej", - "sales_desc" => "Slouží ke prodeji a vrácení položek.", - "suppliers" => "Dodavatelé", - "suppliers_desc" => "Slouží k přidání, úpravání, mazání a hledání dodavatelů.", - "taxes" => "Daně", - "taxes_desc" => "Slouží pro nastavení DPH.", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "", + "attributes_desc" => "", + "both" => "Oba", + "cashups" => "", + "cashups_desc" => "", + "config" => "Nastavení", + "config_desc" => "Změnit nastavení OSPOS.", + "customers" => "Zákazníci", + "customers_desc" => "Slouží k přidání, úpravě, mazání a hledání zákazníků.", + "employees" => "Uživatelé", + "employees_desc" => "Slouží k přidání, úpravě, mazání a hledání uživatelů.", + "expenses" => "Náklady", + "expenses_categories" => "Kategorie nákladů", + "expenses_categories_desc" => "Slouží k přídání, úpravě a mazání kategorií nákladů.", + "expenses_desc" => "Slouží k přidání, úpravě, mazání a hledání nákladů.", + "giftcards" => "Dárkové poukázky", + "giftcards_desc" => "Slouží k tvorbě, úpravě, mazání a hledání dárkových poukázek.", + "home" => "Zpět", + "home_desc" => "Zpět na seznam všech modulů.", + "item_kits" => "Sady", + "item_kits_desc" => "Slouží k tvorbě, úpravě, mazání a hledání sad ze skladových položek.", + "items" => "Sklad", + "items_desc" => "Slouží k tvorbě, úpravám, mazání a hledání skladových položek.", + "messages" => "Zprávy", + "messages_desc" => "Slouží k posílání zpráv zákazníkům, dodavatelům a uživatelům.", + "migrate" => "Migrace", + "migrate_desc" => "Aktualizovat databázi OSPOS.", + "office" => "Správa", + "office_desc" => "Seznam modulů pro správu.", + "receivings" => "Příjem zboží", + "receivings_desc" => "", + "reports" => "Sestavy", + "reports_desc" => "Slouží pro zobrazení a tvorbu sestav.", + "sales" => "Prodej", + "sales_desc" => "Slouží ke prodeji a vrácení položek.", + "suppliers" => "Dodavatelé", + "suppliers_desc" => "Slouží k přidání, úpravání, mazání a hledání dodavatelů.", + "taxes" => "Daně", + "taxes_desc" => "Slouží pro nastavení DPH.", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/cs/Receivings.php b/app/Language/cs/Receivings.php index cae2f2758..58b524a5a 100644 --- a/app/Language/cs/Receivings.php +++ b/app/Language/cs/Receivings.php @@ -1,58 +1,58 @@ "", - "cancel_receiving" => "Zrušit", - "cannot_be_deleted" => "Příjemku nelze smazat.", - "comments" => "Poznámky", - "complete_receiving" => "Dokončit", - "confirm_cancel_receiving" => "Opravdu chcete smazat všechny položky na příjemce? Vše bude smazáno.", - "confirm_delete" => "Opravdu chcete smazat tuto příjemku? Tato akce je nevratná.", - "confirm_finish_receiving" => "Opravdu chcete zpracovat příjemku? Tato akce je nevratná.", - "confirm_restore" => "", - "cost" => "Cena", - "daily" => "", - "date" => "Datum příjmu", - "date_required" => "Musíte zadat správné datum.", - "date_type" => "Musíte zadat datum.", - "delete_entire_sale" => "", - "discount" => "Sleva %", - "edit" => "Upravit", - "edit_sale" => "Upravit příjemku", - "employee" => "Uživatel", - "error_editing_item" => "Nelze upravit položku.", - "error_requisition" => "Nelze přesunout položku do do stejného skladu.", - "find_or_scan_item" => "Vyhledat nebo skenovat položku", - "find_or_scan_item_or_receipt" => "Vyhledat nebo skenovat účtenku", - "id" => "Číslo příjemky", - "item_name" => "Název položky", - "mode" => "Druh příjmu", - "new_supplier" => "Nový dodavatel", - "one_or_multiple" => "", - "print_after_sale" => "Vytisknout po příjmu", - "quantity" => "Ks.", - "receipt" => "Příjemka", - "receipt_number" => "Příjemka č", - "receiving" => "Příjem", - "reference" => "Označení", - "register" => "Přijaté položky", - "requisition" => "", - "return" => "Vratka", - "select_supplier" => "Vyberte dodavatele (volitelné)", - "ship_pack" => "", - "start_typing_supplier_name" => "Začněte psát jméno dodavatele...", - "stock" => "Sklad", - "stock_destination" => "Cílový sklad", - "stock_locaiton" => "Umístění skladu", - "stock_source" => "", - "successfully_deleted" => "Smazáno", - "successfully_updated" => "Upraveno", - "supplier" => "Dodavatel", - "supplier_address" => "Adresa", - "supplier_email" => "Email", - "supplier_location" => "", - "total" => "Celkem", - "transaction_failed" => "Zpracování příjmu neproběhlo.", - "unable_to_add_item" => "Vložení položky do příjemky se nezdařilo.", - "unsuccessfully_updated" => "Změna příjemky se nezdařila.", - "update" => "Upravit", + "amount_due" => "", + "cancel_receiving" => "Zrušit", + "cannot_be_deleted" => "Příjemku nelze smazat.", + "comments" => "Poznámky", + "complete_receiving" => "Dokončit", + "confirm_cancel_receiving" => "Opravdu chcete smazat všechny položky na příjemce? Vše bude smazáno.", + "confirm_delete" => "Opravdu chcete smazat tuto příjemku? Tato akce je nevratná.", + "confirm_finish_receiving" => "Opravdu chcete zpracovat příjemku? Tato akce je nevratná.", + "confirm_restore" => "", + "cost" => "Cena", + "daily" => "", + "date" => "Datum příjmu", + "date_required" => "Musíte zadat správné datum.", + "date_type" => "Musíte zadat datum.", + "delete_entire_sale" => "", + "discount" => "Sleva %", + "edit" => "Upravit", + "edit_sale" => "Upravit příjemku", + "employee" => "Uživatel", + "error_editing_item" => "Nelze upravit položku.", + "error_requisition" => "Nelze přesunout položku do do stejného skladu.", + "find_or_scan_item" => "Vyhledat nebo skenovat položku", + "find_or_scan_item_or_receipt" => "Vyhledat nebo skenovat účtenku", + "id" => "Číslo příjemky", + "item_name" => "Název položky", + "mode" => "Druh příjmu", + "new_supplier" => "Nový dodavatel", + "one_or_multiple" => "", + "print_after_sale" => "Vytisknout po příjmu", + "quantity" => "Ks.", + "receipt" => "Příjemka", + "receipt_number" => "Příjemka č", + "receiving" => "Příjem", + "reference" => "Označení", + "register" => "Přijaté položky", + "requisition" => "", + "return" => "Vratka", + "select_supplier" => "Vyberte dodavatele (volitelné)", + "ship_pack" => "", + "start_typing_supplier_name" => "Začněte psát jméno dodavatele...", + "stock" => "Sklad", + "stock_destination" => "Cílový sklad", + "stock_locaiton" => "Umístění skladu", + "stock_source" => "", + "successfully_deleted" => "Smazáno", + "successfully_updated" => "Upraveno", + "supplier" => "Dodavatel", + "supplier_address" => "Adresa", + "supplier_email" => "Email", + "supplier_location" => "", + "total" => "Celkem", + "transaction_failed" => "Zpracování příjmu neproběhlo.", + "unable_to_add_item" => "Vložení položky do příjemky se nezdařilo.", + "unsuccessfully_updated" => "Změna příjemky se nezdařila.", + "update" => "Upravit", ]; diff --git a/app/Language/cs/Reports.php b/app/Language/cs/Reports.php index e7fba4b3c..0f7cb6957 100644 --- a/app/Language/cs/Reports.php +++ b/app/Language/cs/Reports.php @@ -1,148 +1,148 @@ "Vše", - "authority" => "", - "canceled" => "Zrušené", - "categories" => "Kategorie", - "categories_summary_report" => "Přehled dle kategorií", - "category" => "Kategorie", - "code_canceled" => "CNL", - "code_invoice" => "FA", - "code_pos" => "POS", - "code_quote" => "Q", - "code_return" => "RET", - "code_type" => "Typ", - "code_work_order" => "ZAK", - "comments" => "Poznámky", - "commission" => "", - "complete" => "Dokončené prodeje a vratky", - "completed_sales" => "Dokončené prodeje", - "confirm_delete" => "Opravdu chcete smazat vybrané záznamy?", - "confirm_restore" => "Opravdu chcete obnovit vybrané záznamy?", - "cost" => "Nákup", - "cost_price" => "Nákupní cena", - "count" => "Počet", - "customer" => "Zákazník", - "customers" => "Zákazníci", - "customers_summary_report" => "Přehled dle zákazníků", - "date" => "Datum", - "date_range" => "Období", - "description" => "Popis", - "detailed_receivings_report" => "Podrobný přehled příjmů", - "detailed_receivings_report_input" => "", - "detailed_reports" => "Podrobné sestavy", - "detailed_requisition_report" => "", - "detailed_sales_report" => "Podrobný přehled transakcí", - "discount" => "Sleva", - "discount_fixed" => "", - "discount_percent" => "Procentní sleva", - "discount_type" => "", - "discounts" => "Slevy", - "discounts_summary_report" => "Přehled podle slev", - "earned" => "Points Earned", - "employee" => "Zaměstnanec", - "employees" => "Zaměstnanci", - "employees_summary_report" => "Přehled podle zaměstnanců", - "expenses" => "Náklady", - "expenses_amount" => "Množství", - "expenses_categories" => "Náklady", - "expenses_categories_summary_report" => "Přehled podle kategorií nákladů", - "expenses_category" => "Kategorie", - "expenses_payment_amount" => "", - "expenses_tax_amount" => "DPH", - "expenses_total_amount" => "Množství celkem", - "expenses_total_tax_amount" => "Celkem DPH", - "graphical_reports" => "Grafy", - "inventory" => "Sklad", - "inventory_low" => "Podstav na skladě", - "inventory_low_report" => "Přehled položek na skladě pod limitem", - "inventory_reports" => "Skladové sestavy", - "inventory_summary" => "Přehled stavu skladu", - "inventory_summary_report" => "Přehled skladu", - "item" => "Položka", - "item_count" => "Filtr podle počtu", - "item_name" => "Název položky", - "item_number" => "Čárový kód", - "items" => "Položky", - "items_purchased" => "Zakoupené položky", - "items_received" => "Přijaté položky", - "items_summary_report" => "Přehled položek", - "jurisdiction" => "", - "low_inventory" => "", - "low_inventory_report" => "", - "low_sell_quantity" => "", - "more_than_zero" => "Více než nula", - "name" => "Název", - "no_reports_to_display" => "Nic k zobrazení.", - "payment_type" => "Způsob platby", - "payments" => "Platby", - "payments_summary_report" => "Přehled podle způsobů platby", - "profit" => "Zisk", - "quantity" => "Množství", - "quantity_purchased" => "Zakoupené množství", - "quotes" => "Nabídky", - "received_by" => "Přijato", - "receiving_id" => "Číslo příjemky", - "receiving_type" => "Typ příjmu", - "receivings" => "Příjemky", - "reorder_level" => "Množství pro doobjednání", - "report" => "Sestava", - "report_input" => "Parametry sestavy", - "reports" => "Sestavy", - "requisition" => "", - "requisition_by" => "", - "requisition_id" => "", - "requisition_item" => "", - "requisition_item_quantity" => "", - "requisition_related_item" => "", - "requisition_related_item_total_quantity" => "", - "requisition_related_item_unit_quantity" => "", - "requisitions" => "Requisitions", - "returns" => "Vratky", - "revenue" => "Výnos", - "sale_id" => "ID transakce", - "sale_type" => "Typ transakce", - "sales" => "Transakce", - "sales_amount" => "Množství transakcí", - "sales_summary_report" => "Přehled podle transakcí", - "sales_taxes" => "", - "sales_taxes_summary_report" => "", - "serial_number" => "Sériové číslo", - "service_charge" => "", - "sold_by" => "Prodejce", - "sold_items" => "", - "sold_to" => "Zákazník", - "stock_location" => "Místo skladu", - "sub_total_value" => "Mezisoučet (bez DPH)", - "subtotal" => "Mezisoučet (bez DPH)", - "summary_reports" => "Souhrnné sestavy", - "supplied_by" => "Dodáno", - "supplier" => "Dodavatel", - "suppliers" => "Dodavatelé", - "suppliers_summary_report" => "Přehled dodavatelů", - "tax" => "DPH", - "tax_category" => "", - "tax_name" => "", - "tax_percent" => "Sazba", - "tax_rate" => "", - "taxes" => "Daně", - "taxes_summary_report" => "Přehled podle DPH", - "total" => "Celkem", - "total_inventory_value" => "Celková cena skladu", - "total_low_sell_quantity" => "", - "total_quantity" => "Celkové množství", - "total_retail" => "Cena skladu v koncových cenách", - "trans_amount" => "", - "trans_due" => "", - "trans_group" => "", - "trans_nopay_sales" => "", - "trans_payments" => "", - "trans_refunded" => "", - "trans_sales" => "", - "trans_type" => "", - "type" => "Typ", - "unit_price" => "Prodejní cena", - "used" => "Points Used", - "work_orders" => "Work Orders", - "zero_and_less" => "Nula a méně", + "all" => "Vše", + "authority" => "", + "canceled" => "Zrušené", + "categories" => "Kategorie", + "categories_summary_report" => "Přehled dle kategorií", + "category" => "Kategorie", + "code_canceled" => "CNL", + "code_invoice" => "FA", + "code_pos" => "POS", + "code_quote" => "Q", + "code_return" => "RET", + "code_type" => "Typ", + "code_work_order" => "ZAK", + "comments" => "Poznámky", + "commission" => "", + "complete" => "Dokončené prodeje a vratky", + "completed_sales" => "Dokončené prodeje", + "confirm_delete" => "Opravdu chcete smazat vybrané záznamy?", + "confirm_restore" => "Opravdu chcete obnovit vybrané záznamy?", + "cost" => "Nákup", + "cost_price" => "Nákupní cena", + "count" => "Počet", + "customer" => "Zákazník", + "customers" => "Zákazníci", + "customers_summary_report" => "Přehled dle zákazníků", + "date" => "Datum", + "date_range" => "Období", + "description" => "Popis", + "detailed_receivings_report" => "Podrobný přehled příjmů", + "detailed_receivings_report_input" => "", + "detailed_reports" => "Podrobné sestavy", + "detailed_requisition_report" => "", + "detailed_sales_report" => "Podrobný přehled transakcí", + "discount" => "Sleva", + "discount_fixed" => "", + "discount_percent" => "Procentní sleva", + "discount_type" => "", + "discounts" => "Slevy", + "discounts_summary_report" => "Přehled podle slev", + "earned" => "Points Earned", + "employee" => "Zaměstnanec", + "employees" => "Zaměstnanci", + "employees_summary_report" => "Přehled podle zaměstnanců", + "expenses" => "Náklady", + "expenses_amount" => "Množství", + "expenses_categories" => "Náklady", + "expenses_categories_summary_report" => "Přehled podle kategorií nákladů", + "expenses_category" => "Kategorie", + "expenses_payment_amount" => "", + "expenses_tax_amount" => "DPH", + "expenses_total_amount" => "Množství celkem", + "expenses_total_tax_amount" => "Celkem DPH", + "graphical_reports" => "Grafy", + "inventory" => "Sklad", + "inventory_low" => "Podstav na skladě", + "inventory_low_report" => "Přehled položek na skladě pod limitem", + "inventory_reports" => "Skladové sestavy", + "inventory_summary" => "Přehled stavu skladu", + "inventory_summary_report" => "Přehled skladu", + "item" => "Položka", + "item_count" => "Filtr podle počtu", + "item_name" => "Název položky", + "item_number" => "Čárový kód", + "items" => "Položky", + "items_purchased" => "Zakoupené položky", + "items_received" => "Přijaté položky", + "items_summary_report" => "Přehled položek", + "jurisdiction" => "", + "low_inventory" => "", + "low_inventory_report" => "", + "low_sell_quantity" => "", + "more_than_zero" => "Více než nula", + "name" => "Název", + "no_reports_to_display" => "Nic k zobrazení.", + "payment_type" => "Způsob platby", + "payments" => "Platby", + "payments_summary_report" => "Přehled podle způsobů platby", + "profit" => "Zisk", + "quantity" => "Množství", + "quantity_purchased" => "Zakoupené množství", + "quotes" => "Nabídky", + "received_by" => "Přijato", + "receiving_id" => "Číslo příjemky", + "receiving_type" => "Typ příjmu", + "receivings" => "Příjemky", + "reorder_level" => "Množství pro doobjednání", + "report" => "Sestava", + "report_input" => "Parametry sestavy", + "reports" => "Sestavy", + "requisition" => "", + "requisition_by" => "", + "requisition_id" => "", + "requisition_item" => "", + "requisition_item_quantity" => "", + "requisition_related_item" => "", + "requisition_related_item_total_quantity" => "", + "requisition_related_item_unit_quantity" => "", + "requisitions" => "Requisitions", + "returns" => "Vratky", + "revenue" => "Výnos", + "sale_id" => "ID transakce", + "sale_type" => "Typ transakce", + "sales" => "Transakce", + "sales_amount" => "Množství transakcí", + "sales_summary_report" => "Přehled podle transakcí", + "sales_taxes" => "", + "sales_taxes_summary_report" => "", + "serial_number" => "Sériové číslo", + "service_charge" => "", + "sold_by" => "Prodejce", + "sold_items" => "", + "sold_to" => "Zákazník", + "stock_location" => "Místo skladu", + "sub_total_value" => "Mezisoučet (bez DPH)", + "subtotal" => "Mezisoučet (bez DPH)", + "summary_reports" => "Souhrnné sestavy", + "supplied_by" => "Dodáno", + "supplier" => "Dodavatel", + "suppliers" => "Dodavatelé", + "suppliers_summary_report" => "Přehled dodavatelů", + "tax" => "DPH", + "tax_category" => "", + "tax_name" => "", + "tax_percent" => "Sazba", + "tax_rate" => "", + "taxes" => "Daně", + "taxes_summary_report" => "Přehled podle DPH", + "total" => "Celkem", + "total_inventory_value" => "Celková cena skladu", + "total_low_sell_quantity" => "", + "total_quantity" => "Celkové množství", + "total_retail" => "Cena skladu v koncových cenách", + "trans_amount" => "", + "trans_due" => "", + "trans_group" => "", + "trans_nopay_sales" => "", + "trans_payments" => "", + "trans_refunded" => "", + "trans_sales" => "", + "trans_type" => "", + "type" => "Typ", + "unit_price" => "Prodejní cena", + "used" => "Points Used", + "work_orders" => "Work Orders", + "zero_and_less" => "Nula a méně", ]; diff --git a/app/Language/cs/Sales.php b/app/Language/cs/Sales.php index 700529dbc..7bf060755 100644 --- a/app/Language/cs/Sales.php +++ b/app/Language/cs/Sales.php @@ -1,224 +1,224 @@ "Dostupné body", - "rewards_package" => "", - "rewards_remaining_balance" => "", - "account_number" => "", - "add_payment" => "Přidat platbu", - "amount_due" => "K úhradě", - "amount_tendered" => "Uhrazeno", - "authorized_signature" => "", - "cancel_sale" => "Zrušit", - "cash" => "Hotovost", - "cash_1" => "", - "cash_2" => "", - "cash_3" => "", - "cash_4" => "", - "cash_adjustment" => "", - "cash_deposit" => "", - "cash_filter" => "Hotově", - "change_due" => "Zbývá", - "change_price" => "", - "check" => "Bankovním převodem", - "check_balance" => "", - "check_filter" => "", - "close" => "", - "comment" => "Komentář", - "comments" => "Komentář", - "company_name" => "", - "complete" => "", - "complete_sale" => "Dokončit", - "confirm_cancel_sale" => "Opravdu chcete zrušit účtenku? Všechny položky budou smazány.", - "confirm_delete" => "Opravdu chcete smazat vybranou účtenku?", - "confirm_restore" => "Opravdu chcete obnovit vybranou účtenku?", - "credit" => "Kreditní karta", - "credit_deposit" => "", - "credit_filter" => "", - "current_table" => "", - "customer" => "Jméno", - "customer_address" => "Adresa", - "customer_discount" => "Sleva", - "customer_email" => "Email", - "customer_location" => "Místo", - "customer_mailchimp_status" => "Stav mailchimp", - "customer_optional" => "(Volitelné)", - "customer_required" => "(Vyžadováno)", - "customer_total" => "Celkem", - "customer_total_spent" => "", - "daily_sales" => "", - "date" => "Datum prodeje", - "date_range" => "Rozsah data", - "date_required" => "Musí být vloženo správné datum.", - "date_type" => "Datum je nutno zadat.", - "debit" => "Debetní karta", - "debit_filter" => "", - "delete" => "Povolit mazání", - "delete_confirmation" => "Opravdu chcete smazat tuto účtenku? Tato operace není vratná.", - "delete_entire_sale" => "Zrušit celou účtenku", - "delete_successful" => "Účtenka byla smazána.", - "delete_unsuccessful" => "Účtenka nebyla smazána.", - "description_abbrv" => "Položka.", - "discard" => "Zrušit", - "discard_quote" => "", - "discount" => "Sleva %", - "discount_included" => "% Sleva", - "discount_short" => "%", - "due" => "", - "due_filter" => "Neuhrazeno", - "edit" => "Upravit", - "edit_item" => "Upravit položku", - "edit_sale" => "Upravit účtenku", - "email_receipt" => "Odeslat účtenku", - "employee" => "Prodávající", - "entry" => "Záznam", - "error_editing_item" => "Chyba při úpravě položky", - "find_or_scan_item" => "Najít nebo skenovat položku", - "find_or_scan_item_or_receipt" => "Najít nebo skenovat položku či účtenku", - "giftcard" => "Dárkový poukaz", - "giftcard_balance" => "", - "giftcard_filter" => "", - "giftcard_number" => "Číslo dárkového poukazu", - "group_by_category" => "Seskupit podle kategorií", - "group_by_type" => "Seskupit podle typu", - "hsn" => "", - "id" => "Číslo dokladu", - "include_prices" => "", - "invoice" => "Faktura", - "invoice_confirm" => "Tato faktura bude odeslána", - "invoice_enable" => "Vytvořit fakturu", - "invoice_filter" => "Faktury", - "invoice_no_email" => "Zákazníl nemá platný e-mail.", - "invoice_number" => "Faktura č", - "invoice_number_duplicate" => "Číslo faktury musí být jedinečné.", - "invoice_sent" => "Faktura odeslána", - "invoice_total" => "", - "invoice_type_custom_invoice" => "", - "invoice_type_custom_tax_invoice" => "", - "invoice_type_invoice" => "", - "invoice_type_tax_invoice" => "", - "invoice_unsent" => "Fakturu se nepodařilo odeslat", - "invoice_update" => "Přepočítat", - "item_insufficient_of_stock" => "Není dostatek kusů na skladě.", - "item_name" => "Název položky", - "item_number" => "Číslo položky", - "item_out_of_stock" => "Položka není skladem.", - "key_browser" => "", - "key_cancel" => "Cancels Current Quote/Invoice/Sale", - "key_customer_search" => "Customer Search", - "key_finish_quote" => "Finish Quote/Invoice witdout payment", - "key_finish_sale" => "Add Payment and Complete Invoice/Sale", - "key_full" => "", - "key_function" => "Function", - "key_help" => "Shortcuts", - "key_help_modal" => "Open Shortcuts Window", - "key_in" => "", - "key_item_search" => "Item Search", - "key_out" => "", - "key_payment" => "Add Payment", - "key_print" => "", - "key_restore" => "", - "key_search" => "", - "key_suspend" => "Suspend Current Sale", - "key_suspended" => "Show Suspended Sales", - "key_system" => "", - "key_tendered" => "Edit Amount Tendered", - "key_title" => "Sales Keyboard Shortcuts", - "mc" => "", - "mode" => "Typ dokladu", - "must_enter_numeric" => "", - "must_enter_numeric_giftcard" => "Číslo dárkového poukazu musí být číslo.", - "new_customer" => "Nový zákazník", - "new_item" => "Nová položka", - "no_description" => "Žádný", - "no_filter" => "Vše", - "no_items_in_cart" => "Nejsou zde žádné položky.", - "no_sales_to_display" => "Žádné účtenky k zobrazení.", - "none_selected" => "Nebylo nic vybráno ke smazání.", - "nontaxed_ind" => "", - "not_authorized" => "Tato akce nebyla povolena.", - "one_or_multiple" => "", - "payment" => "Způsob platby", - "payment_amount" => "Částka", - "payment_not_cover_total" => "Zaplacená částka musí být stejná nebo větší než celková částka.", - "payment_type" => "Typ", - "payments" => "", - "payments_total" => "Uhrazeno", - "price" => "Cena", - "print_after_sale" => "Vytisknout automaticky", - "quantity" => "ks", - "quantity_less_than_reorder_level" => "Upozornění: Množství zboží je pod nastavenou úrovní pro doobjednání.", - "quantity_less_than_zero" => "Pozor: Není dostatek zboží. Můžete pokračovat v prodeji, ale zkontrolujte si stav skladu.", - "quantity_of_items" => "Množství položek {0}", - "quote" => "Nabídka", - "quote_number" => "Číslo nabídky", - "quote_number_duplicate" => "Číslo nabídky musí být jedinečné.", - "quote_sent" => "Nabidku odeslat", - "quote_unsent" => "Nabídku odeslat", - "receipt" => "Účtenka", - "receipt_no_email" => "Zákazníl nemá platný e-mail.", - "receipt_number" => "Číslo dokladu", - "receipt_sent" => "Účtenku odeslat", - "receipt_unsent" => "Účtenku nelze odeslat", - "refund" => "", - "register" => "Pokladna", - "remove_customer" => "Odebrat zákazníka", - "remove_discount" => "", - "return" => "Vratka", - "rewards" => "", - "rewards_balance" => "", - "sale" => "", - "sale_by_invoice" => "", - "sale_for_customer" => "Zákazník:", - "sale_time" => "Čas", - "sales_tax" => "DPH", - "sales_total" => "", - "select_customer" => "Vyberte zákazníka", - "send_invoice" => "Odeslat fakturu", - "send_quote" => "Odeslat nabídku", - "send_receipt" => "Odeslat účtenku", - "send_work_order" => "", - "serial" => "Sériové číslo", - "service_charge" => "", - "show_due" => "", - "show_invoice" => "Zobrazit fakturu", - "show_receipt" => "Zobrazit účtenku", - "start_typing_customer_name" => "Vložte podrobnosti o zákazníkovi...", - "start_typing_item_name" => "Napište název položky nebo naskenujte čárový kód..", - "stock" => "Sklad", - "stock_location" => "Umístění skladu", - "sub_total" => "Bez DPH", - "successfully_deleted" => "Bylo uspěšně smazáno", - "successfully_restored" => "Bylo úspěšně obnoveno", - "successfully_suspended_sale" => "Prodej byl úspěšně zaparkován.", - "successfully_updated" => "Účtenka byla upravena.", - "suspend_sale" => "Zaparkovat", - "suspended_doc_id" => "Dokument", - "suspended_sale_id" => "ID", - "suspended_sales" => "Zaparkovat", - "table" => "Stůl", - "takings" => "Transakce", - "tax" => "DPH", - "tax_id" => "", - "tax_invoice" => "", - "tax_percent" => "DPH %", - "taxed_ind" => "", - "total" => "Celkem", - "total_tax_exclusive" => "Bez DPH", - "transaction_failed" => "", - "unable_to_add_item" => "Přidání položky se nepovedlo", - "unsuccessfully_deleted" => "Účtenka nebyla smazána.", - "unsuccessfully_restored" => "Účtenka nebyla obnovena.", - "unsuccessfully_suspended_sale" => "Prodej se nepovedlo zaparkovat.", - "unsuccessfully_updated" => "Účtenka nebyla upravena.", - "unsuspend" => "Odparkovat", - "unsuspend_and_delete" => "Akce", - "update" => "Obnovit", - "upi" => "", - "visa" => "", - "wholesale" => "", - "work_order" => "", - "work_order_number" => "", - "work_order_number_duplicate" => "", - "work_order_sent" => "", - "work_order_unsent" => "", + "customers_available_points" => "Dostupné body", + "rewards_package" => "", + "rewards_remaining_balance" => "", + "account_number" => "", + "add_payment" => "Přidat platbu", + "amount_due" => "K úhradě", + "amount_tendered" => "Uhrazeno", + "authorized_signature" => "", + "cancel_sale" => "Zrušit", + "cash" => "Hotovost", + "cash_1" => "", + "cash_2" => "", + "cash_3" => "", + "cash_4" => "", + "cash_adjustment" => "", + "cash_deposit" => "", + "cash_filter" => "Hotově", + "change_due" => "Zbývá", + "change_price" => "", + "check" => "Bankovním převodem", + "check_balance" => "", + "check_filter" => "", + "close" => "", + "comment" => "Komentář", + "comments" => "Komentář", + "company_name" => "", + "complete" => "", + "complete_sale" => "Dokončit", + "confirm_cancel_sale" => "Opravdu chcete zrušit účtenku? Všechny položky budou smazány.", + "confirm_delete" => "Opravdu chcete smazat vybranou účtenku?", + "confirm_restore" => "Opravdu chcete obnovit vybranou účtenku?", + "credit" => "Kreditní karta", + "credit_deposit" => "", + "credit_filter" => "", + "current_table" => "", + "customer" => "Jméno", + "customer_address" => "Adresa", + "customer_discount" => "Sleva", + "customer_email" => "Email", + "customer_location" => "Místo", + "customer_mailchimp_status" => "Stav mailchimp", + "customer_optional" => "(Volitelné)", + "customer_required" => "(Vyžadováno)", + "customer_total" => "Celkem", + "customer_total_spent" => "", + "daily_sales" => "", + "date" => "Datum prodeje", + "date_range" => "Rozsah data", + "date_required" => "Musí být vloženo správné datum.", + "date_type" => "Datum je nutno zadat.", + "debit" => "Debetní karta", + "debit_filter" => "", + "delete" => "Povolit mazání", + "delete_confirmation" => "Opravdu chcete smazat tuto účtenku? Tato operace není vratná.", + "delete_entire_sale" => "Zrušit celou účtenku", + "delete_successful" => "Účtenka byla smazána.", + "delete_unsuccessful" => "Účtenka nebyla smazána.", + "description_abbrv" => "Položka.", + "discard" => "Zrušit", + "discard_quote" => "", + "discount" => "Sleva %", + "discount_included" => "% Sleva", + "discount_short" => "%", + "due" => "", + "due_filter" => "Neuhrazeno", + "edit" => "Upravit", + "edit_item" => "Upravit položku", + "edit_sale" => "Upravit účtenku", + "email_receipt" => "Odeslat účtenku", + "employee" => "Prodávající", + "entry" => "Záznam", + "error_editing_item" => "Chyba při úpravě položky", + "find_or_scan_item" => "Najít nebo skenovat položku", + "find_or_scan_item_or_receipt" => "Najít nebo skenovat položku či účtenku", + "giftcard" => "Dárkový poukaz", + "giftcard_balance" => "", + "giftcard_filter" => "", + "giftcard_number" => "Číslo dárkového poukazu", + "group_by_category" => "Seskupit podle kategorií", + "group_by_type" => "Seskupit podle typu", + "hsn" => "", + "id" => "Číslo dokladu", + "include_prices" => "", + "invoice" => "Faktura", + "invoice_confirm" => "Tato faktura bude odeslána", + "invoice_enable" => "Vytvořit fakturu", + "invoice_filter" => "Faktury", + "invoice_no_email" => "Zákazníl nemá platný e-mail.", + "invoice_number" => "Faktura č", + "invoice_number_duplicate" => "Číslo faktury musí být jedinečné.", + "invoice_sent" => "Faktura odeslána", + "invoice_total" => "", + "invoice_type_custom_invoice" => "", + "invoice_type_custom_tax_invoice" => "", + "invoice_type_invoice" => "", + "invoice_type_tax_invoice" => "", + "invoice_unsent" => "Fakturu se nepodařilo odeslat", + "invoice_update" => "Přepočítat", + "item_insufficient_of_stock" => "Není dostatek kusů na skladě.", + "item_name" => "Název položky", + "item_number" => "Číslo položky", + "item_out_of_stock" => "Položka není skladem.", + "key_browser" => "", + "key_cancel" => "Cancels Current Quote/Invoice/Sale", + "key_customer_search" => "Customer Search", + "key_finish_quote" => "Finish Quote/Invoice witdout payment", + "key_finish_sale" => "Add Payment and Complete Invoice/Sale", + "key_full" => "", + "key_function" => "Function", + "key_help" => "Shortcuts", + "key_help_modal" => "Open Shortcuts Window", + "key_in" => "", + "key_item_search" => "Item Search", + "key_out" => "", + "key_payment" => "Add Payment", + "key_print" => "", + "key_restore" => "", + "key_search" => "", + "key_suspend" => "Suspend Current Sale", + "key_suspended" => "Show Suspended Sales", + "key_system" => "", + "key_tendered" => "Edit Amount Tendered", + "key_title" => "Sales Keyboard Shortcuts", + "mc" => "", + "mode" => "Typ dokladu", + "must_enter_numeric" => "", + "must_enter_numeric_giftcard" => "Číslo dárkového poukazu musí být číslo.", + "new_customer" => "Nový zákazník", + "new_item" => "Nová položka", + "no_description" => "Žádný", + "no_filter" => "Vše", + "no_items_in_cart" => "Nejsou zde žádné položky.", + "no_sales_to_display" => "Žádné účtenky k zobrazení.", + "none_selected" => "Nebylo nic vybráno ke smazání.", + "nontaxed_ind" => "", + "not_authorized" => "Tato akce nebyla povolena.", + "one_or_multiple" => "", + "payment" => "Způsob platby", + "payment_amount" => "Částka", + "payment_not_cover_total" => "Zaplacená částka musí být stejná nebo větší než celková částka.", + "payment_type" => "Typ", + "payments" => "", + "payments_total" => "Uhrazeno", + "price" => "Cena", + "print_after_sale" => "Vytisknout automaticky", + "quantity" => "ks", + "quantity_less_than_reorder_level" => "Upozornění: Množství zboží je pod nastavenou úrovní pro doobjednání.", + "quantity_less_than_zero" => "Pozor: Není dostatek zboží. Můžete pokračovat v prodeji, ale zkontrolujte si stav skladu.", + "quantity_of_items" => "Množství položek {0}", + "quote" => "Nabídka", + "quote_number" => "Číslo nabídky", + "quote_number_duplicate" => "Číslo nabídky musí být jedinečné.", + "quote_sent" => "Nabidku odeslat", + "quote_unsent" => "Nabídku odeslat", + "receipt" => "Účtenka", + "receipt_no_email" => "Zákazníl nemá platný e-mail.", + "receipt_number" => "Číslo dokladu", + "receipt_sent" => "Účtenku odeslat", + "receipt_unsent" => "Účtenku nelze odeslat", + "refund" => "", + "register" => "Pokladna", + "remove_customer" => "Odebrat zákazníka", + "remove_discount" => "", + "return" => "Vratka", + "rewards" => "", + "rewards_balance" => "", + "sale" => "", + "sale_by_invoice" => "", + "sale_for_customer" => "Zákazník:", + "sale_time" => "Čas", + "sales_tax" => "DPH", + "sales_total" => "", + "select_customer" => "Vyberte zákazníka", + "send_invoice" => "Odeslat fakturu", + "send_quote" => "Odeslat nabídku", + "send_receipt" => "Odeslat účtenku", + "send_work_order" => "", + "serial" => "Sériové číslo", + "service_charge" => "", + "show_due" => "", + "show_invoice" => "Zobrazit fakturu", + "show_receipt" => "Zobrazit účtenku", + "start_typing_customer_name" => "Vložte podrobnosti o zákazníkovi...", + "start_typing_item_name" => "Napište název položky nebo naskenujte čárový kód..", + "stock" => "Sklad", + "stock_location" => "Umístění skladu", + "sub_total" => "Bez DPH", + "successfully_deleted" => "Bylo uspěšně smazáno", + "successfully_restored" => "Bylo úspěšně obnoveno", + "successfully_suspended_sale" => "Prodej byl úspěšně zaparkován.", + "successfully_updated" => "Účtenka byla upravena.", + "suspend_sale" => "Zaparkovat", + "suspended_doc_id" => "Dokument", + "suspended_sale_id" => "ID", + "suspended_sales" => "Zaparkovat", + "table" => "Stůl", + "takings" => "Transakce", + "tax" => "DPH", + "tax_id" => "", + "tax_invoice" => "", + "tax_percent" => "DPH %", + "taxed_ind" => "", + "total" => "Celkem", + "total_tax_exclusive" => "Bez DPH", + "transaction_failed" => "", + "unable_to_add_item" => "Přidání položky se nepovedlo", + "unsuccessfully_deleted" => "Účtenka nebyla smazána.", + "unsuccessfully_restored" => "Účtenka nebyla obnovena.", + "unsuccessfully_suspended_sale" => "Prodej se nepovedlo zaparkovat.", + "unsuccessfully_updated" => "Účtenka nebyla upravena.", + "unsuspend" => "Odparkovat", + "unsuspend_and_delete" => "Akce", + "update" => "Obnovit", + "upi" => "", + "visa" => "", + "wholesale" => "", + "work_order" => "", + "work_order_number" => "", + "work_order_number_duplicate" => "", + "work_order_sent" => "", + "work_order_unsent" => "", ]; diff --git a/app/Language/cs/Suppliers.php b/app/Language/cs/Suppliers.php index f26bc2195..3a9fa4cac 100644 --- a/app/Language/cs/Suppliers.php +++ b/app/Language/cs/Suppliers.php @@ -1,24 +1,24 @@ "", - "agency_name" => "", - "cannot_be_deleted" => "", - "category" => "", - "company_name" => "", - "company_name_required" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "cost" => "", - "error_adding_updating" => "", - "goods" => "", - "new" => "", - "none_selected" => "", - "one_or_multiple" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "supplier" => "", - "supplier_id" => "", - "tax_id" => "", - "update" => "", + "account_number" => "", + "agency_name" => "", + "cannot_be_deleted" => "", + "category" => "", + "company_name" => "", + "company_name_required" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "cost" => "", + "error_adding_updating" => "", + "goods" => "", + "new" => "", + "none_selected" => "", + "one_or_multiple" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "supplier" => "", + "supplier_id" => "", + "tax_id" => "", + "update" => "", ]; diff --git a/app/Language/cs/Taxes.php b/app/Language/cs/Taxes.php index 6ae3d5b76..691ff9bb3 100644 --- a/app/Language/cs/Taxes.php +++ b/app/Language/cs/Taxes.php @@ -1,82 +1,82 @@ "", - "cascade" => "", - "cascade_sequence" => "", - "city" => "", - "code" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "default_tax_category" => "", - "default_tax_rate" => "", - "error_adding_updating" => "", - "group_seq" => "", - "jurisdiction_name" => "", - "name" => "", - "new" => "", - "no_taxes" => "", - "no_taxes_to_display" => "", - "reporting_authority" => "", - "round_half_down" => "", - "round_half_even" => "", - "round_half_odd" => "", - "round_half_up" => "", - "rounding_code" => "", - "sales_tax" => "", - "sales_tax_by_invoice" => "", - "sequence" => "", - "state" => "", - "successful_deleted" => "", - "tax_categories" => "", - "tax_categories_configuration" => "", - "tax_categories_saved_successfully" => "", - "tax_categories_saved_unsuccessfully" => "", - "tax_category" => "", - "tax_category_code" => "", - "tax_category_duplicate" => "", - "tax_category_invalid_chars" => "", - "tax_category_name" => "", - "tax_category_new" => "", - "tax_category_required" => "", - "tax_code" => "", - "tax_code_cannot_be_deleted" => "", - "tax_code_duplicate" => "", - "tax_code_invalid_chars" => "", - "tax_code_name" => "", - "tax_code_required" => "", - "tax_code_successful_deleted" => "", - "tax_code_successful_updated" => "", - "tax_code_successful_updating" => "", - "tax_code_successfully_added" => "", - "tax_code_type" => "", - "tax_codes" => "", - "tax_codes_configuration" => "", - "tax_codes_saved_successfully" => "", - "tax_codes_saved_unsuccessfully" => "", - "tax_excluded" => "", - "tax_group" => "", - "tax_group_not_unique" => "", - "tax_group_sequence" => "", - "tax_included" => "", - "tax_jurisdiction" => "", - "tax_jurisdiction_duplicate" => "", - "tax_jurisdiction_invalid_chars" => "", - "tax_jurisdiction_required" => "", - "tax_jurisdictions" => "", - "tax_jurisdictions_configuration" => "", - "tax_jurisdictions_saved_successfully" => "", - "tax_jurisdictions_saved_unsuccessfully" => "", - "tax_rate" => "", - "tax_rate_configuration" => "", - "tax_rate_error_adding_updating" => "", - "tax_rate_numeric" => "", - "tax_rate_required" => "", - "tax_rate_successful_updated" => "", - "tax_rate_successfully_added" => "", - "tax_rates" => "", - "tax_rates_configuration" => "", - "tax_rounding" => "", - "tax_type" => "", - "update" => "", - "vat_tax" => "", + "add_exception" => "", + "cascade" => "", + "cascade_sequence" => "", + "city" => "", + "code" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "default_tax_category" => "", + "default_tax_rate" => "", + "error_adding_updating" => "", + "group_seq" => "", + "jurisdiction_name" => "", + "name" => "", + "new" => "", + "no_taxes" => "", + "no_taxes_to_display" => "", + "reporting_authority" => "", + "round_half_down" => "", + "round_half_even" => "", + "round_half_odd" => "", + "round_half_up" => "", + "rounding_code" => "", + "sales_tax" => "", + "sales_tax_by_invoice" => "", + "sequence" => "", + "state" => "", + "successful_deleted" => "", + "tax_categories" => "", + "tax_categories_configuration" => "", + "tax_categories_saved_successfully" => "", + "tax_categories_saved_unsuccessfully" => "", + "tax_category" => "", + "tax_category_code" => "", + "tax_category_duplicate" => "", + "tax_category_invalid_chars" => "", + "tax_category_name" => "", + "tax_category_new" => "", + "tax_category_required" => "", + "tax_code" => "", + "tax_code_cannot_be_deleted" => "", + "tax_code_duplicate" => "", + "tax_code_invalid_chars" => "", + "tax_code_name" => "", + "tax_code_required" => "", + "tax_code_successful_deleted" => "", + "tax_code_successful_updated" => "", + "tax_code_successful_updating" => "", + "tax_code_successfully_added" => "", + "tax_code_type" => "", + "tax_codes" => "", + "tax_codes_configuration" => "", + "tax_codes_saved_successfully" => "", + "tax_codes_saved_unsuccessfully" => "", + "tax_excluded" => "", + "tax_group" => "", + "tax_group_not_unique" => "", + "tax_group_sequence" => "", + "tax_included" => "", + "tax_jurisdiction" => "", + "tax_jurisdiction_duplicate" => "", + "tax_jurisdiction_invalid_chars" => "", + "tax_jurisdiction_required" => "", + "tax_jurisdictions" => "", + "tax_jurisdictions_configuration" => "", + "tax_jurisdictions_saved_successfully" => "", + "tax_jurisdictions_saved_unsuccessfully" => "", + "tax_rate" => "", + "tax_rate_configuration" => "", + "tax_rate_error_adding_updating" => "", + "tax_rate_numeric" => "", + "tax_rate_required" => "", + "tax_rate_successful_updated" => "", + "tax_rate_successfully_added" => "", + "tax_rates" => "", + "tax_rates_configuration" => "", + "tax_rounding" => "", + "tax_type" => "", + "update" => "", + "vat_tax" => "", ]; diff --git a/app/Language/da/Attributes.php b/app/Language/da/Attributes.php index 2ede3f1e2..2481542e4 100644 --- a/app/Language/da/Attributes.php +++ b/app/Language/da/Attributes.php @@ -1,32 +1,32 @@ "Egenskabens værdi kan ikke indeholde ':' or '|'", - "confirm_delete" => "Er du sikker på, at du vil slette de valgte egenskaber?", - "confirm_restore" => "Er du sikker på, at du vil gendanne de valgte egenskaber?", - "definition_cannot_be_deleted" => "De valgte egenskaber kunne ikke slettes", - "definition_error_adding_updating" => "Egenskab {0} Kunne ikke tilføjes eller opdateres. Tjek venligst fejlprotokollen.", - "definition_flags" => "Egenskabens Synlighed", - "definition_group" => "Gruppe", - "definition_id" => "Id", - "definition_name" => "Tilføj egenskab", - "definition_name_required" => "Egenskabens navn er et obligatorisk felt", - "definition_one_or_multiple" => "Egenskab(er)", - "definition_successful_adding" => "Du har tilføjet en genstand", - "definition_successful_deleted" => "Du har slettet en genstand", - "definition_successful_updating" => "Du har opdateret en egenskab", - "definition_type" => "Egenskabs-type", - "definition_type_required" => "Egenskabs-type er et obligatorisk felt", - "definition_unit" => "Måleenhed", - "definition_values" => "Egenskabens værdier", - "new" => "Ny egenskab", - "no_attributes_to_display" => "Ingen genstande at vise", - "receipt_visibility" => "Kvittering", - "show_in_items" => "Vis i genstande", - "show_in_items_visibility" => "Genstande", - "show_in_receipt" => "Vis i kvittering", - "show_in_receivings" => "Vis i modtagelser", - "show_in_receivings_visibility" => "Modtagelser", - "show_in_sales" => "Vis i salg", - "show_in_sales_visibility" => "Salg", - "update" => "Opdater egenskab", + "attribute_value_invalid_chars" => "Egenskabens værdi kan ikke indeholde ':' or '|'", + "confirm_delete" => "Er du sikker på, at du vil slette de valgte egenskaber?", + "confirm_restore" => "Er du sikker på, at du vil gendanne de valgte egenskaber?", + "definition_cannot_be_deleted" => "De valgte egenskaber kunne ikke slettes", + "definition_error_adding_updating" => "Egenskab {0} Kunne ikke tilføjes eller opdateres. Tjek venligst fejlprotokollen.", + "definition_flags" => "Egenskabens Synlighed", + "definition_group" => "Gruppe", + "definition_id" => "Id", + "definition_name" => "Tilføj egenskab", + "definition_name_required" => "Egenskabens navn er et obligatorisk felt", + "definition_one_or_multiple" => "Egenskab(er)", + "definition_successful_adding" => "Du har tilføjet en genstand", + "definition_successful_deleted" => "Du har slettet en genstand", + "definition_successful_updating" => "Du har opdateret en egenskab", + "definition_type" => "Egenskabs-type", + "definition_type_required" => "Egenskabs-type er et obligatorisk felt", + "definition_unit" => "Måleenhed", + "definition_values" => "Egenskabens værdier", + "new" => "Ny egenskab", + "no_attributes_to_display" => "Ingen genstande at vise", + "receipt_visibility" => "Kvittering", + "show_in_items" => "Vis i genstande", + "show_in_items_visibility" => "Genstande", + "show_in_receipt" => "Vis i kvittering", + "show_in_receivings" => "Vis i modtagelser", + "show_in_receivings_visibility" => "Modtagelser", + "show_in_sales" => "Vis i salg", + "show_in_sales_visibility" => "Salg", + "update" => "Opdater egenskab", ]; diff --git a/app/Language/da/Bootstrap_tables.php b/app/Language/da/Bootstrap_tables.php index 2d6f314e3..d48362631 100644 --- a/app/Language/da/Bootstrap_tables.php +++ b/app/Language/da/Bootstrap_tables.php @@ -1,11 +1,11 @@ "Alle", - "columns" => "Kolonner", - "hide_show_pagination" => "Gem/Vis sideinddeling", - "loading" => "Indlæser, vent venligst...", - "page_from_to" => "Viser {0} to {1} af {2} rækker", - "refresh" => "Opdater", - "rows_per_page" => "{0} rækker per side", - "toggle" => "Skift", + "all" => "Alle", + "columns" => "Kolonner", + "hide_show_pagination" => "Gem/Vis sideinddeling", + "loading" => "Indlæser, vent venligst...", + "page_from_to" => "Viser {0} to {1} af {2} rækker", + "refresh" => "Opdater", + "rows_per_page" => "{0} rækker per side", + "toggle" => "Skift", ]; diff --git a/app/Language/da/Calendar.php b/app/Language/da/Calendar.php index 4a0621305..495fd8b3e 100644 --- a/app/Language/da/Calendar.php +++ b/app/Language/da/Calendar.php @@ -1,48 +1,48 @@ "Sø", - "mo" => "Ma", - "tu" => "Ti", - "we" => "On", - "th" => "To", - "fr" => "Fr", - "sa" => "Lø", - "sun" => "Søn", - "mon" => "Man", - "tue" => "Tir", - "wed" => "Ons", - "thu" => "Tor", - "fri" => "Fre", - "sat" => "Lør", - "sunday" => "Søndag", - "monday" => "Mandag", - "tuesday" => "Tirsdag", - "wednesday" => "Onsdag", - "thursday" => "Torsdag", - "friday" => "Fredag", - "saturday" => "Lørdag", - "jan" => "Jan", - "feb" => "Feb", - "mar" => "Mar", - "apr" => "Apr", - "may" => "Maj", - "jun" => "Jun", - "jul" => "Jul", - "aug" => "Aug", - "sep" => "Sep", - "oct" => "Okt", - "nov" => "Nov", - "dec" => "Dec", - "january" => "Januar", - "february" => "Februar", - "march" => "Marts", - "april" => "April", - "mayl" => "Maj", - "june" => "Juni", - "july" => "Juli", - "august" => "August", - "september" => "September", - "october" => "Oktober", - "november" => "November", - "december" => "December", + "su" => "Sø", + "mo" => "Ma", + "tu" => "Ti", + "we" => "On", + "th" => "To", + "fr" => "Fr", + "sa" => "Lø", + "sun" => "Søn", + "mon" => "Man", + "tue" => "Tir", + "wed" => "Ons", + "thu" => "Tor", + "fri" => "Fre", + "sat" => "Lør", + "sunday" => "Søndag", + "monday" => "Mandag", + "tuesday" => "Tirsdag", + "wednesday" => "Onsdag", + "thursday" => "Torsdag", + "friday" => "Fredag", + "saturday" => "Lørdag", + "jan" => "Jan", + "feb" => "Feb", + "mar" => "Mar", + "apr" => "Apr", + "may" => "Maj", + "jun" => "Jun", + "jul" => "Jul", + "aug" => "Aug", + "sep" => "Sep", + "oct" => "Okt", + "nov" => "Nov", + "dec" => "Dec", + "january" => "Januar", + "february" => "Februar", + "march" => "Marts", + "april" => "April", + "mayl" => "Maj", + "june" => "Juni", + "july" => "Juli", + "august" => "August", + "september" => "September", + "october" => "Oktober", + "november" => "November", + "december" => "December", ]; diff --git a/app/Language/da/Cashups.php b/app/Language/da/Cashups.php index a0f398ab4..0609bdf9c 100644 --- a/app/Language/da/Cashups.php +++ b/app/Language/da/Cashups.php @@ -1,49 +1,49 @@ "Beløb", - "amount_number" => "Beløbet skal være et tal", - "amount_required" => "Beløb er et obligatorisk felt.", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "Kasseopgørelse kan ikke slettes", - "cash_difference" => "", - "close_date" => "Luk dato", - "close_employee" => "Lukket af", - "closed_amount_card" => "Kort", - "closed_amount_cash" => "Lukkede kasse", - "closed_amount_check" => "Regninger", - "closed_amount_due" => "Afgifter", - "closed_amount_giftcard" => "", - "closed_amount_total" => "Total", - "closed_date" => "Lukket dato", - "confirm_delete" => "Er du sikker på, at du vil slette den valgte kasseopgørelse?", - "confirm_restore" => "Er du sikker på, at du vil gendanne de valgte kasseopgørelser?", - "confirm_submit" => "", - "date_number" => "Datoen skal være et tal", - "date_required" => "Dato er et obligatorisk felt", - "description" => "Beskrivelse", - "enable_expected" => "", - "error_adding_updating" => "Fejl ved at tilføje/opdatere kasseopgørelsen", - "giftcard" => "", - "id" => "Id", - "info" => "Kasseopgørelsers information", - "info_employee" => "", - "is_deleted" => "Slettet", - "new" => "Ny kasseopgørelse", - "no_cashups_to_display" => "Der er ingen kasseopgørelser at vise", - "none_selected" => "Du har ikke valgt nogle kasseopgørelser", - "note" => "Noter", - "one_or_multiple" => "Kasseopgørelse(r)", - "open_amount_cash" => "Åben kasse", - "open_date" => "Åben dato", - "open_employee" => "Åbnet af", - "opened_date" => "Åbnet dato", - "successful_adding" => "Kasseopgørelse tilføjet", - "successful_deleted" => "Kasseopgørelse er slettet", - "successful_updating" => "Kasseopgørelse er opdateret", - "total" => "Total", - "transfer_amount_cash" => "", - "transfer_amount_cash_minus" => "", - "update" => "Opdater kasseopgørelse", - "warning" => "", + "amount" => "Beløb", + "amount_number" => "Beløbet skal være et tal", + "amount_required" => "Beløb er et obligatorisk felt.", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "Kasseopgørelse kan ikke slettes", + "cash_difference" => "", + "close_date" => "Luk dato", + "close_employee" => "Lukket af", + "closed_amount_card" => "Kort", + "closed_amount_cash" => "Lukkede kasse", + "closed_amount_check" => "Regninger", + "closed_amount_due" => "Afgifter", + "closed_amount_giftcard" => "", + "closed_amount_total" => "Total", + "closed_date" => "Lukket dato", + "confirm_delete" => "Er du sikker på, at du vil slette den valgte kasseopgørelse?", + "confirm_restore" => "Er du sikker på, at du vil gendanne de valgte kasseopgørelser?", + "confirm_submit" => "", + "date_number" => "Datoen skal være et tal", + "date_required" => "Dato er et obligatorisk felt", + "description" => "Beskrivelse", + "enable_expected" => "", + "error_adding_updating" => "Fejl ved at tilføje/opdatere kasseopgørelsen", + "giftcard" => "", + "id" => "Id", + "info" => "Kasseopgørelsers information", + "info_employee" => "", + "is_deleted" => "Slettet", + "new" => "Ny kasseopgørelse", + "no_cashups_to_display" => "Der er ingen kasseopgørelser at vise", + "none_selected" => "Du har ikke valgt nogle kasseopgørelser", + "note" => "Noter", + "one_or_multiple" => "Kasseopgørelse(r)", + "open_amount_cash" => "Åben kasse", + "open_date" => "Åben dato", + "open_employee" => "Åbnet af", + "opened_date" => "Åbnet dato", + "successful_adding" => "Kasseopgørelse tilføjet", + "successful_deleted" => "Kasseopgørelse er slettet", + "successful_updating" => "Kasseopgørelse er opdateret", + "total" => "Total", + "transfer_amount_cash" => "", + "transfer_amount_cash_minus" => "", + "update" => "Opdater kasseopgørelse", + "warning" => "", ]; diff --git a/app/Language/da/Common.php b/app/Language/da/Common.php index fce734de6..7e5e2fe8b 100644 --- a/app/Language/da/Common.php +++ b/app/Language/da/Common.php @@ -1,88 +1,88 @@ "Adresse 1", - "address_2" => "Adresse 2", - "admin" => "", - "city" => "By", - "clerk" => "", - "close" => "Luk", - "color" => "", - "comments" => "Kommentarer", - "common" => "Almindelig(e)", - "confirm_search" => "Du har valgt en eller flere rækker. Disse vil ikke længere være valgt efter din søgning. Er du sikker på, at du vil foretage søgningen?", - "copyrights" => "© 2010 - {0}", - "correct_errors" => "Ret venligst identificeret fejl før du gemmer", - "country" => "Land", - "dashboard" => "", - "date" => "Dato", - "delete" => "Slet", - "det" => "Detaljer", - "download_import_template" => "Download Import CSV Template (CSV)", - "edit" => "Rediger", - "email" => "Email", - "email_invalid_format" => "Email adressen er ikke i det korrekte format.", - "export_csv" => "CSV Eksport", - "export_csv_no" => "Nej", - "export_csv_yes" => "Ja", - "fields_required_message" => "Røde felter er obligatoriske", - "fields_required_message_unique" => "", - "first_name" => "Fornavn", - "first_name_required" => "Fornavn er et obligatorisk felt.", - "first_page" => "Første", - "gender" => "Køn", - "gender_female" => "Kvinde", - "gender_male" => "Mand", - "gender_undefined" => "", - "icon" => "", - "id" => "Id", - "import" => "Import", - "import_change_file" => "Skift", - "import_csv" => "CSV Import", - "import_full_path" => "Fulde stig til csv fil behøves", - "import_remove_file" => "Fjern", - "import_select_file" => "Vælg fil", - "inv" => "inv", - "last_name" => "Efternavn", - "last_name_required" => "Efternavn er et obligatorisk felt.", - "last_page" => "Sidste", - "learn_about_project" => "for at lære det seneste information om projektet.", - "list_of" => "Liste af", - "logo" => "", - "logo_mark" => "", - "logout" => "Log ud", - "manager" => "", - "migration_needed" => "En database migration til {0} vil starte efter du er logget ind.", - "new" => "Ny", - "no" => "", - "no_persons_to_display" => "Der er ingen folk at vise.", - "none_selected_text" => "[Vælg]", - "or" => "ELLER", - "people" => "", - "phone_number" => "Telefonnummer", - "phone_number_required" => "", - "please_visit_my" => "Besøg venligst", - "position" => "", - "powered_by" => "Drevet af", - "price" => "Pris", - "print" => "Print ud", - "remove" => "Fjern", - "required" => "Obligatorisk", - "restore" => "Gendan", - "return_policy" => "Returpolitik", - "search" => "Søg", - "search_options" => "Søgeindstillinger", - "searched_for" => "Søgt efter", - "software_short" => "", - "software_title" => "", - "state" => "Stat", - "submit" => "Indsend", - "total_spent" => "Samlet brugt", - "unknown" => "Ukendt", - "view_recent_sales" => "Se seneste salg", - "website" => "Hjemmeside", - "welcome" => "Velkommen", - "welcome_message" => "Velkommen til OSPOS. Klik på et modul forneden for at komme i gang.", - "yes" => "", - "you_are_using_ospos" => "You are using Open Source Point Of Sale version", - "zip" => "Postnummer", + "address_1" => "Adresse 1", + "address_2" => "Adresse 2", + "admin" => "", + "city" => "By", + "clerk" => "", + "close" => "Luk", + "color" => "", + "comments" => "Kommentarer", + "common" => "Almindelig(e)", + "confirm_search" => "Du har valgt en eller flere rækker. Disse vil ikke længere være valgt efter din søgning. Er du sikker på, at du vil foretage søgningen?", + "copyrights" => "© 2010 - {0}", + "correct_errors" => "Ret venligst identificeret fejl før du gemmer", + "country" => "Land", + "dashboard" => "", + "date" => "Dato", + "delete" => "Slet", + "det" => "Detaljer", + "download_import_template" => "Download Import CSV Template (CSV)", + "edit" => "Rediger", + "email" => "Email", + "email_invalid_format" => "Email adressen er ikke i det korrekte format.", + "export_csv" => "CSV Eksport", + "export_csv_no" => "Nej", + "export_csv_yes" => "Ja", + "fields_required_message" => "Røde felter er obligatoriske", + "fields_required_message_unique" => "", + "first_name" => "Fornavn", + "first_name_required" => "Fornavn er et obligatorisk felt.", + "first_page" => "Første", + "gender" => "Køn", + "gender_female" => "Kvinde", + "gender_male" => "Mand", + "gender_undefined" => "", + "icon" => "", + "id" => "Id", + "import" => "Import", + "import_change_file" => "Skift", + "import_csv" => "CSV Import", + "import_full_path" => "Fulde stig til csv fil behøves", + "import_remove_file" => "Fjern", + "import_select_file" => "Vælg fil", + "inv" => "inv", + "last_name" => "Efternavn", + "last_name_required" => "Efternavn er et obligatorisk felt.", + "last_page" => "Sidste", + "learn_about_project" => "for at lære det seneste information om projektet.", + "list_of" => "Liste af", + "logo" => "", + "logo_mark" => "", + "logout" => "Log ud", + "manager" => "", + "migration_needed" => "En database migration til {0} vil starte efter du er logget ind.", + "new" => "Ny", + "no" => "", + "no_persons_to_display" => "Der er ingen folk at vise.", + "none_selected_text" => "[Vælg]", + "or" => "ELLER", + "people" => "", + "phone_number" => "Telefonnummer", + "phone_number_required" => "", + "please_visit_my" => "Besøg venligst", + "position" => "", + "powered_by" => "Drevet af", + "price" => "Pris", + "print" => "Print ud", + "remove" => "Fjern", + "required" => "Obligatorisk", + "restore" => "Gendan", + "return_policy" => "Returpolitik", + "search" => "Søg", + "search_options" => "Søgeindstillinger", + "searched_for" => "Søgt efter", + "software_short" => "", + "software_title" => "", + "state" => "Stat", + "submit" => "Indsend", + "total_spent" => "Samlet brugt", + "unknown" => "Ukendt", + "view_recent_sales" => "Se seneste salg", + "website" => "Hjemmeside", + "welcome" => "Velkommen", + "welcome_message" => "Velkommen til OSPOS. Klik på et modul forneden for at komme i gang.", + "yes" => "", + "you_are_using_ospos" => "You are using Open Source Point Of Sale version", + "zip" => "Postnummer", ]; diff --git a/app/Language/da/Config.php b/app/Language/da/Config.php index 5b4c7665d..346a0e6f4 100644 --- a/app/Language/da/Config.php +++ b/app/Language/da/Config.php @@ -1,330 +1,330 @@ "Firma adresse", - "address_required" => "Firma adresse er et obligatorisk felt.", - "all_set" => "All file permissions are set correctly!", - "allow_duplicate_barcodes" => "Tillad duplikatstregkoder", - "apostrophe" => "apostrof", - "backup_button" => "Backup", - "backup_database" => "Backup Database", - "barcode" => "Stregkode", - "barcode_company" => "Firmanavn", - "barcode_configuration" => "Stregkode konfiguration", - "barcode_content" => "Stregkode indhold", - "barcode_first_row" => "Række 1", - "barcode_font" => "Skrifttype", - "barcode_formats" => "Inputformater", - "barcode_generate_if_empty" => "Generer hvis tom.", - "barcode_height" => "Højde (px)", - "barcode_id" => "Genstands Id/navn", - "barcode_info" => "Information om stregkode konfiguration", - "barcode_layout" => "Stregkode layout", - "barcode_name" => "Navn", - "barcode_number" => "Stregkode", - "barcode_number_in_row" => "Nummer i rækken", - "barcode_page_cellspacing" => "Vis sidens celleafstand.", - "barcode_page_width" => "Vis sidens bredde", - "barcode_price" => "Pris", - "barcode_second_row" => "Række 2", - "barcode_third_row" => "Række 3", - "barcode_tooltip" => "Advarsel: Denne funktion kan forårsage, at duplikerede genstande vil blive importeret eller oprettet. Anvend ikke hvis du ikke vil have duplikerede stregkoder.", - "barcode_type" => "Stregkode type", - "barcode_width" => "Bredde (px)", - "bottom" => "Bund", - "cash_button" => "", - "cash_button_1" => "", - "cash_button_2" => "", - "cash_button_3" => "", - "cash_button_4" => "", - "cash_button_5" => "", - "cash_button_6" => "", - "cash_decimals" => "Kontante decimaler", - "cash_decimals_tooltip" => "Hvis kontante decimaler og valuta decimaler er de samme, kan kontanterne ikke rundes op.", - "cash_rounding" => "Kontant afrunding", - "category_dropdown" => "", - "center" => "Centrum", - "change_apperance_tooltip" => "", - "comma" => "Komma", - "company" => "Firma navn", - "company_avatar" => "", - "company_change_image" => "Skift billede", - "company_logo" => "Firma logo", - "company_remove_image" => "Fjern billede", - "company_required" => "Firma navn er et obligatorisk", - "company_select_image" => "Vælg billede", - "company_website_url" => "Firma hjemmeside er ikke en gyldig URL (http://...).", - "country_codes" => "Landekoder", - "country_codes_tooltip" => "Kommasepareret liste af landekoder til nominatim adresse søgning.", - "currency_code" => "Valuta kode", - "currency_decimals" => "Valuta decimaler", - "currency_symbol" => "Valuta symbol", - "current_employee_only" => "", - "customer_reward" => "Belønning", - "customer_reward_duplicate" => "Belønning skal være unik.", - "customer_reward_enable" => "Aktiver kunde belønninger", - "customer_reward_invalid_chars" => "Belønning må ikke indholde '_'", - "customer_reward_required" => "Belønning er et obligatorisk felt", - "customer_sales_tax_support" => "", - "date_or_time_format" => "Dato- og tidfilter", - "datetimeformat" => "Dato og tid format", - "decimal_point" => "Decimaltegn", - "default_barcode_font_size_number" => "Standard stregkode skriftstørrelse skal være et tal", - "default_barcode_font_size_required" => "Standard stregkode skriftstørrelse er et obligatorisk felt", - "default_barcode_height_number" => "Standard stregkode højde skal være et tal", - "default_barcode_height_required" => "Standard stegkode højde er et obligatorisk felt", - "default_barcode_num_in_row_number" => "Standard stregkode tal i en række skal være et tal", - "default_barcode_num_in_row_required" => "Standard stregkode tal i en række er et obligatorisk felt", - "default_barcode_page_cellspacing_number" => "Standard stregkodeside-celleafstand skal være et tal", - "default_barcode_page_cellspacing_required" => "Standard stegkodeside-celleafstand er et obligatorisk felt", - "default_barcode_page_width_number" => "Standard stregkode side bredde skal være et tal", - "default_barcode_page_width_required" => "Standard stregkode side bredde er et obligatorisk felt", - "default_barcode_width_number" => "Standard stregkode bredde skal være et tal", - "default_barcode_width_required" => "Standard stregkode bredde er et obligatorisk felt", - "default_item_columns" => "Standard synlige genstands-kolonner", - "default_origin_tax_code" => "Standard oprindelse af afgiftskode", - "default_receivings_discount" => "Standard modtagelsesrabat", - "default_receivings_discount_number" => "Standard modtagelsesrabat skal være et tal", - "default_receivings_discount_required" => "Standard modtagelsesrabat er et obligatorisk felt", - "default_sales_discount" => "Standard salgsrabat", - "default_sales_discount_number" => "Standard salgsrabat skal være et tal", - "default_sales_discount_required" => "Standard salgsrabat er et obligatorisk felt", - "default_tax_category" => "Standard afgiftskategori", - "default_tax_code" => "Standard afgiftskode", - "default_tax_jurisdiction" => "Standard afgift jurisdiktion", - "default_tax_name_number" => "Standard afgiftsnavn skal være en streng", - "default_tax_name_required" => "Standard afgiftsnavn er et obligatorisk felt", - "default_tax_rate" => "Standard afgiftsrate %", - "default_tax_rate_1" => "Afgift 1 procent", - "default_tax_rate_2" => "Afgift 2 procent", - "default_tax_rate_3" => "", - "default_tax_rate_number" => "Standard afgiftsrate skal være et tal", - "default_tax_rate_required" => "Standard afgiftsrate er et obligatorisk felt", - "derive_sale_quantity" => "Tillad afledt salgsmængde", - "derive_sale_quantity_tooltip" => "Hvis markeret, vil en ny varetype blive stillet til rådighed for varer bestilt med et udvidet beløb", - "dinner_table" => "Tabel", - "dinner_table_duplicate" => "Tabel skal være unik", - "dinner_table_enable" => "Enable Dinner Tables", - "dinner_table_invalid_chars" => "Table Name can not contain '_'.", - "dinner_table_required" => "Table is a required field.", - "dot" => "punktum", - "email" => "Email", - "email_configuration" => "Email konfiguration", - "email_mailpath" => "Stig til Sendmail", - "email_protocol" => "Protokol", - "email_receipt_check_behaviour" => "Email kvitteringsfelt", - "email_receipt_check_behaviour_always" => "Altid markeret", - "email_receipt_check_behaviour_last" => "Husk sidste valg", - "email_receipt_check_behaviour_never" => "Aldrig markeret", - "email_smtp_crypto" => "SMTP Kryptering", - "email_smtp_host" => "SMTP Server", - "email_smtp_pass" => "SMTP Kodeord", - "email_smtp_port" => "SMTP Port", - "email_smtp_timeout" => "SMTP Timeout (sekunder)", - "email_smtp_user" => "SMTP Brugernavn", - "enable_avatar" => "", - "enable_avatar_tooltip" => "", - "enable_dropdown_tooltip" => "", - "enable_new_look" => "", - "enable_right_bar" => "", - "enable_right_bar_tooltip" => "", - "enforce_privacy" => "Håndhæv privathed", - "enforce_privacy_tooltip" => "Beskyt kunders privatliv, der håndhæver datascrambling i tilfælde af, at deres data bliver slettet", - "fax" => "Fax", - "file_perm" => "There are problems with file permissions please fix and reload this page.", - "financial_year" => "Fiscal Year Start", - "financial_year_apr" => "1st of April", - "financial_year_aug" => "1st of August", - "financial_year_dec" => "1st of December", - "financial_year_feb" => "1st of February", - "financial_year_jan" => "1st of January", - "financial_year_jul" => "1st of July", - "financial_year_jun" => "1st of June", - "financial_year_mar" => "1st of March", - "financial_year_may" => "1st of May", - "financial_year_nov" => "1st of November", - "financial_year_oct" => "1st of October", - "financial_year_sep" => "1st of September", - "floating_labels" => "", - "gcaptcha_enable" => "Login Page reCAPTCHA", - "gcaptcha_secret_key" => "reCAPTCHA Secret Key", - "gcaptcha_secret_key_required" => "reCAPTCHA Secret Key is a required field", - "gcaptcha_site_key" => "reCAPTCHA Site Key", - "gcaptcha_site_key_required" => "reCAPTCHA Site Key is a required field", - "gcaptcha_tooltip" => "Protect the Login page with Google reCAPTCHA, click the icon for an API key pair.", - "general" => "General", - "general_configuration" => "General Configuration", - "giftcard_number" => "Gift Card Number", - "giftcard_random" => "Generate Random", - "giftcard_series" => "Generate in Series", - "image_allowed_file_types" => "", - "image_max_height_tooltip" => "", - "image_max_size_tooltip" => "", - "image_max_width_tooltip" => "", - "image_restrictions" => "", - "include_hsn" => "Include Support for HSN Codes", - "info" => "Information", - "info_configuration" => "Store Information", - "input_groups" => "", - "integrations" => "Integrations", - "integrations_configuration" => "Third Party Integrations", - "invoice" => "Invoice", - "invoice_configuration" => "Invoice Print Settings", - "invoice_default_comments" => "Default Invoice Comments", - "invoice_email_message" => "Invoice Email Template", - "invoice_enable" => "Enable Invoicing", - "invoice_printer" => "Invoice Printer", - "invoice_type" => "Invoice Type", - "is_readable" => "", - "is_writable" => "is writable, but the permissions are higher than 750.", - "item_markup" => "", - "jsprintsetup_required" => "Warning: This functionality will only work if you have the FireFox jsPrintSetup addon installed. Save anyway?", - "language" => "Language", - "last_used_invoice_number" => "Last used Invoice Number", - "last_used_quote_number" => "Last used Quote Number", - "last_used_work_order_number" => "Last used W/O Number", - "left" => "Left", - "license" => "License", - "license_configuration" => "License Statement", - "line_sequence" => "Line Sequence", - "lines_per_page" => "Lines per Page", - "lines_per_page_number" => "Lines per Page must be a number.", - "lines_per_page_required" => "Lines per Page is a required field.", - "locale" => "Localization", - "locale_configuration" => "Localization Configuration", - "locale_info" => "Localization Configuration Information", - "location" => "Stock", - "location_configuration" => "Stock Locations", - "location_info" => "Location Configuration Information", - "login_form" => "", - "logout" => "Do you want to make a backup before logging out? Click [OK] to backup or [Cancel] to logout.", - "mailchimp" => "Mailchimp", - "mailchimp_api_key" => "Mailchimp API Key", - "mailchimp_configuration" => "Mailchimp Configuration", - "mailchimp_key_successfully" => "API Key is valid.", - "mailchimp_key_unsuccessfully" => "API Key is invalid.", - "mailchimp_lists" => "Mailchimp List(s)", - "mailchimp_tooltip" => "Click the icon for an API Key.", - "message" => "Message", - "message_configuration" => "Message Configuration", - "msg_msg" => "Saved Text Message", - "msg_msg_placeholder" => "If you wish to use a SMS template save your message here, otherwise leave the box blank.", - "msg_pwd" => "SMS-API Password", - "msg_pwd_required" => "SMS-API Password is a required field", - "msg_src" => "SMS-API Sender ID", - "msg_src_required" => "SMS-API Sender ID is a required field", - "msg_uid" => "SMS-API Username", - "msg_uid_required" => "SMS-API Username is a required field", - "multi_pack_enabled" => "Multiple Packages per Item", - "no_risk" => "No security/vulnerability risks.", - "none" => "none", - "notify_alignment" => "Notification Popup Position", - "number_format" => "Number Format", - "number_locale" => "Localization", - "number_locale_invalid" => "The entered locale is invalid. Check the link in the tooltip to find a valid locale.", - "number_locale_required" => "Number Locale is a required field.", - "number_locale_tooltip" => "Find a suitable locale through this link.", - "os_timezone" => "", - "ospos_info" => "OSPOS Installation Info", - "payment_options_order" => "Payment Options Order", - "perm_risk" => "Permissions higher than 750 leaves this software at risk.", - "phone" => "Company Phone", - "phone_required" => "Company Phone is a required field.", - "print_bottom_margin" => "Margin Bottom", - "print_bottom_margin_number" => "Margin Bottom must be a number.", - "print_bottom_margin_required" => "Margin Bottom is a required field.", - "print_delay_autoreturn" => "Autoreturn to Sale delay", - "print_delay_autoreturn_number" => "Autoreturn to Sale delay is a required field.", - "print_delay_autoreturn_required" => "Autoreturn to Sale delay must be a number.", - "print_footer" => "Print Browser Footer", - "print_header" => "Print Browser Header", - "print_left_margin" => "Margin Left", - "print_left_margin_number" => "Margin Left must be a number.", - "print_left_margin_required" => "Margin Left is a required field.", - "print_receipt_check_behaviour" => "Print Receipt checkbox", - "print_receipt_check_behaviour_always" => "Always checked", - "print_receipt_check_behaviour_last" => "Remember last selection", - "print_receipt_check_behaviour_never" => "Always unchecked", - "print_right_margin" => "Margin Right", - "print_right_margin_number" => "Margin Right must be a number.", - "print_right_margin_required" => "Margin Right is a required field.", - "print_silently" => "Show Print Dialog", - "print_top_margin" => "Margin Top", - "print_top_margin_number" => "Margin Top must be a number.", - "print_top_margin_required" => "Margin Top is a required field.", - "quantity_decimals" => "Quantity Decimals", - "quick_cash_enable" => "", - "quote_default_comments" => "Default Quote Comments", - "receipt" => "Receipt", - "receipt_category" => "", - "receipt_configuration" => "Receipt Print Settings", - "receipt_default" => "Default", - "receipt_font_size" => "Font Size", - "receipt_font_size_number" => "Font Size must be a number.", - "receipt_font_size_required" => "Font Size is a required field.", - "receipt_info" => "Receipt Configuration Information", - "receipt_printer" => "Ticket Printer", - "receipt_short" => "Short", - "receipt_show_company_name" => "Show Company Name", - "receipt_show_description" => "Show Description", - "receipt_show_serialnumber" => "Show Serial Number", - "receipt_show_tax_ind" => "Show Tax Indicator", - "receipt_show_taxes" => "Show Taxes", - "receipt_show_total_discount" => "Show Total Discount", - "receipt_template" => "Receipt Template", - "receiving_calculate_average_price" => "Calc avg. Price (Receiving)", - "recv_invoice_format" => "Receivings Invoice Format", - "register_mode_default" => "Default Register Mode", - "report_an_issue" => "", - "return_policy_required" => "Return policy is a required field.", - "reward" => "Reward", - "reward_configuration" => "Reward Configuration", - "right" => "Right", - "sales_invoice_format" => "Sales Invoice Format", - "sales_quote_format" => "Sales Quote Format", - "saved_successfully" => "Configuration save successful.", - "saved_unsuccessfully" => "Configuration save failed.", - "security_issue" => "Security Vulnerability Warning", - "server_notice" => "Please use the below info for issue reporting.", - "service_charge" => "", - "show_due_enable" => "", - "show_office_group" => "Show office icon", - "statistics" => "Send Statistics", - "statistics_tooltip" => "Send statistics for development and feature improvement purposes.", - "stock_location" => "Stock location", - "stock_location_duplicate" => "Stock Location must be unique.", - "stock_location_invalid_chars" => "Stock Location can not contain '_'.", - "stock_location_required" => "Stock location is a required field.", - "suggestions_fifth_column" => "", - "suggestions_first_column" => "Column 1", - "suggestions_fourth_column" => "", - "suggestions_layout" => "Search Suggestions Layout", - "suggestions_second_column" => "Column 2", - "suggestions_third_column" => "Column 3", - "system_conf" => "Setup & Conf", - "system_info" => "System Info", - "table" => "Table", - "table_configuration" => "Table Configuration", - "takings_printer" => "Receipt Printer", - "tax" => "Tax", - "tax_category" => "Tax Category", - "tax_category_duplicate" => "The entered tax category already exists.", - "tax_category_invalid_chars" => "The entered tax category is invalid.", - "tax_category_required" => "The tax category is required.", - "tax_category_used" => "Tax category cannot be deleted because it is being used.", - "tax_configuration" => "Tax Configuration", - "tax_decimals" => "Tax Decimals", - "tax_id" => "Tax Id", - "tax_included" => "Tax Included", - "theme" => "Theme", - "theme_preview" => "", - "thousands_separator" => "Thousands Separator", - "timezone" => "Timezone", - "timezone_error" => "", - "top" => "Top", - "use_destination_based_tax" => "Use Destination Based Tax", - "user_timezone" => "", - "website" => "Website", - "wholesale_markup" => "", - "work_order_enable" => "Work Order Support", - "work_order_format" => "Work Order Format", + "address" => "Firma adresse", + "address_required" => "Firma adresse er et obligatorisk felt.", + "all_set" => "All file permissions are set correctly!", + "allow_duplicate_barcodes" => "Tillad duplikatstregkoder", + "apostrophe" => "apostrof", + "backup_button" => "Backup", + "backup_database" => "Backup Database", + "barcode" => "Stregkode", + "barcode_company" => "Firmanavn", + "barcode_configuration" => "Stregkode konfiguration", + "barcode_content" => "Stregkode indhold", + "barcode_first_row" => "Række 1", + "barcode_font" => "Skrifttype", + "barcode_formats" => "Inputformater", + "barcode_generate_if_empty" => "Generer hvis tom.", + "barcode_height" => "Højde (px)", + "barcode_id" => "Genstands Id/navn", + "barcode_info" => "Information om stregkode konfiguration", + "barcode_layout" => "Stregkode layout", + "barcode_name" => "Navn", + "barcode_number" => "Stregkode", + "barcode_number_in_row" => "Nummer i rækken", + "barcode_page_cellspacing" => "Vis sidens celleafstand.", + "barcode_page_width" => "Vis sidens bredde", + "barcode_price" => "Pris", + "barcode_second_row" => "Række 2", + "barcode_third_row" => "Række 3", + "barcode_tooltip" => "Advarsel: Denne funktion kan forårsage, at duplikerede genstande vil blive importeret eller oprettet. Anvend ikke hvis du ikke vil have duplikerede stregkoder.", + "barcode_type" => "Stregkode type", + "barcode_width" => "Bredde (px)", + "bottom" => "Bund", + "cash_button" => "", + "cash_button_1" => "", + "cash_button_2" => "", + "cash_button_3" => "", + "cash_button_4" => "", + "cash_button_5" => "", + "cash_button_6" => "", + "cash_decimals" => "Kontante decimaler", + "cash_decimals_tooltip" => "Hvis kontante decimaler og valuta decimaler er de samme, kan kontanterne ikke rundes op.", + "cash_rounding" => "Kontant afrunding", + "category_dropdown" => "", + "center" => "Centrum", + "change_apperance_tooltip" => "", + "comma" => "Komma", + "company" => "Firma navn", + "company_avatar" => "", + "company_change_image" => "Skift billede", + "company_logo" => "Firma logo", + "company_remove_image" => "Fjern billede", + "company_required" => "Firma navn er et obligatorisk", + "company_select_image" => "Vælg billede", + "company_website_url" => "Firma hjemmeside er ikke en gyldig URL (http://...).", + "country_codes" => "Landekoder", + "country_codes_tooltip" => "Kommasepareret liste af landekoder til nominatim adresse søgning.", + "currency_code" => "Valuta kode", + "currency_decimals" => "Valuta decimaler", + "currency_symbol" => "Valuta symbol", + "current_employee_only" => "", + "customer_reward" => "Belønning", + "customer_reward_duplicate" => "Belønning skal være unik.", + "customer_reward_enable" => "Aktiver kunde belønninger", + "customer_reward_invalid_chars" => "Belønning må ikke indholde '_'", + "customer_reward_required" => "Belønning er et obligatorisk felt", + "customer_sales_tax_support" => "", + "date_or_time_format" => "Dato- og tidfilter", + "datetimeformat" => "Dato og tid format", + "decimal_point" => "Decimaltegn", + "default_barcode_font_size_number" => "Standard stregkode skriftstørrelse skal være et tal", + "default_barcode_font_size_required" => "Standard stregkode skriftstørrelse er et obligatorisk felt", + "default_barcode_height_number" => "Standard stregkode højde skal være et tal", + "default_barcode_height_required" => "Standard stegkode højde er et obligatorisk felt", + "default_barcode_num_in_row_number" => "Standard stregkode tal i en række skal være et tal", + "default_barcode_num_in_row_required" => "Standard stregkode tal i en række er et obligatorisk felt", + "default_barcode_page_cellspacing_number" => "Standard stregkodeside-celleafstand skal være et tal", + "default_barcode_page_cellspacing_required" => "Standard stegkodeside-celleafstand er et obligatorisk felt", + "default_barcode_page_width_number" => "Standard stregkode side bredde skal være et tal", + "default_barcode_page_width_required" => "Standard stregkode side bredde er et obligatorisk felt", + "default_barcode_width_number" => "Standard stregkode bredde skal være et tal", + "default_barcode_width_required" => "Standard stregkode bredde er et obligatorisk felt", + "default_item_columns" => "Standard synlige genstands-kolonner", + "default_origin_tax_code" => "Standard oprindelse af afgiftskode", + "default_receivings_discount" => "Standard modtagelsesrabat", + "default_receivings_discount_number" => "Standard modtagelsesrabat skal være et tal", + "default_receivings_discount_required" => "Standard modtagelsesrabat er et obligatorisk felt", + "default_sales_discount" => "Standard salgsrabat", + "default_sales_discount_number" => "Standard salgsrabat skal være et tal", + "default_sales_discount_required" => "Standard salgsrabat er et obligatorisk felt", + "default_tax_category" => "Standard afgiftskategori", + "default_tax_code" => "Standard afgiftskode", + "default_tax_jurisdiction" => "Standard afgift jurisdiktion", + "default_tax_name_number" => "Standard afgiftsnavn skal være en streng", + "default_tax_name_required" => "Standard afgiftsnavn er et obligatorisk felt", + "default_tax_rate" => "Standard afgiftsrate %", + "default_tax_rate_1" => "Afgift 1 procent", + "default_tax_rate_2" => "Afgift 2 procent", + "default_tax_rate_3" => "", + "default_tax_rate_number" => "Standard afgiftsrate skal være et tal", + "default_tax_rate_required" => "Standard afgiftsrate er et obligatorisk felt", + "derive_sale_quantity" => "Tillad afledt salgsmængde", + "derive_sale_quantity_tooltip" => "Hvis markeret, vil en ny varetype blive stillet til rådighed for varer bestilt med et udvidet beløb", + "dinner_table" => "Tabel", + "dinner_table_duplicate" => "Tabel skal være unik", + "dinner_table_enable" => "Enable Dinner Tables", + "dinner_table_invalid_chars" => "Table Name can not contain '_'.", + "dinner_table_required" => "Table is a required field.", + "dot" => "punktum", + "email" => "Email", + "email_configuration" => "Email konfiguration", + "email_mailpath" => "Stig til Sendmail", + "email_protocol" => "Protokol", + "email_receipt_check_behaviour" => "Email kvitteringsfelt", + "email_receipt_check_behaviour_always" => "Altid markeret", + "email_receipt_check_behaviour_last" => "Husk sidste valg", + "email_receipt_check_behaviour_never" => "Aldrig markeret", + "email_smtp_crypto" => "SMTP Kryptering", + "email_smtp_host" => "SMTP Server", + "email_smtp_pass" => "SMTP Kodeord", + "email_smtp_port" => "SMTP Port", + "email_smtp_timeout" => "SMTP Timeout (sekunder)", + "email_smtp_user" => "SMTP Brugernavn", + "enable_avatar" => "", + "enable_avatar_tooltip" => "", + "enable_dropdown_tooltip" => "", + "enable_new_look" => "", + "enable_right_bar" => "", + "enable_right_bar_tooltip" => "", + "enforce_privacy" => "Håndhæv privathed", + "enforce_privacy_tooltip" => "Beskyt kunders privatliv, der håndhæver datascrambling i tilfælde af, at deres data bliver slettet", + "fax" => "Fax", + "file_perm" => "There are problems with file permissions please fix and reload this page.", + "financial_year" => "Fiscal Year Start", + "financial_year_apr" => "1st of April", + "financial_year_aug" => "1st of August", + "financial_year_dec" => "1st of December", + "financial_year_feb" => "1st of February", + "financial_year_jan" => "1st of January", + "financial_year_jul" => "1st of July", + "financial_year_jun" => "1st of June", + "financial_year_mar" => "1st of March", + "financial_year_may" => "1st of May", + "financial_year_nov" => "1st of November", + "financial_year_oct" => "1st of October", + "financial_year_sep" => "1st of September", + "floating_labels" => "", + "gcaptcha_enable" => "Login Page reCAPTCHA", + "gcaptcha_secret_key" => "reCAPTCHA Secret Key", + "gcaptcha_secret_key_required" => "reCAPTCHA Secret Key is a required field", + "gcaptcha_site_key" => "reCAPTCHA Site Key", + "gcaptcha_site_key_required" => "reCAPTCHA Site Key is a required field", + "gcaptcha_tooltip" => "Protect the Login page with Google reCAPTCHA, click the icon for an API key pair.", + "general" => "General", + "general_configuration" => "General Configuration", + "giftcard_number" => "Gift Card Number", + "giftcard_random" => "Generate Random", + "giftcard_series" => "Generate in Series", + "image_allowed_file_types" => "", + "image_max_height_tooltip" => "", + "image_max_size_tooltip" => "", + "image_max_width_tooltip" => "", + "image_restrictions" => "", + "include_hsn" => "Include Support for HSN Codes", + "info" => "Information", + "info_configuration" => "Store Information", + "input_groups" => "", + "integrations" => "Integrations", + "integrations_configuration" => "Third Party Integrations", + "invoice" => "Invoice", + "invoice_configuration" => "Invoice Print Settings", + "invoice_default_comments" => "Default Invoice Comments", + "invoice_email_message" => "Invoice Email Template", + "invoice_enable" => "Enable Invoicing", + "invoice_printer" => "Invoice Printer", + "invoice_type" => "Invoice Type", + "is_readable" => "", + "is_writable" => "is writable, but the permissions are higher than 750.", + "item_markup" => "", + "jsprintsetup_required" => "Warning: This functionality will only work if you have the FireFox jsPrintSetup addon installed. Save anyway?", + "language" => "Language", + "last_used_invoice_number" => "Last used Invoice Number", + "last_used_quote_number" => "Last used Quote Number", + "last_used_work_order_number" => "Last used W/O Number", + "left" => "Left", + "license" => "License", + "license_configuration" => "License Statement", + "line_sequence" => "Line Sequence", + "lines_per_page" => "Lines per Page", + "lines_per_page_number" => "Lines per Page must be a number.", + "lines_per_page_required" => "Lines per Page is a required field.", + "locale" => "Localization", + "locale_configuration" => "Localization Configuration", + "locale_info" => "Localization Configuration Information", + "location" => "Stock", + "location_configuration" => "Stock Locations", + "location_info" => "Location Configuration Information", + "login_form" => "", + "logout" => "Do you want to make a backup before logging out? Click [OK] to backup or [Cancel] to logout.", + "mailchimp" => "Mailchimp", + "mailchimp_api_key" => "Mailchimp API Key", + "mailchimp_configuration" => "Mailchimp Configuration", + "mailchimp_key_successfully" => "API Key is valid.", + "mailchimp_key_unsuccessfully" => "API Key is invalid.", + "mailchimp_lists" => "Mailchimp List(s)", + "mailchimp_tooltip" => "Click the icon for an API Key.", + "message" => "Message", + "message_configuration" => "Message Configuration", + "msg_msg" => "Saved Text Message", + "msg_msg_placeholder" => "If you wish to use a SMS template save your message here, otherwise leave the box blank.", + "msg_pwd" => "SMS-API Password", + "msg_pwd_required" => "SMS-API Password is a required field", + "msg_src" => "SMS-API Sender ID", + "msg_src_required" => "SMS-API Sender ID is a required field", + "msg_uid" => "SMS-API Username", + "msg_uid_required" => "SMS-API Username is a required field", + "multi_pack_enabled" => "Multiple Packages per Item", + "no_risk" => "No security/vulnerability risks.", + "none" => "none", + "notify_alignment" => "Notification Popup Position", + "number_format" => "Number Format", + "number_locale" => "Localization", + "number_locale_invalid" => "The entered locale is invalid. Check the link in the tooltip to find a valid locale.", + "number_locale_required" => "Number Locale is a required field.", + "number_locale_tooltip" => "Find a suitable locale through this link.", + "os_timezone" => "", + "ospos_info" => "OSPOS Installation Info", + "payment_options_order" => "Payment Options Order", + "perm_risk" => "Permissions higher than 750 leaves this software at risk.", + "phone" => "Company Phone", + "phone_required" => "Company Phone is a required field.", + "print_bottom_margin" => "Margin Bottom", + "print_bottom_margin_number" => "Margin Bottom must be a number.", + "print_bottom_margin_required" => "Margin Bottom is a required field.", + "print_delay_autoreturn" => "Autoreturn to Sale delay", + "print_delay_autoreturn_number" => "Autoreturn to Sale delay is a required field.", + "print_delay_autoreturn_required" => "Autoreturn to Sale delay must be a number.", + "print_footer" => "Print Browser Footer", + "print_header" => "Print Browser Header", + "print_left_margin" => "Margin Left", + "print_left_margin_number" => "Margin Left must be a number.", + "print_left_margin_required" => "Margin Left is a required field.", + "print_receipt_check_behaviour" => "Print Receipt checkbox", + "print_receipt_check_behaviour_always" => "Always checked", + "print_receipt_check_behaviour_last" => "Remember last selection", + "print_receipt_check_behaviour_never" => "Always unchecked", + "print_right_margin" => "Margin Right", + "print_right_margin_number" => "Margin Right must be a number.", + "print_right_margin_required" => "Margin Right is a required field.", + "print_silently" => "Show Print Dialog", + "print_top_margin" => "Margin Top", + "print_top_margin_number" => "Margin Top must be a number.", + "print_top_margin_required" => "Margin Top is a required field.", + "quantity_decimals" => "Quantity Decimals", + "quick_cash_enable" => "", + "quote_default_comments" => "Default Quote Comments", + "receipt" => "Receipt", + "receipt_category" => "", + "receipt_configuration" => "Receipt Print Settings", + "receipt_default" => "Default", + "receipt_font_size" => "Font Size", + "receipt_font_size_number" => "Font Size must be a number.", + "receipt_font_size_required" => "Font Size is a required field.", + "receipt_info" => "Receipt Configuration Information", + "receipt_printer" => "Ticket Printer", + "receipt_short" => "Short", + "receipt_show_company_name" => "Show Company Name", + "receipt_show_description" => "Show Description", + "receipt_show_serialnumber" => "Show Serial Number", + "receipt_show_tax_ind" => "Show Tax Indicator", + "receipt_show_taxes" => "Show Taxes", + "receipt_show_total_discount" => "Show Total Discount", + "receipt_template" => "Receipt Template", + "receiving_calculate_average_price" => "Calc avg. Price (Receiving)", + "recv_invoice_format" => "Receivings Invoice Format", + "register_mode_default" => "Default Register Mode", + "report_an_issue" => "", + "return_policy_required" => "Return policy is a required field.", + "reward" => "Reward", + "reward_configuration" => "Reward Configuration", + "right" => "Right", + "sales_invoice_format" => "Sales Invoice Format", + "sales_quote_format" => "Sales Quote Format", + "saved_successfully" => "Configuration save successful.", + "saved_unsuccessfully" => "Configuration save failed.", + "security_issue" => "Security Vulnerability Warning", + "server_notice" => "Please use the below info for issue reporting.", + "service_charge" => "", + "show_due_enable" => "", + "show_office_group" => "Show office icon", + "statistics" => "Send Statistics", + "statistics_tooltip" => "Send statistics for development and feature improvement purposes.", + "stock_location" => "Stock location", + "stock_location_duplicate" => "Stock Location must be unique.", + "stock_location_invalid_chars" => "Stock Location can not contain '_'.", + "stock_location_required" => "Stock location is a required field.", + "suggestions_fifth_column" => "", + "suggestions_first_column" => "Column 1", + "suggestions_fourth_column" => "", + "suggestions_layout" => "Search Suggestions Layout", + "suggestions_second_column" => "Column 2", + "suggestions_third_column" => "Column 3", + "system_conf" => "Setup & Conf", + "system_info" => "System Info", + "table" => "Table", + "table_configuration" => "Table Configuration", + "takings_printer" => "Receipt Printer", + "tax" => "Tax", + "tax_category" => "Tax Category", + "tax_category_duplicate" => "The entered tax category already exists.", + "tax_category_invalid_chars" => "The entered tax category is invalid.", + "tax_category_required" => "The tax category is required.", + "tax_category_used" => "Tax category cannot be deleted because it is being used.", + "tax_configuration" => "Tax Configuration", + "tax_decimals" => "Tax Decimals", + "tax_id" => "Tax Id", + "tax_included" => "Tax Included", + "theme" => "Theme", + "theme_preview" => "", + "thousands_separator" => "Thousands Separator", + "timezone" => "Timezone", + "timezone_error" => "", + "top" => "Top", + "use_destination_based_tax" => "Use Destination Based Tax", + "user_timezone" => "", + "website" => "Website", + "wholesale_markup" => "", + "work_order_enable" => "Work Order Support", + "work_order_format" => "Work Order Format", ]; diff --git a/app/Language/da/Customers.php b/app/Language/da/Customers.php index 306faf3fc..f092a647a 100644 --- a/app/Language/da/Customers.php +++ b/app/Language/da/Customers.php @@ -1,56 +1,56 @@ "Account #", - "account_number_duplicate" => "Account Number is already present in the database.", - "available_points" => "Available Points", - "available_points_value" => "", - "average" => "Average spent", - "avg_discount" => "Average discount", - "basic_information" => "Information", - "cannot_be_deleted" => "Could not delete selected customers, one or more of the selected customers has sales.", - "company_name" => "Company", - "confirm_delete" => "Are you sure you want to delete the selected customer(s)?", - "confirm_restore" => "Are you sure you want to restore selected customers(s)?", - "consent" => "Registration consent", - "consent_required" => "Registration consent is a required field.", - "csv_import_failed" => "CSV import failed", - "csv_import_nodata_wrongformat" => "The uploaded file has no data or is incorrectly formatted.", - "csv_import_partially_failed" => "Customer import successful with some failures:", - "csv_import_success" => "Customer import successful.", - "customer" => "Customer", - "date" => "Date", - "discount" => "Discount", - "discount_fixed" => "Fixed Discount", - "discount_percent" => "Percentage Discount", - "discount_type" => "Discount Type", - "email_duplicate" => "Email Address is already present in the database.", - "employee" => "Employee", - "error_adding_updating" => "Customer add or update failed.", - "import_items_csv" => "Customer Import from CSV", - "mailchimp_activity_click" => "Email click", - "mailchimp_activity_lastopen" => "Last open email", - "mailchimp_activity_open" => "Email open", - "mailchimp_activity_total" => "Email sent", - "mailchimp_activity_unopen" => "Email unopen", - "mailchimp_email_client" => "Email client", - "mailchimp_info" => "Mailchimp", - "mailchimp_member_rating" => "Rating", - "mailchimp_status" => "Status", - "mailchimp_vip" => "VIP", - "max" => "Max. spent", - "min" => "Min. spent", - "new" => "New Customer", - "none_selected" => "You have not selected any customer(s) to delete.", - "one_or_multiple" => "customer(s)", - "quantity" => "Quantity", - "stats_info" => "Stats", - "successful_adding" => "You have successfully added customer", - "successful_deleted" => "You have successfully deleted", - "successful_updating" => "You have successfully updated customer", - "tax_code" => "Tax Code", - "tax_id" => "Tax Id", - "taxable" => "Taxable", - "total" => "Total spent", - "update" => "Update Customer", - "rewards_package" => "Rewards Package", + "account_number" => "Account #", + "account_number_duplicate" => "Account Number is already present in the database.", + "available_points" => "Available Points", + "available_points_value" => "", + "average" => "Average spent", + "avg_discount" => "Average discount", + "basic_information" => "Information", + "cannot_be_deleted" => "Could not delete selected customers, one or more of the selected customers has sales.", + "company_name" => "Company", + "confirm_delete" => "Are you sure you want to delete the selected customer(s)?", + "confirm_restore" => "Are you sure you want to restore selected customers(s)?", + "consent" => "Registration consent", + "consent_required" => "Registration consent is a required field.", + "csv_import_failed" => "CSV import failed", + "csv_import_nodata_wrongformat" => "The uploaded file has no data or is incorrectly formatted.", + "csv_import_partially_failed" => "Customer import successful with some failures:", + "csv_import_success" => "Customer import successful.", + "customer" => "Customer", + "date" => "Date", + "discount" => "Discount", + "discount_fixed" => "Fixed Discount", + "discount_percent" => "Percentage Discount", + "discount_type" => "Discount Type", + "email_duplicate" => "Email Address is already present in the database.", + "employee" => "Employee", + "error_adding_updating" => "Customer add or update failed.", + "import_items_csv" => "Customer Import from CSV", + "mailchimp_activity_click" => "Email click", + "mailchimp_activity_lastopen" => "Last open email", + "mailchimp_activity_open" => "Email open", + "mailchimp_activity_total" => "Email sent", + "mailchimp_activity_unopen" => "Email unopen", + "mailchimp_email_client" => "Email client", + "mailchimp_info" => "Mailchimp", + "mailchimp_member_rating" => "Rating", + "mailchimp_status" => "Status", + "mailchimp_vip" => "VIP", + "max" => "Max. spent", + "min" => "Min. spent", + "new" => "New Customer", + "none_selected" => "You have not selected any customer(s) to delete.", + "one_or_multiple" => "customer(s)", + "quantity" => "Quantity", + "stats_info" => "Stats", + "successful_adding" => "You have successfully added customer", + "successful_deleted" => "You have successfully deleted", + "successful_updating" => "You have successfully updated customer", + "tax_code" => "Tax Code", + "tax_id" => "Tax Id", + "taxable" => "Taxable", + "total" => "Total spent", + "update" => "Update Customer", + "rewards_package" => "Rewards Package", ]; diff --git a/app/Language/da/Datepicker.php b/app/Language/da/Datepicker.php index 222a616d2..3ce895ebb 100644 --- a/app/Language/da/Datepicker.php +++ b/app/Language/da/Datepicker.php @@ -1,23 +1,23 @@ "All Time", - "apply" => "Apply", - "cancel" => "Cancel", - "custom" => "Custom", - "from" => "From", - "last_30" => "Last 30 Days", - "last_7" => "Last 7 Days", - "last_financial_year" => "Last Fiscal Year", - "last_month" => "Last Month", - "last_year" => "Last Year", - "same_month_last_year" => "Same Month Last Year", - "same_month_to_same_day_last_year" => "Same Month To Same Day Last Year", - "this_financial_year" => "Current Fiscal Year", - "this_month" => "Current Month", - "this_year" => "Current Year", - "to" => "To", - "today" => "Today", - "today_last_year" => "Today Last Year", - "weekstart" => "0", - "yesterday" => "Yesterday", + "all_time" => "All Time", + "apply" => "Apply", + "cancel" => "Cancel", + "custom" => "Custom", + "from" => "From", + "last_30" => "Last 30 Days", + "last_7" => "Last 7 Days", + "last_financial_year" => "Last Fiscal Year", + "last_month" => "Last Month", + "last_year" => "Last Year", + "same_month_last_year" => "Same Month Last Year", + "same_month_to_same_day_last_year" => "Same Month To Same Day Last Year", + "this_financial_year" => "Current Fiscal Year", + "this_month" => "Current Month", + "this_year" => "Current Year", + "to" => "To", + "today" => "Today", + "today_last_year" => "Today Last Year", + "weekstart" => "0", + "yesterday" => "Yesterday", ]; diff --git a/app/Language/da/Employees.php b/app/Language/da/Employees.php index 01ca9ccb1..fa4adc378 100644 --- a/app/Language/da/Employees.php +++ b/app/Language/da/Employees.php @@ -1,44 +1,44 @@ "", - "basic_information" => "Information", - "cannot_be_deleted" => "Unable to delete selected employee(s), one or more of the has processed sales or you are trying to delete your account.", - "change_employee" => "", - "change_password" => "Change Password", - "clerk" => "", - "commission" => "", - "confirm_delete" => "Are you sure you want to delete the selected employee(s)?", - "confirm_restore" => "Are you sure you want to restore selected employee(s)?", - "current_password" => "Current Password", - "current_password_invalid" => "Current Password is invalid.", - "employee" => "Employee", - "error_adding_updating" => "Employee add or update failed.", - "error_deleting_demo_admin" => "You can not delete the demo admin user.", - "error_updating_demo_admin" => "You can not change the demo admin user.", - "language" => "Language", - "login_info" => "Login", - "manager" => "", - "new" => "New Employee", - "none_selected" => "You have not selected any employee(s) to delete.", - "one_or_multiple" => "employee(s)", - "password" => "Password", - "password_minlength" => "Password must be at least 8 characters in length.", - "password_must_match" => "Passwords do not match.", - "password_not_must_match" => "Current password and new password must be unique.", - "password_required" => "Password is required.", - "permission_desc" => "Check the boxes below to grant access to modules.", - "permission_info" => "Permissions", - "repeat_password" => "Password Again", - "subpermission_required" => "Add at least one grant for each module.", - "successful_adding" => "Employee add successful.", - "successful_change_password" => "Password change successful.", - "successful_deleted" => "You have successfully deleted", - "successful_updating" => "You have successfully updated employee", - "system_language" => "System Language", - "unsuccessful_change_password" => "Password change failed.", - "update" => "Update Employee", - "username" => "Username", - "username_duplicate" => "", - "username_minlength" => "Username must be at least 5 characters in length.", - "username_required" => "Username is a required field.", + "administrator" => "", + "basic_information" => "Information", + "cannot_be_deleted" => "Unable to delete selected employee(s), one or more of the has processed sales or you are trying to delete your account.", + "change_employee" => "", + "change_password" => "Change Password", + "clerk" => "", + "commission" => "", + "confirm_delete" => "Are you sure you want to delete the selected employee(s)?", + "confirm_restore" => "Are you sure you want to restore selected employee(s)?", + "current_password" => "Current Password", + "current_password_invalid" => "Current Password is invalid.", + "employee" => "Employee", + "error_adding_updating" => "Employee add or update failed.", + "error_deleting_demo_admin" => "You can not delete the demo admin user.", + "error_updating_demo_admin" => "You can not change the demo admin user.", + "language" => "Language", + "login_info" => "Login", + "manager" => "", + "new" => "New Employee", + "none_selected" => "You have not selected any employee(s) to delete.", + "one_or_multiple" => "employee(s)", + "password" => "Password", + "password_minlength" => "Password must be at least 8 characters in length.", + "password_must_match" => "Passwords do not match.", + "password_not_must_match" => "Current password and new password must be unique.", + "password_required" => "Password is required.", + "permission_desc" => "Check the boxes below to grant access to modules.", + "permission_info" => "Permissions", + "repeat_password" => "Password Again", + "subpermission_required" => "Add at least one grant for each module.", + "successful_adding" => "Employee add successful.", + "successful_change_password" => "Password change successful.", + "successful_deleted" => "You have successfully deleted", + "successful_updating" => "You have successfully updated employee", + "system_language" => "System Language", + "unsuccessful_change_password" => "Password change failed.", + "update" => "Update Employee", + "username" => "Username", + "username_duplicate" => "", + "username_minlength" => "Username must be at least 5 characters in length.", + "username_required" => "Username is a required field.", ]; diff --git a/app/Language/da/Enum.php b/app/Language/da/Enum.php index 6189977b6..5068622a4 100644 --- a/app/Language/da/Enum.php +++ b/app/Language/da/Enum.php @@ -1,10 +1,10 @@ "Half Down", - "half_even" => "Half Even", - "half_five" => "Half Five", - "half_odd" => "Half Odd", - "half_up" => "Half Up", - "round_down" => "Round Down", - "round_up" => "Round Up", + "half_down" => "Half Down", + "half_even" => "Half Even", + "half_five" => "Half Five", + "half_odd" => "Half Odd", + "half_up" => "Half Up", + "round_down" => "Round Down", + "round_up" => "Round Up", ]; diff --git a/app/Language/da/Error.php b/app/Language/da/Error.php index ea2c39425..26a6f58b2 100644 --- a/app/Language/da/Error.php +++ b/app/Language/da/Error.php @@ -1,5 +1,5 @@ "You do not have permission to access the module named", - "unknown" => "Unexpected error", + "no_permission_module" => "You do not have permission to access the module named", + "unknown" => "Unexpected error", ]; diff --git a/app/Language/da/Expenses.php b/app/Language/da/Expenses.php index a818c8c0a..a4eff51fd 100644 --- a/app/Language/da/Expenses.php +++ b/app/Language/da/Expenses.php @@ -1,50 +1,50 @@ "Add Expense", - "amount" => "Amount", - "amount_number" => "Amount must be a number", - "amount_required" => "Expense Amount required", - "by_category" => "Category", - "cannot_be_deleted" => "Could not delete Category Expense(s)", - "cash" => "Cash", - "cash_filter" => "Cash", - "categories_name" => "Category", - "category_required" => "category is a required field", - "check" => "Check", - "check_filter" => "Check", - "confirm_delete" => "Are you sure you want to delete the selected Expense?", - "confirm_restore" => "Are you sure you want to restore the selected Expenses(s)?", - "credit" => "Credit Card", - "credit_filter" => "Credit Card", - "date" => "Date", - "date_number" => "date must be a number", - "date_required" => "date is a required field", - "debit" => "Debit Card", - "debit_filter" => "Debit Card", - "description" => "Description", - "due" => "Due", - "due_filter" => "Due", - "employee" => "Created By", - "error_adding_updating" => "Error adding/updating Expense", - "expense_id" => "Id", - "expenses_employee" => "Employee", - "info" => "Expense Info", - "ip_address" => "", - "is_deleted" => "Deleted", - "name_required" => "Expense Name required", - "new" => "New Expense", - "new_supplier" => "", - "no_expenses_to_display" => "There are no Expenses to display", - "none_selected" => "You have not selected any Expense", - "one_or_multiple" => "Expense(s)", - "payment" => "Payment Type", - "start_typing_supplier_name" => "Start Typing Supplier's name...", - "successful_adding" => "Expense add successful", - "successful_deleted" => "Expense delete successful", - "successful_updating" => "Expense update successful", - "supplier_name" => "Supplier", - "supplier_tax_code" => "Tax Code", - "tax_amount" => "Tax", - "tax_amount_number" => "", - "update" => "Update Expense", + "add_item" => "Add Expense", + "amount" => "Amount", + "amount_number" => "Amount must be a number", + "amount_required" => "Expense Amount required", + "by_category" => "Category", + "cannot_be_deleted" => "Could not delete Category Expense(s)", + "cash" => "Cash", + "cash_filter" => "Cash", + "categories_name" => "Category", + "category_required" => "category is a required field", + "check" => "Check", + "check_filter" => "Check", + "confirm_delete" => "Are you sure you want to delete the selected Expense?", + "confirm_restore" => "Are you sure you want to restore the selected Expenses(s)?", + "credit" => "Credit Card", + "credit_filter" => "Credit Card", + "date" => "Date", + "date_number" => "date must be a number", + "date_required" => "date is a required field", + "debit" => "Debit Card", + "debit_filter" => "Debit Card", + "description" => "Description", + "due" => "Due", + "due_filter" => "Due", + "employee" => "Created By", + "error_adding_updating" => "Error adding/updating Expense", + "expense_id" => "Id", + "expenses_employee" => "Employee", + "info" => "Expense Info", + "ip_address" => "", + "is_deleted" => "Deleted", + "name_required" => "Expense Name required", + "new" => "New Expense", + "new_supplier" => "", + "no_expenses_to_display" => "There are no Expenses to display", + "none_selected" => "You have not selected any Expense", + "one_or_multiple" => "Expense(s)", + "payment" => "Payment Type", + "start_typing_supplier_name" => "Start Typing Supplier's name...", + "successful_adding" => "Expense add successful", + "successful_deleted" => "Expense delete successful", + "successful_updating" => "Expense update successful", + "supplier_name" => "Supplier", + "supplier_tax_code" => "Tax Code", + "tax_amount" => "Tax", + "tax_amount_number" => "", + "update" => "Update Expense", ]; diff --git a/app/Language/da/Expenses_categories.php b/app/Language/da/Expenses_categories.php index 7e1f40570..c87629a51 100644 --- a/app/Language/da/Expenses_categories.php +++ b/app/Language/da/Expenses_categories.php @@ -1,22 +1,22 @@ "Expense Category name required", - "add_item" => "Add Category", - "cannot_be_deleted" => "Could not delete Category Expense(s)", - "category_id" => "Id", - "confirm_delete" => "Are you sure you want to delete the selected Expense Category?", - "confirm_restore" => "Are you sure you want to restore the selected Expense Category?", - "description" => "Category Description", - "error_adding_updating" => "Error adding/updating Expense Category", - "info" => "Category Expense Info", - "name" => "Category Name", - "new" => "New Category", - "no_expenses_categories_to_display" => "No Category to display", - "none_selected" => "You have not selected any Category Expense", - "one_or_multiple" => "Category Expense", - "quantity" => "Quantity", - "successful_adding" => "Expense Category add successful", - "successful_deleted" => "Expense Category delete successful", - "successful_updating" => "Expense Category update successful", - "update" => "Update Category", + "category_name_required" => "Expense Category name required", + "add_item" => "Add Category", + "cannot_be_deleted" => "Could not delete Category Expense(s)", + "category_id" => "Id", + "confirm_delete" => "Are you sure you want to delete the selected Expense Category?", + "confirm_restore" => "Are you sure you want to restore the selected Expense Category?", + "description" => "Category Description", + "error_adding_updating" => "Error adding/updating Expense Category", + "info" => "Category Expense Info", + "name" => "Category Name", + "new" => "New Category", + "no_expenses_categories_to_display" => "No Category to display", + "none_selected" => "You have not selected any Category Expense", + "one_or_multiple" => "Category Expense", + "quantity" => "Quantity", + "successful_adding" => "Expense Category add successful", + "successful_deleted" => "Expense Category delete successful", + "successful_updating" => "Expense Category update successful", + "update" => "Update Category", ]; diff --git a/app/Language/da/Giftcards.php b/app/Language/da/Giftcards.php index 78398b03a..af8999ce0 100644 --- a/app/Language/da/Giftcards.php +++ b/app/Language/da/Giftcards.php @@ -1,71 +1,71 @@ "Inventory to add or subtract.", - "allow_alt_description" => "Allow Alternate Description", - "bulk_edit" => "Bulk Edit", - "cannot_be_deleted" => "Could not delete selected Gift Card(s), one or more of the selected Gift Cards has sales.", - "cannot_find_giftcard" => "Gift Card not found.", - "cannot_use" => "Gift Card {0} cannot be used for this sale: invalid Customer.", - "card_value" => "Value", - "category" => "Category", - "change_all_to_allow_alt_desc" => "Allow alternate description for all.", - "change_all_to_not_allow_allow_desc" => "Do not allow alternate description for all.", - "change_all_to_serialized" => "Change All To Serialized", - "change_all_to_unserialized" => "Change All To Unserialized", - "confirm_bulk_edit" => "Are you sure you want to edit the selected Gift Card(s)?", - "confirm_delete" => "Are you sure you want to delete the selected Gift Card(s)?", - "confirm_restore" => "Are you sure you want to restore selected Gift Card(s)?", - "cost_price" => "Wholesale Price", - "count" => "Update Inventory", - "csv_import_failed" => "CSV import failed.", - "current_quantity" => "Current Quantity", - "description" => "Description", - "details_count" => "Inventory Count Details", - "do_nothing" => "Do Nothing", - "edit_fields_you_want_to_update" => "Edit desired fields for selected Gift Card(s).", - "edit_multiple_giftcards" => "Edit Multiple Gift Cards.", - "error_adding_updating" => "Gift Card add or update failed.", - "error_updating_multiple" => "Gift Card(s) update failed.", - "generate_barcodes" => "Generate Barcodes", - "giftcard" => "Gift Card", - "giftcard_number" => "Gift Card Number", - "info_provided_by" => "Info provided by", - "inventory_comments" => "Comments", - "is_serialized" => "Gift Card has Serial Number", - "low_inventory_giftcards" => "Low Inventory Gift Cards", - "manually_editing_of_quantity" => "Manual Edit of Quantity", - "must_select_giftcard_for_barcode" => "You must select at least one (1) Gift Card to generate barcodes.", - "new" => "New Gift Card", - "no_description_giftcards" => "No Description Gift Cards", - "no_giftcards_to_display" => "No Gift Cards to display.", - "none" => "None", - "none_selected" => "No Gift Card(s) selected to edit.", - "number" => "Gift Card Number must be a number.", - "number_information" => "Gift Card Number", - "number_required" => "Gift Card Number is a required field.", - "one_or_multiple" => "Gift Card(s)", - "person_id" => "Customer", - "quantity" => "Quantity", - "quantity_required" => "Quantity is a required field. Please close (X) to cancel.", - "remaining_balance" => "Gift Card {0} remaining value is {1}!", - "reorder_level" => "Reorder Level", - "retrive_giftcard_info" => "Retrieve Gift Card Info", - "sales_tax_1" => "Sales Tax", - "sales_tax_2" => "Sales Tax 2", - "serialized_giftcards" => "Serialized Gift Cards", - "successful_adding" => "You have successfully added Gift Card", - "successful_bulk_edit" => "You have successfully updated the selected Gift Card(s)", - "successful_deleted" => "You have successfully deleted", - "successful_updating" => "You have successfully updated Gift Card", - "supplier" => "Supplier", - "tax_1" => "Tax 1", - "tax_2" => "Tax 2", - "tax_percent" => "Tax Percent", - "tax_percents" => "Tax Percent(s)", - "unit_price" => "Retail Value", - "upc_database" => "Barcode Database", - "update" => "Update Gift Card", - "use_inventory_menu" => "Use Inventory Menu", - "value" => "Gift Card Value must be a number.", - "value_required" => "Gift Card Value is a required field.", + "add_minus" => "Inventory to add or subtract.", + "allow_alt_description" => "Allow Alternate Description", + "bulk_edit" => "Bulk Edit", + "cannot_be_deleted" => "Could not delete selected Gift Card(s), one or more of the selected Gift Cards has sales.", + "cannot_find_giftcard" => "Gift Card not found.", + "cannot_use" => "Gift Card {0} cannot be used for this sale: invalid Customer.", + "card_value" => "Value", + "category" => "Category", + "change_all_to_allow_alt_desc" => "Allow alternate description for all.", + "change_all_to_not_allow_allow_desc" => "Do not allow alternate description for all.", + "change_all_to_serialized" => "Change All To Serialized", + "change_all_to_unserialized" => "Change All To Unserialized", + "confirm_bulk_edit" => "Are you sure you want to edit the selected Gift Card(s)?", + "confirm_delete" => "Are you sure you want to delete the selected Gift Card(s)?", + "confirm_restore" => "Are you sure you want to restore selected Gift Card(s)?", + "cost_price" => "Wholesale Price", + "count" => "Update Inventory", + "csv_import_failed" => "CSV import failed.", + "current_quantity" => "Current Quantity", + "description" => "Description", + "details_count" => "Inventory Count Details", + "do_nothing" => "Do Nothing", + "edit_fields_you_want_to_update" => "Edit desired fields for selected Gift Card(s).", + "edit_multiple_giftcards" => "Edit Multiple Gift Cards.", + "error_adding_updating" => "Gift Card add or update failed.", + "error_updating_multiple" => "Gift Card(s) update failed.", + "generate_barcodes" => "Generate Barcodes", + "giftcard" => "Gift Card", + "giftcard_number" => "Gift Card Number", + "info_provided_by" => "Info provided by", + "inventory_comments" => "Comments", + "is_serialized" => "Gift Card has Serial Number", + "low_inventory_giftcards" => "Low Inventory Gift Cards", + "manually_editing_of_quantity" => "Manual Edit of Quantity", + "must_select_giftcard_for_barcode" => "You must select at least one (1) Gift Card to generate barcodes.", + "new" => "New Gift Card", + "no_description_giftcards" => "No Description Gift Cards", + "no_giftcards_to_display" => "No Gift Cards to display.", + "none" => "None", + "none_selected" => "No Gift Card(s) selected to edit.", + "number" => "Gift Card Number must be a number.", + "number_information" => "Gift Card Number", + "number_required" => "Gift Card Number is a required field.", + "one_or_multiple" => "Gift Card(s)", + "person_id" => "Customer", + "quantity" => "Quantity", + "quantity_required" => "Quantity is a required field. Please close (X) to cancel.", + "remaining_balance" => "Gift Card {0} remaining value is {1}!", + "reorder_level" => "Reorder Level", + "retrive_giftcard_info" => "Retrieve Gift Card Info", + "sales_tax_1" => "Sales Tax", + "sales_tax_2" => "Sales Tax 2", + "serialized_giftcards" => "Serialized Gift Cards", + "successful_adding" => "You have successfully added Gift Card", + "successful_bulk_edit" => "You have successfully updated the selected Gift Card(s)", + "successful_deleted" => "You have successfully deleted", + "successful_updating" => "You have successfully updated Gift Card", + "supplier" => "Supplier", + "tax_1" => "Tax 1", + "tax_2" => "Tax 2", + "tax_percent" => "Tax Percent", + "tax_percents" => "Tax Percent(s)", + "unit_price" => "Retail Value", + "upc_database" => "Barcode Database", + "update" => "Update Gift Card", + "use_inventory_menu" => "Use Inventory Menu", + "value" => "Gift Card Value must be a number.", + "value_required" => "Gift Card Value is a required field.", ]; diff --git a/app/Language/da/Item_kits.php b/app/Language/da/Item_kits.php index 2f21a4963..370929649 100644 --- a/app/Language/da/Item_kits.php +++ b/app/Language/da/Item_kits.php @@ -1,41 +1,41 @@ "", - "all" => "", - "cannot_be_deleted" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "description" => "", - "discount" => "", - "discount_fixed" => "", - "discount_percent" => "", - "discount_type" => "", - "error_adding_updating" => "", - "find_kit_item" => "", - "info" => "", - "item" => "", - "item_kit_number" => "", - "item_kit_number_duplicate" => "", - "item_number" => "", - "item_number_duplicate" => "", - "items" => "", - "kit" => "", - "kit_and_components" => "", - "kit_and_stock" => "", - "kit_only" => "", - "name" => "", - "new" => "", - "no_item_kits_to_display" => "", - "none_selected" => "", - "one_or_multiple" => "", - "price_option" => "", - "priced_only" => "", - "print_option" => "", - "quantity" => "", - "sequence" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "unit_price" => "", - "update" => "", + "add_item" => "", + "all" => "", + "cannot_be_deleted" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "description" => "", + "discount" => "", + "discount_fixed" => "", + "discount_percent" => "", + "discount_type" => "", + "error_adding_updating" => "", + "find_kit_item" => "", + "info" => "", + "item" => "", + "item_kit_number" => "", + "item_kit_number_duplicate" => "", + "item_number" => "", + "item_number_duplicate" => "", + "items" => "", + "kit" => "", + "kit_and_components" => "", + "kit_and_stock" => "", + "kit_only" => "", + "name" => "", + "new" => "", + "no_item_kits_to_display" => "", + "none_selected" => "", + "one_or_multiple" => "", + "price_option" => "", + "priced_only" => "", + "print_option" => "", + "quantity" => "", + "sequence" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "unit_price" => "", + "update" => "", ]; diff --git a/app/Language/da/Items.php b/app/Language/da/Items.php index 9718385d0..25c0395e0 100644 --- a/app/Language/da/Items.php +++ b/app/Language/da/Items.php @@ -1,120 +1,120 @@ "", - "allow_alt_description" => "", - "amount_entry" => "", - "bulk_edit" => "", - "buy_price_required" => "", - "cannot_be_deleted" => "", - "cannot_find_item" => "", - "categories" => "", - "category" => "", - "category_new" => "", - "category_required" => "", - "change_all_to_allow_alt_desc" => "", - "change_all_to_not_allow_allow_desc" => "", - "change_all_to_serialized" => "", - "change_all_to_unserialized" => "", - "change_image" => "", - "confirm_bulk_edit" => "", - "confirm_bulk_edit_wipe_taxes" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "cost_price" => "", - "cost_price_number" => "", - "cost_price_required" => "", - "count" => "", - "csv_import_failed" => "", - "csv_import_nodata_wrongformat" => "", - "csv_import_partially_failed" => "", - "csv_import_success" => "", - "current_quantity" => "", - "default_pack_name" => "", - "description" => "", - "details_count" => "", - "do_nothing" => "", - "edit" => "", - "edit_fields_you_want_to_update" => "", - "edit_multiple_items" => "", - "empty_upc_items" => "", - "error_adding_updating" => "", - "error_updating_multiple" => "", - "generate_barcodes" => "", - "hsn_code" => "", - "image" => "", - "import_items_csv" => "", - "info_provided_by" => "", - "inventory" => "", - "inventory_CSV_import_quantity" => "", - "inventory_comments" => "", - "inventory_data_tracking" => "", - "inventory_date" => "", - "inventory_employee" => "", - "inventory_in_out_quantity" => "", - "inventory_remarks" => "", - "is_deleted" => "", - "is_printed" => "", - "is_serialized" => "", - "item" => "", - "item_id" => "", - "item_number" => "", - "item_number_duplicate" => "", - "kit" => "", - "location" => "", - "low_inventory_items" => "", - "low_sell_item" => "", - "manually_editing_of_quantity" => "", - "markup" => "", - "name" => "", - "name_required" => "", - "new" => "", - "no_description_items" => "", - "no_items_to_display" => "", - "none" => "", - "none_selected" => "", - "nonstock" => "", - "number_information" => "", - "number_required" => "", - "one_or_multiple" => "", - "pack_name" => "", - "qty_per_pack" => "", - "quantity" => "", - "quantity_number" => "", - "quantity_required" => "", - "receiving_quantity" => "", - "remove_image" => "", - "reorder_level" => "", - "reorder_level_number" => "", - "reorder_level_required" => "", - "retrive_item_info" => "", - "sales_tax_1" => "", - "sales_tax_2" => "", - "search_attributes" => "", - "select_image" => "", - "serialized_items" => "", - "standard" => "", - "stock" => "", - "stock_location" => "", - "stock_type" => "", - "successful_adding" => "", - "successful_bulk_edit" => "", - "successful_deleted" => "", - "successful_updating" => "", - "supplier" => "", - "tax_1" => "", - "tax_2" => "", - "tax_3" => "", - "tax_category" => "", - "tax_percent" => "", - "tax_percent_number" => "", - "tax_percent_required" => "", - "tax_percents" => "", - "temp" => "", - "type" => "", - "unit_price" => "", - "unit_price_number" => "", - "unit_price_required" => "", - "upc_database" => "", - "update" => "", - "use_inventory_menu" => "", + "add_minus" => "", + "allow_alt_description" => "", + "amount_entry" => "", + "bulk_edit" => "", + "buy_price_required" => "", + "cannot_be_deleted" => "", + "cannot_find_item" => "", + "categories" => "", + "category" => "", + "category_new" => "", + "category_required" => "", + "change_all_to_allow_alt_desc" => "", + "change_all_to_not_allow_allow_desc" => "", + "change_all_to_serialized" => "", + "change_all_to_unserialized" => "", + "change_image" => "", + "confirm_bulk_edit" => "", + "confirm_bulk_edit_wipe_taxes" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "cost_price" => "", + "cost_price_number" => "", + "cost_price_required" => "", + "count" => "", + "csv_import_failed" => "", + "csv_import_nodata_wrongformat" => "", + "csv_import_partially_failed" => "", + "csv_import_success" => "", + "current_quantity" => "", + "default_pack_name" => "", + "description" => "", + "details_count" => "", + "do_nothing" => "", + "edit" => "", + "edit_fields_you_want_to_update" => "", + "edit_multiple_items" => "", + "empty_upc_items" => "", + "error_adding_updating" => "", + "error_updating_multiple" => "", + "generate_barcodes" => "", + "hsn_code" => "", + "image" => "", + "import_items_csv" => "", + "info_provided_by" => "", + "inventory" => "", + "inventory_CSV_import_quantity" => "", + "inventory_comments" => "", + "inventory_data_tracking" => "", + "inventory_date" => "", + "inventory_employee" => "", + "inventory_in_out_quantity" => "", + "inventory_remarks" => "", + "is_deleted" => "", + "is_printed" => "", + "is_serialized" => "", + "item" => "", + "item_id" => "", + "item_number" => "", + "item_number_duplicate" => "", + "kit" => "", + "location" => "", + "low_inventory_items" => "", + "low_sell_item" => "", + "manually_editing_of_quantity" => "", + "markup" => "", + "name" => "", + "name_required" => "", + "new" => "", + "no_description_items" => "", + "no_items_to_display" => "", + "none" => "", + "none_selected" => "", + "nonstock" => "", + "number_information" => "", + "number_required" => "", + "one_or_multiple" => "", + "pack_name" => "", + "qty_per_pack" => "", + "quantity" => "", + "quantity_number" => "", + "quantity_required" => "", + "receiving_quantity" => "", + "remove_image" => "", + "reorder_level" => "", + "reorder_level_number" => "", + "reorder_level_required" => "", + "retrive_item_info" => "", + "sales_tax_1" => "", + "sales_tax_2" => "", + "search_attributes" => "", + "select_image" => "", + "serialized_items" => "", + "standard" => "", + "stock" => "", + "stock_location" => "", + "stock_type" => "", + "successful_adding" => "", + "successful_bulk_edit" => "", + "successful_deleted" => "", + "successful_updating" => "", + "supplier" => "", + "tax_1" => "", + "tax_2" => "", + "tax_3" => "", + "tax_category" => "", + "tax_percent" => "", + "tax_percent_number" => "", + "tax_percent_required" => "", + "tax_percents" => "", + "temp" => "", + "type" => "", + "unit_price" => "", + "unit_price_number" => "", + "unit_price_required" => "", + "upc_database" => "", + "update" => "", + "use_inventory_menu" => "", ]; diff --git a/app/Language/da/Login.php b/app/Language/da/Login.php index 4a73810c7..2a18ca41d 100644 --- a/app/Language/da/Login.php +++ b/app/Language/da/Login.php @@ -1,15 +1,15 @@ "", - "go" => "", - "invalid_gcaptcha" => "", - "invalid_installation" => "", - "invalid_username_and_password" => "", - "login" => "", - "logout" => "", - "migration_needed" => "", - "password" => "", - "required_username" => "", - "username" => "", - "welcome" => "", + "gcaptcha" => "", + "go" => "", + "invalid_gcaptcha" => "", + "invalid_installation" => "", + "invalid_username_and_password" => "", + "login" => "", + "logout" => "", + "migration_needed" => "", + "password" => "", + "required_username" => "", + "username" => "", + "welcome" => "", ]; diff --git a/app/Language/da/Messages.php b/app/Language/da/Messages.php index ce3a2e233..3079da504 100644 --- a/app/Language/da/Messages.php +++ b/app/Language/da/Messages.php @@ -1,15 +1,15 @@ "", - "last_name" => "", - "message" => "", - "message_placeholder" => "", - "message_required" => "", - "multiple_phones" => "", - "phone" => "", - "phone_number_required" => "", - "phone_placeholder" => "", - "sms_send" => "", - "successfully_sent" => "", - "unsuccessfully_sent" => "", + "first_name" => "", + "last_name" => "", + "message" => "", + "message_placeholder" => "", + "message_required" => "", + "multiple_phones" => "", + "phone" => "", + "phone_number_required" => "", + "phone_placeholder" => "", + "sms_send" => "", + "successfully_sent" => "", + "unsuccessfully_sent" => "", ]; diff --git a/app/Language/da/Module.php b/app/Language/da/Module.php index f2ad04586..fb277bc95 100644 --- a/app/Language/da/Module.php +++ b/app/Language/da/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "", - "attributes_desc" => "", - "both" => "", - "cashups" => "", - "cashups_desc" => "", - "config" => "", - "config_desc" => "", - "customers" => "", - "customers_desc" => "", - "employees" => "", - "employees_desc" => "", - "expenses" => "", - "expenses_categories" => "", - "expenses_categories_desc" => "", - "expenses_desc" => "", - "giftcards" => "", - "giftcards_desc" => "", - "home" => "", - "home_desc" => "", - "item_kits" => "", - "item_kits_desc" => "", - "items" => "", - "items_desc" => "", - "messages" => "", - "messages_desc" => "", - "migrate" => "", - "migrate_desc" => "", - "office" => "", - "office_desc" => "", - "receivings" => "", - "receivings_desc" => "", - "reports" => "", - "reports_desc" => "", - "sales" => "", - "sales_desc" => "", - "suppliers" => "", - "suppliers_desc" => "", - "taxes" => "", - "taxes_desc" => "", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "", + "attributes_desc" => "", + "both" => "", + "cashups" => "", + "cashups_desc" => "", + "config" => "", + "config_desc" => "", + "customers" => "", + "customers_desc" => "", + "employees" => "", + "employees_desc" => "", + "expenses" => "", + "expenses_categories" => "", + "expenses_categories_desc" => "", + "expenses_desc" => "", + "giftcards" => "", + "giftcards_desc" => "", + "home" => "", + "home_desc" => "", + "item_kits" => "", + "item_kits_desc" => "", + "items" => "", + "items_desc" => "", + "messages" => "", + "messages_desc" => "", + "migrate" => "", + "migrate_desc" => "", + "office" => "", + "office_desc" => "", + "receivings" => "", + "receivings_desc" => "", + "reports" => "", + "reports_desc" => "", + "sales" => "", + "sales_desc" => "", + "suppliers" => "", + "suppliers_desc" => "", + "taxes" => "", + "taxes_desc" => "", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/da/Receivings.php b/app/Language/da/Receivings.php index 4ffca4df7..0936f4851 100644 --- a/app/Language/da/Receivings.php +++ b/app/Language/da/Receivings.php @@ -1,58 +1,58 @@ "", - "cancel_receiving" => "", - "cannot_be_deleted" => "", - "comments" => "", - "complete_receiving" => "", - "confirm_cancel_receiving" => "", - "confirm_delete" => "", - "confirm_finish_receiving" => "", - "confirm_restore" => "", - "cost" => "", - "daily" => "", - "date" => "", - "date_required" => "", - "date_type" => "", - "delete_entire_sale" => "", - "discount" => "", - "edit" => "", - "edit_sale" => "", - "employee" => "", - "error_editing_item" => "", - "error_requisition" => "", - "find_or_scan_item" => "", - "find_or_scan_item_or_receipt" => "", - "id" => "", - "item_name" => "", - "mode" => "", - "new_supplier" => "", - "one_or_multiple" => "", - "print_after_sale" => "", - "quantity" => "", - "receipt" => "", - "receipt_number" => "", - "receiving" => "", - "reference" => "", - "register" => "", - "requisition" => "", - "return" => "", - "select_supplier" => "", - "ship_pack" => "", - "start_typing_supplier_name" => "", - "stock" => "", - "stock_destination" => "", - "stock_locaiton" => "", - "stock_source" => "", - "successfully_deleted" => "", - "successfully_updated" => "", - "supplier" => "", - "supplier_address" => "", - "supplier_email" => "", - "supplier_location" => "", - "total" => "", - "transaction_failed" => "", - "unable_to_add_item" => "", - "unsuccessfully_updated" => "", - "update" => "", + "amount_due" => "", + "cancel_receiving" => "", + "cannot_be_deleted" => "", + "comments" => "", + "complete_receiving" => "", + "confirm_cancel_receiving" => "", + "confirm_delete" => "", + "confirm_finish_receiving" => "", + "confirm_restore" => "", + "cost" => "", + "daily" => "", + "date" => "", + "date_required" => "", + "date_type" => "", + "delete_entire_sale" => "", + "discount" => "", + "edit" => "", + "edit_sale" => "", + "employee" => "", + "error_editing_item" => "", + "error_requisition" => "", + "find_or_scan_item" => "", + "find_or_scan_item_or_receipt" => "", + "id" => "", + "item_name" => "", + "mode" => "", + "new_supplier" => "", + "one_or_multiple" => "", + "print_after_sale" => "", + "quantity" => "", + "receipt" => "", + "receipt_number" => "", + "receiving" => "", + "reference" => "", + "register" => "", + "requisition" => "", + "return" => "", + "select_supplier" => "", + "ship_pack" => "", + "start_typing_supplier_name" => "", + "stock" => "", + "stock_destination" => "", + "stock_locaiton" => "", + "stock_source" => "", + "successfully_deleted" => "", + "successfully_updated" => "", + "supplier" => "", + "supplier_address" => "", + "supplier_email" => "", + "supplier_location" => "", + "total" => "", + "transaction_failed" => "", + "unable_to_add_item" => "", + "unsuccessfully_updated" => "", + "update" => "", ]; diff --git a/app/Language/da/Reports.php b/app/Language/da/Reports.php index 5b2148f43..12f63667c 100644 --- a/app/Language/da/Reports.php +++ b/app/Language/da/Reports.php @@ -1,148 +1,148 @@ "Alle", - "authority" => "", - "canceled" => "Annulleret", - "categories" => "Kategorier", - "categories_summary_report" => "Oversigtsrapport for kategorier", - "category" => "Kategori", - "code_canceled" => "", - "code_invoice" => "", - "code_pos" => "", - "code_quote" => "", - "code_return" => "", - "code_type" => "", - "code_work_order" => "", - "comments" => "Kommentarer", - "commission" => "", - "complete" => "Afsluttet salg og retur", - "completed_sales" => "Afsluttet salg", - "confirm_delete" => "", - "confirm_restore" => "", - "cost" => "Engros", - "cost_price" => "Engrospris", - "count" => "Tælle", - "customer" => "Kunde", - "customers" => "Kunder", - "customers_summary_report" => "Kundeoversigtsrapport", - "date" => "Dato", - "date_range" => "Datointerval", - "description" => "Beskrivelse", - "detailed_receivings_report" => "Detaljeret modtagelsesrapport", - "detailed_receivings_report_input" => "", - "detailed_reports" => "Detaljerede rapporter", - "detailed_requisition_report" => "", - "detailed_sales_report" => "Detaljeret transaktionsrapport", - "discount" => "Rabat", - "discount_fixed" => "Fast rabat", - "discount_percent" => "Rabatprocent", - "discount_type" => "Rabattype", - "discounts" => "Rabatter", - "discounts_summary_report" => "Oversigtsrapport om rabatter", - "earned" => "Optjente point", - "employee" => "Medarbejder", - "employees" => "Medarbejdere", - "employees_summary_report" => "Medarbejdersammendragsrapport", - "expenses" => "Omkostninger", - "expenses_amount" => "", - "expenses_categories" => "", - "expenses_categories_summary_report" => "Oversigtsrapport for udgiftskategorier", - "expenses_category" => "Kategori", - "expenses_payment_amount" => "", - "expenses_tax_amount" => "Skat", - "expenses_total_amount" => "", - "expenses_total_tax_amount" => "Skat i alt", - "graphical_reports" => "Grafiske rapporter", - "inventory" => "", - "inventory_low" => "", - "inventory_low_report" => "Rapport om lavt lager", - "inventory_reports" => "Lagerrapporter", - "inventory_summary" => "Inventaroversigt", - "inventory_summary_report" => "Opgørelsesoversigt", - "item" => "Vare", - "item_count" => "Filtrer vareantal", - "item_name" => "Varens navn", - "item_number" => "Stregkode", - "items" => "Varer", - "items_purchased" => "Varer købt", - "items_received" => "Varer modtaget", - "items_summary_report" => "Genstandsoversigtsrapport", - "jurisdiction" => "", - "low_inventory" => "", - "low_inventory_report" => "", - "low_sell_quantity" => "Lavt salgsantal", - "more_than_zero" => "Mere end nul", - "name" => "Navn", - "no_reports_to_display" => "Der er ingen elementer at vise.", - "payment_type" => "Betalings type", - "payments" => "Betalinger", - "payments_summary_report" => "Betalingsoversigtsrapport", - "profit" => "Profit", - "quantity" => "Antal", - "quantity_purchased" => "Mængde købt", - "quotes" => "", - "received_by" => "Modtaget af", - "receiving_id" => "", - "receiving_type" => "", - "receivings" => "", - "reorder_level" => "", - "report" => "", - "report_input" => "", - "reports" => "", - "requisition" => "", - "requisition_by" => "", - "requisition_id" => "", - "requisition_item" => "", - "requisition_item_quantity" => "", - "requisition_related_item" => "", - "requisition_related_item_total_quantity" => "", - "requisition_related_item_unit_quantity" => "", - "requisitions" => "", - "returns" => "", - "revenue" => "", - "sale_id" => "", - "sale_type" => "", - "sales" => "", - "sales_amount" => "", - "sales_summary_report" => "", - "sales_taxes" => "", - "sales_taxes_summary_report" => "", - "serial_number" => "", - "service_charge" => "", - "sold_by" => "", - "sold_items" => "", - "sold_to" => "", - "stock_location" => "", - "sub_total_value" => "", - "subtotal" => "", - "summary_reports" => "", - "supplied_by" => "", - "supplier" => "", - "suppliers" => "", - "suppliers_summary_report" => "", - "tax" => "", - "tax_category" => "", - "tax_name" => "", - "tax_percent" => "", - "tax_rate" => "", - "taxes" => "", - "taxes_summary_report" => "", - "total" => "", - "total_inventory_value" => "", - "total_low_sell_quantity" => "", - "total_quantity" => "", - "total_retail" => "", - "trans_amount" => "", - "trans_due" => "", - "trans_group" => "", - "trans_nopay_sales" => "", - "trans_payments" => "", - "trans_refunded" => "", - "trans_sales" => "", - "trans_type" => "", - "type" => "", - "unit_price" => "", - "used" => "", - "work_orders" => "", - "zero_and_less" => "", + "all" => "Alle", + "authority" => "", + "canceled" => "Annulleret", + "categories" => "Kategorier", + "categories_summary_report" => "Oversigtsrapport for kategorier", + "category" => "Kategori", + "code_canceled" => "", + "code_invoice" => "", + "code_pos" => "", + "code_quote" => "", + "code_return" => "", + "code_type" => "", + "code_work_order" => "", + "comments" => "Kommentarer", + "commission" => "", + "complete" => "Afsluttet salg og retur", + "completed_sales" => "Afsluttet salg", + "confirm_delete" => "", + "confirm_restore" => "", + "cost" => "Engros", + "cost_price" => "Engrospris", + "count" => "Tælle", + "customer" => "Kunde", + "customers" => "Kunder", + "customers_summary_report" => "Kundeoversigtsrapport", + "date" => "Dato", + "date_range" => "Datointerval", + "description" => "Beskrivelse", + "detailed_receivings_report" => "Detaljeret modtagelsesrapport", + "detailed_receivings_report_input" => "", + "detailed_reports" => "Detaljerede rapporter", + "detailed_requisition_report" => "", + "detailed_sales_report" => "Detaljeret transaktionsrapport", + "discount" => "Rabat", + "discount_fixed" => "Fast rabat", + "discount_percent" => "Rabatprocent", + "discount_type" => "Rabattype", + "discounts" => "Rabatter", + "discounts_summary_report" => "Oversigtsrapport om rabatter", + "earned" => "Optjente point", + "employee" => "Medarbejder", + "employees" => "Medarbejdere", + "employees_summary_report" => "Medarbejdersammendragsrapport", + "expenses" => "Omkostninger", + "expenses_amount" => "", + "expenses_categories" => "", + "expenses_categories_summary_report" => "Oversigtsrapport for udgiftskategorier", + "expenses_category" => "Kategori", + "expenses_payment_amount" => "", + "expenses_tax_amount" => "Skat", + "expenses_total_amount" => "", + "expenses_total_tax_amount" => "Skat i alt", + "graphical_reports" => "Grafiske rapporter", + "inventory" => "", + "inventory_low" => "", + "inventory_low_report" => "Rapport om lavt lager", + "inventory_reports" => "Lagerrapporter", + "inventory_summary" => "Inventaroversigt", + "inventory_summary_report" => "Opgørelsesoversigt", + "item" => "Vare", + "item_count" => "Filtrer vareantal", + "item_name" => "Varens navn", + "item_number" => "Stregkode", + "items" => "Varer", + "items_purchased" => "Varer købt", + "items_received" => "Varer modtaget", + "items_summary_report" => "Genstandsoversigtsrapport", + "jurisdiction" => "", + "low_inventory" => "", + "low_inventory_report" => "", + "low_sell_quantity" => "Lavt salgsantal", + "more_than_zero" => "Mere end nul", + "name" => "Navn", + "no_reports_to_display" => "Der er ingen elementer at vise.", + "payment_type" => "Betalings type", + "payments" => "Betalinger", + "payments_summary_report" => "Betalingsoversigtsrapport", + "profit" => "Profit", + "quantity" => "Antal", + "quantity_purchased" => "Mængde købt", + "quotes" => "", + "received_by" => "Modtaget af", + "receiving_id" => "", + "receiving_type" => "", + "receivings" => "", + "reorder_level" => "", + "report" => "", + "report_input" => "", + "reports" => "", + "requisition" => "", + "requisition_by" => "", + "requisition_id" => "", + "requisition_item" => "", + "requisition_item_quantity" => "", + "requisition_related_item" => "", + "requisition_related_item_total_quantity" => "", + "requisition_related_item_unit_quantity" => "", + "requisitions" => "", + "returns" => "", + "revenue" => "", + "sale_id" => "", + "sale_type" => "", + "sales" => "", + "sales_amount" => "", + "sales_summary_report" => "", + "sales_taxes" => "", + "sales_taxes_summary_report" => "", + "serial_number" => "", + "service_charge" => "", + "sold_by" => "", + "sold_items" => "", + "sold_to" => "", + "stock_location" => "", + "sub_total_value" => "", + "subtotal" => "", + "summary_reports" => "", + "supplied_by" => "", + "supplier" => "", + "suppliers" => "", + "suppliers_summary_report" => "", + "tax" => "", + "tax_category" => "", + "tax_name" => "", + "tax_percent" => "", + "tax_rate" => "", + "taxes" => "", + "taxes_summary_report" => "", + "total" => "", + "total_inventory_value" => "", + "total_low_sell_quantity" => "", + "total_quantity" => "", + "total_retail" => "", + "trans_amount" => "", + "trans_due" => "", + "trans_group" => "", + "trans_nopay_sales" => "", + "trans_payments" => "", + "trans_refunded" => "", + "trans_sales" => "", + "trans_type" => "", + "type" => "", + "unit_price" => "", + "used" => "", + "work_orders" => "", + "zero_and_less" => "", ]; diff --git a/app/Language/da/Sales.php b/app/Language/da/Sales.php index 67ad94249..ac39b3fb9 100644 --- a/app/Language/da/Sales.php +++ b/app/Language/da/Sales.php @@ -1,224 +1,224 @@ "", - "rewards_package" => "", - "rewards_remaining_balance" => "", - "account_number" => "", - "add_payment" => "", - "amount_due" => "", - "amount_tendered" => "", - "authorized_signature" => "", - "cancel_sale" => "", - "cash" => "Kontant", - "cash_1" => "", - "cash_2" => "", - "cash_3" => "", - "cash_4" => "", - "cash_adjustment" => "", - "cash_deposit" => "", - "cash_filter" => "", - "change_due" => "", - "change_price" => "", - "check" => "", - "check_balance" => "", - "check_filter" => "", - "close" => "", - "comment" => "Kommentar", - "comments" => "Kommentarer", - "company_name" => "", - "complete" => "", - "complete_sale" => "", - "confirm_cancel_sale" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "credit" => "", - "credit_deposit" => "", - "credit_filter" => "", - "current_table" => "", - "customer" => "", - "customer_address" => "", - "customer_discount" => "Rabat", - "customer_email" => "", - "customer_location" => "", - "customer_mailchimp_status" => "", - "customer_optional" => "", - "customer_required" => "", - "customer_total" => "", - "customer_total_spent" => "", - "daily_sales" => "", - "date" => "", - "date_range" => "", - "date_required" => "", - "date_type" => "", - "debit" => "Debit kort", - "debit_filter" => "", - "delete" => "", - "delete_confirmation" => "Er du sikker på at du ønsker at slette dette salg? Dette kan ikke fortrydes.", - "delete_entire_sale" => "Slet hele salget", - "delete_successful" => "Salg slettet succesfuldt.", - "delete_unsuccessful" => "Sletning af salg fejlede.", - "description_abbrv" => "Beskr.", - "discard" => "Kassér", - "discard_quote" => "", - "discount" => "", - "discount_included" => "", - "discount_short" => "", - "due" => "", - "due_filter" => "", - "edit" => "", - "edit_item" => "", - "edit_sale" => "", - "email_receipt" => "", - "employee" => "", - "entry" => "", - "error_editing_item" => "", - "find_or_scan_item" => "", - "find_or_scan_item_or_receipt" => "", - "giftcard" => "Gavekort", - "giftcard_balance" => "", - "giftcard_filter" => "", - "giftcard_number" => "", - "group_by_category" => "", - "group_by_type" => "", - "hsn" => "", - "id" => "", - "include_prices" => "", - "invoice" => "", - "invoice_confirm" => "", - "invoice_enable" => "", - "invoice_filter" => "", - "invoice_no_email" => "", - "invoice_number" => "", - "invoice_number_duplicate" => "", - "invoice_sent" => "", - "invoice_total" => "", - "invoice_type_custom_invoice" => "", - "invoice_type_custom_tax_invoice" => "", - "invoice_type_invoice" => "", - "invoice_type_tax_invoice" => "", - "invoice_unsent" => "", - "invoice_update" => "", - "item_insufficient_of_stock" => "", - "item_name" => "", - "item_number" => "", - "item_out_of_stock" => "", - "key_browser" => "", - "key_cancel" => "Cancels Current Quote/Invoice/Sale", - "key_customer_search" => "Customer Search", - "key_finish_quote" => "Finish Quote/Invoice witdout payment", - "key_finish_sale" => "Add Payment and Complete Invoice/Sale", - "key_full" => "", - "key_function" => "Function", - "key_help" => "Shortcuts", - "key_help_modal" => "Open Shortcuts Window", - "key_in" => "", - "key_item_search" => "Item Search", - "key_out" => "", - "key_payment" => "Add Payment", - "key_print" => "", - "key_restore" => "", - "key_search" => "", - "key_suspend" => "Suspend Current Sale", - "key_suspended" => "Show Suspended Sales", - "key_system" => "", - "key_tendered" => "Edit Amount Tendered", - "key_title" => "Sales Keyboard Shortcuts", - "mc" => "", - "mode" => "", - "must_enter_numeric" => "", - "must_enter_numeric_giftcard" => "", - "new_customer" => "", - "new_item" => "", - "no_description" => "", - "no_filter" => "", - "no_items_in_cart" => "", - "no_sales_to_display" => "", - "none_selected" => "", - "nontaxed_ind" => "", - "not_authorized" => "", - "one_or_multiple" => "", - "payment" => "", - "payment_amount" => "", - "payment_not_cover_total" => "", - "payment_type" => "", - "payments" => "", - "payments_total" => "", - "price" => "", - "print_after_sale" => "", - "quantity" => "", - "quantity_less_than_reorder_level" => "", - "quantity_less_than_zero" => "", - "quantity_of_items" => "", - "quote" => "", - "quote_number" => "", - "quote_number_duplicate" => "", - "quote_sent" => "", - "quote_unsent" => "", - "receipt" => "", - "receipt_no_email" => "", - "receipt_number" => "", - "receipt_sent" => "", - "receipt_unsent" => "", - "refund" => "", - "register" => "", - "remove_customer" => "", - "remove_discount" => "", - "return" => "", - "rewards" => "", - "rewards_balance" => "", - "sale" => "", - "sale_by_invoice" => "", - "sale_for_customer" => "", - "sale_time" => "", - "sales_tax" => "", - "sales_total" => "", - "select_customer" => "", - "send_invoice" => "", - "send_quote" => "", - "send_receipt" => "", - "send_work_order" => "", - "serial" => "", - "service_charge" => "", - "show_due" => "", - "show_invoice" => "", - "show_receipt" => "", - "start_typing_customer_name" => "", - "start_typing_item_name" => "", - "stock" => "", - "stock_location" => "", - "sub_total" => "", - "successfully_deleted" => "", - "successfully_restored" => "", - "successfully_suspended_sale" => "", - "successfully_updated" => "", - "suspend_sale" => "", - "suspended_doc_id" => "", - "suspended_sale_id" => "", - "suspended_sales" => "", - "table" => "", - "takings" => "", - "tax" => "", - "tax_id" => "", - "tax_invoice" => "", - "tax_percent" => "", - "taxed_ind" => "", - "total" => "", - "total_tax_exclusive" => "", - "transaction_failed" => "", - "unable_to_add_item" => "", - "unsuccessfully_deleted" => "", - "unsuccessfully_restored" => "", - "unsuccessfully_suspended_sale" => "", - "unsuccessfully_updated" => "", - "unsuspend" => "", - "unsuspend_and_delete" => "", - "update" => "", - "upi" => "", - "visa" => "", - "wholesale" => "", - "work_order" => "", - "work_order_number" => "", - "work_order_number_duplicate" => "", - "work_order_sent" => "", - "work_order_unsent" => "", + "customers_available_points" => "", + "rewards_package" => "", + "rewards_remaining_balance" => "", + "account_number" => "", + "add_payment" => "", + "amount_due" => "", + "amount_tendered" => "", + "authorized_signature" => "", + "cancel_sale" => "", + "cash" => "Kontant", + "cash_1" => "", + "cash_2" => "", + "cash_3" => "", + "cash_4" => "", + "cash_adjustment" => "", + "cash_deposit" => "", + "cash_filter" => "", + "change_due" => "", + "change_price" => "", + "check" => "", + "check_balance" => "", + "check_filter" => "", + "close" => "", + "comment" => "Kommentar", + "comments" => "Kommentarer", + "company_name" => "", + "complete" => "", + "complete_sale" => "", + "confirm_cancel_sale" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "credit" => "", + "credit_deposit" => "", + "credit_filter" => "", + "current_table" => "", + "customer" => "", + "customer_address" => "", + "customer_discount" => "Rabat", + "customer_email" => "", + "customer_location" => "", + "customer_mailchimp_status" => "", + "customer_optional" => "", + "customer_required" => "", + "customer_total" => "", + "customer_total_spent" => "", + "daily_sales" => "", + "date" => "", + "date_range" => "", + "date_required" => "", + "date_type" => "", + "debit" => "Debit kort", + "debit_filter" => "", + "delete" => "", + "delete_confirmation" => "Er du sikker på at du ønsker at slette dette salg? Dette kan ikke fortrydes.", + "delete_entire_sale" => "Slet hele salget", + "delete_successful" => "Salg slettet succesfuldt.", + "delete_unsuccessful" => "Sletning af salg fejlede.", + "description_abbrv" => "Beskr.", + "discard" => "Kassér", + "discard_quote" => "", + "discount" => "", + "discount_included" => "", + "discount_short" => "", + "due" => "", + "due_filter" => "", + "edit" => "", + "edit_item" => "", + "edit_sale" => "", + "email_receipt" => "", + "employee" => "", + "entry" => "", + "error_editing_item" => "", + "find_or_scan_item" => "", + "find_or_scan_item_or_receipt" => "", + "giftcard" => "Gavekort", + "giftcard_balance" => "", + "giftcard_filter" => "", + "giftcard_number" => "", + "group_by_category" => "", + "group_by_type" => "", + "hsn" => "", + "id" => "", + "include_prices" => "", + "invoice" => "", + "invoice_confirm" => "", + "invoice_enable" => "", + "invoice_filter" => "", + "invoice_no_email" => "", + "invoice_number" => "", + "invoice_number_duplicate" => "", + "invoice_sent" => "", + "invoice_total" => "", + "invoice_type_custom_invoice" => "", + "invoice_type_custom_tax_invoice" => "", + "invoice_type_invoice" => "", + "invoice_type_tax_invoice" => "", + "invoice_unsent" => "", + "invoice_update" => "", + "item_insufficient_of_stock" => "", + "item_name" => "", + "item_number" => "", + "item_out_of_stock" => "", + "key_browser" => "", + "key_cancel" => "Cancels Current Quote/Invoice/Sale", + "key_customer_search" => "Customer Search", + "key_finish_quote" => "Finish Quote/Invoice witdout payment", + "key_finish_sale" => "Add Payment and Complete Invoice/Sale", + "key_full" => "", + "key_function" => "Function", + "key_help" => "Shortcuts", + "key_help_modal" => "Open Shortcuts Window", + "key_in" => "", + "key_item_search" => "Item Search", + "key_out" => "", + "key_payment" => "Add Payment", + "key_print" => "", + "key_restore" => "", + "key_search" => "", + "key_suspend" => "Suspend Current Sale", + "key_suspended" => "Show Suspended Sales", + "key_system" => "", + "key_tendered" => "Edit Amount Tendered", + "key_title" => "Sales Keyboard Shortcuts", + "mc" => "", + "mode" => "", + "must_enter_numeric" => "", + "must_enter_numeric_giftcard" => "", + "new_customer" => "", + "new_item" => "", + "no_description" => "", + "no_filter" => "", + "no_items_in_cart" => "", + "no_sales_to_display" => "", + "none_selected" => "", + "nontaxed_ind" => "", + "not_authorized" => "", + "one_or_multiple" => "", + "payment" => "", + "payment_amount" => "", + "payment_not_cover_total" => "", + "payment_type" => "", + "payments" => "", + "payments_total" => "", + "price" => "", + "print_after_sale" => "", + "quantity" => "", + "quantity_less_than_reorder_level" => "", + "quantity_less_than_zero" => "", + "quantity_of_items" => "", + "quote" => "", + "quote_number" => "", + "quote_number_duplicate" => "", + "quote_sent" => "", + "quote_unsent" => "", + "receipt" => "", + "receipt_no_email" => "", + "receipt_number" => "", + "receipt_sent" => "", + "receipt_unsent" => "", + "refund" => "", + "register" => "", + "remove_customer" => "", + "remove_discount" => "", + "return" => "", + "rewards" => "", + "rewards_balance" => "", + "sale" => "", + "sale_by_invoice" => "", + "sale_for_customer" => "", + "sale_time" => "", + "sales_tax" => "", + "sales_total" => "", + "select_customer" => "", + "send_invoice" => "", + "send_quote" => "", + "send_receipt" => "", + "send_work_order" => "", + "serial" => "", + "service_charge" => "", + "show_due" => "", + "show_invoice" => "", + "show_receipt" => "", + "start_typing_customer_name" => "", + "start_typing_item_name" => "", + "stock" => "", + "stock_location" => "", + "sub_total" => "", + "successfully_deleted" => "", + "successfully_restored" => "", + "successfully_suspended_sale" => "", + "successfully_updated" => "", + "suspend_sale" => "", + "suspended_doc_id" => "", + "suspended_sale_id" => "", + "suspended_sales" => "", + "table" => "", + "takings" => "", + "tax" => "", + "tax_id" => "", + "tax_invoice" => "", + "tax_percent" => "", + "taxed_ind" => "", + "total" => "", + "total_tax_exclusive" => "", + "transaction_failed" => "", + "unable_to_add_item" => "", + "unsuccessfully_deleted" => "", + "unsuccessfully_restored" => "", + "unsuccessfully_suspended_sale" => "", + "unsuccessfully_updated" => "", + "unsuspend" => "", + "unsuspend_and_delete" => "", + "update" => "", + "upi" => "", + "visa" => "", + "wholesale" => "", + "work_order" => "", + "work_order_number" => "", + "work_order_number_duplicate" => "", + "work_order_sent" => "", + "work_order_unsent" => "", ]; diff --git a/app/Language/da/Suppliers.php b/app/Language/da/Suppliers.php index f26bc2195..3a9fa4cac 100644 --- a/app/Language/da/Suppliers.php +++ b/app/Language/da/Suppliers.php @@ -1,24 +1,24 @@ "", - "agency_name" => "", - "cannot_be_deleted" => "", - "category" => "", - "company_name" => "", - "company_name_required" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "cost" => "", - "error_adding_updating" => "", - "goods" => "", - "new" => "", - "none_selected" => "", - "one_or_multiple" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "supplier" => "", - "supplier_id" => "", - "tax_id" => "", - "update" => "", + "account_number" => "", + "agency_name" => "", + "cannot_be_deleted" => "", + "category" => "", + "company_name" => "", + "company_name_required" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "cost" => "", + "error_adding_updating" => "", + "goods" => "", + "new" => "", + "none_selected" => "", + "one_or_multiple" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "supplier" => "", + "supplier_id" => "", + "tax_id" => "", + "update" => "", ]; diff --git a/app/Language/da/Taxes.php b/app/Language/da/Taxes.php index 6ae3d5b76..691ff9bb3 100644 --- a/app/Language/da/Taxes.php +++ b/app/Language/da/Taxes.php @@ -1,82 +1,82 @@ "", - "cascade" => "", - "cascade_sequence" => "", - "city" => "", - "code" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "default_tax_category" => "", - "default_tax_rate" => "", - "error_adding_updating" => "", - "group_seq" => "", - "jurisdiction_name" => "", - "name" => "", - "new" => "", - "no_taxes" => "", - "no_taxes_to_display" => "", - "reporting_authority" => "", - "round_half_down" => "", - "round_half_even" => "", - "round_half_odd" => "", - "round_half_up" => "", - "rounding_code" => "", - "sales_tax" => "", - "sales_tax_by_invoice" => "", - "sequence" => "", - "state" => "", - "successful_deleted" => "", - "tax_categories" => "", - "tax_categories_configuration" => "", - "tax_categories_saved_successfully" => "", - "tax_categories_saved_unsuccessfully" => "", - "tax_category" => "", - "tax_category_code" => "", - "tax_category_duplicate" => "", - "tax_category_invalid_chars" => "", - "tax_category_name" => "", - "tax_category_new" => "", - "tax_category_required" => "", - "tax_code" => "", - "tax_code_cannot_be_deleted" => "", - "tax_code_duplicate" => "", - "tax_code_invalid_chars" => "", - "tax_code_name" => "", - "tax_code_required" => "", - "tax_code_successful_deleted" => "", - "tax_code_successful_updated" => "", - "tax_code_successful_updating" => "", - "tax_code_successfully_added" => "", - "tax_code_type" => "", - "tax_codes" => "", - "tax_codes_configuration" => "", - "tax_codes_saved_successfully" => "", - "tax_codes_saved_unsuccessfully" => "", - "tax_excluded" => "", - "tax_group" => "", - "tax_group_not_unique" => "", - "tax_group_sequence" => "", - "tax_included" => "", - "tax_jurisdiction" => "", - "tax_jurisdiction_duplicate" => "", - "tax_jurisdiction_invalid_chars" => "", - "tax_jurisdiction_required" => "", - "tax_jurisdictions" => "", - "tax_jurisdictions_configuration" => "", - "tax_jurisdictions_saved_successfully" => "", - "tax_jurisdictions_saved_unsuccessfully" => "", - "tax_rate" => "", - "tax_rate_configuration" => "", - "tax_rate_error_adding_updating" => "", - "tax_rate_numeric" => "", - "tax_rate_required" => "", - "tax_rate_successful_updated" => "", - "tax_rate_successfully_added" => "", - "tax_rates" => "", - "tax_rates_configuration" => "", - "tax_rounding" => "", - "tax_type" => "", - "update" => "", - "vat_tax" => "", + "add_exception" => "", + "cascade" => "", + "cascade_sequence" => "", + "city" => "", + "code" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "default_tax_category" => "", + "default_tax_rate" => "", + "error_adding_updating" => "", + "group_seq" => "", + "jurisdiction_name" => "", + "name" => "", + "new" => "", + "no_taxes" => "", + "no_taxes_to_display" => "", + "reporting_authority" => "", + "round_half_down" => "", + "round_half_even" => "", + "round_half_odd" => "", + "round_half_up" => "", + "rounding_code" => "", + "sales_tax" => "", + "sales_tax_by_invoice" => "", + "sequence" => "", + "state" => "", + "successful_deleted" => "", + "tax_categories" => "", + "tax_categories_configuration" => "", + "tax_categories_saved_successfully" => "", + "tax_categories_saved_unsuccessfully" => "", + "tax_category" => "", + "tax_category_code" => "", + "tax_category_duplicate" => "", + "tax_category_invalid_chars" => "", + "tax_category_name" => "", + "tax_category_new" => "", + "tax_category_required" => "", + "tax_code" => "", + "tax_code_cannot_be_deleted" => "", + "tax_code_duplicate" => "", + "tax_code_invalid_chars" => "", + "tax_code_name" => "", + "tax_code_required" => "", + "tax_code_successful_deleted" => "", + "tax_code_successful_updated" => "", + "tax_code_successful_updating" => "", + "tax_code_successfully_added" => "", + "tax_code_type" => "", + "tax_codes" => "", + "tax_codes_configuration" => "", + "tax_codes_saved_successfully" => "", + "tax_codes_saved_unsuccessfully" => "", + "tax_excluded" => "", + "tax_group" => "", + "tax_group_not_unique" => "", + "tax_group_sequence" => "", + "tax_included" => "", + "tax_jurisdiction" => "", + "tax_jurisdiction_duplicate" => "", + "tax_jurisdiction_invalid_chars" => "", + "tax_jurisdiction_required" => "", + "tax_jurisdictions" => "", + "tax_jurisdictions_configuration" => "", + "tax_jurisdictions_saved_successfully" => "", + "tax_jurisdictions_saved_unsuccessfully" => "", + "tax_rate" => "", + "tax_rate_configuration" => "", + "tax_rate_error_adding_updating" => "", + "tax_rate_numeric" => "", + "tax_rate_required" => "", + "tax_rate_successful_updated" => "", + "tax_rate_successfully_added" => "", + "tax_rates" => "", + "tax_rates_configuration" => "", + "tax_rounding" => "", + "tax_type" => "", + "update" => "", + "vat_tax" => "", ]; diff --git a/app/Language/de-CH/Attributes.php b/app/Language/de-CH/Attributes.php index 0adb3846e..cb64f590d 100644 --- a/app/Language/de-CH/Attributes.php +++ b/app/Language/de-CH/Attributes.php @@ -1,32 +1,32 @@ "", - "confirm_delete" => "", - "confirm_restore" => "", - "definition_cannot_be_deleted" => "", - "definition_error_adding_updating" => "", - "definition_flags" => "", - "definition_group" => "", - "definition_id" => "", - "definition_name" => "", - "definition_name_required" => "", - "definition_one_or_multiple" => "", - "definition_successful_adding" => "", - "definition_successful_deleted" => "", - "definition_successful_updating" => "", - "definition_type" => "", - "definition_type_required" => "", - "definition_unit" => "", - "definition_values" => "", - "new" => "", - "no_attributes_to_display" => "", - "receipt_visibility" => "", - "show_in_items" => "", - "show_in_items_visibility" => "", - "show_in_receipt" => "", - "show_in_receivings" => "", - "show_in_receivings_visibility" => "", - "show_in_sales" => "", - "show_in_sales_visibility" => "", - "update" => "", + "attribute_value_invalid_chars" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "definition_cannot_be_deleted" => "", + "definition_error_adding_updating" => "", + "definition_flags" => "", + "definition_group" => "", + "definition_id" => "", + "definition_name" => "", + "definition_name_required" => "", + "definition_one_or_multiple" => "", + "definition_successful_adding" => "", + "definition_successful_deleted" => "", + "definition_successful_updating" => "", + "definition_type" => "", + "definition_type_required" => "", + "definition_unit" => "", + "definition_values" => "", + "new" => "", + "no_attributes_to_display" => "", + "receipt_visibility" => "", + "show_in_items" => "", + "show_in_items_visibility" => "", + "show_in_receipt" => "", + "show_in_receivings" => "", + "show_in_receivings_visibility" => "", + "show_in_sales" => "", + "show_in_sales_visibility" => "", + "update" => "", ]; diff --git a/app/Language/de-CH/Bootstrap_tables.php b/app/Language/de-CH/Bootstrap_tables.php index dba6e24a7..f78244bea 100644 --- a/app/Language/de-CH/Bootstrap_tables.php +++ b/app/Language/de-CH/Bootstrap_tables.php @@ -1,11 +1,11 @@ "All", - "columns" => "Spalten", - "hide_show_pagination" => "Hide/Show pagination", - "loading" => "Lade, bitte warten...", - "page_from_to" => "Zeige {0} bis {1} von {2} Zeile(n)", - "refresh" => "Refresh", - "rows_per_page" => "{0} Einträge pro Seite", - "toggle" => "Umschalten", + "all" => "All", + "columns" => "Spalten", + "hide_show_pagination" => "Hide/Show pagination", + "loading" => "Lade, bitte warten...", + "page_from_to" => "Zeige {0} bis {1} von {2} Zeile(n)", + "refresh" => "Refresh", + "rows_per_page" => "{0} Einträge pro Seite", + "toggle" => "Umschalten", ]; diff --git a/app/Language/de-CH/Calendar.php b/app/Language/de-CH/Calendar.php index 17f1c41e3..5a093c128 100644 --- a/app/Language/de-CH/Calendar.php +++ b/app/Language/de-CH/Calendar.php @@ -1,48 +1,48 @@ "So", - "mo" => "Mo", - "tu" => "Di", - "we" => "Mi", - "th" => "Do", - "fr" => "Fr", - "sa" => "Sa", - "sun" => "Son", - "mon" => "Mon", - "tue" => "Die", - "wed" => "Mit", - "thu" => "Don", - "fri" => "Fre", - "sat" => "Sam", - "sunday" => "Sonntag", - "monday" => "Montag", - "tuesday" => "Dienstag", - "wednesday" => "Mittwoch", - "thursday" => "Donnerstag", - "friday" => "Freitag", - "saturday" => "Samstag", - "jan" => "Jan", - "feb" => "Feb", - "mar" => "Mär", - "apr" => "Apr", - "may" => "Mai", - "jun" => "Jun", - "jul" => "Jul", - "aug" => "Aug", - "sep" => "Sep", - "oct" => "Okt", - "nov" => "Nov", - "dec" => "Dez", - "january" => "Januar", - "february" => "Februar", - "march" => "März", - "april" => "April", - "mayl" => "Mai", - "june" => "Juni", - "july" => "Juli", - "august" => "August", - "september" => "September", - "october" => "Oktober", - "november" => "November", - "december" => "Dezember", + "su" => "So", + "mo" => "Mo", + "tu" => "Di", + "we" => "Mi", + "th" => "Do", + "fr" => "Fr", + "sa" => "Sa", + "sun" => "Son", + "mon" => "Mon", + "tue" => "Die", + "wed" => "Mit", + "thu" => "Don", + "fri" => "Fre", + "sat" => "Sam", + "sunday" => "Sonntag", + "monday" => "Montag", + "tuesday" => "Dienstag", + "wednesday" => "Mittwoch", + "thursday" => "Donnerstag", + "friday" => "Freitag", + "saturday" => "Samstag", + "jan" => "Jan", + "feb" => "Feb", + "mar" => "Mär", + "apr" => "Apr", + "may" => "Mai", + "jun" => "Jun", + "jul" => "Jul", + "aug" => "Aug", + "sep" => "Sep", + "oct" => "Okt", + "nov" => "Nov", + "dec" => "Dez", + "january" => "Januar", + "february" => "Februar", + "march" => "März", + "april" => "April", + "mayl" => "Mai", + "june" => "Juni", + "july" => "Juli", + "august" => "August", + "september" => "September", + "october" => "Oktober", + "november" => "November", + "december" => "Dezember", ]; diff --git a/app/Language/de-CH/Cashups.php b/app/Language/de-CH/Cashups.php index 2ffc8c593..04d19c94f 100644 --- a/app/Language/de-CH/Cashups.php +++ b/app/Language/de-CH/Cashups.php @@ -1,49 +1,49 @@ "", - "amount_number" => "", - "amount_required" => "", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "", - "cash_difference" => "", - "close_date" => "", - "close_employee" => "", - "closed_amount_card" => "", - "closed_amount_cash" => "", - "closed_amount_check" => "", - "closed_amount_due" => "", - "closed_amount_giftcard" => "", - "closed_amount_total" => "", - "closed_date" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "confirm_submit" => "", - "date_number" => "", - "date_required" => "", - "description" => "", - "enable_expected" => "", - "error_adding_updating" => "", - "giftcard" => "", - "id" => "", - "info" => "", - "info_employee" => "", - "is_deleted" => "", - "new" => "", - "no_cashups_to_display" => "", - "none_selected" => "", - "note" => "", - "one_or_multiple" => "", - "open_amount_cash" => "", - "open_date" => "", - "open_employee" => "", - "opened_date" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "total" => "", - "transfer_amount_cash" => "", - "transfer_amount_cash_minus" => "", - "update" => "", - "warning" => "", + "amount" => "", + "amount_number" => "", + "amount_required" => "", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "", + "cash_difference" => "", + "close_date" => "", + "close_employee" => "", + "closed_amount_card" => "", + "closed_amount_cash" => "", + "closed_amount_check" => "", + "closed_amount_due" => "", + "closed_amount_giftcard" => "", + "closed_amount_total" => "", + "closed_date" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "confirm_submit" => "", + "date_number" => "", + "date_required" => "", + "description" => "", + "enable_expected" => "", + "error_adding_updating" => "", + "giftcard" => "", + "id" => "", + "info" => "", + "info_employee" => "", + "is_deleted" => "", + "new" => "", + "no_cashups_to_display" => "", + "none_selected" => "", + "note" => "", + "one_or_multiple" => "", + "open_amount_cash" => "", + "open_date" => "", + "open_employee" => "", + "opened_date" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "total" => "", + "transfer_amount_cash" => "", + "transfer_amount_cash_minus" => "", + "update" => "", + "warning" => "", ]; diff --git a/app/Language/de-CH/Common.php b/app/Language/de-CH/Common.php index 15ea27db2..068983ae8 100644 --- a/app/Language/de-CH/Common.php +++ b/app/Language/de-CH/Common.php @@ -1,88 +1,88 @@ "Adresse 1", - "address_2" => "Adresse 2", - "admin" => "", - "city" => "Stadt", - "clerk" => "", - "close" => "Close", - "color" => "", - "comments" => "Kommentare", - "common" => "Allgemein", - "confirm_search" => "Sie haben einen oder mehrere Zeilen gewählt. Nach der Verarbeitung werden diese nicht mehr selektiert sein. Wollen Sie die Suche dennoch verarbeiten?", - "copyrights" => "© 2010 - {0}", - "correct_errors" => "", - "country" => "Land", - "dashboard" => "", - "date" => "Datum", - "delete" => "Löschen", - "det" => "Details", - "download_import_template" => "Download Import CSV Voralge (CSV)", - "edit" => "Ändern", - "email" => "Email", - "email_invalid_format" => "Das Email Format ist nicht korrekt", - "export_csv" => "CSV Export", - "export_csv_no" => "No", - "export_csv_yes" => "Yes", - "fields_required_message" => "Die Felder in rot sind erforderlich", - "fields_required_message_unique" => "", - "first_name" => "Vorname", - "first_name_required" => "Vorname ist erforderlich", - "first_page" => "Erste", - "gender" => "Geschlecht", - "gender_female" => "F", - "gender_male" => "M", - "gender_undefined" => "", - "icon" => "", - "id" => "Id", - "import" => "Import", - "import_change_file" => "Change", - "import_csv" => "CSV Import", - "import_full_path" => "Voller Dateipfad zum CSV File notwendig", - "import_remove_file" => "Remove", - "import_select_file" => "Select file", - "inv" => "Lag", - "last_name" => "Nachname", - "last_name_required" => "Nachname ist erforderlich", - "last_page" => "Letzte", - "learn_about_project" => "für neueste Nachrichten zum Projekt", - "list_of" => "Liste von", - "logo" => "", - "logo_mark" => "", - "logout" => "Logout", - "manager" => "", - "migration_needed" => "", - "new" => "Neu", - "no" => "", - "no_persons_to_display" => "Keine Personen zum Anzeigen", - "none_selected_text" => "Nothing selected", - "or" => "Oder", - "people" => "", - "phone_number" => "Telefon", - "phone_number_required" => "Telefon ist erforderlich", - "please_visit_my" => "Bitte beuschen Sie ", - "position" => "", - "powered_by" => "Powered by", - "price" => "Preis", - "print" => "Drucken", - "remove" => "Annulieren", - "required" => "Erforderlich", - "restore" => "", - "return_policy" => "Rücknahmepolitik", - "search" => "Suche", - "search_options" => "Suchkriterien", - "searched_for" => "Gescuht nach", - "software_short" => "", - "software_title" => "", - "state" => "BL/Kanton", - "submit" => "Senden", - "total_spent" => "", - "unknown" => "", - "view_recent_sales" => "Letzte Verkäufe", - "website" => "Website", - "welcome" => "Willkommen", - "welcome_message" => "Willkommen bei OSPOS, zum Beginnen auf ein Modul klicken", - "yes" => "", - "you_are_using_ospos" => "Sie verwenden Open Source Point Of Sale Version", - "zip" => "PLZ", + "address_1" => "Adresse 1", + "address_2" => "Adresse 2", + "admin" => "", + "city" => "Stadt", + "clerk" => "", + "close" => "Close", + "color" => "", + "comments" => "Kommentare", + "common" => "Allgemein", + "confirm_search" => "Sie haben einen oder mehrere Zeilen gewählt. Nach der Verarbeitung werden diese nicht mehr selektiert sein. Wollen Sie die Suche dennoch verarbeiten?", + "copyrights" => "© 2010 - {0}", + "correct_errors" => "", + "country" => "Land", + "dashboard" => "", + "date" => "Datum", + "delete" => "Löschen", + "det" => "Details", + "download_import_template" => "Download Import CSV Voralge (CSV)", + "edit" => "Ändern", + "email" => "Email", + "email_invalid_format" => "Das Email Format ist nicht korrekt", + "export_csv" => "CSV Export", + "export_csv_no" => "No", + "export_csv_yes" => "Yes", + "fields_required_message" => "Die Felder in rot sind erforderlich", + "fields_required_message_unique" => "", + "first_name" => "Vorname", + "first_name_required" => "Vorname ist erforderlich", + "first_page" => "Erste", + "gender" => "Geschlecht", + "gender_female" => "F", + "gender_male" => "M", + "gender_undefined" => "", + "icon" => "", + "id" => "Id", + "import" => "Import", + "import_change_file" => "Change", + "import_csv" => "CSV Import", + "import_full_path" => "Voller Dateipfad zum CSV File notwendig", + "import_remove_file" => "Remove", + "import_select_file" => "Select file", + "inv" => "Lag", + "last_name" => "Nachname", + "last_name_required" => "Nachname ist erforderlich", + "last_page" => "Letzte", + "learn_about_project" => "für neueste Nachrichten zum Projekt", + "list_of" => "Liste von", + "logo" => "", + "logo_mark" => "", + "logout" => "Logout", + "manager" => "", + "migration_needed" => "", + "new" => "Neu", + "no" => "", + "no_persons_to_display" => "Keine Personen zum Anzeigen", + "none_selected_text" => "Nothing selected", + "or" => "Oder", + "people" => "", + "phone_number" => "Telefon", + "phone_number_required" => "Telefon ist erforderlich", + "please_visit_my" => "Bitte beuschen Sie ", + "position" => "", + "powered_by" => "Powered by", + "price" => "Preis", + "print" => "Drucken", + "remove" => "Annulieren", + "required" => "Erforderlich", + "restore" => "", + "return_policy" => "Rücknahmepolitik", + "search" => "Suche", + "search_options" => "Suchkriterien", + "searched_for" => "Gescuht nach", + "software_short" => "", + "software_title" => "", + "state" => "BL/Kanton", + "submit" => "Senden", + "total_spent" => "", + "unknown" => "", + "view_recent_sales" => "Letzte Verkäufe", + "website" => "Website", + "welcome" => "Willkommen", + "welcome_message" => "Willkommen bei OSPOS, zum Beginnen auf ein Modul klicken", + "yes" => "", + "you_are_using_ospos" => "Sie verwenden Open Source Point Of Sale Version", + "zip" => "PLZ", ]; diff --git a/app/Language/de-CH/Config.php b/app/Language/de-CH/Config.php index 484b03833..61dd25aa8 100644 --- a/app/Language/de-CH/Config.php +++ b/app/Language/de-CH/Config.php @@ -1,330 +1,330 @@ "Adresse", - "address_required" => "Adresse ist erforderlich", - "all_set" => "All file permissions are set correctly!", - "allow_duplicate_barcodes" => "", - "apostrophe" => "apostrophe", - "backup_button" => "Sicherung", - "backup_database" => "Sicherungs-Datenbank", - "barcode" => "Barcodes", - "barcode_company" => "Firmenname", - "barcode_configuration" => "Barcodes", - "barcode_content" => "Barcode Inhalt", - "barcode_first_row" => "Erste Zeile", - "barcode_font" => "Schrift", - "barcode_formats" => "", - "barcode_generate_if_empty" => "Generiere Barcode wenn leer", - "barcode_height" => "Höhe", - "barcode_id" => "Artikel-Nr/Name", - "barcode_info" => "Barcode Einstellung", - "barcode_layout" => "Barcode Layout", - "barcode_name" => "Name", - "barcode_number" => "UPC/EAN/ISBN", - "barcode_number_in_row" => "Nummer in Zeile", - "barcode_page_cellspacing" => "Zellenabstand auf Seite", - "barcode_page_width" => "Seitenbreite", - "barcode_price" => "Preis", - "barcode_second_row" => "Zeile 2", - "barcode_third_row" => "Zeile 3", - "barcode_tooltip" => "", - "barcode_type" => "Barcode Typ", - "barcode_width" => "Breite (px)", - "bottom" => "Bottom", - "cash_button" => "", - "cash_button_1" => "", - "cash_button_2" => "", - "cash_button_3" => "", - "cash_button_4" => "", - "cash_button_5" => "", - "cash_button_6" => "", - "cash_decimals" => "", - "cash_decimals_tooltip" => "", - "cash_rounding" => "", - "category_dropdown" => "", - "center" => "Center", - "change_apperance_tooltip" => "", - "comma" => "comma", - "company" => "Firmenname", - "company_avatar" => "", - "company_change_image" => "Change Image", - "company_logo" => "Logo", - "company_remove_image" => "Remove Image", - "company_required" => "Firmenname ist erforderlich", - "company_select_image" => "Select Image", - "company_website_url" => "Webseite ist nicht in korrektem Format", - "country_codes" => "Country Codes", - "country_codes_tooltip" => "Comma separated list of country codes for nominatim address lookup.", - "currency_code" => "", - "currency_decimals" => "Currency Decimals", - "currency_symbol" => "Währungssymbol", - "current_employee_only" => "", - "customer_reward" => "", - "customer_reward_duplicate" => "", - "customer_reward_enable" => "", - "customer_reward_invalid_chars" => "", - "customer_reward_required" => "", - "customer_sales_tax_support" => "", - "date_or_time_format" => "", - "datetimeformat" => "Datum und Zeit", - "decimal_point" => "Dezimaltrennzeichen", - "default_barcode_font_size_number" => "Die Barcode Schriftgrösse muss eine Zahl sein", - "default_barcode_font_size_required" => "Die Barcode Schriftgrösse ist erforderlich", - "default_barcode_height_number" => "Die Barcode Höhe muss eine Zahl sein", - "default_barcode_height_required" => "Die Barcode Höhe ist erforderlich", - "default_barcode_num_in_row_number" => "Die Barcode Num muss eine Zahl sein", - "default_barcode_num_in_row_required" => "Die Barcode Num ist erforderlich", - "default_barcode_page_cellspacing_number" => "Der Barcode Zellabstand muss eine Zahl sein", - "default_barcode_page_cellspacing_required" => "Der Barcode Zellabstand ist erforderlich", - "default_barcode_page_width_number" => "Die Barcode Seitenbreite muss eine Zahl sein", - "default_barcode_page_width_required" => "Die Barcode Seitenbreite ist erforderlich", - "default_barcode_width_number" => "Die Barcode Breite muss eine Zahl sein", - "default_barcode_width_required" => "Die Barcode Breite ist erforderlich", - "default_item_columns" => "", - "default_origin_tax_code" => "", - "default_receivings_discount" => "", - "default_receivings_discount_number" => "", - "default_receivings_discount_required" => "", - "default_sales_discount" => "Standard Verkaufsrabatt", - "default_sales_discount_number" => "Der Standard Verkaufsrabatt muss eine Zahl sein", - "default_sales_discount_required" => "Der Standard Verkaufsrabatt ist erforderlich", - "default_tax_category" => "", - "default_tax_code" => "", - "default_tax_jurisdiction" => "", - "default_tax_name_number" => "", - "default_tax_name_required" => "The default tax name is a required field", - "default_tax_rate" => "MWSt %", - "default_tax_rate_1" => "MWSt 1", - "default_tax_rate_2" => "MWSt 2", - "default_tax_rate_3" => "", - "default_tax_rate_number" => "MWSt Rate", - "default_tax_rate_required" => "MWSt ist erforderlich", - "derive_sale_quantity" => "", - "derive_sale_quantity_tooltip" => "", - "dinner_table" => "", - "dinner_table_duplicate" => "", - "dinner_table_enable" => "", - "dinner_table_invalid_chars" => "", - "dinner_table_required" => "", - "dot" => "dot", - "email" => "Email", - "email_configuration" => "Email Configuration", - "email_mailpath" => "Path to Sendmail", - "email_protocol" => "Protocol", - "email_receipt_check_behaviour" => "", - "email_receipt_check_behaviour_always" => "", - "email_receipt_check_behaviour_last" => "", - "email_receipt_check_behaviour_never" => "", - "email_smtp_crypto" => "SMTP Encryption", - "email_smtp_host" => "SMTP Server", - "email_smtp_pass" => "SMTP Password", - "email_smtp_port" => "SMTP Port", - "email_smtp_timeout" => "SMTP Timeout (s)", - "email_smtp_user" => "SMTP Username", - "enable_avatar" => "", - "enable_avatar_tooltip" => "", - "enable_dropdown_tooltip" => "", - "enable_new_look" => "", - "enable_right_bar" => "", - "enable_right_bar_tooltip" => "", - "enforce_privacy" => "", - "enforce_privacy_tooltip" => "", - "fax" => "Fax", - "file_perm" => "There are problems with file permissions please fix and reload this page.", - "financial_year" => "", - "financial_year_apr" => "", - "financial_year_aug" => "", - "financial_year_dec" => "", - "financial_year_feb" => "", - "financial_year_jan" => "", - "financial_year_jul" => "", - "financial_year_jun" => "", - "financial_year_mar" => "", - "financial_year_may" => "", - "financial_year_nov" => "", - "financial_year_oct" => "", - "financial_year_sep" => "", - "floating_labels" => "", - "gcaptcha_enable" => "", - "gcaptcha_secret_key" => "", - "gcaptcha_secret_key_required" => "", - "gcaptcha_site_key" => "", - "gcaptcha_site_key_required" => "", - "gcaptcha_tooltip" => "", - "general" => "Einstellungen", - "general_configuration" => "Einstellungen", - "giftcard_number" => "", - "giftcard_random" => "", - "giftcard_series" => "", - "image_allowed_file_types" => "", - "image_max_height_tooltip" => "", - "image_max_size_tooltip" => "", - "image_max_width_tooltip" => "", - "image_restrictions" => "", - "include_hsn" => "", - "info" => "Instellungen", - "info_configuration" => "Instellungen", - "input_groups" => "", - "integrations" => "", - "integrations_configuration" => "", - "invoice" => "Rechnungs", - "invoice_configuration" => "Druckereinstellungen", - "invoice_default_comments" => "Rechnungskommentar", - "invoice_email_message" => "Rechnungsvorlage (Email)", - "invoice_enable" => "Enable Invoicing", - "invoice_printer" => "Rechnungsdrucker", - "invoice_type" => "", - "is_readable" => "", - "is_writable" => "is writable, but the permissions are higher than 750.", - "item_markup" => "", - "jsprintsetup_required" => "Warnung! Diese Funktion ist nur funktionsfähig", - "language" => "Sprache", - "last_used_invoice_number" => "", - "last_used_quote_number" => "", - "last_used_work_order_number" => "", - "left" => "Left", - "license" => "License", - "license_configuration" => "License Statement", - "line_sequence" => "", - "lines_per_page" => "Zeilen pro Seite", - "lines_per_page_number" => "Zeilen pro Seite muss eine Zahl sein", - "lines_per_page_required" => "Zeilen pro Seite ist erforderlich", - "locale" => "Länder", - "locale_configuration" => "Länderkonfiguration", - "locale_info" => "Info Länderkonfiguration", - "location" => "Lagerort", - "location_configuration" => "Lagerort", - "location_info" => "Lagerort-Information", - "login_form" => "", - "logout" => "Wollen Sie eine Sicherung machen vor dem Beenden? Klicke [OK] für Sicherung", - "mailchimp" => "", - "mailchimp_api_key" => "", - "mailchimp_configuration" => "", - "mailchimp_key_successfully" => "", - "mailchimp_key_unsuccessfully" => "", - "mailchimp_lists" => "", - "mailchimp_tooltip" => "", - "message" => "Message", - "message_configuration" => "Message Configuration", - "msg_msg" => "Saved Text Message", - "msg_msg_placeholder" => "If you wish to use a SMS template save your message here. Otherwise leave the box blank.", - "msg_pwd" => "SMS-API Password", - "msg_pwd_required" => "SMS-API Password is a required field", - "msg_src" => "SMS-API Sender ID", - "msg_src_required" => "SMS-API Sender ID is a required field", - "msg_uid" => "SMS-API Username", - "msg_uid_required" => "SMS-API Username is a required field", - "multi_pack_enabled" => "", - "no_risk" => "No security/vulnerability risks.", - "none" => "none", - "notify_alignment" => "Notification Popup Position", - "number_format" => "Zahlenformat", - "number_locale" => "Länderkonfiguration", - "number_locale_invalid" => "Die eingegebene Lokale ist falsch. Bitte sehen Sie sich den Link tim Tooltip an um einen korrekten Wert zu finden", - "number_locale_required" => "Localennummer ist ein Pflichtfeld", - "number_locale_tooltip" => "Finden Sie eine korrekte Lokale über diesen Link", - "os_timezone" => "", - "ospos_info" => "", - "payment_options_order" => "Payment Options Order", - "perm_risk" => "Permissions higher than 750 leaves this software at risk.", - "phone" => "Telefon", - "phone_required" => "Telefon ist erforderlich", - "print_bottom_margin" => "Unterer Rand", - "print_bottom_margin_number" => "Unterer Rand muss eine Zahl sein", - "print_bottom_margin_required" => "Unterer Rand ist erforderlich", - "print_delay_autoreturn" => "", - "print_delay_autoreturn_number" => "", - "print_delay_autoreturn_required" => "", - "print_footer" => "Drucke Browser Fusszeile", - "print_header" => "Drucke Browser Kopfzeile", - "print_left_margin" => "Rand links", - "print_left_margin_number" => "Rand links muss eine Zahl sein", - "print_left_margin_required" => "Rand links ist erforderlich", - "print_receipt_check_behaviour" => "", - "print_receipt_check_behaviour_always" => "", - "print_receipt_check_behaviour_last" => "", - "print_receipt_check_behaviour_never" => "", - "print_right_margin" => "Rand rechts", - "print_right_margin_number" => "Rand rechts muss eine Zahl sein", - "print_right_margin_required" => "Rand rechts ist erforderlich", - "print_silently" => "Zeige Druckdialog", - "print_top_margin" => "Rand oben", - "print_top_margin_number" => "Rand oben muss eine Zahl sein", - "print_top_margin_required" => "Rand oben ist erforderlich", - "quantity_decimals" => "Quantity Decimals", - "quick_cash_enable" => "", - "quote_default_comments" => "", - "receipt" => "Eingang", - "receipt_category" => "", - "receipt_configuration" => "Druckereinstellungen", - "receipt_default" => "Default", - "receipt_font_size" => "", - "receipt_font_size_number" => "", - "receipt_font_size_required" => "", - "receipt_info" => "Quittungsinformation", - "receipt_printer" => "Quittungsdrucker", - "receipt_short" => "Short", - "receipt_show_company_name" => "", - "receipt_show_description" => "Show Description", - "receipt_show_serialnumber" => "Show Serial Number", - "receipt_show_tax_ind" => "", - "receipt_show_taxes" => "Zeige MWSt", - "receipt_show_total_discount" => "Zeige Gesamtrabatt", - "receipt_template" => "Receipt Template", - "receiving_calculate_average_price" => "Berechne Durchschnittseinkaufspreis", - "recv_invoice_format" => "Format Eingangsrechnung", - "register_mode_default" => "", - "report_an_issue" => "", - "return_policy_required" => "Rücknahmepolitik erforderlich", - "reward" => "", - "reward_configuration" => "", - "right" => "Right", - "sales_invoice_format" => "Format Verkaufsrechnung", - "sales_quote_format" => "", - "saved_successfully" => "Einstellungen erfolgreich gesichert", - "saved_unsuccessfully" => "Einstellungen konnten nicht gesichert werden", - "security_issue" => "Security Vulnerability Warning", - "server_notice" => "Please use the below info for issue reporting.", - "service_charge" => "", - "show_due_enable" => "", - "show_office_group" => "", - "statistics" => "Send statistics", - "statistics_tooltip" => "Send statistics for development and feature improvement purposes", - "stock_location" => "Lagerort", - "stock_location_duplicate" => "Bitte verwenden Sie einen eindeutigen Lagerort", - "stock_location_invalid_chars" => "Der Lagerort kann keine Unterstriche enthalten", - "stock_location_required" => "Lagerort Nummer ist erforderlich", - "suggestions_fifth_column" => "", - "suggestions_first_column" => "", - "suggestions_fourth_column" => "", - "suggestions_layout" => "", - "suggestions_second_column" => "", - "suggestions_third_column" => "", - "system_conf" => "Setup & Conf", - "system_info" => "System Info", - "table" => "", - "table_configuration" => "", - "takings_printer" => "Takings Printer", - "tax" => "", - "tax_category" => "", - "tax_category_duplicate" => "", - "tax_category_invalid_chars" => "", - "tax_category_required" => "", - "tax_category_used" => "", - "tax_configuration" => "", - "tax_decimals" => "Tax Decimals", - "tax_id" => "", - "tax_included" => "MWSt inbegriffen", - "theme" => "Design", - "theme_preview" => "", - "thousands_separator" => "Tausendertrennzeichen", - "timezone" => "Zeitzone", - "timezone_error" => "", - "top" => "Top", - "use_destination_based_tax" => "", - "user_timezone" => "", - "website" => "Website", - "wholesale_markup" => "", - "work_order_enable" => "", - "work_order_format" => "", + "address" => "Adresse", + "address_required" => "Adresse ist erforderlich", + "all_set" => "All file permissions are set correctly!", + "allow_duplicate_barcodes" => "", + "apostrophe" => "apostrophe", + "backup_button" => "Sicherung", + "backup_database" => "Sicherungs-Datenbank", + "barcode" => "Barcodes", + "barcode_company" => "Firmenname", + "barcode_configuration" => "Barcodes", + "barcode_content" => "Barcode Inhalt", + "barcode_first_row" => "Erste Zeile", + "barcode_font" => "Schrift", + "barcode_formats" => "", + "barcode_generate_if_empty" => "Generiere Barcode wenn leer", + "barcode_height" => "Höhe", + "barcode_id" => "Artikel-Nr/Name", + "barcode_info" => "Barcode Einstellung", + "barcode_layout" => "Barcode Layout", + "barcode_name" => "Name", + "barcode_number" => "UPC/EAN/ISBN", + "barcode_number_in_row" => "Nummer in Zeile", + "barcode_page_cellspacing" => "Zellenabstand auf Seite", + "barcode_page_width" => "Seitenbreite", + "barcode_price" => "Preis", + "barcode_second_row" => "Zeile 2", + "barcode_third_row" => "Zeile 3", + "barcode_tooltip" => "", + "barcode_type" => "Barcode Typ", + "barcode_width" => "Breite (px)", + "bottom" => "Bottom", + "cash_button" => "", + "cash_button_1" => "", + "cash_button_2" => "", + "cash_button_3" => "", + "cash_button_4" => "", + "cash_button_5" => "", + "cash_button_6" => "", + "cash_decimals" => "", + "cash_decimals_tooltip" => "", + "cash_rounding" => "", + "category_dropdown" => "", + "center" => "Center", + "change_apperance_tooltip" => "", + "comma" => "comma", + "company" => "Firmenname", + "company_avatar" => "", + "company_change_image" => "Change Image", + "company_logo" => "Logo", + "company_remove_image" => "Remove Image", + "company_required" => "Firmenname ist erforderlich", + "company_select_image" => "Select Image", + "company_website_url" => "Webseite ist nicht in korrektem Format", + "country_codes" => "Country Codes", + "country_codes_tooltip" => "Comma separated list of country codes for nominatim address lookup.", + "currency_code" => "", + "currency_decimals" => "Currency Decimals", + "currency_symbol" => "Währungssymbol", + "current_employee_only" => "", + "customer_reward" => "", + "customer_reward_duplicate" => "", + "customer_reward_enable" => "", + "customer_reward_invalid_chars" => "", + "customer_reward_required" => "", + "customer_sales_tax_support" => "", + "date_or_time_format" => "", + "datetimeformat" => "Datum und Zeit", + "decimal_point" => "Dezimaltrennzeichen", + "default_barcode_font_size_number" => "Die Barcode Schriftgrösse muss eine Zahl sein", + "default_barcode_font_size_required" => "Die Barcode Schriftgrösse ist erforderlich", + "default_barcode_height_number" => "Die Barcode Höhe muss eine Zahl sein", + "default_barcode_height_required" => "Die Barcode Höhe ist erforderlich", + "default_barcode_num_in_row_number" => "Die Barcode Num muss eine Zahl sein", + "default_barcode_num_in_row_required" => "Die Barcode Num ist erforderlich", + "default_barcode_page_cellspacing_number" => "Der Barcode Zellabstand muss eine Zahl sein", + "default_barcode_page_cellspacing_required" => "Der Barcode Zellabstand ist erforderlich", + "default_barcode_page_width_number" => "Die Barcode Seitenbreite muss eine Zahl sein", + "default_barcode_page_width_required" => "Die Barcode Seitenbreite ist erforderlich", + "default_barcode_width_number" => "Die Barcode Breite muss eine Zahl sein", + "default_barcode_width_required" => "Die Barcode Breite ist erforderlich", + "default_item_columns" => "", + "default_origin_tax_code" => "", + "default_receivings_discount" => "", + "default_receivings_discount_number" => "", + "default_receivings_discount_required" => "", + "default_sales_discount" => "Standard Verkaufsrabatt", + "default_sales_discount_number" => "Der Standard Verkaufsrabatt muss eine Zahl sein", + "default_sales_discount_required" => "Der Standard Verkaufsrabatt ist erforderlich", + "default_tax_category" => "", + "default_tax_code" => "", + "default_tax_jurisdiction" => "", + "default_tax_name_number" => "", + "default_tax_name_required" => "The default tax name is a required field", + "default_tax_rate" => "MWSt %", + "default_tax_rate_1" => "MWSt 1", + "default_tax_rate_2" => "MWSt 2", + "default_tax_rate_3" => "", + "default_tax_rate_number" => "MWSt Rate", + "default_tax_rate_required" => "MWSt ist erforderlich", + "derive_sale_quantity" => "", + "derive_sale_quantity_tooltip" => "", + "dinner_table" => "", + "dinner_table_duplicate" => "", + "dinner_table_enable" => "", + "dinner_table_invalid_chars" => "", + "dinner_table_required" => "", + "dot" => "dot", + "email" => "Email", + "email_configuration" => "Email Configuration", + "email_mailpath" => "Path to Sendmail", + "email_protocol" => "Protocol", + "email_receipt_check_behaviour" => "", + "email_receipt_check_behaviour_always" => "", + "email_receipt_check_behaviour_last" => "", + "email_receipt_check_behaviour_never" => "", + "email_smtp_crypto" => "SMTP Encryption", + "email_smtp_host" => "SMTP Server", + "email_smtp_pass" => "SMTP Password", + "email_smtp_port" => "SMTP Port", + "email_smtp_timeout" => "SMTP Timeout (s)", + "email_smtp_user" => "SMTP Username", + "enable_avatar" => "", + "enable_avatar_tooltip" => "", + "enable_dropdown_tooltip" => "", + "enable_new_look" => "", + "enable_right_bar" => "", + "enable_right_bar_tooltip" => "", + "enforce_privacy" => "", + "enforce_privacy_tooltip" => "", + "fax" => "Fax", + "file_perm" => "There are problems with file permissions please fix and reload this page.", + "financial_year" => "", + "financial_year_apr" => "", + "financial_year_aug" => "", + "financial_year_dec" => "", + "financial_year_feb" => "", + "financial_year_jan" => "", + "financial_year_jul" => "", + "financial_year_jun" => "", + "financial_year_mar" => "", + "financial_year_may" => "", + "financial_year_nov" => "", + "financial_year_oct" => "", + "financial_year_sep" => "", + "floating_labels" => "", + "gcaptcha_enable" => "", + "gcaptcha_secret_key" => "", + "gcaptcha_secret_key_required" => "", + "gcaptcha_site_key" => "", + "gcaptcha_site_key_required" => "", + "gcaptcha_tooltip" => "", + "general" => "Einstellungen", + "general_configuration" => "Einstellungen", + "giftcard_number" => "", + "giftcard_random" => "", + "giftcard_series" => "", + "image_allowed_file_types" => "", + "image_max_height_tooltip" => "", + "image_max_size_tooltip" => "", + "image_max_width_tooltip" => "", + "image_restrictions" => "", + "include_hsn" => "", + "info" => "Instellungen", + "info_configuration" => "Instellungen", + "input_groups" => "", + "integrations" => "", + "integrations_configuration" => "", + "invoice" => "Rechnungs", + "invoice_configuration" => "Druckereinstellungen", + "invoice_default_comments" => "Rechnungskommentar", + "invoice_email_message" => "Rechnungsvorlage (Email)", + "invoice_enable" => "Enable Invoicing", + "invoice_printer" => "Rechnungsdrucker", + "invoice_type" => "", + "is_readable" => "", + "is_writable" => "is writable, but the permissions are higher than 750.", + "item_markup" => "", + "jsprintsetup_required" => "Warnung! Diese Funktion ist nur funktionsfähig", + "language" => "Sprache", + "last_used_invoice_number" => "", + "last_used_quote_number" => "", + "last_used_work_order_number" => "", + "left" => "Left", + "license" => "License", + "license_configuration" => "License Statement", + "line_sequence" => "", + "lines_per_page" => "Zeilen pro Seite", + "lines_per_page_number" => "Zeilen pro Seite muss eine Zahl sein", + "lines_per_page_required" => "Zeilen pro Seite ist erforderlich", + "locale" => "Länder", + "locale_configuration" => "Länderkonfiguration", + "locale_info" => "Info Länderkonfiguration", + "location" => "Lagerort", + "location_configuration" => "Lagerort", + "location_info" => "Lagerort-Information", + "login_form" => "", + "logout" => "Wollen Sie eine Sicherung machen vor dem Beenden? Klicke [OK] für Sicherung", + "mailchimp" => "", + "mailchimp_api_key" => "", + "mailchimp_configuration" => "", + "mailchimp_key_successfully" => "", + "mailchimp_key_unsuccessfully" => "", + "mailchimp_lists" => "", + "mailchimp_tooltip" => "", + "message" => "Message", + "message_configuration" => "Message Configuration", + "msg_msg" => "Saved Text Message", + "msg_msg_placeholder" => "If you wish to use a SMS template save your message here. Otherwise leave the box blank.", + "msg_pwd" => "SMS-API Password", + "msg_pwd_required" => "SMS-API Password is a required field", + "msg_src" => "SMS-API Sender ID", + "msg_src_required" => "SMS-API Sender ID is a required field", + "msg_uid" => "SMS-API Username", + "msg_uid_required" => "SMS-API Username is a required field", + "multi_pack_enabled" => "", + "no_risk" => "No security/vulnerability risks.", + "none" => "none", + "notify_alignment" => "Notification Popup Position", + "number_format" => "Zahlenformat", + "number_locale" => "Länderkonfiguration", + "number_locale_invalid" => "Die eingegebene Lokale ist falsch. Bitte sehen Sie sich den Link tim Tooltip an um einen korrekten Wert zu finden", + "number_locale_required" => "Localennummer ist ein Pflichtfeld", + "number_locale_tooltip" => "Finden Sie eine korrekte Lokale über diesen Link", + "os_timezone" => "", + "ospos_info" => "", + "payment_options_order" => "Payment Options Order", + "perm_risk" => "Permissions higher than 750 leaves this software at risk.", + "phone" => "Telefon", + "phone_required" => "Telefon ist erforderlich", + "print_bottom_margin" => "Unterer Rand", + "print_bottom_margin_number" => "Unterer Rand muss eine Zahl sein", + "print_bottom_margin_required" => "Unterer Rand ist erforderlich", + "print_delay_autoreturn" => "", + "print_delay_autoreturn_number" => "", + "print_delay_autoreturn_required" => "", + "print_footer" => "Drucke Browser Fusszeile", + "print_header" => "Drucke Browser Kopfzeile", + "print_left_margin" => "Rand links", + "print_left_margin_number" => "Rand links muss eine Zahl sein", + "print_left_margin_required" => "Rand links ist erforderlich", + "print_receipt_check_behaviour" => "", + "print_receipt_check_behaviour_always" => "", + "print_receipt_check_behaviour_last" => "", + "print_receipt_check_behaviour_never" => "", + "print_right_margin" => "Rand rechts", + "print_right_margin_number" => "Rand rechts muss eine Zahl sein", + "print_right_margin_required" => "Rand rechts ist erforderlich", + "print_silently" => "Zeige Druckdialog", + "print_top_margin" => "Rand oben", + "print_top_margin_number" => "Rand oben muss eine Zahl sein", + "print_top_margin_required" => "Rand oben ist erforderlich", + "quantity_decimals" => "Quantity Decimals", + "quick_cash_enable" => "", + "quote_default_comments" => "", + "receipt" => "Eingang", + "receipt_category" => "", + "receipt_configuration" => "Druckereinstellungen", + "receipt_default" => "Default", + "receipt_font_size" => "", + "receipt_font_size_number" => "", + "receipt_font_size_required" => "", + "receipt_info" => "Quittungsinformation", + "receipt_printer" => "Quittungsdrucker", + "receipt_short" => "Short", + "receipt_show_company_name" => "", + "receipt_show_description" => "Show Description", + "receipt_show_serialnumber" => "Show Serial Number", + "receipt_show_tax_ind" => "", + "receipt_show_taxes" => "Zeige MWSt", + "receipt_show_total_discount" => "Zeige Gesamtrabatt", + "receipt_template" => "Receipt Template", + "receiving_calculate_average_price" => "Berechne Durchschnittseinkaufspreis", + "recv_invoice_format" => "Format Eingangsrechnung", + "register_mode_default" => "", + "report_an_issue" => "", + "return_policy_required" => "Rücknahmepolitik erforderlich", + "reward" => "", + "reward_configuration" => "", + "right" => "Right", + "sales_invoice_format" => "Format Verkaufsrechnung", + "sales_quote_format" => "", + "saved_successfully" => "Einstellungen erfolgreich gesichert", + "saved_unsuccessfully" => "Einstellungen konnten nicht gesichert werden", + "security_issue" => "Security Vulnerability Warning", + "server_notice" => "Please use the below info for issue reporting.", + "service_charge" => "", + "show_due_enable" => "", + "show_office_group" => "", + "statistics" => "Send statistics", + "statistics_tooltip" => "Send statistics for development and feature improvement purposes", + "stock_location" => "Lagerort", + "stock_location_duplicate" => "Bitte verwenden Sie einen eindeutigen Lagerort", + "stock_location_invalid_chars" => "Der Lagerort kann keine Unterstriche enthalten", + "stock_location_required" => "Lagerort Nummer ist erforderlich", + "suggestions_fifth_column" => "", + "suggestions_first_column" => "", + "suggestions_fourth_column" => "", + "suggestions_layout" => "", + "suggestions_second_column" => "", + "suggestions_third_column" => "", + "system_conf" => "Setup & Conf", + "system_info" => "System Info", + "table" => "", + "table_configuration" => "", + "takings_printer" => "Takings Printer", + "tax" => "", + "tax_category" => "", + "tax_category_duplicate" => "", + "tax_category_invalid_chars" => "", + "tax_category_required" => "", + "tax_category_used" => "", + "tax_configuration" => "", + "tax_decimals" => "Tax Decimals", + "tax_id" => "", + "tax_included" => "MWSt inbegriffen", + "theme" => "Design", + "theme_preview" => "", + "thousands_separator" => "Tausendertrennzeichen", + "timezone" => "Zeitzone", + "timezone_error" => "", + "top" => "Top", + "use_destination_based_tax" => "", + "user_timezone" => "", + "website" => "Website", + "wholesale_markup" => "", + "work_order_enable" => "", + "work_order_format" => "", ]; diff --git a/app/Language/de-CH/Customers.php b/app/Language/de-CH/Customers.php index 458998363..bec70e704 100644 --- a/app/Language/de-CH/Customers.php +++ b/app/Language/de-CH/Customers.php @@ -1,56 +1,56 @@ "Konto-Nr.", - "account_number_duplicate" => "Diese Konto-Nr. existiert bereits", - "available_points" => "", - "available_points_value" => "", - "average" => "", - "avg_discount" => "", - "basic_information" => "", - "cannot_be_deleted" => "Kunde kann nicht gelöscht werden, ein oder mehrere Kunden weisen Verkäufe auf", - "company_name" => "Firmenname", - "confirm_delete" => "Wollen Sie die gewählten Kunden wirklich löschen?", - "confirm_restore" => "", - "consent" => "", - "consent_required" => "", - "csv_import_failed" => "CSV Import fehlerhaft", - "csv_import_nodata_wrongformat" => "Your uploaded file has no data or wrong format", - "csv_import_partially_failed" => "Most Customers imported. But some were not, here is the list", - "csv_import_success" => "Import of Customers successful", - "customer" => "Kunde", - "date" => "", - "discount" => "Discount", - "discount_fixed" => "", - "discount_percent" => "", - "discount_type" => "", - "email_duplicate" => "", - "employee" => "", - "error_adding_updating" => "Fehler beim Hinzufügen/Ändern", - "import_items_csv" => "Importiere Kunden via CSV", - "mailchimp_activity_click" => "", - "mailchimp_activity_lastopen" => "", - "mailchimp_activity_open" => "", - "mailchimp_activity_total" => "", - "mailchimp_activity_unopen" => "", - "mailchimp_email_client" => "", - "mailchimp_info" => "", - "mailchimp_member_rating" => "", - "mailchimp_status" => "", - "mailchimp_vip" => "", - "max" => "", - "min" => "", - "new" => "Neuer Kunde", - "none_selected" => "Sie haben keinen Kunde zum Löschen gewählt", - "one_or_multiple" => "Kunde(n)", - "quantity" => "", - "stats_info" => "", - "successful_adding" => "Kunde erfolgreich hinzugefügt", - "successful_deleted" => "Löschung erfolgreich", - "successful_updating" => "Änderung erfolgreich", - "tax_code" => "", - "tax_id" => "", - "taxable" => "Steuerpflichtig", - "total" => "Total", - "update" => "Kunde ändern", - "rewards_package" => "", + "account_number" => "Konto-Nr.", + "account_number_duplicate" => "Diese Konto-Nr. existiert bereits", + "available_points" => "", + "available_points_value" => "", + "average" => "", + "avg_discount" => "", + "basic_information" => "", + "cannot_be_deleted" => "Kunde kann nicht gelöscht werden, ein oder mehrere Kunden weisen Verkäufe auf", + "company_name" => "Firmenname", + "confirm_delete" => "Wollen Sie die gewählten Kunden wirklich löschen?", + "confirm_restore" => "", + "consent" => "", + "consent_required" => "", + "csv_import_failed" => "CSV Import fehlerhaft", + "csv_import_nodata_wrongformat" => "Your uploaded file has no data or wrong format", + "csv_import_partially_failed" => "Most Customers imported. But some were not, here is the list", + "csv_import_success" => "Import of Customers successful", + "customer" => "Kunde", + "date" => "", + "discount" => "Discount", + "discount_fixed" => "", + "discount_percent" => "", + "discount_type" => "", + "email_duplicate" => "", + "employee" => "", + "error_adding_updating" => "Fehler beim Hinzufügen/Ändern", + "import_items_csv" => "Importiere Kunden via CSV", + "mailchimp_activity_click" => "", + "mailchimp_activity_lastopen" => "", + "mailchimp_activity_open" => "", + "mailchimp_activity_total" => "", + "mailchimp_activity_unopen" => "", + "mailchimp_email_client" => "", + "mailchimp_info" => "", + "mailchimp_member_rating" => "", + "mailchimp_status" => "", + "mailchimp_vip" => "", + "max" => "", + "min" => "", + "new" => "Neuer Kunde", + "none_selected" => "Sie haben keinen Kunde zum Löschen gewählt", + "one_or_multiple" => "Kunde(n)", + "quantity" => "", + "stats_info" => "", + "successful_adding" => "Kunde erfolgreich hinzugefügt", + "successful_deleted" => "Löschung erfolgreich", + "successful_updating" => "Änderung erfolgreich", + "tax_code" => "", + "tax_id" => "", + "taxable" => "Steuerpflichtig", + "total" => "Total", + "update" => "Kunde ändern", + "rewards_package" => "", ]; diff --git a/app/Language/de-CH/Datepicker.php b/app/Language/de-CH/Datepicker.php index 224b7e5d5..196447037 100644 --- a/app/Language/de-CH/Datepicker.php +++ b/app/Language/de-CH/Datepicker.php @@ -1,23 +1,23 @@ "Von Beginn weg", - "apply" => "Apply", - "cancel" => "Cancel", - "custom" => "Custom", - "from" => "From", - "last_30" => "Letzte 30 Tage", - "last_7" => "Letzte 7 Tage", - "last_financial_year" => "", - "last_month" => "Letzter Monat", - "last_year" => "Letztes Jahr", - "same_month_last_year" => "Dieser Monat letzten Jahres", - "same_month_to_same_day_last_year" => "Dieser Monat bis Heute letzten Jahres", - "this_financial_year" => "", - "this_month" => "Dieser Monat", - "this_year" => "Dieses Jahr", - "to" => "To", - "today" => "Heute", - "today_last_year" => "Heute letzten Jahres", - "weekstart" => "1", - "yesterday" => "Gestern", + "all_time" => "Von Beginn weg", + "apply" => "Apply", + "cancel" => "Cancel", + "custom" => "Custom", + "from" => "From", + "last_30" => "Letzte 30 Tage", + "last_7" => "Letzte 7 Tage", + "last_financial_year" => "", + "last_month" => "Letzter Monat", + "last_year" => "Letztes Jahr", + "same_month_last_year" => "Dieser Monat letzten Jahres", + "same_month_to_same_day_last_year" => "Dieser Monat bis Heute letzten Jahres", + "this_financial_year" => "", + "this_month" => "Dieser Monat", + "this_year" => "Dieses Jahr", + "to" => "To", + "today" => "Heute", + "today_last_year" => "Heute letzten Jahres", + "weekstart" => "1", + "yesterday" => "Gestern", ]; diff --git a/app/Language/de-CH/Employees.php b/app/Language/de-CH/Employees.php index 2545a12a9..b1f035998 100644 --- a/app/Language/de-CH/Employees.php +++ b/app/Language/de-CH/Employees.php @@ -1,44 +1,44 @@ "", - "basic_information" => "Mitarbeiter-Information", - "cannot_be_deleted" => "Konnte gewählten Mitarbeiter nicht löschen, einer oder mehrere weisen Verkäufe aus.", - "change_employee" => "", - "change_password" => "", - "clerk" => "", - "commission" => "", - "confirm_delete" => "Wollen Sie diesen Mitarbeiter wirklich löschen?", - "confirm_restore" => "", - "current_password" => "", - "current_password_invalid" => "", - "employee" => "Mitarbeiter", - "error_adding_updating" => "Fehler beim Hinzufügen/Ändern", - "error_deleting_demo_admin" => "Sie können den Admin nicht löschen", - "error_updating_demo_admin" => "Sie können den Admin nicht ändern", - "language" => "", - "login_info" => "Mitarbeiter Login", - "manager" => "", - "new" => "Neuer Mitarbeiter", - "none_selected" => "Sie haben keinen Mitarbeiter zum Löschen gewählt", - "one_or_multiple" => "Mitarbeiter", - "password" => "Passwort", - "password_minlength" => "Passwort muss mindestens 8 Zeichen lang sein", - "password_must_match" => "Passwörter passen nicht überein", - "password_not_must_match" => "", - "password_required" => "Passwort ist erforderlich", - "permission_desc" => "Klicken Sie unten, um die jeweiligen Zugangsrechte zu aktivieren", - "permission_info" => "Mitarbeiter Zugangsrechte", - "repeat_password" => "Wiederhole Passwort", - "subpermission_required" => "Fügen Sie mindestens ein Zugangsrecht pro Modul hinzu", - "successful_adding" => "Hinzufügen erfolgreich", - "successful_change_password" => "", - "successful_deleted" => "Löschung erfolgreich", - "successful_updating" => "Änderung erfolgreich", - "system_language" => "", - "unsuccessful_change_password" => "", - "update" => "Mitarbeiter ändern", - "username" => "Benutzername", - "username_duplicate" => "", - "username_minlength" => "Benutzername muss mindestens 5 Zeichen lang sein", - "username_required" => "Benutzername ist erforderlich", + "administrator" => "", + "basic_information" => "Mitarbeiter-Information", + "cannot_be_deleted" => "Konnte gewählten Mitarbeiter nicht löschen, einer oder mehrere weisen Verkäufe aus.", + "change_employee" => "", + "change_password" => "", + "clerk" => "", + "commission" => "", + "confirm_delete" => "Wollen Sie diesen Mitarbeiter wirklich löschen?", + "confirm_restore" => "", + "current_password" => "", + "current_password_invalid" => "", + "employee" => "Mitarbeiter", + "error_adding_updating" => "Fehler beim Hinzufügen/Ändern", + "error_deleting_demo_admin" => "Sie können den Admin nicht löschen", + "error_updating_demo_admin" => "Sie können den Admin nicht ändern", + "language" => "", + "login_info" => "Mitarbeiter Login", + "manager" => "", + "new" => "Neuer Mitarbeiter", + "none_selected" => "Sie haben keinen Mitarbeiter zum Löschen gewählt", + "one_or_multiple" => "Mitarbeiter", + "password" => "Passwort", + "password_minlength" => "Passwort muss mindestens 8 Zeichen lang sein", + "password_must_match" => "Passwörter passen nicht überein", + "password_not_must_match" => "", + "password_required" => "Passwort ist erforderlich", + "permission_desc" => "Klicken Sie unten, um die jeweiligen Zugangsrechte zu aktivieren", + "permission_info" => "Mitarbeiter Zugangsrechte", + "repeat_password" => "Wiederhole Passwort", + "subpermission_required" => "Fügen Sie mindestens ein Zugangsrecht pro Modul hinzu", + "successful_adding" => "Hinzufügen erfolgreich", + "successful_change_password" => "", + "successful_deleted" => "Löschung erfolgreich", + "successful_updating" => "Änderung erfolgreich", + "system_language" => "", + "unsuccessful_change_password" => "", + "update" => "Mitarbeiter ändern", + "username" => "Benutzername", + "username_duplicate" => "", + "username_minlength" => "Benutzername muss mindestens 5 Zeichen lang sein", + "username_required" => "Benutzername ist erforderlich", ]; diff --git a/app/Language/de-CH/Enum.php b/app/Language/de-CH/Enum.php index c39655c3b..1ed7e9313 100644 --- a/app/Language/de-CH/Enum.php +++ b/app/Language/de-CH/Enum.php @@ -1,10 +1,10 @@ "", - "half_even" => "", - "half_five" => "", - "half_odd" => "", - "half_up" => "", - "round_down" => "", - "round_up" => "", + "half_down" => "", + "half_even" => "", + "half_five" => "", + "half_odd" => "", + "half_up" => "", + "round_down" => "", + "round_up" => "", ]; diff --git a/app/Language/de-CH/Error.php b/app/Language/de-CH/Error.php index ee695f9b1..80961c9b3 100644 --- a/app/Language/de-CH/Error.php +++ b/app/Language/de-CH/Error.php @@ -1,5 +1,5 @@ "Sie haben nicht die Zugangsrechte für das gewählte Modul", - "unknown" => "Unbekannter Fehler", + "no_permission_module" => "Sie haben nicht die Zugangsrechte für das gewählte Modul", + "unknown" => "Unbekannter Fehler", ]; diff --git a/app/Language/de-CH/Expenses.php b/app/Language/de-CH/Expenses.php index e9e237376..8ef1fe954 100644 --- a/app/Language/de-CH/Expenses.php +++ b/app/Language/de-CH/Expenses.php @@ -1,50 +1,50 @@ "", - "amount" => "", - "amount_number" => "", - "amount_required" => "", - "by_category" => "", - "cannot_be_deleted" => "", - "cash" => "", - "cash_filter" => "", - "categories_name" => "", - "category_required" => "", - "check" => "", - "check_filter" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "credit" => "", - "credit_filter" => "", - "date" => "", - "date_number" => "", - "date_required" => "", - "debit" => "", - "debit_filter" => "", - "description" => "", - "due" => "", - "due_filter" => "", - "employee" => "", - "error_adding_updating" => "", - "expense_id" => "", - "expenses_employee" => "", - "info" => "", - "ip_address" => "", - "is_deleted" => "", - "name_required" => "", - "new" => "", - "new_supplier" => "", - "no_expenses_to_display" => "", - "none_selected" => "", - "one_or_multiple" => "", - "payment" => "", - "start_typing_supplier_name" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "supplier_name" => "", - "supplier_tax_code" => "", - "tax_amount" => "", - "tax_amount_number" => "", - "update" => "", + "add_item" => "", + "amount" => "", + "amount_number" => "", + "amount_required" => "", + "by_category" => "", + "cannot_be_deleted" => "", + "cash" => "", + "cash_filter" => "", + "categories_name" => "", + "category_required" => "", + "check" => "", + "check_filter" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "credit" => "", + "credit_filter" => "", + "date" => "", + "date_number" => "", + "date_required" => "", + "debit" => "", + "debit_filter" => "", + "description" => "", + "due" => "", + "due_filter" => "", + "employee" => "", + "error_adding_updating" => "", + "expense_id" => "", + "expenses_employee" => "", + "info" => "", + "ip_address" => "", + "is_deleted" => "", + "name_required" => "", + "new" => "", + "new_supplier" => "", + "no_expenses_to_display" => "", + "none_selected" => "", + "one_or_multiple" => "", + "payment" => "", + "start_typing_supplier_name" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "supplier_name" => "", + "supplier_tax_code" => "", + "tax_amount" => "", + "tax_amount_number" => "", + "update" => "", ]; diff --git a/app/Language/de-CH/Expenses_categories.php b/app/Language/de-CH/Expenses_categories.php index 03169e528..7d3b08c27 100644 --- a/app/Language/de-CH/Expenses_categories.php +++ b/app/Language/de-CH/Expenses_categories.php @@ -1,22 +1,22 @@ "", - "add_item" => "", - "cannot_be_deleted" => "", - "category_id" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "description" => "", - "error_adding_updating" => "", - "info" => "", - "name" => "", - "new" => "", - "no_expenses_categories_to_display" => "", - "none_selected" => "", - "one_or_multiple" => "", - "quantity" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "update" => "", + "category_name_required" => "", + "add_item" => "", + "cannot_be_deleted" => "", + "category_id" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "description" => "", + "error_adding_updating" => "", + "info" => "", + "name" => "", + "new" => "", + "no_expenses_categories_to_display" => "", + "none_selected" => "", + "one_or_multiple" => "", + "quantity" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "update" => "", ]; diff --git a/app/Language/de-CH/Giftcards.php b/app/Language/de-CH/Giftcards.php index f43876a95..f42e56d51 100644 --- a/app/Language/de-CH/Giftcards.php +++ b/app/Language/de-CH/Giftcards.php @@ -1,71 +1,71 @@ "Bestandsänderung", - "allow_alt_description" => "Erlaube Alternative Bezeichnung", - "bulk_edit" => "Sammeländerung", - "cannot_be_deleted" => "Konnte gewählte Gutscheine nicht löschen, einer oder mehrere weisen Verkäufe auf", - "cannot_find_giftcard" => "Konnte keinen Gutschein finden", - "cannot_use" => "Giftcard {0} cannot be used for this sale. Invalid Customer!", - "card_value" => "Wert", - "category" => "Kategorie", - "change_all_to_allow_alt_desc" => "Erlaube Alt. Bez. für ALLE", - "change_all_to_not_allow_allow_desc" => "Erlaube Alt. Bez. für KEINEN", - "change_all_to_serialized" => "Ändere alle zu serialisiert", - "change_all_to_unserialized" => "Ändere alle zu NICHT serialisiert", - "confirm_bulk_edit" => "Wollen Sie alle gewählten Gutscheine ändern?", - "confirm_delete" => "Wollen Sie alle gewählten Gutscheine löschen?", - "confirm_restore" => "", - "cost_price" => "Einstandspreis", - "count" => "Bestandsänderung", - "csv_import_failed" => "CSV Import fehlerhaft", - "current_quantity" => "Aktuelle Menge", - "description" => "Bezeichnung", - "details_count" => "Bestandsdetails", - "do_nothing" => "Tue nichts", - "edit_fields_you_want_to_update" => "Wollen Sie die Felder für ALLE gewählten Gutscheine ändern?", - "edit_multiple_giftcards" => "Sammeländerung", - "error_adding_updating" => "Fehler beim Hinzufügen/Ändern", - "error_updating_multiple" => "Fehler beim Ändern", - "generate_barcodes" => "Generiere Barcodes", - "giftcard" => "Gutschein", - "giftcard_number" => "Gutschein-Nr.", - "info_provided_by" => "Info provided by", - "inventory_comments" => "Kommentare", - "is_serialized" => "Gutschein hat Seriennummer", - "low_inventory_giftcards" => "Gutscheine mit Minderbestand", - "manually_editing_of_quantity" => "Manuelle Bestandesänderung", - "must_select_giftcard_for_barcode" => "Sie müssen einen Gutschein wählen, um Barcodes zu generieren", - "new" => "Neuer Gutschein", - "no_description_giftcards" => "Gutscheine ohne Beschreibung", - "no_giftcards_to_display" => "Keine Gutscheine zum Anzeigen", - "none" => "Nichts", - "none_selected" => "Sie haben keine Gutscheine zum Ändern gewählt", - "number" => "Gutschein-Nr. muss eine Zahl sein", - "number_information" => "Gutschein Nummer", - "number_required" => "Gutschein Nummer muss eine Zahl sein", - "one_or_multiple" => "Gutschein(e)", - "person_id" => "Kunde", - "quantity" => "Menge", - "quantity_required" => "Menge ist erforderlich", - "remaining_balance" => "Restwert von Gutschein {0} ist {1}!", - "reorder_level" => "Mindestbestand", - "retrive_giftcard_info" => "Gutschein Information", - "sales_tax_1" => "Umsatzsteuer 1", - "sales_tax_2" => "Umsatzsteuer 2", - "serialized_giftcards" => "Serialisierte Gutscheine", - "successful_adding" => "Hinzufügen erfolgreich", - "successful_bulk_edit" => "Sie haben die gewählten Gutscheine erfolgreich geändert", - "successful_deleted" => "Löschung erfolgreich", - "successful_updating" => "Änderung erfolgreich", - "supplier" => "Lieferant", - "tax_1" => "MWSt 1", - "tax_2" => "MWSt 2", - "tax_percent" => "Prozent", - "tax_percents" => "Prozente", - "unit_price" => "Preis", - "upc_database" => "UPC Datenbank", - "update" => "Gutschein ändern", - "use_inventory_menu" => "Verwende Lager Menu", - "value" => "Gutschein-Wert muss eine Zahl sein", - "value_required" => "Gutschein-Wert erforderlich", + "add_minus" => "Bestandsänderung", + "allow_alt_description" => "Erlaube Alternative Bezeichnung", + "bulk_edit" => "Sammeländerung", + "cannot_be_deleted" => "Konnte gewählte Gutscheine nicht löschen, einer oder mehrere weisen Verkäufe auf", + "cannot_find_giftcard" => "Konnte keinen Gutschein finden", + "cannot_use" => "Giftcard {0} cannot be used for this sale. Invalid Customer!", + "card_value" => "Wert", + "category" => "Kategorie", + "change_all_to_allow_alt_desc" => "Erlaube Alt. Bez. für ALLE", + "change_all_to_not_allow_allow_desc" => "Erlaube Alt. Bez. für KEINEN", + "change_all_to_serialized" => "Ändere alle zu serialisiert", + "change_all_to_unserialized" => "Ändere alle zu NICHT serialisiert", + "confirm_bulk_edit" => "Wollen Sie alle gewählten Gutscheine ändern?", + "confirm_delete" => "Wollen Sie alle gewählten Gutscheine löschen?", + "confirm_restore" => "", + "cost_price" => "Einstandspreis", + "count" => "Bestandsänderung", + "csv_import_failed" => "CSV Import fehlerhaft", + "current_quantity" => "Aktuelle Menge", + "description" => "Bezeichnung", + "details_count" => "Bestandsdetails", + "do_nothing" => "Tue nichts", + "edit_fields_you_want_to_update" => "Wollen Sie die Felder für ALLE gewählten Gutscheine ändern?", + "edit_multiple_giftcards" => "Sammeländerung", + "error_adding_updating" => "Fehler beim Hinzufügen/Ändern", + "error_updating_multiple" => "Fehler beim Ändern", + "generate_barcodes" => "Generiere Barcodes", + "giftcard" => "Gutschein", + "giftcard_number" => "Gutschein-Nr.", + "info_provided_by" => "Info provided by", + "inventory_comments" => "Kommentare", + "is_serialized" => "Gutschein hat Seriennummer", + "low_inventory_giftcards" => "Gutscheine mit Minderbestand", + "manually_editing_of_quantity" => "Manuelle Bestandesänderung", + "must_select_giftcard_for_barcode" => "Sie müssen einen Gutschein wählen, um Barcodes zu generieren", + "new" => "Neuer Gutschein", + "no_description_giftcards" => "Gutscheine ohne Beschreibung", + "no_giftcards_to_display" => "Keine Gutscheine zum Anzeigen", + "none" => "Nichts", + "none_selected" => "Sie haben keine Gutscheine zum Ändern gewählt", + "number" => "Gutschein-Nr. muss eine Zahl sein", + "number_information" => "Gutschein Nummer", + "number_required" => "Gutschein Nummer muss eine Zahl sein", + "one_or_multiple" => "Gutschein(e)", + "person_id" => "Kunde", + "quantity" => "Menge", + "quantity_required" => "Menge ist erforderlich", + "remaining_balance" => "Restwert von Gutschein {0} ist {1}!", + "reorder_level" => "Mindestbestand", + "retrive_giftcard_info" => "Gutschein Information", + "sales_tax_1" => "Umsatzsteuer 1", + "sales_tax_2" => "Umsatzsteuer 2", + "serialized_giftcards" => "Serialisierte Gutscheine", + "successful_adding" => "Hinzufügen erfolgreich", + "successful_bulk_edit" => "Sie haben die gewählten Gutscheine erfolgreich geändert", + "successful_deleted" => "Löschung erfolgreich", + "successful_updating" => "Änderung erfolgreich", + "supplier" => "Lieferant", + "tax_1" => "MWSt 1", + "tax_2" => "MWSt 2", + "tax_percent" => "Prozent", + "tax_percents" => "Prozente", + "unit_price" => "Preis", + "upc_database" => "UPC Datenbank", + "update" => "Gutschein ändern", + "use_inventory_menu" => "Verwende Lager Menu", + "value" => "Gutschein-Wert muss eine Zahl sein", + "value_required" => "Gutschein-Wert erforderlich", ]; diff --git a/app/Language/de-CH/Item_kits.php b/app/Language/de-CH/Item_kits.php index f45f307f1..d9d7255f3 100644 --- a/app/Language/de-CH/Item_kits.php +++ b/app/Language/de-CH/Item_kits.php @@ -1,41 +1,41 @@ "Neuer Artikel", - "all" => "", - "cannot_be_deleted" => "Konnte Artikel-Set(s) nicht löschen", - "confirm_delete" => "Wollen Sie die gewählten Artikel-Sets wirklich löschen?", - "confirm_restore" => "", - "description" => "Beschreibung Artikel-Set", - "discount" => "", - "discount_fixed" => "", - "discount_percent" => "", - "discount_type" => "", - "error_adding_updating" => "Fehler beim Hinzufügen/Ändern", - "find_kit_item" => "", - "info" => "Artikel-Set Information", - "item" => "Artikel", - "item_kit_number" => "", - "item_kit_number_duplicate" => "", - "item_number" => "", - "item_number_duplicate" => "", - "items" => "Artikel", - "kit" => "Set-ID", - "kit_and_components" => "", - "kit_and_stock" => "", - "kit_only" => "", - "name" => "Name", - "new" => "Neues Artikel-Set", - "no_item_kits_to_display" => "Keine Artikel-Sets zum Anzeigen", - "none_selected" => "Sie haben keine Artikel-Sets ausgewählt", - "one_or_multiple" => "Artikel-Set(s)", - "price_option" => "", - "priced_only" => "", - "print_option" => "", - "quantity" => "Menge", - "sequence" => "", - "successful_adding" => "Artikel-Set erfolgreich hinzugefügt", - "successful_deleted" => "Löschung erfolgreich", - "successful_updating" => "Änderung erfolgreich", - "unit_price" => "", - "update" => "Artikel-Set ändern", + "add_item" => "Neuer Artikel", + "all" => "", + "cannot_be_deleted" => "Konnte Artikel-Set(s) nicht löschen", + "confirm_delete" => "Wollen Sie die gewählten Artikel-Sets wirklich löschen?", + "confirm_restore" => "", + "description" => "Beschreibung Artikel-Set", + "discount" => "", + "discount_fixed" => "", + "discount_percent" => "", + "discount_type" => "", + "error_adding_updating" => "Fehler beim Hinzufügen/Ändern", + "find_kit_item" => "", + "info" => "Artikel-Set Information", + "item" => "Artikel", + "item_kit_number" => "", + "item_kit_number_duplicate" => "", + "item_number" => "", + "item_number_duplicate" => "", + "items" => "Artikel", + "kit" => "Set-ID", + "kit_and_components" => "", + "kit_and_stock" => "", + "kit_only" => "", + "name" => "Name", + "new" => "Neues Artikel-Set", + "no_item_kits_to_display" => "Keine Artikel-Sets zum Anzeigen", + "none_selected" => "Sie haben keine Artikel-Sets ausgewählt", + "one_or_multiple" => "Artikel-Set(s)", + "price_option" => "", + "priced_only" => "", + "print_option" => "", + "quantity" => "Menge", + "sequence" => "", + "successful_adding" => "Artikel-Set erfolgreich hinzugefügt", + "successful_deleted" => "Löschung erfolgreich", + "successful_updating" => "Änderung erfolgreich", + "unit_price" => "", + "update" => "Artikel-Set ändern", ]; diff --git a/app/Language/de-CH/Items.php b/app/Language/de-CH/Items.php index 5b9f36e8d..731f9cbd8 100644 --- a/app/Language/de-CH/Items.php +++ b/app/Language/de-CH/Items.php @@ -1,120 +1,120 @@ "Bestandsänderung", - "allow_alt_description" => "Erlaube Alt. Bez.", - "amount_entry" => "", - "bulk_edit" => "Sammeländerung", - "buy_price_required" => "Einkaufspreis ist erforderlich", - "cannot_be_deleted" => "Gewählte Artikel können nicht gelöscht werden, einer odere mehrere weisen Verkäufe auf", - "cannot_find_item" => "Konnte Artikel nicht finden", - "categories" => "", - "category" => "Kategorie", - "category_new" => "", - "category_required" => "Kategorie ist erforderlich", - "change_all_to_allow_alt_desc" => "Ändere alle zu Erlaube Alt. Bez.", - "change_all_to_not_allow_allow_desc" => "Ändere alle zu NICHT Erlaube Alt. Bez.", - "change_all_to_serialized" => "Ändere alle zu serialisiert", - "change_all_to_unserialized" => "Ändere alle zu nicht serialisiert", - "change_image" => "Change Image", - "confirm_bulk_edit" => "Wollen Sie alle gewählten Artikel ändern?", - "confirm_bulk_edit_wipe_taxes" => "All item tax information will be replaced!", - "confirm_delete" => "Wollen Sie alle gewählten Artikel löschen?", - "confirm_restore" => "", - "cost_price" => "Einstandspreis", - "cost_price_number" => "Einstandspresi muss eine Zahl sein", - "cost_price_required" => "Einstandspreis ist erforderlich", - "count" => "Ändere Bestand", - "csv_import_failed" => "CSV Import fehlerhaft", - "csv_import_nodata_wrongformat" => "Your uploaded file has no data or wrong format", - "csv_import_partially_failed" => "Most Items imported. But some were not, here is the list", - "csv_import_success" => "Import of Items successful", - "current_quantity" => "Aktuelle Menge", - "default_pack_name" => "", - "description" => "Bezeichnung", - "details_count" => "Lagerbestandsdetails", - "do_nothing" => "Tue nichts", - "edit" => "", - "edit_fields_you_want_to_update" => "Ändern Sie die Felder für ALLE gewählten Artikel?", - "edit_multiple_items" => "Sammeländerung", - "empty_upc_items" => "Leere UPC Artikel", - "error_adding_updating" => "Fehler beim Hinzufügen/Ändern", - "error_updating_multiple" => "Fehler beim Ändern", - "generate_barcodes" => "Generiere Barcodes", - "hsn_code" => "", - "image" => "Bild", - "import_items_csv" => "Importiere Artikel mit CSV Datei", - "info_provided_by" => "Info provided by", - "inventory" => "Lagerbestand", - "inventory_CSV_import_quantity" => "", - "inventory_comments" => "Bemerkungen", - "inventory_data_tracking" => "", - "inventory_date" => "", - "inventory_employee" => "", - "inventory_in_out_quantity" => "", - "inventory_remarks" => "", - "is_deleted" => "Gelöscht", - "is_printed" => "", - "is_serialized" => "Artikel hat Serien-Nr.", - "item" => "Artikel", - "item_id" => "", - "item_number" => "UPC/EAN/ISBN", - "item_number_duplicate" => "Die Artikelnummer existiert bereits in der Datenbank", - "kit" => "", - "location" => "Ort", - "low_inventory_items" => "nicht am Lager", - "low_sell_item" => "", - "manually_editing_of_quantity" => "Manuelle Bestandesänderung", - "markup" => "", - "name" => "Artikelname", - "name_required" => "Artikelname ist erforderlich", - "new" => "Neuer Artikel", - "no_description_items" => "Artikel ohne Bezeichnung", - "no_items_to_display" => "Keine Artikel zum Anzeigen", - "none" => "Nichts", - "none_selected" => "Sie haben keine Artikel zum Ändern gewählt", - "nonstock" => "", - "number_information" => "Artikelnummer", - "number_required" => "UPC/EAN/ISBN ist erforderlich", - "one_or_multiple" => "Artikel", - "pack_name" => "", - "qty_per_pack" => "", - "quantity" => "Menge", - "quantity_number" => "Menge muss eine Zahl sein", - "quantity_required" => "Menge ist erforderlich", - "receiving_quantity" => "Eingangsmenge", - "remove_image" => "Remove Image", - "reorder_level" => "Mindestbestand", - "reorder_level_number" => "Mindestbestand muss eine Zahl sein", - "reorder_level_required" => "Mindestbestand ist erforderlich", - "retrive_item_info" => "Artikelinformation", - "sales_tax_1" => "Umsatzsteuer 1", - "sales_tax_2" => "Umsatzsteuer 2", - "search_attributes" => "Suche in Zusatzfeldern", - "select_image" => "Select Image", - "serialized_items" => "Serialisierte Artikel", - "standard" => "", - "stock" => "", - "stock_location" => "Lagerort", - "stock_type" => "", - "successful_adding" => "Artikel erfolgreich hinzugefügt", - "successful_bulk_edit" => "Die gewählten Artikel wurden erforlgreich geändert", - "successful_deleted" => "Löschung erfolgreich", - "successful_updating" => "Änderung erfolgreich", - "supplier" => "Lieferant", - "tax_1" => "MWSt 1", - "tax_2" => "MWSt 2", - "tax_3" => "", - "tax_category" => "", - "tax_percent" => "MWSt %", - "tax_percent_number" => "", - "tax_percent_required" => "MWSt % ist erforderlich", - "tax_percents" => "Steuerprozent(e)", - "temp" => "", - "type" => "", - "unit_price" => "Preis", - "unit_price_number" => "Preis muss eine Zahl sein", - "unit_price_required" => "Preis ist erforderlich", - "upc_database" => "UPC Datenbank", - "update" => "Ändere Artikel", - "use_inventory_menu" => "Verwende Bestandesmenu", + "add_minus" => "Bestandsänderung", + "allow_alt_description" => "Erlaube Alt. Bez.", + "amount_entry" => "", + "bulk_edit" => "Sammeländerung", + "buy_price_required" => "Einkaufspreis ist erforderlich", + "cannot_be_deleted" => "Gewählte Artikel können nicht gelöscht werden, einer odere mehrere weisen Verkäufe auf", + "cannot_find_item" => "Konnte Artikel nicht finden", + "categories" => "", + "category" => "Kategorie", + "category_new" => "", + "category_required" => "Kategorie ist erforderlich", + "change_all_to_allow_alt_desc" => "Ändere alle zu Erlaube Alt. Bez.", + "change_all_to_not_allow_allow_desc" => "Ändere alle zu NICHT Erlaube Alt. Bez.", + "change_all_to_serialized" => "Ändere alle zu serialisiert", + "change_all_to_unserialized" => "Ändere alle zu nicht serialisiert", + "change_image" => "Change Image", + "confirm_bulk_edit" => "Wollen Sie alle gewählten Artikel ändern?", + "confirm_bulk_edit_wipe_taxes" => "All item tax information will be replaced!", + "confirm_delete" => "Wollen Sie alle gewählten Artikel löschen?", + "confirm_restore" => "", + "cost_price" => "Einstandspreis", + "cost_price_number" => "Einstandspresi muss eine Zahl sein", + "cost_price_required" => "Einstandspreis ist erforderlich", + "count" => "Ändere Bestand", + "csv_import_failed" => "CSV Import fehlerhaft", + "csv_import_nodata_wrongformat" => "Your uploaded file has no data or wrong format", + "csv_import_partially_failed" => "Most Items imported. But some were not, here is the list", + "csv_import_success" => "Import of Items successful", + "current_quantity" => "Aktuelle Menge", + "default_pack_name" => "", + "description" => "Bezeichnung", + "details_count" => "Lagerbestandsdetails", + "do_nothing" => "Tue nichts", + "edit" => "", + "edit_fields_you_want_to_update" => "Ändern Sie die Felder für ALLE gewählten Artikel?", + "edit_multiple_items" => "Sammeländerung", + "empty_upc_items" => "Leere UPC Artikel", + "error_adding_updating" => "Fehler beim Hinzufügen/Ändern", + "error_updating_multiple" => "Fehler beim Ändern", + "generate_barcodes" => "Generiere Barcodes", + "hsn_code" => "", + "image" => "Bild", + "import_items_csv" => "Importiere Artikel mit CSV Datei", + "info_provided_by" => "Info provided by", + "inventory" => "Lagerbestand", + "inventory_CSV_import_quantity" => "", + "inventory_comments" => "Bemerkungen", + "inventory_data_tracking" => "", + "inventory_date" => "", + "inventory_employee" => "", + "inventory_in_out_quantity" => "", + "inventory_remarks" => "", + "is_deleted" => "Gelöscht", + "is_printed" => "", + "is_serialized" => "Artikel hat Serien-Nr.", + "item" => "Artikel", + "item_id" => "", + "item_number" => "UPC/EAN/ISBN", + "item_number_duplicate" => "Die Artikelnummer existiert bereits in der Datenbank", + "kit" => "", + "location" => "Ort", + "low_inventory_items" => "nicht am Lager", + "low_sell_item" => "", + "manually_editing_of_quantity" => "Manuelle Bestandesänderung", + "markup" => "", + "name" => "Artikelname", + "name_required" => "Artikelname ist erforderlich", + "new" => "Neuer Artikel", + "no_description_items" => "Artikel ohne Bezeichnung", + "no_items_to_display" => "Keine Artikel zum Anzeigen", + "none" => "Nichts", + "none_selected" => "Sie haben keine Artikel zum Ändern gewählt", + "nonstock" => "", + "number_information" => "Artikelnummer", + "number_required" => "UPC/EAN/ISBN ist erforderlich", + "one_or_multiple" => "Artikel", + "pack_name" => "", + "qty_per_pack" => "", + "quantity" => "Menge", + "quantity_number" => "Menge muss eine Zahl sein", + "quantity_required" => "Menge ist erforderlich", + "receiving_quantity" => "Eingangsmenge", + "remove_image" => "Remove Image", + "reorder_level" => "Mindestbestand", + "reorder_level_number" => "Mindestbestand muss eine Zahl sein", + "reorder_level_required" => "Mindestbestand ist erforderlich", + "retrive_item_info" => "Artikelinformation", + "sales_tax_1" => "Umsatzsteuer 1", + "sales_tax_2" => "Umsatzsteuer 2", + "search_attributes" => "Suche in Zusatzfeldern", + "select_image" => "Select Image", + "serialized_items" => "Serialisierte Artikel", + "standard" => "", + "stock" => "", + "stock_location" => "Lagerort", + "stock_type" => "", + "successful_adding" => "Artikel erfolgreich hinzugefügt", + "successful_bulk_edit" => "Die gewählten Artikel wurden erforlgreich geändert", + "successful_deleted" => "Löschung erfolgreich", + "successful_updating" => "Änderung erfolgreich", + "supplier" => "Lieferant", + "tax_1" => "MWSt 1", + "tax_2" => "MWSt 2", + "tax_3" => "", + "tax_category" => "", + "tax_percent" => "MWSt %", + "tax_percent_number" => "", + "tax_percent_required" => "MWSt % ist erforderlich", + "tax_percents" => "Steuerprozent(e)", + "temp" => "", + "type" => "", + "unit_price" => "Preis", + "unit_price_number" => "Preis muss eine Zahl sein", + "unit_price_required" => "Preis ist erforderlich", + "upc_database" => "UPC Datenbank", + "update" => "Ändere Artikel", + "use_inventory_menu" => "Verwende Bestandesmenu", ]; diff --git a/app/Language/de-CH/Login.php b/app/Language/de-CH/Login.php index e924d5293..1c7e90967 100644 --- a/app/Language/de-CH/Login.php +++ b/app/Language/de-CH/Login.php @@ -1,15 +1,15 @@ "", - "go" => "Start", - "invalid_gcaptcha" => "", - "invalid_installation" => "", - "invalid_username_and_password" => "Ungültiger Benutzername/Passwort", - "login" => "Login", - "logout" => "", - "migration_needed" => "", - "password" => "Passwort", - "required_username" => "", - "username" => "Benutzername", - "welcome" => "", + "gcaptcha" => "", + "go" => "Start", + "invalid_gcaptcha" => "", + "invalid_installation" => "", + "invalid_username_and_password" => "Ungültiger Benutzername/Passwort", + "login" => "Login", + "logout" => "", + "migration_needed" => "", + "password" => "Passwort", + "required_username" => "", + "username" => "Benutzername", + "welcome" => "", ]; diff --git a/app/Language/de-CH/Messages.php b/app/Language/de-CH/Messages.php index dabf5733c..eb254d6dd 100644 --- a/app/Language/de-CH/Messages.php +++ b/app/Language/de-CH/Messages.php @@ -1,15 +1,15 @@ "First name", - "last_name" => "Last name", - "message" => "Message", - "message_placeholder" => "Your Message here...", - "message_required" => "Message required", - "multiple_phones" => "(In case of multiple recipients, enter mobile numbers separated by commas)", - "phone" => "Phone number", - "phone_number_required" => "Phone number required", - "phone_placeholder" => "Mobile Number(s) here...", - "sms_send" => "Send SMS", - "successfully_sent" => "Message successfully sent to: ", - "unsuccessfully_sent" => "Message unsuccessfully sent to: ", + "first_name" => "First name", + "last_name" => "Last name", + "message" => "Message", + "message_placeholder" => "Your Message here...", + "message_required" => "Message required", + "multiple_phones" => "(In case of multiple recipients, enter mobile numbers separated by commas)", + "phone" => "Phone number", + "phone_number_required" => "Phone number required", + "phone_placeholder" => "Mobile Number(s) here...", + "sms_send" => "Send SMS", + "successfully_sent" => "Message successfully sent to: ", + "unsuccessfully_sent" => "Message unsuccessfully sent to: ", ]; diff --git a/app/Language/de-CH/Module.php b/app/Language/de-CH/Module.php index 7e7c54f50..07dab284b 100644 --- a/app/Language/de-CH/Module.php +++ b/app/Language/de-CH/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "", - "attributes_desc" => "", - "both" => "", - "cashups" => "", - "cashups_desc" => "", - "config" => "Einstellungen", - "config_desc" => "Einstellungen ändern", - "customers" => "Kunden", - "customers_desc" => "Hinzufügen, Ändern, Löschen und Suchen", - "employees" => "Mitarbeiter", - "employees_desc" => "Hinzufügen, Ändern, Löschen und Suchen", - "expenses" => "", - "expenses_categories" => "", - "expenses_categories_desc" => "", - "expenses_desc" => "", - "giftcards" => "Gutscheine", - "giftcards_desc" => "Hinzufügen, Ändern, Löschen und Suchen", - "home" => "Home", - "home_desc" => "", - "item_kits" => "Artikel-Sets", - "item_kits_desc" => "Hinzufügen, Ändern, Löschen und Suchen", - "items" => "Artikel", - "items_desc" => "Hinzufügen, Ändern, Löschen und Suchen", - "messages" => "Messages", - "messages_desc" => "Send Messages to Customers, Suppliers, Employees et al.", - "migrate" => "", - "migrate_desc" => "", - "office" => "", - "office_desc" => "", - "receivings" => "Eingänge", - "receivings_desc" => "Hinzufügen, Ändern, Löschen und Suchen", - "reports" => "Berichte", - "reports_desc" => "Hinzufügen, Ändern, Löschen und Suchen", - "sales" => "Verkauf", - "sales_desc" => "Hinzufügen, Ändern, Löschen und Suchen", - "suppliers" => "Lieferanten", - "suppliers_desc" => "Hinzufügen, Ändern, Löschen und Suchen", - "taxes" => "", - "taxes_desc" => "", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "", + "attributes_desc" => "", + "both" => "", + "cashups" => "", + "cashups_desc" => "", + "config" => "Einstellungen", + "config_desc" => "Einstellungen ändern", + "customers" => "Kunden", + "customers_desc" => "Hinzufügen, Ändern, Löschen und Suchen", + "employees" => "Mitarbeiter", + "employees_desc" => "Hinzufügen, Ändern, Löschen und Suchen", + "expenses" => "", + "expenses_categories" => "", + "expenses_categories_desc" => "", + "expenses_desc" => "", + "giftcards" => "Gutscheine", + "giftcards_desc" => "Hinzufügen, Ändern, Löschen und Suchen", + "home" => "Home", + "home_desc" => "", + "item_kits" => "Artikel-Sets", + "item_kits_desc" => "Hinzufügen, Ändern, Löschen und Suchen", + "items" => "Artikel", + "items_desc" => "Hinzufügen, Ändern, Löschen und Suchen", + "messages" => "Messages", + "messages_desc" => "Send Messages to Customers, Suppliers, Employees et al.", + "migrate" => "", + "migrate_desc" => "", + "office" => "", + "office_desc" => "", + "receivings" => "Eingänge", + "receivings_desc" => "Hinzufügen, Ändern, Löschen und Suchen", + "reports" => "Berichte", + "reports_desc" => "Hinzufügen, Ändern, Löschen und Suchen", + "sales" => "Verkauf", + "sales_desc" => "Hinzufügen, Ändern, Löschen und Suchen", + "suppliers" => "Lieferanten", + "suppliers_desc" => "Hinzufügen, Ändern, Löschen und Suchen", + "taxes" => "", + "taxes_desc" => "", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/de-CH/Receivings.php b/app/Language/de-CH/Receivings.php index 0bcb217ce..7af3152b7 100644 --- a/app/Language/de-CH/Receivings.php +++ b/app/Language/de-CH/Receivings.php @@ -1,58 +1,58 @@ "", - "cancel_receiving" => "Abbrechen", - "cannot_be_deleted" => "Eingangsbestellung(en) konnten nicht gelöscht werden", - "comments" => "Kommentare", - "complete_receiving" => "Abschliessen", - "confirm_cancel_receiving" => "Wollen Siesen Wareneingang annullieren? Alle Einträge werden gelöscht.", - "confirm_delete" => "Wollen Sie diesen Eingang wirklich löschen? Rückgängig nicht möglich", - "confirm_finish_receiving" => "Wollen Sie diesen Wareneingang verabeiten? Dieser Schritt kann nicht rückgängig gemacht werden.", - "confirm_restore" => "", - "cost" => "Kosten", - "daily" => "", - "date" => "Eingangsdatum", - "date_required" => "Ein korrektes Datum ist erforderlich", - "date_type" => "Datum ist erforderlich", - "delete_entire_sale" => "Wareneingang löschen", - "discount" => "Rabatt %", - "edit" => "Ändern", - "edit_sale" => "Wareneingang ändern", - "employee" => "Mitarbeiter", - "error_editing_item" => "Fehler beim Ändern des Artikels", - "error_requisition" => "Kann Bestand nicht von oder zum gleichen Lagerort ändern", - "find_or_scan_item" => "Finde/Scanne Artikel", - "find_or_scan_item_or_receipt" => "Finde/Scanne Artikel oder Quittung", - "id" => "Eingangs-Nr.", - "item_name" => "Artikelname", - "mode" => "Eingangsmodus", - "new_supplier" => "Neuer Lieferant", - "one_or_multiple" => "Wareneingäng(e)", - "print_after_sale" => "Drucke Bon nach Verkauf", - "quantity" => "Menge", - "receipt" => "Eingangsquittung", - "receipt_number" => "Eingangs-Nr.", - "receiving" => "Eingang", - "reference" => "Reference", - "register" => "Wareneingang", - "requisition" => "Bedarf", - "return" => "Retoure", - "select_supplier" => "Wählen Sie Lieferanten (optional)", - "ship_pack" => "", - "start_typing_supplier_name" => "Lieferantenname eingeben", - "stock" => "", - "stock_destination" => "Lagerort (Ziel)", - "stock_locaiton" => "Lagerort", - "stock_source" => "Lagerort (Quelle)", - "successfully_deleted" => "Löschung erfolgreich", - "successfully_updated" => "Änderung erfolgreich", - "supplier" => "Lieferant", - "supplier_address" => "Lieferant Address", - "supplier_email" => "Lieferant Email", - "supplier_location" => "Lieferant Location", - "total" => "Total", - "transaction_failed" => "Eingangstransaktion fehlerhaft", - "unable_to_add_item" => "Kann Artikel nicht zum Eingang hinzufügen", - "unsuccessfully_updated" => "Eingang nicht erfolgreich geändert", - "update" => "Ändern", + "amount_due" => "", + "cancel_receiving" => "Abbrechen", + "cannot_be_deleted" => "Eingangsbestellung(en) konnten nicht gelöscht werden", + "comments" => "Kommentare", + "complete_receiving" => "Abschliessen", + "confirm_cancel_receiving" => "Wollen Siesen Wareneingang annullieren? Alle Einträge werden gelöscht.", + "confirm_delete" => "Wollen Sie diesen Eingang wirklich löschen? Rückgängig nicht möglich", + "confirm_finish_receiving" => "Wollen Sie diesen Wareneingang verabeiten? Dieser Schritt kann nicht rückgängig gemacht werden.", + "confirm_restore" => "", + "cost" => "Kosten", + "daily" => "", + "date" => "Eingangsdatum", + "date_required" => "Ein korrektes Datum ist erforderlich", + "date_type" => "Datum ist erforderlich", + "delete_entire_sale" => "Wareneingang löschen", + "discount" => "Rabatt %", + "edit" => "Ändern", + "edit_sale" => "Wareneingang ändern", + "employee" => "Mitarbeiter", + "error_editing_item" => "Fehler beim Ändern des Artikels", + "error_requisition" => "Kann Bestand nicht von oder zum gleichen Lagerort ändern", + "find_or_scan_item" => "Finde/Scanne Artikel", + "find_or_scan_item_or_receipt" => "Finde/Scanne Artikel oder Quittung", + "id" => "Eingangs-Nr.", + "item_name" => "Artikelname", + "mode" => "Eingangsmodus", + "new_supplier" => "Neuer Lieferant", + "one_or_multiple" => "Wareneingäng(e)", + "print_after_sale" => "Drucke Bon nach Verkauf", + "quantity" => "Menge", + "receipt" => "Eingangsquittung", + "receipt_number" => "Eingangs-Nr.", + "receiving" => "Eingang", + "reference" => "Reference", + "register" => "Wareneingang", + "requisition" => "Bedarf", + "return" => "Retoure", + "select_supplier" => "Wählen Sie Lieferanten (optional)", + "ship_pack" => "", + "start_typing_supplier_name" => "Lieferantenname eingeben", + "stock" => "", + "stock_destination" => "Lagerort (Ziel)", + "stock_locaiton" => "Lagerort", + "stock_source" => "Lagerort (Quelle)", + "successfully_deleted" => "Löschung erfolgreich", + "successfully_updated" => "Änderung erfolgreich", + "supplier" => "Lieferant", + "supplier_address" => "Lieferant Address", + "supplier_email" => "Lieferant Email", + "supplier_location" => "Lieferant Location", + "total" => "Total", + "transaction_failed" => "Eingangstransaktion fehlerhaft", + "unable_to_add_item" => "Kann Artikel nicht zum Eingang hinzufügen", + "unsuccessfully_updated" => "Eingang nicht erfolgreich geändert", + "update" => "Ändern", ]; diff --git a/app/Language/de-CH/Reports.php b/app/Language/de-CH/Reports.php index ee4b71860..2bbf5f7f7 100644 --- a/app/Language/de-CH/Reports.php +++ b/app/Language/de-CH/Reports.php @@ -1,148 +1,148 @@ "Alle", - "authority" => "", - "canceled" => "", - "categories" => "Kategorien", - "categories_summary_report" => "Bericht: Kategorien (summarisch)", - "category" => "Kategorie", - "code_canceled" => "", - "code_invoice" => "", - "code_pos" => "", - "code_quote" => "", - "code_return" => "", - "code_type" => "", - "code_work_order" => "", - "comments" => "Kommentare", - "commission" => "", - "complete" => "", - "completed_sales" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "cost" => "Kosten", - "cost_price" => "Einstandspreis", - "count" => "Anzahl", - "customer" => "Kunde", - "customers" => "Kunden", - "customers_summary_report" => "Bericht: Kunden (summarisch)", - "date" => "Datum", - "date_range" => "Zeitraum", - "description" => "Bezeichnung", - "detailed_receivings_report" => "Bericht: Wareneingänge (detailliert)", - "detailed_receivings_report_input" => "", - "detailed_reports" => "Berichte (detailliert)", - "detailed_requisition_report" => "Bericht: Bedarf (detailliert)", - "detailed_sales_report" => "Bericht: Verkäufe (detailliert)", - "discount" => "Rabatt", - "discount_fixed" => "", - "discount_percent" => "Rabatt %", - "discount_type" => "", - "discounts" => "Rabatte", - "discounts_summary_report" => "Bericht: Rabatte (summarisch)", - "earned" => "", - "employee" => "Mitarbeiter", - "employees" => "Mitarbeiter", - "employees_summary_report" => "Bericht: Mitarbeiter (summarisch)", - "expenses" => "", - "expenses_amount" => "", - "expenses_categories" => "", - "expenses_categories_summary_report" => "", - "expenses_category" => "", - "expenses_payment_amount" => "", - "expenses_tax_amount" => "", - "expenses_total_amount" => "", - "expenses_total_tax_amount" => "", - "graphical_reports" => "Grafische Berichte", - "inventory" => "Lager", - "inventory_low" => "Lager mit Unterbestand", - "inventory_low_report" => "Bericht: Lager mit Unterbestand", - "inventory_reports" => "Berichte: Lager", - "inventory_summary" => "Lager (summarisch)", - "inventory_summary_report" => "Bericht: Lager (summarisch)", - "item" => "Artikel", - "item_count" => "Filter nach Artikelzahl", - "item_name" => "Artikelname", - "item_number" => "Artikelnummer", - "items" => "Artikel", - "items_purchased" => "Gekaufte Artikel", - "items_received" => "Erhaltene Artikel", - "items_summary_report" => "Bericht: Artikel (summarisch)", - "jurisdiction" => "", - "low_inventory" => "Lager mit Unterbestand", - "low_inventory_report" => "Bericht: Inventar", - "low_sell_quantity" => "", - "more_than_zero" => "Mehr als Null", - "name" => "Name", - "no_reports_to_display" => "Keine Artikel zum Anzeigen", - "payment_type" => "Zahlungsart", - "payments" => "Zahlungen", - "payments_summary_report" => "Bericht: Zahlungen (summarisch)", - "profit" => "Gewinn", - "quantity" => "Menge", - "quantity_purchased" => "Menge gekauft", - "quotes" => "", - "received_by" => "Erhalten von", - "receiving_id" => "Einangs-ID", - "receiving_type" => "Eingangstyp", - "receivings" => "Eingänge", - "reorder_level" => "Mindestbestand", - "report" => "Bericht", - "report_input" => "Berichtsdefinition", - "reports" => "Berichte", - "requisition" => "Bedarf", - "requisition_by" => "Bedarf durch", - "requisition_id" => "Bedarfs-ID", - "requisition_item" => "Artikel", - "requisition_item_quantity" => "Menge", - "requisition_related_item" => "Artikelverweis", - "requisition_related_item_total_quantity" => "Gesamtmenge Bedarf", - "requisition_related_item_unit_quantity" => "Bedarfsmenge", - "requisitions" => "Bedarf", - "returns" => "Retoure", - "revenue" => "Einkommen", - "sale_id" => "Verkaufs-ID", - "sale_type" => "Verkaufs-Typ", - "sales" => "Verkäufe", - "sales_amount" => "Umsatz", - "sales_summary_report" => "Bericht: Umsatz (summarisch)", - "sales_taxes" => "", - "sales_taxes_summary_report" => "", - "serial_number" => "Seriennummer", - "service_charge" => "", - "sold_by" => "Verkauft durch", - "sold_items" => "", - "sold_to" => "Verkauft an", - "stock_location" => "Lagerort", - "sub_total_value" => "Zwischentotal", - "subtotal" => "Zwischensumme", - "summary_reports" => "Berichte (summarisch)", - "supplied_by" => "Geliefert von", - "supplier" => "Lieferant", - "suppliers" => "Lieferanten", - "suppliers_summary_report" => "Bericht: Lieferanten (summarisch)", - "tax" => "MWSt", - "tax_category" => "", - "tax_name" => "", - "tax_percent" => "MWSt %", - "tax_rate" => "", - "taxes" => "Steuern", - "taxes_summary_report" => "Bericht: Steuern (summarisch)", - "total" => "Total", - "total_inventory_value" => "Total Inventarwert", - "total_low_sell_quantity" => "", - "total_quantity" => "Total Quantity", - "total_retail" => "Total Inv. Retail Value", - "trans_amount" => "", - "trans_due" => "", - "trans_group" => "", - "trans_nopay_sales" => "", - "trans_payments" => "", - "trans_refunded" => "", - "trans_sales" => "", - "trans_type" => "", - "type" => "Typ", - "unit_price" => "Verkaufspreis", - "used" => "", - "work_orders" => "", - "zero_and_less" => "Null und weniger", + "all" => "Alle", + "authority" => "", + "canceled" => "", + "categories" => "Kategorien", + "categories_summary_report" => "Bericht: Kategorien (summarisch)", + "category" => "Kategorie", + "code_canceled" => "", + "code_invoice" => "", + "code_pos" => "", + "code_quote" => "", + "code_return" => "", + "code_type" => "", + "code_work_order" => "", + "comments" => "Kommentare", + "commission" => "", + "complete" => "", + "completed_sales" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "cost" => "Kosten", + "cost_price" => "Einstandspreis", + "count" => "Anzahl", + "customer" => "Kunde", + "customers" => "Kunden", + "customers_summary_report" => "Bericht: Kunden (summarisch)", + "date" => "Datum", + "date_range" => "Zeitraum", + "description" => "Bezeichnung", + "detailed_receivings_report" => "Bericht: Wareneingänge (detailliert)", + "detailed_receivings_report_input" => "", + "detailed_reports" => "Berichte (detailliert)", + "detailed_requisition_report" => "Bericht: Bedarf (detailliert)", + "detailed_sales_report" => "Bericht: Verkäufe (detailliert)", + "discount" => "Rabatt", + "discount_fixed" => "", + "discount_percent" => "Rabatt %", + "discount_type" => "", + "discounts" => "Rabatte", + "discounts_summary_report" => "Bericht: Rabatte (summarisch)", + "earned" => "", + "employee" => "Mitarbeiter", + "employees" => "Mitarbeiter", + "employees_summary_report" => "Bericht: Mitarbeiter (summarisch)", + "expenses" => "", + "expenses_amount" => "", + "expenses_categories" => "", + "expenses_categories_summary_report" => "", + "expenses_category" => "", + "expenses_payment_amount" => "", + "expenses_tax_amount" => "", + "expenses_total_amount" => "", + "expenses_total_tax_amount" => "", + "graphical_reports" => "Grafische Berichte", + "inventory" => "Lager", + "inventory_low" => "Lager mit Unterbestand", + "inventory_low_report" => "Bericht: Lager mit Unterbestand", + "inventory_reports" => "Berichte: Lager", + "inventory_summary" => "Lager (summarisch)", + "inventory_summary_report" => "Bericht: Lager (summarisch)", + "item" => "Artikel", + "item_count" => "Filter nach Artikelzahl", + "item_name" => "Artikelname", + "item_number" => "Artikelnummer", + "items" => "Artikel", + "items_purchased" => "Gekaufte Artikel", + "items_received" => "Erhaltene Artikel", + "items_summary_report" => "Bericht: Artikel (summarisch)", + "jurisdiction" => "", + "low_inventory" => "Lager mit Unterbestand", + "low_inventory_report" => "Bericht: Inventar", + "low_sell_quantity" => "", + "more_than_zero" => "Mehr als Null", + "name" => "Name", + "no_reports_to_display" => "Keine Artikel zum Anzeigen", + "payment_type" => "Zahlungsart", + "payments" => "Zahlungen", + "payments_summary_report" => "Bericht: Zahlungen (summarisch)", + "profit" => "Gewinn", + "quantity" => "Menge", + "quantity_purchased" => "Menge gekauft", + "quotes" => "", + "received_by" => "Erhalten von", + "receiving_id" => "Einangs-ID", + "receiving_type" => "Eingangstyp", + "receivings" => "Eingänge", + "reorder_level" => "Mindestbestand", + "report" => "Bericht", + "report_input" => "Berichtsdefinition", + "reports" => "Berichte", + "requisition" => "Bedarf", + "requisition_by" => "Bedarf durch", + "requisition_id" => "Bedarfs-ID", + "requisition_item" => "Artikel", + "requisition_item_quantity" => "Menge", + "requisition_related_item" => "Artikelverweis", + "requisition_related_item_total_quantity" => "Gesamtmenge Bedarf", + "requisition_related_item_unit_quantity" => "Bedarfsmenge", + "requisitions" => "Bedarf", + "returns" => "Retoure", + "revenue" => "Einkommen", + "sale_id" => "Verkaufs-ID", + "sale_type" => "Verkaufs-Typ", + "sales" => "Verkäufe", + "sales_amount" => "Umsatz", + "sales_summary_report" => "Bericht: Umsatz (summarisch)", + "sales_taxes" => "", + "sales_taxes_summary_report" => "", + "serial_number" => "Seriennummer", + "service_charge" => "", + "sold_by" => "Verkauft durch", + "sold_items" => "", + "sold_to" => "Verkauft an", + "stock_location" => "Lagerort", + "sub_total_value" => "Zwischentotal", + "subtotal" => "Zwischensumme", + "summary_reports" => "Berichte (summarisch)", + "supplied_by" => "Geliefert von", + "supplier" => "Lieferant", + "suppliers" => "Lieferanten", + "suppliers_summary_report" => "Bericht: Lieferanten (summarisch)", + "tax" => "MWSt", + "tax_category" => "", + "tax_name" => "", + "tax_percent" => "MWSt %", + "tax_rate" => "", + "taxes" => "Steuern", + "taxes_summary_report" => "Bericht: Steuern (summarisch)", + "total" => "Total", + "total_inventory_value" => "Total Inventarwert", + "total_low_sell_quantity" => "", + "total_quantity" => "Total Quantity", + "total_retail" => "Total Inv. Retail Value", + "trans_amount" => "", + "trans_due" => "", + "trans_group" => "", + "trans_nopay_sales" => "", + "trans_payments" => "", + "trans_refunded" => "", + "trans_sales" => "", + "trans_type" => "", + "type" => "Typ", + "unit_price" => "Verkaufspreis", + "used" => "", + "work_orders" => "", + "zero_and_less" => "Null und weniger", ]; diff --git a/app/Language/de-CH/Sales.php b/app/Language/de-CH/Sales.php index 02aa95a42..ddd8b1a51 100644 --- a/app/Language/de-CH/Sales.php +++ b/app/Language/de-CH/Sales.php @@ -1,224 +1,224 @@ "", - "rewards_package" => "", - "rewards_remaining_balance" => "", - "account_number" => "", - "add_payment" => "Zahlung", - "amount_due" => "fälliger Betrag", - "amount_tendered" => "Erhalten", - "authorized_signature" => "", - "cancel_sale" => "Annullieren", - "cash" => "Bar", - "cash_1" => "", - "cash_2" => "", - "cash_3" => "", - "cash_4" => "", - "cash_adjustment" => "", - "cash_deposit" => "", - "cash_filter" => "Bar", - "change_due" => "Wechselgeld", - "change_price" => "", - "check" => "Scheck", - "check_balance" => "Scheck-Differenz", - "check_filter" => "", - "close" => "", - "comment" => "Bemerkung", - "comments" => "Bemerkungen", - "company_name" => "", - "complete" => "", - "complete_sale" => "Abschliessen", - "confirm_cancel_sale" => "Wollen Sie diesen Verkauf abschliessen? Alle Artikeleinträge werden entfernt", - "confirm_delete" => "Wollen Sie die gewählten Aufträge löschen?", - "confirm_restore" => "", - "credit" => "Kreditkarte", - "credit_deposit" => "", - "credit_filter" => "", - "current_table" => "", - "customer" => "Kunde", - "customer_address" => "Customer Address", - "customer_discount" => "Discount", - "customer_email" => "Customer Email", - "customer_location" => "Customer Location", - "customer_mailchimp_status" => "", - "customer_optional" => "", - "customer_required" => "", - "customer_total" => "Total", - "customer_total_spent" => "", - "daily_sales" => "", - "date" => "Datum", - "date_range" => "Zeitrahmen", - "date_required" => "Ein korrektas Datum ist erforderlich", - "date_type" => "Datum ist erforderlich", - "debit" => "Debitkarte", - "debit_filter" => "", - "delete" => "", - "delete_confirmation" => "Wollen Sie diesen Auftrag löschen? Rückgängig unmöglich", - "delete_entire_sale" => "Auftrag löschen", - "delete_successful" => "Löschung erfolgreich", - "delete_unsuccessful" => "Löschung nicht erfolgreich", - "description_abbrv" => "Bez.", - "discard" => "", - "discard_quote" => "", - "discount" => "%", - "discount_included" => "Rabatt %", - "discount_short" => "%", - "due" => "", - "due_filter" => "", - "edit" => "Ändern", - "edit_item" => "Ändere Art.", - "edit_sale" => "Auftrag ändern", - "email_receipt" => "Quittung per Email", - "employee" => "Mitarbeiter", - "entry" => "", - "error_editing_item" => "Fehler beim Ändern des Artikels", - "find_or_scan_item" => "Finde/Scanne Artikel", - "find_or_scan_item_or_receipt" => "Finde/Scanne Artikel oder Quittung", - "giftcard" => "Gutschein", - "giftcard_balance" => "Gutschein Restwert", - "giftcard_filter" => "", - "giftcard_number" => "Gutschein Nr.", - "group_by_category" => "", - "group_by_type" => "", - "hsn" => "", - "id" => "ID", - "include_prices" => "", - "invoice" => "Rechnung", - "invoice_confirm" => "Diese rechnung wird gesendet an", - "invoice_enable" => "Erzeuge Rechnung", - "invoice_filter" => "Rechnungen", - "invoice_no_email" => "Dieser Kunde hat keine gültige Email Adresse", - "invoice_number" => "Rechnungs-Nr.", - "invoice_number_duplicate" => "Bitte geben Sie eine eindeutige Rechnungsnummer ein", - "invoice_sent" => "Rechnung gesendet an", - "invoice_total" => "", - "invoice_type_custom_invoice" => "", - "invoice_type_custom_tax_invoice" => "", - "invoice_type_invoice" => "", - "invoice_type_tax_invoice" => "", - "invoice_unsent" => "Rechnung nicht gesendet", - "invoice_update" => "Aktualisieren", - "item_insufficient_of_stock" => "Artikel hat Unterbestand", - "item_name" => "Artikelname", - "item_number" => "Artikel-Nr.", - "item_out_of_stock" => "Artikel ist nicht am Lager", - "key_browser" => "", - "key_cancel" => "Cancels Current Quote/Invoice/Sale", - "key_customer_search" => "Customer Search", - "key_finish_quote" => "Finish Quote/Invoice witdout payment", - "key_finish_sale" => "Add Payment and Complete Invoice/Sale", - "key_full" => "", - "key_function" => "Function", - "key_help" => "Shortcuts", - "key_help_modal" => "Open Shortcuts Window", - "key_in" => "", - "key_item_search" => "Item Search", - "key_out" => "", - "key_payment" => "Add Payment", - "key_print" => "", - "key_restore" => "", - "key_search" => "", - "key_suspend" => "Suspend Current Sale", - "key_suspended" => "Show Suspended Sales", - "key_system" => "", - "key_tendered" => "Edit Amount Tendered", - "key_title" => "Sales Keyboard Shortcuts", - "mc" => "", - "mode" => "Verkaufstyp", - "must_enter_numeric" => "Eingabe muss eine Zahl sein", - "must_enter_numeric_giftcard" => "Gutschein-Nr. muss eine Zahl sein", - "new_customer" => "Neuer Kunde", - "new_item" => "Neuer Artikel", - "no_description" => "nichts", - "no_filter" => "Alle", - "no_items_in_cart" => "Warenkorb ist leer", - "no_sales_to_display" => "Keine Artikel zum Anzeigen", - "none_selected" => "Sie haben keinen Auftrag zum Löschen ausgewählt", - "nontaxed_ind" => "", - "not_authorized" => "", - "one_or_multiple" => "Verkäufe", - "payment" => "Zahlungsart", - "payment_amount" => "Betrag", - "payment_not_cover_total" => "Betrag deckt Rechnungsbetrag nicht", - "payment_type" => "Typ", - "payments" => "", - "payments_total" => "Zahlung Total", - "price" => "Preis", - "print_after_sale" => "Drucke Bon nach Verkauf", - "quantity" => "Menge", - "quantity_less_than_reorder_level" => "Warnung: Gewünschte Menge ist nicht verfügbar.", - "quantity_less_than_zero" => "Warnung: Gewünschte Menge ist nicht verfügbar. Sie können den Verkauf fortsetzen, dennoch prüfen Sie bitte den Lagerbestand.", - "quantity_of_items" => "", - "quote" => "", - "quote_number" => "", - "quote_number_duplicate" => "", - "quote_sent" => "", - "quote_unsent" => "", - "receipt" => "Quittung", - "receipt_no_email" => "", - "receipt_number" => "Quittung Nr.", - "receipt_sent" => "Quittung gesendet an", - "receipt_unsent" => "Quittung nicht gesendet", - "refund" => "", - "register" => "Kasse", - "remove_customer" => "Entferne Kunde", - "remove_discount" => "", - "return" => "Retoure", - "rewards" => "", - "rewards_balance" => "", - "sale" => "Verkauf", - "sale_by_invoice" => "", - "sale_for_customer" => "Kunde:", - "sale_time" => "Zeit", - "sales_tax" => "", - "sales_total" => "", - "select_customer" => "Wähle Kunde (optional)", - "send_invoice" => "Sende Rechnung", - "send_quote" => "", - "send_receipt" => "Sende Quittung", - "send_work_order" => "", - "serial" => "Seriennummer", - "service_charge" => "", - "show_due" => "", - "show_invoice" => "Rechnung", - "show_receipt" => "Quittung", - "start_typing_customer_name" => "Geben Sie den Kundennamen ein...", - "start_typing_item_name" => "Geben Sie den Artikel ein oder scannen Sie ihn...", - "stock" => "", - "stock_location" => "Lagerort", - "sub_total" => "Zwischentotal", - "successfully_deleted" => "Löschung erfolgreich", - "successfully_restored" => "", - "successfully_suspended_sale" => "Auftrag wurde erfolgreich pendent gehalten", - "successfully_updated" => "Änderung erfolgreich", - "suspend_sale" => "->Pendent", - "suspended_doc_id" => "", - "suspended_sale_id" => "ID", - "suspended_sales" => "Pendente Aufträge", - "table" => "", - "takings" => "Einnahmen", - "tax" => "MWSt", - "tax_id" => "", - "tax_invoice" => "", - "tax_percent" => "MWSt %", - "taxed_ind" => "", - "total" => "Total", - "total_tax_exclusive" => "Total exkl. MWSt.", - "transaction_failed" => "Verarbeitung fehlerhaft", - "unable_to_add_item" => "Kann Artikel nicht zum Auftrag hinzufügen", - "unsuccessfully_deleted" => "Löschung nicht erfolgreich", - "unsuccessfully_restored" => "", - "unsuccessfully_suspended_sale" => "Auftrag wurde erfolgreich pendent gehalten", - "unsuccessfully_updated" => "Änderung nicht erfolgreich", - "unsuspend" => "Aktivieren", - "unsuspend_and_delete" => "Aktivieren und löschen", - "update" => "Ändern", - "upi" => "", - "visa" => "", - "wholesale" => "", - "work_order" => "", - "work_order_number" => "", - "work_order_number_duplicate" => "", - "work_order_sent" => "", - "work_order_unsent" => "", + "customers_available_points" => "", + "rewards_package" => "", + "rewards_remaining_balance" => "", + "account_number" => "", + "add_payment" => "Zahlung", + "amount_due" => "fälliger Betrag", + "amount_tendered" => "Erhalten", + "authorized_signature" => "", + "cancel_sale" => "Annullieren", + "cash" => "Bar", + "cash_1" => "", + "cash_2" => "", + "cash_3" => "", + "cash_4" => "", + "cash_adjustment" => "", + "cash_deposit" => "", + "cash_filter" => "Bar", + "change_due" => "Wechselgeld", + "change_price" => "", + "check" => "Scheck", + "check_balance" => "Scheck-Differenz", + "check_filter" => "", + "close" => "", + "comment" => "Bemerkung", + "comments" => "Bemerkungen", + "company_name" => "", + "complete" => "", + "complete_sale" => "Abschliessen", + "confirm_cancel_sale" => "Wollen Sie diesen Verkauf abschliessen? Alle Artikeleinträge werden entfernt", + "confirm_delete" => "Wollen Sie die gewählten Aufträge löschen?", + "confirm_restore" => "", + "credit" => "Kreditkarte", + "credit_deposit" => "", + "credit_filter" => "", + "current_table" => "", + "customer" => "Kunde", + "customer_address" => "Customer Address", + "customer_discount" => "Discount", + "customer_email" => "Customer Email", + "customer_location" => "Customer Location", + "customer_mailchimp_status" => "", + "customer_optional" => "", + "customer_required" => "", + "customer_total" => "Total", + "customer_total_spent" => "", + "daily_sales" => "", + "date" => "Datum", + "date_range" => "Zeitrahmen", + "date_required" => "Ein korrektas Datum ist erforderlich", + "date_type" => "Datum ist erforderlich", + "debit" => "Debitkarte", + "debit_filter" => "", + "delete" => "", + "delete_confirmation" => "Wollen Sie diesen Auftrag löschen? Rückgängig unmöglich", + "delete_entire_sale" => "Auftrag löschen", + "delete_successful" => "Löschung erfolgreich", + "delete_unsuccessful" => "Löschung nicht erfolgreich", + "description_abbrv" => "Bez.", + "discard" => "", + "discard_quote" => "", + "discount" => "%", + "discount_included" => "Rabatt %", + "discount_short" => "%", + "due" => "", + "due_filter" => "", + "edit" => "Ändern", + "edit_item" => "Ändere Art.", + "edit_sale" => "Auftrag ändern", + "email_receipt" => "Quittung per Email", + "employee" => "Mitarbeiter", + "entry" => "", + "error_editing_item" => "Fehler beim Ändern des Artikels", + "find_or_scan_item" => "Finde/Scanne Artikel", + "find_or_scan_item_or_receipt" => "Finde/Scanne Artikel oder Quittung", + "giftcard" => "Gutschein", + "giftcard_balance" => "Gutschein Restwert", + "giftcard_filter" => "", + "giftcard_number" => "Gutschein Nr.", + "group_by_category" => "", + "group_by_type" => "", + "hsn" => "", + "id" => "ID", + "include_prices" => "", + "invoice" => "Rechnung", + "invoice_confirm" => "Diese rechnung wird gesendet an", + "invoice_enable" => "Erzeuge Rechnung", + "invoice_filter" => "Rechnungen", + "invoice_no_email" => "Dieser Kunde hat keine gültige Email Adresse", + "invoice_number" => "Rechnungs-Nr.", + "invoice_number_duplicate" => "Bitte geben Sie eine eindeutige Rechnungsnummer ein", + "invoice_sent" => "Rechnung gesendet an", + "invoice_total" => "", + "invoice_type_custom_invoice" => "", + "invoice_type_custom_tax_invoice" => "", + "invoice_type_invoice" => "", + "invoice_type_tax_invoice" => "", + "invoice_unsent" => "Rechnung nicht gesendet", + "invoice_update" => "Aktualisieren", + "item_insufficient_of_stock" => "Artikel hat Unterbestand", + "item_name" => "Artikelname", + "item_number" => "Artikel-Nr.", + "item_out_of_stock" => "Artikel ist nicht am Lager", + "key_browser" => "", + "key_cancel" => "Cancels Current Quote/Invoice/Sale", + "key_customer_search" => "Customer Search", + "key_finish_quote" => "Finish Quote/Invoice witdout payment", + "key_finish_sale" => "Add Payment and Complete Invoice/Sale", + "key_full" => "", + "key_function" => "Function", + "key_help" => "Shortcuts", + "key_help_modal" => "Open Shortcuts Window", + "key_in" => "", + "key_item_search" => "Item Search", + "key_out" => "", + "key_payment" => "Add Payment", + "key_print" => "", + "key_restore" => "", + "key_search" => "", + "key_suspend" => "Suspend Current Sale", + "key_suspended" => "Show Suspended Sales", + "key_system" => "", + "key_tendered" => "Edit Amount Tendered", + "key_title" => "Sales Keyboard Shortcuts", + "mc" => "", + "mode" => "Verkaufstyp", + "must_enter_numeric" => "Eingabe muss eine Zahl sein", + "must_enter_numeric_giftcard" => "Gutschein-Nr. muss eine Zahl sein", + "new_customer" => "Neuer Kunde", + "new_item" => "Neuer Artikel", + "no_description" => "nichts", + "no_filter" => "Alle", + "no_items_in_cart" => "Warenkorb ist leer", + "no_sales_to_display" => "Keine Artikel zum Anzeigen", + "none_selected" => "Sie haben keinen Auftrag zum Löschen ausgewählt", + "nontaxed_ind" => "", + "not_authorized" => "", + "one_or_multiple" => "Verkäufe", + "payment" => "Zahlungsart", + "payment_amount" => "Betrag", + "payment_not_cover_total" => "Betrag deckt Rechnungsbetrag nicht", + "payment_type" => "Typ", + "payments" => "", + "payments_total" => "Zahlung Total", + "price" => "Preis", + "print_after_sale" => "Drucke Bon nach Verkauf", + "quantity" => "Menge", + "quantity_less_than_reorder_level" => "Warnung: Gewünschte Menge ist nicht verfügbar.", + "quantity_less_than_zero" => "Warnung: Gewünschte Menge ist nicht verfügbar. Sie können den Verkauf fortsetzen, dennoch prüfen Sie bitte den Lagerbestand.", + "quantity_of_items" => "", + "quote" => "", + "quote_number" => "", + "quote_number_duplicate" => "", + "quote_sent" => "", + "quote_unsent" => "", + "receipt" => "Quittung", + "receipt_no_email" => "", + "receipt_number" => "Quittung Nr.", + "receipt_sent" => "Quittung gesendet an", + "receipt_unsent" => "Quittung nicht gesendet", + "refund" => "", + "register" => "Kasse", + "remove_customer" => "Entferne Kunde", + "remove_discount" => "", + "return" => "Retoure", + "rewards" => "", + "rewards_balance" => "", + "sale" => "Verkauf", + "sale_by_invoice" => "", + "sale_for_customer" => "Kunde:", + "sale_time" => "Zeit", + "sales_tax" => "", + "sales_total" => "", + "select_customer" => "Wähle Kunde (optional)", + "send_invoice" => "Sende Rechnung", + "send_quote" => "", + "send_receipt" => "Sende Quittung", + "send_work_order" => "", + "serial" => "Seriennummer", + "service_charge" => "", + "show_due" => "", + "show_invoice" => "Rechnung", + "show_receipt" => "Quittung", + "start_typing_customer_name" => "Geben Sie den Kundennamen ein...", + "start_typing_item_name" => "Geben Sie den Artikel ein oder scannen Sie ihn...", + "stock" => "", + "stock_location" => "Lagerort", + "sub_total" => "Zwischentotal", + "successfully_deleted" => "Löschung erfolgreich", + "successfully_restored" => "", + "successfully_suspended_sale" => "Auftrag wurde erfolgreich pendent gehalten", + "successfully_updated" => "Änderung erfolgreich", + "suspend_sale" => "->Pendent", + "suspended_doc_id" => "", + "suspended_sale_id" => "ID", + "suspended_sales" => "Pendente Aufträge", + "table" => "", + "takings" => "Einnahmen", + "tax" => "MWSt", + "tax_id" => "", + "tax_invoice" => "", + "tax_percent" => "MWSt %", + "taxed_ind" => "", + "total" => "Total", + "total_tax_exclusive" => "Total exkl. MWSt.", + "transaction_failed" => "Verarbeitung fehlerhaft", + "unable_to_add_item" => "Kann Artikel nicht zum Auftrag hinzufügen", + "unsuccessfully_deleted" => "Löschung nicht erfolgreich", + "unsuccessfully_restored" => "", + "unsuccessfully_suspended_sale" => "Auftrag wurde erfolgreich pendent gehalten", + "unsuccessfully_updated" => "Änderung nicht erfolgreich", + "unsuspend" => "Aktivieren", + "unsuspend_and_delete" => "Aktivieren und löschen", + "update" => "Ändern", + "upi" => "", + "visa" => "", + "wholesale" => "", + "work_order" => "", + "work_order_number" => "", + "work_order_number_duplicate" => "", + "work_order_sent" => "", + "work_order_unsent" => "", ]; diff --git a/app/Language/de-CH/Suppliers.php b/app/Language/de-CH/Suppliers.php index b9ebadbc9..45603dc16 100644 --- a/app/Language/de-CH/Suppliers.php +++ b/app/Language/de-CH/Suppliers.php @@ -1,24 +1,24 @@ "Konto-Nr.", - "agency_name" => "Name der Agentur", - "cannot_be_deleted" => "Kann gewählte Lieferanten nicht löschen, einer oder mehrere weisen Verkäufe aus.", - "category" => "", - "company_name" => "Firmenname", - "company_name_required" => "Firmenname ist erforderlich", - "confirm_delete" => "Wollen Sie die gewählten Lieferanten löschen?", - "confirm_restore" => "", - "cost" => "", - "error_adding_updating" => "Fehler beim Hinzufügen/Ändern", - "goods" => "", - "new" => "Neuer Lieferant", - "none_selected" => "Sie haben keinen Lieferanten zum Löschen ausgewählt", - "one_or_multiple" => "Lieferanten", - "successful_adding" => "Erfolgreich hinzugefügt", - "successful_deleted" => "Löschung erfolgreich", - "successful_updating" => "Änderung erfolgreich", - "supplier" => "Lieferant", - "supplier_id" => "ID", - "tax_id" => "", - "update" => "Ändere Lieferant", + "account_number" => "Konto-Nr.", + "agency_name" => "Name der Agentur", + "cannot_be_deleted" => "Kann gewählte Lieferanten nicht löschen, einer oder mehrere weisen Verkäufe aus.", + "category" => "", + "company_name" => "Firmenname", + "company_name_required" => "Firmenname ist erforderlich", + "confirm_delete" => "Wollen Sie die gewählten Lieferanten löschen?", + "confirm_restore" => "", + "cost" => "", + "error_adding_updating" => "Fehler beim Hinzufügen/Ändern", + "goods" => "", + "new" => "Neuer Lieferant", + "none_selected" => "Sie haben keinen Lieferanten zum Löschen ausgewählt", + "one_or_multiple" => "Lieferanten", + "successful_adding" => "Erfolgreich hinzugefügt", + "successful_deleted" => "Löschung erfolgreich", + "successful_updating" => "Änderung erfolgreich", + "supplier" => "Lieferant", + "supplier_id" => "ID", + "tax_id" => "", + "update" => "Ändere Lieferant", ]; diff --git a/app/Language/de-CH/Taxes.php b/app/Language/de-CH/Taxes.php index 6ae3d5b76..691ff9bb3 100644 --- a/app/Language/de-CH/Taxes.php +++ b/app/Language/de-CH/Taxes.php @@ -1,82 +1,82 @@ "", - "cascade" => "", - "cascade_sequence" => "", - "city" => "", - "code" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "default_tax_category" => "", - "default_tax_rate" => "", - "error_adding_updating" => "", - "group_seq" => "", - "jurisdiction_name" => "", - "name" => "", - "new" => "", - "no_taxes" => "", - "no_taxes_to_display" => "", - "reporting_authority" => "", - "round_half_down" => "", - "round_half_even" => "", - "round_half_odd" => "", - "round_half_up" => "", - "rounding_code" => "", - "sales_tax" => "", - "sales_tax_by_invoice" => "", - "sequence" => "", - "state" => "", - "successful_deleted" => "", - "tax_categories" => "", - "tax_categories_configuration" => "", - "tax_categories_saved_successfully" => "", - "tax_categories_saved_unsuccessfully" => "", - "tax_category" => "", - "tax_category_code" => "", - "tax_category_duplicate" => "", - "tax_category_invalid_chars" => "", - "tax_category_name" => "", - "tax_category_new" => "", - "tax_category_required" => "", - "tax_code" => "", - "tax_code_cannot_be_deleted" => "", - "tax_code_duplicate" => "", - "tax_code_invalid_chars" => "", - "tax_code_name" => "", - "tax_code_required" => "", - "tax_code_successful_deleted" => "", - "tax_code_successful_updated" => "", - "tax_code_successful_updating" => "", - "tax_code_successfully_added" => "", - "tax_code_type" => "", - "tax_codes" => "", - "tax_codes_configuration" => "", - "tax_codes_saved_successfully" => "", - "tax_codes_saved_unsuccessfully" => "", - "tax_excluded" => "", - "tax_group" => "", - "tax_group_not_unique" => "", - "tax_group_sequence" => "", - "tax_included" => "", - "tax_jurisdiction" => "", - "tax_jurisdiction_duplicate" => "", - "tax_jurisdiction_invalid_chars" => "", - "tax_jurisdiction_required" => "", - "tax_jurisdictions" => "", - "tax_jurisdictions_configuration" => "", - "tax_jurisdictions_saved_successfully" => "", - "tax_jurisdictions_saved_unsuccessfully" => "", - "tax_rate" => "", - "tax_rate_configuration" => "", - "tax_rate_error_adding_updating" => "", - "tax_rate_numeric" => "", - "tax_rate_required" => "", - "tax_rate_successful_updated" => "", - "tax_rate_successfully_added" => "", - "tax_rates" => "", - "tax_rates_configuration" => "", - "tax_rounding" => "", - "tax_type" => "", - "update" => "", - "vat_tax" => "", + "add_exception" => "", + "cascade" => "", + "cascade_sequence" => "", + "city" => "", + "code" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "default_tax_category" => "", + "default_tax_rate" => "", + "error_adding_updating" => "", + "group_seq" => "", + "jurisdiction_name" => "", + "name" => "", + "new" => "", + "no_taxes" => "", + "no_taxes_to_display" => "", + "reporting_authority" => "", + "round_half_down" => "", + "round_half_even" => "", + "round_half_odd" => "", + "round_half_up" => "", + "rounding_code" => "", + "sales_tax" => "", + "sales_tax_by_invoice" => "", + "sequence" => "", + "state" => "", + "successful_deleted" => "", + "tax_categories" => "", + "tax_categories_configuration" => "", + "tax_categories_saved_successfully" => "", + "tax_categories_saved_unsuccessfully" => "", + "tax_category" => "", + "tax_category_code" => "", + "tax_category_duplicate" => "", + "tax_category_invalid_chars" => "", + "tax_category_name" => "", + "tax_category_new" => "", + "tax_category_required" => "", + "tax_code" => "", + "tax_code_cannot_be_deleted" => "", + "tax_code_duplicate" => "", + "tax_code_invalid_chars" => "", + "tax_code_name" => "", + "tax_code_required" => "", + "tax_code_successful_deleted" => "", + "tax_code_successful_updated" => "", + "tax_code_successful_updating" => "", + "tax_code_successfully_added" => "", + "tax_code_type" => "", + "tax_codes" => "", + "tax_codes_configuration" => "", + "tax_codes_saved_successfully" => "", + "tax_codes_saved_unsuccessfully" => "", + "tax_excluded" => "", + "tax_group" => "", + "tax_group_not_unique" => "", + "tax_group_sequence" => "", + "tax_included" => "", + "tax_jurisdiction" => "", + "tax_jurisdiction_duplicate" => "", + "tax_jurisdiction_invalid_chars" => "", + "tax_jurisdiction_required" => "", + "tax_jurisdictions" => "", + "tax_jurisdictions_configuration" => "", + "tax_jurisdictions_saved_successfully" => "", + "tax_jurisdictions_saved_unsuccessfully" => "", + "tax_rate" => "", + "tax_rate_configuration" => "", + "tax_rate_error_adding_updating" => "", + "tax_rate_numeric" => "", + "tax_rate_required" => "", + "tax_rate_successful_updated" => "", + "tax_rate_successfully_added" => "", + "tax_rates" => "", + "tax_rates_configuration" => "", + "tax_rounding" => "", + "tax_type" => "", + "update" => "", + "vat_tax" => "", ]; diff --git a/app/Language/de-CH/index.html b/app/Language/de-CH/index.html index b702fbc39..69df4e1df 100644 --- a/app/Language/de-CH/index.html +++ b/app/Language/de-CH/index.html @@ -1,7 +1,7 @@ - 403 Forbidden + 403 Forbidden diff --git a/app/Language/de-DE/Attributes.php b/app/Language/de-DE/Attributes.php index 18e573125..f4092f6c9 100644 --- a/app/Language/de-DE/Attributes.php +++ b/app/Language/de-DE/Attributes.php @@ -1,32 +1,32 @@ "Attributwert darf nicht ':' oder '|' enthalten", - "confirm_delete" => "Sind Sie sicher, dass Sie die ausgewählten Attribute löschen möchten?", - "confirm_restore" => "Sind Sie sicher, dass Sie die ausgewählten Attribute wiederherstellen möchten?", - "definition_cannot_be_deleted" => "Ausgewählte Attribute konnten nicht gelöscht werden", - "definition_error_adding_updating" => "Das Attribut {0} konnte nicht hinzugefügt oder aktualisiert werden. Bitte überprüfen Sie den Error-Log.", - "definition_flags" => "Attribut Sichtbarkeit", - "definition_group" => "Gruppe", - "definition_id" => "ID", - "definition_name" => "Attribut hinzufügen", - "definition_name_required" => "Attributname ist ein Pflichtfeld", - "definition_one_or_multiple" => "Attribut(e)", - "definition_successful_adding" => "Artikel erfolgreich hinzugefügt", - "definition_successful_deleted" => "Löschung erfolgreich", - "definition_successful_updating" => "Sie haben das Attributerfolgreich aktualisiert", - "definition_type" => "Attribut Typ", - "definition_type_required" => "Attribut ist ein Pflichtfeld", - "definition_unit" => "Maßeinheit", - "definition_values" => "Attribut Werte", - "new" => "Neues Attribut", - "no_attributes_to_display" => "Keine Elemente zum Anzeigen", - "receipt_visibility" => "Quittung", - "show_in_items" => "In Artikeln anzeigen", - "show_in_items_visibility" => "Artikel", - "show_in_receipt" => "In Quittung anzeigen", - "show_in_receivings" => "In Eingängen anzeigen", - "show_in_receivings_visibility" => "Eingänge", - "show_in_sales" => "In Verkäufen anzeigen", - "show_in_sales_visibility" => "Verkauf", - "update" => "Attribut aktualisieren", + "attribute_value_invalid_chars" => "Attributwert darf nicht ':' oder '|' enthalten", + "confirm_delete" => "Sind Sie sicher, dass Sie die ausgewählten Attribute löschen möchten?", + "confirm_restore" => "Sind Sie sicher, dass Sie die ausgewählten Attribute wiederherstellen möchten?", + "definition_cannot_be_deleted" => "Ausgewählte Attribute konnten nicht gelöscht werden", + "definition_error_adding_updating" => "Das Attribut {0} konnte nicht hinzugefügt oder aktualisiert werden. Bitte überprüfen Sie den Error-Log.", + "definition_flags" => "Attribut Sichtbarkeit", + "definition_group" => "Gruppe", + "definition_id" => "ID", + "definition_name" => "Attribut hinzufügen", + "definition_name_required" => "Attributname ist ein Pflichtfeld", + "definition_one_or_multiple" => "Attribut(e)", + "definition_successful_adding" => "Artikel erfolgreich hinzugefügt", + "definition_successful_deleted" => "Löschung erfolgreich", + "definition_successful_updating" => "Sie haben das Attributerfolgreich aktualisiert", + "definition_type" => "Attribut Typ", + "definition_type_required" => "Attribut ist ein Pflichtfeld", + "definition_unit" => "Maßeinheit", + "definition_values" => "Attribut Werte", + "new" => "Neues Attribut", + "no_attributes_to_display" => "Keine Elemente zum Anzeigen", + "receipt_visibility" => "Quittung", + "show_in_items" => "In Artikeln anzeigen", + "show_in_items_visibility" => "Artikel", + "show_in_receipt" => "In Quittung anzeigen", + "show_in_receivings" => "In Eingängen anzeigen", + "show_in_receivings_visibility" => "Eingänge", + "show_in_sales" => "In Verkäufen anzeigen", + "show_in_sales_visibility" => "Verkauf", + "update" => "Attribut aktualisieren", ]; diff --git a/app/Language/de-DE/Bootstrap_tables.php b/app/Language/de-DE/Bootstrap_tables.php index e4e5bdcf4..10680a445 100644 --- a/app/Language/de-DE/Bootstrap_tables.php +++ b/app/Language/de-DE/Bootstrap_tables.php @@ -1,11 +1,11 @@ "Alle", - "columns" => "Spalten", - "hide_show_pagination" => "Seitenzahlen anzeigen/verbergen", - "loading" => "Lade, bitte warten...", - "page_from_to" => "Zeige {0} bis {1} von {2} Zeile(n)", - "refresh" => "Aktualisieren", - "rows_per_page" => "{0} Einträge pro Seite", - "toggle" => "Umschalten", + "all" => "Alle", + "columns" => "Spalten", + "hide_show_pagination" => "Seitenzahlen anzeigen/verbergen", + "loading" => "Lade, bitte warten...", + "page_from_to" => "Zeige {0} bis {1} von {2} Zeile(n)", + "refresh" => "Aktualisieren", + "rows_per_page" => "{0} Einträge pro Seite", + "toggle" => "Umschalten", ]; diff --git a/app/Language/de-DE/Cashups.php b/app/Language/de-DE/Cashups.php index 082550204..efcbbf59d 100644 --- a/app/Language/de-DE/Cashups.php +++ b/app/Language/de-DE/Cashups.php @@ -1,49 +1,49 @@ "Betrag", - "amount_number" => "Betrag muss eine Zahl sein", - "amount_required" => "Der Betrag ist ein Pflichtfeld.", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "Auszahlung kann nicht gelöscht werden", - "cash_difference" => "", - "close_date" => "Abschlussdatum", - "close_employee" => "Abgeschlossen von", - "closed_amount_card" => "Karte", - "closed_amount_cash" => "Abgeschlossene Barmittel", - "closed_amount_check" => "Schecks", - "closed_amount_due" => "Gebühren", - "closed_amount_giftcard" => "", - "closed_amount_total" => "Gesamtbetrag", - "closed_date" => "Abschlussdatum", - "confirm_delete" => "Sind Sie sicher, dass Sie das ausgewählte Auszahlungen löschen möchten?", - "confirm_restore" => "Sind Sie sicher, dass Sie die ausgewählten Auszahlungen wiederherstellen möchten?", - "confirm_submit" => "", - "date_number" => "Datum muss eine Zahl sein", - "date_required" => "Datum ist ein Pflichtfeld", - "description" => "Beschreibung", - "enable_expected" => "", - "error_adding_updating" => "Fehler beim Hinzufügen/Ändern von Auszahlungen", - "giftcard" => "", - "id" => "ID", - "info" => "Auszahlungs-Info", - "info_employee" => "", - "is_deleted" => "Gelöscht", - "new" => "Neue Auszahlung", - "no_cashups_to_display" => "Keine Auszahlungen zum Anzeigen vorhanden", - "none_selected" => "Sie haben keine Auszahlungen ausgewählt", - "note" => "Notizen", - "one_or_multiple" => "Auszahlungen", - "open_amount_cash" => "Offenes Bargeld", - "open_date" => "Öffnungsdatum", - "open_employee" => "Eröffnet von", - "opened_date" => "Eröffnungsdatum", - "successful_adding" => "Auszahlung erfolgreich hinzugefügt", - "successful_deleted" => "Auszahlung erfolgreich gelöscht", - "successful_updating" => "Auszahlung erfolgreich geändert", - "total" => "Gesamtbetrag", - "transfer_amount_cash" => "Ein-/Auszahlung von Bargeld", - "transfer_amount_cash_minus" => "", - "update" => "Auszahlung ändern", - "warning" => "", + "amount" => "Betrag", + "amount_number" => "Betrag muss eine Zahl sein", + "amount_required" => "Der Betrag ist ein Pflichtfeld.", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "Auszahlung kann nicht gelöscht werden", + "cash_difference" => "", + "close_date" => "Abschlussdatum", + "close_employee" => "Abgeschlossen von", + "closed_amount_card" => "Karte", + "closed_amount_cash" => "Abgeschlossene Barmittel", + "closed_amount_check" => "Schecks", + "closed_amount_due" => "Gebühren", + "closed_amount_giftcard" => "", + "closed_amount_total" => "Gesamtbetrag", + "closed_date" => "Abschlussdatum", + "confirm_delete" => "Sind Sie sicher, dass Sie das ausgewählte Auszahlungen löschen möchten?", + "confirm_restore" => "Sind Sie sicher, dass Sie die ausgewählten Auszahlungen wiederherstellen möchten?", + "confirm_submit" => "", + "date_number" => "Datum muss eine Zahl sein", + "date_required" => "Datum ist ein Pflichtfeld", + "description" => "Beschreibung", + "enable_expected" => "", + "error_adding_updating" => "Fehler beim Hinzufügen/Ändern von Auszahlungen", + "giftcard" => "", + "id" => "ID", + "info" => "Auszahlungs-Info", + "info_employee" => "", + "is_deleted" => "Gelöscht", + "new" => "Neue Auszahlung", + "no_cashups_to_display" => "Keine Auszahlungen zum Anzeigen vorhanden", + "none_selected" => "Sie haben keine Auszahlungen ausgewählt", + "note" => "Notizen", + "one_or_multiple" => "Auszahlungen", + "open_amount_cash" => "Offenes Bargeld", + "open_date" => "Öffnungsdatum", + "open_employee" => "Eröffnet von", + "opened_date" => "Eröffnungsdatum", + "successful_adding" => "Auszahlung erfolgreich hinzugefügt", + "successful_deleted" => "Auszahlung erfolgreich gelöscht", + "successful_updating" => "Auszahlung erfolgreich geändert", + "total" => "Gesamtbetrag", + "transfer_amount_cash" => "Ein-/Auszahlung von Bargeld", + "transfer_amount_cash_minus" => "", + "update" => "Auszahlung ändern", + "warning" => "", ]; diff --git a/app/Language/de-DE/Common.php b/app/Language/de-DE/Common.php index af799a904..2dba65922 100644 --- a/app/Language/de-DE/Common.php +++ b/app/Language/de-DE/Common.php @@ -1,88 +1,88 @@ "Adresse 1", - "address_2" => "Adresse 2", - "admin" => "", - "city" => "Stadt", - "clerk" => "", - "close" => "Schließen", - "color" => "", - "comments" => "Kommentare", - "common" => "Allgemein", - "confirm_search" => "Sie haben eine oder mehrere Zeilen gewählt. Nach der Verarbeitung werden diese nicht mehr ausgewählt sein. Wollen Sie die Suche dennoch verarbeiten?", - "copyrights" => "© 2010 - {0}", - "correct_errors" => "Bitte korrigieren Sie vor dem Speichern die angezeigten Fehler", - "country" => "Land", - "dashboard" => "", - "date" => "Datum", - "delete" => "Löschen", - "det" => "Details", - "download_import_template" => "Download Import CSV Voralge (CSV)", - "edit" => "Ändern", - "email" => "eMail", - "email_invalid_format" => "Die E-Mail Adresse ist nicht korrekt.", - "export_csv" => "CSV Export", - "export_csv_no" => "Nein", - "export_csv_yes" => "Ja", - "fields_required_message" => "Die Felder in rot sind erforderlich", - "fields_required_message_unique" => "", - "first_name" => "Vorname", - "first_name_required" => "Vorname ist erforderlich.", - "first_page" => "Erste", - "gender" => "Geschlecht", - "gender_female" => "W", - "gender_male" => "M", - "gender_undefined" => "", - "icon" => "", - "id" => "ID", - "import" => "Import", - "import_change_file" => "Ändern", - "import_csv" => "CSV Import", - "import_full_path" => "Voller Dateipfad zum CSV File notwendig", - "import_remove_file" => "Löschen", - "import_select_file" => "Datei auswählen", - "inv" => "Lag", - "last_name" => "Nachname", - "last_name_required" => "Nachname ist erforderlich.", - "last_page" => "Letzte", - "learn_about_project" => "für neueste Nachrichten zum Projekt.", - "list_of" => "Liste von", - "logo" => "", - "logo_mark" => "", - "logout" => "Ausloggen", - "manager" => "", - "migration_needed" => "Eine Datenbankmigration auf {0} wird nach der Anmeldung gestartet.", - "new" => "Neu", - "no" => "", - "no_persons_to_display" => "Keine Personen zum Anzeigen.", - "none_selected_text" => "[auswählen]", - "or" => "Oder", - "people" => "", - "phone_number" => "Telefon", - "phone_number_required" => "Telefon ist erforderlich", - "please_visit_my" => "Bitte beuschen Sie", - "position" => "", - "powered_by" => "Unterstützt von", - "price" => "Preis", - "print" => "Drucken", - "remove" => "Annulieren", - "required" => "Erforderlich", - "restore" => "Wiederherstellen", - "return_policy" => "Rücknahmeerklärung", - "search" => "Suche", - "search_options" => "Suchkriterien", - "searched_for" => "Gescuht nach", - "software_short" => "", - "software_title" => "", - "state" => "BL/Kanton", - "submit" => "Senden", - "total_spent" => "Gesamtausgaben", - "unknown" => "Unbekannt", - "view_recent_sales" => "Letzte Verkäufe", - "website" => "Website", - "welcome" => "Willkommen", - "welcome_message" => "Willkommen bei OSPOS, zum Beginnen auf ein Modul klicken.", - "yes" => "", - "you_are_using_ospos" => "Sie verwenden Open Source Point Of Sale Version", - "zip" => "PLZ", + "address_1" => "Adresse 1", + "address_2" => "Adresse 2", + "admin" => "", + "city" => "Stadt", + "clerk" => "", + "close" => "Schließen", + "color" => "", + "comments" => "Kommentare", + "common" => "Allgemein", + "confirm_search" => "Sie haben eine oder mehrere Zeilen gewählt. Nach der Verarbeitung werden diese nicht mehr ausgewählt sein. Wollen Sie die Suche dennoch verarbeiten?", + "copyrights" => "© 2010 - {0}", + "correct_errors" => "Bitte korrigieren Sie vor dem Speichern die angezeigten Fehler", + "country" => "Land", + "dashboard" => "", + "date" => "Datum", + "delete" => "Löschen", + "det" => "Details", + "download_import_template" => "Download Import CSV Voralge (CSV)", + "edit" => "Ändern", + "email" => "eMail", + "email_invalid_format" => "Die E-Mail Adresse ist nicht korrekt.", + "export_csv" => "CSV Export", + "export_csv_no" => "Nein", + "export_csv_yes" => "Ja", + "fields_required_message" => "Die Felder in rot sind erforderlich", + "fields_required_message_unique" => "", + "first_name" => "Vorname", + "first_name_required" => "Vorname ist erforderlich.", + "first_page" => "Erste", + "gender" => "Geschlecht", + "gender_female" => "W", + "gender_male" => "M", + "gender_undefined" => "", + "icon" => "", + "id" => "ID", + "import" => "Import", + "import_change_file" => "Ändern", + "import_csv" => "CSV Import", + "import_full_path" => "Voller Dateipfad zum CSV File notwendig", + "import_remove_file" => "Löschen", + "import_select_file" => "Datei auswählen", + "inv" => "Lag", + "last_name" => "Nachname", + "last_name_required" => "Nachname ist erforderlich.", + "last_page" => "Letzte", + "learn_about_project" => "für neueste Nachrichten zum Projekt.", + "list_of" => "Liste von", + "logo" => "", + "logo_mark" => "", + "logout" => "Ausloggen", + "manager" => "", + "migration_needed" => "Eine Datenbankmigration auf {0} wird nach der Anmeldung gestartet.", + "new" => "Neu", + "no" => "", + "no_persons_to_display" => "Keine Personen zum Anzeigen.", + "none_selected_text" => "[auswählen]", + "or" => "Oder", + "people" => "", + "phone_number" => "Telefon", + "phone_number_required" => "Telefon ist erforderlich", + "please_visit_my" => "Bitte beuschen Sie", + "position" => "", + "powered_by" => "Unterstützt von", + "price" => "Preis", + "print" => "Drucken", + "remove" => "Annulieren", + "required" => "Erforderlich", + "restore" => "Wiederherstellen", + "return_policy" => "Rücknahmeerklärung", + "search" => "Suche", + "search_options" => "Suchkriterien", + "searched_for" => "Gescuht nach", + "software_short" => "", + "software_title" => "", + "state" => "BL/Kanton", + "submit" => "Senden", + "total_spent" => "Gesamtausgaben", + "unknown" => "Unbekannt", + "view_recent_sales" => "Letzte Verkäufe", + "website" => "Website", + "welcome" => "Willkommen", + "welcome_message" => "Willkommen bei OSPOS, zum Beginnen auf ein Modul klicken.", + "yes" => "", + "you_are_using_ospos" => "Sie verwenden Open Source Point Of Sale Version", + "zip" => "PLZ", ]; diff --git a/app/Language/de-DE/Config.php b/app/Language/de-DE/Config.php index 8fda9a002..580ddc047 100644 --- a/app/Language/de-DE/Config.php +++ b/app/Language/de-DE/Config.php @@ -1,330 +1,330 @@ "Adresse", - "address_required" => "Adresse ist erforderlich.", - "all_set" => "All file permissions are set correctly!", - "allow_duplicate_barcodes" => "Erlaube doppelte Barcodes", - "apostrophe" => "Apostroph", - "backup_button" => "Sicherung", - "backup_database" => "Sicherungs-Datenbank", - "barcode" => "Barcodes", - "barcode_company" => "Firmenname", - "barcode_configuration" => "Barcodes", - "barcode_content" => "Barcode Inhalt", - "barcode_first_row" => "Erste Zeile", - "barcode_font" => "Schrift", - "barcode_formats" => "Eingabeformate", - "barcode_generate_if_empty" => "Generiere Barcode wenn leer.", - "barcode_height" => "Höhe", - "barcode_id" => "Artikel-Nr/Name", - "barcode_info" => "Barcode Einstellung", - "barcode_layout" => "Barcode-Layout", - "barcode_name" => "Name", - "barcode_number" => "UPC/EAN/ISBN", - "barcode_number_in_row" => "Nummer in Zeile", - "barcode_page_cellspacing" => "Zellenabstand auf Seite.", - "barcode_page_width" => "Seitenbreite", - "barcode_price" => "Preis", - "barcode_second_row" => "Zeile 2", - "barcode_third_row" => "Zeile 3", - "barcode_tooltip" => "Warnung: Diese Funktion kann dazu führen, dass doppelte Elemente importiert oder erstellt werden. Nicht verwenden, wenn Sie keine doppelten Barcodes wünschen.", - "barcode_type" => "Barcode Typ", - "barcode_width" => "Breite (px)", - "bottom" => "Unten", - "cash_button" => "", - "cash_button_1" => "", - "cash_button_2" => "", - "cash_button_3" => "", - "cash_button_4" => "", - "cash_button_5" => "", - "cash_button_6" => "", - "cash_decimals" => "Bargeld Dezimalstellen", - "cash_decimals_tooltip" => "Wenn Währung und Bargeld die gleiche Anzahl Dezimalstellen haben, wird nicht gerundet.", - "cash_rounding" => "Bargeld Rundung", - "category_dropdown" => "", - "center" => "Mitte", - "change_apperance_tooltip" => "", - "comma" => "Komma", - "company" => "Firmenname", - "company_avatar" => "", - "company_change_image" => "Bild ändern", - "company_logo" => "Logo", - "company_remove_image" => "Bild löschen", - "company_required" => "Firmenname ist erforderlich", - "company_select_image" => "Bild auswählen", - "company_website_url" => "Webseite ist nicht in korrektem Format (http://...).", - "country_codes" => "Ländercodes", - "country_codes_tooltip" => "Kommagetrennte Liste der Ländercodes für den Adressvergleich.", - "currency_code" => "Währungscode", - "currency_decimals" => "Währungsdezimalzahlen", - "currency_symbol" => "Währungssymbol", - "current_employee_only" => "", - "customer_reward" => "Prämie", - "customer_reward_duplicate" => "Die Prämie muss eindeutig sein.", - "customer_reward_enable" => "Kundenprämien aktivieren", - "customer_reward_invalid_chars" => "Eine Prämie darf kein '_' enthalten", - "customer_reward_required" => "Prämie ist erforderlich", - "customer_sales_tax_support" => "", - "date_or_time_format" => "Datum und Uhrzeit Filter", - "datetimeformat" => "Datum und Zeit Format", - "decimal_point" => "Dezimaltrennzeichen", - "default_barcode_font_size_number" => "Standard Barcode Schriftgröße muss eine Zahl sein.", - "default_barcode_font_size_required" => "Standard Barcode Schriftgröße ist erforderlich.", - "default_barcode_height_number" => "Standard Barcode Höhe muss eine Zahl sein.", - "default_barcode_height_required" => "Standard Barcode Höhe ist erforderlich.", - "default_barcode_num_in_row_number" => "Standard Barcode Nummer muss eine Zahl sein.", - "default_barcode_num_in_row_required" => "Die Barcode Nummer ist erforderlich.", - "default_barcode_page_cellspacing_number" => "Standard Barcode Zellabstand muss eine Zahl sein.", - "default_barcode_page_cellspacing_required" => "Der Barcode Zellabstand ist erforderlich.", - "default_barcode_page_width_number" => "Standard Barcode Seitenbreite muss eine Zahl sein.", - "default_barcode_page_width_required" => "Die Barcode Seitenbreite ist erforderlich.", - "default_barcode_width_number" => "Standard Barcode Breite muss eine Zahl sein.", - "default_barcode_width_required" => "Standard Barcode Breite ist erforderlich.", - "default_item_columns" => "Standardmäßig sichtbare Spalten für Artikel", - "default_origin_tax_code" => "Standard Steuer Kürzel", - "default_receivings_discount" => "Standard Rabatt für Eingänge", - "default_receivings_discount_number" => "Standard Rabatt für Eingänge muss eine Zahl sein.", - "default_receivings_discount_required" => "Standard Rabatt für Eingänge ist erforderlich.", - "default_sales_discount" => "Standard Verkaufsrabatt", - "default_sales_discount_number" => "Der Standard Verkaufsrabatt muss eine Zahl sein.", - "default_sales_discount_required" => "Der Standard Verkaufsrabatt ist erforderlich.", - "default_tax_category" => "Standard-Steuerkategorie", - "default_tax_code" => "Standard Steuercode", - "default_tax_jurisdiction" => "Standard Steuerbehörde", - "default_tax_name_number" => "Standard Steuer Name muss ein String sein.", - "default_tax_name_required" => "Standardsteuerfeld ist erforderlich.", - "default_tax_rate" => "MWSt %", - "default_tax_rate_1" => "MWSt 1", - "default_tax_rate_2" => "MWSt 2", - "default_tax_rate_3" => "", - "default_tax_rate_number" => "Standard Steuersatz muss eine Zahl sein.", - "default_tax_rate_required" => "Standard Steuersatz ist erforderlich.", - "derive_sale_quantity" => "Aus Gesamtbetrag abgeleitete Verkaufsmengen", - "derive_sale_quantity_tooltip" => "Falls ausgewählt wird ein neuer Artikeltyp für nach Gesamtbetrag bestellte Artikel bereitgestellt", - "dinner_table" => "Tisch", - "dinner_table_duplicate" => "Tisch muss eindeutig sein.", - "dinner_table_enable" => "Esstische aktivieren", - "dinner_table_invalid_chars" => "Tischname darf kein '_' enthalten.", - "dinner_table_required" => "Tisch wird benötigt.", - "dot" => "Punkt", - "email" => "eMail", - "email_configuration" => "Email Konfiguration", - "email_mailpath" => "Pfad zu Sendmail", - "email_protocol" => "Protokoll", - "email_receipt_check_behaviour" => "Kontrollkästchen E-Mail-Empfangsbestätigung", - "email_receipt_check_behaviour_always" => "Immer ausgewählt", - "email_receipt_check_behaviour_last" => "Letzte Auswahl speichern", - "email_receipt_check_behaviour_never" => "Nie ausgewählt", - "email_smtp_crypto" => "SMTP Verschlüsselung", - "email_smtp_host" => "SMTP-Server", - "email_smtp_pass" => "SMTP Passwort", - "email_smtp_port" => "SMTP-Port", - "email_smtp_timeout" => "SMTP-Timeout", - "email_smtp_user" => "SMTP Benutzername", - "enable_avatar" => "", - "enable_avatar_tooltip" => "", - "enable_dropdown_tooltip" => "", - "enable_new_look" => "", - "enable_right_bar" => "", - "enable_right_bar_tooltip" => "", - "enforce_privacy" => "Datenschutz durchsetzen", - "enforce_privacy_tooltip" => "Schützen Sie die Privatsphäre Ihrer Kunden und erzwingen Sie die Verschlüsselung von Daten im Falle der Löschung ihrer Daten", - "fax" => "Fax", - "file_perm" => "There are problems with file permissions please fix and reload this page.", - "financial_year" => "Beginn Geschäftsjahr", - "financial_year_apr" => "1. April", - "financial_year_aug" => "1. August", - "financial_year_dec" => "1. Dezember", - "financial_year_feb" => "1. Februar", - "financial_year_jan" => "1. Januar", - "financial_year_jul" => "1. Juli", - "financial_year_jun" => "1. Juni", - "financial_year_mar" => "1. März", - "financial_year_may" => "1. Mai", - "financial_year_nov" => "1. November", - "financial_year_oct" => "1. Oktober", - "financial_year_sep" => "1. September", - "floating_labels" => "", - "gcaptcha_enable" => "Login reCAPTCHA", - "gcaptcha_secret_key" => "reCAPTCHA: Geheimer Schlüssel", - "gcaptcha_secret_key_required" => "reCAPTCHA Secret Key wird benötigt", - "gcaptcha_site_key" => "reCAPTCHA: Seitenschlüssel", - "gcaptcha_site_key_required" => "reCAPTCHA Site Key wird benötigt", - "gcaptcha_tooltip" => "Login mit Google reCAPTCHA schützen, das Icon anklicken um ein Schlüsselpaar zu erhalten.", - "general" => "Allgemeines", - "general_configuration" => "Allgemeine Konfiguration", - "giftcard_number" => "Gutscheinnummer", - "giftcard_random" => "Zufällig Erzeugen", - "giftcard_series" => "Serie Erzeugen", - "image_allowed_file_types" => "", - "image_max_height_tooltip" => "", - "image_max_size_tooltip" => "", - "image_max_width_tooltip" => "", - "image_restrictions" => "", - "include_hsn" => "Unterstützung für HSN-Codes einbinden", - "info" => "Informationen", - "info_configuration" => "Generelle Einstellungen", - "input_groups" => "", - "integrations" => "Integrationen", - "integrations_configuration" => "Drittanbieter Integrationen", - "invoice" => "Rechnungs", - "invoice_configuration" => "Druckereinstellungen", - "invoice_default_comments" => "Rechnungskommentar", - "invoice_email_message" => "Rechnungsvorlage (Email)", - "invoice_enable" => "Rechnungsstellung einschalten", - "invoice_printer" => "Rechnungsdrucker", - "invoice_type" => "Rechnungsart", - "is_readable" => "", - "is_writable" => "is writable, but the permissions are higher than 750.", - "item_markup" => "", - "jsprintsetup_required" => "Warnung: Diese Funktion benötigt das Firefox jsPrintSetup addon. Trotzdem speichern?", - "language" => "Sprache", - "last_used_invoice_number" => "Zuletzt verwendete Rechnungsnummer", - "last_used_quote_number" => "Zuletzt verwendete Angebotsnummer", - "last_used_work_order_number" => "Zuletzt verwendete Arbeitsauftragsnummer", - "left" => "Links", - "license" => "Lizenz", - "license_configuration" => "Lizenzvereinbarung", - "line_sequence" => "Zeilenfolge", - "lines_per_page" => "Zeilen pro Seite", - "lines_per_page_number" => "Zeilen pro Seite muss eine Zahl sein.", - "lines_per_page_required" => "Zeilen pro Seite ist erforderlich.", - "locale" => "Länder", - "locale_configuration" => "Länderkonfiguration", - "locale_info" => "Info Länderkonfiguration", - "location" => "Lagerort", - "location_configuration" => "Lagerort", - "location_info" => "Lagerort-Information", - "login_form" => "", - "logout" => "Wollen Sie vor dem Beenden eine Sicherung erstellen? Klicke [OK] für Sicherung.", - "mailchimp" => "Mailchimp", - "mailchimp_api_key" => "Mailchimp API Schlüssel", - "mailchimp_configuration" => "Mailchimp Konfiguration", - "mailchimp_key_successfully" => "API Key ist gültig.", - "mailchimp_key_unsuccessfully" => "API Key ist ungültig.", - "mailchimp_lists" => "Mailchimp Liste(n)", - "mailchimp_tooltip" => "Icon anklicken um API Key zu erhalten.", - "message" => "Nachricht", - "message_configuration" => "Nachrichtenkonfiguration", - "msg_msg" => "Gespeicherte Nachricht", - "msg_msg_placeholder" => "Wenn Sie eine SMS Vorlage benutzen wollen, geben Sie diese hier ein, ansonsten lassen Sie dieses Feld frei.", - "msg_pwd" => "SMS-API Passwort", - "msg_pwd_required" => "SMS-API Passwort ist ein Pflichtfeld", - "msg_src" => "SMS-API Sender ID", - "msg_src_required" => "SMS-API Sender ID ist ein Pflichtfeld", - "msg_uid" => "SMS-API Benutzername", - "msg_uid_required" => "SMS-API Benutzername ist ein Pflichtfeld", - "multi_pack_enabled" => "Mehrere Pakete pro Artikel", - "no_risk" => "No security/vulnerability risks.", - "none" => "none", - "notify_alignment" => "Benachrichtigungs Popup Position", - "number_format" => "Zahlenformat", - "number_locale" => "Länderkonfiguration", - "number_locale_invalid" => "Die eingegebene Lokale ist falsch. Bitte sehen Sie sich den Link im Tooltip an um einen korrekten Wert zu finden.", - "number_locale_required" => "Locale-Nummer ist ein Pflichtfeld.", - "number_locale_tooltip" => "Finden Sie eine korrekte Lokale über diesen Link.", - "os_timezone" => "", - "ospos_info" => "OSPOS Installations Information", - "payment_options_order" => "Zahlungsarten Reihenfolge", - "perm_risk" => "Permissions higher than 750 leaves this software at risk.", - "phone" => "Telefon", - "phone_required" => "Telefon ist erforderlich.", - "print_bottom_margin" => "Unterer Rand", - "print_bottom_margin_number" => "Unterer Rand muss eine Zahl sein.", - "print_bottom_margin_required" => "Unterer Rand ist erforderlich.", - "print_delay_autoreturn" => "Automatisch zu 'Verkauf' zurückkehren nach", - "print_delay_autoreturn_number" => "Automatisch zu 'Verkauf' zurückkehren nach ist erforderlich.", - "print_delay_autoreturn_required" => "Automatisch zu 'Verkauf' zurückkehren nach muss eine Zahl sein.", - "print_footer" => "Drucke Browser Fusszeile", - "print_header" => "Drucke Browser Kopfzeile", - "print_left_margin" => "Rand links", - "print_left_margin_number" => "Rand links muss eine Zahl sein.", - "print_left_margin_required" => "Rand links ist erforderlich.", - "print_receipt_check_behaviour" => "Quittung drucken", - "print_receipt_check_behaviour_always" => "Immer ausgewählt", - "print_receipt_check_behaviour_last" => "Letzte Auswahl speichern", - "print_receipt_check_behaviour_never" => "Nie ausgewählt", - "print_right_margin" => "Rand rechts", - "print_right_margin_number" => "Rand rechts muss eine Zahl sein.", - "print_right_margin_required" => "Rand rechts ist erforderlich.", - "print_silently" => "Zeige Druckdialog", - "print_top_margin" => "Rand oben", - "print_top_margin_number" => "Rand oben muss eine Zahl sein.", - "print_top_margin_required" => "Rand oben ist erforderlich.", - "quantity_decimals" => "Mengendezimalstellen", - "quick_cash_enable" => "", - "quote_default_comments" => "Angebot Standard-Kommentare", - "receipt" => "Eingang", - "receipt_category" => "", - "receipt_configuration" => "Druckereinstellungen", - "receipt_default" => "Default", - "receipt_font_size" => "Schriftgröße", - "receipt_font_size_number" => "Schriftgröße muss eine Zahl sein.", - "receipt_font_size_required" => "Schriftgröße ist erforderlich.", - "receipt_info" => "Quittungsinformation", - "receipt_printer" => "Quittungsdrucker", - "receipt_short" => "Kurz", - "receipt_show_company_name" => "Firmenname anzeigen", - "receipt_show_description" => "Beschreibung anzeigen", - "receipt_show_serialnumber" => "Seriennummer anzeigen", - "receipt_show_tax_ind" => "", - "receipt_show_taxes" => "Zeige MWSt", - "receipt_show_total_discount" => "Zeige Gesamtrabatt", - "receipt_template" => "Quittungs Template", - "receiving_calculate_average_price" => "Berechne Durchschnittseinkaufspreis", - "recv_invoice_format" => "Format Eingangsrechnung", - "register_mode_default" => "Standard Kassenmodus", - "report_an_issue" => "", - "return_policy_required" => "Rücknahmebedingungen sind erforderlich.", - "reward" => "Prämie", - "reward_configuration" => "Prämien Konfiguration", - "right" => "Rechts", - "sales_invoice_format" => "Format Verkaufsrechnung", - "sales_quote_format" => "Angebotsformat", - "saved_successfully" => "Einstellungen erfolgreich gesichert.", - "saved_unsuccessfully" => "Einstellungen konnten nicht gesichert werden.", - "security_issue" => "Security Vulnerability Warning", - "server_notice" => "Bitte nutzen Sie die unten genannten Informationen für Problemberichterstattung.", - "service_charge" => "", - "show_due_enable" => "", - "show_office_group" => "Verwaltungssymbol anzeigen", - "statistics" => "Statistiken Senden", - "statistics_tooltip" => "Statistiken Senden für programierung und verbesserungen.", - "stock_location" => "Lagerort", - "stock_location_duplicate" => "Bitte verwenden Sie einen eindeutigen Lagerort.", - "stock_location_invalid_chars" => "Der Lagerort kann keine Unterstriche enthalten.", - "stock_location_required" => "Lagerort Nummer ist erforderlich.", - "suggestions_fifth_column" => "", - "suggestions_first_column" => "Spalte 1", - "suggestions_fourth_column" => "", - "suggestions_layout" => "Vorschläge Layout", - "suggestions_second_column" => "Spalte 2", - "suggestions_third_column" => "Spalte 3", - "system_conf" => "Setup & Conf", - "system_info" => "System Info", - "table" => "Tabelle", - "table_configuration" => "Tabelle konfigurieren", - "takings_printer" => "Einnahmendrucker", - "tax" => "Steuer", - "tax_category" => "Steuerkategorie", - "tax_category_duplicate" => "Die eingegebene Steuerkategorie existiert bereits.", - "tax_category_invalid_chars" => "Die eingegebene Steuerkategorie ist ungültig.", - "tax_category_required" => "Die Steuerkategorie ist erforderlich.", - "tax_category_used" => "Die Steuerkategorie kann nicht gelöscht werden, da sie in Benutzung ist.", - "tax_configuration" => "Steuer-Konfiguration", - "tax_decimals" => "Steuer Dezimalstellen", - "tax_id" => "Steuer ID", - "tax_included" => "MWSt inbegriffen", - "theme" => "Design", - "theme_preview" => "", - "thousands_separator" => "Tausendertrennzeichen", - "timezone" => "Zeitzone", - "timezone_error" => "", - "top" => "Oben", - "use_destination_based_tax" => "Zielabhängige Steuer verwenden", - "user_timezone" => "", - "website" => "Website", - "wholesale_markup" => "", - "work_order_enable" => "Unterstützung von Arbeitsaufträgen", - "work_order_format" => "Arbeitsauftragsformat", + "address" => "Adresse", + "address_required" => "Adresse ist erforderlich.", + "all_set" => "All file permissions are set correctly!", + "allow_duplicate_barcodes" => "Erlaube doppelte Barcodes", + "apostrophe" => "Apostroph", + "backup_button" => "Sicherung", + "backup_database" => "Sicherungs-Datenbank", + "barcode" => "Barcodes", + "barcode_company" => "Firmenname", + "barcode_configuration" => "Barcodes", + "barcode_content" => "Barcode Inhalt", + "barcode_first_row" => "Erste Zeile", + "barcode_font" => "Schrift", + "barcode_formats" => "Eingabeformate", + "barcode_generate_if_empty" => "Generiere Barcode wenn leer.", + "barcode_height" => "Höhe", + "barcode_id" => "Artikel-Nr/Name", + "barcode_info" => "Barcode Einstellung", + "barcode_layout" => "Barcode-Layout", + "barcode_name" => "Name", + "barcode_number" => "UPC/EAN/ISBN", + "barcode_number_in_row" => "Nummer in Zeile", + "barcode_page_cellspacing" => "Zellenabstand auf Seite.", + "barcode_page_width" => "Seitenbreite", + "barcode_price" => "Preis", + "barcode_second_row" => "Zeile 2", + "barcode_third_row" => "Zeile 3", + "barcode_tooltip" => "Warnung: Diese Funktion kann dazu führen, dass doppelte Elemente importiert oder erstellt werden. Nicht verwenden, wenn Sie keine doppelten Barcodes wünschen.", + "barcode_type" => "Barcode Typ", + "barcode_width" => "Breite (px)", + "bottom" => "Unten", + "cash_button" => "", + "cash_button_1" => "", + "cash_button_2" => "", + "cash_button_3" => "", + "cash_button_4" => "", + "cash_button_5" => "", + "cash_button_6" => "", + "cash_decimals" => "Bargeld Dezimalstellen", + "cash_decimals_tooltip" => "Wenn Währung und Bargeld die gleiche Anzahl Dezimalstellen haben, wird nicht gerundet.", + "cash_rounding" => "Bargeld Rundung", + "category_dropdown" => "", + "center" => "Mitte", + "change_apperance_tooltip" => "", + "comma" => "Komma", + "company" => "Firmenname", + "company_avatar" => "", + "company_change_image" => "Bild ändern", + "company_logo" => "Logo", + "company_remove_image" => "Bild löschen", + "company_required" => "Firmenname ist erforderlich", + "company_select_image" => "Bild auswählen", + "company_website_url" => "Webseite ist nicht in korrektem Format (http://...).", + "country_codes" => "Ländercodes", + "country_codes_tooltip" => "Kommagetrennte Liste der Ländercodes für den Adressvergleich.", + "currency_code" => "Währungscode", + "currency_decimals" => "Währungsdezimalzahlen", + "currency_symbol" => "Währungssymbol", + "current_employee_only" => "", + "customer_reward" => "Prämie", + "customer_reward_duplicate" => "Die Prämie muss eindeutig sein.", + "customer_reward_enable" => "Kundenprämien aktivieren", + "customer_reward_invalid_chars" => "Eine Prämie darf kein '_' enthalten", + "customer_reward_required" => "Prämie ist erforderlich", + "customer_sales_tax_support" => "", + "date_or_time_format" => "Datum und Uhrzeit Filter", + "datetimeformat" => "Datum und Zeit Format", + "decimal_point" => "Dezimaltrennzeichen", + "default_barcode_font_size_number" => "Standard Barcode Schriftgröße muss eine Zahl sein.", + "default_barcode_font_size_required" => "Standard Barcode Schriftgröße ist erforderlich.", + "default_barcode_height_number" => "Standard Barcode Höhe muss eine Zahl sein.", + "default_barcode_height_required" => "Standard Barcode Höhe ist erforderlich.", + "default_barcode_num_in_row_number" => "Standard Barcode Nummer muss eine Zahl sein.", + "default_barcode_num_in_row_required" => "Die Barcode Nummer ist erforderlich.", + "default_barcode_page_cellspacing_number" => "Standard Barcode Zellabstand muss eine Zahl sein.", + "default_barcode_page_cellspacing_required" => "Der Barcode Zellabstand ist erforderlich.", + "default_barcode_page_width_number" => "Standard Barcode Seitenbreite muss eine Zahl sein.", + "default_barcode_page_width_required" => "Die Barcode Seitenbreite ist erforderlich.", + "default_barcode_width_number" => "Standard Barcode Breite muss eine Zahl sein.", + "default_barcode_width_required" => "Standard Barcode Breite ist erforderlich.", + "default_item_columns" => "Standardmäßig sichtbare Spalten für Artikel", + "default_origin_tax_code" => "Standard Steuer Kürzel", + "default_receivings_discount" => "Standard Rabatt für Eingänge", + "default_receivings_discount_number" => "Standard Rabatt für Eingänge muss eine Zahl sein.", + "default_receivings_discount_required" => "Standard Rabatt für Eingänge ist erforderlich.", + "default_sales_discount" => "Standard Verkaufsrabatt", + "default_sales_discount_number" => "Der Standard Verkaufsrabatt muss eine Zahl sein.", + "default_sales_discount_required" => "Der Standard Verkaufsrabatt ist erforderlich.", + "default_tax_category" => "Standard-Steuerkategorie", + "default_tax_code" => "Standard Steuercode", + "default_tax_jurisdiction" => "Standard Steuerbehörde", + "default_tax_name_number" => "Standard Steuer Name muss ein String sein.", + "default_tax_name_required" => "Standardsteuerfeld ist erforderlich.", + "default_tax_rate" => "MWSt %", + "default_tax_rate_1" => "MWSt 1", + "default_tax_rate_2" => "MWSt 2", + "default_tax_rate_3" => "", + "default_tax_rate_number" => "Standard Steuersatz muss eine Zahl sein.", + "default_tax_rate_required" => "Standard Steuersatz ist erforderlich.", + "derive_sale_quantity" => "Aus Gesamtbetrag abgeleitete Verkaufsmengen", + "derive_sale_quantity_tooltip" => "Falls ausgewählt wird ein neuer Artikeltyp für nach Gesamtbetrag bestellte Artikel bereitgestellt", + "dinner_table" => "Tisch", + "dinner_table_duplicate" => "Tisch muss eindeutig sein.", + "dinner_table_enable" => "Esstische aktivieren", + "dinner_table_invalid_chars" => "Tischname darf kein '_' enthalten.", + "dinner_table_required" => "Tisch wird benötigt.", + "dot" => "Punkt", + "email" => "eMail", + "email_configuration" => "Email Konfiguration", + "email_mailpath" => "Pfad zu Sendmail", + "email_protocol" => "Protokoll", + "email_receipt_check_behaviour" => "Kontrollkästchen E-Mail-Empfangsbestätigung", + "email_receipt_check_behaviour_always" => "Immer ausgewählt", + "email_receipt_check_behaviour_last" => "Letzte Auswahl speichern", + "email_receipt_check_behaviour_never" => "Nie ausgewählt", + "email_smtp_crypto" => "SMTP Verschlüsselung", + "email_smtp_host" => "SMTP-Server", + "email_smtp_pass" => "SMTP Passwort", + "email_smtp_port" => "SMTP-Port", + "email_smtp_timeout" => "SMTP-Timeout", + "email_smtp_user" => "SMTP Benutzername", + "enable_avatar" => "", + "enable_avatar_tooltip" => "", + "enable_dropdown_tooltip" => "", + "enable_new_look" => "", + "enable_right_bar" => "", + "enable_right_bar_tooltip" => "", + "enforce_privacy" => "Datenschutz durchsetzen", + "enforce_privacy_tooltip" => "Schützen Sie die Privatsphäre Ihrer Kunden und erzwingen Sie die Verschlüsselung von Daten im Falle der Löschung ihrer Daten", + "fax" => "Fax", + "file_perm" => "There are problems with file permissions please fix and reload this page.", + "financial_year" => "Beginn Geschäftsjahr", + "financial_year_apr" => "1. April", + "financial_year_aug" => "1. August", + "financial_year_dec" => "1. Dezember", + "financial_year_feb" => "1. Februar", + "financial_year_jan" => "1. Januar", + "financial_year_jul" => "1. Juli", + "financial_year_jun" => "1. Juni", + "financial_year_mar" => "1. März", + "financial_year_may" => "1. Mai", + "financial_year_nov" => "1. November", + "financial_year_oct" => "1. Oktober", + "financial_year_sep" => "1. September", + "floating_labels" => "", + "gcaptcha_enable" => "Login reCAPTCHA", + "gcaptcha_secret_key" => "reCAPTCHA: Geheimer Schlüssel", + "gcaptcha_secret_key_required" => "reCAPTCHA Secret Key wird benötigt", + "gcaptcha_site_key" => "reCAPTCHA: Seitenschlüssel", + "gcaptcha_site_key_required" => "reCAPTCHA Site Key wird benötigt", + "gcaptcha_tooltip" => "Login mit Google reCAPTCHA schützen, das Icon anklicken um ein Schlüsselpaar zu erhalten.", + "general" => "Allgemeines", + "general_configuration" => "Allgemeine Konfiguration", + "giftcard_number" => "Gutscheinnummer", + "giftcard_random" => "Zufällig Erzeugen", + "giftcard_series" => "Serie Erzeugen", + "image_allowed_file_types" => "", + "image_max_height_tooltip" => "", + "image_max_size_tooltip" => "", + "image_max_width_tooltip" => "", + "image_restrictions" => "", + "include_hsn" => "Unterstützung für HSN-Codes einbinden", + "info" => "Informationen", + "info_configuration" => "Generelle Einstellungen", + "input_groups" => "", + "integrations" => "Integrationen", + "integrations_configuration" => "Drittanbieter Integrationen", + "invoice" => "Rechnungs", + "invoice_configuration" => "Druckereinstellungen", + "invoice_default_comments" => "Rechnungskommentar", + "invoice_email_message" => "Rechnungsvorlage (Email)", + "invoice_enable" => "Rechnungsstellung einschalten", + "invoice_printer" => "Rechnungsdrucker", + "invoice_type" => "Rechnungsart", + "is_readable" => "", + "is_writable" => "is writable, but the permissions are higher than 750.", + "item_markup" => "", + "jsprintsetup_required" => "Warnung: Diese Funktion benötigt das Firefox jsPrintSetup addon. Trotzdem speichern?", + "language" => "Sprache", + "last_used_invoice_number" => "Zuletzt verwendete Rechnungsnummer", + "last_used_quote_number" => "Zuletzt verwendete Angebotsnummer", + "last_used_work_order_number" => "Zuletzt verwendete Arbeitsauftragsnummer", + "left" => "Links", + "license" => "Lizenz", + "license_configuration" => "Lizenzvereinbarung", + "line_sequence" => "Zeilenfolge", + "lines_per_page" => "Zeilen pro Seite", + "lines_per_page_number" => "Zeilen pro Seite muss eine Zahl sein.", + "lines_per_page_required" => "Zeilen pro Seite ist erforderlich.", + "locale" => "Länder", + "locale_configuration" => "Länderkonfiguration", + "locale_info" => "Info Länderkonfiguration", + "location" => "Lagerort", + "location_configuration" => "Lagerort", + "location_info" => "Lagerort-Information", + "login_form" => "", + "logout" => "Wollen Sie vor dem Beenden eine Sicherung erstellen? Klicke [OK] für Sicherung.", + "mailchimp" => "Mailchimp", + "mailchimp_api_key" => "Mailchimp API Schlüssel", + "mailchimp_configuration" => "Mailchimp Konfiguration", + "mailchimp_key_successfully" => "API Key ist gültig.", + "mailchimp_key_unsuccessfully" => "API Key ist ungültig.", + "mailchimp_lists" => "Mailchimp Liste(n)", + "mailchimp_tooltip" => "Icon anklicken um API Key zu erhalten.", + "message" => "Nachricht", + "message_configuration" => "Nachrichtenkonfiguration", + "msg_msg" => "Gespeicherte Nachricht", + "msg_msg_placeholder" => "Wenn Sie eine SMS Vorlage benutzen wollen, geben Sie diese hier ein, ansonsten lassen Sie dieses Feld frei.", + "msg_pwd" => "SMS-API Passwort", + "msg_pwd_required" => "SMS-API Passwort ist ein Pflichtfeld", + "msg_src" => "SMS-API Sender ID", + "msg_src_required" => "SMS-API Sender ID ist ein Pflichtfeld", + "msg_uid" => "SMS-API Benutzername", + "msg_uid_required" => "SMS-API Benutzername ist ein Pflichtfeld", + "multi_pack_enabled" => "Mehrere Pakete pro Artikel", + "no_risk" => "No security/vulnerability risks.", + "none" => "none", + "notify_alignment" => "Benachrichtigungs Popup Position", + "number_format" => "Zahlenformat", + "number_locale" => "Länderkonfiguration", + "number_locale_invalid" => "Die eingegebene Lokale ist falsch. Bitte sehen Sie sich den Link im Tooltip an um einen korrekten Wert zu finden.", + "number_locale_required" => "Locale-Nummer ist ein Pflichtfeld.", + "number_locale_tooltip" => "Finden Sie eine korrekte Lokale über diesen Link.", + "os_timezone" => "", + "ospos_info" => "OSPOS Installations Information", + "payment_options_order" => "Zahlungsarten Reihenfolge", + "perm_risk" => "Permissions higher than 750 leaves this software at risk.", + "phone" => "Telefon", + "phone_required" => "Telefon ist erforderlich.", + "print_bottom_margin" => "Unterer Rand", + "print_bottom_margin_number" => "Unterer Rand muss eine Zahl sein.", + "print_bottom_margin_required" => "Unterer Rand ist erforderlich.", + "print_delay_autoreturn" => "Automatisch zu 'Verkauf' zurückkehren nach", + "print_delay_autoreturn_number" => "Automatisch zu 'Verkauf' zurückkehren nach ist erforderlich.", + "print_delay_autoreturn_required" => "Automatisch zu 'Verkauf' zurückkehren nach muss eine Zahl sein.", + "print_footer" => "Drucke Browser Fusszeile", + "print_header" => "Drucke Browser Kopfzeile", + "print_left_margin" => "Rand links", + "print_left_margin_number" => "Rand links muss eine Zahl sein.", + "print_left_margin_required" => "Rand links ist erforderlich.", + "print_receipt_check_behaviour" => "Quittung drucken", + "print_receipt_check_behaviour_always" => "Immer ausgewählt", + "print_receipt_check_behaviour_last" => "Letzte Auswahl speichern", + "print_receipt_check_behaviour_never" => "Nie ausgewählt", + "print_right_margin" => "Rand rechts", + "print_right_margin_number" => "Rand rechts muss eine Zahl sein.", + "print_right_margin_required" => "Rand rechts ist erforderlich.", + "print_silently" => "Zeige Druckdialog", + "print_top_margin" => "Rand oben", + "print_top_margin_number" => "Rand oben muss eine Zahl sein.", + "print_top_margin_required" => "Rand oben ist erforderlich.", + "quantity_decimals" => "Mengendezimalstellen", + "quick_cash_enable" => "", + "quote_default_comments" => "Angebot Standard-Kommentare", + "receipt" => "Eingang", + "receipt_category" => "", + "receipt_configuration" => "Druckereinstellungen", + "receipt_default" => "Default", + "receipt_font_size" => "Schriftgröße", + "receipt_font_size_number" => "Schriftgröße muss eine Zahl sein.", + "receipt_font_size_required" => "Schriftgröße ist erforderlich.", + "receipt_info" => "Quittungsinformation", + "receipt_printer" => "Quittungsdrucker", + "receipt_short" => "Kurz", + "receipt_show_company_name" => "Firmenname anzeigen", + "receipt_show_description" => "Beschreibung anzeigen", + "receipt_show_serialnumber" => "Seriennummer anzeigen", + "receipt_show_tax_ind" => "", + "receipt_show_taxes" => "Zeige MWSt", + "receipt_show_total_discount" => "Zeige Gesamtrabatt", + "receipt_template" => "Quittungs Template", + "receiving_calculate_average_price" => "Berechne Durchschnittseinkaufspreis", + "recv_invoice_format" => "Format Eingangsrechnung", + "register_mode_default" => "Standard Kassenmodus", + "report_an_issue" => "", + "return_policy_required" => "Rücknahmebedingungen sind erforderlich.", + "reward" => "Prämie", + "reward_configuration" => "Prämien Konfiguration", + "right" => "Rechts", + "sales_invoice_format" => "Format Verkaufsrechnung", + "sales_quote_format" => "Angebotsformat", + "saved_successfully" => "Einstellungen erfolgreich gesichert.", + "saved_unsuccessfully" => "Einstellungen konnten nicht gesichert werden.", + "security_issue" => "Security Vulnerability Warning", + "server_notice" => "Bitte nutzen Sie die unten genannten Informationen für Problemberichterstattung.", + "service_charge" => "", + "show_due_enable" => "", + "show_office_group" => "Verwaltungssymbol anzeigen", + "statistics" => "Statistiken Senden", + "statistics_tooltip" => "Statistiken Senden für programierung und verbesserungen.", + "stock_location" => "Lagerort", + "stock_location_duplicate" => "Bitte verwenden Sie einen eindeutigen Lagerort.", + "stock_location_invalid_chars" => "Der Lagerort kann keine Unterstriche enthalten.", + "stock_location_required" => "Lagerort Nummer ist erforderlich.", + "suggestions_fifth_column" => "", + "suggestions_first_column" => "Spalte 1", + "suggestions_fourth_column" => "", + "suggestions_layout" => "Vorschläge Layout", + "suggestions_second_column" => "Spalte 2", + "suggestions_third_column" => "Spalte 3", + "system_conf" => "Setup & Conf", + "system_info" => "System Info", + "table" => "Tabelle", + "table_configuration" => "Tabelle konfigurieren", + "takings_printer" => "Einnahmendrucker", + "tax" => "Steuer", + "tax_category" => "Steuerkategorie", + "tax_category_duplicate" => "Die eingegebene Steuerkategorie existiert bereits.", + "tax_category_invalid_chars" => "Die eingegebene Steuerkategorie ist ungültig.", + "tax_category_required" => "Die Steuerkategorie ist erforderlich.", + "tax_category_used" => "Die Steuerkategorie kann nicht gelöscht werden, da sie in Benutzung ist.", + "tax_configuration" => "Steuer-Konfiguration", + "tax_decimals" => "Steuer Dezimalstellen", + "tax_id" => "Steuer ID", + "tax_included" => "MWSt inbegriffen", + "theme" => "Design", + "theme_preview" => "", + "thousands_separator" => "Tausendertrennzeichen", + "timezone" => "Zeitzone", + "timezone_error" => "", + "top" => "Oben", + "use_destination_based_tax" => "Zielabhängige Steuer verwenden", + "user_timezone" => "", + "website" => "Website", + "wholesale_markup" => "", + "work_order_enable" => "Unterstützung von Arbeitsaufträgen", + "work_order_format" => "Arbeitsauftragsformat", ]; diff --git a/app/Language/de-DE/Customers.php b/app/Language/de-DE/Customers.php index ae9857bf9..3eede2c87 100644 --- a/app/Language/de-DE/Customers.php +++ b/app/Language/de-DE/Customers.php @@ -1,56 +1,56 @@ "Kontonummer", - "account_number_duplicate" => "Diese Kontonummer existiert bereits.", - "available_points" => "Verfügbare Punkte", - "available_points_value" => "", - "average" => "Durchschnittlich ausgegeben", - "avg_discount" => "Durchschnittlicher Rabatt", - "basic_information" => "Grundlegende Informationen", - "cannot_be_deleted" => "Kunde kann nicht gelöscht werden, ein oder mehrere Kunden weisen Verkäufe auf.", - "company_name" => "Firmenname", - "confirm_delete" => "Wollen Sie die gewählten Kunden wirklich löschen?", - "confirm_restore" => "Möchten Sie die ausgewählten Kunden wirklich wiederherstellen?", - "consent" => "Einwilligung zur Registrierung", - "consent_required" => "Die Einwilligung zur Registrierung ist ein Pflichtfeld.", - "csv_import_failed" => "CSV Import fehlerhaft", - "csv_import_nodata_wrongformat" => "Die hochgeladene Datei ist leer oder hat ein falsches Format.", - "csv_import_partially_failed" => "Kundenimport mit Fehlern abgeschlossen:", - "csv_import_success" => "Kundenimport erfolgreich.", - "customer" => "Kunde", - "date" => "Datum", - "discount" => "Rabatt", - "discount_fixed" => "Fester Rabatt", - "discount_percent" => "Prozentualer Rabatt", - "discount_type" => "Rabattart", - "email_duplicate" => "E-Mail Adresse ist bereits in der Datenbank vorhanden.", - "employee" => "Mitarbeiter", - "error_adding_updating" => "Fehler beim Hinzufügen/Ändern.", - "import_items_csv" => "Importiere Kunden via CSV", - "mailchimp_activity_click" => "E-Mail klick", - "mailchimp_activity_lastopen" => "Letzte geöffnet E-Mail", - "mailchimp_activity_open" => "E-Mail geöffnet", - "mailchimp_activity_total" => "E-Mail gesendet", - "mailchimp_activity_unopen" => "E-Mail ungeöffnet", - "mailchimp_email_client" => "E-Mail Client", - "mailchimp_info" => "Mailchimp", - "mailchimp_member_rating" => "Bewertung", - "mailchimp_status" => "Status", - "mailchimp_vip" => "VIP", - "max" => "Maximal Ausgegeben", - "min" => "Minimal Ausgegeben", - "new" => "Neuer Kunde", - "none_selected" => "Sie haben keine Kunden zum Löschen gewählt.", - "one_or_multiple" => "Kunde(n)", - "quantity" => "Menge", - "stats_info" => "Statistiken", - "successful_adding" => "Kunde erfolgreich hinzugefügt", - "successful_deleted" => "Löschung erfolgreich", - "successful_updating" => "Änderung erfolgreich", - "tax_code" => "Steuer-Code", - "tax_id" => "Steuer ID", - "taxable" => "Steuerpflichtig", - "total" => "Total", - "update" => "Kunde ändern", - "rewards_package" => "Prämienpaket", + "account_number" => "Kontonummer", + "account_number_duplicate" => "Diese Kontonummer existiert bereits.", + "available_points" => "Verfügbare Punkte", + "available_points_value" => "", + "average" => "Durchschnittlich ausgegeben", + "avg_discount" => "Durchschnittlicher Rabatt", + "basic_information" => "Grundlegende Informationen", + "cannot_be_deleted" => "Kunde kann nicht gelöscht werden, ein oder mehrere Kunden weisen Verkäufe auf.", + "company_name" => "Firmenname", + "confirm_delete" => "Wollen Sie die gewählten Kunden wirklich löschen?", + "confirm_restore" => "Möchten Sie die ausgewählten Kunden wirklich wiederherstellen?", + "consent" => "Einwilligung zur Registrierung", + "consent_required" => "Die Einwilligung zur Registrierung ist ein Pflichtfeld.", + "csv_import_failed" => "CSV Import fehlerhaft", + "csv_import_nodata_wrongformat" => "Die hochgeladene Datei ist leer oder hat ein falsches Format.", + "csv_import_partially_failed" => "Kundenimport mit Fehlern abgeschlossen:", + "csv_import_success" => "Kundenimport erfolgreich.", + "customer" => "Kunde", + "date" => "Datum", + "discount" => "Rabatt", + "discount_fixed" => "Fester Rabatt", + "discount_percent" => "Prozentualer Rabatt", + "discount_type" => "Rabattart", + "email_duplicate" => "E-Mail Adresse ist bereits in der Datenbank vorhanden.", + "employee" => "Mitarbeiter", + "error_adding_updating" => "Fehler beim Hinzufügen/Ändern.", + "import_items_csv" => "Importiere Kunden via CSV", + "mailchimp_activity_click" => "E-Mail klick", + "mailchimp_activity_lastopen" => "Letzte geöffnet E-Mail", + "mailchimp_activity_open" => "E-Mail geöffnet", + "mailchimp_activity_total" => "E-Mail gesendet", + "mailchimp_activity_unopen" => "E-Mail ungeöffnet", + "mailchimp_email_client" => "E-Mail Client", + "mailchimp_info" => "Mailchimp", + "mailchimp_member_rating" => "Bewertung", + "mailchimp_status" => "Status", + "mailchimp_vip" => "VIP", + "max" => "Maximal Ausgegeben", + "min" => "Minimal Ausgegeben", + "new" => "Neuer Kunde", + "none_selected" => "Sie haben keine Kunden zum Löschen gewählt.", + "one_or_multiple" => "Kunde(n)", + "quantity" => "Menge", + "stats_info" => "Statistiken", + "successful_adding" => "Kunde erfolgreich hinzugefügt", + "successful_deleted" => "Löschung erfolgreich", + "successful_updating" => "Änderung erfolgreich", + "tax_code" => "Steuer-Code", + "tax_id" => "Steuer ID", + "taxable" => "Steuerpflichtig", + "total" => "Total", + "update" => "Kunde ändern", + "rewards_package" => "Prämienpaket", ]; diff --git a/app/Language/de-DE/Datepicker.php b/app/Language/de-DE/Datepicker.php index 3c2ac4f8e..5246dddbb 100644 --- a/app/Language/de-DE/Datepicker.php +++ b/app/Language/de-DE/Datepicker.php @@ -1,23 +1,23 @@ "Von Beginn weg", - "apply" => "Ausführen", - "cancel" => "Abbrechen", - "custom" => "Benutzerdefiniert", - "from" => "Von", - "last_30" => "Letzte 30 Tage", - "last_7" => "Letzte 7 Tage", - "last_financial_year" => "Letztes Geschäftsjahr", - "last_month" => "Letzter Monat", - "last_year" => "Letztes Jahr", - "same_month_last_year" => "Dieser Monat letzten Jahres", - "same_month_to_same_day_last_year" => "Dieser Monat bis Heute letzten Jahres", - "this_financial_year" => "Aktuelles Geschäftsjahr", - "this_month" => "Dieser Monat", - "this_year" => "Dieses Jahr", - "to" => "Bis", - "today" => "Heute", - "today_last_year" => "Heute letzten Jahres", - "weekstart" => "1", - "yesterday" => "Gestern", + "all_time" => "Von Beginn weg", + "apply" => "Ausführen", + "cancel" => "Abbrechen", + "custom" => "Benutzerdefiniert", + "from" => "Von", + "last_30" => "Letzte 30 Tage", + "last_7" => "Letzte 7 Tage", + "last_financial_year" => "Letztes Geschäftsjahr", + "last_month" => "Letzter Monat", + "last_year" => "Letztes Jahr", + "same_month_last_year" => "Dieser Monat letzten Jahres", + "same_month_to_same_day_last_year" => "Dieser Monat bis Heute letzten Jahres", + "this_financial_year" => "Aktuelles Geschäftsjahr", + "this_month" => "Dieser Monat", + "this_year" => "Dieses Jahr", + "to" => "Bis", + "today" => "Heute", + "today_last_year" => "Heute letzten Jahres", + "weekstart" => "1", + "yesterday" => "Gestern", ]; diff --git a/app/Language/de-DE/Employees.php b/app/Language/de-DE/Employees.php index 3c99a2722..43394cce7 100644 --- a/app/Language/de-DE/Employees.php +++ b/app/Language/de-DE/Employees.php @@ -1,44 +1,44 @@ "", - "basic_information" => "Mitarbeiter-Information", - "cannot_be_deleted" => "Konnte gewählten Mitarbeiter nicht löschen, einer oder mehrere weisen Verkäufe aus.", - "change_employee" => "", - "change_password" => "Passwort Ändern", - "clerk" => "", - "commission" => "", - "confirm_delete" => "Wollen Sie diesen Mitarbeiter wirklich löschen?", - "confirm_restore" => "Möchten Sie die ausgewählten Mitarbeiter wiederherstellen?", - "current_password" => "Aktuelles Passwort", - "current_password_invalid" => "Aktuelles Passwort ist ungültig.", - "employee" => "Mitarbeiter", - "error_adding_updating" => "Fehler beim Hinzufügen/Ändern.", - "error_deleting_demo_admin" => "Sie können den Demo-Administrator nicht löschen.", - "error_updating_demo_admin" => "Sie können den Demo-Administrator nicht verändern.", - "language" => "Sprache", - "login_info" => "Mitarbeiter Login", - "manager" => "", - "new" => "Neuer Mitarbeiter", - "none_selected" => "Sie haben keine Mitarbeiter zum Löschen gewählt.", - "one_or_multiple" => "Mitarbeiter", - "password" => "Passwort", - "password_minlength" => "Das Passwort muss mindestens 8 Zeichen lang sein.", - "password_must_match" => "Passwörter stimmen nicht überein.", - "password_not_must_match" => "Altes und neues Passwort dürfen nicht gleich sein.", - "password_required" => "Passwort ist erforderlich.", - "permission_desc" => "Klicken Sie unten, um die jeweiligen Zugangsrechte zu aktivieren.", - "permission_info" => "Mitarbeiter Zugangsrechte", - "repeat_password" => "Wiederhole Passwort", - "subpermission_required" => "Fügen Sie mindestens ein Zugangsrecht pro Modul hinzu.", - "successful_adding" => "Hinzufügen erfolgreich.", - "successful_change_password" => "Passwort erfolgreich geändert.", - "successful_deleted" => "Löschung erfolgreich", - "successful_updating" => "Änderung erfolgreich", - "system_language" => "System Sprache", - "unsuccessful_change_password" => "Passwort ändern fehlgeschlagen.", - "update" => "Mitarbeiter ändern", - "username" => "Benutzername", - "username_duplicate" => "", - "username_minlength" => "Benutzername muss mindestens 5 Zeichen lang sein.", - "username_required" => "Benutzername ist erforderlich.", + "administrator" => "", + "basic_information" => "Mitarbeiter-Information", + "cannot_be_deleted" => "Konnte gewählten Mitarbeiter nicht löschen, einer oder mehrere weisen Verkäufe aus.", + "change_employee" => "", + "change_password" => "Passwort Ändern", + "clerk" => "", + "commission" => "", + "confirm_delete" => "Wollen Sie diesen Mitarbeiter wirklich löschen?", + "confirm_restore" => "Möchten Sie die ausgewählten Mitarbeiter wiederherstellen?", + "current_password" => "Aktuelles Passwort", + "current_password_invalid" => "Aktuelles Passwort ist ungültig.", + "employee" => "Mitarbeiter", + "error_adding_updating" => "Fehler beim Hinzufügen/Ändern.", + "error_deleting_demo_admin" => "Sie können den Demo-Administrator nicht löschen.", + "error_updating_demo_admin" => "Sie können den Demo-Administrator nicht verändern.", + "language" => "Sprache", + "login_info" => "Mitarbeiter Login", + "manager" => "", + "new" => "Neuer Mitarbeiter", + "none_selected" => "Sie haben keine Mitarbeiter zum Löschen gewählt.", + "one_or_multiple" => "Mitarbeiter", + "password" => "Passwort", + "password_minlength" => "Das Passwort muss mindestens 8 Zeichen lang sein.", + "password_must_match" => "Passwörter stimmen nicht überein.", + "password_not_must_match" => "Altes und neues Passwort dürfen nicht gleich sein.", + "password_required" => "Passwort ist erforderlich.", + "permission_desc" => "Klicken Sie unten, um die jeweiligen Zugangsrechte zu aktivieren.", + "permission_info" => "Mitarbeiter Zugangsrechte", + "repeat_password" => "Wiederhole Passwort", + "subpermission_required" => "Fügen Sie mindestens ein Zugangsrecht pro Modul hinzu.", + "successful_adding" => "Hinzufügen erfolgreich.", + "successful_change_password" => "Passwort erfolgreich geändert.", + "successful_deleted" => "Löschung erfolgreich", + "successful_updating" => "Änderung erfolgreich", + "system_language" => "System Sprache", + "unsuccessful_change_password" => "Passwort ändern fehlgeschlagen.", + "update" => "Mitarbeiter ändern", + "username" => "Benutzername", + "username_duplicate" => "", + "username_minlength" => "Benutzername muss mindestens 5 Zeichen lang sein.", + "username_required" => "Benutzername ist erforderlich.", ]; diff --git a/app/Language/de-DE/Enum.php b/app/Language/de-DE/Enum.php index 02fb5647d..209315496 100644 --- a/app/Language/de-DE/Enum.php +++ b/app/Language/de-DE/Enum.php @@ -1,10 +1,10 @@ "Halbe abrunden", - "half_even" => "Halbe symmetrisch gerade runden", - "half_five" => "", - "half_odd" => "Halbe symmetrisch ungerade runden", - "half_up" => "Halbe aufrunden", - "round_down" => "Abrunden", - "round_up" => "Aufrunden", + "half_down" => "Halbe abrunden", + "half_even" => "Halbe symmetrisch gerade runden", + "half_five" => "", + "half_odd" => "Halbe symmetrisch ungerade runden", + "half_up" => "Halbe aufrunden", + "round_down" => "Abrunden", + "round_up" => "Aufrunden", ]; diff --git a/app/Language/de-DE/Error.php b/app/Language/de-DE/Error.php index ee695f9b1..80961c9b3 100644 --- a/app/Language/de-DE/Error.php +++ b/app/Language/de-DE/Error.php @@ -1,5 +1,5 @@ "Sie haben nicht die Zugangsrechte für das gewählte Modul", - "unknown" => "Unbekannter Fehler", + "no_permission_module" => "Sie haben nicht die Zugangsrechte für das gewählte Modul", + "unknown" => "Unbekannter Fehler", ]; diff --git a/app/Language/de-DE/Expenses.php b/app/Language/de-DE/Expenses.php index 898aec5f1..9406f1995 100644 --- a/app/Language/de-DE/Expenses.php +++ b/app/Language/de-DE/Expenses.php @@ -1,50 +1,50 @@ "Kosten Hinzufügen", - "amount" => "Betrag", - "amount_number" => "Betrag muss eine Zahl sein", - "amount_required" => "Kosten Betrag erforderlich", - "by_category" => "Kategorie", - "cannot_be_deleted" => "Kosten können nicht gelöscht werden", - "cash" => "Bar", - "cash_filter" => "Bar", - "categories_name" => "Kategorie", - "category_required" => "Kategorie ist erforderlich", - "check" => "Scheck", - "check_filter" => "Scheck", - "confirm_delete" => "Möchten Sie die ausgewählten Ausgaben löschen?", - "confirm_restore" => "Möchten Sie die ausgewählten Ausgaben wiederherstellen?", - "credit" => "Kreditkarte", - "credit_filter" => "Kreditkarte", - "date" => "Datum", - "date_number" => "Datum muss eine Zahl sein", - "date_required" => "Datum ist erforderlich", - "debit" => "Debitkarte", - "debit_filter" => "Debitkarte", - "description" => "Anmerkung", - "due" => "ausstehend", - "due_filter" => "ausstehend", - "employee" => "Angelegt Von", - "error_adding_updating" => "Fehler beim hinzufügen/aktualisieren", - "expense_id" => "Id", - "expenses_employee" => "Mitarbeiter", - "info" => "Ausgaben Info", - "ip_address" => "", - "is_deleted" => "Gelöscht", - "name_required" => "Ausgaben Name erforderlich", - "new" => "Neue Ausgabe", - "new_supplier" => "", - "no_expenses_to_display" => "Es gibt keine Ausgaben zum anzeigen", - "none_selected" => "Sie haben keine Ausgaben ausgewählt", - "one_or_multiple" => "Ausgaben", - "payment" => "Zahlart", - "start_typing_supplier_name" => "Zulieferer eingeben...", - "successful_adding" => "Ausgabe erfolgreich hinzugefügt", - "successful_deleted" => "Ausgabe erfolgreich gelöscht", - "successful_updating" => "Ausgabe erfolgreich aktualisiert", - "supplier_name" => "Zulieferer", - "supplier_tax_code" => "Steuer Art", - "tax_amount" => "Steuer", - "tax_amount_number" => "", - "update" => "Ausgabe Aktualisieren", + "add_item" => "Kosten Hinzufügen", + "amount" => "Betrag", + "amount_number" => "Betrag muss eine Zahl sein", + "amount_required" => "Kosten Betrag erforderlich", + "by_category" => "Kategorie", + "cannot_be_deleted" => "Kosten können nicht gelöscht werden", + "cash" => "Bar", + "cash_filter" => "Bar", + "categories_name" => "Kategorie", + "category_required" => "Kategorie ist erforderlich", + "check" => "Scheck", + "check_filter" => "Scheck", + "confirm_delete" => "Möchten Sie die ausgewählten Ausgaben löschen?", + "confirm_restore" => "Möchten Sie die ausgewählten Ausgaben wiederherstellen?", + "credit" => "Kreditkarte", + "credit_filter" => "Kreditkarte", + "date" => "Datum", + "date_number" => "Datum muss eine Zahl sein", + "date_required" => "Datum ist erforderlich", + "debit" => "Debitkarte", + "debit_filter" => "Debitkarte", + "description" => "Anmerkung", + "due" => "ausstehend", + "due_filter" => "ausstehend", + "employee" => "Angelegt Von", + "error_adding_updating" => "Fehler beim hinzufügen/aktualisieren", + "expense_id" => "Id", + "expenses_employee" => "Mitarbeiter", + "info" => "Ausgaben Info", + "ip_address" => "", + "is_deleted" => "Gelöscht", + "name_required" => "Ausgaben Name erforderlich", + "new" => "Neue Ausgabe", + "new_supplier" => "", + "no_expenses_to_display" => "Es gibt keine Ausgaben zum anzeigen", + "none_selected" => "Sie haben keine Ausgaben ausgewählt", + "one_or_multiple" => "Ausgaben", + "payment" => "Zahlart", + "start_typing_supplier_name" => "Zulieferer eingeben...", + "successful_adding" => "Ausgabe erfolgreich hinzugefügt", + "successful_deleted" => "Ausgabe erfolgreich gelöscht", + "successful_updating" => "Ausgabe erfolgreich aktualisiert", + "supplier_name" => "Zulieferer", + "supplier_tax_code" => "Steuer Art", + "tax_amount" => "Steuer", + "tax_amount_number" => "", + "update" => "Ausgabe Aktualisieren", ]; diff --git a/app/Language/de-DE/Expenses_categories.php b/app/Language/de-DE/Expenses_categories.php index e9d5a85dd..b82628f57 100644 --- a/app/Language/de-DE/Expenses_categories.php +++ b/app/Language/de-DE/Expenses_categories.php @@ -1,22 +1,22 @@ "Kategorie Name erforderlich", - "add_item" => "Kategorie hinzufügen", - "cannot_be_deleted" => "Kategorie konnte nicht gelöscht werden", - "category_id" => "ID", - "confirm_delete" => "Sind Sie sicher, dass Sie die ausgewählte Kategorie löschen möchten?", - "confirm_restore" => "Sind Sie sicher, dass Sie die ausgewählte Kategorie wiederherstellen möchten?", - "description" => "Beschreibung", - "error_adding_updating" => "Fehler beim Hinzufügen/Ändern der Kategorie", - "info" => "Kategorie-Info", - "name" => "Name", - "new" => "Neue Kategorie", - "no_expenses_categories_to_display" => "Keine Kategorie zum Anzeigen", - "none_selected" => "Du hast keine Kategorie ausgewählt", - "one_or_multiple" => "Ausgabenkategorie", - "quantity" => "Menge", - "successful_adding" => "Kategorie erfolgreich hinzugefügt", - "successful_deleted" => "Kategorie erfolgreich gelöscht", - "successful_updating" => "Kategorie erfolgreich geändert", - "update" => "Kategorie ändern", + "category_name_required" => "Kategorie Name erforderlich", + "add_item" => "Kategorie hinzufügen", + "cannot_be_deleted" => "Kategorie konnte nicht gelöscht werden", + "category_id" => "ID", + "confirm_delete" => "Sind Sie sicher, dass Sie die ausgewählte Kategorie löschen möchten?", + "confirm_restore" => "Sind Sie sicher, dass Sie die ausgewählte Kategorie wiederherstellen möchten?", + "description" => "Beschreibung", + "error_adding_updating" => "Fehler beim Hinzufügen/Ändern der Kategorie", + "info" => "Kategorie-Info", + "name" => "Name", + "new" => "Neue Kategorie", + "no_expenses_categories_to_display" => "Keine Kategorie zum Anzeigen", + "none_selected" => "Du hast keine Kategorie ausgewählt", + "one_or_multiple" => "Ausgabenkategorie", + "quantity" => "Menge", + "successful_adding" => "Kategorie erfolgreich hinzugefügt", + "successful_deleted" => "Kategorie erfolgreich gelöscht", + "successful_updating" => "Kategorie erfolgreich geändert", + "update" => "Kategorie ändern", ]; diff --git a/app/Language/de-DE/Giftcards.php b/app/Language/de-DE/Giftcards.php index d3c3650eb..0f10b3a17 100644 --- a/app/Language/de-DE/Giftcards.php +++ b/app/Language/de-DE/Giftcards.php @@ -1,71 +1,71 @@ "Bestandsänderung.", - "allow_alt_description" => "Erlaube Alternative Bezeichnung", - "bulk_edit" => "Sammeländerung", - "cannot_be_deleted" => "Konnte gewählte Gutscheine nicht löschen, einer oder mehrere weisen Verkäufe auf.", - "cannot_find_giftcard" => "Konnte keinen Gutschein finden.", - "cannot_use" => "Giftcard {0} cannot be used for this sale. Invalid Customer.", - "card_value" => "Wert", - "category" => "Kategorie", - "change_all_to_allow_alt_desc" => "Erlaube Alt. Bez. für ALLE.", - "change_all_to_not_allow_allow_desc" => "Erlaube Alt. Bez. für KEINEN.", - "change_all_to_serialized" => "Ändere alle zu serialisiert", - "change_all_to_unserialized" => "Ändere alle zu NICHT serialisiert", - "confirm_bulk_edit" => "Wollen Sie alle gewählten Gutscheine ändern?", - "confirm_delete" => "Wollen Sie alle gewählten Gutscheine löschen?", - "confirm_restore" => "Sind Sie sicher, dass Sie ausgewählte Gutscheine wiederherstellen möchten?", - "cost_price" => "Einkaufspreis", - "count" => "Bestandsänderung", - "csv_import_failed" => "CSV Import fehlerhaft.", - "current_quantity" => "Aktuelle Menge", - "description" => "Bezeichnung", - "details_count" => "Bestandsdetails", - "do_nothing" => "Tue nichts", - "edit_fields_you_want_to_update" => "Felder für ausgewählte Gutscheine bearbeiten.", - "edit_multiple_giftcards" => "Sammeländerung.", - "error_adding_updating" => "Fehler beim Hinzufügen/Ändern.", - "error_updating_multiple" => "Fehler beim Ändern.", - "generate_barcodes" => "Generiere Barcodes", - "giftcard" => "Gutschein", - "giftcard_number" => "Gutscheinnummer", - "info_provided_by" => "Informationen bereitgestellt von", - "inventory_comments" => "Kommentare", - "is_serialized" => "Gutschein hat Seriennummer", - "low_inventory_giftcards" => "Gutscheine mit Minderbestand", - "manually_editing_of_quantity" => "Manuelle Bestandesänderung", - "must_select_giftcard_for_barcode" => "Sie müssen einen Gutschein wählen, um Barcodes zu generieren.", - "new" => "Neuer Gutschein", - "no_description_giftcards" => "Gutscheine ohne Beschreibung", - "no_giftcards_to_display" => "Keine Gutscheine zum Anzeigen.", - "none" => "Nichts", - "none_selected" => "Sie haben keine Gutscheine zum Ändern gewählt.", - "number" => "Gutschein-Nr. muss eine Zahl sein.", - "number_information" => "Gutschein Nummer", - "number_required" => "Gutschein Nummer muss eine Zahl sein.", - "one_or_multiple" => "Gutschein(e)", - "person_id" => "Kunde", - "quantity" => "Menge", - "quantity_required" => "Menge ist erforderlich.", - "remaining_balance" => "Restwert von Gutschein {0} ist {1}!", - "reorder_level" => "Mindestbestand", - "retrive_giftcard_info" => "Gutschein Information", - "sales_tax_1" => "Umsatzsteuer 1", - "sales_tax_2" => "Umsatzsteuer 2", - "serialized_giftcards" => "Serialisierte Gutscheine", - "successful_adding" => "Hinzufügen erfolgreich", - "successful_bulk_edit" => "Sie haben die gewählten Gutscheine erfolgreich geändert", - "successful_deleted" => "Löschung erfolgreich", - "successful_updating" => "Änderung erfolgreich", - "supplier" => "Lieferant", - "tax_1" => "MWSt 1", - "tax_2" => "MWSt 2", - "tax_percent" => "Prozent", - "tax_percents" => "Prozente", - "unit_price" => "Preis", - "upc_database" => "UPC Datenbank", - "update" => "Gutschein ändern", - "use_inventory_menu" => "Verwende Lager Menu", - "value" => "Gutschein-Wert muss eine Zahl sein.", - "value_required" => "Gutschein-Wert erforderlich.", + "add_minus" => "Bestandsänderung.", + "allow_alt_description" => "Erlaube Alternative Bezeichnung", + "bulk_edit" => "Sammeländerung", + "cannot_be_deleted" => "Konnte gewählte Gutscheine nicht löschen, einer oder mehrere weisen Verkäufe auf.", + "cannot_find_giftcard" => "Konnte keinen Gutschein finden.", + "cannot_use" => "Giftcard {0} cannot be used for this sale. Invalid Customer.", + "card_value" => "Wert", + "category" => "Kategorie", + "change_all_to_allow_alt_desc" => "Erlaube Alt. Bez. für ALLE.", + "change_all_to_not_allow_allow_desc" => "Erlaube Alt. Bez. für KEINEN.", + "change_all_to_serialized" => "Ändere alle zu serialisiert", + "change_all_to_unserialized" => "Ändere alle zu NICHT serialisiert", + "confirm_bulk_edit" => "Wollen Sie alle gewählten Gutscheine ändern?", + "confirm_delete" => "Wollen Sie alle gewählten Gutscheine löschen?", + "confirm_restore" => "Sind Sie sicher, dass Sie ausgewählte Gutscheine wiederherstellen möchten?", + "cost_price" => "Einkaufspreis", + "count" => "Bestandsänderung", + "csv_import_failed" => "CSV Import fehlerhaft.", + "current_quantity" => "Aktuelle Menge", + "description" => "Bezeichnung", + "details_count" => "Bestandsdetails", + "do_nothing" => "Tue nichts", + "edit_fields_you_want_to_update" => "Felder für ausgewählte Gutscheine bearbeiten.", + "edit_multiple_giftcards" => "Sammeländerung.", + "error_adding_updating" => "Fehler beim Hinzufügen/Ändern.", + "error_updating_multiple" => "Fehler beim Ändern.", + "generate_barcodes" => "Generiere Barcodes", + "giftcard" => "Gutschein", + "giftcard_number" => "Gutscheinnummer", + "info_provided_by" => "Informationen bereitgestellt von", + "inventory_comments" => "Kommentare", + "is_serialized" => "Gutschein hat Seriennummer", + "low_inventory_giftcards" => "Gutscheine mit Minderbestand", + "manually_editing_of_quantity" => "Manuelle Bestandesänderung", + "must_select_giftcard_for_barcode" => "Sie müssen einen Gutschein wählen, um Barcodes zu generieren.", + "new" => "Neuer Gutschein", + "no_description_giftcards" => "Gutscheine ohne Beschreibung", + "no_giftcards_to_display" => "Keine Gutscheine zum Anzeigen.", + "none" => "Nichts", + "none_selected" => "Sie haben keine Gutscheine zum Ändern gewählt.", + "number" => "Gutschein-Nr. muss eine Zahl sein.", + "number_information" => "Gutschein Nummer", + "number_required" => "Gutschein Nummer muss eine Zahl sein.", + "one_or_multiple" => "Gutschein(e)", + "person_id" => "Kunde", + "quantity" => "Menge", + "quantity_required" => "Menge ist erforderlich.", + "remaining_balance" => "Restwert von Gutschein {0} ist {1}!", + "reorder_level" => "Mindestbestand", + "retrive_giftcard_info" => "Gutschein Information", + "sales_tax_1" => "Umsatzsteuer 1", + "sales_tax_2" => "Umsatzsteuer 2", + "serialized_giftcards" => "Serialisierte Gutscheine", + "successful_adding" => "Hinzufügen erfolgreich", + "successful_bulk_edit" => "Sie haben die gewählten Gutscheine erfolgreich geändert", + "successful_deleted" => "Löschung erfolgreich", + "successful_updating" => "Änderung erfolgreich", + "supplier" => "Lieferant", + "tax_1" => "MWSt 1", + "tax_2" => "MWSt 2", + "tax_percent" => "Prozent", + "tax_percents" => "Prozente", + "unit_price" => "Preis", + "upc_database" => "UPC Datenbank", + "update" => "Gutschein ändern", + "use_inventory_menu" => "Verwende Lager Menu", + "value" => "Gutschein-Wert muss eine Zahl sein.", + "value_required" => "Gutschein-Wert erforderlich.", ]; diff --git a/app/Language/de-DE/Item_kits.php b/app/Language/de-DE/Item_kits.php index 0f34969ce..e1bca1f11 100644 --- a/app/Language/de-DE/Item_kits.php +++ b/app/Language/de-DE/Item_kits.php @@ -1,41 +1,41 @@ "Neuer Artikel", - "all" => "Alles", - "cannot_be_deleted" => "Konnte Artikel-Set(s) nicht löschen.", - "confirm_delete" => "Wollen Sie die gewählten Artikel-Sets wirklich löschen?", - "confirm_restore" => "Sind Sie sicher, dass Sie ausgewählte Artikel-Sets wiederherstellen möchten?", - "description" => "Beschreibung Artikel-Set", - "discount" => "Rabatt", - "discount_fixed" => "Fester Rabatt", - "discount_percent" => "Prozent Rabatt", - "discount_type" => "Rabattart", - "error_adding_updating" => "Fehler beim Hinzufügen/Ändern.", - "find_kit_item" => "Artikel-Set", - "info" => "Artikel-Set Information", - "item" => "Artikel", - "item_kit_number" => "", - "item_kit_number_duplicate" => "", - "item_number" => "", - "item_number_duplicate" => "", - "items" => "Artikel", - "kit" => "Set-ID", - "kit_and_components" => "Set und Komponenten", - "kit_and_stock" => "Set und Bestand", - "kit_only" => "Nur Set", - "name" => "Set-Name", - "new" => "Neues Artikel-Set", - "no_item_kits_to_display" => "Keine Artikel-Sets zum Anzeigen.", - "none_selected" => "Sie haben keine Artikel-Sets ausgewählt.", - "one_or_multiple" => "Artikel-Set(s)", - "price_option" => "Preisoption", - "priced_only" => "Nur mit Preisangabe", - "print_option" => "Druckoptionen", - "quantity" => "Menge", - "sequence" => "Folge", - "successful_adding" => "Artikel-Set erfolgreich hinzugefügt", - "successful_deleted" => "Löschung erfolgreich", - "successful_updating" => "Änderung erfolgreich", - "unit_price" => "", - "update" => "Artikel-Set ändern", + "add_item" => "Neuer Artikel", + "all" => "Alles", + "cannot_be_deleted" => "Konnte Artikel-Set(s) nicht löschen.", + "confirm_delete" => "Wollen Sie die gewählten Artikel-Sets wirklich löschen?", + "confirm_restore" => "Sind Sie sicher, dass Sie ausgewählte Artikel-Sets wiederherstellen möchten?", + "description" => "Beschreibung Artikel-Set", + "discount" => "Rabatt", + "discount_fixed" => "Fester Rabatt", + "discount_percent" => "Prozent Rabatt", + "discount_type" => "Rabattart", + "error_adding_updating" => "Fehler beim Hinzufügen/Ändern.", + "find_kit_item" => "Artikel-Set", + "info" => "Artikel-Set Information", + "item" => "Artikel", + "item_kit_number" => "", + "item_kit_number_duplicate" => "", + "item_number" => "", + "item_number_duplicate" => "", + "items" => "Artikel", + "kit" => "Set-ID", + "kit_and_components" => "Set und Komponenten", + "kit_and_stock" => "Set und Bestand", + "kit_only" => "Nur Set", + "name" => "Set-Name", + "new" => "Neues Artikel-Set", + "no_item_kits_to_display" => "Keine Artikel-Sets zum Anzeigen.", + "none_selected" => "Sie haben keine Artikel-Sets ausgewählt.", + "one_or_multiple" => "Artikel-Set(s)", + "price_option" => "Preisoption", + "priced_only" => "Nur mit Preisangabe", + "print_option" => "Druckoptionen", + "quantity" => "Menge", + "sequence" => "Folge", + "successful_adding" => "Artikel-Set erfolgreich hinzugefügt", + "successful_deleted" => "Löschung erfolgreich", + "successful_updating" => "Änderung erfolgreich", + "unit_price" => "", + "update" => "Artikel-Set ändern", ]; diff --git a/app/Language/de-DE/Items.php b/app/Language/de-DE/Items.php index 385b4c04e..f98ab914c 100644 --- a/app/Language/de-DE/Items.php +++ b/app/Language/de-DE/Items.php @@ -1,120 +1,120 @@ "Bestandsänderung.", - "allow_alt_description" => "Alternative Beschreibung zulassen", - "amount_entry" => "Anzahl Eingang", - "bulk_edit" => "Sammeländerung", - "buy_price_required" => "Der Einkaufspreis ist ein Pflichtfeld.", - "cannot_be_deleted" => "Ausgewählte Artikel konnten nicht gelöscht werden, einer oder mehrere der ausgewählten Artikel haben Verkäufe.", - "cannot_find_item" => "Artikel nicht gefunden.", - "categories" => "", - "category" => "Kategorie", - "category_new" => "", - "category_required" => "Kategorie ist ein Pflichtfeld.", - "change_all_to_allow_alt_desc" => "Alternative Beschreibung für alle zulassen.", - "change_all_to_not_allow_allow_desc" => "Keine alternative Beschreibung für alle zulassen.", - "change_all_to_serialized" => "Ändere alle zu serialisiert", - "change_all_to_unserialized" => "Ändere alle zu nicht serialisiert", - "change_image" => "Bild ändern", - "confirm_bulk_edit" => "Wollen Sie alle gewählten Artikel ändern?", - "confirm_bulk_edit_wipe_taxes" => "Alle Artikel-Steuerinformationen werden ersetzt.", - "confirm_delete" => "Wollen Sie alle gewählten Artikel löschen?", - "confirm_restore" => "Möchten Sie die ausgewählten Artikel wirklich wiederherstellen?", - "cost_price" => "Großhandelspreis", - "cost_price_number" => "Großhandelspreis muss eine Nummer sein.", - "cost_price_required" => "Der Großhandelspreis ist ein Pflichtfeld.", - "count" => "Ändere Bestand", - "csv_import_failed" => "CSV Import fehlgeschlagen", - "csv_import_nodata_wrongformat" => "Die hochgeladene Datei enthält keine Daten oder ist falsch formatiert.", - "csv_import_partially_failed" => "{0} Artikel-Import Fehler in Zeile: {1}. Keine Reihen wurden importiert.", - "csv_import_success" => "Artikelimport erfolgreich.", - "current_quantity" => "Aktuelle Menge", - "default_pack_name" => "Jedes", - "description" => "Beschreibung", - "details_count" => "Lagerbestandsdetails", - "do_nothing" => "Tue nichts", - "edit" => "", - "edit_fields_you_want_to_update" => "Ändern Sie die Felder für die ausgewählten Artikel.", - "edit_multiple_items" => "Mehrere Artikel bearbeiten", - "empty_upc_items" => "Artikel ohne Barcode", - "error_adding_updating" => "Fehler beim Hinzufügen/Ändern", - "error_updating_multiple" => "Fehler beim Ändern", - "generate_barcodes" => "Generiere Barcodes", - "hsn_code" => "Harmonisierte System Nomenklatur", - "image" => "Avatar", - "import_items_csv" => "Importiere Artikel mit CSV Datei", - "info_provided_by" => "Informationen bereitgestellt von", - "inventory" => "Lagerbestand", - "inventory_CSV_import_quantity" => "Anzahl der Importe aus CSV", - "inventory_comments" => "Bemerkungen", - "inventory_data_tracking" => "Bestandsdatenverfolgung", - "inventory_date" => "Datum", - "inventory_employee" => "Mitarbeiter", - "inventory_in_out_quantity" => "Ein-/ Ausgabemenge", - "inventory_remarks" => "Bemerkungen", - "is_deleted" => "Gelöscht", - "is_printed" => "", - "is_serialized" => "Artikel hat Seriennummer", - "item" => "Artikel", - "item_id" => "", - "item_number" => "Barcode", - "item_number_duplicate" => "Die Artikelnummer existiert bereits in der Datenbank.", - "kit" => "Satz", - "location" => "Ort", - "low_inventory_items" => "Nicht vorrätige Artikel", - "low_sell_item" => "Wenig verkaufter Artikel", - "manually_editing_of_quantity" => "Manuelle Bestandesänderung", - "markup" => "", - "name" => "Artikelname", - "name_required" => "Der Artikelname ist ein Pflichtfeld.", - "new" => "Neuer Artikel", - "no_description_items" => "Artikel ohne Bezeichnung", - "no_items_to_display" => "Keine Artikel zum Anzeigen.", - "none" => "Nichts", - "none_selected" => "Sie haben keine Artikel zum Ändern gewählt", - "nonstock" => "Nicht lagernd", - "number_information" => "Artikelnummer", - "number_required" => "Barcode ist ein Pflichtfeld.", - "one_or_multiple" => "Artikel", - "pack_name" => "Paketname", - "qty_per_pack" => "Menge pro Packung", - "quantity" => "Menge", - "quantity_number" => "Menge muss eine Zahl sein.", - "quantity_required" => "Die Menge ist ein Pflichtfeld.", - "receiving_quantity" => "Eingangsmenge", - "remove_image" => "Bild löschen", - "reorder_level" => "Mindestbestand", - "reorder_level_number" => "Mindestbestand muss eine Zahl sein.", - "reorder_level_required" => "Der Mindestbestand ist ein Pflichtfeld.", - "retrive_item_info" => "Artikelinformation", - "sales_tax_1" => "Umsatzsteuer", - "sales_tax_2" => "Umsatzsteuer 2", - "search_attributes" => "Suche Attribute", - "select_image" => "Bild auswählen", - "serialized_items" => "Serialisierte Artikel", - "standard" => "Standard", - "stock" => "Bestand", - "stock_location" => "Lagerort", - "stock_type" => "Bestandstyp", - "successful_adding" => "Artikel erfolgreich hinzugefügt", - "successful_bulk_edit" => "Die gewählten Artikel wurden erforlgreich geändert", - "successful_deleted" => "Löschung erfolgreich", - "successful_updating" => "Änderung erfolgreich", - "supplier" => "Lieferant", - "tax_1" => "Steuer 1", - "tax_2" => "Steuer 2", - "tax_3" => "", - "tax_category" => "Steuerkategorie", - "tax_percent" => "MWSt %", - "tax_percent_number" => "Steuer Prozent muss ein Zahlenwert sein", - "tax_percent_required" => "Steuerprozentsatz ist ein Pflichtfeld.", - "tax_percents" => "Steuerprozent(e)", - "temp" => "Vorübergehend", - "type" => "Artikeltyp", - "unit_price" => "Verkaufspreis", - "unit_price_number" => "Der Stückpreis muss eine Zahl sein.", - "unit_price_required" => "Der Verkaufspreis ist ein Pflichtfeld.", - "upc_database" => "Barcode Datenbank", - "update" => "Ändere Artikel", - "use_inventory_menu" => "Verwende Bestandesmenu", + "add_minus" => "Bestandsänderung.", + "allow_alt_description" => "Alternative Beschreibung zulassen", + "amount_entry" => "Anzahl Eingang", + "bulk_edit" => "Sammeländerung", + "buy_price_required" => "Der Einkaufspreis ist ein Pflichtfeld.", + "cannot_be_deleted" => "Ausgewählte Artikel konnten nicht gelöscht werden, einer oder mehrere der ausgewählten Artikel haben Verkäufe.", + "cannot_find_item" => "Artikel nicht gefunden.", + "categories" => "", + "category" => "Kategorie", + "category_new" => "", + "category_required" => "Kategorie ist ein Pflichtfeld.", + "change_all_to_allow_alt_desc" => "Alternative Beschreibung für alle zulassen.", + "change_all_to_not_allow_allow_desc" => "Keine alternative Beschreibung für alle zulassen.", + "change_all_to_serialized" => "Ändere alle zu serialisiert", + "change_all_to_unserialized" => "Ändere alle zu nicht serialisiert", + "change_image" => "Bild ändern", + "confirm_bulk_edit" => "Wollen Sie alle gewählten Artikel ändern?", + "confirm_bulk_edit_wipe_taxes" => "Alle Artikel-Steuerinformationen werden ersetzt.", + "confirm_delete" => "Wollen Sie alle gewählten Artikel löschen?", + "confirm_restore" => "Möchten Sie die ausgewählten Artikel wirklich wiederherstellen?", + "cost_price" => "Großhandelspreis", + "cost_price_number" => "Großhandelspreis muss eine Nummer sein.", + "cost_price_required" => "Der Großhandelspreis ist ein Pflichtfeld.", + "count" => "Ändere Bestand", + "csv_import_failed" => "CSV Import fehlgeschlagen", + "csv_import_nodata_wrongformat" => "Die hochgeladene Datei enthält keine Daten oder ist falsch formatiert.", + "csv_import_partially_failed" => "{0} Artikel-Import Fehler in Zeile: {1}. Keine Reihen wurden importiert.", + "csv_import_success" => "Artikelimport erfolgreich.", + "current_quantity" => "Aktuelle Menge", + "default_pack_name" => "Jedes", + "description" => "Beschreibung", + "details_count" => "Lagerbestandsdetails", + "do_nothing" => "Tue nichts", + "edit" => "", + "edit_fields_you_want_to_update" => "Ändern Sie die Felder für die ausgewählten Artikel.", + "edit_multiple_items" => "Mehrere Artikel bearbeiten", + "empty_upc_items" => "Artikel ohne Barcode", + "error_adding_updating" => "Fehler beim Hinzufügen/Ändern", + "error_updating_multiple" => "Fehler beim Ändern", + "generate_barcodes" => "Generiere Barcodes", + "hsn_code" => "Harmonisierte System Nomenklatur", + "image" => "Avatar", + "import_items_csv" => "Importiere Artikel mit CSV Datei", + "info_provided_by" => "Informationen bereitgestellt von", + "inventory" => "Lagerbestand", + "inventory_CSV_import_quantity" => "Anzahl der Importe aus CSV", + "inventory_comments" => "Bemerkungen", + "inventory_data_tracking" => "Bestandsdatenverfolgung", + "inventory_date" => "Datum", + "inventory_employee" => "Mitarbeiter", + "inventory_in_out_quantity" => "Ein-/ Ausgabemenge", + "inventory_remarks" => "Bemerkungen", + "is_deleted" => "Gelöscht", + "is_printed" => "", + "is_serialized" => "Artikel hat Seriennummer", + "item" => "Artikel", + "item_id" => "", + "item_number" => "Barcode", + "item_number_duplicate" => "Die Artikelnummer existiert bereits in der Datenbank.", + "kit" => "Satz", + "location" => "Ort", + "low_inventory_items" => "Nicht vorrätige Artikel", + "low_sell_item" => "Wenig verkaufter Artikel", + "manually_editing_of_quantity" => "Manuelle Bestandesänderung", + "markup" => "", + "name" => "Artikelname", + "name_required" => "Der Artikelname ist ein Pflichtfeld.", + "new" => "Neuer Artikel", + "no_description_items" => "Artikel ohne Bezeichnung", + "no_items_to_display" => "Keine Artikel zum Anzeigen.", + "none" => "Nichts", + "none_selected" => "Sie haben keine Artikel zum Ändern gewählt", + "nonstock" => "Nicht lagernd", + "number_information" => "Artikelnummer", + "number_required" => "Barcode ist ein Pflichtfeld.", + "one_or_multiple" => "Artikel", + "pack_name" => "Paketname", + "qty_per_pack" => "Menge pro Packung", + "quantity" => "Menge", + "quantity_number" => "Menge muss eine Zahl sein.", + "quantity_required" => "Die Menge ist ein Pflichtfeld.", + "receiving_quantity" => "Eingangsmenge", + "remove_image" => "Bild löschen", + "reorder_level" => "Mindestbestand", + "reorder_level_number" => "Mindestbestand muss eine Zahl sein.", + "reorder_level_required" => "Der Mindestbestand ist ein Pflichtfeld.", + "retrive_item_info" => "Artikelinformation", + "sales_tax_1" => "Umsatzsteuer", + "sales_tax_2" => "Umsatzsteuer 2", + "search_attributes" => "Suche Attribute", + "select_image" => "Bild auswählen", + "serialized_items" => "Serialisierte Artikel", + "standard" => "Standard", + "stock" => "Bestand", + "stock_location" => "Lagerort", + "stock_type" => "Bestandstyp", + "successful_adding" => "Artikel erfolgreich hinzugefügt", + "successful_bulk_edit" => "Die gewählten Artikel wurden erforlgreich geändert", + "successful_deleted" => "Löschung erfolgreich", + "successful_updating" => "Änderung erfolgreich", + "supplier" => "Lieferant", + "tax_1" => "Steuer 1", + "tax_2" => "Steuer 2", + "tax_3" => "", + "tax_category" => "Steuerkategorie", + "tax_percent" => "MWSt %", + "tax_percent_number" => "Steuer Prozent muss ein Zahlenwert sein", + "tax_percent_required" => "Steuerprozentsatz ist ein Pflichtfeld.", + "tax_percents" => "Steuerprozent(e)", + "temp" => "Vorübergehend", + "type" => "Artikeltyp", + "unit_price" => "Verkaufspreis", + "unit_price_number" => "Der Stückpreis muss eine Zahl sein.", + "unit_price_required" => "Der Verkaufspreis ist ein Pflichtfeld.", + "upc_database" => "Barcode Datenbank", + "update" => "Ändere Artikel", + "use_inventory_menu" => "Verwende Bestandesmenu", ]; diff --git a/app/Language/de-DE/Login.php b/app/Language/de-DE/Login.php index 64a63ff9d..0e8cbb865 100644 --- a/app/Language/de-DE/Login.php +++ b/app/Language/de-DE/Login.php @@ -1,15 +1,15 @@ "Ich bin kein Roboter.", - "go" => "Los", - "invalid_gcaptcha" => "Ich bin kein Roboter ist ungültig.", - "invalid_installation" => "Die Installation ist nicht korrekt, überprüfen Sie Ihre php.ini-Datei.", - "invalid_username_and_password" => "Ungültiger Benutzername oder Passwort.", - "login" => "Login", - "logout" => "", - "migration_needed" => "", - "password" => "Passwort", - "required_username" => "", - "username" => "Benutzername", - "welcome" => "", + "gcaptcha" => "Ich bin kein Roboter.", + "go" => "Los", + "invalid_gcaptcha" => "Ich bin kein Roboter ist ungültig.", + "invalid_installation" => "Die Installation ist nicht korrekt, überprüfen Sie Ihre php.ini-Datei.", + "invalid_username_and_password" => "Ungültiger Benutzername oder Passwort.", + "login" => "Login", + "logout" => "", + "migration_needed" => "", + "password" => "Passwort", + "required_username" => "", + "username" => "Benutzername", + "welcome" => "", ]; diff --git a/app/Language/de-DE/Messages.php b/app/Language/de-DE/Messages.php index e42a82201..2d0412b29 100644 --- a/app/Language/de-DE/Messages.php +++ b/app/Language/de-DE/Messages.php @@ -1,15 +1,15 @@ "Vorname", - "last_name" => "Nachname", - "message" => "Nachricht", - "message_placeholder" => "Ihre Nachricht hier …", - "message_required" => "Nachricht ist ein Pflichtfeld", - "multiple_phones" => "(Im Falle von mehreren Handynummern diese bitte mit Kommas getrennt hier eingeben)", - "phone" => "Handynummer", - "phone_number_required" => "Handynummer ist ein Pflichtfeld", - "phone_placeholder" => "Handy-Nummer(n) hier.....", - "sms_send" => "SMS Senden", - "successfully_sent" => "Nachricht erfolgreich gesendet an: ", - "unsuccessfully_sent" => "Nachricht NICHT erfolgreich gesendet an: ", + "first_name" => "Vorname", + "last_name" => "Nachname", + "message" => "Nachricht", + "message_placeholder" => "Ihre Nachricht hier …", + "message_required" => "Nachricht ist ein Pflichtfeld", + "multiple_phones" => "(Im Falle von mehreren Handynummern diese bitte mit Kommas getrennt hier eingeben)", + "phone" => "Handynummer", + "phone_number_required" => "Handynummer ist ein Pflichtfeld", + "phone_placeholder" => "Handy-Nummer(n) hier.....", + "sms_send" => "SMS Senden", + "successfully_sent" => "Nachricht erfolgreich gesendet an: ", + "unsuccessfully_sent" => "Nachricht NICHT erfolgreich gesendet an: ", ]; diff --git a/app/Language/de-DE/Module.php b/app/Language/de-DE/Module.php index 7eaaa189c..42519cf84 100644 --- a/app/Language/de-DE/Module.php +++ b/app/Language/de-DE/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "Attribute", - "attributes_desc" => "Hinzufügen, Ändern, Löschen und Suchen von Attributen.", - "both" => "Beide", - "cashups" => "Auszahlungen", - "cashups_desc" => "Hinzufügen, Ändern, Löschen und Suchen von Auszahlungen.", - "config" => "Einstellungen", - "config_desc" => "Ändere OSPOS Konfiguration.", - "customers" => "Kunden", - "customers_desc" => "Hinzufügen, Ändern, Löschen und Suchen von Kunden.", - "employees" => "Mitarbeiter", - "employees_desc" => "Hinzufügen, Ändern, Löschen und Suchen von Mitarbeitern.", - "expenses" => "Ausgaben", - "expenses_categories" => "Ausgaben-Kategorien", - "expenses_categories_desc" => "Hinzufügen, Ändern und Löschen von Ausgaben-Kategorien.", - "expenses_desc" => "Hinzufügen, Ändern, Löschen und Suchen von Ausgaben.", - "giftcards" => "Gutscheine", - "giftcards_desc" => "Hinzufügen, Ändern, Löschen und Suchen von Gutscheinen.", - "home" => "Home", - "home_desc" => "Auflistung der Module des Home-Menüs.", - "item_kits" => "Artikel-Sets", - "item_kits_desc" => "Hinzufügen, Ändern, Löschen und Suchen von Artikel-Sets.", - "items" => "Artikel", - "items_desc" => "Hinzufügen, Ändern, Löschen und Suchen von Artikeln.", - "messages" => "Nachrichten", - "messages_desc" => "Sende Nachrichten an Kunden, Lieferanten und Mitarbeiter.", - "migrate" => "Migrieren", - "migrate_desc" => "Aktualisiere die OSPOS-Datenbank.", - "office" => "Verwaltung", - "office_desc" => "Auflistung der Module für das Verwaltungs-Menü.", - "receivings" => "Eingänge", - "receivings_desc" => "Hinzufügen, Ändern, Löschen und Suchen von Bestellungen.", - "reports" => "Berichte", - "reports_desc" => "Anzeigen und Erstellen von Berichten.", - "sales" => "Verkauf", - "sales_desc" => "Bearbeitung von Verkäufen und Retouren.", - "suppliers" => "Lieferanten", - "suppliers_desc" => "Hinzufügen, Ändern, Löschen und Suchen von Lieferanten.", - "taxes" => "Steuern", - "taxes_desc" => "Umsatzsteuer konfigurieren.", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "Attribute", + "attributes_desc" => "Hinzufügen, Ändern, Löschen und Suchen von Attributen.", + "both" => "Beide", + "cashups" => "Auszahlungen", + "cashups_desc" => "Hinzufügen, Ändern, Löschen und Suchen von Auszahlungen.", + "config" => "Einstellungen", + "config_desc" => "Ändere OSPOS Konfiguration.", + "customers" => "Kunden", + "customers_desc" => "Hinzufügen, Ändern, Löschen und Suchen von Kunden.", + "employees" => "Mitarbeiter", + "employees_desc" => "Hinzufügen, Ändern, Löschen und Suchen von Mitarbeitern.", + "expenses" => "Ausgaben", + "expenses_categories" => "Ausgaben-Kategorien", + "expenses_categories_desc" => "Hinzufügen, Ändern und Löschen von Ausgaben-Kategorien.", + "expenses_desc" => "Hinzufügen, Ändern, Löschen und Suchen von Ausgaben.", + "giftcards" => "Gutscheine", + "giftcards_desc" => "Hinzufügen, Ändern, Löschen und Suchen von Gutscheinen.", + "home" => "Home", + "home_desc" => "Auflistung der Module des Home-Menüs.", + "item_kits" => "Artikel-Sets", + "item_kits_desc" => "Hinzufügen, Ändern, Löschen und Suchen von Artikel-Sets.", + "items" => "Artikel", + "items_desc" => "Hinzufügen, Ändern, Löschen und Suchen von Artikeln.", + "messages" => "Nachrichten", + "messages_desc" => "Sende Nachrichten an Kunden, Lieferanten und Mitarbeiter.", + "migrate" => "Migrieren", + "migrate_desc" => "Aktualisiere die OSPOS-Datenbank.", + "office" => "Verwaltung", + "office_desc" => "Auflistung der Module für das Verwaltungs-Menü.", + "receivings" => "Eingänge", + "receivings_desc" => "Hinzufügen, Ändern, Löschen und Suchen von Bestellungen.", + "reports" => "Berichte", + "reports_desc" => "Anzeigen und Erstellen von Berichten.", + "sales" => "Verkauf", + "sales_desc" => "Bearbeitung von Verkäufen und Retouren.", + "suppliers" => "Lieferanten", + "suppliers_desc" => "Hinzufügen, Ändern, Löschen und Suchen von Lieferanten.", + "taxes" => "Steuern", + "taxes_desc" => "Umsatzsteuer konfigurieren.", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/de-DE/Receivings.php b/app/Language/de-DE/Receivings.php index 2322a0ba3..29acaca54 100644 --- a/app/Language/de-DE/Receivings.php +++ b/app/Language/de-DE/Receivings.php @@ -1,58 +1,58 @@ "", - "cancel_receiving" => "Abbrechen", - "cannot_be_deleted" => "Eingangsbestellung(en) konnten nicht gelöscht werden.", - "comments" => "Kommentare", - "complete_receiving" => "Abschliessen", - "confirm_cancel_receiving" => "Wollen Siesen Wareneingang annullieren? Alle Einträge werden gelöscht.", - "confirm_delete" => "Wollen Sie diesen Eingang wirklich löschen? Rückgängig nicht möglich.", - "confirm_finish_receiving" => "Wollen Sie diesen Wareneingang verabeiten? Dieser Schritt kann nicht rückgängig gemacht werden.", - "confirm_restore" => "", - "cost" => "Kosten", - "daily" => "", - "date" => "Eingangsdatum", - "date_required" => "Ein korrektes Datum ist erforderlich.", - "date_type" => "Datum ist erforderlich.", - "delete_entire_sale" => "Wareneingang löschen", - "discount" => "Rabatt %", - "edit" => "Ändern", - "edit_sale" => "Wareneingang ändern", - "employee" => "Mitarbeiter", - "error_editing_item" => "Fehler beim Ändern des Artikels.", - "error_requisition" => "Kann Bestand nicht von oder zum gleichen Lagerort ändern.", - "find_or_scan_item" => "Finde/Scanne Artikel", - "find_or_scan_item_or_receipt" => "Finde/Scanne Artikel oder Quittung", - "id" => "Eingangs ID", - "item_name" => "Artikelname", - "mode" => "Eingangsmodus", - "new_supplier" => "Neuer Lieferant", - "one_or_multiple" => "Wareneingäng(e)", - "print_after_sale" => "Drucke Bon nach Verkauf", - "quantity" => "Menge", - "receipt" => "Eingangsquittung", - "receipt_number" => "Eingangs Nummer", - "receiving" => "Eingang", - "reference" => "Referenz", - "register" => "Wareneingang", - "requisition" => "Bedarf", - "return" => "Retoure", - "select_supplier" => "Wählen Sie Lieferanten (optional)", - "ship_pack" => "Versandpaket", - "start_typing_supplier_name" => "Eintippen des Namens des Lieferanten beginnen...", - "stock" => "Lager", - "stock_destination" => "Lagerort (Ziel)", - "stock_locaiton" => "Lagerort", - "stock_source" => "Lagerort (Quelle)", - "successfully_deleted" => "Löschung erfolgreich", - "successfully_updated" => "Änderung erfolgreich", - "supplier" => "Lieferant", - "supplier_address" => "Lieferant Address", - "supplier_email" => "Lieferant Email", - "supplier_location" => "Lieferant Location", - "total" => "Total", - "transaction_failed" => "Eingangstransaktion fehlgeschlagen.", - "unable_to_add_item" => "Kann Artikel nicht zum Eingang hinzufügen.", - "unsuccessfully_updated" => "Eingang nicht erfolgreich geändert.", - "update" => "Änd", + "amount_due" => "", + "cancel_receiving" => "Abbrechen", + "cannot_be_deleted" => "Eingangsbestellung(en) konnten nicht gelöscht werden.", + "comments" => "Kommentare", + "complete_receiving" => "Abschliessen", + "confirm_cancel_receiving" => "Wollen Siesen Wareneingang annullieren? Alle Einträge werden gelöscht.", + "confirm_delete" => "Wollen Sie diesen Eingang wirklich löschen? Rückgängig nicht möglich.", + "confirm_finish_receiving" => "Wollen Sie diesen Wareneingang verabeiten? Dieser Schritt kann nicht rückgängig gemacht werden.", + "confirm_restore" => "", + "cost" => "Kosten", + "daily" => "", + "date" => "Eingangsdatum", + "date_required" => "Ein korrektes Datum ist erforderlich.", + "date_type" => "Datum ist erforderlich.", + "delete_entire_sale" => "Wareneingang löschen", + "discount" => "Rabatt %", + "edit" => "Ändern", + "edit_sale" => "Wareneingang ändern", + "employee" => "Mitarbeiter", + "error_editing_item" => "Fehler beim Ändern des Artikels.", + "error_requisition" => "Kann Bestand nicht von oder zum gleichen Lagerort ändern.", + "find_or_scan_item" => "Finde/Scanne Artikel", + "find_or_scan_item_or_receipt" => "Finde/Scanne Artikel oder Quittung", + "id" => "Eingangs ID", + "item_name" => "Artikelname", + "mode" => "Eingangsmodus", + "new_supplier" => "Neuer Lieferant", + "one_or_multiple" => "Wareneingäng(e)", + "print_after_sale" => "Drucke Bon nach Verkauf", + "quantity" => "Menge", + "receipt" => "Eingangsquittung", + "receipt_number" => "Eingangs Nummer", + "receiving" => "Eingang", + "reference" => "Referenz", + "register" => "Wareneingang", + "requisition" => "Bedarf", + "return" => "Retoure", + "select_supplier" => "Wählen Sie Lieferanten (optional)", + "ship_pack" => "Versandpaket", + "start_typing_supplier_name" => "Eintippen des Namens des Lieferanten beginnen...", + "stock" => "Lager", + "stock_destination" => "Lagerort (Ziel)", + "stock_locaiton" => "Lagerort", + "stock_source" => "Lagerort (Quelle)", + "successfully_deleted" => "Löschung erfolgreich", + "successfully_updated" => "Änderung erfolgreich", + "supplier" => "Lieferant", + "supplier_address" => "Lieferant Address", + "supplier_email" => "Lieferant Email", + "supplier_location" => "Lieferant Location", + "total" => "Total", + "transaction_failed" => "Eingangstransaktion fehlgeschlagen.", + "unable_to_add_item" => "Kann Artikel nicht zum Eingang hinzufügen.", + "unsuccessfully_updated" => "Eingang nicht erfolgreich geändert.", + "update" => "Änd", ]; diff --git a/app/Language/de-DE/Reports.php b/app/Language/de-DE/Reports.php index 83e183210..52403641b 100644 --- a/app/Language/de-DE/Reports.php +++ b/app/Language/de-DE/Reports.php @@ -1,148 +1,148 @@ "Alle", - "authority" => "Behörde", - "canceled" => "Storniert", - "categories" => "Kategorien", - "categories_summary_report" => "Bericht: Kategorien (summarisch)", - "category" => "Kategorie", - "code_canceled" => "CNL", - "code_invoice" => "INV", - "code_pos" => "POS", - "code_quote" => "Q", - "code_return" => "RET", - "code_type" => "Typ", - "code_work_order" => "WO", - "comments" => "Kommentare", - "commission" => "", - "complete" => "Abgeschlossene Verkäufe und Retouren", - "completed_sales" => "Abgeschlossene Verkäufe", - "confirm_delete" => "Sind Sie sicher, dass Sie ausgewählte Einträge löschen möchten?", - "confirm_restore" => "Sind Sie sicher, dass Sie ausgewählte Einträge wiederherstellen möchten?", - "cost" => "Kosten", - "cost_price" => "Einkaufspreis", - "count" => "Anzahl", - "customer" => "Kunde", - "customers" => "Kunden", - "customers_summary_report" => "Bericht: Kunden (summarisch)", - "date" => "Datum", - "date_range" => "Zeitraum", - "description" => "Bezeichnung", - "detailed_receivings_report" => "Bericht: Wareneingänge (detailliert)", - "detailed_receivings_report_input" => "", - "detailed_reports" => "Berichte (detailliert)", - "detailed_requisition_report" => "Bericht: Bedarf (detailliert)", - "detailed_sales_report" => "Bericht: Verkäufe (detailliert)", - "discount" => "Rabatt", - "discount_fixed" => "Fester Rabatt", - "discount_percent" => "Rabatt %", - "discount_type" => "Rabattart", - "discounts" => "Rabatte", - "discounts_summary_report" => "Bericht: Rabatte (summarisch)", - "earned" => "Punkte erhalten", - "employee" => "Mitarbeiter", - "employees" => "Mitarbeiter", - "employees_summary_report" => "Bericht: Mitarbeiter (summarisch)", - "expenses" => "Ausgaben", - "expenses_amount" => "Betrag", - "expenses_categories" => "Ausgaben", - "expenses_categories_summary_report" => "Bericht: Ausgabenkategorien (summarisch)", - "expenses_category" => "Ausgabenkategorie", - "expenses_payment_amount" => "", - "expenses_tax_amount" => "Steuer", - "expenses_total_amount" => "Gesamtbetrag", - "expenses_total_tax_amount" => "Gesamtsteuer", - "graphical_reports" => "Grafische Berichte", - "inventory" => "Lager", - "inventory_low" => "Lager mit Unterbestand", - "inventory_low_report" => "Bericht: Lager mit Unterbestand", - "inventory_reports" => "Berichte: Lager", - "inventory_summary" => "Lager (summarisch)", - "inventory_summary_report" => "Bericht: Lager (summarisch)", - "item" => "Artikel", - "item_count" => "Filter nach Artikelzahl", - "item_name" => "Artikelname", - "item_number" => "Artikelnummer", - "items" => "Artikel", - "items_purchased" => "Gekaufte Artikel", - "items_received" => "Erhaltene Artikel", - "items_summary_report" => "Bericht: Artikel (summarisch)", - "jurisdiction" => "Gerichtsstand", - "low_inventory" => "Lager mit Unterbestand", - "low_inventory_report" => "Bericht: Inventar", - "low_sell_quantity" => "Niedrige Verkaufsmenge", - "more_than_zero" => "Mehr als Null", - "name" => "Name", - "no_reports_to_display" => "Keine Artikel zum Anzeigen.", - "payment_type" => "Zahlungsart", - "payments" => "Zahlungen", - "payments_summary_report" => "Bericht: Zahlungen (summarisch)", - "profit" => "Gewinn", - "quantity" => "Menge", - "quantity_purchased" => "Menge gekauft", - "quotes" => "Angebote", - "received_by" => "Erhalten von", - "receiving_id" => "Einangs-ID", - "receiving_type" => "Eingangstyp", - "receivings" => "Eingänge", - "reorder_level" => "Mindestbestand", - "report" => "Bericht", - "report_input" => "Berichtsdefinition", - "reports" => "Berichte", - "requisition" => "Bedarf", - "requisition_by" => "Bedarf durch", - "requisition_id" => "Bedarfs-ID", - "requisition_item" => "Artikel", - "requisition_item_quantity" => "Menge", - "requisition_related_item" => "Artikelverweis", - "requisition_related_item_total_quantity" => "Gesamtmenge Bedarf", - "requisition_related_item_unit_quantity" => "Bedarfsmenge", - "requisitions" => "Bedarf", - "returns" => "Retoure", - "revenue" => "Einkommen", - "sale_id" => "Verkaufs-ID", - "sale_type" => "Verkaufs-Typ", - "sales" => "Verkäufe", - "sales_amount" => "Umsatz", - "sales_summary_report" => "Bericht: Umsatz (summarisch)", - "sales_taxes" => "Umsatzsteuer", - "sales_taxes_summary_report" => "Bericht: Umsatzsteuer (summarisch)", - "serial_number" => "Seriennummer", - "service_charge" => "", - "sold_by" => "Verkauft durch", - "sold_items" => "", - "sold_to" => "Verkauft an", - "stock_location" => "Lagerort", - "sub_total_value" => "Zwischentotal", - "subtotal" => "Zwischensumme", - "summary_reports" => "Berichte (summarisch)", - "supplied_by" => "Geliefert von", - "supplier" => "Lieferant", - "suppliers" => "Lieferanten", - "suppliers_summary_report" => "Bericht: Lieferanten (summarisch)", - "tax" => "MWSt", - "tax_category" => "Steuerkategorie", - "tax_name" => "", - "tax_percent" => "MWSt %", - "tax_rate" => "Steuersatz", - "taxes" => "Steuern", - "taxes_summary_report" => "Bericht: Steuern (summarisch)", - "total" => "Total", - "total_inventory_value" => "Total Inventarwert", - "total_low_sell_quantity" => "Anzahl der niedrigen Verkaufsmengen insgesamt", - "total_quantity" => "Gesamtmenge", - "total_retail" => "Gesamtwert Einzelhandelsinventar", - "trans_amount" => "Transaktionshöhe", - "trans_due" => "Fällig", - "trans_group" => "Transaktionsgruppe", - "trans_nopay_sales" => "Zahlungslose Verkäufe", - "trans_payments" => "Zahlungen", - "trans_refunded" => "Erstattet", - "trans_sales" => "Verkäufe", - "trans_type" => "Transaktionstyp", - "type" => "Typ", - "unit_price" => "Verkaufspreis", - "used" => "Punkte eingelöst", - "work_orders" => "Arbeitsaufträge", - "zero_and_less" => "Null und weniger", + "all" => "Alle", + "authority" => "Behörde", + "canceled" => "Storniert", + "categories" => "Kategorien", + "categories_summary_report" => "Bericht: Kategorien (summarisch)", + "category" => "Kategorie", + "code_canceled" => "CNL", + "code_invoice" => "INV", + "code_pos" => "POS", + "code_quote" => "Q", + "code_return" => "RET", + "code_type" => "Typ", + "code_work_order" => "WO", + "comments" => "Kommentare", + "commission" => "", + "complete" => "Abgeschlossene Verkäufe und Retouren", + "completed_sales" => "Abgeschlossene Verkäufe", + "confirm_delete" => "Sind Sie sicher, dass Sie ausgewählte Einträge löschen möchten?", + "confirm_restore" => "Sind Sie sicher, dass Sie ausgewählte Einträge wiederherstellen möchten?", + "cost" => "Kosten", + "cost_price" => "Einkaufspreis", + "count" => "Anzahl", + "customer" => "Kunde", + "customers" => "Kunden", + "customers_summary_report" => "Bericht: Kunden (summarisch)", + "date" => "Datum", + "date_range" => "Zeitraum", + "description" => "Bezeichnung", + "detailed_receivings_report" => "Bericht: Wareneingänge (detailliert)", + "detailed_receivings_report_input" => "", + "detailed_reports" => "Berichte (detailliert)", + "detailed_requisition_report" => "Bericht: Bedarf (detailliert)", + "detailed_sales_report" => "Bericht: Verkäufe (detailliert)", + "discount" => "Rabatt", + "discount_fixed" => "Fester Rabatt", + "discount_percent" => "Rabatt %", + "discount_type" => "Rabattart", + "discounts" => "Rabatte", + "discounts_summary_report" => "Bericht: Rabatte (summarisch)", + "earned" => "Punkte erhalten", + "employee" => "Mitarbeiter", + "employees" => "Mitarbeiter", + "employees_summary_report" => "Bericht: Mitarbeiter (summarisch)", + "expenses" => "Ausgaben", + "expenses_amount" => "Betrag", + "expenses_categories" => "Ausgaben", + "expenses_categories_summary_report" => "Bericht: Ausgabenkategorien (summarisch)", + "expenses_category" => "Ausgabenkategorie", + "expenses_payment_amount" => "", + "expenses_tax_amount" => "Steuer", + "expenses_total_amount" => "Gesamtbetrag", + "expenses_total_tax_amount" => "Gesamtsteuer", + "graphical_reports" => "Grafische Berichte", + "inventory" => "Lager", + "inventory_low" => "Lager mit Unterbestand", + "inventory_low_report" => "Bericht: Lager mit Unterbestand", + "inventory_reports" => "Berichte: Lager", + "inventory_summary" => "Lager (summarisch)", + "inventory_summary_report" => "Bericht: Lager (summarisch)", + "item" => "Artikel", + "item_count" => "Filter nach Artikelzahl", + "item_name" => "Artikelname", + "item_number" => "Artikelnummer", + "items" => "Artikel", + "items_purchased" => "Gekaufte Artikel", + "items_received" => "Erhaltene Artikel", + "items_summary_report" => "Bericht: Artikel (summarisch)", + "jurisdiction" => "Gerichtsstand", + "low_inventory" => "Lager mit Unterbestand", + "low_inventory_report" => "Bericht: Inventar", + "low_sell_quantity" => "Niedrige Verkaufsmenge", + "more_than_zero" => "Mehr als Null", + "name" => "Name", + "no_reports_to_display" => "Keine Artikel zum Anzeigen.", + "payment_type" => "Zahlungsart", + "payments" => "Zahlungen", + "payments_summary_report" => "Bericht: Zahlungen (summarisch)", + "profit" => "Gewinn", + "quantity" => "Menge", + "quantity_purchased" => "Menge gekauft", + "quotes" => "Angebote", + "received_by" => "Erhalten von", + "receiving_id" => "Einangs-ID", + "receiving_type" => "Eingangstyp", + "receivings" => "Eingänge", + "reorder_level" => "Mindestbestand", + "report" => "Bericht", + "report_input" => "Berichtsdefinition", + "reports" => "Berichte", + "requisition" => "Bedarf", + "requisition_by" => "Bedarf durch", + "requisition_id" => "Bedarfs-ID", + "requisition_item" => "Artikel", + "requisition_item_quantity" => "Menge", + "requisition_related_item" => "Artikelverweis", + "requisition_related_item_total_quantity" => "Gesamtmenge Bedarf", + "requisition_related_item_unit_quantity" => "Bedarfsmenge", + "requisitions" => "Bedarf", + "returns" => "Retoure", + "revenue" => "Einkommen", + "sale_id" => "Verkaufs-ID", + "sale_type" => "Verkaufs-Typ", + "sales" => "Verkäufe", + "sales_amount" => "Umsatz", + "sales_summary_report" => "Bericht: Umsatz (summarisch)", + "sales_taxes" => "Umsatzsteuer", + "sales_taxes_summary_report" => "Bericht: Umsatzsteuer (summarisch)", + "serial_number" => "Seriennummer", + "service_charge" => "", + "sold_by" => "Verkauft durch", + "sold_items" => "", + "sold_to" => "Verkauft an", + "stock_location" => "Lagerort", + "sub_total_value" => "Zwischentotal", + "subtotal" => "Zwischensumme", + "summary_reports" => "Berichte (summarisch)", + "supplied_by" => "Geliefert von", + "supplier" => "Lieferant", + "suppliers" => "Lieferanten", + "suppliers_summary_report" => "Bericht: Lieferanten (summarisch)", + "tax" => "MWSt", + "tax_category" => "Steuerkategorie", + "tax_name" => "", + "tax_percent" => "MWSt %", + "tax_rate" => "Steuersatz", + "taxes" => "Steuern", + "taxes_summary_report" => "Bericht: Steuern (summarisch)", + "total" => "Total", + "total_inventory_value" => "Total Inventarwert", + "total_low_sell_quantity" => "Anzahl der niedrigen Verkaufsmengen insgesamt", + "total_quantity" => "Gesamtmenge", + "total_retail" => "Gesamtwert Einzelhandelsinventar", + "trans_amount" => "Transaktionshöhe", + "trans_due" => "Fällig", + "trans_group" => "Transaktionsgruppe", + "trans_nopay_sales" => "Zahlungslose Verkäufe", + "trans_payments" => "Zahlungen", + "trans_refunded" => "Erstattet", + "trans_sales" => "Verkäufe", + "trans_type" => "Transaktionstyp", + "type" => "Typ", + "unit_price" => "Verkaufspreis", + "used" => "Punkte eingelöst", + "work_orders" => "Arbeitsaufträge", + "zero_and_less" => "Null und weniger", ]; diff --git a/app/Language/de-DE/Sales.php b/app/Language/de-DE/Sales.php index 4d4595bf6..928a6cc8b 100644 --- a/app/Language/de-DE/Sales.php +++ b/app/Language/de-DE/Sales.php @@ -1,224 +1,224 @@ "Verfügbare Punkte", - "rewards_package" => "Prämie", - "rewards_remaining_balance" => "Verbleibende Prämienpunkte ", - "account_number" => "Kundennummer", - "add_payment" => "Zahlung", - "amount_due" => "fälliger Betrag", - "amount_tendered" => "Erhalten", - "authorized_signature" => "Unterschrift", - "cancel_sale" => "Annullieren", - "cash" => "Bar", - "cash_1" => "", - "cash_2" => "", - "cash_3" => "", - "cash_4" => "", - "cash_adjustment" => "", - "cash_deposit" => "Bareinzahlung", - "cash_filter" => "Bar", - "change_due" => "Wechselgeld", - "change_price" => "", - "check" => "Scheck", - "check_balance" => "Scheck-Differenz", - "check_filter" => "Scheck", - "close" => "", - "comment" => "Bemerkung", - "comments" => "Bemerkungen", - "company_name" => "", - "complete" => "", - "complete_sale" => "Abschliessen", - "confirm_cancel_sale" => "Wollen Sie diesen Verkauf wirklich zurücksetzen? Alle Artikeleinträge werden entfernt.", - "confirm_delete" => "Wollen Sie die gewählten Aufträge löschen?", - "confirm_restore" => "Sind Sie sicher, dass Sie die ausgewählten Verkäufe wiederherstellen möchten?", - "credit" => "Kreditkarte", - "credit_deposit" => "Krediteinlage", - "credit_filter" => "", - "current_table" => "", - "customer" => "Kunde", - "customer_address" => "Kundenadresse", - "customer_discount" => "Rabatt", - "customer_email" => "Kunden eMail", - "customer_location" => "Kunden Stadt", - "customer_mailchimp_status" => "Mailchim Status", - "customer_optional" => "(Benötigt für fällige Zahlungen)", - "customer_required" => "(Benötigt)", - "customer_total" => "Gesamtbetrag", - "customer_total_spent" => "", - "daily_sales" => "", - "date" => "Datum", - "date_range" => "Zeitraum", - "date_required" => "Ein korrektes Datum ist erforderlich.", - "date_type" => "Datum ist erforderlich.", - "debit" => "EC-Karte", - "debit_filter" => "", - "delete" => "löschen", - "delete_confirmation" => "Wollen Sie diesen Auftrag wirklich löschen? Dies kann nicht rückgängig gemacht werden.", - "delete_entire_sale" => "Auftrag löschen", - "delete_successful" => "Erfolgreich gelöscht.", - "delete_unsuccessful" => "Löschen fehlgeschlagen.", - "description_abbrv" => "Bez.", - "discard" => "Verwerfen", - "discard_quote" => "", - "discount" => "%", - "discount_included" => "% Rabatt", - "discount_short" => "%", - "due" => "fällig", - "due_filter" => "Fällig", - "edit" => "Ändern", - "edit_item" => "Artikel Ändern", - "edit_sale" => "Auftrag ändern", - "email_receipt" => "Quittung per Email", - "employee" => "Mitarbeiter", - "entry" => "Eintrag", - "error_editing_item" => "Fehler beim Ändern des Artikels", - "find_or_scan_item" => "Finde/Scanne Artikel", - "find_or_scan_item_or_receipt" => "Finde/Scanne Artikel oder Quittung", - "giftcard" => "Gutschein", - "giftcard_balance" => "Gutschein Restwert", - "giftcard_filter" => "", - "giftcard_number" => "Gutschein Nummer", - "group_by_category" => "Gruppiere nach Kategorie", - "group_by_type" => "Gruppiere nach Typ", - "hsn" => "HSN", - "id" => "ID", - "include_prices" => "Inklusiv Preise?", - "invoice" => "Rechnung", - "invoice_confirm" => "Diese Rechnung wird gesendet an", - "invoice_enable" => "Erzeuge Rechnung", - "invoice_filter" => "Rechnungen", - "invoice_no_email" => "Dieser Kunde hat keine gültige Email Adresse.", - "invoice_number" => "Rechnungsnummer", - "invoice_number_duplicate" => "Rechnungsnummer muss eindeutig sein.", - "invoice_sent" => "Rechnung gesendet an", - "invoice_total" => "Rechnungsbetrag", - "invoice_type_custom_invoice" => "Benutzerdefinierte Rechnung (custom_invoice.php)", - "invoice_type_custom_tax_invoice" => "Benutzerdefinierte Steuerrechnung (custom_tax_invoice.php)", - "invoice_type_invoice" => "Rechnung (invoice.php)", - "invoice_type_tax_invoice" => "Steuerrechnung (tax_invoice.php)", - "invoice_unsent" => "Rechnung nicht gesendet", - "invoice_update" => "Aktualisieren", - "item_insufficient_of_stock" => "Artikel hat Unterbestand.", - "item_name" => "Artikelname", - "item_number" => "Artikelnummer", - "item_out_of_stock" => "Artikel ist nicht auf Lager.", - "key_browser" => "", - "key_cancel" => "Cancels Current Quote/Invoice/Sale", - "key_customer_search" => "Customer Search", - "key_finish_quote" => "Finish Quote/Invoice witdout payment", - "key_finish_sale" => "Add Payment and Complete Invoice/Sale", - "key_full" => "", - "key_function" => "Function", - "key_help" => "Shortcuts", - "key_help_modal" => "Open Shortcuts Window", - "key_in" => "", - "key_item_search" => "Item Search", - "key_out" => "", - "key_payment" => "Add Payment", - "key_print" => "", - "key_restore" => "", - "key_search" => "", - "key_suspend" => "Suspend Current Sale", - "key_suspended" => "Show Suspended Sales", - "key_system" => "", - "key_tendered" => "Edit Amount Tendered", - "key_title" => "Sales Keyboard Shortcuts", - "mc" => "", - "mode" => "Verkaufstyp", - "must_enter_numeric" => "Eingabe muss eine Zahl sein.", - "must_enter_numeric_giftcard" => "Gutschein-Nr. muss eine Zahl sein.", - "new_customer" => "Neuer Kunde", - "new_item" => "Neuer Artikel", - "no_description" => "Nichts", - "no_filter" => "Alle", - "no_items_in_cart" => "Warenkorb ist leer.", - "no_sales_to_display" => "Keine Artikel zum Anzeigen.", - "none_selected" => "Sie haben keinen Auftrag zum Löschen ausgewählt.", - "nontaxed_ind" => "", - "not_authorized" => "Diese Aktion ist nicht erlaubt.", - "one_or_multiple" => "Verkäufe", - "payment" => "Zahlungsart", - "payment_amount" => "Betrag", - "payment_not_cover_total" => "Betrag deckt Rechnungsbetrag nicht.", - "payment_type" => "Typ", - "payments" => "", - "payments_total" => "Zahlung Total", - "price" => "Preis", - "print_after_sale" => "Drucke Bon nach Verkauf", - "quantity" => "Menge", - "quantity_less_than_reorder_level" => "Warnung: Gewünschte Menge ist nicht verfügbar.", - "quantity_less_than_zero" => "Warnung: Gewünschte Menge ist nicht verfügbar. Sie können den Verkauf fortsetzen, dennoch prüfen Sie bitte den Lagerbestand.", - "quantity_of_items" => "Menge von {0} Artikeln", - "quote" => "Angebot", - "quote_number" => "Angebotsnummer", - "quote_number_duplicate" => "Die Angebotsnummer muss eindeutig sein.", - "quote_sent" => "Angebot gesendet an", - "quote_unsent" => "Angebot senden fehlgeschlagen", - "receipt" => "Quittung", - "receipt_no_email" => "Der Kunde hat keine gültige E-Mail Adresse.", - "receipt_number" => "Quittungsnummer", - "receipt_sent" => "Quittung gesendet an", - "receipt_unsent" => "Quittung nicht gesendet", - "refund" => "", - "register" => "Kasse", - "remove_customer" => "Entferne Kunde", - "remove_discount" => "", - "return" => "Retoure", - "rewards" => "Prämienpunkte", - "rewards_balance" => "Prämienpunkte Stand", - "sale" => "Verkauf", - "sale_by_invoice" => "Verkauf auf Rechnung", - "sale_for_customer" => "Kunde:", - "sale_time" => "Zeit", - "sales_tax" => "Mehrwertsteuer", - "sales_total" => "", - "select_customer" => "Wähle Kunde (optional)", - "send_invoice" => "Sende Rechnung", - "send_quote" => "Angebot Senden", - "send_receipt" => "Sende Quittung", - "send_work_order" => "Arbeitsauftrag senden", - "serial" => "Seriennummer", - "service_charge" => "", - "show_due" => "", - "show_invoice" => "Rechnung", - "show_receipt" => "Quittung", - "start_typing_customer_name" => "Geben Sie den Kundennamen ein...", - "start_typing_item_name" => "Geben Sie den Artikel ein oder scannen Sie ihn...", - "stock" => "Vorrat", - "stock_location" => "Lagerort", - "sub_total" => "Zwischentotal", - "successfully_deleted" => "Löschung erfolgreich", - "successfully_restored" => "Erfolgreich wiederhergestellt", - "successfully_suspended_sale" => "Verkauf erfolgreich gestoppt.", - "successfully_updated" => "Verkauf erfolgreich geändert.", - "suspend_sale" => "-> Aussetzen", - "suspended_doc_id" => "Dokument", - "suspended_sale_id" => "ID", - "suspended_sales" => "Ausgesetzte Aufträge", - "table" => "Tisch", - "takings" => "Einnahmen", - "tax" => "Steuer", - "tax_id" => "Steuer ID", - "tax_invoice" => "Steuerrechnung", - "tax_percent" => "Steuer %", - "taxed_ind" => "", - "total" => "Gesamtbetrag", - "total_tax_exclusive" => "exkl. Steuer", - "transaction_failed" => "Verarbeitung fehlerhaft.", - "unable_to_add_item" => "Kann Artikel nicht zum Auftrag hinzufügen", - "unsuccessfully_deleted" => "Löschen des Verkaufs fehlgeschlagen.", - "unsuccessfully_restored" => "Wiederherstellung fehlgeschlagen.", - "unsuccessfully_suspended_sale" => "Verkaufsstopp fehlgeschlagen.", - "unsuccessfully_updated" => "Änderung fehlgeschlagen.", - "unsuspend" => "Aktivieren", - "unsuspend_and_delete" => "Aktivieren und löschen", - "update" => "Ändern", - "upi" => "UPI", - "visa" => "", - "wholesale" => "", - "work_order" => "Arbeitsauftrag", - "work_order_number" => "Arbeitsauftragsnummer", - "work_order_number_duplicate" => "Arbeitsauftragsnummer muss eindeutig sein.", - "work_order_sent" => "Arbeitsauftrag gesendet an", - "work_order_unsent" => "Der Arbeitsauftrag konnte nicht gesendet werden an", + "customers_available_points" => "Verfügbare Punkte", + "rewards_package" => "Prämie", + "rewards_remaining_balance" => "Verbleibende Prämienpunkte ", + "account_number" => "Kundennummer", + "add_payment" => "Zahlung", + "amount_due" => "fälliger Betrag", + "amount_tendered" => "Erhalten", + "authorized_signature" => "Unterschrift", + "cancel_sale" => "Annullieren", + "cash" => "Bar", + "cash_1" => "", + "cash_2" => "", + "cash_3" => "", + "cash_4" => "", + "cash_adjustment" => "", + "cash_deposit" => "Bareinzahlung", + "cash_filter" => "Bar", + "change_due" => "Wechselgeld", + "change_price" => "", + "check" => "Scheck", + "check_balance" => "Scheck-Differenz", + "check_filter" => "Scheck", + "close" => "", + "comment" => "Bemerkung", + "comments" => "Bemerkungen", + "company_name" => "", + "complete" => "", + "complete_sale" => "Abschliessen", + "confirm_cancel_sale" => "Wollen Sie diesen Verkauf wirklich zurücksetzen? Alle Artikeleinträge werden entfernt.", + "confirm_delete" => "Wollen Sie die gewählten Aufträge löschen?", + "confirm_restore" => "Sind Sie sicher, dass Sie die ausgewählten Verkäufe wiederherstellen möchten?", + "credit" => "Kreditkarte", + "credit_deposit" => "Krediteinlage", + "credit_filter" => "", + "current_table" => "", + "customer" => "Kunde", + "customer_address" => "Kundenadresse", + "customer_discount" => "Rabatt", + "customer_email" => "Kunden eMail", + "customer_location" => "Kunden Stadt", + "customer_mailchimp_status" => "Mailchim Status", + "customer_optional" => "(Benötigt für fällige Zahlungen)", + "customer_required" => "(Benötigt)", + "customer_total" => "Gesamtbetrag", + "customer_total_spent" => "", + "daily_sales" => "", + "date" => "Datum", + "date_range" => "Zeitraum", + "date_required" => "Ein korrektes Datum ist erforderlich.", + "date_type" => "Datum ist erforderlich.", + "debit" => "EC-Karte", + "debit_filter" => "", + "delete" => "löschen", + "delete_confirmation" => "Wollen Sie diesen Auftrag wirklich löschen? Dies kann nicht rückgängig gemacht werden.", + "delete_entire_sale" => "Auftrag löschen", + "delete_successful" => "Erfolgreich gelöscht.", + "delete_unsuccessful" => "Löschen fehlgeschlagen.", + "description_abbrv" => "Bez.", + "discard" => "Verwerfen", + "discard_quote" => "", + "discount" => "%", + "discount_included" => "% Rabatt", + "discount_short" => "%", + "due" => "fällig", + "due_filter" => "Fällig", + "edit" => "Ändern", + "edit_item" => "Artikel Ändern", + "edit_sale" => "Auftrag ändern", + "email_receipt" => "Quittung per Email", + "employee" => "Mitarbeiter", + "entry" => "Eintrag", + "error_editing_item" => "Fehler beim Ändern des Artikels", + "find_or_scan_item" => "Finde/Scanne Artikel", + "find_or_scan_item_or_receipt" => "Finde/Scanne Artikel oder Quittung", + "giftcard" => "Gutschein", + "giftcard_balance" => "Gutschein Restwert", + "giftcard_filter" => "", + "giftcard_number" => "Gutschein Nummer", + "group_by_category" => "Gruppiere nach Kategorie", + "group_by_type" => "Gruppiere nach Typ", + "hsn" => "HSN", + "id" => "ID", + "include_prices" => "Inklusiv Preise?", + "invoice" => "Rechnung", + "invoice_confirm" => "Diese Rechnung wird gesendet an", + "invoice_enable" => "Erzeuge Rechnung", + "invoice_filter" => "Rechnungen", + "invoice_no_email" => "Dieser Kunde hat keine gültige Email Adresse.", + "invoice_number" => "Rechnungsnummer", + "invoice_number_duplicate" => "Rechnungsnummer muss eindeutig sein.", + "invoice_sent" => "Rechnung gesendet an", + "invoice_total" => "Rechnungsbetrag", + "invoice_type_custom_invoice" => "Benutzerdefinierte Rechnung (custom_invoice.php)", + "invoice_type_custom_tax_invoice" => "Benutzerdefinierte Steuerrechnung (custom_tax_invoice.php)", + "invoice_type_invoice" => "Rechnung (invoice.php)", + "invoice_type_tax_invoice" => "Steuerrechnung (tax_invoice.php)", + "invoice_unsent" => "Rechnung nicht gesendet", + "invoice_update" => "Aktualisieren", + "item_insufficient_of_stock" => "Artikel hat Unterbestand.", + "item_name" => "Artikelname", + "item_number" => "Artikelnummer", + "item_out_of_stock" => "Artikel ist nicht auf Lager.", + "key_browser" => "", + "key_cancel" => "Cancels Current Quote/Invoice/Sale", + "key_customer_search" => "Customer Search", + "key_finish_quote" => "Finish Quote/Invoice witdout payment", + "key_finish_sale" => "Add Payment and Complete Invoice/Sale", + "key_full" => "", + "key_function" => "Function", + "key_help" => "Shortcuts", + "key_help_modal" => "Open Shortcuts Window", + "key_in" => "", + "key_item_search" => "Item Search", + "key_out" => "", + "key_payment" => "Add Payment", + "key_print" => "", + "key_restore" => "", + "key_search" => "", + "key_suspend" => "Suspend Current Sale", + "key_suspended" => "Show Suspended Sales", + "key_system" => "", + "key_tendered" => "Edit Amount Tendered", + "key_title" => "Sales Keyboard Shortcuts", + "mc" => "", + "mode" => "Verkaufstyp", + "must_enter_numeric" => "Eingabe muss eine Zahl sein.", + "must_enter_numeric_giftcard" => "Gutschein-Nr. muss eine Zahl sein.", + "new_customer" => "Neuer Kunde", + "new_item" => "Neuer Artikel", + "no_description" => "Nichts", + "no_filter" => "Alle", + "no_items_in_cart" => "Warenkorb ist leer.", + "no_sales_to_display" => "Keine Artikel zum Anzeigen.", + "none_selected" => "Sie haben keinen Auftrag zum Löschen ausgewählt.", + "nontaxed_ind" => "", + "not_authorized" => "Diese Aktion ist nicht erlaubt.", + "one_or_multiple" => "Verkäufe", + "payment" => "Zahlungsart", + "payment_amount" => "Betrag", + "payment_not_cover_total" => "Betrag deckt Rechnungsbetrag nicht.", + "payment_type" => "Typ", + "payments" => "", + "payments_total" => "Zahlung Total", + "price" => "Preis", + "print_after_sale" => "Drucke Bon nach Verkauf", + "quantity" => "Menge", + "quantity_less_than_reorder_level" => "Warnung: Gewünschte Menge ist nicht verfügbar.", + "quantity_less_than_zero" => "Warnung: Gewünschte Menge ist nicht verfügbar. Sie können den Verkauf fortsetzen, dennoch prüfen Sie bitte den Lagerbestand.", + "quantity_of_items" => "Menge von {0} Artikeln", + "quote" => "Angebot", + "quote_number" => "Angebotsnummer", + "quote_number_duplicate" => "Die Angebotsnummer muss eindeutig sein.", + "quote_sent" => "Angebot gesendet an", + "quote_unsent" => "Angebot senden fehlgeschlagen", + "receipt" => "Quittung", + "receipt_no_email" => "Der Kunde hat keine gültige E-Mail Adresse.", + "receipt_number" => "Quittungsnummer", + "receipt_sent" => "Quittung gesendet an", + "receipt_unsent" => "Quittung nicht gesendet", + "refund" => "", + "register" => "Kasse", + "remove_customer" => "Entferne Kunde", + "remove_discount" => "", + "return" => "Retoure", + "rewards" => "Prämienpunkte", + "rewards_balance" => "Prämienpunkte Stand", + "sale" => "Verkauf", + "sale_by_invoice" => "Verkauf auf Rechnung", + "sale_for_customer" => "Kunde:", + "sale_time" => "Zeit", + "sales_tax" => "Mehrwertsteuer", + "sales_total" => "", + "select_customer" => "Wähle Kunde (optional)", + "send_invoice" => "Sende Rechnung", + "send_quote" => "Angebot Senden", + "send_receipt" => "Sende Quittung", + "send_work_order" => "Arbeitsauftrag senden", + "serial" => "Seriennummer", + "service_charge" => "", + "show_due" => "", + "show_invoice" => "Rechnung", + "show_receipt" => "Quittung", + "start_typing_customer_name" => "Geben Sie den Kundennamen ein...", + "start_typing_item_name" => "Geben Sie den Artikel ein oder scannen Sie ihn...", + "stock" => "Vorrat", + "stock_location" => "Lagerort", + "sub_total" => "Zwischentotal", + "successfully_deleted" => "Löschung erfolgreich", + "successfully_restored" => "Erfolgreich wiederhergestellt", + "successfully_suspended_sale" => "Verkauf erfolgreich gestoppt.", + "successfully_updated" => "Verkauf erfolgreich geändert.", + "suspend_sale" => "-> Aussetzen", + "suspended_doc_id" => "Dokument", + "suspended_sale_id" => "ID", + "suspended_sales" => "Ausgesetzte Aufträge", + "table" => "Tisch", + "takings" => "Einnahmen", + "tax" => "Steuer", + "tax_id" => "Steuer ID", + "tax_invoice" => "Steuerrechnung", + "tax_percent" => "Steuer %", + "taxed_ind" => "", + "total" => "Gesamtbetrag", + "total_tax_exclusive" => "exkl. Steuer", + "transaction_failed" => "Verarbeitung fehlerhaft.", + "unable_to_add_item" => "Kann Artikel nicht zum Auftrag hinzufügen", + "unsuccessfully_deleted" => "Löschen des Verkaufs fehlgeschlagen.", + "unsuccessfully_restored" => "Wiederherstellung fehlgeschlagen.", + "unsuccessfully_suspended_sale" => "Verkaufsstopp fehlgeschlagen.", + "unsuccessfully_updated" => "Änderung fehlgeschlagen.", + "unsuspend" => "Aktivieren", + "unsuspend_and_delete" => "Aktivieren und löschen", + "update" => "Ändern", + "upi" => "UPI", + "visa" => "", + "wholesale" => "", + "work_order" => "Arbeitsauftrag", + "work_order_number" => "Arbeitsauftragsnummer", + "work_order_number_duplicate" => "Arbeitsauftragsnummer muss eindeutig sein.", + "work_order_sent" => "Arbeitsauftrag gesendet an", + "work_order_unsent" => "Der Arbeitsauftrag konnte nicht gesendet werden an", ]; diff --git a/app/Language/de-DE/Suppliers.php b/app/Language/de-DE/Suppliers.php index 3e1e01090..35f033405 100644 --- a/app/Language/de-DE/Suppliers.php +++ b/app/Language/de-DE/Suppliers.php @@ -1,24 +1,24 @@ "Kontonummer", - "agency_name" => "Name der Agentur", - "cannot_be_deleted" => "Kann gewählte Lieferanten nicht löschen, einer oder mehrere weisen Verkäufe aus.", - "category" => "Kategorie", - "company_name" => "Firmenname", - "company_name_required" => "Firmenname ist erforderlich.", - "confirm_delete" => "Wollen Sie die gewählten Lieferanten löschen?", - "confirm_restore" => "Sind Sie sicher, dass Sie die ausgewählten Lieferanten wiederherstellen möchten?", - "cost" => "Kosten", - "error_adding_updating" => "Fehler beim Hinzufügen/Ändern.", - "goods" => "Artikel", - "new" => "Neuer Lieferant", - "none_selected" => "Sie haben keinen Lieferanten zum Löschen ausgewählt.", - "one_or_multiple" => "Lieferanten", - "successful_adding" => "Erfolgreich hinzugefügt", - "successful_deleted" => "Löschung erfolgreich", - "successful_updating" => "Änderung erfolgreich", - "supplier" => "Lieferant", - "supplier_id" => "ID", - "tax_id" => "Steuer ID", - "update" => "Ändere Lieferant", + "account_number" => "Kontonummer", + "agency_name" => "Name der Agentur", + "cannot_be_deleted" => "Kann gewählte Lieferanten nicht löschen, einer oder mehrere weisen Verkäufe aus.", + "category" => "Kategorie", + "company_name" => "Firmenname", + "company_name_required" => "Firmenname ist erforderlich.", + "confirm_delete" => "Wollen Sie die gewählten Lieferanten löschen?", + "confirm_restore" => "Sind Sie sicher, dass Sie die ausgewählten Lieferanten wiederherstellen möchten?", + "cost" => "Kosten", + "error_adding_updating" => "Fehler beim Hinzufügen/Ändern.", + "goods" => "Artikel", + "new" => "Neuer Lieferant", + "none_selected" => "Sie haben keinen Lieferanten zum Löschen ausgewählt.", + "one_or_multiple" => "Lieferanten", + "successful_adding" => "Erfolgreich hinzugefügt", + "successful_deleted" => "Löschung erfolgreich", + "successful_updating" => "Änderung erfolgreich", + "supplier" => "Lieferant", + "supplier_id" => "ID", + "tax_id" => "Steuer ID", + "update" => "Ändere Lieferant", ]; diff --git a/app/Language/de-DE/Taxes.php b/app/Language/de-DE/Taxes.php index e59302d63..03d747b8e 100644 --- a/app/Language/de-DE/Taxes.php +++ b/app/Language/de-DE/Taxes.php @@ -1,82 +1,82 @@ "Ausnahme hinzufügen", - "cascade" => "Kaskade", - "cascade_sequence" => "Kaskadenfolge", - "city" => "Stadt", - "code" => "Steuercode", - "confirm_delete" => "Sind Sie sicher, dass Sie dieses Steuercode löschen möchten? Diese Aktion kann nicht rückgängig gemacht werden", - "confirm_restore" => "Sind Sie sicher, dass Sie die ausgewählten Steuercodes wiederherstellen möchten?", - "default_tax_category" => "Standard-Steuerkategorie", - "default_tax_rate" => "Standard-Steuersatz", - "error_adding_updating" => "Hinzufügen oder Ändern des Steuercodes fehlgeschlagen", - "group_seq" => "Gruppe Folge", - "jurisdiction_name" => "Name der Gerichtsbarkeit", - "name" => "Name", - "new" => "Neue Steuer", - "no_taxes" => "", - "no_taxes_to_display" => "Kein Steuercode verfügbar, der angezeigt werden kann", - "reporting_authority" => "Meldebehörde", - "round_half_down" => "Halbe abrunden", - "round_half_even" => "Halbe symmetrisch gerade runden", - "round_half_odd" => "Halbe symmetrisch ungerade runden", - "round_half_up" => "Halbe aufrunden", - "rounding_code" => "Rundungsart", - "sales_tax" => "Umsatzsteuer", - "sales_tax_by_invoice" => "Umsatzsetuer nach Rechnungen", - "sequence" => "Folge", - "state" => "Bundesland", - "successful_deleted" => "Löschung erfolgreich", - "tax_categories" => "Steuerkategorien", - "tax_categories_configuration" => "Konfiguration der Steuerkategorien", - "tax_categories_saved_successfully" => "Änderungen an Steuerkategorien gespeichert", - "tax_categories_saved_unsuccessfully" => "Änderungen an Steuerkategorien nicht gespeichert", - "tax_category" => "Steuerkategorie", - "tax_category_code" => "Steuerkategorie-Code", - "tax_category_duplicate" => "Steuerkategorie duplizieren", - "tax_category_invalid_chars" => "Ungültige Zeichen in der Steuerkategorie", - "tax_category_name" => "Name der Steuerkategorie", - "tax_category_new" => "Neue Steuerkategorie", - "tax_category_required" => "Steuerkategorie ist erforderlich", - "tax_code" => "Steuercode", - "tax_code_cannot_be_deleted" => "Löschen des Steuercodes fehlgeschlagen", - "tax_code_duplicate" => "Steuercode duplizieren", - "tax_code_invalid_chars" => "Ungültige Zeichen im Steuercode", - "tax_code_name" => "Name des Steuercodes", - "tax_code_required" => "Der Steuercode ist ein Pflichtfeld", - "tax_code_successful_deleted" => "Steuercode erfolgreich gelöscht", - "tax_code_successful_updated" => "Erfolgreich geändert", - "tax_code_successful_updating" => "Steuercode erfolgreich geändert", - "tax_code_successfully_added" => "Erfolgreich hinzugefügt", - "tax_code_type" => "Steuercode-Typ", - "tax_codes" => "Steuercodes", - "tax_codes_configuration" => "Konfiguration der Steuercodes", - "tax_codes_saved_successfully" => "Steuercode Änderungen gespeichert", - "tax_codes_saved_unsuccessfully" => "Steuercode Änderungen nicht gespeichert", - "tax_excluded" => "exkl. Steuer", - "tax_group" => "Steuergruppe", - "tax_group_not_unique" => "", - "tax_group_sequence" => "Steuergruppe Folge", - "tax_included" => "inkl. Steuer", - "tax_jurisdiction" => "Steuerbehörde", - "tax_jurisdiction_duplicate" => "Steuerbehörde duplizieren", - "tax_jurisdiction_invalid_chars" => "Ungültige Zeichen in Steuerbehörde", - "tax_jurisdiction_required" => "Steuerbehörde ist erforderlich", - "tax_jurisdictions" => "Steuerbehörden", - "tax_jurisdictions_configuration" => "Konfiguration der Steuerbehörden", - "tax_jurisdictions_saved_successfully" => "Änderungen der Steuerbehörde gespeichert", - "tax_jurisdictions_saved_unsuccessfully" => "Änderungen der Steuerbehörde nicht gespeichert", - "tax_rate" => "Steuersatz", - "tax_rate_configuration" => "Steuersatz Konfiguration", - "tax_rate_error_adding_updating" => "Hinzufügen oder Ändern des Steuersatzes fehlgeschlagen", - "tax_rate_numeric" => "Der Steuersatz muss eine Zahl sein", - "tax_rate_required" => "Der Steuersatz ist ein Pflichtfeld", - "tax_rate_successful_updated" => "Erfolgreich geändert", - "tax_rate_successfully_added" => "Erfolgreich hinzugefügt", - "tax_rates" => "Steuersätze", - "tax_rates_configuration" => "Konfiguration der Steuersätze", - "tax_rounding" => "Steuerliche Rundung", - "tax_type" => "Steuerart", - "update" => "Steuersatz ändern", - "vat_tax" => "Mehrwertsteuer", + "add_exception" => "Ausnahme hinzufügen", + "cascade" => "Kaskade", + "cascade_sequence" => "Kaskadenfolge", + "city" => "Stadt", + "code" => "Steuercode", + "confirm_delete" => "Sind Sie sicher, dass Sie dieses Steuercode löschen möchten? Diese Aktion kann nicht rückgängig gemacht werden", + "confirm_restore" => "Sind Sie sicher, dass Sie die ausgewählten Steuercodes wiederherstellen möchten?", + "default_tax_category" => "Standard-Steuerkategorie", + "default_tax_rate" => "Standard-Steuersatz", + "error_adding_updating" => "Hinzufügen oder Ändern des Steuercodes fehlgeschlagen", + "group_seq" => "Gruppe Folge", + "jurisdiction_name" => "Name der Gerichtsbarkeit", + "name" => "Name", + "new" => "Neue Steuer", + "no_taxes" => "", + "no_taxes_to_display" => "Kein Steuercode verfügbar, der angezeigt werden kann", + "reporting_authority" => "Meldebehörde", + "round_half_down" => "Halbe abrunden", + "round_half_even" => "Halbe symmetrisch gerade runden", + "round_half_odd" => "Halbe symmetrisch ungerade runden", + "round_half_up" => "Halbe aufrunden", + "rounding_code" => "Rundungsart", + "sales_tax" => "Umsatzsteuer", + "sales_tax_by_invoice" => "Umsatzsetuer nach Rechnungen", + "sequence" => "Folge", + "state" => "Bundesland", + "successful_deleted" => "Löschung erfolgreich", + "tax_categories" => "Steuerkategorien", + "tax_categories_configuration" => "Konfiguration der Steuerkategorien", + "tax_categories_saved_successfully" => "Änderungen an Steuerkategorien gespeichert", + "tax_categories_saved_unsuccessfully" => "Änderungen an Steuerkategorien nicht gespeichert", + "tax_category" => "Steuerkategorie", + "tax_category_code" => "Steuerkategorie-Code", + "tax_category_duplicate" => "Steuerkategorie duplizieren", + "tax_category_invalid_chars" => "Ungültige Zeichen in der Steuerkategorie", + "tax_category_name" => "Name der Steuerkategorie", + "tax_category_new" => "Neue Steuerkategorie", + "tax_category_required" => "Steuerkategorie ist erforderlich", + "tax_code" => "Steuercode", + "tax_code_cannot_be_deleted" => "Löschen des Steuercodes fehlgeschlagen", + "tax_code_duplicate" => "Steuercode duplizieren", + "tax_code_invalid_chars" => "Ungültige Zeichen im Steuercode", + "tax_code_name" => "Name des Steuercodes", + "tax_code_required" => "Der Steuercode ist ein Pflichtfeld", + "tax_code_successful_deleted" => "Steuercode erfolgreich gelöscht", + "tax_code_successful_updated" => "Erfolgreich geändert", + "tax_code_successful_updating" => "Steuercode erfolgreich geändert", + "tax_code_successfully_added" => "Erfolgreich hinzugefügt", + "tax_code_type" => "Steuercode-Typ", + "tax_codes" => "Steuercodes", + "tax_codes_configuration" => "Konfiguration der Steuercodes", + "tax_codes_saved_successfully" => "Steuercode Änderungen gespeichert", + "tax_codes_saved_unsuccessfully" => "Steuercode Änderungen nicht gespeichert", + "tax_excluded" => "exkl. Steuer", + "tax_group" => "Steuergruppe", + "tax_group_not_unique" => "", + "tax_group_sequence" => "Steuergruppe Folge", + "tax_included" => "inkl. Steuer", + "tax_jurisdiction" => "Steuerbehörde", + "tax_jurisdiction_duplicate" => "Steuerbehörde duplizieren", + "tax_jurisdiction_invalid_chars" => "Ungültige Zeichen in Steuerbehörde", + "tax_jurisdiction_required" => "Steuerbehörde ist erforderlich", + "tax_jurisdictions" => "Steuerbehörden", + "tax_jurisdictions_configuration" => "Konfiguration der Steuerbehörden", + "tax_jurisdictions_saved_successfully" => "Änderungen der Steuerbehörde gespeichert", + "tax_jurisdictions_saved_unsuccessfully" => "Änderungen der Steuerbehörde nicht gespeichert", + "tax_rate" => "Steuersatz", + "tax_rate_configuration" => "Steuersatz Konfiguration", + "tax_rate_error_adding_updating" => "Hinzufügen oder Ändern des Steuersatzes fehlgeschlagen", + "tax_rate_numeric" => "Der Steuersatz muss eine Zahl sein", + "tax_rate_required" => "Der Steuersatz ist ein Pflichtfeld", + "tax_rate_successful_updated" => "Erfolgreich geändert", + "tax_rate_successfully_added" => "Erfolgreich hinzugefügt", + "tax_rates" => "Steuersätze", + "tax_rates_configuration" => "Konfiguration der Steuersätze", + "tax_rounding" => "Steuerliche Rundung", + "tax_type" => "Steuerart", + "update" => "Steuersatz ändern", + "vat_tax" => "Mehrwertsteuer", ]; diff --git a/app/Language/de-DE/index.html b/app/Language/de-DE/index.html index b702fbc39..69df4e1df 100644 --- a/app/Language/de-DE/index.html +++ b/app/Language/de-DE/index.html @@ -1,7 +1,7 @@ - 403 Forbidden + 403 Forbidden diff --git a/app/Language/el/Attributes.php b/app/Language/el/Attributes.php index 6d6a7d73d..f1fc8a49b 100644 --- a/app/Language/el/Attributes.php +++ b/app/Language/el/Attributes.php @@ -1,32 +1,32 @@ "Η τιμή του χαρακτηριστικού δεν μπορεί να περιέχει ':' ή '|'", - "confirm_delete" => "Είστε βέβαιοι ότι θέλετε να διαγράψετε τα επιλεγμένα χαρακτηριστικά;", - "confirm_restore" => "Είστε βέβαιοι ότι θέλετε να επαναφέρετε τα επιλεγμένα χαρακτηριστικά;", - "definition_cannot_be_deleted" => "Δεν ήταν δυνατή η διαγραφή των επιλεγμένων χαρακτηριστικών", - "definition_error_adding_updating" => "Το χαρακτηριστικό {0} δεν ήταν δυνατό να προστεθεί ή να ενημερωθεί. Ελέγξτε το αρχείο καταγραφής σφαλμάτων.", - "definition_flags" => "Ορατότητα χαρακτηριστικών", - "definition_group" => "Ομάδα", - "definition_id" => "Id", - "definition_name" => "Προσθήκη χαρακτηριστικού", - "definition_name_required" => "Το όνομα του χαρακτηριστικού είναι υποχρεωτικό πεδίο", - "definition_one_or_multiple" => "Χαρακτηριστικό(ά)", - "definition_successful_adding" => "Έχετε προσθέσει με επιτυχία στοιχείο", - "definition_successful_deleted" => "", - "definition_successful_updating" => "Έχετε ενημερώσει με επιτυχία το χαρακτηριστικό", - "definition_type" => "Τύπος Χαρακτηριστικού", - "definition_type_required" => "Ο τύπος ιδιότητας είναι υποχρεωτικό πεδίο", - "definition_unit" => "Μονάδα μέτρησης", - "definition_values" => "Τιμές Χαρακτηριστικών", - "new" => "Νέο χαρακτηριστικό", - "no_attributes_to_display" => "Δεν υπάρχουν στοιχεία για εμφάνιση", - "receipt_visibility" => "", - "show_in_items" => "", - "show_in_items_visibility" => "", - "show_in_receipt" => "", - "show_in_receivings" => "", - "show_in_receivings_visibility" => "", - "show_in_sales" => "", - "show_in_sales_visibility" => "", - "update" => "", + "attribute_value_invalid_chars" => "Η τιμή του χαρακτηριστικού δεν μπορεί να περιέχει ':' ή '|'", + "confirm_delete" => "Είστε βέβαιοι ότι θέλετε να διαγράψετε τα επιλεγμένα χαρακτηριστικά;", + "confirm_restore" => "Είστε βέβαιοι ότι θέλετε να επαναφέρετε τα επιλεγμένα χαρακτηριστικά;", + "definition_cannot_be_deleted" => "Δεν ήταν δυνατή η διαγραφή των επιλεγμένων χαρακτηριστικών", + "definition_error_adding_updating" => "Το χαρακτηριστικό {0} δεν ήταν δυνατό να προστεθεί ή να ενημερωθεί. Ελέγξτε το αρχείο καταγραφής σφαλμάτων.", + "definition_flags" => "Ορατότητα χαρακτηριστικών", + "definition_group" => "Ομάδα", + "definition_id" => "Id", + "definition_name" => "Προσθήκη χαρακτηριστικού", + "definition_name_required" => "Το όνομα του χαρακτηριστικού είναι υποχρεωτικό πεδίο", + "definition_one_or_multiple" => "Χαρακτηριστικό(ά)", + "definition_successful_adding" => "Έχετε προσθέσει με επιτυχία στοιχείο", + "definition_successful_deleted" => "", + "definition_successful_updating" => "Έχετε ενημερώσει με επιτυχία το χαρακτηριστικό", + "definition_type" => "Τύπος Χαρακτηριστικού", + "definition_type_required" => "Ο τύπος ιδιότητας είναι υποχρεωτικό πεδίο", + "definition_unit" => "Μονάδα μέτρησης", + "definition_values" => "Τιμές Χαρακτηριστικών", + "new" => "Νέο χαρακτηριστικό", + "no_attributes_to_display" => "Δεν υπάρχουν στοιχεία για εμφάνιση", + "receipt_visibility" => "", + "show_in_items" => "", + "show_in_items_visibility" => "", + "show_in_receipt" => "", + "show_in_receivings" => "", + "show_in_receivings_visibility" => "", + "show_in_sales" => "", + "show_in_sales_visibility" => "", + "update" => "", ]; diff --git a/app/Language/el/Bootstrap_tables.php b/app/Language/el/Bootstrap_tables.php index e02cb2e5a..e257f5276 100644 --- a/app/Language/el/Bootstrap_tables.php +++ b/app/Language/el/Bootstrap_tables.php @@ -1,11 +1,11 @@ "", - "columns" => "", - "hide_show_pagination" => "", - "loading" => "", - "page_from_to" => "", - "refresh" => "", - "rows_per_page" => "", - "toggle" => "", + "all" => "", + "columns" => "", + "hide_show_pagination" => "", + "loading" => "", + "page_from_to" => "", + "refresh" => "", + "rows_per_page" => "", + "toggle" => "", ]; diff --git a/app/Language/el/Calendar.php b/app/Language/el/Calendar.php index 2f748df50..51426d8c5 100644 --- a/app/Language/el/Calendar.php +++ b/app/Language/el/Calendar.php @@ -1,48 +1,48 @@ "Κυ", - "mo" => "Δε", - "tu" => "Τρ", - "we" => "Τε", - "th" => "Πε", - "fr" => "Πα", - "sa" => "Σα", - "sun" => "Κυρ", - "mon" => "Δευ", - "tue" => "Τρι", - "wed" => "Τετ", - "thu" => "Πεμ", - "fri" => "Παρ", - "sat" => "Σαβ", - "sunday" => "Κυριακή", - "monday" => "Δευτέρα", - "tuesday" => "Τρίτη", - "wednesday" => "Τετάρτη", - "thursday" => "Πέμπτη", - "friday" => "Παρασκευή", - "saturday" => "Σάββατο", - "jan" => "Ιαν", - "feb" => "Φεβ", - "mar" => "Μάρ", - "apr" => "Απρ", - "may" => "Μαί", - "jun" => "Ιούν", - "jul" => "Ιούλ", - "aug" => "Αύγ", - "sep" => "Σεπ", - "oct" => "Οκτ", - "nov" => "Νοέ", - "dec" => "Δεκ", - "january" => "Ιανουάριος", - "february" => "Φεβρουάριος", - "march" => "Μάρτιος", - "april" => "Απρίλιος", - "mayl" => "Μαίος", - "june" => "Ιούνιος", - "july" => "Ιούλιος", - "august" => "Αύγουστος", - "september" => "Σεπτέμβριος", - "october" => "Οκτώβριος", - "november" => "Νοέμβριος", - "december" => "Δεκέμβριος", + "su" => "Κυ", + "mo" => "Δε", + "tu" => "Τρ", + "we" => "Τε", + "th" => "Πε", + "fr" => "Πα", + "sa" => "Σα", + "sun" => "Κυρ", + "mon" => "Δευ", + "tue" => "Τρι", + "wed" => "Τετ", + "thu" => "Πεμ", + "fri" => "Παρ", + "sat" => "Σαβ", + "sunday" => "Κυριακή", + "monday" => "Δευτέρα", + "tuesday" => "Τρίτη", + "wednesday" => "Τετάρτη", + "thursday" => "Πέμπτη", + "friday" => "Παρασκευή", + "saturday" => "Σάββατο", + "jan" => "Ιαν", + "feb" => "Φεβ", + "mar" => "Μάρ", + "apr" => "Απρ", + "may" => "Μαί", + "jun" => "Ιούν", + "jul" => "Ιούλ", + "aug" => "Αύγ", + "sep" => "Σεπ", + "oct" => "Οκτ", + "nov" => "Νοέ", + "dec" => "Δεκ", + "january" => "Ιανουάριος", + "february" => "Φεβρουάριος", + "march" => "Μάρτιος", + "april" => "Απρίλιος", + "mayl" => "Μαίος", + "june" => "Ιούνιος", + "july" => "Ιούλιος", + "august" => "Αύγουστος", + "september" => "Σεπτέμβριος", + "october" => "Οκτώβριος", + "november" => "Νοέμβριος", + "december" => "Δεκέμβριος", ]; diff --git a/app/Language/el/Cashups.php b/app/Language/el/Cashups.php index 2ffc8c593..04d19c94f 100644 --- a/app/Language/el/Cashups.php +++ b/app/Language/el/Cashups.php @@ -1,49 +1,49 @@ "", - "amount_number" => "", - "amount_required" => "", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "", - "cash_difference" => "", - "close_date" => "", - "close_employee" => "", - "closed_amount_card" => "", - "closed_amount_cash" => "", - "closed_amount_check" => "", - "closed_amount_due" => "", - "closed_amount_giftcard" => "", - "closed_amount_total" => "", - "closed_date" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "confirm_submit" => "", - "date_number" => "", - "date_required" => "", - "description" => "", - "enable_expected" => "", - "error_adding_updating" => "", - "giftcard" => "", - "id" => "", - "info" => "", - "info_employee" => "", - "is_deleted" => "", - "new" => "", - "no_cashups_to_display" => "", - "none_selected" => "", - "note" => "", - "one_or_multiple" => "", - "open_amount_cash" => "", - "open_date" => "", - "open_employee" => "", - "opened_date" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "total" => "", - "transfer_amount_cash" => "", - "transfer_amount_cash_minus" => "", - "update" => "", - "warning" => "", + "amount" => "", + "amount_number" => "", + "amount_required" => "", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "", + "cash_difference" => "", + "close_date" => "", + "close_employee" => "", + "closed_amount_card" => "", + "closed_amount_cash" => "", + "closed_amount_check" => "", + "closed_amount_due" => "", + "closed_amount_giftcard" => "", + "closed_amount_total" => "", + "closed_date" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "confirm_submit" => "", + "date_number" => "", + "date_required" => "", + "description" => "", + "enable_expected" => "", + "error_adding_updating" => "", + "giftcard" => "", + "id" => "", + "info" => "", + "info_employee" => "", + "is_deleted" => "", + "new" => "", + "no_cashups_to_display" => "", + "none_selected" => "", + "note" => "", + "one_or_multiple" => "", + "open_amount_cash" => "", + "open_date" => "", + "open_employee" => "", + "opened_date" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "total" => "", + "transfer_amount_cash" => "", + "transfer_amount_cash_minus" => "", + "update" => "", + "warning" => "", ]; diff --git a/app/Language/el/Common.php b/app/Language/el/Common.php index ea39dbd65..cf8e0b967 100644 --- a/app/Language/el/Common.php +++ b/app/Language/el/Common.php @@ -1,88 +1,88 @@ "Διεύθυνση 1", - "address_2" => "Διεύθυνση 2", - "admin" => "", - "city" => "Πόλη", - "clerk" => "", - "close" => "Κλείσιμο", - "color" => "", - "comments" => "Σχόλια", - "common" => "κοινά", - "confirm_search" => "Έχετε διαλέξει μία ή περισσότερες σειρές, οι οποίες δε θα είναι επιλέξιμες μετά την αναζήτηση σας. Είστε σίγουροι ότι θέλετε να υποβάλετε την αναζήτηση?", - "copyrights" => "© 2010 - {0}", - "correct_errors" => "Παρακαλώ διορθώστε τα αναγνωρισμένα σφάλματα πριν συνεχίσετε", - "country" => "Χώρα", - "dashboard" => "", - "date" => "Ημερομηνία", - "delete" => "Διαγραφή", - "det" => "λεπτομέρειες", - "download_import_template" => "Λήψη Πρότυπου Εισαγωγής CSV (CSV)", - "edit" => "επεξεργασία", - "email" => "Email", - "email_invalid_format" => "Η διεύθυνση ηλ.ταχυδρομείου εχει λανθασμενη μορφή.", - "export_csv" => "Εξαγωγή CSV", - "export_csv_no" => "Όχι", - "export_csv_yes" => "Ναί", - "fields_required_message" => "Τα κόκκινα πεδία απαιτούνται", - "fields_required_message_unique" => "", - "first_name" => "Κύριο όνομα", - "first_name_required" => "Το κύριο όνομα απαιτείται.", - "first_page" => "Πρώτο", - "gender" => "Φύλο", - "gender_female" => "Θ", - "gender_male" => "Α", - "gender_undefined" => "", - "icon" => "", - "id" => "Id", - "import" => "Εισαγωγή", - "import_change_file" => "Αλλαγή", - "import_csv" => "Εισαγωγή CSV", - "import_full_path" => "Η πλήρης διαδρομή του αρχείου CSV απαιτείται", - "import_remove_file" => "Αφαίρεση", - "import_select_file" => "Επιλογή αρχείου", - "inv" => "αποθ", - "last_name" => "Επίθετο", - "last_name_required" => "Το Επίθετο απαιτείται.", - "last_page" => "Τελευταίο", - "learn_about_project" => "ώστε να ενημερωθείτε για τις τελευταίες πληροφορίες του έργου.", - "list_of" => "Λίστα από", - "logo" => "", - "logo_mark" => "", - "logout" => "Έξοδος", - "manager" => "", - "migration_needed" => "Η ενσωμάτωση της βάσης δεδομένων σε {0} θα ξεκινήσει μετά την είσοδο.", - "new" => "Νέο", - "no" => "", - "no_persons_to_display" => "Δεν υπάρχουν άνθρωποι για προβολή.", - "none_selected_text" => "[Επιλογή]", - "or" => "Ή", - "people" => "", - "phone_number" => "Αριθμός τηλεφώνου", - "phone_number_required" => "", - "please_visit_my" => "Παρακαλώ επισκεφτείτε το", - "position" => "", - "powered_by" => "Τροφοδοτείται από", - "price" => "Τιμή", - "print" => "Εκτύπωση", - "remove" => "Αφαίρεση", - "required" => "Απαιτείται", - "restore" => "Επαναφορά", - "return_policy" => "Πολιτική Επιστροφών", - "search" => "Αναζήτηση", - "search_options" => "Επιλογές αναζήτησης", - "searched_for" => "Αναζητήσατε για", - "software_short" => "", - "software_title" => "", - "state" => "Περιοχή/Νομός", - "submit" => "Καταχώριση", - "total_spent" => "Σύνολο εξόδων", - "unknown" => "Άγνωστο", - "view_recent_sales" => "Εμφάνιση Πρόσφατων Πωλήσεων", - "website" => "Ιστοσελίδα", - "welcome" => "Καλωσήρθατε", - "welcome_message" => "Καλωσορίσατε στο OSPOS, επιλέξτε μια από τις παρακάτω ενότητες για να ξεκινήσετε.", - "yes" => "", - "you_are_using_ospos" => "Χρησιμοποιείτε την Open Source Point Of Sale έκδοση", - "zip" => "Ταχ.Κωδικας", + "address_1" => "Διεύθυνση 1", + "address_2" => "Διεύθυνση 2", + "admin" => "", + "city" => "Πόλη", + "clerk" => "", + "close" => "Κλείσιμο", + "color" => "", + "comments" => "Σχόλια", + "common" => "κοινά", + "confirm_search" => "Έχετε διαλέξει μία ή περισσότερες σειρές, οι οποίες δε θα είναι επιλέξιμες μετά την αναζήτηση σας. Είστε σίγουροι ότι θέλετε να υποβάλετε την αναζήτηση?", + "copyrights" => "© 2010 - {0}", + "correct_errors" => "Παρακαλώ διορθώστε τα αναγνωρισμένα σφάλματα πριν συνεχίσετε", + "country" => "Χώρα", + "dashboard" => "", + "date" => "Ημερομηνία", + "delete" => "Διαγραφή", + "det" => "λεπτομέρειες", + "download_import_template" => "Λήψη Πρότυπου Εισαγωγής CSV (CSV)", + "edit" => "επεξεργασία", + "email" => "Email", + "email_invalid_format" => "Η διεύθυνση ηλ.ταχυδρομείου εχει λανθασμενη μορφή.", + "export_csv" => "Εξαγωγή CSV", + "export_csv_no" => "Όχι", + "export_csv_yes" => "Ναί", + "fields_required_message" => "Τα κόκκινα πεδία απαιτούνται", + "fields_required_message_unique" => "", + "first_name" => "Κύριο όνομα", + "first_name_required" => "Το κύριο όνομα απαιτείται.", + "first_page" => "Πρώτο", + "gender" => "Φύλο", + "gender_female" => "Θ", + "gender_male" => "Α", + "gender_undefined" => "", + "icon" => "", + "id" => "Id", + "import" => "Εισαγωγή", + "import_change_file" => "Αλλαγή", + "import_csv" => "Εισαγωγή CSV", + "import_full_path" => "Η πλήρης διαδρομή του αρχείου CSV απαιτείται", + "import_remove_file" => "Αφαίρεση", + "import_select_file" => "Επιλογή αρχείου", + "inv" => "αποθ", + "last_name" => "Επίθετο", + "last_name_required" => "Το Επίθετο απαιτείται.", + "last_page" => "Τελευταίο", + "learn_about_project" => "ώστε να ενημερωθείτε για τις τελευταίες πληροφορίες του έργου.", + "list_of" => "Λίστα από", + "logo" => "", + "logo_mark" => "", + "logout" => "Έξοδος", + "manager" => "", + "migration_needed" => "Η ενσωμάτωση της βάσης δεδομένων σε {0} θα ξεκινήσει μετά την είσοδο.", + "new" => "Νέο", + "no" => "", + "no_persons_to_display" => "Δεν υπάρχουν άνθρωποι για προβολή.", + "none_selected_text" => "[Επιλογή]", + "or" => "Ή", + "people" => "", + "phone_number" => "Αριθμός τηλεφώνου", + "phone_number_required" => "", + "please_visit_my" => "Παρακαλώ επισκεφτείτε το", + "position" => "", + "powered_by" => "Τροφοδοτείται από", + "price" => "Τιμή", + "print" => "Εκτύπωση", + "remove" => "Αφαίρεση", + "required" => "Απαιτείται", + "restore" => "Επαναφορά", + "return_policy" => "Πολιτική Επιστροφών", + "search" => "Αναζήτηση", + "search_options" => "Επιλογές αναζήτησης", + "searched_for" => "Αναζητήσατε για", + "software_short" => "", + "software_title" => "", + "state" => "Περιοχή/Νομός", + "submit" => "Καταχώριση", + "total_spent" => "Σύνολο εξόδων", + "unknown" => "Άγνωστο", + "view_recent_sales" => "Εμφάνιση Πρόσφατων Πωλήσεων", + "website" => "Ιστοσελίδα", + "welcome" => "Καλωσήρθατε", + "welcome_message" => "Καλωσορίσατε στο OSPOS, επιλέξτε μια από τις παρακάτω ενότητες για να ξεκινήσετε.", + "yes" => "", + "you_are_using_ospos" => "Χρησιμοποιείτε την Open Source Point Of Sale έκδοση", + "zip" => "Ταχ.Κωδικας", ]; diff --git a/app/Language/el/Config.php b/app/Language/el/Config.php index 49d8ea4fc..2b0ffe152 100644 --- a/app/Language/el/Config.php +++ b/app/Language/el/Config.php @@ -1,330 +1,330 @@ "", - "address_required" => "", - "all_set" => "All file permissions are set correctly!", - "allow_duplicate_barcodes" => "", - "apostrophe" => "", - "backup_button" => "", - "backup_database" => "", - "barcode" => "", - "barcode_company" => "", - "barcode_configuration" => "", - "barcode_content" => "", - "barcode_first_row" => "", - "barcode_font" => "", - "barcode_formats" => "", - "barcode_generate_if_empty" => "", - "barcode_height" => "", - "barcode_id" => "", - "barcode_info" => "", - "barcode_layout" => "", - "barcode_name" => "", - "barcode_number" => "", - "barcode_number_in_row" => "", - "barcode_page_cellspacing" => "", - "barcode_page_width" => "", - "barcode_price" => "", - "barcode_second_row" => "", - "barcode_third_row" => "", - "barcode_tooltip" => "", - "barcode_type" => "", - "barcode_width" => "", - "bottom" => "", - "cash_button" => "", - "cash_button_1" => "", - "cash_button_2" => "", - "cash_button_3" => "", - "cash_button_4" => "", - "cash_button_5" => "", - "cash_button_6" => "", - "cash_decimals" => "", - "cash_decimals_tooltip" => "", - "cash_rounding" => "", - "category_dropdown" => "", - "center" => "", - "change_apperance_tooltip" => "", - "comma" => "", - "company" => "", - "company_avatar" => "", - "company_change_image" => "", - "company_logo" => "", - "company_remove_image" => "", - "company_required" => "", - "company_select_image" => "", - "company_website_url" => "", - "country_codes" => "", - "country_codes_tooltip" => "", - "currency_code" => "", - "currency_decimals" => "", - "currency_symbol" => "", - "current_employee_only" => "", - "customer_reward" => "", - "customer_reward_duplicate" => "", - "customer_reward_enable" => "", - "customer_reward_invalid_chars" => "", - "customer_reward_required" => "", - "customer_sales_tax_support" => "", - "date_or_time_format" => "", - "datetimeformat" => "", - "decimal_point" => "", - "default_barcode_font_size_number" => "", - "default_barcode_font_size_required" => "", - "default_barcode_height_number" => "", - "default_barcode_height_required" => "", - "default_barcode_num_in_row_number" => "", - "default_barcode_num_in_row_required" => "", - "default_barcode_page_cellspacing_number" => "", - "default_barcode_page_cellspacing_required" => "", - "default_barcode_page_width_number" => "", - "default_barcode_page_width_required" => "", - "default_barcode_width_number" => "", - "default_barcode_width_required" => "", - "default_item_columns" => "", - "default_origin_tax_code" => "", - "default_receivings_discount" => "", - "default_receivings_discount_number" => "", - "default_receivings_discount_required" => "", - "default_sales_discount" => "", - "default_sales_discount_number" => "", - "default_sales_discount_required" => "", - "default_tax_category" => "", - "default_tax_code" => "", - "default_tax_jurisdiction" => "", - "default_tax_name_number" => "", - "default_tax_name_required" => "", - "default_tax_rate" => "", - "default_tax_rate_1" => "", - "default_tax_rate_2" => "", - "default_tax_rate_3" => "", - "default_tax_rate_number" => "", - "default_tax_rate_required" => "", - "derive_sale_quantity" => "", - "derive_sale_quantity_tooltip" => "", - "dinner_table" => "", - "dinner_table_duplicate" => "", - "dinner_table_enable" => "", - "dinner_table_invalid_chars" => "", - "dinner_table_required" => "", - "dot" => "", - "email" => "", - "email_configuration" => "", - "email_mailpath" => "", - "email_protocol" => "", - "email_receipt_check_behaviour" => "", - "email_receipt_check_behaviour_always" => "", - "email_receipt_check_behaviour_last" => "", - "email_receipt_check_behaviour_never" => "", - "email_smtp_crypto" => "", - "email_smtp_host" => "", - "email_smtp_pass" => "", - "email_smtp_port" => "", - "email_smtp_timeout" => "", - "email_smtp_user" => "", - "enable_avatar" => "", - "enable_avatar_tooltip" => "", - "enable_dropdown_tooltip" => "", - "enable_new_look" => "", - "enable_right_bar" => "", - "enable_right_bar_tooltip" => "", - "enforce_privacy" => "", - "enforce_privacy_tooltip" => "", - "fax" => "", - "file_perm" => "There are problems with file permissions please fix and reload this page.", - "financial_year" => "", - "financial_year_apr" => "", - "financial_year_aug" => "", - "financial_year_dec" => "", - "financial_year_feb" => "", - "financial_year_jan" => "", - "financial_year_jul" => "", - "financial_year_jun" => "", - "financial_year_mar" => "", - "financial_year_may" => "", - "financial_year_nov" => "", - "financial_year_oct" => "", - "financial_year_sep" => "", - "floating_labels" => "", - "gcaptcha_enable" => "", - "gcaptcha_secret_key" => "", - "gcaptcha_secret_key_required" => "", - "gcaptcha_site_key" => "", - "gcaptcha_site_key_required" => "", - "gcaptcha_tooltip" => "", - "general" => "", - "general_configuration" => "", - "giftcard_number" => "", - "giftcard_random" => "", - "giftcard_series" => "", - "image_allowed_file_types" => "", - "image_max_height_tooltip" => "", - "image_max_size_tooltip" => "", - "image_max_width_tooltip" => "", - "image_restrictions" => "", - "include_hsn" => "", - "info" => "", - "info_configuration" => "", - "input_groups" => "", - "integrations" => "", - "integrations_configuration" => "", - "invoice" => "", - "invoice_configuration" => "", - "invoice_default_comments" => "", - "invoice_email_message" => "", - "invoice_enable" => "", - "invoice_printer" => "", - "invoice_type" => "", - "is_readable" => "", - "is_writable" => "is writable, but the permissions are higher than 750.", - "item_markup" => "", - "jsprintsetup_required" => "", - "language" => "", - "last_used_invoice_number" => "", - "last_used_quote_number" => "", - "last_used_work_order_number" => "", - "left" => "", - "license" => "", - "license_configuration" => "", - "line_sequence" => "", - "lines_per_page" => "", - "lines_per_page_number" => "", - "lines_per_page_required" => "", - "locale" => "", - "locale_configuration" => "", - "locale_info" => "", - "location" => "", - "location_configuration" => "", - "location_info" => "", - "login_form" => "", - "logout" => "", - "mailchimp" => "", - "mailchimp_api_key" => "", - "mailchimp_configuration" => "", - "mailchimp_key_successfully" => "", - "mailchimp_key_unsuccessfully" => "", - "mailchimp_lists" => "", - "mailchimp_tooltip" => "", - "message" => "", - "message_configuration" => "", - "msg_msg" => "", - "msg_msg_placeholder" => "", - "msg_pwd" => "", - "msg_pwd_required" => "", - "msg_src" => "", - "msg_src_required" => "", - "msg_uid" => "", - "msg_uid_required" => "", - "multi_pack_enabled" => "", - "no_risk" => "No security/vulnerability risks.", - "none" => "", - "notify_alignment" => "", - "number_format" => "", - "number_locale" => "", - "number_locale_invalid" => "", - "number_locale_required" => "", - "number_locale_tooltip" => "", - "os_timezone" => "", - "ospos_info" => "", - "payment_options_order" => "", - "perm_risk" => "Permissions higher than 750 leaves this software at risk.", - "phone" => "", - "phone_required" => "", - "print_bottom_margin" => "", - "print_bottom_margin_number" => "", - "print_bottom_margin_required" => "", - "print_delay_autoreturn" => "", - "print_delay_autoreturn_number" => "", - "print_delay_autoreturn_required" => "", - "print_footer" => "", - "print_header" => "", - "print_left_margin" => "", - "print_left_margin_number" => "", - "print_left_margin_required" => "", - "print_receipt_check_behaviour" => "", - "print_receipt_check_behaviour_always" => "", - "print_receipt_check_behaviour_last" => "", - "print_receipt_check_behaviour_never" => "", - "print_right_margin" => "", - "print_right_margin_number" => "", - "print_right_margin_required" => "", - "print_silently" => "", - "print_top_margin" => "", - "print_top_margin_number" => "", - "print_top_margin_required" => "", - "quantity_decimals" => "", - "quick_cash_enable" => "", - "quote_default_comments" => "", - "receipt" => "", - "receipt_category" => "", - "receipt_configuration" => "", - "receipt_default" => "", - "receipt_font_size" => "", - "receipt_font_size_number" => "", - "receipt_font_size_required" => "", - "receipt_info" => "", - "receipt_printer" => "", - "receipt_short" => "", - "receipt_show_company_name" => "", - "receipt_show_description" => "", - "receipt_show_serialnumber" => "", - "receipt_show_tax_ind" => "", - "receipt_show_taxes" => "", - "receipt_show_total_discount" => "", - "receipt_template" => "", - "receiving_calculate_average_price" => "", - "recv_invoice_format" => "", - "register_mode_default" => "", - "report_an_issue" => "", - "return_policy_required" => "", - "reward" => "", - "reward_configuration" => "", - "right" => "", - "sales_invoice_format" => "", - "sales_quote_format" => "", - "saved_successfully" => "", - "saved_unsuccessfully" => "", - "security_issue" => "Security Vulnerability Warning", - "server_notice" => "Please use the below info for issue reporting.", - "service_charge" => "", - "show_due_enable" => "", - "show_office_group" => "", - "statistics" => "", - "statistics_tooltip" => "", - "stock_location" => "", - "stock_location_duplicate" => "", - "stock_location_invalid_chars" => "", - "stock_location_required" => "", - "suggestions_fifth_column" => "", - "suggestions_first_column" => "", - "suggestions_fourth_column" => "", - "suggestions_layout" => "", - "suggestions_second_column" => "", - "suggestions_third_column" => "", - "system_conf" => "Setup & Conf", - "system_info" => "System Info", - "table" => "", - "table_configuration" => "", - "takings_printer" => "", - "tax" => "", - "tax_category" => "", - "tax_category_duplicate" => "", - "tax_category_invalid_chars" => "", - "tax_category_required" => "", - "tax_category_used" => "", - "tax_configuration" => "", - "tax_decimals" => "", - "tax_id" => "", - "tax_included" => "", - "theme" => "", - "theme_preview" => "", - "thousands_separator" => "", - "timezone" => "", - "timezone_error" => "", - "top" => "", - "use_destination_based_tax" => "", - "user_timezone" => "", - "website" => "", - "wholesale_markup" => "", - "work_order_enable" => "", - "work_order_format" => "", + "address" => "", + "address_required" => "", + "all_set" => "All file permissions are set correctly!", + "allow_duplicate_barcodes" => "", + "apostrophe" => "", + "backup_button" => "", + "backup_database" => "", + "barcode" => "", + "barcode_company" => "", + "barcode_configuration" => "", + "barcode_content" => "", + "barcode_first_row" => "", + "barcode_font" => "", + "barcode_formats" => "", + "barcode_generate_if_empty" => "", + "barcode_height" => "", + "barcode_id" => "", + "barcode_info" => "", + "barcode_layout" => "", + "barcode_name" => "", + "barcode_number" => "", + "barcode_number_in_row" => "", + "barcode_page_cellspacing" => "", + "barcode_page_width" => "", + "barcode_price" => "", + "barcode_second_row" => "", + "barcode_third_row" => "", + "barcode_tooltip" => "", + "barcode_type" => "", + "barcode_width" => "", + "bottom" => "", + "cash_button" => "", + "cash_button_1" => "", + "cash_button_2" => "", + "cash_button_3" => "", + "cash_button_4" => "", + "cash_button_5" => "", + "cash_button_6" => "", + "cash_decimals" => "", + "cash_decimals_tooltip" => "", + "cash_rounding" => "", + "category_dropdown" => "", + "center" => "", + "change_apperance_tooltip" => "", + "comma" => "", + "company" => "", + "company_avatar" => "", + "company_change_image" => "", + "company_logo" => "", + "company_remove_image" => "", + "company_required" => "", + "company_select_image" => "", + "company_website_url" => "", + "country_codes" => "", + "country_codes_tooltip" => "", + "currency_code" => "", + "currency_decimals" => "", + "currency_symbol" => "", + "current_employee_only" => "", + "customer_reward" => "", + "customer_reward_duplicate" => "", + "customer_reward_enable" => "", + "customer_reward_invalid_chars" => "", + "customer_reward_required" => "", + "customer_sales_tax_support" => "", + "date_or_time_format" => "", + "datetimeformat" => "", + "decimal_point" => "", + "default_barcode_font_size_number" => "", + "default_barcode_font_size_required" => "", + "default_barcode_height_number" => "", + "default_barcode_height_required" => "", + "default_barcode_num_in_row_number" => "", + "default_barcode_num_in_row_required" => "", + "default_barcode_page_cellspacing_number" => "", + "default_barcode_page_cellspacing_required" => "", + "default_barcode_page_width_number" => "", + "default_barcode_page_width_required" => "", + "default_barcode_width_number" => "", + "default_barcode_width_required" => "", + "default_item_columns" => "", + "default_origin_tax_code" => "", + "default_receivings_discount" => "", + "default_receivings_discount_number" => "", + "default_receivings_discount_required" => "", + "default_sales_discount" => "", + "default_sales_discount_number" => "", + "default_sales_discount_required" => "", + "default_tax_category" => "", + "default_tax_code" => "", + "default_tax_jurisdiction" => "", + "default_tax_name_number" => "", + "default_tax_name_required" => "", + "default_tax_rate" => "", + "default_tax_rate_1" => "", + "default_tax_rate_2" => "", + "default_tax_rate_3" => "", + "default_tax_rate_number" => "", + "default_tax_rate_required" => "", + "derive_sale_quantity" => "", + "derive_sale_quantity_tooltip" => "", + "dinner_table" => "", + "dinner_table_duplicate" => "", + "dinner_table_enable" => "", + "dinner_table_invalid_chars" => "", + "dinner_table_required" => "", + "dot" => "", + "email" => "", + "email_configuration" => "", + "email_mailpath" => "", + "email_protocol" => "", + "email_receipt_check_behaviour" => "", + "email_receipt_check_behaviour_always" => "", + "email_receipt_check_behaviour_last" => "", + "email_receipt_check_behaviour_never" => "", + "email_smtp_crypto" => "", + "email_smtp_host" => "", + "email_smtp_pass" => "", + "email_smtp_port" => "", + "email_smtp_timeout" => "", + "email_smtp_user" => "", + "enable_avatar" => "", + "enable_avatar_tooltip" => "", + "enable_dropdown_tooltip" => "", + "enable_new_look" => "", + "enable_right_bar" => "", + "enable_right_bar_tooltip" => "", + "enforce_privacy" => "", + "enforce_privacy_tooltip" => "", + "fax" => "", + "file_perm" => "There are problems with file permissions please fix and reload this page.", + "financial_year" => "", + "financial_year_apr" => "", + "financial_year_aug" => "", + "financial_year_dec" => "", + "financial_year_feb" => "", + "financial_year_jan" => "", + "financial_year_jul" => "", + "financial_year_jun" => "", + "financial_year_mar" => "", + "financial_year_may" => "", + "financial_year_nov" => "", + "financial_year_oct" => "", + "financial_year_sep" => "", + "floating_labels" => "", + "gcaptcha_enable" => "", + "gcaptcha_secret_key" => "", + "gcaptcha_secret_key_required" => "", + "gcaptcha_site_key" => "", + "gcaptcha_site_key_required" => "", + "gcaptcha_tooltip" => "", + "general" => "", + "general_configuration" => "", + "giftcard_number" => "", + "giftcard_random" => "", + "giftcard_series" => "", + "image_allowed_file_types" => "", + "image_max_height_tooltip" => "", + "image_max_size_tooltip" => "", + "image_max_width_tooltip" => "", + "image_restrictions" => "", + "include_hsn" => "", + "info" => "", + "info_configuration" => "", + "input_groups" => "", + "integrations" => "", + "integrations_configuration" => "", + "invoice" => "", + "invoice_configuration" => "", + "invoice_default_comments" => "", + "invoice_email_message" => "", + "invoice_enable" => "", + "invoice_printer" => "", + "invoice_type" => "", + "is_readable" => "", + "is_writable" => "is writable, but the permissions are higher than 750.", + "item_markup" => "", + "jsprintsetup_required" => "", + "language" => "", + "last_used_invoice_number" => "", + "last_used_quote_number" => "", + "last_used_work_order_number" => "", + "left" => "", + "license" => "", + "license_configuration" => "", + "line_sequence" => "", + "lines_per_page" => "", + "lines_per_page_number" => "", + "lines_per_page_required" => "", + "locale" => "", + "locale_configuration" => "", + "locale_info" => "", + "location" => "", + "location_configuration" => "", + "location_info" => "", + "login_form" => "", + "logout" => "", + "mailchimp" => "", + "mailchimp_api_key" => "", + "mailchimp_configuration" => "", + "mailchimp_key_successfully" => "", + "mailchimp_key_unsuccessfully" => "", + "mailchimp_lists" => "", + "mailchimp_tooltip" => "", + "message" => "", + "message_configuration" => "", + "msg_msg" => "", + "msg_msg_placeholder" => "", + "msg_pwd" => "", + "msg_pwd_required" => "", + "msg_src" => "", + "msg_src_required" => "", + "msg_uid" => "", + "msg_uid_required" => "", + "multi_pack_enabled" => "", + "no_risk" => "No security/vulnerability risks.", + "none" => "", + "notify_alignment" => "", + "number_format" => "", + "number_locale" => "", + "number_locale_invalid" => "", + "number_locale_required" => "", + "number_locale_tooltip" => "", + "os_timezone" => "", + "ospos_info" => "", + "payment_options_order" => "", + "perm_risk" => "Permissions higher than 750 leaves this software at risk.", + "phone" => "", + "phone_required" => "", + "print_bottom_margin" => "", + "print_bottom_margin_number" => "", + "print_bottom_margin_required" => "", + "print_delay_autoreturn" => "", + "print_delay_autoreturn_number" => "", + "print_delay_autoreturn_required" => "", + "print_footer" => "", + "print_header" => "", + "print_left_margin" => "", + "print_left_margin_number" => "", + "print_left_margin_required" => "", + "print_receipt_check_behaviour" => "", + "print_receipt_check_behaviour_always" => "", + "print_receipt_check_behaviour_last" => "", + "print_receipt_check_behaviour_never" => "", + "print_right_margin" => "", + "print_right_margin_number" => "", + "print_right_margin_required" => "", + "print_silently" => "", + "print_top_margin" => "", + "print_top_margin_number" => "", + "print_top_margin_required" => "", + "quantity_decimals" => "", + "quick_cash_enable" => "", + "quote_default_comments" => "", + "receipt" => "", + "receipt_category" => "", + "receipt_configuration" => "", + "receipt_default" => "", + "receipt_font_size" => "", + "receipt_font_size_number" => "", + "receipt_font_size_required" => "", + "receipt_info" => "", + "receipt_printer" => "", + "receipt_short" => "", + "receipt_show_company_name" => "", + "receipt_show_description" => "", + "receipt_show_serialnumber" => "", + "receipt_show_tax_ind" => "", + "receipt_show_taxes" => "", + "receipt_show_total_discount" => "", + "receipt_template" => "", + "receiving_calculate_average_price" => "", + "recv_invoice_format" => "", + "register_mode_default" => "", + "report_an_issue" => "", + "return_policy_required" => "", + "reward" => "", + "reward_configuration" => "", + "right" => "", + "sales_invoice_format" => "", + "sales_quote_format" => "", + "saved_successfully" => "", + "saved_unsuccessfully" => "", + "security_issue" => "Security Vulnerability Warning", + "server_notice" => "Please use the below info for issue reporting.", + "service_charge" => "", + "show_due_enable" => "", + "show_office_group" => "", + "statistics" => "", + "statistics_tooltip" => "", + "stock_location" => "", + "stock_location_duplicate" => "", + "stock_location_invalid_chars" => "", + "stock_location_required" => "", + "suggestions_fifth_column" => "", + "suggestions_first_column" => "", + "suggestions_fourth_column" => "", + "suggestions_layout" => "", + "suggestions_second_column" => "", + "suggestions_third_column" => "", + "system_conf" => "Setup & Conf", + "system_info" => "System Info", + "table" => "", + "table_configuration" => "", + "takings_printer" => "", + "tax" => "", + "tax_category" => "", + "tax_category_duplicate" => "", + "tax_category_invalid_chars" => "", + "tax_category_required" => "", + "tax_category_used" => "", + "tax_configuration" => "", + "tax_decimals" => "", + "tax_id" => "", + "tax_included" => "", + "theme" => "", + "theme_preview" => "", + "thousands_separator" => "", + "timezone" => "", + "timezone_error" => "", + "top" => "", + "use_destination_based_tax" => "", + "user_timezone" => "", + "website" => "", + "wholesale_markup" => "", + "work_order_enable" => "", + "work_order_format" => "", ]; diff --git a/app/Language/el/Customers.php b/app/Language/el/Customers.php index 88c67ff25..f74c9c7ee 100644 --- a/app/Language/el/Customers.php +++ b/app/Language/el/Customers.php @@ -1,56 +1,56 @@ "", - "account_number_duplicate" => "", - "available_points" => "Διαθέσιμοι Πόντοι", - "available_points_value" => "", - "average" => "", - "avg_discount" => "", - "basic_information" => "", - "cannot_be_deleted" => "", - "company_name" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "consent" => "", - "consent_required" => "", - "csv_import_failed" => "", - "csv_import_nodata_wrongformat" => "", - "csv_import_partially_failed" => "", - "csv_import_success" => "", - "customer" => "", - "date" => "", - "discount" => "", - "discount_fixed" => "", - "discount_percent" => "", - "discount_type" => "", - "email_duplicate" => "", - "employee" => "", - "error_adding_updating" => "", - "import_items_csv" => "", - "mailchimp_activity_click" => "", - "mailchimp_activity_lastopen" => "", - "mailchimp_activity_open" => "", - "mailchimp_activity_total" => "", - "mailchimp_activity_unopen" => "", - "mailchimp_email_client" => "", - "mailchimp_info" => "", - "mailchimp_member_rating" => "", - "mailchimp_status" => "", - "mailchimp_vip" => "", - "max" => "", - "min" => "", - "new" => "", - "none_selected" => "", - "one_or_multiple" => "", - "quantity" => "", - "stats_info" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "tax_code" => "", - "tax_id" => "", - "taxable" => "", - "total" => "", - "update" => "", - "rewards_package" => "", + "account_number" => "", + "account_number_duplicate" => "", + "available_points" => "Διαθέσιμοι Πόντοι", + "available_points_value" => "", + "average" => "", + "avg_discount" => "", + "basic_information" => "", + "cannot_be_deleted" => "", + "company_name" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "consent" => "", + "consent_required" => "", + "csv_import_failed" => "", + "csv_import_nodata_wrongformat" => "", + "csv_import_partially_failed" => "", + "csv_import_success" => "", + "customer" => "", + "date" => "", + "discount" => "", + "discount_fixed" => "", + "discount_percent" => "", + "discount_type" => "", + "email_duplicate" => "", + "employee" => "", + "error_adding_updating" => "", + "import_items_csv" => "", + "mailchimp_activity_click" => "", + "mailchimp_activity_lastopen" => "", + "mailchimp_activity_open" => "", + "mailchimp_activity_total" => "", + "mailchimp_activity_unopen" => "", + "mailchimp_email_client" => "", + "mailchimp_info" => "", + "mailchimp_member_rating" => "", + "mailchimp_status" => "", + "mailchimp_vip" => "", + "max" => "", + "min" => "", + "new" => "", + "none_selected" => "", + "one_or_multiple" => "", + "quantity" => "", + "stats_info" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "tax_code" => "", + "tax_id" => "", + "taxable" => "", + "total" => "", + "update" => "", + "rewards_package" => "", ]; diff --git a/app/Language/el/Datepicker.php b/app/Language/el/Datepicker.php index e8be7a6c0..7c8e18902 100644 --- a/app/Language/el/Datepicker.php +++ b/app/Language/el/Datepicker.php @@ -1,23 +1,23 @@ "", - "apply" => "", - "cancel" => "", - "custom" => "", - "from" => "", - "last_30" => "", - "last_7" => "", - "last_financial_year" => "", - "last_month" => "", - "last_year" => "", - "same_month_last_year" => "", - "same_month_to_same_day_last_year" => "", - "this_financial_year" => "", - "this_month" => "", - "this_year" => "", - "to" => "", - "today" => "", - "today_last_year" => "", - "weekstart" => "", - "yesterday" => "", + "all_time" => "", + "apply" => "", + "cancel" => "", + "custom" => "", + "from" => "", + "last_30" => "", + "last_7" => "", + "last_financial_year" => "", + "last_month" => "", + "last_year" => "", + "same_month_last_year" => "", + "same_month_to_same_day_last_year" => "", + "this_financial_year" => "", + "this_month" => "", + "this_year" => "", + "to" => "", + "today" => "", + "today_last_year" => "", + "weekstart" => "", + "yesterday" => "", ]; diff --git a/app/Language/el/Employees.php b/app/Language/el/Employees.php index 6f597ab5b..5aa444ff4 100644 --- a/app/Language/el/Employees.php +++ b/app/Language/el/Employees.php @@ -1,44 +1,44 @@ "", - "basic_information" => "", - "cannot_be_deleted" => "", - "change_employee" => "", - "change_password" => "", - "clerk" => "", - "commission" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "current_password" => "", - "current_password_invalid" => "", - "employee" => "", - "error_adding_updating" => "", - "error_deleting_demo_admin" => "", - "error_updating_demo_admin" => "", - "language" => "", - "login_info" => "", - "manager" => "", - "new" => "", - "none_selected" => "", - "one_or_multiple" => "", - "password" => "", - "password_minlength" => "", - "password_must_match" => "", - "password_not_must_match" => "", - "password_required" => "", - "permission_desc" => "", - "permission_info" => "", - "repeat_password" => "", - "subpermission_required" => "", - "successful_adding" => "", - "successful_change_password" => "", - "successful_deleted" => "", - "successful_updating" => "", - "system_language" => "", - "unsuccessful_change_password" => "", - "update" => "", - "username" => "", - "username_duplicate" => "", - "username_minlength" => "", - "username_required" => "", + "administrator" => "", + "basic_information" => "", + "cannot_be_deleted" => "", + "change_employee" => "", + "change_password" => "", + "clerk" => "", + "commission" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "current_password" => "", + "current_password_invalid" => "", + "employee" => "", + "error_adding_updating" => "", + "error_deleting_demo_admin" => "", + "error_updating_demo_admin" => "", + "language" => "", + "login_info" => "", + "manager" => "", + "new" => "", + "none_selected" => "", + "one_or_multiple" => "", + "password" => "", + "password_minlength" => "", + "password_must_match" => "", + "password_not_must_match" => "", + "password_required" => "", + "permission_desc" => "", + "permission_info" => "", + "repeat_password" => "", + "subpermission_required" => "", + "successful_adding" => "", + "successful_change_password" => "", + "successful_deleted" => "", + "successful_updating" => "", + "system_language" => "", + "unsuccessful_change_password" => "", + "update" => "", + "username" => "", + "username_duplicate" => "", + "username_minlength" => "", + "username_required" => "", ]; diff --git a/app/Language/el/Enum.php b/app/Language/el/Enum.php index c39655c3b..1ed7e9313 100644 --- a/app/Language/el/Enum.php +++ b/app/Language/el/Enum.php @@ -1,10 +1,10 @@ "", - "half_even" => "", - "half_five" => "", - "half_odd" => "", - "half_up" => "", - "round_down" => "", - "round_up" => "", + "half_down" => "", + "half_even" => "", + "half_five" => "", + "half_odd" => "", + "half_up" => "", + "round_down" => "", + "round_up" => "", ]; diff --git a/app/Language/el/Error.php b/app/Language/el/Error.php index 6134ea59a..ae85a3b54 100644 --- a/app/Language/el/Error.php +++ b/app/Language/el/Error.php @@ -1,5 +1,5 @@ "", - "unknown" => "", + "no_permission_module" => "", + "unknown" => "", ]; diff --git a/app/Language/el/Expenses.php b/app/Language/el/Expenses.php index e9e237376..8ef1fe954 100644 --- a/app/Language/el/Expenses.php +++ b/app/Language/el/Expenses.php @@ -1,50 +1,50 @@ "", - "amount" => "", - "amount_number" => "", - "amount_required" => "", - "by_category" => "", - "cannot_be_deleted" => "", - "cash" => "", - "cash_filter" => "", - "categories_name" => "", - "category_required" => "", - "check" => "", - "check_filter" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "credit" => "", - "credit_filter" => "", - "date" => "", - "date_number" => "", - "date_required" => "", - "debit" => "", - "debit_filter" => "", - "description" => "", - "due" => "", - "due_filter" => "", - "employee" => "", - "error_adding_updating" => "", - "expense_id" => "", - "expenses_employee" => "", - "info" => "", - "ip_address" => "", - "is_deleted" => "", - "name_required" => "", - "new" => "", - "new_supplier" => "", - "no_expenses_to_display" => "", - "none_selected" => "", - "one_or_multiple" => "", - "payment" => "", - "start_typing_supplier_name" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "supplier_name" => "", - "supplier_tax_code" => "", - "tax_amount" => "", - "tax_amount_number" => "", - "update" => "", + "add_item" => "", + "amount" => "", + "amount_number" => "", + "amount_required" => "", + "by_category" => "", + "cannot_be_deleted" => "", + "cash" => "", + "cash_filter" => "", + "categories_name" => "", + "category_required" => "", + "check" => "", + "check_filter" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "credit" => "", + "credit_filter" => "", + "date" => "", + "date_number" => "", + "date_required" => "", + "debit" => "", + "debit_filter" => "", + "description" => "", + "due" => "", + "due_filter" => "", + "employee" => "", + "error_adding_updating" => "", + "expense_id" => "", + "expenses_employee" => "", + "info" => "", + "ip_address" => "", + "is_deleted" => "", + "name_required" => "", + "new" => "", + "new_supplier" => "", + "no_expenses_to_display" => "", + "none_selected" => "", + "one_or_multiple" => "", + "payment" => "", + "start_typing_supplier_name" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "supplier_name" => "", + "supplier_tax_code" => "", + "tax_amount" => "", + "tax_amount_number" => "", + "update" => "", ]; diff --git a/app/Language/el/Expenses_categories.php b/app/Language/el/Expenses_categories.php index 03169e528..7d3b08c27 100644 --- a/app/Language/el/Expenses_categories.php +++ b/app/Language/el/Expenses_categories.php @@ -1,22 +1,22 @@ "", - "add_item" => "", - "cannot_be_deleted" => "", - "category_id" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "description" => "", - "error_adding_updating" => "", - "info" => "", - "name" => "", - "new" => "", - "no_expenses_categories_to_display" => "", - "none_selected" => "", - "one_or_multiple" => "", - "quantity" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "update" => "", + "category_name_required" => "", + "add_item" => "", + "cannot_be_deleted" => "", + "category_id" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "description" => "", + "error_adding_updating" => "", + "info" => "", + "name" => "", + "new" => "", + "no_expenses_categories_to_display" => "", + "none_selected" => "", + "one_or_multiple" => "", + "quantity" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "update" => "", ]; diff --git a/app/Language/el/Giftcards.php b/app/Language/el/Giftcards.php index f1b1bd322..00d291498 100644 --- a/app/Language/el/Giftcards.php +++ b/app/Language/el/Giftcards.php @@ -1,71 +1,71 @@ "", - "allow_alt_description" => "", - "bulk_edit" => "", - "cannot_be_deleted" => "", - "cannot_find_giftcard" => "", - "cannot_use" => "", - "card_value" => "", - "category" => "", - "change_all_to_allow_alt_desc" => "", - "change_all_to_not_allow_allow_desc" => "", - "change_all_to_serialized" => "", - "change_all_to_unserialized" => "", - "confirm_bulk_edit" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "cost_price" => "", - "count" => "", - "csv_import_failed" => "", - "current_quantity" => "", - "description" => "", - "details_count" => "", - "do_nothing" => "", - "edit_fields_you_want_to_update" => "", - "edit_multiple_giftcards" => "", - "error_adding_updating" => "", - "error_updating_multiple" => "", - "generate_barcodes" => "", - "giftcard" => "", - "giftcard_number" => "", - "info_provided_by" => "", - "inventory_comments" => "", - "is_serialized" => "", - "low_inventory_giftcards" => "", - "manually_editing_of_quantity" => "", - "must_select_giftcard_for_barcode" => "", - "new" => "", - "no_description_giftcards" => "", - "no_giftcards_to_display" => "", - "none" => "", - "none_selected" => "", - "number" => "", - "number_information" => "", - "number_required" => "", - "one_or_multiple" => "", - "person_id" => "", - "quantity" => "", - "quantity_required" => "", - "remaining_balance" => "", - "reorder_level" => "", - "retrive_giftcard_info" => "", - "sales_tax_1" => "", - "sales_tax_2" => "", - "serialized_giftcards" => "", - "successful_adding" => "", - "successful_bulk_edit" => "", - "successful_deleted" => "", - "successful_updating" => "", - "supplier" => "", - "tax_1" => "", - "tax_2" => "", - "tax_percent" => "", - "tax_percents" => "", - "unit_price" => "", - "upc_database" => "", - "update" => "", - "use_inventory_menu" => "", - "value" => "", - "value_required" => "", + "add_minus" => "", + "allow_alt_description" => "", + "bulk_edit" => "", + "cannot_be_deleted" => "", + "cannot_find_giftcard" => "", + "cannot_use" => "", + "card_value" => "", + "category" => "", + "change_all_to_allow_alt_desc" => "", + "change_all_to_not_allow_allow_desc" => "", + "change_all_to_serialized" => "", + "change_all_to_unserialized" => "", + "confirm_bulk_edit" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "cost_price" => "", + "count" => "", + "csv_import_failed" => "", + "current_quantity" => "", + "description" => "", + "details_count" => "", + "do_nothing" => "", + "edit_fields_you_want_to_update" => "", + "edit_multiple_giftcards" => "", + "error_adding_updating" => "", + "error_updating_multiple" => "", + "generate_barcodes" => "", + "giftcard" => "", + "giftcard_number" => "", + "info_provided_by" => "", + "inventory_comments" => "", + "is_serialized" => "", + "low_inventory_giftcards" => "", + "manually_editing_of_quantity" => "", + "must_select_giftcard_for_barcode" => "", + "new" => "", + "no_description_giftcards" => "", + "no_giftcards_to_display" => "", + "none" => "", + "none_selected" => "", + "number" => "", + "number_information" => "", + "number_required" => "", + "one_or_multiple" => "", + "person_id" => "", + "quantity" => "", + "quantity_required" => "", + "remaining_balance" => "", + "reorder_level" => "", + "retrive_giftcard_info" => "", + "sales_tax_1" => "", + "sales_tax_2" => "", + "serialized_giftcards" => "", + "successful_adding" => "", + "successful_bulk_edit" => "", + "successful_deleted" => "", + "successful_updating" => "", + "supplier" => "", + "tax_1" => "", + "tax_2" => "", + "tax_percent" => "", + "tax_percents" => "", + "unit_price" => "", + "upc_database" => "", + "update" => "", + "use_inventory_menu" => "", + "value" => "", + "value_required" => "", ]; diff --git a/app/Language/el/Item_kits.php b/app/Language/el/Item_kits.php index 2f21a4963..370929649 100644 --- a/app/Language/el/Item_kits.php +++ b/app/Language/el/Item_kits.php @@ -1,41 +1,41 @@ "", - "all" => "", - "cannot_be_deleted" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "description" => "", - "discount" => "", - "discount_fixed" => "", - "discount_percent" => "", - "discount_type" => "", - "error_adding_updating" => "", - "find_kit_item" => "", - "info" => "", - "item" => "", - "item_kit_number" => "", - "item_kit_number_duplicate" => "", - "item_number" => "", - "item_number_duplicate" => "", - "items" => "", - "kit" => "", - "kit_and_components" => "", - "kit_and_stock" => "", - "kit_only" => "", - "name" => "", - "new" => "", - "no_item_kits_to_display" => "", - "none_selected" => "", - "one_or_multiple" => "", - "price_option" => "", - "priced_only" => "", - "print_option" => "", - "quantity" => "", - "sequence" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "unit_price" => "", - "update" => "", + "add_item" => "", + "all" => "", + "cannot_be_deleted" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "description" => "", + "discount" => "", + "discount_fixed" => "", + "discount_percent" => "", + "discount_type" => "", + "error_adding_updating" => "", + "find_kit_item" => "", + "info" => "", + "item" => "", + "item_kit_number" => "", + "item_kit_number_duplicate" => "", + "item_number" => "", + "item_number_duplicate" => "", + "items" => "", + "kit" => "", + "kit_and_components" => "", + "kit_and_stock" => "", + "kit_only" => "", + "name" => "", + "new" => "", + "no_item_kits_to_display" => "", + "none_selected" => "", + "one_or_multiple" => "", + "price_option" => "", + "priced_only" => "", + "print_option" => "", + "quantity" => "", + "sequence" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "unit_price" => "", + "update" => "", ]; diff --git a/app/Language/el/Items.php b/app/Language/el/Items.php index 9718385d0..25c0395e0 100644 --- a/app/Language/el/Items.php +++ b/app/Language/el/Items.php @@ -1,120 +1,120 @@ "", - "allow_alt_description" => "", - "amount_entry" => "", - "bulk_edit" => "", - "buy_price_required" => "", - "cannot_be_deleted" => "", - "cannot_find_item" => "", - "categories" => "", - "category" => "", - "category_new" => "", - "category_required" => "", - "change_all_to_allow_alt_desc" => "", - "change_all_to_not_allow_allow_desc" => "", - "change_all_to_serialized" => "", - "change_all_to_unserialized" => "", - "change_image" => "", - "confirm_bulk_edit" => "", - "confirm_bulk_edit_wipe_taxes" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "cost_price" => "", - "cost_price_number" => "", - "cost_price_required" => "", - "count" => "", - "csv_import_failed" => "", - "csv_import_nodata_wrongformat" => "", - "csv_import_partially_failed" => "", - "csv_import_success" => "", - "current_quantity" => "", - "default_pack_name" => "", - "description" => "", - "details_count" => "", - "do_nothing" => "", - "edit" => "", - "edit_fields_you_want_to_update" => "", - "edit_multiple_items" => "", - "empty_upc_items" => "", - "error_adding_updating" => "", - "error_updating_multiple" => "", - "generate_barcodes" => "", - "hsn_code" => "", - "image" => "", - "import_items_csv" => "", - "info_provided_by" => "", - "inventory" => "", - "inventory_CSV_import_quantity" => "", - "inventory_comments" => "", - "inventory_data_tracking" => "", - "inventory_date" => "", - "inventory_employee" => "", - "inventory_in_out_quantity" => "", - "inventory_remarks" => "", - "is_deleted" => "", - "is_printed" => "", - "is_serialized" => "", - "item" => "", - "item_id" => "", - "item_number" => "", - "item_number_duplicate" => "", - "kit" => "", - "location" => "", - "low_inventory_items" => "", - "low_sell_item" => "", - "manually_editing_of_quantity" => "", - "markup" => "", - "name" => "", - "name_required" => "", - "new" => "", - "no_description_items" => "", - "no_items_to_display" => "", - "none" => "", - "none_selected" => "", - "nonstock" => "", - "number_information" => "", - "number_required" => "", - "one_or_multiple" => "", - "pack_name" => "", - "qty_per_pack" => "", - "quantity" => "", - "quantity_number" => "", - "quantity_required" => "", - "receiving_quantity" => "", - "remove_image" => "", - "reorder_level" => "", - "reorder_level_number" => "", - "reorder_level_required" => "", - "retrive_item_info" => "", - "sales_tax_1" => "", - "sales_tax_2" => "", - "search_attributes" => "", - "select_image" => "", - "serialized_items" => "", - "standard" => "", - "stock" => "", - "stock_location" => "", - "stock_type" => "", - "successful_adding" => "", - "successful_bulk_edit" => "", - "successful_deleted" => "", - "successful_updating" => "", - "supplier" => "", - "tax_1" => "", - "tax_2" => "", - "tax_3" => "", - "tax_category" => "", - "tax_percent" => "", - "tax_percent_number" => "", - "tax_percent_required" => "", - "tax_percents" => "", - "temp" => "", - "type" => "", - "unit_price" => "", - "unit_price_number" => "", - "unit_price_required" => "", - "upc_database" => "", - "update" => "", - "use_inventory_menu" => "", + "add_minus" => "", + "allow_alt_description" => "", + "amount_entry" => "", + "bulk_edit" => "", + "buy_price_required" => "", + "cannot_be_deleted" => "", + "cannot_find_item" => "", + "categories" => "", + "category" => "", + "category_new" => "", + "category_required" => "", + "change_all_to_allow_alt_desc" => "", + "change_all_to_not_allow_allow_desc" => "", + "change_all_to_serialized" => "", + "change_all_to_unserialized" => "", + "change_image" => "", + "confirm_bulk_edit" => "", + "confirm_bulk_edit_wipe_taxes" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "cost_price" => "", + "cost_price_number" => "", + "cost_price_required" => "", + "count" => "", + "csv_import_failed" => "", + "csv_import_nodata_wrongformat" => "", + "csv_import_partially_failed" => "", + "csv_import_success" => "", + "current_quantity" => "", + "default_pack_name" => "", + "description" => "", + "details_count" => "", + "do_nothing" => "", + "edit" => "", + "edit_fields_you_want_to_update" => "", + "edit_multiple_items" => "", + "empty_upc_items" => "", + "error_adding_updating" => "", + "error_updating_multiple" => "", + "generate_barcodes" => "", + "hsn_code" => "", + "image" => "", + "import_items_csv" => "", + "info_provided_by" => "", + "inventory" => "", + "inventory_CSV_import_quantity" => "", + "inventory_comments" => "", + "inventory_data_tracking" => "", + "inventory_date" => "", + "inventory_employee" => "", + "inventory_in_out_quantity" => "", + "inventory_remarks" => "", + "is_deleted" => "", + "is_printed" => "", + "is_serialized" => "", + "item" => "", + "item_id" => "", + "item_number" => "", + "item_number_duplicate" => "", + "kit" => "", + "location" => "", + "low_inventory_items" => "", + "low_sell_item" => "", + "manually_editing_of_quantity" => "", + "markup" => "", + "name" => "", + "name_required" => "", + "new" => "", + "no_description_items" => "", + "no_items_to_display" => "", + "none" => "", + "none_selected" => "", + "nonstock" => "", + "number_information" => "", + "number_required" => "", + "one_or_multiple" => "", + "pack_name" => "", + "qty_per_pack" => "", + "quantity" => "", + "quantity_number" => "", + "quantity_required" => "", + "receiving_quantity" => "", + "remove_image" => "", + "reorder_level" => "", + "reorder_level_number" => "", + "reorder_level_required" => "", + "retrive_item_info" => "", + "sales_tax_1" => "", + "sales_tax_2" => "", + "search_attributes" => "", + "select_image" => "", + "serialized_items" => "", + "standard" => "", + "stock" => "", + "stock_location" => "", + "stock_type" => "", + "successful_adding" => "", + "successful_bulk_edit" => "", + "successful_deleted" => "", + "successful_updating" => "", + "supplier" => "", + "tax_1" => "", + "tax_2" => "", + "tax_3" => "", + "tax_category" => "", + "tax_percent" => "", + "tax_percent_number" => "", + "tax_percent_required" => "", + "tax_percents" => "", + "temp" => "", + "type" => "", + "unit_price" => "", + "unit_price_number" => "", + "unit_price_required" => "", + "upc_database" => "", + "update" => "", + "use_inventory_menu" => "", ]; diff --git a/app/Language/el/Login.php b/app/Language/el/Login.php index 4a73810c7..2a18ca41d 100644 --- a/app/Language/el/Login.php +++ b/app/Language/el/Login.php @@ -1,15 +1,15 @@ "", - "go" => "", - "invalid_gcaptcha" => "", - "invalid_installation" => "", - "invalid_username_and_password" => "", - "login" => "", - "logout" => "", - "migration_needed" => "", - "password" => "", - "required_username" => "", - "username" => "", - "welcome" => "", + "gcaptcha" => "", + "go" => "", + "invalid_gcaptcha" => "", + "invalid_installation" => "", + "invalid_username_and_password" => "", + "login" => "", + "logout" => "", + "migration_needed" => "", + "password" => "", + "required_username" => "", + "username" => "", + "welcome" => "", ]; diff --git a/app/Language/el/Messages.php b/app/Language/el/Messages.php index ce3a2e233..3079da504 100644 --- a/app/Language/el/Messages.php +++ b/app/Language/el/Messages.php @@ -1,15 +1,15 @@ "", - "last_name" => "", - "message" => "", - "message_placeholder" => "", - "message_required" => "", - "multiple_phones" => "", - "phone" => "", - "phone_number_required" => "", - "phone_placeholder" => "", - "sms_send" => "", - "successfully_sent" => "", - "unsuccessfully_sent" => "", + "first_name" => "", + "last_name" => "", + "message" => "", + "message_placeholder" => "", + "message_required" => "", + "multiple_phones" => "", + "phone" => "", + "phone_number_required" => "", + "phone_placeholder" => "", + "sms_send" => "", + "successfully_sent" => "", + "unsuccessfully_sent" => "", ]; diff --git a/app/Language/el/Module.php b/app/Language/el/Module.php index f2ad04586..fb277bc95 100644 --- a/app/Language/el/Module.php +++ b/app/Language/el/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "", - "attributes_desc" => "", - "both" => "", - "cashups" => "", - "cashups_desc" => "", - "config" => "", - "config_desc" => "", - "customers" => "", - "customers_desc" => "", - "employees" => "", - "employees_desc" => "", - "expenses" => "", - "expenses_categories" => "", - "expenses_categories_desc" => "", - "expenses_desc" => "", - "giftcards" => "", - "giftcards_desc" => "", - "home" => "", - "home_desc" => "", - "item_kits" => "", - "item_kits_desc" => "", - "items" => "", - "items_desc" => "", - "messages" => "", - "messages_desc" => "", - "migrate" => "", - "migrate_desc" => "", - "office" => "", - "office_desc" => "", - "receivings" => "", - "receivings_desc" => "", - "reports" => "", - "reports_desc" => "", - "sales" => "", - "sales_desc" => "", - "suppliers" => "", - "suppliers_desc" => "", - "taxes" => "", - "taxes_desc" => "", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "", + "attributes_desc" => "", + "both" => "", + "cashups" => "", + "cashups_desc" => "", + "config" => "", + "config_desc" => "", + "customers" => "", + "customers_desc" => "", + "employees" => "", + "employees_desc" => "", + "expenses" => "", + "expenses_categories" => "", + "expenses_categories_desc" => "", + "expenses_desc" => "", + "giftcards" => "", + "giftcards_desc" => "", + "home" => "", + "home_desc" => "", + "item_kits" => "", + "item_kits_desc" => "", + "items" => "", + "items_desc" => "", + "messages" => "", + "messages_desc" => "", + "migrate" => "", + "migrate_desc" => "", + "office" => "", + "office_desc" => "", + "receivings" => "", + "receivings_desc" => "", + "reports" => "", + "reports_desc" => "", + "sales" => "", + "sales_desc" => "", + "suppliers" => "", + "suppliers_desc" => "", + "taxes" => "", + "taxes_desc" => "", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/el/Receivings.php b/app/Language/el/Receivings.php index 6e66026e1..2c4ecec36 100644 --- a/app/Language/el/Receivings.php +++ b/app/Language/el/Receivings.php @@ -1,58 +1,58 @@ "", - "cancel_receiving" => "Ακύρωση", - "cannot_be_deleted" => "Αποτυχία διαγραφής Παραλαβής/ων.", - "comments" => "Σχόλια", - "complete_receiving" => "Ολοκλήρωση", - "confirm_cancel_receiving" => "Είστε σίγουροι πως θέλετε να διαγράψετε την παραλαβή? Όλα τα είδη θα διαγραφούν.", - "confirm_delete" => "Είστε σίγουροι πως θέλετε να διαγράψετε την παραλαβή? Η ενέργεια αυτή δεν μπορεί να ανακληθεί.", - "confirm_finish_receiving" => "Είστε σίγουροι πως θέλετε να υποβάλετε την παραλαβή? Αυτό δεν μπορεί να ανακαλεστεί.", - "confirm_restore" => "", - "cost" => "Κόστος", - "daily" => "", - "date" => "Ημερομηνία Παραλαβής", - "date_required" => "Πρέπει να εισαχθεί μια έγκυρη ημερομηνία.", - "date_type" => "Η Ημερομηνία είναι απαραίτητο πεδίο.", - "delete_entire_sale" => "Διαγραφή Ολόκληρης Πώλησης", - "discount" => "Έκπτωση", - "edit" => "Τροποποίηση", - "edit_sale" => "Τροποποίηση Παραλαβής", - "employee" => "Υπάλληλος", - "error_editing_item" => "Τροποποίηση είδους ανεπιτυχής.", - "error_requisition" => "Αδυναμία μετακίνησης αποθέματος από ή στην ίδια τοποθεσία αποθέματος.", - "find_or_scan_item" => "Εύρεση ή Σκανάρισμα Είδους", - "find_or_scan_item_or_receipt" => "Εύρεση ή Σκανάρισμα Είδους ή Απόδειξης", - "id" => "ID Παραλαβής", - "item_name" => "Όνομα Είδους", - "mode" => "Τρόπος Παραλαβής", - "new_supplier" => "Νέος Προμηθευτής", - "one_or_multiple" => "παραλαβή/ες", - "print_after_sale" => "Εκτύπωση μετά Πώλησης", - "quantity" => "Ποσ.", - "receipt" => "Απόδειξη Παραλαβών", - "receipt_number" => "Παραλαβή #", - "receiving" => "Παρέλαβε", - "reference" => "Παραπομπή", - "register" => "Παραλαβή Ειδών", - "requisition" => "Εντολή", - "return" => "Επιστροφή", - "select_supplier" => "Επιλογή Προμηθευτή (Προαιρετικό)", - "ship_pack" => "Δέμα Μεταφοράς", - "start_typing_supplier_name" => "Πληκτρολογήστε το όνομα του Προμηθευτή...", - "stock" => "Απόθεμα", - "stock_destination" => "Προορισμός Αποθέματος", - "stock_locaiton" => "Τοποθεσία Αποθέματος", - "stock_source" => "Προέλευση Αποθέματος", - "successfully_deleted" => "Έχετε διαγράψει επιτυχώς", - "successfully_updated" => "Επιτυχής ενημέρωση Παραλαβής", - "supplier" => "Προμηθευτής", - "supplier_address" => "Διεύθυνση", - "supplier_email" => "Ηλεκτρονικό Ταχυδρομείο", - "supplier_location" => "Τοποθεσία", - "total" => "Σύνολο", - "transaction_failed" => "Συναλλαγές παραλαβής/ων ανεπιτυχής.", - "unable_to_add_item" => "Ανεπιτυχής προσθήκη Είδους στην Παραλαβή.", - "unsuccessfully_updated" => "Ανεπιτυχής ενημέρωση Παραλαβής.", - "update" => "Ενημέρωση", + "amount_due" => "", + "cancel_receiving" => "Ακύρωση", + "cannot_be_deleted" => "Αποτυχία διαγραφής Παραλαβής/ων.", + "comments" => "Σχόλια", + "complete_receiving" => "Ολοκλήρωση", + "confirm_cancel_receiving" => "Είστε σίγουροι πως θέλετε να διαγράψετε την παραλαβή? Όλα τα είδη θα διαγραφούν.", + "confirm_delete" => "Είστε σίγουροι πως θέλετε να διαγράψετε την παραλαβή? Η ενέργεια αυτή δεν μπορεί να ανακληθεί.", + "confirm_finish_receiving" => "Είστε σίγουροι πως θέλετε να υποβάλετε την παραλαβή? Αυτό δεν μπορεί να ανακαλεστεί.", + "confirm_restore" => "", + "cost" => "Κόστος", + "daily" => "", + "date" => "Ημερομηνία Παραλαβής", + "date_required" => "Πρέπει να εισαχθεί μια έγκυρη ημερομηνία.", + "date_type" => "Η Ημερομηνία είναι απαραίτητο πεδίο.", + "delete_entire_sale" => "Διαγραφή Ολόκληρης Πώλησης", + "discount" => "Έκπτωση", + "edit" => "Τροποποίηση", + "edit_sale" => "Τροποποίηση Παραλαβής", + "employee" => "Υπάλληλος", + "error_editing_item" => "Τροποποίηση είδους ανεπιτυχής.", + "error_requisition" => "Αδυναμία μετακίνησης αποθέματος από ή στην ίδια τοποθεσία αποθέματος.", + "find_or_scan_item" => "Εύρεση ή Σκανάρισμα Είδους", + "find_or_scan_item_or_receipt" => "Εύρεση ή Σκανάρισμα Είδους ή Απόδειξης", + "id" => "ID Παραλαβής", + "item_name" => "Όνομα Είδους", + "mode" => "Τρόπος Παραλαβής", + "new_supplier" => "Νέος Προμηθευτής", + "one_or_multiple" => "παραλαβή/ες", + "print_after_sale" => "Εκτύπωση μετά Πώλησης", + "quantity" => "Ποσ.", + "receipt" => "Απόδειξη Παραλαβών", + "receipt_number" => "Παραλαβή #", + "receiving" => "Παρέλαβε", + "reference" => "Παραπομπή", + "register" => "Παραλαβή Ειδών", + "requisition" => "Εντολή", + "return" => "Επιστροφή", + "select_supplier" => "Επιλογή Προμηθευτή (Προαιρετικό)", + "ship_pack" => "Δέμα Μεταφοράς", + "start_typing_supplier_name" => "Πληκτρολογήστε το όνομα του Προμηθευτή...", + "stock" => "Απόθεμα", + "stock_destination" => "Προορισμός Αποθέματος", + "stock_locaiton" => "Τοποθεσία Αποθέματος", + "stock_source" => "Προέλευση Αποθέματος", + "successfully_deleted" => "Έχετε διαγράψει επιτυχώς", + "successfully_updated" => "Επιτυχής ενημέρωση Παραλαβής", + "supplier" => "Προμηθευτής", + "supplier_address" => "Διεύθυνση", + "supplier_email" => "Ηλεκτρονικό Ταχυδρομείο", + "supplier_location" => "Τοποθεσία", + "total" => "Σύνολο", + "transaction_failed" => "Συναλλαγές παραλαβής/ων ανεπιτυχής.", + "unable_to_add_item" => "Ανεπιτυχής προσθήκη Είδους στην Παραλαβή.", + "unsuccessfully_updated" => "Ανεπιτυχής ενημέρωση Παραλαβής.", + "update" => "Ενημέρωση", ]; diff --git a/app/Language/el/Reports.php b/app/Language/el/Reports.php index c8f0dcce9..cde8daff6 100644 --- a/app/Language/el/Reports.php +++ b/app/Language/el/Reports.php @@ -1,148 +1,148 @@ "", - "authority" => "", - "canceled" => "", - "categories" => "", - "categories_summary_report" => "", - "category" => "", - "code_canceled" => "", - "code_invoice" => "", - "code_pos" => "", - "code_quote" => "", - "code_return" => "", - "code_type" => "", - "code_work_order" => "", - "comments" => "", - "commission" => "", - "complete" => "", - "completed_sales" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "cost" => "", - "cost_price" => "", - "count" => "", - "customer" => "", - "customers" => "", - "customers_summary_report" => "", - "date" => "", - "date_range" => "", - "description" => "", - "detailed_receivings_report" => "", - "detailed_receivings_report_input" => "", - "detailed_reports" => "", - "detailed_requisition_report" => "", - "detailed_sales_report" => "", - "discount" => "", - "discount_fixed" => "", - "discount_percent" => "", - "discount_type" => "", - "discounts" => "", - "discounts_summary_report" => "", - "earned" => "", - "employee" => "", - "employees" => "", - "employees_summary_report" => "", - "expenses" => "", - "expenses_amount" => "", - "expenses_categories" => "", - "expenses_categories_summary_report" => "", - "expenses_category" => "", - "expenses_payment_amount" => "", - "expenses_tax_amount" => "", - "expenses_total_amount" => "", - "expenses_total_tax_amount" => "", - "graphical_reports" => "", - "inventory" => "", - "inventory_low" => "", - "inventory_low_report" => "", - "inventory_reports" => "", - "inventory_summary" => "", - "inventory_summary_report" => "", - "item" => "", - "item_count" => "", - "item_name" => "", - "item_number" => "", - "items" => "", - "items_purchased" => "", - "items_received" => "", - "items_summary_report" => "", - "jurisdiction" => "", - "low_inventory" => "", - "low_inventory_report" => "", - "low_sell_quantity" => "", - "more_than_zero" => "", - "name" => "", - "no_reports_to_display" => "", - "payment_type" => "", - "payments" => "", - "payments_summary_report" => "", - "profit" => "", - "quantity" => "", - "quantity_purchased" => "", - "quotes" => "", - "received_by" => "", - "receiving_id" => "", - "receiving_type" => "", - "receivings" => "", - "reorder_level" => "", - "report" => "", - "report_input" => "", - "reports" => "", - "requisition" => "", - "requisition_by" => "", - "requisition_id" => "", - "requisition_item" => "", - "requisition_item_quantity" => "", - "requisition_related_item" => "", - "requisition_related_item_total_quantity" => "", - "requisition_related_item_unit_quantity" => "", - "requisitions" => "", - "returns" => "", - "revenue" => "", - "sale_id" => "", - "sale_type" => "", - "sales" => "", - "sales_amount" => "", - "sales_summary_report" => "", - "sales_taxes" => "", - "sales_taxes_summary_report" => "", - "serial_number" => "", - "service_charge" => "", - "sold_by" => "", - "sold_items" => "", - "sold_to" => "", - "stock_location" => "", - "sub_total_value" => "", - "subtotal" => "", - "summary_reports" => "", - "supplied_by" => "", - "supplier" => "", - "suppliers" => "", - "suppliers_summary_report" => "", - "tax" => "", - "tax_category" => "", - "tax_name" => "", - "tax_percent" => "", - "tax_rate" => "", - "taxes" => "", - "taxes_summary_report" => "", - "total" => "", - "total_inventory_value" => "", - "total_low_sell_quantity" => "", - "total_quantity" => "", - "total_retail" => "", - "trans_amount" => "", - "trans_due" => "", - "trans_group" => "", - "trans_nopay_sales" => "", - "trans_payments" => "", - "trans_refunded" => "", - "trans_sales" => "", - "trans_type" => "", - "type" => "", - "unit_price" => "", - "used" => "", - "work_orders" => "", - "zero_and_less" => "", + "all" => "", + "authority" => "", + "canceled" => "", + "categories" => "", + "categories_summary_report" => "", + "category" => "", + "code_canceled" => "", + "code_invoice" => "", + "code_pos" => "", + "code_quote" => "", + "code_return" => "", + "code_type" => "", + "code_work_order" => "", + "comments" => "", + "commission" => "", + "complete" => "", + "completed_sales" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "cost" => "", + "cost_price" => "", + "count" => "", + "customer" => "", + "customers" => "", + "customers_summary_report" => "", + "date" => "", + "date_range" => "", + "description" => "", + "detailed_receivings_report" => "", + "detailed_receivings_report_input" => "", + "detailed_reports" => "", + "detailed_requisition_report" => "", + "detailed_sales_report" => "", + "discount" => "", + "discount_fixed" => "", + "discount_percent" => "", + "discount_type" => "", + "discounts" => "", + "discounts_summary_report" => "", + "earned" => "", + "employee" => "", + "employees" => "", + "employees_summary_report" => "", + "expenses" => "", + "expenses_amount" => "", + "expenses_categories" => "", + "expenses_categories_summary_report" => "", + "expenses_category" => "", + "expenses_payment_amount" => "", + "expenses_tax_amount" => "", + "expenses_total_amount" => "", + "expenses_total_tax_amount" => "", + "graphical_reports" => "", + "inventory" => "", + "inventory_low" => "", + "inventory_low_report" => "", + "inventory_reports" => "", + "inventory_summary" => "", + "inventory_summary_report" => "", + "item" => "", + "item_count" => "", + "item_name" => "", + "item_number" => "", + "items" => "", + "items_purchased" => "", + "items_received" => "", + "items_summary_report" => "", + "jurisdiction" => "", + "low_inventory" => "", + "low_inventory_report" => "", + "low_sell_quantity" => "", + "more_than_zero" => "", + "name" => "", + "no_reports_to_display" => "", + "payment_type" => "", + "payments" => "", + "payments_summary_report" => "", + "profit" => "", + "quantity" => "", + "quantity_purchased" => "", + "quotes" => "", + "received_by" => "", + "receiving_id" => "", + "receiving_type" => "", + "receivings" => "", + "reorder_level" => "", + "report" => "", + "report_input" => "", + "reports" => "", + "requisition" => "", + "requisition_by" => "", + "requisition_id" => "", + "requisition_item" => "", + "requisition_item_quantity" => "", + "requisition_related_item" => "", + "requisition_related_item_total_quantity" => "", + "requisition_related_item_unit_quantity" => "", + "requisitions" => "", + "returns" => "", + "revenue" => "", + "sale_id" => "", + "sale_type" => "", + "sales" => "", + "sales_amount" => "", + "sales_summary_report" => "", + "sales_taxes" => "", + "sales_taxes_summary_report" => "", + "serial_number" => "", + "service_charge" => "", + "sold_by" => "", + "sold_items" => "", + "sold_to" => "", + "stock_location" => "", + "sub_total_value" => "", + "subtotal" => "", + "summary_reports" => "", + "supplied_by" => "", + "supplier" => "", + "suppliers" => "", + "suppliers_summary_report" => "", + "tax" => "", + "tax_category" => "", + "tax_name" => "", + "tax_percent" => "", + "tax_rate" => "", + "taxes" => "", + "taxes_summary_report" => "", + "total" => "", + "total_inventory_value" => "", + "total_low_sell_quantity" => "", + "total_quantity" => "", + "total_retail" => "", + "trans_amount" => "", + "trans_due" => "", + "trans_group" => "", + "trans_nopay_sales" => "", + "trans_payments" => "", + "trans_refunded" => "", + "trans_sales" => "", + "trans_type" => "", + "type" => "", + "unit_price" => "", + "used" => "", + "work_orders" => "", + "zero_and_less" => "", ]; diff --git a/app/Language/el/Sales.php b/app/Language/el/Sales.php index 3c20ff2b1..1d14a848f 100644 --- a/app/Language/el/Sales.php +++ b/app/Language/el/Sales.php @@ -1,224 +1,224 @@ "Διαθέσιμοι Πόντοι", - "rewards_package" => "Ανταμοιβές", - "rewards_remaining_balance" => "Η αξία των υπολειπόμενων πόντων ανταμοιβής είναι ", - "account_number" => "Λογαριασμός #", - "add_payment" => "Προσθήκη Πληρωμής", - "amount_due" => "Ποσό επιστροφής", - "amount_tendered" => "Ποσό Είσπραξης", - "authorized_signature" => "Εγκεκριμένη Υπογραφή", - "cancel_sale" => "Ακύρωση", - "cash" => "Μετρητά", - "cash_1" => "", - "cash_2" => "", - "cash_3" => "", - "cash_4" => "", - "cash_adjustment" => "", - "cash_deposit" => "Προκαταβολή Μετρητών", - "cash_filter" => "Μετρητά", - "change_due" => "Ποσό Επιστροφής", - "change_price" => "", - "check" => "Επιταγή", - "check_balance" => "Υπόλοιπο Επιταγής", - "check_filter" => "Επιταγή", - "close" => "", - "comment" => "Σχόλιο", - "comments" => "Σχόλια", - "company_name" => "", - "complete" => "", - "complete_sale" => "Ολοκλήρωση", - "confirm_cancel_sale" => "Είστε σίγουροι πως θέλετε να ακυρώσετε την συναλλαγή? Όλα τα είδη θα χαθούν.", - "confirm_delete" => "Είστε σίγουροι πως θέλετε να διαγράψετε την/τις επιλεγμένες Πωλήσεις?", - "confirm_restore" => "Είστε σίγουροι πως θέλετε να επαναφέρετε την/τις επιλεγμένες Πωλήσεις?", - "credit" => "Πιστωτική Κάρτα", - "credit_deposit" => "Ποσό Πίστωσης", - "credit_filter" => "", - "current_table" => "", - "customer" => "Όνομα", - "customer_address" => "Διεύθυνση", - "customer_discount" => "Έκπτωση", - "customer_email" => "Διεύθυνση ηλεκτρονικού ταχυδρομείου", - "customer_location" => "Τοποθεσία", - "customer_mailchimp_status" => "Κατάσταση Mailchimp", - "customer_optional" => "(Απαραίτητο για πληρωμές επί Πιστώσει)", - "customer_required" => "(Απαραίτητο)", - "customer_total" => "Σύνολο", - "customer_total_spent" => "", - "daily_sales" => "", - "date" => "Ημερομηνία Πώλησης", - "date_range" => "Εύρος Ημερομηνιών", - "date_required" => "Πρέπει να εισάγετε μια σωστή ημερομηνία.", - "date_type" => "Ημερομηνία είναι απαραίτητο πεδίο.", - "debit" => "Χρεωστική Κάρτα", - "debit_filter" => "", - "delete" => "Επιτρέπεται Διαγραφή", - "delete_confirmation" => "Είστε σίγουροι πως θέλετε να διαγράψετε την πώληση? Η διαγραφή δε αναιρείται.", - "delete_entire_sale" => "Διαγραφή Ολόκληρης Πώλησης", - "delete_successful" => "Διαγραφή Πώλησης επιτυχής.", - "delete_unsuccessful" => "Αποτυχία διαγραφής Πώλησης.", - "description_abbrv" => "Περιγρ.", - "discard" => "Απόρριψη", - "discard_quote" => "", - "discount" => "Έκπτ.", - "discount_included" => "% Έκπτωσης", - "discount_short" => "%", - "due" => "Πρέπει να πληρωθεί", - "due_filter" => "Πρέπει να πληρωθεί", - "edit" => "Επεξεργασία", - "edit_item" => "Επεξεργασία είδους", - "edit_sale" => "Επεξεργασία Πώλησης", - "email_receipt" => "Απόδειξη Ηλεκτρονικού Ταχυδρομείου", - "employee" => "Υπάλληλος", - "entry" => "Εγγραφή", - "error_editing_item" => "Σφάλμα επεξεργασίας είδους", - "find_or_scan_item" => "Εύρεση ή Σκανάρισμα Είδους", - "find_or_scan_item_or_receipt" => "Εύρεση ή Σκανάρισμα είδους ή Απόδειξης", - "giftcard" => "Δωροκάρτα", - "giftcard_balance" => "Υπόλοιπο Δωροκάρτας", - "giftcard_filter" => "", - "giftcard_number" => "Αριθμός Δωροκάρτας", - "group_by_category" => "Ομαδοποίηση ανά Κατηγορία", - "group_by_type" => "Ομαδοποίηση ανά Είδος", - "hsn" => "HSN", - "id" => "ID Πώλησης", - "include_prices" => "Συμπερίληψη Τιμών?", - "invoice" => "Τιμολόγιο", - "invoice_confirm" => "Το τιμολόγιο θα αποσταλεί σε", - "invoice_enable" => "Δημιουργία Τιμολογίου", - "invoice_filter" => "Τιμολόγια", - "invoice_no_email" => "Ο Πελάτης δεν έχει έγκυρο λογαριασμό ταχυδρομείου.", - "invoice_number" => "Τιμολόγιο #", - "invoice_number_duplicate" => "Ο Αριθμός Τιμολογίου πρέπει να είναι μοναδικός.", - "invoice_sent" => "Το Τιμολόγιο απεστάλη σε", - "invoice_total" => "Σύνολο Τιμολογίου", - "invoice_type_custom_invoice" => "Προσαρμοσμένο Τιμολόγιο (custom_invoice.php)", - "invoice_type_custom_tax_invoice" => "Προσαρμοσμένο Φορολογικό Τιμολόγιο (custom_tax_invoice.php)", - "invoice_type_invoice" => "Τιμολόγιο (invoice.php)", - "invoice_type_tax_invoice" => "Φορολογικό Τιμολόγιο (tax_invoice.php)", - "invoice_unsent" => "Ανεπιτυχής αποστολή Τιμολογίου σε", - "invoice_update" => "Επαναμέτρηση", - "item_insufficient_of_stock" => "Το είδος έχει ανεπαρκή απόθεμα.", - "item_name" => "Όνομα Είδους", - "item_number" => "# Είδους", - "item_out_of_stock" => "Το είδος δεν υπάρχει σε απόθεμα.", - "key_browser" => "", - "key_cancel" => "Cancels Current Quote/Invoice/Sale", - "key_customer_search" => "Customer Search", - "key_finish_quote" => "Finish Quote/Invoice witdout payment", - "key_finish_sale" => "Add Payment and Complete Invoice/Sale", - "key_full" => "", - "key_function" => "Function", - "key_help" => "Shortcuts", - "key_help_modal" => "Open Shortcuts Window", - "key_in" => "", - "key_item_search" => "Item Search", - "key_out" => "", - "key_payment" => "Add Payment", - "key_print" => "", - "key_restore" => "", - "key_search" => "", - "key_suspend" => "Suspend Current Sale", - "key_suspended" => "Show Suspended Sales", - "key_system" => "", - "key_tendered" => "Edit Amount Tendered", - "key_title" => "Sales Keyboard Shortcuts", - "mc" => "", - "mode" => "Λειτουργία Ταμείου", - "must_enter_numeric" => "Το Ποσό Είσπραξης πρέπει να είναι Αριθμός.", - "must_enter_numeric_giftcard" => "Ο Αριθμός της Δωροκάρτας πρέπει να είναι αριθμός.", - "new_customer" => "Νέος Πελάτης", - "new_item" => "Νέο Είδος", - "no_description" => "Δεν έχει περιγραφή", - "no_filter" => "Όλα", - "no_items_in_cart" => "Δεν υπάρχουν είδη στο καλάθι.", - "no_sales_to_display" => "Δεν υπάρχουν Πωλήσεις προς προβολή.", - "none_selected" => "Δεν έχετε επιλέξει Πώληση/σεις για διαγραφή.", - "nontaxed_ind" => "", - "not_authorized" => "Αυτή η ενέργεια δεν είναι εξουσιοδοτημένη.", - "one_or_multiple" => "Πώληση/εις", - "payment" => "Τύπος Πληρωμής", - "payment_amount" => "Ποσό", - "payment_not_cover_total" => "Το Ποσό πρέπει να είναι μεγαλύτερο ή ίσο του Συνόλου.", - "payment_type" => "Τύπος", - "payments" => "", - "payments_total" => "Συνολικό Ποσό", - "price" => "Τιμή", - "print_after_sale" => "Εκτύπωση μετά την Πώληση", - "quantity" => "Ποσότητα", - "quantity_less_than_reorder_level" => "Προσοχή: Επιθυμητή Ποσότητα είναι λιγότερη από την τιμή Επαναπαραγγελίας για το είδος.", - "quantity_less_than_zero" => "Προσοχή: Επιθυμητή Ποσότητα είναι ανεπαρκής. Μπορείτε να επεξεργαστείτε την πώληση, αλλά ελέγξτε το απόθεμα.", - "quantity_of_items" => "Ποσότητα των {0} Ειδών", - "quote" => "Παράθεση", - "quote_number" => "Αριθμός Παράθεσης", - "quote_number_duplicate" => "Ο Αριθμός Παράθεσης πρέπει να είναι μοναδικός.", - "quote_sent" => "Η Παράθεση απεστάλη σε", - "quote_unsent" => "Αποτυχία αποστολής Παράθεσης σε", - "receipt" => "Απόδειξη Πώλησης", - "receipt_no_email" => "Ο πελάτης δεν έχει έγκυρη διεύθυνση ηλεκτρονικού ταχυδρομείου.", - "receipt_number" => "Πώληση #", - "receipt_sent" => "Η Απόδειξη εστάλη σε", - "receipt_unsent" => "Αποτυχία αποστολής Απόδειξης σε", - "refund" => "", - "register" => "Μητρώο Πωλήσεων", - "remove_customer" => "Αφαίρεση Πελάτη", - "remove_discount" => "", - "return" => "Επιστροφή", - "rewards" => "Πόντοι Ανταμοιβής", - "rewards_balance" => "Υπόλοιπο Πόντων Ανταμοιβής", - "sale" => "Πώληση", - "sale_by_invoice" => "Πώληση ανά Τιμολόγιο", - "sale_for_customer" => "Πελάτης:", - "sale_time" => "Ώρα", - "sales_tax" => "Φόρος Πώλησης", - "sales_total" => "", - "select_customer" => "Επιλογή Πελάτη", - "send_invoice" => "Αποστολή Τιμολογίου", - "send_quote" => "Αποστολή Παράθεσης", - "send_receipt" => "Αποστολή Απόδειξης", - "send_work_order" => "Αποστολή Εντολής Εργασίας", - "serial" => "Σειριακός", - "service_charge" => "", - "show_due" => "", - "show_invoice" => "Εμφάνιση Τιμολογίου", - "show_receipt" => "Εμφάνιση Απόδειξης", - "start_typing_customer_name" => "Πληκτρολογήστε τις λεπτομέρειες πελάτη...", - "start_typing_item_name" => "Πληκτρολογήστε το είδος ή σκανάρετε το Barcode...", - "stock" => "Απόθεμα", - "stock_location" => "Τοποθεσία Αποθέματος", - "sub_total" => "Υποσύνολο", - "successfully_deleted" => "Έχετε διαγράψει επιτυχώς", - "successfully_restored" => "Έχετε επαναφέρει επιτυχώς", - "successfully_suspended_sale" => "Αναμονή Πώλησης επιτυχής.", - "successfully_updated" => "Ενημέρωση Πώλησης επιτυχής.", - "suspend_sale" => "Αναμονή", - "suspended_doc_id" => "Έγγραφο", - "suspended_sale_id" => "ID", - "suspended_sales" => "Ανεστάλη", - "table" => "Πίνακας", - "takings" => "Ημερήσιες Πωλήσεις", - "tax" => "Φόρος", - "tax_id" => "Id Φόρου", - "tax_invoice" => "Φόρος τιμολογίου", - "tax_percent" => "% Φόρου", - "taxed_ind" => "", - "total" => "Σύνολο", - "total_tax_exclusive" => "Εξαιρουμένου Φόρου", - "transaction_failed" => "Συναλλαγή Πώλησης απέτυχε.", - "unable_to_add_item" => "Προσθήκη είδους στην Πώληση απέτυχε", - "unsuccessfully_deleted" => "Διαγραφή Πώλησης/εων απέτυχε.", - "unsuccessfully_restored" => "Επαναφορά Πώλησης/εων απέτυχε.", - "unsuccessfully_suspended_sale" => "Αναμονή Πώλησης απέτυχε.", - "unsuccessfully_updated" => "Ενημέρωση πώλησης απέτυχε.", - "unsuspend" => "Επαναφορά από Αναμονή", - "unsuspend_and_delete" => "Ενέργεια", - "update" => "Ενημέρωση", - "upi" => "UPI", - "visa" => "", - "wholesale" => "", - "work_order" => "Παραγγελία Εργασίας", - "work_order_number" => "Αριθμός Παραγγελίας Εργασίας", - "work_order_number_duplicate" => "Ο Αριθμός της Παραγγελίας Εργασίας πρέπει να είναι μοναδικός.", - "work_order_sent" => "Εντολή Εργασίας απεστάλη σε", - "work_order_unsent" => "Ανεπιτυχής αποστολή Εντολής Εργασίας", + "customers_available_points" => "Διαθέσιμοι Πόντοι", + "rewards_package" => "Ανταμοιβές", + "rewards_remaining_balance" => "Η αξία των υπολειπόμενων πόντων ανταμοιβής είναι ", + "account_number" => "Λογαριασμός #", + "add_payment" => "Προσθήκη Πληρωμής", + "amount_due" => "Ποσό επιστροφής", + "amount_tendered" => "Ποσό Είσπραξης", + "authorized_signature" => "Εγκεκριμένη Υπογραφή", + "cancel_sale" => "Ακύρωση", + "cash" => "Μετρητά", + "cash_1" => "", + "cash_2" => "", + "cash_3" => "", + "cash_4" => "", + "cash_adjustment" => "", + "cash_deposit" => "Προκαταβολή Μετρητών", + "cash_filter" => "Μετρητά", + "change_due" => "Ποσό Επιστροφής", + "change_price" => "", + "check" => "Επιταγή", + "check_balance" => "Υπόλοιπο Επιταγής", + "check_filter" => "Επιταγή", + "close" => "", + "comment" => "Σχόλιο", + "comments" => "Σχόλια", + "company_name" => "", + "complete" => "", + "complete_sale" => "Ολοκλήρωση", + "confirm_cancel_sale" => "Είστε σίγουροι πως θέλετε να ακυρώσετε την συναλλαγή? Όλα τα είδη θα χαθούν.", + "confirm_delete" => "Είστε σίγουροι πως θέλετε να διαγράψετε την/τις επιλεγμένες Πωλήσεις?", + "confirm_restore" => "Είστε σίγουροι πως θέλετε να επαναφέρετε την/τις επιλεγμένες Πωλήσεις?", + "credit" => "Πιστωτική Κάρτα", + "credit_deposit" => "Ποσό Πίστωσης", + "credit_filter" => "", + "current_table" => "", + "customer" => "Όνομα", + "customer_address" => "Διεύθυνση", + "customer_discount" => "Έκπτωση", + "customer_email" => "Διεύθυνση ηλεκτρονικού ταχυδρομείου", + "customer_location" => "Τοποθεσία", + "customer_mailchimp_status" => "Κατάσταση Mailchimp", + "customer_optional" => "(Απαραίτητο για πληρωμές επί Πιστώσει)", + "customer_required" => "(Απαραίτητο)", + "customer_total" => "Σύνολο", + "customer_total_spent" => "", + "daily_sales" => "", + "date" => "Ημερομηνία Πώλησης", + "date_range" => "Εύρος Ημερομηνιών", + "date_required" => "Πρέπει να εισάγετε μια σωστή ημερομηνία.", + "date_type" => "Ημερομηνία είναι απαραίτητο πεδίο.", + "debit" => "Χρεωστική Κάρτα", + "debit_filter" => "", + "delete" => "Επιτρέπεται Διαγραφή", + "delete_confirmation" => "Είστε σίγουροι πως θέλετε να διαγράψετε την πώληση? Η διαγραφή δε αναιρείται.", + "delete_entire_sale" => "Διαγραφή Ολόκληρης Πώλησης", + "delete_successful" => "Διαγραφή Πώλησης επιτυχής.", + "delete_unsuccessful" => "Αποτυχία διαγραφής Πώλησης.", + "description_abbrv" => "Περιγρ.", + "discard" => "Απόρριψη", + "discard_quote" => "", + "discount" => "Έκπτ.", + "discount_included" => "% Έκπτωσης", + "discount_short" => "%", + "due" => "Πρέπει να πληρωθεί", + "due_filter" => "Πρέπει να πληρωθεί", + "edit" => "Επεξεργασία", + "edit_item" => "Επεξεργασία είδους", + "edit_sale" => "Επεξεργασία Πώλησης", + "email_receipt" => "Απόδειξη Ηλεκτρονικού Ταχυδρομείου", + "employee" => "Υπάλληλος", + "entry" => "Εγγραφή", + "error_editing_item" => "Σφάλμα επεξεργασίας είδους", + "find_or_scan_item" => "Εύρεση ή Σκανάρισμα Είδους", + "find_or_scan_item_or_receipt" => "Εύρεση ή Σκανάρισμα είδους ή Απόδειξης", + "giftcard" => "Δωροκάρτα", + "giftcard_balance" => "Υπόλοιπο Δωροκάρτας", + "giftcard_filter" => "", + "giftcard_number" => "Αριθμός Δωροκάρτας", + "group_by_category" => "Ομαδοποίηση ανά Κατηγορία", + "group_by_type" => "Ομαδοποίηση ανά Είδος", + "hsn" => "HSN", + "id" => "ID Πώλησης", + "include_prices" => "Συμπερίληψη Τιμών?", + "invoice" => "Τιμολόγιο", + "invoice_confirm" => "Το τιμολόγιο θα αποσταλεί σε", + "invoice_enable" => "Δημιουργία Τιμολογίου", + "invoice_filter" => "Τιμολόγια", + "invoice_no_email" => "Ο Πελάτης δεν έχει έγκυρο λογαριασμό ταχυδρομείου.", + "invoice_number" => "Τιμολόγιο #", + "invoice_number_duplicate" => "Ο Αριθμός Τιμολογίου πρέπει να είναι μοναδικός.", + "invoice_sent" => "Το Τιμολόγιο απεστάλη σε", + "invoice_total" => "Σύνολο Τιμολογίου", + "invoice_type_custom_invoice" => "Προσαρμοσμένο Τιμολόγιο (custom_invoice.php)", + "invoice_type_custom_tax_invoice" => "Προσαρμοσμένο Φορολογικό Τιμολόγιο (custom_tax_invoice.php)", + "invoice_type_invoice" => "Τιμολόγιο (invoice.php)", + "invoice_type_tax_invoice" => "Φορολογικό Τιμολόγιο (tax_invoice.php)", + "invoice_unsent" => "Ανεπιτυχής αποστολή Τιμολογίου σε", + "invoice_update" => "Επαναμέτρηση", + "item_insufficient_of_stock" => "Το είδος έχει ανεπαρκή απόθεμα.", + "item_name" => "Όνομα Είδους", + "item_number" => "# Είδους", + "item_out_of_stock" => "Το είδος δεν υπάρχει σε απόθεμα.", + "key_browser" => "", + "key_cancel" => "Cancels Current Quote/Invoice/Sale", + "key_customer_search" => "Customer Search", + "key_finish_quote" => "Finish Quote/Invoice witdout payment", + "key_finish_sale" => "Add Payment and Complete Invoice/Sale", + "key_full" => "", + "key_function" => "Function", + "key_help" => "Shortcuts", + "key_help_modal" => "Open Shortcuts Window", + "key_in" => "", + "key_item_search" => "Item Search", + "key_out" => "", + "key_payment" => "Add Payment", + "key_print" => "", + "key_restore" => "", + "key_search" => "", + "key_suspend" => "Suspend Current Sale", + "key_suspended" => "Show Suspended Sales", + "key_system" => "", + "key_tendered" => "Edit Amount Tendered", + "key_title" => "Sales Keyboard Shortcuts", + "mc" => "", + "mode" => "Λειτουργία Ταμείου", + "must_enter_numeric" => "Το Ποσό Είσπραξης πρέπει να είναι Αριθμός.", + "must_enter_numeric_giftcard" => "Ο Αριθμός της Δωροκάρτας πρέπει να είναι αριθμός.", + "new_customer" => "Νέος Πελάτης", + "new_item" => "Νέο Είδος", + "no_description" => "Δεν έχει περιγραφή", + "no_filter" => "Όλα", + "no_items_in_cart" => "Δεν υπάρχουν είδη στο καλάθι.", + "no_sales_to_display" => "Δεν υπάρχουν Πωλήσεις προς προβολή.", + "none_selected" => "Δεν έχετε επιλέξει Πώληση/σεις για διαγραφή.", + "nontaxed_ind" => "", + "not_authorized" => "Αυτή η ενέργεια δεν είναι εξουσιοδοτημένη.", + "one_or_multiple" => "Πώληση/εις", + "payment" => "Τύπος Πληρωμής", + "payment_amount" => "Ποσό", + "payment_not_cover_total" => "Το Ποσό πρέπει να είναι μεγαλύτερο ή ίσο του Συνόλου.", + "payment_type" => "Τύπος", + "payments" => "", + "payments_total" => "Συνολικό Ποσό", + "price" => "Τιμή", + "print_after_sale" => "Εκτύπωση μετά την Πώληση", + "quantity" => "Ποσότητα", + "quantity_less_than_reorder_level" => "Προσοχή: Επιθυμητή Ποσότητα είναι λιγότερη από την τιμή Επαναπαραγγελίας για το είδος.", + "quantity_less_than_zero" => "Προσοχή: Επιθυμητή Ποσότητα είναι ανεπαρκής. Μπορείτε να επεξεργαστείτε την πώληση, αλλά ελέγξτε το απόθεμα.", + "quantity_of_items" => "Ποσότητα των {0} Ειδών", + "quote" => "Παράθεση", + "quote_number" => "Αριθμός Παράθεσης", + "quote_number_duplicate" => "Ο Αριθμός Παράθεσης πρέπει να είναι μοναδικός.", + "quote_sent" => "Η Παράθεση απεστάλη σε", + "quote_unsent" => "Αποτυχία αποστολής Παράθεσης σε", + "receipt" => "Απόδειξη Πώλησης", + "receipt_no_email" => "Ο πελάτης δεν έχει έγκυρη διεύθυνση ηλεκτρονικού ταχυδρομείου.", + "receipt_number" => "Πώληση #", + "receipt_sent" => "Η Απόδειξη εστάλη σε", + "receipt_unsent" => "Αποτυχία αποστολής Απόδειξης σε", + "refund" => "", + "register" => "Μητρώο Πωλήσεων", + "remove_customer" => "Αφαίρεση Πελάτη", + "remove_discount" => "", + "return" => "Επιστροφή", + "rewards" => "Πόντοι Ανταμοιβής", + "rewards_balance" => "Υπόλοιπο Πόντων Ανταμοιβής", + "sale" => "Πώληση", + "sale_by_invoice" => "Πώληση ανά Τιμολόγιο", + "sale_for_customer" => "Πελάτης:", + "sale_time" => "Ώρα", + "sales_tax" => "Φόρος Πώλησης", + "sales_total" => "", + "select_customer" => "Επιλογή Πελάτη", + "send_invoice" => "Αποστολή Τιμολογίου", + "send_quote" => "Αποστολή Παράθεσης", + "send_receipt" => "Αποστολή Απόδειξης", + "send_work_order" => "Αποστολή Εντολής Εργασίας", + "serial" => "Σειριακός", + "service_charge" => "", + "show_due" => "", + "show_invoice" => "Εμφάνιση Τιμολογίου", + "show_receipt" => "Εμφάνιση Απόδειξης", + "start_typing_customer_name" => "Πληκτρολογήστε τις λεπτομέρειες πελάτη...", + "start_typing_item_name" => "Πληκτρολογήστε το είδος ή σκανάρετε το Barcode...", + "stock" => "Απόθεμα", + "stock_location" => "Τοποθεσία Αποθέματος", + "sub_total" => "Υποσύνολο", + "successfully_deleted" => "Έχετε διαγράψει επιτυχώς", + "successfully_restored" => "Έχετε επαναφέρει επιτυχώς", + "successfully_suspended_sale" => "Αναμονή Πώλησης επιτυχής.", + "successfully_updated" => "Ενημέρωση Πώλησης επιτυχής.", + "suspend_sale" => "Αναμονή", + "suspended_doc_id" => "Έγγραφο", + "suspended_sale_id" => "ID", + "suspended_sales" => "Ανεστάλη", + "table" => "Πίνακας", + "takings" => "Ημερήσιες Πωλήσεις", + "tax" => "Φόρος", + "tax_id" => "Id Φόρου", + "tax_invoice" => "Φόρος τιμολογίου", + "tax_percent" => "% Φόρου", + "taxed_ind" => "", + "total" => "Σύνολο", + "total_tax_exclusive" => "Εξαιρουμένου Φόρου", + "transaction_failed" => "Συναλλαγή Πώλησης απέτυχε.", + "unable_to_add_item" => "Προσθήκη είδους στην Πώληση απέτυχε", + "unsuccessfully_deleted" => "Διαγραφή Πώλησης/εων απέτυχε.", + "unsuccessfully_restored" => "Επαναφορά Πώλησης/εων απέτυχε.", + "unsuccessfully_suspended_sale" => "Αναμονή Πώλησης απέτυχε.", + "unsuccessfully_updated" => "Ενημέρωση πώλησης απέτυχε.", + "unsuspend" => "Επαναφορά από Αναμονή", + "unsuspend_and_delete" => "Ενέργεια", + "update" => "Ενημέρωση", + "upi" => "UPI", + "visa" => "", + "wholesale" => "", + "work_order" => "Παραγγελία Εργασίας", + "work_order_number" => "Αριθμός Παραγγελίας Εργασίας", + "work_order_number_duplicate" => "Ο Αριθμός της Παραγγελίας Εργασίας πρέπει να είναι μοναδικός.", + "work_order_sent" => "Εντολή Εργασίας απεστάλη σε", + "work_order_unsent" => "Ανεπιτυχής αποστολή Εντολής Εργασίας", ]; diff --git a/app/Language/el/Suppliers.php b/app/Language/el/Suppliers.php index 194b114b8..e942537cf 100644 --- a/app/Language/el/Suppliers.php +++ b/app/Language/el/Suppliers.php @@ -1,24 +1,24 @@ "Αριθμός Λογαριασμού", - "agency_name" => "Όνομα Πρακτορείου", - "cannot_be_deleted" => "Αδυναμία διαγραφής Προμηθευτή/ων. Ένας οι περισσότεροι έχουν Πωλήσεις.", - "category" => "Κατηγορία", - "company_name" => "Όνομα Εταιρείας", - "company_name_required" => "Όνομα Εταιρείας είναι απαραίτητο πεδίο.", - "confirm_delete" => "Είστε σίγουροι πως θέλετε να διαγράψετε τον/τους επιλεγμένο/ους Προμηθευτή/ες?", - "confirm_restore" => "Είστε σίγουροι πως θέλετε να επαναφέρετε το/τους επιλεγμένο/ους Προμηθευτή/ες?", - "cost" => "Κόστος Προμηθευτή", - "error_adding_updating" => "Ανεπιτυχής προσθήκη ή ενημέρωση Προμηθευτή.", - "goods" => "Προμηθευτής εμπορευμάτων", - "new" => "Νέος Προμηθευτής", - "none_selected" => "Δεν έχετε επιλέξει Προμηθευτή/ες προς διαγραφή.", - "one_or_multiple" => "Προμηθευτής/ες", - "successful_adding" => "Προσθήκη Προμηθευτή επιτυχής", - "successful_deleted" => "Έχετε διαγράψει επιτυχώς", - "successful_updating" => "Έχετε ενημερώσει επιτυχώς τον Προμηθευτή", - "supplier" => "Προμηθευτής", - "supplier_id" => "Id", - "tax_id" => "Id Φόρου", - "update" => "Ενημέρωση Προμηθευτή", + "account_number" => "Αριθμός Λογαριασμού", + "agency_name" => "Όνομα Πρακτορείου", + "cannot_be_deleted" => "Αδυναμία διαγραφής Προμηθευτή/ων. Ένας οι περισσότεροι έχουν Πωλήσεις.", + "category" => "Κατηγορία", + "company_name" => "Όνομα Εταιρείας", + "company_name_required" => "Όνομα Εταιρείας είναι απαραίτητο πεδίο.", + "confirm_delete" => "Είστε σίγουροι πως θέλετε να διαγράψετε τον/τους επιλεγμένο/ους Προμηθευτή/ες?", + "confirm_restore" => "Είστε σίγουροι πως θέλετε να επαναφέρετε το/τους επιλεγμένο/ους Προμηθευτή/ες?", + "cost" => "Κόστος Προμηθευτή", + "error_adding_updating" => "Ανεπιτυχής προσθήκη ή ενημέρωση Προμηθευτή.", + "goods" => "Προμηθευτής εμπορευμάτων", + "new" => "Νέος Προμηθευτής", + "none_selected" => "Δεν έχετε επιλέξει Προμηθευτή/ες προς διαγραφή.", + "one_or_multiple" => "Προμηθευτής/ες", + "successful_adding" => "Προσθήκη Προμηθευτή επιτυχής", + "successful_deleted" => "Έχετε διαγράψει επιτυχώς", + "successful_updating" => "Έχετε ενημερώσει επιτυχώς τον Προμηθευτή", + "supplier" => "Προμηθευτής", + "supplier_id" => "Id", + "tax_id" => "Id Φόρου", + "update" => "Ενημέρωση Προμηθευτή", ]; diff --git a/app/Language/el/Taxes.php b/app/Language/el/Taxes.php index 6ae3d5b76..691ff9bb3 100644 --- a/app/Language/el/Taxes.php +++ b/app/Language/el/Taxes.php @@ -1,82 +1,82 @@ "", - "cascade" => "", - "cascade_sequence" => "", - "city" => "", - "code" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "default_tax_category" => "", - "default_tax_rate" => "", - "error_adding_updating" => "", - "group_seq" => "", - "jurisdiction_name" => "", - "name" => "", - "new" => "", - "no_taxes" => "", - "no_taxes_to_display" => "", - "reporting_authority" => "", - "round_half_down" => "", - "round_half_even" => "", - "round_half_odd" => "", - "round_half_up" => "", - "rounding_code" => "", - "sales_tax" => "", - "sales_tax_by_invoice" => "", - "sequence" => "", - "state" => "", - "successful_deleted" => "", - "tax_categories" => "", - "tax_categories_configuration" => "", - "tax_categories_saved_successfully" => "", - "tax_categories_saved_unsuccessfully" => "", - "tax_category" => "", - "tax_category_code" => "", - "tax_category_duplicate" => "", - "tax_category_invalid_chars" => "", - "tax_category_name" => "", - "tax_category_new" => "", - "tax_category_required" => "", - "tax_code" => "", - "tax_code_cannot_be_deleted" => "", - "tax_code_duplicate" => "", - "tax_code_invalid_chars" => "", - "tax_code_name" => "", - "tax_code_required" => "", - "tax_code_successful_deleted" => "", - "tax_code_successful_updated" => "", - "tax_code_successful_updating" => "", - "tax_code_successfully_added" => "", - "tax_code_type" => "", - "tax_codes" => "", - "tax_codes_configuration" => "", - "tax_codes_saved_successfully" => "", - "tax_codes_saved_unsuccessfully" => "", - "tax_excluded" => "", - "tax_group" => "", - "tax_group_not_unique" => "", - "tax_group_sequence" => "", - "tax_included" => "", - "tax_jurisdiction" => "", - "tax_jurisdiction_duplicate" => "", - "tax_jurisdiction_invalid_chars" => "", - "tax_jurisdiction_required" => "", - "tax_jurisdictions" => "", - "tax_jurisdictions_configuration" => "", - "tax_jurisdictions_saved_successfully" => "", - "tax_jurisdictions_saved_unsuccessfully" => "", - "tax_rate" => "", - "tax_rate_configuration" => "", - "tax_rate_error_adding_updating" => "", - "tax_rate_numeric" => "", - "tax_rate_required" => "", - "tax_rate_successful_updated" => "", - "tax_rate_successfully_added" => "", - "tax_rates" => "", - "tax_rates_configuration" => "", - "tax_rounding" => "", - "tax_type" => "", - "update" => "", - "vat_tax" => "", + "add_exception" => "", + "cascade" => "", + "cascade_sequence" => "", + "city" => "", + "code" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "default_tax_category" => "", + "default_tax_rate" => "", + "error_adding_updating" => "", + "group_seq" => "", + "jurisdiction_name" => "", + "name" => "", + "new" => "", + "no_taxes" => "", + "no_taxes_to_display" => "", + "reporting_authority" => "", + "round_half_down" => "", + "round_half_even" => "", + "round_half_odd" => "", + "round_half_up" => "", + "rounding_code" => "", + "sales_tax" => "", + "sales_tax_by_invoice" => "", + "sequence" => "", + "state" => "", + "successful_deleted" => "", + "tax_categories" => "", + "tax_categories_configuration" => "", + "tax_categories_saved_successfully" => "", + "tax_categories_saved_unsuccessfully" => "", + "tax_category" => "", + "tax_category_code" => "", + "tax_category_duplicate" => "", + "tax_category_invalid_chars" => "", + "tax_category_name" => "", + "tax_category_new" => "", + "tax_category_required" => "", + "tax_code" => "", + "tax_code_cannot_be_deleted" => "", + "tax_code_duplicate" => "", + "tax_code_invalid_chars" => "", + "tax_code_name" => "", + "tax_code_required" => "", + "tax_code_successful_deleted" => "", + "tax_code_successful_updated" => "", + "tax_code_successful_updating" => "", + "tax_code_successfully_added" => "", + "tax_code_type" => "", + "tax_codes" => "", + "tax_codes_configuration" => "", + "tax_codes_saved_successfully" => "", + "tax_codes_saved_unsuccessfully" => "", + "tax_excluded" => "", + "tax_group" => "", + "tax_group_not_unique" => "", + "tax_group_sequence" => "", + "tax_included" => "", + "tax_jurisdiction" => "", + "tax_jurisdiction_duplicate" => "", + "tax_jurisdiction_invalid_chars" => "", + "tax_jurisdiction_required" => "", + "tax_jurisdictions" => "", + "tax_jurisdictions_configuration" => "", + "tax_jurisdictions_saved_successfully" => "", + "tax_jurisdictions_saved_unsuccessfully" => "", + "tax_rate" => "", + "tax_rate_configuration" => "", + "tax_rate_error_adding_updating" => "", + "tax_rate_numeric" => "", + "tax_rate_required" => "", + "tax_rate_successful_updated" => "", + "tax_rate_successfully_added" => "", + "tax_rates" => "", + "tax_rates_configuration" => "", + "tax_rounding" => "", + "tax_type" => "", + "update" => "", + "vat_tax" => "", ]; diff --git a/app/Language/en-GB/Attributes.php b/app/Language/en-GB/Attributes.php index c99b8ff6e..9cd89d1a1 100644 --- a/app/Language/en-GB/Attributes.php +++ b/app/Language/en-GB/Attributes.php @@ -1,32 +1,32 @@ "Attribute value cannot contain '_' or '|'", - "confirm_delete" => "Are you sure you want to delete the selected attribute(s)?", - "confirm_restore" => "Are you sure you want to restore the selected attribute(s)?", - "definition_cannot_be_deleted" => "Could not delete selected attribute(s)", - "definition_error_adding_updating" => "Attribute {0} could not be added or updated. Please check the error log.", - "definition_flags" => "Attribute Visibility", - "definition_group" => "Group", - "definition_id" => "Id", - "definition_name" => "Add Attribute", - "definition_name_required" => "Attribute name is a required field", - "definition_one_or_multiple" => "attribute(s)", - "definition_successful_adding" => "You have successfully added item", - "definition_successful_deleted" => "You have successfully deleted", - "definition_successful_updating" => "You have successfully updated attribute", - "definition_type" => "Attribute Type", - "definition_type_required" => "Attribute type is a required field", - "definition_unit" => "Measurement Unit", - "definition_values" => "Attribute Values", - "new" => "New Attribute", - "no_attributes_to_display" => "No Items to display", - "receipt_visibility" => "Receipt", - "show_in_items" => "Show in items", - "show_in_items_visibility" => "Items", - "show_in_receipt" => "Show in receipt", - "show_in_receivings" => "Show in receivings", - "show_in_receivings_visibility" => "Receivings", - "show_in_sales" => "Show in sales", - "show_in_sales_visibility" => "Sales", - "update" => "Update Attribute", + "attribute_value_invalid_chars" => "Attribute value cannot contain '_' or '|'", + "confirm_delete" => "Are you sure you want to delete the selected attribute(s)?", + "confirm_restore" => "Are you sure you want to restore the selected attribute(s)?", + "definition_cannot_be_deleted" => "Could not delete selected attribute(s)", + "definition_error_adding_updating" => "Attribute {0} could not be added or updated. Please check the error log.", + "definition_flags" => "Attribute Visibility", + "definition_group" => "Group", + "definition_id" => "Id", + "definition_name" => "Add Attribute", + "definition_name_required" => "Attribute name is a required field", + "definition_one_or_multiple" => "attribute(s)", + "definition_successful_adding" => "You have successfully added item", + "definition_successful_deleted" => "You have successfully deleted", + "definition_successful_updating" => "You have successfully updated attribute", + "definition_type" => "Attribute Type", + "definition_type_required" => "Attribute type is a required field", + "definition_unit" => "Measurement Unit", + "definition_values" => "Attribute Values", + "new" => "New Attribute", + "no_attributes_to_display" => "No Items to display", + "receipt_visibility" => "Receipt", + "show_in_items" => "Show in items", + "show_in_items_visibility" => "Items", + "show_in_receipt" => "Show in receipt", + "show_in_receivings" => "Show in receivings", + "show_in_receivings_visibility" => "Receivings", + "show_in_sales" => "Show in sales", + "show_in_sales_visibility" => "Sales", + "update" => "Update Attribute", ]; diff --git a/app/Language/en-GB/Bootstrap_tables.php b/app/Language/en-GB/Bootstrap_tables.php index c817e92f5..86d7a24cf 100644 --- a/app/Language/en-GB/Bootstrap_tables.php +++ b/app/Language/en-GB/Bootstrap_tables.php @@ -1,11 +1,11 @@ "All", - "columns" => "Columns", - "hide_show_pagination" => "Hide/Show pagination", - "loading" => "Loading, please wait...", - "page_from_to" => "Showing {0} to {1} of {2} rows", - "refresh" => "Refresh", - "rows_per_page" => "{0} rows per page", - "toggle" => "Toggle", + "all" => "All", + "columns" => "Columns", + "hide_show_pagination" => "Hide/Show pagination", + "loading" => "Loading, please wait...", + "page_from_to" => "Showing {0} to {1} of {2} rows", + "refresh" => "Refresh", + "rows_per_page" => "{0} rows per page", + "toggle" => "Toggle", ]; diff --git a/app/Language/en-GB/Calendar.php b/app/Language/en-GB/Calendar.php index 2cd099687..05393454f 100644 --- a/app/Language/en-GB/Calendar.php +++ b/app/Language/en-GB/Calendar.php @@ -1,48 +1,48 @@ "Su", - "mo" => "Mo", - "tu" => "Tu", - "we" => "We", - "th" => "Th", - "fr" => "Fr", - "sa" => "Sa", - "sun" => "Sun", - "mon" => "Mon", - "tue" => "Tue", - "wed" => "Wed", - "thu" => "Thu", - "fri" => "Fri", - "sat" => "Sat", - "sunday" => "Sunday", - "monday" => "Monday", - "tuesday" => "Tuesday", - "wednesday" => "Wednesday", - "thursday" => "Thursday", - "friday" => "Friday", - "saturday" => "Saturday", - "jan" => "Jan", - "feb" => "Feb", - "mar" => "Mar", - "apr" => "Apr", - "may" => "May", - "jun" => "Jun", - "jul" => "Jul", - "aug" => "Aug", - "sep" => "Sep", - "oct" => "Oct", - "nov" => "Nov", - "dec" => "Dec", - "january" => "January", - "february" => "February", - "march" => "March", - "april" => "April", - "mayl" => "May", - "june" => "June", - "july" => "July", - "august" => "August", - "september" => "September", - "october" => "October", - "november" => "November", - "december" => "December", + "su" => "Su", + "mo" => "Mo", + "tu" => "Tu", + "we" => "We", + "th" => "Th", + "fr" => "Fr", + "sa" => "Sa", + "sun" => "Sun", + "mon" => "Mon", + "tue" => "Tue", + "wed" => "Wed", + "thu" => "Thu", + "fri" => "Fri", + "sat" => "Sat", + "sunday" => "Sunday", + "monday" => "Monday", + "tuesday" => "Tuesday", + "wednesday" => "Wednesday", + "thursday" => "Thursday", + "friday" => "Friday", + "saturday" => "Saturday", + "jan" => "Jan", + "feb" => "Feb", + "mar" => "Mar", + "apr" => "Apr", + "may" => "May", + "jun" => "Jun", + "jul" => "Jul", + "aug" => "Aug", + "sep" => "Sep", + "oct" => "Oct", + "nov" => "Nov", + "dec" => "Dec", + "january" => "January", + "february" => "February", + "march" => "March", + "april" => "April", + "mayl" => "May", + "june" => "June", + "july" => "July", + "august" => "August", + "september" => "September", + "october" => "October", + "november" => "November", + "december" => "December", ]; diff --git a/app/Language/en-GB/Cashups.php b/app/Language/en-GB/Cashups.php index a452193dd..8bafe3ccb 100644 --- a/app/Language/en-GB/Cashups.php +++ b/app/Language/en-GB/Cashups.php @@ -1,49 +1,49 @@ "Amount", - "amount_number" => "Amount must be a number", - "amount_required" => "Amount is a Required Field.", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "Cashup cannot be deleted", - "cash_difference" => "", - "close_date" => "Close Date", - "close_employee" => "Closed By", - "closed_amount_card" => "Cards", - "closed_amount_cash" => "Closed Cash", - "closed_amount_check" => "Cheques", - "closed_amount_due" => "Dues", - "closed_amount_giftcard" => "", - "closed_amount_total" => "Total", - "closed_date" => "Closed Date", - "confirm_delete" => "Are you sure you want to delete the selected Cashup?", - "confirm_restore" => "Are you sure you want to restore selected Cashup(s)?", - "confirm_submit" => "", - "date_number" => "Date must be a number", - "date_required" => "Date is a required field", - "description" => "Description", - "enable_expected" => "", - "error_adding_updating" => "Error adding/updating Cashup", - "giftcard" => "", - "id" => "Id", - "info" => "Cashups Info", - "info_employee" => "", - "is_deleted" => "Deleted", - "new" => "New Cashup", - "no_cashups_to_display" => "There are no Cashups to display", - "none_selected" => "You have not selected any Cashups", - "note" => "Notes", - "one_or_multiple" => "Cashups(s)", - "open_amount_cash" => "Open Cash", - "open_date" => "Open Date", - "open_employee" => "Opened By", - "opened_date" => "Opened Date", - "successful_adding" => "Cashup add successful", - "successful_deleted" => "Cashup delete successful", - "successful_updating" => "Cashup update successful", - "total" => "Total", - "transfer_amount_cash" => "In/Out Cash", - "transfer_amount_cash_minus" => "", - "update" => "Update Cashup", - "warning" => "", + "amount" => "Amount", + "amount_number" => "Amount must be a number", + "amount_required" => "Amount is a Required Field.", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "Cashup cannot be deleted", + "cash_difference" => "", + "close_date" => "Close Date", + "close_employee" => "Closed By", + "closed_amount_card" => "Cards", + "closed_amount_cash" => "Closed Cash", + "closed_amount_check" => "Cheques", + "closed_amount_due" => "Dues", + "closed_amount_giftcard" => "", + "closed_amount_total" => "Total", + "closed_date" => "Closed Date", + "confirm_delete" => "Are you sure you want to delete the selected Cashup?", + "confirm_restore" => "Are you sure you want to restore selected Cashup(s)?", + "confirm_submit" => "", + "date_number" => "Date must be a number", + "date_required" => "Date is a required field", + "description" => "Description", + "enable_expected" => "", + "error_adding_updating" => "Error adding/updating Cashup", + "giftcard" => "", + "id" => "Id", + "info" => "Cashups Info", + "info_employee" => "", + "is_deleted" => "Deleted", + "new" => "New Cashup", + "no_cashups_to_display" => "There are no Cashups to display", + "none_selected" => "You have not selected any Cashups", + "note" => "Notes", + "one_or_multiple" => "Cashups(s)", + "open_amount_cash" => "Open Cash", + "open_date" => "Open Date", + "open_employee" => "Opened By", + "opened_date" => "Opened Date", + "successful_adding" => "Cashup add successful", + "successful_deleted" => "Cashup delete successful", + "successful_updating" => "Cashup update successful", + "total" => "Total", + "transfer_amount_cash" => "In/Out Cash", + "transfer_amount_cash_minus" => "", + "update" => "Update Cashup", + "warning" => "", ]; diff --git a/app/Language/en-GB/Common.php b/app/Language/en-GB/Common.php index caeca8012..a9377b468 100644 --- a/app/Language/en-GB/Common.php +++ b/app/Language/en-GB/Common.php @@ -1,88 +1,88 @@ "Address 1", - "address_2" => "Address 2", - "admin" => "", - "city" => "City", - "clerk" => "", - "close" => "Close", - "color" => "", - "comments" => "Comments", - "common" => "common", - "confirm_search" => "You have selected one or more rows, these will no longer be selected after your search. Are you sure you want to submit this search?", - "copyrights" => "© 2010 - {0}", - "correct_errors" => "Please correct identified errors before saving", - "country" => "Country", - "dashboard" => "", - "date" => "Date", - "delete" => "Delete", - "det" => "details", - "download_import_template" => "Download Import CSV Template (CSV)", - "edit" => "edit", - "email" => "Email", - "email_invalid_format" => "The email address is not in the correct format.", - "export_csv" => "CSV Export", - "export_csv_no" => "No", - "export_csv_yes" => "Yes", - "fields_required_message" => "Fields in red are required", - "fields_required_message_unique" => "", - "first_name" => "First Name", - "first_name_required" => "First Name is a required field.", - "first_page" => "First", - "gender" => "Gender", - "gender_female" => "F", - "gender_male" => "M", - "gender_undefined" => "", - "icon" => "Icon", - "id" => "ID", - "import" => "Import", - "import_change_file" => "Change", - "import_csv" => "CSV Import", - "import_full_path" => "Full path to CSV file required", - "import_remove_file" => "Remove", - "import_select_file" => "Select file", - "inv" => "inv", - "last_name" => "Last Name", - "last_name_required" => "Last Name is a required field.", - "last_page" => "Last", - "learn_about_project" => "to learn the latest information about the project.", - "list_of" => "List of", - "logo" => "Logo", - "logo_mark" => "Mark", - "logout" => "Log Out", - "manager" => "", - "migration_needed" => "A database migration to {0} will start after login", - "new" => "New", - "no" => "No", - "no_persons_to_display" => "There are no people to display.", - "none_selected_text" => "[Select]", - "or" => "OR", - "people" => "", - "phone_number" => "Phone Number", - "phone_number_required" => "Phone Number is a required field", - "please_visit_my" => "Please visit the", - "position" => "", - "powered_by" => "Powered by", - "price" => "Price", - "print" => "Print", - "remove" => "Remove", - "required" => "Required", - "restore" => "Restore", - "return_policy" => "Return Policy", - "search" => "Search", - "search_options" => "Search options", - "searched_for" => "Searched for", - "software_short" => "OSPOS", - "software_title" => "Open Source Point of Sale", - "state" => "County", - "submit" => "Submit", - "total_spent" => "Total Spent", - "unknown" => "Unknown", - "view_recent_sales" => "View Recent Sales", - "website" => "opensourcepos.org", - "welcome" => "Welcome", - "welcome_message" => "Welcome to OSPOS, click on a module to get started.", - "yes" => "Yes", - "you_are_using_ospos" => "", - "zip" => "Post Code", + "address_1" => "Address 1", + "address_2" => "Address 2", + "admin" => "", + "city" => "City", + "clerk" => "", + "close" => "Close", + "color" => "", + "comments" => "Comments", + "common" => "common", + "confirm_search" => "You have selected one or more rows, these will no longer be selected after your search. Are you sure you want to submit this search?", + "copyrights" => "© 2010 - {0}", + "correct_errors" => "Please correct identified errors before saving", + "country" => "Country", + "dashboard" => "", + "date" => "Date", + "delete" => "Delete", + "det" => "details", + "download_import_template" => "Download Import CSV Template (CSV)", + "edit" => "edit", + "email" => "Email", + "email_invalid_format" => "The email address is not in the correct format.", + "export_csv" => "CSV Export", + "export_csv_no" => "No", + "export_csv_yes" => "Yes", + "fields_required_message" => "Fields in red are required", + "fields_required_message_unique" => "", + "first_name" => "First Name", + "first_name_required" => "First Name is a required field.", + "first_page" => "First", + "gender" => "Gender", + "gender_female" => "F", + "gender_male" => "M", + "gender_undefined" => "", + "icon" => "Icon", + "id" => "ID", + "import" => "Import", + "import_change_file" => "Change", + "import_csv" => "CSV Import", + "import_full_path" => "Full path to CSV file required", + "import_remove_file" => "Remove", + "import_select_file" => "Select file", + "inv" => "inv", + "last_name" => "Last Name", + "last_name_required" => "Last Name is a required field.", + "last_page" => "Last", + "learn_about_project" => "to learn the latest information about the project.", + "list_of" => "List of", + "logo" => "Logo", + "logo_mark" => "Mark", + "logout" => "Log Out", + "manager" => "", + "migration_needed" => "A database migration to {0} will start after login", + "new" => "New", + "no" => "No", + "no_persons_to_display" => "There are no people to display.", + "none_selected_text" => "[Select]", + "or" => "OR", + "people" => "", + "phone_number" => "Phone Number", + "phone_number_required" => "Phone Number is a required field", + "please_visit_my" => "Please visit the", + "position" => "", + "powered_by" => "Powered by", + "price" => "Price", + "print" => "Print", + "remove" => "Remove", + "required" => "Required", + "restore" => "Restore", + "return_policy" => "Return Policy", + "search" => "Search", + "search_options" => "Search options", + "searched_for" => "Searched for", + "software_short" => "OSPOS", + "software_title" => "Open Source Point of Sale", + "state" => "County", + "submit" => "Submit", + "total_spent" => "Total Spent", + "unknown" => "Unknown", + "view_recent_sales" => "View Recent Sales", + "website" => "opensourcepos.org", + "welcome" => "Welcome", + "welcome_message" => "Welcome to OSPOS, click on a module to get started.", + "yes" => "Yes", + "you_are_using_ospos" => "", + "zip" => "Post Code", ]; diff --git a/app/Language/en-GB/Config.php b/app/Language/en-GB/Config.php index 433973634..6c137cfb4 100644 --- a/app/Language/en-GB/Config.php +++ b/app/Language/en-GB/Config.php @@ -1,330 +1,330 @@ "Company Address", - "address_required" => "Company Address is a required field.", - "all_set" => "All file permissions are set correctly!", - "allow_duplicate_barcodes" => "Allow Duplicate Barcodes", - "apostrophe" => "apostrophe", - "backup_button" => "Backup", - "backup_database" => "Backup Database", - "barcode" => "Barcode", - "barcode_company" => "Company Name", - "barcode_configuration" => "Barcode Configuration", - "barcode_content" => "Barcode Content", - "barcode_first_row" => "Row 1", - "barcode_font" => "Font", - "barcode_formats" => "Input Formats", - "barcode_generate_if_empty" => "Generate if empty.", - "barcode_height" => "Height (px)", - "barcode_id" => "Item Id/Name", - "barcode_info" => "Barcode Configuration Information", - "barcode_layout" => "Barcode Layout", - "barcode_name" => "Name", - "barcode_number" => "Barcode", - "barcode_number_in_row" => "Number in row", - "barcode_page_cellspacing" => "Display page cellspacing.", - "barcode_page_width" => "Display page width", - "barcode_price" => "Price", - "barcode_second_row" => "Row 2", - "barcode_third_row" => "Row 3", - "barcode_tooltip" => "Warning: This feature can cause duplicate items to be imported or created. Do not use if you do not want duplicate barcodes.", - "barcode_type" => "Barcode Type", - "barcode_width" => "Width (px)", - "bottom" => "Bottom", - "cash_button" => "", - "cash_button_1" => "", - "cash_button_2" => "", - "cash_button_3" => "", - "cash_button_4" => "", - "cash_button_5" => "", - "cash_button_6" => "", - "cash_decimals" => "Cash Decimals", - "cash_decimals_tooltip" => "If Cash Decimals and Currency Decimals are the same then no cash triggered rounding will take place, unless Cash Rounding is set to Half Five.", - "cash_rounding" => "Cash Rounding", - "category_dropdown" => "Show Category as a dropdown", - "center" => "Centre", - "change_apperance_tooltip" => "", - "comma" => "comma", - "company" => "Company Name", - "company_avatar" => "", - "company_change_image" => "Change Image", - "company_logo" => "Company Logo", - "company_remove_image" => "Remove Image", - "company_required" => "Company name is a required field", - "company_select_image" => "Select Image", - "company_website_url" => "Company website is not a valid URL (http://...).", - "country_codes" => "Country Codes", - "country_codes_tooltip" => "Comma separated list of country codes for nominatim address lookup.", - "currency_code" => "Currency Code", - "currency_decimals" => "Currency Decimals", - "currency_symbol" => "Currency Symbol", - "current_employee_only" => "", - "customer_reward" => "Reward", - "customer_reward_duplicate" => "Please use a unique reward name.", - "customer_reward_enable" => "Enable Customer Rewards", - "customer_reward_invalid_chars" => "The reward name cannot contain '_'", - "customer_reward_required" => "Reward is a required field", - "customer_sales_tax_support" => "", - "date_or_time_format" => "Date and Time Filter", - "datetimeformat" => "Date and Time Format", - "decimal_point" => "Decimal Point", - "default_barcode_font_size_number" => "Default Barcode Font size must be a number.", - "default_barcode_font_size_required" => "Default Barcode Font size is a required field.", - "default_barcode_height_number" => "Default Barcode Height must be a number.", - "default_barcode_height_required" => "Default Barcode Height is a required field.", - "default_barcode_num_in_row_number" => "Default Barcode Number in row must be a number.", - "default_barcode_num_in_row_required" => "Default Barcode Number in row is a required field.", - "default_barcode_page_cellspacing_number" => "Default Barcode Page Cellspacing must be a number.", - "default_barcode_page_cellspacing_required" => "Default Barcode Page Cellspacing is a required field.", - "default_barcode_page_width_number" => "Default Barcode Page Width must be a number.", - "default_barcode_page_width_required" => "Default Barcode Page Width is a required field.", - "default_barcode_width_number" => "Default Barcode Width must be a number.", - "default_barcode_width_required" => "Default Barcode Width is a required field.", - "default_item_columns" => "Default Visible Item Columns", - "default_origin_tax_code" => "Default Origin Tax Code", - "default_receivings_discount" => "Default Receivings Discount", - "default_receivings_discount_number" => "Default Receivings Discount must be a number.", - "default_receivings_discount_required" => "Default Receivings Discount is a required field.", - "default_sales_discount" => "Default Sales Discount", - "default_sales_discount_number" => "Default Sales Discount must be a number.", - "default_sales_discount_required" => "Default Sales Discount is a required field.", - "default_tax_category" => "Default Tax Category", - "default_tax_code" => "Default Tax Code", - "default_tax_jurisdiction" => "Default Tax Jurisdiction", - "default_tax_name_number" => "Default Tax Name must be a string.", - "default_tax_name_required" => "Default Tax Name is a required field.", - "default_tax_rate" => "Default Tax Rate %", - "default_tax_rate_1" => "Tax 1 Rate", - "default_tax_rate_2" => "Tax 2 Rate", - "default_tax_rate_3" => "", - "default_tax_rate_number" => "Default Tax Rate must be a number.", - "default_tax_rate_required" => "Default Tax Rate is a required field.", - "derive_sale_quantity" => "Allow Derived Sale Quantity", - "derive_sale_quantity_tooltip" => "If checked then a new item type will be provided for items ordered by extended amount", - "dinner_table" => "Table", - "dinner_table_duplicate" => "Please use an unique table name.", - "dinner_table_enable" => "Enable Dinner Tables", - "dinner_table_invalid_chars" => "The table name cannot contain '_'.", - "dinner_table_required" => "Table is a required field.", - "dot" => "dot", - "email" => "Email", - "email_configuration" => "Email Configuration", - "email_mailpath" => "Path to Sendmail", - "email_protocol" => "Protocol", - "email_receipt_check_behaviour" => "Email Receipt checkbox", - "email_receipt_check_behaviour_always" => "Always checked", - "email_receipt_check_behaviour_last" => "Remember last selection", - "email_receipt_check_behaviour_never" => "Always unchecked", - "email_smtp_crypto" => "SMTP Encryption", - "email_smtp_host" => "SMTP Server", - "email_smtp_pass" => "SMTP Password", - "email_smtp_port" => "SMTP Port", - "email_smtp_timeout" => "SMTP Timeout (s)", - "email_smtp_user" => "SMTP Username", - "enable_avatar" => "", - "enable_avatar_tooltip" => "", - "enable_dropdown_tooltip" => "", - "enable_new_look" => "", - "enable_right_bar" => "", - "enable_right_bar_tooltip" => "", - "enforce_privacy" => "Enforce privacy", - "enforce_privacy_tooltip" => "Protect Customers privacy enforcing data scrambling in case of their data being deleted", - "fax" => "Fax", - "file_perm" => "There are problems with file permissions. Please fix and reload this page.", - "financial_year" => "Financial Year Start", - "financial_year_apr" => "1st of April", - "financial_year_aug" => "1st of August", - "financial_year_dec" => "1st of December", - "financial_year_feb" => "1st of February", - "financial_year_jan" => "1st of January", - "financial_year_jul" => "1st of July", - "financial_year_jun" => "1st of June", - "financial_year_mar" => "1st of March", - "financial_year_may" => "1st of May", - "financial_year_nov" => "1st of November", - "financial_year_oct" => "1st of October", - "financial_year_sep" => "1st of September", - "floating_labels" => "Floating Labels", - "gcaptcha_enable" => "Login Page reCAPTCHA", - "gcaptcha_secret_key" => "reCAPTCHA Secret Key", - "gcaptcha_secret_key_required" => "reCAPTCHA Secret Key is a required field", - "gcaptcha_site_key" => "reCAPTCHA Site Key", - "gcaptcha_site_key_required" => "reCAPTCHA Site Key is a required field", - "gcaptcha_tooltip" => "Protect the Login page with Google reCAPTCHA, click the icon for an API key pair.", - "general" => "General", - "general_configuration" => "General Configuration", - "giftcard_number" => "Gift Card Number", - "giftcard_random" => "Generate Random", - "giftcard_series" => "Generate in Series", - "image_allowed_file_types" => "Allowed file types", - "image_max_height_tooltip" => "Maximum allowed height of image uploads in pixels (px).", - "image_max_size_tooltip" => "Maximum allowed file size of image uploads in kilobytes (kb).", - "image_max_width_tooltip" => "Maximum allowed width of image uploads in pixels (px).", - "image_restrictions" => "Image Upload Restrictions", - "include_hsn" => "Include Support for HSN Codes", - "info" => "Information", - "info_configuration" => "Shop Information", - "input_groups" => "Input Groups", - "integrations" => "Integrations", - "integrations_configuration" => "Third Party Integrations", - "invoice" => "Invoice", - "invoice_configuration" => "Invoice Print Settings", - "invoice_default_comments" => "Default Invoice Comments", - "invoice_email_message" => "Invoice Email Template", - "invoice_enable" => "Enable Invoicing", - "invoice_printer" => "Invoice Printer", - "invoice_type" => "Invoice Type", - "is_readable" => "is readable, but the permissions are incorrectly set. Please set it to 640 or 660 and refresh.", - "is_writable" => "is writable, but the permissions are incorrectly set. Please set it to 750 and refresh.", - "item_markup" => "", - "jsprintsetup_required" => "Warning! This disabled functionality will only work if you have the FireFox jsPrintSetup addon installed. Save anyway?", - "language" => "Language", - "last_used_invoice_number" => "Last used Invoice Number", - "last_used_quote_number" => "Last used Quote Number", - "last_used_work_order_number" => "Last used W/O Number", - "left" => "Left", - "license" => "License", - "license_configuration" => "License Statement", - "line_sequence" => "Line Sequence", - "lines_per_page" => "Lines Per Page", - "lines_per_page_number" => "Lines Per Page must be a number.", - "lines_per_page_required" => "Lines Per Page is a required field.", - "locale" => "Localisation", - "locale_configuration" => "Localisation Configuration", - "locale_info" => "Localisation Configuration Information", - "location" => "Stock", - "location_configuration" => "Stock Locations", - "location_info" => "Location Configuration Information", - "login_form" => "Login Form Style", - "logout" => "Don't you want to make a backup before logging out? Click [OK] to backup, [Cancel] to logout.", - "mailchimp" => "MailChimp", - "mailchimp_api_key" => "MailChimp API Key", - "mailchimp_configuration" => "MailChimp Configuration", - "mailchimp_key_successfully" => "Valid API Key.", - "mailchimp_key_unsuccessfully" => "Invalid API Key.", - "mailchimp_lists" => "MailChimp List(s)", - "mailchimp_tooltip" => "Click the icon for an API key.", - "message" => "Message", - "message_configuration" => "Message Configuration", - "msg_msg" => "Saved Text Message", - "msg_msg_placeholder" => "If you wish to use a SMS template save your message here. Otherwise leave the box blank.", - "msg_pwd" => "SMS-API Password", - "msg_pwd_required" => "SMS-API Password is a required field", - "msg_src" => "SMS-API Sender ID", - "msg_src_required" => "SMS-API Sender ID is a required field", - "msg_uid" => "SMS-API Username", - "msg_uid_required" => "SMS-API Username is a required field", - "multi_pack_enabled" => "Multiple Packages per Item", - "no_risk" => "No security/vulnerability risks.", - "none" => "none", - "notify_alignment" => "Notification Popup Position", - "number_format" => "Number Format", - "number_locale" => "Localisation", - "number_locale_invalid" => "The entered locale is invalid. Check the link in the tooltip to find a sensible value.", - "number_locale_required" => "Number Locale is a required field.", - "number_locale_tooltip" => "Find a suitable locale through this link.", - "os_timezone" => "OSPOS Timezone:", - "ospos_info" => "OSPOS Installation Info", - "payment_options_order" => "Payment Options Order", - "perm_risk" => "Incorrect permissions leaves this software at risk.", - "phone" => "Company Phone", - "phone_required" => "Company Phone is a required field.", - "print_bottom_margin" => "Margin Bottom", - "print_bottom_margin_number" => "Bottom Margin must be a number.", - "print_bottom_margin_required" => "Bottom Margin is a required field.", - "print_delay_autoreturn" => "Autoreturn to Sale delay", - "print_delay_autoreturn_number" => "Autoreturn to Sale delay is a required field.", - "print_delay_autoreturn_required" => "Autoreturn to Sale delay must be a number.", - "print_footer" => "Print Browser Footer", - "print_header" => "Print Browser Header", - "print_left_margin" => "Margin Left", - "print_left_margin_number" => "Left Margin must be a number.", - "print_left_margin_required" => "Left Margin is a required field.", - "print_receipt_check_behaviour" => "Print Receipt checkbox", - "print_receipt_check_behaviour_always" => "Always checked", - "print_receipt_check_behaviour_last" => "Remember last selection", - "print_receipt_check_behaviour_never" => "Always unchecked", - "print_right_margin" => "Margin Right", - "print_right_margin_number" => "Default Right Margin must be a number.", - "print_right_margin_required" => "Default Right Margin is a required field.", - "print_silently" => "Show Print Dialog", - "print_top_margin" => "Margin Top", - "print_top_margin_number" => "Default Top Margin must be a number.", - "print_top_margin_required" => "Default Top Margin is a required field.", - "quantity_decimals" => "Quantity Decimals", - "quick_cash_enable" => "", - "quote_default_comments" => "Default Quote Comments", - "receipt" => "Receipt", - "receipt_category" => "", - "receipt_configuration" => "Receipt Print Settings", - "receipt_default" => "Default", - "receipt_font_size" => "Font Size", - "receipt_font_size_number" => "Font Size must be a number.", - "receipt_font_size_required" => "Font Size is a required field.", - "receipt_info" => "Receipt Configuration Information", - "receipt_printer" => "Ticket Printer", - "receipt_short" => "Short", - "receipt_show_company_name" => "Show Company Name", - "receipt_show_description" => "Show Description", - "receipt_show_serialnumber" => "Show Serial Number", - "receipt_show_tax_ind" => "Show Tax Indicator", - "receipt_show_taxes" => "Show Taxes", - "receipt_show_total_discount" => "Show Total Discount", - "receipt_template" => "Receipt Template", - "receiving_calculate_average_price" => "Change Cost Price (Receiving)", - "recv_invoice_format" => "Receivings Invoice Format", - "register_mode_default" => "Default Register Mode", - "report_an_issue" => "Report an issue", - "return_policy_required" => "Return policy is a required field.", - "reward" => "Reward", - "reward_configuration" => "Reward Configuration", - "right" => "Right", - "sales_invoice_format" => "Sales Invoice Format", - "sales_quote_format" => "Sales Quote Format", - "saved_successfully" => "Configuration saved successfully.", - "saved_unsuccessfully" => "Configuration save failed.", - "security_issue" => "Security Vulnerability Warning", - "server_notice" => "Please use the below info for issue reporting.", - "service_charge" => "", - "show_due_enable" => "", - "show_office_group" => "Show office icon", - "statistics" => "Send Statistics", - "statistics_tooltip" => "Send statistics for development and feature improvement purposes.", - "stock_location" => "Stock location", - "stock_location_duplicate" => "Please use an unique location name.", - "stock_location_invalid_chars" => "Stock location name cannot contain '_'.", - "stock_location_required" => "Stock location is a required field.", - "suggestions_fifth_column" => "", - "suggestions_first_column" => "Column 1", - "suggestions_fourth_column" => "", - "suggestions_layout" => "Search Suggestions Layout", - "suggestions_second_column" => "Column 2", - "suggestions_third_column" => "Column 3", - "system_conf" => "Setup & Conf", - "system_info" => "System Info", - "table" => "Table", - "table_configuration" => "Table Configuration", - "takings_printer" => "Takings Printer", - "tax" => "Tax", - "tax_category" => "Tax Category", - "tax_category_duplicate" => "The entered Tax Category already exists.", - "tax_category_invalid_chars" => "The entered Tax Category is invalid.", - "tax_category_required" => "The Tax Category is required.", - "tax_category_used" => "Tax Category cannot be deleted because it is being used.", - "tax_configuration" => "Tax Configuration", - "tax_decimals" => "Tax Decimals", - "tax_id" => "Tax Id", - "tax_included" => "Tax Included", - "theme" => "Theme", - "theme_preview" => "Preview Theme:", - "thousands_separator" => "Thousands Separator", - "timezone" => "Timezone", - "timezone_error" => "OSPOS Timezone is Different from your Local Timezone.", - "top" => "Top", - "use_destination_based_tax" => "Use Destination Based Tax", - "user_timezone" => "Local Timezone:", - "website" => "Website", - "wholesale_markup" => "", - "work_order_enable" => "Work Order Support", - "work_order_format" => "Work Order Format", + "address" => "Company Address", + "address_required" => "Company Address is a required field.", + "all_set" => "All file permissions are set correctly!", + "allow_duplicate_barcodes" => "Allow Duplicate Barcodes", + "apostrophe" => "apostrophe", + "backup_button" => "Backup", + "backup_database" => "Backup Database", + "barcode" => "Barcode", + "barcode_company" => "Company Name", + "barcode_configuration" => "Barcode Configuration", + "barcode_content" => "Barcode Content", + "barcode_first_row" => "Row 1", + "barcode_font" => "Font", + "barcode_formats" => "Input Formats", + "barcode_generate_if_empty" => "Generate if empty.", + "barcode_height" => "Height (px)", + "barcode_id" => "Item Id/Name", + "barcode_info" => "Barcode Configuration Information", + "barcode_layout" => "Barcode Layout", + "barcode_name" => "Name", + "barcode_number" => "Barcode", + "barcode_number_in_row" => "Number in row", + "barcode_page_cellspacing" => "Display page cellspacing.", + "barcode_page_width" => "Display page width", + "barcode_price" => "Price", + "barcode_second_row" => "Row 2", + "barcode_third_row" => "Row 3", + "barcode_tooltip" => "Warning: This feature can cause duplicate items to be imported or created. Do not use if you do not want duplicate barcodes.", + "barcode_type" => "Barcode Type", + "barcode_width" => "Width (px)", + "bottom" => "Bottom", + "cash_button" => "", + "cash_button_1" => "", + "cash_button_2" => "", + "cash_button_3" => "", + "cash_button_4" => "", + "cash_button_5" => "", + "cash_button_6" => "", + "cash_decimals" => "Cash Decimals", + "cash_decimals_tooltip" => "If Cash Decimals and Currency Decimals are the same then no cash triggered rounding will take place, unless Cash Rounding is set to Half Five.", + "cash_rounding" => "Cash Rounding", + "category_dropdown" => "Show Category as a dropdown", + "center" => "Centre", + "change_apperance_tooltip" => "", + "comma" => "comma", + "company" => "Company Name", + "company_avatar" => "", + "company_change_image" => "Change Image", + "company_logo" => "Company Logo", + "company_remove_image" => "Remove Image", + "company_required" => "Company name is a required field", + "company_select_image" => "Select Image", + "company_website_url" => "Company website is not a valid URL (http://...).", + "country_codes" => "Country Codes", + "country_codes_tooltip" => "Comma separated list of country codes for nominatim address lookup.", + "currency_code" => "Currency Code", + "currency_decimals" => "Currency Decimals", + "currency_symbol" => "Currency Symbol", + "current_employee_only" => "", + "customer_reward" => "Reward", + "customer_reward_duplicate" => "Please use a unique reward name.", + "customer_reward_enable" => "Enable Customer Rewards", + "customer_reward_invalid_chars" => "The reward name cannot contain '_'", + "customer_reward_required" => "Reward is a required field", + "customer_sales_tax_support" => "", + "date_or_time_format" => "Date and Time Filter", + "datetimeformat" => "Date and Time Format", + "decimal_point" => "Decimal Point", + "default_barcode_font_size_number" => "Default Barcode Font size must be a number.", + "default_barcode_font_size_required" => "Default Barcode Font size is a required field.", + "default_barcode_height_number" => "Default Barcode Height must be a number.", + "default_barcode_height_required" => "Default Barcode Height is a required field.", + "default_barcode_num_in_row_number" => "Default Barcode Number in row must be a number.", + "default_barcode_num_in_row_required" => "Default Barcode Number in row is a required field.", + "default_barcode_page_cellspacing_number" => "Default Barcode Page Cellspacing must be a number.", + "default_barcode_page_cellspacing_required" => "Default Barcode Page Cellspacing is a required field.", + "default_barcode_page_width_number" => "Default Barcode Page Width must be a number.", + "default_barcode_page_width_required" => "Default Barcode Page Width is a required field.", + "default_barcode_width_number" => "Default Barcode Width must be a number.", + "default_barcode_width_required" => "Default Barcode Width is a required field.", + "default_item_columns" => "Default Visible Item Columns", + "default_origin_tax_code" => "Default Origin Tax Code", + "default_receivings_discount" => "Default Receivings Discount", + "default_receivings_discount_number" => "Default Receivings Discount must be a number.", + "default_receivings_discount_required" => "Default Receivings Discount is a required field.", + "default_sales_discount" => "Default Sales Discount", + "default_sales_discount_number" => "Default Sales Discount must be a number.", + "default_sales_discount_required" => "Default Sales Discount is a required field.", + "default_tax_category" => "Default Tax Category", + "default_tax_code" => "Default Tax Code", + "default_tax_jurisdiction" => "Default Tax Jurisdiction", + "default_tax_name_number" => "Default Tax Name must be a string.", + "default_tax_name_required" => "Default Tax Name is a required field.", + "default_tax_rate" => "Default Tax Rate %", + "default_tax_rate_1" => "Tax 1 Rate", + "default_tax_rate_2" => "Tax 2 Rate", + "default_tax_rate_3" => "", + "default_tax_rate_number" => "Default Tax Rate must be a number.", + "default_tax_rate_required" => "Default Tax Rate is a required field.", + "derive_sale_quantity" => "Allow Derived Sale Quantity", + "derive_sale_quantity_tooltip" => "If checked then a new item type will be provided for items ordered by extended amount", + "dinner_table" => "Table", + "dinner_table_duplicate" => "Please use an unique table name.", + "dinner_table_enable" => "Enable Dinner Tables", + "dinner_table_invalid_chars" => "The table name cannot contain '_'.", + "dinner_table_required" => "Table is a required field.", + "dot" => "dot", + "email" => "Email", + "email_configuration" => "Email Configuration", + "email_mailpath" => "Path to Sendmail", + "email_protocol" => "Protocol", + "email_receipt_check_behaviour" => "Email Receipt checkbox", + "email_receipt_check_behaviour_always" => "Always checked", + "email_receipt_check_behaviour_last" => "Remember last selection", + "email_receipt_check_behaviour_never" => "Always unchecked", + "email_smtp_crypto" => "SMTP Encryption", + "email_smtp_host" => "SMTP Server", + "email_smtp_pass" => "SMTP Password", + "email_smtp_port" => "SMTP Port", + "email_smtp_timeout" => "SMTP Timeout (s)", + "email_smtp_user" => "SMTP Username", + "enable_avatar" => "", + "enable_avatar_tooltip" => "", + "enable_dropdown_tooltip" => "", + "enable_new_look" => "", + "enable_right_bar" => "", + "enable_right_bar_tooltip" => "", + "enforce_privacy" => "Enforce privacy", + "enforce_privacy_tooltip" => "Protect Customers privacy enforcing data scrambling in case of their data being deleted", + "fax" => "Fax", + "file_perm" => "There are problems with file permissions. Please fix and reload this page.", + "financial_year" => "Financial Year Start", + "financial_year_apr" => "1st of April", + "financial_year_aug" => "1st of August", + "financial_year_dec" => "1st of December", + "financial_year_feb" => "1st of February", + "financial_year_jan" => "1st of January", + "financial_year_jul" => "1st of July", + "financial_year_jun" => "1st of June", + "financial_year_mar" => "1st of March", + "financial_year_may" => "1st of May", + "financial_year_nov" => "1st of November", + "financial_year_oct" => "1st of October", + "financial_year_sep" => "1st of September", + "floating_labels" => "Floating Labels", + "gcaptcha_enable" => "Login Page reCAPTCHA", + "gcaptcha_secret_key" => "reCAPTCHA Secret Key", + "gcaptcha_secret_key_required" => "reCAPTCHA Secret Key is a required field", + "gcaptcha_site_key" => "reCAPTCHA Site Key", + "gcaptcha_site_key_required" => "reCAPTCHA Site Key is a required field", + "gcaptcha_tooltip" => "Protect the Login page with Google reCAPTCHA, click the icon for an API key pair.", + "general" => "General", + "general_configuration" => "General Configuration", + "giftcard_number" => "Gift Card Number", + "giftcard_random" => "Generate Random", + "giftcard_series" => "Generate in Series", + "image_allowed_file_types" => "Allowed file types", + "image_max_height_tooltip" => "Maximum allowed height of image uploads in pixels (px).", + "image_max_size_tooltip" => "Maximum allowed file size of image uploads in kilobytes (kb).", + "image_max_width_tooltip" => "Maximum allowed width of image uploads in pixels (px).", + "image_restrictions" => "Image Upload Restrictions", + "include_hsn" => "Include Support for HSN Codes", + "info" => "Information", + "info_configuration" => "Shop Information", + "input_groups" => "Input Groups", + "integrations" => "Integrations", + "integrations_configuration" => "Third Party Integrations", + "invoice" => "Invoice", + "invoice_configuration" => "Invoice Print Settings", + "invoice_default_comments" => "Default Invoice Comments", + "invoice_email_message" => "Invoice Email Template", + "invoice_enable" => "Enable Invoicing", + "invoice_printer" => "Invoice Printer", + "invoice_type" => "Invoice Type", + "is_readable" => "is readable, but the permissions are incorrectly set. Please set it to 640 or 660 and refresh.", + "is_writable" => "is writable, but the permissions are incorrectly set. Please set it to 750 and refresh.", + "item_markup" => "", + "jsprintsetup_required" => "Warning! This disabled functionality will only work if you have the FireFox jsPrintSetup addon installed. Save anyway?", + "language" => "Language", + "last_used_invoice_number" => "Last used Invoice Number", + "last_used_quote_number" => "Last used Quote Number", + "last_used_work_order_number" => "Last used W/O Number", + "left" => "Left", + "license" => "License", + "license_configuration" => "License Statement", + "line_sequence" => "Line Sequence", + "lines_per_page" => "Lines Per Page", + "lines_per_page_number" => "Lines Per Page must be a number.", + "lines_per_page_required" => "Lines Per Page is a required field.", + "locale" => "Localisation", + "locale_configuration" => "Localisation Configuration", + "locale_info" => "Localisation Configuration Information", + "location" => "Stock", + "location_configuration" => "Stock Locations", + "location_info" => "Location Configuration Information", + "login_form" => "Login Form Style", + "logout" => "Don't you want to make a backup before logging out? Click [OK] to backup, [Cancel] to logout.", + "mailchimp" => "MailChimp", + "mailchimp_api_key" => "MailChimp API Key", + "mailchimp_configuration" => "MailChimp Configuration", + "mailchimp_key_successfully" => "Valid API Key.", + "mailchimp_key_unsuccessfully" => "Invalid API Key.", + "mailchimp_lists" => "MailChimp List(s)", + "mailchimp_tooltip" => "Click the icon for an API key.", + "message" => "Message", + "message_configuration" => "Message Configuration", + "msg_msg" => "Saved Text Message", + "msg_msg_placeholder" => "If you wish to use a SMS template save your message here. Otherwise leave the box blank.", + "msg_pwd" => "SMS-API Password", + "msg_pwd_required" => "SMS-API Password is a required field", + "msg_src" => "SMS-API Sender ID", + "msg_src_required" => "SMS-API Sender ID is a required field", + "msg_uid" => "SMS-API Username", + "msg_uid_required" => "SMS-API Username is a required field", + "multi_pack_enabled" => "Multiple Packages per Item", + "no_risk" => "No security/vulnerability risks.", + "none" => "none", + "notify_alignment" => "Notification Popup Position", + "number_format" => "Number Format", + "number_locale" => "Localisation", + "number_locale_invalid" => "The entered locale is invalid. Check the link in the tooltip to find a sensible value.", + "number_locale_required" => "Number Locale is a required field.", + "number_locale_tooltip" => "Find a suitable locale through this link.", + "os_timezone" => "OSPOS Timezone:", + "ospos_info" => "OSPOS Installation Info", + "payment_options_order" => "Payment Options Order", + "perm_risk" => "Incorrect permissions leaves this software at risk.", + "phone" => "Company Phone", + "phone_required" => "Company Phone is a required field.", + "print_bottom_margin" => "Margin Bottom", + "print_bottom_margin_number" => "Bottom Margin must be a number.", + "print_bottom_margin_required" => "Bottom Margin is a required field.", + "print_delay_autoreturn" => "Autoreturn to Sale delay", + "print_delay_autoreturn_number" => "Autoreturn to Sale delay is a required field.", + "print_delay_autoreturn_required" => "Autoreturn to Sale delay must be a number.", + "print_footer" => "Print Browser Footer", + "print_header" => "Print Browser Header", + "print_left_margin" => "Margin Left", + "print_left_margin_number" => "Left Margin must be a number.", + "print_left_margin_required" => "Left Margin is a required field.", + "print_receipt_check_behaviour" => "Print Receipt checkbox", + "print_receipt_check_behaviour_always" => "Always checked", + "print_receipt_check_behaviour_last" => "Remember last selection", + "print_receipt_check_behaviour_never" => "Always unchecked", + "print_right_margin" => "Margin Right", + "print_right_margin_number" => "Default Right Margin must be a number.", + "print_right_margin_required" => "Default Right Margin is a required field.", + "print_silently" => "Show Print Dialog", + "print_top_margin" => "Margin Top", + "print_top_margin_number" => "Default Top Margin must be a number.", + "print_top_margin_required" => "Default Top Margin is a required field.", + "quantity_decimals" => "Quantity Decimals", + "quick_cash_enable" => "", + "quote_default_comments" => "Default Quote Comments", + "receipt" => "Receipt", + "receipt_category" => "", + "receipt_configuration" => "Receipt Print Settings", + "receipt_default" => "Default", + "receipt_font_size" => "Font Size", + "receipt_font_size_number" => "Font Size must be a number.", + "receipt_font_size_required" => "Font Size is a required field.", + "receipt_info" => "Receipt Configuration Information", + "receipt_printer" => "Ticket Printer", + "receipt_short" => "Short", + "receipt_show_company_name" => "Show Company Name", + "receipt_show_description" => "Show Description", + "receipt_show_serialnumber" => "Show Serial Number", + "receipt_show_tax_ind" => "Show Tax Indicator", + "receipt_show_taxes" => "Show Taxes", + "receipt_show_total_discount" => "Show Total Discount", + "receipt_template" => "Receipt Template", + "receiving_calculate_average_price" => "Change Cost Price (Receiving)", + "recv_invoice_format" => "Receivings Invoice Format", + "register_mode_default" => "Default Register Mode", + "report_an_issue" => "Report an issue", + "return_policy_required" => "Return policy is a required field.", + "reward" => "Reward", + "reward_configuration" => "Reward Configuration", + "right" => "Right", + "sales_invoice_format" => "Sales Invoice Format", + "sales_quote_format" => "Sales Quote Format", + "saved_successfully" => "Configuration saved successfully.", + "saved_unsuccessfully" => "Configuration save failed.", + "security_issue" => "Security Vulnerability Warning", + "server_notice" => "Please use the below info for issue reporting.", + "service_charge" => "", + "show_due_enable" => "", + "show_office_group" => "Show office icon", + "statistics" => "Send Statistics", + "statistics_tooltip" => "Send statistics for development and feature improvement purposes.", + "stock_location" => "Stock location", + "stock_location_duplicate" => "Please use an unique location name.", + "stock_location_invalid_chars" => "Stock location name cannot contain '_'.", + "stock_location_required" => "Stock location is a required field.", + "suggestions_fifth_column" => "", + "suggestions_first_column" => "Column 1", + "suggestions_fourth_column" => "", + "suggestions_layout" => "Search Suggestions Layout", + "suggestions_second_column" => "Column 2", + "suggestions_third_column" => "Column 3", + "system_conf" => "Setup & Conf", + "system_info" => "System Info", + "table" => "Table", + "table_configuration" => "Table Configuration", + "takings_printer" => "Takings Printer", + "tax" => "Tax", + "tax_category" => "Tax Category", + "tax_category_duplicate" => "The entered Tax Category already exists.", + "tax_category_invalid_chars" => "The entered Tax Category is invalid.", + "tax_category_required" => "The Tax Category is required.", + "tax_category_used" => "Tax Category cannot be deleted because it is being used.", + "tax_configuration" => "Tax Configuration", + "tax_decimals" => "Tax Decimals", + "tax_id" => "Tax Id", + "tax_included" => "Tax Included", + "theme" => "Theme", + "theme_preview" => "Preview Theme:", + "thousands_separator" => "Thousands Separator", + "timezone" => "Timezone", + "timezone_error" => "OSPOS Timezone is Different from your Local Timezone.", + "top" => "Top", + "use_destination_based_tax" => "Use Destination Based Tax", + "user_timezone" => "Local Timezone:", + "website" => "Website", + "wholesale_markup" => "", + "work_order_enable" => "Work Order Support", + "work_order_format" => "Work Order Format", ]; diff --git a/app/Language/en-GB/Customers.php b/app/Language/en-GB/Customers.php index 03d50c315..85b716936 100644 --- a/app/Language/en-GB/Customers.php +++ b/app/Language/en-GB/Customers.php @@ -1,56 +1,56 @@ "Account #", - "account_number_duplicate" => "Account Number is already present in the database.", - "available_points" => "Points Available", - "available_points_value" => "", - "average" => "Average spent", - "avg_discount" => "Average discount", - "basic_information" => "Information", - "cannot_be_deleted" => "Could not delete the selected Customer(s), one or more of the selected Customer(s) has sales.", - "company_name" => "Company", - "confirm_delete" => "Are you sure you want to delete the selected Customer(s)?", - "confirm_restore" => "Are you sure you want to restore the selected Customers(s)?", - "consent" => "Registration consent", - "consent_required" => "Registration consent is a required field.", - "csv_import_failed" => "The csv import failed", - "csv_import_nodata_wrongformat" => "The uploaded file has no data or is incorrectly formatted.", - "csv_import_partially_failed" => "Customer import successful with some failures:", - "csv_import_success" => "Customer import successful.", - "customer" => "Customer", - "date" => "Date", - "discount" => "Discount", - "discount_fixed" => "Fixed Discount", - "discount_percent" => "Percentage Discount", - "discount_type" => "Discount Type", - "email_duplicate" => "Email address is already present in the database.", - "employee" => "Employee", - "error_adding_updating" => "Error adding/updating Customer.", - "import_items_csv" => "Customer Import from CSV", - "mailchimp_activity_click" => "Email click", - "mailchimp_activity_lastopen" => "Last open email", - "mailchimp_activity_open" => "Email open", - "mailchimp_activity_total" => "Email sent", - "mailchimp_activity_unopen" => "Email unopen", - "mailchimp_email_client" => "Email client", - "mailchimp_info" => "MailChimp", - "mailchimp_member_rating" => "Rating", - "mailchimp_status" => "Status", - "mailchimp_vip" => "VIP", - "max" => "Max spent", - "min" => "Min spent", - "new" => "New Customer", - "none_selected" => "You have not selected any Customer(s) to delete.", - "one_or_multiple" => "Customer(s)", - "quantity" => "Quantity", - "stats_info" => "Stats", - "successful_adding" => "You have successfully added Customer", - "successful_deleted" => "You have successfully deleted Customer", - "successful_updating" => "You have successfully updated Customer", - "tax_code" => "Tax Code", - "tax_id" => "Tax Id", - "taxable" => "Taxable", - "total" => "Total spent", - "update" => "Update Customer", - "rewards_package" => "Rewards", + "account_number" => "Account #", + "account_number_duplicate" => "Account Number is already present in the database.", + "available_points" => "Points Available", + "available_points_value" => "", + "average" => "Average spent", + "avg_discount" => "Average discount", + "basic_information" => "Information", + "cannot_be_deleted" => "Could not delete the selected Customer(s), one or more of the selected Customer(s) has sales.", + "company_name" => "Company", + "confirm_delete" => "Are you sure you want to delete the selected Customer(s)?", + "confirm_restore" => "Are you sure you want to restore the selected Customers(s)?", + "consent" => "Registration consent", + "consent_required" => "Registration consent is a required field.", + "csv_import_failed" => "The csv import failed", + "csv_import_nodata_wrongformat" => "The uploaded file has no data or is incorrectly formatted.", + "csv_import_partially_failed" => "Customer import successful with some failures:", + "csv_import_success" => "Customer import successful.", + "customer" => "Customer", + "date" => "Date", + "discount" => "Discount", + "discount_fixed" => "Fixed Discount", + "discount_percent" => "Percentage Discount", + "discount_type" => "Discount Type", + "email_duplicate" => "Email address is already present in the database.", + "employee" => "Employee", + "error_adding_updating" => "Error adding/updating Customer.", + "import_items_csv" => "Customer Import from CSV", + "mailchimp_activity_click" => "Email click", + "mailchimp_activity_lastopen" => "Last open email", + "mailchimp_activity_open" => "Email open", + "mailchimp_activity_total" => "Email sent", + "mailchimp_activity_unopen" => "Email unopen", + "mailchimp_email_client" => "Email client", + "mailchimp_info" => "MailChimp", + "mailchimp_member_rating" => "Rating", + "mailchimp_status" => "Status", + "mailchimp_vip" => "VIP", + "max" => "Max spent", + "min" => "Min spent", + "new" => "New Customer", + "none_selected" => "You have not selected any Customer(s) to delete.", + "one_or_multiple" => "Customer(s)", + "quantity" => "Quantity", + "stats_info" => "Stats", + "successful_adding" => "You have successfully added Customer", + "successful_deleted" => "You have successfully deleted Customer", + "successful_updating" => "You have successfully updated Customer", + "tax_code" => "Tax Code", + "tax_id" => "Tax Id", + "taxable" => "Taxable", + "total" => "Total spent", + "update" => "Update Customer", + "rewards_package" => "Rewards", ]; diff --git a/app/Language/en-GB/Datepicker.php b/app/Language/en-GB/Datepicker.php index 222a616d2..3ce895ebb 100644 --- a/app/Language/en-GB/Datepicker.php +++ b/app/Language/en-GB/Datepicker.php @@ -1,23 +1,23 @@ "All Time", - "apply" => "Apply", - "cancel" => "Cancel", - "custom" => "Custom", - "from" => "From", - "last_30" => "Last 30 Days", - "last_7" => "Last 7 Days", - "last_financial_year" => "Last Fiscal Year", - "last_month" => "Last Month", - "last_year" => "Last Year", - "same_month_last_year" => "Same Month Last Year", - "same_month_to_same_day_last_year" => "Same Month To Same Day Last Year", - "this_financial_year" => "Current Fiscal Year", - "this_month" => "Current Month", - "this_year" => "Current Year", - "to" => "To", - "today" => "Today", - "today_last_year" => "Today Last Year", - "weekstart" => "0", - "yesterday" => "Yesterday", + "all_time" => "All Time", + "apply" => "Apply", + "cancel" => "Cancel", + "custom" => "Custom", + "from" => "From", + "last_30" => "Last 30 Days", + "last_7" => "Last 7 Days", + "last_financial_year" => "Last Fiscal Year", + "last_month" => "Last Month", + "last_year" => "Last Year", + "same_month_last_year" => "Same Month Last Year", + "same_month_to_same_day_last_year" => "Same Month To Same Day Last Year", + "this_financial_year" => "Current Fiscal Year", + "this_month" => "Current Month", + "this_year" => "Current Year", + "to" => "To", + "today" => "Today", + "today_last_year" => "Today Last Year", + "weekstart" => "0", + "yesterday" => "Yesterday", ]; diff --git a/app/Language/en-GB/Employees.php b/app/Language/en-GB/Employees.php index 376cd5430..f1290996a 100644 --- a/app/Language/en-GB/Employees.php +++ b/app/Language/en-GB/Employees.php @@ -1,44 +1,44 @@ "", - "basic_information" => "Information", - "cannot_be_deleted" => "Unable to delete selected Employee(s), one or more of the has processed sales or you are trying to delete your account.", - "change_employee" => "", - "change_password" => "Change Password", - "clerk" => "", - "commission" => "", - "confirm_delete" => "Are you sure you want to delete the selected Employee(s)?", - "confirm_restore" => "Are you sure you want to restore the selected Employee(s)?", - "current_password" => "Current Password", - "current_password_invalid" => "Current Password is invalid.", - "employee" => "Employee", - "error_adding_updating" => "Employee add or update failed.", - "error_deleting_demo_admin" => "You cannot delete the demo admin user.", - "error_updating_demo_admin" => "You cannot change the demo admin user.", - "language" => "Language", - "login_info" => "Login", - "manager" => "", - "new" => "New Employee", - "none_selected" => "You have not selected any Employee(s) to delete.", - "one_or_multiple" => "Employee(s)", - "password" => "Password", - "password_minlength" => "Passwords must be at least 8 characters.", - "password_must_match" => "Passwords do not match.", - "password_not_must_match" => "Current password and new password must be unique.", - "password_required" => "Password is required.", - "permission_desc" => "Check the boxes below to grant access to modules.", - "permission_info" => "Permissions", - "repeat_password" => "Password Again", - "subpermission_required" => "Add at least one grant for each module.", - "successful_adding" => "Employee add successful.", - "successful_change_password" => "Password change successful.", - "successful_deleted" => "You have successfully deleted Employee", - "successful_updating" => "You have successfully updated Employee", - "system_language" => "System Language", - "unsuccessful_change_password" => "Password change failed.", - "update" => "Update Employee", - "username" => "Username", - "username_duplicate" => "Employee username is already in use. Please choose another one.", - "username_minlength" => "Username must be at least 5 characters.", - "username_required" => "Username is a required field.", + "administrator" => "", + "basic_information" => "Information", + "cannot_be_deleted" => "Unable to delete selected Employee(s), one or more of the has processed sales or you are trying to delete your account.", + "change_employee" => "", + "change_password" => "Change Password", + "clerk" => "", + "commission" => "", + "confirm_delete" => "Are you sure you want to delete the selected Employee(s)?", + "confirm_restore" => "Are you sure you want to restore the selected Employee(s)?", + "current_password" => "Current Password", + "current_password_invalid" => "Current Password is invalid.", + "employee" => "Employee", + "error_adding_updating" => "Employee add or update failed.", + "error_deleting_demo_admin" => "You cannot delete the demo admin user.", + "error_updating_demo_admin" => "You cannot change the demo admin user.", + "language" => "Language", + "login_info" => "Login", + "manager" => "", + "new" => "New Employee", + "none_selected" => "You have not selected any Employee(s) to delete.", + "one_or_multiple" => "Employee(s)", + "password" => "Password", + "password_minlength" => "Passwords must be at least 8 characters.", + "password_must_match" => "Passwords do not match.", + "password_not_must_match" => "Current password and new password must be unique.", + "password_required" => "Password is required.", + "permission_desc" => "Check the boxes below to grant access to modules.", + "permission_info" => "Permissions", + "repeat_password" => "Password Again", + "subpermission_required" => "Add at least one grant for each module.", + "successful_adding" => "Employee add successful.", + "successful_change_password" => "Password change successful.", + "successful_deleted" => "You have successfully deleted Employee", + "successful_updating" => "You have successfully updated Employee", + "system_language" => "System Language", + "unsuccessful_change_password" => "Password change failed.", + "update" => "Update Employee", + "username" => "Username", + "username_duplicate" => "Employee username is already in use. Please choose another one.", + "username_minlength" => "Username must be at least 5 characters.", + "username_required" => "Username is a required field.", ]; diff --git a/app/Language/en-GB/Enum.php b/app/Language/en-GB/Enum.php index 6189977b6..5068622a4 100644 --- a/app/Language/en-GB/Enum.php +++ b/app/Language/en-GB/Enum.php @@ -1,10 +1,10 @@ "Half Down", - "half_even" => "Half Even", - "half_five" => "Half Five", - "half_odd" => "Half Odd", - "half_up" => "Half Up", - "round_down" => "Round Down", - "round_up" => "Round Up", + "half_down" => "Half Down", + "half_even" => "Half Even", + "half_five" => "Half Five", + "half_odd" => "Half Odd", + "half_up" => "Half Up", + "round_down" => "Round Down", + "round_up" => "Round Up", ]; diff --git a/app/Language/en-GB/Error.php b/app/Language/en-GB/Error.php index c0810c43c..14709b59e 100644 --- a/app/Language/en-GB/Error.php +++ b/app/Language/en-GB/Error.php @@ -1,5 +1,5 @@ "You do not have the permission to access the module named", - "unknown" => "Unexpected error", + "no_permission_module" => "You do not have the permission to access the module named", + "unknown" => "Unexpected error", ]; diff --git a/app/Language/en-GB/Expenses.php b/app/Language/en-GB/Expenses.php index cb8445ed5..5772aef57 100644 --- a/app/Language/en-GB/Expenses.php +++ b/app/Language/en-GB/Expenses.php @@ -1,50 +1,50 @@ "Add Expense", - "amount" => "Amount", - "amount_number" => "Amount must be a number", - "amount_required" => "Expense Amount required", - "by_category" => "Category", - "cannot_be_deleted" => "Could not delete Category Expense(s)", - "cash" => "Cash", - "cash_filter" => "Cash", - "categories_name" => "Category", - "category_required" => "category is a required field", - "check" => "Check", - "check_filter" => "Check", - "confirm_delete" => "Are you sure you want to delete the selected Expense(s)?", - "confirm_restore" => "Are you sure you want to restore the selected Expense(s)?", - "credit" => "Credit Card", - "credit_filter" => "Credit Card", - "date" => "Date", - "date_number" => "date must be a number", - "date_required" => "date is a required field", - "debit" => "Debit Card", - "debit_filter" => "Debit Card", - "description" => "Description", - "due" => "Due", - "due_filter" => "Due", - "employee" => "Created By", - "error_adding_updating" => "Error adding/updating Expense", - "expense_id" => "Id", - "expenses_employee" => "Employee", - "info" => "Expense Info", - "ip_address" => "", - "is_deleted" => "Deleted", - "name_required" => "Expense Name required", - "new" => "New Expense", - "new_supplier" => "", - "no_expenses_to_display" => "There are no Expenses to display", - "none_selected" => "You have not selected any Expense", - "one_or_multiple" => "Expense(s)", - "payment" => "Payment Type", - "start_typing_supplier_name" => "Start Typing Supplier's name...", - "successful_adding" => "Expense add successful", - "successful_deleted" => "Expense delete successful", - "successful_updating" => "Expense update successful", - "supplier_name" => "Supplier", - "supplier_tax_code" => "VAT No", - "tax_amount" => "Tax", - "tax_amount_number" => "", - "update" => "Update Expense", + "add_item" => "Add Expense", + "amount" => "Amount", + "amount_number" => "Amount must be a number", + "amount_required" => "Expense Amount required", + "by_category" => "Category", + "cannot_be_deleted" => "Could not delete Category Expense(s)", + "cash" => "Cash", + "cash_filter" => "Cash", + "categories_name" => "Category", + "category_required" => "category is a required field", + "check" => "Check", + "check_filter" => "Check", + "confirm_delete" => "Are you sure you want to delete the selected Expense(s)?", + "confirm_restore" => "Are you sure you want to restore the selected Expense(s)?", + "credit" => "Credit Card", + "credit_filter" => "Credit Card", + "date" => "Date", + "date_number" => "date must be a number", + "date_required" => "date is a required field", + "debit" => "Debit Card", + "debit_filter" => "Debit Card", + "description" => "Description", + "due" => "Due", + "due_filter" => "Due", + "employee" => "Created By", + "error_adding_updating" => "Error adding/updating Expense", + "expense_id" => "Id", + "expenses_employee" => "Employee", + "info" => "Expense Info", + "ip_address" => "", + "is_deleted" => "Deleted", + "name_required" => "Expense Name required", + "new" => "New Expense", + "new_supplier" => "", + "no_expenses_to_display" => "There are no Expenses to display", + "none_selected" => "You have not selected any Expense", + "one_or_multiple" => "Expense(s)", + "payment" => "Payment Type", + "start_typing_supplier_name" => "Start Typing Supplier's name...", + "successful_adding" => "Expense add successful", + "successful_deleted" => "Expense delete successful", + "successful_updating" => "Expense update successful", + "supplier_name" => "Supplier", + "supplier_tax_code" => "VAT No", + "tax_amount" => "Tax", + "tax_amount_number" => "", + "update" => "Update Expense", ]; diff --git a/app/Language/en-GB/Expenses_categories.php b/app/Language/en-GB/Expenses_categories.php index bacadae68..64e8d7755 100644 --- a/app/Language/en-GB/Expenses_categories.php +++ b/app/Language/en-GB/Expenses_categories.php @@ -1,22 +1,22 @@ "Expense Category name required", - "add_item" => "Add Category", - "cannot_be_deleted" => "Could not delete Category Expense(s)", - "category_id" => "Id", - "confirm_delete" => "Are you sure you want to delete the selected Expense Category?", - "confirm_restore" => "Are you sure you want to restore the selected Expense Category?", - "description" => "Category Description", - "error_adding_updating" => "Error adding/updating Expense Category", - "info" => "Category Expense Info", - "name" => "Category Name", - "new" => "New Category", - "no_expenses_categories_to_display" => "No Category to display", - "none_selected" => "You have not selected any Category Expense", - "one_or_multiple" => "Category Expense", - "quantity" => "Quantity", - "successful_adding" => "Expense Category add successful", - "successful_deleted" => "Expense Category delete successful", - "successful_updating" => "Expense Category update successful", - "update" => "Update Expense Category", + "category_name_required" => "Expense Category name required", + "add_item" => "Add Category", + "cannot_be_deleted" => "Could not delete Category Expense(s)", + "category_id" => "Id", + "confirm_delete" => "Are you sure you want to delete the selected Expense Category?", + "confirm_restore" => "Are you sure you want to restore the selected Expense Category?", + "description" => "Category Description", + "error_adding_updating" => "Error adding/updating Expense Category", + "info" => "Category Expense Info", + "name" => "Category Name", + "new" => "New Category", + "no_expenses_categories_to_display" => "No Category to display", + "none_selected" => "You have not selected any Category Expense", + "one_or_multiple" => "Category Expense", + "quantity" => "Quantity", + "successful_adding" => "Expense Category add successful", + "successful_deleted" => "Expense Category delete successful", + "successful_updating" => "Expense Category update successful", + "update" => "Update Expense Category", ]; diff --git a/app/Language/en-GB/Giftcards.php b/app/Language/en-GB/Giftcards.php index c7818453d..c75cefe8b 100644 --- a/app/Language/en-GB/Giftcards.php +++ b/app/Language/en-GB/Giftcards.php @@ -1,71 +1,71 @@ "Inventory to add or subtract.", - "allow_alt_description" => "Allow Alternate Description", - "bulk_edit" => "Bulk Edit", - "cannot_be_deleted" => "Could not delete selected Gift Card(s), one or more of the selected Gift Card(s) has sales.", - "cannot_find_giftcard" => "Gift Card not found.", - "cannot_use" => "Gift Card {0} cannot be used for this sale. Invalid Customer.", - "card_value" => "Value", - "category" => "Category", - "change_all_to_allow_alt_desc" => "Allow alternate description for all.", - "change_all_to_not_allow_allow_desc" => "Do not allow alternate description for all.", - "change_all_to_serialized" => "Change All To Serialised", - "change_all_to_unserialized" => "Change All To Unserialised", - "confirm_bulk_edit" => "Are you sure you want to edit all the selected Gift Card(s)?", - "confirm_delete" => "Are you sure you want to delete the selected Gift Card(s)?", - "confirm_restore" => "Are you sure you want to restore the selected Gift Card(s)?", - "cost_price" => "Cost Price", - "count" => "Update Inventory", - "csv_import_failed" => "CSV import failed.", - "current_quantity" => "Current Quantity", - "description" => "Description", - "details_count" => "Inventory count details", - "do_nothing" => "Do nothing", - "edit_fields_you_want_to_update" => "Edit desired fields for selected Gift Card(s).", - "edit_multiple_giftcards" => "Edit multiple Gift Cards.", - "error_adding_updating" => "Gift Card add or update failed.", - "error_updating_multiple" => "Gift Card(s) update failed.", - "generate_barcodes" => "Generate Barcodes", - "giftcard" => "Gift Card", - "giftcard_number" => "Gift Card Number", - "info_provided_by" => "Info provided by", - "inventory_comments" => "Comments", - "is_serialized" => "Gift Card has Serial Number", - "low_inventory_giftcards" => "Low Inventory Gift Cards", - "manually_editing_of_quantity" => "Manual Edit of Quantity", - "must_select_giftcard_for_barcode" => "You must select at least one Gift Card to generate barcodes.", - "new" => "New Gift Card", - "no_description_giftcards" => "No Description Gift Cards", - "no_giftcards_to_display" => "No Giftcards to display.", - "none" => "None", - "none_selected" => "No Gift Card(s) selected to edit.", - "number" => "Gift Card Number must be a number.", - "number_information" => "Gift Card Number", - "number_required" => "Gift Card Number is a required field.", - "one_or_multiple" => "Gift Card(s)", - "person_id" => "Customer", - "quantity" => "Quantity", - "quantity_required" => "Quantity is a required field. Please close (X) to cancel.", - "remaining_balance" => "Gift Card {0} remaining value is {1}!", - "reorder_level" => "Reorder Level", - "retrive_giftcard_info" => "Retrieve Gift Card Info", - "sales_tax_1" => "Sales Tax", - "sales_tax_2" => "Sales Tax 2", - "serialized_giftcards" => "Serialised Gift Cards", - "successful_adding" => "You have successfully added Gift Card", - "successful_bulk_edit" => "You have successfully updated the selected Gift Cards", - "successful_deleted" => "You have successfully deleted Gift Card", - "successful_updating" => "You have successfully updated Gift Card", - "supplier" => "Supplier", - "tax_1" => "Tax 1", - "tax_2" => "Tax 2", - "tax_percent" => "Tax Percent", - "tax_percents" => "Tax Percent(s)", - "unit_price" => "Sell Price", - "upc_database" => "Barcode Database", - "update" => "Update Gift Card", - "use_inventory_menu" => "Use Inventory Menu", - "value" => "Gift Card Value must be a number.", - "value_required" => "Gift Card Value is a required field.", + "add_minus" => "Inventory to add or subtract.", + "allow_alt_description" => "Allow Alternate Description", + "bulk_edit" => "Bulk Edit", + "cannot_be_deleted" => "Could not delete selected Gift Card(s), one or more of the selected Gift Card(s) has sales.", + "cannot_find_giftcard" => "Gift Card not found.", + "cannot_use" => "Gift Card {0} cannot be used for this sale. Invalid Customer.", + "card_value" => "Value", + "category" => "Category", + "change_all_to_allow_alt_desc" => "Allow alternate description for all.", + "change_all_to_not_allow_allow_desc" => "Do not allow alternate description for all.", + "change_all_to_serialized" => "Change All To Serialised", + "change_all_to_unserialized" => "Change All To Unserialised", + "confirm_bulk_edit" => "Are you sure you want to edit all the selected Gift Card(s)?", + "confirm_delete" => "Are you sure you want to delete the selected Gift Card(s)?", + "confirm_restore" => "Are you sure you want to restore the selected Gift Card(s)?", + "cost_price" => "Cost Price", + "count" => "Update Inventory", + "csv_import_failed" => "CSV import failed.", + "current_quantity" => "Current Quantity", + "description" => "Description", + "details_count" => "Inventory count details", + "do_nothing" => "Do nothing", + "edit_fields_you_want_to_update" => "Edit desired fields for selected Gift Card(s).", + "edit_multiple_giftcards" => "Edit multiple Gift Cards.", + "error_adding_updating" => "Gift Card add or update failed.", + "error_updating_multiple" => "Gift Card(s) update failed.", + "generate_barcodes" => "Generate Barcodes", + "giftcard" => "Gift Card", + "giftcard_number" => "Gift Card Number", + "info_provided_by" => "Info provided by", + "inventory_comments" => "Comments", + "is_serialized" => "Gift Card has Serial Number", + "low_inventory_giftcards" => "Low Inventory Gift Cards", + "manually_editing_of_quantity" => "Manual Edit of Quantity", + "must_select_giftcard_for_barcode" => "You must select at least one Gift Card to generate barcodes.", + "new" => "New Gift Card", + "no_description_giftcards" => "No Description Gift Cards", + "no_giftcards_to_display" => "No Giftcards to display.", + "none" => "None", + "none_selected" => "No Gift Card(s) selected to edit.", + "number" => "Gift Card Number must be a number.", + "number_information" => "Gift Card Number", + "number_required" => "Gift Card Number is a required field.", + "one_or_multiple" => "Gift Card(s)", + "person_id" => "Customer", + "quantity" => "Quantity", + "quantity_required" => "Quantity is a required field. Please close (X) to cancel.", + "remaining_balance" => "Gift Card {0} remaining value is {1}!", + "reorder_level" => "Reorder Level", + "retrive_giftcard_info" => "Retrieve Gift Card Info", + "sales_tax_1" => "Sales Tax", + "sales_tax_2" => "Sales Tax 2", + "serialized_giftcards" => "Serialised Gift Cards", + "successful_adding" => "You have successfully added Gift Card", + "successful_bulk_edit" => "You have successfully updated the selected Gift Cards", + "successful_deleted" => "You have successfully deleted Gift Card", + "successful_updating" => "You have successfully updated Gift Card", + "supplier" => "Supplier", + "tax_1" => "Tax 1", + "tax_2" => "Tax 2", + "tax_percent" => "Tax Percent", + "tax_percents" => "Tax Percent(s)", + "unit_price" => "Sell Price", + "upc_database" => "Barcode Database", + "update" => "Update Gift Card", + "use_inventory_menu" => "Use Inventory Menu", + "value" => "Gift Card Value must be a number.", + "value_required" => "Gift Card Value is a required field.", ]; diff --git a/app/Language/en-GB/Item_kits.php b/app/Language/en-GB/Item_kits.php index be7d74c7b..c03faf0bc 100644 --- a/app/Language/en-GB/Item_kits.php +++ b/app/Language/en-GB/Item_kits.php @@ -1,41 +1,41 @@ "Add Item", - "all" => "All", - "cannot_be_deleted" => "Item Kit(s) delete failed.", - "confirm_delete" => "Are you sure you want to delete the selected Item Kit(s)?", - "confirm_restore" => "Are you sure you want to restore the selected Item Kit(s)?", - "description" => "Item Kit Description", - "discount" => "Discount", - "discount_fixed" => "Fixed Discount", - "discount_percent" => "Percentage Discount", - "discount_type" => "Discount Type", - "error_adding_updating" => "Item Kit add or update failed.", - "find_kit_item" => "Kit Item", - "info" => "Item Kit Info", - "item" => "Item", - "item_kit_number" => "Barcode", - "item_kit_number_duplicate" => "Item Kit Number is already present in the database.", - "item_number" => "Barcode", - "item_number_duplicate" => "", - "items" => "Items", - "kit" => "Kit ID", - "kit_and_components" => "Kit and Components", - "kit_and_stock" => "Kit and Stock", - "kit_only" => "Kit Only", - "name" => "Item Kit Name", - "new" => "New Item Kit", - "no_item_kits_to_display" => "No Item Kits to display.", - "none_selected" => "You have not selected any Item Kit(s).", - "one_or_multiple" => "Item Kit(s)", - "price_option" => "Price Option", - "priced_only" => "Priced Only", - "print_option" => "Print Option", - "quantity" => "Quantity", - "sequence" => "Sequence", - "successful_adding" => "You have successfully added Item Kit", - "successful_deleted" => "You have successfully deleted Item Kit", - "successful_updating" => "You have successfully updated Item Kit", - "unit_price" => "", - "update" => "Update Item Kit", + "add_item" => "Add Item", + "all" => "All", + "cannot_be_deleted" => "Item Kit(s) delete failed.", + "confirm_delete" => "Are you sure you want to delete the selected Item Kit(s)?", + "confirm_restore" => "Are you sure you want to restore the selected Item Kit(s)?", + "description" => "Item Kit Description", + "discount" => "Discount", + "discount_fixed" => "Fixed Discount", + "discount_percent" => "Percentage Discount", + "discount_type" => "Discount Type", + "error_adding_updating" => "Item Kit add or update failed.", + "find_kit_item" => "Kit Item", + "info" => "Item Kit Info", + "item" => "Item", + "item_kit_number" => "Barcode", + "item_kit_number_duplicate" => "Item Kit Number is already present in the database.", + "item_number" => "Barcode", + "item_number_duplicate" => "", + "items" => "Items", + "kit" => "Kit ID", + "kit_and_components" => "Kit and Components", + "kit_and_stock" => "Kit and Stock", + "kit_only" => "Kit Only", + "name" => "Item Kit Name", + "new" => "New Item Kit", + "no_item_kits_to_display" => "No Item Kits to display.", + "none_selected" => "You have not selected any Item Kit(s).", + "one_or_multiple" => "Item Kit(s)", + "price_option" => "Price Option", + "priced_only" => "Priced Only", + "print_option" => "Print Option", + "quantity" => "Quantity", + "sequence" => "Sequence", + "successful_adding" => "You have successfully added Item Kit", + "successful_deleted" => "You have successfully deleted Item Kit", + "successful_updating" => "You have successfully updated Item Kit", + "unit_price" => "", + "update" => "Update Item Kit", ]; diff --git a/app/Language/en-GB/Items.php b/app/Language/en-GB/Items.php index a2aec736f..ce747fa72 100644 --- a/app/Language/en-GB/Items.php +++ b/app/Language/en-GB/Items.php @@ -1,120 +1,120 @@ "Inventory to add or subtract.", - "allow_alt_description" => "Allow Alternate Description", - "amount_entry" => "Amount Entry", - "bulk_edit" => "Bulk Edit", - "buy_price_required" => "Purchase Price is a required field.", - "cannot_be_deleted" => "Could not delete the selected Item(s), one or more of the selected Items have sales.", - "cannot_find_item" => "Item not found.", - "categories" => "", - "category" => "Category", - "category_new" => "", - "category_required" => "Category is a required field.", - "change_all_to_allow_alt_desc" => "Allow Alternate Description for all.", - "change_all_to_not_allow_allow_desc" => "Do not allow Alternate Description for all.", - "change_all_to_serialized" => "Change all to Serialised", - "change_all_to_unserialized" => "Change all to Unserialised", - "change_image" => "Change Image", - "confirm_bulk_edit" => "Are you sure you want to edit selected Item(s)?", - "confirm_bulk_edit_wipe_taxes" => "All Item Tax information will be replaced.", - "confirm_delete" => "Are you sure you want to delete the selected Item(s)?", - "confirm_restore" => "Are you sure you want to restore the selected Item(s)?", - "cost_price" => "Cost Price", - "cost_price_number" => "Cost Price must be a number.", - "cost_price_required" => "Cost Price is a required field.", - "count" => "Update Inventory", - "csv_import_failed" => "The csv import failed", - "csv_import_nodata_wrongformat" => "The uploaded file has no data or is formatted incorrectly.", - "csv_import_partially_failed" => "There were {0} item import failure(s) on line(s): {1}. No rows were imported.", - "csv_import_success" => "Item import successful.", - "current_quantity" => "Current Quantity", - "default_pack_name" => "Each", - "description" => "Description", - "details_count" => "Inventory count details", - "do_nothing" => "Do nothing", - "edit" => "", - "edit_fields_you_want_to_update" => "Edit the fields you want to edit for all the selected items.", - "edit_multiple_items" => "Editing Multiple Items", - "empty_upc_items" => "Empty Barcode Items", - "error_adding_updating" => "Error adding/updating item", - "error_updating_multiple" => "Error updating items", - "generate_barcodes" => "Generate Barcodes", - "hsn_code" => "Harmonised System Nomenclature", - "image" => "Avatar", - "import_items_csv" => "Item Import from CSV", - "info_provided_by" => "Information provided by", - "inventory" => "Inventory", - "inventory_CSV_import_quantity" => "Quantity Imported from CSV", - "inventory_comments" => "Comments", - "inventory_data_tracking" => "Inventory Data Tracking", - "inventory_date" => "Date", - "inventory_employee" => "Employee", - "inventory_in_out_quantity" => "In/Out Quantity", - "inventory_remarks" => "Remarks", - "is_deleted" => "Deleted", - "is_printed" => "", - "is_serialized" => "Item has Serial Number", - "item" => "Item", - "item_id" => "", - "item_number" => "Barcode", - "item_number_duplicate" => "Item Number is already present in the database.", - "kit" => "Kit", - "location" => "Location", - "low_inventory_items" => "Out Of Stock Items", - "low_sell_item" => "Low sell item", - "manually_editing_of_quantity" => "Manual Edit of Quantity", - "markup" => "", - "name" => "Item Name", - "name_required" => "Item Name is a required field.", - "new" => "New Item", - "no_description_items" => "No Description Items", - "no_items_to_display" => "No Items to display.", - "none" => "None", - "none_selected" => "You have not selected any Item(s) to edit", - "nonstock" => "Non-stocked", - "number_information" => "Item Number", - "number_required" => "Barcode is a required field.", - "one_or_multiple" => "item(s)", - "pack_name" => "Pack Name", - "qty_per_pack" => "Quantity per pack", - "quantity" => "Quantity", - "quantity_number" => "Quantity must be a number.", - "quantity_required" => "Quantity is a required field.", - "receiving_quantity" => "Receiving Quantity", - "remove_image" => "Remove Image", - "reorder_level" => "Reorder Level", - "reorder_level_number" => "Reorder Level must be a number.", - "reorder_level_required" => "Reorder Level is a required field.", - "retrive_item_info" => "Retrieve Item Info", - "sales_tax_1" => "Sales Tax", - "sales_tax_2" => "Sales Tax 2", - "search_attributes" => "Search Attributes. Date format Y-m-d", - "select_image" => "Select Image", - "serialized_items" => "Serialised Items", - "standard" => "Standard", - "stock" => "Stock", - "stock_location" => "Stock location", - "stock_type" => "Stock Type", - "successful_adding" => "You have successfully added Item", - "successful_bulk_edit" => "You have successfully updated the selected Items", - "successful_deleted" => "You have successfully deleted Item", - "successful_updating" => "You have successfully updated Item", - "supplier" => "Supplier", - "tax_1" => "Tax 1", - "tax_2" => "Tax 2", - "tax_3" => "", - "tax_category" => "Tax Category", - "tax_percent" => "Tax Percent", - "tax_percent_number" => "Tax Percent must be a numeric value", - "tax_percent_required" => "Tax Percent is a required field.", - "tax_percents" => "Tax Percent(s)", - "temp" => "Temporary", - "type" => "Item Type", - "unit_price" => "Sell Price", - "unit_price_number" => "Sell Price must be a number.", - "unit_price_required" => "Sell Price is a required field.", - "upc_database" => "Barcode Database", - "update" => "Update Item", - "use_inventory_menu" => "Use Inventory Menu", + "add_minus" => "Inventory to add or subtract.", + "allow_alt_description" => "Allow Alternate Description", + "amount_entry" => "Amount Entry", + "bulk_edit" => "Bulk Edit", + "buy_price_required" => "Purchase Price is a required field.", + "cannot_be_deleted" => "Could not delete the selected Item(s), one or more of the selected Items have sales.", + "cannot_find_item" => "Item not found.", + "categories" => "", + "category" => "Category", + "category_new" => "", + "category_required" => "Category is a required field.", + "change_all_to_allow_alt_desc" => "Allow Alternate Description for all.", + "change_all_to_not_allow_allow_desc" => "Do not allow Alternate Description for all.", + "change_all_to_serialized" => "Change all to Serialised", + "change_all_to_unserialized" => "Change all to Unserialised", + "change_image" => "Change Image", + "confirm_bulk_edit" => "Are you sure you want to edit selected Item(s)?", + "confirm_bulk_edit_wipe_taxes" => "All Item Tax information will be replaced.", + "confirm_delete" => "Are you sure you want to delete the selected Item(s)?", + "confirm_restore" => "Are you sure you want to restore the selected Item(s)?", + "cost_price" => "Cost Price", + "cost_price_number" => "Cost Price must be a number.", + "cost_price_required" => "Cost Price is a required field.", + "count" => "Update Inventory", + "csv_import_failed" => "The csv import failed", + "csv_import_nodata_wrongformat" => "The uploaded file has no data or is formatted incorrectly.", + "csv_import_partially_failed" => "There were {0} item import failure(s) on line(s): {1}. No rows were imported.", + "csv_import_success" => "Item import successful.", + "current_quantity" => "Current Quantity", + "default_pack_name" => "Each", + "description" => "Description", + "details_count" => "Inventory count details", + "do_nothing" => "Do nothing", + "edit" => "", + "edit_fields_you_want_to_update" => "Edit the fields you want to edit for all the selected items.", + "edit_multiple_items" => "Editing Multiple Items", + "empty_upc_items" => "Empty Barcode Items", + "error_adding_updating" => "Error adding/updating item", + "error_updating_multiple" => "Error updating items", + "generate_barcodes" => "Generate Barcodes", + "hsn_code" => "Harmonised System Nomenclature", + "image" => "Avatar", + "import_items_csv" => "Item Import from CSV", + "info_provided_by" => "Information provided by", + "inventory" => "Inventory", + "inventory_CSV_import_quantity" => "Quantity Imported from CSV", + "inventory_comments" => "Comments", + "inventory_data_tracking" => "Inventory Data Tracking", + "inventory_date" => "Date", + "inventory_employee" => "Employee", + "inventory_in_out_quantity" => "In/Out Quantity", + "inventory_remarks" => "Remarks", + "is_deleted" => "Deleted", + "is_printed" => "", + "is_serialized" => "Item has Serial Number", + "item" => "Item", + "item_id" => "", + "item_number" => "Barcode", + "item_number_duplicate" => "Item Number is already present in the database.", + "kit" => "Kit", + "location" => "Location", + "low_inventory_items" => "Out Of Stock Items", + "low_sell_item" => "Low sell item", + "manually_editing_of_quantity" => "Manual Edit of Quantity", + "markup" => "", + "name" => "Item Name", + "name_required" => "Item Name is a required field.", + "new" => "New Item", + "no_description_items" => "No Description Items", + "no_items_to_display" => "No Items to display.", + "none" => "None", + "none_selected" => "You have not selected any Item(s) to edit", + "nonstock" => "Non-stocked", + "number_information" => "Item Number", + "number_required" => "Barcode is a required field.", + "one_or_multiple" => "item(s)", + "pack_name" => "Pack Name", + "qty_per_pack" => "Quantity per pack", + "quantity" => "Quantity", + "quantity_number" => "Quantity must be a number.", + "quantity_required" => "Quantity is a required field.", + "receiving_quantity" => "Receiving Quantity", + "remove_image" => "Remove Image", + "reorder_level" => "Reorder Level", + "reorder_level_number" => "Reorder Level must be a number.", + "reorder_level_required" => "Reorder Level is a required field.", + "retrive_item_info" => "Retrieve Item Info", + "sales_tax_1" => "Sales Tax", + "sales_tax_2" => "Sales Tax 2", + "search_attributes" => "Search Attributes. Date format Y-m-d", + "select_image" => "Select Image", + "serialized_items" => "Serialised Items", + "standard" => "Standard", + "stock" => "Stock", + "stock_location" => "Stock location", + "stock_type" => "Stock Type", + "successful_adding" => "You have successfully added Item", + "successful_bulk_edit" => "You have successfully updated the selected Items", + "successful_deleted" => "You have successfully deleted Item", + "successful_updating" => "You have successfully updated Item", + "supplier" => "Supplier", + "tax_1" => "Tax 1", + "tax_2" => "Tax 2", + "tax_3" => "", + "tax_category" => "Tax Category", + "tax_percent" => "Tax Percent", + "tax_percent_number" => "Tax Percent must be a numeric value", + "tax_percent_required" => "Tax Percent is a required field.", + "tax_percents" => "Tax Percent(s)", + "temp" => "Temporary", + "type" => "Item Type", + "unit_price" => "Sell Price", + "unit_price_number" => "Sell Price must be a number.", + "unit_price_required" => "Sell Price is a required field.", + "upc_database" => "Barcode Database", + "update" => "Update Item", + "use_inventory_menu" => "Use Inventory Menu", ]; diff --git a/app/Language/en-GB/Messages.php b/app/Language/en-GB/Messages.php index dabf5733c..eb254d6dd 100644 --- a/app/Language/en-GB/Messages.php +++ b/app/Language/en-GB/Messages.php @@ -1,15 +1,15 @@ "First name", - "last_name" => "Last name", - "message" => "Message", - "message_placeholder" => "Your Message here...", - "message_required" => "Message required", - "multiple_phones" => "(In case of multiple recipients, enter mobile numbers separated by commas)", - "phone" => "Phone number", - "phone_number_required" => "Phone number required", - "phone_placeholder" => "Mobile Number(s) here...", - "sms_send" => "Send SMS", - "successfully_sent" => "Message successfully sent to: ", - "unsuccessfully_sent" => "Message unsuccessfully sent to: ", + "first_name" => "First name", + "last_name" => "Last name", + "message" => "Message", + "message_placeholder" => "Your Message here...", + "message_required" => "Message required", + "multiple_phones" => "(In case of multiple recipients, enter mobile numbers separated by commas)", + "phone" => "Phone number", + "phone_number_required" => "Phone number required", + "phone_placeholder" => "Mobile Number(s) here...", + "sms_send" => "Send SMS", + "successfully_sent" => "Message successfully sent to: ", + "unsuccessfully_sent" => "Message unsuccessfully sent to: ", ]; diff --git a/app/Language/en-GB/Module.php b/app/Language/en-GB/Module.php index c7c002dee..fb7d07a30 100644 --- a/app/Language/en-GB/Module.php +++ b/app/Language/en-GB/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "Attributes", - "attributes_desc" => "Add, Update, Delete, and Search attributes.", - "both" => "Both", - "cashups" => "Cashups", - "cashups_desc" => "Add, Update, Delete, and Search Cashups.", - "config" => "Configuration", - "config_desc" => "Change OSPOS's Configuration.", - "customers" => "Customers", - "customers_desc" => "Add, Update, Delete, and Search Customers.", - "employees" => "Employees", - "employees_desc" => "Add, Update, Delete, and Search Employees.", - "expenses" => "Expenses", - "expenses_categories" => "Expenses Categories", - "expenses_categories_desc" => "Add, Update, and Delete Expenses Categories.", - "expenses_desc" => "Add, Update, Delete, and Search Expenses.", - "giftcards" => "Gift Cards", - "giftcards_desc" => "Add, Update, Delete and Search Gift Cards.", - "home" => "Home", - "home_desc" => "List home menu modules.", - "item_kits" => "Item Kits", - "item_kits_desc" => "Add, Update, Delete and Search Item Kits.", - "items" => "Items", - "items_desc" => "Add, Update, Delete, and Search Items.", - "messages" => "Messages", - "messages_desc" => "Send Messages to Customers, Suppliers and Employees.", - "migrate" => "Migrate", - "migrate_desc" => "Update the OSPOS Database.", - "office" => "Office", - "office_desc" => "List office menu modules.", - "receivings" => "Receivings", - "receivings_desc" => "Process Purchase Orders.", - "reports" => "Reports", - "reports_desc" => "View and generate Reports.", - "sales" => "Sales", - "sales_desc" => "Process Sales and Returns.", - "suppliers" => "Suppliers", - "suppliers_desc" => "Add, Update, Delete, and Search Suppliers.", - "taxes" => "Taxes", - "taxes_desc" => "Configure Sales Taxes.", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "Attributes", + "attributes_desc" => "Add, Update, Delete, and Search attributes.", + "both" => "Both", + "cashups" => "Cashups", + "cashups_desc" => "Add, Update, Delete, and Search Cashups.", + "config" => "Configuration", + "config_desc" => "Change OSPOS's Configuration.", + "customers" => "Customers", + "customers_desc" => "Add, Update, Delete, and Search Customers.", + "employees" => "Employees", + "employees_desc" => "Add, Update, Delete, and Search Employees.", + "expenses" => "Expenses", + "expenses_categories" => "Expenses Categories", + "expenses_categories_desc" => "Add, Update, and Delete Expenses Categories.", + "expenses_desc" => "Add, Update, Delete, and Search Expenses.", + "giftcards" => "Gift Cards", + "giftcards_desc" => "Add, Update, Delete and Search Gift Cards.", + "home" => "Home", + "home_desc" => "List home menu modules.", + "item_kits" => "Item Kits", + "item_kits_desc" => "Add, Update, Delete and Search Item Kits.", + "items" => "Items", + "items_desc" => "Add, Update, Delete, and Search Items.", + "messages" => "Messages", + "messages_desc" => "Send Messages to Customers, Suppliers and Employees.", + "migrate" => "Migrate", + "migrate_desc" => "Update the OSPOS Database.", + "office" => "Office", + "office_desc" => "List office menu modules.", + "receivings" => "Receivings", + "receivings_desc" => "Process Purchase Orders.", + "reports" => "Reports", + "reports_desc" => "View and generate Reports.", + "sales" => "Sales", + "sales_desc" => "Process Sales and Returns.", + "suppliers" => "Suppliers", + "suppliers_desc" => "Add, Update, Delete, and Search Suppliers.", + "taxes" => "Taxes", + "taxes_desc" => "Configure Sales Taxes.", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/en-GB/Receivings.php b/app/Language/en-GB/Receivings.php index 6eaea28af..c155a0fda 100644 --- a/app/Language/en-GB/Receivings.php +++ b/app/Language/en-GB/Receivings.php @@ -1,58 +1,58 @@ "", - "cancel_receiving" => "Cancel", - "cannot_be_deleted" => "Receiving(s) delete failed.", - "comments" => "Comments", - "complete_receiving" => "Finish", - "confirm_cancel_receiving" => "Are you sure you want to clear this receiving? All items will be cleared.", - "confirm_delete" => "Are you sure you want to delete this receiving? This action cannot be undone.", - "confirm_finish_receiving" => "Are you sure you want to submit this receiving? This cannot be undone.", - "confirm_restore" => "", - "cost" => "Cost", - "daily" => "", - "date" => "Receiving Date", - "date_required" => "A correct date must be entered.", - "date_type" => "Date is a required field.", - "delete_entire_sale" => "Delete Entire Sale", - "discount" => "Discount", - "edit" => "Edit", - "edit_sale" => "Edit Receiving", - "employee" => "Employee", - "error_editing_item" => "Item edit failed.", - "error_requisition" => "Unable to move Inventory from or to the same Stock Location.", - "find_or_scan_item" => "Find or Scan Item", - "find_or_scan_item_or_receipt" => "Find or Scan Item or Receipt", - "id" => "Receiving ID", - "item_name" => "Item Name", - "mode" => "Receiving Mode", - "new_supplier" => "New Supplier", - "one_or_multiple" => "receiving(s)", - "print_after_sale" => "Print After Sale", - "quantity" => "Qty.", - "receipt" => "Receivings Receipt", - "receipt_number" => "Receiving #", - "receiving" => "Receive", - "reference" => "Reference", - "register" => "Items Receiving", - "requisition" => "Requisition", - "return" => "Return", - "select_supplier" => "Select Supplier (Required)", - "ship_pack" => "Ship Pack", - "start_typing_supplier_name" => "Start Typing Supplier's name...", - "stock" => "Stock", - "stock_destination" => "Stock Destination", - "stock_locaiton" => "Stock Location", - "stock_source" => "Stock Source", - "successfully_deleted" => "You have successfully deleted receiving", - "successfully_updated" => "Receiving successfully updated", - "supplier" => "Supplier", - "supplier_address" => "Address", - "supplier_email" => "Email", - "supplier_location" => "Location", - "total" => "Total", - "transaction_failed" => "Receivings transaction(s) failed.", - "unable_to_add_item" => "Item add to Receiving failed.", - "unsuccessfully_updated" => "Receiving update failed.", - "update" => "Update", + "amount_due" => "", + "cancel_receiving" => "Cancel", + "cannot_be_deleted" => "Receiving(s) delete failed.", + "comments" => "Comments", + "complete_receiving" => "Finish", + "confirm_cancel_receiving" => "Are you sure you want to clear this receiving? All items will be cleared.", + "confirm_delete" => "Are you sure you want to delete this receiving? This action cannot be undone.", + "confirm_finish_receiving" => "Are you sure you want to submit this receiving? This cannot be undone.", + "confirm_restore" => "", + "cost" => "Cost", + "daily" => "", + "date" => "Receiving Date", + "date_required" => "A correct date must be entered.", + "date_type" => "Date is a required field.", + "delete_entire_sale" => "Delete Entire Sale", + "discount" => "Discount", + "edit" => "Edit", + "edit_sale" => "Edit Receiving", + "employee" => "Employee", + "error_editing_item" => "Item edit failed.", + "error_requisition" => "Unable to move Inventory from or to the same Stock Location.", + "find_or_scan_item" => "Find or Scan Item", + "find_or_scan_item_or_receipt" => "Find or Scan Item or Receipt", + "id" => "Receiving ID", + "item_name" => "Item Name", + "mode" => "Receiving Mode", + "new_supplier" => "New Supplier", + "one_or_multiple" => "receiving(s)", + "print_after_sale" => "Print After Sale", + "quantity" => "Qty.", + "receipt" => "Receivings Receipt", + "receipt_number" => "Receiving #", + "receiving" => "Receive", + "reference" => "Reference", + "register" => "Items Receiving", + "requisition" => "Requisition", + "return" => "Return", + "select_supplier" => "Select Supplier (Required)", + "ship_pack" => "Ship Pack", + "start_typing_supplier_name" => "Start Typing Supplier's name...", + "stock" => "Stock", + "stock_destination" => "Stock Destination", + "stock_locaiton" => "Stock Location", + "stock_source" => "Stock Source", + "successfully_deleted" => "You have successfully deleted receiving", + "successfully_updated" => "Receiving successfully updated", + "supplier" => "Supplier", + "supplier_address" => "Address", + "supplier_email" => "Email", + "supplier_location" => "Location", + "total" => "Total", + "transaction_failed" => "Receivings transaction(s) failed.", + "unable_to_add_item" => "Item add to Receiving failed.", + "unsuccessfully_updated" => "Receiving update failed.", + "update" => "Update", ]; diff --git a/app/Language/en-GB/Reports.php b/app/Language/en-GB/Reports.php index 0e798dd7a..cda97b20f 100644 --- a/app/Language/en-GB/Reports.php +++ b/app/Language/en-GB/Reports.php @@ -1,148 +1,148 @@ "All", - "authority" => "Authority", - "canceled" => "Cancelled", - "categories" => "Categories", - "categories_summary_report" => "Categories Summary Report", - "category" => "Category", - "code_canceled" => "CNL", - "code_invoice" => "INV", - "code_pos" => "POS", - "code_quote" => "Q", - "code_return" => "RET", - "code_type" => "Type", - "code_work_order" => "W/O", - "comments" => "Comments", - "commission" => "", - "complete" => "Completed Sales and Returns", - "completed_sales" => "Completed Sales", - "confirm_delete" => "Are you sure you want to delete the selected entry(ies)?", - "confirm_restore" => "Are you sure you want to restore the selected entry(ies)?", - "cost" => "Cost", - "cost_price" => "Cost Price", - "count" => "Count", - "customer" => "Customer", - "customers" => "Customers", - "customers_summary_report" => "Customers Summary Report", - "date" => "Date", - "date_range" => "Date Range", - "description" => "Description", - "detailed_receivings_report" => "Detailed Receivings Report", - "detailed_receivings_report_input" => "", - "detailed_reports" => "Detailed Reports", - "detailed_requisition_report" => "", - "detailed_sales_report" => "Detailed Transactions Report", - "discount" => "Discount", - "discount_fixed" => "Fixed Discount", - "discount_percent" => "Discount Percent", - "discount_type" => "Discount Type", - "discounts" => "Discounts", - "discounts_summary_report" => "Discounts Summary Report", - "earned" => "Points Earned", - "employee" => "Employee", - "employees" => "Employees", - "employees_summary_report" => "Employees Summary Report", - "expenses" => "Expenses", - "expenses_amount" => "Amount", - "expenses_categories" => "Expenses", - "expenses_categories_summary_report" => "Expense Categories Summary Report", - "expenses_category" => "Category", - "expenses_payment_amount" => "", - "expenses_tax_amount" => "Tax", - "expenses_total_amount" => "Total Amount", - "expenses_total_tax_amount" => "Total Tax", - "graphical_reports" => "Graphical Reports", - "inventory" => "Inventory", - "inventory_low" => "Low Inventory", - "inventory_low_report" => "Low Inventory Report", - "inventory_reports" => "Inventory Reports", - "inventory_summary" => "Inventory Summary", - "inventory_summary_report" => "Inventory Summary Report", - "item" => "Item", - "item_count" => "Filter Item Count", - "item_name" => "Item Name", - "item_number" => "Barcode", - "items" => "Items", - "items_purchased" => "Items Purchased", - "items_received" => "Items Received", - "items_summary_report" => "Items Summary Report", - "jurisdiction" => "Jurisdiction", - "low_inventory" => "", - "low_inventory_report" => "", - "low_sell_quantity" => "Low Sell Qty", - "more_than_zero" => "More than zero", - "name" => "Name", - "no_reports_to_display" => "No Items to display.", - "payment_type" => "Payment Type", - "payments" => "Payments", - "payments_summary_report" => "Payments Summary Report", - "profit" => "Profit", - "quantity" => "Quantity", - "quantity_purchased" => "Quantity Purchased", - "quotes" => "Quotes", - "received_by" => "Received By", - "receiving_id" => "Receiving ID", - "receiving_type" => "Receiving Type", - "receivings" => "Receivings", - "reorder_level" => "Reorder Level", - "report" => "Report", - "report_input" => "Report Input", - "reports" => "Reports", - "requisition" => "", - "requisition_by" => "", - "requisition_id" => "", - "requisition_item" => "", - "requisition_item_quantity" => "", - "requisition_related_item" => "", - "requisition_related_item_total_quantity" => "", - "requisition_related_item_unit_quantity" => "", - "requisitions" => "Requisitions", - "returns" => "Returns", - "revenue" => "Revenue", - "sale_id" => "Trans ID", - "sale_type" => "Transactions Type", - "sales" => "Transactions", - "sales_amount" => "Transactions amount", - "sales_summary_report" => "Transactions Summary Report", - "sales_taxes" => "Sales Taxes", - "sales_taxes_summary_report" => "Sales Taxes Summary Report", - "serial_number" => "Serial #", - "service_charge" => "", - "sold_by" => "Sold By", - "sold_items" => "", - "sold_to" => "Sold To", - "stock_location" => "Stock Location", - "sub_total_value" => "Sub Total", - "subtotal" => "Sub Total", - "summary_reports" => "Summary Reports", - "supplied_by" => "Supplied by", - "supplier" => "Supplier", - "suppliers" => "Suppliers", - "suppliers_summary_report" => "Suppliers Summary Report", - "tax" => "Tax", - "tax_category" => "Tax Category", - "tax_name" => "Tax Name", - "tax_percent" => "Tax Percent", - "tax_rate" => "Tax Rate", - "taxes" => "Taxes", - "taxes_summary_report" => "Taxes Summary Report", - "total" => "Total", - "total_inventory_value" => "Total Inventory Value", - "total_low_sell_quantity" => "Total Low Sell Quantity", - "total_quantity" => "Total Quantity", - "total_retail" => "Total Inv. Retail Value", - "trans_amount" => "Transaction Amount", - "trans_due" => "Due", - "trans_group" => "Transaction Group", - "trans_nopay_sales" => "Sales with no payment", - "trans_payments" => "Payments", - "trans_refunded" => "Refunded", - "trans_sales" => "Sales", - "trans_type" => "Transaction Type", - "type" => "Type", - "unit_price" => "Sell Price", - "used" => "Points Used", - "work_orders" => "Work Orders", - "zero_and_less" => "Zero and Less", + "all" => "All", + "authority" => "Authority", + "canceled" => "Cancelled", + "categories" => "Categories", + "categories_summary_report" => "Categories Summary Report", + "category" => "Category", + "code_canceled" => "CNL", + "code_invoice" => "INV", + "code_pos" => "POS", + "code_quote" => "Q", + "code_return" => "RET", + "code_type" => "Type", + "code_work_order" => "W/O", + "comments" => "Comments", + "commission" => "", + "complete" => "Completed Sales and Returns", + "completed_sales" => "Completed Sales", + "confirm_delete" => "Are you sure you want to delete the selected entry(ies)?", + "confirm_restore" => "Are you sure you want to restore the selected entry(ies)?", + "cost" => "Cost", + "cost_price" => "Cost Price", + "count" => "Count", + "customer" => "Customer", + "customers" => "Customers", + "customers_summary_report" => "Customers Summary Report", + "date" => "Date", + "date_range" => "Date Range", + "description" => "Description", + "detailed_receivings_report" => "Detailed Receivings Report", + "detailed_receivings_report_input" => "", + "detailed_reports" => "Detailed Reports", + "detailed_requisition_report" => "", + "detailed_sales_report" => "Detailed Transactions Report", + "discount" => "Discount", + "discount_fixed" => "Fixed Discount", + "discount_percent" => "Discount Percent", + "discount_type" => "Discount Type", + "discounts" => "Discounts", + "discounts_summary_report" => "Discounts Summary Report", + "earned" => "Points Earned", + "employee" => "Employee", + "employees" => "Employees", + "employees_summary_report" => "Employees Summary Report", + "expenses" => "Expenses", + "expenses_amount" => "Amount", + "expenses_categories" => "Expenses", + "expenses_categories_summary_report" => "Expense Categories Summary Report", + "expenses_category" => "Category", + "expenses_payment_amount" => "", + "expenses_tax_amount" => "Tax", + "expenses_total_amount" => "Total Amount", + "expenses_total_tax_amount" => "Total Tax", + "graphical_reports" => "Graphical Reports", + "inventory" => "Inventory", + "inventory_low" => "Low Inventory", + "inventory_low_report" => "Low Inventory Report", + "inventory_reports" => "Inventory Reports", + "inventory_summary" => "Inventory Summary", + "inventory_summary_report" => "Inventory Summary Report", + "item" => "Item", + "item_count" => "Filter Item Count", + "item_name" => "Item Name", + "item_number" => "Barcode", + "items" => "Items", + "items_purchased" => "Items Purchased", + "items_received" => "Items Received", + "items_summary_report" => "Items Summary Report", + "jurisdiction" => "Jurisdiction", + "low_inventory" => "", + "low_inventory_report" => "", + "low_sell_quantity" => "Low Sell Qty", + "more_than_zero" => "More than zero", + "name" => "Name", + "no_reports_to_display" => "No Items to display.", + "payment_type" => "Payment Type", + "payments" => "Payments", + "payments_summary_report" => "Payments Summary Report", + "profit" => "Profit", + "quantity" => "Quantity", + "quantity_purchased" => "Quantity Purchased", + "quotes" => "Quotes", + "received_by" => "Received By", + "receiving_id" => "Receiving ID", + "receiving_type" => "Receiving Type", + "receivings" => "Receivings", + "reorder_level" => "Reorder Level", + "report" => "Report", + "report_input" => "Report Input", + "reports" => "Reports", + "requisition" => "", + "requisition_by" => "", + "requisition_id" => "", + "requisition_item" => "", + "requisition_item_quantity" => "", + "requisition_related_item" => "", + "requisition_related_item_total_quantity" => "", + "requisition_related_item_unit_quantity" => "", + "requisitions" => "Requisitions", + "returns" => "Returns", + "revenue" => "Revenue", + "sale_id" => "Trans ID", + "sale_type" => "Transactions Type", + "sales" => "Transactions", + "sales_amount" => "Transactions amount", + "sales_summary_report" => "Transactions Summary Report", + "sales_taxes" => "Sales Taxes", + "sales_taxes_summary_report" => "Sales Taxes Summary Report", + "serial_number" => "Serial #", + "service_charge" => "", + "sold_by" => "Sold By", + "sold_items" => "", + "sold_to" => "Sold To", + "stock_location" => "Stock Location", + "sub_total_value" => "Sub Total", + "subtotal" => "Sub Total", + "summary_reports" => "Summary Reports", + "supplied_by" => "Supplied by", + "supplier" => "Supplier", + "suppliers" => "Suppliers", + "suppliers_summary_report" => "Suppliers Summary Report", + "tax" => "Tax", + "tax_category" => "Tax Category", + "tax_name" => "Tax Name", + "tax_percent" => "Tax Percent", + "tax_rate" => "Tax Rate", + "taxes" => "Taxes", + "taxes_summary_report" => "Taxes Summary Report", + "total" => "Total", + "total_inventory_value" => "Total Inventory Value", + "total_low_sell_quantity" => "Total Low Sell Quantity", + "total_quantity" => "Total Quantity", + "total_retail" => "Total Inv. Retail Value", + "trans_amount" => "Transaction Amount", + "trans_due" => "Due", + "trans_group" => "Transaction Group", + "trans_nopay_sales" => "Sales with no payment", + "trans_payments" => "Payments", + "trans_refunded" => "Refunded", + "trans_sales" => "Sales", + "trans_type" => "Transaction Type", + "type" => "Type", + "unit_price" => "Sell Price", + "used" => "Points Used", + "work_orders" => "Work Orders", + "zero_and_less" => "Zero and Less", ]; diff --git a/app/Language/en-GB/Sales.php b/app/Language/en-GB/Sales.php index d046090e2..0b2fe4b8c 100644 --- a/app/Language/en-GB/Sales.php +++ b/app/Language/en-GB/Sales.php @@ -1,225 +1,225 @@ "Points Available", - "rewards_package" => "Rewards", - "rewards_remaining_balance" => "Reward Points remaining value is ", - "account_number" => "Account #", - "add_payment" => "Add Payment", - "amount_due" => "Amount Due", - "amount_tendered" => "Amount Tendered", - "authorized_signature" => "Authorised Signature", - "cancel_sale" => "Cancel", - "cash" => "Cash", - "cash_1" => "", - "cash_2" => "", - "cash_3" => "", - "cash_4" => "", - "cash_adjustment" => "Cash Adjustment", - "cash_deposit" => "Cash Deposit", - "cash_filter" => "Cash", - "change_due" => "Change Due", - "change_price" => "Change Selling Price", - "check" => "Cheque", - "check_balance" => "Cheque remainder", - "check_filter" => "Cheque", - "close" => "", - "comment" => "Comment", - "comments" => "Comments", - "company_name" => "", - "complete" => "", - "complete_sale" => "Complete", - "confirm_cancel_sale" => "Are you sure you want to clear this sale? All items will be cleared.", - "confirm_delete" => "Are you sure you want to delete the selected Sale(s)?", - "confirm_restore" => "Are you sure you want to restore the selected Sale(s)?", - "credit" => "Credit Card", - "credit_deposit" => "Credit Deposit", - "credit_filter" => "Credit Card", - "current_table" => "", - "customer" => "Customer", - "customer_address" => "Address", - "customer_discount" => "Discount", - "customer_email" => "Email", - "customer_location" => "Location", - "customer_mailchimp_status" => "MailChimp Status", - "customer_optional" => "(Required for Due Payments)", - "customer_required" => "(Required)", - "customer_total" => "Total", - "customer_total_spent" => "", - "daily_sales" => "", - "date" => "Sale Date", - "date_range" => "Date Range", - "date_required" => "A correct date must be entered.", - "date_type" => "Date is a required field.", - "debit" => "Debit Card", - "debit_filter" => "", - "delete" => "Allow Delete", - "delete_confirmation" => "Are you sure you want to delete this sale? This action cannot be undone.", - "delete_entire_sale" => "Delete Entire Sale", - "delete_successful" => "Sale delete successful.", - "delete_unsuccessful" => "Sale delete failed.", - "description_abbrv" => "Desc.", - "discard" => "Discard", - "discard_quote" => "", - "discount" => "Disc", - "discount_included" => "% Discount", - "discount_short" => "%", - "due" => "Due", - "due_filter" => "Due", - "edit" => "Edit", - "edit_item" => "Edit Item", - "edit_sale" => "Edit Sale", - "email_receipt" => "Email Receipt", - "employee" => "Employee", - "entry" => "Entry", - "error_editing_item" => "Error editing item", - "find_or_scan_item" => "Find or Scan Item", - "find_or_scan_item_or_receipt" => "Find or Scan Item or Receipt", - "giftcard" => "Gift Card", - "giftcard_balance" => "Gift Card Balance", - "giftcard_filter" => "", - "giftcard_number" => "Gift Card Number", - "group_by_category" => "Group by Category", - "group_by_type" => "Group by Type", - "hsn" => "HSN", - "id" => "Sale ID", - "include_prices" => "Include Prices?", - "invoice" => "Invoice", - "invoice_confirm" => "This invoice will be sent to", - "invoice_enable" => "Invoice Number", - "invoice_filter" => "Invoices", - "invoice_no_email" => "This customer does not have a valid email address.", - "invoice_number" => "Invoice #", - "invoice_number_duplicate" => "Invoice Number {0} must be unique.", - "invoice_sent" => "Invoice sent to", - "invoice_total" => "Invoice Total", - "invoice_type_custom_invoice" => "Custom Invoice (custom_invoice.php)", - "invoice_type_custom_tax_invoice" => "Custom Tax Invoice (custom_tax_invoice.php)", - "invoice_type_invoice" => "Invoice (invoice.php)", - "invoice_type_tax_invoice" => "Tax Invoice (tax_invoice.php)", - "invoice_unsent" => "Invoice failed to be sent to", - "invoice_update" => "Recount", - "item_insufficient_of_stock" => "Item has insufficient stock.", - "item_name" => "Item Name", - "item_number" => "Item #", - "item_out_of_stock" => "Item is out of stock.", - "key_browser" => "Helpful Shortcuts", - "key_cancel" => "Cancels Current Quote/Invoice/Sale", - "key_customer_search" => "Customer Search", - "key_finish_quote" => "Finish Quote/Invoice without payment", - "key_finish_sale" => "Add Payment and Complete Invoice/Sale", - "key_full" => "Open in Full Screen Mode", - "key_function" => "Function", - "key_help" => "Shortcuts", - "key_help_modal" => "Open Shortcuts Window", - "key_in" => "Zoom in", - "key_item_search" => "Item Search", - "key_out" => "Zoom Out", - "key_payment" => "Add Payment", - "key_print" => "Print Current Page", - "key_restore" => "Restore Original Display/Zoom", - "key_search" => "Search Reports Tables", - "key_suspend" => "Suspend Current Sale", - "key_suspended" => "Show Suspended Sales", - "key_system" => "System Shortcuts", - "key_tendered" => "Edit Amount Tendered", - "key_title" => "Sales Keyboard Shortcuts", - "mc" => "", - "mode" => "Register Mode", - "must_enter_numeric" => "Amount Tendered must be a number.", - "must_enter_numeric_giftcard" => "Gift Card Number must be a number.", - "new_customer" => "New Customer", - "new_item" => "New Item", - "no_description" => "No description", - "no_filter" => "All", - "no_items_in_cart" => "There are no Items in the cart.", - "no_sales_to_display" => "No Sales to display.", - "none_selected" => "You have not selected any Sale(s) to delete.", - "nontaxed_ind" => " ", - "not_authorized" => "This action is not authorised.", - "one_or_multiple" => "Sale(s)", - "payment" => "Payment Type", - "payment_amount" => "Amount", - "payment_not_cover_total" => "Payment Amount does not cover Total.", - "payment_type" => "Type", - "payments" => "", - "payments_total" => "Payments Total", - "price" => "Price", - "print_after_sale" => "Print after Sale", - "quantity" => "Qty", - "quantity_less_than_reorder_level" => "Warning: Desired Quantity is below Reorder Level for that Item.", - "quantity_less_than_zero" => "Warning: Desired Quantity is out of stock, audit your inventory.", - "quantity_of_items" => "Quantity of {0} Items", - "quote" => "Quote", - "quote_number" => "Quote Number", - "quote_number_duplicate" => "Quote Number must be unique.", - "quote_sent" => "Quote sent to", - "quote_unsent" => "Quote failed to be sent to", - "receipt" => "Sales Receipt", - "receipt_no_email" => "This customer does not have a valid email address.", - "receipt_number" => "Sale #", - "receipt_sent" => "Receipt sent to", - "receipt_unsent" => "Receipt failed to be sent to", - "refund" => "Refund Type", - "register" => "Sales Register", - "remove_customer" => "Remove Customer", - "remove_discount" => "", - "return" => "Return", - "rewards" => "Reward Points", - "rewards_balance" => "Reward Points Balance", - "sale" => "Sale", - "sale_by_invoice" => "Sale by Invoice", - "sale_for_customer" => "Customer:", - "sale_time" => "Time", - "sales_tax" => "Sales Tax", - "sales_total" => "", - "select_customer" => "Select Customer", - "selected_customer" => "Selected Customer", - "send_invoice" => "Send Invoice", - "send_quote" => "Send Quote", - "send_receipt" => "Send Receipt", - "send_work_order" => "Send Work Order", - "serial" => "Serial", - "service_charge" => "", - "show_due" => "", - "show_invoice" => "Show Invoice", - "show_receipt" => "Show Receipt", - "start_typing_customer_name" => "Start typing customer details...", - "start_typing_item_name" => "Start typing Item Name or scan Barcode...", - "stock" => "Stock", - "stock_location" => "Stock Location", - "sub_total" => "Sub Total", - "successfully_deleted" => "You have successfully deleted Sale", - "successfully_restored" => "You have successfully restored", - "successfully_suspended_sale" => "Sale suspend successful.", - "successfully_updated" => "Sale update successful.", - "suspend_sale" => "Suspend", - "suspended_doc_id" => "Document", - "suspended_sale_id" => "ID", - "suspended_sales" => "Suspended", - "table" => "Table", - "takings" => "Transactions", - "tax" => "Tax", - "tax_id" => "Tax Id", - "tax_invoice" => "Tax Invoice", - "tax_percent" => "Tax %", - "taxed_ind" => "T", - "total" => "Total", - "total_tax_exclusive" => "Tax excluded", - "transaction_failed" => "Sales Transaction failed.", - "unable_to_add_item" => "Item add to Sale failed", - "unsuccessfully_deleted" => "Sale(s) delete failed.", - "unsuccessfully_restored" => "Sale(s) restore failed.", - "unsuccessfully_suspended_sale" => "Sale suspend failed.", - "unsuccessfully_updated" => "Sale update failed.", - "unsuspend" => "Unsuspend", - "unsuspend_and_delete" => "Action", - "update" => "Update", - "upi" => "UPI", - "visa" => "", - "wholesale" => "", - "work_order" => "Work Order", - "work_order_number" => "Work Order Number", - "work_order_number_duplicate" => "Work Order Number must be unique.", - "work_order_sent" => "Work Order sent to", - "work_order_unsent" => "Work Order failed to be sent to", + "customers_available_points" => "Points Available", + "rewards_package" => "Rewards", + "rewards_remaining_balance" => "Reward Points remaining value is ", + "account_number" => "Account #", + "add_payment" => "Add Payment", + "amount_due" => "Amount Due", + "amount_tendered" => "Amount Tendered", + "authorized_signature" => "Authorised Signature", + "cancel_sale" => "Cancel", + "cash" => "Cash", + "cash_1" => "", + "cash_2" => "", + "cash_3" => "", + "cash_4" => "", + "cash_adjustment" => "Cash Adjustment", + "cash_deposit" => "Cash Deposit", + "cash_filter" => "Cash", + "change_due" => "Change Due", + "change_price" => "Change Selling Price", + "check" => "Cheque", + "check_balance" => "Cheque remainder", + "check_filter" => "Cheque", + "close" => "", + "comment" => "Comment", + "comments" => "Comments", + "company_name" => "", + "complete" => "", + "complete_sale" => "Complete", + "confirm_cancel_sale" => "Are you sure you want to clear this sale? All items will be cleared.", + "confirm_delete" => "Are you sure you want to delete the selected Sale(s)?", + "confirm_restore" => "Are you sure you want to restore the selected Sale(s)?", + "credit" => "Credit Card", + "credit_deposit" => "Credit Deposit", + "credit_filter" => "Credit Card", + "current_table" => "", + "customer" => "Customer", + "customer_address" => "Address", + "customer_discount" => "Discount", + "customer_email" => "Email", + "customer_location" => "Location", + "customer_mailchimp_status" => "MailChimp Status", + "customer_optional" => "(Required for Due Payments)", + "customer_required" => "(Required)", + "customer_total" => "Total", + "customer_total_spent" => "", + "daily_sales" => "", + "date" => "Sale Date", + "date_range" => "Date Range", + "date_required" => "A correct date must be entered.", + "date_type" => "Date is a required field.", + "debit" => "Debit Card", + "debit_filter" => "", + "delete" => "Allow Delete", + "delete_confirmation" => "Are you sure you want to delete this sale? This action cannot be undone.", + "delete_entire_sale" => "Delete Entire Sale", + "delete_successful" => "Sale delete successful.", + "delete_unsuccessful" => "Sale delete failed.", + "description_abbrv" => "Desc.", + "discard" => "Discard", + "discard_quote" => "", + "discount" => "Disc", + "discount_included" => "% Discount", + "discount_short" => "%", + "due" => "Due", + "due_filter" => "Due", + "edit" => "Edit", + "edit_item" => "Edit Item", + "edit_sale" => "Edit Sale", + "email_receipt" => "Email Receipt", + "employee" => "Employee", + "entry" => "Entry", + "error_editing_item" => "Error editing item", + "find_or_scan_item" => "Find or Scan Item", + "find_or_scan_item_or_receipt" => "Find or Scan Item or Receipt", + "giftcard" => "Gift Card", + "giftcard_balance" => "Gift Card Balance", + "giftcard_filter" => "", + "giftcard_number" => "Gift Card Number", + "group_by_category" => "Group by Category", + "group_by_type" => "Group by Type", + "hsn" => "HSN", + "id" => "Sale ID", + "include_prices" => "Include Prices?", + "invoice" => "Invoice", + "invoice_confirm" => "This invoice will be sent to", + "invoice_enable" => "Invoice Number", + "invoice_filter" => "Invoices", + "invoice_no_email" => "This customer does not have a valid email address.", + "invoice_number" => "Invoice #", + "invoice_number_duplicate" => "Invoice Number {0} must be unique.", + "invoice_sent" => "Invoice sent to", + "invoice_total" => "Invoice Total", + "invoice_type_custom_invoice" => "Custom Invoice (custom_invoice.php)", + "invoice_type_custom_tax_invoice" => "Custom Tax Invoice (custom_tax_invoice.php)", + "invoice_type_invoice" => "Invoice (invoice.php)", + "invoice_type_tax_invoice" => "Tax Invoice (tax_invoice.php)", + "invoice_unsent" => "Invoice failed to be sent to", + "invoice_update" => "Recount", + "item_insufficient_of_stock" => "Item has insufficient stock.", + "item_name" => "Item Name", + "item_number" => "Item #", + "item_out_of_stock" => "Item is out of stock.", + "key_browser" => "Helpful Shortcuts", + "key_cancel" => "Cancels Current Quote/Invoice/Sale", + "key_customer_search" => "Customer Search", + "key_finish_quote" => "Finish Quote/Invoice without payment", + "key_finish_sale" => "Add Payment and Complete Invoice/Sale", + "key_full" => "Open in Full Screen Mode", + "key_function" => "Function", + "key_help" => "Shortcuts", + "key_help_modal" => "Open Shortcuts Window", + "key_in" => "Zoom in", + "key_item_search" => "Item Search", + "key_out" => "Zoom Out", + "key_payment" => "Add Payment", + "key_print" => "Print Current Page", + "key_restore" => "Restore Original Display/Zoom", + "key_search" => "Search Reports Tables", + "key_suspend" => "Suspend Current Sale", + "key_suspended" => "Show Suspended Sales", + "key_system" => "System Shortcuts", + "key_tendered" => "Edit Amount Tendered", + "key_title" => "Sales Keyboard Shortcuts", + "mc" => "", + "mode" => "Register Mode", + "must_enter_numeric" => "Amount Tendered must be a number.", + "must_enter_numeric_giftcard" => "Gift Card Number must be a number.", + "new_customer" => "New Customer", + "new_item" => "New Item", + "no_description" => "No description", + "no_filter" => "All", + "no_items_in_cart" => "There are no Items in the cart.", + "no_sales_to_display" => "No Sales to display.", + "none_selected" => "You have not selected any Sale(s) to delete.", + "nontaxed_ind" => " ", + "not_authorized" => "This action is not authorised.", + "one_or_multiple" => "Sale(s)", + "payment" => "Payment Type", + "payment_amount" => "Amount", + "payment_not_cover_total" => "Payment Amount does not cover Total.", + "payment_type" => "Type", + "payments" => "", + "payments_total" => "Payments Total", + "price" => "Price", + "print_after_sale" => "Print after Sale", + "quantity" => "Qty", + "quantity_less_than_reorder_level" => "Warning: Desired Quantity is below Reorder Level for that Item.", + "quantity_less_than_zero" => "Warning: Desired Quantity is out of stock, audit your inventory.", + "quantity_of_items" => "Quantity of {0} Items", + "quote" => "Quote", + "quote_number" => "Quote Number", + "quote_number_duplicate" => "Quote Number must be unique.", + "quote_sent" => "Quote sent to", + "quote_unsent" => "Quote failed to be sent to", + "receipt" => "Sales Receipt", + "receipt_no_email" => "This customer does not have a valid email address.", + "receipt_number" => "Sale #", + "receipt_sent" => "Receipt sent to", + "receipt_unsent" => "Receipt failed to be sent to", + "refund" => "Refund Type", + "register" => "Sales Register", + "remove_customer" => "Remove Customer", + "remove_discount" => "", + "return" => "Return", + "rewards" => "Reward Points", + "rewards_balance" => "Reward Points Balance", + "sale" => "Sale", + "sale_by_invoice" => "Sale by Invoice", + "sale_for_customer" => "Customer:", + "sale_time" => "Time", + "sales_tax" => "Sales Tax", + "sales_total" => "", + "select_customer" => "Select Customer", + "selected_customer" => "Selected Customer", + "send_invoice" => "Send Invoice", + "send_quote" => "Send Quote", + "send_receipt" => "Send Receipt", + "send_work_order" => "Send Work Order", + "serial" => "Serial", + "service_charge" => "", + "show_due" => "", + "show_invoice" => "Show Invoice", + "show_receipt" => "Show Receipt", + "start_typing_customer_name" => "Start typing customer details...", + "start_typing_item_name" => "Start typing Item Name or scan Barcode...", + "stock" => "Stock", + "stock_location" => "Stock Location", + "sub_total" => "Sub Total", + "successfully_deleted" => "You have successfully deleted Sale", + "successfully_restored" => "You have successfully restored", + "successfully_suspended_sale" => "Sale suspend successful.", + "successfully_updated" => "Sale update successful.", + "suspend_sale" => "Suspend", + "suspended_doc_id" => "Document", + "suspended_sale_id" => "ID", + "suspended_sales" => "Suspended", + "table" => "Table", + "takings" => "Transactions", + "tax" => "Tax", + "tax_id" => "Tax Id", + "tax_invoice" => "Tax Invoice", + "tax_percent" => "Tax %", + "taxed_ind" => "T", + "total" => "Total", + "total_tax_exclusive" => "Tax excluded", + "transaction_failed" => "Sales Transaction failed.", + "unable_to_add_item" => "Item add to Sale failed", + "unsuccessfully_deleted" => "Sale(s) delete failed.", + "unsuccessfully_restored" => "Sale(s) restore failed.", + "unsuccessfully_suspended_sale" => "Sale suspend failed.", + "unsuccessfully_updated" => "Sale update failed.", + "unsuspend" => "Unsuspend", + "unsuspend_and_delete" => "Action", + "update" => "Update", + "upi" => "UPI", + "visa" => "", + "wholesale" => "", + "work_order" => "Work Order", + "work_order_number" => "Work Order Number", + "work_order_number_duplicate" => "Work Order Number must be unique.", + "work_order_sent" => "Work Order sent to", + "work_order_unsent" => "Work Order failed to be sent to", ]; diff --git a/app/Language/en-GB/Suppliers.php b/app/Language/en-GB/Suppliers.php index ca329f7e3..ecaed8a47 100644 --- a/app/Language/en-GB/Suppliers.php +++ b/app/Language/en-GB/Suppliers.php @@ -1,24 +1,24 @@ "Account #", - "agency_name" => "Agency Name", - "cannot_be_deleted" => "Could not delete the selected Supplier(s). One or more have Sales.", - "category" => "Category", - "company_name" => "Company Name", - "company_name_required" => "Company Name is a required field.", - "confirm_delete" => "Are you sure you want to delete the selected Supplier(s)?", - "confirm_restore" => "Are you sure you want to restore the selected Supplier(s)?", - "cost" => "Cost Supplier", - "error_adding_updating" => "Supplier update or add failed.", - "goods" => "Goods Supplier", - "new" => "New Supplier", - "none_selected" => "You have not selected any Supplier(s) to delete.", - "one_or_multiple" => "Supplier(s)", - "successful_adding" => "You have successfully added Supplier", - "successful_deleted" => "You have successfully deleted Supplier", - "successful_updating" => "You have successfully updated Supplier", - "supplier" => "Supplier", - "supplier_id" => "ID", - "tax_id" => "Tax Id", - "update" => "Update Supplier", + "account_number" => "Account #", + "agency_name" => "Agency Name", + "cannot_be_deleted" => "Could not delete the selected Supplier(s). One or more have Sales.", + "category" => "Category", + "company_name" => "Company Name", + "company_name_required" => "Company Name is a required field.", + "confirm_delete" => "Are you sure you want to delete the selected Supplier(s)?", + "confirm_restore" => "Are you sure you want to restore the selected Supplier(s)?", + "cost" => "Cost Supplier", + "error_adding_updating" => "Supplier update or add failed.", + "goods" => "Goods Supplier", + "new" => "New Supplier", + "none_selected" => "You have not selected any Supplier(s) to delete.", + "one_or_multiple" => "Supplier(s)", + "successful_adding" => "You have successfully added Supplier", + "successful_deleted" => "You have successfully deleted Supplier", + "successful_updating" => "You have successfully updated Supplier", + "supplier" => "Supplier", + "supplier_id" => "ID", + "tax_id" => "Tax Id", + "update" => "Update Supplier", ]; diff --git a/app/Language/en-GB/Taxes.php b/app/Language/en-GB/Taxes.php index 49874e7b8..66de2f9a6 100644 --- a/app/Language/en-GB/Taxes.php +++ b/app/Language/en-GB/Taxes.php @@ -1,82 +1,82 @@ "Add Exception", - "cascade" => "Cascade", - "cascade_sequence" => "Cascade Sequence", - "city" => "City", - "code" => "Code", - "confirm_delete" => "Are you sure you want to delete this Tax Code? This action cannot be undone", - "confirm_restore" => "Are you sure you want to restore selected Tax Code(s)?", - "default_tax_category" => "Default Tax Category", - "default_tax_rate" => "Default Tax Rate", - "error_adding_updating" => "Tax Code add or update failed", - "group_seq" => "Group Seq", - "jurisdiction_name" => "Jurisdiction Name", - "name" => "Name", - "new" => "New Tax", - "no_taxes" => "", - "no_taxes_to_display" => "No Taxes Code available to display", - "reporting_authority" => "Reporting Authority", - "round_half_down" => "Half Down", - "round_half_even" => "Half Even", - "round_half_odd" => "Half Odd", - "round_half_up" => "Half Up", - "rounding_code" => "Rounding Code", - "sales_tax" => "Sales Tax", - "sales_tax_by_invoice" => "Sales Tax by Invoice", - "sequence" => "Seq.", - "state" => "State", - "successful_deleted" => "You have successfully deleted", - "tax_categories" => "Tax Categories", - "tax_categories_configuration" => "Tax Categories Configuration", - "tax_categories_saved_successfully" => "Tax Categories changes saved", - "tax_categories_saved_unsuccessfully" => "Tax Categories changes not saved", - "tax_category" => "Tax Category", - "tax_category_code" => "Tax Category Code", - "tax_category_duplicate" => "Duplicate tax category", - "tax_category_invalid_chars" => "Invalid characters in tax category name", - "tax_category_name" => "Tax Category Name", - "tax_category_new" => "New Tax Category", - "tax_category_required" => "Tax Category is Required", - "tax_code" => "Tax Code", - "tax_code_cannot_be_deleted" => "Tax Code delete failed", - "tax_code_duplicate" => "Duplicate Tax Code", - "tax_code_invalid_chars" => "Invalid Characters in Tax Code", - "tax_code_name" => "Tax Code Name", - "tax_code_required" => "Tax Code is a required field", - "tax_code_successful_deleted" => "You have successfully deleted Tax Code", - "tax_code_successful_updated" => "You have successfully updated", - "tax_code_successful_updating" => "You have successfully updated Tax Code", - "tax_code_successfully_added" => "You have successfully added", - "tax_code_type" => "Tax Code Type", - "tax_codes" => "Tax Codes", - "tax_codes_configuration" => "Tax Codes Configuration", - "tax_codes_saved_successfully" => "Tax Code changes saved", - "tax_codes_saved_unsuccessfully" => "Tax Code changes not saved", - "tax_excluded" => "Tax excluded", - "tax_group" => "Tax Group", - "tax_group_not_unique" => "Tax Group {0} is not unique", - "tax_group_sequence" => "Tax Group Sequence", - "tax_included" => "Tax included", - "tax_jurisdiction" => "Tax Jurisdiction", - "tax_jurisdiction_duplicate" => "Duplicate Tax Jurisdiction", - "tax_jurisdiction_invalid_chars" => "Invalid Characters in Jurisdiction Name", - "tax_jurisdiction_required" => "Tax jurisdiction is required", - "tax_jurisdictions" => "Tax Jurisdictions", - "tax_jurisdictions_configuration" => "Tax Jurisdictions Configuration", - "tax_jurisdictions_saved_successfully" => "Tax Jurisdiction changes saved", - "tax_jurisdictions_saved_unsuccessfully" => "Tax Jurisdiction changes not saved", - "tax_rate" => "Tax Rate", - "tax_rate_configuration" => "Tax Rate Configuration", - "tax_rate_error_adding_updating" => "Tax Rate add or update failed", - "tax_rate_numeric" => "Tax Rate must be a number", - "tax_rate_required" => "Tax Rate is a required field", - "tax_rate_successful_updated" => "You have successfully updated", - "tax_rate_successfully_added" => "You have successfully added", - "tax_rates" => "Tax Rates", - "tax_rates_configuration" => "Tax Rates Configuration", - "tax_rounding" => "Tax Rounding", - "tax_type" => "Tax Type", - "update" => "Update Tax Rate", - "vat_tax" => "VAT Tax", + "add_exception" => "Add Exception", + "cascade" => "Cascade", + "cascade_sequence" => "Cascade Sequence", + "city" => "City", + "code" => "Code", + "confirm_delete" => "Are you sure you want to delete this Tax Code? This action cannot be undone", + "confirm_restore" => "Are you sure you want to restore selected Tax Code(s)?", + "default_tax_category" => "Default Tax Category", + "default_tax_rate" => "Default Tax Rate", + "error_adding_updating" => "Tax Code add or update failed", + "group_seq" => "Group Seq", + "jurisdiction_name" => "Jurisdiction Name", + "name" => "Name", + "new" => "New Tax", + "no_taxes" => "", + "no_taxes_to_display" => "No Taxes Code available to display", + "reporting_authority" => "Reporting Authority", + "round_half_down" => "Half Down", + "round_half_even" => "Half Even", + "round_half_odd" => "Half Odd", + "round_half_up" => "Half Up", + "rounding_code" => "Rounding Code", + "sales_tax" => "Sales Tax", + "sales_tax_by_invoice" => "Sales Tax by Invoice", + "sequence" => "Seq.", + "state" => "State", + "successful_deleted" => "You have successfully deleted", + "tax_categories" => "Tax Categories", + "tax_categories_configuration" => "Tax Categories Configuration", + "tax_categories_saved_successfully" => "Tax Categories changes saved", + "tax_categories_saved_unsuccessfully" => "Tax Categories changes not saved", + "tax_category" => "Tax Category", + "tax_category_code" => "Tax Category Code", + "tax_category_duplicate" => "Duplicate tax category", + "tax_category_invalid_chars" => "Invalid characters in tax category name", + "tax_category_name" => "Tax Category Name", + "tax_category_new" => "New Tax Category", + "tax_category_required" => "Tax Category is Required", + "tax_code" => "Tax Code", + "tax_code_cannot_be_deleted" => "Tax Code delete failed", + "tax_code_duplicate" => "Duplicate Tax Code", + "tax_code_invalid_chars" => "Invalid Characters in Tax Code", + "tax_code_name" => "Tax Code Name", + "tax_code_required" => "Tax Code is a required field", + "tax_code_successful_deleted" => "You have successfully deleted Tax Code", + "tax_code_successful_updated" => "You have successfully updated", + "tax_code_successful_updating" => "You have successfully updated Tax Code", + "tax_code_successfully_added" => "You have successfully added", + "tax_code_type" => "Tax Code Type", + "tax_codes" => "Tax Codes", + "tax_codes_configuration" => "Tax Codes Configuration", + "tax_codes_saved_successfully" => "Tax Code changes saved", + "tax_codes_saved_unsuccessfully" => "Tax Code changes not saved", + "tax_excluded" => "Tax excluded", + "tax_group" => "Tax Group", + "tax_group_not_unique" => "Tax Group {0} is not unique", + "tax_group_sequence" => "Tax Group Sequence", + "tax_included" => "Tax included", + "tax_jurisdiction" => "Tax Jurisdiction", + "tax_jurisdiction_duplicate" => "Duplicate Tax Jurisdiction", + "tax_jurisdiction_invalid_chars" => "Invalid Characters in Jurisdiction Name", + "tax_jurisdiction_required" => "Tax jurisdiction is required", + "tax_jurisdictions" => "Tax Jurisdictions", + "tax_jurisdictions_configuration" => "Tax Jurisdictions Configuration", + "tax_jurisdictions_saved_successfully" => "Tax Jurisdiction changes saved", + "tax_jurisdictions_saved_unsuccessfully" => "Tax Jurisdiction changes not saved", + "tax_rate" => "Tax Rate", + "tax_rate_configuration" => "Tax Rate Configuration", + "tax_rate_error_adding_updating" => "Tax Rate add or update failed", + "tax_rate_numeric" => "Tax Rate must be a number", + "tax_rate_required" => "Tax Rate is a required field", + "tax_rate_successful_updated" => "You have successfully updated", + "tax_rate_successfully_added" => "You have successfully added", + "tax_rates" => "Tax Rates", + "tax_rates_configuration" => "Tax Rates Configuration", + "tax_rounding" => "Tax Rounding", + "tax_type" => "Tax Type", + "update" => "Update Tax Rate", + "vat_tax" => "VAT Tax", ]; diff --git a/app/Language/en-GB/index.html b/app/Language/en-GB/index.html index b702fbc39..69df4e1df 100644 --- a/app/Language/en-GB/index.html +++ b/app/Language/en-GB/index.html @@ -1,7 +1,7 @@ - 403 Forbidden + 403 Forbidden diff --git a/app/Language/en/Attributes.php b/app/Language/en/Attributes.php index d2373df5a..4e19bb7e6 100644 --- a/app/Language/en/Attributes.php +++ b/app/Language/en/Attributes.php @@ -1,32 +1,32 @@ "Attribute value cannot contain '_' or '|'", - "confirm_delete" => "Are you sure you want to delete the selected attribute(s)?", - "confirm_restore" => "Are you sure you want to restore the selected attribute(s)?", - "definition_cannot_be_deleted" => "Could not delete selected attribute(s)", - "definition_error_adding_updating" => "Attribute {0} could not be added or updated. Please check the error log.", - "definition_flags" => "Attribute Visibility", - "definition_group" => "Group", - "definition_id" => "Id", - "definition_name" => "Add Attribute", - "definition_name_required" => "Attribute name is a required field", - "definition_one_or_multiple" => "attribute(s)", - "definition_successful_adding" => "You have successfully added item", - "definition_successful_deleted" => "You have successfully deleted", - "definition_successful_updating" => "You have successfully updated attribute", - "definition_type" => "Attribute Type", - "definition_type_required" => "Attribute type is a required field", - "definition_unit" => "Measurement Unit", - "definition_values" => "Attribute Values", - "new" => "New Attribute", - "no_attributes_to_display" => "No Attributes to display", - "receipt_visibility" => "Receipt", - "show_in_items" => "Show in items", - "show_in_items_visibility" => "Items", - "show_in_receipt" => "Show in receipt", - "show_in_receivings" => "Show in receivings", - "show_in_receivings_visibility" => "Receivings", - "show_in_sales" => "Show in sales", - "show_in_sales_visibility" => "Sales", - "update" => "Update Attribute", + "attribute_value_invalid_chars" => "Attribute value cannot contain '_' or '|'", + "confirm_delete" => "Are you sure you want to delete the selected attribute(s)?", + "confirm_restore" => "Are you sure you want to restore the selected attribute(s)?", + "definition_cannot_be_deleted" => "Could not delete selected attribute(s)", + "definition_error_adding_updating" => "Attribute {0} could not be added or updated. Please check the error log.", + "definition_flags" => "Attribute Visibility", + "definition_group" => "Group", + "definition_id" => "Id", + "definition_name" => "Add Attribute", + "definition_name_required" => "Attribute name is a required field", + "definition_one_or_multiple" => "attribute(s)", + "definition_successful_adding" => "You have successfully added item", + "definition_successful_deleted" => "You have successfully deleted", + "definition_successful_updating" => "You have successfully updated attribute", + "definition_type" => "Attribute Type", + "definition_type_required" => "Attribute type is a required field", + "definition_unit" => "Measurement Unit", + "definition_values" => "Attribute Values", + "new" => "New Attribute", + "no_attributes_to_display" => "No Attributes to display", + "receipt_visibility" => "Receipt", + "show_in_items" => "Show in items", + "show_in_items_visibility" => "Items", + "show_in_receipt" => "Show in receipt", + "show_in_receivings" => "Show in receivings", + "show_in_receivings_visibility" => "Receivings", + "show_in_sales" => "Show in sales", + "show_in_sales_visibility" => "Sales", + "update" => "Update Attribute", ]; diff --git a/app/Language/en/Bootstrap_tables.php b/app/Language/en/Bootstrap_tables.php index ace8820d6..e009578b7 100644 --- a/app/Language/en/Bootstrap_tables.php +++ b/app/Language/en/Bootstrap_tables.php @@ -1,11 +1,11 @@ "all", - "columns" => "Columns", - "hide_show_pagination" => "Hide/Show pagination", - "loading" => "Loading, please wait...", - "page_from_to" => "Showing {0} to {1} of {2} rows", - "refresh" => "Refresh", - "rows_per_page" => "{0} rows per page", - "toggle" => "Toggle", + "all" => "all", + "columns" => "Columns", + "hide_show_pagination" => "Hide/Show pagination", + "loading" => "Loading, please wait...", + "page_from_to" => "Showing {0} to {1} of {2} rows", + "refresh" => "Refresh", + "rows_per_page" => "{0} rows per page", + "toggle" => "Toggle", ]; diff --git a/app/Language/en/Calendar.php b/app/Language/en/Calendar.php index 2cd099687..05393454f 100644 --- a/app/Language/en/Calendar.php +++ b/app/Language/en/Calendar.php @@ -1,48 +1,48 @@ "Su", - "mo" => "Mo", - "tu" => "Tu", - "we" => "We", - "th" => "Th", - "fr" => "Fr", - "sa" => "Sa", - "sun" => "Sun", - "mon" => "Mon", - "tue" => "Tue", - "wed" => "Wed", - "thu" => "Thu", - "fri" => "Fri", - "sat" => "Sat", - "sunday" => "Sunday", - "monday" => "Monday", - "tuesday" => "Tuesday", - "wednesday" => "Wednesday", - "thursday" => "Thursday", - "friday" => "Friday", - "saturday" => "Saturday", - "jan" => "Jan", - "feb" => "Feb", - "mar" => "Mar", - "apr" => "Apr", - "may" => "May", - "jun" => "Jun", - "jul" => "Jul", - "aug" => "Aug", - "sep" => "Sep", - "oct" => "Oct", - "nov" => "Nov", - "dec" => "Dec", - "january" => "January", - "february" => "February", - "march" => "March", - "april" => "April", - "mayl" => "May", - "june" => "June", - "july" => "July", - "august" => "August", - "september" => "September", - "october" => "October", - "november" => "November", - "december" => "December", + "su" => "Su", + "mo" => "Mo", + "tu" => "Tu", + "we" => "We", + "th" => "Th", + "fr" => "Fr", + "sa" => "Sa", + "sun" => "Sun", + "mon" => "Mon", + "tue" => "Tue", + "wed" => "Wed", + "thu" => "Thu", + "fri" => "Fri", + "sat" => "Sat", + "sunday" => "Sunday", + "monday" => "Monday", + "tuesday" => "Tuesday", + "wednesday" => "Wednesday", + "thursday" => "Thursday", + "friday" => "Friday", + "saturday" => "Saturday", + "jan" => "Jan", + "feb" => "Feb", + "mar" => "Mar", + "apr" => "Apr", + "may" => "May", + "jun" => "Jun", + "jul" => "Jul", + "aug" => "Aug", + "sep" => "Sep", + "oct" => "Oct", + "nov" => "Nov", + "dec" => "Dec", + "january" => "January", + "february" => "February", + "march" => "March", + "april" => "April", + "mayl" => "May", + "june" => "June", + "july" => "July", + "august" => "August", + "september" => "September", + "october" => "October", + "november" => "November", + "december" => "December", ]; diff --git a/app/Language/en/Cashups.php b/app/Language/en/Cashups.php index 7b0ada2d8..736c88065 100644 --- a/app/Language/en/Cashups.php +++ b/app/Language/en/Cashups.php @@ -1,49 +1,49 @@ "Amount", - "amount_number" => "Amount must be a number", - "amount_required" => "Amount is a Required Field.", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "Cashup cannot be deleted", - "cash_difference" => "", - "close_date" => "Close Date", - "close_employee" => "Closed By", - "closed_amount_card" => "Cards", - "closed_amount_cash" => "Closed Cash", - "closed_amount_check" => "Checks", - "closed_amount_due" => "Dues", - "closed_amount_giftcard" => "", - "closed_amount_total" => "Total", - "closed_date" => "Closed Date", - "confirm_delete" => "Are you sure you want to delete the selected Cashup?", - "confirm_restore" => "Are you sure you want to restore selected Cashup(s)?", - "confirm_submit" => "", - "date_number" => "Date must be a number", - "date_required" => "Date is a required field", - "description" => "Description", - "enable_expected" => "", - "error_adding_updating" => "Error adding/updating Cashup", - "giftcard" => "", - "id" => "Id", - "info" => "Cashups Info", - "info_employee" => "", - "is_deleted" => "Deleted", - "new" => "New Cashup", - "no_cashups_to_display" => "There are no Cashups to display", - "none_selected" => "You have not selected any Cashups", - "note" => "Notes", - "one_or_multiple" => "Cashups(s)", - "open_amount_cash" => "Open Cash", - "open_date" => "Open Date", - "open_employee" => "Opened By", - "opened_date" => "Opened Date", - "successful_adding" => "Cashup add successful", - "successful_deleted" => "Cashup delete successful", - "successful_updating" => "Cashup update successful", - "total" => "Total", - "transfer_amount_cash" => "In/Out Cash", - "transfer_amount_cash_minus" => "", - "update" => "Update Cashup", - "warning" => "", + "amount" => "Amount", + "amount_number" => "Amount must be a number", + "amount_required" => "Amount is a Required Field.", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "Cashup cannot be deleted", + "cash_difference" => "", + "close_date" => "Close Date", + "close_employee" => "Closed By", + "closed_amount_card" => "Cards", + "closed_amount_cash" => "Closed Cash", + "closed_amount_check" => "Checks", + "closed_amount_due" => "Dues", + "closed_amount_giftcard" => "", + "closed_amount_total" => "Total", + "closed_date" => "Closed Date", + "confirm_delete" => "Are you sure you want to delete the selected Cashup?", + "confirm_restore" => "Are you sure you want to restore selected Cashup(s)?", + "confirm_submit" => "", + "date_number" => "Date must be a number", + "date_required" => "Date is a required field", + "description" => "Description", + "enable_expected" => "", + "error_adding_updating" => "Error adding/updating Cashup", + "giftcard" => "", + "id" => "Id", + "info" => "Cashups Info", + "info_employee" => "", + "is_deleted" => "Deleted", + "new" => "New Cashup", + "no_cashups_to_display" => "There are no Cashups to display", + "none_selected" => "You have not selected any Cashups", + "note" => "Notes", + "one_or_multiple" => "Cashups(s)", + "open_amount_cash" => "Open Cash", + "open_date" => "Open Date", + "open_employee" => "Opened By", + "opened_date" => "Opened Date", + "successful_adding" => "Cashup add successful", + "successful_deleted" => "Cashup delete successful", + "successful_updating" => "Cashup update successful", + "total" => "Total", + "transfer_amount_cash" => "In/Out Cash", + "transfer_amount_cash_minus" => "", + "update" => "Update Cashup", + "warning" => "", ]; diff --git a/app/Language/en/Common.php b/app/Language/en/Common.php index 870f9a956..975530a9f 100644 --- a/app/Language/en/Common.php +++ b/app/Language/en/Common.php @@ -1,88 +1,88 @@ "Address 1", - "address_2" => "Address 2", - "admin" => "", - "city" => "City", - "clerk" => "", - "close" => "Close", - "color" => "", - "comments" => "Comments", - "common" => "common", - "confirm_search" => "You have selected one or more rows, these will no longer be selected after your search. Are you sure you want to submit this search?", - "copyrights" => "© 2010 - {0}", - "correct_errors" => "Please correct identified errors before saving", - "country" => "Country", - "dashboard" => "", - "date" => "Date", - "delete" => "Delete", - "det" => "details", - "download_import_template" => "Download Import CSV Template (CSV)", - "edit" => "edit", - "email" => "Email", - "email_invalid_format" => "The email address is not in the correct format.", - "export_csv" => "CSV Export", - "export_csv_no" => "No", - "export_csv_yes" => "Yes", - "fields_required_message" => "Fields in red are required", - "fields_required_message_unique" => "", - "first_name" => "First Name", - "first_name_required" => "First Name is a required field.", - "first_page" => "First", - "gender" => "Gender", - "gender_female" => "F", - "gender_male" => "M", - "gender_undefined" => "", - "icon" => "Icon", - "id" => "ID", - "import" => "Import", - "import_change_file" => "Change", - "import_csv" => "CSV Import", - "import_full_path" => "Full path to CSV file required", - "import_remove_file" => "Remove", - "import_select_file" => "Select file", - "inv" => "inv", - "last_name" => "Last Name", - "last_name_required" => "Last Name is a required field.", - "last_page" => "Last", - "learn_about_project" => "to learn the latest information about the project.", - "list_of" => "List of", - "logo" => "Logo", - "logo_mark" => "Mark", - "logout" => "", - "manager" => "", - "migration_needed" => "", - "new" => "New", - "no" => "No", - "no_persons_to_display" => "There are no people to display.", - "none_selected_text" => "[Select]", - "or" => "OR", - "people" => "", - "phone_number" => "Phone Number", - "phone_number_required" => "", - "please_visit_my" => "Please visit the", - "position" => "", - "powered_by" => "Powered by", - "price" => "Price", - "print" => "Print", - "remove" => "Remove", - "required" => "Required", - "restore" => "Restore", - "return_policy" => "Return Policy", - "search" => "Search", - "search_options" => "Search options", - "searched_for" => "Searched for", - "software_short" => "OSPOS", - "software_title" => "Open Source Point of Sale", - "state" => "State", - "submit" => "Submit", - "total_spent" => "Total Spent", - "unknown" => "Unknown", - "view_recent_sales" => "View Recent Sales", - "website" => "opensourcepos.org", - "welcome" => "Welcome", - "welcome_message" => "Welcome to OSPOS, click a module below to get started.", - "yes" => "Yes", - "you_are_using_ospos" => "", - "zip" => "Postal Code", + "address_1" => "Address 1", + "address_2" => "Address 2", + "admin" => "", + "city" => "City", + "clerk" => "", + "close" => "Close", + "color" => "", + "comments" => "Comments", + "common" => "common", + "confirm_search" => "You have selected one or more rows, these will no longer be selected after your search. Are you sure you want to submit this search?", + "copyrights" => "© 2010 - {0}", + "correct_errors" => "Please correct identified errors before saving", + "country" => "Country", + "dashboard" => "", + "date" => "Date", + "delete" => "Delete", + "det" => "details", + "download_import_template" => "Download Import CSV Template (CSV)", + "edit" => "edit", + "email" => "Email", + "email_invalid_format" => "The email address is not in the correct format.", + "export_csv" => "CSV Export", + "export_csv_no" => "No", + "export_csv_yes" => "Yes", + "fields_required_message" => "Fields in red are required", + "fields_required_message_unique" => "", + "first_name" => "First Name", + "first_name_required" => "First Name is a required field.", + "first_page" => "First", + "gender" => "Gender", + "gender_female" => "F", + "gender_male" => "M", + "gender_undefined" => "", + "icon" => "Icon", + "id" => "ID", + "import" => "Import", + "import_change_file" => "Change", + "import_csv" => "CSV Import", + "import_full_path" => "Full path to CSV file required", + "import_remove_file" => "Remove", + "import_select_file" => "Select file", + "inv" => "inv", + "last_name" => "Last Name", + "last_name_required" => "Last Name is a required field.", + "last_page" => "Last", + "learn_about_project" => "to learn the latest information about the project.", + "list_of" => "List of", + "logo" => "Logo", + "logo_mark" => "Mark", + "logout" => "", + "manager" => "", + "migration_needed" => "", + "new" => "New", + "no" => "No", + "no_persons_to_display" => "There are no people to display.", + "none_selected_text" => "[Select]", + "or" => "OR", + "people" => "", + "phone_number" => "Phone Number", + "phone_number_required" => "", + "please_visit_my" => "Please visit the", + "position" => "", + "powered_by" => "Powered by", + "price" => "Price", + "print" => "Print", + "remove" => "Remove", + "required" => "Required", + "restore" => "Restore", + "return_policy" => "Return Policy", + "search" => "Search", + "search_options" => "Search options", + "searched_for" => "Searched for", + "software_short" => "OSPOS", + "software_title" => "Open Source Point of Sale", + "state" => "State", + "submit" => "Submit", + "total_spent" => "Total Spent", + "unknown" => "Unknown", + "view_recent_sales" => "View Recent Sales", + "website" => "opensourcepos.org", + "welcome" => "Welcome", + "welcome_message" => "Welcome to OSPOS, click a module below to get started.", + "yes" => "Yes", + "you_are_using_ospos" => "", + "zip" => "Postal Code", ]; diff --git a/app/Language/en/Config.php b/app/Language/en/Config.php index d4d8d221a..45bdbe50d 100644 --- a/app/Language/en/Config.php +++ b/app/Language/en/Config.php @@ -1,330 +1,330 @@ "Company Address", - "address_required" => "Company address is a required field.", - "all_set" => "All file permissions are set correctly!", - "allow_duplicate_barcodes" => "Allow Duplicate Barcodes", - "apostrophe" => "apostrophe", - "backup_button" => "Backup", - "backup_database" => "Backup Database", - "barcode" => "Barcode", - "barcode_company" => "Company Name", - "barcode_configuration" => "Barcode Configuration", - "barcode_content" => "Barcode Content", - "barcode_first_row" => "Row 1", - "barcode_font" => "Font", - "barcode_formats" => "Input Formats", - "barcode_generate_if_empty" => "Generate if empty.", - "barcode_height" => "Height (px)", - "barcode_id" => "Item Id/Name", - "barcode_info" => "Barcode Configuration Information", - "barcode_layout" => "Barcode Layout", - "barcode_name" => "Name", - "barcode_number" => "Barcode", - "barcode_number_in_row" => "Number in row", - "barcode_page_cellspacing" => "Display page cellspacing.", - "barcode_page_width" => "Display page width", - "barcode_price" => "Price", - "barcode_second_row" => "Row 2", - "barcode_third_row" => "Row 3", - "barcode_tooltip" => "Warning: This feature can cause duplicate items to be imported or created. Do not use if you do not want duplicate barcodes.", - "barcode_type" => "Barcode Type", - "barcode_width" => "Width (px)", - "bottom" => "Bottom", - "cash_button" => "", - "cash_button_1" => "", - "cash_button_2" => "", - "cash_button_3" => "", - "cash_button_4" => "", - "cash_button_5" => "", - "cash_button_6" => "", - "cash_decimals" => "Cash Decimals", - "cash_decimals_tooltip" => "If Cash Decimals and Currency Decimals are the same then no cash triggered rounding will take place, unless Cash Rounding is set to Half Five.", - "cash_rounding" => "Cash Rounding", - "category_dropdown" => "Show Category as a dropdown", - "center" => "Center", - "change_apperance_tooltip" => "", - "comma" => "comma", - "company" => "Company Name", - "company_avatar" => "", - "company_change_image" => "Change Image", - "company_logo" => "Company Logo", - "company_remove_image" => "Remove Image", - "company_required" => "Company name is a required field", - "company_select_image" => "Select Image", - "company_website_url" => "Company website is not a valid URL (http://...).", - "country_codes" => "Country Codes", - "country_codes_tooltip" => "Comma separated list of country codes for nominatim address lookup.", - "currency_code" => "Currency Code", - "currency_decimals" => "Currency Decimals", - "currency_symbol" => "Currency Symbol", - "current_employee_only" => "", - "customer_reward" => "Reward", - "customer_reward_duplicate" => "Reward must be unique.", - "customer_reward_enable" => "Enable Customer Rewards", - "customer_reward_invalid_chars" => "Reward can not contain '_'", - "customer_reward_required" => "Reward is a required field", - "customer_sales_tax_support" => "", - "date_or_time_format" => "Date and Time Filter", - "datetimeformat" => "Date and Time Format", - "decimal_point" => "Decimal Point", - "default_barcode_font_size_number" => "Default Barcode Font Size must be a number.", - "default_barcode_font_size_required" => "Default Barcode Font Size is a required field.", - "default_barcode_height_number" => "Default Barcode Height must be a number.", - "default_barcode_height_required" => "Default Barcode Height is a required field.", - "default_barcode_num_in_row_number" => "Default Barcode Number in Row must be a number.", - "default_barcode_num_in_row_required" => "Default Barcode Number in Row is a required field.", - "default_barcode_page_cellspacing_number" => "Default Barcode Page Cellspacing must be a number.", - "default_barcode_page_cellspacing_required" => "Default Barcode Page Cellspacing is a required field.", - "default_barcode_page_width_number" => "Default Barcode Page Width must be a number.", - "default_barcode_page_width_required" => "Default Barcode Page Width is a required field.", - "default_barcode_width_number" => "Default Barcode Width must be a number.", - "default_barcode_width_required" => "Default Barcode Width is a required field.", - "default_item_columns" => "Default Visible Item Columns", - "default_origin_tax_code" => "Default Origin Tax Code", - "default_receivings_discount" => "Default Receivings Discount", - "default_receivings_discount_number" => "Default Receivings Discount must be a number.", - "default_receivings_discount_required" => "Default Receivings Discount is a required field.", - "default_sales_discount" => "Default Sales Discount", - "default_sales_discount_number" => "Default Sales Discount must be a number.", - "default_sales_discount_required" => "Default Sales Discount is a required field.", - "default_tax_category" => "Default Tax Category", - "default_tax_code" => "Default Tax Code", - "default_tax_jurisdiction" => "Default Tax Jurisdiction", - "default_tax_name_number" => "Default Tax Name must be a string.", - "default_tax_name_required" => "Default Tax Name is a required field.", - "default_tax_rate" => "Default Tax Rate %", - "default_tax_rate_1" => "Tax 1 Rate", - "default_tax_rate_2" => "Tax 2 Rate", - "default_tax_rate_3" => "", - "default_tax_rate_number" => "Default Tax Rate must be a number.", - "default_tax_rate_required" => "Default Tax Rate is a required field.", - "derive_sale_quantity" => "Allow Derived Sale Quantity", - "derive_sale_quantity_tooltip" => "If checked then a new item type will be provided for items ordered by extended amount", - "dinner_table" => "Table", - "dinner_table_duplicate" => "Table must be unique.", - "dinner_table_enable" => "Enable Dinner Tables", - "dinner_table_invalid_chars" => "Table Name can not contain '_'.", - "dinner_table_required" => "Table is a required field.", - "dot" => "dot", - "email" => "Email", - "email_configuration" => "Email Configuration", - "email_mailpath" => "Path to Sendmail", - "email_protocol" => "Protocol", - "email_receipt_check_behaviour" => "Email Receipt checkbox", - "email_receipt_check_behaviour_always" => "Always checked", - "email_receipt_check_behaviour_last" => "Remember last selection", - "email_receipt_check_behaviour_never" => "Always unchecked", - "email_smtp_crypto" => "SMTP Encryption", - "email_smtp_host" => "SMTP Server", - "email_smtp_pass" => "SMTP Password", - "email_smtp_port" => "SMTP Port", - "email_smtp_timeout" => "SMTP Timeout (s)", - "email_smtp_user" => "SMTP Username", - "enable_avatar" => "", - "enable_avatar_tooltip" => "", - "enable_dropdown_tooltip" => "", - "enable_new_look" => "", - "enable_right_bar" => "", - "enable_right_bar_tooltip" => "", - "enforce_privacy" => "Enforce privacy", - "enforce_privacy_tooltip" => "Protect Customers privacy enforcing data scrambling in case of their data being deleted", - "fax" => "Fax", - "file_perm" => "There are problems with file permissions. Please fix and reload this page.", - "financial_year" => "Fiscal Year Start", - "financial_year_apr" => "1st of April", - "financial_year_aug" => "1st of August", - "financial_year_dec" => "1st of December", - "financial_year_feb" => "1st of February", - "financial_year_jan" => "1st of January", - "financial_year_jul" => "1st of July", - "financial_year_jun" => "1st of June", - "financial_year_mar" => "1st of March", - "financial_year_may" => "1st of May", - "financial_year_nov" => "1st of November", - "financial_year_oct" => "1st of October", - "financial_year_sep" => "1st of September", - "floating_labels" => "Floating Labels", - "gcaptcha_enable" => "Login Page reCAPTCHA", - "gcaptcha_secret_key" => "reCAPTCHA Secret Key", - "gcaptcha_secret_key_required" => "reCAPTCHA Secret Key is a required field", - "gcaptcha_site_key" => "reCAPTCHA Site Key", - "gcaptcha_site_key_required" => "reCAPTCHA Site Key is a required field", - "gcaptcha_tooltip" => "Protect the Login page with Google reCAPTCHA, click the icon for an API key pair.", - "general" => "General", - "general_configuration" => "General Configuration", - "giftcard_number" => "Gift Card Number", - "giftcard_random" => "Generate Random", - "giftcard_series" => "Generate in Series", - "image_allowed_file_types" => "Allowed file types", - "image_max_height_tooltip" => "Maximum allowed height of image uploads in pixels (px).", - "image_max_size_tooltip" => "Maximum allowed file size of image uploads in kilobytes (kb).", - "image_max_width_tooltip" => "Maximum allowed width of image uploads in pixels (px).", - "image_restrictions" => "Image Upload Restrictions", - "include_hsn" => "Include Support for HSN Codes", - "info" => "Information", - "info_configuration" => "Store Information", - "input_groups" => "Input Groups", - "integrations" => "Integrations", - "integrations_configuration" => "Third Party Integrations", - "invoice" => "Invoice", - "invoice_configuration" => "Invoice Print Settings", - "invoice_default_comments" => "Default Invoice Comments", - "invoice_email_message" => "Invoice Email Template", - "invoice_enable" => "Enable Invoicing", - "invoice_printer" => "Invoice Printer", - "invoice_type" => "Invoice Type", - "is_readable" => "is readable, but the permissions are incorrectly set. Please set it to 640 or 660 and refresh.", - "is_writable" => "is writable, but the permissions are incorrectly set. Please set it to 750 and refresh.", - "item_markup" => "", - "jsprintsetup_required" => "Warning: This functionality will only work if you have the FireFox jsPrintSetup addon installed. Save anyway?", - "language" => "Language", - "last_used_invoice_number" => "Last used Invoice Number", - "last_used_quote_number" => "Last used Quote Number", - "last_used_work_order_number" => "Last used W/O Number", - "left" => "Left", - "license" => "License", - "license_configuration" => "License Statement", - "line_sequence" => "Line Sequence", - "lines_per_page" => "Lines per Page", - "lines_per_page_number" => "Lines per Page must be a number.", - "lines_per_page_required" => "Lines per Page is a required field.", - "locale" => "Localization", - "locale_configuration" => "Localization Configuration", - "locale_info" => "Localization Configuration Information", - "location" => "Stock", - "location_configuration" => "Stock Locations", - "location_info" => "Location Configuration Information", - "login_form" => "Login Form Style", - "logout" => "Do you want to make a backup before logging out? Click [OK] to backup or [Cancel] to logout.", - "mailchimp" => "MailChimp", - "mailchimp_api_key" => "MailChimp API Key", - "mailchimp_configuration" => "MailChimp Configuration", - "mailchimp_key_successfully" => "API Key is valid.", - "mailchimp_key_unsuccessfully" => "API Key is invalid.", - "mailchimp_lists" => "MailChimp List(s)", - "mailchimp_tooltip" => "Click the icon for an API Key.", - "message" => "Message", - "message_configuration" => "Message Configuration", - "msg_msg" => "Saved Text Message", - "msg_msg_placeholder" => "If you wish to use a SMS template save your message here, otherwise leave the box blank.", - "msg_pwd" => "SMS-API Password", - "msg_pwd_required" => "SMS-API Password is a required field", - "msg_src" => "SMS-API Sender ID", - "msg_src_required" => "SMS-API Sender ID is a required field", - "msg_uid" => "SMS-API Username", - "msg_uid_required" => "SMS-API Username is a required field", - "multi_pack_enabled" => "Multiple Packages per Item", - "no_risk" => "No security/vulnerability risks.", - "none" => "none", - "notify_alignment" => "Notification Popup Position", - "number_format" => "Number Format", - "number_locale" => "Localization", - "number_locale_invalid" => "The entered locale is invalid. Check the link in the tooltip to find a valid locale.", - "number_locale_required" => "Number Locale is a required field.", - "number_locale_tooltip" => "Find a suitable locale through this link.", - "os_timezone" => "OSPOS Timezone:", - "ospos_info" => "OSPOS Installation Info", - "payment_options_order" => "Payment Options Order", - "perm_risk" => "Incorrect permissions leaves this software at risk.", - "phone" => "Company Phone", - "phone_required" => "Company Phone is a required field.", - "print_bottom_margin" => "Margin Bottom", - "print_bottom_margin_number" => "Margin Bottom must be a number.", - "print_bottom_margin_required" => "Margin Bottom is a required field.", - "print_delay_autoreturn" => "Autoreturn to Sale delay", - "print_delay_autoreturn_number" => "Autoreturn to Sale delay is a required field.", - "print_delay_autoreturn_required" => "Autoreturn to Sale delay must be a number.", - "print_footer" => "Print Browser Footer", - "print_header" => "Print Browser Header", - "print_left_margin" => "Margin Left", - "print_left_margin_number" => "Margin Left must be a number.", - "print_left_margin_required" => "Margin Left is a required field.", - "print_receipt_check_behaviour" => "Print Receipt checkbox", - "print_receipt_check_behaviour_always" => "Always checked", - "print_receipt_check_behaviour_last" => "Remember last selection", - "print_receipt_check_behaviour_never" => "Always unchecked", - "print_right_margin" => "Margin Right", - "print_right_margin_number" => "Margin Right must be a number.", - "print_right_margin_required" => "Margin Right is a required field.", - "print_silently" => "Show Print Dialog", - "print_top_margin" => "Margin Top", - "print_top_margin_number" => "Margin Top must be a number.", - "print_top_margin_required" => "Margin Top is a required field.", - "quantity_decimals" => "Quantity Decimals", - "quick_cash_enable" => "", - "quote_default_comments" => "Default Quote Comments", - "receipt" => "Receipt", - "receipt_category" => "", - "receipt_configuration" => "Receipt Print Settings", - "receipt_default" => "Default", - "receipt_font_size" => "Font Size", - "receipt_font_size_number" => "Font Size must be a number.", - "receipt_font_size_required" => "Font Size is a required field.", - "receipt_info" => "Receipt Configuration Information", - "receipt_printer" => "Ticket Printer", - "receipt_short" => "Short", - "receipt_show_company_name" => "Show Company Name", - "receipt_show_description" => "Show Description", - "receipt_show_serialnumber" => "Show Serial Number", - "receipt_show_tax_ind" => "Show Tax Indicator", - "receipt_show_taxes" => "Show Taxes", - "receipt_show_total_discount" => "Show Total Discount", - "receipt_template" => "Receipt Template", - "receiving_calculate_average_price" => "Calc avg. Price (Receiving)", - "recv_invoice_format" => "Receivings Invoice Format", - "register_mode_default" => "Default Register Mode", - "report_an_issue" => "Report an issue", - "return_policy_required" => "Return policy is a required field.", - "reward" => "Reward", - "reward_configuration" => "Reward Configuration", - "right" => "Right", - "sales_invoice_format" => "Sales Invoice Format", - "sales_quote_format" => "Sales Quote Format", - "saved_successfully" => "Configuration save successful.", - "saved_unsuccessfully" => "Configuration save failed.", - "security_issue" => "Security Vulnerability Warning", - "server_notice" => "Please use the below info for issue reporting.", - "service_charge" => "", - "show_due_enable" => "", - "show_office_group" => "Show office icon", - "statistics" => "Send Statistics", - "statistics_tooltip" => "Send statistics for development and feature improvement purposes.", - "stock_location" => "Stock location", - "stock_location_duplicate" => "Stock Location must be unique.", - "stock_location_invalid_chars" => "Stock Location can not contain '_'.", - "stock_location_required" => "Stock location is a required field.", - "suggestions_fifth_column" => "", - "suggestions_first_column" => "Column 1", - "suggestions_fourth_column" => "", - "suggestions_layout" => "Search Suggestions Layout", - "suggestions_second_column" => "Column 2", - "suggestions_third_column" => "Column 3", - "system_conf" => "Setup & Conf", - "system_info" => "System Info", - "table" => "Table", - "table_configuration" => "Table Configuration", - "takings_printer" => "Receipt Printer", - "tax" => "Tax", - "tax_category" => "Tax Category", - "tax_category_duplicate" => "The entered tax category already exists.", - "tax_category_invalid_chars" => "The entered tax category is invalid.", - "tax_category_required" => "The tax category is required.", - "tax_category_used" => "Tax category cannot be deleted because it is being used.", - "tax_configuration" => "Tax Configuration", - "tax_decimals" => "Tax Decimals", - "tax_id" => "Tax Id", - "tax_included" => "Tax Included", - "theme" => "Theme", - "theme_preview" => "Preview Theme:", - "thousands_separator" => "Thousands Separator", - "timezone" => "Timezone", - "timezone_error" => "OSPOS Timezone is Different from your Local Timezone.", - "top" => "Top", - "use_destination_based_tax" => "Use Destination Based Tax", - "user_timezone" => "Local Timezone:", - "website" => "Website", - "wholesale_markup" => "", - "work_order_enable" => "Work Order Support", - "work_order_format" => "Work Order Format", + "address" => "Company Address", + "address_required" => "Company address is a required field.", + "all_set" => "All file permissions are set correctly!", + "allow_duplicate_barcodes" => "Allow Duplicate Barcodes", + "apostrophe" => "apostrophe", + "backup_button" => "Backup", + "backup_database" => "Backup Database", + "barcode" => "Barcode", + "barcode_company" => "Company Name", + "barcode_configuration" => "Barcode Configuration", + "barcode_content" => "Barcode Content", + "barcode_first_row" => "Row 1", + "barcode_font" => "Font", + "barcode_formats" => "Input Formats", + "barcode_generate_if_empty" => "Generate if empty.", + "barcode_height" => "Height (px)", + "barcode_id" => "Item Id/Name", + "barcode_info" => "Barcode Configuration Information", + "barcode_layout" => "Barcode Layout", + "barcode_name" => "Name", + "barcode_number" => "Barcode", + "barcode_number_in_row" => "Number in row", + "barcode_page_cellspacing" => "Display page cellspacing.", + "barcode_page_width" => "Display page width", + "barcode_price" => "Price", + "barcode_second_row" => "Row 2", + "barcode_third_row" => "Row 3", + "barcode_tooltip" => "Warning: This feature can cause duplicate items to be imported or created. Do not use if you do not want duplicate barcodes.", + "barcode_type" => "Barcode Type", + "barcode_width" => "Width (px)", + "bottom" => "Bottom", + "cash_button" => "", + "cash_button_1" => "", + "cash_button_2" => "", + "cash_button_3" => "", + "cash_button_4" => "", + "cash_button_5" => "", + "cash_button_6" => "", + "cash_decimals" => "Cash Decimals", + "cash_decimals_tooltip" => "If Cash Decimals and Currency Decimals are the same then no cash triggered rounding will take place, unless Cash Rounding is set to Half Five.", + "cash_rounding" => "Cash Rounding", + "category_dropdown" => "Show Category as a dropdown", + "center" => "Center", + "change_apperance_tooltip" => "", + "comma" => "comma", + "company" => "Company Name", + "company_avatar" => "", + "company_change_image" => "Change Image", + "company_logo" => "Company Logo", + "company_remove_image" => "Remove Image", + "company_required" => "Company name is a required field", + "company_select_image" => "Select Image", + "company_website_url" => "Company website is not a valid URL (http://...).", + "country_codes" => "Country Codes", + "country_codes_tooltip" => "Comma separated list of country codes for nominatim address lookup.", + "currency_code" => "Currency Code", + "currency_decimals" => "Currency Decimals", + "currency_symbol" => "Currency Symbol", + "current_employee_only" => "", + "customer_reward" => "Reward", + "customer_reward_duplicate" => "Reward must be unique.", + "customer_reward_enable" => "Enable Customer Rewards", + "customer_reward_invalid_chars" => "Reward can not contain '_'", + "customer_reward_required" => "Reward is a required field", + "customer_sales_tax_support" => "", + "date_or_time_format" => "Date and Time Filter", + "datetimeformat" => "Date and Time Format", + "decimal_point" => "Decimal Point", + "default_barcode_font_size_number" => "Default Barcode Font Size must be a number.", + "default_barcode_font_size_required" => "Default Barcode Font Size is a required field.", + "default_barcode_height_number" => "Default Barcode Height must be a number.", + "default_barcode_height_required" => "Default Barcode Height is a required field.", + "default_barcode_num_in_row_number" => "Default Barcode Number in Row must be a number.", + "default_barcode_num_in_row_required" => "Default Barcode Number in Row is a required field.", + "default_barcode_page_cellspacing_number" => "Default Barcode Page Cellspacing must be a number.", + "default_barcode_page_cellspacing_required" => "Default Barcode Page Cellspacing is a required field.", + "default_barcode_page_width_number" => "Default Barcode Page Width must be a number.", + "default_barcode_page_width_required" => "Default Barcode Page Width is a required field.", + "default_barcode_width_number" => "Default Barcode Width must be a number.", + "default_barcode_width_required" => "Default Barcode Width is a required field.", + "default_item_columns" => "Default Visible Item Columns", + "default_origin_tax_code" => "Default Origin Tax Code", + "default_receivings_discount" => "Default Receivings Discount", + "default_receivings_discount_number" => "Default Receivings Discount must be a number.", + "default_receivings_discount_required" => "Default Receivings Discount is a required field.", + "default_sales_discount" => "Default Sales Discount", + "default_sales_discount_number" => "Default Sales Discount must be a number.", + "default_sales_discount_required" => "Default Sales Discount is a required field.", + "default_tax_category" => "Default Tax Category", + "default_tax_code" => "Default Tax Code", + "default_tax_jurisdiction" => "Default Tax Jurisdiction", + "default_tax_name_number" => "Default Tax Name must be a string.", + "default_tax_name_required" => "Default Tax Name is a required field.", + "default_tax_rate" => "Default Tax Rate %", + "default_tax_rate_1" => "Tax 1 Rate", + "default_tax_rate_2" => "Tax 2 Rate", + "default_tax_rate_3" => "", + "default_tax_rate_number" => "Default Tax Rate must be a number.", + "default_tax_rate_required" => "Default Tax Rate is a required field.", + "derive_sale_quantity" => "Allow Derived Sale Quantity", + "derive_sale_quantity_tooltip" => "If checked then a new item type will be provided for items ordered by extended amount", + "dinner_table" => "Table", + "dinner_table_duplicate" => "Table must be unique.", + "dinner_table_enable" => "Enable Dinner Tables", + "dinner_table_invalid_chars" => "Table Name can not contain '_'.", + "dinner_table_required" => "Table is a required field.", + "dot" => "dot", + "email" => "Email", + "email_configuration" => "Email Configuration", + "email_mailpath" => "Path to Sendmail", + "email_protocol" => "Protocol", + "email_receipt_check_behaviour" => "Email Receipt checkbox", + "email_receipt_check_behaviour_always" => "Always checked", + "email_receipt_check_behaviour_last" => "Remember last selection", + "email_receipt_check_behaviour_never" => "Always unchecked", + "email_smtp_crypto" => "SMTP Encryption", + "email_smtp_host" => "SMTP Server", + "email_smtp_pass" => "SMTP Password", + "email_smtp_port" => "SMTP Port", + "email_smtp_timeout" => "SMTP Timeout (s)", + "email_smtp_user" => "SMTP Username", + "enable_avatar" => "", + "enable_avatar_tooltip" => "", + "enable_dropdown_tooltip" => "", + "enable_new_look" => "", + "enable_right_bar" => "", + "enable_right_bar_tooltip" => "", + "enforce_privacy" => "Enforce privacy", + "enforce_privacy_tooltip" => "Protect Customers privacy enforcing data scrambling in case of their data being deleted", + "fax" => "Fax", + "file_perm" => "There are problems with file permissions. Please fix and reload this page.", + "financial_year" => "Fiscal Year Start", + "financial_year_apr" => "1st of April", + "financial_year_aug" => "1st of August", + "financial_year_dec" => "1st of December", + "financial_year_feb" => "1st of February", + "financial_year_jan" => "1st of January", + "financial_year_jul" => "1st of July", + "financial_year_jun" => "1st of June", + "financial_year_mar" => "1st of March", + "financial_year_may" => "1st of May", + "financial_year_nov" => "1st of November", + "financial_year_oct" => "1st of October", + "financial_year_sep" => "1st of September", + "floating_labels" => "Floating Labels", + "gcaptcha_enable" => "Login Page reCAPTCHA", + "gcaptcha_secret_key" => "reCAPTCHA Secret Key", + "gcaptcha_secret_key_required" => "reCAPTCHA Secret Key is a required field", + "gcaptcha_site_key" => "reCAPTCHA Site Key", + "gcaptcha_site_key_required" => "reCAPTCHA Site Key is a required field", + "gcaptcha_tooltip" => "Protect the Login page with Google reCAPTCHA, click the icon for an API key pair.", + "general" => "General", + "general_configuration" => "General Configuration", + "giftcard_number" => "Gift Card Number", + "giftcard_random" => "Generate Random", + "giftcard_series" => "Generate in Series", + "image_allowed_file_types" => "Allowed file types", + "image_max_height_tooltip" => "Maximum allowed height of image uploads in pixels (px).", + "image_max_size_tooltip" => "Maximum allowed file size of image uploads in kilobytes (kb).", + "image_max_width_tooltip" => "Maximum allowed width of image uploads in pixels (px).", + "image_restrictions" => "Image Upload Restrictions", + "include_hsn" => "Include Support for HSN Codes", + "info" => "Information", + "info_configuration" => "Store Information", + "input_groups" => "Input Groups", + "integrations" => "Integrations", + "integrations_configuration" => "Third Party Integrations", + "invoice" => "Invoice", + "invoice_configuration" => "Invoice Print Settings", + "invoice_default_comments" => "Default Invoice Comments", + "invoice_email_message" => "Invoice Email Template", + "invoice_enable" => "Enable Invoicing", + "invoice_printer" => "Invoice Printer", + "invoice_type" => "Invoice Type", + "is_readable" => "is readable, but the permissions are incorrectly set. Please set it to 640 or 660 and refresh.", + "is_writable" => "is writable, but the permissions are incorrectly set. Please set it to 750 and refresh.", + "item_markup" => "", + "jsprintsetup_required" => "Warning: This functionality will only work if you have the FireFox jsPrintSetup addon installed. Save anyway?", + "language" => "Language", + "last_used_invoice_number" => "Last used Invoice Number", + "last_used_quote_number" => "Last used Quote Number", + "last_used_work_order_number" => "Last used W/O Number", + "left" => "Left", + "license" => "License", + "license_configuration" => "License Statement", + "line_sequence" => "Line Sequence", + "lines_per_page" => "Lines per Page", + "lines_per_page_number" => "Lines per Page must be a number.", + "lines_per_page_required" => "Lines per Page is a required field.", + "locale" => "Localization", + "locale_configuration" => "Localization Configuration", + "locale_info" => "Localization Configuration Information", + "location" => "Stock", + "location_configuration" => "Stock Locations", + "location_info" => "Location Configuration Information", + "login_form" => "Login Form Style", + "logout" => "Do you want to make a backup before logging out? Click [OK] to backup or [Cancel] to logout.", + "mailchimp" => "MailChimp", + "mailchimp_api_key" => "MailChimp API Key", + "mailchimp_configuration" => "MailChimp Configuration", + "mailchimp_key_successfully" => "API Key is valid.", + "mailchimp_key_unsuccessfully" => "API Key is invalid.", + "mailchimp_lists" => "MailChimp List(s)", + "mailchimp_tooltip" => "Click the icon for an API Key.", + "message" => "Message", + "message_configuration" => "Message Configuration", + "msg_msg" => "Saved Text Message", + "msg_msg_placeholder" => "If you wish to use a SMS template save your message here, otherwise leave the box blank.", + "msg_pwd" => "SMS-API Password", + "msg_pwd_required" => "SMS-API Password is a required field", + "msg_src" => "SMS-API Sender ID", + "msg_src_required" => "SMS-API Sender ID is a required field", + "msg_uid" => "SMS-API Username", + "msg_uid_required" => "SMS-API Username is a required field", + "multi_pack_enabled" => "Multiple Packages per Item", + "no_risk" => "No security/vulnerability risks.", + "none" => "none", + "notify_alignment" => "Notification Popup Position", + "number_format" => "Number Format", + "number_locale" => "Localization", + "number_locale_invalid" => "The entered locale is invalid. Check the link in the tooltip to find a valid locale.", + "number_locale_required" => "Number Locale is a required field.", + "number_locale_tooltip" => "Find a suitable locale through this link.", + "os_timezone" => "OSPOS Timezone:", + "ospos_info" => "OSPOS Installation Info", + "payment_options_order" => "Payment Options Order", + "perm_risk" => "Incorrect permissions leaves this software at risk.", + "phone" => "Company Phone", + "phone_required" => "Company Phone is a required field.", + "print_bottom_margin" => "Margin Bottom", + "print_bottom_margin_number" => "Margin Bottom must be a number.", + "print_bottom_margin_required" => "Margin Bottom is a required field.", + "print_delay_autoreturn" => "Autoreturn to Sale delay", + "print_delay_autoreturn_number" => "Autoreturn to Sale delay is a required field.", + "print_delay_autoreturn_required" => "Autoreturn to Sale delay must be a number.", + "print_footer" => "Print Browser Footer", + "print_header" => "Print Browser Header", + "print_left_margin" => "Margin Left", + "print_left_margin_number" => "Margin Left must be a number.", + "print_left_margin_required" => "Margin Left is a required field.", + "print_receipt_check_behaviour" => "Print Receipt checkbox", + "print_receipt_check_behaviour_always" => "Always checked", + "print_receipt_check_behaviour_last" => "Remember last selection", + "print_receipt_check_behaviour_never" => "Always unchecked", + "print_right_margin" => "Margin Right", + "print_right_margin_number" => "Margin Right must be a number.", + "print_right_margin_required" => "Margin Right is a required field.", + "print_silently" => "Show Print Dialog", + "print_top_margin" => "Margin Top", + "print_top_margin_number" => "Margin Top must be a number.", + "print_top_margin_required" => "Margin Top is a required field.", + "quantity_decimals" => "Quantity Decimals", + "quick_cash_enable" => "", + "quote_default_comments" => "Default Quote Comments", + "receipt" => "Receipt", + "receipt_category" => "", + "receipt_configuration" => "Receipt Print Settings", + "receipt_default" => "Default", + "receipt_font_size" => "Font Size", + "receipt_font_size_number" => "Font Size must be a number.", + "receipt_font_size_required" => "Font Size is a required field.", + "receipt_info" => "Receipt Configuration Information", + "receipt_printer" => "Ticket Printer", + "receipt_short" => "Short", + "receipt_show_company_name" => "Show Company Name", + "receipt_show_description" => "Show Description", + "receipt_show_serialnumber" => "Show Serial Number", + "receipt_show_tax_ind" => "Show Tax Indicator", + "receipt_show_taxes" => "Show Taxes", + "receipt_show_total_discount" => "Show Total Discount", + "receipt_template" => "Receipt Template", + "receiving_calculate_average_price" => "Calc avg. Price (Receiving)", + "recv_invoice_format" => "Receivings Invoice Format", + "register_mode_default" => "Default Register Mode", + "report_an_issue" => "Report an issue", + "return_policy_required" => "Return policy is a required field.", + "reward" => "Reward", + "reward_configuration" => "Reward Configuration", + "right" => "Right", + "sales_invoice_format" => "Sales Invoice Format", + "sales_quote_format" => "Sales Quote Format", + "saved_successfully" => "Configuration save successful.", + "saved_unsuccessfully" => "Configuration save failed.", + "security_issue" => "Security Vulnerability Warning", + "server_notice" => "Please use the below info for issue reporting.", + "service_charge" => "", + "show_due_enable" => "", + "show_office_group" => "Show office icon", + "statistics" => "Send Statistics", + "statistics_tooltip" => "Send statistics for development and feature improvement purposes.", + "stock_location" => "Stock location", + "stock_location_duplicate" => "Stock Location must be unique.", + "stock_location_invalid_chars" => "Stock Location can not contain '_'.", + "stock_location_required" => "Stock location is a required field.", + "suggestions_fifth_column" => "", + "suggestions_first_column" => "Column 1", + "suggestions_fourth_column" => "", + "suggestions_layout" => "Search Suggestions Layout", + "suggestions_second_column" => "Column 2", + "suggestions_third_column" => "Column 3", + "system_conf" => "Setup & Conf", + "system_info" => "System Info", + "table" => "Table", + "table_configuration" => "Table Configuration", + "takings_printer" => "Receipt Printer", + "tax" => "Tax", + "tax_category" => "Tax Category", + "tax_category_duplicate" => "The entered tax category already exists.", + "tax_category_invalid_chars" => "The entered tax category is invalid.", + "tax_category_required" => "The tax category is required.", + "tax_category_used" => "Tax category cannot be deleted because it is being used.", + "tax_configuration" => "Tax Configuration", + "tax_decimals" => "Tax Decimals", + "tax_id" => "Tax Id", + "tax_included" => "Tax Included", + "theme" => "Theme", + "theme_preview" => "Preview Theme:", + "thousands_separator" => "Thousands Separator", + "timezone" => "Timezone", + "timezone_error" => "OSPOS Timezone is Different from your Local Timezone.", + "top" => "Top", + "use_destination_based_tax" => "Use Destination Based Tax", + "user_timezone" => "Local Timezone:", + "website" => "Website", + "wholesale_markup" => "", + "work_order_enable" => "Work Order Support", + "work_order_format" => "Work Order Format", ]; diff --git a/app/Language/en/Customers.php b/app/Language/en/Customers.php index 422a9e007..81be06572 100644 --- a/app/Language/en/Customers.php +++ b/app/Language/en/Customers.php @@ -1,56 +1,56 @@ "Account #", - "account_number_duplicate" => "Account Number is already present in the database.", - "available_points" => "Points Available", - "available_points_value" => "", - "average" => "Average spent", - "avg_discount" => "Average discount", - "basic_information" => "Information", - "cannot_be_deleted" => "Could not delete selected customers, one or more of the selected customers has sales.", - "company_name" => "Company", - "confirm_delete" => "Are you sure you want to delete the selected customer(s)?", - "confirm_restore" => "Are you sure you want to restore selected customers(s)?", - "consent" => "Registration consent", - "consent_required" => "Registration consent is a required field.", - "csv_import_failed" => "CSV import failed", - "csv_import_nodata_wrongformat" => "The uploaded file has no data or is incorrectly formatted.", - "csv_import_partially_failed" => "Customer import successful with some failures:", - "csv_import_success" => "Customer import successful.", - "customer" => "Customer", - "date" => "Date", - "discount" => "Discount", - "discount_fixed" => "Fixed Discount", - "discount_percent" => "Percentage Discount", - "discount_type" => "Discount Type", - "email_duplicate" => "Email Address is already present in the database.", - "employee" => "Employee", - "error_adding_updating" => "Customer add or update failed.", - "import_items_csv" => "Customer Import from CSV", - "mailchimp_activity_click" => "Email click", - "mailchimp_activity_lastopen" => "Last open email", - "mailchimp_activity_open" => "Email open", - "mailchimp_activity_total" => "Email sent", - "mailchimp_activity_unopen" => "Email unopen", - "mailchimp_email_client" => "Email client", - "mailchimp_info" => "MailChimp", - "mailchimp_member_rating" => "Rating", - "mailchimp_status" => "Status", - "mailchimp_vip" => "VIP", - "max" => "Max. spent", - "min" => "Min. spent", - "new" => "New Customer", - "none_selected" => "You have not selected any customer(s) to delete.", - "one_or_multiple" => "Customer(s)", - "quantity" => "Quantity", - "stats_info" => "Stats", - "successful_adding" => "You have successfully added customer", - "successful_deleted" => "You have successfully deleted", - "successful_updating" => "You have successfully updated customer", - "tax_code" => "Tax Code", - "tax_id" => "Tax Id", - "taxable" => "Taxable", - "total" => "Total spent", - "update" => "Update Customer", - "rewards_package" => "Rewards Package", + "account_number" => "Account #", + "account_number_duplicate" => "Account Number is already present in the database.", + "available_points" => "Points Available", + "available_points_value" => "", + "average" => "Average spent", + "avg_discount" => "Average discount", + "basic_information" => "Information", + "cannot_be_deleted" => "Could not delete selected customers, one or more of the selected customers has sales.", + "company_name" => "Company", + "confirm_delete" => "Are you sure you want to delete the selected customer(s)?", + "confirm_restore" => "Are you sure you want to restore selected customers(s)?", + "consent" => "Registration consent", + "consent_required" => "Registration consent is a required field.", + "csv_import_failed" => "CSV import failed", + "csv_import_nodata_wrongformat" => "The uploaded file has no data or is incorrectly formatted.", + "csv_import_partially_failed" => "Customer import successful with some failures:", + "csv_import_success" => "Customer import successful.", + "customer" => "Customer", + "date" => "Date", + "discount" => "Discount", + "discount_fixed" => "Fixed Discount", + "discount_percent" => "Percentage Discount", + "discount_type" => "Discount Type", + "email_duplicate" => "Email Address is already present in the database.", + "employee" => "Employee", + "error_adding_updating" => "Customer add or update failed.", + "import_items_csv" => "Customer Import from CSV", + "mailchimp_activity_click" => "Email click", + "mailchimp_activity_lastopen" => "Last open email", + "mailchimp_activity_open" => "Email open", + "mailchimp_activity_total" => "Email sent", + "mailchimp_activity_unopen" => "Email unopen", + "mailchimp_email_client" => "Email client", + "mailchimp_info" => "MailChimp", + "mailchimp_member_rating" => "Rating", + "mailchimp_status" => "Status", + "mailchimp_vip" => "VIP", + "max" => "Max. spent", + "min" => "Min. spent", + "new" => "New Customer", + "none_selected" => "You have not selected any customer(s) to delete.", + "one_or_multiple" => "Customer(s)", + "quantity" => "Quantity", + "stats_info" => "Stats", + "successful_adding" => "You have successfully added customer", + "successful_deleted" => "You have successfully deleted", + "successful_updating" => "You have successfully updated customer", + "tax_code" => "Tax Code", + "tax_id" => "Tax Id", + "taxable" => "Taxable", + "total" => "Total spent", + "update" => "Update Customer", + "rewards_package" => "Rewards Package", ]; diff --git a/app/Language/en/Datepicker.php b/app/Language/en/Datepicker.php index 222a616d2..3ce895ebb 100644 --- a/app/Language/en/Datepicker.php +++ b/app/Language/en/Datepicker.php @@ -1,23 +1,23 @@ "All Time", - "apply" => "Apply", - "cancel" => "Cancel", - "custom" => "Custom", - "from" => "From", - "last_30" => "Last 30 Days", - "last_7" => "Last 7 Days", - "last_financial_year" => "Last Fiscal Year", - "last_month" => "Last Month", - "last_year" => "Last Year", - "same_month_last_year" => "Same Month Last Year", - "same_month_to_same_day_last_year" => "Same Month To Same Day Last Year", - "this_financial_year" => "Current Fiscal Year", - "this_month" => "Current Month", - "this_year" => "Current Year", - "to" => "To", - "today" => "Today", - "today_last_year" => "Today Last Year", - "weekstart" => "0", - "yesterday" => "Yesterday", + "all_time" => "All Time", + "apply" => "Apply", + "cancel" => "Cancel", + "custom" => "Custom", + "from" => "From", + "last_30" => "Last 30 Days", + "last_7" => "Last 7 Days", + "last_financial_year" => "Last Fiscal Year", + "last_month" => "Last Month", + "last_year" => "Last Year", + "same_month_last_year" => "Same Month Last Year", + "same_month_to_same_day_last_year" => "Same Month To Same Day Last Year", + "this_financial_year" => "Current Fiscal Year", + "this_month" => "Current Month", + "this_year" => "Current Year", + "to" => "To", + "today" => "Today", + "today_last_year" => "Today Last Year", + "weekstart" => "0", + "yesterday" => "Yesterday", ]; diff --git a/app/Language/en/Employees.php b/app/Language/en/Employees.php index b2cef32d5..aaebe6363 100644 --- a/app/Language/en/Employees.php +++ b/app/Language/en/Employees.php @@ -1,44 +1,44 @@ "", - "basic_information" => "Information", - "cannot_be_deleted" => "Unable to delete selected employee(s), one or more of the has processed sales or you are trying to delete your account.", - "change_employee" => "", - "change_password" => "Change Password", - "clerk" => "", - "commission" => "", - "confirm_delete" => "Are you sure you want to delete the selected employee(s)?", - "confirm_restore" => "Are you sure you want to restore selected employee(s)?", - "current_password" => "Current Password", - "current_password_invalid" => "Current Password is invalid.", - "employee" => "Employee", - "error_adding_updating" => "Employee add or update failed.", - "error_deleting_demo_admin" => "You can not delete the demo admin user.", - "error_updating_demo_admin" => "You can not change the demo admin user.", - "language" => "Language", - "login_info" => "Login", - "manager" => "", - "new" => "New Employee", - "none_selected" => "You have not selected any employee(s) to delete.", - "one_or_multiple" => "employee(s)", - "password" => "Password", - "password_minlength" => "Password must be at least 8 characters in length.", - "password_must_match" => "Passwords do not match.", - "password_not_must_match" => "Current password and new password must be unique.", - "password_required" => "Password is required.", - "permission_desc" => "Check the boxes below to grant access to modules.", - "permission_info" => "Permissions", - "repeat_password" => "Password Again", - "subpermission_required" => "Add at least one grant for each module.", - "successful_adding" => "Employee add successful.", - "successful_change_password" => "Password change successful.", - "successful_deleted" => "You have successfully deleted", - "successful_updating" => "You have successfully updated employee", - "system_language" => "System Language", - "unsuccessful_change_password" => "Password change failed.", - "update" => "Update Employee", - "username" => "Username", - "username_duplicate" => "Employee username is already in use. Please choose another one.", - "username_minlength" => "Username must be at least 5 characters in length.", - "username_required" => "Username is a required field.", + "administrator" => "", + "basic_information" => "Information", + "cannot_be_deleted" => "Unable to delete selected employee(s), one or more of the has processed sales or you are trying to delete your account.", + "change_employee" => "", + "change_password" => "Change Password", + "clerk" => "", + "commission" => "", + "confirm_delete" => "Are you sure you want to delete the selected employee(s)?", + "confirm_restore" => "Are you sure you want to restore selected employee(s)?", + "current_password" => "Current Password", + "current_password_invalid" => "Current Password is invalid.", + "employee" => "Employee", + "error_adding_updating" => "Employee add or update failed.", + "error_deleting_demo_admin" => "You can not delete the demo admin user.", + "error_updating_demo_admin" => "You can not change the demo admin user.", + "language" => "Language", + "login_info" => "Login", + "manager" => "", + "new" => "New Employee", + "none_selected" => "You have not selected any employee(s) to delete.", + "one_or_multiple" => "employee(s)", + "password" => "Password", + "password_minlength" => "Password must be at least 8 characters in length.", + "password_must_match" => "Passwords do not match.", + "password_not_must_match" => "Current password and new password must be unique.", + "password_required" => "Password is required.", + "permission_desc" => "Check the boxes below to grant access to modules.", + "permission_info" => "Permissions", + "repeat_password" => "Password Again", + "subpermission_required" => "Add at least one grant for each module.", + "successful_adding" => "Employee add successful.", + "successful_change_password" => "Password change successful.", + "successful_deleted" => "You have successfully deleted", + "successful_updating" => "You have successfully updated employee", + "system_language" => "System Language", + "unsuccessful_change_password" => "Password change failed.", + "update" => "Update Employee", + "username" => "Username", + "username_duplicate" => "Employee username is already in use. Please choose another one.", + "username_minlength" => "Username must be at least 5 characters in length.", + "username_required" => "Username is a required field.", ]; diff --git a/app/Language/en/Enum.php b/app/Language/en/Enum.php index 6189977b6..5068622a4 100644 --- a/app/Language/en/Enum.php +++ b/app/Language/en/Enum.php @@ -1,10 +1,10 @@ "Half Down", - "half_even" => "Half Even", - "half_five" => "Half Five", - "half_odd" => "Half Odd", - "half_up" => "Half Up", - "round_down" => "Round Down", - "round_up" => "Round Up", + "half_down" => "Half Down", + "half_even" => "Half Even", + "half_five" => "Half Five", + "half_odd" => "Half Odd", + "half_up" => "Half Up", + "round_down" => "Round Down", + "round_up" => "Round Up", ]; diff --git a/app/Language/en/Error.php b/app/Language/en/Error.php index ea2c39425..26a6f58b2 100644 --- a/app/Language/en/Error.php +++ b/app/Language/en/Error.php @@ -1,5 +1,5 @@ "You do not have permission to access the module named", - "unknown" => "Unexpected error", + "no_permission_module" => "You do not have permission to access the module named", + "unknown" => "Unexpected error", ]; diff --git a/app/Language/en/Expenses.php b/app/Language/en/Expenses.php index 631865024..95cbb9747 100644 --- a/app/Language/en/Expenses.php +++ b/app/Language/en/Expenses.php @@ -1,50 +1,50 @@ "Add Expense", - "amount" => "Amount", - "amount_number" => "Amount must be a number", - "amount_required" => "Expense Amount required", - "by_category" => "Category", - "cannot_be_deleted" => "Could not delete Category Expense(s)", - "cash" => "Cash", - "cash_filter" => "Cash", - "categories_name" => "Category", - "category_required" => "category is a required field", - "check" => "Check", - "check_filter" => "Check", - "confirm_delete" => "Are you sure you want to delete the selected Expense(s)?", - "confirm_restore" => "Are you sure you want to restore the selected Expense(s)?", - "credit" => "Credit Card", - "credit_filter" => "Credit Card", - "date" => "Date", - "date_number" => "date must be a number", - "date_required" => "date is a required field", - "debit" => "Debit Card", - "debit_filter" => "Debit Card", - "description" => "Description", - "due" => "Due", - "due_filter" => "Due", - "employee" => "Created By", - "error_adding_updating" => "Error adding/updating Expense", - "expense_id" => "Id", - "expenses_employee" => "Employee", - "info" => "Expense Info", - "ip_address" => "", - "is_deleted" => "Deleted", - "name_required" => "Expense Name required", - "new" => "New Expense", - "new_supplier" => "", - "no_expenses_to_display" => "There are no Expenses to display", - "none_selected" => "You have not selected any Expense", - "one_or_multiple" => "Expense(s)", - "payment" => "Payment Type", - "start_typing_supplier_name" => "Start Typing Supplier's name...", - "successful_adding" => "Expense add successful", - "successful_deleted" => "Expense delete successful", - "successful_updating" => "Expense update successful", - "supplier_name" => "Supplier", - "supplier_tax_code" => "Tax Code", - "tax_amount" => "Tax", - "tax_amount_number" => "", - "update" => "Update Expense", + "add_item" => "Add Expense", + "amount" => "Amount", + "amount_number" => "Amount must be a number", + "amount_required" => "Expense Amount required", + "by_category" => "Category", + "cannot_be_deleted" => "Could not delete Category Expense(s)", + "cash" => "Cash", + "cash_filter" => "Cash", + "categories_name" => "Category", + "category_required" => "category is a required field", + "check" => "Check", + "check_filter" => "Check", + "confirm_delete" => "Are you sure you want to delete the selected Expense(s)?", + "confirm_restore" => "Are you sure you want to restore the selected Expense(s)?", + "credit" => "Credit Card", + "credit_filter" => "Credit Card", + "date" => "Date", + "date_number" => "date must be a number", + "date_required" => "date is a required field", + "debit" => "Debit Card", + "debit_filter" => "Debit Card", + "description" => "Description", + "due" => "Due", + "due_filter" => "Due", + "employee" => "Created By", + "error_adding_updating" => "Error adding/updating Expense", + "expense_id" => "Id", + "expenses_employee" => "Employee", + "info" => "Expense Info", + "ip_address" => "", + "is_deleted" => "Deleted", + "name_required" => "Expense Name required", + "new" => "New Expense", + "new_supplier" => "", + "no_expenses_to_display" => "There are no Expenses to display", + "none_selected" => "You have not selected any Expense", + "one_or_multiple" => "Expense(s)", + "payment" => "Payment Type", + "start_typing_supplier_name" => "Start Typing Supplier's name...", + "successful_adding" => "Expense add successful", + "successful_deleted" => "Expense delete successful", + "successful_updating" => "Expense update successful", + "supplier_name" => "Supplier", + "supplier_tax_code" => "Tax Code", + "tax_amount" => "Tax", + "tax_amount_number" => "", + "update" => "Update Expense", ]; diff --git a/app/Language/en/Expenses_categories.php b/app/Language/en/Expenses_categories.php index 7e1f40570..c87629a51 100644 --- a/app/Language/en/Expenses_categories.php +++ b/app/Language/en/Expenses_categories.php @@ -1,22 +1,22 @@ "Expense Category name required", - "add_item" => "Add Category", - "cannot_be_deleted" => "Could not delete Category Expense(s)", - "category_id" => "Id", - "confirm_delete" => "Are you sure you want to delete the selected Expense Category?", - "confirm_restore" => "Are you sure you want to restore the selected Expense Category?", - "description" => "Category Description", - "error_adding_updating" => "Error adding/updating Expense Category", - "info" => "Category Expense Info", - "name" => "Category Name", - "new" => "New Category", - "no_expenses_categories_to_display" => "No Category to display", - "none_selected" => "You have not selected any Category Expense", - "one_or_multiple" => "Category Expense", - "quantity" => "Quantity", - "successful_adding" => "Expense Category add successful", - "successful_deleted" => "Expense Category delete successful", - "successful_updating" => "Expense Category update successful", - "update" => "Update Category", + "category_name_required" => "Expense Category name required", + "add_item" => "Add Category", + "cannot_be_deleted" => "Could not delete Category Expense(s)", + "category_id" => "Id", + "confirm_delete" => "Are you sure you want to delete the selected Expense Category?", + "confirm_restore" => "Are you sure you want to restore the selected Expense Category?", + "description" => "Category Description", + "error_adding_updating" => "Error adding/updating Expense Category", + "info" => "Category Expense Info", + "name" => "Category Name", + "new" => "New Category", + "no_expenses_categories_to_display" => "No Category to display", + "none_selected" => "You have not selected any Category Expense", + "one_or_multiple" => "Category Expense", + "quantity" => "Quantity", + "successful_adding" => "Expense Category add successful", + "successful_deleted" => "Expense Category delete successful", + "successful_updating" => "Expense Category update successful", + "update" => "Update Category", ]; diff --git a/app/Language/en/Giftcards.php b/app/Language/en/Giftcards.php index 78398b03a..af8999ce0 100644 --- a/app/Language/en/Giftcards.php +++ b/app/Language/en/Giftcards.php @@ -1,71 +1,71 @@ "Inventory to add or subtract.", - "allow_alt_description" => "Allow Alternate Description", - "bulk_edit" => "Bulk Edit", - "cannot_be_deleted" => "Could not delete selected Gift Card(s), one or more of the selected Gift Cards has sales.", - "cannot_find_giftcard" => "Gift Card not found.", - "cannot_use" => "Gift Card {0} cannot be used for this sale: invalid Customer.", - "card_value" => "Value", - "category" => "Category", - "change_all_to_allow_alt_desc" => "Allow alternate description for all.", - "change_all_to_not_allow_allow_desc" => "Do not allow alternate description for all.", - "change_all_to_serialized" => "Change All To Serialized", - "change_all_to_unserialized" => "Change All To Unserialized", - "confirm_bulk_edit" => "Are you sure you want to edit the selected Gift Card(s)?", - "confirm_delete" => "Are you sure you want to delete the selected Gift Card(s)?", - "confirm_restore" => "Are you sure you want to restore selected Gift Card(s)?", - "cost_price" => "Wholesale Price", - "count" => "Update Inventory", - "csv_import_failed" => "CSV import failed.", - "current_quantity" => "Current Quantity", - "description" => "Description", - "details_count" => "Inventory Count Details", - "do_nothing" => "Do Nothing", - "edit_fields_you_want_to_update" => "Edit desired fields for selected Gift Card(s).", - "edit_multiple_giftcards" => "Edit Multiple Gift Cards.", - "error_adding_updating" => "Gift Card add or update failed.", - "error_updating_multiple" => "Gift Card(s) update failed.", - "generate_barcodes" => "Generate Barcodes", - "giftcard" => "Gift Card", - "giftcard_number" => "Gift Card Number", - "info_provided_by" => "Info provided by", - "inventory_comments" => "Comments", - "is_serialized" => "Gift Card has Serial Number", - "low_inventory_giftcards" => "Low Inventory Gift Cards", - "manually_editing_of_quantity" => "Manual Edit of Quantity", - "must_select_giftcard_for_barcode" => "You must select at least one (1) Gift Card to generate barcodes.", - "new" => "New Gift Card", - "no_description_giftcards" => "No Description Gift Cards", - "no_giftcards_to_display" => "No Gift Cards to display.", - "none" => "None", - "none_selected" => "No Gift Card(s) selected to edit.", - "number" => "Gift Card Number must be a number.", - "number_information" => "Gift Card Number", - "number_required" => "Gift Card Number is a required field.", - "one_or_multiple" => "Gift Card(s)", - "person_id" => "Customer", - "quantity" => "Quantity", - "quantity_required" => "Quantity is a required field. Please close (X) to cancel.", - "remaining_balance" => "Gift Card {0} remaining value is {1}!", - "reorder_level" => "Reorder Level", - "retrive_giftcard_info" => "Retrieve Gift Card Info", - "sales_tax_1" => "Sales Tax", - "sales_tax_2" => "Sales Tax 2", - "serialized_giftcards" => "Serialized Gift Cards", - "successful_adding" => "You have successfully added Gift Card", - "successful_bulk_edit" => "You have successfully updated the selected Gift Card(s)", - "successful_deleted" => "You have successfully deleted", - "successful_updating" => "You have successfully updated Gift Card", - "supplier" => "Supplier", - "tax_1" => "Tax 1", - "tax_2" => "Tax 2", - "tax_percent" => "Tax Percent", - "tax_percents" => "Tax Percent(s)", - "unit_price" => "Retail Value", - "upc_database" => "Barcode Database", - "update" => "Update Gift Card", - "use_inventory_menu" => "Use Inventory Menu", - "value" => "Gift Card Value must be a number.", - "value_required" => "Gift Card Value is a required field.", + "add_minus" => "Inventory to add or subtract.", + "allow_alt_description" => "Allow Alternate Description", + "bulk_edit" => "Bulk Edit", + "cannot_be_deleted" => "Could not delete selected Gift Card(s), one or more of the selected Gift Cards has sales.", + "cannot_find_giftcard" => "Gift Card not found.", + "cannot_use" => "Gift Card {0} cannot be used for this sale: invalid Customer.", + "card_value" => "Value", + "category" => "Category", + "change_all_to_allow_alt_desc" => "Allow alternate description for all.", + "change_all_to_not_allow_allow_desc" => "Do not allow alternate description for all.", + "change_all_to_serialized" => "Change All To Serialized", + "change_all_to_unserialized" => "Change All To Unserialized", + "confirm_bulk_edit" => "Are you sure you want to edit the selected Gift Card(s)?", + "confirm_delete" => "Are you sure you want to delete the selected Gift Card(s)?", + "confirm_restore" => "Are you sure you want to restore selected Gift Card(s)?", + "cost_price" => "Wholesale Price", + "count" => "Update Inventory", + "csv_import_failed" => "CSV import failed.", + "current_quantity" => "Current Quantity", + "description" => "Description", + "details_count" => "Inventory Count Details", + "do_nothing" => "Do Nothing", + "edit_fields_you_want_to_update" => "Edit desired fields for selected Gift Card(s).", + "edit_multiple_giftcards" => "Edit Multiple Gift Cards.", + "error_adding_updating" => "Gift Card add or update failed.", + "error_updating_multiple" => "Gift Card(s) update failed.", + "generate_barcodes" => "Generate Barcodes", + "giftcard" => "Gift Card", + "giftcard_number" => "Gift Card Number", + "info_provided_by" => "Info provided by", + "inventory_comments" => "Comments", + "is_serialized" => "Gift Card has Serial Number", + "low_inventory_giftcards" => "Low Inventory Gift Cards", + "manually_editing_of_quantity" => "Manual Edit of Quantity", + "must_select_giftcard_for_barcode" => "You must select at least one (1) Gift Card to generate barcodes.", + "new" => "New Gift Card", + "no_description_giftcards" => "No Description Gift Cards", + "no_giftcards_to_display" => "No Gift Cards to display.", + "none" => "None", + "none_selected" => "No Gift Card(s) selected to edit.", + "number" => "Gift Card Number must be a number.", + "number_information" => "Gift Card Number", + "number_required" => "Gift Card Number is a required field.", + "one_or_multiple" => "Gift Card(s)", + "person_id" => "Customer", + "quantity" => "Quantity", + "quantity_required" => "Quantity is a required field. Please close (X) to cancel.", + "remaining_balance" => "Gift Card {0} remaining value is {1}!", + "reorder_level" => "Reorder Level", + "retrive_giftcard_info" => "Retrieve Gift Card Info", + "sales_tax_1" => "Sales Tax", + "sales_tax_2" => "Sales Tax 2", + "serialized_giftcards" => "Serialized Gift Cards", + "successful_adding" => "You have successfully added Gift Card", + "successful_bulk_edit" => "You have successfully updated the selected Gift Card(s)", + "successful_deleted" => "You have successfully deleted", + "successful_updating" => "You have successfully updated Gift Card", + "supplier" => "Supplier", + "tax_1" => "Tax 1", + "tax_2" => "Tax 2", + "tax_percent" => "Tax Percent", + "tax_percents" => "Tax Percent(s)", + "unit_price" => "Retail Value", + "upc_database" => "Barcode Database", + "update" => "Update Gift Card", + "use_inventory_menu" => "Use Inventory Menu", + "value" => "Gift Card Value must be a number.", + "value_required" => "Gift Card Value is a required field.", ]; diff --git a/app/Language/en/Item_kits.php b/app/Language/en/Item_kits.php index 6cad076e5..10f41b804 100644 --- a/app/Language/en/Item_kits.php +++ b/app/Language/en/Item_kits.php @@ -1,41 +1,41 @@ "Add Item", - "all" => "All", - "cannot_be_deleted" => "Item Kit(s) delete failed.", - "confirm_delete" => "Are you sure you want to delete the selected Item Kit(s)?", - "confirm_restore" => "Are you sure you want to restore selected Item Kit(s)?", - "description" => "Item Kit Description", - "discount" => "Discount", - "discount_fixed" => "Fixed Discount", - "discount_percent" => "Discount Percent", - "discount_type" => "Discount Type", - "error_adding_updating" => "Item Kit add or update failed.", - "find_kit_item" => "Kit Item", - "info" => "Item Kit Info", - "item" => "Item", - "item_kit_number" => "Barcode", - "item_kit_number_duplicate" => "Item Kit Number is already present in the database.", - "item_number" => "", - "item_number_duplicate" => "", - "items" => "Items", - "kit" => "Kit ID", - "kit_and_components" => "Kit and Components", - "kit_and_stock" => "Kit and Stock", - "kit_only" => "Kit Only", - "name" => "Item Kit Name", - "new" => "New Item Kit", - "no_item_kits_to_display" => "No Item Kits to display.", - "none_selected" => "You have not selected any Item Kits.", - "one_or_multiple" => "Item Kit(s)", - "price_option" => "Price Option", - "priced_only" => "Priced Only", - "print_option" => "Print Option", - "quantity" => "Quantity", - "sequence" => "Sequence", - "successful_adding" => "You have successfully added Item Kit", - "successful_deleted" => "You have successfully deleted", - "successful_updating" => "You have successfully updated Item Kit", - "unit_price" => "", - "update" => "Update Item Kit", + "add_item" => "Add Item", + "all" => "All", + "cannot_be_deleted" => "Item Kit(s) delete failed.", + "confirm_delete" => "Are you sure you want to delete the selected Item Kit(s)?", + "confirm_restore" => "Are you sure you want to restore selected Item Kit(s)?", + "description" => "Item Kit Description", + "discount" => "Discount", + "discount_fixed" => "Fixed Discount", + "discount_percent" => "Discount Percent", + "discount_type" => "Discount Type", + "error_adding_updating" => "Item Kit add or update failed.", + "find_kit_item" => "Kit Item", + "info" => "Item Kit Info", + "item" => "Item", + "item_kit_number" => "Barcode", + "item_kit_number_duplicate" => "Item Kit Number is already present in the database.", + "item_number" => "", + "item_number_duplicate" => "", + "items" => "Items", + "kit" => "Kit ID", + "kit_and_components" => "Kit and Components", + "kit_and_stock" => "Kit and Stock", + "kit_only" => "Kit Only", + "name" => "Item Kit Name", + "new" => "New Item Kit", + "no_item_kits_to_display" => "No Item Kits to display.", + "none_selected" => "You have not selected any Item Kits.", + "one_or_multiple" => "Item Kit(s)", + "price_option" => "Price Option", + "priced_only" => "Priced Only", + "print_option" => "Print Option", + "quantity" => "Quantity", + "sequence" => "Sequence", + "successful_adding" => "You have successfully added Item Kit", + "successful_deleted" => "You have successfully deleted", + "successful_updating" => "You have successfully updated Item Kit", + "unit_price" => "", + "update" => "Update Item Kit", ]; diff --git a/app/Language/en/Items.php b/app/Language/en/Items.php index aeb634a98..9808f11e9 100644 --- a/app/Language/en/Items.php +++ b/app/Language/en/Items.php @@ -1,120 +1,120 @@ "Inventory to add or subtract.", - "allow_alt_description" => "Allow Alternate Description", - "amount_entry" => "Amount Entry", - "bulk_edit" => "Bulk Edit", - "buy_price_required" => "Purchase Price is a required field.", - "cannot_be_deleted" => "Could not delete selected Item(s), one or more of the selected Items have sales.", - "cannot_find_item" => "Item not found.", - "categories" => "", - "category" => "Category", - "category_new" => "", - "category_required" => "Category is a required field.", - "change_all_to_allow_alt_desc" => "Allow Alternate Description for all.", - "change_all_to_not_allow_allow_desc" => "Do not allow Alternate Description for all.", - "change_all_to_serialized" => "Change all to Serialized", - "change_all_to_unserialized" => "Change all to Unserialized", - "change_image" => "Change Image", - "confirm_bulk_edit" => "Are you sure you want to edit selected Item(s)?", - "confirm_bulk_edit_wipe_taxes" => "All Item Tax information will be replaced.", - "confirm_delete" => "Are you sure you want to delete selected item(s)?", - "confirm_restore" => "Are you sure you want to restore selected item(s)?", - "cost_price" => "Wholesale Price", - "cost_price_number" => "Wholesale Price must be a number.", - "cost_price_required" => "Wholesale Price is a required field.", - "count" => "Update Inventory", - "csv_import_failed" => "CSV import failed", - "csv_import_nodata_wrongformat" => "The uploaded CSV file has no data or is formatted incorrectly.", - "csv_import_partially_failed" => "There were {0} item import failure(s) on line(s): {1}. No rows were imported.", - "csv_import_success" => "Item CSV import successful.", - "current_quantity" => "Current Quantity", - "default_pack_name" => "Each", - "description" => "Description", - "details_count" => "Inventory Count Details", - "do_nothing" => "Do Nothing", - "edit" => "", - "edit_fields_you_want_to_update" => "Edit the desired fields for selected item(s).", - "edit_multiple_items" => "Editing Multiple Items", - "empty_upc_items" => "Empty Barcode Items", - "error_adding_updating" => "Error adding/updating item", - "error_updating_multiple" => "Error updating items", - "generate_barcodes" => "Generate Barcodes", - "hsn_code" => "Harmonized System Nomenclature", - "image" => "Avatar", - "import_items_csv" => "Item Import from CSV", - "info_provided_by" => "Information provided by", - "inventory" => "Inventory", - "inventory_CSV_import_quantity" => "Quantity Imported from CSV", - "inventory_comments" => "Comments", - "inventory_data_tracking" => "Inventory Data Tracking", - "inventory_date" => "Date", - "inventory_employee" => "Employee", - "inventory_in_out_quantity" => "In/Out Quantity", - "inventory_remarks" => "Remarks", - "is_deleted" => "Deleted", - "is_printed" => "", - "is_serialized" => "Item has Serial Number", - "item" => "Item", - "item_id" => "", - "item_number" => "Barcode", - "item_number_duplicate" => "Item Number is already present in the database.", - "kit" => "Kit", - "location" => "Location", - "low_inventory_items" => "Out Of Stock Items", - "low_sell_item" => "Low sell item", - "manually_editing_of_quantity" => "Manual Edit of Quantity", - "markup" => "", - "name" => "Item Name", - "name_required" => "Item Name is a required field.", - "new" => "New Item", - "no_description_items" => "No Description Items", - "no_items_to_display" => "No Items to display.", - "none" => "None", - "none_selected" => "You have not selected any Item(s) to edit", - "nonstock" => "Non-stocked", - "number_information" => "Item Number", - "number_required" => "Barcode is a required field.", - "one_or_multiple" => "item(s)", - "pack_name" => "Pack Name", - "qty_per_pack" => "Quantity per pack", - "quantity" => "Quantity", - "quantity_number" => "Quantity must be a number.", - "quantity_required" => "Quantity is a required field.", - "receiving_quantity" => "Receiving Quantity", - "remove_image" => "Remove Image", - "reorder_level" => "Reorder Level", - "reorder_level_number" => "Reorder Level must be a number.", - "reorder_level_required" => "Reorder Level is a required field.", - "retrive_item_info" => "Retrieve Item Info", - "sales_tax_1" => "Sales Tax", - "sales_tax_2" => "Sales Tax 2", - "search_attributes" => "Search Attributes", - "select_image" => "Select Image", - "serialized_items" => "Serialized Items", - "standard" => "Standard", - "stock" => "Stock", - "stock_location" => "Stock location", - "stock_type" => "Stock Type", - "successful_adding" => "You have successfully added item", - "successful_bulk_edit" => "You have successfully updated the selected item(s)", - "successful_deleted" => "You have successfully deleted", - "successful_updating" => "You have successfully updated item", - "supplier" => "Supplier", - "tax_1" => "Tax 1", - "tax_2" => "Tax 2", - "tax_3" => "", - "tax_category" => "Tax Category", - "tax_percent" => "", - "tax_percent_number" => "Tax Percent must be a numeric value", - "tax_percent_required" => "Tax Percent is a required field.", - "tax_percents" => "Tax Percent(s)", - "temp" => "Temporary", - "type" => "Item Type", - "unit_price" => "Retail Price", - "unit_price_number" => "Unit price must be a number.", - "unit_price_required" => "Retail Price is a required field.", - "upc_database" => "Barcode Database", - "update" => "Update Item", - "use_inventory_menu" => "Use Inventory Menu", + "add_minus" => "Inventory to add or subtract.", + "allow_alt_description" => "Allow Alternate Description", + "amount_entry" => "Amount Entry", + "bulk_edit" => "Bulk Edit", + "buy_price_required" => "Purchase Price is a required field.", + "cannot_be_deleted" => "Could not delete selected Item(s), one or more of the selected Items have sales.", + "cannot_find_item" => "Item not found.", + "categories" => "", + "category" => "Category", + "category_new" => "", + "category_required" => "Category is a required field.", + "change_all_to_allow_alt_desc" => "Allow Alternate Description for all.", + "change_all_to_not_allow_allow_desc" => "Do not allow Alternate Description for all.", + "change_all_to_serialized" => "Change all to Serialized", + "change_all_to_unserialized" => "Change all to Unserialized", + "change_image" => "Change Image", + "confirm_bulk_edit" => "Are you sure you want to edit selected Item(s)?", + "confirm_bulk_edit_wipe_taxes" => "All Item Tax information will be replaced.", + "confirm_delete" => "Are you sure you want to delete selected item(s)?", + "confirm_restore" => "Are you sure you want to restore selected item(s)?", + "cost_price" => "Wholesale Price", + "cost_price_number" => "Wholesale Price must be a number.", + "cost_price_required" => "Wholesale Price is a required field.", + "count" => "Update Inventory", + "csv_import_failed" => "CSV import failed", + "csv_import_nodata_wrongformat" => "The uploaded CSV file has no data or is formatted incorrectly.", + "csv_import_partially_failed" => "There were {0} item import failure(s) on line(s): {1}. No rows were imported.", + "csv_import_success" => "Item CSV import successful.", + "current_quantity" => "Current Quantity", + "default_pack_name" => "Each", + "description" => "Description", + "details_count" => "Inventory Count Details", + "do_nothing" => "Do Nothing", + "edit" => "", + "edit_fields_you_want_to_update" => "Edit the desired fields for selected item(s).", + "edit_multiple_items" => "Editing Multiple Items", + "empty_upc_items" => "Empty Barcode Items", + "error_adding_updating" => "Error adding/updating item", + "error_updating_multiple" => "Error updating items", + "generate_barcodes" => "Generate Barcodes", + "hsn_code" => "Harmonized System Nomenclature", + "image" => "Avatar", + "import_items_csv" => "Item Import from CSV", + "info_provided_by" => "Information provided by", + "inventory" => "Inventory", + "inventory_CSV_import_quantity" => "Quantity Imported from CSV", + "inventory_comments" => "Comments", + "inventory_data_tracking" => "Inventory Data Tracking", + "inventory_date" => "Date", + "inventory_employee" => "Employee", + "inventory_in_out_quantity" => "In/Out Quantity", + "inventory_remarks" => "Remarks", + "is_deleted" => "Deleted", + "is_printed" => "", + "is_serialized" => "Item has Serial Number", + "item" => "Item", + "item_id" => "", + "item_number" => "Barcode", + "item_number_duplicate" => "Item Number is already present in the database.", + "kit" => "Kit", + "location" => "Location", + "low_inventory_items" => "Out Of Stock Items", + "low_sell_item" => "Low sell item", + "manually_editing_of_quantity" => "Manual Edit of Quantity", + "markup" => "", + "name" => "Item Name", + "name_required" => "Item Name is a required field.", + "new" => "New Item", + "no_description_items" => "No Description Items", + "no_items_to_display" => "No Items to display.", + "none" => "None", + "none_selected" => "You have not selected any Item(s) to edit", + "nonstock" => "Non-stocked", + "number_information" => "Item Number", + "number_required" => "Barcode is a required field.", + "one_or_multiple" => "item(s)", + "pack_name" => "Pack Name", + "qty_per_pack" => "Quantity per pack", + "quantity" => "Quantity", + "quantity_number" => "Quantity must be a number.", + "quantity_required" => "Quantity is a required field.", + "receiving_quantity" => "Receiving Quantity", + "remove_image" => "Remove Image", + "reorder_level" => "Reorder Level", + "reorder_level_number" => "Reorder Level must be a number.", + "reorder_level_required" => "Reorder Level is a required field.", + "retrive_item_info" => "Retrieve Item Info", + "sales_tax_1" => "Sales Tax", + "sales_tax_2" => "Sales Tax 2", + "search_attributes" => "Search Attributes", + "select_image" => "Select Image", + "serialized_items" => "Serialized Items", + "standard" => "Standard", + "stock" => "Stock", + "stock_location" => "Stock location", + "stock_type" => "Stock Type", + "successful_adding" => "You have successfully added item", + "successful_bulk_edit" => "You have successfully updated the selected item(s)", + "successful_deleted" => "You have successfully deleted", + "successful_updating" => "You have successfully updated item", + "supplier" => "Supplier", + "tax_1" => "Tax 1", + "tax_2" => "Tax 2", + "tax_3" => "", + "tax_category" => "Tax Category", + "tax_percent" => "", + "tax_percent_number" => "Tax Percent must be a numeric value", + "tax_percent_required" => "Tax Percent is a required field.", + "tax_percents" => "Tax Percent(s)", + "temp" => "Temporary", + "type" => "Item Type", + "unit_price" => "Retail Price", + "unit_price_number" => "Unit price must be a number.", + "unit_price_required" => "Retail Price is a required field.", + "upc_database" => "Barcode Database", + "update" => "Update Item", + "use_inventory_menu" => "Use Inventory Menu", ]; diff --git a/app/Language/en/Login.php b/app/Language/en/Login.php index 73f437558..61c51d9f7 100644 --- a/app/Language/en/Login.php +++ b/app/Language/en/Login.php @@ -1,15 +1,15 @@ "I'm not a robot.", - "go" => "Go", - "invalid_gcaptcha" => "Please verify that you are not a robot.", - "invalid_installation" => "The installation is not correct, check your php.ini file.", - "invalid_username_and_password" => "Invalid username and/or password.", - "login" => "Login", - "logout" => "Logout", - "migration_needed" => "A database migration to {0} will start after login.", - "password" => "Password", - "required_username" => "The username field is required.", - "username" => "Username", - "welcome" => "Welcome to {0}!", + "gcaptcha" => "I'm not a robot.", + "go" => "Go", + "invalid_gcaptcha" => "Please verify that you are not a robot.", + "invalid_installation" => "The installation is not correct, check your php.ini file.", + "invalid_username_and_password" => "Invalid username and/or password.", + "login" => "Login", + "logout" => "Logout", + "migration_needed" => "A database migration to {0} will start after login.", + "password" => "Password", + "required_username" => "The username field is required.", + "username" => "Username", + "welcome" => "Welcome to {0}!", ]; diff --git a/app/Language/en/Messages.php b/app/Language/en/Messages.php index dabf5733c..eb254d6dd 100644 --- a/app/Language/en/Messages.php +++ b/app/Language/en/Messages.php @@ -1,15 +1,15 @@ "First name", - "last_name" => "Last name", - "message" => "Message", - "message_placeholder" => "Your Message here...", - "message_required" => "Message required", - "multiple_phones" => "(In case of multiple recipients, enter mobile numbers separated by commas)", - "phone" => "Phone number", - "phone_number_required" => "Phone number required", - "phone_placeholder" => "Mobile Number(s) here...", - "sms_send" => "Send SMS", - "successfully_sent" => "Message successfully sent to: ", - "unsuccessfully_sent" => "Message unsuccessfully sent to: ", + "first_name" => "First name", + "last_name" => "Last name", + "message" => "Message", + "message_placeholder" => "Your Message here...", + "message_required" => "Message required", + "multiple_phones" => "(In case of multiple recipients, enter mobile numbers separated by commas)", + "phone" => "Phone number", + "phone_number_required" => "Phone number required", + "phone_placeholder" => "Mobile Number(s) here...", + "sms_send" => "Send SMS", + "successfully_sent" => "Message successfully sent to: ", + "unsuccessfully_sent" => "Message unsuccessfully sent to: ", ]; diff --git a/app/Language/en/Module.php b/app/Language/en/Module.php index c7c002dee..fb7d07a30 100644 --- a/app/Language/en/Module.php +++ b/app/Language/en/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "Attributes", - "attributes_desc" => "Add, Update, Delete, and Search attributes.", - "both" => "Both", - "cashups" => "Cashups", - "cashups_desc" => "Add, Update, Delete, and Search Cashups.", - "config" => "Configuration", - "config_desc" => "Change OSPOS's Configuration.", - "customers" => "Customers", - "customers_desc" => "Add, Update, Delete, and Search Customers.", - "employees" => "Employees", - "employees_desc" => "Add, Update, Delete, and Search Employees.", - "expenses" => "Expenses", - "expenses_categories" => "Expenses Categories", - "expenses_categories_desc" => "Add, Update, and Delete Expenses Categories.", - "expenses_desc" => "Add, Update, Delete, and Search Expenses.", - "giftcards" => "Gift Cards", - "giftcards_desc" => "Add, Update, Delete and Search Gift Cards.", - "home" => "Home", - "home_desc" => "List home menu modules.", - "item_kits" => "Item Kits", - "item_kits_desc" => "Add, Update, Delete and Search Item Kits.", - "items" => "Items", - "items_desc" => "Add, Update, Delete, and Search Items.", - "messages" => "Messages", - "messages_desc" => "Send Messages to Customers, Suppliers and Employees.", - "migrate" => "Migrate", - "migrate_desc" => "Update the OSPOS Database.", - "office" => "Office", - "office_desc" => "List office menu modules.", - "receivings" => "Receivings", - "receivings_desc" => "Process Purchase Orders.", - "reports" => "Reports", - "reports_desc" => "View and generate Reports.", - "sales" => "Sales", - "sales_desc" => "Process Sales and Returns.", - "suppliers" => "Suppliers", - "suppliers_desc" => "Add, Update, Delete, and Search Suppliers.", - "taxes" => "Taxes", - "taxes_desc" => "Configure Sales Taxes.", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "Attributes", + "attributes_desc" => "Add, Update, Delete, and Search attributes.", + "both" => "Both", + "cashups" => "Cashups", + "cashups_desc" => "Add, Update, Delete, and Search Cashups.", + "config" => "Configuration", + "config_desc" => "Change OSPOS's Configuration.", + "customers" => "Customers", + "customers_desc" => "Add, Update, Delete, and Search Customers.", + "employees" => "Employees", + "employees_desc" => "Add, Update, Delete, and Search Employees.", + "expenses" => "Expenses", + "expenses_categories" => "Expenses Categories", + "expenses_categories_desc" => "Add, Update, and Delete Expenses Categories.", + "expenses_desc" => "Add, Update, Delete, and Search Expenses.", + "giftcards" => "Gift Cards", + "giftcards_desc" => "Add, Update, Delete and Search Gift Cards.", + "home" => "Home", + "home_desc" => "List home menu modules.", + "item_kits" => "Item Kits", + "item_kits_desc" => "Add, Update, Delete and Search Item Kits.", + "items" => "Items", + "items_desc" => "Add, Update, Delete, and Search Items.", + "messages" => "Messages", + "messages_desc" => "Send Messages to Customers, Suppliers and Employees.", + "migrate" => "Migrate", + "migrate_desc" => "Update the OSPOS Database.", + "office" => "Office", + "office_desc" => "List office menu modules.", + "receivings" => "Receivings", + "receivings_desc" => "Process Purchase Orders.", + "reports" => "Reports", + "reports_desc" => "View and generate Reports.", + "sales" => "Sales", + "sales_desc" => "Process Sales and Returns.", + "suppliers" => "Suppliers", + "suppliers_desc" => "Add, Update, Delete, and Search Suppliers.", + "taxes" => "Taxes", + "taxes_desc" => "Configure Sales Taxes.", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/en/Receivings.php b/app/Language/en/Receivings.php index f6d1acc3a..f151ee95e 100644 --- a/app/Language/en/Receivings.php +++ b/app/Language/en/Receivings.php @@ -1,58 +1,58 @@ "", - "cancel_receiving" => "Cancel", - "cannot_be_deleted" => "Receiving(s) delete failed.", - "comments" => "Comments", - "complete_receiving" => "Finish", - "confirm_cancel_receiving" => "Are you sure you want to clear this receiving? All items will cleared.", - "confirm_delete" => "Are you sure you want to delete this receiving? This action cannot be undone.", - "confirm_finish_receiving" => "Are you sure you want to submit this receiving? This cannot be undone.", - "confirm_restore" => "", - "cost" => "Cost", - "daily" => "", - "date" => "Receiving Date", - "date_required" => "A correct date must be entered.", - "date_type" => "Date is a required field.", - "delete_entire_sale" => "Delete Entire Sale", - "discount" => "Discount", - "edit" => "Edit", - "edit_sale" => "Edit Receiving", - "employee" => "Employee", - "error_editing_item" => "Item edit failed.", - "error_requisition" => "Unable to move Inventory from or to the same Stock Location.", - "find_or_scan_item" => "Find or Scan Item", - "find_or_scan_item_or_receipt" => "Find or Scan Item or Receipt", - "id" => "Receiving ID", - "item_name" => "Item Name", - "mode" => "Receiving Mode", - "new_supplier" => "New Supplier", - "one_or_multiple" => "receiving(s)", - "print_after_sale" => "Print After Sale", - "quantity" => "Qty.", - "receipt" => "Receivings Receipt", - "receipt_number" => "Receiving #", - "receiving" => "Receive", - "reference" => "Reference", - "register" => "Items Receiving", - "requisition" => "Requisition", - "return" => "Return", - "select_supplier" => "Select Supplier (Optional)", - "ship_pack" => "Ship Pack", - "start_typing_supplier_name" => "Start Typing Supplier's name...", - "stock" => "Stock", - "stock_destination" => "Stock Destination", - "stock_locaiton" => "Stock Location", - "stock_source" => "Stock Source", - "successfully_deleted" => "You have successfully deleted", - "successfully_updated" => "Receiving successfully updated", - "supplier" => "Supplier", - "supplier_address" => "Address", - "supplier_email" => "Email", - "supplier_location" => "Location", - "total" => "Total", - "transaction_failed" => "Receivings transaction(s) failed.", - "unable_to_add_item" => "Item add to Receiving failed.", - "unsuccessfully_updated" => "Receiving update failed.", - "update" => "Update", + "amount_due" => "", + "cancel_receiving" => "Cancel", + "cannot_be_deleted" => "Receiving(s) delete failed.", + "comments" => "Comments", + "complete_receiving" => "Finish", + "confirm_cancel_receiving" => "Are you sure you want to clear this receiving? All items will cleared.", + "confirm_delete" => "Are you sure you want to delete this receiving? This action cannot be undone.", + "confirm_finish_receiving" => "Are you sure you want to submit this receiving? This cannot be undone.", + "confirm_restore" => "", + "cost" => "Cost", + "daily" => "", + "date" => "Receiving Date", + "date_required" => "A correct date must be entered.", + "date_type" => "Date is a required field.", + "delete_entire_sale" => "Delete Entire Sale", + "discount" => "Discount", + "edit" => "Edit", + "edit_sale" => "Edit Receiving", + "employee" => "Employee", + "error_editing_item" => "Item edit failed.", + "error_requisition" => "Unable to move Inventory from or to the same Stock Location.", + "find_or_scan_item" => "Find or Scan Item", + "find_or_scan_item_or_receipt" => "Find or Scan Item or Receipt", + "id" => "Receiving ID", + "item_name" => "Item Name", + "mode" => "Receiving Mode", + "new_supplier" => "New Supplier", + "one_or_multiple" => "receiving(s)", + "print_after_sale" => "Print After Sale", + "quantity" => "Qty.", + "receipt" => "Receivings Receipt", + "receipt_number" => "Receiving #", + "receiving" => "Receive", + "reference" => "Reference", + "register" => "Items Receiving", + "requisition" => "Requisition", + "return" => "Return", + "select_supplier" => "Select Supplier (Optional)", + "ship_pack" => "Ship Pack", + "start_typing_supplier_name" => "Start Typing Supplier's name...", + "stock" => "Stock", + "stock_destination" => "Stock Destination", + "stock_locaiton" => "Stock Location", + "stock_source" => "Stock Source", + "successfully_deleted" => "You have successfully deleted", + "successfully_updated" => "Receiving successfully updated", + "supplier" => "Supplier", + "supplier_address" => "Address", + "supplier_email" => "Email", + "supplier_location" => "Location", + "total" => "Total", + "transaction_failed" => "Receivings transaction(s) failed.", + "unable_to_add_item" => "Item add to Receiving failed.", + "unsuccessfully_updated" => "Receiving update failed.", + "update" => "Update", ]; diff --git a/app/Language/en/Reports.php b/app/Language/en/Reports.php index 3e662823f..bf52603da 100644 --- a/app/Language/en/Reports.php +++ b/app/Language/en/Reports.php @@ -1,148 +1,148 @@ "All", - "authority" => "Authority", - "canceled" => "Canceled", - "categories" => "Categories", - "categories_summary_report" => "Categories Summary Report", - "category" => "Category", - "code_canceled" => "CNL", - "code_invoice" => "INV", - "code_pos" => "POS", - "code_quote" => "Q", - "code_return" => "RET", - "code_type" => "Type", - "code_work_order" => "W/O", - "comments" => "Comments", - "commission" => "", - "complete" => "Completed Sales and Returns", - "completed_sales" => "Completed Sales", - "confirm_delete" => "Are you sure you want to delete selected entry(s)?", - "confirm_restore" => "Are you sure you want to restore selected entry(s)?", - "cost" => "Wholesale", - "cost_price" => "Wholesale Price", - "count" => "Count", - "customer" => "Customer", - "customers" => "Customers", - "customers_summary_report" => "Customers Summary Report", - "date" => "Date", - "date_range" => "Date Range", - "description" => "Description", - "detailed_receivings_report" => "Detailed Receivings Report", - "detailed_receivings_report_input" => "", - "detailed_reports" => "Detailed Reports", - "detailed_requisition_report" => "", - "detailed_sales_report" => "Detailed Transactions Report", - "discount" => "Discount", - "discount_fixed" => "Fixed Discount", - "discount_percent" => "Discount Percent", - "discount_type" => "Discount Type", - "discounts" => "Discounts", - "discounts_summary_report" => "Discounts Summary Report", - "earned" => "Points Earned", - "employee" => "Employee", - "employees" => "Employees", - "employees_summary_report" => "Employees Summary Report", - "expenses" => "Expenses", - "expenses_amount" => "Amount", - "expenses_categories" => "Expenses", - "expenses_categories_summary_report" => "Expense Categories Summary Report", - "expenses_category" => "Category", - "expenses_payment_amount" => "", - "expenses_tax_amount" => "Tax", - "expenses_total_amount" => "Total Amount", - "expenses_total_tax_amount" => "Total Tax", - "graphical_reports" => "Graphical Reports", - "inventory" => "Inventory", - "inventory_low" => "Low Inventory", - "inventory_low_report" => "Low Inventory Report", - "inventory_reports" => "Inventory Reports", - "inventory_summary" => "Inventory Summary", - "inventory_summary_report" => "Inventory Summary Report", - "item" => "Item", - "item_count" => "Filter Item Count", - "item_name" => "Item Name", - "item_number" => "Barcode", - "items" => "Items", - "items_purchased" => "Items Purchased", - "items_received" => "Items Received", - "items_summary_report" => "Items Summary Report", - "jurisdiction" => "Jurisdiction", - "low_inventory" => "", - "low_inventory_report" => "", - "low_sell_quantity" => "Low Sell Qty", - "more_than_zero" => "More than zero", - "name" => "Name", - "no_reports_to_display" => "No Items to display.", - "payment_type" => "Payment Type", - "payments" => "Payments", - "payments_summary_report" => "Payments Summary Report", - "profit" => "Profit", - "quantity" => "Quantity", - "quantity_purchased" => "Quantity Purchased", - "quotes" => "Quotes", - "received_by" => "Received By", - "receiving_id" => "Receiving ID", - "receiving_type" => "Receiving Type", - "receivings" => "Receivings", - "reorder_level" => "Reorder Level", - "report" => "Report", - "report_input" => "Report Input", - "reports" => "Reports", - "requisition" => "", - "requisition_by" => "", - "requisition_id" => "", - "requisition_item" => "", - "requisition_item_quantity" => "", - "requisition_related_item" => "", - "requisition_related_item_total_quantity" => "", - "requisition_related_item_unit_quantity" => "", - "requisitions" => "Requisitions", - "returns" => "Returns", - "revenue" => "Revenue", - "sale_id" => "Trans. ID", - "sale_type" => "Transaction Type", - "sales" => "Transactions", - "sales_amount" => "Transactions amount", - "sales_summary_report" => "Transactions Summary Report", - "sales_taxes" => "Sales Taxes", - "sales_taxes_summary_report" => "Sales Taxes Summary Report", - "serial_number" => "Serial Number", - "service_charge" => "", - "sold_by" => "Sold By", - "sold_items" => "", - "sold_to" => "Sold To", - "stock_location" => "Stock Location", - "sub_total_value" => "Subtotal", - "subtotal" => "Subtotal", - "summary_reports" => "Summary Reports", - "supplied_by" => "Supplied by", - "supplier" => "Supplier", - "suppliers" => "Suppliers", - "suppliers_summary_report" => "Suppliers Summary Report", - "tax" => "Tax", - "tax_category" => "Tax Category", - "tax_name" => "Tax Name", - "tax_percent" => "Tax Percent", - "tax_rate" => "Tax Rate", - "taxes" => "Taxes", - "taxes_summary_report" => "Taxes Summary Report", - "total" => "Total", - "total_inventory_value" => "Total Inventory Value", - "total_low_sell_quantity" => "Total Low Sell Quantity", - "total_quantity" => "Total Quantity", - "total_retail" => "Total Inv. Retail Value", - "trans_amount" => "Transaction Amount", - "trans_due" => "Due", - "trans_group" => "Transaction Group", - "trans_nopay_sales" => "Sales with no payment", - "trans_payments" => "Payments", - "trans_refunded" => "Refunded", - "trans_sales" => "Sales", - "trans_type" => "Transaction Type", - "type" => "Type", - "unit_price" => "Retail Price", - "used" => "Points Used", - "work_orders" => "Work Orders", - "zero_and_less" => "Zero and less", + "all" => "All", + "authority" => "Authority", + "canceled" => "Canceled", + "categories" => "Categories", + "categories_summary_report" => "Categories Summary Report", + "category" => "Category", + "code_canceled" => "CNL", + "code_invoice" => "INV", + "code_pos" => "POS", + "code_quote" => "Q", + "code_return" => "RET", + "code_type" => "Type", + "code_work_order" => "W/O", + "comments" => "Comments", + "commission" => "", + "complete" => "Completed Sales and Returns", + "completed_sales" => "Completed Sales", + "confirm_delete" => "Are you sure you want to delete selected entry(s)?", + "confirm_restore" => "Are you sure you want to restore selected entry(s)?", + "cost" => "Wholesale", + "cost_price" => "Wholesale Price", + "count" => "Count", + "customer" => "Customer", + "customers" => "Customers", + "customers_summary_report" => "Customers Summary Report", + "date" => "Date", + "date_range" => "Date Range", + "description" => "Description", + "detailed_receivings_report" => "Detailed Receivings Report", + "detailed_receivings_report_input" => "", + "detailed_reports" => "Detailed Reports", + "detailed_requisition_report" => "", + "detailed_sales_report" => "Detailed Transactions Report", + "discount" => "Discount", + "discount_fixed" => "Fixed Discount", + "discount_percent" => "Discount Percent", + "discount_type" => "Discount Type", + "discounts" => "Discounts", + "discounts_summary_report" => "Discounts Summary Report", + "earned" => "Points Earned", + "employee" => "Employee", + "employees" => "Employees", + "employees_summary_report" => "Employees Summary Report", + "expenses" => "Expenses", + "expenses_amount" => "Amount", + "expenses_categories" => "Expenses", + "expenses_categories_summary_report" => "Expense Categories Summary Report", + "expenses_category" => "Category", + "expenses_payment_amount" => "", + "expenses_tax_amount" => "Tax", + "expenses_total_amount" => "Total Amount", + "expenses_total_tax_amount" => "Total Tax", + "graphical_reports" => "Graphical Reports", + "inventory" => "Inventory", + "inventory_low" => "Low Inventory", + "inventory_low_report" => "Low Inventory Report", + "inventory_reports" => "Inventory Reports", + "inventory_summary" => "Inventory Summary", + "inventory_summary_report" => "Inventory Summary Report", + "item" => "Item", + "item_count" => "Filter Item Count", + "item_name" => "Item Name", + "item_number" => "Barcode", + "items" => "Items", + "items_purchased" => "Items Purchased", + "items_received" => "Items Received", + "items_summary_report" => "Items Summary Report", + "jurisdiction" => "Jurisdiction", + "low_inventory" => "", + "low_inventory_report" => "", + "low_sell_quantity" => "Low Sell Qty", + "more_than_zero" => "More than zero", + "name" => "Name", + "no_reports_to_display" => "No Items to display.", + "payment_type" => "Payment Type", + "payments" => "Payments", + "payments_summary_report" => "Payments Summary Report", + "profit" => "Profit", + "quantity" => "Quantity", + "quantity_purchased" => "Quantity Purchased", + "quotes" => "Quotes", + "received_by" => "Received By", + "receiving_id" => "Receiving ID", + "receiving_type" => "Receiving Type", + "receivings" => "Receivings", + "reorder_level" => "Reorder Level", + "report" => "Report", + "report_input" => "Report Input", + "reports" => "Reports", + "requisition" => "", + "requisition_by" => "", + "requisition_id" => "", + "requisition_item" => "", + "requisition_item_quantity" => "", + "requisition_related_item" => "", + "requisition_related_item_total_quantity" => "", + "requisition_related_item_unit_quantity" => "", + "requisitions" => "Requisitions", + "returns" => "Returns", + "revenue" => "Revenue", + "sale_id" => "Trans. ID", + "sale_type" => "Transaction Type", + "sales" => "Transactions", + "sales_amount" => "Transactions amount", + "sales_summary_report" => "Transactions Summary Report", + "sales_taxes" => "Sales Taxes", + "sales_taxes_summary_report" => "Sales Taxes Summary Report", + "serial_number" => "Serial Number", + "service_charge" => "", + "sold_by" => "Sold By", + "sold_items" => "", + "sold_to" => "Sold To", + "stock_location" => "Stock Location", + "sub_total_value" => "Subtotal", + "subtotal" => "Subtotal", + "summary_reports" => "Summary Reports", + "supplied_by" => "Supplied by", + "supplier" => "Supplier", + "suppliers" => "Suppliers", + "suppliers_summary_report" => "Suppliers Summary Report", + "tax" => "Tax", + "tax_category" => "Tax Category", + "tax_name" => "Tax Name", + "tax_percent" => "Tax Percent", + "tax_rate" => "Tax Rate", + "taxes" => "Taxes", + "taxes_summary_report" => "Taxes Summary Report", + "total" => "Total", + "total_inventory_value" => "Total Inventory Value", + "total_low_sell_quantity" => "Total Low Sell Quantity", + "total_quantity" => "Total Quantity", + "total_retail" => "Total Inv. Retail Value", + "trans_amount" => "Transaction Amount", + "trans_due" => "Due", + "trans_group" => "Transaction Group", + "trans_nopay_sales" => "Sales with no payment", + "trans_payments" => "Payments", + "trans_refunded" => "Refunded", + "trans_sales" => "Sales", + "trans_type" => "Transaction Type", + "type" => "Type", + "unit_price" => "Retail Price", + "used" => "Points Used", + "work_orders" => "Work Orders", + "zero_and_less" => "Zero and less", ]; diff --git a/app/Language/en/Sales.php b/app/Language/en/Sales.php index 74a4e616c..5db6346fb 100644 --- a/app/Language/en/Sales.php +++ b/app/Language/en/Sales.php @@ -1,225 +1,225 @@ "Points Available", - "rewards_package" => "Rewards", - "rewards_remaining_balance" => "Reward Points remaining value is ", - "account_number" => "Account #", - "add_payment" => "Add Payment", - "amount_due" => "Amount Due", - "amount_tendered" => "Amount Tendered", - "authorized_signature" => "Authorized Signature", - "cancel_sale" => "Cancel", - "cash" => "Cash", - "cash_1" => "", - "cash_2" => "", - "cash_3" => "", - "cash_4" => "", - "cash_adjustment" => "Cash Adjustment", - "cash_deposit" => "Cash Deposit", - "cash_filter" => "Cash", - "change_due" => "Change Due", - "change_price" => "Change Selling Price", - "check" => "Check", - "check_balance" => "Check remainder", - "check_filter" => "Check", - "close" => "", - "comment" => "Comment", - "comments" => "Comments", - "company_name" => "", - "complete" => "", - "complete_sale" => "Complete", - "confirm_cancel_sale" => "Are you sure you want to clear this sale? All items will be cleared.", - "confirm_delete" => "Are you sure you want to delete the selected Sale(s)?", - "confirm_restore" => "Are you sure you want to restore the selected Sale(s)?", - "credit" => "Credit Card", - "credit_deposit" => "Credit Deposit", - "credit_filter" => "Credit Card", - "current_table" => "", - "customer" => "Customer", - "customer_address" => "Address", - "customer_discount" => "Discount", - "customer_email" => "Email", - "customer_location" => "Location", - "customer_mailchimp_status" => "MailChimp Status", - "customer_optional" => "(Required for Due Payments)", - "customer_required" => "(Required)", - "customer_total" => "Total", - "customer_total_spent" => "", - "daily_sales" => "", - "date" => "Sale Date", - "date_range" => "Date Range", - "date_required" => "A correct date must be entered.", - "date_type" => "Date is a required field.", - "debit" => "Debit Card", - "debit_filter" => "", - "delete" => "Allow Delete", - "delete_confirmation" => "Are you sure you want to delete this sale? This action cannot be undone.", - "delete_entire_sale" => "Delete Entire Sale", - "delete_successful" => "Sale delete successful.", - "delete_unsuccessful" => "Sale delete failed.", - "description_abbrv" => "Desc.", - "discard" => "Discard", - "discard_quote" => "", - "discount" => "Disc", - "discount_included" => "% Discount", - "discount_short" => "%", - "due" => "Due", - "due_filter" => "Due", - "edit" => "Edit", - "edit_item" => "Edit Item", - "edit_sale" => "Edit Sale", - "email_receipt" => "Email Receipt", - "employee" => "Employee", - "entry" => "Entry", - "error_editing_item" => "Error editing item", - "find_or_scan_item" => "Find or Scan Item", - "find_or_scan_item_or_receipt" => "Find or Scan Item or Receipt", - "giftcard" => "Gift Card", - "giftcard_balance" => "Gift Card Balance", - "giftcard_filter" => "", - "giftcard_number" => "Gift Card Number", - "group_by_category" => "Group by Category", - "group_by_type" => "Group by Type", - "hsn" => "HSN", - "id" => "Sale ID", - "include_prices" => "Include Prices?", - "invoice" => "Invoice", - "invoice_confirm" => "This invoice will be sent to", - "invoice_enable" => "Invoice Number", - "invoice_filter" => "Invoices", - "invoice_no_email" => "This customer does not have a valid email address.", - "invoice_number" => "Invoice #", - "invoice_number_duplicate" => "Invoice Number {0} must be unique.", - "invoice_sent" => "Invoice sent to", - "invoice_total" => "Invoice Total", - "invoice_type_custom_invoice" => "Custom Invoice (custom_invoice.php)", - "invoice_type_custom_tax_invoice" => "Custom Tax Invoice (custom_tax_invoice.php)", - "invoice_type_invoice" => "Invoice (invoice.php)", - "invoice_type_tax_invoice" => "Tax Invoice (tax_invoice.php)", - "invoice_unsent" => "Invoice failed to be sent to", - "invoice_update" => "Recount", - "item_insufficient_of_stock" => "Item has insufficient stock.", - "item_name" => "Item Name", - "item_number" => "Item #", - "item_out_of_stock" => "Item is out of stock.", - "key_browser" => "Helpful Shortcuts", - "key_cancel" => "Cancels Current Quote/Invoice/Sale", - "key_customer_search" => "Customer Search", - "key_finish_quote" => "Finish Quote/Invoice without payment", - "key_finish_sale" => "Add Payment and Complete Invoice/Sale", - "key_full" => "Open in Full Screen Mode", - "key_function" => "Function", - "key_help" => "Shortcuts", - "key_help_modal" => "Open Shortcuts Window", - "key_in" => "Zoom in", - "key_item_search" => "Item Search", - "key_out" => "Zoom Out", - "key_payment" => "Add Payment", - "key_print" => "Print Current Page", - "key_restore" => "Restore Original Display/Zoom", - "key_search" => "Search Reports Tables", - "key_suspend" => "Suspend Current Sale", - "key_suspended" => "Show Suspended Sales", - "key_system" => "System Shortcuts", - "key_tendered" => "Edit Amount Tendered", - "key_title" => "Sales Keyboard Shortcuts", - "mc" => "", - "mode" => "Register Mode", - "must_enter_numeric" => "Amount Tendered must be a number.", - "must_enter_numeric_giftcard" => "Gift Card Number must be a number.", - "new_customer" => "New Customer", - "new_item" => "New Item", - "no_description" => "No description", - "no_filter" => "All", - "no_items_in_cart" => "There are no Items in the cart.", - "no_sales_to_display" => "No Sales to display.", - "none_selected" => "You have not selected any Sale(s) to delete.", - "nontaxed_ind" => " ", - "not_authorized" => "This action is not authorized.", - "one_or_multiple" => "Sale(s)", - "payment" => "Payment Type", - "payment_amount" => "Amount", - "payment_not_cover_total" => "Payment Amount must be greater than or equal to Total.", - "payment_type" => "Type", - "payments" => "", - "payments_total" => "Payments Total", - "price" => "Price", - "print_after_sale" => "Print after Sale", - "quantity" => "Quantity", - "quantity_less_than_reorder_level" => "Warning: Desired Quantity is below Reorder Level for that Item.", - "quantity_less_than_zero" => "Warning: Desired Quantity is insufficient. You can still process the sale, but audit your inventory.", - "quantity_of_items" => "Quantity of {0} Items", - "quote" => "Quote", - "quote_number" => "Quote Number", - "quote_number_duplicate" => "Quote Number must be unique.", - "quote_sent" => "Quote sent to", - "quote_unsent" => "Quote failed to be sent to", - "receipt" => "Sales Receipt", - "receipt_no_email" => "This customer does not have a valid email address.", - "receipt_number" => "Sale #", - "receipt_sent" => "Receipt sent to", - "receipt_unsent" => "Receipt failed to be sent to", - "refund" => "Refund Type", - "register" => "Sales Register", - "remove_customer" => "Remove Customer", - "remove_discount" => "", - "return" => "Return", - "rewards" => "Reward Points", - "rewards_balance" => "Reward Points Balance", - "sale" => "Sale", - "sale_by_invoice" => "Sale by Invoice", - "sale_for_customer" => "Customer:", - "sale_time" => "Time", - "sales_tax" => "Sales Tax", - "sales_total" => "", - "select_customer" => "Select Customer", - "selected_customer" => "Selected Customer", - "send_invoice" => "Send Invoice", - "send_quote" => "Send Quote", - "send_receipt" => "Send Receipt", - "send_work_order" => "Send Work Order", - "serial" => "Serial", - "service_charge" => "", - "show_due" => "", - "show_invoice" => "Show Invoice", - "show_receipt" => "Show Receipt", - "start_typing_customer_name" => "Start typing customer details...", - "start_typing_item_name" => "Start typing Item Name or scan Barcode...", - "stock" => "Stock", - "stock_location" => "Stock Location", - "sub_total" => "Subtotal", - "successfully_deleted" => "You have successfully deleted", - "successfully_restored" => "You have successfully restored", - "successfully_suspended_sale" => "Sale suspend successful.", - "successfully_updated" => "Sale update successful.", - "suspend_sale" => "Suspend", - "suspended_doc_id" => "Document", - "suspended_sale_id" => "ID", - "suspended_sales" => "Suspended", - "table" => "Table", - "takings" => "Daily Sales", - "tax" => "Tax", - "tax_id" => "Tax Id", - "tax_invoice" => "Tax Invoice", - "tax_percent" => "Tax %", - "taxed_ind" => "T", - "total" => "Total", - "total_tax_exclusive" => "Tax excluded", - "transaction_failed" => "Sales Transaction failed.", - "unable_to_add_item" => "Item add to Sale failed", - "unsuccessfully_deleted" => "Sale(s) delete failed.", - "unsuccessfully_restored" => "Sale(s) restore failed.", - "unsuccessfully_suspended_sale" => "Sale suspend failed.", - "unsuccessfully_updated" => "Sale update failed.", - "unsuspend" => "Unsuspend", - "unsuspend_and_delete" => "Action", - "update" => "Update", - "upi" => "UPI", - "visa" => "", - "wholesale" => "", - "work_order" => "Work Order", - "work_order_number" => "Work Order Number", - "work_order_number_duplicate" => "Work Order Number must be unique.", - "work_order_sent" => "Work Order sent to", - "work_order_unsent" => "Work Order failed to be sent to", + "customers_available_points" => "Points Available", + "rewards_package" => "Rewards", + "rewards_remaining_balance" => "Reward Points remaining value is ", + "account_number" => "Account #", + "add_payment" => "Add Payment", + "amount_due" => "Amount Due", + "amount_tendered" => "Amount Tendered", + "authorized_signature" => "Authorized Signature", + "cancel_sale" => "Cancel", + "cash" => "Cash", + "cash_1" => "", + "cash_2" => "", + "cash_3" => "", + "cash_4" => "", + "cash_adjustment" => "Cash Adjustment", + "cash_deposit" => "Cash Deposit", + "cash_filter" => "Cash", + "change_due" => "Change Due", + "change_price" => "Change Selling Price", + "check" => "Check", + "check_balance" => "Check remainder", + "check_filter" => "Check", + "close" => "", + "comment" => "Comment", + "comments" => "Comments", + "company_name" => "", + "complete" => "", + "complete_sale" => "Complete", + "confirm_cancel_sale" => "Are you sure you want to clear this sale? All items will be cleared.", + "confirm_delete" => "Are you sure you want to delete the selected Sale(s)?", + "confirm_restore" => "Are you sure you want to restore the selected Sale(s)?", + "credit" => "Credit Card", + "credit_deposit" => "Credit Deposit", + "credit_filter" => "Credit Card", + "current_table" => "", + "customer" => "Customer", + "customer_address" => "Address", + "customer_discount" => "Discount", + "customer_email" => "Email", + "customer_location" => "Location", + "customer_mailchimp_status" => "MailChimp Status", + "customer_optional" => "(Required for Due Payments)", + "customer_required" => "(Required)", + "customer_total" => "Total", + "customer_total_spent" => "", + "daily_sales" => "", + "date" => "Sale Date", + "date_range" => "Date Range", + "date_required" => "A correct date must be entered.", + "date_type" => "Date is a required field.", + "debit" => "Debit Card", + "debit_filter" => "", + "delete" => "Allow Delete", + "delete_confirmation" => "Are you sure you want to delete this sale? This action cannot be undone.", + "delete_entire_sale" => "Delete Entire Sale", + "delete_successful" => "Sale delete successful.", + "delete_unsuccessful" => "Sale delete failed.", + "description_abbrv" => "Desc.", + "discard" => "Discard", + "discard_quote" => "", + "discount" => "Disc", + "discount_included" => "% Discount", + "discount_short" => "%", + "due" => "Due", + "due_filter" => "Due", + "edit" => "Edit", + "edit_item" => "Edit Item", + "edit_sale" => "Edit Sale", + "email_receipt" => "Email Receipt", + "employee" => "Employee", + "entry" => "Entry", + "error_editing_item" => "Error editing item", + "find_or_scan_item" => "Find or Scan Item", + "find_or_scan_item_or_receipt" => "Find or Scan Item or Receipt", + "giftcard" => "Gift Card", + "giftcard_balance" => "Gift Card Balance", + "giftcard_filter" => "", + "giftcard_number" => "Gift Card Number", + "group_by_category" => "Group by Category", + "group_by_type" => "Group by Type", + "hsn" => "HSN", + "id" => "Sale ID", + "include_prices" => "Include Prices?", + "invoice" => "Invoice", + "invoice_confirm" => "This invoice will be sent to", + "invoice_enable" => "Invoice Number", + "invoice_filter" => "Invoices", + "invoice_no_email" => "This customer does not have a valid email address.", + "invoice_number" => "Invoice #", + "invoice_number_duplicate" => "Invoice Number {0} must be unique.", + "invoice_sent" => "Invoice sent to", + "invoice_total" => "Invoice Total", + "invoice_type_custom_invoice" => "Custom Invoice (custom_invoice.php)", + "invoice_type_custom_tax_invoice" => "Custom Tax Invoice (custom_tax_invoice.php)", + "invoice_type_invoice" => "Invoice (invoice.php)", + "invoice_type_tax_invoice" => "Tax Invoice (tax_invoice.php)", + "invoice_unsent" => "Invoice failed to be sent to", + "invoice_update" => "Recount", + "item_insufficient_of_stock" => "Item has insufficient stock.", + "item_name" => "Item Name", + "item_number" => "Item #", + "item_out_of_stock" => "Item is out of stock.", + "key_browser" => "Helpful Shortcuts", + "key_cancel" => "Cancels Current Quote/Invoice/Sale", + "key_customer_search" => "Customer Search", + "key_finish_quote" => "Finish Quote/Invoice without payment", + "key_finish_sale" => "Add Payment and Complete Invoice/Sale", + "key_full" => "Open in Full Screen Mode", + "key_function" => "Function", + "key_help" => "Shortcuts", + "key_help_modal" => "Open Shortcuts Window", + "key_in" => "Zoom in", + "key_item_search" => "Item Search", + "key_out" => "Zoom Out", + "key_payment" => "Add Payment", + "key_print" => "Print Current Page", + "key_restore" => "Restore Original Display/Zoom", + "key_search" => "Search Reports Tables", + "key_suspend" => "Suspend Current Sale", + "key_suspended" => "Show Suspended Sales", + "key_system" => "System Shortcuts", + "key_tendered" => "Edit Amount Tendered", + "key_title" => "Sales Keyboard Shortcuts", + "mc" => "", + "mode" => "Register Mode", + "must_enter_numeric" => "Amount Tendered must be a number.", + "must_enter_numeric_giftcard" => "Gift Card Number must be a number.", + "new_customer" => "New Customer", + "new_item" => "New Item", + "no_description" => "No description", + "no_filter" => "All", + "no_items_in_cart" => "There are no Items in the cart.", + "no_sales_to_display" => "No Sales to display.", + "none_selected" => "You have not selected any Sale(s) to delete.", + "nontaxed_ind" => " ", + "not_authorized" => "This action is not authorized.", + "one_or_multiple" => "Sale(s)", + "payment" => "Payment Type", + "payment_amount" => "Amount", + "payment_not_cover_total" => "Payment Amount must be greater than or equal to Total.", + "payment_type" => "Type", + "payments" => "", + "payments_total" => "Payments Total", + "price" => "Price", + "print_after_sale" => "Print after Sale", + "quantity" => "Quantity", + "quantity_less_than_reorder_level" => "Warning: Desired Quantity is below Reorder Level for that Item.", + "quantity_less_than_zero" => "Warning: Desired Quantity is insufficient. You can still process the sale, but audit your inventory.", + "quantity_of_items" => "Quantity of {0} Items", + "quote" => "Quote", + "quote_number" => "Quote Number", + "quote_number_duplicate" => "Quote Number must be unique.", + "quote_sent" => "Quote sent to", + "quote_unsent" => "Quote failed to be sent to", + "receipt" => "Sales Receipt", + "receipt_no_email" => "This customer does not have a valid email address.", + "receipt_number" => "Sale #", + "receipt_sent" => "Receipt sent to", + "receipt_unsent" => "Receipt failed to be sent to", + "refund" => "Refund Type", + "register" => "Sales Register", + "remove_customer" => "Remove Customer", + "remove_discount" => "", + "return" => "Return", + "rewards" => "Reward Points", + "rewards_balance" => "Reward Points Balance", + "sale" => "Sale", + "sale_by_invoice" => "Sale by Invoice", + "sale_for_customer" => "Customer:", + "sale_time" => "Time", + "sales_tax" => "Sales Tax", + "sales_total" => "", + "select_customer" => "Select Customer", + "selected_customer" => "Selected Customer", + "send_invoice" => "Send Invoice", + "send_quote" => "Send Quote", + "send_receipt" => "Send Receipt", + "send_work_order" => "Send Work Order", + "serial" => "Serial", + "service_charge" => "", + "show_due" => "", + "show_invoice" => "Show Invoice", + "show_receipt" => "Show Receipt", + "start_typing_customer_name" => "Start typing customer details...", + "start_typing_item_name" => "Start typing Item Name or scan Barcode...", + "stock" => "Stock", + "stock_location" => "Stock Location", + "sub_total" => "Subtotal", + "successfully_deleted" => "You have successfully deleted", + "successfully_restored" => "You have successfully restored", + "successfully_suspended_sale" => "Sale suspend successful.", + "successfully_updated" => "Sale update successful.", + "suspend_sale" => "Suspend", + "suspended_doc_id" => "Document", + "suspended_sale_id" => "ID", + "suspended_sales" => "Suspended", + "table" => "Table", + "takings" => "Daily Sales", + "tax" => "Tax", + "tax_id" => "Tax Id", + "tax_invoice" => "Tax Invoice", + "tax_percent" => "Tax %", + "taxed_ind" => "T", + "total" => "Total", + "total_tax_exclusive" => "Tax excluded", + "transaction_failed" => "Sales Transaction failed.", + "unable_to_add_item" => "Item add to Sale failed", + "unsuccessfully_deleted" => "Sale(s) delete failed.", + "unsuccessfully_restored" => "Sale(s) restore failed.", + "unsuccessfully_suspended_sale" => "Sale suspend failed.", + "unsuccessfully_updated" => "Sale update failed.", + "unsuspend" => "Unsuspend", + "unsuspend_and_delete" => "Action", + "update" => "Update", + "upi" => "UPI", + "visa" => "", + "wholesale" => "", + "work_order" => "Work Order", + "work_order_number" => "Work Order Number", + "work_order_number_duplicate" => "Work Order Number must be unique.", + "work_order_sent" => "Work Order sent to", + "work_order_unsent" => "Work Order failed to be sent to", ]; diff --git a/app/Language/en/Suppliers.php b/app/Language/en/Suppliers.php index 2a8abd6c8..8c5844976 100644 --- a/app/Language/en/Suppliers.php +++ b/app/Language/en/Suppliers.php @@ -1,24 +1,24 @@ "Account Number", - "agency_name" => "Agency Name", - "cannot_be_deleted" => "Could not delete selected Supplier(s). One or more have Sales.", - "category" => "Category", - "company_name" => "Company Name", - "company_name_required" => "Company Name is a required field.", - "confirm_delete" => "Are you sure you want to delete the selected Supplier(s)?", - "confirm_restore" => "Are you sure you want to restore selected Supplier(s)?", - "cost" => "Cost Supplier", - "error_adding_updating" => "Supplier update or add failed.", - "goods" => "Goods Supplier", - "new" => "New Supplier", - "none_selected" => "You have not selected Supplier(s) to delete.", - "one_or_multiple" => "Supplier(s)", - "successful_adding" => "You have successfully added Supplier", - "successful_deleted" => "You have successfully deleted", - "successful_updating" => "You have successfully updated Supplier", - "supplier" => "Supplier", - "supplier_id" => "Id", - "tax_id" => "Tax Id", - "update" => "Update Supplier", + "account_number" => "Account Number", + "agency_name" => "Agency Name", + "cannot_be_deleted" => "Could not delete selected Supplier(s). One or more have Sales.", + "category" => "Category", + "company_name" => "Company Name", + "company_name_required" => "Company Name is a required field.", + "confirm_delete" => "Are you sure you want to delete the selected Supplier(s)?", + "confirm_restore" => "Are you sure you want to restore selected Supplier(s)?", + "cost" => "Cost Supplier", + "error_adding_updating" => "Supplier update or add failed.", + "goods" => "Goods Supplier", + "new" => "New Supplier", + "none_selected" => "You have not selected Supplier(s) to delete.", + "one_or_multiple" => "Supplier(s)", + "successful_adding" => "You have successfully added Supplier", + "successful_deleted" => "You have successfully deleted", + "successful_updating" => "You have successfully updated Supplier", + "supplier" => "Supplier", + "supplier_id" => "Id", + "tax_id" => "Tax Id", + "update" => "Update Supplier", ]; diff --git a/app/Language/en/Taxes.php b/app/Language/en/Taxes.php index 49874e7b8..66de2f9a6 100644 --- a/app/Language/en/Taxes.php +++ b/app/Language/en/Taxes.php @@ -1,82 +1,82 @@ "Add Exception", - "cascade" => "Cascade", - "cascade_sequence" => "Cascade Sequence", - "city" => "City", - "code" => "Code", - "confirm_delete" => "Are you sure you want to delete this Tax Code? This action cannot be undone", - "confirm_restore" => "Are you sure you want to restore selected Tax Code(s)?", - "default_tax_category" => "Default Tax Category", - "default_tax_rate" => "Default Tax Rate", - "error_adding_updating" => "Tax Code add or update failed", - "group_seq" => "Group Seq", - "jurisdiction_name" => "Jurisdiction Name", - "name" => "Name", - "new" => "New Tax", - "no_taxes" => "", - "no_taxes_to_display" => "No Taxes Code available to display", - "reporting_authority" => "Reporting Authority", - "round_half_down" => "Half Down", - "round_half_even" => "Half Even", - "round_half_odd" => "Half Odd", - "round_half_up" => "Half Up", - "rounding_code" => "Rounding Code", - "sales_tax" => "Sales Tax", - "sales_tax_by_invoice" => "Sales Tax by Invoice", - "sequence" => "Seq.", - "state" => "State", - "successful_deleted" => "You have successfully deleted", - "tax_categories" => "Tax Categories", - "tax_categories_configuration" => "Tax Categories Configuration", - "tax_categories_saved_successfully" => "Tax Categories changes saved", - "tax_categories_saved_unsuccessfully" => "Tax Categories changes not saved", - "tax_category" => "Tax Category", - "tax_category_code" => "Tax Category Code", - "tax_category_duplicate" => "Duplicate tax category", - "tax_category_invalid_chars" => "Invalid characters in tax category name", - "tax_category_name" => "Tax Category Name", - "tax_category_new" => "New Tax Category", - "tax_category_required" => "Tax Category is Required", - "tax_code" => "Tax Code", - "tax_code_cannot_be_deleted" => "Tax Code delete failed", - "tax_code_duplicate" => "Duplicate Tax Code", - "tax_code_invalid_chars" => "Invalid Characters in Tax Code", - "tax_code_name" => "Tax Code Name", - "tax_code_required" => "Tax Code is a required field", - "tax_code_successful_deleted" => "You have successfully deleted Tax Code", - "tax_code_successful_updated" => "You have successfully updated", - "tax_code_successful_updating" => "You have successfully updated Tax Code", - "tax_code_successfully_added" => "You have successfully added", - "tax_code_type" => "Tax Code Type", - "tax_codes" => "Tax Codes", - "tax_codes_configuration" => "Tax Codes Configuration", - "tax_codes_saved_successfully" => "Tax Code changes saved", - "tax_codes_saved_unsuccessfully" => "Tax Code changes not saved", - "tax_excluded" => "Tax excluded", - "tax_group" => "Tax Group", - "tax_group_not_unique" => "Tax Group {0} is not unique", - "tax_group_sequence" => "Tax Group Sequence", - "tax_included" => "Tax included", - "tax_jurisdiction" => "Tax Jurisdiction", - "tax_jurisdiction_duplicate" => "Duplicate Tax Jurisdiction", - "tax_jurisdiction_invalid_chars" => "Invalid Characters in Jurisdiction Name", - "tax_jurisdiction_required" => "Tax jurisdiction is required", - "tax_jurisdictions" => "Tax Jurisdictions", - "tax_jurisdictions_configuration" => "Tax Jurisdictions Configuration", - "tax_jurisdictions_saved_successfully" => "Tax Jurisdiction changes saved", - "tax_jurisdictions_saved_unsuccessfully" => "Tax Jurisdiction changes not saved", - "tax_rate" => "Tax Rate", - "tax_rate_configuration" => "Tax Rate Configuration", - "tax_rate_error_adding_updating" => "Tax Rate add or update failed", - "tax_rate_numeric" => "Tax Rate must be a number", - "tax_rate_required" => "Tax Rate is a required field", - "tax_rate_successful_updated" => "You have successfully updated", - "tax_rate_successfully_added" => "You have successfully added", - "tax_rates" => "Tax Rates", - "tax_rates_configuration" => "Tax Rates Configuration", - "tax_rounding" => "Tax Rounding", - "tax_type" => "Tax Type", - "update" => "Update Tax Rate", - "vat_tax" => "VAT Tax", + "add_exception" => "Add Exception", + "cascade" => "Cascade", + "cascade_sequence" => "Cascade Sequence", + "city" => "City", + "code" => "Code", + "confirm_delete" => "Are you sure you want to delete this Tax Code? This action cannot be undone", + "confirm_restore" => "Are you sure you want to restore selected Tax Code(s)?", + "default_tax_category" => "Default Tax Category", + "default_tax_rate" => "Default Tax Rate", + "error_adding_updating" => "Tax Code add or update failed", + "group_seq" => "Group Seq", + "jurisdiction_name" => "Jurisdiction Name", + "name" => "Name", + "new" => "New Tax", + "no_taxes" => "", + "no_taxes_to_display" => "No Taxes Code available to display", + "reporting_authority" => "Reporting Authority", + "round_half_down" => "Half Down", + "round_half_even" => "Half Even", + "round_half_odd" => "Half Odd", + "round_half_up" => "Half Up", + "rounding_code" => "Rounding Code", + "sales_tax" => "Sales Tax", + "sales_tax_by_invoice" => "Sales Tax by Invoice", + "sequence" => "Seq.", + "state" => "State", + "successful_deleted" => "You have successfully deleted", + "tax_categories" => "Tax Categories", + "tax_categories_configuration" => "Tax Categories Configuration", + "tax_categories_saved_successfully" => "Tax Categories changes saved", + "tax_categories_saved_unsuccessfully" => "Tax Categories changes not saved", + "tax_category" => "Tax Category", + "tax_category_code" => "Tax Category Code", + "tax_category_duplicate" => "Duplicate tax category", + "tax_category_invalid_chars" => "Invalid characters in tax category name", + "tax_category_name" => "Tax Category Name", + "tax_category_new" => "New Tax Category", + "tax_category_required" => "Tax Category is Required", + "tax_code" => "Tax Code", + "tax_code_cannot_be_deleted" => "Tax Code delete failed", + "tax_code_duplicate" => "Duplicate Tax Code", + "tax_code_invalid_chars" => "Invalid Characters in Tax Code", + "tax_code_name" => "Tax Code Name", + "tax_code_required" => "Tax Code is a required field", + "tax_code_successful_deleted" => "You have successfully deleted Tax Code", + "tax_code_successful_updated" => "You have successfully updated", + "tax_code_successful_updating" => "You have successfully updated Tax Code", + "tax_code_successfully_added" => "You have successfully added", + "tax_code_type" => "Tax Code Type", + "tax_codes" => "Tax Codes", + "tax_codes_configuration" => "Tax Codes Configuration", + "tax_codes_saved_successfully" => "Tax Code changes saved", + "tax_codes_saved_unsuccessfully" => "Tax Code changes not saved", + "tax_excluded" => "Tax excluded", + "tax_group" => "Tax Group", + "tax_group_not_unique" => "Tax Group {0} is not unique", + "tax_group_sequence" => "Tax Group Sequence", + "tax_included" => "Tax included", + "tax_jurisdiction" => "Tax Jurisdiction", + "tax_jurisdiction_duplicate" => "Duplicate Tax Jurisdiction", + "tax_jurisdiction_invalid_chars" => "Invalid Characters in Jurisdiction Name", + "tax_jurisdiction_required" => "Tax jurisdiction is required", + "tax_jurisdictions" => "Tax Jurisdictions", + "tax_jurisdictions_configuration" => "Tax Jurisdictions Configuration", + "tax_jurisdictions_saved_successfully" => "Tax Jurisdiction changes saved", + "tax_jurisdictions_saved_unsuccessfully" => "Tax Jurisdiction changes not saved", + "tax_rate" => "Tax Rate", + "tax_rate_configuration" => "Tax Rate Configuration", + "tax_rate_error_adding_updating" => "Tax Rate add or update failed", + "tax_rate_numeric" => "Tax Rate must be a number", + "tax_rate_required" => "Tax Rate is a required field", + "tax_rate_successful_updated" => "You have successfully updated", + "tax_rate_successfully_added" => "You have successfully added", + "tax_rates" => "Tax Rates", + "tax_rates_configuration" => "Tax Rates Configuration", + "tax_rounding" => "Tax Rounding", + "tax_type" => "Tax Type", + "update" => "Update Tax Rate", + "vat_tax" => "VAT Tax", ]; diff --git a/app/Language/es-ES/Attributes.php b/app/Language/es-ES/Attributes.php index ce2b7c6cc..20f38a2e1 100644 --- a/app/Language/es-ES/Attributes.php +++ b/app/Language/es-ES/Attributes.php @@ -1,32 +1,32 @@ "El valor del atributo no puede contener ':' o '|'", - "confirm_delete" => "¿Está seguro de que desea borrar los atributos seleccionados?", - "confirm_restore" => "¿Está seguro de que desea restaurar los atributos seleccionados?", - "definition_cannot_be_deleted" => "No se han podido borrar los atributos seleccionados", - "definition_error_adding_updating" => "El atributo {0} no pudo ser agregado o actulizado. Por favor compruebe el registro de errores.", - "definition_flags" => "Visibilidad del atributo", - "definition_group" => "Grupo", - "definition_id" => "Id", - "definition_name" => "Agregar Atributo", - "definition_name_required" => "El nombre del Atributo es un campo obligatorio", - "definition_one_or_multiple" => "atributo(s)", - "definition_successful_adding" => "Ha agregado con éxito el atributo", - "definition_successful_deleted" => "Ha eliminado con éxito", - "definition_successful_updating" => "Ha actualizado con éxito el atributo", - "definition_type" => "Tipo de Atributo", - "definition_type_required" => "Tipo de Atributo es un campo obligatorio", - "definition_unit" => "Unidad de medida", - "definition_values" => "Valores del Atributo", - "new" => "Nuevo Atributo", - "no_attributes_to_display" => "No hay Atributos para mostrar", - "receipt_visibility" => "Recibo", - "show_in_items" => "Mostrar en ítems", - "show_in_items_visibility" => "Ítems", - "show_in_receipt" => "Mostrar en recibo", - "show_in_receivings" => "Mostrar en recibos", - "show_in_receivings_visibility" => "Recibos", - "show_in_sales" => "Mostrar en ventas", - "show_in_sales_visibility" => "Ventas", - "update" => "Actualizar Atributo", + "attribute_value_invalid_chars" => "El valor del atributo no puede contener ':' o '|'", + "confirm_delete" => "¿Está seguro de que desea borrar los atributos seleccionados?", + "confirm_restore" => "¿Está seguro de que desea restaurar los atributos seleccionados?", + "definition_cannot_be_deleted" => "No se han podido borrar los atributos seleccionados", + "definition_error_adding_updating" => "El atributo {0} no pudo ser agregado o actulizado. Por favor compruebe el registro de errores.", + "definition_flags" => "Visibilidad del atributo", + "definition_group" => "Grupo", + "definition_id" => "Id", + "definition_name" => "Agregar Atributo", + "definition_name_required" => "El nombre del Atributo es un campo obligatorio", + "definition_one_or_multiple" => "atributo(s)", + "definition_successful_adding" => "Ha agregado con éxito el atributo", + "definition_successful_deleted" => "Ha eliminado con éxito", + "definition_successful_updating" => "Ha actualizado con éxito el atributo", + "definition_type" => "Tipo de Atributo", + "definition_type_required" => "Tipo de Atributo es un campo obligatorio", + "definition_unit" => "Unidad de medida", + "definition_values" => "Valores del Atributo", + "new" => "Nuevo Atributo", + "no_attributes_to_display" => "No hay Atributos para mostrar", + "receipt_visibility" => "Recibo", + "show_in_items" => "Mostrar en ítems", + "show_in_items_visibility" => "Ítems", + "show_in_receipt" => "Mostrar en recibo", + "show_in_receivings" => "Mostrar en recibos", + "show_in_receivings_visibility" => "Recibos", + "show_in_sales" => "Mostrar en ventas", + "show_in_sales_visibility" => "Ventas", + "update" => "Actualizar Atributo", ]; diff --git a/app/Language/es-ES/Bootstrap_tables.php b/app/Language/es-ES/Bootstrap_tables.php index 6d91814fe..50013a188 100644 --- a/app/Language/es-ES/Bootstrap_tables.php +++ b/app/Language/es-ES/Bootstrap_tables.php @@ -1,11 +1,11 @@ "Todas", - "columns" => "Columnas", - "hide_show_pagination" => "Ocultar/Mostrar paginación", - "loading" => "Por favor espere...", - "page_from_to" => "Mostrando desde {0} hasta {1} - En total {2} resultados", - "refresh" => "Refrescar", - "rows_per_page" => "{0} resultados por página", - "toggle" => "Ocultar/Mostrar", + "all" => "Todas", + "columns" => "Columnas", + "hide_show_pagination" => "Ocultar/Mostrar paginación", + "loading" => "Por favor espere...", + "page_from_to" => "Mostrando desde {0} hasta {1} - En total {2} resultados", + "refresh" => "Refrescar", + "rows_per_page" => "{0} resultados por página", + "toggle" => "Ocultar/Mostrar", ]; diff --git a/app/Language/es-ES/Cashups.php b/app/Language/es-ES/Cashups.php index a7b4be909..447a59f65 100644 --- a/app/Language/es-ES/Cashups.php +++ b/app/Language/es-ES/Cashups.php @@ -1,49 +1,49 @@ "Cantidad", - "amount_number" => "Cantidad debe ser un numero", - "amount_required" => "Cantidad es un campo obligatorio.", - "cancel_cashups" => "Cancelar", - "cancel_cashups_enter" => "Pulse Aceptar para enviar o haga clic en Cancelar para continuar editando", - "cannot_be_deleted" => "El Turno no puede ser borrado", - "cash_difference" => "Diferencia de Efectivo: ", - "close_date" => "Fecha de Cierre", - "close_employee" => "Cerrado por", - "closed_amount_card" => "Tarjetas", - "closed_amount_cash" => "Efectivo Final", - "closed_amount_check" => "Cheques", - "closed_amount_due" => "Cobros pendientes", - "closed_amount_giftcard" => "Tarjetas de Regalo", - "closed_amount_total" => "Balance Total", - "closed_date" => "Fecha de Cierre", - "confirm_delete" => "¿Estás seguro de que quieres borrar el Turno seleccionado?", - "confirm_restore" => "¿Está seguro de que desea restaurar los Turnos seleccionados?", - "confirm_submit" => "¿Está seguro que desea enviar este efectivo? La jornada estará cerrada.", - "date_number" => "La Fecha debe ser un número", - "date_required" => "La Fecha es un campo obligatorio", - "description" => "Descripción", - "enable_expected" => "Mostrar Ventas", - "error_adding_updating" => "Error al agregar/actualizar Turno", - "giftcard" => "Tarjetas de Regalo de Efectivo", - "id" => "Id", - "info" => "Información del Turno", - "info_employee" => "Empleado Información de Efectivo", - "is_deleted" => "Borrado", - "new" => "Nuevo Turno", - "no_cashups_to_display" => "No hay Turnos para mostrar", - "none_selected" => "No ha seleccionado ningún Turno", - "note" => "Nota de pago", - "one_or_multiple" => "Turno(s)", - "open_amount_cash" => "Efectivo Inicial", - "open_date" => "Fecha de Apertura", - "open_employee" => "Abierto por", - "opened_date" => "Fecha de Apertura", - "successful_adding" => "Turno agregado con éxito", - "successful_deleted" => "Turno borrado con éxito", - "successful_updating" => "Turno actualizado con éxito", - "total" => "Total", - "transfer_amount_cash" => "Salida/Entrada de Efectivo", - "transfer_amount_cash_minus" => "Convertir en Efectivo = -", - "update" => "Actualizar Turno", - "warning" => "No enviar a menos que sea Abierto o Cerrado en el día", + "amount" => "Cantidad", + "amount_number" => "Cantidad debe ser un numero", + "amount_required" => "Cantidad es un campo obligatorio.", + "cancel_cashups" => "Cancelar", + "cancel_cashups_enter" => "Pulse Aceptar para enviar o haga clic en Cancelar para continuar editando", + "cannot_be_deleted" => "El Turno no puede ser borrado", + "cash_difference" => "Diferencia de Efectivo: ", + "close_date" => "Fecha de Cierre", + "close_employee" => "Cerrado por", + "closed_amount_card" => "Tarjetas", + "closed_amount_cash" => "Efectivo Final", + "closed_amount_check" => "Cheques", + "closed_amount_due" => "Cobros pendientes", + "closed_amount_giftcard" => "Tarjetas de Regalo", + "closed_amount_total" => "Balance Total", + "closed_date" => "Fecha de Cierre", + "confirm_delete" => "¿Estás seguro de que quieres borrar el Turno seleccionado?", + "confirm_restore" => "¿Está seguro de que desea restaurar los Turnos seleccionados?", + "confirm_submit" => "¿Está seguro que desea enviar este efectivo? La jornada estará cerrada.", + "date_number" => "La Fecha debe ser un número", + "date_required" => "La Fecha es un campo obligatorio", + "description" => "Descripción", + "enable_expected" => "Mostrar Ventas", + "error_adding_updating" => "Error al agregar/actualizar Turno", + "giftcard" => "Tarjetas de Regalo de Efectivo", + "id" => "Id", + "info" => "Información del Turno", + "info_employee" => "Empleado Información de Efectivo", + "is_deleted" => "Borrado", + "new" => "Nuevo Turno", + "no_cashups_to_display" => "No hay Turnos para mostrar", + "none_selected" => "No ha seleccionado ningún Turno", + "note" => "Nota de pago", + "one_or_multiple" => "Turno(s)", + "open_amount_cash" => "Efectivo Inicial", + "open_date" => "Fecha de Apertura", + "open_employee" => "Abierto por", + "opened_date" => "Fecha de Apertura", + "successful_adding" => "Turno agregado con éxito", + "successful_deleted" => "Turno borrado con éxito", + "successful_updating" => "Turno actualizado con éxito", + "total" => "Total", + "transfer_amount_cash" => "Salida/Entrada de Efectivo", + "transfer_amount_cash_minus" => "Convertir en Efectivo = -", + "update" => "Actualizar Turno", + "warning" => "No enviar a menos que sea Abierto o Cerrado en el día", ]; diff --git a/app/Language/es-ES/Customers.php b/app/Language/es-ES/Customers.php index 0e20186bf..768d4c538 100644 --- a/app/Language/es-ES/Customers.php +++ b/app/Language/es-ES/Customers.php @@ -1,56 +1,56 @@ "Cuenta #", - "account_number_duplicate" => "Este número de cuenta ya esta en la base de datos.", - "available_points" => "Puntos Disponibles", - "available_points_value" => "Puntos Disponibles", - "average" => "Gasto promedio", - "avg_discount" => "Descuento promedio", - "basic_information" => "Información", - "cannot_be_deleted" => "No se pudo borrar los clientes seleccionados. Uno o más de éstos tiene ventas.", - "company_name" => "Nombre del Comercio", - "confirm_delete" => "¿Seguro(a) de que quieres borrar a los clientes seleccionados?", - "confirm_restore" => "Esta seguro de quere restaurar lo(s) empleado(s) seleccionado(s)?", - "consent" => "Consentimiento de registro", - "consent_required" => "Consentimiento de registro es un campo requerido.", - "csv_import_failed" => "Falló la importación de Hoja de Cálculo", - "csv_import_nodata_wrongformat" => "El archivo subido no tiene informacion o el formato es incorrecto.", - "csv_import_partially_failed" => "La mayoria de los clientes se importaron pero algunos no:", - "csv_import_success" => "Importacion de Clientes exitosa.", - "customer" => "Cliente", - "date" => "Fecha", - "discount" => "Descuento", - "discount_fixed" => "Descuento Fijo", - "discount_percent" => "Descuento en Porcentaje", - "discount_type" => "Tipo de Descuento", - "email_duplicate" => "La dirección de correo electrónico ya existe en la base de datos.", - "employee" => "Empleado", - "error_adding_updating" => "Error agregando/actualizando cliente.", - "import_items_csv" => "Importar Clientes desde CSV", - "mailchimp_activity_click" => "Email click", - "mailchimp_activity_lastopen" => "Último correo abierto", - "mailchimp_activity_open" => "Correo abierto", - "mailchimp_activity_total" => "Correo enviado", - "mailchimp_activity_unopen" => "Correo sin abrir", - "mailchimp_email_client" => "Correo del cliente", - "mailchimp_info" => "Correo Mailchimp", - "mailchimp_member_rating" => "Porcentaje", - "mailchimp_status" => "Estado", - "mailchimp_vip" => "VIP", - "max" => "Máx. gastado", - "min" => "Mín. gastado", - "new" => "Nuevo Cliente", - "none_selected" => "No has seleccionado clientes para ser borrados.", - "one_or_multiple" => "Cliente(s)", - "quantity" => "Cantidad", - "stats_info" => "Estados", - "successful_adding" => "Has agregado satisfactoriamente el cliente", - "successful_deleted" => "Has borrado satisfactoriamente a", - "successful_updating" => "No se ha podido agregar el cliente", - "tax_code" => "Código de impuesto", - "tax_id" => "Identificador del Impuesto", - "taxable" => "Gravable", - "total" => "Total", - "update" => "Actualizar Cliente", - "rewards_package" => "Paquete de recompensas", + "account_number" => "Cuenta #", + "account_number_duplicate" => "Este número de cuenta ya esta en la base de datos.", + "available_points" => "Puntos Disponibles", + "available_points_value" => "Puntos Disponibles", + "average" => "Gasto promedio", + "avg_discount" => "Descuento promedio", + "basic_information" => "Información", + "cannot_be_deleted" => "No se pudo borrar los clientes seleccionados. Uno o más de éstos tiene ventas.", + "company_name" => "Nombre del Comercio", + "confirm_delete" => "¿Seguro(a) de que quieres borrar a los clientes seleccionados?", + "confirm_restore" => "Esta seguro de quere restaurar lo(s) empleado(s) seleccionado(s)?", + "consent" => "Consentimiento de registro", + "consent_required" => "Consentimiento de registro es un campo requerido.", + "csv_import_failed" => "Falló la importación de Hoja de Cálculo", + "csv_import_nodata_wrongformat" => "El archivo subido no tiene informacion o el formato es incorrecto.", + "csv_import_partially_failed" => "La mayoria de los clientes se importaron pero algunos no:", + "csv_import_success" => "Importacion de Clientes exitosa.", + "customer" => "Cliente", + "date" => "Fecha", + "discount" => "Descuento", + "discount_fixed" => "Descuento Fijo", + "discount_percent" => "Descuento en Porcentaje", + "discount_type" => "Tipo de Descuento", + "email_duplicate" => "La dirección de correo electrónico ya existe en la base de datos.", + "employee" => "Empleado", + "error_adding_updating" => "Error agregando/actualizando cliente.", + "import_items_csv" => "Importar Clientes desde CSV", + "mailchimp_activity_click" => "Email click", + "mailchimp_activity_lastopen" => "Último correo abierto", + "mailchimp_activity_open" => "Correo abierto", + "mailchimp_activity_total" => "Correo enviado", + "mailchimp_activity_unopen" => "Correo sin abrir", + "mailchimp_email_client" => "Correo del cliente", + "mailchimp_info" => "Correo Mailchimp", + "mailchimp_member_rating" => "Porcentaje", + "mailchimp_status" => "Estado", + "mailchimp_vip" => "VIP", + "max" => "Máx. gastado", + "min" => "Mín. gastado", + "new" => "Nuevo Cliente", + "none_selected" => "No has seleccionado clientes para ser borrados.", + "one_or_multiple" => "Cliente(s)", + "quantity" => "Cantidad", + "stats_info" => "Estados", + "successful_adding" => "Has agregado satisfactoriamente el cliente", + "successful_deleted" => "Has borrado satisfactoriamente a", + "successful_updating" => "No se ha podido agregar el cliente", + "tax_code" => "Código de impuesto", + "tax_id" => "Identificador del Impuesto", + "taxable" => "Gravable", + "total" => "Total", + "update" => "Actualizar Cliente", + "rewards_package" => "Paquete de recompensas", ]; diff --git a/app/Language/es-ES/Datepicker.php b/app/Language/es-ES/Datepicker.php index 31d12404f..ad49678e9 100644 --- a/app/Language/es-ES/Datepicker.php +++ b/app/Language/es-ES/Datepicker.php @@ -1,23 +1,23 @@ "Todos", - "apply" => "Aplicar", - "cancel" => "Cancelar", - "custom" => "Personalizar", - "from" => "Desde", - "last_30" => "Últimos 30 Días", - "last_7" => "Últimos 7 Días", - "last_financial_year" => "Último año fiscal", - "last_month" => "Mes Anterior", - "last_year" => "Año Anterior", - "same_month_last_year" => "Este Mes hace un año", - "same_month_to_same_day_last_year" => "Este mes hasta hoy, del año pasado", - "this_financial_year" => "Este año fiscal", - "this_month" => "Este Mes", - "this_year" => "Este Año", - "to" => "Hasta", - "today" => "Hoy", - "today_last_year" => "Hoy el año pasado", - "weekstart" => "0", - "yesterday" => "Ayer", + "all_time" => "Todos", + "apply" => "Aplicar", + "cancel" => "Cancelar", + "custom" => "Personalizar", + "from" => "Desde", + "last_30" => "Últimos 30 Días", + "last_7" => "Últimos 7 Días", + "last_financial_year" => "Último año fiscal", + "last_month" => "Mes Anterior", + "last_year" => "Año Anterior", + "same_month_last_year" => "Este Mes hace un año", + "same_month_to_same_day_last_year" => "Este mes hasta hoy, del año pasado", + "this_financial_year" => "Este año fiscal", + "this_month" => "Este Mes", + "this_year" => "Este Año", + "to" => "Hasta", + "today" => "Hoy", + "today_last_year" => "Hoy el año pasado", + "weekstart" => "0", + "yesterday" => "Ayer", ]; diff --git a/app/Language/es-ES/Employees.php b/app/Language/es-ES/Employees.php index 862f3d9f6..1ee311d6e 100644 --- a/app/Language/es-ES/Employees.php +++ b/app/Language/es-ES/Employees.php @@ -1,44 +1,44 @@ "Administrador", - "basic_information" => "Información Básica de Empleados", - "cannot_be_deleted" => "No se pudieron borrar empleados. Uno o más empleados tiene ventas procesadas o estás tratando de borrarte a tí mismo(a).", - "change_employee" => "Cambio de Empleado", - "change_password" => "Cambiar Contraseña", - "clerk" => "Empleado", - "commission" => "Tasa de Comisión", - "confirm_delete" => "¿Seguro(a) que quieres borrar los empleados seleccionados?", - "confirm_restore" => "Esta seguro de quere restaurar lo(s) empleado(s) seleccionado(s)?", - "current_password" => "Contraseña Actual", - "current_password_invalid" => "Contraseña Actual Inválida.", - "employee" => "Empleado", - "error_adding_updating" => "Error al agregar/actualizar empleado.", - "error_deleting_demo_admin" => "No puedes borrar el usuario admin del demo.", - "error_updating_demo_admin" => "No puedes cambiar el usuario admin del demo.", - "language" => "Idioma", - "login_info" => "Información de Ingreso del Empleado", - "manager" => "Encargado", - "new" => "Nuevo Empleado", - "none_selected" => "No has seleccionado empleados para borrar.", - "one_or_multiple" => "empleado(s)", - "password" => "Contraseña", - "password_minlength" => "La contraseña debe tener, por lo menos, 8 caracteres.", - "password_must_match" => "Las Contraseñas no coinciden.", - "password_not_must_match" => "La contraseña actual y la nueva contraseña no deben ser iguales.", - "password_required" => "La Contraseña es requerida.", - "permission_desc" => "Activa las cajas debajo para permitir el acceso a los módulos.", - "permission_info" => "Permisos y Acceso del Empleado", - "repeat_password" => "Repita Contraseña", - "subpermission_required" => "Agregar al menos un permiso para cada modulo.", - "successful_adding" => "Empleado agregado satisfactoriamente.", - "successful_change_password" => "Contraseña cambiada satisfactoriamente.", - "successful_deleted" => "Has borrado satisfactoriamente a", - "successful_updating" => "Has actualizado el empleado satisfactoriamente", - "system_language" => "Idioma de sistema", - "unsuccessful_change_password" => "Cambio de contraseña fallido.", - "update" => "Actualizar Empleado", - "username" => "Usuario", - "username_duplicate" => "Nombre de Usuario de Empleado yá está en uso. Por favor escoja otro.", - "username_minlength" => "El nombre de usuario debe ser por lo menos, 5 caracteres.", - "username_required" => "Nombre de usuario es requerido.", + "administrator" => "Administrador", + "basic_information" => "Información Básica de Empleados", + "cannot_be_deleted" => "No se pudieron borrar empleados. Uno o más empleados tiene ventas procesadas o estás tratando de borrarte a tí mismo(a).", + "change_employee" => "Cambio de Empleado", + "change_password" => "Cambiar Contraseña", + "clerk" => "Empleado", + "commission" => "Tasa de Comisión", + "confirm_delete" => "¿Seguro(a) que quieres borrar los empleados seleccionados?", + "confirm_restore" => "Esta seguro de quere restaurar lo(s) empleado(s) seleccionado(s)?", + "current_password" => "Contraseña Actual", + "current_password_invalid" => "Contraseña Actual Inválida.", + "employee" => "Empleado", + "error_adding_updating" => "Error al agregar/actualizar empleado.", + "error_deleting_demo_admin" => "No puedes borrar el usuario admin del demo.", + "error_updating_demo_admin" => "No puedes cambiar el usuario admin del demo.", + "language" => "Idioma", + "login_info" => "Información de Ingreso del Empleado", + "manager" => "Encargado", + "new" => "Nuevo Empleado", + "none_selected" => "No has seleccionado empleados para borrar.", + "one_or_multiple" => "empleado(s)", + "password" => "Contraseña", + "password_minlength" => "La contraseña debe tener, por lo menos, 8 caracteres.", + "password_must_match" => "Las Contraseñas no coinciden.", + "password_not_must_match" => "La contraseña actual y la nueva contraseña no deben ser iguales.", + "password_required" => "La Contraseña es requerida.", + "permission_desc" => "Activa las cajas debajo para permitir el acceso a los módulos.", + "permission_info" => "Permisos y Acceso del Empleado", + "repeat_password" => "Repita Contraseña", + "subpermission_required" => "Agregar al menos un permiso para cada modulo.", + "successful_adding" => "Empleado agregado satisfactoriamente.", + "successful_change_password" => "Contraseña cambiada satisfactoriamente.", + "successful_deleted" => "Has borrado satisfactoriamente a", + "successful_updating" => "Has actualizado el empleado satisfactoriamente", + "system_language" => "Idioma de sistema", + "unsuccessful_change_password" => "Cambio de contraseña fallido.", + "update" => "Actualizar Empleado", + "username" => "Usuario", + "username_duplicate" => "Nombre de Usuario de Empleado yá está en uso. Por favor escoja otro.", + "username_minlength" => "El nombre de usuario debe ser por lo menos, 5 caracteres.", + "username_required" => "Nombre de usuario es requerido.", ]; diff --git a/app/Language/es-ES/Enum.php b/app/Language/es-ES/Enum.php index 4e59777d6..aac916b97 100644 --- a/app/Language/es-ES/Enum.php +++ b/app/Language/es-ES/Enum.php @@ -1,10 +1,10 @@ "Mitad abajo", - "half_even" => "Mitad par", - "half_five" => "Mitad y cinco", - "half_odd" => "Mitad impar", - "half_up" => "Mitad arriba", - "round_down" => "Redondeo abajo", - "round_up" => "Redondeo arriba", + "half_down" => "Mitad abajo", + "half_even" => "Mitad par", + "half_five" => "Mitad y cinco", + "half_odd" => "Mitad impar", + "half_up" => "Mitad arriba", + "round_down" => "Redondeo abajo", + "round_up" => "Redondeo arriba", ]; diff --git a/app/Language/es-ES/Error.php b/app/Language/es-ES/Error.php index cee1d72d2..8ce62e98e 100644 --- a/app/Language/es-ES/Error.php +++ b/app/Language/es-ES/Error.php @@ -1,5 +1,5 @@ "No tienes permiso para accesar el módulo llamado", - "unknown" => "desconocido", + "no_permission_module" => "No tienes permiso para accesar el módulo llamado", + "unknown" => "desconocido", ]; diff --git a/app/Language/es-ES/Expenses.php b/app/Language/es-ES/Expenses.php index 537c759cb..dbab46df3 100644 --- a/app/Language/es-ES/Expenses.php +++ b/app/Language/es-ES/Expenses.php @@ -1,50 +1,50 @@ "Agregar Gasto", - "amount" => "Monto", - "amount_number" => "Monto debe ser numerico", - "amount_required" => "Monto numerico requerido", - "by_category" => "Categoria", - "cannot_be_deleted" => "No puede borrar Categoria de gastos", - "cash" => "Efectivo", - "cash_filter" => "Efectivo", - "categories_name" => "Categoria de Gastos", - "category_required" => "categoria es un campo requerido", - "check" => "Cheque", - "check_filter" => "Cheque", - "confirm_delete" => "¿Esta seguro que quiere borrar (el)los gasto(s) seleccionado(s)?", - "confirm_restore" => "¿Está seguro que quiere restaurar (el)los gasto(s) seleccionado(s)?", - "credit" => "Tarjeta Credito", - "credit_filter" => "Tarjeta Credito", - "date" => "Fecha", - "date_number" => "fecha debe ser numerico", - "date_required" => "fecha es requerido", - "debit" => "Tarjeta Debito", - "debit_filter" => "Tarjeta Debito", - "description" => "Descripcion", - "due" => "Hasta", - "due_filter" => "Hasta", - "employee" => "Creado por", - "error_adding_updating" => "Error añadiendo/actualizando", - "expense_id" => "Id", - "expenses_employee" => "Empleado", - "info" => "Info de gasto", - "ip_address" => "Dirección IP", - "is_deleted" => "Borrado", - "name_required" => "Nombre de gasto requerido", - "new" => "Nuevo Gasto", - "new_supplier" => "Nuevo Proveedor", - "no_expenses_to_display" => "No hay gastos para mostrar", - "none_selected" => "No ha seleccionado ningun gasto", - "one_or_multiple" => "Gasto(s)", - "payment" => "Tipo de pago", - "start_typing_supplier_name" => "Empieza a escribir el nombre del proveedor...", - "successful_adding" => "Gasto añadido", - "successful_deleted" => "Gasto borrado", - "successful_updating" => "Gasto actualizado", - "supplier_name" => "Proveedor", - "supplier_tax_code" => "Codigo Imp", - "tax_amount" => "Imp", - "tax_amount_number" => "Número de Importe de Impuestos", - "update" => "Actualizar Gasto", + "add_item" => "Agregar Gasto", + "amount" => "Monto", + "amount_number" => "Monto debe ser numerico", + "amount_required" => "Monto numerico requerido", + "by_category" => "Categoria", + "cannot_be_deleted" => "No puede borrar Categoria de gastos", + "cash" => "Efectivo", + "cash_filter" => "Efectivo", + "categories_name" => "Categoria de Gastos", + "category_required" => "categoria es un campo requerido", + "check" => "Cheque", + "check_filter" => "Cheque", + "confirm_delete" => "¿Esta seguro que quiere borrar (el)los gasto(s) seleccionado(s)?", + "confirm_restore" => "¿Está seguro que quiere restaurar (el)los gasto(s) seleccionado(s)?", + "credit" => "Tarjeta Credito", + "credit_filter" => "Tarjeta Credito", + "date" => "Fecha", + "date_number" => "fecha debe ser numerico", + "date_required" => "fecha es requerido", + "debit" => "Tarjeta Debito", + "debit_filter" => "Tarjeta Debito", + "description" => "Descripcion", + "due" => "Hasta", + "due_filter" => "Hasta", + "employee" => "Creado por", + "error_adding_updating" => "Error añadiendo/actualizando", + "expense_id" => "Id", + "expenses_employee" => "Empleado", + "info" => "Info de gasto", + "ip_address" => "Dirección IP", + "is_deleted" => "Borrado", + "name_required" => "Nombre de gasto requerido", + "new" => "Nuevo Gasto", + "new_supplier" => "Nuevo Proveedor", + "no_expenses_to_display" => "No hay gastos para mostrar", + "none_selected" => "No ha seleccionado ningun gasto", + "one_or_multiple" => "Gasto(s)", + "payment" => "Tipo de pago", + "start_typing_supplier_name" => "Empieza a escribir el nombre del proveedor...", + "successful_adding" => "Gasto añadido", + "successful_deleted" => "Gasto borrado", + "successful_updating" => "Gasto actualizado", + "supplier_name" => "Proveedor", + "supplier_tax_code" => "Codigo Imp", + "tax_amount" => "Imp", + "tax_amount_number" => "Número de Importe de Impuestos", + "update" => "Actualizar Gasto", ]; diff --git a/app/Language/es-ES/Expenses_categories.php b/app/Language/es-ES/Expenses_categories.php index c03df378d..dd7be71db 100644 --- a/app/Language/es-ES/Expenses_categories.php +++ b/app/Language/es-ES/Expenses_categories.php @@ -1,22 +1,22 @@ "nombre requerido-", - "add_item" => "Agregar categoria", - "cannot_be_deleted" => "No pudo borrar", - "category_id" => "Id", - "confirm_delete" => "Esta seguro de quere borrar lo(s) categorias(s) seleccionado(s)?", - "confirm_restore" => "¿Está seguro de que desea restaurar la categoría de gastos seleccionada?", - "description" => "Descripcion Categoria", - "error_adding_updating" => "Error actualizando/adicinando categoria", - "info" => "Informacion Categoria", - "name" => "Categorías de gastos", - "new" => "Nueva Categoria", - "no_expenses_categories_to_display" => "Ninguna categoria para mostrar", - "none_selected" => "No ha seleccionado nada", - "one_or_multiple" => "Categoria de gasto", - "quantity" => "Oferta", - "successful_adding" => "Categoria adicionada", - "successful_deleted" => "Categoria borrada", - "successful_updating" => "Categoria actualizada", - "update" => "Actualizar Categoria", + "category_name_required" => "nombre requerido-", + "add_item" => "Agregar categoria", + "cannot_be_deleted" => "No pudo borrar", + "category_id" => "Id", + "confirm_delete" => "Esta seguro de quere borrar lo(s) categorias(s) seleccionado(s)?", + "confirm_restore" => "¿Está seguro de que desea restaurar la categoría de gastos seleccionada?", + "description" => "Descripcion Categoria", + "error_adding_updating" => "Error actualizando/adicinando categoria", + "info" => "Informacion Categoria", + "name" => "Categorías de gastos", + "new" => "Nueva Categoria", + "no_expenses_categories_to_display" => "Ninguna categoria para mostrar", + "none_selected" => "No ha seleccionado nada", + "one_or_multiple" => "Categoria de gasto", + "quantity" => "Oferta", + "successful_adding" => "Categoria adicionada", + "successful_deleted" => "Categoria borrada", + "successful_updating" => "Categoria actualizada", + "update" => "Actualizar Categoria", ]; diff --git a/app/Language/es-ES/Item_kits.php b/app/Language/es-ES/Item_kits.php index de7c39f7c..29c780857 100644 --- a/app/Language/es-ES/Item_kits.php +++ b/app/Language/es-ES/Item_kits.php @@ -1,41 +1,41 @@ "Agregar Artículo", - "all" => "Todo", - "cannot_be_deleted" => "Borrado de Kit(s) de Artículos fallido.", - "confirm_delete" => "¿Estás seguro(a) de querer borrar los kits seleccionados?", - "confirm_restore" => "Esta seguro de quere restaurar los kit seleccionados?", - "description" => "Descripción", - "discount" => "Descuento", - "discount_fixed" => "Descuento Fijo", - "discount_percent" => "Porcentaje de descuento", - "discount_type" => "Tipo de Descuento", - "error_adding_updating" => "Error agregando/actualizando Kit de Artículos.", - "find_kit_item" => "Buscar Kit", - "info" => "Info de Kit", - "item" => "Artículo", - "item_kit_number" => "Código", - "item_kit_number_duplicate" => "El Número del Kit de Artículo yá está presente en la base de datos.", - "item_number" => "", - "item_number_duplicate" => "Código de Kit Duplicado", - "items" => "Artículos", - "kit" => "Id", - "kit_and_components" => "Artículos y componentes", - "kit_and_stock" => "Artículos y stocks", - "kit_only" => "Solo artículos", - "name" => "Nombre del Kit", - "new" => "Nuevo Kit", - "no_item_kits_to_display" => "Sin kits de artículos para mostrar.", - "none_selected" => "No has seleccionado Kits de Artículos.", - "one_or_multiple" => "Kit(s) de Artículos", - "price_option" => "Opción del precio", - "priced_only" => "Solo con precio", - "print_option" => "Opciones de impresión", - "quantity" => "Cantidad", - "sequence" => "Orden", - "successful_adding" => "Has agregado satisfactoriamente un Kit de Artículos", - "successful_deleted" => "Has borrado satisfactoriamente", - "successful_updating" => "Has actualizado satisfactoriamente un Kit de Artículos", - "unit_price" => "Precio Unitario", - "update" => "Actualizar Kit de Artículos", + "add_item" => "Agregar Artículo", + "all" => "Todo", + "cannot_be_deleted" => "Borrado de Kit(s) de Artículos fallido.", + "confirm_delete" => "¿Estás seguro(a) de querer borrar los kits seleccionados?", + "confirm_restore" => "Esta seguro de quere restaurar los kit seleccionados?", + "description" => "Descripción", + "discount" => "Descuento", + "discount_fixed" => "Descuento Fijo", + "discount_percent" => "Porcentaje de descuento", + "discount_type" => "Tipo de Descuento", + "error_adding_updating" => "Error agregando/actualizando Kit de Artículos.", + "find_kit_item" => "Buscar Kit", + "info" => "Info de Kit", + "item" => "Artículo", + "item_kit_number" => "Código", + "item_kit_number_duplicate" => "El Número del Kit de Artículo yá está presente en la base de datos.", + "item_number" => "", + "item_number_duplicate" => "Código de Kit Duplicado", + "items" => "Artículos", + "kit" => "Id", + "kit_and_components" => "Artículos y componentes", + "kit_and_stock" => "Artículos y stocks", + "kit_only" => "Solo artículos", + "name" => "Nombre del Kit", + "new" => "Nuevo Kit", + "no_item_kits_to_display" => "Sin kits de artículos para mostrar.", + "none_selected" => "No has seleccionado Kits de Artículos.", + "one_or_multiple" => "Kit(s) de Artículos", + "price_option" => "Opción del precio", + "priced_only" => "Solo con precio", + "print_option" => "Opciones de impresión", + "quantity" => "Cantidad", + "sequence" => "Orden", + "successful_adding" => "Has agregado satisfactoriamente un Kit de Artículos", + "successful_deleted" => "Has borrado satisfactoriamente", + "successful_updating" => "Has actualizado satisfactoriamente un Kit de Artículos", + "unit_price" => "Precio Unitario", + "update" => "Actualizar Kit de Artículos", ]; diff --git a/app/Language/es-ES/Messages.php b/app/Language/es-ES/Messages.php index 81e182fde..d00f89d8d 100644 --- a/app/Language/es-ES/Messages.php +++ b/app/Language/es-ES/Messages.php @@ -1,15 +1,15 @@ "Nombre", - "last_name" => "Apellidos", - "message" => "Mensaje", - "message_placeholder" => "Su mensaje aquí…", - "message_required" => "Mensaje es requerido", - "multiple_phones" => "(En Caso de varios destinatarios, ingresar los numeros de telefono separados por comas)", - "phone" => "Numero de Telefono", - "phone_number_required" => "El Telefono es requerido", - "phone_placeholder" => "Numero de Celular aquí…", - "sms_send" => "Enviar SMS", - "successfully_sent" => "Mensaje exitosamente enviado a: ", - "unsuccessfully_sent" => "Mensaje no pudo ser enviado a: ", + "first_name" => "Nombre", + "last_name" => "Apellidos", + "message" => "Mensaje", + "message_placeholder" => "Su mensaje aquí…", + "message_required" => "Mensaje es requerido", + "multiple_phones" => "(En Caso de varios destinatarios, ingresar los numeros de telefono separados por comas)", + "phone" => "Numero de Telefono", + "phone_number_required" => "El Telefono es requerido", + "phone_placeholder" => "Numero de Celular aquí…", + "sms_send" => "Enviar SMS", + "successfully_sent" => "Mensaje exitosamente enviado a: ", + "unsuccessfully_sent" => "Mensaje no pudo ser enviado a: ", ]; diff --git a/app/Language/es-ES/Module.php b/app/Language/es-ES/Module.php index d236764af..6f05408bd 100644 --- a/app/Language/es-ES/Module.php +++ b/app/Language/es-ES/Module.php @@ -1,48 +1,48 @@ "Administrador de retiro", - "admin_cashups_desc" => "Administrador de retiro", - "attributes" => "Atributos", - "attributes_desc" => "Agregar, Actualizar, Eliminar y Buscar atributos.", - "both" => "Ambos", - "cashups" => "Día de Apertura o Cierre", - "cashups_desc" => "Agregar, Actualizar, Borrar y Buscar Turnos.", - "config" => "Configuración de la Tienda", - "config_desc" => "Cambiar la configuración de OSPOS.", - "customers" => "Clientes", - "customers_desc" => "Agregar, Actualizar, Borrar y Buscar Clientes.", - "employees" => "Empleados", - "employees_desc" => "Agregar, Actualizar, Borrar y Buscar Empleados.", - "expenses" => "Gastos", - "expenses_categories" => "Categorias Gastos", - "expenses_categories_desc" => "Agregar, Actualizar y Borrar Categorias de Gastos.", - "expenses_desc" => "Agregar, Actualizar, Buscar y Borrar Gastos.", - "giftcards" => "Tarjetas de Regalo", - "giftcards_desc" => "Agregar, Actualizar, Borrar y Buscar Tarjetas de Regalo.", - "home" => "Inicio", - "home_desc" => "Listar modulos de Menu inicio.", - "item_kits" => "Kits de Artículos", - "item_kits_desc" => "Agregar, Actualizar, Borrar y Buscar Kits de Artículos.", - "items" => "Artículos", - "items_desc" => "Agregar, Actualizar, Borrar y Buscar artículos.", - "messages" => "Mensajes", - "messages_desc" => "Enviar mensajes a Clientes, Proveedores, Empleados.", - "migrate" => "Migrar", - "migrate_desc" => "Actualizar la base de datos OSPOS.", - "office" => "Oficina", - "office_desc" => "Lista modulo de menu oficina.", - "receivings" => "Recepción", - "receivings_desc" => "Procesar Ordenes de Compra.", - "reports" => "Reportes", - "reports_desc" => "Ver y generar Reportes.", - "sales" => "Ventas", - "sales_desc" => "Procesar Ventas y Devoluciones.", - "suppliers" => "Proveedores", - "suppliers_desc" => "Agregar, Actualizar, Borrar y Buscar Proveedores.", - "taxes" => "Impuestos", - "taxes_desc" => "Configurar Impuestos de Ventas.", - "timeclocks" => "Reloj de Registro", - "timeclocks_categories" => "Reloj de Registro de Categorías", - "timeclocks_categories_desc" => "Agregar, Actualizar, Borrar, y buscar Reloj de Registro de Categorías", - "timeclocks_desc" => "Reloj de Registro.", + "admin_cashups" => "Administrador de retiro", + "admin_cashups_desc" => "Administrador de retiro", + "attributes" => "Atributos", + "attributes_desc" => "Agregar, Actualizar, Eliminar y Buscar atributos.", + "both" => "Ambos", + "cashups" => "Día de Apertura o Cierre", + "cashups_desc" => "Agregar, Actualizar, Borrar y Buscar Turnos.", + "config" => "Configuración de la Tienda", + "config_desc" => "Cambiar la configuración de OSPOS.", + "customers" => "Clientes", + "customers_desc" => "Agregar, Actualizar, Borrar y Buscar Clientes.", + "employees" => "Empleados", + "employees_desc" => "Agregar, Actualizar, Borrar y Buscar Empleados.", + "expenses" => "Gastos", + "expenses_categories" => "Categorias Gastos", + "expenses_categories_desc" => "Agregar, Actualizar y Borrar Categorias de Gastos.", + "expenses_desc" => "Agregar, Actualizar, Buscar y Borrar Gastos.", + "giftcards" => "Tarjetas de Regalo", + "giftcards_desc" => "Agregar, Actualizar, Borrar y Buscar Tarjetas de Regalo.", + "home" => "Inicio", + "home_desc" => "Listar modulos de Menu inicio.", + "item_kits" => "Kits de Artículos", + "item_kits_desc" => "Agregar, Actualizar, Borrar y Buscar Kits de Artículos.", + "items" => "Artículos", + "items_desc" => "Agregar, Actualizar, Borrar y Buscar artículos.", + "messages" => "Mensajes", + "messages_desc" => "Enviar mensajes a Clientes, Proveedores, Empleados.", + "migrate" => "Migrar", + "migrate_desc" => "Actualizar la base de datos OSPOS.", + "office" => "Oficina", + "office_desc" => "Lista modulo de menu oficina.", + "receivings" => "Recepción", + "receivings_desc" => "Procesar Ordenes de Compra.", + "reports" => "Reportes", + "reports_desc" => "Ver y generar Reportes.", + "sales" => "Ventas", + "sales_desc" => "Procesar Ventas y Devoluciones.", + "suppliers" => "Proveedores", + "suppliers_desc" => "Agregar, Actualizar, Borrar y Buscar Proveedores.", + "taxes" => "Impuestos", + "taxes_desc" => "Configurar Impuestos de Ventas.", + "timeclocks" => "Reloj de Registro", + "timeclocks_categories" => "Reloj de Registro de Categorías", + "timeclocks_categories_desc" => "Agregar, Actualizar, Borrar, y buscar Reloj de Registro de Categorías", + "timeclocks_desc" => "Reloj de Registro.", ]; diff --git a/app/Language/es-ES/Receivings.php b/app/Language/es-ES/Receivings.php index 5114fa009..3bc6fcf9a 100644 --- a/app/Language/es-ES/Receivings.php +++ b/app/Language/es-ES/Receivings.php @@ -1,58 +1,58 @@ "Importe Adeudado", - "cancel_receiving" => "Cancelar", - "cannot_be_deleted" => "Ingreso(s) no se borraron.", - "comments" => "Comentarios", - "complete_receiving" => "Terminar", - "confirm_cancel_receiving" => "¿Estás seguro(a) de querer limpiar esta entrada? Todos los artículos serán limpiados.", - "confirm_delete" => "¿Seguro(a) que desea borrar este ingreso? Esta acción no se puede deshacer.", - "confirm_finish_receiving" => "¿Estás seguro(a) de querer procesar esta entrada? Ésto no puede ser deshecho.", - "confirm_restore" => "Seguro que quiere restaurar esta recepción? Éste será restaurado.", - "cost" => "Costo", - "daily" => "Recepción Diaria", - "date" => "Fecha de Recepción", - "date_required" => "Una fecha correcta debe ser ingresada.", - "date_type" => "Campo Fecha es requerido.", - "delete_entire_sale" => "Borrar venta completa", - "discount" => "Descuento", - "edit" => "Editar", - "edit_sale" => "Editar Recepción", - "employee" => "Empleado", - "error_editing_item" => "Error al editar artículo.", - "error_requisition" => "No se puede mover el inventario desde o hacia la misma ubicación de stock.", - "find_or_scan_item" => "Encontrar/Escanear Artículo", - "find_or_scan_item_or_receipt" => "Encontrar/Escanear Artículo o Entrada", - "id" => "ID de Entrada", - "item_name" => "Nombre del Artículo", - "mode" => "Modo de Entradas", - "new_supplier" => "Nuevo Proveedor", - "one_or_multiple" => "Ingreso(s)", - "print_after_sale" => "Imprimir recibo después de una venta", - "quantity" => "Cant.", - "receipt" => "Recibo de Entrada", - "receipt_number" => "Recepción #", - "receiving" => "Recibir", - "reference" => "Referencia", - "register" => "Entrada de Artículos", - "requisition" => "Requisición", - "return" => "Devolver", - "select_supplier" => "Seleccionar Proveedor (Opcional)", - "ship_pack" => "Paquete de Envío", - "start_typing_supplier_name" => "Empieza a escribir el nombre del proveedor...", - "stock" => "Inventario", - "stock_destination" => "Inventario de Destino", - "stock_locaiton" => "Ubicación de Inventario", - "stock_source" => "Inventario de Origen", - "successfully_deleted" => "Borro exitosamente", - "successfully_updated" => "Recepción exitosamente actualizada", - "supplier" => "Proveedor", - "supplier_address" => "Direccion", - "supplier_email" => "Email", - "supplier_location" => "Ubicacion", - "total" => "Total", - "transaction_failed" => "La(s) Transaccion(es) de Entrada Fallaron.", - "unable_to_add_item" => "No se pudo agregar el artículo.", - "unsuccessfully_updated" => "Actualizacion de Recepción fallida.", - "update" => "Editar", + "amount_due" => "Importe Adeudado", + "cancel_receiving" => "Cancelar", + "cannot_be_deleted" => "Ingreso(s) no se borraron.", + "comments" => "Comentarios", + "complete_receiving" => "Terminar", + "confirm_cancel_receiving" => "¿Estás seguro(a) de querer limpiar esta entrada? Todos los artículos serán limpiados.", + "confirm_delete" => "¿Seguro(a) que desea borrar este ingreso? Esta acción no se puede deshacer.", + "confirm_finish_receiving" => "¿Estás seguro(a) de querer procesar esta entrada? Ésto no puede ser deshecho.", + "confirm_restore" => "Seguro que quiere restaurar esta recepción? Éste será restaurado.", + "cost" => "Costo", + "daily" => "Recepción Diaria", + "date" => "Fecha de Recepción", + "date_required" => "Una fecha correcta debe ser ingresada.", + "date_type" => "Campo Fecha es requerido.", + "delete_entire_sale" => "Borrar venta completa", + "discount" => "Descuento", + "edit" => "Editar", + "edit_sale" => "Editar Recepción", + "employee" => "Empleado", + "error_editing_item" => "Error al editar artículo.", + "error_requisition" => "No se puede mover el inventario desde o hacia la misma ubicación de stock.", + "find_or_scan_item" => "Encontrar/Escanear Artículo", + "find_or_scan_item_or_receipt" => "Encontrar/Escanear Artículo o Entrada", + "id" => "ID de Entrada", + "item_name" => "Nombre del Artículo", + "mode" => "Modo de Entradas", + "new_supplier" => "Nuevo Proveedor", + "one_or_multiple" => "Ingreso(s)", + "print_after_sale" => "Imprimir recibo después de una venta", + "quantity" => "Cant.", + "receipt" => "Recibo de Entrada", + "receipt_number" => "Recepción #", + "receiving" => "Recibir", + "reference" => "Referencia", + "register" => "Entrada de Artículos", + "requisition" => "Requisición", + "return" => "Devolver", + "select_supplier" => "Seleccionar Proveedor (Opcional)", + "ship_pack" => "Paquete de Envío", + "start_typing_supplier_name" => "Empieza a escribir el nombre del proveedor...", + "stock" => "Inventario", + "stock_destination" => "Inventario de Destino", + "stock_locaiton" => "Ubicación de Inventario", + "stock_source" => "Inventario de Origen", + "successfully_deleted" => "Borro exitosamente", + "successfully_updated" => "Recepción exitosamente actualizada", + "supplier" => "Proveedor", + "supplier_address" => "Direccion", + "supplier_email" => "Email", + "supplier_location" => "Ubicacion", + "total" => "Total", + "transaction_failed" => "La(s) Transaccion(es) de Entrada Fallaron.", + "unable_to_add_item" => "No se pudo agregar el artículo.", + "unsuccessfully_updated" => "Actualizacion de Recepción fallida.", + "update" => "Editar", ]; diff --git a/app/Language/es-ES/Reports.php b/app/Language/es-ES/Reports.php index e498ffa2b..8a334b5a9 100644 --- a/app/Language/es-ES/Reports.php +++ b/app/Language/es-ES/Reports.php @@ -1,148 +1,148 @@ "Todo", - "authority" => "Autorización", - "canceled" => "Cancelado", - "categories" => "Categorías", - "categories_summary_report" => "Reporte de Resumen de Categorías", - "category" => "Categoría", - "code_canceled" => "CNL", - "code_invoice" => "INV", - "code_pos" => "POS", - "code_quote" => "Q", - "code_return" => "RET", - "code_type" => "Tipo", - "code_work_order" => "OdT", - "comments" => "Comentarios", - "commission" => "Comisión", - "complete" => "Ventas y Devoluciones Completadas", - "completed_sales" => "Ventas Completas", - "confirm_delete" => "Esta seguro de querer borrar la(s) entrada(s) seleccionada(s)?", - "confirm_restore" => "Esta seguro de querer restaurar la(s) entrada(s) seleccionada(s)?", - "cost" => "al por Mayor", - "cost_price" => "Precio al Por Mayor", - "count" => "Cuenta", - "customer" => "Cliente", - "customers" => "Clientes", - "customers_summary_report" => "Reporte de Resumen de Clientes", - "date" => "Fecha", - "date_range" => "Rango de Fecha", - "description" => "Descripción", - "detailed_receivings_report" => "Reporte Detallado de Entradas", - "detailed_receivings_report_input" => "Entrada detallada del reporte de recepción", - "detailed_reports" => "Reportes Detallados", - "detailed_requisition_report" => "Reporte Detallado de Requisiciones", - "detailed_sales_report" => "Reporte de Ventas Detallado", - "discount" => "Descuento", - "discount_fixed" => "Descuento Fijo", - "discount_percent" => "Porcentaje de Descuento", - "discount_type" => "Tipo de Descuento", - "discounts" => "Descuentos", - "discounts_summary_report" => "Reporte de Resumen de Descuentos", - "earned" => "Reporte de puntos ganados", - "employee" => "Empleado", - "employees" => "Empleados", - "employees_summary_report" => "Reporte de Resumen de Empleados", - "expenses" => "Gastos", - "expenses_amount" => "Monto", - "expenses_categories" => "Gastos", - "expenses_categories_summary_report" => "Reporte general de Gastos Categorias", - "expenses_category" => "Categoria", - "expenses_payment_amount" => "Pago", - "expenses_tax_amount" => "Imp", - "expenses_total_amount" => "Total monto", - "expenses_total_tax_amount" => "Total Imp", - "graphical_reports" => "Reportes Gráficos", - "inventory" => "Inventario", - "inventory_low" => "Inventario Bajo", - "inventory_low_report" => "Reporte de Inventario Bajo", - "inventory_reports" => "Reportes de Inventario", - "inventory_summary" => "Resumen de Inventario", - "inventory_summary_report" => "Reporte de Resumen de Inventario", - "item" => "Artículo", - "item_count" => "Filtrar Cantidad de Articulos", - "item_name" => "Nombre del Artículo", - "item_number" => "Codigo", - "items" => "Artículos", - "items_purchased" => "Artículos Comprados", - "items_received" => "Artículos Recibidos", - "items_summary_report" => "Reporte de Resumen de Artículos", - "jurisdiction" => "Jurisdicción", - "low_inventory" => "Inventario Bajo", - "low_inventory_report" => "Reporte de Inventario Bajo", - "low_sell_quantity" => "Cantidad de Venta Baja", - "more_than_zero" => "Mayores a Cero", - "name" => "Nombre", - "no_reports_to_display" => "No hay artículos que mostrar.", - "payment_type" => "Tipo de Pago", - "payments" => "Pagos", - "payments_summary_report" => "Reporte de Resumen de Pagos", - "profit" => "Ganancia", - "quantity" => "Cantidad", - "quantity_purchased" => "Cantidad Comprada", - "quotes" => "Comentario", - "received_by" => "Recibido por", - "receiving_id" => "ID de Recepción", - "receiving_type" => "Tipo de Recepción", - "receivings" => "Entradas", - "reorder_level" => "Cantidad Mínima", - "report" => "Reporte", - "report_input" => "Entrada de Reporte", - "reports" => "Reportes", - "requisition" => "Requisición", - "requisition_by" => "Requisición por", - "requisition_id" => "ID de Requisición", - "requisition_item" => "Articulo de Requisición", - "requisition_item_quantity" => "Cantidad de Articulo de Requisición", - "requisition_related_item" => "Articulo de Requisición relacionado", - "requisition_related_item_total_quantity" => "Cantidad Total de Articulo de Requisición", - "requisition_related_item_unit_quantity" => "Cantidad Unitaria de Articulo de Requisición", - "requisitions" => "Requisiciones", - "returns" => "Devoluciones", - "revenue" => "Ingresos", - "sale_id" => "ID de Venta", - "sale_type" => "Tipo de Venta", - "sales" => "Ventas", - "sales_amount" => "Monto de ventas", - "sales_summary_report" => "Reporte de Resumen de Ventas", - "sales_taxes" => "Impuestos de Ventas", - "sales_taxes_summary_report" => "Informe de Resumen de Impuestos de Ventas", - "serial_number" => "S/N", - "service_charge" => "Costo de Servicio", - "sold_by" => "Vendido Por", - "sold_items" => "Artículos Vendidos", - "sold_to" => "Vendido A", - "stock_location" => "Ubicación de Inventario", - "sub_total_value" => "SubTotal", - "subtotal" => "Sub-total", - "summary_reports" => "Reportes Resumidos", - "supplied_by" => "Provisto por", - "supplier" => "Proveedor", - "suppliers" => "Proveedores", - "suppliers_summary_report" => "Reporte de Resumen de Proveedores", - "tax" => "Impuesto", - "tax_category" => "Categoría de Impuesto", - "tax_name" => "Nombre de Impuesto", - "tax_percent" => "Porcentaje de Impuestos", - "tax_rate" => "Tasa de Impuesto", - "taxes" => "Impuestos", - "taxes_summary_report" => "Reporte de Resumen de Impuestos", - "total" => "Total", - "total_inventory_value" => "Valor Total del Inventario", - "total_low_sell_quantity" => "Cantidad Total de Venta Baja", - "total_quantity" => "Total Cantidad", - "total_retail" => "Valor Total Inv. Retail", - "trans_amount" => "Importe de la Transacción", - "trans_due" => "Adeudado", - "trans_group" => "Grupo de Transacciones", - "trans_nopay_sales" => "Ventas sin Pago", - "trans_payments" => "Pagos", - "trans_refunded" => "reembolsado", - "trans_sales" => "Ventas", - "trans_type" => "Tipo de Transsación", - "type" => "Tipo", - "unit_price" => "Precio de Venta", - "used" => "Puntos usados", - "work_orders" => "Ordenes", - "zero_and_less" => "Cero y negativos", + "all" => "Todo", + "authority" => "Autorización", + "canceled" => "Cancelado", + "categories" => "Categorías", + "categories_summary_report" => "Reporte de Resumen de Categorías", + "category" => "Categoría", + "code_canceled" => "CNL", + "code_invoice" => "INV", + "code_pos" => "POS", + "code_quote" => "Q", + "code_return" => "RET", + "code_type" => "Tipo", + "code_work_order" => "OdT", + "comments" => "Comentarios", + "commission" => "Comisión", + "complete" => "Ventas y Devoluciones Completadas", + "completed_sales" => "Ventas Completas", + "confirm_delete" => "Esta seguro de querer borrar la(s) entrada(s) seleccionada(s)?", + "confirm_restore" => "Esta seguro de querer restaurar la(s) entrada(s) seleccionada(s)?", + "cost" => "al por Mayor", + "cost_price" => "Precio al Por Mayor", + "count" => "Cuenta", + "customer" => "Cliente", + "customers" => "Clientes", + "customers_summary_report" => "Reporte de Resumen de Clientes", + "date" => "Fecha", + "date_range" => "Rango de Fecha", + "description" => "Descripción", + "detailed_receivings_report" => "Reporte Detallado de Entradas", + "detailed_receivings_report_input" => "Entrada detallada del reporte de recepción", + "detailed_reports" => "Reportes Detallados", + "detailed_requisition_report" => "Reporte Detallado de Requisiciones", + "detailed_sales_report" => "Reporte de Ventas Detallado", + "discount" => "Descuento", + "discount_fixed" => "Descuento Fijo", + "discount_percent" => "Porcentaje de Descuento", + "discount_type" => "Tipo de Descuento", + "discounts" => "Descuentos", + "discounts_summary_report" => "Reporte de Resumen de Descuentos", + "earned" => "Reporte de puntos ganados", + "employee" => "Empleado", + "employees" => "Empleados", + "employees_summary_report" => "Reporte de Resumen de Empleados", + "expenses" => "Gastos", + "expenses_amount" => "Monto", + "expenses_categories" => "Gastos", + "expenses_categories_summary_report" => "Reporte general de Gastos Categorias", + "expenses_category" => "Categoria", + "expenses_payment_amount" => "Pago", + "expenses_tax_amount" => "Imp", + "expenses_total_amount" => "Total monto", + "expenses_total_tax_amount" => "Total Imp", + "graphical_reports" => "Reportes Gráficos", + "inventory" => "Inventario", + "inventory_low" => "Inventario Bajo", + "inventory_low_report" => "Reporte de Inventario Bajo", + "inventory_reports" => "Reportes de Inventario", + "inventory_summary" => "Resumen de Inventario", + "inventory_summary_report" => "Reporte de Resumen de Inventario", + "item" => "Artículo", + "item_count" => "Filtrar Cantidad de Articulos", + "item_name" => "Nombre del Artículo", + "item_number" => "Codigo", + "items" => "Artículos", + "items_purchased" => "Artículos Comprados", + "items_received" => "Artículos Recibidos", + "items_summary_report" => "Reporte de Resumen de Artículos", + "jurisdiction" => "Jurisdicción", + "low_inventory" => "Inventario Bajo", + "low_inventory_report" => "Reporte de Inventario Bajo", + "low_sell_quantity" => "Cantidad de Venta Baja", + "more_than_zero" => "Mayores a Cero", + "name" => "Nombre", + "no_reports_to_display" => "No hay artículos que mostrar.", + "payment_type" => "Tipo de Pago", + "payments" => "Pagos", + "payments_summary_report" => "Reporte de Resumen de Pagos", + "profit" => "Ganancia", + "quantity" => "Cantidad", + "quantity_purchased" => "Cantidad Comprada", + "quotes" => "Comentario", + "received_by" => "Recibido por", + "receiving_id" => "ID de Recepción", + "receiving_type" => "Tipo de Recepción", + "receivings" => "Entradas", + "reorder_level" => "Cantidad Mínima", + "report" => "Reporte", + "report_input" => "Entrada de Reporte", + "reports" => "Reportes", + "requisition" => "Requisición", + "requisition_by" => "Requisición por", + "requisition_id" => "ID de Requisición", + "requisition_item" => "Articulo de Requisición", + "requisition_item_quantity" => "Cantidad de Articulo de Requisición", + "requisition_related_item" => "Articulo de Requisición relacionado", + "requisition_related_item_total_quantity" => "Cantidad Total de Articulo de Requisición", + "requisition_related_item_unit_quantity" => "Cantidad Unitaria de Articulo de Requisición", + "requisitions" => "Requisiciones", + "returns" => "Devoluciones", + "revenue" => "Ingresos", + "sale_id" => "ID de Venta", + "sale_type" => "Tipo de Venta", + "sales" => "Ventas", + "sales_amount" => "Monto de ventas", + "sales_summary_report" => "Reporte de Resumen de Ventas", + "sales_taxes" => "Impuestos de Ventas", + "sales_taxes_summary_report" => "Informe de Resumen de Impuestos de Ventas", + "serial_number" => "S/N", + "service_charge" => "Costo de Servicio", + "sold_by" => "Vendido Por", + "sold_items" => "Artículos Vendidos", + "sold_to" => "Vendido A", + "stock_location" => "Ubicación de Inventario", + "sub_total_value" => "SubTotal", + "subtotal" => "Sub-total", + "summary_reports" => "Reportes Resumidos", + "supplied_by" => "Provisto por", + "supplier" => "Proveedor", + "suppliers" => "Proveedores", + "suppliers_summary_report" => "Reporte de Resumen de Proveedores", + "tax" => "Impuesto", + "tax_category" => "Categoría de Impuesto", + "tax_name" => "Nombre de Impuesto", + "tax_percent" => "Porcentaje de Impuestos", + "tax_rate" => "Tasa de Impuesto", + "taxes" => "Impuestos", + "taxes_summary_report" => "Reporte de Resumen de Impuestos", + "total" => "Total", + "total_inventory_value" => "Valor Total del Inventario", + "total_low_sell_quantity" => "Cantidad Total de Venta Baja", + "total_quantity" => "Total Cantidad", + "total_retail" => "Valor Total Inv. Retail", + "trans_amount" => "Importe de la Transacción", + "trans_due" => "Adeudado", + "trans_group" => "Grupo de Transacciones", + "trans_nopay_sales" => "Ventas sin Pago", + "trans_payments" => "Pagos", + "trans_refunded" => "reembolsado", + "trans_sales" => "Ventas", + "trans_type" => "Tipo de Transsación", + "type" => "Tipo", + "unit_price" => "Precio de Venta", + "used" => "Puntos usados", + "work_orders" => "Ordenes", + "zero_and_less" => "Cero y negativos", ]; diff --git a/app/Language/es-ES/Suppliers.php b/app/Language/es-ES/Suppliers.php index edf1b6a15..67df8c77b 100644 --- a/app/Language/es-ES/Suppliers.php +++ b/app/Language/es-ES/Suppliers.php @@ -1,24 +1,24 @@ "Cuenta #", - "agency_name" => "Nombre de la Agencia", - "cannot_be_deleted" => "No se pudo borrar los proveedores seleccionados. Uno o más de los seleccionados tiene ventas.", - "category" => "Categoria", - "company_name" => "Nombre de la Compañía", - "company_name_required" => "Nombre de la Compañía es requerido.", - "confirm_delete" => "¿Seguro(a) de querer borrar los proveedores seleccionados?", - "confirm_restore" => "Esta seguro de quere restaurar lo(s) Proveedor(es) seleccionado(s)?", - "cost" => "Costos de Proveedores", - "error_adding_updating" => "Error agregando/actualizando proveedor.", - "goods" => "Proveedores de Artículos", - "new" => "Nuevo Proveedor", - "none_selected" => "No has seleccionado proveedores para borrar.", - "one_or_multiple" => "proveedor(es)", - "successful_adding" => "Has agregado el proveedor satisfactoriamente", - "successful_deleted" => "Has borrado satisfactoriamente a", - "successful_updating" => "Has actualizado el proveedor satisfactoriamente", - "supplier" => "Proveedor", - "supplier_id" => "Id", - "tax_id" => "Identificador del Impuesto", - "update" => "Actualizar Proveedor", + "account_number" => "Cuenta #", + "agency_name" => "Nombre de la Agencia", + "cannot_be_deleted" => "No se pudo borrar los proveedores seleccionados. Uno o más de los seleccionados tiene ventas.", + "category" => "Categoria", + "company_name" => "Nombre de la Compañía", + "company_name_required" => "Nombre de la Compañía es requerido.", + "confirm_delete" => "¿Seguro(a) de querer borrar los proveedores seleccionados?", + "confirm_restore" => "Esta seguro de quere restaurar lo(s) Proveedor(es) seleccionado(s)?", + "cost" => "Costos de Proveedores", + "error_adding_updating" => "Error agregando/actualizando proveedor.", + "goods" => "Proveedores de Artículos", + "new" => "Nuevo Proveedor", + "none_selected" => "No has seleccionado proveedores para borrar.", + "one_or_multiple" => "proveedor(es)", + "successful_adding" => "Has agregado el proveedor satisfactoriamente", + "successful_deleted" => "Has borrado satisfactoriamente a", + "successful_updating" => "Has actualizado el proveedor satisfactoriamente", + "supplier" => "Proveedor", + "supplier_id" => "Id", + "tax_id" => "Identificador del Impuesto", + "update" => "Actualizar Proveedor", ]; diff --git a/app/Language/es-ES/Taxes.php b/app/Language/es-ES/Taxes.php index 08e4e85de..28a0d8ca9 100644 --- a/app/Language/es-ES/Taxes.php +++ b/app/Language/es-ES/Taxes.php @@ -1,82 +1,82 @@ "Añadir excepción", - "cascade" => "Cascada", - "cascade_sequence" => "Secuencia en cascada", - "city" => "Ciudad", - "code" => "Código", - "confirm_delete" => "¿Está seguro de querer borrar los códigos de impuestos seleccionados? Esta acción no se puede deshacer", - "confirm_restore" => "Esta seguro de querer restaurar la(s) Imp(s) seleccionada(s)?", - "default_tax_category" => "Categoría por defecto", - "default_tax_rate" => "Tasa impositiva por defecto", - "error_adding_updating" => "Error añadiendo o actualizando el impuesto", - "group_seq" => "Seq. de grupo", - "jurisdiction_name" => "Nombre de jurisdicción", - "name" => "Nombre", - "new" => "Impuesto nuevo", - "no_taxes" => "Sin Importe de Impuestos", - "no_taxes_to_display" => "No hay impuestos para mostrar", - "reporting_authority" => "Autoridad Informante", - "round_half_down" => "Mitad abajo", - "round_half_even" => "Mitad par", - "round_half_odd" => "Mitad impar", - "round_half_up" => "Mitad arriba", - "rounding_code" => "Tipo de redondeo", - "sales_tax" => "Impuestos de ventas", - "sales_tax_by_invoice" => "Impuestos de ventas por factura", - "sequence" => "Secuencia", - "state" => "Estado", - "successful_deleted" => "Se ha esborrado correctamente", - "tax_categories" => "Tipos de impuestos", - "tax_categories_configuration" => "Configuración de tipos de impuestos", - "tax_categories_saved_successfully" => "Guardados los cambios en tipos de impuestos", - "tax_categories_saved_unsuccessfully" => "No se han guardado los cambios en los tipos de impuestos", - "tax_category" => "Categoría de impuesto", - "tax_category_code" => "Código de tipo de impuesto", - "tax_category_duplicate" => "Tipo de impuesto duplicado", - "tax_category_invalid_chars" => "Caracteres inválidos en el tipo de impuesto", - "tax_category_name" => "Nombre del tipo de impuesto", - "tax_category_new" => "Nuevo tipo de impuesto", - "tax_category_required" => "Tipo de impuesto es requerido", - "tax_code" => "Código", - "tax_code_cannot_be_deleted" => "Fallo al borrar tipo de impuesto", - "tax_code_duplicate" => "Código de Impuesto Duplicado", - "tax_code_invalid_chars" => "Caracteres Inválidos en el Código de Impuesto", - "tax_code_name" => "Nombre", - "tax_code_required" => "El código de impuesto es un campo obligatorio", - "tax_code_successful_deleted" => "Se ha borrado correctamente el impuesto", - "tax_code_successful_updated" => "Se ha actualizado correctamente", - "tax_code_successful_updating" => "Se ha actualizado correctamente el impuesto", - "tax_code_successfully_added" => "Se ha añadido correctamente", - "tax_code_type" => "Tipo de impuesto", - "tax_codes" => "Códigos de impuestos", - "tax_codes_configuration" => "Configuración de códigos de impuestos", - "tax_codes_saved_successfully" => "Cambios guardados en el código de impuesto", - "tax_codes_saved_unsuccessfully" => "No se guardaron los cambios en el código de impuesto", - "tax_excluded" => "Exento de impuestos", - "tax_group" => "Grupo de impuestos", - "tax_group_not_unique" => "El grupo de impuestos {0} no es único", - "tax_group_sequence" => "Secuencia de grupo de impuestos", - "tax_included" => "Impuestos incluidos", - "tax_jurisdiction" => "Jurisdicción Tributaria", - "tax_jurisdiction_duplicate" => "Jurisdicción Fiscal Duplicada", - "tax_jurisdiction_invalid_chars" => "Caracteres no Válidos en el Nombre de Jurisdicción", - "tax_jurisdiction_required" => "Es requerida una Jurisdicción Tributaria", - "tax_jurisdictions" => "Jurisdicciones Tributarias", - "tax_jurisdictions_configuration" => "Configuración de las Jurisdicciones Tributarias", - "tax_jurisdictions_saved_successfully" => "Cambios en la Jurisdicción Tributaria guardados", - "tax_jurisdictions_saved_unsuccessfully" => "Cambios en la Jurisdicción Tributaria no guardados", - "tax_rate" => "Tasa de Impuesto", - "tax_rate_configuration" => "Configuración de Tasa de Impuesto", - "tax_rate_error_adding_updating" => "Añadir o actualizar Tasa de Impuesto ha fallado", - "tax_rate_numeric" => "La Tasa de Impuesto debe ser un número", - "tax_rate_required" => "La Tasa de Impuesto es un campo obligatorio", - "tax_rate_successful_updated" => "Has actualizado exitosamente", - "tax_rate_successfully_added" => "Has agregado exitosamente", - "tax_rates" => "Tasas de Impuestos", - "tax_rates_configuration" => "Configuración de las Tasas de Impuestos", - "tax_rounding" => "Redondeo de Impuestos", - "tax_type" => "Tipo de Impuesto", - "update" => "Actualizar Tasa de Impuesto", - "vat_tax" => "IVA", + "add_exception" => "Añadir excepción", + "cascade" => "Cascada", + "cascade_sequence" => "Secuencia en cascada", + "city" => "Ciudad", + "code" => "Código", + "confirm_delete" => "¿Está seguro de querer borrar los códigos de impuestos seleccionados? Esta acción no se puede deshacer", + "confirm_restore" => "Esta seguro de querer restaurar la(s) Imp(s) seleccionada(s)?", + "default_tax_category" => "Categoría por defecto", + "default_tax_rate" => "Tasa impositiva por defecto", + "error_adding_updating" => "Error añadiendo o actualizando el impuesto", + "group_seq" => "Seq. de grupo", + "jurisdiction_name" => "Nombre de jurisdicción", + "name" => "Nombre", + "new" => "Impuesto nuevo", + "no_taxes" => "Sin Importe de Impuestos", + "no_taxes_to_display" => "No hay impuestos para mostrar", + "reporting_authority" => "Autoridad Informante", + "round_half_down" => "Mitad abajo", + "round_half_even" => "Mitad par", + "round_half_odd" => "Mitad impar", + "round_half_up" => "Mitad arriba", + "rounding_code" => "Tipo de redondeo", + "sales_tax" => "Impuestos de ventas", + "sales_tax_by_invoice" => "Impuestos de ventas por factura", + "sequence" => "Secuencia", + "state" => "Estado", + "successful_deleted" => "Se ha esborrado correctamente", + "tax_categories" => "Tipos de impuestos", + "tax_categories_configuration" => "Configuración de tipos de impuestos", + "tax_categories_saved_successfully" => "Guardados los cambios en tipos de impuestos", + "tax_categories_saved_unsuccessfully" => "No se han guardado los cambios en los tipos de impuestos", + "tax_category" => "Categoría de impuesto", + "tax_category_code" => "Código de tipo de impuesto", + "tax_category_duplicate" => "Tipo de impuesto duplicado", + "tax_category_invalid_chars" => "Caracteres inválidos en el tipo de impuesto", + "tax_category_name" => "Nombre del tipo de impuesto", + "tax_category_new" => "Nuevo tipo de impuesto", + "tax_category_required" => "Tipo de impuesto es requerido", + "tax_code" => "Código", + "tax_code_cannot_be_deleted" => "Fallo al borrar tipo de impuesto", + "tax_code_duplicate" => "Código de Impuesto Duplicado", + "tax_code_invalid_chars" => "Caracteres Inválidos en el Código de Impuesto", + "tax_code_name" => "Nombre", + "tax_code_required" => "El código de impuesto es un campo obligatorio", + "tax_code_successful_deleted" => "Se ha borrado correctamente el impuesto", + "tax_code_successful_updated" => "Se ha actualizado correctamente", + "tax_code_successful_updating" => "Se ha actualizado correctamente el impuesto", + "tax_code_successfully_added" => "Se ha añadido correctamente", + "tax_code_type" => "Tipo de impuesto", + "tax_codes" => "Códigos de impuestos", + "tax_codes_configuration" => "Configuración de códigos de impuestos", + "tax_codes_saved_successfully" => "Cambios guardados en el código de impuesto", + "tax_codes_saved_unsuccessfully" => "No se guardaron los cambios en el código de impuesto", + "tax_excluded" => "Exento de impuestos", + "tax_group" => "Grupo de impuestos", + "tax_group_not_unique" => "El grupo de impuestos {0} no es único", + "tax_group_sequence" => "Secuencia de grupo de impuestos", + "tax_included" => "Impuestos incluidos", + "tax_jurisdiction" => "Jurisdicción Tributaria", + "tax_jurisdiction_duplicate" => "Jurisdicción Fiscal Duplicada", + "tax_jurisdiction_invalid_chars" => "Caracteres no Válidos en el Nombre de Jurisdicción", + "tax_jurisdiction_required" => "Es requerida una Jurisdicción Tributaria", + "tax_jurisdictions" => "Jurisdicciones Tributarias", + "tax_jurisdictions_configuration" => "Configuración de las Jurisdicciones Tributarias", + "tax_jurisdictions_saved_successfully" => "Cambios en la Jurisdicción Tributaria guardados", + "tax_jurisdictions_saved_unsuccessfully" => "Cambios en la Jurisdicción Tributaria no guardados", + "tax_rate" => "Tasa de Impuesto", + "tax_rate_configuration" => "Configuración de Tasa de Impuesto", + "tax_rate_error_adding_updating" => "Añadir o actualizar Tasa de Impuesto ha fallado", + "tax_rate_numeric" => "La Tasa de Impuesto debe ser un número", + "tax_rate_required" => "La Tasa de Impuesto es un campo obligatorio", + "tax_rate_successful_updated" => "Has actualizado exitosamente", + "tax_rate_successfully_added" => "Has agregado exitosamente", + "tax_rates" => "Tasas de Impuestos", + "tax_rates_configuration" => "Configuración de las Tasas de Impuestos", + "tax_rounding" => "Redondeo de Impuestos", + "tax_type" => "Tipo de Impuesto", + "update" => "Actualizar Tasa de Impuesto", + "vat_tax" => "IVA", ]; diff --git a/app/Language/es-ES/index.html b/app/Language/es-ES/index.html index ef48171ec..73736ab32 100644 --- a/app/Language/es-ES/index.html +++ b/app/Language/es-ES/index.html @@ -1,7 +1,7 @@ - 403 Prohibido + 403 Prohibido diff --git a/app/Language/es-MX/Attributes.php b/app/Language/es-MX/Attributes.php index e7e55d215..e0565a696 100644 --- a/app/Language/es-MX/Attributes.php +++ b/app/Language/es-MX/Attributes.php @@ -1,32 +1,32 @@ "El valor del atributo no puede contener ':' or '|'", - "confirm_delete" => "¿Está seguro de eliminar el/los atributo(s) seleccionado(s)?", - "confirm_restore" => "¿Está seguro que quiere restaurar los atributos seleccionados?", - "definition_cannot_be_deleted" => "No ha sido posible eliminar el/los atributo(s) seleccionado(s)", - "definition_error_adding_updating" => "El atributo {0} no pudo ser agregado o actualizado. Favor de revisar el registro de errorres.", - "definition_flags" => "Visibilidad del atributo", - "definition_group" => "Grupo", - "definition_id" => "Id", - "definition_name" => "Agregar Atributo", - "definition_name_required" => "El nombre del atributo es un campo requerido", - "definition_one_or_multiple" => "atributo(s)", - "definition_successful_adding" => "Has agregado un atributo correctamente", - "definition_successful_deleted" => "El atributo se ha eliminado correctamente", - "definition_successful_updating" => "El atributo se ha actualizado correctamente", - "definition_type" => "Tipo de atributo", - "definition_type_required" => "El tipo de atributo es un campo requerido", - "definition_unit" => "Unidad de Medida", - "definition_values" => "Valores del atributo", - "new" => "Nuevo atributo", - "no_attributes_to_display" => "Sin artículos para mostrar", - "receipt_visibility" => "Recibo", - "show_in_items" => "Mostrar en artículos", - "show_in_items_visibility" => "Artículos", - "show_in_receipt" => "Mostrar en recibo", - "show_in_receivings" => "Mostrar en recepciones", - "show_in_receivings_visibility" => "Recepciones", - "show_in_sales" => "Mostrar en Ventas", - "show_in_sales_visibility" => "Ventas", - "update" => "Actualizar atributo", + "attribute_value_invalid_chars" => "El valor del atributo no puede contener ':' or '|'", + "confirm_delete" => "¿Está seguro de eliminar el/los atributo(s) seleccionado(s)?", + "confirm_restore" => "¿Está seguro que quiere restaurar los atributos seleccionados?", + "definition_cannot_be_deleted" => "No ha sido posible eliminar el/los atributo(s) seleccionado(s)", + "definition_error_adding_updating" => "El atributo {0} no pudo ser agregado o actualizado. Favor de revisar el registro de errorres.", + "definition_flags" => "Visibilidad del atributo", + "definition_group" => "Grupo", + "definition_id" => "Id", + "definition_name" => "Agregar Atributo", + "definition_name_required" => "El nombre del atributo es un campo requerido", + "definition_one_or_multiple" => "atributo(s)", + "definition_successful_adding" => "Has agregado un atributo correctamente", + "definition_successful_deleted" => "El atributo se ha eliminado correctamente", + "definition_successful_updating" => "El atributo se ha actualizado correctamente", + "definition_type" => "Tipo de atributo", + "definition_type_required" => "El tipo de atributo es un campo requerido", + "definition_unit" => "Unidad de Medida", + "definition_values" => "Valores del atributo", + "new" => "Nuevo atributo", + "no_attributes_to_display" => "Sin artículos para mostrar", + "receipt_visibility" => "Recibo", + "show_in_items" => "Mostrar en artículos", + "show_in_items_visibility" => "Artículos", + "show_in_receipt" => "Mostrar en recibo", + "show_in_receivings" => "Mostrar en recepciones", + "show_in_receivings_visibility" => "Recepciones", + "show_in_sales" => "Mostrar en Ventas", + "show_in_sales_visibility" => "Ventas", + "update" => "Actualizar atributo", ]; diff --git a/app/Language/es-MX/Bootstrap_tables.php b/app/Language/es-MX/Bootstrap_tables.php index b6eb1eaf6..b0321c5c3 100644 --- a/app/Language/es-MX/Bootstrap_tables.php +++ b/app/Language/es-MX/Bootstrap_tables.php @@ -1,11 +1,11 @@ "Todos", - "columns" => "Columnas", - "hide_show_pagination" => "Ocultar/Mostrar paginación", - "loading" => "Cargando, por favor espere...", - "page_from_to" => "Mostrando de {0} a {1} de {2} registros", - "refresh" => "Actualizar", - "rows_per_page" => "{0} registros por página", - "toggle" => "Establecer", + "all" => "Todos", + "columns" => "Columnas", + "hide_show_pagination" => "Ocultar/Mostrar paginación", + "loading" => "Cargando, por favor espere...", + "page_from_to" => "Mostrando de {0} a {1} de {2} registros", + "refresh" => "Actualizar", + "rows_per_page" => "{0} registros por página", + "toggle" => "Establecer", ]; diff --git a/app/Language/es-MX/Cashups.php b/app/Language/es-MX/Cashups.php index 70d12a741..665bfcc75 100644 --- a/app/Language/es-MX/Cashups.php +++ b/app/Language/es-MX/Cashups.php @@ -1,49 +1,49 @@ "Monto", - "amount_number" => "El monto debe ser un número", - "amount_required" => "El monto es un campo requerido.", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "No es posible eliminar el cobro", - "cash_difference" => "", - "close_date" => "Fecha Cierre", - "close_employee" => "Cerrado por", - "closed_amount_card" => "Tarjetas", - "closed_amount_cash" => "Efectivo Cerrado", - "closed_amount_check" => "Cheques", - "closed_amount_due" => "Cuotas", - "closed_amount_giftcard" => "", - "closed_amount_total" => "Total", - "closed_date" => "Fecha Cerrado", - "confirm_delete" => "¿Está seguro(a) de eliminar el cobro seleccionado?", - "confirm_restore" => "¿Está seguro de restaurar el/los cobro(s) seleccionado(s)?", - "confirm_submit" => "", - "date_number" => "La fecha debe ser un número", - "date_required" => "La fecha es un campo requerido", - "description" => "Descripción", - "enable_expected" => "", - "error_adding_updating" => "Error al agregar/actualizar el cobro", - "giftcard" => "", - "id" => "Id", - "info" => "Info Cobros", - "info_employee" => "", - "is_deleted" => "Eliminado(s)", - "new" => "Nuevo Cobro", - "no_cashups_to_display" => "No existen cobros para mostrar", - "none_selected" => "No ha seleccionado cobros", - "note" => "Notas", - "one_or_multiple" => "Cobro(s)", - "open_amount_cash" => "Abrir efectivo", - "open_date" => "Abrir fecha", - "open_employee" => "Abierto por", - "opened_date" => "Fecha apetura", - "successful_adding" => "Cobro agregado exitosamente", - "successful_deleted" => "Cobro eliminado correctamente", - "successful_updating" => "Cobro actualizado correctamente", - "total" => "Total", - "transfer_amount_cash" => "Entrada/Salida de Efectivo", - "transfer_amount_cash_minus" => "", - "update" => "Actualizar Cobro", - "warning" => "", + "amount" => "Monto", + "amount_number" => "El monto debe ser un número", + "amount_required" => "El monto es un campo requerido.", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "No es posible eliminar el cobro", + "cash_difference" => "", + "close_date" => "Fecha Cierre", + "close_employee" => "Cerrado por", + "closed_amount_card" => "Tarjetas", + "closed_amount_cash" => "Efectivo Cerrado", + "closed_amount_check" => "Cheques", + "closed_amount_due" => "Cuotas", + "closed_amount_giftcard" => "", + "closed_amount_total" => "Total", + "closed_date" => "Fecha Cerrado", + "confirm_delete" => "¿Está seguro(a) de eliminar el cobro seleccionado?", + "confirm_restore" => "¿Está seguro de restaurar el/los cobro(s) seleccionado(s)?", + "confirm_submit" => "", + "date_number" => "La fecha debe ser un número", + "date_required" => "La fecha es un campo requerido", + "description" => "Descripción", + "enable_expected" => "", + "error_adding_updating" => "Error al agregar/actualizar el cobro", + "giftcard" => "", + "id" => "Id", + "info" => "Info Cobros", + "info_employee" => "", + "is_deleted" => "Eliminado(s)", + "new" => "Nuevo Cobro", + "no_cashups_to_display" => "No existen cobros para mostrar", + "none_selected" => "No ha seleccionado cobros", + "note" => "Notas", + "one_or_multiple" => "Cobro(s)", + "open_amount_cash" => "Abrir efectivo", + "open_date" => "Abrir fecha", + "open_employee" => "Abierto por", + "opened_date" => "Fecha apetura", + "successful_adding" => "Cobro agregado exitosamente", + "successful_deleted" => "Cobro eliminado correctamente", + "successful_updating" => "Cobro actualizado correctamente", + "total" => "Total", + "transfer_amount_cash" => "Entrada/Salida de Efectivo", + "transfer_amount_cash_minus" => "", + "update" => "Actualizar Cobro", + "warning" => "", ]; diff --git a/app/Language/es-MX/Datepicker.php b/app/Language/es-MX/Datepicker.php index f8fd6461d..3315b71c2 100644 --- a/app/Language/es-MX/Datepicker.php +++ b/app/Language/es-MX/Datepicker.php @@ -1,23 +1,23 @@ "Todo", - "apply" => "Aplicar", - "cancel" => "Cancelar", - "custom" => "Personalizar", - "from" => "Desde", - "last_30" => "Últimos 30 días", - "last_7" => "Últimos 7 días", - "last_financial_year" => "Último año fiscal", - "last_month" => "Mes pasado", - "last_year" => "Año pasado", - "same_month_last_year" => "Mismo mes del año pasado", - "same_month_to_same_day_last_year" => "Mismo mes al mismo día del año pasado", - "this_financial_year" => "Año fiscal actual", - "this_month" => "Mes actual", - "this_year" => "Año actual", - "to" => "Hasta", - "today" => "Hoy", - "today_last_year" => "Hoy, del año pasado", - "weekstart" => "0", - "yesterday" => "Ayer", + "all_time" => "Todo", + "apply" => "Aplicar", + "cancel" => "Cancelar", + "custom" => "Personalizar", + "from" => "Desde", + "last_30" => "Últimos 30 días", + "last_7" => "Últimos 7 días", + "last_financial_year" => "Último año fiscal", + "last_month" => "Mes pasado", + "last_year" => "Año pasado", + "same_month_last_year" => "Mismo mes del año pasado", + "same_month_to_same_day_last_year" => "Mismo mes al mismo día del año pasado", + "this_financial_year" => "Año fiscal actual", + "this_month" => "Mes actual", + "this_year" => "Año actual", + "to" => "Hasta", + "today" => "Hoy", + "today_last_year" => "Hoy, del año pasado", + "weekstart" => "0", + "yesterday" => "Ayer", ]; diff --git a/app/Language/es-MX/Enum.php b/app/Language/es-MX/Enum.php index ce2082c60..d79373cd1 100644 --- a/app/Language/es-MX/Enum.php +++ b/app/Language/es-MX/Enum.php @@ -1,10 +1,10 @@ "Mitad abajo", - "half_even" => "Mitad par", - "half_five" => "Cinco y media", - "half_odd" => "Mitad impar", - "half_up" => "Medio arriba", - "round_down" => "Truncado", - "round_up" => "Redondeo arriba", + "half_down" => "Mitad abajo", + "half_even" => "Mitad par", + "half_five" => "Cinco y media", + "half_odd" => "Mitad impar", + "half_up" => "Medio arriba", + "round_down" => "Truncado", + "round_up" => "Redondeo arriba", ]; diff --git a/app/Language/es-MX/Error.php b/app/Language/es-MX/Error.php index 0fece0981..be7ee9333 100644 --- a/app/Language/es-MX/Error.php +++ b/app/Language/es-MX/Error.php @@ -1,5 +1,5 @@ "No tienes permiso para acceder el módulo llamado", - "unknown" => "Error inesperado", + "no_permission_module" => "No tienes permiso para acceder el módulo llamado", + "unknown" => "Error inesperado", ]; diff --git a/app/Language/es-MX/Expenses.php b/app/Language/es-MX/Expenses.php index 5de5e3921..25f6b2cef 100644 --- a/app/Language/es-MX/Expenses.php +++ b/app/Language/es-MX/Expenses.php @@ -1,50 +1,50 @@ "Agregar Gasto", - "amount" => "Monto", - "amount_number" => "El monto debe ser un número", - "amount_required" => "Es necesario agregar el Monto del Gasto", - "by_category" => "Categoría", - "cannot_be_deleted" => "No se pudo eliminar la Categoría de Gasto(s)", - "cash" => "Efectivo", - "cash_filter" => "Efectivo", - "categories_name" => "Categoría", - "category_required" => "Categoría es un campo obligatorio", - "check" => "Cheque", - "check_filter" => "Cheque", - "confirm_delete" => "¿Está seguro de que desea eliminar los gastos seleccionados?", - "confirm_restore" => "¿Está seguro de que desea restaurar los gastos seleccionados?", - "credit" => "Tarjeta de Crédito", - "credit_filter" => "Tarjeta de Crédito", - "date" => "Fecha", - "date_number" => "la fecha debe ser un número", - "date_required" => "la fecha es un campo obligatorio", - "debit" => "Tarjeta de Débito", - "debit_filter" => "Tarjeta de Débito", - "description" => "Descripción", - "due" => "A Crédito", - "due_filter" => "A Crédito", - "employee" => "Creado por", - "error_adding_updating" => "Error al agregar/actualizar Gasto", - "expense_id" => "Id.", - "expenses_employee" => "Empleado", - "info" => "Información de Gasto", - "ip_address" => "", - "is_deleted" => "Eliminado", - "name_required" => "Se requiere el Nombre del Gasto", - "new" => "Nuevo Gasto", - "new_supplier" => "", - "no_expenses_to_display" => "No hay gastos a mostrar", - "none_selected" => "No ha seleccionado ningún gasto", - "one_or_multiple" => "Gasto(s)", - "payment" => "Tipo de Pago", - "start_typing_supplier_name" => "Comience a escribir el nombre del proveedor...", - "successful_adding" => "Gasto agregado exitosamente", - "successful_deleted" => "Gasto eliminado exitosamente", - "successful_updating" => "Gasto actualizado exitosamente", - "supplier_name" => "Proveedor", - "supplier_tax_code" => "Código de Impuesto", - "tax_amount" => "Impuesto", - "tax_amount_number" => "", - "update" => "Actualizar Gasto", + "add_item" => "Agregar Gasto", + "amount" => "Monto", + "amount_number" => "El monto debe ser un número", + "amount_required" => "Es necesario agregar el Monto del Gasto", + "by_category" => "Categoría", + "cannot_be_deleted" => "No se pudo eliminar la Categoría de Gasto(s)", + "cash" => "Efectivo", + "cash_filter" => "Efectivo", + "categories_name" => "Categoría", + "category_required" => "Categoría es un campo obligatorio", + "check" => "Cheque", + "check_filter" => "Cheque", + "confirm_delete" => "¿Está seguro de que desea eliminar los gastos seleccionados?", + "confirm_restore" => "¿Está seguro de que desea restaurar los gastos seleccionados?", + "credit" => "Tarjeta de Crédito", + "credit_filter" => "Tarjeta de Crédito", + "date" => "Fecha", + "date_number" => "la fecha debe ser un número", + "date_required" => "la fecha es un campo obligatorio", + "debit" => "Tarjeta de Débito", + "debit_filter" => "Tarjeta de Débito", + "description" => "Descripción", + "due" => "A Crédito", + "due_filter" => "A Crédito", + "employee" => "Creado por", + "error_adding_updating" => "Error al agregar/actualizar Gasto", + "expense_id" => "Id.", + "expenses_employee" => "Empleado", + "info" => "Información de Gasto", + "ip_address" => "", + "is_deleted" => "Eliminado", + "name_required" => "Se requiere el Nombre del Gasto", + "new" => "Nuevo Gasto", + "new_supplier" => "", + "no_expenses_to_display" => "No hay gastos a mostrar", + "none_selected" => "No ha seleccionado ningún gasto", + "one_or_multiple" => "Gasto(s)", + "payment" => "Tipo de Pago", + "start_typing_supplier_name" => "Comience a escribir el nombre del proveedor...", + "successful_adding" => "Gasto agregado exitosamente", + "successful_deleted" => "Gasto eliminado exitosamente", + "successful_updating" => "Gasto actualizado exitosamente", + "supplier_name" => "Proveedor", + "supplier_tax_code" => "Código de Impuesto", + "tax_amount" => "Impuesto", + "tax_amount_number" => "", + "update" => "Actualizar Gasto", ]; diff --git a/app/Language/es-MX/Expenses_categories.php b/app/Language/es-MX/Expenses_categories.php index 12f869e94..56c25af4b 100644 --- a/app/Language/es-MX/Expenses_categories.php +++ b/app/Language/es-MX/Expenses_categories.php @@ -1,22 +1,22 @@ "Nombre requerido", - "add_item" => "Agregar categoría", - "cannot_be_deleted" => "No se puede eliminar la Categoría de Gastos", - "category_id" => "Id", - "confirm_delete" => "Esta seguro de eliminar la categoría de gasto seleccionada?", - "confirm_restore" => "Está seguro que quiere restaurar la categoría de gasto seleccionada?", - "description" => "Descripción de Categoría", - "error_adding_updating" => "Error al Agregar/Actualizar Categoría de Gastos", - "info" => "Información de la Categoría de Gastos", - "name" => "Nombre de Categoría", - "new" => "Nueva Categoría", - "no_expenses_categories_to_display" => "No hay categorías para mostrar", - "none_selected" => "No haz seleccionado ninguna categoría de gastos", - "one_or_multiple" => "Categoría de Gastos", - "quantity" => "Cantidad", - "successful_adding" => "Se añadió correctamente la categoría de gastos", - "successful_deleted" => "Se eliminó correctamente la categoría de gastos", - "successful_updating" => "Se actualizó correctamente la categoría de gastos", - "update" => "Actualizar Categoria", + "category_name_required" => "Nombre requerido", + "add_item" => "Agregar categoría", + "cannot_be_deleted" => "No se puede eliminar la Categoría de Gastos", + "category_id" => "Id", + "confirm_delete" => "Esta seguro de eliminar la categoría de gasto seleccionada?", + "confirm_restore" => "Está seguro que quiere restaurar la categoría de gasto seleccionada?", + "description" => "Descripción de Categoría", + "error_adding_updating" => "Error al Agregar/Actualizar Categoría de Gastos", + "info" => "Información de la Categoría de Gastos", + "name" => "Nombre de Categoría", + "new" => "Nueva Categoría", + "no_expenses_categories_to_display" => "No hay categorías para mostrar", + "none_selected" => "No haz seleccionado ninguna categoría de gastos", + "one_or_multiple" => "Categoría de Gastos", + "quantity" => "Cantidad", + "successful_adding" => "Se añadió correctamente la categoría de gastos", + "successful_deleted" => "Se eliminó correctamente la categoría de gastos", + "successful_updating" => "Se actualizó correctamente la categoría de gastos", + "update" => "Actualizar Categoria", ]; diff --git a/app/Language/es-MX/Messages.php b/app/Language/es-MX/Messages.php index 197e37f90..efe3867cc 100644 --- a/app/Language/es-MX/Messages.php +++ b/app/Language/es-MX/Messages.php @@ -1,15 +1,15 @@ "Nombre(s)", - "last_name" => "Apellido(s)", - "message" => "Mensaje", - "message_placeholder" => "Tu mensaje aquí...", - "message_required" => "Requiere mensaje", - "multiple_phones" => "(En caso de varios destinatarios, ingrese los números de teléfono separado por comas)", - "phone" => "Número de teléfono", - "phone_number_required" => "Requiere de número telefónico", - "phone_placeholder" => "Números de teléfonos celulares aquí...", - "sms_send" => "Enviar SMS", - "successfully_sent" => "Mensaje enviado exitosamente a: ", - "unsuccessfully_sent" => "Mensaje no enviado a: ", + "first_name" => "Nombre(s)", + "last_name" => "Apellido(s)", + "message" => "Mensaje", + "message_placeholder" => "Tu mensaje aquí...", + "message_required" => "Requiere mensaje", + "multiple_phones" => "(En caso de varios destinatarios, ingrese los números de teléfono separado por comas)", + "phone" => "Número de teléfono", + "phone_number_required" => "Requiere de número telefónico", + "phone_placeholder" => "Números de teléfonos celulares aquí...", + "sms_send" => "Enviar SMS", + "successfully_sent" => "Mensaje enviado exitosamente a: ", + "unsuccessfully_sent" => "Mensaje no enviado a: ", ]; diff --git a/app/Language/es-MX/Module.php b/app/Language/es-MX/Module.php index a415d60f5..23c1fd009 100644 --- a/app/Language/es-MX/Module.php +++ b/app/Language/es-MX/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "Atributos", - "attributes_desc" => "Agregar, Actualizar, Borrar y Buscar atributos.", - "both" => "Ambos", - "cashups" => "Retiros", - "cashups_desc" => "Agregar, Actualizar, Borrar y Buscar Cortes de Caja.", - "config" => "Configuración", - "config_desc" => "Cambiar Configuracion de OSPOS.", - "customers" => "Clientes", - "customers_desc" => "Agregar, Actualizar, Borrar y Buscar Clientes.", - "employees" => "Empleados", - "employees_desc" => "Agregar, Actualizar, Borrar y Buscar Empleados.", - "expenses" => "Gastos", - "expenses_categories" => "Categorías de Gastos", - "expenses_categories_desc" => "Agregar, Actualizar, y Borrar Categorías de Gastos.", - "expenses_desc" => "Agregar, Actualizar, Borrar, y Buscar Gastos.", - "giftcards" => "Tarjetas de Regalo", - "giftcards_desc" => "Agregar, Actualizar y Buscar Tarjetas de Regalo.", - "home" => "Inicio", - "home_desc" => "Listar los módulos del menú inicio.", - "item_kits" => "Kits de Artículos", - "item_kits_desc" => "Agregar, Actualizar, Borrar y Buscar Kits de Artículos.", - "items" => "Artículos", - "items_desc" => "Agregar, Actualizar, Borrar, y Buscar Artículos.", - "messages" => "Mensajes", - "messages_desc" => "Enviar Mensajes a los Clientes, Proveedores y Empleados.", - "migrate" => "Migrar", - "migrate_desc" => "Actualizar la Base de Datos de OSPOS.", - "office" => "Oficina", - "office_desc" => "Listar los módulos del menú de la oficina.", - "receivings" => "Recepciones", - "receivings_desc" => "Procesar Órdenes de Compra.", - "reports" => "Reportes", - "reports_desc" => "Ver y generar Reportes.", - "sales" => "Ventas", - "sales_desc" => "Procesar Ventas y Devoluciones.", - "suppliers" => "Proveedores", - "suppliers_desc" => "Agregar, Actualizar, Borrar, y Buscar Proveedores.", - "taxes" => "Impuestos", - "taxes_desc" => "Configurar los Impuestos sobre las Ventas.", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "Atributos", + "attributes_desc" => "Agregar, Actualizar, Borrar y Buscar atributos.", + "both" => "Ambos", + "cashups" => "Retiros", + "cashups_desc" => "Agregar, Actualizar, Borrar y Buscar Cortes de Caja.", + "config" => "Configuración", + "config_desc" => "Cambiar Configuracion de OSPOS.", + "customers" => "Clientes", + "customers_desc" => "Agregar, Actualizar, Borrar y Buscar Clientes.", + "employees" => "Empleados", + "employees_desc" => "Agregar, Actualizar, Borrar y Buscar Empleados.", + "expenses" => "Gastos", + "expenses_categories" => "Categorías de Gastos", + "expenses_categories_desc" => "Agregar, Actualizar, y Borrar Categorías de Gastos.", + "expenses_desc" => "Agregar, Actualizar, Borrar, y Buscar Gastos.", + "giftcards" => "Tarjetas de Regalo", + "giftcards_desc" => "Agregar, Actualizar y Buscar Tarjetas de Regalo.", + "home" => "Inicio", + "home_desc" => "Listar los módulos del menú inicio.", + "item_kits" => "Kits de Artículos", + "item_kits_desc" => "Agregar, Actualizar, Borrar y Buscar Kits de Artículos.", + "items" => "Artículos", + "items_desc" => "Agregar, Actualizar, Borrar, y Buscar Artículos.", + "messages" => "Mensajes", + "messages_desc" => "Enviar Mensajes a los Clientes, Proveedores y Empleados.", + "migrate" => "Migrar", + "migrate_desc" => "Actualizar la Base de Datos de OSPOS.", + "office" => "Oficina", + "office_desc" => "Listar los módulos del menú de la oficina.", + "receivings" => "Recepciones", + "receivings_desc" => "Procesar Órdenes de Compra.", + "reports" => "Reportes", + "reports_desc" => "Ver y generar Reportes.", + "sales" => "Ventas", + "sales_desc" => "Procesar Ventas y Devoluciones.", + "suppliers" => "Proveedores", + "suppliers_desc" => "Agregar, Actualizar, Borrar, y Buscar Proveedores.", + "taxes" => "Impuestos", + "taxes_desc" => "Configurar los Impuestos sobre las Ventas.", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/fa/Attributes.php b/app/Language/fa/Attributes.php index 6b72f5e8a..b14ddeb79 100644 --- a/app/Language/fa/Attributes.php +++ b/app/Language/fa/Attributes.php @@ -1,32 +1,32 @@ "مقدار ویژگی نمی تواند حاوی | یا ـ باشد", - "confirm_delete" => "آیا مطمئن هستید که می خواهید ویژگی (های) انتخاب شده را حذف کنید؟", - "confirm_restore" => "آیا مطمئن هستید که می خواهید ویژگی (های) انتخاب شده را بازیابی کنید؟", - "definition_cannot_be_deleted" => "نمی توان ویژگی (های) انتخابی را حذف کرد", - "definition_error_adding_updating" => "ویژگی{0} اضافه نشد یا به روز نمی شود. لطفا گزارش خطا را بررسی کنید.", - "definition_flags" => "قابلیت مشاهده ویژگی", - "definition_group" => "گروه", - "definition_id" => "شناسه", - "definition_name" => "افزودن ویژگی", - "definition_name_required" => "نام ویژگی یک فیلد ضروری است", - "definition_one_or_multiple" => "(ویژگی(ها", - "definition_successful_adding" => "شما مورد را با موفقیت اضافه کردید", - "definition_successful_deleted" => "شما با موفقیت حذف شده اید", - "definition_successful_updating" => "شما ویژگی را با موفقیت به روز کردید", - "definition_type" => "نوع ویژگی", - "definition_type_required" => "نوع ویژگی یک فیلد ضروری است", - "definition_unit" => "واحد اندازه گیری", - "definition_values" => "مقادیر مشخصه", - "new" => "ویژگی جدید", - "no_attributes_to_display" => "هیچ موردی برای نمایش", - "receipt_visibility" => "اعلام وصول", - "show_in_items" => "نمایش در موارد", - "show_in_items_visibility" => "موارد", - "show_in_receipt" => "نمایش در رسید", - "show_in_receivings" => "نمایش در دریافت ها", - "show_in_receivings_visibility" => "دریافت", - "show_in_sales" => "نمایش در فروش", - "show_in_sales_visibility" => "حراجی", - "update" => "به روز کردن ویژگی", + "attribute_value_invalid_chars" => "مقدار ویژگی نمی تواند حاوی | یا ـ باشد", + "confirm_delete" => "آیا مطمئن هستید که می خواهید ویژگی (های) انتخاب شده را حذف کنید؟", + "confirm_restore" => "آیا مطمئن هستید که می خواهید ویژگی (های) انتخاب شده را بازیابی کنید؟", + "definition_cannot_be_deleted" => "نمی توان ویژگی (های) انتخابی را حذف کرد", + "definition_error_adding_updating" => "ویژگی{0} اضافه نشد یا به روز نمی شود. لطفا گزارش خطا را بررسی کنید.", + "definition_flags" => "قابلیت مشاهده ویژگی", + "definition_group" => "گروه", + "definition_id" => "شناسه", + "definition_name" => "افزودن ویژگی", + "definition_name_required" => "نام ویژگی یک فیلد ضروری است", + "definition_one_or_multiple" => "(ویژگی(ها", + "definition_successful_adding" => "شما مورد را با موفقیت اضافه کردید", + "definition_successful_deleted" => "شما با موفقیت حذف شده اید", + "definition_successful_updating" => "شما ویژگی را با موفقیت به روز کردید", + "definition_type" => "نوع ویژگی", + "definition_type_required" => "نوع ویژگی یک فیلد ضروری است", + "definition_unit" => "واحد اندازه گیری", + "definition_values" => "مقادیر مشخصه", + "new" => "ویژگی جدید", + "no_attributes_to_display" => "هیچ موردی برای نمایش", + "receipt_visibility" => "اعلام وصول", + "show_in_items" => "نمایش در موارد", + "show_in_items_visibility" => "موارد", + "show_in_receipt" => "نمایش در رسید", + "show_in_receivings" => "نمایش در دریافت ها", + "show_in_receivings_visibility" => "دریافت", + "show_in_sales" => "نمایش در فروش", + "show_in_sales_visibility" => "حراجی", + "update" => "به روز کردن ویژگی", ]; diff --git a/app/Language/fa/Bootstrap_tables.php b/app/Language/fa/Bootstrap_tables.php index 70a125e22..2fcd9ba06 100644 --- a/app/Language/fa/Bootstrap_tables.php +++ b/app/Language/fa/Bootstrap_tables.php @@ -1,11 +1,11 @@ "همه", - "columns" => "ستون ها", - "hide_show_pagination" => "پنهان کردن / نمایش صفحه بندی", - "loading" => "...در حال بارگزاری، لطفا منتظر بمانید", - "page_from_to" => "نمایش {0} تا {1} از {2} ردیف", - "refresh" => "تازه کردن", - "rows_per_page" => "صفر ردیف در هر صفحه", - "toggle" => "تغییر وضعیت", + "all" => "همه", + "columns" => "ستون ها", + "hide_show_pagination" => "پنهان کردن / نمایش صفحه بندی", + "loading" => "...در حال بارگزاری، لطفا منتظر بمانید", + "page_from_to" => "نمایش {0} تا {1} از {2} ردیف", + "refresh" => "تازه کردن", + "rows_per_page" => "صفر ردیف در هر صفحه", + "toggle" => "تغییر وضعیت", ]; diff --git a/app/Language/fa/Calendar.php b/app/Language/fa/Calendar.php index 86794fb24..4f36c08d2 100644 --- a/app/Language/fa/Calendar.php +++ b/app/Language/fa/Calendar.php @@ -1,48 +1,48 @@ "ی", - "mo" => "د", - "tu" => "س", - "we" => "چ", - "th" => "پ", - "fr" => "ج", - "sa" => "ش", - "sun" => "یک", - "mon" => "دو", - "tue" => "سه", - "wed" => "چه", - "thu" => "پن", - "fri" => "جم", - "sat" => "شن", - "sunday" => "یک شنبه", - "monday" => "دو شنبه", - "tuesday" => "سه شنبه", - "wednesday" => "چهار شنبه", - "thursday" => "پنج شنبه", - "friday" => "جمعه", - "saturday" => "شنبه", - "jan" => "ژانویه", - "feb" => "فوریه", - "mar" => "مارس", - "apr" => "آوریل", - "may" => "می", - "jun" => "ژوئن", - "jul" => "جولای", - "aug" => "آگوست", - "sep" => "سپتامبر", - "oct" => "اکتوبر", - "nov" => "نوامبر", - "dec" => "دسامبر", - "january" => "ژانویه", - "february" => "فوریه", - "march" => "مارس", - "april" => "آوریل", - "mayl" => "می", - "june" => "ژوئن", - "july" => "جولای", - "august" => "آگوست", - "september" => "سپتامبر", - "october" => "اکتوبر", - "november" => "نوامبر", - "december" => "دسامبر", + "su" => "ی", + "mo" => "د", + "tu" => "س", + "we" => "چ", + "th" => "پ", + "fr" => "ج", + "sa" => "ش", + "sun" => "یک", + "mon" => "دو", + "tue" => "سه", + "wed" => "چه", + "thu" => "پن", + "fri" => "جم", + "sat" => "شن", + "sunday" => "یک شنبه", + "monday" => "دو شنبه", + "tuesday" => "سه شنبه", + "wednesday" => "چهار شنبه", + "thursday" => "پنج شنبه", + "friday" => "جمعه", + "saturday" => "شنبه", + "jan" => "ژانویه", + "feb" => "فوریه", + "mar" => "مارس", + "apr" => "آوریل", + "may" => "می", + "jun" => "ژوئن", + "jul" => "جولای", + "aug" => "آگوست", + "sep" => "سپتامبر", + "oct" => "اکتوبر", + "nov" => "نوامبر", + "dec" => "دسامبر", + "january" => "ژانویه", + "february" => "فوریه", + "march" => "مارس", + "april" => "آوریل", + "mayl" => "می", + "june" => "ژوئن", + "july" => "جولای", + "august" => "آگوست", + "september" => "سپتامبر", + "october" => "اکتوبر", + "november" => "نوامبر", + "december" => "دسامبر", ]; diff --git a/app/Language/fa/Cashups.php b/app/Language/fa/Cashups.php index 3ff4f7ba5..e4acaf4ab 100644 --- a/app/Language/fa/Cashups.php +++ b/app/Language/fa/Cashups.php @@ -1,49 +1,49 @@ "میزان", - "amount_number" => "مقدار باید یک عدد باشد", - "amount_required" => "مقدار یک زمینه ضروری است.", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "نقدی حذف نمی شود", - "cash_difference" => "", - "close_date" => "تاریخ نزدیک", - "close_employee" => "بسته شده توسط", - "closed_amount_card" => "کارت", - "closed_amount_cash" => "بسته نقدی", - "closed_amount_check" => "چک", - "closed_amount_due" => "حق الزحمه", - "closed_amount_giftcard" => "", - "closed_amount_total" => "جمع", - "closed_date" => "تاریخ بسته", - "confirm_delete" => "آیا مطمئن هستید که می خواهید پول نقد انتخاب شده را حذف کنید؟", - "confirm_restore" => "آیا مطمئن هستید که می خواهید پول(های) نقد انتخاب شده را بازیابی کنید؟", - "confirm_submit" => "", - "date_number" => "تاریخ باید شماره باشد", - "date_required" => "تاریخ یک زمینه ضروری است", - "description" => "شرح", - "enable_expected" => "", - "error_adding_updating" => "خطا در افزودن / به روزرسانی پول نقد", - "giftcard" => "", - "id" => "شناسه", - "info" => "اطلاعات نقدی", - "info_employee" => "", - "is_deleted" => "حذف شده", - "new" => "Cashup جدید", - "no_cashups_to_display" => "هیچ نقدی برای نمایش وجود ندارد", - "none_selected" => "شما هیچ نقدی را انتخاب نکردید", - "note" => "یادداشت", - "one_or_multiple" => "نقدی (ها)", - "open_amount_cash" => "باز پول نقد", - "open_date" => "تاریخ باز", - "open_employee" => "باز شده توسط", - "opened_date" => "تاریخ افتتاح", - "successful_adding" => "افزونه موفقیت آمیز اضافه شد", - "successful_deleted" => "حذف موفقیت آمیز موفقیت آمیز است", - "successful_updating" => "به روزرسانی پول نقد با موفقیت انجام شد", - "total" => "جمع", - "transfer_amount_cash" => "نقدی داخل / خارج", - "transfer_amount_cash_minus" => "", - "update" => "بروزرسانی پول نقد", - "warning" => "", + "amount" => "میزان", + "amount_number" => "مقدار باید یک عدد باشد", + "amount_required" => "مقدار یک زمینه ضروری است.", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "نقدی حذف نمی شود", + "cash_difference" => "", + "close_date" => "تاریخ نزدیک", + "close_employee" => "بسته شده توسط", + "closed_amount_card" => "کارت", + "closed_amount_cash" => "بسته نقدی", + "closed_amount_check" => "چک", + "closed_amount_due" => "حق الزحمه", + "closed_amount_giftcard" => "", + "closed_amount_total" => "جمع", + "closed_date" => "تاریخ بسته", + "confirm_delete" => "آیا مطمئن هستید که می خواهید پول نقد انتخاب شده را حذف کنید؟", + "confirm_restore" => "آیا مطمئن هستید که می خواهید پول(های) نقد انتخاب شده را بازیابی کنید؟", + "confirm_submit" => "", + "date_number" => "تاریخ باید شماره باشد", + "date_required" => "تاریخ یک زمینه ضروری است", + "description" => "شرح", + "enable_expected" => "", + "error_adding_updating" => "خطا در افزودن / به روزرسانی پول نقد", + "giftcard" => "", + "id" => "شناسه", + "info" => "اطلاعات نقدی", + "info_employee" => "", + "is_deleted" => "حذف شده", + "new" => "Cashup جدید", + "no_cashups_to_display" => "هیچ نقدی برای نمایش وجود ندارد", + "none_selected" => "شما هیچ نقدی را انتخاب نکردید", + "note" => "یادداشت", + "one_or_multiple" => "نقدی (ها)", + "open_amount_cash" => "باز پول نقد", + "open_date" => "تاریخ باز", + "open_employee" => "باز شده توسط", + "opened_date" => "تاریخ افتتاح", + "successful_adding" => "افزونه موفقیت آمیز اضافه شد", + "successful_deleted" => "حذف موفقیت آمیز موفقیت آمیز است", + "successful_updating" => "به روزرسانی پول نقد با موفقیت انجام شد", + "total" => "جمع", + "transfer_amount_cash" => "نقدی داخل / خارج", + "transfer_amount_cash_minus" => "", + "update" => "بروزرسانی پول نقد", + "warning" => "", ]; diff --git a/app/Language/fa/Common.php b/app/Language/fa/Common.php index c5644bb38..1bdc65028 100644 --- a/app/Language/fa/Common.php +++ b/app/Language/fa/Common.php @@ -1,88 +1,88 @@ "آدرس 1", - "address_2" => "آدرس 2", - "admin" => "", - "city" => "شهر", - "clerk" => "", - "close" => "نزدیک", - "color" => "", - "comments" => "نظرات", - "common" => "مشترک", - "confirm_search" => "شما یک یا چند ردیف را انتخاب کرده اید ، اینها دیگر پس از جستجوی شما انتخاب نمی شوند. آیا مطمئن هستید که می خواهید این جستجو را ارسال کنید؟", - "copyrights" => "© 2010 -{0}", - "correct_errors" => "لطفا قبل از ذخیره خطاهای شناسایی شده را تصحیح کنید", - "country" => "کشور", - "dashboard" => "", - "date" => "تاریخ", - "delete" => "حذف", - "det" => "جزئیات", - "download_import_template" => "بارگیری الگوی واردات با فرمت سی اس وی", - "edit" => "ویرایش", - "email" => "پست الکترونیک", - "email_invalid_format" => "آدرس ایمیل در قالب صحیح نیست.", - "export_csv" => "CSV صدور", - "export_csv_no" => "نه", - "export_csv_yes" => "آره", - "fields_required_message" => "زمینه هایی به رنگ قرمز لازم است", - "fields_required_message_unique" => "", - "first_name" => "نام کوچک", - "first_name_required" => "نام اولیه یک فیلد ضروری است.", - "first_page" => "اولین", - "gender" => "جنس", - "gender_female" => "خانم", - "gender_male" => "آقا", - "gender_undefined" => "", - "icon" => "", - "id" => "شناسه", - "import" => "وارد كردن", - "import_change_file" => "تغییر", - "import_csv" => "CSV ورود", - "import_full_path" => "مسیر کامل به فایل سی اس وی مورد نیاز است", - "import_remove_file" => "برداشتن", - "import_select_file" => "فایل را انتخاب کنید", - "inv" => "دعوت", - "last_name" => "نام خانوادگی", - "last_name_required" => "نام خانوادگی یک فیلد ضروری است.", - "last_page" => "آخر", - "learn_about_project" => "برای یادگیری آخرین اطلاعات در مورد پروژه.", - "list_of" => "فهرست", - "logo" => "", - "logo_mark" => "", - "logout" => "خروج", - "manager" => "", - "migration_needed" => "انتقال پایگاه داده به{0} پس از ورود به سیستم آغاز می شود.", - "new" => "جدید", - "no" => "", - "no_persons_to_display" => "هیچ کس برای نمایش وجود ندارد.", - "none_selected_text" => "[Select]", - "or" => "یا", - "people" => "", - "phone_number" => "شماره تلفن", - "phone_number_required" => "", - "please_visit_my" => "لطفا سر بزنید", - "position" => "", - "powered_by" => "طراحی شده توسط", - "price" => "قیمت", - "print" => "چاپ", - "remove" => "برداشتن", - "required" => "ضروری", - "restore" => "بازگرداندن", - "return_policy" => "خط مشی بازگشت", - "search" => "جستجو کردن", - "search_options" => "گزینه های جستجو", - "searched_for" => "جستجو شد", - "software_short" => "", - "software_title" => "", - "state" => "دولت", - "submit" => "ارسال", - "total_spent" => "جمع هزینه", - "unknown" => "ناشناس", - "view_recent_sales" => "مشاهده فروش اخیر", - "website" => "openourcepos.org", - "welcome" => "خوش آمدی", - "welcome_message" => "به اوسپوس خوش آمدید ، برای شروع کار ماژول زیر را کلیک کنید", - "yes" => "", - "you_are_using_ospos" => "", - "zip" => "کد پستی", + "address_1" => "آدرس 1", + "address_2" => "آدرس 2", + "admin" => "", + "city" => "شهر", + "clerk" => "", + "close" => "نزدیک", + "color" => "", + "comments" => "نظرات", + "common" => "مشترک", + "confirm_search" => "شما یک یا چند ردیف را انتخاب کرده اید ، اینها دیگر پس از جستجوی شما انتخاب نمی شوند. آیا مطمئن هستید که می خواهید این جستجو را ارسال کنید؟", + "copyrights" => "© 2010 -{0}", + "correct_errors" => "لطفا قبل از ذخیره خطاهای شناسایی شده را تصحیح کنید", + "country" => "کشور", + "dashboard" => "", + "date" => "تاریخ", + "delete" => "حذف", + "det" => "جزئیات", + "download_import_template" => "بارگیری الگوی واردات با فرمت سی اس وی", + "edit" => "ویرایش", + "email" => "پست الکترونیک", + "email_invalid_format" => "آدرس ایمیل در قالب صحیح نیست.", + "export_csv" => "CSV صدور", + "export_csv_no" => "نه", + "export_csv_yes" => "آره", + "fields_required_message" => "زمینه هایی به رنگ قرمز لازم است", + "fields_required_message_unique" => "", + "first_name" => "نام کوچک", + "first_name_required" => "نام اولیه یک فیلد ضروری است.", + "first_page" => "اولین", + "gender" => "جنس", + "gender_female" => "خانم", + "gender_male" => "آقا", + "gender_undefined" => "", + "icon" => "", + "id" => "شناسه", + "import" => "وارد كردن", + "import_change_file" => "تغییر", + "import_csv" => "CSV ورود", + "import_full_path" => "مسیر کامل به فایل سی اس وی مورد نیاز است", + "import_remove_file" => "برداشتن", + "import_select_file" => "فایل را انتخاب کنید", + "inv" => "دعوت", + "last_name" => "نام خانوادگی", + "last_name_required" => "نام خانوادگی یک فیلد ضروری است.", + "last_page" => "آخر", + "learn_about_project" => "برای یادگیری آخرین اطلاعات در مورد پروژه.", + "list_of" => "فهرست", + "logo" => "", + "logo_mark" => "", + "logout" => "خروج", + "manager" => "", + "migration_needed" => "انتقال پایگاه داده به{0} پس از ورود به سیستم آغاز می شود.", + "new" => "جدید", + "no" => "", + "no_persons_to_display" => "هیچ کس برای نمایش وجود ندارد.", + "none_selected_text" => "[Select]", + "or" => "یا", + "people" => "", + "phone_number" => "شماره تلفن", + "phone_number_required" => "", + "please_visit_my" => "لطفا سر بزنید", + "position" => "", + "powered_by" => "طراحی شده توسط", + "price" => "قیمت", + "print" => "چاپ", + "remove" => "برداشتن", + "required" => "ضروری", + "restore" => "بازگرداندن", + "return_policy" => "خط مشی بازگشت", + "search" => "جستجو کردن", + "search_options" => "گزینه های جستجو", + "searched_for" => "جستجو شد", + "software_short" => "", + "software_title" => "", + "state" => "دولت", + "submit" => "ارسال", + "total_spent" => "جمع هزینه", + "unknown" => "ناشناس", + "view_recent_sales" => "مشاهده فروش اخیر", + "website" => "openourcepos.org", + "welcome" => "خوش آمدی", + "welcome_message" => "به اوسپوس خوش آمدید ، برای شروع کار ماژول زیر را کلیک کنید", + "yes" => "", + "you_are_using_ospos" => "", + "zip" => "کد پستی", ]; diff --git a/app/Language/fa/Config.php b/app/Language/fa/Config.php index e6c762295..2615fe142 100644 --- a/app/Language/fa/Config.php +++ b/app/Language/fa/Config.php @@ -1,330 +1,330 @@ "آدرس شرکت", - "address_required" => "آدرس شرکت یک زمینه ضروری است.", - "all_set" => "همه مجوزهای پرونده درست تنظیم شده اند!", - "allow_duplicate_barcodes" => "مجاز بارکد های تکراری", - "apostrophe" => "ارتداد", - "backup_button" => "پشتیبان گیری", - "backup_database" => "بانک اطلاعات پشتیبان", - "barcode" => "بارکد", - "barcode_company" => "نام شرکت", - "barcode_configuration" => "پیکربندی بارکد", - "barcode_content" => "محتوای بارکد", - "barcode_first_row" => "ردیف 1", - "barcode_font" => "قلم", - "barcode_formats" => "قالبهای ورودی", - "barcode_generate_if_empty" => "اگر خالی باشد تولید کنید.", - "barcode_height" => "قد به پیکسل", - "barcode_id" => "شناسه مورد / نام", - "barcode_info" => "اطلاعات پیکربندی بارکد", - "barcode_layout" => "چیدمان بارکد", - "barcode_name" => "نام", - "barcode_number" => "بارکد", - "barcode_number_in_row" => "تعداد در ردیف", - "barcode_page_cellspacing" => "نمایش جای خالی صفحه.", - "barcode_page_width" => "نمایش عرض صفحه", - "barcode_price" => "قیمت", - "barcode_second_row" => "ردیف 2", - "barcode_third_row" => "ردیف 3", - "barcode_tooltip" => "اخطار: این ویژگی می تواند باعث وارد شدن یا ایجاد موارد تکراری شود. اگر نمی خواهید بارکد های تکراری داشته باشید ، از آنها استفاده نکنید.", - "barcode_type" => "", - "barcode_width" => "عرض به پیکسل", - "bottom" => "پایین", - "cash_button" => "", - "cash_button_1" => "", - "cash_button_2" => "", - "cash_button_3" => "", - "cash_button_4" => "", - "cash_button_5" => "", - "cash_button_6" => "", - "cash_decimals" => "اعشار نقدی", - "cash_decimals_tooltip" => "اگر کسرهای نقدی و دهدهی های ارزی یکسان باشد ، هیچ دور وجه نقدی صورت نمی گیرد.", - "cash_rounding" => "گرد پول نقد", - "category_dropdown" => "نمایش دسته بندی به عنوان یک بازده", - "center" => "مرکز", - "change_apperance_tooltip" => "", - "comma" => "کام", - "company" => "نام شرکت", - "company_avatar" => "", - "company_change_image" => "تغییر تصویر", - "company_logo" => "آرم شرکت", - "company_remove_image" => "حذف تصویر", - "company_required" => "نام شرکت یک زمینه ضروری است", - "company_select_image" => "تصویر را انتخاب کنید", - "company_website_url" => "وب سایت شرکت معتبر نیست", - "country_codes" => "کد کشور", - "country_codes_tooltip" => "کاما لیست کدهای کشور را برای جستجوی آدرس جدا کرد.", - "currency_code" => "کد ارز", - "currency_decimals" => "اعشار ارزی", - "currency_symbol" => "نماد ارز", - "current_employee_only" => "", - "customer_reward" => "جایزه", - "customer_reward_duplicate" => "پاداش باید بی نظیر باشد.", - "customer_reward_enable" => "فعال کردن پاداش مشتری", - "customer_reward_invalid_chars" => "پاداش نمی تواند حاوی ـ باشد", - "customer_reward_required" => "پاداش یک زمینه ضروری است", - "customer_sales_tax_support" => "", - "date_or_time_format" => "فیلتر تاریخ و زمان", - "datetimeformat" => "قالب و تاریخ", - "decimal_point" => "نقطه اعشار", - "default_barcode_font_size_number" => "اندازه قلم بارکد پیش فرض باید یک عدد باشد.", - "default_barcode_font_size_required" => "اندازه قلم پیش فرض بارکد یک فیلد مورد نیاز است.", - "default_barcode_height_number" => "ارتفاع پیش فرض بارکد باید یک عدد باشد.", - "default_barcode_height_required" => "پیش فرض بارکد ارتفاع یک فیلد مورد نیاز است.", - "default_barcode_num_in_row_number" => "شماره بارکد پیش فرض در ردیف باید یک عدد باشد.", - "default_barcode_num_in_row_required" => "پیش فرض بارکد شماره در ردیف یک زمینه مورد نیاز است.", - "default_barcode_page_cellspacing_number" => "صفحه پیش فرض بارکد باید یک شماره باشد.", - "default_barcode_page_cellspacing_required" => "به طور پیش فرض بارکد صفحه یک زمینه مورد نیاز است.", - "default_barcode_page_width_number" => "عرض صفحه بارکد پیش فرض باید یک عدد باشد.", - "default_barcode_page_width_required" => "صفحه پیش فرض بارکد یک فیلد ضروری است.", - "default_barcode_width_number" => "عرض پیش فرض بارکد باید یک عدد باشد.", - "default_barcode_width_required" => "پیش فرض عرض بارکد یک فیلد مورد نیاز است.", - "default_item_columns" => "ستون های مورد قابل مشاهده پیش فرض", - "default_origin_tax_code" => "کد مالیات پیش فرض مبداء", - "default_receivings_discount" => "تخفیف دريافت دريافت", - "default_receivings_discount_number" => "تخفیف دريافت پیش فرض باید یک عدد باشد.", - "default_receivings_discount_required" => "تخفیف دريافت پیش فرض یک قسمت مورد نیاز است.", - "default_sales_discount" => "تخفیف فروش پیش فرض", - "default_sales_discount_number" => "تخفیف فروش پیش فرض باید یک عدد باشد.", - "default_sales_discount_required" => "تخفیف فروش پیش فرض یک قسمت مورد نیاز است.", - "default_tax_category" => "طبقه بندی پیش فرض مالیات", - "default_tax_code" => "کد پیش فرض مالیات", - "default_tax_jurisdiction" => "پیش فرض صلاحیت مالیاتی", - "default_tax_name_number" => "نام مالیات پیش فرض باید یک رشته باشد.", - "default_tax_name_required" => "نام مالیات پیش فرض یک قسمت مورد نیاز است.", - "default_tax_rate" => "پیش فرض نرخ مالیات٪", - "default_tax_rate_1" => "نرخ مالیات 1", - "default_tax_rate_2" => "نرخ مالیات 2", - "default_tax_rate_3" => "", - "default_tax_rate_number" => "نرخ مالیات پیش فرض باید یک عدد باشد.", - "default_tax_rate_required" => "پیش فرض مالیات نرخ مورد نیاز است.", - "derive_sale_quantity" => "مجاز به مقدار فروش مشتق شده", - "derive_sale_quantity_tooltip" => "اگر بررسی شود ، نوع جدیدی برای موارد سفارش داده شده با مقدار طولانی ارائه می شود", - "dinner_table" => "جدول", - "dinner_table_duplicate" => "جدول باید بی نظیر باشد.", - "dinner_table_enable" => "فعال کردن جداول شام", - "dinner_table_invalid_chars" => "نام جدول نمی تواند حاوی ـ باشد.", - "dinner_table_required" => "جدول فیلد مورد نیاز است.", - "dot" => "نقطه", - "email" => "پست الکترونیک", - "email_configuration" => "پیکربندی ایمیل", - "email_mailpath" => " مسیر ارسال به برنامه (سندمیل)", - "email_protocol" => "پروتکل", - "email_receipt_check_behaviour" => "کادر بررسی دریافت ایمیل", - "email_receipt_check_behaviour_always" => "همیشه بررسی شد", - "email_receipt_check_behaviour_last" => "انتخاب گذشته را بخاطر بسپار", - "email_receipt_check_behaviour_never" => "همیشه انتخاب نشده", - "email_smtp_crypto" => "SMTP رمزگذاری", - "email_smtp_host" => "SMTP سرور", - "email_smtp_pass" => "SMTP گذرواژه", - "email_smtp_port" => "SMTP پورت", - "email_smtp_timeout" => "SMT Timeout (s)", - "email_smtp_user" => "SMTP نام کاربری", - "enable_avatar" => "", - "enable_avatar_tooltip" => "", - "enable_dropdown_tooltip" => "", - "enable_new_look" => "", - "enable_right_bar" => "", - "enable_right_bar_tooltip" => "", - "enforce_privacy" => "اجرای حریم خصوصی", - "enforce_privacy_tooltip" => "در صورت از بین بردن داده های آنها در صورت حذف داده ها ، از حفظ حریم خصوصی مشتریان محافظت کنید", - "fax" => "نمابر", - "file_perm" => "در مجوزهای پرونده مشکلی وجود دارد ، لطفا این صفحه را تعمیر و بارگذاری مجدد کنید.", - "financial_year" => "شروع سال مالی", - "financial_year_apr" => "اول آوریل", - "financial_year_aug" => "اول اوت", - "financial_year_dec" => "اول دسامبر", - "financial_year_feb" => "اول فوریه", - "financial_year_jan" => "اول ژانویه", - "financial_year_jul" => "اول ژوئیه", - "financial_year_jun" => "اول ژوئن", - "financial_year_mar" => "اول مارس", - "financial_year_may" => "اول ماه مه", - "financial_year_nov" => "اول نوامبر", - "financial_year_oct" => "اول اکتبر", - "financial_year_sep" => "اول سپتامبر", - "floating_labels" => "", - "gcaptcha_enable" => "صفحه ورود کپچا", - "gcaptcha_secret_key" => "کلید مخفی کپچا", - "gcaptcha_secret_key_required" => "کلید مخفی کپچا یک زمینه مورد نیاز است", - "gcaptcha_site_key" => "کلید سایت کپچا", - "gcaptcha_site_key_required" => "کلید سایت کپچا یک زمینه مورد نیاز است", - "gcaptcha_tooltip" => "از صفحه ورود با کپچا محافظت کنید ، روی یک نماد برای یک جفت کلید ای‌پی‌آی کلیک کنید.", - "general" => "عمومی", - "general_configuration" => "پیکربندی عمومی", - "giftcard_number" => "شماره کارت هدیه", - "giftcard_random" => "تولید تصادفی", - "giftcard_series" => "تولید در سریال", - "image_allowed_file_types" => "انواع پرونده مجاز", - "image_max_height_tooltip" => "حداکثر ارتفاع مجاز بارگذاری تصویر در پیکسل ها (px).", - "image_max_size_tooltip" => "حداکثر اندازه مجاز بارگذاری تصویر در کیلوبایت (کیلوبایت).", - "image_max_width_tooltip" => "حداکثر عرض مجاز بارگذاری تصویر در پیکسل ها (px).", - "image_restrictions" => "محدودیتهای آپلود تصویر", - "include_hsn" => "شامل پشتیبانی از کدهای اچ‌اس‌ان", - "info" => "اطلاعات", - "info_configuration" => "اطلاعات فروشگاه", - "input_groups" => "", - "integrations" => "ادغام", - "integrations_configuration" => "ادغام های شخص ثالث", - "invoice" => "صورتحساب", - "invoice_configuration" => "تنظیمات چاپ فاکتور", - "invoice_default_comments" => "نظرات پیش فرض فاکتور", - "invoice_email_message" => "الگوی ایمیل فاکتور", - "invoice_enable" => "فعال کردن صورتحساب", - "invoice_printer" => "چاپگر فاکتور", - "invoice_type" => "نوع فاکتور", - "is_readable" => "قابل خواندن است ، اما مجوزها از 660 بالاتر است.", - "is_writable" => "قابل چاپ است ، اما مجوزها بالاتر از 750 است.", - "item_markup" => "", - "jsprintsetup_required" => "هشدار: این عملکرد تنها در صورتی کار خواهد کرد که افزونه فایرفاکس ج پرینت را نصب کنید. به هر حال ذخیره می شود؟", - "language" => "زبان", - "last_used_invoice_number" => "آخرین فاکتور استفاده شده شماره", - "last_used_quote_number" => "آخرین شماره نقل قول استفاده شده", - "last_used_work_order_number" => "آخرین شماره سفارش کار استفاده شده", - "left" => "ترک کرد", - "license" => "مجوز", - "license_configuration" => "بیانیه مجوز", - "line_sequence" => "دنباله خط", - "lines_per_page" => "خطوط در هر صفحه", - "lines_per_page_number" => "خطوط در هر صفحه باید عددی باشند.", - "lines_per_page_required" => "خطوط در هر صفحه یک زمینه ضروری است", - "locale" => "بومی سازی", - "locale_configuration" => "پیکربندی محلی سازی", - "locale_info" => "اطلاعات پیکربندی محلی سازی", - "location" => "موجودی", - "location_configuration" => "محل سهام", - "location_info" => "اطلاعات پیکربندی موقعیت مکانی", - "login_form" => "", - "logout" => "آیا می خواهید قبل از ورود ، نسخه پشتیبان تهیه کنید؟ برای پشتیبان گیری یا [لغو] برای ورود به سیستم ، روی [اوکی] کلیک کنید", - "mailchimp" => "Mailchimp", - "mailchimp_api_key" => "کلید ای‌پی‌آی میل‌چیمپ", - "mailchimp_configuration" => "پیکربندی میل‌چیمپ", - "mailchimp_key_successfully" => "کلید ای‌پی‌آی معتبر است.", - "mailchimp_key_unsuccessfully" => "کلید ای‌پی‌آی نامعتبر است.", - "mailchimp_lists" => "لیست (های) میل‌چیمپ", - "mailchimp_tooltip" => "بر روی نماد یک کلید ای‌پی‌آی کلیک کنید.", - "message" => "پیام", - "message_configuration" => "پیکربندی پیام", - "msg_msg" => "پیام متنی ذخیره شده", - "msg_msg_placeholder" => "اگر می خواهید از یک پیام کوتاه استفاده کنید ، پیام خود را در اینجا ذخیره کنید ، در غیر این صورت جعبه را خالی بگذارید.", - "msg_pwd" => "گذرواژه SMS-API", - "msg_pwd_required" => "گذرواژه ای‌پی‌آی اس‌ام‌اس یک فیلد ضروری است", - "msg_src" => "شناسه فرستنده ای‌پی‌آی اس‌ام‌اس ", - "msg_src_required" => "شناسه فرستنده ای‌پی‌آی اس‌ام‌اس یک زمینه ضروری است", - "msg_uid" => "نام کاربری ای‌پی‌آی اس‌ام‌اس ", - "msg_uid_required" => "نام کاربری ای‌پی‌آی اس‌ام‌اس یک زمینه ضروری است", - "multi_pack_enabled" => "بسته های چندگانه برای هر مورد", - "no_risk" => "خطرات امنیتی و آسیب پذیری وجود ندارد.", - "none" => "هیچ یک", - "notify_alignment" => "موقعیت یاب اعلان", - "number_format" => "قالب شماره", - "number_locale" => "بومی سازی", - "number_locale_invalid" => "محل ورود نامعتبر است. برای یافتن محلی معتبر ، پیوند را در راهنمای ابزار بررسی کنید.", - "number_locale_required" => "شماره محلی یک زمینه مورد نیاز است.", - "number_locale_tooltip" => "از طریق این لینک محلی مناسب پیدا کنید.", - "os_timezone" => "منطقه زمانی اوسپوس:", - "ospos_info" => "اطلاعات نصب اوسپوس", - "payment_options_order" => "سفارش گزینه های پرداخت", - "perm_risk" => "مجوزهای بالاتر از 750 برای نوشتن و 660 برای خواندن ، این نرم افزار را در معرض خطر قرار می دهد.", - "phone" => "تلفن شرکت", - "phone_required" => "تلفن شرکت یک زمینه ضروری است.", - "print_bottom_margin" => "حاشیه پایین", - "print_bottom_margin_number" => "حاشیه پایین باید یک عدد باشد.", - "print_bottom_margin_required" => "کلید مارجین یک زمینه مورد نیاز است.", - "print_delay_autoreturn" => "تأخیر در فروش تاخیر در فروش", - "print_delay_autoreturn_number" => "تأخیر در فروش تاخیر یک زمینه ضروری است.", - "print_delay_autoreturn_required" => "تأخیر در فروش تاخیر در فروش باید یک عدد باشد.", - "print_footer" => "چاپ پاورقی مرورگر", - "print_header" => "چاپ هدر مرورگر", - "print_left_margin" => "حاشیه چپ", - "print_left_margin_number" => "مارجین چپ باید یک عدد باشد.", - "print_left_margin_required" => "Margin Left یک زمینه مورد نیاز است.", - "print_receipt_check_behaviour" => "کادر تأیید چاپ", - "print_receipt_check_behaviour_always" => "همیشه بررسی شد", - "print_receipt_check_behaviour_last" => "انتخاب گذشته را بخاطر بسپار", - "print_receipt_check_behaviour_never" => "همیشه انتخاب نشده", - "print_right_margin" => "حق حاشیه", - "print_right_margin_number" => "حاشیه سمت راست باید یک عدد باشد.", - "print_right_margin_required" => "مارجین راست یک زمینه ضروری است", - "print_silently" => "نمایش گفتگوی چاپ", - "print_top_margin" => "حاشیه بالا", - "print_top_margin_number" => "حاشیه بالا باید یک عدد باشد.", - "print_top_margin_required" => "مارجین بالا یک زمینه مورد نیاز است.", - "quantity_decimals" => "تعداد اعشار", - "quick_cash_enable" => "", - "quote_default_comments" => "نقل قول های پیش فرض", - "receipt" => "اعلام وصول", - "receipt_category" => "", - "receipt_configuration" => "تنظیمات چاپ دریافت", - "receipt_default" => "پیش فرض", - "receipt_font_size" => "اندازه فونت", - "receipt_font_size_number" => "اندازه قلم باید یک عدد باشد.", - "receipt_font_size_required" => "اندازه قلم یک فیلد مورد نیاز است.", - "receipt_info" => "اطلاعات پیکربندی دریافت", - "receipt_printer" => "چاپگر بلیط", - "receipt_short" => "کوتاه", - "receipt_show_company_name" => "نمایش نام شرکت", - "receipt_show_description" => "نمایش توضیحات", - "receipt_show_serialnumber" => "نمایش شماره سریال", - "receipt_show_tax_ind" => "نمایش شاخص مالیات", - "receipt_show_taxes" => "نمایش مالیات", - "receipt_show_total_discount" => "نمایش تخفیف در کل", - "receipt_template" => "الگوی رسید", - "receiving_calculate_average_price" => "کالای میانگین. قیمت (دريافت)", - "recv_invoice_format" => "قالب فاکتور دریافتی", - "register_mode_default" => "حالت پیش فرض ثبت نام", - "report_an_issue" => "گزارش یک مسئله", - "return_policy_required" => "خط مشی برگشت یک زمینه مورد نیاز است.", - "reward" => "جایزه", - "reward_configuration" => "پیکربندی پاداش", - "right" => "درست", - "sales_invoice_format" => "قالب فاکتور فروش", - "sales_quote_format" => "قالب فروش قیمت", - "saved_successfully" => "پیکربندی ذخیره موفقیت آمیز است.", - "saved_unsuccessfully" => "ذخیره پیکربندی انجام نشد.", - "security_issue" => "هشدار آسیب پذیری امنیتی", - "server_notice" => "لطفاً برای گزارش مسئله از اطلاعات زیر استفاده کنید.", - "service_charge" => "", - "show_due_enable" => "", - "show_office_group" => "نمایش نماد دفتر", - "statistics" => "ارسال آمار", - "statistics_tooltip" => "ارسال آمار برای اهداف توسعه و بهبود ویژگی ها.", - "stock_location" => "موقعیت مکانی سهام", - "stock_location_duplicate" => "موقعیت مکانی سهام باید بی نظیر باشد.", - "stock_location_invalid_chars" => "محل نگهداری سهام نمی تواند حاوی ـ باشد.", - "stock_location_required" => "مکان سهام یک قسمت مورد نیاز است.", - "suggestions_fifth_column" => "", - "suggestions_first_column" => "ستون 1", - "suggestions_fourth_column" => "", - "suggestions_layout" => "طرح بندی پیشنهادات جستجو", - "suggestions_second_column" => "ستون 2", - "suggestions_third_column" => "ستون 3", - "system_conf" => "تنظیم و تنظیم", - "system_info" => "اطلاعات سیستم", - "table" => "جدول", - "table_configuration" => "پیکربندی جدول", - "takings_printer" => "چاپگر رسید", - "tax" => "مالیات", - "tax_category" => "طبقه بندی مالیات", - "tax_category_duplicate" => "دسته مالیاتی وارد شده در حال حاضر وجود دارد.", - "tax_category_invalid_chars" => "دسته مالیاتی وارد شده نامعتبر است.", - "tax_category_required" => "طبقه بندی مالیات لازم است.", - "tax_category_used" => "طبقه بندی مالیات نمی تواند حذف شود زیرا در حال استفاده است.", - "tax_configuration" => "پیکربندی مالیات", - "tax_decimals" => "اعشار مالیاتی", - "tax_id" => "شناسه مالیاتی", - "tax_included" => "با احتساب مالیات", - "theme" => "موضوع", - "theme_preview" => "", - "thousands_separator" => "هزاران نفر", - "timezone" => "منطقه زمانی", - "timezone_error" => "منطقه زمانی اوسپوس با منطقه زمانی محلی شما متفاوت است.", - "top" => "بالا", - "use_destination_based_tax" => "استفاده از مالیات بر مبنای مقصد", - "user_timezone" => "منطقه زمانی محلی:", - "website" => "سایت اینترنتی", - "wholesale_markup" => "", - "work_order_enable" => "پشتیبانی سفارش کار", - "work_order_format" => "قالب سفارش کار", + "address" => "آدرس شرکت", + "address_required" => "آدرس شرکت یک زمینه ضروری است.", + "all_set" => "همه مجوزهای پرونده درست تنظیم شده اند!", + "allow_duplicate_barcodes" => "مجاز بارکد های تکراری", + "apostrophe" => "ارتداد", + "backup_button" => "پشتیبان گیری", + "backup_database" => "بانک اطلاعات پشتیبان", + "barcode" => "بارکد", + "barcode_company" => "نام شرکت", + "barcode_configuration" => "پیکربندی بارکد", + "barcode_content" => "محتوای بارکد", + "barcode_first_row" => "ردیف 1", + "barcode_font" => "قلم", + "barcode_formats" => "قالبهای ورودی", + "barcode_generate_if_empty" => "اگر خالی باشد تولید کنید.", + "barcode_height" => "قد به پیکسل", + "barcode_id" => "شناسه مورد / نام", + "barcode_info" => "اطلاعات پیکربندی بارکد", + "barcode_layout" => "چیدمان بارکد", + "barcode_name" => "نام", + "barcode_number" => "بارکد", + "barcode_number_in_row" => "تعداد در ردیف", + "barcode_page_cellspacing" => "نمایش جای خالی صفحه.", + "barcode_page_width" => "نمایش عرض صفحه", + "barcode_price" => "قیمت", + "barcode_second_row" => "ردیف 2", + "barcode_third_row" => "ردیف 3", + "barcode_tooltip" => "اخطار: این ویژگی می تواند باعث وارد شدن یا ایجاد موارد تکراری شود. اگر نمی خواهید بارکد های تکراری داشته باشید ، از آنها استفاده نکنید.", + "barcode_type" => "", + "barcode_width" => "عرض به پیکسل", + "bottom" => "پایین", + "cash_button" => "", + "cash_button_1" => "", + "cash_button_2" => "", + "cash_button_3" => "", + "cash_button_4" => "", + "cash_button_5" => "", + "cash_button_6" => "", + "cash_decimals" => "اعشار نقدی", + "cash_decimals_tooltip" => "اگر کسرهای نقدی و دهدهی های ارزی یکسان باشد ، هیچ دور وجه نقدی صورت نمی گیرد.", + "cash_rounding" => "گرد پول نقد", + "category_dropdown" => "نمایش دسته بندی به عنوان یک بازده", + "center" => "مرکز", + "change_apperance_tooltip" => "", + "comma" => "کام", + "company" => "نام شرکت", + "company_avatar" => "", + "company_change_image" => "تغییر تصویر", + "company_logo" => "آرم شرکت", + "company_remove_image" => "حذف تصویر", + "company_required" => "نام شرکت یک زمینه ضروری است", + "company_select_image" => "تصویر را انتخاب کنید", + "company_website_url" => "وب سایت شرکت معتبر نیست", + "country_codes" => "کد کشور", + "country_codes_tooltip" => "کاما لیست کدهای کشور را برای جستجوی آدرس جدا کرد.", + "currency_code" => "کد ارز", + "currency_decimals" => "اعشار ارزی", + "currency_symbol" => "نماد ارز", + "current_employee_only" => "", + "customer_reward" => "جایزه", + "customer_reward_duplicate" => "پاداش باید بی نظیر باشد.", + "customer_reward_enable" => "فعال کردن پاداش مشتری", + "customer_reward_invalid_chars" => "پاداش نمی تواند حاوی ـ باشد", + "customer_reward_required" => "پاداش یک زمینه ضروری است", + "customer_sales_tax_support" => "", + "date_or_time_format" => "فیلتر تاریخ و زمان", + "datetimeformat" => "قالب و تاریخ", + "decimal_point" => "نقطه اعشار", + "default_barcode_font_size_number" => "اندازه قلم بارکد پیش فرض باید یک عدد باشد.", + "default_barcode_font_size_required" => "اندازه قلم پیش فرض بارکد یک فیلد مورد نیاز است.", + "default_barcode_height_number" => "ارتفاع پیش فرض بارکد باید یک عدد باشد.", + "default_barcode_height_required" => "پیش فرض بارکد ارتفاع یک فیلد مورد نیاز است.", + "default_barcode_num_in_row_number" => "شماره بارکد پیش فرض در ردیف باید یک عدد باشد.", + "default_barcode_num_in_row_required" => "پیش فرض بارکد شماره در ردیف یک زمینه مورد نیاز است.", + "default_barcode_page_cellspacing_number" => "صفحه پیش فرض بارکد باید یک شماره باشد.", + "default_barcode_page_cellspacing_required" => "به طور پیش فرض بارکد صفحه یک زمینه مورد نیاز است.", + "default_barcode_page_width_number" => "عرض صفحه بارکد پیش فرض باید یک عدد باشد.", + "default_barcode_page_width_required" => "صفحه پیش فرض بارکد یک فیلد ضروری است.", + "default_barcode_width_number" => "عرض پیش فرض بارکد باید یک عدد باشد.", + "default_barcode_width_required" => "پیش فرض عرض بارکد یک فیلد مورد نیاز است.", + "default_item_columns" => "ستون های مورد قابل مشاهده پیش فرض", + "default_origin_tax_code" => "کد مالیات پیش فرض مبداء", + "default_receivings_discount" => "تخفیف دريافت دريافت", + "default_receivings_discount_number" => "تخفیف دريافت پیش فرض باید یک عدد باشد.", + "default_receivings_discount_required" => "تخفیف دريافت پیش فرض یک قسمت مورد نیاز است.", + "default_sales_discount" => "تخفیف فروش پیش فرض", + "default_sales_discount_number" => "تخفیف فروش پیش فرض باید یک عدد باشد.", + "default_sales_discount_required" => "تخفیف فروش پیش فرض یک قسمت مورد نیاز است.", + "default_tax_category" => "طبقه بندی پیش فرض مالیات", + "default_tax_code" => "کد پیش فرض مالیات", + "default_tax_jurisdiction" => "پیش فرض صلاحیت مالیاتی", + "default_tax_name_number" => "نام مالیات پیش فرض باید یک رشته باشد.", + "default_tax_name_required" => "نام مالیات پیش فرض یک قسمت مورد نیاز است.", + "default_tax_rate" => "پیش فرض نرخ مالیات٪", + "default_tax_rate_1" => "نرخ مالیات 1", + "default_tax_rate_2" => "نرخ مالیات 2", + "default_tax_rate_3" => "", + "default_tax_rate_number" => "نرخ مالیات پیش فرض باید یک عدد باشد.", + "default_tax_rate_required" => "پیش فرض مالیات نرخ مورد نیاز است.", + "derive_sale_quantity" => "مجاز به مقدار فروش مشتق شده", + "derive_sale_quantity_tooltip" => "اگر بررسی شود ، نوع جدیدی برای موارد سفارش داده شده با مقدار طولانی ارائه می شود", + "dinner_table" => "جدول", + "dinner_table_duplicate" => "جدول باید بی نظیر باشد.", + "dinner_table_enable" => "فعال کردن جداول شام", + "dinner_table_invalid_chars" => "نام جدول نمی تواند حاوی ـ باشد.", + "dinner_table_required" => "جدول فیلد مورد نیاز است.", + "dot" => "نقطه", + "email" => "پست الکترونیک", + "email_configuration" => "پیکربندی ایمیل", + "email_mailpath" => " مسیر ارسال به برنامه (سندمیل)", + "email_protocol" => "پروتکل", + "email_receipt_check_behaviour" => "کادر بررسی دریافت ایمیل", + "email_receipt_check_behaviour_always" => "همیشه بررسی شد", + "email_receipt_check_behaviour_last" => "انتخاب گذشته را بخاطر بسپار", + "email_receipt_check_behaviour_never" => "همیشه انتخاب نشده", + "email_smtp_crypto" => "SMTP رمزگذاری", + "email_smtp_host" => "SMTP سرور", + "email_smtp_pass" => "SMTP گذرواژه", + "email_smtp_port" => "SMTP پورت", + "email_smtp_timeout" => "SMT Timeout (s)", + "email_smtp_user" => "SMTP نام کاربری", + "enable_avatar" => "", + "enable_avatar_tooltip" => "", + "enable_dropdown_tooltip" => "", + "enable_new_look" => "", + "enable_right_bar" => "", + "enable_right_bar_tooltip" => "", + "enforce_privacy" => "اجرای حریم خصوصی", + "enforce_privacy_tooltip" => "در صورت از بین بردن داده های آنها در صورت حذف داده ها ، از حفظ حریم خصوصی مشتریان محافظت کنید", + "fax" => "نمابر", + "file_perm" => "در مجوزهای پرونده مشکلی وجود دارد ، لطفا این صفحه را تعمیر و بارگذاری مجدد کنید.", + "financial_year" => "شروع سال مالی", + "financial_year_apr" => "اول آوریل", + "financial_year_aug" => "اول اوت", + "financial_year_dec" => "اول دسامبر", + "financial_year_feb" => "اول فوریه", + "financial_year_jan" => "اول ژانویه", + "financial_year_jul" => "اول ژوئیه", + "financial_year_jun" => "اول ژوئن", + "financial_year_mar" => "اول مارس", + "financial_year_may" => "اول ماه مه", + "financial_year_nov" => "اول نوامبر", + "financial_year_oct" => "اول اکتبر", + "financial_year_sep" => "اول سپتامبر", + "floating_labels" => "", + "gcaptcha_enable" => "صفحه ورود کپچا", + "gcaptcha_secret_key" => "کلید مخفی کپچا", + "gcaptcha_secret_key_required" => "کلید مخفی کپچا یک زمینه مورد نیاز است", + "gcaptcha_site_key" => "کلید سایت کپچا", + "gcaptcha_site_key_required" => "کلید سایت کپچا یک زمینه مورد نیاز است", + "gcaptcha_tooltip" => "از صفحه ورود با کپچا محافظت کنید ، روی یک نماد برای یک جفت کلید ای‌پی‌آی کلیک کنید.", + "general" => "عمومی", + "general_configuration" => "پیکربندی عمومی", + "giftcard_number" => "شماره کارت هدیه", + "giftcard_random" => "تولید تصادفی", + "giftcard_series" => "تولید در سریال", + "image_allowed_file_types" => "انواع پرونده مجاز", + "image_max_height_tooltip" => "حداکثر ارتفاع مجاز بارگذاری تصویر در پیکسل ها (px).", + "image_max_size_tooltip" => "حداکثر اندازه مجاز بارگذاری تصویر در کیلوبایت (کیلوبایت).", + "image_max_width_tooltip" => "حداکثر عرض مجاز بارگذاری تصویر در پیکسل ها (px).", + "image_restrictions" => "محدودیتهای آپلود تصویر", + "include_hsn" => "شامل پشتیبانی از کدهای اچ‌اس‌ان", + "info" => "اطلاعات", + "info_configuration" => "اطلاعات فروشگاه", + "input_groups" => "", + "integrations" => "ادغام", + "integrations_configuration" => "ادغام های شخص ثالث", + "invoice" => "صورتحساب", + "invoice_configuration" => "تنظیمات چاپ فاکتور", + "invoice_default_comments" => "نظرات پیش فرض فاکتور", + "invoice_email_message" => "الگوی ایمیل فاکتور", + "invoice_enable" => "فعال کردن صورتحساب", + "invoice_printer" => "چاپگر فاکتور", + "invoice_type" => "نوع فاکتور", + "is_readable" => "قابل خواندن است ، اما مجوزها از 660 بالاتر است.", + "is_writable" => "قابل چاپ است ، اما مجوزها بالاتر از 750 است.", + "item_markup" => "", + "jsprintsetup_required" => "هشدار: این عملکرد تنها در صورتی کار خواهد کرد که افزونه فایرفاکس ج پرینت را نصب کنید. به هر حال ذخیره می شود؟", + "language" => "زبان", + "last_used_invoice_number" => "آخرین فاکتور استفاده شده شماره", + "last_used_quote_number" => "آخرین شماره نقل قول استفاده شده", + "last_used_work_order_number" => "آخرین شماره سفارش کار استفاده شده", + "left" => "ترک کرد", + "license" => "مجوز", + "license_configuration" => "بیانیه مجوز", + "line_sequence" => "دنباله خط", + "lines_per_page" => "خطوط در هر صفحه", + "lines_per_page_number" => "خطوط در هر صفحه باید عددی باشند.", + "lines_per_page_required" => "خطوط در هر صفحه یک زمینه ضروری است", + "locale" => "بومی سازی", + "locale_configuration" => "پیکربندی محلی سازی", + "locale_info" => "اطلاعات پیکربندی محلی سازی", + "location" => "موجودی", + "location_configuration" => "محل سهام", + "location_info" => "اطلاعات پیکربندی موقعیت مکانی", + "login_form" => "", + "logout" => "آیا می خواهید قبل از ورود ، نسخه پشتیبان تهیه کنید؟ برای پشتیبان گیری یا [لغو] برای ورود به سیستم ، روی [اوکی] کلیک کنید", + "mailchimp" => "Mailchimp", + "mailchimp_api_key" => "کلید ای‌پی‌آی میل‌چیمپ", + "mailchimp_configuration" => "پیکربندی میل‌چیمپ", + "mailchimp_key_successfully" => "کلید ای‌پی‌آی معتبر است.", + "mailchimp_key_unsuccessfully" => "کلید ای‌پی‌آی نامعتبر است.", + "mailchimp_lists" => "لیست (های) میل‌چیمپ", + "mailchimp_tooltip" => "بر روی نماد یک کلید ای‌پی‌آی کلیک کنید.", + "message" => "پیام", + "message_configuration" => "پیکربندی پیام", + "msg_msg" => "پیام متنی ذخیره شده", + "msg_msg_placeholder" => "اگر می خواهید از یک پیام کوتاه استفاده کنید ، پیام خود را در اینجا ذخیره کنید ، در غیر این صورت جعبه را خالی بگذارید.", + "msg_pwd" => "گذرواژه SMS-API", + "msg_pwd_required" => "گذرواژه ای‌پی‌آی اس‌ام‌اس یک فیلد ضروری است", + "msg_src" => "شناسه فرستنده ای‌پی‌آی اس‌ام‌اس ", + "msg_src_required" => "شناسه فرستنده ای‌پی‌آی اس‌ام‌اس یک زمینه ضروری است", + "msg_uid" => "نام کاربری ای‌پی‌آی اس‌ام‌اس ", + "msg_uid_required" => "نام کاربری ای‌پی‌آی اس‌ام‌اس یک زمینه ضروری است", + "multi_pack_enabled" => "بسته های چندگانه برای هر مورد", + "no_risk" => "خطرات امنیتی و آسیب پذیری وجود ندارد.", + "none" => "هیچ یک", + "notify_alignment" => "موقعیت یاب اعلان", + "number_format" => "قالب شماره", + "number_locale" => "بومی سازی", + "number_locale_invalid" => "محل ورود نامعتبر است. برای یافتن محلی معتبر ، پیوند را در راهنمای ابزار بررسی کنید.", + "number_locale_required" => "شماره محلی یک زمینه مورد نیاز است.", + "number_locale_tooltip" => "از طریق این لینک محلی مناسب پیدا کنید.", + "os_timezone" => "منطقه زمانی اوسپوس:", + "ospos_info" => "اطلاعات نصب اوسپوس", + "payment_options_order" => "سفارش گزینه های پرداخت", + "perm_risk" => "مجوزهای بالاتر از 750 برای نوشتن و 660 برای خواندن ، این نرم افزار را در معرض خطر قرار می دهد.", + "phone" => "تلفن شرکت", + "phone_required" => "تلفن شرکت یک زمینه ضروری است.", + "print_bottom_margin" => "حاشیه پایین", + "print_bottom_margin_number" => "حاشیه پایین باید یک عدد باشد.", + "print_bottom_margin_required" => "کلید مارجین یک زمینه مورد نیاز است.", + "print_delay_autoreturn" => "تأخیر در فروش تاخیر در فروش", + "print_delay_autoreturn_number" => "تأخیر در فروش تاخیر یک زمینه ضروری است.", + "print_delay_autoreturn_required" => "تأخیر در فروش تاخیر در فروش باید یک عدد باشد.", + "print_footer" => "چاپ پاورقی مرورگر", + "print_header" => "چاپ هدر مرورگر", + "print_left_margin" => "حاشیه چپ", + "print_left_margin_number" => "مارجین چپ باید یک عدد باشد.", + "print_left_margin_required" => "Margin Left یک زمینه مورد نیاز است.", + "print_receipt_check_behaviour" => "کادر تأیید چاپ", + "print_receipt_check_behaviour_always" => "همیشه بررسی شد", + "print_receipt_check_behaviour_last" => "انتخاب گذشته را بخاطر بسپار", + "print_receipt_check_behaviour_never" => "همیشه انتخاب نشده", + "print_right_margin" => "حق حاشیه", + "print_right_margin_number" => "حاشیه سمت راست باید یک عدد باشد.", + "print_right_margin_required" => "مارجین راست یک زمینه ضروری است", + "print_silently" => "نمایش گفتگوی چاپ", + "print_top_margin" => "حاشیه بالا", + "print_top_margin_number" => "حاشیه بالا باید یک عدد باشد.", + "print_top_margin_required" => "مارجین بالا یک زمینه مورد نیاز است.", + "quantity_decimals" => "تعداد اعشار", + "quick_cash_enable" => "", + "quote_default_comments" => "نقل قول های پیش فرض", + "receipt" => "اعلام وصول", + "receipt_category" => "", + "receipt_configuration" => "تنظیمات چاپ دریافت", + "receipt_default" => "پیش فرض", + "receipt_font_size" => "اندازه فونت", + "receipt_font_size_number" => "اندازه قلم باید یک عدد باشد.", + "receipt_font_size_required" => "اندازه قلم یک فیلد مورد نیاز است.", + "receipt_info" => "اطلاعات پیکربندی دریافت", + "receipt_printer" => "چاپگر بلیط", + "receipt_short" => "کوتاه", + "receipt_show_company_name" => "نمایش نام شرکت", + "receipt_show_description" => "نمایش توضیحات", + "receipt_show_serialnumber" => "نمایش شماره سریال", + "receipt_show_tax_ind" => "نمایش شاخص مالیات", + "receipt_show_taxes" => "نمایش مالیات", + "receipt_show_total_discount" => "نمایش تخفیف در کل", + "receipt_template" => "الگوی رسید", + "receiving_calculate_average_price" => "کالای میانگین. قیمت (دريافت)", + "recv_invoice_format" => "قالب فاکتور دریافتی", + "register_mode_default" => "حالت پیش فرض ثبت نام", + "report_an_issue" => "گزارش یک مسئله", + "return_policy_required" => "خط مشی برگشت یک زمینه مورد نیاز است.", + "reward" => "جایزه", + "reward_configuration" => "پیکربندی پاداش", + "right" => "درست", + "sales_invoice_format" => "قالب فاکتور فروش", + "sales_quote_format" => "قالب فروش قیمت", + "saved_successfully" => "پیکربندی ذخیره موفقیت آمیز است.", + "saved_unsuccessfully" => "ذخیره پیکربندی انجام نشد.", + "security_issue" => "هشدار آسیب پذیری امنیتی", + "server_notice" => "لطفاً برای گزارش مسئله از اطلاعات زیر استفاده کنید.", + "service_charge" => "", + "show_due_enable" => "", + "show_office_group" => "نمایش نماد دفتر", + "statistics" => "ارسال آمار", + "statistics_tooltip" => "ارسال آمار برای اهداف توسعه و بهبود ویژگی ها.", + "stock_location" => "موقعیت مکانی سهام", + "stock_location_duplicate" => "موقعیت مکانی سهام باید بی نظیر باشد.", + "stock_location_invalid_chars" => "محل نگهداری سهام نمی تواند حاوی ـ باشد.", + "stock_location_required" => "مکان سهام یک قسمت مورد نیاز است.", + "suggestions_fifth_column" => "", + "suggestions_first_column" => "ستون 1", + "suggestions_fourth_column" => "", + "suggestions_layout" => "طرح بندی پیشنهادات جستجو", + "suggestions_second_column" => "ستون 2", + "suggestions_third_column" => "ستون 3", + "system_conf" => "تنظیم و تنظیم", + "system_info" => "اطلاعات سیستم", + "table" => "جدول", + "table_configuration" => "پیکربندی جدول", + "takings_printer" => "چاپگر رسید", + "tax" => "مالیات", + "tax_category" => "طبقه بندی مالیات", + "tax_category_duplicate" => "دسته مالیاتی وارد شده در حال حاضر وجود دارد.", + "tax_category_invalid_chars" => "دسته مالیاتی وارد شده نامعتبر است.", + "tax_category_required" => "طبقه بندی مالیات لازم است.", + "tax_category_used" => "طبقه بندی مالیات نمی تواند حذف شود زیرا در حال استفاده است.", + "tax_configuration" => "پیکربندی مالیات", + "tax_decimals" => "اعشار مالیاتی", + "tax_id" => "شناسه مالیاتی", + "tax_included" => "با احتساب مالیات", + "theme" => "موضوع", + "theme_preview" => "", + "thousands_separator" => "هزاران نفر", + "timezone" => "منطقه زمانی", + "timezone_error" => "منطقه زمانی اوسپوس با منطقه زمانی محلی شما متفاوت است.", + "top" => "بالا", + "use_destination_based_tax" => "استفاده از مالیات بر مبنای مقصد", + "user_timezone" => "منطقه زمانی محلی:", + "website" => "سایت اینترنتی", + "wholesale_markup" => "", + "work_order_enable" => "پشتیبانی سفارش کار", + "work_order_format" => "قالب سفارش کار", ]; diff --git a/app/Language/fa/Customers.php b/app/Language/fa/Customers.php index 1026debb2..6661452a1 100644 --- a/app/Language/fa/Customers.php +++ b/app/Language/fa/Customers.php @@ -1,56 +1,56 @@ "حساب #", - "account_number_duplicate" => "شماره حساب قبلاً در بانک اطلاعاتی موجود است.", - "available_points" => "امتیازهای موجود", - "available_points_value" => "", - "average" => "متوسط u200bu200bصرف شده", - "avg_discount" => "متوسط u200bu200bتخفیف", - "basic_information" => "اطلاعات", - "cannot_be_deleted" => "نمی توان مشتریهای منتخب را حذف کرد ، یک یا چند مشتری منتخب دارای فروش است.", - "company_name" => "شرکت", - "confirm_delete" => "آیا مطمئن هستید که می خواهید مشتری (های) انتخاب شده را حذف کنید؟", - "confirm_restore" => "آیا مطمئن هستید که می خواهید مشتریان (های) انتخاب شده را بازیابی کنید؟", - "consent" => "رضایت ثبت نام", - "consent_required" => "رضایت ثبت نام یک زمینه ضروری است.", - "csv_import_failed" => "واردات سی‌اس‌وی انجام نشد", - "csv_import_nodata_wrongformat" => "پرونده بارگذاری شده داده ای ندارد یا به طور نادرست قالب بندی شده است.", - "csv_import_partially_failed" => "واردات مشتری با برخی نارسایی ها موفقیت آمیز بود:", - "csv_import_success" => "واردات مشتری موفق شد.", - "customer" => "مشتری", - "date" => "تاریخ", - "discount" => "تخفیف", - "discount_fixed" => "تخفیف ثابت", - "discount_percent" => "تخفیف درصدی", - "discount_type" => "نوع تخفیف", - "email_duplicate" => "آدرس ایمیل در حال حاضر در پایگاه داده موجود است.", - "employee" => "کارمند", - "error_adding_updating" => "افزودن یا به روزرسانی مشتری ناموفق بود.", - "import_items_csv" => "واردات مشتری از سی‌اس‌وی", - "mailchimp_activity_click" => "کلیک بر روی ایمیل", - "mailchimp_activity_lastopen" => "آخرین ایمیل باز", - "mailchimp_activity_open" => "باز کردن ایمیل", - "mailchimp_activity_total" => "ایمیل ارسال شد", - "mailchimp_activity_unopen" => "ایمیل باز نشده", - "mailchimp_email_client" => "مشتری ایمیل", - "mailchimp_info" => "میل‌چیمپ", - "mailchimp_member_rating" => "رتبه بندی", - "mailchimp_status" => "وضعیت", - "mailchimp_vip" => "شخص خیلی مهم", - "max" => "حداکثر هزینه", - "min" => "حداقل. سپری شد", - "new" => "مشتری جدید", - "none_selected" => "شما هیچ مشتری یا مشتری را برای حذف انتخاب نکرده اید.", - "one_or_multiple" => "مشتری (ها)", - "quantity" => "تعداد", - "stats_info" => "آمار", - "successful_adding" => "شما با موفقیت مشتری اضافه کردید", - "successful_deleted" => "شما با موفقیت حذف شده اید", - "successful_updating" => "شما با موفقیت مشتری را به روز کردید", - "tax_code" => "کد مالیاتی", - "tax_id" => "شناسه مالیاتی", - "taxable" => "مشمول مالیات", - "total" => "جمع هزینه", - "update" => "به روز رسانی مشتری", - "rewards_package" => "بسته پاداش", + "account_number" => "حساب #", + "account_number_duplicate" => "شماره حساب قبلاً در بانک اطلاعاتی موجود است.", + "available_points" => "امتیازهای موجود", + "available_points_value" => "", + "average" => "متوسط u200bu200bصرف شده", + "avg_discount" => "متوسط u200bu200bتخفیف", + "basic_information" => "اطلاعات", + "cannot_be_deleted" => "نمی توان مشتریهای منتخب را حذف کرد ، یک یا چند مشتری منتخب دارای فروش است.", + "company_name" => "شرکت", + "confirm_delete" => "آیا مطمئن هستید که می خواهید مشتری (های) انتخاب شده را حذف کنید؟", + "confirm_restore" => "آیا مطمئن هستید که می خواهید مشتریان (های) انتخاب شده را بازیابی کنید؟", + "consent" => "رضایت ثبت نام", + "consent_required" => "رضایت ثبت نام یک زمینه ضروری است.", + "csv_import_failed" => "واردات سی‌اس‌وی انجام نشد", + "csv_import_nodata_wrongformat" => "پرونده بارگذاری شده داده ای ندارد یا به طور نادرست قالب بندی شده است.", + "csv_import_partially_failed" => "واردات مشتری با برخی نارسایی ها موفقیت آمیز بود:", + "csv_import_success" => "واردات مشتری موفق شد.", + "customer" => "مشتری", + "date" => "تاریخ", + "discount" => "تخفیف", + "discount_fixed" => "تخفیف ثابت", + "discount_percent" => "تخفیف درصدی", + "discount_type" => "نوع تخفیف", + "email_duplicate" => "آدرس ایمیل در حال حاضر در پایگاه داده موجود است.", + "employee" => "کارمند", + "error_adding_updating" => "افزودن یا به روزرسانی مشتری ناموفق بود.", + "import_items_csv" => "واردات مشتری از سی‌اس‌وی", + "mailchimp_activity_click" => "کلیک بر روی ایمیل", + "mailchimp_activity_lastopen" => "آخرین ایمیل باز", + "mailchimp_activity_open" => "باز کردن ایمیل", + "mailchimp_activity_total" => "ایمیل ارسال شد", + "mailchimp_activity_unopen" => "ایمیل باز نشده", + "mailchimp_email_client" => "مشتری ایمیل", + "mailchimp_info" => "میل‌چیمپ", + "mailchimp_member_rating" => "رتبه بندی", + "mailchimp_status" => "وضعیت", + "mailchimp_vip" => "شخص خیلی مهم", + "max" => "حداکثر هزینه", + "min" => "حداقل. سپری شد", + "new" => "مشتری جدید", + "none_selected" => "شما هیچ مشتری یا مشتری را برای حذف انتخاب نکرده اید.", + "one_or_multiple" => "مشتری (ها)", + "quantity" => "تعداد", + "stats_info" => "آمار", + "successful_adding" => "شما با موفقیت مشتری اضافه کردید", + "successful_deleted" => "شما با موفقیت حذف شده اید", + "successful_updating" => "شما با موفقیت مشتری را به روز کردید", + "tax_code" => "کد مالیاتی", + "tax_id" => "شناسه مالیاتی", + "taxable" => "مشمول مالیات", + "total" => "جمع هزینه", + "update" => "به روز رسانی مشتری", + "rewards_package" => "بسته پاداش", ]; diff --git a/app/Language/fa/Datepicker.php b/app/Language/fa/Datepicker.php index 09b887374..2e1f48d98 100644 --- a/app/Language/fa/Datepicker.php +++ b/app/Language/fa/Datepicker.php @@ -1,23 +1,23 @@ "همیشه", - "apply" => "درخواست دادن", - "cancel" => "لغو", - "custom" => "سفارشی", - "from" => "از جانب", - "last_30" => "30 روز گذشته", - "last_7" => "آخرین 7 روز", - "last_financial_year" => "آخرین سال مالی", - "last_month" => "ماه گذشته", - "last_year" => "سال گذشته", - "same_month_last_year" => "ماه مشابه سال گذشته", - "same_month_to_same_day_last_year" => "ماه مشابه سال گذشته", - "this_financial_year" => "سال مالی فعلی", - "this_month" => "ماه جاری", - "this_year" => "سال فعلی", - "to" => "به", - "today" => "امروز", - "today_last_year" => "امروز سال گذشته", - "weekstart" => "0", - "yesterday" => "دیروز", + "all_time" => "همیشه", + "apply" => "درخواست دادن", + "cancel" => "لغو", + "custom" => "سفارشی", + "from" => "از جانب", + "last_30" => "30 روز گذشته", + "last_7" => "آخرین 7 روز", + "last_financial_year" => "آخرین سال مالی", + "last_month" => "ماه گذشته", + "last_year" => "سال گذشته", + "same_month_last_year" => "ماه مشابه سال گذشته", + "same_month_to_same_day_last_year" => "ماه مشابه سال گذشته", + "this_financial_year" => "سال مالی فعلی", + "this_month" => "ماه جاری", + "this_year" => "سال فعلی", + "to" => "به", + "today" => "امروز", + "today_last_year" => "امروز سال گذشته", + "weekstart" => "0", + "yesterday" => "دیروز", ]; diff --git a/app/Language/fa/Employees.php b/app/Language/fa/Employees.php index ce796bb19..d1c120ef2 100644 --- a/app/Language/fa/Employees.php +++ b/app/Language/fa/Employees.php @@ -1,44 +1,44 @@ "", - "basic_information" => "اطلاعات", - "cannot_be_deleted" => "حذف کارمند (های) انتخابی امکان پذیر نیست ، یک یا چند مورد از فروش پردازش شده استفاده کرده یا می خواهید حساب خود را حذف کنید.", - "change_employee" => "", - "change_password" => "تغییر رمز عبور", - "clerk" => "", - "commission" => "", - "confirm_delete" => "آیا مطمئن هستید که می خواهید کارمند (های) انتخاب شده را حذف کنید؟", - "confirm_restore" => "آیا مطمئن هستید که می خواهید کارمندان (های) انتخاب شده را بازیابی کنید؟", - "current_password" => "گذرواژه فعلی", - "current_password_invalid" => "گذرواژه فعلی نامعتبر است.", - "employee" => "کارمند", - "error_adding_updating" => "افزودن یا به روزرسانی کارکنان انجام نشد.", - "error_deleting_demo_admin" => "شما نمی توانید کاربر مدیر نسخه ی نمایشی را حذف کنید.", - "error_updating_demo_admin" => "شما نمی توانید کاربر مدیر نسخه ی نمایشی را تغییر دهید.", - "language" => "زبان", - "login_info" => "وارد شدن", - "manager" => "", - "new" => "کارمند جدید", - "none_selected" => "شما هیچ کارمندی را برای حذف انتخاب نکرده اید.", - "one_or_multiple" => "کارمند (ها)", - "password" => "کلمه عبور", - "password_minlength" => "گذرواژه باید حداقل 8 نویسه داشته باشد.", - "password_must_match" => "رمزهای ورود مطابقت ندارند.", - "password_not_must_match" => "گذرواژه فعلی و رمز جدید باید بی نظیر باشند.", - "password_required" => "رمز عبور مورد نیاز است.", - "permission_desc" => "کادرهای زیر را برای دسترسی به ماژولها بررسی کنید.", - "permission_info" => "مجوزها", - "repeat_password" => "رمز عبور دوباره", - "subpermission_required" => "برای هر ماژول حداقل یک کمک هزینه اضافه کنید.", - "successful_adding" => "کارمندان موفق شدند.", - "successful_change_password" => "تغییر رمز عبور موفقیت آمیز است.", - "successful_deleted" => "شما با موفقیت حذف شده اید", - "successful_updating" => "شما با موفقیت کارمند را به روز کردید", - "system_language" => "زبان سیستم", - "unsuccessful_change_password" => "تغییر رمز انجام نشد.", - "update" => "به روزرسانی کارمند", - "username" => "نام کاربری", - "username_duplicate" => "", - "username_minlength" => "نام کاربری باید حداقل 5 کاراکتر داشته باشد.", - "username_required" => "نام کاربری فیلد مورد نیاز است.", + "administrator" => "", + "basic_information" => "اطلاعات", + "cannot_be_deleted" => "حذف کارمند (های) انتخابی امکان پذیر نیست ، یک یا چند مورد از فروش پردازش شده استفاده کرده یا می خواهید حساب خود را حذف کنید.", + "change_employee" => "", + "change_password" => "تغییر رمز عبور", + "clerk" => "", + "commission" => "", + "confirm_delete" => "آیا مطمئن هستید که می خواهید کارمند (های) انتخاب شده را حذف کنید؟", + "confirm_restore" => "آیا مطمئن هستید که می خواهید کارمندان (های) انتخاب شده را بازیابی کنید؟", + "current_password" => "گذرواژه فعلی", + "current_password_invalid" => "گذرواژه فعلی نامعتبر است.", + "employee" => "کارمند", + "error_adding_updating" => "افزودن یا به روزرسانی کارکنان انجام نشد.", + "error_deleting_demo_admin" => "شما نمی توانید کاربر مدیر نسخه ی نمایشی را حذف کنید.", + "error_updating_demo_admin" => "شما نمی توانید کاربر مدیر نسخه ی نمایشی را تغییر دهید.", + "language" => "زبان", + "login_info" => "وارد شدن", + "manager" => "", + "new" => "کارمند جدید", + "none_selected" => "شما هیچ کارمندی را برای حذف انتخاب نکرده اید.", + "one_or_multiple" => "کارمند (ها)", + "password" => "کلمه عبور", + "password_minlength" => "گذرواژه باید حداقل 8 نویسه داشته باشد.", + "password_must_match" => "رمزهای ورود مطابقت ندارند.", + "password_not_must_match" => "گذرواژه فعلی و رمز جدید باید بی نظیر باشند.", + "password_required" => "رمز عبور مورد نیاز است.", + "permission_desc" => "کادرهای زیر را برای دسترسی به ماژولها بررسی کنید.", + "permission_info" => "مجوزها", + "repeat_password" => "رمز عبور دوباره", + "subpermission_required" => "برای هر ماژول حداقل یک کمک هزینه اضافه کنید.", + "successful_adding" => "کارمندان موفق شدند.", + "successful_change_password" => "تغییر رمز عبور موفقیت آمیز است.", + "successful_deleted" => "شما با موفقیت حذف شده اید", + "successful_updating" => "شما با موفقیت کارمند را به روز کردید", + "system_language" => "زبان سیستم", + "unsuccessful_change_password" => "تغییر رمز انجام نشد.", + "update" => "به روزرسانی کارمند", + "username" => "نام کاربری", + "username_duplicate" => "", + "username_minlength" => "نام کاربری باید حداقل 5 کاراکتر داشته باشد.", + "username_required" => "نام کاربری فیلد مورد نیاز است.", ]; diff --git a/app/Language/fa/Enum.php b/app/Language/fa/Enum.php index e6917d8cc..3545f2248 100644 --- a/app/Language/fa/Enum.php +++ b/app/Language/fa/Enum.php @@ -1,10 +1,10 @@ "نیمه پایین", - "half_even" => "نیمه حتی", - "half_five" => "نیمی از پنج", - "half_odd" => "نیمی عجیب", - "half_up" => "نیمه بالا", - "round_down" => "دور پایین", - "round_up" => "دور بالا", + "half_down" => "نیمه پایین", + "half_even" => "نیمه حتی", + "half_five" => "نیمی از پنج", + "half_odd" => "نیمی عجیب", + "half_up" => "نیمه بالا", + "round_down" => "دور پایین", + "round_up" => "دور بالا", ]; diff --git a/app/Language/fa/Error.php b/app/Language/fa/Error.php index b693a7d54..b1bb13e25 100644 --- a/app/Language/fa/Error.php +++ b/app/Language/fa/Error.php @@ -1,5 +1,5 @@ "شما اجازه دسترسی به ماژول به نام خود را ندارید", - "unknown" => "خطای غیر منتظره", + "no_permission_module" => "شما اجازه دسترسی به ماژول به نام خود را ندارید", + "unknown" => "خطای غیر منتظره", ]; diff --git a/app/Language/fa/Expenses.php b/app/Language/fa/Expenses.php index 46bb238e4..1da84e39a 100644 --- a/app/Language/fa/Expenses.php +++ b/app/Language/fa/Expenses.php @@ -1,50 +1,50 @@ "اضافه کردن هزینه", - "amount" => "میزان", - "amount_number" => "مقدار باید یک عدد باشد", - "amount_required" => "مقدار مورد نیاز", - "by_category" => "دسته بندی", - "cannot_be_deleted" => "نمی توان هزینه های رده را حذف کرد", - "cash" => "نقدی", - "cash_filter" => "نقدی", - "categories_name" => "دسته بندی", - "category_required" => "دسته یک فیلد مورد نیاز است", - "check" => "بررسی", - "check_filter" => "بررسی", - "confirm_delete" => "آیا مطمئن هستید که می خواهید هزینه انتخاب شده را حذف کنید؟", - "confirm_restore" => "آیا مطمئن هستید که می خواهید هزینه های (های) انتخاب شده را بازیابی کنید؟", - "credit" => "کارت اعتباری", - "credit_filter" => "کارت اعتباری", - "date" => "تاریخ", - "date_number" => "تاریخ باید شماره باشد", - "date_required" => "تاریخ یک زمینه ضروری است", - "debit" => "کارت اعتباری", - "debit_filter" => "کارت اعتباری", - "description" => "شرح", - "due" => "ناشی از", - "due_filter" => "ناشی از", - "employee" => "خلق شده توسط", - "error_adding_updating" => "خطا در افزودن / به روزرسانی هزینه", - "expense_id" => "شناسه", - "expenses_employee" => "کارمند", - "info" => "اطلاعات هزینه", - "ip_address" => "", - "is_deleted" => "حذف شده", - "name_required" => "نام هزینه لازم است", - "new" => "هزینه جدید", - "new_supplier" => "", - "no_expenses_to_display" => "هیچ هزینه ای برای نمایش وجود ندارد", - "none_selected" => "شما هیچ هزینه ای را انتخاب نکرده اید", - "one_or_multiple" => "هزینه (ها)", - "payment" => "نوع پرداخت", - "start_typing_supplier_name" => "شروع به تایپ کردن نام ارائه دهنده ...", - "successful_adding" => "افزودن هزینه موفقیت آمیز است", - "successful_deleted" => "حذف موفقیت آمیز", - "successful_updating" => "هزینه به روزرسانی موفقیت آمیز", - "supplier_name" => "تامین کننده", - "supplier_tax_code" => "کد مالیاتی", - "tax_amount" => "مالیات", - "tax_amount_number" => "", - "update" => "به روز رسانی هزینه", + "add_item" => "اضافه کردن هزینه", + "amount" => "میزان", + "amount_number" => "مقدار باید یک عدد باشد", + "amount_required" => "مقدار مورد نیاز", + "by_category" => "دسته بندی", + "cannot_be_deleted" => "نمی توان هزینه های رده را حذف کرد", + "cash" => "نقدی", + "cash_filter" => "نقدی", + "categories_name" => "دسته بندی", + "category_required" => "دسته یک فیلد مورد نیاز است", + "check" => "بررسی", + "check_filter" => "بررسی", + "confirm_delete" => "آیا مطمئن هستید که می خواهید هزینه انتخاب شده را حذف کنید؟", + "confirm_restore" => "آیا مطمئن هستید که می خواهید هزینه های (های) انتخاب شده را بازیابی کنید؟", + "credit" => "کارت اعتباری", + "credit_filter" => "کارت اعتباری", + "date" => "تاریخ", + "date_number" => "تاریخ باید شماره باشد", + "date_required" => "تاریخ یک زمینه ضروری است", + "debit" => "کارت اعتباری", + "debit_filter" => "کارت اعتباری", + "description" => "شرح", + "due" => "ناشی از", + "due_filter" => "ناشی از", + "employee" => "خلق شده توسط", + "error_adding_updating" => "خطا در افزودن / به روزرسانی هزینه", + "expense_id" => "شناسه", + "expenses_employee" => "کارمند", + "info" => "اطلاعات هزینه", + "ip_address" => "", + "is_deleted" => "حذف شده", + "name_required" => "نام هزینه لازم است", + "new" => "هزینه جدید", + "new_supplier" => "", + "no_expenses_to_display" => "هیچ هزینه ای برای نمایش وجود ندارد", + "none_selected" => "شما هیچ هزینه ای را انتخاب نکرده اید", + "one_or_multiple" => "هزینه (ها)", + "payment" => "نوع پرداخت", + "start_typing_supplier_name" => "شروع به تایپ کردن نام ارائه دهنده ...", + "successful_adding" => "افزودن هزینه موفقیت آمیز است", + "successful_deleted" => "حذف موفقیت آمیز", + "successful_updating" => "هزینه به روزرسانی موفقیت آمیز", + "supplier_name" => "تامین کننده", + "supplier_tax_code" => "کد مالیاتی", + "tax_amount" => "مالیات", + "tax_amount_number" => "", + "update" => "به روز رسانی هزینه", ]; diff --git a/app/Language/fa/Expenses_categories.php b/app/Language/fa/Expenses_categories.php index 24c912455..5ba3963eb 100644 --- a/app/Language/fa/Expenses_categories.php +++ b/app/Language/fa/Expenses_categories.php @@ -1,22 +1,22 @@ "نام رده هزینه لازم است", - "add_item" => "افزودن دسته", - "cannot_be_deleted" => "نمی توان هزینه های رده را حذف کرد", - "category_id" => "شناسه", - "confirm_delete" => "آیا مطمئن هستید که می خواهید طبقه بندی انتخاب شده را حذف کنید؟", - "confirm_restore" => "آیا مطمئن هستید که می خواهید دسته هزینه های انتخاب شده را بازیابی کنید؟", - "description" => "توضیحات رده", - "error_adding_updating" => "خطا در افزودن / به روزرسانی دسته بندی هزینه", - "info" => "اطلاعات هزینه طبقه بندی", - "name" => "نام دسته", - "new" => "دسته بندی جدید", - "no_expenses_categories_to_display" => "هیچ گروهی برای نمایش", - "none_selected" => "شما هیچ هزینه رده ای را انتخاب نکرده اید", - "one_or_multiple" => "هزینه طبقه بندی", - "quantity" => "تعداد", - "successful_adding" => "طبقه بندی موفقیت افزوده موفقیت آمیز است", - "successful_deleted" => "حذف دسته موفقیت آمیز", - "successful_updating" => "به روزرسانی طبقه بندی موفقیت آمیز", - "update" => "رده به روز رسانی", + "category_name_required" => "نام رده هزینه لازم است", + "add_item" => "افزودن دسته", + "cannot_be_deleted" => "نمی توان هزینه های رده را حذف کرد", + "category_id" => "شناسه", + "confirm_delete" => "آیا مطمئن هستید که می خواهید طبقه بندی انتخاب شده را حذف کنید؟", + "confirm_restore" => "آیا مطمئن هستید که می خواهید دسته هزینه های انتخاب شده را بازیابی کنید؟", + "description" => "توضیحات رده", + "error_adding_updating" => "خطا در افزودن / به روزرسانی دسته بندی هزینه", + "info" => "اطلاعات هزینه طبقه بندی", + "name" => "نام دسته", + "new" => "دسته بندی جدید", + "no_expenses_categories_to_display" => "هیچ گروهی برای نمایش", + "none_selected" => "شما هیچ هزینه رده ای را انتخاب نکرده اید", + "one_or_multiple" => "هزینه طبقه بندی", + "quantity" => "تعداد", + "successful_adding" => "طبقه بندی موفقیت افزوده موفقیت آمیز است", + "successful_deleted" => "حذف دسته موفقیت آمیز", + "successful_updating" => "به روزرسانی طبقه بندی موفقیت آمیز", + "update" => "رده به روز رسانی", ]; diff --git a/app/Language/fa/Giftcards.php b/app/Language/fa/Giftcards.php index fe86f256b..4be6d8c4f 100644 --- a/app/Language/fa/Giftcards.php +++ b/app/Language/fa/Giftcards.php @@ -1,71 +1,71 @@ "موجودی برای اضافه یا تفریق.", - "allow_alt_description" => "اجازه توضیحات جایگزین", - "bulk_edit" => "ویرایش فله", - "cannot_be_deleted" => "نمی توان کارت (های) هدیه انتخاب شده را حذف کرد ، یک یا چند کارت هدیه منتخب دارای فروش است.", - "cannot_find_giftcard" => "کارت هدیه یافت نشد.", - "cannot_use" => "کارت هدیه{0} برای این فروش قابل استفاده نیست: مشتری نامعتبر است.", - "card_value" => "مقدار", - "category" => "دسته بندی", - "change_all_to_allow_alt_desc" => "اجازه دهید توضیحات جایگزین برای همه.", - "change_all_to_not_allow_allow_desc" => "توضیحات متناوب را برای همه مجاز نکنید.", - "change_all_to_serialized" => "تغییر همه به صورت سریالی", - "change_all_to_unserialized" => "تغییر همه به غیر کاربردی", - "confirm_bulk_edit" => "آیا مطمئن هستید که می خواهید کارت (های) هدیه انتخاب شده را ویرایش کنید؟", - "confirm_delete" => "آیا مطمئن هستید که می خواهید کارت (های) هدیه انتخاب شده را حذف کنید؟", - "confirm_restore" => "آیا مطمئن هستید که می خواهید کارت (های) هدیه انتخاب شده را بازیابی کنید؟", - "cost_price" => "قیمت عمده فروشی", - "count" => "به روزرسانی موجودی", - "csv_import_failed" => "واردات سی‌اس‌وی انجام نشد.", - "current_quantity" => "مقدار فعلی", - "description" => "شرح", - "details_count" => "جزئیات شمارش موجودی", - "do_nothing" => "هیچ کاری نکن", - "edit_fields_you_want_to_update" => "زمینه های دلخواه را برای کارت های هدیه انتخاب شده ویرایش کنید.", - "edit_multiple_giftcards" => "ویرایش چندین کارت هدیه.", - "error_adding_updating" => "افزودن یا به روزرسانی کارت هدیه انجام نشد.", - "error_updating_multiple" => "به روزرسانی کارت (های) هدیه انجام نشد.", - "generate_barcodes" => "تولید بارکد", - "giftcard" => "کارت هدیه", - "giftcard_number" => "شماره کارت هدیه", - "info_provided_by" => "اطلاعات ارائه شده توسط", - "inventory_comments" => "نظرات", - "is_serialized" => "کارت هدیه دارای شماره سریال", - "low_inventory_giftcards" => "کارتهای هدیه موجودی کم", - "manually_editing_of_quantity" => "ویرایش دستی مقدار", - "must_select_giftcard_for_barcode" => "برای تولید بارکد شما باید حداقل یک (1) کارت هدیه را انتخاب کنید.", - "new" => "کارت هدیه جدید", - "no_description_giftcards" => "کارت هدیه بدون شرح", - "no_giftcards_to_display" => "هیچ کارت هدیه ای برای نمایش وجود ندارد.", - "none" => "هیچ یک", - "none_selected" => "هیچ کارت هدیه ای برای ویرایش انتخاب نشده است.", - "number" => "شماره کارت هدیه باید یک عدد باشد.", - "number_information" => "شماره کارت هدیه", - "number_required" => "شماره کارت هدیه فیلد مورد نیاز است.", - "one_or_multiple" => "کارت هدیه)", - "person_id" => "مشتری", - "quantity" => "تعداد", - "quantity_required" => "مقدار یک فیلد ضروری است. لطفاً برای لغو (X) را ببندید.", - "remaining_balance" => "کارت هدیه{0} ارزش باقی مانده{1} است!", - "reorder_level" => "سطح سفارش مجدد", - "retrive_giftcard_info" => "بازیابی اطلاعات کارت هدیه", - "sales_tax_1" => "مالیات بر فروش", - "sales_tax_2" => "مالیات بر فروش 2", - "serialized_giftcards" => "کارتهای هدیه سریال", - "successful_adding" => "شما کارت هدیه را با موفقیت اضافه کردید", - "successful_bulk_edit" => "شما کارت های هدیه انتخاب شده را با موفقیت به روز کرده اید", - "successful_deleted" => "شما با موفقیت حذف شده اید", - "successful_updating" => "شما کارت هدیه را با موفقیت به روز کرده اید", - "supplier" => "تامین کننده", - "tax_1" => "مالیات 1", - "tax_2" => "مالیات 2", - "tax_percent" => "درصد مالیات", - "tax_percents" => "درصد (مالیات) مالیات", - "unit_price" => "ارزش خرده فروشی", - "upc_database" => "بانک اطلاعات بارکد", - "update" => "به روزرسانی کارت هدیه", - "use_inventory_menu" => "استفاده از فهرست موجودی", - "value" => "ارزش کارت هدیه باید یک عدد باشد.", - "value_required" => "ارزش کارت هدیه یک قسمت مورد نیاز است.", + "add_minus" => "موجودی برای اضافه یا تفریق.", + "allow_alt_description" => "اجازه توضیحات جایگزین", + "bulk_edit" => "ویرایش فله", + "cannot_be_deleted" => "نمی توان کارت (های) هدیه انتخاب شده را حذف کرد ، یک یا چند کارت هدیه منتخب دارای فروش است.", + "cannot_find_giftcard" => "کارت هدیه یافت نشد.", + "cannot_use" => "کارت هدیه{0} برای این فروش قابل استفاده نیست: مشتری نامعتبر است.", + "card_value" => "مقدار", + "category" => "دسته بندی", + "change_all_to_allow_alt_desc" => "اجازه دهید توضیحات جایگزین برای همه.", + "change_all_to_not_allow_allow_desc" => "توضیحات متناوب را برای همه مجاز نکنید.", + "change_all_to_serialized" => "تغییر همه به صورت سریالی", + "change_all_to_unserialized" => "تغییر همه به غیر کاربردی", + "confirm_bulk_edit" => "آیا مطمئن هستید که می خواهید کارت (های) هدیه انتخاب شده را ویرایش کنید؟", + "confirm_delete" => "آیا مطمئن هستید که می خواهید کارت (های) هدیه انتخاب شده را حذف کنید؟", + "confirm_restore" => "آیا مطمئن هستید که می خواهید کارت (های) هدیه انتخاب شده را بازیابی کنید؟", + "cost_price" => "قیمت عمده فروشی", + "count" => "به روزرسانی موجودی", + "csv_import_failed" => "واردات سی‌اس‌وی انجام نشد.", + "current_quantity" => "مقدار فعلی", + "description" => "شرح", + "details_count" => "جزئیات شمارش موجودی", + "do_nothing" => "هیچ کاری نکن", + "edit_fields_you_want_to_update" => "زمینه های دلخواه را برای کارت های هدیه انتخاب شده ویرایش کنید.", + "edit_multiple_giftcards" => "ویرایش چندین کارت هدیه.", + "error_adding_updating" => "افزودن یا به روزرسانی کارت هدیه انجام نشد.", + "error_updating_multiple" => "به روزرسانی کارت (های) هدیه انجام نشد.", + "generate_barcodes" => "تولید بارکد", + "giftcard" => "کارت هدیه", + "giftcard_number" => "شماره کارت هدیه", + "info_provided_by" => "اطلاعات ارائه شده توسط", + "inventory_comments" => "نظرات", + "is_serialized" => "کارت هدیه دارای شماره سریال", + "low_inventory_giftcards" => "کارتهای هدیه موجودی کم", + "manually_editing_of_quantity" => "ویرایش دستی مقدار", + "must_select_giftcard_for_barcode" => "برای تولید بارکد شما باید حداقل یک (1) کارت هدیه را انتخاب کنید.", + "new" => "کارت هدیه جدید", + "no_description_giftcards" => "کارت هدیه بدون شرح", + "no_giftcards_to_display" => "هیچ کارت هدیه ای برای نمایش وجود ندارد.", + "none" => "هیچ یک", + "none_selected" => "هیچ کارت هدیه ای برای ویرایش انتخاب نشده است.", + "number" => "شماره کارت هدیه باید یک عدد باشد.", + "number_information" => "شماره کارت هدیه", + "number_required" => "شماره کارت هدیه فیلد مورد نیاز است.", + "one_or_multiple" => "کارت هدیه)", + "person_id" => "مشتری", + "quantity" => "تعداد", + "quantity_required" => "مقدار یک فیلد ضروری است. لطفاً برای لغو (X) را ببندید.", + "remaining_balance" => "کارت هدیه{0} ارزش باقی مانده{1} است!", + "reorder_level" => "سطح سفارش مجدد", + "retrive_giftcard_info" => "بازیابی اطلاعات کارت هدیه", + "sales_tax_1" => "مالیات بر فروش", + "sales_tax_2" => "مالیات بر فروش 2", + "serialized_giftcards" => "کارتهای هدیه سریال", + "successful_adding" => "شما کارت هدیه را با موفقیت اضافه کردید", + "successful_bulk_edit" => "شما کارت های هدیه انتخاب شده را با موفقیت به روز کرده اید", + "successful_deleted" => "شما با موفقیت حذف شده اید", + "successful_updating" => "شما کارت هدیه را با موفقیت به روز کرده اید", + "supplier" => "تامین کننده", + "tax_1" => "مالیات 1", + "tax_2" => "مالیات 2", + "tax_percent" => "درصد مالیات", + "tax_percents" => "درصد (مالیات) مالیات", + "unit_price" => "ارزش خرده فروشی", + "upc_database" => "بانک اطلاعات بارکد", + "update" => "به روزرسانی کارت هدیه", + "use_inventory_menu" => "استفاده از فهرست موجودی", + "value" => "ارزش کارت هدیه باید یک عدد باشد.", + "value_required" => "ارزش کارت هدیه یک قسمت مورد نیاز است.", ]; diff --git a/app/Language/fa/Item_kits.php b/app/Language/fa/Item_kits.php index 43697883c..67a4ad4f1 100644 --- a/app/Language/fa/Item_kits.php +++ b/app/Language/fa/Item_kits.php @@ -1,41 +1,41 @@ "این مورد را اضافه کنید", - "all" => "همه", - "cannot_be_deleted" => "حذف کیت آیتم انجام نشد.", - "confirm_delete" => "آیا مطمئن هستید که می خواهید کیت (های) آیتم انتخاب شده را حذف کنید؟", - "confirm_restore" => "آیا مطمئن هستید که می خواهید کیت (های) آیتم انتخاب شده را بازیابی کنید؟", - "description" => "توضیحات کیت مورد", - "discount" => "تخفیف", - "discount_fixed" => "تخفیف ثابت", - "discount_percent" => "درصد تخفیف", - "discount_type" => "نوع تخفیف", - "error_adding_updating" => "افزودن یا به روزرسانی کیت موردی انجام نشد.", - "find_kit_item" => "مورد کیت", - "info" => "اطلاعات کیت مورد", - "item" => "مورد", - "item_kit_number" => "", - "item_kit_number_duplicate" => "", - "item_number" => "", - "item_number_duplicate" => "", - "items" => "موارد", - "kit" => "شناسه کیت", - "kit_and_components" => "کیت و قطعات", - "kit_and_stock" => "کیت و سهام", - "kit_only" => "فقط کیت", - "name" => "نام کیت مورد", - "new" => "کیت مورد جدید", - "no_item_kits_to_display" => "هیچ کیت موردی برای نمایش ندارد.", - "none_selected" => "شما هیچ کیت مورد را انتخاب نکرده اید.", - "one_or_multiple" => "کیت اقلام (ها)", - "price_option" => "گزینه قیمت", - "priced_only" => "فقط قیمت", - "print_option" => "گزینه چاپ", - "quantity" => "تعداد", - "sequence" => "توالی", - "successful_adding" => "شما کیت مورد را با موفقیت اضافه کردید", - "successful_deleted" => "شما با موفقیت حذف شده اید", - "successful_updating" => "شما کیت مورد را با موفقیت به روز کردید", - "unit_price" => "", - "update" => "به روزرسانی کیت مورد", + "add_item" => "این مورد را اضافه کنید", + "all" => "همه", + "cannot_be_deleted" => "حذف کیت آیتم انجام نشد.", + "confirm_delete" => "آیا مطمئن هستید که می خواهید کیت (های) آیتم انتخاب شده را حذف کنید؟", + "confirm_restore" => "آیا مطمئن هستید که می خواهید کیت (های) آیتم انتخاب شده را بازیابی کنید؟", + "description" => "توضیحات کیت مورد", + "discount" => "تخفیف", + "discount_fixed" => "تخفیف ثابت", + "discount_percent" => "درصد تخفیف", + "discount_type" => "نوع تخفیف", + "error_adding_updating" => "افزودن یا به روزرسانی کیت موردی انجام نشد.", + "find_kit_item" => "مورد کیت", + "info" => "اطلاعات کیت مورد", + "item" => "مورد", + "item_kit_number" => "", + "item_kit_number_duplicate" => "", + "item_number" => "", + "item_number_duplicate" => "", + "items" => "موارد", + "kit" => "شناسه کیت", + "kit_and_components" => "کیت و قطعات", + "kit_and_stock" => "کیت و سهام", + "kit_only" => "فقط کیت", + "name" => "نام کیت مورد", + "new" => "کیت مورد جدید", + "no_item_kits_to_display" => "هیچ کیت موردی برای نمایش ندارد.", + "none_selected" => "شما هیچ کیت مورد را انتخاب نکرده اید.", + "one_or_multiple" => "کیت اقلام (ها)", + "price_option" => "گزینه قیمت", + "priced_only" => "فقط قیمت", + "print_option" => "گزینه چاپ", + "quantity" => "تعداد", + "sequence" => "توالی", + "successful_adding" => "شما کیت مورد را با موفقیت اضافه کردید", + "successful_deleted" => "شما با موفقیت حذف شده اید", + "successful_updating" => "شما کیت مورد را با موفقیت به روز کردید", + "unit_price" => "", + "update" => "به روزرسانی کیت مورد", ]; diff --git a/app/Language/fa/Items.php b/app/Language/fa/Items.php index e7210cbe3..e5861d5db 100644 --- a/app/Language/fa/Items.php +++ b/app/Language/fa/Items.php @@ -1,120 +1,120 @@ "موجودی برای اضافه یا تفریق.", - "allow_alt_description" => "اجازه توضیحات جایگزین", - "amount_entry" => "مقدار ورود", - "bulk_edit" => "ویرایش فله", - "buy_price_required" => "قیمت خرید فیلد مورد نیاز است.", - "cannot_be_deleted" => "نمی توان آیتم های انتخابی را حذف کرد ، یک یا چند مورد انتخاب شده فروش دارند.", - "cannot_find_item" => "مورد پیدا نشد.", - "categories" => "", - "category" => "دسته بندی", - "category_new" => "", - "category_required" => "دسته بندی یک فیلد ضروری است.", - "change_all_to_allow_alt_desc" => "اجازه دهید توضیحات جایگزین برای همه مجاز باشد.", - "change_all_to_not_allow_allow_desc" => "اجازه دهید توضیحات جایگزین برای همه مجاز نباشد.", - "change_all_to_serialized" => "تغییر همه به سریال شده", - "change_all_to_unserialized" => "تغییر همه به غیرسیاسی", - "change_image" => "تغییر تصویر", - "confirm_bulk_edit" => "آیا مطمئن هستید که می خواهید موارد (های) انتخاب شده را ویرایش کنید؟", - "confirm_bulk_edit_wipe_taxes" => "تمام اطلاعات مربوط به مالیات مورد جایگزین خواهد شد.", - "confirm_delete" => "آیا مطمئن هستید که می خواهید موارد (های) انتخاب شده را حذف کنید؟", - "confirm_restore" => "آیا مطمئن هستید که می خواهید موارد (های) انتخاب شده را بازیابی کنید؟", - "cost_price" => "قیمت عمده فروشی", - "cost_price_number" => "قیمت عمده فروشی باید یک عدد باشد.", - "cost_price_required" => "قیمت عمده فروشی یک زمینه ضروری است.", - "count" => "به روزرسانی موجودی", - "csv_import_failed" => "واردات سی‌اس‌وی انجام نشد", - "csv_import_nodata_wrongformat" => "پرونده سی‌اس‌وی آپلود شده داده ای ندارد یا به طور نادرست قالب بندی شده است.", - "csv_import_partially_failed" => "در خط (ها){0} شکست واردات کالا وجود دارد:{1}. هیچ سطر وارد نشده است.", - "csv_import_success" => "وارد کردن سی‌اس‌وی مورد موفقیت آمیز است.", - "current_quantity" => "مقدار فعلی", - "default_pack_name" => "هر یک", - "description" => "شرح", - "details_count" => "جزئیات شمارش موجودی", - "do_nothing" => "هیچ کاری نکن", - "edit" => "", - "edit_fields_you_want_to_update" => "زمینه های مورد نظر را برای موارد (های) انتخاب شده ویرایش کنید.", - "edit_multiple_items" => "ویرایش موارد متعدد", - "empty_upc_items" => "موارد خالی بارکد", - "error_adding_updating" => "خطا در افزودن / به روزرسانی مورد", - "error_updating_multiple" => "خطا در به روزرسانی موارد", - "generate_barcodes" => "تولید بارکد", - "hsn_code" => "نامگذاری سیستم هماهنگ", - "image" => "آواتار", - "import_items_csv" => "وارد کردن مورد از سی‌اس‌وی", - "info_provided_by" => "اطلاعات ارائه شده توسط", - "inventory" => "فهرست", - "inventory_CSV_import_quantity" => "مقدار وارد شده از سی‌اس‌وی", - "inventory_comments" => "نظرات", - "inventory_data_tracking" => "ردیابی داده های موجودی", - "inventory_date" => "تاریخ", - "inventory_employee" => "کارمند", - "inventory_in_out_quantity" => "مقدار داخل / بیرون", - "inventory_remarks" => "ملاحظات", - "is_deleted" => "حذف شده", - "is_printed" => "", - "is_serialized" => "مورد دارای شماره سریال است", - "item" => "مورد", - "item_id" => "", - "item_number" => "بارکد", - "item_number_duplicate" => "شماره مورد در بانک اطلاعاتی موجود است.", - "kit" => "کیت", - "location" => "محل", - "low_inventory_items" => "موجودی غیر از سهام", - "low_sell_item" => "کالای کم فروش", - "manually_editing_of_quantity" => "ویرایش دستی مقدار", - "markup" => "", - "name" => "نام مورد", - "name_required" => "نام مورد یک فیلد ضروری است.", - "new" => "گزینه جدید", - "no_description_items" => "بدون توضیحات", - "no_items_to_display" => "هیچ موردی برای نمایش وجود ندارد.", - "none" => "هیچ یک", - "none_selected" => "شما هیچ موردی را برای ویرایش انتخاب نکرده اید", - "nonstock" => "غیر سهامدار", - "number_information" => "شماره مورد", - "number_required" => "بارکد یک فیلد مورد نیاز است.", - "one_or_multiple" => "موارد)", - "pack_name" => "نام بسته", - "qty_per_pack" => "مقدار در هر بسته", - "quantity" => "تعداد", - "quantity_number" => "تعداد باید یک عدد باشد.", - "quantity_required" => "مقدار یک زمینه مورد نیاز است.", - "receiving_quantity" => "دریافت مقدار", - "remove_image" => "حذف تصویر", - "reorder_level" => "سطح سفارش مجدد", - "reorder_level_number" => "سطح مرتب سازی باید یک عدد باشد.", - "reorder_level_required" => "سطح تنظیم مجدد یک زمینه مورد نیاز است.", - "retrive_item_info" => "بازیابی اطلاعات مورد", - "sales_tax_1" => "مالیات بر فروش", - "sales_tax_2" => "مالیات بر فروش 2", - "search_attributes" => "ویژگی های جستجو", - "select_image" => "تصویر را انتخاب کنید", - "serialized_items" => "موارد سریال", - "standard" => "استاندارد", - "stock" => "موجودی", - "stock_location" => "موقعیت مکانی سهام", - "stock_type" => "نوع سهام", - "successful_adding" => "شما مورد را با موفقیت اضافه کردید", - "successful_bulk_edit" => "شما مورد (های) انتخاب شده را با موفقیت به روز کردید", - "successful_deleted" => "شما با موفقیت حذف شده اید", - "successful_updating" => "شما مورد را با موفقیت به روز کردید", - "supplier" => "تامین کننده", - "tax_1" => "مالیات 1", - "tax_2" => "مالیات 2", - "tax_3" => "", - "tax_category" => "طبقه بندی مالیات", - "tax_percent" => "", - "tax_percent_number" => "درصد مالیات باید عددی باشد", - "tax_percent_required" => "درصد مالیات یک زمینه مورد نیاز است.", - "tax_percents" => "درصد (مالیات) مالیات", - "temp" => "موقت", - "type" => "نوع آیتم", - "unit_price" => "قیمت خرده فروشی", - "unit_price_number" => "قیمت واحد باید یک عدد باشد.", - "unit_price_required" => "قیمت خرده فروشی یک زمینه ضروری است.", - "upc_database" => "بانک اطلاعات بارکد", - "update" => "به روز کردن مورد", - "use_inventory_menu" => "استفاده از فهرست موجودی", + "add_minus" => "موجودی برای اضافه یا تفریق.", + "allow_alt_description" => "اجازه توضیحات جایگزین", + "amount_entry" => "مقدار ورود", + "bulk_edit" => "ویرایش فله", + "buy_price_required" => "قیمت خرید فیلد مورد نیاز است.", + "cannot_be_deleted" => "نمی توان آیتم های انتخابی را حذف کرد ، یک یا چند مورد انتخاب شده فروش دارند.", + "cannot_find_item" => "مورد پیدا نشد.", + "categories" => "", + "category" => "دسته بندی", + "category_new" => "", + "category_required" => "دسته بندی یک فیلد ضروری است.", + "change_all_to_allow_alt_desc" => "اجازه دهید توضیحات جایگزین برای همه مجاز باشد.", + "change_all_to_not_allow_allow_desc" => "اجازه دهید توضیحات جایگزین برای همه مجاز نباشد.", + "change_all_to_serialized" => "تغییر همه به سریال شده", + "change_all_to_unserialized" => "تغییر همه به غیرسیاسی", + "change_image" => "تغییر تصویر", + "confirm_bulk_edit" => "آیا مطمئن هستید که می خواهید موارد (های) انتخاب شده را ویرایش کنید؟", + "confirm_bulk_edit_wipe_taxes" => "تمام اطلاعات مربوط به مالیات مورد جایگزین خواهد شد.", + "confirm_delete" => "آیا مطمئن هستید که می خواهید موارد (های) انتخاب شده را حذف کنید؟", + "confirm_restore" => "آیا مطمئن هستید که می خواهید موارد (های) انتخاب شده را بازیابی کنید؟", + "cost_price" => "قیمت عمده فروشی", + "cost_price_number" => "قیمت عمده فروشی باید یک عدد باشد.", + "cost_price_required" => "قیمت عمده فروشی یک زمینه ضروری است.", + "count" => "به روزرسانی موجودی", + "csv_import_failed" => "واردات سی‌اس‌وی انجام نشد", + "csv_import_nodata_wrongformat" => "پرونده سی‌اس‌وی آپلود شده داده ای ندارد یا به طور نادرست قالب بندی شده است.", + "csv_import_partially_failed" => "در خط (ها){0} شکست واردات کالا وجود دارد:{1}. هیچ سطر وارد نشده است.", + "csv_import_success" => "وارد کردن سی‌اس‌وی مورد موفقیت آمیز است.", + "current_quantity" => "مقدار فعلی", + "default_pack_name" => "هر یک", + "description" => "شرح", + "details_count" => "جزئیات شمارش موجودی", + "do_nothing" => "هیچ کاری نکن", + "edit" => "", + "edit_fields_you_want_to_update" => "زمینه های مورد نظر را برای موارد (های) انتخاب شده ویرایش کنید.", + "edit_multiple_items" => "ویرایش موارد متعدد", + "empty_upc_items" => "موارد خالی بارکد", + "error_adding_updating" => "خطا در افزودن / به روزرسانی مورد", + "error_updating_multiple" => "خطا در به روزرسانی موارد", + "generate_barcodes" => "تولید بارکد", + "hsn_code" => "نامگذاری سیستم هماهنگ", + "image" => "آواتار", + "import_items_csv" => "وارد کردن مورد از سی‌اس‌وی", + "info_provided_by" => "اطلاعات ارائه شده توسط", + "inventory" => "فهرست", + "inventory_CSV_import_quantity" => "مقدار وارد شده از سی‌اس‌وی", + "inventory_comments" => "نظرات", + "inventory_data_tracking" => "ردیابی داده های موجودی", + "inventory_date" => "تاریخ", + "inventory_employee" => "کارمند", + "inventory_in_out_quantity" => "مقدار داخل / بیرون", + "inventory_remarks" => "ملاحظات", + "is_deleted" => "حذف شده", + "is_printed" => "", + "is_serialized" => "مورد دارای شماره سریال است", + "item" => "مورد", + "item_id" => "", + "item_number" => "بارکد", + "item_number_duplicate" => "شماره مورد در بانک اطلاعاتی موجود است.", + "kit" => "کیت", + "location" => "محل", + "low_inventory_items" => "موجودی غیر از سهام", + "low_sell_item" => "کالای کم فروش", + "manually_editing_of_quantity" => "ویرایش دستی مقدار", + "markup" => "", + "name" => "نام مورد", + "name_required" => "نام مورد یک فیلد ضروری است.", + "new" => "گزینه جدید", + "no_description_items" => "بدون توضیحات", + "no_items_to_display" => "هیچ موردی برای نمایش وجود ندارد.", + "none" => "هیچ یک", + "none_selected" => "شما هیچ موردی را برای ویرایش انتخاب نکرده اید", + "nonstock" => "غیر سهامدار", + "number_information" => "شماره مورد", + "number_required" => "بارکد یک فیلد مورد نیاز است.", + "one_or_multiple" => "موارد)", + "pack_name" => "نام بسته", + "qty_per_pack" => "مقدار در هر بسته", + "quantity" => "تعداد", + "quantity_number" => "تعداد باید یک عدد باشد.", + "quantity_required" => "مقدار یک زمینه مورد نیاز است.", + "receiving_quantity" => "دریافت مقدار", + "remove_image" => "حذف تصویر", + "reorder_level" => "سطح سفارش مجدد", + "reorder_level_number" => "سطح مرتب سازی باید یک عدد باشد.", + "reorder_level_required" => "سطح تنظیم مجدد یک زمینه مورد نیاز است.", + "retrive_item_info" => "بازیابی اطلاعات مورد", + "sales_tax_1" => "مالیات بر فروش", + "sales_tax_2" => "مالیات بر فروش 2", + "search_attributes" => "ویژگی های جستجو", + "select_image" => "تصویر را انتخاب کنید", + "serialized_items" => "موارد سریال", + "standard" => "استاندارد", + "stock" => "موجودی", + "stock_location" => "موقعیت مکانی سهام", + "stock_type" => "نوع سهام", + "successful_adding" => "شما مورد را با موفقیت اضافه کردید", + "successful_bulk_edit" => "شما مورد (های) انتخاب شده را با موفقیت به روز کردید", + "successful_deleted" => "شما با موفقیت حذف شده اید", + "successful_updating" => "شما مورد را با موفقیت به روز کردید", + "supplier" => "تامین کننده", + "tax_1" => "مالیات 1", + "tax_2" => "مالیات 2", + "tax_3" => "", + "tax_category" => "طبقه بندی مالیات", + "tax_percent" => "", + "tax_percent_number" => "درصد مالیات باید عددی باشد", + "tax_percent_required" => "درصد مالیات یک زمینه مورد نیاز است.", + "tax_percents" => "درصد (مالیات) مالیات", + "temp" => "موقت", + "type" => "نوع آیتم", + "unit_price" => "قیمت خرده فروشی", + "unit_price_number" => "قیمت واحد باید یک عدد باشد.", + "unit_price_required" => "قیمت خرده فروشی یک زمینه ضروری است.", + "upc_database" => "بانک اطلاعات بارکد", + "update" => "به روز کردن مورد", + "use_inventory_menu" => "استفاده از فهرست موجودی", ]; diff --git a/app/Language/fa/Login.php b/app/Language/fa/Login.php index 985dab1be..8767d8fc1 100644 --- a/app/Language/fa/Login.php +++ b/app/Language/fa/Login.php @@ -1,15 +1,15 @@ "من روبات نیستم.", - "go" => "برو", - "invalid_gcaptcha" => "نامعتبر من یک روبات نیستم.", - "invalid_installation" => "نصب صحیح نیست ، پرونده php.ini خود را بررسی کنید.", - "invalid_username_and_password" => "نام کاربری یا گذرواژه نامعتبر است.", - "login" => "وارد شدن", - "logout" => "", - "migration_needed" => "", - "password" => "کلمه عبور", - "required_username" => "", - "username" => "نام کاربری", - "welcome" => "", + "gcaptcha" => "من روبات نیستم.", + "go" => "برو", + "invalid_gcaptcha" => "نامعتبر من یک روبات نیستم.", + "invalid_installation" => "نصب صحیح نیست ، پرونده php.ini خود را بررسی کنید.", + "invalid_username_and_password" => "نام کاربری یا گذرواژه نامعتبر است.", + "login" => "وارد شدن", + "logout" => "", + "migration_needed" => "", + "password" => "کلمه عبور", + "required_username" => "", + "username" => "نام کاربری", + "welcome" => "", ]; diff --git a/app/Language/fa/Messages.php b/app/Language/fa/Messages.php index d03a42575..a5c94ff55 100644 --- a/app/Language/fa/Messages.php +++ b/app/Language/fa/Messages.php @@ -1,15 +1,15 @@ "نام کوچک", - "last_name" => "نام خانوادگی", - "message" => "پیام", - "message_placeholder" => "پیام شما در اینجا ...", - "message_required" => "پیام لازم است", - "multiple_phones" => "(در صورت دریافت کننده های متعدد ، شماره های تلفن همراه را که با کاما از هم جدا شده اند وارد کنید)", - "phone" => "شماره تلفن", - "phone_number_required" => "شماره تلفن مورد نیاز است", - "phone_placeholder" => "شماره تلفن همراه (ها) در اینجا ...", - "sms_send" => "ارسال پیامک", - "successfully_sent" => "پیام با موفقیت ارسال شد به:", - "unsuccessfully_sent" => "پیغام با موفقیت ارسال شد:", + "first_name" => "نام کوچک", + "last_name" => "نام خانوادگی", + "message" => "پیام", + "message_placeholder" => "پیام شما در اینجا ...", + "message_required" => "پیام لازم است", + "multiple_phones" => "(در صورت دریافت کننده های متعدد ، شماره های تلفن همراه را که با کاما از هم جدا شده اند وارد کنید)", + "phone" => "شماره تلفن", + "phone_number_required" => "شماره تلفن مورد نیاز است", + "phone_placeholder" => "شماره تلفن همراه (ها) در اینجا ...", + "sms_send" => "ارسال پیامک", + "successfully_sent" => "پیام با موفقیت ارسال شد به:", + "unsuccessfully_sent" => "پیغام با موفقیت ارسال شد:", ]; diff --git a/app/Language/fa/Module.php b/app/Language/fa/Module.php index db37874f3..f96366e66 100644 --- a/app/Language/fa/Module.php +++ b/app/Language/fa/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "ویژگی های", - "attributes_desc" => "ویژگیهای جستجو ، افزودن ، به روزرسانی ، حذف و جستجو را اضافه کنید.", - "both" => "هر دو", - "cashups" => "پول نقد", - "cashups_desc" => "افزودن ، به روزرسانی ، حذف و جستجوی نقدی.", - "config" => "پیکربندی", - "config_desc" => "پیکربندی اوسپوس را تغییر دهید.", - "customers" => "مشتریان", - "customers_desc" => "افزودن ، به روزرسانی ، حذف و جستجوی مشتریان.", - "employees" => "کارمندان", - "employees_desc" => "کارمندان را اضافه کنید ، به روز کنید ، حذف کنید و جستجو کنید.", - "expenses" => "هزینه", - "expenses_categories" => "دسته بندی هزینه ها", - "expenses_categories_desc" => "دسته بندی هزینه ها را اضافه کنید ، به روز کنید و حذف کنید.", - "expenses_desc" => "هزینه های افزودن ، به روزرسانی ، حذف و جستجو را اضافه کنید.", - "giftcards" => "کارت هدیه", - "giftcards_desc" => "کارتهای هدیه را اضافه کنید ، به روز کنید ، حذف کنید و جستجو کنید.", - "home" => "خانه", - "home_desc" => "ماژولهای منوی خانگی را لیست کنید.", - "item_kits" => "کیت های مورد", - "item_kits_desc" => "کیت های مورد را اضافه کنید ، به روز کنید ، حذف کنید و جستجو کنید.", - "items" => "موارد", - "items_desc" => "مواردی را اضافه کنید ، به روز کنید ، حذف کنید و جستجو کنید.", - "messages" => "پیام ها", - "messages_desc" => "ارسال پیام به مشتریان ، تهیه کنندگان و کارمندان.", - "migrate" => "مهاجرت", - "migrate_desc" => "پایگاه داده اوسپوس را به روز کنید.", - "office" => "دفتر", - "office_desc" => "لیست ماژول های منوی دفتر.", - "receivings" => "دریافت", - "receivings_desc" => "فرآیند خرید سفارشات.", - "reports" => "گزارش ها", - "reports_desc" => "مشاهده و تولید گزارشات.", - "sales" => "حراجی", - "sales_desc" => "فرآیند فروش و بازده.", - "suppliers" => "تهیه کنندگان", - "suppliers_desc" => "افزودن ، به روزرسانی ، حذف و جستجوی تولید کنندگان.", - "taxes" => "مالیات", - "taxes_desc" => "پیکربندی مالیات های فروش.", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "ویژگی های", + "attributes_desc" => "ویژگیهای جستجو ، افزودن ، به روزرسانی ، حذف و جستجو را اضافه کنید.", + "both" => "هر دو", + "cashups" => "پول نقد", + "cashups_desc" => "افزودن ، به روزرسانی ، حذف و جستجوی نقدی.", + "config" => "پیکربندی", + "config_desc" => "پیکربندی اوسپوس را تغییر دهید.", + "customers" => "مشتریان", + "customers_desc" => "افزودن ، به روزرسانی ، حذف و جستجوی مشتریان.", + "employees" => "کارمندان", + "employees_desc" => "کارمندان را اضافه کنید ، به روز کنید ، حذف کنید و جستجو کنید.", + "expenses" => "هزینه", + "expenses_categories" => "دسته بندی هزینه ها", + "expenses_categories_desc" => "دسته بندی هزینه ها را اضافه کنید ، به روز کنید و حذف کنید.", + "expenses_desc" => "هزینه های افزودن ، به روزرسانی ، حذف و جستجو را اضافه کنید.", + "giftcards" => "کارت هدیه", + "giftcards_desc" => "کارتهای هدیه را اضافه کنید ، به روز کنید ، حذف کنید و جستجو کنید.", + "home" => "خانه", + "home_desc" => "ماژولهای منوی خانگی را لیست کنید.", + "item_kits" => "کیت های مورد", + "item_kits_desc" => "کیت های مورد را اضافه کنید ، به روز کنید ، حذف کنید و جستجو کنید.", + "items" => "موارد", + "items_desc" => "مواردی را اضافه کنید ، به روز کنید ، حذف کنید و جستجو کنید.", + "messages" => "پیام ها", + "messages_desc" => "ارسال پیام به مشتریان ، تهیه کنندگان و کارمندان.", + "migrate" => "مهاجرت", + "migrate_desc" => "پایگاه داده اوسپوس را به روز کنید.", + "office" => "دفتر", + "office_desc" => "لیست ماژول های منوی دفتر.", + "receivings" => "دریافت", + "receivings_desc" => "فرآیند خرید سفارشات.", + "reports" => "گزارش ها", + "reports_desc" => "مشاهده و تولید گزارشات.", + "sales" => "حراجی", + "sales_desc" => "فرآیند فروش و بازده.", + "suppliers" => "تهیه کنندگان", + "suppliers_desc" => "افزودن ، به روزرسانی ، حذف و جستجوی تولید کنندگان.", + "taxes" => "مالیات", + "taxes_desc" => "پیکربندی مالیات های فروش.", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/fa/Receivings.php b/app/Language/fa/Receivings.php index 1e5a16c88..c9194dd15 100644 --- a/app/Language/fa/Receivings.php +++ b/app/Language/fa/Receivings.php @@ -1,58 +1,58 @@ "", - "cancel_receiving" => "لغو", - "cannot_be_deleted" => "دریافت (ها) حذف نشد.", - "comments" => "نظرات", - "complete_receiving" => "پایان", - "confirm_cancel_receiving" => "آیا مطمئن هستید که می خواهید این دریافت را پاک کنید؟ همه موارد پاک خواهند شد.", - "confirm_delete" => "آیا مطمئن هستید که می خواهید این دریافت را حذف کنید؟ این عملکرد قابل بازگشت نیست.", - "confirm_finish_receiving" => "آیا مطمئن هستید که می خواهید این دریافت را ارسال کنید؟ این قابل بازگشت نیست.", - "confirm_restore" => "", - "cost" => "هزینه", - "daily" => "", - "date" => "تاریخ دریافت", - "date_required" => "یک تاریخ صحیح باید وارد شود.", - "date_type" => "تاریخ یک زمینه ضروری است.", - "delete_entire_sale" => "حذف فروش کل", - "discount" => "تخفیف", - "edit" => "ویرایش", - "edit_sale" => "ویرایش دریافت", - "employee" => "کارمند", - "error_editing_item" => "ویرایش مورد انجام نشد.", - "error_requisition" => "امکان انتقال موجودی از یا در همان مکان سهام وجود ندارد.", - "find_or_scan_item" => "یافتن یا اسکن کردن مورد", - "find_or_scan_item_or_receipt" => "یافتن یا اسکن کردن مورد یا رسید", - "id" => "دریافت شناسه", - "item_name" => "نام مورد", - "mode" => "دریافت حالت", - "new_supplier" => "تامین کننده جدید", - "one_or_multiple" => "دریافت (ها)", - "print_after_sale" => "چاپ بعد از فروش", - "quantity" => "کمی", - "receipt" => "رسید دریافت", - "receipt_number" => "دریافت #", - "receiving" => "دريافت كردن", - "reference" => "ارجاع", - "register" => "دريافت موارد", - "requisition" => "الزام", - "return" => "برگشت", - "select_supplier" => "تأمین کننده را انتخاب کنید (اختیاری)", - "ship_pack" => "بسته حمل و نقل", - "start_typing_supplier_name" => "شروع به تایپ کردن نام ارائه دهنده ...", - "stock" => "موجودی", - "stock_destination" => "مقصد سهام", - "stock_locaiton" => "موقعیت مکانی سهام", - "stock_source" => "منبع سهام", - "successfully_deleted" => "شما با موفقیت حذف شده اید", - "successfully_updated" => "دریافت با موفقیت به روز شد", - "supplier" => "تامین کننده", - "supplier_address" => "نشانی", - "supplier_email" => "پست الکترونیک", - "supplier_location" => "محل", - "total" => "جمع", - "transaction_failed" => "معامله دریافت ها ناموفق بود.", - "unable_to_add_item" => "افزودن مورد به دریافت نشد.", - "unsuccessfully_updated" => "دریافت به روزرسانی انجام نشد.", - "update" => "به روز رسانی", + "amount_due" => "", + "cancel_receiving" => "لغو", + "cannot_be_deleted" => "دریافت (ها) حذف نشد.", + "comments" => "نظرات", + "complete_receiving" => "پایان", + "confirm_cancel_receiving" => "آیا مطمئن هستید که می خواهید این دریافت را پاک کنید؟ همه موارد پاک خواهند شد.", + "confirm_delete" => "آیا مطمئن هستید که می خواهید این دریافت را حذف کنید؟ این عملکرد قابل بازگشت نیست.", + "confirm_finish_receiving" => "آیا مطمئن هستید که می خواهید این دریافت را ارسال کنید؟ این قابل بازگشت نیست.", + "confirm_restore" => "", + "cost" => "هزینه", + "daily" => "", + "date" => "تاریخ دریافت", + "date_required" => "یک تاریخ صحیح باید وارد شود.", + "date_type" => "تاریخ یک زمینه ضروری است.", + "delete_entire_sale" => "حذف فروش کل", + "discount" => "تخفیف", + "edit" => "ویرایش", + "edit_sale" => "ویرایش دریافت", + "employee" => "کارمند", + "error_editing_item" => "ویرایش مورد انجام نشد.", + "error_requisition" => "امکان انتقال موجودی از یا در همان مکان سهام وجود ندارد.", + "find_or_scan_item" => "یافتن یا اسکن کردن مورد", + "find_or_scan_item_or_receipt" => "یافتن یا اسکن کردن مورد یا رسید", + "id" => "دریافت شناسه", + "item_name" => "نام مورد", + "mode" => "دریافت حالت", + "new_supplier" => "تامین کننده جدید", + "one_or_multiple" => "دریافت (ها)", + "print_after_sale" => "چاپ بعد از فروش", + "quantity" => "کمی", + "receipt" => "رسید دریافت", + "receipt_number" => "دریافت #", + "receiving" => "دريافت كردن", + "reference" => "ارجاع", + "register" => "دريافت موارد", + "requisition" => "الزام", + "return" => "برگشت", + "select_supplier" => "تأمین کننده را انتخاب کنید (اختیاری)", + "ship_pack" => "بسته حمل و نقل", + "start_typing_supplier_name" => "شروع به تایپ کردن نام ارائه دهنده ...", + "stock" => "موجودی", + "stock_destination" => "مقصد سهام", + "stock_locaiton" => "موقعیت مکانی سهام", + "stock_source" => "منبع سهام", + "successfully_deleted" => "شما با موفقیت حذف شده اید", + "successfully_updated" => "دریافت با موفقیت به روز شد", + "supplier" => "تامین کننده", + "supplier_address" => "نشانی", + "supplier_email" => "پست الکترونیک", + "supplier_location" => "محل", + "total" => "جمع", + "transaction_failed" => "معامله دریافت ها ناموفق بود.", + "unable_to_add_item" => "افزودن مورد به دریافت نشد.", + "unsuccessfully_updated" => "دریافت به روزرسانی انجام نشد.", + "update" => "به روز رسانی", ]; diff --git a/app/Language/fa/Reports.php b/app/Language/fa/Reports.php index c18cf41ef..7a31af68b 100644 --- a/app/Language/fa/Reports.php +++ b/app/Language/fa/Reports.php @@ -1,148 +1,148 @@ "همه", - "authority" => "قدرت", - "canceled" => "لغو شد", - "categories" => "دسته بندی ها", - "categories_summary_report" => "گزارش خلاصه دسته‌ها", - "category" => "دسته بندی", - "code_canceled" => "کنسل", - "code_invoice" => "سیاهه فروش", - "code_pos" => "POS", - "code_quote" => "", - "code_return" => "درست", - "code_type" => "نوع", - "code_work_order" => "سفارش کار", - "comments" => "نظرات", - "commission" => "", - "complete" => "فروش و بازده تمام شده", - "completed_sales" => "فروش کامل", - "confirm_delete" => "آیا مطمئن هستید که می خواهید ورودی (های) انتخاب شده را حذف کنید؟", - "confirm_restore" => "آیا مطمئن هستید که می خواهید ورودی (های) انتخاب شده را بازیابی کنید؟", - "cost" => "عمده فروشی", - "cost_price" => "قیمت عمده فروشی", - "count" => "شمردن", - "customer" => "مشتری", - "customers" => "مشتریان", - "customers_summary_report" => "گزارش خلاصه مشتریان", - "date" => "تاریخ", - "date_range" => "محدوده زمانی", - "description" => "شرح", - "detailed_receivings_report" => "گزارش دریافتی دقیق", - "detailed_receivings_report_input" => "", - "detailed_reports" => "گزارش های تفصیلی", - "detailed_requisition_report" => "", - "detailed_sales_report" => "گزارش معاملات دقیق", - "discount" => "تخفیف", - "discount_fixed" => "تخفیف ثابت", - "discount_percent" => "درصد تخفیف", - "discount_type" => "نوع تخفیف", - "discounts" => "تخفیف", - "discounts_summary_report" => "گزارش خلاصه تخفیف", - "earned" => "امتیاز به دست آورده", - "employee" => "کارمند", - "employees" => "کارمندان", - "employees_summary_report" => "گزارش خلاصه کارمندان", - "expenses" => "هزینه", - "expenses_amount" => "میزان", - "expenses_categories" => "هزینه", - "expenses_categories_summary_report" => "گزارش خلاصه دسته بندی هزینه ها", - "expenses_category" => "دسته بندی", - "expenses_payment_amount" => "", - "expenses_tax_amount" => "مالیات", - "expenses_total_amount" => "مقدار کل", - "expenses_total_tax_amount" => "کل مالیات", - "graphical_reports" => "گزارش های گرافیکی", - "inventory" => "فهرست", - "inventory_low" => "موجودی کم", - "inventory_low_report" => "گزارش موجودی کم", - "inventory_reports" => "گزارش موجودی", - "inventory_summary" => "خلاصه موجودی", - "inventory_summary_report" => "گزارش خلاصه موجودی", - "item" => "مورد", - "item_count" => "تعداد موارد فیلتر", - "item_name" => "نام مورد", - "item_number" => "بارکد", - "items" => "موارد", - "items_purchased" => "موارد خریداری شده", - "items_received" => "موارد دریافت شده", - "items_summary_report" => "گزارش خلاصه موارد", - "jurisdiction" => "صلاحیت قضایی", - "low_inventory" => "", - "low_inventory_report" => "", - "low_sell_quantity" => "کم فروش", - "more_than_zero" => "بیش از صفر", - "name" => "نام", - "no_reports_to_display" => "هیچ موردی برای نمایش وجود ندارد.", - "payment_type" => "نوع پرداخت", - "payments" => "مبلغ پرداختی", - "payments_summary_report" => "گزارش خلاصه پرداخت", - "profit" => "سود", - "quantity" => "تعداد", - "quantity_purchased" => "مقدار خریداری شده", - "quotes" => "نقل قول ها", - "received_by" => "دریافت شده توسط", - "receiving_id" => "دریافت شناسه", - "receiving_type" => "دریافت نوع", - "receivings" => "دریافت", - "reorder_level" => "سطح سفارش مجدد", - "report" => "گزارش", - "report_input" => "گزارش ورودی", - "reports" => "گزارش ها", - "requisition" => "", - "requisition_by" => "", - "requisition_id" => "", - "requisition_item" => "", - "requisition_item_quantity" => "", - "requisition_related_item" => "", - "requisition_related_item_total_quantity" => "", - "requisition_related_item_unit_quantity" => "", - "requisitions" => "الزامات", - "returns" => "برمی گردد", - "revenue" => "درآمد", - "sale_id" => "شناسه ترانس", - "sale_type" => "نوع معامله", - "sales" => "معاملات", - "sales_amount" => "مقدار معاملات", - "sales_summary_report" => "گزارش خلاصه معاملات", - "sales_taxes" => "مالیات فروش", - "sales_taxes_summary_report" => "گزارش خلاصه مالیات بر فروش", - "serial_number" => "شماره سریال", - "service_charge" => "", - "sold_by" => "فروخته شده توسط", - "sold_items" => "", - "sold_to" => "فروخته شد به", - "stock_location" => "موقعیت مکانی سهام", - "sub_total_value" => "فرعی", - "subtotal" => "فرعی", - "summary_reports" => "گزارش های خلاصه", - "supplied_by" => "تأمین شده توسط", - "supplier" => "تامین کننده", - "suppliers" => "تهیه کنندگان", - "suppliers_summary_report" => "گزارش خلاصه تهیه کنندگان", - "tax" => "مالیات", - "tax_category" => "طبقه بندی مالیات", - "tax_name" => "", - "tax_percent" => "درصد مالیات", - "tax_rate" => "نرخ مالیات", - "taxes" => "مالیات", - "taxes_summary_report" => "گزارش خلاصه مالیات", - "total" => "جمع", - "total_inventory_value" => "ارزش کل موجودی", - "total_low_sell_quantity" => "تعداد کم فروش کم", - "total_quantity" => "مقدار کل", - "total_retail" => "ارزش کل خرده فروشی", - "trans_amount" => "مقدار تراکنش", - "trans_due" => "ناشی از", - "trans_group" => "گروه معامله", - "trans_nopay_sales" => "فروش بدون پرداخت", - "trans_payments" => "مبلغ پرداختی", - "trans_refunded" => "بازپرداخت", - "trans_sales" => "حراجی", - "trans_type" => "نوع معامله", - "type" => "نوع", - "unit_price" => "قیمت خرده فروشی", - "used" => "امتیاز مورد استفاده", - "work_orders" => "دستورات کاری", - "zero_and_less" => "صفر و کمتر", + "all" => "همه", + "authority" => "قدرت", + "canceled" => "لغو شد", + "categories" => "دسته بندی ها", + "categories_summary_report" => "گزارش خلاصه دسته‌ها", + "category" => "دسته بندی", + "code_canceled" => "کنسل", + "code_invoice" => "سیاهه فروش", + "code_pos" => "POS", + "code_quote" => "", + "code_return" => "درست", + "code_type" => "نوع", + "code_work_order" => "سفارش کار", + "comments" => "نظرات", + "commission" => "", + "complete" => "فروش و بازده تمام شده", + "completed_sales" => "فروش کامل", + "confirm_delete" => "آیا مطمئن هستید که می خواهید ورودی (های) انتخاب شده را حذف کنید؟", + "confirm_restore" => "آیا مطمئن هستید که می خواهید ورودی (های) انتخاب شده را بازیابی کنید؟", + "cost" => "عمده فروشی", + "cost_price" => "قیمت عمده فروشی", + "count" => "شمردن", + "customer" => "مشتری", + "customers" => "مشتریان", + "customers_summary_report" => "گزارش خلاصه مشتریان", + "date" => "تاریخ", + "date_range" => "محدوده زمانی", + "description" => "شرح", + "detailed_receivings_report" => "گزارش دریافتی دقیق", + "detailed_receivings_report_input" => "", + "detailed_reports" => "گزارش های تفصیلی", + "detailed_requisition_report" => "", + "detailed_sales_report" => "گزارش معاملات دقیق", + "discount" => "تخفیف", + "discount_fixed" => "تخفیف ثابت", + "discount_percent" => "درصد تخفیف", + "discount_type" => "نوع تخفیف", + "discounts" => "تخفیف", + "discounts_summary_report" => "گزارش خلاصه تخفیف", + "earned" => "امتیاز به دست آورده", + "employee" => "کارمند", + "employees" => "کارمندان", + "employees_summary_report" => "گزارش خلاصه کارمندان", + "expenses" => "هزینه", + "expenses_amount" => "میزان", + "expenses_categories" => "هزینه", + "expenses_categories_summary_report" => "گزارش خلاصه دسته بندی هزینه ها", + "expenses_category" => "دسته بندی", + "expenses_payment_amount" => "", + "expenses_tax_amount" => "مالیات", + "expenses_total_amount" => "مقدار کل", + "expenses_total_tax_amount" => "کل مالیات", + "graphical_reports" => "گزارش های گرافیکی", + "inventory" => "فهرست", + "inventory_low" => "موجودی کم", + "inventory_low_report" => "گزارش موجودی کم", + "inventory_reports" => "گزارش موجودی", + "inventory_summary" => "خلاصه موجودی", + "inventory_summary_report" => "گزارش خلاصه موجودی", + "item" => "مورد", + "item_count" => "تعداد موارد فیلتر", + "item_name" => "نام مورد", + "item_number" => "بارکد", + "items" => "موارد", + "items_purchased" => "موارد خریداری شده", + "items_received" => "موارد دریافت شده", + "items_summary_report" => "گزارش خلاصه موارد", + "jurisdiction" => "صلاحیت قضایی", + "low_inventory" => "", + "low_inventory_report" => "", + "low_sell_quantity" => "کم فروش", + "more_than_zero" => "بیش از صفر", + "name" => "نام", + "no_reports_to_display" => "هیچ موردی برای نمایش وجود ندارد.", + "payment_type" => "نوع پرداخت", + "payments" => "مبلغ پرداختی", + "payments_summary_report" => "گزارش خلاصه پرداخت", + "profit" => "سود", + "quantity" => "تعداد", + "quantity_purchased" => "مقدار خریداری شده", + "quotes" => "نقل قول ها", + "received_by" => "دریافت شده توسط", + "receiving_id" => "دریافت شناسه", + "receiving_type" => "دریافت نوع", + "receivings" => "دریافت", + "reorder_level" => "سطح سفارش مجدد", + "report" => "گزارش", + "report_input" => "گزارش ورودی", + "reports" => "گزارش ها", + "requisition" => "", + "requisition_by" => "", + "requisition_id" => "", + "requisition_item" => "", + "requisition_item_quantity" => "", + "requisition_related_item" => "", + "requisition_related_item_total_quantity" => "", + "requisition_related_item_unit_quantity" => "", + "requisitions" => "الزامات", + "returns" => "برمی گردد", + "revenue" => "درآمد", + "sale_id" => "شناسه ترانس", + "sale_type" => "نوع معامله", + "sales" => "معاملات", + "sales_amount" => "مقدار معاملات", + "sales_summary_report" => "گزارش خلاصه معاملات", + "sales_taxes" => "مالیات فروش", + "sales_taxes_summary_report" => "گزارش خلاصه مالیات بر فروش", + "serial_number" => "شماره سریال", + "service_charge" => "", + "sold_by" => "فروخته شده توسط", + "sold_items" => "", + "sold_to" => "فروخته شد به", + "stock_location" => "موقعیت مکانی سهام", + "sub_total_value" => "فرعی", + "subtotal" => "فرعی", + "summary_reports" => "گزارش های خلاصه", + "supplied_by" => "تأمین شده توسط", + "supplier" => "تامین کننده", + "suppliers" => "تهیه کنندگان", + "suppliers_summary_report" => "گزارش خلاصه تهیه کنندگان", + "tax" => "مالیات", + "tax_category" => "طبقه بندی مالیات", + "tax_name" => "", + "tax_percent" => "درصد مالیات", + "tax_rate" => "نرخ مالیات", + "taxes" => "مالیات", + "taxes_summary_report" => "گزارش خلاصه مالیات", + "total" => "جمع", + "total_inventory_value" => "ارزش کل موجودی", + "total_low_sell_quantity" => "تعداد کم فروش کم", + "total_quantity" => "مقدار کل", + "total_retail" => "ارزش کل خرده فروشی", + "trans_amount" => "مقدار تراکنش", + "trans_due" => "ناشی از", + "trans_group" => "گروه معامله", + "trans_nopay_sales" => "فروش بدون پرداخت", + "trans_payments" => "مبلغ پرداختی", + "trans_refunded" => "بازپرداخت", + "trans_sales" => "حراجی", + "trans_type" => "نوع معامله", + "type" => "نوع", + "unit_price" => "قیمت خرده فروشی", + "used" => "امتیاز مورد استفاده", + "work_orders" => "دستورات کاری", + "zero_and_less" => "صفر و کمتر", ]; diff --git a/app/Language/fa/Sales.php b/app/Language/fa/Sales.php index d91ed47e3..1383ff36b 100644 --- a/app/Language/fa/Sales.php +++ b/app/Language/fa/Sales.php @@ -1,224 +1,224 @@ "امتیازهای موجود", - "rewards_package" => "پاداش", - "rewards_remaining_balance" => "امتیاز باقی مانده مقدار باقی مانده است", - "account_number" => "حساب #", - "add_payment" => "افزودن پرداخت", - "amount_due" => "مبلغ پرداختی", - "amount_tendered" => "مبلغ مناقصه", - "authorized_signature" => "امضای مجاز", - "cancel_sale" => "لغو", - "cash" => "نقدی", - "cash_1" => "", - "cash_2" => "", - "cash_3" => "", - "cash_4" => "", - "cash_adjustment" => "", - "cash_deposit" => "سپرده نقدی", - "cash_filter" => "نقدی", - "change_due" => "تغییر بدهی", - "change_price" => "تغییر قیمت فروش", - "check" => "بررسی", - "check_balance" => "باقی مانده را بررسی کنید", - "check_filter" => "بررسی", - "close" => "", - "comment" => "اظهار نظر", - "comments" => "نظرات", - "company_name" => "", - "complete" => "", - "complete_sale" => "کامل", - "confirm_cancel_sale" => "آیا مطمئن هستید که می خواهید این فروش را پاک کنید؟ همه موارد پاک خواهند شد.", - "confirm_delete" => "آیا مطمئن هستید که می خواهید فروش (های) خریداری شده را حذف کنید؟", - "confirm_restore" => "آیا مطمئن هستید که می خواهید فروش (های) انتخابی را بازیابی کنید؟", - "credit" => "کارت اعتباری", - "credit_deposit" => "سپرده اعتباری", - "credit_filter" => "", - "current_table" => "", - "customer" => "مشتری", - "customer_address" => "نشانی", - "customer_discount" => "تخفیف", - "customer_email" => "پست الکترونیک", - "customer_location" => "محل", - "customer_mailchimp_status" => "وضعیت Mailchimp", - "customer_optional" => "(مورد نیاز برای پرداخت مقررات)", - "customer_required" => "(ضروری)", - "customer_total" => "جمع", - "customer_total_spent" => "", - "daily_sales" => "", - "date" => "تاریخ فروش", - "date_range" => "محدوده زمانی", - "date_required" => "یک تاریخ صحیح باید وارد شود.", - "date_type" => "تاریخ یک زمینه ضروری است.", - "debit" => "کارت اعتباری", - "debit_filter" => "", - "delete" => "مجاز کردن حذف", - "delete_confirmation" => "آیا مطمئن هستید که می خواهید این فروش را حذف کنید؟ این عملکرد قابل بازگشت نیست.", - "delete_entire_sale" => "حذف فروش کل", - "delete_successful" => "حذف موفقیت آمیز است.", - "delete_unsuccessful" => "حذف فروش انجام نشد.", - "description_abbrv" => "سقوط", - "discard" => "دور انداختن", - "discard_quote" => "", - "discount" => "دیسک", - "discount_included" => "٪ تخفیف", - "discount_short" => "٪", - "due" => "ناشی از", - "due_filter" => "ناشی از", - "edit" => "ویرایش", - "edit_item" => "ویرایش آیتم", - "edit_sale" => "ویرایش فروش", - "email_receipt" => "دریافت ایمیل", - "employee" => "کارمند", - "entry" => "ورود", - "error_editing_item" => "خطا در ویرایش مورد", - "find_or_scan_item" => "یافتن یا اسکن کردن مورد", - "find_or_scan_item_or_receipt" => "یافتن یا اسکن کردن مورد یا رسید", - "giftcard" => "کارت هدیه", - "giftcard_balance" => "مانده کارت هدیه", - "giftcard_filter" => "", - "giftcard_number" => "شماره کارت هدیه", - "group_by_category" => "گروه بر اساس طبقه بندی", - "group_by_type" => "گروه براساس نوع", - "hsn" => "HSN", - "id" => "شناسه فروش", - "include_prices" => "شامل قیمت ها می شوید؟", - "invoice" => "صورتحساب", - "invoice_confirm" => "این فاکتور به ارسال می شود", - "invoice_enable" => "شماره فاکتور", - "invoice_filter" => "صورت حساب", - "invoice_no_email" => "این مشتری آدرس ایمیل معتبری ندارد.", - "invoice_number" => "صورتحساب #", - "invoice_number_duplicate" => "فاکتور شماره{0} باید بی نظیر باشد.", - "invoice_sent" => "فاکتور ارسال شده به", - "invoice_total" => "فاکتور کل", - "invoice_type_custom_invoice" => "فاکتور سفارشی (custom_invoice.php)", - "invoice_type_custom_tax_invoice" => "فاکتور مالیاتی سفارشی (custom_tax_invoice.php)", - "invoice_type_invoice" => "فاکتور (invoice.php)", - "invoice_type_tax_invoice" => "فاکتور مالیاتی (tax_invoice.php)", - "invoice_unsent" => "فاکتور نتوانست به ارسال شود", - "invoice_update" => "بازگو", - "item_insufficient_of_stock" => "این کالا سهام کافی ندارد.", - "item_name" => "نام مورد", - "item_number" => "مورد #", - "item_out_of_stock" => "مورد خارج از بورس.", - "key_browser" => "", - "key_cancel" => "Cancels Current Quote/Invoice/Sale", - "key_customer_search" => "Customer Search", - "key_finish_quote" => "Finish Quote/Invoice witdout payment", - "key_finish_sale" => "Add Payment and Complete Invoice/Sale", - "key_full" => "", - "key_function" => "Function", - "key_help" => "Shortcuts", - "key_help_modal" => "Open Shortcuts Window", - "key_in" => "", - "key_item_search" => "Item Search", - "key_out" => "", - "key_payment" => "Add Payment", - "key_print" => "", - "key_restore" => "", - "key_search" => "", - "key_suspend" => "Suspend Current Sale", - "key_suspended" => "Show Suspended Sales", - "key_system" => "", - "key_tendered" => "Edit Amount Tendered", - "key_title" => "Sales Keyboard Shortcuts", - "mc" => "", - "mode" => "حالت ثبت نام", - "must_enter_numeric" => "مقدار پیشنهادی باید یک عدد باشد.", - "must_enter_numeric_giftcard" => "شماره کارت هدیه باید یک عدد باشد.", - "new_customer" => "مشتری جدید", - "new_item" => "گزینه جدید", - "no_description" => "بدون توضیح", - "no_filter" => "همه", - "no_items_in_cart" => "هیچ کالایی در سبد خرید وجود ندارد. ر.", - "no_sales_to_display" => "بدون فروش برای نمایش.", - "none_selected" => "شما هیچ فروشی (فروش) را برای حذف انتخاب نکرده اید.", - "nontaxed_ind" => "", - "not_authorized" => "این اقدام مجاز نیست.", - "one_or_multiple" => "حراجی)", - "payment" => "نوع پرداخت", - "payment_amount" => "میزان", - "payment_not_cover_total" => "مبلغ پرداخت باید بیشتر یا برابر با Total باشد.", - "payment_type" => "نوع", - "payments" => "", - "payments_total" => "کل پرداختها", - "price" => "قیمت", - "print_after_sale" => "چاپ بعد از فروش", - "quantity" => "تعداد", - "quantity_less_than_reorder_level" => "هشدار: مقدار مورد نظر برای آن مورد کمتر از سطح ترتیب است.", - "quantity_less_than_zero" => "هشدار: مقدار مورد نظر کافی نیست. شما هنوز هم می توانید فروش را پردازش کنید ، اما موجودی خود را حسابرسی کنید.", - "quantity_of_items" => "مقدار{0} مورد", - "quote" => "نقل قول", - "quote_number" => "تعداد نقل قول", - "quote_number_duplicate" => "نقل قول شماره باید بی نظیر باشد.", - "quote_sent" => "نقل قول ارسال شد به", - "quote_unsent" => "نقل قول ارسال نشد به", - "receipt" => "رسید فروش", - "receipt_no_email" => "این مشتری آدرس ایمیل معتبری ندارد.", - "receipt_number" => "فروش #", - "receipt_sent" => "رسید به", - "receipt_unsent" => "رسید ارسال نشد به", - "refund" => "نوع بازپرداخت", - "register" => "ثبت فروش", - "remove_customer" => "حذف مشتری", - "remove_discount" => "", - "return" => "برگشت", - "rewards" => "امتیاز پاداش", - "rewards_balance" => "تعادل امتیاز پاداش", - "sale" => "فروش", - "sale_by_invoice" => "فروش توسط فاکتور", - "sale_for_customer" => "مشتری:", - "sale_time" => "زمان", - "sales_tax" => "مالیات بر فروش", - "sales_total" => "", - "select_customer" => "مشتری را انتخاب کنید", - "send_invoice" => "فاکتور بفرستید", - "send_quote" => "ارسال نقل قول", - "send_receipt" => "ارسال رسید", - "send_work_order" => "ارسال سفارش کار", - "serial" => "سریال", - "service_charge" => "", - "show_due" => "", - "show_invoice" => "نمایش فاکتور", - "show_receipt" => "نمایش رسید", - "start_typing_customer_name" => "شروع به تایپ جزئیات مشتری ...", - "start_typing_item_name" => "شروع به تایپ نام مورد یا اسکن بارکد ...", - "stock" => "موجودی", - "stock_location" => "موقعیت مکانی سهام", - "sub_total" => "فرعی", - "successfully_deleted" => "شما با موفقیت حذف شده اید", - "successfully_restored" => "شما با موفقیت ترمیم کردید", - "successfully_suspended_sale" => "فروش موفق به حالت تعلیق درآمد.", - "successfully_updated" => "به روزرسانی فروش موفقیت آمیز است.", - "suspend_sale" => "تعلیق", - "suspended_doc_id" => "سند", - "suspended_sale_id" => "شناسه", - "suspended_sales" => "معلق", - "table" => "جدول", - "takings" => "فروش روزانه", - "tax" => "مالیات", - "tax_id" => "شناسه مالیاتی", - "tax_invoice" => "فاکتور مالیات", - "tax_percent" => "مالیات ٪", - "taxed_ind" => "T", - "total" => "جمع", - "total_tax_exclusive" => "پرداخت مالیات", - "transaction_failed" => "معاملات معامله نشد.", - "unable_to_add_item" => "افزودن مورد به فروش انجام نشد", - "unsuccessfully_deleted" => "حذف (فروش) انجام نشد.", - "unsuccessfully_restored" => "بازگرداندن فروش (ها) انجام نشد.", - "unsuccessfully_suspended_sale" => "تعلیق فروش انجام نشد.", - "unsuccessfully_updated" => "به روزرسانی فروش انجام نشد.", - "unsuspend" => "لغو", - "unsuspend_and_delete" => "عمل", - "update" => "به روز رسانی", - "upi" => "UPI", - "visa" => "", - "wholesale" => "", - "work_order" => "سفارش کار", - "work_order_number" => "شماره سفارش کار", - "work_order_number_duplicate" => "شماره سفارش کار باید منحصر به فرد باشد.", - "work_order_sent" => "دستور کار ارسال شده به", - "work_order_unsent" => "دستور کار نتوانست به ارسال شود", + "customers_available_points" => "امتیازهای موجود", + "rewards_package" => "پاداش", + "rewards_remaining_balance" => "امتیاز باقی مانده مقدار باقی مانده است", + "account_number" => "حساب #", + "add_payment" => "افزودن پرداخت", + "amount_due" => "مبلغ پرداختی", + "amount_tendered" => "مبلغ مناقصه", + "authorized_signature" => "امضای مجاز", + "cancel_sale" => "لغو", + "cash" => "نقدی", + "cash_1" => "", + "cash_2" => "", + "cash_3" => "", + "cash_4" => "", + "cash_adjustment" => "", + "cash_deposit" => "سپرده نقدی", + "cash_filter" => "نقدی", + "change_due" => "تغییر بدهی", + "change_price" => "تغییر قیمت فروش", + "check" => "بررسی", + "check_balance" => "باقی مانده را بررسی کنید", + "check_filter" => "بررسی", + "close" => "", + "comment" => "اظهار نظر", + "comments" => "نظرات", + "company_name" => "", + "complete" => "", + "complete_sale" => "کامل", + "confirm_cancel_sale" => "آیا مطمئن هستید که می خواهید این فروش را پاک کنید؟ همه موارد پاک خواهند شد.", + "confirm_delete" => "آیا مطمئن هستید که می خواهید فروش (های) خریداری شده را حذف کنید؟", + "confirm_restore" => "آیا مطمئن هستید که می خواهید فروش (های) انتخابی را بازیابی کنید؟", + "credit" => "کارت اعتباری", + "credit_deposit" => "سپرده اعتباری", + "credit_filter" => "", + "current_table" => "", + "customer" => "مشتری", + "customer_address" => "نشانی", + "customer_discount" => "تخفیف", + "customer_email" => "پست الکترونیک", + "customer_location" => "محل", + "customer_mailchimp_status" => "وضعیت Mailchimp", + "customer_optional" => "(مورد نیاز برای پرداخت مقررات)", + "customer_required" => "(ضروری)", + "customer_total" => "جمع", + "customer_total_spent" => "", + "daily_sales" => "", + "date" => "تاریخ فروش", + "date_range" => "محدوده زمانی", + "date_required" => "یک تاریخ صحیح باید وارد شود.", + "date_type" => "تاریخ یک زمینه ضروری است.", + "debit" => "کارت اعتباری", + "debit_filter" => "", + "delete" => "مجاز کردن حذف", + "delete_confirmation" => "آیا مطمئن هستید که می خواهید این فروش را حذف کنید؟ این عملکرد قابل بازگشت نیست.", + "delete_entire_sale" => "حذف فروش کل", + "delete_successful" => "حذف موفقیت آمیز است.", + "delete_unsuccessful" => "حذف فروش انجام نشد.", + "description_abbrv" => "سقوط", + "discard" => "دور انداختن", + "discard_quote" => "", + "discount" => "دیسک", + "discount_included" => "٪ تخفیف", + "discount_short" => "٪", + "due" => "ناشی از", + "due_filter" => "ناشی از", + "edit" => "ویرایش", + "edit_item" => "ویرایش آیتم", + "edit_sale" => "ویرایش فروش", + "email_receipt" => "دریافت ایمیل", + "employee" => "کارمند", + "entry" => "ورود", + "error_editing_item" => "خطا در ویرایش مورد", + "find_or_scan_item" => "یافتن یا اسکن کردن مورد", + "find_or_scan_item_or_receipt" => "یافتن یا اسکن کردن مورد یا رسید", + "giftcard" => "کارت هدیه", + "giftcard_balance" => "مانده کارت هدیه", + "giftcard_filter" => "", + "giftcard_number" => "شماره کارت هدیه", + "group_by_category" => "گروه بر اساس طبقه بندی", + "group_by_type" => "گروه براساس نوع", + "hsn" => "HSN", + "id" => "شناسه فروش", + "include_prices" => "شامل قیمت ها می شوید؟", + "invoice" => "صورتحساب", + "invoice_confirm" => "این فاکتور به ارسال می شود", + "invoice_enable" => "شماره فاکتور", + "invoice_filter" => "صورت حساب", + "invoice_no_email" => "این مشتری آدرس ایمیل معتبری ندارد.", + "invoice_number" => "صورتحساب #", + "invoice_number_duplicate" => "فاکتور شماره{0} باید بی نظیر باشد.", + "invoice_sent" => "فاکتور ارسال شده به", + "invoice_total" => "فاکتور کل", + "invoice_type_custom_invoice" => "فاکتور سفارشی (custom_invoice.php)", + "invoice_type_custom_tax_invoice" => "فاکتور مالیاتی سفارشی (custom_tax_invoice.php)", + "invoice_type_invoice" => "فاکتور (invoice.php)", + "invoice_type_tax_invoice" => "فاکتور مالیاتی (tax_invoice.php)", + "invoice_unsent" => "فاکتور نتوانست به ارسال شود", + "invoice_update" => "بازگو", + "item_insufficient_of_stock" => "این کالا سهام کافی ندارد.", + "item_name" => "نام مورد", + "item_number" => "مورد #", + "item_out_of_stock" => "مورد خارج از بورس.", + "key_browser" => "", + "key_cancel" => "Cancels Current Quote/Invoice/Sale", + "key_customer_search" => "Customer Search", + "key_finish_quote" => "Finish Quote/Invoice witdout payment", + "key_finish_sale" => "Add Payment and Complete Invoice/Sale", + "key_full" => "", + "key_function" => "Function", + "key_help" => "Shortcuts", + "key_help_modal" => "Open Shortcuts Window", + "key_in" => "", + "key_item_search" => "Item Search", + "key_out" => "", + "key_payment" => "Add Payment", + "key_print" => "", + "key_restore" => "", + "key_search" => "", + "key_suspend" => "Suspend Current Sale", + "key_suspended" => "Show Suspended Sales", + "key_system" => "", + "key_tendered" => "Edit Amount Tendered", + "key_title" => "Sales Keyboard Shortcuts", + "mc" => "", + "mode" => "حالت ثبت نام", + "must_enter_numeric" => "مقدار پیشنهادی باید یک عدد باشد.", + "must_enter_numeric_giftcard" => "شماره کارت هدیه باید یک عدد باشد.", + "new_customer" => "مشتری جدید", + "new_item" => "گزینه جدید", + "no_description" => "بدون توضیح", + "no_filter" => "همه", + "no_items_in_cart" => "هیچ کالایی در سبد خرید وجود ندارد. ر.", + "no_sales_to_display" => "بدون فروش برای نمایش.", + "none_selected" => "شما هیچ فروشی (فروش) را برای حذف انتخاب نکرده اید.", + "nontaxed_ind" => "", + "not_authorized" => "این اقدام مجاز نیست.", + "one_or_multiple" => "حراجی)", + "payment" => "نوع پرداخت", + "payment_amount" => "میزان", + "payment_not_cover_total" => "مبلغ پرداخت باید بیشتر یا برابر با Total باشد.", + "payment_type" => "نوع", + "payments" => "", + "payments_total" => "کل پرداختها", + "price" => "قیمت", + "print_after_sale" => "چاپ بعد از فروش", + "quantity" => "تعداد", + "quantity_less_than_reorder_level" => "هشدار: مقدار مورد نظر برای آن مورد کمتر از سطح ترتیب است.", + "quantity_less_than_zero" => "هشدار: مقدار مورد نظر کافی نیست. شما هنوز هم می توانید فروش را پردازش کنید ، اما موجودی خود را حسابرسی کنید.", + "quantity_of_items" => "مقدار{0} مورد", + "quote" => "نقل قول", + "quote_number" => "تعداد نقل قول", + "quote_number_duplicate" => "نقل قول شماره باید بی نظیر باشد.", + "quote_sent" => "نقل قول ارسال شد به", + "quote_unsent" => "نقل قول ارسال نشد به", + "receipt" => "رسید فروش", + "receipt_no_email" => "این مشتری آدرس ایمیل معتبری ندارد.", + "receipt_number" => "فروش #", + "receipt_sent" => "رسید به", + "receipt_unsent" => "رسید ارسال نشد به", + "refund" => "نوع بازپرداخت", + "register" => "ثبت فروش", + "remove_customer" => "حذف مشتری", + "remove_discount" => "", + "return" => "برگشت", + "rewards" => "امتیاز پاداش", + "rewards_balance" => "تعادل امتیاز پاداش", + "sale" => "فروش", + "sale_by_invoice" => "فروش توسط فاکتور", + "sale_for_customer" => "مشتری:", + "sale_time" => "زمان", + "sales_tax" => "مالیات بر فروش", + "sales_total" => "", + "select_customer" => "مشتری را انتخاب کنید", + "send_invoice" => "فاکتور بفرستید", + "send_quote" => "ارسال نقل قول", + "send_receipt" => "ارسال رسید", + "send_work_order" => "ارسال سفارش کار", + "serial" => "سریال", + "service_charge" => "", + "show_due" => "", + "show_invoice" => "نمایش فاکتور", + "show_receipt" => "نمایش رسید", + "start_typing_customer_name" => "شروع به تایپ جزئیات مشتری ...", + "start_typing_item_name" => "شروع به تایپ نام مورد یا اسکن بارکد ...", + "stock" => "موجودی", + "stock_location" => "موقعیت مکانی سهام", + "sub_total" => "فرعی", + "successfully_deleted" => "شما با موفقیت حذف شده اید", + "successfully_restored" => "شما با موفقیت ترمیم کردید", + "successfully_suspended_sale" => "فروش موفق به حالت تعلیق درآمد.", + "successfully_updated" => "به روزرسانی فروش موفقیت آمیز است.", + "suspend_sale" => "تعلیق", + "suspended_doc_id" => "سند", + "suspended_sale_id" => "شناسه", + "suspended_sales" => "معلق", + "table" => "جدول", + "takings" => "فروش روزانه", + "tax" => "مالیات", + "tax_id" => "شناسه مالیاتی", + "tax_invoice" => "فاکتور مالیات", + "tax_percent" => "مالیات ٪", + "taxed_ind" => "T", + "total" => "جمع", + "total_tax_exclusive" => "پرداخت مالیات", + "transaction_failed" => "معاملات معامله نشد.", + "unable_to_add_item" => "افزودن مورد به فروش انجام نشد", + "unsuccessfully_deleted" => "حذف (فروش) انجام نشد.", + "unsuccessfully_restored" => "بازگرداندن فروش (ها) انجام نشد.", + "unsuccessfully_suspended_sale" => "تعلیق فروش انجام نشد.", + "unsuccessfully_updated" => "به روزرسانی فروش انجام نشد.", + "unsuspend" => "لغو", + "unsuspend_and_delete" => "عمل", + "update" => "به روز رسانی", + "upi" => "UPI", + "visa" => "", + "wholesale" => "", + "work_order" => "سفارش کار", + "work_order_number" => "شماره سفارش کار", + "work_order_number_duplicate" => "شماره سفارش کار باید منحصر به فرد باشد.", + "work_order_sent" => "دستور کار ارسال شده به", + "work_order_unsent" => "دستور کار نتوانست به ارسال شود", ]; diff --git a/app/Language/fa/Suppliers.php b/app/Language/fa/Suppliers.php index 1f8f2169f..fc510d68e 100644 --- a/app/Language/fa/Suppliers.php +++ b/app/Language/fa/Suppliers.php @@ -1,24 +1,24 @@ "شماره حساب", - "agency_name" => "نام آژانس", - "cannot_be_deleted" => "نمی توان تامین کننده (های) انتخاب شده را حذف کرد. یک یا تعداد بیشتری از فروش دارند.", - "category" => "دسته بندی", - "company_name" => "نام شرکت", - "company_name_required" => "نام شرکت یک زمینه ضروری است.", - "confirm_delete" => "آیا مطمئن هستید که می خواهید تأمین کننده (های) انتخاب شده را حذف کنید؟", - "confirm_restore" => "آیا مطمئن هستید که می خواهید تأمین کننده (های) انتخاب شده را بازیابی کنید؟", - "cost" => "تأمین کننده هزینه", - "error_adding_updating" => "به روزرسانی یا افزودن ارائه نشد.", - "goods" => "عرضه کننده کالا", - "new" => "تامین کننده جدید", - "none_selected" => "شما تأمین کننده (ها) را برای حذف انتخاب نکرده اید.", - "one_or_multiple" => "تهیه کننده (ها)", - "successful_adding" => "شما با موفقیت تأمین کننده را اضافه کردید", - "successful_deleted" => "شما با موفقیت حذف شده اید", - "successful_updating" => "شما با موفقیت عرضه کننده را به روز کردید", - "supplier" => "تامین کننده", - "supplier_id" => "شناسه", - "tax_id" => "شناسه مالیاتی", - "update" => "ارائه دهنده به روز رسانی", + "account_number" => "شماره حساب", + "agency_name" => "نام آژانس", + "cannot_be_deleted" => "نمی توان تامین کننده (های) انتخاب شده را حذف کرد. یک یا تعداد بیشتری از فروش دارند.", + "category" => "دسته بندی", + "company_name" => "نام شرکت", + "company_name_required" => "نام شرکت یک زمینه ضروری است.", + "confirm_delete" => "آیا مطمئن هستید که می خواهید تأمین کننده (های) انتخاب شده را حذف کنید؟", + "confirm_restore" => "آیا مطمئن هستید که می خواهید تأمین کننده (های) انتخاب شده را بازیابی کنید؟", + "cost" => "تأمین کننده هزینه", + "error_adding_updating" => "به روزرسانی یا افزودن ارائه نشد.", + "goods" => "عرضه کننده کالا", + "new" => "تامین کننده جدید", + "none_selected" => "شما تأمین کننده (ها) را برای حذف انتخاب نکرده اید.", + "one_or_multiple" => "تهیه کننده (ها)", + "successful_adding" => "شما با موفقیت تأمین کننده را اضافه کردید", + "successful_deleted" => "شما با موفقیت حذف شده اید", + "successful_updating" => "شما با موفقیت عرضه کننده را به روز کردید", + "supplier" => "تامین کننده", + "supplier_id" => "شناسه", + "tax_id" => "شناسه مالیاتی", + "update" => "ارائه دهنده به روز رسانی", ]; diff --git a/app/Language/fa/Taxes.php b/app/Language/fa/Taxes.php index 66d282e2e..b2d314cd6 100644 --- a/app/Language/fa/Taxes.php +++ b/app/Language/fa/Taxes.php @@ -1,82 +1,82 @@ "یک مورد استثنا اضافه کن", - "cascade" => "آبشار", - "cascade_sequence" => "دنباله آبشار", - "city" => "شهر", - "code" => "کد", - "confirm_delete" => "آیا مطمئن هستید که می خواهید این قانون مالیات را حذف کنید؟ این اقدام قابل بازگشت نیست", - "confirm_restore" => "آیا مطمئن هستید که می خواهید کد (های) مالیاتی انتخاب شده را بازیابی کنید؟", - "default_tax_category" => "طبقه بندی پیش فرض مالیات", - "default_tax_rate" => "نرخ پیش فرض مالیات", - "error_adding_updating" => "کد مالیاتی اضافه یا به روز نشد", - "group_seq" => "گروه Seq", - "jurisdiction_name" => "نام صلاحیت", - "name" => "نام", - "new" => "مالیات جدید", - "no_taxes" => "", - "no_taxes_to_display" => "هیچ کد مالیاتی برای نمایش موجود نیست", - "reporting_authority" => "مرجع گزارشگری", - "round_half_down" => "نیمه پایین", - "round_half_even" => "نیمه حتی", - "round_half_odd" => "نیمی عجیب", - "round_half_up" => "نیمه بالا", - "rounding_code" => "کد گردی", - "sales_tax" => "مالیات بر فروش", - "sales_tax_by_invoice" => "مالیات بر فروش با فاکتور", - "sequence" => "دنباله", - "state" => "دولت", - "successful_deleted" => "شما با موفقیت حذف شده اید", - "tax_categories" => "دسته بندی های مالیاتی", - "tax_categories_configuration" => "پیکربندی دسته بندی های مالیاتی", - "tax_categories_saved_successfully" => "تغییرات دسته بندی های مالیاتی ذخیره شده", - "tax_categories_saved_unsuccessfully" => "تغییرات دسته بندی های مالیاتی ذخیره نشده است", - "tax_category" => "طبقه بندی مالیات", - "tax_category_code" => "کد طبقه بندی مالیاتی", - "tax_category_duplicate" => "دسته بندی مالیات کپی", - "tax_category_invalid_chars" => "نویسه های نامعتبر در نام طبقه مالیاتی", - "tax_category_name" => "نام طبقه مالیاتی", - "tax_category_new" => "طبقه بندی مالیات جدید", - "tax_category_required" => "طبقه بندی مالیات لازم است", - "tax_code" => "کد مالیاتی", - "tax_code_cannot_be_deleted" => "حذف کد مالیاتی انجام نشد", - "tax_code_duplicate" => "کپی مالیات کد", - "tax_code_invalid_chars" => "نویسه های نامعتبر در کد مالیاتی", - "tax_code_name" => "نام کد مالیاتی", - "tax_code_required" => "کد مالیات یک زمینه ضروری است", - "tax_code_successful_deleted" => "شما کد مالیات را با موفقیت حذف کرده اید", - "tax_code_successful_updated" => "شما با موفقیت به روزرسانی کردید", - "tax_code_successful_updating" => "کد مالیات را با موفقیت به روز کرده اید", - "tax_code_successfully_added" => "شما با موفقیت اضافه کردید", - "tax_code_type" => "نوع کد مالیاتی", - "tax_codes" => "کد مالیاتی", - "tax_codes_configuration" => "پیکربندی کد مالیاتی", - "tax_codes_saved_successfully" => "تغییرات کد مالیاتی ذخیره شده است", - "tax_codes_saved_unsuccessfully" => "تغییرات کد مالیاتی ذخیره نشده است", - "tax_excluded" => "پرداخت مالیات", - "tax_group" => "گروه مالیاتی", - "tax_group_not_unique" => "گروه مالیاتی{0} منحصر به فرد نیست", - "tax_group_sequence" => "دنباله گروه مالیاتی", - "tax_included" => "با احتساب مالیات", - "tax_jurisdiction" => "صلاحیت مالیاتی", - "tax_jurisdiction_duplicate" => "صلاحیت صلاحیت مالیات", - "tax_jurisdiction_invalid_chars" => "شخصیت های نامعتبر به نام حوزه قضایی", - "tax_jurisdiction_required" => "صلاحیت مالیاتی لازم است", - "tax_jurisdictions" => "صلاحیت های مالیاتی", - "tax_jurisdictions_configuration" => "پیکربندی صلاحیت های مالیاتی", - "tax_jurisdictions_saved_successfully" => "تغییرات قضایی مالیاتی ذخیره شده", - "tax_jurisdictions_saved_unsuccessfully" => "تغییرات قضایی مالیاتی ذخیره نشده است", - "tax_rate" => "نرخ مالیات", - "tax_rate_configuration" => "پیکربندی نرخ مالیات", - "tax_rate_error_adding_updating" => "افزودن یا به روزرسانی نرخ مالیات انجام نشد", - "tax_rate_numeric" => "نرخ مالیات باید یک عدد باشد", - "tax_rate_required" => "نرخ مالیات یک زمینه ضروری است", - "tax_rate_successful_updated" => "شما با موفقیت به روزرسانی کردید", - "tax_rate_successfully_added" => "شما با موفقیت اضافه کردید", - "tax_rates" => "نرخ مالیات", - "tax_rates_configuration" => "پیکربندی نرخ مالیات", - "tax_rounding" => "گرد کردن مالیات", - "tax_type" => "نوع مالیات", - "update" => "به روز رسانی نرخ مالیات", - "vat_tax" => "مالیات بر ارزش افزوده", + "add_exception" => "یک مورد استثنا اضافه کن", + "cascade" => "آبشار", + "cascade_sequence" => "دنباله آبشار", + "city" => "شهر", + "code" => "کد", + "confirm_delete" => "آیا مطمئن هستید که می خواهید این قانون مالیات را حذف کنید؟ این اقدام قابل بازگشت نیست", + "confirm_restore" => "آیا مطمئن هستید که می خواهید کد (های) مالیاتی انتخاب شده را بازیابی کنید؟", + "default_tax_category" => "طبقه بندی پیش فرض مالیات", + "default_tax_rate" => "نرخ پیش فرض مالیات", + "error_adding_updating" => "کد مالیاتی اضافه یا به روز نشد", + "group_seq" => "گروه Seq", + "jurisdiction_name" => "نام صلاحیت", + "name" => "نام", + "new" => "مالیات جدید", + "no_taxes" => "", + "no_taxes_to_display" => "هیچ کد مالیاتی برای نمایش موجود نیست", + "reporting_authority" => "مرجع گزارشگری", + "round_half_down" => "نیمه پایین", + "round_half_even" => "نیمه حتی", + "round_half_odd" => "نیمی عجیب", + "round_half_up" => "نیمه بالا", + "rounding_code" => "کد گردی", + "sales_tax" => "مالیات بر فروش", + "sales_tax_by_invoice" => "مالیات بر فروش با فاکتور", + "sequence" => "دنباله", + "state" => "دولت", + "successful_deleted" => "شما با موفقیت حذف شده اید", + "tax_categories" => "دسته بندی های مالیاتی", + "tax_categories_configuration" => "پیکربندی دسته بندی های مالیاتی", + "tax_categories_saved_successfully" => "تغییرات دسته بندی های مالیاتی ذخیره شده", + "tax_categories_saved_unsuccessfully" => "تغییرات دسته بندی های مالیاتی ذخیره نشده است", + "tax_category" => "طبقه بندی مالیات", + "tax_category_code" => "کد طبقه بندی مالیاتی", + "tax_category_duplicate" => "دسته بندی مالیات کپی", + "tax_category_invalid_chars" => "نویسه های نامعتبر در نام طبقه مالیاتی", + "tax_category_name" => "نام طبقه مالیاتی", + "tax_category_new" => "طبقه بندی مالیات جدید", + "tax_category_required" => "طبقه بندی مالیات لازم است", + "tax_code" => "کد مالیاتی", + "tax_code_cannot_be_deleted" => "حذف کد مالیاتی انجام نشد", + "tax_code_duplicate" => "کپی مالیات کد", + "tax_code_invalid_chars" => "نویسه های نامعتبر در کد مالیاتی", + "tax_code_name" => "نام کد مالیاتی", + "tax_code_required" => "کد مالیات یک زمینه ضروری است", + "tax_code_successful_deleted" => "شما کد مالیات را با موفقیت حذف کرده اید", + "tax_code_successful_updated" => "شما با موفقیت به روزرسانی کردید", + "tax_code_successful_updating" => "کد مالیات را با موفقیت به روز کرده اید", + "tax_code_successfully_added" => "شما با موفقیت اضافه کردید", + "tax_code_type" => "نوع کد مالیاتی", + "tax_codes" => "کد مالیاتی", + "tax_codes_configuration" => "پیکربندی کد مالیاتی", + "tax_codes_saved_successfully" => "تغییرات کد مالیاتی ذخیره شده است", + "tax_codes_saved_unsuccessfully" => "تغییرات کد مالیاتی ذخیره نشده است", + "tax_excluded" => "پرداخت مالیات", + "tax_group" => "گروه مالیاتی", + "tax_group_not_unique" => "گروه مالیاتی{0} منحصر به فرد نیست", + "tax_group_sequence" => "دنباله گروه مالیاتی", + "tax_included" => "با احتساب مالیات", + "tax_jurisdiction" => "صلاحیت مالیاتی", + "tax_jurisdiction_duplicate" => "صلاحیت صلاحیت مالیات", + "tax_jurisdiction_invalid_chars" => "شخصیت های نامعتبر به نام حوزه قضایی", + "tax_jurisdiction_required" => "صلاحیت مالیاتی لازم است", + "tax_jurisdictions" => "صلاحیت های مالیاتی", + "tax_jurisdictions_configuration" => "پیکربندی صلاحیت های مالیاتی", + "tax_jurisdictions_saved_successfully" => "تغییرات قضایی مالیاتی ذخیره شده", + "tax_jurisdictions_saved_unsuccessfully" => "تغییرات قضایی مالیاتی ذخیره نشده است", + "tax_rate" => "نرخ مالیات", + "tax_rate_configuration" => "پیکربندی نرخ مالیات", + "tax_rate_error_adding_updating" => "افزودن یا به روزرسانی نرخ مالیات انجام نشد", + "tax_rate_numeric" => "نرخ مالیات باید یک عدد باشد", + "tax_rate_required" => "نرخ مالیات یک زمینه ضروری است", + "tax_rate_successful_updated" => "شما با موفقیت به روزرسانی کردید", + "tax_rate_successfully_added" => "شما با موفقیت اضافه کردید", + "tax_rates" => "نرخ مالیات", + "tax_rates_configuration" => "پیکربندی نرخ مالیات", + "tax_rounding" => "گرد کردن مالیات", + "tax_type" => "نوع مالیات", + "update" => "به روز رسانی نرخ مالیات", + "vat_tax" => "مالیات بر ارزش افزوده", ]; diff --git a/app/Language/fa/index.html b/app/Language/fa/index.html index b702fbc39..69df4e1df 100644 --- a/app/Language/fa/index.html +++ b/app/Language/fa/index.html @@ -1,7 +1,7 @@ - 403 Forbidden + 403 Forbidden diff --git a/app/Language/fr/Attributes.php b/app/Language/fr/Attributes.php index 0a4fcffa1..190a99c67 100644 --- a/app/Language/fr/Attributes.php +++ b/app/Language/fr/Attributes.php @@ -1,32 +1,32 @@ "La valeur de l'attribut ne doit pas contenir '_' ou '|'", - "confirm_delete" => "Êtes-vous certain de vouloir supprimer le(s) attribut(s) sélectionné(s) ?", - "confirm_restore" => "Êtes-vous certain de vouloir restaurer le(s) attribut(s) sélectionné(s) ?", - "definition_cannot_be_deleted" => "Le(s) attribut(s) sélectionné(s) n'ont pas pu être supprimé(s)", - "definition_error_adding_updating" => "L'attribut {0} n'a pas pu être ajouté ou mis à jour. Veuillez vérifier le journal d'erreurs.", - "definition_flags" => "Visibilité de l'attribut", - "definition_group" => "Groupe", - "definition_id" => "ID", - "definition_name" => "Ajouter un attribut", - "definition_name_required" => "Le nom de l'attribut est requis", - "definition_one_or_multiple" => "attribut(s)", - "definition_successful_adding" => "Vous avez ajouté l'article avec succès", - "definition_successful_deleted" => "Vous avez supprimé avec succès", - "definition_successful_updating" => "Vous avez mis-à-jour l'attribut avec succès", - "definition_type" => "Type d'attribut", - "definition_type_required" => "Le type d'attribut est requis", - "definition_unit" => "Unité de mesure", - "definition_values" => "Valeurs de l'attribut", - "new" => "Nouvel attribut", - "no_attributes_to_display" => "Aucun attribut à afficher", - "receipt_visibility" => "Reçu", - "show_in_items" => "Afficher dans les articles", - "show_in_items_visibility" => "Articles", - "show_in_receipt" => "Afficher sur le reçu", - "show_in_receivings" => "Afficher dans les réceptions", - "show_in_receivings_visibility" => "Réceptions", - "show_in_sales" => "Afficher dans les ventes", - "show_in_sales_visibility" => "Ventes", - "update" => "Mettre à jour l'attribut", + "attribute_value_invalid_chars" => "La valeur de l'attribut ne doit pas contenir '_' ou '|'", + "confirm_delete" => "Êtes-vous certain de vouloir supprimer le(s) attribut(s) sélectionné(s) ?", + "confirm_restore" => "Êtes-vous certain de vouloir restaurer le(s) attribut(s) sélectionné(s) ?", + "definition_cannot_be_deleted" => "Le(s) attribut(s) sélectionné(s) n'ont pas pu être supprimé(s)", + "definition_error_adding_updating" => "L'attribut {0} n'a pas pu être ajouté ou mis à jour. Veuillez vérifier le journal d'erreurs.", + "definition_flags" => "Visibilité de l'attribut", + "definition_group" => "Groupe", + "definition_id" => "ID", + "definition_name" => "Ajouter un attribut", + "definition_name_required" => "Le nom de l'attribut est requis", + "definition_one_or_multiple" => "attribut(s)", + "definition_successful_adding" => "Vous avez ajouté l'article avec succès", + "definition_successful_deleted" => "Vous avez supprimé avec succès", + "definition_successful_updating" => "Vous avez mis-à-jour l'attribut avec succès", + "definition_type" => "Type d'attribut", + "definition_type_required" => "Le type d'attribut est requis", + "definition_unit" => "Unité de mesure", + "definition_values" => "Valeurs de l'attribut", + "new" => "Nouvel attribut", + "no_attributes_to_display" => "Aucun attribut à afficher", + "receipt_visibility" => "Reçu", + "show_in_items" => "Afficher dans les articles", + "show_in_items_visibility" => "Articles", + "show_in_receipt" => "Afficher sur le reçu", + "show_in_receivings" => "Afficher dans les réceptions", + "show_in_receivings_visibility" => "Réceptions", + "show_in_sales" => "Afficher dans les ventes", + "show_in_sales_visibility" => "Ventes", + "update" => "Mettre à jour l'attribut", ]; diff --git a/app/Language/fr/Bootstrap_tables.php b/app/Language/fr/Bootstrap_tables.php index 19312486a..eea105cb4 100644 --- a/app/Language/fr/Bootstrap_tables.php +++ b/app/Language/fr/Bootstrap_tables.php @@ -1,11 +1,11 @@ "tous", - "columns" => "Colonnes", - "hide_show_pagination" => "Masquer/Afficher la pagination", - "loading" => "Chargement en cours, patientez, s'il vous plaît ...", - "page_from_to" => "Affichage des lignes {0} à {1} sur {2} lignes au total", - "refresh" => "Rafraîchir", - "rows_per_page" => "{0} lignes par page", - "toggle" => "Alterner", + "all" => "tous", + "columns" => "Colonnes", + "hide_show_pagination" => "Masquer/Afficher la pagination", + "loading" => "Chargement en cours, patientez, s'il vous plaît ...", + "page_from_to" => "Affichage des lignes {0} à {1} sur {2} lignes au total", + "refresh" => "Rafraîchir", + "rows_per_page" => "{0} lignes par page", + "toggle" => "Alterner", ]; diff --git a/app/Language/fr/Calendar.php b/app/Language/fr/Calendar.php index 3cf887d7e..28c597acf 100644 --- a/app/Language/fr/Calendar.php +++ b/app/Language/fr/Calendar.php @@ -1,48 +1,48 @@ "Di", - "mo" => "Lu", - "tu" => "Ma", - "we" => "Me", - "th" => "Je", - "fr" => "Ve", - "sa" => "Sa", - "sun" => "Dim", - "mon" => "Lun", - "tue" => "Mar", - "wed" => "Mer", - "thu" => "Jeu", - "fri" => "Ven", - "sat" => "Sam", - "sunday" => "Dimanche", - "monday" => "Lundi", - "tuesday" => "Mardi", - "wednesday" => "Mercredi", - "thursday" => "Jeudi", - "friday" => "Vendredi", - "saturday" => "Samedi", - "jan" => "Jan", - "feb" => "Fév", - "mar" => "Mar", - "apr" => "Avr", - "may" => "Mai", - "jun" => "Juin", - "jul" => "Juil", - "aug" => "Aoû", - "sep" => "Sep", - "oct" => "Oct", - "nov" => "Nov", - "dec" => "Déc", - "january" => "Janvier", - "february" => "Février", - "march" => "Mars", - "april" => "Avril", - "mayl" => "Mai", - "june" => "Juin", - "july" => "Juillet", - "august" => "Août", - "september" => "Septembre", - "october" => "Octobre", - "november" => "Novembre", - "december" => "Décembre", + "su" => "Di", + "mo" => "Lu", + "tu" => "Ma", + "we" => "Me", + "th" => "Je", + "fr" => "Ve", + "sa" => "Sa", + "sun" => "Dim", + "mon" => "Lun", + "tue" => "Mar", + "wed" => "Mer", + "thu" => "Jeu", + "fri" => "Ven", + "sat" => "Sam", + "sunday" => "Dimanche", + "monday" => "Lundi", + "tuesday" => "Mardi", + "wednesday" => "Mercredi", + "thursday" => "Jeudi", + "friday" => "Vendredi", + "saturday" => "Samedi", + "jan" => "Jan", + "feb" => "Fév", + "mar" => "Mar", + "apr" => "Avr", + "may" => "Mai", + "jun" => "Juin", + "jul" => "Juil", + "aug" => "Aoû", + "sep" => "Sep", + "oct" => "Oct", + "nov" => "Nov", + "dec" => "Déc", + "january" => "Janvier", + "february" => "Février", + "march" => "Mars", + "april" => "Avril", + "mayl" => "Mai", + "june" => "Juin", + "july" => "Juillet", + "august" => "Août", + "september" => "Septembre", + "october" => "Octobre", + "november" => "Novembre", + "december" => "Décembre", ]; diff --git a/app/Language/fr/Cashups.php b/app/Language/fr/Cashups.php index 44b20b82a..8a6fd8e67 100644 --- a/app/Language/fr/Cashups.php +++ b/app/Language/fr/Cashups.php @@ -1,49 +1,49 @@ "Montant", - "amount_number" => "Le montant doit être un nombre", - "amount_required" => "Le montant est un champs obligatoire.", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "L'encaissement ne peut pas être supprimé", - "cash_difference" => "", - "close_date" => "Date de fermeture", - "close_employee" => "Fermé par", - "closed_amount_card" => "Cartes", - "closed_amount_cash" => "Espèces à la fermeture", - "closed_amount_check" => "Chèques", - "closed_amount_due" => "Dûs", - "closed_amount_giftcard" => "", - "closed_amount_total" => "Total", - "closed_date" => "Date de fermeture", - "confirm_delete" => "Êtes-vous certain de vouloir supprimer l'encaissement sélectionné  ?", - "confirm_restore" => "Êtes-vous certain de vouloir restaurer le(s)encaissement(s) sélectionné(s)?", - "confirm_submit" => "", - "date_number" => "La date doit être numérique", - "date_required" => "La date est requise", - "description" => "Description", - "enable_expected" => "", - "error_adding_updating" => "Erreur lors de l'ajout/mise à jour de l'encaissement", - "giftcard" => "", - "id" => "Identifiant", - "info" => "Informations d'encaissements", - "info_employee" => "", - "is_deleted" => "Supprimé", - "new" => "Nouvel encaissement", - "no_cashups_to_display" => "Il n'y a aucun encaissement à afficher", - "none_selected" => "Vous n'avez sélectionné aucun encaissement", - "note" => "Notes", - "one_or_multiple" => "Encaissement(s)", - "open_amount_cash" => "Ouverture de caisse", - "open_date" => "Date d'ouverture", - "open_employee" => "Ouvert par", - "opened_date" => "Date d'ouverture", - "successful_adding" => "Ajout d'encaissement réussi", - "successful_deleted" => "Suppression d'encaissement réussie", - "successful_updating" => "Mise à jour d'encaissement réussie", - "total" => "Total", - "transfer_amount_cash" => "Transferts", - "transfer_amount_cash_minus" => "", - "update" => "Mise à jour de l'encaissement", - "warning" => "", + "amount" => "Montant", + "amount_number" => "Le montant doit être un nombre", + "amount_required" => "Le montant est un champs obligatoire.", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "L'encaissement ne peut pas être supprimé", + "cash_difference" => "", + "close_date" => "Date de fermeture", + "close_employee" => "Fermé par", + "closed_amount_card" => "Cartes", + "closed_amount_cash" => "Espèces à la fermeture", + "closed_amount_check" => "Chèques", + "closed_amount_due" => "Dûs", + "closed_amount_giftcard" => "", + "closed_amount_total" => "Total", + "closed_date" => "Date de fermeture", + "confirm_delete" => "Êtes-vous certain de vouloir supprimer l'encaissement sélectionné  ?", + "confirm_restore" => "Êtes-vous certain de vouloir restaurer le(s)encaissement(s) sélectionné(s)?", + "confirm_submit" => "", + "date_number" => "La date doit être numérique", + "date_required" => "La date est requise", + "description" => "Description", + "enable_expected" => "", + "error_adding_updating" => "Erreur lors de l'ajout/mise à jour de l'encaissement", + "giftcard" => "", + "id" => "Identifiant", + "info" => "Informations d'encaissements", + "info_employee" => "", + "is_deleted" => "Supprimé", + "new" => "Nouvel encaissement", + "no_cashups_to_display" => "Il n'y a aucun encaissement à afficher", + "none_selected" => "Vous n'avez sélectionné aucun encaissement", + "note" => "Notes", + "one_or_multiple" => "Encaissement(s)", + "open_amount_cash" => "Ouverture de caisse", + "open_date" => "Date d'ouverture", + "open_employee" => "Ouvert par", + "opened_date" => "Date d'ouverture", + "successful_adding" => "Ajout d'encaissement réussi", + "successful_deleted" => "Suppression d'encaissement réussie", + "successful_updating" => "Mise à jour d'encaissement réussie", + "total" => "Total", + "transfer_amount_cash" => "Transferts", + "transfer_amount_cash_minus" => "", + "update" => "Mise à jour de l'encaissement", + "warning" => "", ]; diff --git a/app/Language/fr/Common.php b/app/Language/fr/Common.php index 3941e06bc..7e0a5a93e 100644 --- a/app/Language/fr/Common.php +++ b/app/Language/fr/Common.php @@ -1,88 +1,88 @@ "Adresse 1", - "address_2" => "Adresse 2", - "admin" => "", - "city" => "Ville", - "clerk" => "", - "close" => "Fermer", - "color" => "", - "comments" => "Commentaires", - "common" => "commun", - "confirm_search" => "Vous avez sélectionné une ou plusieurs lignes, celles-ci ne seront plus sélectionnées après votre recherche. Voulez-vous continuer ?", - "copyrights" => "© 2010 - {0}", - "correct_errors" => "Merci de corriger les erreurs identifiées avant d'enregistrer", - "country" => "Pays", - "dashboard" => "", - "date" => "Date", - "delete" => "Supprimer", - "det" => "détails", - "download_import_template" => "Télécharger le modèle d'importation CSV (CSV)", - "edit" => "éditer", - "email" => "Courriel", - "email_invalid_format" => "Le format de l'adresse courriel est incorrect.", - "export_csv" => "Exportation CSV", - "export_csv_no" => "Non", - "export_csv_yes" => "Oui", - "fields_required_message" => "Les champs en rouge sont requis", - "fields_required_message_unique" => "", - "first_name" => "Prénom", - "first_name_required" => "Le prénom est requis.", - "first_page" => "Premier", - "gender" => "Genre", - "gender_female" => "F", - "gender_male" => "M", - "gender_undefined" => "", - "icon" => "Icône", - "id" => "Identifiant", - "import" => "Importation", - "import_change_file" => "Changer", - "import_csv" => "Importation CSV", - "import_full_path" => "Chemin complet vers le fichier CSV requis", - "import_remove_file" => "Supprimer", - "import_select_file" => "Sélectionner le fichier", - "inv" => "fact.", - "last_name" => "Nom de famille", - "last_name_required" => "Le nom de famille est un champ obligatoire.", - "last_page" => "Dernier", - "learn_about_project" => "pour les dernières informations sur le projet.", - "list_of" => "Liste de", - "logo" => "Logo", - "logo_mark" => "Marque", - "logout" => "Déconnexion", - "manager" => "", - "migration_needed" => "Une migration de la base de donnée vers {0} démarrera après le connexion.", - "new" => "Nouveau", - "no" => "Oui", - "no_persons_to_display" => "Il n'y a personne à afficher.", - "none_selected_text" => "[Sélectionner]", - "or" => "OU", - "people" => "", - "phone_number" => "Téléphone", - "phone_number_required" => "Le numéro de téléphone est requis.", - "please_visit_my" => "SVP visitez le", - "position" => "", - "powered_by" => "Propulsé par", - "price" => "Prix", - "print" => "Imprimer", - "remove" => "Enlever", - "required" => "Requis", - "restore" => "Restaurer", - "return_policy" => "Politique de retour", - "search" => "Recherche", - "search_options" => "Options de recherche", - "searched_for" => "Recherché", - "software_short" => "OSPOS", - "software_title" => "Open Source Point of Sale", - "state" => "État", - "submit" => "Valider", - "total_spent" => "Dépenses totales", - "unknown" => "Inconnu(e)", - "view_recent_sales" => "Voir ventes récentes", - "website" => "opensourcepos.org", - "welcome" => "Bienvenue", - "welcome_message" => "Bienvenue sur OSPOS, choisissez un module ci-dessous pour commencer.", - "yes" => "Oui", - "you_are_using_ospos" => "Vous utilisez Open Source Point Of Sale Version", - "zip" => "Code postal", + "address_1" => "Adresse 1", + "address_2" => "Adresse 2", + "admin" => "", + "city" => "Ville", + "clerk" => "", + "close" => "Fermer", + "color" => "", + "comments" => "Commentaires", + "common" => "commun", + "confirm_search" => "Vous avez sélectionné une ou plusieurs lignes, celles-ci ne seront plus sélectionnées après votre recherche. Voulez-vous continuer ?", + "copyrights" => "© 2010 - {0}", + "correct_errors" => "Merci de corriger les erreurs identifiées avant d'enregistrer", + "country" => "Pays", + "dashboard" => "", + "date" => "Date", + "delete" => "Supprimer", + "det" => "détails", + "download_import_template" => "Télécharger le modèle d'importation CSV (CSV)", + "edit" => "éditer", + "email" => "Courriel", + "email_invalid_format" => "Le format de l'adresse courriel est incorrect.", + "export_csv" => "Exportation CSV", + "export_csv_no" => "Non", + "export_csv_yes" => "Oui", + "fields_required_message" => "Les champs en rouge sont requis", + "fields_required_message_unique" => "", + "first_name" => "Prénom", + "first_name_required" => "Le prénom est requis.", + "first_page" => "Premier", + "gender" => "Genre", + "gender_female" => "F", + "gender_male" => "M", + "gender_undefined" => "", + "icon" => "Icône", + "id" => "Identifiant", + "import" => "Importation", + "import_change_file" => "Changer", + "import_csv" => "Importation CSV", + "import_full_path" => "Chemin complet vers le fichier CSV requis", + "import_remove_file" => "Supprimer", + "import_select_file" => "Sélectionner le fichier", + "inv" => "fact.", + "last_name" => "Nom de famille", + "last_name_required" => "Le nom de famille est un champ obligatoire.", + "last_page" => "Dernier", + "learn_about_project" => "pour les dernières informations sur le projet.", + "list_of" => "Liste de", + "logo" => "Logo", + "logo_mark" => "Marque", + "logout" => "Déconnexion", + "manager" => "", + "migration_needed" => "Une migration de la base de donnée vers {0} démarrera après le connexion.", + "new" => "Nouveau", + "no" => "Oui", + "no_persons_to_display" => "Il n'y a personne à afficher.", + "none_selected_text" => "[Sélectionner]", + "or" => "OU", + "people" => "", + "phone_number" => "Téléphone", + "phone_number_required" => "Le numéro de téléphone est requis.", + "please_visit_my" => "SVP visitez le", + "position" => "", + "powered_by" => "Propulsé par", + "price" => "Prix", + "print" => "Imprimer", + "remove" => "Enlever", + "required" => "Requis", + "restore" => "Restaurer", + "return_policy" => "Politique de retour", + "search" => "Recherche", + "search_options" => "Options de recherche", + "searched_for" => "Recherché", + "software_short" => "OSPOS", + "software_title" => "Open Source Point of Sale", + "state" => "État", + "submit" => "Valider", + "total_spent" => "Dépenses totales", + "unknown" => "Inconnu(e)", + "view_recent_sales" => "Voir ventes récentes", + "website" => "opensourcepos.org", + "welcome" => "Bienvenue", + "welcome_message" => "Bienvenue sur OSPOS, choisissez un module ci-dessous pour commencer.", + "yes" => "Oui", + "you_are_using_ospos" => "Vous utilisez Open Source Point Of Sale Version", + "zip" => "Code postal", ]; diff --git a/app/Language/fr/Config.php b/app/Language/fr/Config.php index b670f18f5..3bd5291f5 100644 --- a/app/Language/fr/Config.php +++ b/app/Language/fr/Config.php @@ -1,330 +1,330 @@ "Adresse de l'entreprise", - "address_required" => "L'adresse de l'entreprise est un champ obligatoire.", - "all_set" => "Toutes les permissions de fichier sont correctement configurées !", - "allow_duplicate_barcodes" => "Autoriser les codes à barres en double", - "apostrophe" => "apostrophe", - "backup_button" => "Sauvegarde", - "backup_database" => "Sauvegarder la base de données", - "barcode" => "Code à barre", - "barcode_company" => "Nom de l'entreprise", - "barcode_configuration" => "Configuration du code à barre", - "barcode_content" => "Contenu du code à barre", - "barcode_first_row" => "Ligne 1", - "barcode_font" => "Police d'écriture", - "barcode_formats" => "Formats d'entrée", - "barcode_generate_if_empty" => "Générer si vide.", - "barcode_height" => "Hauteur (px)", - "barcode_id" => "Id/Nom d'article", - "barcode_info" => "Configuration des informations du code à barre", - "barcode_layout" => "Disposition du code à barre", - "barcode_name" => "Nom", - "barcode_number" => "Code à barre", - "barcode_number_in_row" => "Numéro dans la ligne", - "barcode_page_cellspacing" => "Afficher l'espacement de cellules de la page.", - "barcode_page_width" => "Afficher la largeur de la page", - "barcode_price" => "Prix", - "barcode_second_row" => "Ligne 2", - "barcode_third_row" => "Ligne 3", - "barcode_tooltip" => "Avertissement : cette fonctionnalité peut entraîner l'importation ou la création de doublons. Ne pas utiliser si vous ne voulez pas de codes à barres en double.", - "barcode_type" => "Type de Code à barre", - "barcode_width" => "Largeur (px)", - "bottom" => "Pied de page", - "cash_button" => "", - "cash_button_1" => "", - "cash_button_2" => "", - "cash_button_3" => "", - "cash_button_4" => "", - "cash_button_5" => "", - "cash_button_6" => "", - "cash_decimals" => "Décimales", - "cash_decimals_tooltip" => "Si les décimales et les décimales monétaires sont les mêmes, aucun arrondi ne sera effectué.", - "cash_rounding" => "Arrondis de trésorerie", - "category_dropdown" => "Afficher les catégories dans un menu déroulant", - "center" => "Centre", - "change_apperance_tooltip" => "", - "comma" => "virgule", - "company" => "Nome de l'Entreprise", - "company_avatar" => "", - "company_change_image" => "Changer l'image", - "company_logo" => "Logo de l'Entreprise", - "company_remove_image" => "Supprimer l'image", - "company_required" => "Le nom d'entreprise est requis", - "company_select_image" => "Sélectionner l'image", - "company_website_url" => "Le site Web de l'entreprise n'est pas une URL valide (http: //...).", - "country_codes" => "Codes de pays", - "country_codes_tooltip" => "Liste des codes de pays, séparés par des virgules, pour la recherche d'adresses nominatives.", - "currency_code" => "Code de devise", - "currency_decimals" => "Décimales", - "currency_symbol" => "Symbole Monétaire", - "current_employee_only" => "", - "customer_reward" => "Récompense", - "customer_reward_duplicate" => "La récompense doit être unique.", - "customer_reward_enable" => "Activer les récompenses client", - "customer_reward_invalid_chars" => "La récompense ne peut pas contenir '_'", - "customer_reward_required" => "La récompense est un champ obligatoire", - "customer_sales_tax_support" => "Soutien à la taxe de vente au client", - "date_or_time_format" => "Filtre de date et d'heure", - "datetimeformat" => "Format de la date et de l'heure", - "decimal_point" => "Virgule", - "default_barcode_font_size_number" => "La taille de la police du code-barres par défaut doit être un nombre.", - "default_barcode_font_size_required" => "La taille de police du code-barres par défaut est un champ obligatoire.", - "default_barcode_height_number" => "La hauteur du code-barres par défaut doit être un nombre.", - "default_barcode_height_required" => "La hauteur du code-barres par défaut est un champ obligatoire.", - "default_barcode_num_in_row_number" => "Le numéro de code-barres par défaut dans la ligne doit être un nombre.", - "default_barcode_num_in_row_required" => "Le numéro de code-barres par défaut dans la ligne est un champ obligatoire.", - "default_barcode_page_cellspacing_number" => "Page de codes-barres par défaut L'espace-cellule doit être un nombre.", - "default_barcode_page_cellspacing_required" => "Page Barcode par défaut L'espacement des cellules est un champ obligatoire.", - "default_barcode_page_width_number" => "La largeur de page du code à barres par défaut doit être un nombre.", - "default_barcode_page_width_required" => "Largeur de page de code-barres par défaut est un champ obligatoire.", - "default_barcode_width_number" => "La largeur de code à barres par défaut doit être un nombre.", - "default_barcode_width_required" => "La largeur de code à barres par défaut est un champ obligatoire.", - "default_item_columns" => "Colonnes d'article visibles par défaut", - "default_origin_tax_code" => "Code de taxe d'origine par défaut", - "default_receivings_discount" => "Rabais de réception par défaut", - "default_receivings_discount_number" => "Rabais de réception par défaut doit être numérique.", - "default_receivings_discount_required" => "Rabais de réception par défaut est requis.", - "default_sales_discount" => "Remboursement des ventes par défaut %", - "default_sales_discount_number" => "Le rabais de vente par défaut doit être un nombre.", - "default_sales_discount_required" => "La remise sur les ventes par défaut est un champ obligatoire.", - "default_tax_category" => "Catégorie fiscale par défaut", - "default_tax_code" => "Code fiscal par défaut", - "default_tax_jurisdiction" => "Juridiction fiscale par défaut", - "default_tax_name_number" => "Le nom de taxe par défaut doit être une chaîne.", - "default_tax_name_required" => "Le nom de taxe par défaut est un champ obligatoire.", - "default_tax_rate" => "Taux d'Imposition par Défaut", - "default_tax_rate_1" => "Taux d'Imposition 1", - "default_tax_rate_2" => "Taux d'Imposition 2", - "default_tax_rate_3" => "", - "default_tax_rate_number" => "Le taux de taxe par défaut doit être un nombre.", - "default_tax_rate_required" => "Le taux de taxe par défaut est un champ obligatoire.", - "derive_sale_quantity" => "Autoriser la quantité de vente dérivée", - "derive_sale_quantity_tooltip" => "Si coché, un nouveau type d'article sera fourni pour les articles commandés par montant étendu", - "dinner_table" => "Table", - "dinner_table_duplicate" => "La table doit être unique.", - "dinner_table_enable" => "Activer les tables de dîner", - "dinner_table_invalid_chars" => "Le nom de la table ne peut pas contenir '_'.", - "dinner_table_required" => "La table est un champ obligatoire.", - "dot" => "point", - "email" => "Courriel", - "email_configuration" => "Email Configuration", - "email_mailpath" => "Path de Sendmail", - "email_protocol" => "Protocol", - "email_receipt_check_behaviour" => "Case à cocher Reçu de courrier électronique", - "email_receipt_check_behaviour_always" => "Toujours vérifié", - "email_receipt_check_behaviour_last" => "Se souvenir de la dernière sélection", - "email_receipt_check_behaviour_never" => "Toujours décoché", - "email_smtp_crypto" => "SMTP Cryptage", - "email_smtp_host" => "SMTP Serveur", - "email_smtp_pass" => "Mot de passe SMTP", - "email_smtp_port" => "Port SMTP", - "email_smtp_timeout" => "Délai SMTP (s)", - "email_smtp_user" => "Nom d'utilisateur SMTP", - "enable_avatar" => "", - "enable_avatar_tooltip" => "", - "enable_dropdown_tooltip" => "", - "enable_new_look" => "", - "enable_right_bar" => "", - "enable_right_bar_tooltip" => "", - "enforce_privacy" => "Appliquer la confidentialité", - "enforce_privacy_tooltip" => "Protéger la confidentialité des clients en imposant le brouillage des données en cas de suppression de leurs données", - "fax" => "Fax", - "file_perm" => "Il y a des problèmes avec les permissions de fichier. Veuillez corriger et recharger la page.", - "financial_year" => "Début de l'année fiscale", - "financial_year_apr" => "1er avril", - "financial_year_aug" => "1er août", - "financial_year_dec" => "1er décembre", - "financial_year_feb" => "1er février", - "financial_year_jan" => "1er janvier", - "financial_year_jul" => "1er juillet", - "financial_year_jun" => "1er juin", - "financial_year_mar" => "1er mars", - "financial_year_may" => "1er mai", - "financial_year_nov" => "1er novembre", - "financial_year_oct" => "1er octobre", - "financial_year_sep" => "1er septembre", - "floating_labels" => "Étiquettes flottantes", - "gcaptcha_enable" => "Page de connexion reCAPTCHA", - "gcaptcha_secret_key" => "clé secrète reCAPTCHA", - "gcaptcha_secret_key_required" => "La clé secrète reCAPTCHA est un champ obligatoire", - "gcaptcha_site_key" => "clé de site reCAPTCHA", - "gcaptcha_site_key_required" => "La clé de site reCAPTCHA est un champ obligatoire", - "gcaptcha_tooltip" => "Protégez la page de connexion avec Google reCAPTCHA, cliquez sur l'icône d'une paire de clés API.", - "general" => "General", - "general_configuration" => "General Configuration", - "giftcard_number" => "Numéro de carte-cadeau", - "giftcard_random" => "Générer aléatoire", - "giftcard_series" => "Générer en série", - "image_allowed_file_types" => "Types de fichier autorisés", - "image_max_height_tooltip" => "Hauteur maximale autorisée en pixels pour le téléversement d'images.", - "image_max_size_tooltip" => "Taille de fichier maximale autorisée en kilobytes pour le téléversement d'images.", - "image_max_width_tooltip" => "Largeur maximale autorisée en pixels pour le téléversement d'images.", - "image_restrictions" => "Restrictions sur le téléversement d'images", - "include_hsn" => "Prise en charge des codes HSN", - "info" => "Entreprise", - "info_configuration" => "Çonfiguration de l'Entreprise", - "input_groups" => "Groupes d'entrée", - "integrations" => "Intégrations", - "integrations_configuration" => "Intégration de parties tierces", - "invoice" => "Facture", - "invoice_configuration" => "Paramètres d'impression de facture", - "invoice_default_comments" => "Commentaires par facture par défaut", - "invoice_email_message" => "Modèle de courrier électronique de facture", - "invoice_enable" => "Activer la facturation", - "invoice_printer" => "Imprimante de facture", - "invoice_type" => "Type de facturation", - "is_readable" => "est lisible, mais les permissions sont incorrectes. Définir à 640 ou 660 et rafraîchir.", - "is_writable" => "is écrivable, mais les permissions sont plus hautes que 750.", - "item_markup" => "", - "jsprintsetup_required" => "Attention: Cette fonctionnalité ne sera active que si l'extension FireFox jsPrintSetup est installée. Enregistrer quand même ?", - "language" => "Langue", - "last_used_invoice_number" => "Dernier numéro de facture utilisé", - "last_used_quote_number" => "Dernier numéro de devis utilisé", - "last_used_work_order_number" => "Dernier numéro W / O utilisé", - "left" => "Gauche", - "license" => "Licence", - "license_configuration" => "Déclaration de licence", - "line_sequence" => "Séquence de lignes", - "lines_per_page" => "Lignes par page", - "lines_per_page_number" => "Les lignes par page doivent être un nombre.", - "lines_per_page_required" => "Lignes par page est un champ obligatoire.", - "locale" => "Localisation", - "locale_configuration" => "Configuration de localisation", - "locale_info" => "Informations de configuration de localisation", - "location" => "Inventaire", - "location_configuration" => "Emplacements de stock", - "location_info" => "Informations de configuration de l'emplacement", - "login_form" => "Style du formulaire de connexion", - "logout" => "Voulez-vous faire une sauvegarde avant de vous déconnecter ? Cliquez sur [OK] pour sauvegarder ou sur [Annuler] pour vous déconnecter.", - "mailchimp" => "MailChimp", - "mailchimp_api_key" => "Clé API MailChimp", - "mailchimp_configuration" => "Configuration de MailChimp", - "mailchimp_key_successfully" => "La clé API est valide.", - "mailchimp_key_unsuccessfully" => "La clé de l'API est invalide.", - "mailchimp_lists" => "Liste(s) MailChimp", - "mailchimp_tooltip" => "Cliquez sur l'icône pour une clé API.", - "message" => "Message", - "message_configuration" => "Message Configuration", - "msg_msg" => "Message texte enregistré", - "msg_msg_placeholder" => "Si vous souhaitez utiliser un modèle de SMS, enregistrez votre message ici. Sinon, laisser la boîte en blanc.", - "msg_pwd" => "SMS-API Password", - "msg_pwd_required" => "SMS-API Password est un champ obligatoire", - "msg_src" => "ID de l'expéditeur de SMS-API", - "msg_src_required" => "L'ID de l'expéditeur de SMS-API est un champ obligatoire", - "msg_uid" => "Nom d'utilisateur de l'API SMS", - "msg_uid_required" => "Le nom d'utilisateur de l'API SMS est un champ obligatoire", - "multi_pack_enabled" => "Ensembles multiples par article", - "no_risk" => "Pas de risques de sécurité/vulnérabilité.", - "none" => "none", - "notify_alignment" => "Position contextuelle de notification", - "number_format" => "Number Format", - "number_locale" => "Localisation", - "number_locale_invalid" => "L'environnement local entré est invalide. Vérifiez le lien dans l'info-bulle pour trouver un environnement local valide.", - "number_locale_required" => "Number Locale est un champ obligatoire.", - "number_locale_tooltip" => "Trouvez un lieu approprié grâce à ce lien.", - "os_timezone" => "Fuseau horaire d'OSPOS :", - "ospos_info" => "Informations d'installation d'OSPOS", - "payment_options_order" => "Ordre des options de paiement", - "perm_risk" => "Des permissions incorrectement définies exposent ce logiciel a des risques de sécurité.", - "phone" => "Téléphone", - "phone_required" => "Téléphone de l'entreprise est un champ obligatoire.", - "print_bottom_margin" => "Marge Bas", - "print_bottom_margin_number" => "La marge inférieure doit être un nombre.", - "print_bottom_margin_required" => "La marge inférieure est un champ obligatoire.", - "print_delay_autoreturn" => "Retour automatique a la vente retarde", - "print_delay_autoreturn_number" => "Retour automatique à la vente retarde est un champ obligatoire.", - "print_delay_autoreturn_required" => "Retour automatique à la vente retarde doit être un nombre.", - "print_footer" => "Pied de page imprimante", - "print_header" => "Imprimer l'en-tête du navigateur", - "print_left_margin" => "Marge Gauche", - "print_left_margin_number" => "La marge gauche par défaut doit être un nombre.", - "print_left_margin_required" => "La marge gauche par défaut est un champ obligatoire.", - "print_receipt_check_behaviour" => "Imprimer la case à cocher Reçu", - "print_receipt_check_behaviour_always" => "Toujours vérifié", - "print_receipt_check_behaviour_last" => "Se souvenir de la dernière sélection", - "print_receipt_check_behaviour_never" => "Toujours décoché", - "print_right_margin" => "Marge Droit", - "print_right_margin_number" => "La marge droite par défaut doit être un nombre.", - "print_right_margin_required" => "La marge droite par défaut est un champ obligatoire.", - "print_silently" => "Afficher la boîte de dialogue Imprimer", - "print_top_margin" => "Margin Superieure", - "print_top_margin_number" => "Margin Top doit être un nombre.", - "print_top_margin_required" => "Margin Top est un champ obligatoire.", - "quantity_decimals" => "Nombre de décimales", - "quick_cash_enable" => "", - "quote_default_comments" => "Commentaires de devis par défaut", - "receipt" => "Le reçu", - "receipt_category" => "", - "receipt_configuration" => "Paramètres d'impression du reçu", - "receipt_default" => "Défaut", - "receipt_font_size" => "Taille de font", - "receipt_font_size_number" => "La taille de la font doit être un nombre.", - "receipt_font_size_required" => "Taille de la font est un champ obligatoire.", - "receipt_info" => "Informations de configuration du reçu", - "receipt_printer" => "Imprimante de tickets", - "receipt_short" => "Court", - "receipt_show_company_name" => "Afficher le nom de l'entreprise", - "receipt_show_description" => "Montrer la description", - "receipt_show_serialnumber" => "Afficher le numéro de série", - "receipt_show_tax_ind" => "Afficher les indicateurs de taxe", - "receipt_show_taxes" => "Afficher les taxes", - "receipt_show_total_discount" => "Afficher le rabais total", - "receipt_template" => "Modèle de reçu", - "receiving_calculate_average_price" => "Calc. prix moyen (Réception)", - "recv_invoice_format" => "Format de la facture des factures", - "register_mode_default" => "Mode de registre par défaut", - "report_an_issue" => "Signaler un problème", - "return_policy_required" => "Le Message est un champ requis.", - "reward" => "Récompense", - "reward_configuration" => "Configuration de récompense", - "right" => "Droite", - "sales_invoice_format" => "Format de la facture de vente", - "sales_quote_format" => "Format de devis de vente", - "saved_successfully" => "Configuration enregistrer avec succès.", - "saved_unsuccessfully" => "L'enregistrement de configuration a échoué.", - "security_issue" => "Avertissement de faille de sécurité", - "server_notice" => "Veuillez utiliser les informations ci-dessous pour signaler un problème.", - "service_charge" => "", - "show_due_enable" => "", - "show_office_group" => "Afficher l'icône du bureau", - "statistics" => "Envoyer des statistiques", - "statistics_tooltip" => "Envoyer des statistiques pour le développement et l'amélioration des fonctionnalités.", - "stock_location" => "Emplacement du stock", - "stock_location_duplicate" => "L'emplacement du stock doit être unique.", - "stock_location_invalid_chars" => "L'emplacement de stockage ne peut pas contenir '_'.", - "stock_location_required" => "L'emplacement du stock est un champ obligatoire.", - "suggestions_fifth_column" => "", - "suggestions_first_column" => "Colonne 1", - "suggestions_fourth_column" => "", - "suggestions_layout" => "Présentation des suggestions de recherche", - "suggestions_second_column" => "Colonne 2", - "suggestions_third_column" => "Colonne 3", - "system_conf" => "Paramètres & Configuration", - "system_info" => "System Info", - "table" => "Table", - "table_configuration" => "Configuration de la table", - "takings_printer" => "Imprimante de reçu", - "tax" => "Taxe", - "tax_category" => "Catégorie fiscale", - "tax_category_duplicate" => "La catégorie de taxe saisie existe déjà.", - "tax_category_invalid_chars" => "La catégorie de taxe entrée est invalide.", - "tax_category_required" => "La catégorie de taxe est requise.", - "tax_category_used" => "La catégorie de taxe ne peut pas être supprimée car elle est utilisée.", - "tax_configuration" => "Configuration de l'impôt", - "tax_decimals" => "Décimales fiscales", - "tax_id" => "Id de taxe", - "tax_included" => "Taxe inclu", - "theme" => "Thème", - "theme_preview" => "Aperçu du thème :", - "thousands_separator" => "Séparateur de milliers", - "timezone" => "Fuseau Horaire", - "timezone_error" => "Le fuseau horaire d'OSPOS est différent de votre fuseau horaire local.", - "top" => "Haut", - "use_destination_based_tax" => "Utiliser la taxe basée sur la destination", - "user_timezone" => "Fuseau horaire local :", - "website" => "Site Internet", - "wholesale_markup" => "", - "work_order_enable" => "Support de commande de travail", - "work_order_format" => "Format de bon de travail", + "address" => "Adresse de l'entreprise", + "address_required" => "L'adresse de l'entreprise est un champ obligatoire.", + "all_set" => "Toutes les permissions de fichier sont correctement configurées !", + "allow_duplicate_barcodes" => "Autoriser les codes à barres en double", + "apostrophe" => "apostrophe", + "backup_button" => "Sauvegarde", + "backup_database" => "Sauvegarder la base de données", + "barcode" => "Code à barre", + "barcode_company" => "Nom de l'entreprise", + "barcode_configuration" => "Configuration du code à barre", + "barcode_content" => "Contenu du code à barre", + "barcode_first_row" => "Ligne 1", + "barcode_font" => "Police d'écriture", + "barcode_formats" => "Formats d'entrée", + "barcode_generate_if_empty" => "Générer si vide.", + "barcode_height" => "Hauteur (px)", + "barcode_id" => "Id/Nom d'article", + "barcode_info" => "Configuration des informations du code à barre", + "barcode_layout" => "Disposition du code à barre", + "barcode_name" => "Nom", + "barcode_number" => "Code à barre", + "barcode_number_in_row" => "Numéro dans la ligne", + "barcode_page_cellspacing" => "Afficher l'espacement de cellules de la page.", + "barcode_page_width" => "Afficher la largeur de la page", + "barcode_price" => "Prix", + "barcode_second_row" => "Ligne 2", + "barcode_third_row" => "Ligne 3", + "barcode_tooltip" => "Avertissement : cette fonctionnalité peut entraîner l'importation ou la création de doublons. Ne pas utiliser si vous ne voulez pas de codes à barres en double.", + "barcode_type" => "Type de Code à barre", + "barcode_width" => "Largeur (px)", + "bottom" => "Pied de page", + "cash_button" => "", + "cash_button_1" => "", + "cash_button_2" => "", + "cash_button_3" => "", + "cash_button_4" => "", + "cash_button_5" => "", + "cash_button_6" => "", + "cash_decimals" => "Décimales", + "cash_decimals_tooltip" => "Si les décimales et les décimales monétaires sont les mêmes, aucun arrondi ne sera effectué.", + "cash_rounding" => "Arrondis de trésorerie", + "category_dropdown" => "Afficher les catégories dans un menu déroulant", + "center" => "Centre", + "change_apperance_tooltip" => "", + "comma" => "virgule", + "company" => "Nome de l'Entreprise", + "company_avatar" => "", + "company_change_image" => "Changer l'image", + "company_logo" => "Logo de l'Entreprise", + "company_remove_image" => "Supprimer l'image", + "company_required" => "Le nom d'entreprise est requis", + "company_select_image" => "Sélectionner l'image", + "company_website_url" => "Le site Web de l'entreprise n'est pas une URL valide (http: //...).", + "country_codes" => "Codes de pays", + "country_codes_tooltip" => "Liste des codes de pays, séparés par des virgules, pour la recherche d'adresses nominatives.", + "currency_code" => "Code de devise", + "currency_decimals" => "Décimales", + "currency_symbol" => "Symbole Monétaire", + "current_employee_only" => "", + "customer_reward" => "Récompense", + "customer_reward_duplicate" => "La récompense doit être unique.", + "customer_reward_enable" => "Activer les récompenses client", + "customer_reward_invalid_chars" => "La récompense ne peut pas contenir '_'", + "customer_reward_required" => "La récompense est un champ obligatoire", + "customer_sales_tax_support" => "Soutien à la taxe de vente au client", + "date_or_time_format" => "Filtre de date et d'heure", + "datetimeformat" => "Format de la date et de l'heure", + "decimal_point" => "Virgule", + "default_barcode_font_size_number" => "La taille de la police du code-barres par défaut doit être un nombre.", + "default_barcode_font_size_required" => "La taille de police du code-barres par défaut est un champ obligatoire.", + "default_barcode_height_number" => "La hauteur du code-barres par défaut doit être un nombre.", + "default_barcode_height_required" => "La hauteur du code-barres par défaut est un champ obligatoire.", + "default_barcode_num_in_row_number" => "Le numéro de code-barres par défaut dans la ligne doit être un nombre.", + "default_barcode_num_in_row_required" => "Le numéro de code-barres par défaut dans la ligne est un champ obligatoire.", + "default_barcode_page_cellspacing_number" => "Page de codes-barres par défaut L'espace-cellule doit être un nombre.", + "default_barcode_page_cellspacing_required" => "Page Barcode par défaut L'espacement des cellules est un champ obligatoire.", + "default_barcode_page_width_number" => "La largeur de page du code à barres par défaut doit être un nombre.", + "default_barcode_page_width_required" => "Largeur de page de code-barres par défaut est un champ obligatoire.", + "default_barcode_width_number" => "La largeur de code à barres par défaut doit être un nombre.", + "default_barcode_width_required" => "La largeur de code à barres par défaut est un champ obligatoire.", + "default_item_columns" => "Colonnes d'article visibles par défaut", + "default_origin_tax_code" => "Code de taxe d'origine par défaut", + "default_receivings_discount" => "Rabais de réception par défaut", + "default_receivings_discount_number" => "Rabais de réception par défaut doit être numérique.", + "default_receivings_discount_required" => "Rabais de réception par défaut est requis.", + "default_sales_discount" => "Remboursement des ventes par défaut %", + "default_sales_discount_number" => "Le rabais de vente par défaut doit être un nombre.", + "default_sales_discount_required" => "La remise sur les ventes par défaut est un champ obligatoire.", + "default_tax_category" => "Catégorie fiscale par défaut", + "default_tax_code" => "Code fiscal par défaut", + "default_tax_jurisdiction" => "Juridiction fiscale par défaut", + "default_tax_name_number" => "Le nom de taxe par défaut doit être une chaîne.", + "default_tax_name_required" => "Le nom de taxe par défaut est un champ obligatoire.", + "default_tax_rate" => "Taux d'Imposition par Défaut", + "default_tax_rate_1" => "Taux d'Imposition 1", + "default_tax_rate_2" => "Taux d'Imposition 2", + "default_tax_rate_3" => "", + "default_tax_rate_number" => "Le taux de taxe par défaut doit être un nombre.", + "default_tax_rate_required" => "Le taux de taxe par défaut est un champ obligatoire.", + "derive_sale_quantity" => "Autoriser la quantité de vente dérivée", + "derive_sale_quantity_tooltip" => "Si coché, un nouveau type d'article sera fourni pour les articles commandés par montant étendu", + "dinner_table" => "Table", + "dinner_table_duplicate" => "La table doit être unique.", + "dinner_table_enable" => "Activer les tables de dîner", + "dinner_table_invalid_chars" => "Le nom de la table ne peut pas contenir '_'.", + "dinner_table_required" => "La table est un champ obligatoire.", + "dot" => "point", + "email" => "Courriel", + "email_configuration" => "Email Configuration", + "email_mailpath" => "Path de Sendmail", + "email_protocol" => "Protocol", + "email_receipt_check_behaviour" => "Case à cocher Reçu de courrier électronique", + "email_receipt_check_behaviour_always" => "Toujours vérifié", + "email_receipt_check_behaviour_last" => "Se souvenir de la dernière sélection", + "email_receipt_check_behaviour_never" => "Toujours décoché", + "email_smtp_crypto" => "SMTP Cryptage", + "email_smtp_host" => "SMTP Serveur", + "email_smtp_pass" => "Mot de passe SMTP", + "email_smtp_port" => "Port SMTP", + "email_smtp_timeout" => "Délai SMTP (s)", + "email_smtp_user" => "Nom d'utilisateur SMTP", + "enable_avatar" => "", + "enable_avatar_tooltip" => "", + "enable_dropdown_tooltip" => "", + "enable_new_look" => "", + "enable_right_bar" => "", + "enable_right_bar_tooltip" => "", + "enforce_privacy" => "Appliquer la confidentialité", + "enforce_privacy_tooltip" => "Protéger la confidentialité des clients en imposant le brouillage des données en cas de suppression de leurs données", + "fax" => "Fax", + "file_perm" => "Il y a des problèmes avec les permissions de fichier. Veuillez corriger et recharger la page.", + "financial_year" => "Début de l'année fiscale", + "financial_year_apr" => "1er avril", + "financial_year_aug" => "1er août", + "financial_year_dec" => "1er décembre", + "financial_year_feb" => "1er février", + "financial_year_jan" => "1er janvier", + "financial_year_jul" => "1er juillet", + "financial_year_jun" => "1er juin", + "financial_year_mar" => "1er mars", + "financial_year_may" => "1er mai", + "financial_year_nov" => "1er novembre", + "financial_year_oct" => "1er octobre", + "financial_year_sep" => "1er septembre", + "floating_labels" => "Étiquettes flottantes", + "gcaptcha_enable" => "Page de connexion reCAPTCHA", + "gcaptcha_secret_key" => "clé secrète reCAPTCHA", + "gcaptcha_secret_key_required" => "La clé secrète reCAPTCHA est un champ obligatoire", + "gcaptcha_site_key" => "clé de site reCAPTCHA", + "gcaptcha_site_key_required" => "La clé de site reCAPTCHA est un champ obligatoire", + "gcaptcha_tooltip" => "Protégez la page de connexion avec Google reCAPTCHA, cliquez sur l'icône d'une paire de clés API.", + "general" => "General", + "general_configuration" => "General Configuration", + "giftcard_number" => "Numéro de carte-cadeau", + "giftcard_random" => "Générer aléatoire", + "giftcard_series" => "Générer en série", + "image_allowed_file_types" => "Types de fichier autorisés", + "image_max_height_tooltip" => "Hauteur maximale autorisée en pixels pour le téléversement d'images.", + "image_max_size_tooltip" => "Taille de fichier maximale autorisée en kilobytes pour le téléversement d'images.", + "image_max_width_tooltip" => "Largeur maximale autorisée en pixels pour le téléversement d'images.", + "image_restrictions" => "Restrictions sur le téléversement d'images", + "include_hsn" => "Prise en charge des codes HSN", + "info" => "Entreprise", + "info_configuration" => "Çonfiguration de l'Entreprise", + "input_groups" => "Groupes d'entrée", + "integrations" => "Intégrations", + "integrations_configuration" => "Intégration de parties tierces", + "invoice" => "Facture", + "invoice_configuration" => "Paramètres d'impression de facture", + "invoice_default_comments" => "Commentaires par facture par défaut", + "invoice_email_message" => "Modèle de courrier électronique de facture", + "invoice_enable" => "Activer la facturation", + "invoice_printer" => "Imprimante de facture", + "invoice_type" => "Type de facturation", + "is_readable" => "est lisible, mais les permissions sont incorrectes. Définir à 640 ou 660 et rafraîchir.", + "is_writable" => "is écrivable, mais les permissions sont plus hautes que 750.", + "item_markup" => "", + "jsprintsetup_required" => "Attention: Cette fonctionnalité ne sera active que si l'extension FireFox jsPrintSetup est installée. Enregistrer quand même ?", + "language" => "Langue", + "last_used_invoice_number" => "Dernier numéro de facture utilisé", + "last_used_quote_number" => "Dernier numéro de devis utilisé", + "last_used_work_order_number" => "Dernier numéro W / O utilisé", + "left" => "Gauche", + "license" => "Licence", + "license_configuration" => "Déclaration de licence", + "line_sequence" => "Séquence de lignes", + "lines_per_page" => "Lignes par page", + "lines_per_page_number" => "Les lignes par page doivent être un nombre.", + "lines_per_page_required" => "Lignes par page est un champ obligatoire.", + "locale" => "Localisation", + "locale_configuration" => "Configuration de localisation", + "locale_info" => "Informations de configuration de localisation", + "location" => "Inventaire", + "location_configuration" => "Emplacements de stock", + "location_info" => "Informations de configuration de l'emplacement", + "login_form" => "Style du formulaire de connexion", + "logout" => "Voulez-vous faire une sauvegarde avant de vous déconnecter ? Cliquez sur [OK] pour sauvegarder ou sur [Annuler] pour vous déconnecter.", + "mailchimp" => "MailChimp", + "mailchimp_api_key" => "Clé API MailChimp", + "mailchimp_configuration" => "Configuration de MailChimp", + "mailchimp_key_successfully" => "La clé API est valide.", + "mailchimp_key_unsuccessfully" => "La clé de l'API est invalide.", + "mailchimp_lists" => "Liste(s) MailChimp", + "mailchimp_tooltip" => "Cliquez sur l'icône pour une clé API.", + "message" => "Message", + "message_configuration" => "Message Configuration", + "msg_msg" => "Message texte enregistré", + "msg_msg_placeholder" => "Si vous souhaitez utiliser un modèle de SMS, enregistrez votre message ici. Sinon, laisser la boîte en blanc.", + "msg_pwd" => "SMS-API Password", + "msg_pwd_required" => "SMS-API Password est un champ obligatoire", + "msg_src" => "ID de l'expéditeur de SMS-API", + "msg_src_required" => "L'ID de l'expéditeur de SMS-API est un champ obligatoire", + "msg_uid" => "Nom d'utilisateur de l'API SMS", + "msg_uid_required" => "Le nom d'utilisateur de l'API SMS est un champ obligatoire", + "multi_pack_enabled" => "Ensembles multiples par article", + "no_risk" => "Pas de risques de sécurité/vulnérabilité.", + "none" => "none", + "notify_alignment" => "Position contextuelle de notification", + "number_format" => "Number Format", + "number_locale" => "Localisation", + "number_locale_invalid" => "L'environnement local entré est invalide. Vérifiez le lien dans l'info-bulle pour trouver un environnement local valide.", + "number_locale_required" => "Number Locale est un champ obligatoire.", + "number_locale_tooltip" => "Trouvez un lieu approprié grâce à ce lien.", + "os_timezone" => "Fuseau horaire d'OSPOS :", + "ospos_info" => "Informations d'installation d'OSPOS", + "payment_options_order" => "Ordre des options de paiement", + "perm_risk" => "Des permissions incorrectement définies exposent ce logiciel a des risques de sécurité.", + "phone" => "Téléphone", + "phone_required" => "Téléphone de l'entreprise est un champ obligatoire.", + "print_bottom_margin" => "Marge Bas", + "print_bottom_margin_number" => "La marge inférieure doit être un nombre.", + "print_bottom_margin_required" => "La marge inférieure est un champ obligatoire.", + "print_delay_autoreturn" => "Retour automatique a la vente retarde", + "print_delay_autoreturn_number" => "Retour automatique à la vente retarde est un champ obligatoire.", + "print_delay_autoreturn_required" => "Retour automatique à la vente retarde doit être un nombre.", + "print_footer" => "Pied de page imprimante", + "print_header" => "Imprimer l'en-tête du navigateur", + "print_left_margin" => "Marge Gauche", + "print_left_margin_number" => "La marge gauche par défaut doit être un nombre.", + "print_left_margin_required" => "La marge gauche par défaut est un champ obligatoire.", + "print_receipt_check_behaviour" => "Imprimer la case à cocher Reçu", + "print_receipt_check_behaviour_always" => "Toujours vérifié", + "print_receipt_check_behaviour_last" => "Se souvenir de la dernière sélection", + "print_receipt_check_behaviour_never" => "Toujours décoché", + "print_right_margin" => "Marge Droit", + "print_right_margin_number" => "La marge droite par défaut doit être un nombre.", + "print_right_margin_required" => "La marge droite par défaut est un champ obligatoire.", + "print_silently" => "Afficher la boîte de dialogue Imprimer", + "print_top_margin" => "Margin Superieure", + "print_top_margin_number" => "Margin Top doit être un nombre.", + "print_top_margin_required" => "Margin Top est un champ obligatoire.", + "quantity_decimals" => "Nombre de décimales", + "quick_cash_enable" => "", + "quote_default_comments" => "Commentaires de devis par défaut", + "receipt" => "Le reçu", + "receipt_category" => "", + "receipt_configuration" => "Paramètres d'impression du reçu", + "receipt_default" => "Défaut", + "receipt_font_size" => "Taille de font", + "receipt_font_size_number" => "La taille de la font doit être un nombre.", + "receipt_font_size_required" => "Taille de la font est un champ obligatoire.", + "receipt_info" => "Informations de configuration du reçu", + "receipt_printer" => "Imprimante de tickets", + "receipt_short" => "Court", + "receipt_show_company_name" => "Afficher le nom de l'entreprise", + "receipt_show_description" => "Montrer la description", + "receipt_show_serialnumber" => "Afficher le numéro de série", + "receipt_show_tax_ind" => "Afficher les indicateurs de taxe", + "receipt_show_taxes" => "Afficher les taxes", + "receipt_show_total_discount" => "Afficher le rabais total", + "receipt_template" => "Modèle de reçu", + "receiving_calculate_average_price" => "Calc. prix moyen (Réception)", + "recv_invoice_format" => "Format de la facture des factures", + "register_mode_default" => "Mode de registre par défaut", + "report_an_issue" => "Signaler un problème", + "return_policy_required" => "Le Message est un champ requis.", + "reward" => "Récompense", + "reward_configuration" => "Configuration de récompense", + "right" => "Droite", + "sales_invoice_format" => "Format de la facture de vente", + "sales_quote_format" => "Format de devis de vente", + "saved_successfully" => "Configuration enregistrer avec succès.", + "saved_unsuccessfully" => "L'enregistrement de configuration a échoué.", + "security_issue" => "Avertissement de faille de sécurité", + "server_notice" => "Veuillez utiliser les informations ci-dessous pour signaler un problème.", + "service_charge" => "", + "show_due_enable" => "", + "show_office_group" => "Afficher l'icône du bureau", + "statistics" => "Envoyer des statistiques", + "statistics_tooltip" => "Envoyer des statistiques pour le développement et l'amélioration des fonctionnalités.", + "stock_location" => "Emplacement du stock", + "stock_location_duplicate" => "L'emplacement du stock doit être unique.", + "stock_location_invalid_chars" => "L'emplacement de stockage ne peut pas contenir '_'.", + "stock_location_required" => "L'emplacement du stock est un champ obligatoire.", + "suggestions_fifth_column" => "", + "suggestions_first_column" => "Colonne 1", + "suggestions_fourth_column" => "", + "suggestions_layout" => "Présentation des suggestions de recherche", + "suggestions_second_column" => "Colonne 2", + "suggestions_third_column" => "Colonne 3", + "system_conf" => "Paramètres & Configuration", + "system_info" => "System Info", + "table" => "Table", + "table_configuration" => "Configuration de la table", + "takings_printer" => "Imprimante de reçu", + "tax" => "Taxe", + "tax_category" => "Catégorie fiscale", + "tax_category_duplicate" => "La catégorie de taxe saisie existe déjà.", + "tax_category_invalid_chars" => "La catégorie de taxe entrée est invalide.", + "tax_category_required" => "La catégorie de taxe est requise.", + "tax_category_used" => "La catégorie de taxe ne peut pas être supprimée car elle est utilisée.", + "tax_configuration" => "Configuration de l'impôt", + "tax_decimals" => "Décimales fiscales", + "tax_id" => "Id de taxe", + "tax_included" => "Taxe inclu", + "theme" => "Thème", + "theme_preview" => "Aperçu du thème :", + "thousands_separator" => "Séparateur de milliers", + "timezone" => "Fuseau Horaire", + "timezone_error" => "Le fuseau horaire d'OSPOS est différent de votre fuseau horaire local.", + "top" => "Haut", + "use_destination_based_tax" => "Utiliser la taxe basée sur la destination", + "user_timezone" => "Fuseau horaire local :", + "website" => "Site Internet", + "wholesale_markup" => "", + "work_order_enable" => "Support de commande de travail", + "work_order_format" => "Format de bon de travail", ]; diff --git a/app/Language/fr/Customers.php b/app/Language/fr/Customers.php index 389156010..721cfa3cb 100644 --- a/app/Language/fr/Customers.php +++ b/app/Language/fr/Customers.php @@ -1,56 +1,56 @@ "# Compte", - "account_number_duplicate" => "Ce numéro de compte existe déjà dans la base de données.", - "available_points" => "Points disponibles", - "available_points_value" => "", - "average" => "Moyenne dépensée", - "avg_discount" => "Rabais moyen", - "basic_information" => "Information", - "cannot_be_deleted" => "Impossible de supprimer. Un ou plusiers client(s) sélectionné(s) ont des ventes.", - "company_name" => "Compagnie", - "confirm_delete" => "Êtes-vous certain de vouloir supprimer le(s) client(s) sélectionné(s) ?", - "confirm_restore" => "Êtes-vous certain de vouloir restaurer le(s) client(s) sélectionné(s) ?", - "consent" => "Accord d'enregistrement", - "consent_required" => "L'accord d'enregistrement est un champ obligatoire.", - "csv_import_failed" => "Échec d'import du CSV", - "csv_import_nodata_wrongformat" => "Le fichier envoyé ne contient aucune donnée ou elles sont dans un format erroné.", - "csv_import_partially_failed" => "Importation client réussie avec quelques échecs :", - "csv_import_success" => "Importation de clients réussie.", - "customer" => "Client", - "date" => "Date", - "discount" => "Rabais", - "discount_fixed" => "Rabais fixe", - "discount_percent" => "Pourcentage de rabais", - "discount_type" => "Type de rabais", - "email_duplicate" => "L'adresse courriel existe déjà dans la base de données.", - "employee" => "Employé", - "error_adding_updating" => "Erreur lors de l'ajout/suppression de client.", - "import_items_csv" => "Importer une liste de client à partir d'un fichier CSV", - "mailchimp_activity_click" => "Clic courriel", - "mailchimp_activity_lastopen" => "Dernier courriel ouvert", - "mailchimp_activity_open" => "Courriel ouvert", - "mailchimp_activity_total" => "Courriel envoyé", - "mailchimp_activity_unopen" => "Courriel non ouvert", - "mailchimp_email_client" => "Client de messagerie", - "mailchimp_info" => "MailChimp", - "mailchimp_member_rating" => "Évaluation", - "mailchimp_status" => "État", - "mailchimp_vip" => "VIP", - "max" => "Max. dépensé", - "min" => "Min. dépensé", - "new" => "Nouveau client", - "none_selected" => "Vous n'avez sélectionné aucun client à supprimer.", - "one_or_multiple" => "Client(s)", - "quantity" => "Quantité", - "stats_info" => "Statistiques", - "successful_adding" => "Vous avez ajouté un nouveau client", - "successful_deleted" => "Suppression réussie", - "successful_updating" => "Édition du client réussie", - "tax_code" => "Code fiscal", - "tax_id" => "Identifiant de taxe", - "taxable" => "Taxable", - "total" => "Total dépensé", - "update" => "Éditer client", - "rewards_package" => "Récompenses", + "account_number" => "# Compte", + "account_number_duplicate" => "Ce numéro de compte existe déjà dans la base de données.", + "available_points" => "Points disponibles", + "available_points_value" => "", + "average" => "Moyenne dépensée", + "avg_discount" => "Rabais moyen", + "basic_information" => "Information", + "cannot_be_deleted" => "Impossible de supprimer. Un ou plusiers client(s) sélectionné(s) ont des ventes.", + "company_name" => "Compagnie", + "confirm_delete" => "Êtes-vous certain de vouloir supprimer le(s) client(s) sélectionné(s) ?", + "confirm_restore" => "Êtes-vous certain de vouloir restaurer le(s) client(s) sélectionné(s) ?", + "consent" => "Accord d'enregistrement", + "consent_required" => "L'accord d'enregistrement est un champ obligatoire.", + "csv_import_failed" => "Échec d'import du CSV", + "csv_import_nodata_wrongformat" => "Le fichier envoyé ne contient aucune donnée ou elles sont dans un format erroné.", + "csv_import_partially_failed" => "Importation client réussie avec quelques échecs :", + "csv_import_success" => "Importation de clients réussie.", + "customer" => "Client", + "date" => "Date", + "discount" => "Rabais", + "discount_fixed" => "Rabais fixe", + "discount_percent" => "Pourcentage de rabais", + "discount_type" => "Type de rabais", + "email_duplicate" => "L'adresse courriel existe déjà dans la base de données.", + "employee" => "Employé", + "error_adding_updating" => "Erreur lors de l'ajout/suppression de client.", + "import_items_csv" => "Importer une liste de client à partir d'un fichier CSV", + "mailchimp_activity_click" => "Clic courriel", + "mailchimp_activity_lastopen" => "Dernier courriel ouvert", + "mailchimp_activity_open" => "Courriel ouvert", + "mailchimp_activity_total" => "Courriel envoyé", + "mailchimp_activity_unopen" => "Courriel non ouvert", + "mailchimp_email_client" => "Client de messagerie", + "mailchimp_info" => "MailChimp", + "mailchimp_member_rating" => "Évaluation", + "mailchimp_status" => "État", + "mailchimp_vip" => "VIP", + "max" => "Max. dépensé", + "min" => "Min. dépensé", + "new" => "Nouveau client", + "none_selected" => "Vous n'avez sélectionné aucun client à supprimer.", + "one_or_multiple" => "Client(s)", + "quantity" => "Quantité", + "stats_info" => "Statistiques", + "successful_adding" => "Vous avez ajouté un nouveau client", + "successful_deleted" => "Suppression réussie", + "successful_updating" => "Édition du client réussie", + "tax_code" => "Code fiscal", + "tax_id" => "Identifiant de taxe", + "taxable" => "Taxable", + "total" => "Total dépensé", + "update" => "Éditer client", + "rewards_package" => "Récompenses", ]; diff --git a/app/Language/fr/Datepicker.php b/app/Language/fr/Datepicker.php index 2847572aa..9eda1fad8 100644 --- a/app/Language/fr/Datepicker.php +++ b/app/Language/fr/Datepicker.php @@ -1,23 +1,23 @@ "Depuis le début", - "apply" => "Appliquer", - "cancel" => "Annuler la Vente", - "custom" => "Personnaliser", - "from" => "De", - "last_30" => "Ces 30 derniers jours", - "last_7" => "Ces 7 derniers jours", - "last_financial_year" => "Dernière année fiscale", - "last_month" => "Le mois dernier", - "last_year" => "L'année passée", - "same_month_last_year" => "Même mois de l'Année Dernière", - "same_month_to_same_day_last_year" => "Même mois au même jour que l'an dernier", - "this_financial_year" => "Année fiscale en cours", - "this_month" => "Ce mois", - "this_year" => "Cette Année", - "to" => "To", - "today" => "Aujourd'hui", - "today_last_year" => "Même jour l'année passée", - "weekstart" => "1", - "yesterday" => "Hier", + "all_time" => "Depuis le début", + "apply" => "Appliquer", + "cancel" => "Annuler la Vente", + "custom" => "Personnaliser", + "from" => "De", + "last_30" => "Ces 30 derniers jours", + "last_7" => "Ces 7 derniers jours", + "last_financial_year" => "Dernière année fiscale", + "last_month" => "Le mois dernier", + "last_year" => "L'année passée", + "same_month_last_year" => "Même mois de l'Année Dernière", + "same_month_to_same_day_last_year" => "Même mois au même jour que l'an dernier", + "this_financial_year" => "Année fiscale en cours", + "this_month" => "Ce mois", + "this_year" => "Cette Année", + "to" => "To", + "today" => "Aujourd'hui", + "today_last_year" => "Même jour l'année passée", + "weekstart" => "1", + "yesterday" => "Hier", ]; diff --git a/app/Language/fr/Employees.php b/app/Language/fr/Employees.php index cf764c44a..33aa236ad 100644 --- a/app/Language/fr/Employees.php +++ b/app/Language/fr/Employees.php @@ -1,44 +1,44 @@ "", - "basic_information" => "Fiche", - "cannot_be_deleted" => "Impossible de supprimer le(s) employé(s) sélectionné(s),car un ou plusieur a éffectué une vente, ou car vous essayez de vous supprimer vous-meme.", - "change_employee" => "", - "change_password" => "Changement de mot de passe", - "clerk" => "", - "commission" => "", - "confirm_delete" => "Êtes-vous certain de vouloir supprimer le(s) employé(s) sélectionné(s) ?", - "confirm_restore" => "Êtes-vous certain de vouloir restaurer le(s) employé(s) selectionné(s) ?", - "current_password" => "Mot de passe actuel", - "current_password_invalid" => "Le mot de passe actuel est invalide.", - "employee" => "Employé", - "error_adding_updating" => "Erreur d'ajout/édition d'employé.", - "error_deleting_demo_admin" => "Vous ne pouvez pas supprimer l'utilisateur de démonstration admin.", - "error_updating_demo_admin" => "Vous ne pouvez pas modifier l'utilisateur de démonstration admin.", - "language" => "Langue", - "login_info" => "Connexion", - "manager" => "", - "new" => "Nouvel employé", - "none_selected" => "Aucun employé sélectionné pour la suppression.", - "one_or_multiple" => "employé(s)", - "password" => "Mot de passe", - "password_minlength" => "Le mot de passe doit contenir au moins 8 caractères.", - "password_must_match" => "Les mots de passe ne concordent pas.", - "password_not_must_match" => "Le mot de passe actuel et le nouveau mot de passe doivent être uniques.", - "password_required" => "Mot de passe requis.", - "permission_desc" => "Cochez les cases ci-dessous pour autoriser l'accès aux modules.", - "permission_info" => "Permissions", - "repeat_password" => "Re-saisissez le mot de passe", - "subpermission_required" => "Ajoutez au moins une permission pour chaque module.", - "successful_adding" => "Employé ajouté.", - "successful_change_password" => "Mot de passe modifié avec succès.", - "successful_deleted" => "Suppression d'employé réussie", - "successful_updating" => "Édition d'employé réussie", - "system_language" => "Langue système", - "unsuccessful_change_password" => "Échec du changement de mot de passe.", - "update" => "Éditer employé", - "username" => "Nom d'utilisateur", - "username_duplicate" => "Nom d'utilisateur existant. Veuillez en choisir un autre.", - "username_minlength" => "Le nom d'utilisateur doit contenir au moins 5 caractères.", - "username_required" => "Nom d'utilisateur requis.", + "administrator" => "", + "basic_information" => "Fiche", + "cannot_be_deleted" => "Impossible de supprimer le(s) employé(s) sélectionné(s),car un ou plusieur a éffectué une vente, ou car vous essayez de vous supprimer vous-meme.", + "change_employee" => "", + "change_password" => "Changement de mot de passe", + "clerk" => "", + "commission" => "", + "confirm_delete" => "Êtes-vous certain de vouloir supprimer le(s) employé(s) sélectionné(s) ?", + "confirm_restore" => "Êtes-vous certain de vouloir restaurer le(s) employé(s) selectionné(s) ?", + "current_password" => "Mot de passe actuel", + "current_password_invalid" => "Le mot de passe actuel est invalide.", + "employee" => "Employé", + "error_adding_updating" => "Erreur d'ajout/édition d'employé.", + "error_deleting_demo_admin" => "Vous ne pouvez pas supprimer l'utilisateur de démonstration admin.", + "error_updating_demo_admin" => "Vous ne pouvez pas modifier l'utilisateur de démonstration admin.", + "language" => "Langue", + "login_info" => "Connexion", + "manager" => "", + "new" => "Nouvel employé", + "none_selected" => "Aucun employé sélectionné pour la suppression.", + "one_or_multiple" => "employé(s)", + "password" => "Mot de passe", + "password_minlength" => "Le mot de passe doit contenir au moins 8 caractères.", + "password_must_match" => "Les mots de passe ne concordent pas.", + "password_not_must_match" => "Le mot de passe actuel et le nouveau mot de passe doivent être uniques.", + "password_required" => "Mot de passe requis.", + "permission_desc" => "Cochez les cases ci-dessous pour autoriser l'accès aux modules.", + "permission_info" => "Permissions", + "repeat_password" => "Re-saisissez le mot de passe", + "subpermission_required" => "Ajoutez au moins une permission pour chaque module.", + "successful_adding" => "Employé ajouté.", + "successful_change_password" => "Mot de passe modifié avec succès.", + "successful_deleted" => "Suppression d'employé réussie", + "successful_updating" => "Édition d'employé réussie", + "system_language" => "Langue système", + "unsuccessful_change_password" => "Échec du changement de mot de passe.", + "update" => "Éditer employé", + "username" => "Nom d'utilisateur", + "username_duplicate" => "Nom d'utilisateur existant. Veuillez en choisir un autre.", + "username_minlength" => "Le nom d'utilisateur doit contenir au moins 5 caractères.", + "username_required" => "Nom d'utilisateur requis.", ]; diff --git a/app/Language/fr/Enum.php b/app/Language/fr/Enum.php index 59f125016..78acf1b16 100644 --- a/app/Language/fr/Enum.php +++ b/app/Language/fr/Enum.php @@ -1,10 +1,10 @@ "Demi-bas", - "half_even" => "La moitié", - "half_five" => "Moitié de cinq", - "half_odd" => "Moitié impair", - "half_up" => "À moitié", - "round_down" => "Arrondir vers le bas", - "round_up" => "Rassembler", + "half_down" => "Demi-bas", + "half_even" => "La moitié", + "half_five" => "Moitié de cinq", + "half_odd" => "Moitié impair", + "half_up" => "À moitié", + "round_down" => "Arrondir vers le bas", + "round_up" => "Rassembler", ]; diff --git a/app/Language/fr/Error.php b/app/Language/fr/Error.php index 9321def09..559490abb 100644 --- a/app/Language/fr/Error.php +++ b/app/Language/fr/Error.php @@ -1,5 +1,5 @@ "Vous n'avez pas d'autorisation d'accès pour le module", - "unknown" => "inconnu", + "no_permission_module" => "Vous n'avez pas d'autorisation d'accès pour le module", + "unknown" => "inconnu", ]; diff --git a/app/Language/fr/Expenses.php b/app/Language/fr/Expenses.php index b5088c074..5a11497b9 100644 --- a/app/Language/fr/Expenses.php +++ b/app/Language/fr/Expenses.php @@ -1,50 +1,50 @@ "Ajouter des dépenses", - "amount" => "Montant", - "amount_number" => "Le montant doit être un nombre", - "amount_required" => "Dépense Montant requis", - "by_category" => "Catégorie", - "cannot_be_deleted" => "Impossible de supprimer la ou les dépenses de catégorie", - "cash" => "En espèces", - "cash_filter" => "En espèces", - "categories_name" => "Catégorie", - "category_required" => "La catégorie est un champ obligatoire", - "check" => "Chèque", - "check_filter" => "Chèque", - "confirm_delete" => "Êtes-vous certain de vouloir supprimer les dépenses sélectionnées ?", - "confirm_restore" => "Êtes-vous certain de vouloir restaurer les dépenses sélectionnées ?", - "credit" => "Carte de crédit", - "credit_filter" => "Carte de crédit", - "date" => "Date", - "date_number" => "La date doit être un nombre", - "date_required" => "Date est un champ obligatoire", - "debit" => "Carte de débit", - "debit_filter" => "Carte de débit", - "description" => "La Description", - "due" => "Dû", - "due_filter" => "Dû", - "employee" => "Créé par", - "error_adding_updating" => "Erreur lors de l'ajout / la mise à jour des dépenses", - "expense_id" => "ID", - "expenses_employee" => "Employé", - "info" => "Info de frais", - "ip_address" => "", - "is_deleted" => "Supprimé", - "name_required" => "Nom de frais requis", - "new" => "Nouvelle dépense", - "new_supplier" => "", - "no_expenses_to_display" => "Il n'y a pas de dépenses à afficher", - "none_selected" => "Vous n'avez sélectionné aucune dépense", - "one_or_multiple" => "Dépense (s)", - "payment" => "Type de paiement", - "start_typing_supplier_name" => "Commencez à taper le nom du fournisseur...", - "successful_adding" => "Les dépenses ajoutent avec succès", - "successful_deleted" => "La suppression des dépenses a réussi", - "successful_updating" => "Actualiser des dépenses réussie", - "supplier_name" => "Fournisseur", - "supplier_tax_code" => "Code du taxe", - "tax_amount" => "Taxe", - "tax_amount_number" => "", - "update" => "Actualiser des dépenses", + "add_item" => "Ajouter des dépenses", + "amount" => "Montant", + "amount_number" => "Le montant doit être un nombre", + "amount_required" => "Dépense Montant requis", + "by_category" => "Catégorie", + "cannot_be_deleted" => "Impossible de supprimer la ou les dépenses de catégorie", + "cash" => "En espèces", + "cash_filter" => "En espèces", + "categories_name" => "Catégorie", + "category_required" => "La catégorie est un champ obligatoire", + "check" => "Chèque", + "check_filter" => "Chèque", + "confirm_delete" => "Êtes-vous certain de vouloir supprimer les dépenses sélectionnées ?", + "confirm_restore" => "Êtes-vous certain de vouloir restaurer les dépenses sélectionnées ?", + "credit" => "Carte de crédit", + "credit_filter" => "Carte de crédit", + "date" => "Date", + "date_number" => "La date doit être un nombre", + "date_required" => "Date est un champ obligatoire", + "debit" => "Carte de débit", + "debit_filter" => "Carte de débit", + "description" => "La Description", + "due" => "Dû", + "due_filter" => "Dû", + "employee" => "Créé par", + "error_adding_updating" => "Erreur lors de l'ajout / la mise à jour des dépenses", + "expense_id" => "ID", + "expenses_employee" => "Employé", + "info" => "Info de frais", + "ip_address" => "", + "is_deleted" => "Supprimé", + "name_required" => "Nom de frais requis", + "new" => "Nouvelle dépense", + "new_supplier" => "", + "no_expenses_to_display" => "Il n'y a pas de dépenses à afficher", + "none_selected" => "Vous n'avez sélectionné aucune dépense", + "one_or_multiple" => "Dépense (s)", + "payment" => "Type de paiement", + "start_typing_supplier_name" => "Commencez à taper le nom du fournisseur...", + "successful_adding" => "Les dépenses ajoutent avec succès", + "successful_deleted" => "La suppression des dépenses a réussi", + "successful_updating" => "Actualiser des dépenses réussie", + "supplier_name" => "Fournisseur", + "supplier_tax_code" => "Code du taxe", + "tax_amount" => "Taxe", + "tax_amount_number" => "", + "update" => "Actualiser des dépenses", ]; diff --git a/app/Language/fr/Expenses_categories.php b/app/Language/fr/Expenses_categories.php index 1a95ee8c2..8a4fdfdb1 100644 --- a/app/Language/fr/Expenses_categories.php +++ b/app/Language/fr/Expenses_categories.php @@ -1,22 +1,22 @@ "Nom de la catégorie de dépenses requis", - "add_item" => "Ajouter une catégorie", - "cannot_be_deleted" => "Impossible de supprimer la ou les dépenses de catégorie", - "category_id" => "ID", - "confirm_delete" => "Êtes-vous sûr de vouloir supprimer la catégorie de dépenses sélectionnée ?", - "confirm_restore" => "Voulez-vous restaurer la Catégorie de Dépense selectionnée ?", - "description" => "Description de la catégorie", - "error_adding_updating" => "Erreur lors de l'ajout / mise à jour de la catégorie de dépenses", - "info" => "Catégorie Info sur les dépenses", - "name" => "Nom de catégorie", - "new" => "Nouvelle catégorie", - "no_expenses_categories_to_display" => "Aucune catégorie à afficher", - "none_selected" => "Vous n'avez sélectionné aucun frais de catégorie", - "one_or_multiple" => "Dépense Catégorie", - "quantity" => "Quantité", - "successful_adding" => "Catégorie de dépenses ajoutée réussie", - "successful_deleted" => "La catégorie de dépenses supprimer a réussi", - "successful_updating" => "Actualiser de la catégorie de dépenses réussie", - "update" => "Actualiser Catégorie", + "category_name_required" => "Nom de la catégorie de dépenses requis", + "add_item" => "Ajouter une catégorie", + "cannot_be_deleted" => "Impossible de supprimer la ou les dépenses de catégorie", + "category_id" => "ID", + "confirm_delete" => "Êtes-vous sûr de vouloir supprimer la catégorie de dépenses sélectionnée ?", + "confirm_restore" => "Voulez-vous restaurer la Catégorie de Dépense selectionnée ?", + "description" => "Description de la catégorie", + "error_adding_updating" => "Erreur lors de l'ajout / mise à jour de la catégorie de dépenses", + "info" => "Catégorie Info sur les dépenses", + "name" => "Nom de catégorie", + "new" => "Nouvelle catégorie", + "no_expenses_categories_to_display" => "Aucune catégorie à afficher", + "none_selected" => "Vous n'avez sélectionné aucun frais de catégorie", + "one_or_multiple" => "Dépense Catégorie", + "quantity" => "Quantité", + "successful_adding" => "Catégorie de dépenses ajoutée réussie", + "successful_deleted" => "La catégorie de dépenses supprimer a réussi", + "successful_updating" => "Actualiser de la catégorie de dépenses réussie", + "update" => "Actualiser Catégorie", ]; diff --git a/app/Language/fr/Giftcards.php b/app/Language/fr/Giftcards.php index bf0c6a410..6a25cae96 100644 --- a/app/Language/fr/Giftcards.php +++ b/app/Language/fr/Giftcards.php @@ -1,71 +1,71 @@ "Ajout/Soustraction à l'inventaire.", - "allow_alt_description" => "Autorisér Description Alt", - "bulk_edit" => "Édition en groupe", - "cannot_be_deleted" => "Impossible de supprimer. Une ou plusieurs carte(s) ont des ventes.", - "cannot_find_giftcard" => "Aucune information sur la carte.", - "cannot_use" => "Giftcard {0} ne peut pas être utilisé pour cette vente. Client invalide.", - "card_value" => "Valeur", - "category" => "Catégorie", - "change_all_to_allow_alt_desc" => "Autoriser Desc Alt Pour Tous.", - "change_all_to_not_allow_allow_desc" => "Interdire Desc Alt Pour Tous.", - "change_all_to_serialized" => "Tout Sérialiser", - "change_all_to_unserialized" => "Tout Désérialiser", - "confirm_bulk_edit" => "Etes vous sûr(e) de vouloir éditer toutes les cartes sélectionnés ?", - "confirm_delete" => "Etes vous sûr(e) de vouloir supprimer ces cates ?", - "confirm_restore" => "Êtes-vous sûr de vouloir restaurer les cartes-cadeaux sélectionnées ?", - "cost_price" => "Cout", - "count" => "Mise à Jour Inventaire", - "csv_import_failed" => "Échec de l'import.", - "current_quantity" => "Quantité Restante", - "description" => "Description", - "details_count" => "Détails d'inventaire", - "do_nothing" => "Ne rien faire", - "edit_fields_you_want_to_update" => "Modifier les chaps que vous voulez éditer pour TOUTES les cartes.", - "edit_multiple_giftcards" => "Édition Multiple de Cartes.", - "error_adding_updating" => "Érreur d'ajout/édition de cartes.", - "error_updating_multiple" => "Érreur lors de l'édition des cartes.", - "generate_barcodes" => "Générer des Codes-barre", - "giftcard" => "Carte Cadeau", - "giftcard_number" => "Numéro de Carte", - "info_provided_by" => "Information fournie par", - "inventory_comments" => "Commentaires", - "is_serialized" => "Carte cadeau avec Numéro de Série", - "low_inventory_giftcards" => "Cartes Stock Faible", - "manually_editing_of_quantity" => "Modification Manuelle de Quantité", - "must_select_giftcard_for_barcode" => "Vous devez sélectionner au moins une carte pour générer des codes-barre.", - "new" => "Nouvelle Carte", - "no_description_giftcards" => "Cartes Sans Description", - "no_giftcards_to_display" => "Aucune carte à afficher.", - "none" => "Aucun", - "none_selected" => "Vous n'avez sélectionné aucune carte à éditer.", - "number" => "Le numéro de la carte doit etre un nombre.", - "number_information" => "Numéro de Carte", - "number_required" => "Le Numéro est requis.", - "one_or_multiple" => "carte(s)", - "person_id" => "Client", - "quantity" => "Quantité", - "quantity_required" => "La quantité est requise. Veuillez Fermer ( X ) pour annuler.", - "remaining_balance" => "Giftcard {0} valeur restante est {1} !", - "reorder_level" => "Seuil de Réapprovisionnement", - "retrive_giftcard_info" => "Obtenir des détails de la Carte", - "sales_tax_1" => "Taxe vente", - "sales_tax_2" => "Taxe vente 2", - "serialized_giftcards" => "Cartes Cadeau Serialisés", - "successful_adding" => "Vous avez ajouté une carte cadeau bonus", - "successful_bulk_edit" => "Les cartes ont étés édités", - "successful_deleted" => "Suppréssion réussie", - "successful_updating" => "Édition réussie", - "supplier" => "Fournisseur", - "tax_1" => "Taxe 1", - "tax_2" => "Taxe 2", - "tax_percent" => "Taux d'imposition", - "tax_percents" => "Pourcentage d'imposition", - "unit_price" => "Prix Unitaire", - "upc_database" => "Base de Données UPC", - "update" => "Éditer Carte", - "use_inventory_menu" => "Utiliser Menu Inv", - "value" => "La valeur de la carte doit etre un nombre.", - "value_required" => "La Valeur est requise.", + "add_minus" => "Ajout/Soustraction à l'inventaire.", + "allow_alt_description" => "Autorisér Description Alt", + "bulk_edit" => "Édition en groupe", + "cannot_be_deleted" => "Impossible de supprimer. Une ou plusieurs carte(s) ont des ventes.", + "cannot_find_giftcard" => "Aucune information sur la carte.", + "cannot_use" => "Giftcard {0} ne peut pas être utilisé pour cette vente. Client invalide.", + "card_value" => "Valeur", + "category" => "Catégorie", + "change_all_to_allow_alt_desc" => "Autoriser Desc Alt Pour Tous.", + "change_all_to_not_allow_allow_desc" => "Interdire Desc Alt Pour Tous.", + "change_all_to_serialized" => "Tout Sérialiser", + "change_all_to_unserialized" => "Tout Désérialiser", + "confirm_bulk_edit" => "Etes vous sûr(e) de vouloir éditer toutes les cartes sélectionnés ?", + "confirm_delete" => "Etes vous sûr(e) de vouloir supprimer ces cates ?", + "confirm_restore" => "Êtes-vous sûr de vouloir restaurer les cartes-cadeaux sélectionnées ?", + "cost_price" => "Cout", + "count" => "Mise à Jour Inventaire", + "csv_import_failed" => "Échec de l'import.", + "current_quantity" => "Quantité Restante", + "description" => "Description", + "details_count" => "Détails d'inventaire", + "do_nothing" => "Ne rien faire", + "edit_fields_you_want_to_update" => "Modifier les chaps que vous voulez éditer pour TOUTES les cartes.", + "edit_multiple_giftcards" => "Édition Multiple de Cartes.", + "error_adding_updating" => "Érreur d'ajout/édition de cartes.", + "error_updating_multiple" => "Érreur lors de l'édition des cartes.", + "generate_barcodes" => "Générer des Codes-barre", + "giftcard" => "Carte Cadeau", + "giftcard_number" => "Numéro de Carte", + "info_provided_by" => "Information fournie par", + "inventory_comments" => "Commentaires", + "is_serialized" => "Carte cadeau avec Numéro de Série", + "low_inventory_giftcards" => "Cartes Stock Faible", + "manually_editing_of_quantity" => "Modification Manuelle de Quantité", + "must_select_giftcard_for_barcode" => "Vous devez sélectionner au moins une carte pour générer des codes-barre.", + "new" => "Nouvelle Carte", + "no_description_giftcards" => "Cartes Sans Description", + "no_giftcards_to_display" => "Aucune carte à afficher.", + "none" => "Aucun", + "none_selected" => "Vous n'avez sélectionné aucune carte à éditer.", + "number" => "Le numéro de la carte doit etre un nombre.", + "number_information" => "Numéro de Carte", + "number_required" => "Le Numéro est requis.", + "one_or_multiple" => "carte(s)", + "person_id" => "Client", + "quantity" => "Quantité", + "quantity_required" => "La quantité est requise. Veuillez Fermer ( X ) pour annuler.", + "remaining_balance" => "Giftcard {0} valeur restante est {1} !", + "reorder_level" => "Seuil de Réapprovisionnement", + "retrive_giftcard_info" => "Obtenir des détails de la Carte", + "sales_tax_1" => "Taxe vente", + "sales_tax_2" => "Taxe vente 2", + "serialized_giftcards" => "Cartes Cadeau Serialisés", + "successful_adding" => "Vous avez ajouté une carte cadeau bonus", + "successful_bulk_edit" => "Les cartes ont étés édités", + "successful_deleted" => "Suppréssion réussie", + "successful_updating" => "Édition réussie", + "supplier" => "Fournisseur", + "tax_1" => "Taxe 1", + "tax_2" => "Taxe 2", + "tax_percent" => "Taux d'imposition", + "tax_percents" => "Pourcentage d'imposition", + "unit_price" => "Prix Unitaire", + "upc_database" => "Base de Données UPC", + "update" => "Éditer Carte", + "use_inventory_menu" => "Utiliser Menu Inv", + "value" => "La valeur de la carte doit etre un nombre.", + "value_required" => "La Valeur est requise.", ]; diff --git a/app/Language/fr/Item_kits.php b/app/Language/fr/Item_kits.php index dca02d901..9b7590c98 100644 --- a/app/Language/fr/Item_kits.php +++ b/app/Language/fr/Item_kits.php @@ -1,41 +1,41 @@ "Ajouter un article", - "all" => "Tous", - "cannot_be_deleted" => "Impossible de supprimer.", - "confirm_delete" => "Ètes vous sûr(e) de vouloir supprimer le(s) Kits sélectionnés ?", - "confirm_restore" => "Êtes-vous sûr de vouloir restaurer le (s) kit (s) sélectionné (s) ?", - "description" => "Description du groupes", - "discount" => "Rabais", - "discount_fixed" => "Rabais fixe", - "discount_percent" => "Pourcentage d'escompte", - "discount_type" => "Type de rabais", - "error_adding_updating" => "Érreur d'ajout/édition de groupes.", - "find_kit_item" => "Article de group", - "info" => "Détails du groupes", - "item" => "Article", - "item_kit_number" => "Code à barres", - "item_kit_number_duplicate" => "Ce numéro d'ensemble existe déjà dans la base de données.", - "item_number" => "", - "item_number_duplicate" => "", - "items" => "Articles", - "kit" => "Groupes ID", - "kit_and_components" => "Groupes et composants", - "kit_and_stock" => "Group Et Stock", - "kit_only" => "Group seulement", - "name" => "Nom du groupes", - "new" => "Nouveau groupes", - "no_item_kits_to_display" => "Aucun groupes à afficher.", - "none_selected" => "Vous n'avez sélectionné aucun groupes.", - "one_or_multiple" => "Groupe(s)", - "price_option" => "Option de prix", - "priced_only" => "Prix seulement", - "print_option" => "Option d'impression", - "quantity" => "Quantité", - "sequence" => "Séquence", - "successful_adding" => "Vous avez ajouté un groupes", - "successful_deleted" => "Suppréssion réussie", - "successful_updating" => "Vous avez édité un groupe", - "unit_price" => "", - "update" => "Éditer groupes", + "add_item" => "Ajouter un article", + "all" => "Tous", + "cannot_be_deleted" => "Impossible de supprimer.", + "confirm_delete" => "Ètes vous sûr(e) de vouloir supprimer le(s) Kits sélectionnés ?", + "confirm_restore" => "Êtes-vous sûr de vouloir restaurer le (s) kit (s) sélectionné (s) ?", + "description" => "Description du groupes", + "discount" => "Rabais", + "discount_fixed" => "Rabais fixe", + "discount_percent" => "Pourcentage d'escompte", + "discount_type" => "Type de rabais", + "error_adding_updating" => "Érreur d'ajout/édition de groupes.", + "find_kit_item" => "Article de group", + "info" => "Détails du groupes", + "item" => "Article", + "item_kit_number" => "Code à barres", + "item_kit_number_duplicate" => "Ce numéro d'ensemble existe déjà dans la base de données.", + "item_number" => "", + "item_number_duplicate" => "", + "items" => "Articles", + "kit" => "Groupes ID", + "kit_and_components" => "Groupes et composants", + "kit_and_stock" => "Group Et Stock", + "kit_only" => "Group seulement", + "name" => "Nom du groupes", + "new" => "Nouveau groupes", + "no_item_kits_to_display" => "Aucun groupes à afficher.", + "none_selected" => "Vous n'avez sélectionné aucun groupes.", + "one_or_multiple" => "Groupe(s)", + "price_option" => "Option de prix", + "priced_only" => "Prix seulement", + "print_option" => "Option d'impression", + "quantity" => "Quantité", + "sequence" => "Séquence", + "successful_adding" => "Vous avez ajouté un groupes", + "successful_deleted" => "Suppréssion réussie", + "successful_updating" => "Vous avez édité un groupe", + "unit_price" => "", + "update" => "Éditer groupes", ]; diff --git a/app/Language/fr/Items.php b/app/Language/fr/Items.php index b2b3e904e..b7f1c4ce5 100644 --- a/app/Language/fr/Items.php +++ b/app/Language/fr/Items.php @@ -1,120 +1,120 @@ "Inventaire à ajouter ou soustraire.", - "allow_alt_description" => "Autoriser description alternative", - "amount_entry" => "Entrée de quantité", - "bulk_edit" => "Éditions multiples", - "buy_price_required" => "Le prix d'achat est requis.", - "cannot_be_deleted" => "Impossible de supprimer car un ou plusiers des articles sélectionnés ont des ventes.", - "cannot_find_item" => "Article non trouvé.", - "categories" => "", - "category" => "Catégorie", - "category_new" => "", - "category_required" => "La catégorie est requise.", - "change_all_to_allow_alt_desc" => "Autoriser description alternative pour tous.", - "change_all_to_not_allow_allow_desc" => "Interdire description alternative pour tous.", - "change_all_to_serialized" => "Tout sérialiser", - "change_all_to_unserialized" => "Tout désérialiser", - "change_image" => "Changer l'image", - "confirm_bulk_edit" => "Êtes-vous certain de vouloir éditer toute la sélection ?", - "confirm_bulk_edit_wipe_taxes" => "Les informations de taxes seront remplacées pour tous les articles.", - "confirm_delete" => "Êtes-vous certain de vouloir supprimer la sélection ?", - "confirm_restore" => "Êtes-vous certain de vouloir restaurer le(s) élément(s) sélectionné(s) ?", - "cost_price" => "Prix de gros", - "cost_price_number" => "Le prix d'achat doit être un nombre.", - "cost_price_required" => "Le prix de gros est requis.", - "count" => "Mise à jour de l'inventaire", - "csv_import_failed" => "Échec d'import CSV", - "csv_import_nodata_wrongformat" => "Le CSV envoyé ne contient aucune donnée, ou elles sont dans un format erroné.", - "csv_import_partially_failed" => "Il y a eu {0} importation(s) d'articles échoué(s) au(x) ligne(s) : {1}. Aucune ligne n'a été importée.", - "csv_import_success" => "Importation des articles réussie.", - "current_quantity" => "Quantité actuelle", - "default_pack_name" => "Chacun", - "description" => "Description", - "details_count" => "Détails du décompte d'inventaire", - "do_nothing" => "Ne rien faire", - "edit" => "", - "edit_fields_you_want_to_update" => "Modifier les champs pour les articles sélectionnés.", - "edit_multiple_items" => "Édition multiple d'articles", - "empty_upc_items" => "Articles sans code à barre", - "error_adding_updating" => "Erreur d'ajout/édition d'article", - "error_updating_multiple" => "Erreur d'édition d'articles", - "generate_barcodes" => "Générer des codes à barres", - "hsn_code" => "Nomenclature du système harmonisé", - "image" => "Image", - "import_items_csv" => "Importation d'éléments à partir d'un CSV", - "info_provided_by" => "Informations fournie par", - "inventory" => "Inventaire", - "inventory_CSV_import_quantity" => "Quantité importée à partir d'un CSV", - "inventory_comments" => "Commentaires", - "inventory_data_tracking" => "Suivi d'inventaire", - "inventory_date" => "Date", - "inventory_employee" => "Employé", - "inventory_in_out_quantity" => "Quantité entrée/sortie", - "inventory_remarks" => "Remarques", - "is_deleted" => "Supprimé", - "is_printed" => "", - "is_serialized" => "L'article a un numéro de série", - "item" => "Article", - "item_id" => "", - "item_number" => "Code à barre", - "item_number_duplicate" => "L'article existe déjà la base de données.", - "kit" => "Ensemble", - "location" => "Emplacement", - "low_inventory_items" => "Articles en rupture d'inventaire", - "low_sell_item" => "Article à faible vente", - "manually_editing_of_quantity" => "Édition de quantité manuelle", - "markup" => "", - "name" => "Nom", - "name_required" => "Le nom est requis.", - "new" => "Nouvel article", - "no_description_items" => "Articles sans description", - "no_items_to_display" => "Aucun article à afficher.", - "none" => "Aucun", - "none_selected" => "Vous n'avez sélectionné aucun article à modifier", - "nonstock" => "Non-inventorié", - "number_information" => "Numéro d'article", - "number_required" => "Code à barres est un champ requis.", - "one_or_multiple" => "article(s)", - "pack_name" => "Nom de l'ensemble", - "qty_per_pack" => "Quantité par ensemble", - "quantity" => "Quantité", - "quantity_number" => "La quantité doit être un nombre.", - "quantity_required" => "La quantité est requise.", - "receiving_quantity" => "Quantité reçue", - "remove_image" => "Supprimer l'image", - "reorder_level" => "Niveau de réapprovisionnement", - "reorder_level_number" => "Le niveau de réapprovisionnement doit etre un nombre.", - "reorder_level_required" => "Le niveau de réapprovisionnement est requis.", - "retrive_item_info" => "Récupérer les informations d'article", - "sales_tax_1" => "Taxe de vente", - "sales_tax_2" => "Taxe de vente 2", - "search_attributes" => "Rechercher les attributs sélectionnés", - "select_image" => "Sélectionner l'image", - "serialized_items" => "Articles avec n° de série", - "standard" => "Régulier", - "stock" => "Inventaire", - "stock_location" => "Emplacement de l'inventaire", - "stock_type" => "Type d'inventaire", - "successful_adding" => "Article ajouté avec succès", - "successful_bulk_edit" => "Édition d'article(s) réussie", - "successful_deleted" => "Suppression réussie", - "successful_updating" => "Édition d'article réussie", - "supplier" => "Fournisseur", - "tax_1" => "Taxe 1", - "tax_2" => "Taxe 2", - "tax_3" => "", - "tax_category" => "Catégorie fiscale", - "tax_percent" => "Pourcentage d'imposition", - "tax_percent_number" => "Le pourcentage d'imposition doit être une valeur numérique", - "tax_percent_required" => "Le pourcentage d'imposition est requis.", - "tax_percents" => "Pourcentage de taxes", - "temp" => "Temporaire", - "type" => "Type d'article", - "unit_price" => "Prix de détail", - "unit_price_number" => "Le prix unitaire doit etre un nombre.", - "unit_price_required" => "Le prix de détail est requis.", - "upc_database" => "Base de données des codes à barres", - "update" => "Éditer l'article", - "use_inventory_menu" => "Utiliser le menu inventaire", + "add_minus" => "Inventaire à ajouter ou soustraire.", + "allow_alt_description" => "Autoriser description alternative", + "amount_entry" => "Entrée de quantité", + "bulk_edit" => "Éditions multiples", + "buy_price_required" => "Le prix d'achat est requis.", + "cannot_be_deleted" => "Impossible de supprimer car un ou plusiers des articles sélectionnés ont des ventes.", + "cannot_find_item" => "Article non trouvé.", + "categories" => "", + "category" => "Catégorie", + "category_new" => "", + "category_required" => "La catégorie est requise.", + "change_all_to_allow_alt_desc" => "Autoriser description alternative pour tous.", + "change_all_to_not_allow_allow_desc" => "Interdire description alternative pour tous.", + "change_all_to_serialized" => "Tout sérialiser", + "change_all_to_unserialized" => "Tout désérialiser", + "change_image" => "Changer l'image", + "confirm_bulk_edit" => "Êtes-vous certain de vouloir éditer toute la sélection ?", + "confirm_bulk_edit_wipe_taxes" => "Les informations de taxes seront remplacées pour tous les articles.", + "confirm_delete" => "Êtes-vous certain de vouloir supprimer la sélection ?", + "confirm_restore" => "Êtes-vous certain de vouloir restaurer le(s) élément(s) sélectionné(s) ?", + "cost_price" => "Prix de gros", + "cost_price_number" => "Le prix d'achat doit être un nombre.", + "cost_price_required" => "Le prix de gros est requis.", + "count" => "Mise à jour de l'inventaire", + "csv_import_failed" => "Échec d'import CSV", + "csv_import_nodata_wrongformat" => "Le CSV envoyé ne contient aucune donnée, ou elles sont dans un format erroné.", + "csv_import_partially_failed" => "Il y a eu {0} importation(s) d'articles échoué(s) au(x) ligne(s) : {1}. Aucune ligne n'a été importée.", + "csv_import_success" => "Importation des articles réussie.", + "current_quantity" => "Quantité actuelle", + "default_pack_name" => "Chacun", + "description" => "Description", + "details_count" => "Détails du décompte d'inventaire", + "do_nothing" => "Ne rien faire", + "edit" => "", + "edit_fields_you_want_to_update" => "Modifier les champs pour les articles sélectionnés.", + "edit_multiple_items" => "Édition multiple d'articles", + "empty_upc_items" => "Articles sans code à barre", + "error_adding_updating" => "Erreur d'ajout/édition d'article", + "error_updating_multiple" => "Erreur d'édition d'articles", + "generate_barcodes" => "Générer des codes à barres", + "hsn_code" => "Nomenclature du système harmonisé", + "image" => "Image", + "import_items_csv" => "Importation d'éléments à partir d'un CSV", + "info_provided_by" => "Informations fournie par", + "inventory" => "Inventaire", + "inventory_CSV_import_quantity" => "Quantité importée à partir d'un CSV", + "inventory_comments" => "Commentaires", + "inventory_data_tracking" => "Suivi d'inventaire", + "inventory_date" => "Date", + "inventory_employee" => "Employé", + "inventory_in_out_quantity" => "Quantité entrée/sortie", + "inventory_remarks" => "Remarques", + "is_deleted" => "Supprimé", + "is_printed" => "", + "is_serialized" => "L'article a un numéro de série", + "item" => "Article", + "item_id" => "", + "item_number" => "Code à barre", + "item_number_duplicate" => "L'article existe déjà la base de données.", + "kit" => "Ensemble", + "location" => "Emplacement", + "low_inventory_items" => "Articles en rupture d'inventaire", + "low_sell_item" => "Article à faible vente", + "manually_editing_of_quantity" => "Édition de quantité manuelle", + "markup" => "", + "name" => "Nom", + "name_required" => "Le nom est requis.", + "new" => "Nouvel article", + "no_description_items" => "Articles sans description", + "no_items_to_display" => "Aucun article à afficher.", + "none" => "Aucun", + "none_selected" => "Vous n'avez sélectionné aucun article à modifier", + "nonstock" => "Non-inventorié", + "number_information" => "Numéro d'article", + "number_required" => "Code à barres est un champ requis.", + "one_or_multiple" => "article(s)", + "pack_name" => "Nom de l'ensemble", + "qty_per_pack" => "Quantité par ensemble", + "quantity" => "Quantité", + "quantity_number" => "La quantité doit être un nombre.", + "quantity_required" => "La quantité est requise.", + "receiving_quantity" => "Quantité reçue", + "remove_image" => "Supprimer l'image", + "reorder_level" => "Niveau de réapprovisionnement", + "reorder_level_number" => "Le niveau de réapprovisionnement doit etre un nombre.", + "reorder_level_required" => "Le niveau de réapprovisionnement est requis.", + "retrive_item_info" => "Récupérer les informations d'article", + "sales_tax_1" => "Taxe de vente", + "sales_tax_2" => "Taxe de vente 2", + "search_attributes" => "Rechercher les attributs sélectionnés", + "select_image" => "Sélectionner l'image", + "serialized_items" => "Articles avec n° de série", + "standard" => "Régulier", + "stock" => "Inventaire", + "stock_location" => "Emplacement de l'inventaire", + "stock_type" => "Type d'inventaire", + "successful_adding" => "Article ajouté avec succès", + "successful_bulk_edit" => "Édition d'article(s) réussie", + "successful_deleted" => "Suppression réussie", + "successful_updating" => "Édition d'article réussie", + "supplier" => "Fournisseur", + "tax_1" => "Taxe 1", + "tax_2" => "Taxe 2", + "tax_3" => "", + "tax_category" => "Catégorie fiscale", + "tax_percent" => "Pourcentage d'imposition", + "tax_percent_number" => "Le pourcentage d'imposition doit être une valeur numérique", + "tax_percent_required" => "Le pourcentage d'imposition est requis.", + "tax_percents" => "Pourcentage de taxes", + "temp" => "Temporaire", + "type" => "Type d'article", + "unit_price" => "Prix de détail", + "unit_price_number" => "Le prix unitaire doit etre un nombre.", + "unit_price_required" => "Le prix de détail est requis.", + "upc_database" => "Base de données des codes à barres", + "update" => "Éditer l'article", + "use_inventory_menu" => "Utiliser le menu inventaire", ]; diff --git a/app/Language/fr/Messages.php b/app/Language/fr/Messages.php index 6ebce52af..0be7b5558 100644 --- a/app/Language/fr/Messages.php +++ b/app/Language/fr/Messages.php @@ -1,15 +1,15 @@ "Prénom", - "last_name" => "Nom de famille", - "message" => "Message", - "message_placeholder" => "Votre message ici...", - "message_required" => "Message requis", - "multiple_phones" => "(Si plusieur destinataires, séparer les numéros avec une virgule)", - "phone" => "N° de téléphone", - "phone_number_required" => "N° de téléphone requis", - "phone_placeholder" => "N° de téléphone cellulaire ici...", - "sms_send" => "Envoyer SMS", - "successfully_sent" => "Message envoyé avec succès à : ", - "unsuccessfully_sent" => "Échec de l'envoi du message à : ", + "first_name" => "Prénom", + "last_name" => "Nom de famille", + "message" => "Message", + "message_placeholder" => "Votre message ici...", + "message_required" => "Message requis", + "multiple_phones" => "(Si plusieur destinataires, séparer les numéros avec une virgule)", + "phone" => "N° de téléphone", + "phone_number_required" => "N° de téléphone requis", + "phone_placeholder" => "N° de téléphone cellulaire ici...", + "sms_send" => "Envoyer SMS", + "successfully_sent" => "Message envoyé avec succès à : ", + "unsuccessfully_sent" => "Échec de l'envoi du message à : ", ]; diff --git a/app/Language/fr/Module.php b/app/Language/fr/Module.php index fac8f3643..fb9453b0c 100644 --- a/app/Language/fr/Module.php +++ b/app/Language/fr/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "Attributs", - "attributes_desc" => "Ajout, mise à jour, suppression et recherche d'attributs.", - "both" => "Tous les deux", - "cashups" => "Encaissements", - "cashups_desc" => "Ajout, mise à jour, suppression et recherche d'encaissements.", - "config" => "Paramètres", - "config_desc" => "Paramètres de la boutique.", - "customers" => "Clients", - "customers_desc" => "Ajouter, Éditer, Supprimer, et Chercher des clients.", - "employees" => "Employés", - "employees_desc" => "Ajouter, Éditer, Supprimer, et Chercher des employés.", - "expenses" => "Dépenses", - "expenses_categories" => "Dépenses Categorie", - "expenses_categories_desc" => "Ajouter, mettre à jour et supprimer des catégories de dépenses.", - "expenses_desc" => "Ajouter, mettre à jour, supprimer et frais de recherche.", - "giftcards" => "Cartes Cadeau", - "giftcards_desc" => "Ajouter, Éditer, Supprimer, et Chercher des cartes cadeau.", - "home" => "Accueil", - "home_desc" => "Liste des modules de menu d'accueil.", - "item_kits" => "Articles vendus en Kits", - "item_kits_desc" => "Ajouter, Éditer, Supprimer, et Chercher des articles vendus en kits.", - "items" => "Articles vendus", - "items_desc" => "Ajouter, Éditer, Supprimer, et Chercher des articles en vente.", - "messages" => "Messages", - "messages_desc" => "Envoyer un message aux Client, Fournisseurs, Employés et al.", - "migrate" => "Émigrer", - "migrate_desc" => "Mettre à jour la base de données OSPOS.", - "office" => "Bureau", - "office_desc" => "Liste des modules de menu du bureau.", - "receivings" => "Entrées Stock", - "receivings_desc" => "Gérer les ordres d'achat.", - "reports" => "Rapports", - "reports_desc" => "Visualiser et générer des rapports.", - "sales" => "Ventes", - "sales_desc" => "Ventes et chiffre d'affaire.", - "suppliers" => "Fournisseurs", - "suppliers_desc" => "Ajouter, mettre à jour, supprimer et rechercher des fournisseurs.", - "taxes" => "Taxe", - "taxes_desc" => "Configurer les taxes de vente.", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "Attributs", + "attributes_desc" => "Ajout, mise à jour, suppression et recherche d'attributs.", + "both" => "Tous les deux", + "cashups" => "Encaissements", + "cashups_desc" => "Ajout, mise à jour, suppression et recherche d'encaissements.", + "config" => "Paramètres", + "config_desc" => "Paramètres de la boutique.", + "customers" => "Clients", + "customers_desc" => "Ajouter, Éditer, Supprimer, et Chercher des clients.", + "employees" => "Employés", + "employees_desc" => "Ajouter, Éditer, Supprimer, et Chercher des employés.", + "expenses" => "Dépenses", + "expenses_categories" => "Dépenses Categorie", + "expenses_categories_desc" => "Ajouter, mettre à jour et supprimer des catégories de dépenses.", + "expenses_desc" => "Ajouter, mettre à jour, supprimer et frais de recherche.", + "giftcards" => "Cartes Cadeau", + "giftcards_desc" => "Ajouter, Éditer, Supprimer, et Chercher des cartes cadeau.", + "home" => "Accueil", + "home_desc" => "Liste des modules de menu d'accueil.", + "item_kits" => "Articles vendus en Kits", + "item_kits_desc" => "Ajouter, Éditer, Supprimer, et Chercher des articles vendus en kits.", + "items" => "Articles vendus", + "items_desc" => "Ajouter, Éditer, Supprimer, et Chercher des articles en vente.", + "messages" => "Messages", + "messages_desc" => "Envoyer un message aux Client, Fournisseurs, Employés et al.", + "migrate" => "Émigrer", + "migrate_desc" => "Mettre à jour la base de données OSPOS.", + "office" => "Bureau", + "office_desc" => "Liste des modules de menu du bureau.", + "receivings" => "Entrées Stock", + "receivings_desc" => "Gérer les ordres d'achat.", + "reports" => "Rapports", + "reports_desc" => "Visualiser et générer des rapports.", + "sales" => "Ventes", + "sales_desc" => "Ventes et chiffre d'affaire.", + "suppliers" => "Fournisseurs", + "suppliers_desc" => "Ajouter, mettre à jour, supprimer et rechercher des fournisseurs.", + "taxes" => "Taxe", + "taxes_desc" => "Configurer les taxes de vente.", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/fr/Receivings.php b/app/Language/fr/Receivings.php index 75fc32b52..3a4131310 100644 --- a/app/Language/fr/Receivings.php +++ b/app/Language/fr/Receivings.php @@ -1,58 +1,58 @@ "", - "cancel_receiving" => "Annuler", - "cannot_be_deleted" => "Suppression de réception(s) a échoué.", - "comments" => "Commentaires", - "complete_receiving" => "Terminer", - "confirm_cancel_receiving" => "Etes vous certain vouloir annuler cette réception ? Tous les articles seront effacés.", - "confirm_delete" => "Êtes-vous certain de vouloir effacer cette réception ? Cette action est IRRÉVERSIBLE.", - "confirm_finish_receiving" => "Êtes-vous certain de vouloir valider cette réception ? Cette action est irréversible.", - "confirm_restore" => "", - "cost" => "Coût", - "daily" => "", - "date" => "Date de réception", - "date_required" => "Veuillez entrer une date valide.", - "date_type" => "Le champ date est requis.", - "delete_entire_sale" => "Supprimer entièrement la vente", - "discount" => "Rabais", - "edit" => "Éditer", - "edit_sale" => "Éditer la réception", - "employee" => "Employé(e)", - "error_editing_item" => "Erreur d'édition.", - "error_requisition" => "Impossible de déplacer le stock a partir du même emplacement.", - "find_or_scan_item" => "Trouver/Scanner un article", - "find_or_scan_item_or_receipt" => "Chercher/Scanner Article/Reçu", - "id" => "ID Réception", - "item_name" => "Nom d'article", - "mode" => "Mode de réception", - "new_supplier" => "Nouveau fournisseur", - "one_or_multiple" => "Réception(s)", - "print_after_sale" => "Imprimer un reçu après vente", - "quantity" => "Qté.", - "receipt" => "Reçu de réception", - "receipt_number" => "Réception #", - "receiving" => "Réceptionner", - "reference" => "Référence", - "register" => "Réception d'articles", - "requisition" => "Réquisition", - "return" => "Retour", - "select_supplier" => "Choisir un fournisseur (facultatif)", - "ship_pack" => "Paquet d'envoi", - "start_typing_supplier_name" => "Commencez à saisir le nom du fournisseur...", - "stock" => "Inventaire", - "stock_destination" => "Destination de stock", - "stock_locaiton" => "Emplacement du stock", - "stock_source" => "Source de stock", - "successfully_deleted" => "Suppression réussie", - "successfully_updated" => "Réception correctement mise à jour", - "supplier" => "Fournisseur", - "supplier_address" => "Adresse", - "supplier_email" => "Courriel fournisseur", - "supplier_location" => "Localisation fournisseur", - "total" => "Total", - "transaction_failed" => "Transaction(s) de réception(s) échouée(s).", - "unable_to_add_item" => "Ajout de l'article à la réception échoué.", - "unsuccessfully_updated" => "Mise à jour de la réception échouée.", - "update" => "Mise à jour", + "amount_due" => "", + "cancel_receiving" => "Annuler", + "cannot_be_deleted" => "Suppression de réception(s) a échoué.", + "comments" => "Commentaires", + "complete_receiving" => "Terminer", + "confirm_cancel_receiving" => "Etes vous certain vouloir annuler cette réception ? Tous les articles seront effacés.", + "confirm_delete" => "Êtes-vous certain de vouloir effacer cette réception ? Cette action est IRRÉVERSIBLE.", + "confirm_finish_receiving" => "Êtes-vous certain de vouloir valider cette réception ? Cette action est irréversible.", + "confirm_restore" => "", + "cost" => "Coût", + "daily" => "", + "date" => "Date de réception", + "date_required" => "Veuillez entrer une date valide.", + "date_type" => "Le champ date est requis.", + "delete_entire_sale" => "Supprimer entièrement la vente", + "discount" => "Rabais", + "edit" => "Éditer", + "edit_sale" => "Éditer la réception", + "employee" => "Employé(e)", + "error_editing_item" => "Erreur d'édition.", + "error_requisition" => "Impossible de déplacer le stock a partir du même emplacement.", + "find_or_scan_item" => "Trouver/Scanner un article", + "find_or_scan_item_or_receipt" => "Chercher/Scanner Article/Reçu", + "id" => "ID Réception", + "item_name" => "Nom d'article", + "mode" => "Mode de réception", + "new_supplier" => "Nouveau fournisseur", + "one_or_multiple" => "Réception(s)", + "print_after_sale" => "Imprimer un reçu après vente", + "quantity" => "Qté.", + "receipt" => "Reçu de réception", + "receipt_number" => "Réception #", + "receiving" => "Réceptionner", + "reference" => "Référence", + "register" => "Réception d'articles", + "requisition" => "Réquisition", + "return" => "Retour", + "select_supplier" => "Choisir un fournisseur (facultatif)", + "ship_pack" => "Paquet d'envoi", + "start_typing_supplier_name" => "Commencez à saisir le nom du fournisseur...", + "stock" => "Inventaire", + "stock_destination" => "Destination de stock", + "stock_locaiton" => "Emplacement du stock", + "stock_source" => "Source de stock", + "successfully_deleted" => "Suppression réussie", + "successfully_updated" => "Réception correctement mise à jour", + "supplier" => "Fournisseur", + "supplier_address" => "Adresse", + "supplier_email" => "Courriel fournisseur", + "supplier_location" => "Localisation fournisseur", + "total" => "Total", + "transaction_failed" => "Transaction(s) de réception(s) échouée(s).", + "unable_to_add_item" => "Ajout de l'article à la réception échoué.", + "unsuccessfully_updated" => "Mise à jour de la réception échouée.", + "update" => "Mise à jour", ]; diff --git a/app/Language/fr/Reports.php b/app/Language/fr/Reports.php index c1ccc722e..f4058d3fb 100644 --- a/app/Language/fr/Reports.php +++ b/app/Language/fr/Reports.php @@ -1,148 +1,148 @@ "Tous", - "authority" => "Autorité", - "canceled" => "Annulé", - "categories" => "Catégories", - "categories_summary_report" => "Rapport sommaire des catégories", - "category" => "Catégorie", - "code_canceled" => "ANL", - "code_invoice" => "FDC", - "code_pos" => "PDV", - "code_quote" => "C", - "code_return" => "RTR", - "code_type" => "Genre", - "code_work_order" => "O/T", - "comments" => "Commentaires", - "commission" => "", - "complete" => "Ventes et retours terminés", - "completed_sales" => "Ventes terminées", - "confirm_delete" => "Êtes-vous sûr de vouloir supprimer les entrées sélectionnées ?", - "confirm_restore" => "Êtes-vous sûr de vouloir restaurer les entrées sélectionnées ?", - "cost" => "En gros", - "cost_price" => "Prix en gros", - "count" => "Décompte", - "customer" => "Client", - "customers" => "Clients", - "customers_summary_report" => "Rapport sommaire des clients", - "date" => "Date", - "date_range" => "Plage de dates", - "description" => "La description", - "detailed_receivings_report" => "Rapport détaillé des factures", - "detailed_receivings_report_input" => "", - "detailed_reports" => "Rapports détaillés", - "detailed_requisition_report" => "", - "detailed_sales_report" => "Rapport de ventes détaillé", - "discount" => "Remise", - "discount_fixed" => "Rabais fixe", - "discount_percent" => "Pourcentage remises", - "discount_type" => "Type de rabais", - "discounts" => "Remises", - "discounts_summary_report" => "Rapport sommaire des remises", - "earned" => "Points gagnés", - "employee" => "Employé", - "employees" => "Employés", - "employees_summary_report" => "Rapport sommaire des employés", - "expenses" => "Dépenses", - "expenses_amount" => "Montant", - "expenses_categories" => "Dépenses", - "expenses_categories_summary_report" => "Rapport de synthèse des catégories de dépenses", - "expenses_category" => "Catégorie", - "expenses_payment_amount" => "", - "expenses_tax_amount" => "Taxe", - "expenses_total_amount" => "Montant total", - "expenses_total_tax_amount" => "Taxe total", - "graphical_reports" => "Rapports graphiques", - "inventory" => "Inventaire", - "inventory_low" => "Niveau d'inventaire bas", - "inventory_low_report" => "Rapport de niveau d'inventaire bas", - "inventory_reports" => "Rapports d'inventaire", - "inventory_summary" => "Résumé d'inventaire", - "inventory_summary_report" => "Rapport Résumé d'inventaire", - "item" => "Article", - "item_count" => "Nombre d'éléments de filtre", - "item_name" => "Nom de l'article", - "item_number" => "Numéro de l'article", - "items" => "Articles", - "items_purchased" => "Éléments Achetés", - "items_received" => "Éléments Arrivés", - "items_summary_report" => "Rapport Résumé articles", - "jurisdiction" => "Juridiction", - "low_inventory" => "", - "low_inventory_report" => "", - "low_sell_quantity" => "Quantité de vente faible", - "more_than_zero" => "Plus de zéro", - "name" => "Nom", - "no_reports_to_display" => "Aucun articles à afficher.", - "payment_type" => "Type de paiement", - "payments" => "Paiements", - "payments_summary_report" => "Rapport Résumé des paiements", - "profit" => "Bénéfice", - "quantity" => "Quantité", - "quantity_purchased" => "Quantité Achetée", - "quotes" => "Citations", - "received_by" => "Reçu par", - "receiving_id" => "Réception ID", - "receiving_type" => "Type de réception", - "receivings" => "Réceptions", - "reorder_level" => "Niveau de réapprovisionnement", - "report" => "Rapport", - "report_input" => "Rapport Entrées", - "reports" => "Rapports", - "requisition" => "", - "requisition_by" => "", - "requisition_id" => "", - "requisition_item" => "", - "requisition_item_quantity" => "", - "requisition_related_item" => "", - "requisition_related_item_total_quantity" => "", - "requisition_related_item_unit_quantity" => "", - "requisitions" => "Demandes", - "returns" => "Reprises", - "revenue" => "Revenu", - "sale_id" => "ID Vente", - "sale_type" => "Type Vente", - "sales" => "Ventes", - "sales_amount" => "Somme de ventes", - "sales_summary_report" => "Rapport Résumé des Ventes", - "sales_taxes" => "Taxes de vente", - "sales_taxes_summary_report" => "Rapport sommaire des taxes de vente", - "serial_number" => "Numéro de série", - "service_charge" => "", - "sold_by" => "Vendu par", - "sold_items" => "", - "sold_to" => "Vendu à", - "stock_location" => "Emplacement du stock", - "sub_total_value" => "Sous-Total", - "subtotal" => "Sous-total", - "summary_reports" => "Rapports sommaires", - "supplied_by" => "Fournit par", - "supplier" => "Fournisseur", - "suppliers" => "Fournisseurs", - "suppliers_summary_report" => "Rapport Résumé Fournisseurs", - "tax" => "Taxe", - "tax_category" => "Catégorie fiscale", - "tax_name" => "Nom de la taxe", - "tax_percent" => "Pourcentage d'imposition", - "tax_rate" => "Taux de taxe", - "taxes" => "Taxe(s)", - "taxes_summary_report" => "Rapport Résumé Taxes", - "total" => "Total", - "total_inventory_value" => "Valeur total de l'inventaire", - "total_low_sell_quantity" => "Quantité totale de faible vente", - "total_quantity" => "Quantité totale", - "total_retail" => "Total Inv. La valeur au détail", - "trans_amount" => "Montant de la transaction", - "trans_due" => "Dû", - "trans_group" => "Groupe de transaction", - "trans_nopay_sales" => "Ventes sans paiement", - "trans_payments" => "Paiements", - "trans_refunded" => "Remboursé", - "trans_sales" => "Ventes", - "trans_type" => "Type de transaction", - "type" => "Genre", - "unit_price" => "Prix en Détail", - "used" => "Points utilisés", - "work_orders" => "Ordre Du Travail", - "zero_and_less" => "Zéro ou moin", + "all" => "Tous", + "authority" => "Autorité", + "canceled" => "Annulé", + "categories" => "Catégories", + "categories_summary_report" => "Rapport sommaire des catégories", + "category" => "Catégorie", + "code_canceled" => "ANL", + "code_invoice" => "FDC", + "code_pos" => "PDV", + "code_quote" => "C", + "code_return" => "RTR", + "code_type" => "Genre", + "code_work_order" => "O/T", + "comments" => "Commentaires", + "commission" => "", + "complete" => "Ventes et retours terminés", + "completed_sales" => "Ventes terminées", + "confirm_delete" => "Êtes-vous sûr de vouloir supprimer les entrées sélectionnées ?", + "confirm_restore" => "Êtes-vous sûr de vouloir restaurer les entrées sélectionnées ?", + "cost" => "En gros", + "cost_price" => "Prix en gros", + "count" => "Décompte", + "customer" => "Client", + "customers" => "Clients", + "customers_summary_report" => "Rapport sommaire des clients", + "date" => "Date", + "date_range" => "Plage de dates", + "description" => "La description", + "detailed_receivings_report" => "Rapport détaillé des factures", + "detailed_receivings_report_input" => "", + "detailed_reports" => "Rapports détaillés", + "detailed_requisition_report" => "", + "detailed_sales_report" => "Rapport de ventes détaillé", + "discount" => "Remise", + "discount_fixed" => "Rabais fixe", + "discount_percent" => "Pourcentage remises", + "discount_type" => "Type de rabais", + "discounts" => "Remises", + "discounts_summary_report" => "Rapport sommaire des remises", + "earned" => "Points gagnés", + "employee" => "Employé", + "employees" => "Employés", + "employees_summary_report" => "Rapport sommaire des employés", + "expenses" => "Dépenses", + "expenses_amount" => "Montant", + "expenses_categories" => "Dépenses", + "expenses_categories_summary_report" => "Rapport de synthèse des catégories de dépenses", + "expenses_category" => "Catégorie", + "expenses_payment_amount" => "", + "expenses_tax_amount" => "Taxe", + "expenses_total_amount" => "Montant total", + "expenses_total_tax_amount" => "Taxe total", + "graphical_reports" => "Rapports graphiques", + "inventory" => "Inventaire", + "inventory_low" => "Niveau d'inventaire bas", + "inventory_low_report" => "Rapport de niveau d'inventaire bas", + "inventory_reports" => "Rapports d'inventaire", + "inventory_summary" => "Résumé d'inventaire", + "inventory_summary_report" => "Rapport Résumé d'inventaire", + "item" => "Article", + "item_count" => "Nombre d'éléments de filtre", + "item_name" => "Nom de l'article", + "item_number" => "Numéro de l'article", + "items" => "Articles", + "items_purchased" => "Éléments Achetés", + "items_received" => "Éléments Arrivés", + "items_summary_report" => "Rapport Résumé articles", + "jurisdiction" => "Juridiction", + "low_inventory" => "", + "low_inventory_report" => "", + "low_sell_quantity" => "Quantité de vente faible", + "more_than_zero" => "Plus de zéro", + "name" => "Nom", + "no_reports_to_display" => "Aucun articles à afficher.", + "payment_type" => "Type de paiement", + "payments" => "Paiements", + "payments_summary_report" => "Rapport Résumé des paiements", + "profit" => "Bénéfice", + "quantity" => "Quantité", + "quantity_purchased" => "Quantité Achetée", + "quotes" => "Citations", + "received_by" => "Reçu par", + "receiving_id" => "Réception ID", + "receiving_type" => "Type de réception", + "receivings" => "Réceptions", + "reorder_level" => "Niveau de réapprovisionnement", + "report" => "Rapport", + "report_input" => "Rapport Entrées", + "reports" => "Rapports", + "requisition" => "", + "requisition_by" => "", + "requisition_id" => "", + "requisition_item" => "", + "requisition_item_quantity" => "", + "requisition_related_item" => "", + "requisition_related_item_total_quantity" => "", + "requisition_related_item_unit_quantity" => "", + "requisitions" => "Demandes", + "returns" => "Reprises", + "revenue" => "Revenu", + "sale_id" => "ID Vente", + "sale_type" => "Type Vente", + "sales" => "Ventes", + "sales_amount" => "Somme de ventes", + "sales_summary_report" => "Rapport Résumé des Ventes", + "sales_taxes" => "Taxes de vente", + "sales_taxes_summary_report" => "Rapport sommaire des taxes de vente", + "serial_number" => "Numéro de série", + "service_charge" => "", + "sold_by" => "Vendu par", + "sold_items" => "", + "sold_to" => "Vendu à", + "stock_location" => "Emplacement du stock", + "sub_total_value" => "Sous-Total", + "subtotal" => "Sous-total", + "summary_reports" => "Rapports sommaires", + "supplied_by" => "Fournit par", + "supplier" => "Fournisseur", + "suppliers" => "Fournisseurs", + "suppliers_summary_report" => "Rapport Résumé Fournisseurs", + "tax" => "Taxe", + "tax_category" => "Catégorie fiscale", + "tax_name" => "Nom de la taxe", + "tax_percent" => "Pourcentage d'imposition", + "tax_rate" => "Taux de taxe", + "taxes" => "Taxe(s)", + "taxes_summary_report" => "Rapport Résumé Taxes", + "total" => "Total", + "total_inventory_value" => "Valeur total de l'inventaire", + "total_low_sell_quantity" => "Quantité totale de faible vente", + "total_quantity" => "Quantité totale", + "total_retail" => "Total Inv. La valeur au détail", + "trans_amount" => "Montant de la transaction", + "trans_due" => "Dû", + "trans_group" => "Groupe de transaction", + "trans_nopay_sales" => "Ventes sans paiement", + "trans_payments" => "Paiements", + "trans_refunded" => "Remboursé", + "trans_sales" => "Ventes", + "trans_type" => "Type de transaction", + "type" => "Genre", + "unit_price" => "Prix en Détail", + "used" => "Points utilisés", + "work_orders" => "Ordre Du Travail", + "zero_and_less" => "Zéro ou moin", ]; diff --git a/app/Language/fr/Sales.php b/app/Language/fr/Sales.php index 2b3a0f690..8a514384a 100644 --- a/app/Language/fr/Sales.php +++ b/app/Language/fr/Sales.php @@ -1,224 +1,224 @@ "Points disponibles", - "rewards_package" => "Récompenses", - "rewards_remaining_balance" => "Vos points fidélité restants ", - "account_number" => "# Compte", - "add_payment" => "Ajout Paiement", - "amount_due" => "Montant à Payer", - "amount_tendered" => "Montant Présenté", - "authorized_signature" => "Signature autorisée", - "cancel_sale" => "Annuler la Vente", - "cash" => "Espèce", - "cash_1" => "", - "cash_2" => "", - "cash_3" => "", - "cash_4" => "", - "cash_adjustment" => "Ajustement de caisse", - "cash_deposit" => "Dépôt d'Espèce", - "cash_filter" => "Espèce", - "change_due" => "Monnaie Rendue", - "change_price" => "Modifier le prix de vente", - "check" => "Chèque", - "check_balance" => "Rappel de chèque", - "check_filter" => "Chèque", - "close" => "", - "comment" => "Commentaire", - "comments" => "Commentaires", - "company_name" => "", - "complete" => "", - "complete_sale" => "Finaliser la Vente", - "confirm_cancel_sale" => "Êtes-vous sûr de vouloir supprimer cette vente ? Tous les articles seront effacés de la vente.", - "confirm_delete" => "Êtes-vous sûr(e) de vouloir supprimer ce(ces) vente(s) ?", - "confirm_restore" => "Êtes-vous sûr de vouloir restaurer les vente(s) sélectionnée(s) ?", - "credit" => "Carte de Crédit", - "credit_deposit" => "Dépôt de crédit", - "credit_filter" => "Carte de crédit", - "current_table" => "", - "customer" => "Client", - "customer_address" => "Adresse", - "customer_discount" => "Rabais", - "customer_email" => "Email", - "customer_location" => "Localisation du client", - "customer_mailchimp_status" => "Statut de MailChimp", - "customer_optional" => "(Requis pour paiement)", - "customer_required" => "(Champs obligatoires)", - "customer_total" => "Total", - "customer_total_spent" => "", - "daily_sales" => "", - "date" => "Date de Vente", - "date_range" => "Intervalle de dates", - "date_required" => "Un bon format de date doit être entré.", - "date_type" => "La Date est requise.", - "debit" => "Carte de Débit", - "debit_filter" => "", - "delete" => "Autoriser la suppression", - "delete_confirmation" => "Êtes vous sûr(e) de vouloir supprimer cette vente ? Cette opération est irréversible.", - "delete_entire_sale" => "Supprimer la vente", - "delete_successful" => "Suppression de la Vente réussie.", - "delete_unsuccessful" => "Échec de suppression.", - "description_abbrv" => "La Desc.", - "discard" => "Annuler", - "discard_quote" => "", - "discount" => "% Remise", - "discount_included" => "% de Rabais", - "discount_short" => "%", - "due" => "Dû", - "due_filter" => "Dû", - "edit" => "Éditer", - "edit_item" => "Éditer article", - "edit_sale" => "Éditer vente", - "email_receipt" => "Reçu par Email", - "employee" => "Employé", - "entry" => "Entrée", - "error_editing_item" => "Érreur lors de l'édition", - "find_or_scan_item" => "Trouver/Scanner Article", - "find_or_scan_item_or_receipt" => "Trouver/Scanner Article OU Reçu", - "giftcard" => "Carte Cadeau", - "giftcard_balance" => "Solde de la Carte-Cadeau", - "giftcard_filter" => "", - "giftcard_number" => "Numéro de Carte cadeau", - "group_by_category" => "Grouper par catégorie", - "group_by_type" => "Regrouper par type", - "hsn" => "HSN", - "id" => "ID Vente", - "include_prices" => "Inclure les prix ?", - "invoice" => "Facture", - "invoice_confirm" => "Cette facture sera envoyée à", - "invoice_enable" => "Créer une Facture", - "invoice_filter" => "Factures", - "invoice_no_email" => "Ce client n'a pas d'adresse courriel valide.", - "invoice_number" => "# Facture", - "invoice_number_duplicate" => "Entrez un numéro de facture unique.", - "invoice_sent" => "Facture envoyée à", - "invoice_total" => "Total Facture", - "invoice_type_custom_invoice" => "Facture personnalisée (custom_invoice.php)", - "invoice_type_custom_tax_invoice" => "Facture fiscale personnalisée (custom_tax_invoice.php)", - "invoice_type_invoice" => "Facture (invoice.php)", - "invoice_type_tax_invoice" => "Facture fiscale (tax_invoice.php)", - "invoice_unsent" => "La Facture n'a pas pu être envoyée à", - "invoice_update" => "Re-calculer", - "item_insufficient_of_stock" => "Stock trop faible.", - "item_name" => "Nom", - "item_number" => "# Article", - "item_out_of_stock" => "Stock épuisé.", - "key_browser" => "Raccourcis utiles", - "key_cancel" => "Annule l'Offre/Facture/Vente en cours", - "key_customer_search" => "Recherche de client", - "key_finish_quote" => "Finaliser la soumission/facture sans paiement", - "key_finish_sale" => "Ajouter un paiement et complété la facture/vente", - "key_full" => "Ouvrir en Mode Plein Écran", - "key_function" => "Function", - "key_help" => "Raccourcis", - "key_help_modal" => "Ouvrir la fenêtre de raccourcis", - "key_in" => "Agrandir", - "key_item_search" => "Recherche d'article", - "key_out" => "Rapetisser", - "key_payment" => "Ajouter un paiement", - "key_print" => "Imprimer la page", - "key_restore" => "Restaurer le Zoom initial", - "key_search" => "Recherche de rapports de tables", - "key_suspend" => "Suspendre la transaction", - "key_suspended" => "Afficher les transactions supsendues", - "key_system" => "Raccourcis systèmes", - "key_tendered" => "Modifier le montant remis", - "key_title" => "Raccourcis Claviers des Ventes", - "mc" => "", - "mode" => "Mode d'Enregistrement", - "must_enter_numeric" => "Veuillez entrer une valeur numérique pour la somme.", - "must_enter_numeric_giftcard" => "Veuillez entrer une valeur numérique pour le numéro de carte.", - "new_customer" => "Nouveau Client", - "new_item" => "Nouvel Élément", - "no_description" => "Aucun", - "no_filter" => "Tous", - "no_items_in_cart" => "Il n'y a rien dans votre panier.", - "no_sales_to_display" => "Aucune vente à afficher.", - "none_selected" => "Vous n'avez sélectionné aucun élément.", - "nontaxed_ind" => " - ", - "not_authorized" => "Cette action n'est pas autorisée.", - "one_or_multiple" => "Vente(s)", - "payment" => "Type Paiement", - "payment_amount" => "Somme", - "payment_not_cover_total" => "Le Paiement ne couvre pas le Total.", - "payment_type" => "Type", - "payments" => "", - "payments_total" => "Total Paiements", - "price" => "Prix", - "print_after_sale" => "Imprimer un recu après vente", - "quantity" => "Qté", - "quantity_less_than_reorder_level" => "Avertissement, Quantité Demandée Insuffisante.", - "quantity_less_than_zero" => "Avertissement : Quantité Demandée insuffisante. Vous pouvez accomplir la vente, mais veuillez vérifier votre inventaire.", - "quantity_of_items" => "Quantité d'articles {0}", - "quote" => "Offre", - "quote_number" => "Offre n°", - "quote_number_duplicate" => "Le numéro de l'offre doit être unique.", - "quote_sent" => "Offre envoyée à", - "quote_unsent" => "L'offre n'est pas parvenue à être envoyée à", - "receipt" => "Reçu de Ventes", - "receipt_no_email" => "Ce client n'a pas d'adresse e-mail valide.", - "receipt_number" => "# Caisse", - "receipt_sent" => "Reçu envoyé à", - "receipt_unsent" => "Reçu NON envoyé à", - "refund" => "Type de remboursement", - "register" => "Registre des Ventes", - "remove_customer" => "Enlever Client", - "remove_discount" => "", - "return" => "Reprise", - "rewards" => "Points de fidélité", - "rewards_balance" => "Compte de points de fidélité", - "sale" => "Vente", - "sale_by_invoice" => "Vente par facture", - "sale_for_customer" => "Client :", - "sale_time" => "Heure", - "sales_tax" => "Taxes de vente", - "sales_total" => "", - "select_customer" => "Choisir Client", - "send_invoice" => "Envoyer la Facture", - "send_quote" => "Envoyer offre", - "send_receipt" => "Envoyer le Reçu", - "send_work_order" => "Envoyer un ordre de travail", - "serial" => "Serie", - "service_charge" => "", - "show_due" => "", - "show_invoice" => "Afficher la facture", - "show_receipt" => "Afficher le reçu", - "start_typing_customer_name" => "Commencez à saisir le nom du client...", - "start_typing_item_name" => "Commencez à saisir le nom de l'item ou scannez le code-barre...", - "stock" => "Inventaire", - "stock_location" => "Endroit d'inventaire", - "sub_total" => "Sous-Total", - "successfully_deleted" => "Vente supprimée", - "successfully_restored" => "Vous avez restauré avec succès", - "successfully_suspended_sale" => "Vente suspendue.", - "successfully_updated" => "Vente éditée.", - "suspend_sale" => "Suspendre la Vente", - "suspended_doc_id" => "Document", - "suspended_sale_id" => "ID", - "suspended_sales" => "Ventes Suspendues", - "table" => "Emploi du temps", - "takings" => "Ventes complétées", - "tax" => "Taxe", - "tax_id" => "Id Taxe", - "tax_invoice" => "Facture Fiscale", - "tax_percent" => "% Taxe", - "taxed_ind" => "T", - "total" => "Total", - "total_tax_exclusive" => "Taxe exclus", - "transaction_failed" => "Échec de Transaction de vente.", - "unable_to_add_item" => "Erreur d'ajout d'article à la vente", - "unsuccessfully_deleted" => "Échec de suppression.", - "unsuccessfully_restored" => "Restauration de(s) vente(s) échouée.", - "unsuccessfully_suspended_sale" => "Vente suspendue.", - "unsuccessfully_updated" => "Échec d'édition.", - "unsuspend" => "Débloquer", - "unsuspend_and_delete" => "Action", - "update" => "Éditer", - "upi" => "UPI", - "visa" => "", - "wholesale" => "", - "work_order" => "Commande de travail", - "work_order_number" => "Numéro de commande", - "work_order_number_duplicate" => "Le numéro de bon de travail doit être unique.", - "work_order_sent" => "Ordre de travail envoyé à", - "work_order_unsent" => "L'ordre de travail n'a pas pu être envoyé à", + "customers_available_points" => "Points disponibles", + "rewards_package" => "Récompenses", + "rewards_remaining_balance" => "Vos points fidélité restants ", + "account_number" => "# Compte", + "add_payment" => "Ajout Paiement", + "amount_due" => "Montant à Payer", + "amount_tendered" => "Montant Présenté", + "authorized_signature" => "Signature autorisée", + "cancel_sale" => "Annuler la Vente", + "cash" => "Espèce", + "cash_1" => "", + "cash_2" => "", + "cash_3" => "", + "cash_4" => "", + "cash_adjustment" => "Ajustement de caisse", + "cash_deposit" => "Dépôt d'Espèce", + "cash_filter" => "Espèce", + "change_due" => "Monnaie Rendue", + "change_price" => "Modifier le prix de vente", + "check" => "Chèque", + "check_balance" => "Rappel de chèque", + "check_filter" => "Chèque", + "close" => "", + "comment" => "Commentaire", + "comments" => "Commentaires", + "company_name" => "", + "complete" => "", + "complete_sale" => "Finaliser la Vente", + "confirm_cancel_sale" => "Êtes-vous sûr de vouloir supprimer cette vente ? Tous les articles seront effacés de la vente.", + "confirm_delete" => "Êtes-vous sûr(e) de vouloir supprimer ce(ces) vente(s) ?", + "confirm_restore" => "Êtes-vous sûr de vouloir restaurer les vente(s) sélectionnée(s) ?", + "credit" => "Carte de Crédit", + "credit_deposit" => "Dépôt de crédit", + "credit_filter" => "Carte de crédit", + "current_table" => "", + "customer" => "Client", + "customer_address" => "Adresse", + "customer_discount" => "Rabais", + "customer_email" => "Email", + "customer_location" => "Localisation du client", + "customer_mailchimp_status" => "Statut de MailChimp", + "customer_optional" => "(Requis pour paiement)", + "customer_required" => "(Champs obligatoires)", + "customer_total" => "Total", + "customer_total_spent" => "", + "daily_sales" => "", + "date" => "Date de Vente", + "date_range" => "Intervalle de dates", + "date_required" => "Un bon format de date doit être entré.", + "date_type" => "La Date est requise.", + "debit" => "Carte de Débit", + "debit_filter" => "", + "delete" => "Autoriser la suppression", + "delete_confirmation" => "Êtes vous sûr(e) de vouloir supprimer cette vente ? Cette opération est irréversible.", + "delete_entire_sale" => "Supprimer la vente", + "delete_successful" => "Suppression de la Vente réussie.", + "delete_unsuccessful" => "Échec de suppression.", + "description_abbrv" => "La Desc.", + "discard" => "Annuler", + "discard_quote" => "", + "discount" => "% Remise", + "discount_included" => "% de Rabais", + "discount_short" => "%", + "due" => "Dû", + "due_filter" => "Dû", + "edit" => "Éditer", + "edit_item" => "Éditer article", + "edit_sale" => "Éditer vente", + "email_receipt" => "Reçu par Email", + "employee" => "Employé", + "entry" => "Entrée", + "error_editing_item" => "Érreur lors de l'édition", + "find_or_scan_item" => "Trouver/Scanner Article", + "find_or_scan_item_or_receipt" => "Trouver/Scanner Article OU Reçu", + "giftcard" => "Carte Cadeau", + "giftcard_balance" => "Solde de la Carte-Cadeau", + "giftcard_filter" => "", + "giftcard_number" => "Numéro de Carte cadeau", + "group_by_category" => "Grouper par catégorie", + "group_by_type" => "Regrouper par type", + "hsn" => "HSN", + "id" => "ID Vente", + "include_prices" => "Inclure les prix ?", + "invoice" => "Facture", + "invoice_confirm" => "Cette facture sera envoyée à", + "invoice_enable" => "Créer une Facture", + "invoice_filter" => "Factures", + "invoice_no_email" => "Ce client n'a pas d'adresse courriel valide.", + "invoice_number" => "# Facture", + "invoice_number_duplicate" => "Entrez un numéro de facture unique.", + "invoice_sent" => "Facture envoyée à", + "invoice_total" => "Total Facture", + "invoice_type_custom_invoice" => "Facture personnalisée (custom_invoice.php)", + "invoice_type_custom_tax_invoice" => "Facture fiscale personnalisée (custom_tax_invoice.php)", + "invoice_type_invoice" => "Facture (invoice.php)", + "invoice_type_tax_invoice" => "Facture fiscale (tax_invoice.php)", + "invoice_unsent" => "La Facture n'a pas pu être envoyée à", + "invoice_update" => "Re-calculer", + "item_insufficient_of_stock" => "Stock trop faible.", + "item_name" => "Nom", + "item_number" => "# Article", + "item_out_of_stock" => "Stock épuisé.", + "key_browser" => "Raccourcis utiles", + "key_cancel" => "Annule l'Offre/Facture/Vente en cours", + "key_customer_search" => "Recherche de client", + "key_finish_quote" => "Finaliser la soumission/facture sans paiement", + "key_finish_sale" => "Ajouter un paiement et complété la facture/vente", + "key_full" => "Ouvrir en Mode Plein Écran", + "key_function" => "Function", + "key_help" => "Raccourcis", + "key_help_modal" => "Ouvrir la fenêtre de raccourcis", + "key_in" => "Agrandir", + "key_item_search" => "Recherche d'article", + "key_out" => "Rapetisser", + "key_payment" => "Ajouter un paiement", + "key_print" => "Imprimer la page", + "key_restore" => "Restaurer le Zoom initial", + "key_search" => "Recherche de rapports de tables", + "key_suspend" => "Suspendre la transaction", + "key_suspended" => "Afficher les transactions supsendues", + "key_system" => "Raccourcis systèmes", + "key_tendered" => "Modifier le montant remis", + "key_title" => "Raccourcis Claviers des Ventes", + "mc" => "", + "mode" => "Mode d'Enregistrement", + "must_enter_numeric" => "Veuillez entrer une valeur numérique pour la somme.", + "must_enter_numeric_giftcard" => "Veuillez entrer une valeur numérique pour le numéro de carte.", + "new_customer" => "Nouveau Client", + "new_item" => "Nouvel Élément", + "no_description" => "Aucun", + "no_filter" => "Tous", + "no_items_in_cart" => "Il n'y a rien dans votre panier.", + "no_sales_to_display" => "Aucune vente à afficher.", + "none_selected" => "Vous n'avez sélectionné aucun élément.", + "nontaxed_ind" => " - ", + "not_authorized" => "Cette action n'est pas autorisée.", + "one_or_multiple" => "Vente(s)", + "payment" => "Type Paiement", + "payment_amount" => "Somme", + "payment_not_cover_total" => "Le Paiement ne couvre pas le Total.", + "payment_type" => "Type", + "payments" => "", + "payments_total" => "Total Paiements", + "price" => "Prix", + "print_after_sale" => "Imprimer un recu après vente", + "quantity" => "Qté", + "quantity_less_than_reorder_level" => "Avertissement, Quantité Demandée Insuffisante.", + "quantity_less_than_zero" => "Avertissement : Quantité Demandée insuffisante. Vous pouvez accomplir la vente, mais veuillez vérifier votre inventaire.", + "quantity_of_items" => "Quantité d'articles {0}", + "quote" => "Offre", + "quote_number" => "Offre n°", + "quote_number_duplicate" => "Le numéro de l'offre doit être unique.", + "quote_sent" => "Offre envoyée à", + "quote_unsent" => "L'offre n'est pas parvenue à être envoyée à", + "receipt" => "Reçu de Ventes", + "receipt_no_email" => "Ce client n'a pas d'adresse e-mail valide.", + "receipt_number" => "# Caisse", + "receipt_sent" => "Reçu envoyé à", + "receipt_unsent" => "Reçu NON envoyé à", + "refund" => "Type de remboursement", + "register" => "Registre des Ventes", + "remove_customer" => "Enlever Client", + "remove_discount" => "", + "return" => "Reprise", + "rewards" => "Points de fidélité", + "rewards_balance" => "Compte de points de fidélité", + "sale" => "Vente", + "sale_by_invoice" => "Vente par facture", + "sale_for_customer" => "Client :", + "sale_time" => "Heure", + "sales_tax" => "Taxes de vente", + "sales_total" => "", + "select_customer" => "Choisir Client", + "send_invoice" => "Envoyer la Facture", + "send_quote" => "Envoyer offre", + "send_receipt" => "Envoyer le Reçu", + "send_work_order" => "Envoyer un ordre de travail", + "serial" => "Serie", + "service_charge" => "", + "show_due" => "", + "show_invoice" => "Afficher la facture", + "show_receipt" => "Afficher le reçu", + "start_typing_customer_name" => "Commencez à saisir le nom du client...", + "start_typing_item_name" => "Commencez à saisir le nom de l'item ou scannez le code-barre...", + "stock" => "Inventaire", + "stock_location" => "Endroit d'inventaire", + "sub_total" => "Sous-Total", + "successfully_deleted" => "Vente supprimée", + "successfully_restored" => "Vous avez restauré avec succès", + "successfully_suspended_sale" => "Vente suspendue.", + "successfully_updated" => "Vente éditée.", + "suspend_sale" => "Suspendre la Vente", + "suspended_doc_id" => "Document", + "suspended_sale_id" => "ID", + "suspended_sales" => "Ventes Suspendues", + "table" => "Emploi du temps", + "takings" => "Ventes complétées", + "tax" => "Taxe", + "tax_id" => "Id Taxe", + "tax_invoice" => "Facture Fiscale", + "tax_percent" => "% Taxe", + "taxed_ind" => "T", + "total" => "Total", + "total_tax_exclusive" => "Taxe exclus", + "transaction_failed" => "Échec de Transaction de vente.", + "unable_to_add_item" => "Erreur d'ajout d'article à la vente", + "unsuccessfully_deleted" => "Échec de suppression.", + "unsuccessfully_restored" => "Restauration de(s) vente(s) échouée.", + "unsuccessfully_suspended_sale" => "Vente suspendue.", + "unsuccessfully_updated" => "Échec d'édition.", + "unsuspend" => "Débloquer", + "unsuspend_and_delete" => "Action", + "update" => "Éditer", + "upi" => "UPI", + "visa" => "", + "wholesale" => "", + "work_order" => "Commande de travail", + "work_order_number" => "Numéro de commande", + "work_order_number_duplicate" => "Le numéro de bon de travail doit être unique.", + "work_order_sent" => "Ordre de travail envoyé à", + "work_order_unsent" => "L'ordre de travail n'a pas pu être envoyé à", ]; diff --git a/app/Language/fr/Suppliers.php b/app/Language/fr/Suppliers.php index 072809622..1abea36e3 100644 --- a/app/Language/fr/Suppliers.php +++ b/app/Language/fr/Suppliers.php @@ -1,24 +1,24 @@ "Numéro de compte", - "agency_name" => "Nom de l'agence", - "cannot_be_deleted" => "Impossible de supprimer le(s) fournisseur(s) sélectionné(s). Un ou plusieurs ont des ventes.", - "category" => "Catégorie", - "company_name" => "Nom de l'entreprise", - "company_name_required" => "Le nom de l'entreprise est requis.", - "confirm_delete" => "Êtes-vous certain vouloir supprimer ce(s) fournisseur(s) ?", - "confirm_restore" => "Êtes-vous certain de vouloir restaurer le(s) fournisseur(s) sélectionné(s) ?", - "cost" => "Fournisseur de coût", - "error_adding_updating" => "Erreur lors de l'ajout/modification du fournisseur.", - "goods" => "Fournisseur de biens", - "new" => "Nouveau fournisseur", - "none_selected" => "Vous n'avez sélectionné aucun fournisseur à supprimer.", - "one_or_multiple" => "Fournisseur(s)", - "successful_adding" => "Fournisseur ajouté avec succès", - "successful_deleted" => "Suppression réussie", - "successful_updating" => "Fournisseur édité avec succès", - "supplier" => "Fournisseur", - "supplier_id" => "Id", - "tax_id" => "Id. de taxe", - "update" => "Modifier le fournisseur", + "account_number" => "Numéro de compte", + "agency_name" => "Nom de l'agence", + "cannot_be_deleted" => "Impossible de supprimer le(s) fournisseur(s) sélectionné(s). Un ou plusieurs ont des ventes.", + "category" => "Catégorie", + "company_name" => "Nom de l'entreprise", + "company_name_required" => "Le nom de l'entreprise est requis.", + "confirm_delete" => "Êtes-vous certain vouloir supprimer ce(s) fournisseur(s) ?", + "confirm_restore" => "Êtes-vous certain de vouloir restaurer le(s) fournisseur(s) sélectionné(s) ?", + "cost" => "Fournisseur de coût", + "error_adding_updating" => "Erreur lors de l'ajout/modification du fournisseur.", + "goods" => "Fournisseur de biens", + "new" => "Nouveau fournisseur", + "none_selected" => "Vous n'avez sélectionné aucun fournisseur à supprimer.", + "one_or_multiple" => "Fournisseur(s)", + "successful_adding" => "Fournisseur ajouté avec succès", + "successful_deleted" => "Suppression réussie", + "successful_updating" => "Fournisseur édité avec succès", + "supplier" => "Fournisseur", + "supplier_id" => "Id", + "tax_id" => "Id. de taxe", + "update" => "Modifier le fournisseur", ]; diff --git a/app/Language/fr/Taxes.php b/app/Language/fr/Taxes.php index e978687f9..ec5745ec7 100644 --- a/app/Language/fr/Taxes.php +++ b/app/Language/fr/Taxes.php @@ -1,82 +1,82 @@ "Ajouter une exception", - "cascade" => "Cascade", - "cascade_sequence" => "Séquence en cascade", - "city" => "Ville", - "code" => "Code", - "confirm_delete" => "Êtes-vous sûr de vouloir supprimer ce Code Fiscal ? Cette action ne peut pas être annulée", - "confirm_restore" => "Êtes-vous sûr de vouloir restaurer le(s) Code(s) Fiscal(s) sélectionné(s) ?", - "default_tax_category" => "Catégorie Fiscal par Défaut", - "default_tax_rate" => "Taux d'Imposition par Défaut", - "error_adding_updating" => "L'ajout ou la mise à jour du Code Fiscal a échoué", - "group_seq" => "Groupe de Seq", - "jurisdiction_name" => "Nom de la Juridiction", - "name" => "Nom", - "new" => "Nouvelle Taxe", - "no_taxes" => "", - "no_taxes_to_display" => "Aucun Code Fiscal à afficher", - "reporting_authority" => "Autorité Concernée", - "round_half_down" => "Arrondir au Nombre Inférieur", - "round_half_even" => "Arrondir au Nombre Pair", - "round_half_odd" => "Arrondir au Nombre Impaire", - "round_half_up" => "Arrondir au Nombre Supérieur", - "rounding_code" => "Type d'Arrondi", - "sales_tax" => "Taxe de vente", - "sales_tax_by_invoice" => "Taxe de Vente pour les Factures", - "sequence" => "Séq.", - "state" => "État/Région", - "successful_deleted" => "Vous avez supprimé avec succès", - "tax_categories" => "Catégorie Fiscal", - "tax_categories_configuration" => "Configurations des Catégories Fiscal", - "tax_categories_saved_successfully" => "Les Catégories Fiscal ont été modifiées", - "tax_categories_saved_unsuccessfully" => "Les Catégories Fiscal n'ont pas été modifiées", - "tax_category" => "Catégorie Fiscale", - "tax_category_code" => "Code de Catégorie Fiscal", - "tax_category_duplicate" => "Dupliquer la catégorie fiscal", - "tax_category_invalid_chars" => "Caractères non valides dans le nom de la catégorie fiscal", - "tax_category_name" => "Nom de la Catégorie Fiscal", - "tax_category_new" => "Nouvelle Catégorie Fiscal", - "tax_category_required" => "La catégorie fiscal est obligatoire", - "tax_code" => "Code Fiscal", - "tax_code_cannot_be_deleted" => "La suppression du code fiscal a échoué", - "tax_code_duplicate" => "Dupliquer le code fiscal", - "tax_code_invalid_chars" => "Caractères non valides dans le code fiscal", - "tax_code_name" => "Nom du Code Fiscal", - "tax_code_required" => "Le code fiscal est un champ obligatoire", - "tax_code_successful_deleted" => "Vous avez supprimé le Code Fiscal avec succès", - "tax_code_successful_updated" => "Vous avez mise à jour avec succès", - "tax_code_successful_updating" => "Vous avez actualisé le Code Fiscal avec succès", - "tax_code_successfully_added" => "Vous avez ajouté avec succès", - "tax_code_type" => "Type de Code Fiscal", - "tax_codes" => "Codes Fiscal", - "tax_codes_configuration" => "Configuration des Codes Fiscal", - "tax_codes_saved_successfully" => "Changements des Codes Fiscal enregistré", - "tax_codes_saved_unsuccessfully" => "Changements des Codes Fiscal n'ont pas été enregistrés", - "tax_excluded" => "Taxe exclue", - "tax_group" => "Groupe Fiscal", - "tax_group_not_unique" => "Groupe fiscal {0} n'est pas unique", - "tax_group_sequence" => "Séquence du Groupe Fiscal", - "tax_included" => "Taxe Inclue", - "tax_jurisdiction" => "Juridiction Fiscal", - "tax_jurisdiction_duplicate" => "Dupliquer la juridiction fiscal", - "tax_jurisdiction_invalid_chars" => "Caractères invalides dans le nom de la juridiction", - "tax_jurisdiction_required" => "La Juridiction fiscal est requis", - "tax_jurisdictions" => "Juridictions Fiscal", - "tax_jurisdictions_configuration" => "Configuration des Juridictions Fiscal", - "tax_jurisdictions_saved_successfully" => "Changements des Juridiction Fiscal enregistrés", - "tax_jurisdictions_saved_unsuccessfully" => "Changements des Juridiction Fiscal n'ont pas été enregistrés", - "tax_rate" => "Taux Fiscal", - "tax_rate_configuration" => "Configuration des Taux Fiscal", - "tax_rate_error_adding_updating" => "L'Ajout ou la modification du Taux Fiscal à échoué", - "tax_rate_numeric" => "Le taux fiscal doit être un nombre", - "tax_rate_required" => "Le taux de fiscal est un champ obligatoire", - "tax_rate_successful_updated" => "Vous avez mise à jour avec succès", - "tax_rate_successfully_added" => "Vous avez ajouté avec succès", - "tax_rates" => "Taux Fiscal", - "tax_rates_configuration" => "Configuration des Taux Fiscal", - "tax_rounding" => "Arrondi de l'imposition", - "tax_type" => "Type d'Imposition", - "update" => "Modifier le Taux Fiscal", - "vat_tax" => "Taxe sur la TVA", + "add_exception" => "Ajouter une exception", + "cascade" => "Cascade", + "cascade_sequence" => "Séquence en cascade", + "city" => "Ville", + "code" => "Code", + "confirm_delete" => "Êtes-vous sûr de vouloir supprimer ce Code Fiscal ? Cette action ne peut pas être annulée", + "confirm_restore" => "Êtes-vous sûr de vouloir restaurer le(s) Code(s) Fiscal(s) sélectionné(s) ?", + "default_tax_category" => "Catégorie Fiscal par Défaut", + "default_tax_rate" => "Taux d'Imposition par Défaut", + "error_adding_updating" => "L'ajout ou la mise à jour du Code Fiscal a échoué", + "group_seq" => "Groupe de Seq", + "jurisdiction_name" => "Nom de la Juridiction", + "name" => "Nom", + "new" => "Nouvelle Taxe", + "no_taxes" => "", + "no_taxes_to_display" => "Aucun Code Fiscal à afficher", + "reporting_authority" => "Autorité Concernée", + "round_half_down" => "Arrondir au Nombre Inférieur", + "round_half_even" => "Arrondir au Nombre Pair", + "round_half_odd" => "Arrondir au Nombre Impaire", + "round_half_up" => "Arrondir au Nombre Supérieur", + "rounding_code" => "Type d'Arrondi", + "sales_tax" => "Taxe de vente", + "sales_tax_by_invoice" => "Taxe de Vente pour les Factures", + "sequence" => "Séq.", + "state" => "État/Région", + "successful_deleted" => "Vous avez supprimé avec succès", + "tax_categories" => "Catégorie Fiscal", + "tax_categories_configuration" => "Configurations des Catégories Fiscal", + "tax_categories_saved_successfully" => "Les Catégories Fiscal ont été modifiées", + "tax_categories_saved_unsuccessfully" => "Les Catégories Fiscal n'ont pas été modifiées", + "tax_category" => "Catégorie Fiscale", + "tax_category_code" => "Code de Catégorie Fiscal", + "tax_category_duplicate" => "Dupliquer la catégorie fiscal", + "tax_category_invalid_chars" => "Caractères non valides dans le nom de la catégorie fiscal", + "tax_category_name" => "Nom de la Catégorie Fiscal", + "tax_category_new" => "Nouvelle Catégorie Fiscal", + "tax_category_required" => "La catégorie fiscal est obligatoire", + "tax_code" => "Code Fiscal", + "tax_code_cannot_be_deleted" => "La suppression du code fiscal a échoué", + "tax_code_duplicate" => "Dupliquer le code fiscal", + "tax_code_invalid_chars" => "Caractères non valides dans le code fiscal", + "tax_code_name" => "Nom du Code Fiscal", + "tax_code_required" => "Le code fiscal est un champ obligatoire", + "tax_code_successful_deleted" => "Vous avez supprimé le Code Fiscal avec succès", + "tax_code_successful_updated" => "Vous avez mise à jour avec succès", + "tax_code_successful_updating" => "Vous avez actualisé le Code Fiscal avec succès", + "tax_code_successfully_added" => "Vous avez ajouté avec succès", + "tax_code_type" => "Type de Code Fiscal", + "tax_codes" => "Codes Fiscal", + "tax_codes_configuration" => "Configuration des Codes Fiscal", + "tax_codes_saved_successfully" => "Changements des Codes Fiscal enregistré", + "tax_codes_saved_unsuccessfully" => "Changements des Codes Fiscal n'ont pas été enregistrés", + "tax_excluded" => "Taxe exclue", + "tax_group" => "Groupe Fiscal", + "tax_group_not_unique" => "Groupe fiscal {0} n'est pas unique", + "tax_group_sequence" => "Séquence du Groupe Fiscal", + "tax_included" => "Taxe Inclue", + "tax_jurisdiction" => "Juridiction Fiscal", + "tax_jurisdiction_duplicate" => "Dupliquer la juridiction fiscal", + "tax_jurisdiction_invalid_chars" => "Caractères invalides dans le nom de la juridiction", + "tax_jurisdiction_required" => "La Juridiction fiscal est requis", + "tax_jurisdictions" => "Juridictions Fiscal", + "tax_jurisdictions_configuration" => "Configuration des Juridictions Fiscal", + "tax_jurisdictions_saved_successfully" => "Changements des Juridiction Fiscal enregistrés", + "tax_jurisdictions_saved_unsuccessfully" => "Changements des Juridiction Fiscal n'ont pas été enregistrés", + "tax_rate" => "Taux Fiscal", + "tax_rate_configuration" => "Configuration des Taux Fiscal", + "tax_rate_error_adding_updating" => "L'Ajout ou la modification du Taux Fiscal à échoué", + "tax_rate_numeric" => "Le taux fiscal doit être un nombre", + "tax_rate_required" => "Le taux de fiscal est un champ obligatoire", + "tax_rate_successful_updated" => "Vous avez mise à jour avec succès", + "tax_rate_successfully_added" => "Vous avez ajouté avec succès", + "tax_rates" => "Taux Fiscal", + "tax_rates_configuration" => "Configuration des Taux Fiscal", + "tax_rounding" => "Arrondi de l'imposition", + "tax_type" => "Type d'Imposition", + "update" => "Modifier le Taux Fiscal", + "vat_tax" => "Taxe sur la TVA", ]; diff --git a/app/Language/fr/index.html b/app/Language/fr/index.html index a84f6fc38..1ffdb977c 100644 --- a/app/Language/fr/index.html +++ b/app/Language/fr/index.html @@ -1,7 +1,7 @@ - 403 Interdit + 403 Interdit diff --git a/app/Language/he/Attributes.php b/app/Language/he/Attributes.php index 1444a7974..cf4a15cdd 100644 --- a/app/Language/he/Attributes.php +++ b/app/Language/he/Attributes.php @@ -1,32 +1,32 @@ "ערך השדה אינו יכול להכיל ':' או '|'", - "confirm_delete" => "האם אתה בטוח שברצונך למחוק את המאפיינים שנבחרו?", - "confirm_restore" => "האם אתה בטוח שברצונך לשחזר את המאפיינים שנבחרו?", - "definition_cannot_be_deleted" => "לא ניתן למחוק מאפיינים נבחר(ים)", - "definition_error_adding_updating" => "לא ניתן להוסיף או לעדכן את הערך {0}. בדוק את יומן השגיאות.", - "definition_flags" => "מאפיין גלוי", - "definition_group" => "קבוצה", - "definition_id" => "מספר זיהוי", - "definition_name" => "הוסף מאפיין", - "definition_name_required" => "מאפיין שם הינו שדה חובה", - "definition_one_or_multiple" => "תכונה (תכונות)", - "definition_successful_adding" => "הוספת בהצלחה את הפריט", - "definition_successful_deleted" => "נמחק בהצלחה", - "definition_successful_updating" => "עדכנת בהצלחה את המאפיין", - "definition_type" => "סוג מאפיין", - "definition_type_required" => "שדה המאפיין הינו שדה חובה", - "definition_unit" => "יחידת מדידה", - "definition_values" => "ערכי המאפיין", - "new" => "מאפיין חדש", - "no_attributes_to_display" => "אין פריטים להצגה", - "receipt_visibility" => "קבלה", - "show_in_items" => "הצג בפריטים", - "show_in_items_visibility" => "פריטים", - "show_in_receipt" => "הצג בקבלה", - "show_in_receivings" => "הצג בקבלת סחורה", - "show_in_receivings_visibility" => "קבלת סחורה", - "show_in_sales" => "הצג במכירות", - "show_in_sales_visibility" => "מכירות", - "update" => "עדכן מאפיין", + "attribute_value_invalid_chars" => "ערך השדה אינו יכול להכיל ':' או '|'", + "confirm_delete" => "האם אתה בטוח שברצונך למחוק את המאפיינים שנבחרו?", + "confirm_restore" => "האם אתה בטוח שברצונך לשחזר את המאפיינים שנבחרו?", + "definition_cannot_be_deleted" => "לא ניתן למחוק מאפיינים נבחר(ים)", + "definition_error_adding_updating" => "לא ניתן להוסיף או לעדכן את הערך {0}. בדוק את יומן השגיאות.", + "definition_flags" => "מאפיין גלוי", + "definition_group" => "קבוצה", + "definition_id" => "מספר זיהוי", + "definition_name" => "הוסף מאפיין", + "definition_name_required" => "מאפיין שם הינו שדה חובה", + "definition_one_or_multiple" => "תכונה (תכונות)", + "definition_successful_adding" => "הוספת בהצלחה את הפריט", + "definition_successful_deleted" => "נמחק בהצלחה", + "definition_successful_updating" => "עדכנת בהצלחה את המאפיין", + "definition_type" => "סוג מאפיין", + "definition_type_required" => "שדה המאפיין הינו שדה חובה", + "definition_unit" => "יחידת מדידה", + "definition_values" => "ערכי המאפיין", + "new" => "מאפיין חדש", + "no_attributes_to_display" => "אין פריטים להצגה", + "receipt_visibility" => "קבלה", + "show_in_items" => "הצג בפריטים", + "show_in_items_visibility" => "פריטים", + "show_in_receipt" => "הצג בקבלה", + "show_in_receivings" => "הצג בקבלת סחורה", + "show_in_receivings_visibility" => "קבלת סחורה", + "show_in_sales" => "הצג במכירות", + "show_in_sales_visibility" => "מכירות", + "update" => "עדכן מאפיין", ]; diff --git a/app/Language/he/Bootstrap_tables.php b/app/Language/he/Bootstrap_tables.php index 53fcc807c..32745963e 100644 --- a/app/Language/he/Bootstrap_tables.php +++ b/app/Language/he/Bootstrap_tables.php @@ -1,11 +1,11 @@ "הכול", - "columns" => "עמודות", - "hide_show_pagination" => "הסתר / הצג מספור דפים", - "loading" => "טוען, אנא המתן ...", - "page_from_to" => "מציג {0} ל {1} מתוך {2} שורות", - "refresh" => "רענן", - "rows_per_page" => "{0} שורות לדף", - "toggle" => "החלף", + "all" => "הכול", + "columns" => "עמודות", + "hide_show_pagination" => "הסתר / הצג מספור דפים", + "loading" => "טוען, אנא המתן ...", + "page_from_to" => "מציג {0} ל {1} מתוך {2} שורות", + "refresh" => "רענן", + "rows_per_page" => "{0} שורות לדף", + "toggle" => "החלף", ]; diff --git a/app/Language/he/Cashups.php b/app/Language/he/Cashups.php index f5889be85..b161245f9 100644 --- a/app/Language/he/Cashups.php +++ b/app/Language/he/Cashups.php @@ -1,49 +1,49 @@ "סכום", - "amount_number" => "הסכום חייב להיות מספר", - "amount_required" => "הסכום הוא שדה חובה.", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "לא ניתן למחוק את Cashup (דוח קופה)", - "cash_difference" => "", - "close_date" => "תאריך סגירה", - "close_employee" => "נסגר על ידי", - "closed_amount_card" => "כרטיסי אשראי", - "closed_amount_cash" => "מזומנים בסגירה", - "closed_amount_check" => "המחאות", - "closed_amount_due" => "פירעון עתידי", - "closed_amount_giftcard" => "", - "closed_amount_total" => "סהכ", - "closed_date" => "תאריך סגירה", - "confirm_delete" => "האם אתה בטוח שברצונך למחוק את דוח סגירת הקופה שנבחרה?", - "confirm_restore" => "האם אתה בטוח שברצונך לשחזר את דוח סגירת קופה שנבחרו?", - "confirm_submit" => "", - "date_number" => "התאריך חייב להיות מספר", - "date_required" => "התאריך הינו שדה חובה", - "description" => "תיאור", - "enable_expected" => "", - "error_adding_updating" => "שגיאה בהוספה / עדכון של Cashup (דוח קופה)", - "giftcard" => "", - "id" => "מספר זיהוי", - "info" => "תיאור Cashups (דוח קופה)", - "info_employee" => "", - "is_deleted" => "נמחק", - "new" => "דוח קופה חדש", - "no_cashups_to_display" => "אין דוחות קופה להצגה", - "none_selected" => "לא בחרת דוח\ות קופה", - "note" => "הערות", - "one_or_multiple" => "דוח קופה\ות", - "open_amount_cash" => "מזומן בפתיחה", - "open_date" => "תאריך פתיחה", - "open_employee" => "נפתח על ידי", - "opened_date" => "תאריך פתיחה", - "successful_adding" => "דוח קופה נוסף בהצלחה", - "successful_deleted" => "דוח קופה נמחק בהצלחה", - "successful_updating" => "דוח קופה עודכן בהצלחה", - "total" => "סהכ", - "transfer_amount_cash" => "כניסה\יציאת מזומן", - "transfer_amount_cash_minus" => "", - "update" => "עדכן דוח קופה", - "warning" => "", + "amount" => "סכום", + "amount_number" => "הסכום חייב להיות מספר", + "amount_required" => "הסכום הוא שדה חובה.", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "לא ניתן למחוק את Cashup (דוח קופה)", + "cash_difference" => "", + "close_date" => "תאריך סגירה", + "close_employee" => "נסגר על ידי", + "closed_amount_card" => "כרטיסי אשראי", + "closed_amount_cash" => "מזומנים בסגירה", + "closed_amount_check" => "המחאות", + "closed_amount_due" => "פירעון עתידי", + "closed_amount_giftcard" => "", + "closed_amount_total" => "סהכ", + "closed_date" => "תאריך סגירה", + "confirm_delete" => "האם אתה בטוח שברצונך למחוק את דוח סגירת הקופה שנבחרה?", + "confirm_restore" => "האם אתה בטוח שברצונך לשחזר את דוח סגירת קופה שנבחרו?", + "confirm_submit" => "", + "date_number" => "התאריך חייב להיות מספר", + "date_required" => "התאריך הינו שדה חובה", + "description" => "תיאור", + "enable_expected" => "", + "error_adding_updating" => "שגיאה בהוספה / עדכון של Cashup (דוח קופה)", + "giftcard" => "", + "id" => "מספר זיהוי", + "info" => "תיאור Cashups (דוח קופה)", + "info_employee" => "", + "is_deleted" => "נמחק", + "new" => "דוח קופה חדש", + "no_cashups_to_display" => "אין דוחות קופה להצגה", + "none_selected" => "לא בחרת דוח\ות קופה", + "note" => "הערות", + "one_or_multiple" => "דוח קופה\ות", + "open_amount_cash" => "מזומן בפתיחה", + "open_date" => "תאריך פתיחה", + "open_employee" => "נפתח על ידי", + "opened_date" => "תאריך פתיחה", + "successful_adding" => "דוח קופה נוסף בהצלחה", + "successful_deleted" => "דוח קופה נמחק בהצלחה", + "successful_updating" => "דוח קופה עודכן בהצלחה", + "total" => "סהכ", + "transfer_amount_cash" => "כניסה\יציאת מזומן", + "transfer_amount_cash_minus" => "", + "update" => "עדכן דוח קופה", + "warning" => "", ]; diff --git a/app/Language/he/Common.php b/app/Language/he/Common.php index b655a38d1..0fc65a298 100644 --- a/app/Language/he/Common.php +++ b/app/Language/he/Common.php @@ -1,88 +1,88 @@ "כתובת 1", - "address_2" => "כתובת 2", - "admin" => "", - "city" => "עיר", - "clerk" => "", - "close" => "סגור", - "color" => "", - "comments" => "הערות", - "common" => "משותף", - "confirm_search" => "בחרת שורה אחת או יותר, הן לא ייבחרו עוד לאחר החיפוש שלך. האם אתה בטוח שברצונך לשלוח חיפוש זה?", - "copyrights" => "© 2010 - {0}", - "correct_errors" => "תקן שגיאות שזוהו לפני שמירה", - "country" => "ארץ", - "dashboard" => "", - "date" => "תאריך", - "delete" => "מחיקה", - "det" => "פרטים", - "download_import_template" => "הורד תבנית אקסל לייבוא (CSV)", - "edit" => "ערוך", - "email" => "אימייל", - "email_invalid_format" => "כתובת האימייל אינה בפורמט הנכון.", - "export_csv" => "ייצוא לאקסל", - "export_csv_no" => "לא", - "export_csv_yes" => "כן", - "fields_required_message" => "שדות באדום הינם חובה", - "fields_required_message_unique" => "", - "first_name" => "שם פרטי", - "first_name_required" => "שם פרטי הינו שדה חובה.", - "first_page" => "ראשון", - "gender" => "מין", - "gender_female" => "נקבה", - "gender_male" => "זכר", - "gender_undefined" => "", - "icon" => "", - "id" => "מספר זיהוי", - "import" => "ייבוא", - "import_change_file" => "שינוי", - "import_csv" => "ייבוא אקסל", - "import_full_path" => "הנתיב המלא לקובץ האקסל הינו חובה", - "import_remove_file" => "הסר", - "import_select_file" => "בחר קובץ", - "inv" => "מלאי", - "last_name" => "שם משפחה", - "last_name_required" => "שם משפחה הוא שדה חובה.", - "last_page" => "אחרון", - "learn_about_project" => "כדי ללמוד את המידע העדכני ביותר על הפרויקט.", - "list_of" => "רשימה של", - "logo" => "", - "logo_mark" => "", - "logout" => "התנתק", - "manager" => "", - "migration_needed" => "העברת נתונים ל-{0} תתחיל לאחר הכניסה למערכת.", - "new" => "חדש", - "no" => "", - "no_persons_to_display" => "אין אנשים להצגה.", - "none_selected_text" => "[בחר]", - "or" => "או", - "people" => "", - "phone_number" => "מספר טלפון", - "phone_number_required" => "", - "please_visit_my" => "בקר בכתובת", - "position" => "", - "powered_by" => "מונע ע'י", - "price" => "מחיר", - "print" => "הדפס", - "remove" => "הסר", - "required" => "נדרש", - "restore" => "שחזור", - "return_policy" => "מדיניות החזרה", - "search" => "חפש", - "search_options" => "אפשרויות חיפוש", - "searched_for" => "חיפוש עבור", - "software_short" => "", - "software_title" => "", - "state" => "מדינה", - "submit" => "שלח", - "total_spent" => "ההוצאה הכוללת", - "unknown" => "לא ידוע", - "view_recent_sales" => "הצג מכירות אחרונות", - "website" => "אתר", - "welcome" => "ברוך הבא", - "welcome_message" => "ברוכים הבאים אל OSPOS, לחץ על מודול למטה כדי להתחיל.", - "yes" => "", - "you_are_using_ospos" => "אתה משתמש בגירסת קוד פתוח של נקודת מכירה", - "zip" => "מיקוד", + "address_1" => "כתובת 1", + "address_2" => "כתובת 2", + "admin" => "", + "city" => "עיר", + "clerk" => "", + "close" => "סגור", + "color" => "", + "comments" => "הערות", + "common" => "משותף", + "confirm_search" => "בחרת שורה אחת או יותר, הן לא ייבחרו עוד לאחר החיפוש שלך. האם אתה בטוח שברצונך לשלוח חיפוש זה?", + "copyrights" => "© 2010 - {0}", + "correct_errors" => "תקן שגיאות שזוהו לפני שמירה", + "country" => "ארץ", + "dashboard" => "", + "date" => "תאריך", + "delete" => "מחיקה", + "det" => "פרטים", + "download_import_template" => "הורד תבנית אקסל לייבוא (CSV)", + "edit" => "ערוך", + "email" => "אימייל", + "email_invalid_format" => "כתובת האימייל אינה בפורמט הנכון.", + "export_csv" => "ייצוא לאקסל", + "export_csv_no" => "לא", + "export_csv_yes" => "כן", + "fields_required_message" => "שדות באדום הינם חובה", + "fields_required_message_unique" => "", + "first_name" => "שם פרטי", + "first_name_required" => "שם פרטי הינו שדה חובה.", + "first_page" => "ראשון", + "gender" => "מין", + "gender_female" => "נקבה", + "gender_male" => "זכר", + "gender_undefined" => "", + "icon" => "", + "id" => "מספר זיהוי", + "import" => "ייבוא", + "import_change_file" => "שינוי", + "import_csv" => "ייבוא אקסל", + "import_full_path" => "הנתיב המלא לקובץ האקסל הינו חובה", + "import_remove_file" => "הסר", + "import_select_file" => "בחר קובץ", + "inv" => "מלאי", + "last_name" => "שם משפחה", + "last_name_required" => "שם משפחה הוא שדה חובה.", + "last_page" => "אחרון", + "learn_about_project" => "כדי ללמוד את המידע העדכני ביותר על הפרויקט.", + "list_of" => "רשימה של", + "logo" => "", + "logo_mark" => "", + "logout" => "התנתק", + "manager" => "", + "migration_needed" => "העברת נתונים ל-{0} תתחיל לאחר הכניסה למערכת.", + "new" => "חדש", + "no" => "", + "no_persons_to_display" => "אין אנשים להצגה.", + "none_selected_text" => "[בחר]", + "or" => "או", + "people" => "", + "phone_number" => "מספר טלפון", + "phone_number_required" => "", + "please_visit_my" => "בקר בכתובת", + "position" => "", + "powered_by" => "מונע ע'י", + "price" => "מחיר", + "print" => "הדפס", + "remove" => "הסר", + "required" => "נדרש", + "restore" => "שחזור", + "return_policy" => "מדיניות החזרה", + "search" => "חפש", + "search_options" => "אפשרויות חיפוש", + "searched_for" => "חיפוש עבור", + "software_short" => "", + "software_title" => "", + "state" => "מדינה", + "submit" => "שלח", + "total_spent" => "ההוצאה הכוללת", + "unknown" => "לא ידוע", + "view_recent_sales" => "הצג מכירות אחרונות", + "website" => "אתר", + "welcome" => "ברוך הבא", + "welcome_message" => "ברוכים הבאים אל OSPOS, לחץ על מודול למטה כדי להתחיל.", + "yes" => "", + "you_are_using_ospos" => "אתה משתמש בגירסת קוד פתוח של נקודת מכירה", + "zip" => "מיקוד", ]; diff --git a/app/Language/he/Config.php b/app/Language/he/Config.php index f03efa7cc..30748b179 100644 --- a/app/Language/he/Config.php +++ b/app/Language/he/Config.php @@ -1,330 +1,330 @@ "כתובת חברה", - "address_required" => "כתובת החברה הינה שדה חובה.", - "all_set" => "All file permissions are set correctly!", - "allow_duplicate_barcodes" => "אפשר ברקודים כפולים", - "apostrophe" => "גרש", - "backup_button" => "גיבוי", - "backup_database" => "מסד נתונים לגיבוי", - "barcode" => "ברקוד", - "barcode_company" => "שם חברה", - "barcode_configuration" => "הגדרות ברקוד", - "barcode_content" => "תוכן ברקוד", - "barcode_first_row" => "שורה 1", - "barcode_font" => "פונט", - "barcode_formats" => "תבניות קלט", - "barcode_generate_if_empty" => "צור אם ריק.", - "barcode_height" => "גובה (פיקסלים)", - "barcode_id" => "מזהה / שם פריט", - "barcode_info" => "מידע על הדגרות ברקוד", - "barcode_layout" => "פריסת ברקוד", - "barcode_name" => "שם", - "barcode_number" => "ברקוד", - "barcode_number_in_row" => "מספר בשורה", - "barcode_page_cellspacing" => "הצגת מרחבי עמוד.", - "barcode_page_width" => "הצגת רוחב דף", - "barcode_price" => "מחיר", - "barcode_second_row" => "שורה 2", - "barcode_third_row" => "שורה 3", - "barcode_tooltip" => "אזהרה: תכונה זו עלולה לגרום לייבוא או יצירת פריטים כפולים. אל תשתמש אם אתה לא רוצה ברקודים כפולים.", - "barcode_type" => "סוג ברקוד", - "barcode_width" => "רוחב (פיקסלים)", - "bottom" => "למטה", - "cash_button" => "", - "cash_button_1" => "", - "cash_button_2" => "", - "cash_button_3" => "", - "cash_button_4" => "", - "cash_button_5" => "", - "cash_button_6" => "", - "cash_decimals" => "עשרוני מזומנים", - "cash_decimals_tooltip" => "אם עשרוני מזומנים ועשרוני מטבעות זהים אז לא יתקיים עיגול מזומנים.", - "cash_rounding" => "עיגול מזומנים", - "category_dropdown" => "", - "center" => "מרכז", - "change_apperance_tooltip" => "", - "comma" => "פסיק", - "company" => "שם חברה", - "company_avatar" => "", - "company_change_image" => "שנה תמונה", - "company_logo" => "לוגו חברה", - "company_remove_image" => "הסר תמונה", - "company_required" => "שם החברה הינו שדה חובה", - "company_select_image" => "בחר תמונה", - "company_website_url" => "אתר החברה אינו כתובת אתר חוקית (http://...).", - "country_codes" => "קודי מדינה", - "country_codes_tooltip" => "רשימה מופרדת בפסיקים של קודי מדינות עבור בדיקת כתובת של nominatim.", - "currency_code" => "קוד מטבע", - "currency_decimals" => "מטבע עשרוני", - "currency_symbol" => "סמל מטבע", - "current_employee_only" => "", - "customer_reward" => "תגמול", - "customer_reward_duplicate" => "התגמול חייב להיות ייחודי.", - "customer_reward_enable" => "אפשר תגמולים ללקוחות", - "customer_reward_invalid_chars" => "התגמול אינו יכול להכיל '_'", - "customer_reward_required" => "התגמול הינו שדה חובה", - "customer_sales_tax_support" => "", - "date_or_time_format" => "מסנן תאריך ושעה", - "datetimeformat" => "פורמט תאריך ושעה", - "decimal_point" => "נקודה עשרונית", - "default_barcode_font_size_number" => "ברירת מחדל של גודל גופן הברקוד חייב להיות מספר.", - "default_barcode_font_size_required" => "שדה גודל גופן הברקוד הינו שדה חובה.", - "default_barcode_height_number" => "גובה ברירת המחדל של הברקוד חייב להיות מספר.", - "default_barcode_height_required" => "גובה ברירת המחדל של הברקוד הינו שדה חובה.", - "default_barcode_num_in_row_number" => "ברירת המחדל של מספר הברקוד בשורה חייב להיות מספר.", - "default_barcode_num_in_row_required" => "ברירת המחדל של מספר הברקוד בשורה הינו שדה חובה.", - "default_barcode_page_cellspacing_number" => "ברירת המחדל של שדה מרווח עימוד הברקוד חייב להיות מספר.", - "default_barcode_page_cellspacing_required" => "ברירת המחדל של שדה מרווח עימוד הברקוד הינו שדה חובה.", - "default_barcode_page_width_number" => "ברירת המחדל של שדה רוחב עמוד הברקוד חייב להיות מספר.", - "default_barcode_page_width_required" => "ברירת המחדל של שדה רוחב עמוד הברקוד הינו שדה חובה.", - "default_barcode_width_number" => "ברירת המחדל של שדה רוחב הברקוד חייב להיות מספר.", - "default_barcode_width_required" => "ברירת המחדל של שדה רוחב הברקוד הינו שדה חובה.", - "default_item_columns" => "ברירת מחדל של עמודות לפריטים גלויים", - "default_origin_tax_code" => "קוד ברירת מחדל למס במקור", - "default_receivings_discount" => "הנחה ברירת מחדל להחזרות ספקים", - "default_receivings_discount_number" => "הנחה ברירת מחדל להחזרות ספקים חייב להיות מספר.", - "default_receivings_discount_required" => "הנחה ברירת מחדל להחזרות ספקים הינו שדה חובה.", - "default_sales_discount" => "הנחה ברירת מחדל למכירות", - "default_sales_discount_number" => "הנחה ברירת מחדל למכירות חייב להיות מספר.", - "default_sales_discount_required" => "הנחה ברירת מחדל למכירות הינו שדה חובה.", - "default_tax_category" => "קטגוריה מס ברירת מחדל", - "default_tax_code" => "קוד מס ברירת מחדל", - "default_tax_jurisdiction" => "תחום שיפוט מס ברירת מחדל", - "default_tax_name_number" => "שם מס ברירת המחדל חייב להיות מחרוזת.", - "default_tax_name_required" => "שם מס ברירת המחדל הינו שדה חובה.", - "default_tax_rate" => "שיעור מס ברירת מחדל %", - "default_tax_rate_1" => "מדרגת מס 1", - "default_tax_rate_2" => "מדרגת מס 2", - "default_tax_rate_3" => "", - "default_tax_rate_number" => "שיעור מס ברירת מחדל חייב להיות מספר.", - "default_tax_rate_required" => "שיעור מס ברירת מחדל הינו שדה חובה.", - "derive_sale_quantity" => "אפשר כמות נגזרת של מכירה", - "derive_sale_quantity_tooltip" => "אם מסומן, סוג פריט חדש יספק פריטים שהוזמנו בכמות מורחבת", - "dinner_table" => "טבלה", - "dinner_table_duplicate" => "הטבלה חייבת להיות ייחודית.", - "dinner_table_enable" => "אפשר טבלאות אוכל", - "dinner_table_invalid_chars" => "שם הטבלה אינו יכול להכיל את '_'.", - "dinner_table_required" => "שם הטבלה הינו שדה חובה.", - "dot" => "נקודה", - "email" => "אימייל", - "email_configuration" => "הגדרות אימייל", - "email_mailpath" => "נתיב לשליחת מייל", - "email_protocol" => "פרוטוקול", - "email_receipt_check_behaviour" => "תיבת סימון של קבלת אימייל", - "email_receipt_check_behaviour_always" => "תמיד מסומן", - "email_receipt_check_behaviour_last" => "זכור את הבחירה האחרונה", - "email_receipt_check_behaviour_never" => "תמיד לא מסומן", - "email_smtp_crypto" => "הצפנת SMTP", - "email_smtp_host" => "שרת SMTP", - "email_smtp_pass" => "סיסמת SMTP", - "email_smtp_port" => "יציאת SMTP", - "email_smtp_timeout" => "זמן קצוב לתפוגה של SMTP", - "email_smtp_user" => "שם משתמש של SMTP", - "enable_avatar" => "", - "enable_avatar_tooltip" => "", - "enable_dropdown_tooltip" => "", - "enable_new_look" => "", - "enable_right_bar" => "", - "enable_right_bar_tooltip" => "", - "enforce_privacy" => "אכיפת פרטיות", - "enforce_privacy_tooltip" => "הגן על פרטיות הלקוחות ואכיפת ערבוב נתונים במקרה של מחיקת הנתונים שלהם", - "fax" => "פקס", - "file_perm" => "There are problems with file permissions please fix and reload this page.", - "financial_year" => "תחילת שנת הכספים", - "financial_year_apr" => "1 של אפריל", - "financial_year_aug" => "1 של אוגוסט", - "financial_year_dec" => "1 של דצמבר", - "financial_year_feb" => "1 של פברואר", - "financial_year_jan" => "1 של ינואר", - "financial_year_jul" => "1 של יולי", - "financial_year_jun" => "1 של יוני", - "financial_year_mar" => "1 של מרץ", - "financial_year_may" => "1 של מאי", - "financial_year_nov" => "1 של נובמבר", - "financial_year_oct" => "1 של אוקטובר", - "financial_year_sep" => "1 של ספטמבר", - "floating_labels" => "", - "gcaptcha_enable" => "דף התחברות reCAPTCHA", - "gcaptcha_secret_key" => "מפתח סודי של reCAPTCHA", - "gcaptcha_secret_key_required" => "מפתח סודי של reCAPTCHA הינו שדה חובה", - "gcaptcha_site_key" => "מפתח אתר reCAPTCHA", - "gcaptcha_site_key_required" => "מפתח אתר reCAPTCHA הינו שדה חובה", - "gcaptcha_tooltip" => "הגן על דף ההתחברות באמצעות Google reCAPTCHA, לחץ על האייקון של ממשק צמד מפתחות API.", - "general" => "כללי", - "general_configuration" => "הגדרות כלליות", - "giftcard_number" => "מספר כרטיס מתנה", - "giftcard_random" => "צור אקראי", - "giftcard_series" => "צור בסדרה", - "image_allowed_file_types" => "", - "image_max_height_tooltip" => "", - "image_max_size_tooltip" => "", - "image_max_width_tooltip" => "", - "image_restrictions" => "", - "include_hsn" => "כלול תמיכה בקודי HSN", - "info" => "מידע", - "info_configuration" => "אחסון מידע", - "input_groups" => "", - "integrations" => "אינטגרציה", - "integrations_configuration" => "שילובים של צד שלישי", - "invoice" => "חשבונית", - "invoice_configuration" => "הגדרות הדפסה של חשבוניות", - "invoice_default_comments" => "הערות ברירת מחדל של חשבוניות", - "invoice_email_message" => "תבנית אימייל של חשבונית", - "invoice_enable" => "הפעל חשבוניות", - "invoice_printer" => "מדפסת חשבונית", - "invoice_type" => "סוג חשבונית", - "is_readable" => "", - "is_writable" => "is writable, but the permissions are higher than 750.", - "item_markup" => "", - "jsprintsetup_required" => "אזהרה: פונקציונליות זו תפעל רק אם התקנת את התוסף FireFox jsPrintSetup ,לשמור בכל זאת?", - "language" => "שפה", - "last_used_invoice_number" => "מספר חשבונית אחרונה שהייתה בשימוש", - "last_used_quote_number" => "מספר הצעת מחיר אחרונה שהייתה בשימוש", - "last_used_work_order_number" => "מספר W/O אחרון שהיה בשימוש", - "left" => "שמאל", - "license" => "רישיון", - "license_configuration" => "הצהרת רישיון", - "line_sequence" => "סדר פעולות", - "lines_per_page" => "שורות בעמוד", - "lines_per_page_number" => "שורות בעמוד חייב להיות מספר.", - "lines_per_page_required" => "שורות בעמוד הינו שדה חובה.", - "locale" => "התאמת שפה", - "locale_configuration" => "הגדרות התאמת שפה", - "locale_info" => "מידע על הגדרות התאמת שפה", - "location" => "מלאי", - "location_configuration" => "מיקום המלאי", - "location_info" => "מידע על הגדרות מיקום", - "login_form" => "", - "logout" => "האם ברצונך לבצע גיבוי לפני היציאה? לחץ על [OK] כדי לגבות או [ביטול] כדי להתנתק.", - "mailchimp" => "Mailchimp (פלטפורמה לשליחת מיילים)", - "mailchimp_api_key" => "מפתח API של Mailchimp", - "mailchimp_configuration" => "הגדרות Mailchimp", - "mailchimp_key_successfully" => "מפתח ה- API תקף.", - "mailchimp_key_unsuccessfully" => "מפתח ה- API לא תקף.", - "mailchimp_lists" => "רשימת Mailchimp", - "mailchimp_tooltip" => "לחץ על האייקון של מפתח ממשק API.", - "message" => "הודעה", - "message_configuration" => "הגדרות הודעה", - "msg_msg" => "הודעת טקסט שמורה", - "msg_msg_placeholder" => "אם ברצונך להשתמש בתבנית הודעה שמור את ההודעה שלך כאן, אחרת השאר את התיבה ריקה.", - "msg_pwd" => "סיסמה של SMS-API", - "msg_pwd_required" => "סיסמה של SMS-API הינו שדה חובה", - "msg_src" => "מזהה שולח SMS-API", - "msg_src_required" => "מזהה שולח SMS-API הינו שדה חובה", - "msg_uid" => "שם משתמש של SMS-API", - "msg_uid_required" => "שם משתמש של SMS-API הינו שדה חובה", - "multi_pack_enabled" => "חבילות מרובות לכל פריט", - "no_risk" => "No security/vulnerability risks.", - "none" => "לא קיים", - "notify_alignment" => "מיקום חלון קופץ", - "number_format" => "פורמט מספר", - "number_locale" => "הגדרות שפה", - "number_locale_invalid" => "האזור שהוזן אינו חוקי. בדוק את הקישור שבסרגל הכלים כדי לאתר אזור חוקי.", - "number_locale_required" => "מספר אזור הינו שדה חובה.", - "number_locale_tooltip" => "מצא אזור תואם באמצעות קישור זה.", - "os_timezone" => "", - "ospos_info" => "OSPOS פרטי התקנה", - "payment_options_order" => "סידור אפשרויות תשלום", - "perm_risk" => "Permissions higher than 750 leaves this software at risk.", - "phone" => "טלפון חברה", - "phone_required" => "טלפון חברה הינו שדה חובה.", - "print_bottom_margin" => "כפתור שוליים", - "print_bottom_margin_number" => "שדה כפתור שוליים חייב להיות מספר.", - "print_bottom_margin_required" => "כפתור שוליים הינו שדה חובה.", - "print_delay_autoreturn" => "חזרה אוטומטית לעיכוב מכירה", - "print_delay_autoreturn_number" => "חזרה אוטומטית לעיכוב מכירה הינו שדה חובה.", - "print_delay_autoreturn_required" => "שדה חזרה אוטומטית לעיכוב מכירה חייב להיות מספר.", - "print_footer" => "הדפס כותרת תחתונה", - "print_header" => "הדפס כותרת עליונה", - "print_left_margin" => "שוליים צד שמאל", - "print_left_margin_number" => "שדה שוליים צד שמאל חייב להיות מספר.", - "print_left_margin_required" => "שוליים צד שמאל הינו שדה חובה.", - "print_receipt_check_behaviour" => "הדפס קבלה", - "print_receipt_check_behaviour_always" => "תמיד מסומן", - "print_receipt_check_behaviour_last" => "זכור את הבחירה האחרונה", - "print_receipt_check_behaviour_never" => "תמיד לא מסומן", - "print_right_margin" => "שוליים צד ימין", - "print_right_margin_number" => "שדה שוליים צד ימין חייב להיות מספר.", - "print_right_margin_required" => "שוליים צד ימין הינו שדה חובה.", - "print_silently" => "הצג את תיבת הדו-שיח 'הדפסה'", - "print_top_margin" => "שוליים עליונים", - "print_top_margin_number" => "שדה שוליים עליונים חייב להיות מספר.", - "print_top_margin_required" => "שוליים עליונים הינו שדה חובה.", - "quantity_decimals" => "כמות עשרונית", - "quick_cash_enable" => "", - "quote_default_comments" => "הערת ברירת מחדל להצעת מחיר", - "receipt" => "קבלה", - "receipt_category" => "", - "receipt_configuration" => "הגדרות הדפסה קבלה", - "receipt_default" => "ברירת מחדל", - "receipt_font_size" => "גודל פונט", - "receipt_font_size_number" => "שדה גודל פונט חייב להיות מספר.", - "receipt_font_size_required" => "גודל פונט הינו שדה חובה.", - "receipt_info" => "מידע על הגדרות קבלה", - "receipt_printer" => "מדפסת כרטיסים", - "receipt_short" => "קצר", - "receipt_show_company_name" => "הצג שם חברה", - "receipt_show_description" => "הצג תיאור", - "receipt_show_serialnumber" => "הצג מספר סידורי", - "receipt_show_tax_ind" => "", - "receipt_show_taxes" => "הצג מסים", - "receipt_show_total_discount" => "הצג הנחה כוללת", - "receipt_template" => "תבנית קבלה", - "receiving_calculate_average_price" => "חישוב ממוצע למחיר (החזרותספקים)", - "recv_invoice_format" => "תבנית חשבונית החזרותספקים", - "register_mode_default" => "מצב רישום ברירת מחדל", - "report_an_issue" => "", - "return_policy_required" => "מדיניות ההחזרה היא שדה חובה.", - "reward" => "תגמול", - "reward_configuration" => "הגדרות תגמולים", - "right" => "ימין", - "sales_invoice_format" => "תבנית חשבונית מכירות", - "sales_quote_format" => "תבנית חשבונית הצעת מחיר", - "saved_successfully" => "ההגדרות נשמרו בהצלחה.", - "saved_unsuccessfully" => "שמירת ההגדרות נכשלה.", - "security_issue" => "Security Vulnerability Warning", - "server_notice" => "השתמש במידע הבא לדיווח על בעיות.", - "service_charge" => "", - "show_due_enable" => "", - "show_office_group" => "הצג את סמל המשרד", - "statistics" => "שלח סטטיסטיקה", - "statistics_tooltip" => "שלח סטטיסטיקות למפתחים למטרות פיתוח ושיפור התוכנה.", - "stock_location" => "מיקום המלאי", - "stock_location_duplicate" => "מיקום המלאי חייב להיות ייחודי.", - "stock_location_invalid_chars" => "מיקום המלאי אינו יכול להכיל '_'.", - "stock_location_required" => "מיקום המלאי הינו שדה חובה.", - "suggestions_fifth_column" => "", - "suggestions_first_column" => "עמודה 1", - "suggestions_fourth_column" => "", - "suggestions_layout" => "פריסת הצעות חיפוש", - "suggestions_second_column" => "עמודה 2", - "suggestions_third_column" => "עמודה 3", - "system_conf" => "Setup & Conf", - "system_info" => "מידע מערכת", - "table" => "טבלה", - "table_configuration" => "הגדרות טבלה", - "takings_printer" => "מדפסת קבלה", - "tax" => "מס", - "tax_category" => "קטגוריה מס", - "tax_category_duplicate" => "קטגוריית המס שהוזנה כבר קיימת.", - "tax_category_invalid_chars" => "קטגוריית המס שהוזנה אינה חוקית.", - "tax_category_required" => "קטגוריית המס הינה חובה.", - "tax_category_used" => "לא ניתן למחוק את קטגוריית המס מכיוון שהיא נמצאת בשימוש.", - "tax_configuration" => "הגדרות מס", - "tax_decimals" => "מס עשרוני", - "tax_id" => "מזהה לצורך מס", - "tax_included" => "כולל מס", - "theme" => "ערכת נושא", - "theme_preview" => "", - "thousands_separator" => "מפריד אלפים", - "timezone" => "אזור זמן", - "timezone_error" => "", - "top" => "חלק עליון", - "use_destination_based_tax" => "השתמש במס מבוסס יעד", - "user_timezone" => "", - "website" => "אתר", - "wholesale_markup" => "", - "work_order_enable" => "תמיכה בהזמנת עבודה", - "work_order_format" => "פורמט הזמנת עבודה", + "address" => "כתובת חברה", + "address_required" => "כתובת החברה הינה שדה חובה.", + "all_set" => "All file permissions are set correctly!", + "allow_duplicate_barcodes" => "אפשר ברקודים כפולים", + "apostrophe" => "גרש", + "backup_button" => "גיבוי", + "backup_database" => "מסד נתונים לגיבוי", + "barcode" => "ברקוד", + "barcode_company" => "שם חברה", + "barcode_configuration" => "הגדרות ברקוד", + "barcode_content" => "תוכן ברקוד", + "barcode_first_row" => "שורה 1", + "barcode_font" => "פונט", + "barcode_formats" => "תבניות קלט", + "barcode_generate_if_empty" => "צור אם ריק.", + "barcode_height" => "גובה (פיקסלים)", + "barcode_id" => "מזהה / שם פריט", + "barcode_info" => "מידע על הדגרות ברקוד", + "barcode_layout" => "פריסת ברקוד", + "barcode_name" => "שם", + "barcode_number" => "ברקוד", + "barcode_number_in_row" => "מספר בשורה", + "barcode_page_cellspacing" => "הצגת מרחבי עמוד.", + "barcode_page_width" => "הצגת רוחב דף", + "barcode_price" => "מחיר", + "barcode_second_row" => "שורה 2", + "barcode_third_row" => "שורה 3", + "barcode_tooltip" => "אזהרה: תכונה זו עלולה לגרום לייבוא או יצירת פריטים כפולים. אל תשתמש אם אתה לא רוצה ברקודים כפולים.", + "barcode_type" => "סוג ברקוד", + "barcode_width" => "רוחב (פיקסלים)", + "bottom" => "למטה", + "cash_button" => "", + "cash_button_1" => "", + "cash_button_2" => "", + "cash_button_3" => "", + "cash_button_4" => "", + "cash_button_5" => "", + "cash_button_6" => "", + "cash_decimals" => "עשרוני מזומנים", + "cash_decimals_tooltip" => "אם עשרוני מזומנים ועשרוני מטבעות זהים אז לא יתקיים עיגול מזומנים.", + "cash_rounding" => "עיגול מזומנים", + "category_dropdown" => "", + "center" => "מרכז", + "change_apperance_tooltip" => "", + "comma" => "פסיק", + "company" => "שם חברה", + "company_avatar" => "", + "company_change_image" => "שנה תמונה", + "company_logo" => "לוגו חברה", + "company_remove_image" => "הסר תמונה", + "company_required" => "שם החברה הינו שדה חובה", + "company_select_image" => "בחר תמונה", + "company_website_url" => "אתר החברה אינו כתובת אתר חוקית (http://...).", + "country_codes" => "קודי מדינה", + "country_codes_tooltip" => "רשימה מופרדת בפסיקים של קודי מדינות עבור בדיקת כתובת של nominatim.", + "currency_code" => "קוד מטבע", + "currency_decimals" => "מטבע עשרוני", + "currency_symbol" => "סמל מטבע", + "current_employee_only" => "", + "customer_reward" => "תגמול", + "customer_reward_duplicate" => "התגמול חייב להיות ייחודי.", + "customer_reward_enable" => "אפשר תגמולים ללקוחות", + "customer_reward_invalid_chars" => "התגמול אינו יכול להכיל '_'", + "customer_reward_required" => "התגמול הינו שדה חובה", + "customer_sales_tax_support" => "", + "date_or_time_format" => "מסנן תאריך ושעה", + "datetimeformat" => "פורמט תאריך ושעה", + "decimal_point" => "נקודה עשרונית", + "default_barcode_font_size_number" => "ברירת מחדל של גודל גופן הברקוד חייב להיות מספר.", + "default_barcode_font_size_required" => "שדה גודל גופן הברקוד הינו שדה חובה.", + "default_barcode_height_number" => "גובה ברירת המחדל של הברקוד חייב להיות מספר.", + "default_barcode_height_required" => "גובה ברירת המחדל של הברקוד הינו שדה חובה.", + "default_barcode_num_in_row_number" => "ברירת המחדל של מספר הברקוד בשורה חייב להיות מספר.", + "default_barcode_num_in_row_required" => "ברירת המחדל של מספר הברקוד בשורה הינו שדה חובה.", + "default_barcode_page_cellspacing_number" => "ברירת המחדל של שדה מרווח עימוד הברקוד חייב להיות מספר.", + "default_barcode_page_cellspacing_required" => "ברירת המחדל של שדה מרווח עימוד הברקוד הינו שדה חובה.", + "default_barcode_page_width_number" => "ברירת המחדל של שדה רוחב עמוד הברקוד חייב להיות מספר.", + "default_barcode_page_width_required" => "ברירת המחדל של שדה רוחב עמוד הברקוד הינו שדה חובה.", + "default_barcode_width_number" => "ברירת המחדל של שדה רוחב הברקוד חייב להיות מספר.", + "default_barcode_width_required" => "ברירת המחדל של שדה רוחב הברקוד הינו שדה חובה.", + "default_item_columns" => "ברירת מחדל של עמודות לפריטים גלויים", + "default_origin_tax_code" => "קוד ברירת מחדל למס במקור", + "default_receivings_discount" => "הנחה ברירת מחדל להחזרות ספקים", + "default_receivings_discount_number" => "הנחה ברירת מחדל להחזרות ספקים חייב להיות מספר.", + "default_receivings_discount_required" => "הנחה ברירת מחדל להחזרות ספקים הינו שדה חובה.", + "default_sales_discount" => "הנחה ברירת מחדל למכירות", + "default_sales_discount_number" => "הנחה ברירת מחדל למכירות חייב להיות מספר.", + "default_sales_discount_required" => "הנחה ברירת מחדל למכירות הינו שדה חובה.", + "default_tax_category" => "קטגוריה מס ברירת מחדל", + "default_tax_code" => "קוד מס ברירת מחדל", + "default_tax_jurisdiction" => "תחום שיפוט מס ברירת מחדל", + "default_tax_name_number" => "שם מס ברירת המחדל חייב להיות מחרוזת.", + "default_tax_name_required" => "שם מס ברירת המחדל הינו שדה חובה.", + "default_tax_rate" => "שיעור מס ברירת מחדל %", + "default_tax_rate_1" => "מדרגת מס 1", + "default_tax_rate_2" => "מדרגת מס 2", + "default_tax_rate_3" => "", + "default_tax_rate_number" => "שיעור מס ברירת מחדל חייב להיות מספר.", + "default_tax_rate_required" => "שיעור מס ברירת מחדל הינו שדה חובה.", + "derive_sale_quantity" => "אפשר כמות נגזרת של מכירה", + "derive_sale_quantity_tooltip" => "אם מסומן, סוג פריט חדש יספק פריטים שהוזמנו בכמות מורחבת", + "dinner_table" => "טבלה", + "dinner_table_duplicate" => "הטבלה חייבת להיות ייחודית.", + "dinner_table_enable" => "אפשר טבלאות אוכל", + "dinner_table_invalid_chars" => "שם הטבלה אינו יכול להכיל את '_'.", + "dinner_table_required" => "שם הטבלה הינו שדה חובה.", + "dot" => "נקודה", + "email" => "אימייל", + "email_configuration" => "הגדרות אימייל", + "email_mailpath" => "נתיב לשליחת מייל", + "email_protocol" => "פרוטוקול", + "email_receipt_check_behaviour" => "תיבת סימון של קבלת אימייל", + "email_receipt_check_behaviour_always" => "תמיד מסומן", + "email_receipt_check_behaviour_last" => "זכור את הבחירה האחרונה", + "email_receipt_check_behaviour_never" => "תמיד לא מסומן", + "email_smtp_crypto" => "הצפנת SMTP", + "email_smtp_host" => "שרת SMTP", + "email_smtp_pass" => "סיסמת SMTP", + "email_smtp_port" => "יציאת SMTP", + "email_smtp_timeout" => "זמן קצוב לתפוגה של SMTP", + "email_smtp_user" => "שם משתמש של SMTP", + "enable_avatar" => "", + "enable_avatar_tooltip" => "", + "enable_dropdown_tooltip" => "", + "enable_new_look" => "", + "enable_right_bar" => "", + "enable_right_bar_tooltip" => "", + "enforce_privacy" => "אכיפת פרטיות", + "enforce_privacy_tooltip" => "הגן על פרטיות הלקוחות ואכיפת ערבוב נתונים במקרה של מחיקת הנתונים שלהם", + "fax" => "פקס", + "file_perm" => "There are problems with file permissions please fix and reload this page.", + "financial_year" => "תחילת שנת הכספים", + "financial_year_apr" => "1 של אפריל", + "financial_year_aug" => "1 של אוגוסט", + "financial_year_dec" => "1 של דצמבר", + "financial_year_feb" => "1 של פברואר", + "financial_year_jan" => "1 של ינואר", + "financial_year_jul" => "1 של יולי", + "financial_year_jun" => "1 של יוני", + "financial_year_mar" => "1 של מרץ", + "financial_year_may" => "1 של מאי", + "financial_year_nov" => "1 של נובמבר", + "financial_year_oct" => "1 של אוקטובר", + "financial_year_sep" => "1 של ספטמבר", + "floating_labels" => "", + "gcaptcha_enable" => "דף התחברות reCAPTCHA", + "gcaptcha_secret_key" => "מפתח סודי של reCAPTCHA", + "gcaptcha_secret_key_required" => "מפתח סודי של reCAPTCHA הינו שדה חובה", + "gcaptcha_site_key" => "מפתח אתר reCAPTCHA", + "gcaptcha_site_key_required" => "מפתח אתר reCAPTCHA הינו שדה חובה", + "gcaptcha_tooltip" => "הגן על דף ההתחברות באמצעות Google reCAPTCHA, לחץ על האייקון של ממשק צמד מפתחות API.", + "general" => "כללי", + "general_configuration" => "הגדרות כלליות", + "giftcard_number" => "מספר כרטיס מתנה", + "giftcard_random" => "צור אקראי", + "giftcard_series" => "צור בסדרה", + "image_allowed_file_types" => "", + "image_max_height_tooltip" => "", + "image_max_size_tooltip" => "", + "image_max_width_tooltip" => "", + "image_restrictions" => "", + "include_hsn" => "כלול תמיכה בקודי HSN", + "info" => "מידע", + "info_configuration" => "אחסון מידע", + "input_groups" => "", + "integrations" => "אינטגרציה", + "integrations_configuration" => "שילובים של צד שלישי", + "invoice" => "חשבונית", + "invoice_configuration" => "הגדרות הדפסה של חשבוניות", + "invoice_default_comments" => "הערות ברירת מחדל של חשבוניות", + "invoice_email_message" => "תבנית אימייל של חשבונית", + "invoice_enable" => "הפעל חשבוניות", + "invoice_printer" => "מדפסת חשבונית", + "invoice_type" => "סוג חשבונית", + "is_readable" => "", + "is_writable" => "is writable, but the permissions are higher than 750.", + "item_markup" => "", + "jsprintsetup_required" => "אזהרה: פונקציונליות זו תפעל רק אם התקנת את התוסף FireFox jsPrintSetup ,לשמור בכל זאת?", + "language" => "שפה", + "last_used_invoice_number" => "מספר חשבונית אחרונה שהייתה בשימוש", + "last_used_quote_number" => "מספר הצעת מחיר אחרונה שהייתה בשימוש", + "last_used_work_order_number" => "מספר W/O אחרון שהיה בשימוש", + "left" => "שמאל", + "license" => "רישיון", + "license_configuration" => "הצהרת רישיון", + "line_sequence" => "סדר פעולות", + "lines_per_page" => "שורות בעמוד", + "lines_per_page_number" => "שורות בעמוד חייב להיות מספר.", + "lines_per_page_required" => "שורות בעמוד הינו שדה חובה.", + "locale" => "התאמת שפה", + "locale_configuration" => "הגדרות התאמת שפה", + "locale_info" => "מידע על הגדרות התאמת שפה", + "location" => "מלאי", + "location_configuration" => "מיקום המלאי", + "location_info" => "מידע על הגדרות מיקום", + "login_form" => "", + "logout" => "האם ברצונך לבצע גיבוי לפני היציאה? לחץ על [OK] כדי לגבות או [ביטול] כדי להתנתק.", + "mailchimp" => "Mailchimp (פלטפורמה לשליחת מיילים)", + "mailchimp_api_key" => "מפתח API של Mailchimp", + "mailchimp_configuration" => "הגדרות Mailchimp", + "mailchimp_key_successfully" => "מפתח ה- API תקף.", + "mailchimp_key_unsuccessfully" => "מפתח ה- API לא תקף.", + "mailchimp_lists" => "רשימת Mailchimp", + "mailchimp_tooltip" => "לחץ על האייקון של מפתח ממשק API.", + "message" => "הודעה", + "message_configuration" => "הגדרות הודעה", + "msg_msg" => "הודעת טקסט שמורה", + "msg_msg_placeholder" => "אם ברצונך להשתמש בתבנית הודעה שמור את ההודעה שלך כאן, אחרת השאר את התיבה ריקה.", + "msg_pwd" => "סיסמה של SMS-API", + "msg_pwd_required" => "סיסמה של SMS-API הינו שדה חובה", + "msg_src" => "מזהה שולח SMS-API", + "msg_src_required" => "מזהה שולח SMS-API הינו שדה חובה", + "msg_uid" => "שם משתמש של SMS-API", + "msg_uid_required" => "שם משתמש של SMS-API הינו שדה חובה", + "multi_pack_enabled" => "חבילות מרובות לכל פריט", + "no_risk" => "No security/vulnerability risks.", + "none" => "לא קיים", + "notify_alignment" => "מיקום חלון קופץ", + "number_format" => "פורמט מספר", + "number_locale" => "הגדרות שפה", + "number_locale_invalid" => "האזור שהוזן אינו חוקי. בדוק את הקישור שבסרגל הכלים כדי לאתר אזור חוקי.", + "number_locale_required" => "מספר אזור הינו שדה חובה.", + "number_locale_tooltip" => "מצא אזור תואם באמצעות קישור זה.", + "os_timezone" => "", + "ospos_info" => "OSPOS פרטי התקנה", + "payment_options_order" => "סידור אפשרויות תשלום", + "perm_risk" => "Permissions higher than 750 leaves this software at risk.", + "phone" => "טלפון חברה", + "phone_required" => "טלפון חברה הינו שדה חובה.", + "print_bottom_margin" => "כפתור שוליים", + "print_bottom_margin_number" => "שדה כפתור שוליים חייב להיות מספר.", + "print_bottom_margin_required" => "כפתור שוליים הינו שדה חובה.", + "print_delay_autoreturn" => "חזרה אוטומטית לעיכוב מכירה", + "print_delay_autoreturn_number" => "חזרה אוטומטית לעיכוב מכירה הינו שדה חובה.", + "print_delay_autoreturn_required" => "שדה חזרה אוטומטית לעיכוב מכירה חייב להיות מספר.", + "print_footer" => "הדפס כותרת תחתונה", + "print_header" => "הדפס כותרת עליונה", + "print_left_margin" => "שוליים צד שמאל", + "print_left_margin_number" => "שדה שוליים צד שמאל חייב להיות מספר.", + "print_left_margin_required" => "שוליים צד שמאל הינו שדה חובה.", + "print_receipt_check_behaviour" => "הדפס קבלה", + "print_receipt_check_behaviour_always" => "תמיד מסומן", + "print_receipt_check_behaviour_last" => "זכור את הבחירה האחרונה", + "print_receipt_check_behaviour_never" => "תמיד לא מסומן", + "print_right_margin" => "שוליים צד ימין", + "print_right_margin_number" => "שדה שוליים צד ימין חייב להיות מספר.", + "print_right_margin_required" => "שוליים צד ימין הינו שדה חובה.", + "print_silently" => "הצג את תיבת הדו-שיח 'הדפסה'", + "print_top_margin" => "שוליים עליונים", + "print_top_margin_number" => "שדה שוליים עליונים חייב להיות מספר.", + "print_top_margin_required" => "שוליים עליונים הינו שדה חובה.", + "quantity_decimals" => "כמות עשרונית", + "quick_cash_enable" => "", + "quote_default_comments" => "הערת ברירת מחדל להצעת מחיר", + "receipt" => "קבלה", + "receipt_category" => "", + "receipt_configuration" => "הגדרות הדפסה קבלה", + "receipt_default" => "ברירת מחדל", + "receipt_font_size" => "גודל פונט", + "receipt_font_size_number" => "שדה גודל פונט חייב להיות מספר.", + "receipt_font_size_required" => "גודל פונט הינו שדה חובה.", + "receipt_info" => "מידע על הגדרות קבלה", + "receipt_printer" => "מדפסת כרטיסים", + "receipt_short" => "קצר", + "receipt_show_company_name" => "הצג שם חברה", + "receipt_show_description" => "הצג תיאור", + "receipt_show_serialnumber" => "הצג מספר סידורי", + "receipt_show_tax_ind" => "", + "receipt_show_taxes" => "הצג מסים", + "receipt_show_total_discount" => "הצג הנחה כוללת", + "receipt_template" => "תבנית קבלה", + "receiving_calculate_average_price" => "חישוב ממוצע למחיר (החזרותספקים)", + "recv_invoice_format" => "תבנית חשבונית החזרותספקים", + "register_mode_default" => "מצב רישום ברירת מחדל", + "report_an_issue" => "", + "return_policy_required" => "מדיניות ההחזרה היא שדה חובה.", + "reward" => "תגמול", + "reward_configuration" => "הגדרות תגמולים", + "right" => "ימין", + "sales_invoice_format" => "תבנית חשבונית מכירות", + "sales_quote_format" => "תבנית חשבונית הצעת מחיר", + "saved_successfully" => "ההגדרות נשמרו בהצלחה.", + "saved_unsuccessfully" => "שמירת ההגדרות נכשלה.", + "security_issue" => "Security Vulnerability Warning", + "server_notice" => "השתמש במידע הבא לדיווח על בעיות.", + "service_charge" => "", + "show_due_enable" => "", + "show_office_group" => "הצג את סמל המשרד", + "statistics" => "שלח סטטיסטיקה", + "statistics_tooltip" => "שלח סטטיסטיקות למפתחים למטרות פיתוח ושיפור התוכנה.", + "stock_location" => "מיקום המלאי", + "stock_location_duplicate" => "מיקום המלאי חייב להיות ייחודי.", + "stock_location_invalid_chars" => "מיקום המלאי אינו יכול להכיל '_'.", + "stock_location_required" => "מיקום המלאי הינו שדה חובה.", + "suggestions_fifth_column" => "", + "suggestions_first_column" => "עמודה 1", + "suggestions_fourth_column" => "", + "suggestions_layout" => "פריסת הצעות חיפוש", + "suggestions_second_column" => "עמודה 2", + "suggestions_third_column" => "עמודה 3", + "system_conf" => "Setup & Conf", + "system_info" => "מידע מערכת", + "table" => "טבלה", + "table_configuration" => "הגדרות טבלה", + "takings_printer" => "מדפסת קבלה", + "tax" => "מס", + "tax_category" => "קטגוריה מס", + "tax_category_duplicate" => "קטגוריית המס שהוזנה כבר קיימת.", + "tax_category_invalid_chars" => "קטגוריית המס שהוזנה אינה חוקית.", + "tax_category_required" => "קטגוריית המס הינה חובה.", + "tax_category_used" => "לא ניתן למחוק את קטגוריית המס מכיוון שהיא נמצאת בשימוש.", + "tax_configuration" => "הגדרות מס", + "tax_decimals" => "מס עשרוני", + "tax_id" => "מזהה לצורך מס", + "tax_included" => "כולל מס", + "theme" => "ערכת נושא", + "theme_preview" => "", + "thousands_separator" => "מפריד אלפים", + "timezone" => "אזור זמן", + "timezone_error" => "", + "top" => "חלק עליון", + "use_destination_based_tax" => "השתמש במס מבוסס יעד", + "user_timezone" => "", + "website" => "אתר", + "wholesale_markup" => "", + "work_order_enable" => "תמיכה בהזמנת עבודה", + "work_order_format" => "פורמט הזמנת עבודה", ]; diff --git a/app/Language/he/Customers.php b/app/Language/he/Customers.php index e737ac332..1efe9becc 100644 --- a/app/Language/he/Customers.php +++ b/app/Language/he/Customers.php @@ -1,56 +1,56 @@ "חשבון מס #", - "account_number_duplicate" => "מספר החשבון כבר נמצא במסד הנתונים.", - "available_points" => "נקודות זמינות", - "available_points_value" => "", - "average" => "הוצאה ממוצעת", - "avg_discount" => "הנחה ממוצעת", - "basic_information" => "מידע", - "cannot_be_deleted" => "לא ניתן למחוק לקוחות שנבחרו, לאחד או יותר מהלקוחות שנבחרו יש מכירות.", - "company_name" => "חברה", - "confirm_delete" => "האם אתה בטוח שברצונך למחוק את הלקוח\ות שנבחרו?", - "confirm_restore" => "האם אתה בטוח שברצונך לשחזר לקוח\ות נבחרים?", - "consent" => "הסכמת רישום", - "consent_required" => "הסכמת רישום הינו שדה חובה.", - "csv_import_failed" => "ייבוא אקסל נכשל", - "csv_import_nodata_wrongformat" => "בקובץ שהועלה אין נתונים או פורמט שגוי.", - "csv_import_partially_failed" => "ייבוא הלקוח הצליח עם מספר שגיאות:", - "csv_import_success" => "ייבוא הלקוח בוצע בהצלחה.", - "customer" => "לקוח", - "date" => "תאריך", - "discount" => "הנחה", - "discount_fixed" => "הנחה קבועה", - "discount_percent" => "אחוז הנחה", - "discount_type" => "סוג הנחה", - "email_duplicate" => "כתובת האימייל כבר קיימת במסד הנתונים.", - "employee" => "עובד", - "error_adding_updating" => "הוספה או עדכון לקוח נכשלו.", - "import_items_csv" => "ייבוא לקוח מקובץ אקסל", - "mailchimp_activity_click" => "לחץ לאימייל", - "mailchimp_activity_lastopen" => "אימייל אחרון שנפתח", - "mailchimp_activity_open" => "אימייל פתוח", - "mailchimp_activity_total" => "אימייל נשלח", - "mailchimp_activity_unopen" => "אימייל לא פתוח", - "mailchimp_email_client" => "לקוח אימייל", - "mailchimp_info" => "Mailchimp (פלטפורמה לשליחת מיילים)", - "mailchimp_member_rating" => "דירוג", - "mailchimp_status" => "סטטוס", - "mailchimp_vip" => "אחמ", - "max" => "מקסימום הוצאה", - "min" => "מינימום הוצאה", - "new" => "לקוח חדש", - "none_selected" => "לא בחרת לקוחות כלשהם למחיקה.", - "one_or_multiple" => "לקוח\ות", - "quantity" => "כמות", - "stats_info" => "נתונים סטטיסטיים", - "successful_adding" => "הלקוח נוסף בהצלחה", - "successful_deleted" => "נמחק בהצלחה", - "successful_updating" => "עדכנת בהצלחה את הלקוח", - "tax_code" => "קוד מס", - "tax_id" => "מזהה לצורך מס", - "taxable" => "חייב מס", - "total" => "סך הכול הוצאה", - "update" => "עדכן לקוח", - "rewards_package" => "חבילת תגמולים", + "account_number" => "חשבון מס #", + "account_number_duplicate" => "מספר החשבון כבר נמצא במסד הנתונים.", + "available_points" => "נקודות זמינות", + "available_points_value" => "", + "average" => "הוצאה ממוצעת", + "avg_discount" => "הנחה ממוצעת", + "basic_information" => "מידע", + "cannot_be_deleted" => "לא ניתן למחוק לקוחות שנבחרו, לאחד או יותר מהלקוחות שנבחרו יש מכירות.", + "company_name" => "חברה", + "confirm_delete" => "האם אתה בטוח שברצונך למחוק את הלקוח\ות שנבחרו?", + "confirm_restore" => "האם אתה בטוח שברצונך לשחזר לקוח\ות נבחרים?", + "consent" => "הסכמת רישום", + "consent_required" => "הסכמת רישום הינו שדה חובה.", + "csv_import_failed" => "ייבוא אקסל נכשל", + "csv_import_nodata_wrongformat" => "בקובץ שהועלה אין נתונים או פורמט שגוי.", + "csv_import_partially_failed" => "ייבוא הלקוח הצליח עם מספר שגיאות:", + "csv_import_success" => "ייבוא הלקוח בוצע בהצלחה.", + "customer" => "לקוח", + "date" => "תאריך", + "discount" => "הנחה", + "discount_fixed" => "הנחה קבועה", + "discount_percent" => "אחוז הנחה", + "discount_type" => "סוג הנחה", + "email_duplicate" => "כתובת האימייל כבר קיימת במסד הנתונים.", + "employee" => "עובד", + "error_adding_updating" => "הוספה או עדכון לקוח נכשלו.", + "import_items_csv" => "ייבוא לקוח מקובץ אקסל", + "mailchimp_activity_click" => "לחץ לאימייל", + "mailchimp_activity_lastopen" => "אימייל אחרון שנפתח", + "mailchimp_activity_open" => "אימייל פתוח", + "mailchimp_activity_total" => "אימייל נשלח", + "mailchimp_activity_unopen" => "אימייל לא פתוח", + "mailchimp_email_client" => "לקוח אימייל", + "mailchimp_info" => "Mailchimp (פלטפורמה לשליחת מיילים)", + "mailchimp_member_rating" => "דירוג", + "mailchimp_status" => "סטטוס", + "mailchimp_vip" => "אחמ", + "max" => "מקסימום הוצאה", + "min" => "מינימום הוצאה", + "new" => "לקוח חדש", + "none_selected" => "לא בחרת לקוחות כלשהם למחיקה.", + "one_or_multiple" => "לקוח\ות", + "quantity" => "כמות", + "stats_info" => "נתונים סטטיסטיים", + "successful_adding" => "הלקוח נוסף בהצלחה", + "successful_deleted" => "נמחק בהצלחה", + "successful_updating" => "עדכנת בהצלחה את הלקוח", + "tax_code" => "קוד מס", + "tax_id" => "מזהה לצורך מס", + "taxable" => "חייב מס", + "total" => "סך הכול הוצאה", + "update" => "עדכן לקוח", + "rewards_package" => "חבילת תגמולים", ]; diff --git a/app/Language/he/Datepicker.php b/app/Language/he/Datepicker.php index 6b6b55997..19d156036 100644 --- a/app/Language/he/Datepicker.php +++ b/app/Language/he/Datepicker.php @@ -1,23 +1,23 @@ "כל הזמן", - "apply" => "אשר", - "cancel" => "בטל", - "custom" => "מותאם אישית", - "from" => "מ", - "last_30" => "30 ימים אחרונים", - "last_7" => "שבוע אחרון", - "last_financial_year" => "שנת הכספים האחרונה", - "last_month" => "חודש שעבר", - "last_year" => "שנה שעברה", - "same_month_last_year" => "אותו חודש בשנה שעברה", - "same_month_to_same_day_last_year" => "אותו חודש לאותו יום בשנה שעברה", - "this_financial_year" => "שנת הכספים הנוכחית", - "this_month" => "החודש נוכחי", - "this_year" => "השנה הנוכחית", - "to" => "ל", - "today" => "היום", - "today_last_year" => "היום בשנה שעברה", - "weekstart" => "0", - "yesterday" => "אתמול", + "all_time" => "כל הזמן", + "apply" => "אשר", + "cancel" => "בטל", + "custom" => "מותאם אישית", + "from" => "מ", + "last_30" => "30 ימים אחרונים", + "last_7" => "שבוע אחרון", + "last_financial_year" => "שנת הכספים האחרונה", + "last_month" => "חודש שעבר", + "last_year" => "שנה שעברה", + "same_month_last_year" => "אותו חודש בשנה שעברה", + "same_month_to_same_day_last_year" => "אותו חודש לאותו יום בשנה שעברה", + "this_financial_year" => "שנת הכספים הנוכחית", + "this_month" => "החודש נוכחי", + "this_year" => "השנה הנוכחית", + "to" => "ל", + "today" => "היום", + "today_last_year" => "היום בשנה שעברה", + "weekstart" => "0", + "yesterday" => "אתמול", ]; diff --git a/app/Language/he/Employees.php b/app/Language/he/Employees.php index 8e95c5d98..386ad4e3b 100644 --- a/app/Language/he/Employees.php +++ b/app/Language/he/Employees.php @@ -1,44 +1,44 @@ "", - "basic_information" => "מידע", - "cannot_be_deleted" => "לא ניתן למחוק עובדים נבחרים, לאחד או יותר יש מכירות בתהליך או שאתה מנסה למחוק את החשבון שלך.", - "change_employee" => "", - "change_password" => "שנה סיסמה", - "clerk" => "", - "commission" => "", - "confirm_delete" => "האם אתה בטוח שברצונך למחוק את העובדים שנבחרו?", - "confirm_restore" => "האם אתה בטוח שברצונך לשחזר את העובדים שנבחרו?", - "current_password" => "סיסמה נוכחית", - "current_password_invalid" => "הסיסמה הנוכחית אינה חוקית.", - "employee" => "עובד", - "error_adding_updating" => "הוספה או עדכון של עובד נכשלה.", - "error_deleting_demo_admin" => "לא ניתן למחוק את משתמש המנהל ההדגמה.", - "error_updating_demo_admin" => "לא ניתן לשנות את משתמש המנהל ההדגמה.", - "language" => "שפה", - "login_info" => "כניסה", - "manager" => "", - "new" => "עובד חדש", - "none_selected" => "לא בחרת עובדים שברצונך למחוק.", - "one_or_multiple" => "עובד(ים)", - "password" => "סיסמה", - "password_minlength" => "על הסיסמה להיות באורך של 8 תווים לפחות.", - "password_must_match" => "סיסמאות לא תואמות.", - "password_not_must_match" => "הסיסמה הנוכחית והסיסמה החדשה חייבות להיות ייחודיות.", - "password_required" => "דרושה סיסמה.", - "permission_desc" => "סמן את התיבות שלהלן כדי להעניק גישה למודולים.", - "permission_info" => "הרשאות", - "repeat_password" => "סיסמא בשנית", - "subpermission_required" => "הוסף לפחות גישה אחת לכל מודול.", - "successful_adding" => "הוספת עובד בהצלחה.", - "successful_change_password" => "סיסמה שונתה בהצלחה.", - "successful_deleted" => "נמחק בהצלחה", - "successful_updating" => "עדכנת בהצלחה את פרטי העובד", - "system_language" => "שפת מערכת", - "unsuccessful_change_password" => "שינוי הסיסמה נכשל.", - "update" => "עדכן עובד", - "username" => "שם משתמש", - "username_duplicate" => "", - "username_minlength" => "על שם המשתמש להיות באורך של 5 תווים לפחות.", - "username_required" => "שם המשתמש הינו שדה חובה.", + "administrator" => "", + "basic_information" => "מידע", + "cannot_be_deleted" => "לא ניתן למחוק עובדים נבחרים, לאחד או יותר יש מכירות בתהליך או שאתה מנסה למחוק את החשבון שלך.", + "change_employee" => "", + "change_password" => "שנה סיסמה", + "clerk" => "", + "commission" => "", + "confirm_delete" => "האם אתה בטוח שברצונך למחוק את העובדים שנבחרו?", + "confirm_restore" => "האם אתה בטוח שברצונך לשחזר את העובדים שנבחרו?", + "current_password" => "סיסמה נוכחית", + "current_password_invalid" => "הסיסמה הנוכחית אינה חוקית.", + "employee" => "עובד", + "error_adding_updating" => "הוספה או עדכון של עובד נכשלה.", + "error_deleting_demo_admin" => "לא ניתן למחוק את משתמש המנהל ההדגמה.", + "error_updating_demo_admin" => "לא ניתן לשנות את משתמש המנהל ההדגמה.", + "language" => "שפה", + "login_info" => "כניסה", + "manager" => "", + "new" => "עובד חדש", + "none_selected" => "לא בחרת עובדים שברצונך למחוק.", + "one_or_multiple" => "עובד(ים)", + "password" => "סיסמה", + "password_minlength" => "על הסיסמה להיות באורך של 8 תווים לפחות.", + "password_must_match" => "סיסמאות לא תואמות.", + "password_not_must_match" => "הסיסמה הנוכחית והסיסמה החדשה חייבות להיות ייחודיות.", + "password_required" => "דרושה סיסמה.", + "permission_desc" => "סמן את התיבות שלהלן כדי להעניק גישה למודולים.", + "permission_info" => "הרשאות", + "repeat_password" => "סיסמא בשנית", + "subpermission_required" => "הוסף לפחות גישה אחת לכל מודול.", + "successful_adding" => "הוספת עובד בהצלחה.", + "successful_change_password" => "סיסמה שונתה בהצלחה.", + "successful_deleted" => "נמחק בהצלחה", + "successful_updating" => "עדכנת בהצלחה את פרטי העובד", + "system_language" => "שפת מערכת", + "unsuccessful_change_password" => "שינוי הסיסמה נכשל.", + "update" => "עדכן עובד", + "username" => "שם משתמש", + "username_duplicate" => "", + "username_minlength" => "על שם המשתמש להיות באורך של 5 תווים לפחות.", + "username_required" => "שם המשתמש הינו שדה חובה.", ]; diff --git a/app/Language/he/Enum.php b/app/Language/he/Enum.php index b164f2a56..ec72e76d8 100644 --- a/app/Language/he/Enum.php +++ b/app/Language/he/Enum.php @@ -1,10 +1,10 @@ "חצי למטה", - "half_even" => "חצי שווה", - "half_five" => "חצי חמש", - "half_odd" => "חצי מספר אי זוגי", - "half_up" => "חצי למעלה", - "round_down" => "לעגל למטה", - "round_up" => "לעגל למעלה", + "half_down" => "חצי למטה", + "half_even" => "חצי שווה", + "half_five" => "חצי חמש", + "half_odd" => "חצי מספר אי זוגי", + "half_up" => "חצי למעלה", + "round_down" => "לעגל למטה", + "round_up" => "לעגל למעלה", ]; diff --git a/app/Language/he/Error.php b/app/Language/he/Error.php index b9bd21599..fff07bfa4 100644 --- a/app/Language/he/Error.php +++ b/app/Language/he/Error.php @@ -1,5 +1,5 @@ "אין לך הרשאה לגשת אל המודול ששמו", - "unknown" => "שגיאה לא ידועה", + "no_permission_module" => "אין לך הרשאה לגשת אל המודול ששמו", + "unknown" => "שגיאה לא ידועה", ]; diff --git a/app/Language/he/Expenses.php b/app/Language/he/Expenses.php index 1cd694328..a41496829 100644 --- a/app/Language/he/Expenses.php +++ b/app/Language/he/Expenses.php @@ -1,50 +1,50 @@ "הוסף הוצאה", - "amount" => "סכום", - "amount_number" => "הסכום חייב להיות מספר", - "amount_required" => "סכום ההוצאות הנדרש", - "by_category" => "קטגוריה", - "cannot_be_deleted" => "לא ניתן למחוק קטגוריית הוצאות", - "cash" => "מזומן", - "cash_filter" => "כסף מזומן", - "categories_name" => "קטגוריה", - "category_required" => "הקטגוריה היא שדה חובה", - "check" => "המחאות", - "check_filter" => "המחאות", - "confirm_delete" => "האם אתה בטוח שברצונך למחוק את ההוצאה שנבחרה?", - "confirm_restore" => "האם אתה בטוח שברצונך לשחזר את ההוצאה שנבחרה?", - "credit" => "כרטיס אשראי", - "credit_filter" => "כרטיס אשראי", - "date" => "תאריך", - "date_number" => "התאריך חייב להיות מספר", - "date_required" => "תאריך הוא שדה חובה", - "debit" => "כרטיס חיוב מידי", - "debit_filter" => "כרטיס חיוב מידי", - "description" => "תיאור", - "due" => "תשלום דחוי", - "due_filter" => "תשלום דחוי", - "employee" => "נוצר על ידי", - "error_adding_updating" => "שגיאה בהוספה / עדכון של הוצאות", - "expense_id" => "מזהה", - "expenses_employee" => "עובד", - "info" => "תיאור הוצאות", - "ip_address" => "", - "is_deleted" => "נמחק", - "name_required" => "נדרש שם להוצאה", - "new" => "הוצאה חדשה", - "new_supplier" => "", - "no_expenses_to_display" => "אין הוצאות להצגה", - "none_selected" => "לא בחרת כל הוצאה", - "one_or_multiple" => "הוצאה(ות)", - "payment" => "סוג תשלום", - "start_typing_supplier_name" => "התחל להקליד את שם הספק ...", - "successful_adding" => "הוצאה נוספה בהצלחה", - "successful_deleted" => "הוצאה נמחקה בהצלחה", - "successful_updating" => "הוצאה עודכנה בהצלחה", - "supplier_name" => "ספק", - "supplier_tax_code" => "קוד מס", - "tax_amount" => "מס", - "tax_amount_number" => "", - "update" => "עדכון הוצאות", + "add_item" => "הוסף הוצאה", + "amount" => "סכום", + "amount_number" => "הסכום חייב להיות מספר", + "amount_required" => "סכום ההוצאות הנדרש", + "by_category" => "קטגוריה", + "cannot_be_deleted" => "לא ניתן למחוק קטגוריית הוצאות", + "cash" => "מזומן", + "cash_filter" => "כסף מזומן", + "categories_name" => "קטגוריה", + "category_required" => "הקטגוריה היא שדה חובה", + "check" => "המחאות", + "check_filter" => "המחאות", + "confirm_delete" => "האם אתה בטוח שברצונך למחוק את ההוצאה שנבחרה?", + "confirm_restore" => "האם אתה בטוח שברצונך לשחזר את ההוצאה שנבחרה?", + "credit" => "כרטיס אשראי", + "credit_filter" => "כרטיס אשראי", + "date" => "תאריך", + "date_number" => "התאריך חייב להיות מספר", + "date_required" => "תאריך הוא שדה חובה", + "debit" => "כרטיס חיוב מידי", + "debit_filter" => "כרטיס חיוב מידי", + "description" => "תיאור", + "due" => "תשלום דחוי", + "due_filter" => "תשלום דחוי", + "employee" => "נוצר על ידי", + "error_adding_updating" => "שגיאה בהוספה / עדכון של הוצאות", + "expense_id" => "מזהה", + "expenses_employee" => "עובד", + "info" => "תיאור הוצאות", + "ip_address" => "", + "is_deleted" => "נמחק", + "name_required" => "נדרש שם להוצאה", + "new" => "הוצאה חדשה", + "new_supplier" => "", + "no_expenses_to_display" => "אין הוצאות להצגה", + "none_selected" => "לא בחרת כל הוצאה", + "one_or_multiple" => "הוצאה(ות)", + "payment" => "סוג תשלום", + "start_typing_supplier_name" => "התחל להקליד את שם הספק ...", + "successful_adding" => "הוצאה נוספה בהצלחה", + "successful_deleted" => "הוצאה נמחקה בהצלחה", + "successful_updating" => "הוצאה עודכנה בהצלחה", + "supplier_name" => "ספק", + "supplier_tax_code" => "קוד מס", + "tax_amount" => "מס", + "tax_amount_number" => "", + "update" => "עדכון הוצאות", ]; diff --git a/app/Language/he/Expenses_categories.php b/app/Language/he/Expenses_categories.php index 66c07f6d9..ca77914dd 100644 --- a/app/Language/he/Expenses_categories.php +++ b/app/Language/he/Expenses_categories.php @@ -1,22 +1,22 @@ "שם קטגורית הוצאה נדרש", - "add_item" => "הוסף קטגוריה", - "cannot_be_deleted" => "לא ניתן למחוק קטגוריית הוצאה(ות)", - "category_id" => "מזהה", - "confirm_delete" => "האם אתה בטוח שברצונך למחוק את קטגוריית ההוצאה שנבחרה?", - "confirm_restore" => "האם אתה בטוח שברצונך לשחזר את קטגוריית ההוצאה שנבחרה?", - "description" => "תיאור קטגוריה", - "error_adding_updating" => "שגיאה בהוספה / עדכון של תיאור קטגוריה", - "info" => "מידע על תיאור קטגוריה", - "name" => "שם קטגוריה", - "new" => "קטגוריה חדשה", - "no_expenses_categories_to_display" => "אין קטגוריה להצגה", - "none_selected" => "לא בחרת כל קטגורית הוצאה", - "one_or_multiple" => "קטגוריה הוצאה", - "quantity" => "כמות", - "successful_adding" => "סוג הוצאה נוסף בהצלחה", - "successful_deleted" => "סוג הוצאה נמחק בהצלחה", - "successful_updating" => "סוג הוצאה עודכן בהצלחה", - "update" => "עדכון קטגוריה", + "category_name_required" => "שם קטגורית הוצאה נדרש", + "add_item" => "הוסף קטגוריה", + "cannot_be_deleted" => "לא ניתן למחוק קטגוריית הוצאה(ות)", + "category_id" => "מזהה", + "confirm_delete" => "האם אתה בטוח שברצונך למחוק את קטגוריית ההוצאה שנבחרה?", + "confirm_restore" => "האם אתה בטוח שברצונך לשחזר את קטגוריית ההוצאה שנבחרה?", + "description" => "תיאור קטגוריה", + "error_adding_updating" => "שגיאה בהוספה / עדכון של תיאור קטגוריה", + "info" => "מידע על תיאור קטגוריה", + "name" => "שם קטגוריה", + "new" => "קטגוריה חדשה", + "no_expenses_categories_to_display" => "אין קטגוריה להצגה", + "none_selected" => "לא בחרת כל קטגורית הוצאה", + "one_or_multiple" => "קטגוריה הוצאה", + "quantity" => "כמות", + "successful_adding" => "סוג הוצאה נוסף בהצלחה", + "successful_deleted" => "סוג הוצאה נמחק בהצלחה", + "successful_updating" => "סוג הוצאה עודכן בהצלחה", + "update" => "עדכון קטגוריה", ]; diff --git a/app/Language/he/Giftcards.php b/app/Language/he/Giftcards.php index ad439d16c..a4d4a9611 100644 --- a/app/Language/he/Giftcards.php +++ b/app/Language/he/Giftcards.php @@ -1,71 +1,71 @@ "מלאי כדי להוסיף או לחסר.", - "allow_alt_description" => "אפשר תיאור חלופי", - "bulk_edit" => "עריכה גורפת", - "cannot_be_deleted" => "לא ניתן למחוק כרטיס מתנה נבחר(ים), אחד או יותר מכרטיסי המתנה שנבחרו יש מכירות.", - "cannot_find_giftcard" => "כרטיס מתנה לא נמצא.", - "cannot_use" => "לא ניתן להשתמש בכרטיס מתנה {0} עבור מכירה זו: לקוח לא חוקי.", - "card_value" => "ערך", - "category" => "קטגוריה", - "change_all_to_allow_alt_desc" => "אפשר תיאור חלופי לכל.", - "change_all_to_not_allow_allow_desc" => "אל תאפשר תיאור חלופי לכל.", - "change_all_to_serialized" => "שינוי הכל לסריאליזציה", - "change_all_to_unserialized" => "שינוי הכל כדי סריאליזציה", - "confirm_bulk_edit" => "האם אתה בטוח שברצונך לערוך את כרטיס\ים המתנה שנבחר?", - "confirm_delete" => "האם אתה בטוח שברצונך למחוק את כרטיס\ים המתנה שנבחר?", - "confirm_restore" => "האם אתה בטוח שברצונך לשחזר את כרטיס\ים המתנה שנבחר?", - "cost_price" => "מחיר סיטונאי", - "count" => "עדכן מלאי", - "csv_import_failed" => "ייבוא אקסל נכשל.", - "current_quantity" => "כמות נוכחית", - "description" => "תיאור", - "details_count" => "פרטים על ספירת מלאי", - "do_nothing" => "לא לעשות שום דבר", - "edit_fields_you_want_to_update" => "ערוך את השדות הרצויים עבור כרטיס\י המתנה הנבחרים.", - "edit_multiple_giftcards" => "עריכת כרטיסי מתנה מרובים.", - "error_adding_updating" => "הוספה או עדכון של כרטיס מתנה נכשל.", - "error_updating_multiple" => "עדכון כרטיס\י מתנה נכשל.", - "generate_barcodes" => "צור ברקודים", - "giftcard" => "כרטיס מתנה", - "giftcard_number" => "מספר כרטיס מתנה", - "info_provided_by" => "מידע סופק על ידי", - "inventory_comments" => "הערות", - "is_serialized" => "לכרטיס מתנה יש מספר סידורי", - "low_inventory_giftcards" => "מלאי נמוך לכרטיסי מתנה", - "manually_editing_of_quantity" => "עריכה ידנית של כמות", - "must_select_giftcard_for_barcode" => "אתה חייב לבחור לפחות כרטיס מתנה אחד (1) כדי ליצור ברקודים.", - "new" => "כרטיס מתנה חדש", - "no_description_giftcards" => "אין תיאור לכרטיסי מתנה", - "no_giftcards_to_display" => "אין כרטיסי מתנה להצגה.", - "none" => "ריק", - "none_selected" => "לא נבחרו כרטיסי מתנה לעריכה.", - "number" => "מספר כרטיס מתנה חייב להיות מספר.", - "number_information" => "מספר כרטיס מתנה", - "number_required" => "מספר כרטיס מתנה הינו שדה חובה.", - "one_or_multiple" => "כרטיס\י מתנה", - "person_id" => "לקוח", - "quantity" => "כמות", - "quantity_required" => "הכמות היא שדה חובה. סגור (X) כדי לבטל.", - "remaining_balance" => "בכרטיס מתנה {0} נותר {1}!", - "reorder_level" => "סדר מחדש את הרמה", - "retrive_giftcard_info" => "אחזור פרטי כרטיס מתנה", - "sales_tax_1" => "מס מכירה", - "sales_tax_2" => "מס מכירה 2", - "serialized_giftcards" => "סריאליזציית כרטיסי מתנה", - "successful_adding" => "הוספת בהצלחה כרטיס מתנה", - "successful_bulk_edit" => "עדכנת בהצלחה את כרטיס\י המתנה שנבחרו", - "successful_deleted" => "נמחק בהצלחה", - "successful_updating" => "עדכנת בהצלחה את כרטיס המתנה", - "supplier" => "ספק", - "tax_1" => "מס 1", - "tax_2" => "מס 2", - "tax_percent" => "אחוז מס", - "tax_percents" => "אחוזי מס", - "unit_price" => "ערך קמעונאי", - "upc_database" => "מסד נתונים ברקוד", - "update" => "עדכן כרטיס מתנה", - "use_inventory_menu" => "השתמש בתפריט מלאי", - "value" => "ערך כרטיס המתנה חייב להיות מספר.", - "value_required" => "כרטיס המתנה הינו שדה חובה.", + "add_minus" => "מלאי כדי להוסיף או לחסר.", + "allow_alt_description" => "אפשר תיאור חלופי", + "bulk_edit" => "עריכה גורפת", + "cannot_be_deleted" => "לא ניתן למחוק כרטיס מתנה נבחר(ים), אחד או יותר מכרטיסי המתנה שנבחרו יש מכירות.", + "cannot_find_giftcard" => "כרטיס מתנה לא נמצא.", + "cannot_use" => "לא ניתן להשתמש בכרטיס מתנה {0} עבור מכירה זו: לקוח לא חוקי.", + "card_value" => "ערך", + "category" => "קטגוריה", + "change_all_to_allow_alt_desc" => "אפשר תיאור חלופי לכל.", + "change_all_to_not_allow_allow_desc" => "אל תאפשר תיאור חלופי לכל.", + "change_all_to_serialized" => "שינוי הכל לסריאליזציה", + "change_all_to_unserialized" => "שינוי הכל כדי סריאליזציה", + "confirm_bulk_edit" => "האם אתה בטוח שברצונך לערוך את כרטיס\ים המתנה שנבחר?", + "confirm_delete" => "האם אתה בטוח שברצונך למחוק את כרטיס\ים המתנה שנבחר?", + "confirm_restore" => "האם אתה בטוח שברצונך לשחזר את כרטיס\ים המתנה שנבחר?", + "cost_price" => "מחיר סיטונאי", + "count" => "עדכן מלאי", + "csv_import_failed" => "ייבוא אקסל נכשל.", + "current_quantity" => "כמות נוכחית", + "description" => "תיאור", + "details_count" => "פרטים על ספירת מלאי", + "do_nothing" => "לא לעשות שום דבר", + "edit_fields_you_want_to_update" => "ערוך את השדות הרצויים עבור כרטיס\י המתנה הנבחרים.", + "edit_multiple_giftcards" => "עריכת כרטיסי מתנה מרובים.", + "error_adding_updating" => "הוספה או עדכון של כרטיס מתנה נכשל.", + "error_updating_multiple" => "עדכון כרטיס\י מתנה נכשל.", + "generate_barcodes" => "צור ברקודים", + "giftcard" => "כרטיס מתנה", + "giftcard_number" => "מספר כרטיס מתנה", + "info_provided_by" => "מידע סופק על ידי", + "inventory_comments" => "הערות", + "is_serialized" => "לכרטיס מתנה יש מספר סידורי", + "low_inventory_giftcards" => "מלאי נמוך לכרטיסי מתנה", + "manually_editing_of_quantity" => "עריכה ידנית של כמות", + "must_select_giftcard_for_barcode" => "אתה חייב לבחור לפחות כרטיס מתנה אחד (1) כדי ליצור ברקודים.", + "new" => "כרטיס מתנה חדש", + "no_description_giftcards" => "אין תיאור לכרטיסי מתנה", + "no_giftcards_to_display" => "אין כרטיסי מתנה להצגה.", + "none" => "ריק", + "none_selected" => "לא נבחרו כרטיסי מתנה לעריכה.", + "number" => "מספר כרטיס מתנה חייב להיות מספר.", + "number_information" => "מספר כרטיס מתנה", + "number_required" => "מספר כרטיס מתנה הינו שדה חובה.", + "one_or_multiple" => "כרטיס\י מתנה", + "person_id" => "לקוח", + "quantity" => "כמות", + "quantity_required" => "הכמות היא שדה חובה. סגור (X) כדי לבטל.", + "remaining_balance" => "בכרטיס מתנה {0} נותר {1}!", + "reorder_level" => "סדר מחדש את הרמה", + "retrive_giftcard_info" => "אחזור פרטי כרטיס מתנה", + "sales_tax_1" => "מס מכירה", + "sales_tax_2" => "מס מכירה 2", + "serialized_giftcards" => "סריאליזציית כרטיסי מתנה", + "successful_adding" => "הוספת בהצלחה כרטיס מתנה", + "successful_bulk_edit" => "עדכנת בהצלחה את כרטיס\י המתנה שנבחרו", + "successful_deleted" => "נמחק בהצלחה", + "successful_updating" => "עדכנת בהצלחה את כרטיס המתנה", + "supplier" => "ספק", + "tax_1" => "מס 1", + "tax_2" => "מס 2", + "tax_percent" => "אחוז מס", + "tax_percents" => "אחוזי מס", + "unit_price" => "ערך קמעונאי", + "upc_database" => "מסד נתונים ברקוד", + "update" => "עדכן כרטיס מתנה", + "use_inventory_menu" => "השתמש בתפריט מלאי", + "value" => "ערך כרטיס המתנה חייב להיות מספר.", + "value_required" => "כרטיס המתנה הינו שדה חובה.", ]; diff --git a/app/Language/he/Item_kits.php b/app/Language/he/Item_kits.php index f8c2a48f2..5c3d48f20 100644 --- a/app/Language/he/Item_kits.php +++ b/app/Language/he/Item_kits.php @@ -1,41 +1,41 @@ "הוסף פריט", - "all" => "הכול", - "cannot_be_deleted" => "מחיקת ערכת הפריטים נכשלה.", - "confirm_delete" => "האם אתה בטוח שברצונך למחוק את ערכת הפריטים שנבחרה?", - "confirm_restore" => "האם אתה בטוח שברצונך לשחזר את ערכת הפריטים שנבחרה?", - "description" => "תיאור ערכת פריט", - "discount" => "הנחה", - "discount_fixed" => "הנחה קבועה", - "discount_percent" => "אחוז הנחה", - "discount_type" => "סוג הנחה", - "error_adding_updating" => "הוספה או עדכון של ערכת הפריט נכשלה.", - "find_kit_item" => "ערכת פריט", - "info" => "מידע על ערכת פריט", - "item" => "פריט", - "item_kit_number" => "", - "item_kit_number_duplicate" => "", - "item_number" => "", - "item_number_duplicate" => "", - "items" => "פריטים", - "kit" => "מזהה ערכה", - "kit_and_components" => "ערכה ורכיבים", - "kit_and_stock" => "ערכה ומלאי", - "kit_only" => "ערכה בלבד", - "name" => "שם ערכת פריט", - "new" => "יצירת ערכת פריט חדשה", - "no_item_kits_to_display" => "אין ערכות פריטים להצגה.", - "none_selected" => "לא בחרת ערכות פריט.", - "one_or_multiple" => "ערכת פריט(ים)", - "price_option" => "אפשרויות מחיר", - "priced_only" => "מחיר בלבד", - "print_option" => "אפשרויות הדפסה", - "quantity" => "כמות", - "sequence" => "רצף", - "successful_adding" => "הוספת בהצלחה את ערכת הפריט", - "successful_deleted" => "נמחק בהצלחה", - "successful_updating" => "עדכנת בהצלחה את ערכת הפריט", - "unit_price" => "", - "update" => "עדכן ערכת פריט", + "add_item" => "הוסף פריט", + "all" => "הכול", + "cannot_be_deleted" => "מחיקת ערכת הפריטים נכשלה.", + "confirm_delete" => "האם אתה בטוח שברצונך למחוק את ערכת הפריטים שנבחרה?", + "confirm_restore" => "האם אתה בטוח שברצונך לשחזר את ערכת הפריטים שנבחרה?", + "description" => "תיאור ערכת פריט", + "discount" => "הנחה", + "discount_fixed" => "הנחה קבועה", + "discount_percent" => "אחוז הנחה", + "discount_type" => "סוג הנחה", + "error_adding_updating" => "הוספה או עדכון של ערכת הפריט נכשלה.", + "find_kit_item" => "ערכת פריט", + "info" => "מידע על ערכת פריט", + "item" => "פריט", + "item_kit_number" => "", + "item_kit_number_duplicate" => "", + "item_number" => "", + "item_number_duplicate" => "", + "items" => "פריטים", + "kit" => "מזהה ערכה", + "kit_and_components" => "ערכה ורכיבים", + "kit_and_stock" => "ערכה ומלאי", + "kit_only" => "ערכה בלבד", + "name" => "שם ערכת פריט", + "new" => "יצירת ערכת פריט חדשה", + "no_item_kits_to_display" => "אין ערכות פריטים להצגה.", + "none_selected" => "לא בחרת ערכות פריט.", + "one_or_multiple" => "ערכת פריט(ים)", + "price_option" => "אפשרויות מחיר", + "priced_only" => "מחיר בלבד", + "print_option" => "אפשרויות הדפסה", + "quantity" => "כמות", + "sequence" => "רצף", + "successful_adding" => "הוספת בהצלחה את ערכת הפריט", + "successful_deleted" => "נמחק בהצלחה", + "successful_updating" => "עדכנת בהצלחה את ערכת הפריט", + "unit_price" => "", + "update" => "עדכן ערכת פריט", ]; diff --git a/app/Language/he/Items.php b/app/Language/he/Items.php index 5796533bd..65023c113 100644 --- a/app/Language/he/Items.php +++ b/app/Language/he/Items.php @@ -1,120 +1,120 @@ "הוספה או החסרה של מלאי.", - "allow_alt_description" => "אפשר תיאור חלופי", - "amount_entry" => "ערך כניסה", - "bulk_edit" => "עריכה גורפת", - "buy_price_required" => "מחיר הרכישה הינו שדה חובה.", - "cannot_be_deleted" => "לא ניתן למחוק פריטים נבחרים, לאחד או יותר מהפריטים שנבחרו יש מכירות.", - "cannot_find_item" => "פריט לא נמצא.", - "categories" => "", - "category" => "קטגוריה", - "category_new" => "", - "category_required" => "קטגוריה היא שדה חובה.", - "change_all_to_allow_alt_desc" => "אפשר תיאור חלופי להכול.", - "change_all_to_not_allow_allow_desc" => "אל תאפשר תיאור חלופי להכול.", - "change_all_to_serialized" => "שנה הכל לסריאליזציה", - "change_all_to_unserialized" => "הפוך הכל מסריאליזציה", - "change_image" => "שנה תמונה", - "confirm_bulk_edit" => "האם אתה בטוח שברצונך לערוך פריטים נבחרים?", - "confirm_bulk_edit_wipe_taxes" => "כל פירוטי המס בפריט יוחלפו.", - "confirm_delete" => "האם אתה בטוח שברצונך למחוק פריטים נבחרים?", - "confirm_restore" => "האם אתה בטוח שברצונך לשחזר פריטים נבחרים?", - "cost_price" => "מחיר סיטונאי", - "cost_price_number" => "מחיר סיטונאי חייב להיות מספר.", - "cost_price_required" => "מחיר סיטונאי הינו שדה חובה.", - "count" => "עדכן מלאי", - "csv_import_failed" => "ייבוא אקסל נכשל", - "csv_import_nodata_wrongformat" => "בקובץ שהועלה אין נתונים או פורמט שגוי.", - "csv_import_partially_failed" => "ייבוא פריט הצליח עם מספר שגיאות:", - "csv_import_success" => "ייבוא הפריט הצליח.", - "current_quantity" => "כמות נוכחית", - "default_pack_name" => "כל", - "description" => "תיאור", - "details_count" => "פרטים על ספירת מלאי", - "do_nothing" => "לא לעשות שום דבר", - "edit" => "", - "edit_fields_you_want_to_update" => "ערוך את השדות הרצויים לפריטים שנבחרו.", - "edit_multiple_items" => "עריכת פריטים מרובים", - "empty_upc_items" => "הסר ברקוד לפריטים", - "error_adding_updating" => "שגיאה בהוספה / עדכון של פריט", - "error_updating_multiple" => "שגיאה בעדכון פריטים", - "generate_barcodes" => "צור ברקודים", - "hsn_code" => "מערכת מינוח מתואמת", - "image" => "אווטר", - "import_items_csv" => "ייבוא פריט מאקסל", - "info_provided_by" => "מידע סופק על ידי", - "inventory" => "מלאי", - "inventory_CSV_import_quantity" => "", - "inventory_comments" => "הערות", - "inventory_data_tracking" => "מעקב אחר נתוני מלאי", - "inventory_date" => "תאריך", - "inventory_employee" => "עובד", - "inventory_in_out_quantity" => "הכנס\הוצא כמות", - "inventory_remarks" => "הערות", - "is_deleted" => "נמחק", - "is_printed" => "", - "is_serialized" => "לפריט יש מספר סידורי", - "item" => "פריט", - "item_id" => "", - "item_number" => "ברקוד", - "item_number_duplicate" => "מספר הפריט כבר נמצא במסד הנתונים.", - "kit" => "ערכה", - "location" => "מיקום", - "low_inventory_items" => "פריטים מחוץ למלאי", - "low_sell_item" => "פריט במכירה זולה", - "manually_editing_of_quantity" => "עריכה ידנית של כמות", - "markup" => "", - "name" => "שם פריט", - "name_required" => "שם הפריט הינו שדה חובה.", - "new" => "פריט חדש", - "no_description_items" => "אין תיאור לפריטים", - "no_items_to_display" => "אין פריטים להצגה.", - "none" => "ריק", - "none_selected" => "לא בחרת פריט כלשהו לעריכה", - "nonstock" => "לא במלאי", - "number_information" => "מספר פריט", - "number_required" => "ברקוד הינו שדה חובה.", - "one_or_multiple" => "פריט(ים)", - "pack_name" => "שם החבילה", - "qty_per_pack" => "כמות לחבילה", - "quantity" => "כמות", - "quantity_number" => "שדה הכמות חייב להיות מספר.", - "quantity_required" => "הכמות היא שדה חובה.", - "receiving_quantity" => "קבלת כמות", - "remove_image" => "הסר תמונה", - "reorder_level" => "כמות מינימום להזמנה חדשה", - "reorder_level_number" => "שדה כמות מינימום להזמנה חדשה חייב להיות מספר.", - "reorder_level_required" => "כמות מינימום להזמנה חדשה הינו שדה חובה.", - "retrive_item_info" => "אחזר פרטי פריט", - "sales_tax_1" => "מס מכירה", - "sales_tax_2" => "מס מכירה 2", - "search_attributes" => "חיפוש במאפיינים", - "select_image" => "בחר תמונה", - "serialized_items" => "סדר פריטים", - "standard" => "רגיל", - "stock" => "במלאי", - "stock_location" => "מיקום המלאי", - "stock_type" => "סוג המלאי", - "successful_adding" => "הוספת בהצלחה פריט", - "successful_bulk_edit" => "עדכנת בהצלחה את הפריטים שנבחרו", - "successful_deleted" => "נמחק בהצלחה", - "successful_updating" => "עדכנת בהצלחה את הפריט", - "supplier" => "ספק", - "tax_1" => "מס 1", - "tax_2" => "מס 2", - "tax_3" => "", - "tax_category" => "קטגוריה מס", - "tax_percent" => "", - "tax_percent_number" => "אחוז המס חייב להיות ערך מספרי", - "tax_percent_required" => "אחוז המס הינו שדה חובה.", - "tax_percents" => "אחוזי מס", - "temp" => "זמני", - "type" => "סוג פריט", - "unit_price" => "מחיר קמעונאי", - "unit_price_number" => "מחיר היחידה חייב להיות מספר.", - "unit_price_required" => "מחיר קמעונאי הינו שדה חובה.", - "upc_database" => "מסד נתונים של הברקוד", - "update" => "עדכן פריט", - "use_inventory_menu" => "השתמש בתפריט מלאי", + "add_minus" => "הוספה או החסרה של מלאי.", + "allow_alt_description" => "אפשר תיאור חלופי", + "amount_entry" => "ערך כניסה", + "bulk_edit" => "עריכה גורפת", + "buy_price_required" => "מחיר הרכישה הינו שדה חובה.", + "cannot_be_deleted" => "לא ניתן למחוק פריטים נבחרים, לאחד או יותר מהפריטים שנבחרו יש מכירות.", + "cannot_find_item" => "פריט לא נמצא.", + "categories" => "", + "category" => "קטגוריה", + "category_new" => "", + "category_required" => "קטגוריה היא שדה חובה.", + "change_all_to_allow_alt_desc" => "אפשר תיאור חלופי להכול.", + "change_all_to_not_allow_allow_desc" => "אל תאפשר תיאור חלופי להכול.", + "change_all_to_serialized" => "שנה הכל לסריאליזציה", + "change_all_to_unserialized" => "הפוך הכל מסריאליזציה", + "change_image" => "שנה תמונה", + "confirm_bulk_edit" => "האם אתה בטוח שברצונך לערוך פריטים נבחרים?", + "confirm_bulk_edit_wipe_taxes" => "כל פירוטי המס בפריט יוחלפו.", + "confirm_delete" => "האם אתה בטוח שברצונך למחוק פריטים נבחרים?", + "confirm_restore" => "האם אתה בטוח שברצונך לשחזר פריטים נבחרים?", + "cost_price" => "מחיר סיטונאי", + "cost_price_number" => "מחיר סיטונאי חייב להיות מספר.", + "cost_price_required" => "מחיר סיטונאי הינו שדה חובה.", + "count" => "עדכן מלאי", + "csv_import_failed" => "ייבוא אקסל נכשל", + "csv_import_nodata_wrongformat" => "בקובץ שהועלה אין נתונים או פורמט שגוי.", + "csv_import_partially_failed" => "ייבוא פריט הצליח עם מספר שגיאות:", + "csv_import_success" => "ייבוא הפריט הצליח.", + "current_quantity" => "כמות נוכחית", + "default_pack_name" => "כל", + "description" => "תיאור", + "details_count" => "פרטים על ספירת מלאי", + "do_nothing" => "לא לעשות שום דבר", + "edit" => "", + "edit_fields_you_want_to_update" => "ערוך את השדות הרצויים לפריטים שנבחרו.", + "edit_multiple_items" => "עריכת פריטים מרובים", + "empty_upc_items" => "הסר ברקוד לפריטים", + "error_adding_updating" => "שגיאה בהוספה / עדכון של פריט", + "error_updating_multiple" => "שגיאה בעדכון פריטים", + "generate_barcodes" => "צור ברקודים", + "hsn_code" => "מערכת מינוח מתואמת", + "image" => "אווטר", + "import_items_csv" => "ייבוא פריט מאקסל", + "info_provided_by" => "מידע סופק על ידי", + "inventory" => "מלאי", + "inventory_CSV_import_quantity" => "", + "inventory_comments" => "הערות", + "inventory_data_tracking" => "מעקב אחר נתוני מלאי", + "inventory_date" => "תאריך", + "inventory_employee" => "עובד", + "inventory_in_out_quantity" => "הכנס\הוצא כמות", + "inventory_remarks" => "הערות", + "is_deleted" => "נמחק", + "is_printed" => "", + "is_serialized" => "לפריט יש מספר סידורי", + "item" => "פריט", + "item_id" => "", + "item_number" => "ברקוד", + "item_number_duplicate" => "מספר הפריט כבר נמצא במסד הנתונים.", + "kit" => "ערכה", + "location" => "מיקום", + "low_inventory_items" => "פריטים מחוץ למלאי", + "low_sell_item" => "פריט במכירה זולה", + "manually_editing_of_quantity" => "עריכה ידנית של כמות", + "markup" => "", + "name" => "שם פריט", + "name_required" => "שם הפריט הינו שדה חובה.", + "new" => "פריט חדש", + "no_description_items" => "אין תיאור לפריטים", + "no_items_to_display" => "אין פריטים להצגה.", + "none" => "ריק", + "none_selected" => "לא בחרת פריט כלשהו לעריכה", + "nonstock" => "לא במלאי", + "number_information" => "מספר פריט", + "number_required" => "ברקוד הינו שדה חובה.", + "one_or_multiple" => "פריט(ים)", + "pack_name" => "שם החבילה", + "qty_per_pack" => "כמות לחבילה", + "quantity" => "כמות", + "quantity_number" => "שדה הכמות חייב להיות מספר.", + "quantity_required" => "הכמות היא שדה חובה.", + "receiving_quantity" => "קבלת כמות", + "remove_image" => "הסר תמונה", + "reorder_level" => "כמות מינימום להזמנה חדשה", + "reorder_level_number" => "שדה כמות מינימום להזמנה חדשה חייב להיות מספר.", + "reorder_level_required" => "כמות מינימום להזמנה חדשה הינו שדה חובה.", + "retrive_item_info" => "אחזר פרטי פריט", + "sales_tax_1" => "מס מכירה", + "sales_tax_2" => "מס מכירה 2", + "search_attributes" => "חיפוש במאפיינים", + "select_image" => "בחר תמונה", + "serialized_items" => "סדר פריטים", + "standard" => "רגיל", + "stock" => "במלאי", + "stock_location" => "מיקום המלאי", + "stock_type" => "סוג המלאי", + "successful_adding" => "הוספת בהצלחה פריט", + "successful_bulk_edit" => "עדכנת בהצלחה את הפריטים שנבחרו", + "successful_deleted" => "נמחק בהצלחה", + "successful_updating" => "עדכנת בהצלחה את הפריט", + "supplier" => "ספק", + "tax_1" => "מס 1", + "tax_2" => "מס 2", + "tax_3" => "", + "tax_category" => "קטגוריה מס", + "tax_percent" => "", + "tax_percent_number" => "אחוז המס חייב להיות ערך מספרי", + "tax_percent_required" => "אחוז המס הינו שדה חובה.", + "tax_percents" => "אחוזי מס", + "temp" => "זמני", + "type" => "סוג פריט", + "unit_price" => "מחיר קמעונאי", + "unit_price_number" => "מחיר היחידה חייב להיות מספר.", + "unit_price_required" => "מחיר קמעונאי הינו שדה חובה.", + "upc_database" => "מסד נתונים של הברקוד", + "update" => "עדכן פריט", + "use_inventory_menu" => "השתמש בתפריט מלאי", ]; diff --git a/app/Language/he/Login.php b/app/Language/he/Login.php index f41d20dad..d4e7cd3aa 100644 --- a/app/Language/he/Login.php +++ b/app/Language/he/Login.php @@ -1,15 +1,15 @@ "אני לא רובוט.", - "go" => "שלח", - "invalid_gcaptcha" => "שגיאת אימות.", - "invalid_installation" => "ההתקנה אינה נכונה, בדוק את קובץ php.ini.", - "invalid_username_and_password" => "שם משתמש או סיסמה לא נכונים.", - "login" => "כניסה", - "logout" => "", - "migration_needed" => "", - "password" => "סיסמה", - "required_username" => "", - "username" => "שם משתמש", - "welcome" => "", + "gcaptcha" => "אני לא רובוט.", + "go" => "שלח", + "invalid_gcaptcha" => "שגיאת אימות.", + "invalid_installation" => "ההתקנה אינה נכונה, בדוק את קובץ php.ini.", + "invalid_username_and_password" => "שם משתמש או סיסמה לא נכונים.", + "login" => "כניסה", + "logout" => "", + "migration_needed" => "", + "password" => "סיסמה", + "required_username" => "", + "username" => "שם משתמש", + "welcome" => "", ]; diff --git a/app/Language/he/Messages.php b/app/Language/he/Messages.php index 152784413..722302800 100644 --- a/app/Language/he/Messages.php +++ b/app/Language/he/Messages.php @@ -1,15 +1,15 @@ "שם פרטי", - "last_name" => "שם משפחה", - "message" => "הודעה", - "message_placeholder" => "ההודעה שלך כאן...", - "message_required" => "רישום הודעה נדרש", - "multiple_phones" => "(במקרה של מספר נמענים, הזן מספרי טלפון המופרדים באמצעות פסיקים)", - "phone" => "מספר טלפון", - "phone_number_required" => "מספר טלפון נדרש", - "phone_placeholder" => "מספר נייד כאן ...", - "sms_send" => "שלח הודעת טקסט", - "successfully_sent" => "ההודעה נשלחה בהצלחה אל: ", - "unsuccessfully_sent" => "שגיאה בשליחת הודעה אל: ", + "first_name" => "שם פרטי", + "last_name" => "שם משפחה", + "message" => "הודעה", + "message_placeholder" => "ההודעה שלך כאן...", + "message_required" => "רישום הודעה נדרש", + "multiple_phones" => "(במקרה של מספר נמענים, הזן מספרי טלפון המופרדים באמצעות פסיקים)", + "phone" => "מספר טלפון", + "phone_number_required" => "מספר טלפון נדרש", + "phone_placeholder" => "מספר נייד כאן ...", + "sms_send" => "שלח הודעת טקסט", + "successfully_sent" => "ההודעה נשלחה בהצלחה אל: ", + "unsuccessfully_sent" => "שגיאה בשליחת הודעה אל: ", ]; diff --git a/app/Language/he/Module.php b/app/Language/he/Module.php index eafb5c3a4..0c75c968d 100644 --- a/app/Language/he/Module.php +++ b/app/Language/he/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "תכונות", - "attributes_desc" => "הוסף, עדכן, מחק וחפש תכונות.", - "both" => "שניהם", - "cashups" => "סגירת קופת מזומנים", - "cashups_desc" => "הוספה, עדכון, מחיקה וחיפוש בקופת מזומן.", - "config" => "הגדרות", - "config_desc" => "שנה הגדרות OSPOS's .", - "customers" => "לקוחות", - "customers_desc" => "הוספה, עדכון, מחיקה וחיפוש לקוחות.", - "employees" => "עובדים", - "employees_desc" => "הוספה, עדכון, מחיקה וחיפוש עובדים.", - "expenses" => "הוצאות", - "expenses_categories" => "קטגוריות הוצאה", - "expenses_categories_desc" => "הוסף, עדכן ומחיקת קטגורית הוצאות.", - "expenses_desc" => "הוסף, עדכן, מחק וחיפוש בהוצאות.", - "giftcards" => "כרטיסי מתנה", - "giftcards_desc" => "הוספה, עדכון, מחיקה וחיפוש של כרטיסי מתנה.", - "home" => "בית", - "home_desc" => "רשימת תפריטי מודל הבית.", - "item_kits" => "ערכות פריט", - "item_kits_desc" => "הוספה, עדכון, מחיקה וחיפוש בערכת פריטים.", - "items" => "פריטים", - "items_desc" => "הוספה, עדכון, מחיקה וחיפוש בפריטים.", - "messages" => "הודעות", - "messages_desc" => "שלח הודעות ללקוחות, ספקים ועובדים.", - "migrate" => "העברה", - "migrate_desc" => "עדכון מסד הנתונים של OSPOS.", - "office" => "משרד", - "office_desc" => "רשימת תפריטי מודל המשרד.", - "receivings" => "קליטה \ החזרה", - "receivings_desc" => "תהליך רכישת הזמנות.", - "reports" => "דוחות", - "reports_desc" => "הצג וצור דוחות.", - "sales" => "מכירות", - "sales_desc" => "תהליך מכירות והחזרות.", - "suppliers" => "ספקים", - "suppliers_desc" => "הוספה, עדכון, מחיקה וחיפוש ספקים.", - "taxes" => "מסים", - "taxes_desc" => "הגדרת מס מכירות.", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "תכונות", + "attributes_desc" => "הוסף, עדכן, מחק וחפש תכונות.", + "both" => "שניהם", + "cashups" => "סגירת קופת מזומנים", + "cashups_desc" => "הוספה, עדכון, מחיקה וחיפוש בקופת מזומן.", + "config" => "הגדרות", + "config_desc" => "שנה הגדרות OSPOS's .", + "customers" => "לקוחות", + "customers_desc" => "הוספה, עדכון, מחיקה וחיפוש לקוחות.", + "employees" => "עובדים", + "employees_desc" => "הוספה, עדכון, מחיקה וחיפוש עובדים.", + "expenses" => "הוצאות", + "expenses_categories" => "קטגוריות הוצאה", + "expenses_categories_desc" => "הוסף, עדכן ומחיקת קטגורית הוצאות.", + "expenses_desc" => "הוסף, עדכן, מחק וחיפוש בהוצאות.", + "giftcards" => "כרטיסי מתנה", + "giftcards_desc" => "הוספה, עדכון, מחיקה וחיפוש של כרטיסי מתנה.", + "home" => "בית", + "home_desc" => "רשימת תפריטי מודל הבית.", + "item_kits" => "ערכות פריט", + "item_kits_desc" => "הוספה, עדכון, מחיקה וחיפוש בערכת פריטים.", + "items" => "פריטים", + "items_desc" => "הוספה, עדכון, מחיקה וחיפוש בפריטים.", + "messages" => "הודעות", + "messages_desc" => "שלח הודעות ללקוחות, ספקים ועובדים.", + "migrate" => "העברה", + "migrate_desc" => "עדכון מסד הנתונים של OSPOS.", + "office" => "משרד", + "office_desc" => "רשימת תפריטי מודל המשרד.", + "receivings" => "קליטה \ החזרה", + "receivings_desc" => "תהליך רכישת הזמנות.", + "reports" => "דוחות", + "reports_desc" => "הצג וצור דוחות.", + "sales" => "מכירות", + "sales_desc" => "תהליך מכירות והחזרות.", + "suppliers" => "ספקים", + "suppliers_desc" => "הוספה, עדכון, מחיקה וחיפוש ספקים.", + "taxes" => "מסים", + "taxes_desc" => "הגדרת מס מכירות.", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/he/Receivings.php b/app/Language/he/Receivings.php index 70d958fcf..c3240aeb8 100644 --- a/app/Language/he/Receivings.php +++ b/app/Language/he/Receivings.php @@ -1,58 +1,58 @@ "", - "cancel_receiving" => "בטל", - "cannot_be_deleted" => "מחיקת החזרה(ות) נכשלה.", - "comments" => "הערות", - "complete_receiving" => "סיים", - "confirm_cancel_receiving" => "האם אתה בטוח שברצונך לנקות את החזרה זו? כל הפריטים יימחקו.", - "confirm_delete" => "האם אתה בטוח שברצונך למחוק את החזרה זו? לא ניתן לבטל פעולה זו.", - "confirm_finish_receiving" => "האם אתה בטוח שברצונך לשלוח את החזרה זו? לא ניתן לבטל פעולה זו.", - "confirm_restore" => "", - "cost" => "עלות", - "daily" => "", - "date" => "תאריך קבלה", - "date_required" => "יש להזין תאריך נכון.", - "date_type" => "תאריך הוא שדה חובה.", - "delete_entire_sale" => "מחק את כל המכירה", - "discount" => "הנחה", - "edit" => "ערוך", - "edit_sale" => "ערוך החזרה", - "employee" => "עובד", - "error_editing_item" => "עריכת פריט נכשלה.", - "error_requisition" => "לא ניתן להעביר מלאי מ- או אל אותו מיקום מלאי.", - "find_or_scan_item" => "חיפוש או סריקה של פריט", - "find_or_scan_item_or_receipt" => "חיפוש או סריקה של פריט או קבלה", - "id" => "מזהה החזרה", - "item_name" => "שם פריט", - "mode" => "סוג החזרה", - "new_supplier" => "ספק חדש", - "one_or_multiple" => "החזרה(ות)", - "print_after_sale" => "הדפס לאחר מכירה", - "quantity" => "כמות.", - "receipt" => "קבלת החזרה", - "receipt_number" => "החזרה #", - "receiving" => "הוחזר", - "reference" => "הפניה", - "register" => "פריטים שהוחזרו", - "requisition" => "הזמנה", - "return" => "החזרה", - "select_supplier" => "בחר ספק (אופציונלי)", - "ship_pack" => "חבילת משלוח", - "start_typing_supplier_name" => "התחל להקליד את שם הספק ...", - "stock" => "מלאי", - "stock_destination" => "יעד מלאי", - "stock_locaiton" => "מיקום מלאי", - "stock_source" => "מקור מלאי", - "successfully_deleted" => "נמחק בהצלחה", - "successfully_updated" => "החזרה עודכנה בהצלחה", - "supplier" => "ספק", - "supplier_address" => "כתובת", - "supplier_email" => "אימייל", - "supplier_location" => "מיקום", - "total" => "סהכ", - "transaction_failed" => "פעולת ההחזרה(ות) נכשלה.", - "unable_to_add_item" => "הוספת פריט להחזרה נכשל.", - "unsuccessfully_updated" => "עדכון החזרה נכשל.", - "update" => "עדכן", + "amount_due" => "", + "cancel_receiving" => "בטל", + "cannot_be_deleted" => "מחיקת החזרה(ות) נכשלה.", + "comments" => "הערות", + "complete_receiving" => "סיים", + "confirm_cancel_receiving" => "האם אתה בטוח שברצונך לנקות את החזרה זו? כל הפריטים יימחקו.", + "confirm_delete" => "האם אתה בטוח שברצונך למחוק את החזרה זו? לא ניתן לבטל פעולה זו.", + "confirm_finish_receiving" => "האם אתה בטוח שברצונך לשלוח את החזרה זו? לא ניתן לבטל פעולה זו.", + "confirm_restore" => "", + "cost" => "עלות", + "daily" => "", + "date" => "תאריך קבלה", + "date_required" => "יש להזין תאריך נכון.", + "date_type" => "תאריך הוא שדה חובה.", + "delete_entire_sale" => "מחק את כל המכירה", + "discount" => "הנחה", + "edit" => "ערוך", + "edit_sale" => "ערוך החזרה", + "employee" => "עובד", + "error_editing_item" => "עריכת פריט נכשלה.", + "error_requisition" => "לא ניתן להעביר מלאי מ- או אל אותו מיקום מלאי.", + "find_or_scan_item" => "חיפוש או סריקה של פריט", + "find_or_scan_item_or_receipt" => "חיפוש או סריקה של פריט או קבלה", + "id" => "מזהה החזרה", + "item_name" => "שם פריט", + "mode" => "סוג החזרה", + "new_supplier" => "ספק חדש", + "one_or_multiple" => "החזרה(ות)", + "print_after_sale" => "הדפס לאחר מכירה", + "quantity" => "כמות.", + "receipt" => "קבלת החזרה", + "receipt_number" => "החזרה #", + "receiving" => "הוחזר", + "reference" => "הפניה", + "register" => "פריטים שהוחזרו", + "requisition" => "הזמנה", + "return" => "החזרה", + "select_supplier" => "בחר ספק (אופציונלי)", + "ship_pack" => "חבילת משלוח", + "start_typing_supplier_name" => "התחל להקליד את שם הספק ...", + "stock" => "מלאי", + "stock_destination" => "יעד מלאי", + "stock_locaiton" => "מיקום מלאי", + "stock_source" => "מקור מלאי", + "successfully_deleted" => "נמחק בהצלחה", + "successfully_updated" => "החזרה עודכנה בהצלחה", + "supplier" => "ספק", + "supplier_address" => "כתובת", + "supplier_email" => "אימייל", + "supplier_location" => "מיקום", + "total" => "סהכ", + "transaction_failed" => "פעולת ההחזרה(ות) נכשלה.", + "unable_to_add_item" => "הוספת פריט להחזרה נכשל.", + "unsuccessfully_updated" => "עדכון החזרה נכשל.", + "update" => "עדכן", ]; diff --git a/app/Language/he/Reports.php b/app/Language/he/Reports.php index 2ed6677da..0cf3bfe14 100644 --- a/app/Language/he/Reports.php +++ b/app/Language/he/Reports.php @@ -1,148 +1,148 @@ "הכול", - "authority" => "הרשאות", - "canceled" => "מבוטל", - "categories" => "קטגוריות", - "categories_summary_report" => "דוח סיכום קטגוריות", - "category" => "קטגוריה", - "code_canceled" => "שפה טבעית מבוקרת (CNL)", - "code_invoice" => "חשבונית", - "code_pos" => "נקודת מכירה (POS)", - "code_quote" => "Q (הצעת מחיר)", - "code_return" => "החזרה", - "code_type" => "סוג", - "code_work_order" => "הזמנת עבודה", - "comments" => "הערות", - "commission" => "", - "complete" => "מכירות והחזרות הושלמו", - "completed_sales" => "מכירות הושלמו", - "confirm_delete" => "האם אתה בטוח שברצונך למחוק רשומות שנבחרו?", - "confirm_restore" => "האם אתה בטוח שברצונך לשחזר רשומות שנבחרו?", - "cost" => "סיטונאי", - "cost_price" => "מחיר סיטונאי", - "count" => "ספירה", - "customer" => "לקוח", - "customers" => "לקוחות", - "customers_summary_report" => "דוח סיכום לקוחות", - "date" => "תאריך", - "date_range" => "טווח תאריכים", - "description" => "תיאור", - "detailed_receivings_report" => "דוח מפורט של תקבולים", - "detailed_receivings_report_input" => "", - "detailed_reports" => "דוחות מפורטים", - "detailed_requisition_report" => "", - "detailed_sales_report" => "דוח עסקאות מפורט", - "discount" => "הנחה", - "discount_fixed" => "הנחה קבועה", - "discount_percent" => "אחוז הנחה", - "discount_type" => "סוג הנחה", - "discounts" => "הנחות", - "discounts_summary_report" => "דוח סיכום הנחות", - "earned" => "נקודות שהורווחו", - "employee" => "עובד", - "employees" => "עובדים", - "employees_summary_report" => "דוח סיכום של העובדים", - "expenses" => "הוצאות", - "expenses_amount" => "סכום", - "expenses_categories" => "הוצאות", - "expenses_categories_summary_report" => "דוח סיכום של קטגורית הוצאות", - "expenses_category" => "קטגוריה", - "expenses_payment_amount" => "", - "expenses_tax_amount" => "מס", - "expenses_total_amount" => "סהכ סכום", - "expenses_total_tax_amount" => "סהכ מס", - "graphical_reports" => "דוחות גרפיים", - "inventory" => "מלאי", - "inventory_low" => "מלאי נמוך", - "inventory_low_report" => "דוח מלאי נמוך", - "inventory_reports" => "דוחות מלאי", - "inventory_summary" => "סיכום מלאי", - "inventory_summary_report" => "דוח סיכום מלאי", - "item" => "פריט", - "item_count" => "סנן פריט לפי ספירה", - "item_name" => "שם פריט", - "item_number" => "ברקוד", - "items" => "פריטים", - "items_purchased" => "פריטים שנרכשו", - "items_received" => "פריטים שהתקבלו", - "items_summary_report" => "דוח סיכום פריטים", - "jurisdiction" => "תחום שיפוט", - "low_inventory" => "", - "low_inventory_report" => "", - "low_sell_quantity" => "מינימום כמות למכירה", - "more_than_zero" => "יותר מאפס", - "name" => "שם", - "no_reports_to_display" => "אין פריטים להצגה.", - "payment_type" => "סוג תשלום", - "payments" => "תשלומים", - "payments_summary_report" => "דוח סיכום תשלומים", - "profit" => "רווח", - "quantity" => "כמות", - "quantity_purchased" => "כמות שנרכשה", - "quotes" => "הצעות מחיר", - "received_by" => "התקבל על ידי", - "receiving_id" => "מזהה תקבול", - "receiving_type" => "סוג תקבול", - "receivings" => "תקבולים החזרות", - "reorder_level" => "כמות מינימום להזמנה", - "report" => "דוח", - "report_input" => "קלט דווח", - "reports" => "דוחות", - "requisition" => "", - "requisition_by" => "", - "requisition_id" => "", - "requisition_item" => "", - "requisition_item_quantity" => "", - "requisition_related_item" => "", - "requisition_related_item_total_quantity" => "", - "requisition_related_item_unit_quantity" => "", - "requisitions" => "דרישות", - "returns" => "החזרות", - "revenue" => "הכנסות", - "sale_id" => "מזהה עסקה", - "sale_type" => "סוג עסקה", - "sales" => "עסקאות", - "sales_amount" => "סכום העסקאות", - "sales_summary_report" => "דוח סיכום עסקאות", - "sales_taxes" => "מיסי מכירות", - "sales_taxes_summary_report" => "דוח סיכום מס על מכירות", - "serial_number" => "מספר סידורי", - "service_charge" => "", - "sold_by" => "נמכר על ידי", - "sold_items" => "", - "sold_to" => "נמכר ל", - "stock_location" => "מיקום מלאי", - "sub_total_value" => "סהכ", - "subtotal" => "סהכ", - "summary_reports" => "סיכום דוחות", - "supplied_by" => "מסופק על ידי", - "supplier" => "ספק", - "suppliers" => "ספקים", - "suppliers_summary_report" => "דוח סיכום הספקים", - "tax" => "מס", - "tax_category" => "קטגוריית מס", - "tax_name" => "", - "tax_percent" => "אחוז מס", - "tax_rate" => "שיעור מס", - "taxes" => "מסים", - "taxes_summary_report" => "דוח סיכום מסים", - "total" => "סהכ", - "total_inventory_value" => "סהכ ערך מלאי", - "total_low_sell_quantity" => "סהכ מינימום כמות למכירה", - "total_quantity" => "סהכ כמות", - "total_retail" => "סך הכל חשבונית. ערך קמעונאי", - "trans_amount" => "סכום העסקה", - "trans_due" => "צפוי", - "trans_group" => "קבוצת עסקאות", - "trans_nopay_sales" => "מכירות ללא תשלום", - "trans_payments" => "תשלומים", - "trans_refunded" => "החזר כספי", - "trans_sales" => "מכירות", - "trans_type" => "סוג עסקה", - "type" => "סוג", - "unit_price" => "מחיר קמעונאי", - "used" => "נקודות שהשתמשו", - "work_orders" => "הזמנות עבודה", - "zero_and_less" => "אפס ומתחת", + "all" => "הכול", + "authority" => "הרשאות", + "canceled" => "מבוטל", + "categories" => "קטגוריות", + "categories_summary_report" => "דוח סיכום קטגוריות", + "category" => "קטגוריה", + "code_canceled" => "שפה טבעית מבוקרת (CNL)", + "code_invoice" => "חשבונית", + "code_pos" => "נקודת מכירה (POS)", + "code_quote" => "Q (הצעת מחיר)", + "code_return" => "החזרה", + "code_type" => "סוג", + "code_work_order" => "הזמנת עבודה", + "comments" => "הערות", + "commission" => "", + "complete" => "מכירות והחזרות הושלמו", + "completed_sales" => "מכירות הושלמו", + "confirm_delete" => "האם אתה בטוח שברצונך למחוק רשומות שנבחרו?", + "confirm_restore" => "האם אתה בטוח שברצונך לשחזר רשומות שנבחרו?", + "cost" => "סיטונאי", + "cost_price" => "מחיר סיטונאי", + "count" => "ספירה", + "customer" => "לקוח", + "customers" => "לקוחות", + "customers_summary_report" => "דוח סיכום לקוחות", + "date" => "תאריך", + "date_range" => "טווח תאריכים", + "description" => "תיאור", + "detailed_receivings_report" => "דוח מפורט של תקבולים", + "detailed_receivings_report_input" => "", + "detailed_reports" => "דוחות מפורטים", + "detailed_requisition_report" => "", + "detailed_sales_report" => "דוח עסקאות מפורט", + "discount" => "הנחה", + "discount_fixed" => "הנחה קבועה", + "discount_percent" => "אחוז הנחה", + "discount_type" => "סוג הנחה", + "discounts" => "הנחות", + "discounts_summary_report" => "דוח סיכום הנחות", + "earned" => "נקודות שהורווחו", + "employee" => "עובד", + "employees" => "עובדים", + "employees_summary_report" => "דוח סיכום של העובדים", + "expenses" => "הוצאות", + "expenses_amount" => "סכום", + "expenses_categories" => "הוצאות", + "expenses_categories_summary_report" => "דוח סיכום של קטגורית הוצאות", + "expenses_category" => "קטגוריה", + "expenses_payment_amount" => "", + "expenses_tax_amount" => "מס", + "expenses_total_amount" => "סהכ סכום", + "expenses_total_tax_amount" => "סהכ מס", + "graphical_reports" => "דוחות גרפיים", + "inventory" => "מלאי", + "inventory_low" => "מלאי נמוך", + "inventory_low_report" => "דוח מלאי נמוך", + "inventory_reports" => "דוחות מלאי", + "inventory_summary" => "סיכום מלאי", + "inventory_summary_report" => "דוח סיכום מלאי", + "item" => "פריט", + "item_count" => "סנן פריט לפי ספירה", + "item_name" => "שם פריט", + "item_number" => "ברקוד", + "items" => "פריטים", + "items_purchased" => "פריטים שנרכשו", + "items_received" => "פריטים שהתקבלו", + "items_summary_report" => "דוח סיכום פריטים", + "jurisdiction" => "תחום שיפוט", + "low_inventory" => "", + "low_inventory_report" => "", + "low_sell_quantity" => "מינימום כמות למכירה", + "more_than_zero" => "יותר מאפס", + "name" => "שם", + "no_reports_to_display" => "אין פריטים להצגה.", + "payment_type" => "סוג תשלום", + "payments" => "תשלומים", + "payments_summary_report" => "דוח סיכום תשלומים", + "profit" => "רווח", + "quantity" => "כמות", + "quantity_purchased" => "כמות שנרכשה", + "quotes" => "הצעות מחיר", + "received_by" => "התקבל על ידי", + "receiving_id" => "מזהה תקבול", + "receiving_type" => "סוג תקבול", + "receivings" => "תקבולים החזרות", + "reorder_level" => "כמות מינימום להזמנה", + "report" => "דוח", + "report_input" => "קלט דווח", + "reports" => "דוחות", + "requisition" => "", + "requisition_by" => "", + "requisition_id" => "", + "requisition_item" => "", + "requisition_item_quantity" => "", + "requisition_related_item" => "", + "requisition_related_item_total_quantity" => "", + "requisition_related_item_unit_quantity" => "", + "requisitions" => "דרישות", + "returns" => "החזרות", + "revenue" => "הכנסות", + "sale_id" => "מזהה עסקה", + "sale_type" => "סוג עסקה", + "sales" => "עסקאות", + "sales_amount" => "סכום העסקאות", + "sales_summary_report" => "דוח סיכום עסקאות", + "sales_taxes" => "מיסי מכירות", + "sales_taxes_summary_report" => "דוח סיכום מס על מכירות", + "serial_number" => "מספר סידורי", + "service_charge" => "", + "sold_by" => "נמכר על ידי", + "sold_items" => "", + "sold_to" => "נמכר ל", + "stock_location" => "מיקום מלאי", + "sub_total_value" => "סהכ", + "subtotal" => "סהכ", + "summary_reports" => "סיכום דוחות", + "supplied_by" => "מסופק על ידי", + "supplier" => "ספק", + "suppliers" => "ספקים", + "suppliers_summary_report" => "דוח סיכום הספקים", + "tax" => "מס", + "tax_category" => "קטגוריית מס", + "tax_name" => "", + "tax_percent" => "אחוז מס", + "tax_rate" => "שיעור מס", + "taxes" => "מסים", + "taxes_summary_report" => "דוח סיכום מסים", + "total" => "סהכ", + "total_inventory_value" => "סהכ ערך מלאי", + "total_low_sell_quantity" => "סהכ מינימום כמות למכירה", + "total_quantity" => "סהכ כמות", + "total_retail" => "סך הכל חשבונית. ערך קמעונאי", + "trans_amount" => "סכום העסקה", + "trans_due" => "צפוי", + "trans_group" => "קבוצת עסקאות", + "trans_nopay_sales" => "מכירות ללא תשלום", + "trans_payments" => "תשלומים", + "trans_refunded" => "החזר כספי", + "trans_sales" => "מכירות", + "trans_type" => "סוג עסקה", + "type" => "סוג", + "unit_price" => "מחיר קמעונאי", + "used" => "נקודות שהשתמשו", + "work_orders" => "הזמנות עבודה", + "zero_and_less" => "אפס ומתחת", ]; diff --git a/app/Language/he/Sales.php b/app/Language/he/Sales.php index b5b4c80b3..16233772f 100644 --- a/app/Language/he/Sales.php +++ b/app/Language/he/Sales.php @@ -1,224 +1,224 @@ "נקודות זמינות", - "rewards_package" => "פרסים", - "rewards_remaining_balance" => "נקודות הפרס הנותרות הן ", - "account_number" => "חשבון מס #", - "add_payment" => "הוסף תשלום", - "amount_due" => "סכום לתשלום", - "amount_tendered" => "סכום ההצעה", - "authorized_signature" => "חתימת מורשה", - "cancel_sale" => "בטל", - "cash" => "מזומן", - "cash_1" => "", - "cash_2" => "", - "cash_3" => "", - "cash_4" => "", - "cash_adjustment" => "", - "cash_deposit" => "הפקדת מזומן", - "cash_filter" => "מזומן", - "change_due" => "עודף לתשלום", - "change_price" => "", - "check" => "שק", - "check_balance" => "תזכורת שקים", - "check_filter" => "שק", - "close" => "", - "comment" => "הערה", - "comments" => "הערות", - "company_name" => "", - "complete" => "", - "complete_sale" => "הושלם", - "confirm_cancel_sale" => "האם אתה בטוח שברצונך למחוק את המכירה הזו? כל הפריטים יימחקו.", - "confirm_delete" => "האם אתה בטוח שברצונך למחוק את המכירות שנבחרו?", - "confirm_restore" => "האם אתה בטוח שברצונך לשחזר את המכירות שנבחרו?", - "credit" => "כרטיס אשראי", - "credit_deposit" => "הפקדת אשראי", - "credit_filter" => "", - "current_table" => "", - "customer" => "שם", - "customer_address" => "כתובת", - "customer_discount" => "הנחה", - "customer_email" => "אימייל", - "customer_location" => "מיקום", - "customer_mailchimp_status" => "מצב Mailchimp", - "customer_optional" => "נדרש עבור תשלומים עתידיים (אופציונאלי)", - "customer_required" => "(נדרש)", - "customer_total" => "סהכ", - "customer_total_spent" => "", - "daily_sales" => "", - "date" => "תאריך המכירה", - "date_range" => "טווח תאריכים", - "date_required" => "יש להזין תאריך נכון.", - "date_type" => "תאריך הוא שדה חובה.", - "debit" => "כרטיס חיוב מיידי", - "debit_filter" => "", - "delete" => "אפשר מחיקה", - "delete_confirmation" => "האם אתה בטוח שברצונך למחוק את המכירה הזו? לא ניתן לבטל פעולה זו.", - "delete_entire_sale" => "מחק את כל המכירה", - "delete_successful" => "המכירה נמחקה בהצלחה.", - "delete_unsuccessful" => "מחיקת המכירה נכשלה.", - "description_abbrv" => "תיאור.", - "discard" => "התעלם", - "discard_quote" => "", - "discount" => "תיאור", - "discount_included" => "% הנחה", - "discount_short" => "%", - "due" => "לתשלום", - "due_filter" => "צפוי לתשלום", - "edit" => "ערוך", - "edit_item" => "ערוך פריט", - "edit_sale" => "ערוך מכירה", - "email_receipt" => "נמען אימייל", - "employee" => "עובד", - "entry" => "ערך", - "error_editing_item" => "שגיאה בעריכת פריט", - "find_or_scan_item" => "חיפוש או סריקה של פריט", - "find_or_scan_item_or_receipt" => "חיפוש או סריקה של פריט או קבלה", - "giftcard" => "כרטיס מתנה", - "giftcard_balance" => "מאזן כרטיס מתנה", - "giftcard_filter" => "", - "giftcard_number" => "מספר כרטיס מתנה", - "group_by_category" => "קבוצה או קטגוריה", - "group_by_type" => "קבוצה לפי סוג", - "hsn" => "HSN", - "id" => "מזהה מכירה", - "include_prices" => "לכלול מחירים?", - "invoice" => "חשבונית", - "invoice_confirm" => "חשבונית זו תישלח אל", - "invoice_enable" => "צור חשבונית", - "invoice_filter" => "חשבוניות", - "invoice_no_email" => "ללקוח זה אין כתובת אימייל חוקית.", - "invoice_number" => "חשבונית #", - "invoice_number_duplicate" => "מספר החשבונית חייב להיות ייחודי.", - "invoice_sent" => "חשבונית נשלחה אל", - "invoice_total" => "סהכ חשבונית", - "invoice_type_custom_invoice" => "חשבונית מותאמת אישית (custom_invoice.php)", - "invoice_type_custom_tax_invoice" => "חשבונית מס מותאמת אישית (custom_tax_invoice.php)", - "invoice_type_invoice" => "חשבונית (invoice.php)", - "invoice_type_tax_invoice" => "חשבונית מס (tax_invoice.php)", - "invoice_unsent" => "החשבונית לא נשלחה אל", - "invoice_update" => "ספירה חוזרת", - "item_insufficient_of_stock" => "הפריט מכיל מלאי נמוך.", - "item_name" => "שם פריט", - "item_number" => "פריט #", - "item_out_of_stock" => "הפריט לא במלאי.", - "key_browser" => "", - "key_cancel" => "Cancels Current Quote/Invoice/Sale", - "key_customer_search" => "Customer Search", - "key_finish_quote" => "Finish Quote/Invoice witdout payment", - "key_finish_sale" => "Add Payment and Complete Invoice/Sale", - "key_full" => "", - "key_function" => "Function", - "key_help" => "Shortcuts", - "key_help_modal" => "Open Shortcuts Window", - "key_in" => "", - "key_item_search" => "Item Search", - "key_out" => "", - "key_payment" => "Add Payment", - "key_print" => "", - "key_restore" => "", - "key_search" => "", - "key_suspend" => "Suspend Current Sale", - "key_suspended" => "Show Suspended Sales", - "key_system" => "", - "key_tendered" => "Edit Amount Tendered", - "key_title" => "Sales Keyboard Shortcuts", - "mc" => "", - "mode" => "מצב הרשמה", - "must_enter_numeric" => "סכום ההצעה חייב להיות מספר.", - "must_enter_numeric_giftcard" => "מספר כרטיס המתנה חייב להיות מספר.", - "new_customer" => "לקוח חדש", - "new_item" => "פריט חדש", - "no_description" => "אין תיאור", - "no_filter" => "הכול", - "no_items_in_cart" => "אין פריטים בעגלה.", - "no_sales_to_display" => "אין מכירות להצגה.", - "none_selected" => "לא בחרת כל מכירה(ות) למחיקה.", - "nontaxed_ind" => "", - "not_authorized" => "פעולה זו אינה מורשית.", - "one_or_multiple" => "מכירה(ות)", - "payment" => "סוג תשלום", - "payment_amount" => "סכום", - "payment_not_cover_total" => "סכום התשלום חייב להיות גדול או שווה לסהכ.", - "payment_type" => "סוג", - "payments" => "", - "payments_total" => "סהכ תשלום", - "price" => "מחיר", - "print_after_sale" => "הדפס לאחר מכירה", - "quantity" => "כמות", - "quantity_less_than_reorder_level" => "אזהרה: כמות רצויה נמצאת מתחת לרמת ההזמנה עבור פריט זה.", - "quantity_less_than_zero" => "אזהרה: כמות מבוקשת אינה מספיקה. עדיין תוכל לעבד את המכירה, אך בדוק את המלאי שלך.", - "quantity_of_items" => "כמות של {0} פריטים", - "quote" => "הצעת מחיר", - "quote_number" => "מספר הצעת מחיר", - "quote_number_duplicate" => "מספר הצעת מחיר חייב להיות ייחודי.", - "quote_sent" => "הצעת המחיר נשלחה אל", - "quote_unsent" => "הצעת המחיר לא נשלחה אל", - "receipt" => "קבלה", - "receipt_no_email" => "ללקוח זה אין כתובת אימייל חוקית.", - "receipt_number" => "מכירה #", - "receipt_sent" => "קבלה נשלחה אל", - "receipt_unsent" => "קבלה לא נשלחה אל", - "refund" => "", - "register" => "קופת מכירות", - "remove_customer" => "הסר לקוח", - "remove_discount" => "", - "return" => "החזרה", - "rewards" => "נקודות פרס", - "rewards_balance" => "מאזן נקודות פרס", - "sale" => "מכירה", - "sale_by_invoice" => "מכירה לפי חשבונית", - "sale_for_customer" => "לקוח:", - "sale_time" => "זמן", - "sales_tax" => "מס מכירה", - "sales_total" => "", - "select_customer" => "בחר לקוח", - "send_invoice" => "שלח חשבונית", - "send_quote" => "שלח הצעת מחיר", - "send_receipt" => "שלח קבלה", - "send_work_order" => "שלח הזמנת עבודה", - "serial" => "מספר סידורי", - "service_charge" => "", - "show_due" => "", - "show_invoice" => "הצג חשבונית", - "show_receipt" => "הצג קבלה", - "start_typing_customer_name" => "התחל להקליד פרטי לקוח ...", - "start_typing_item_name" => "התחל להקליד שם פריט או סרוק ברקוד ...", - "stock" => "מלאי", - "stock_location" => "מיקום מלאי", - "sub_total" => "סהכ", - "successfully_deleted" => "נמחק בהצלחה", - "successfully_restored" => "שוחזר בהצלחה", - "successfully_suspended_sale" => "מכירה הושהתה בהצלחה.", - "successfully_updated" => "מכירה עודכנה בהצלחה.", - "suspend_sale" => "השהה", - "suspended_doc_id" => "מסמך", - "suspended_sale_id" => "מזהה", - "suspended_sales" => "הושהו", - "table" => "טבלה", - "takings" => "מכירות יומיות", - "tax" => "מס", - "tax_id" => "מזהה מס", - "tax_invoice" => "חשבונית מס", - "tax_percent" => "מס %", - "taxed_ind" => "", - "total" => "סהכ", - "total_tax_exclusive" => "לא כולל מס", - "transaction_failed" => "עסקת המכירה נכשלה.", - "unable_to_add_item" => "הוספת פריט למכירה נכשל", - "unsuccessfully_deleted" => "מחיקת מכירה(ות) נכשלה.", - "unsuccessfully_restored" => "שחזור מכירה(ות) נכשלה.", - "unsuccessfully_suspended_sale" => "השהיית מכירה(ות) נכשלה.", - "unsuccessfully_updated" => "עדכון מכירה נכשל.", - "unsuspend" => "בטל השהייה", - "unsuspend_and_delete" => "פעולה", - "update" => "עדכן", - "upi" => "UPI", - "visa" => "", - "wholesale" => "", - "work_order" => "הזמנת עבודה", - "work_order_number" => "מספר הזמנת עבודה", - "work_order_number_duplicate" => "מספר הזמנת עבודה חייב להיות ייחודי.", - "work_order_sent" => "הזמנת עבודה נשלחה אל", - "work_order_unsent" => "הזמנת עבודה לא נשלחה אל", + "customers_available_points" => "נקודות זמינות", + "rewards_package" => "פרסים", + "rewards_remaining_balance" => "נקודות הפרס הנותרות הן ", + "account_number" => "חשבון מס #", + "add_payment" => "הוסף תשלום", + "amount_due" => "סכום לתשלום", + "amount_tendered" => "סכום ההצעה", + "authorized_signature" => "חתימת מורשה", + "cancel_sale" => "בטל", + "cash" => "מזומן", + "cash_1" => "", + "cash_2" => "", + "cash_3" => "", + "cash_4" => "", + "cash_adjustment" => "", + "cash_deposit" => "הפקדת מזומן", + "cash_filter" => "מזומן", + "change_due" => "עודף לתשלום", + "change_price" => "", + "check" => "שק", + "check_balance" => "תזכורת שקים", + "check_filter" => "שק", + "close" => "", + "comment" => "הערה", + "comments" => "הערות", + "company_name" => "", + "complete" => "", + "complete_sale" => "הושלם", + "confirm_cancel_sale" => "האם אתה בטוח שברצונך למחוק את המכירה הזו? כל הפריטים יימחקו.", + "confirm_delete" => "האם אתה בטוח שברצונך למחוק את המכירות שנבחרו?", + "confirm_restore" => "האם אתה בטוח שברצונך לשחזר את המכירות שנבחרו?", + "credit" => "כרטיס אשראי", + "credit_deposit" => "הפקדת אשראי", + "credit_filter" => "", + "current_table" => "", + "customer" => "שם", + "customer_address" => "כתובת", + "customer_discount" => "הנחה", + "customer_email" => "אימייל", + "customer_location" => "מיקום", + "customer_mailchimp_status" => "מצב Mailchimp", + "customer_optional" => "נדרש עבור תשלומים עתידיים (אופציונאלי)", + "customer_required" => "(נדרש)", + "customer_total" => "סהכ", + "customer_total_spent" => "", + "daily_sales" => "", + "date" => "תאריך המכירה", + "date_range" => "טווח תאריכים", + "date_required" => "יש להזין תאריך נכון.", + "date_type" => "תאריך הוא שדה חובה.", + "debit" => "כרטיס חיוב מיידי", + "debit_filter" => "", + "delete" => "אפשר מחיקה", + "delete_confirmation" => "האם אתה בטוח שברצונך למחוק את המכירה הזו? לא ניתן לבטל פעולה זו.", + "delete_entire_sale" => "מחק את כל המכירה", + "delete_successful" => "המכירה נמחקה בהצלחה.", + "delete_unsuccessful" => "מחיקת המכירה נכשלה.", + "description_abbrv" => "תיאור.", + "discard" => "התעלם", + "discard_quote" => "", + "discount" => "תיאור", + "discount_included" => "% הנחה", + "discount_short" => "%", + "due" => "לתשלום", + "due_filter" => "צפוי לתשלום", + "edit" => "ערוך", + "edit_item" => "ערוך פריט", + "edit_sale" => "ערוך מכירה", + "email_receipt" => "נמען אימייל", + "employee" => "עובד", + "entry" => "ערך", + "error_editing_item" => "שגיאה בעריכת פריט", + "find_or_scan_item" => "חיפוש או סריקה של פריט", + "find_or_scan_item_or_receipt" => "חיפוש או סריקה של פריט או קבלה", + "giftcard" => "כרטיס מתנה", + "giftcard_balance" => "מאזן כרטיס מתנה", + "giftcard_filter" => "", + "giftcard_number" => "מספר כרטיס מתנה", + "group_by_category" => "קבוצה או קטגוריה", + "group_by_type" => "קבוצה לפי סוג", + "hsn" => "HSN", + "id" => "מזהה מכירה", + "include_prices" => "לכלול מחירים?", + "invoice" => "חשבונית", + "invoice_confirm" => "חשבונית זו תישלח אל", + "invoice_enable" => "צור חשבונית", + "invoice_filter" => "חשבוניות", + "invoice_no_email" => "ללקוח זה אין כתובת אימייל חוקית.", + "invoice_number" => "חשבונית #", + "invoice_number_duplicate" => "מספר החשבונית חייב להיות ייחודי.", + "invoice_sent" => "חשבונית נשלחה אל", + "invoice_total" => "סהכ חשבונית", + "invoice_type_custom_invoice" => "חשבונית מותאמת אישית (custom_invoice.php)", + "invoice_type_custom_tax_invoice" => "חשבונית מס מותאמת אישית (custom_tax_invoice.php)", + "invoice_type_invoice" => "חשבונית (invoice.php)", + "invoice_type_tax_invoice" => "חשבונית מס (tax_invoice.php)", + "invoice_unsent" => "החשבונית לא נשלחה אל", + "invoice_update" => "ספירה חוזרת", + "item_insufficient_of_stock" => "הפריט מכיל מלאי נמוך.", + "item_name" => "שם פריט", + "item_number" => "פריט #", + "item_out_of_stock" => "הפריט לא במלאי.", + "key_browser" => "", + "key_cancel" => "Cancels Current Quote/Invoice/Sale", + "key_customer_search" => "Customer Search", + "key_finish_quote" => "Finish Quote/Invoice witdout payment", + "key_finish_sale" => "Add Payment and Complete Invoice/Sale", + "key_full" => "", + "key_function" => "Function", + "key_help" => "Shortcuts", + "key_help_modal" => "Open Shortcuts Window", + "key_in" => "", + "key_item_search" => "Item Search", + "key_out" => "", + "key_payment" => "Add Payment", + "key_print" => "", + "key_restore" => "", + "key_search" => "", + "key_suspend" => "Suspend Current Sale", + "key_suspended" => "Show Suspended Sales", + "key_system" => "", + "key_tendered" => "Edit Amount Tendered", + "key_title" => "Sales Keyboard Shortcuts", + "mc" => "", + "mode" => "מצב הרשמה", + "must_enter_numeric" => "סכום ההצעה חייב להיות מספר.", + "must_enter_numeric_giftcard" => "מספר כרטיס המתנה חייב להיות מספר.", + "new_customer" => "לקוח חדש", + "new_item" => "פריט חדש", + "no_description" => "אין תיאור", + "no_filter" => "הכול", + "no_items_in_cart" => "אין פריטים בעגלה.", + "no_sales_to_display" => "אין מכירות להצגה.", + "none_selected" => "לא בחרת כל מכירה(ות) למחיקה.", + "nontaxed_ind" => "", + "not_authorized" => "פעולה זו אינה מורשית.", + "one_or_multiple" => "מכירה(ות)", + "payment" => "סוג תשלום", + "payment_amount" => "סכום", + "payment_not_cover_total" => "סכום התשלום חייב להיות גדול או שווה לסהכ.", + "payment_type" => "סוג", + "payments" => "", + "payments_total" => "סהכ תשלום", + "price" => "מחיר", + "print_after_sale" => "הדפס לאחר מכירה", + "quantity" => "כמות", + "quantity_less_than_reorder_level" => "אזהרה: כמות רצויה נמצאת מתחת לרמת ההזמנה עבור פריט זה.", + "quantity_less_than_zero" => "אזהרה: כמות מבוקשת אינה מספיקה. עדיין תוכל לעבד את המכירה, אך בדוק את המלאי שלך.", + "quantity_of_items" => "כמות של {0} פריטים", + "quote" => "הצעת מחיר", + "quote_number" => "מספר הצעת מחיר", + "quote_number_duplicate" => "מספר הצעת מחיר חייב להיות ייחודי.", + "quote_sent" => "הצעת המחיר נשלחה אל", + "quote_unsent" => "הצעת המחיר לא נשלחה אל", + "receipt" => "קבלה", + "receipt_no_email" => "ללקוח זה אין כתובת אימייל חוקית.", + "receipt_number" => "מכירה #", + "receipt_sent" => "קבלה נשלחה אל", + "receipt_unsent" => "קבלה לא נשלחה אל", + "refund" => "", + "register" => "קופת מכירות", + "remove_customer" => "הסר לקוח", + "remove_discount" => "", + "return" => "החזרה", + "rewards" => "נקודות פרס", + "rewards_balance" => "מאזן נקודות פרס", + "sale" => "מכירה", + "sale_by_invoice" => "מכירה לפי חשבונית", + "sale_for_customer" => "לקוח:", + "sale_time" => "זמן", + "sales_tax" => "מס מכירה", + "sales_total" => "", + "select_customer" => "בחר לקוח", + "send_invoice" => "שלח חשבונית", + "send_quote" => "שלח הצעת מחיר", + "send_receipt" => "שלח קבלה", + "send_work_order" => "שלח הזמנת עבודה", + "serial" => "מספר סידורי", + "service_charge" => "", + "show_due" => "", + "show_invoice" => "הצג חשבונית", + "show_receipt" => "הצג קבלה", + "start_typing_customer_name" => "התחל להקליד פרטי לקוח ...", + "start_typing_item_name" => "התחל להקליד שם פריט או סרוק ברקוד ...", + "stock" => "מלאי", + "stock_location" => "מיקום מלאי", + "sub_total" => "סהכ", + "successfully_deleted" => "נמחק בהצלחה", + "successfully_restored" => "שוחזר בהצלחה", + "successfully_suspended_sale" => "מכירה הושהתה בהצלחה.", + "successfully_updated" => "מכירה עודכנה בהצלחה.", + "suspend_sale" => "השהה", + "suspended_doc_id" => "מסמך", + "suspended_sale_id" => "מזהה", + "suspended_sales" => "הושהו", + "table" => "טבלה", + "takings" => "מכירות יומיות", + "tax" => "מס", + "tax_id" => "מזהה מס", + "tax_invoice" => "חשבונית מס", + "tax_percent" => "מס %", + "taxed_ind" => "", + "total" => "סהכ", + "total_tax_exclusive" => "לא כולל מס", + "transaction_failed" => "עסקת המכירה נכשלה.", + "unable_to_add_item" => "הוספת פריט למכירה נכשל", + "unsuccessfully_deleted" => "מחיקת מכירה(ות) נכשלה.", + "unsuccessfully_restored" => "שחזור מכירה(ות) נכשלה.", + "unsuccessfully_suspended_sale" => "השהיית מכירה(ות) נכשלה.", + "unsuccessfully_updated" => "עדכון מכירה נכשל.", + "unsuspend" => "בטל השהייה", + "unsuspend_and_delete" => "פעולה", + "update" => "עדכן", + "upi" => "UPI", + "visa" => "", + "wholesale" => "", + "work_order" => "הזמנת עבודה", + "work_order_number" => "מספר הזמנת עבודה", + "work_order_number_duplicate" => "מספר הזמנת עבודה חייב להיות ייחודי.", + "work_order_sent" => "הזמנת עבודה נשלחה אל", + "work_order_unsent" => "הזמנת עבודה לא נשלחה אל", ]; diff --git a/app/Language/he/Suppliers.php b/app/Language/he/Suppliers.php index 3e387fe27..369a2a582 100644 --- a/app/Language/he/Suppliers.php +++ b/app/Language/he/Suppliers.php @@ -1,24 +1,24 @@ "מספר חשבון", - "agency_name" => "שם הסוכנות", - "cannot_be_deleted" => "לא ניתן למחוק את הספקים שנבחרו. לאחד או יותר יש מכירות.", - "category" => "קטגוריה", - "company_name" => "שם חברה", - "company_name_required" => "שם חברה הינו שדה חובה.", - "confirm_delete" => "האם אתה בטוח שברצונך למחוק את הספקים שנבחרו?", - "confirm_restore" => "האם אתה בטוח שברצונך לשחזר את הספקים שנבחרו?", - "cost" => "עלות קניה ספק", - "error_adding_updating" => "עדכון הספק או ההוספה נכשלו.", - "goods" => "ספק מוצרים", - "new" => "ספק חדש", - "none_selected" => "לא בחרת ספק(ים) למחיקה.", - "one_or_multiple" => "ספק(ים)", - "successful_adding" => "הוספת בהצלחה את הספק", - "successful_deleted" => "נמחק בהצלחה", - "successful_updating" => "עדכנת בהצלחה את הספק", - "supplier" => "ספק", - "supplier_id" => "מזהה", - "tax_id" => "מזהה מס", - "update" => "עדכון הספק", + "account_number" => "מספר חשבון", + "agency_name" => "שם הסוכנות", + "cannot_be_deleted" => "לא ניתן למחוק את הספקים שנבחרו. לאחד או יותר יש מכירות.", + "category" => "קטגוריה", + "company_name" => "שם חברה", + "company_name_required" => "שם חברה הינו שדה חובה.", + "confirm_delete" => "האם אתה בטוח שברצונך למחוק את הספקים שנבחרו?", + "confirm_restore" => "האם אתה בטוח שברצונך לשחזר את הספקים שנבחרו?", + "cost" => "עלות קניה ספק", + "error_adding_updating" => "עדכון הספק או ההוספה נכשלו.", + "goods" => "ספק מוצרים", + "new" => "ספק חדש", + "none_selected" => "לא בחרת ספק(ים) למחיקה.", + "one_or_multiple" => "ספק(ים)", + "successful_adding" => "הוספת בהצלחה את הספק", + "successful_deleted" => "נמחק בהצלחה", + "successful_updating" => "עדכנת בהצלחה את הספק", + "supplier" => "ספק", + "supplier_id" => "מזהה", + "tax_id" => "מזהה מס", + "update" => "עדכון הספק", ]; diff --git a/app/Language/he/Taxes.php b/app/Language/he/Taxes.php index a2445e528..75b22b12c 100644 --- a/app/Language/he/Taxes.php +++ b/app/Language/he/Taxes.php @@ -1,82 +1,82 @@ "הוסף חריגה", - "cascade" => "מדורג", - "cascade_sequence" => "רצף דירוג", - "city" => "עיר", - "code" => "קוד", - "confirm_delete" => "האם אתה בטוח שברצונך למחוק קוד מס זה? לא ניתן לבטל פעולה זו", - "confirm_restore" => "האם אתה בטוח שברצונך לשחזר קוד מס זה?", - "default_tax_category" => "קטגוריה מס ברירת מחדל", - "default_tax_rate" => "שיעור מס ברירת מחדל", - "error_adding_updating" => "הוספה או עדכון של קוד מס נכשלו", - "group_seq" => "רצף קבוצות", - "jurisdiction_name" => "שם תחום שיפוט", - "name" => "שם", - "new" => "מס חדש", - "no_taxes" => "", - "no_taxes_to_display" => "אין קוד מסים זמין לתצוגה", - "reporting_authority" => "רשות מדווחת", - "round_half_down" => "חצי למטה", - "round_half_even" => "חצי לשווה", - "round_half_odd" => "חצי מספר אי זוגי", - "round_half_up" => "חצי למעלה", - "rounding_code" => "קוד עיגול", - "sales_tax" => "מס מכירה", - "sales_tax_by_invoice" => "מס מכירה לפי חשבונית", - "sequence" => "רצף.", - "state" => "מדינה", - "successful_deleted" => "נמחק בהצלחה", - "tax_categories" => "קטגוריות מס", - "tax_categories_configuration" => "הגדרות קטגוריית מס", - "tax_categories_saved_successfully" => "שינויי קטגוריות המס נשמרו", - "tax_categories_saved_unsuccessfully" => "שינויים בקטגוריות מס לא נשמרו", - "tax_category" => "קטגוריית מס", - "tax_category_code" => "קוד קטגוריית מס", - "tax_category_duplicate" => "שכפל קטגוריית מס", - "tax_category_invalid_chars" => "תווים לא חוקיים בשם הקטגוריה של מס", - "tax_category_name" => "שם קטגוריה מס", - "tax_category_new" => "קטגוריית מס חדשה", - "tax_category_required" => "קטגוריית מס נדרשת", - "tax_code" => "קוד מס", - "tax_code_cannot_be_deleted" => "מחיקת קוד המס נכשלה", - "tax_code_duplicate" => "שכפל קוד מס", - "tax_code_invalid_chars" => "תווים לא חוקיים בקוד מס", - "tax_code_name" => "שם קוד מס", - "tax_code_required" => "קוד מס הינו שדה נדרש", - "tax_code_successful_deleted" => "מחקת בהצלחה את קוד המס", - "tax_code_successful_updated" => "עדכנת בהצלחה", - "tax_code_successful_updating" => "עדכנת בהצלחה את קוד המס", - "tax_code_successfully_added" => "הוספת בהצלחה", - "tax_code_type" => "סוג קוד מס", - "tax_codes" => "קודי מס", - "tax_codes_configuration" => "הגדרת קודי מס", - "tax_codes_saved_successfully" => "שינויי קוד המס נשמרו", - "tax_codes_saved_unsuccessfully" => "שינויי קוד המס לא נשמרו", - "tax_excluded" => "לא כולל מס", - "tax_group" => "קבוצת מס", - "tax_group_not_unique" => "", - "tax_group_sequence" => "רצף קבוצת מסים", - "tax_included" => "כולל מס", - "tax_jurisdiction" => "תחום שיפוט מס (מיסוי)", - "tax_jurisdiction_duplicate" => "שכפל תחום שיפוט מס (מיסוי)", - "tax_jurisdiction_invalid_chars" => "תווים לא חוקיים בשם השיפוט", - "tax_jurisdiction_required" => "נדרשת סמכות שיפוט מס", - "tax_jurisdictions" => "שיפוט מס", - "tax_jurisdictions_configuration" => "הגדרת שיפוט מס", - "tax_jurisdictions_saved_successfully" => "שינויי שיפוט מס נשמרו", - "tax_jurisdictions_saved_unsuccessfully" => "שינויי שיפוט מס לא נשמרו", - "tax_rate" => "שיעור מס", - "tax_rate_configuration" => "הגדרת שיעור מס", - "tax_rate_error_adding_updating" => "הוספה או עדכון של שיעור המס נכשל", - "tax_rate_numeric" => "שדה שיעור המס חייב להיות מספר", - "tax_rate_required" => "שיעור המס הינו שדה חובה", - "tax_rate_successful_updated" => "עדכנת בהצלחה", - "tax_rate_successfully_added" => "הוספת בהצלחה", - "tax_rates" => "שיעורי המס", - "tax_rates_configuration" => "הגדרת שיעורי המס", - "tax_rounding" => "עיגול מס", - "tax_type" => "סוג מס", - "update" => "עדכון שיעור המס", - "vat_tax" => "מס ערך מוסף", + "add_exception" => "הוסף חריגה", + "cascade" => "מדורג", + "cascade_sequence" => "רצף דירוג", + "city" => "עיר", + "code" => "קוד", + "confirm_delete" => "האם אתה בטוח שברצונך למחוק קוד מס זה? לא ניתן לבטל פעולה זו", + "confirm_restore" => "האם אתה בטוח שברצונך לשחזר קוד מס זה?", + "default_tax_category" => "קטגוריה מס ברירת מחדל", + "default_tax_rate" => "שיעור מס ברירת מחדל", + "error_adding_updating" => "הוספה או עדכון של קוד מס נכשלו", + "group_seq" => "רצף קבוצות", + "jurisdiction_name" => "שם תחום שיפוט", + "name" => "שם", + "new" => "מס חדש", + "no_taxes" => "", + "no_taxes_to_display" => "אין קוד מסים זמין לתצוגה", + "reporting_authority" => "רשות מדווחת", + "round_half_down" => "חצי למטה", + "round_half_even" => "חצי לשווה", + "round_half_odd" => "חצי מספר אי זוגי", + "round_half_up" => "חצי למעלה", + "rounding_code" => "קוד עיגול", + "sales_tax" => "מס מכירה", + "sales_tax_by_invoice" => "מס מכירה לפי חשבונית", + "sequence" => "רצף.", + "state" => "מדינה", + "successful_deleted" => "נמחק בהצלחה", + "tax_categories" => "קטגוריות מס", + "tax_categories_configuration" => "הגדרות קטגוריית מס", + "tax_categories_saved_successfully" => "שינויי קטגוריות המס נשמרו", + "tax_categories_saved_unsuccessfully" => "שינויים בקטגוריות מס לא נשמרו", + "tax_category" => "קטגוריית מס", + "tax_category_code" => "קוד קטגוריית מס", + "tax_category_duplicate" => "שכפל קטגוריית מס", + "tax_category_invalid_chars" => "תווים לא חוקיים בשם הקטגוריה של מס", + "tax_category_name" => "שם קטגוריה מס", + "tax_category_new" => "קטגוריית מס חדשה", + "tax_category_required" => "קטגוריית מס נדרשת", + "tax_code" => "קוד מס", + "tax_code_cannot_be_deleted" => "מחיקת קוד המס נכשלה", + "tax_code_duplicate" => "שכפל קוד מס", + "tax_code_invalid_chars" => "תווים לא חוקיים בקוד מס", + "tax_code_name" => "שם קוד מס", + "tax_code_required" => "קוד מס הינו שדה נדרש", + "tax_code_successful_deleted" => "מחקת בהצלחה את קוד המס", + "tax_code_successful_updated" => "עדכנת בהצלחה", + "tax_code_successful_updating" => "עדכנת בהצלחה את קוד המס", + "tax_code_successfully_added" => "הוספת בהצלחה", + "tax_code_type" => "סוג קוד מס", + "tax_codes" => "קודי מס", + "tax_codes_configuration" => "הגדרת קודי מס", + "tax_codes_saved_successfully" => "שינויי קוד המס נשמרו", + "tax_codes_saved_unsuccessfully" => "שינויי קוד המס לא נשמרו", + "tax_excluded" => "לא כולל מס", + "tax_group" => "קבוצת מס", + "tax_group_not_unique" => "", + "tax_group_sequence" => "רצף קבוצת מסים", + "tax_included" => "כולל מס", + "tax_jurisdiction" => "תחום שיפוט מס (מיסוי)", + "tax_jurisdiction_duplicate" => "שכפל תחום שיפוט מס (מיסוי)", + "tax_jurisdiction_invalid_chars" => "תווים לא חוקיים בשם השיפוט", + "tax_jurisdiction_required" => "נדרשת סמכות שיפוט מס", + "tax_jurisdictions" => "שיפוט מס", + "tax_jurisdictions_configuration" => "הגדרת שיפוט מס", + "tax_jurisdictions_saved_successfully" => "שינויי שיפוט מס נשמרו", + "tax_jurisdictions_saved_unsuccessfully" => "שינויי שיפוט מס לא נשמרו", + "tax_rate" => "שיעור מס", + "tax_rate_configuration" => "הגדרת שיעור מס", + "tax_rate_error_adding_updating" => "הוספה או עדכון של שיעור המס נכשל", + "tax_rate_numeric" => "שדה שיעור המס חייב להיות מספר", + "tax_rate_required" => "שיעור המס הינו שדה חובה", + "tax_rate_successful_updated" => "עדכנת בהצלחה", + "tax_rate_successfully_added" => "הוספת בהצלחה", + "tax_rates" => "שיעורי המס", + "tax_rates_configuration" => "הגדרת שיעורי המס", + "tax_rounding" => "עיגול מס", + "tax_type" => "סוג מס", + "update" => "עדכון שיעור המס", + "vat_tax" => "מס ערך מוסף", ]; diff --git a/app/Language/hr-HR/Attributes.php b/app/Language/hr-HR/Attributes.php index 0adb3846e..cb64f590d 100644 --- a/app/Language/hr-HR/Attributes.php +++ b/app/Language/hr-HR/Attributes.php @@ -1,32 +1,32 @@ "", - "confirm_delete" => "", - "confirm_restore" => "", - "definition_cannot_be_deleted" => "", - "definition_error_adding_updating" => "", - "definition_flags" => "", - "definition_group" => "", - "definition_id" => "", - "definition_name" => "", - "definition_name_required" => "", - "definition_one_or_multiple" => "", - "definition_successful_adding" => "", - "definition_successful_deleted" => "", - "definition_successful_updating" => "", - "definition_type" => "", - "definition_type_required" => "", - "definition_unit" => "", - "definition_values" => "", - "new" => "", - "no_attributes_to_display" => "", - "receipt_visibility" => "", - "show_in_items" => "", - "show_in_items_visibility" => "", - "show_in_receipt" => "", - "show_in_receivings" => "", - "show_in_receivings_visibility" => "", - "show_in_sales" => "", - "show_in_sales_visibility" => "", - "update" => "", + "attribute_value_invalid_chars" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "definition_cannot_be_deleted" => "", + "definition_error_adding_updating" => "", + "definition_flags" => "", + "definition_group" => "", + "definition_id" => "", + "definition_name" => "", + "definition_name_required" => "", + "definition_one_or_multiple" => "", + "definition_successful_adding" => "", + "definition_successful_deleted" => "", + "definition_successful_updating" => "", + "definition_type" => "", + "definition_type_required" => "", + "definition_unit" => "", + "definition_values" => "", + "new" => "", + "no_attributes_to_display" => "", + "receipt_visibility" => "", + "show_in_items" => "", + "show_in_items_visibility" => "", + "show_in_receipt" => "", + "show_in_receivings" => "", + "show_in_receivings_visibility" => "", + "show_in_sales" => "", + "show_in_sales_visibility" => "", + "update" => "", ]; diff --git a/app/Language/hr-HR/Bootstrap_tables.php b/app/Language/hr-HR/Bootstrap_tables.php index c520b4d51..8c377ae08 100644 --- a/app/Language/hr-HR/Bootstrap_tables.php +++ b/app/Language/hr-HR/Bootstrap_tables.php @@ -1,11 +1,11 @@ "Sve", - "columns" => "Kolone", - "hide_show_pagination" => "Prikaži/sakrij stranice", - "loading" => "Molimo pričekajte ...", - "page_from_to" => "Prikazujem {0}. - {1} od ukupnog broja zapisa {2}", - "refresh" => "Osvježi", - "rows_per_page" => "{0} broj zapisa po stranici", - "toggle" => "Promijeni prikaz", + "all" => "Sve", + "columns" => "Kolone", + "hide_show_pagination" => "Prikaži/sakrij stranice", + "loading" => "Molimo pričekajte ...", + "page_from_to" => "Prikazujem {0}. - {1} od ukupnog broja zapisa {2}", + "refresh" => "Osvježi", + "rows_per_page" => "{0} broj zapisa po stranici", + "toggle" => "Promijeni prikaz", ]; diff --git a/app/Language/hr-HR/Calendar.php b/app/Language/hr-HR/Calendar.php index 7ea90bd1a..6e0e1aec3 100644 --- a/app/Language/hr-HR/Calendar.php +++ b/app/Language/hr-HR/Calendar.php @@ -1,48 +1,48 @@ "Ne", - "mo" => "Po", - "tu" => "Ut", - "we" => "Sr", - "th" => "Če", - "fr" => "Pe", - "sa" => "Su", - "sun" => "Sub", - "mon" => "Pon", - "tue" => "Uto", - "wed" => "Sri", - "thu" => "Čet", - "fri" => "Pet", - "sat" => "Sub", - "sunday" => "Nedjelja", - "monday" => "Ponedjeljak", - "tuesday" => "Utorak", - "wednesday" => "Srijeda", - "thursday" => "Četvrtak", - "friday" => "Petak", - "saturday" => "Subota", - "jan" => "Sij", - "feb" => "Vel", - "mar" => "Ožu", - "apr" => "Tra", - "may" => "Svi", - "jun" => "Lip", - "jul" => "Srp", - "aug" => "Kol", - "sep" => "Ruj", - "oct" => "Lis", - "nov" => "Stu", - "dec" => "Pro", - "january" => "Siječanj", - "february" => "Veljača", - "march" => "Ožujak", - "april" => "Travanj", - "mayl" => "Svibanj", - "june" => "Lipanj", - "july" => "Srpanj", - "august" => "Kolovoz", - "september" => "Rujan", - "october" => "Listopad", - "november" => "Studeni", - "december" => "Prosinac", + "su" => "Ne", + "mo" => "Po", + "tu" => "Ut", + "we" => "Sr", + "th" => "Če", + "fr" => "Pe", + "sa" => "Su", + "sun" => "Sub", + "mon" => "Pon", + "tue" => "Uto", + "wed" => "Sri", + "thu" => "Čet", + "fri" => "Pet", + "sat" => "Sub", + "sunday" => "Nedjelja", + "monday" => "Ponedjeljak", + "tuesday" => "Utorak", + "wednesday" => "Srijeda", + "thursday" => "Četvrtak", + "friday" => "Petak", + "saturday" => "Subota", + "jan" => "Sij", + "feb" => "Vel", + "mar" => "Ožu", + "apr" => "Tra", + "may" => "Svi", + "jun" => "Lip", + "jul" => "Srp", + "aug" => "Kol", + "sep" => "Ruj", + "oct" => "Lis", + "nov" => "Stu", + "dec" => "Pro", + "january" => "Siječanj", + "february" => "Veljača", + "march" => "Ožujak", + "april" => "Travanj", + "mayl" => "Svibanj", + "june" => "Lipanj", + "july" => "Srpanj", + "august" => "Kolovoz", + "september" => "Rujan", + "october" => "Listopad", + "november" => "Studeni", + "december" => "Prosinac", ]; diff --git a/app/Language/hr-HR/Cashups.php b/app/Language/hr-HR/Cashups.php index 2ffc8c593..04d19c94f 100644 --- a/app/Language/hr-HR/Cashups.php +++ b/app/Language/hr-HR/Cashups.php @@ -1,49 +1,49 @@ "", - "amount_number" => "", - "amount_required" => "", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "", - "cash_difference" => "", - "close_date" => "", - "close_employee" => "", - "closed_amount_card" => "", - "closed_amount_cash" => "", - "closed_amount_check" => "", - "closed_amount_due" => "", - "closed_amount_giftcard" => "", - "closed_amount_total" => "", - "closed_date" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "confirm_submit" => "", - "date_number" => "", - "date_required" => "", - "description" => "", - "enable_expected" => "", - "error_adding_updating" => "", - "giftcard" => "", - "id" => "", - "info" => "", - "info_employee" => "", - "is_deleted" => "", - "new" => "", - "no_cashups_to_display" => "", - "none_selected" => "", - "note" => "", - "one_or_multiple" => "", - "open_amount_cash" => "", - "open_date" => "", - "open_employee" => "", - "opened_date" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "total" => "", - "transfer_amount_cash" => "", - "transfer_amount_cash_minus" => "", - "update" => "", - "warning" => "", + "amount" => "", + "amount_number" => "", + "amount_required" => "", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "", + "cash_difference" => "", + "close_date" => "", + "close_employee" => "", + "closed_amount_card" => "", + "closed_amount_cash" => "", + "closed_amount_check" => "", + "closed_amount_due" => "", + "closed_amount_giftcard" => "", + "closed_amount_total" => "", + "closed_date" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "confirm_submit" => "", + "date_number" => "", + "date_required" => "", + "description" => "", + "enable_expected" => "", + "error_adding_updating" => "", + "giftcard" => "", + "id" => "", + "info" => "", + "info_employee" => "", + "is_deleted" => "", + "new" => "", + "no_cashups_to_display" => "", + "none_selected" => "", + "note" => "", + "one_or_multiple" => "", + "open_amount_cash" => "", + "open_date" => "", + "open_employee" => "", + "opened_date" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "total" => "", + "transfer_amount_cash" => "", + "transfer_amount_cash_minus" => "", + "update" => "", + "warning" => "", ]; diff --git a/app/Language/hr-HR/Common.php b/app/Language/hr-HR/Common.php index 5dac50705..287b5050b 100644 --- a/app/Language/hr-HR/Common.php +++ b/app/Language/hr-HR/Common.php @@ -1,88 +1,88 @@ "Adresa 1", - "address_2" => "Adresa 2", - "admin" => "", - "city" => "Grad", - "clerk" => "", - "close" => "Close", - "color" => "", - "comments" => "Komentari", - "common" => "Zajedničko", - "confirm_search" => "Odabrali ste jedan ili više redova koji neće biti odabrani nakon pretrage. Jeste li ste sigurni da želite pretragu?", - "copyrights" => "© 2010 - {0}", - "correct_errors" => "", - "country" => "Država", - "dashboard" => "", - "date" => "Datum", - "delete" => "Obrisati", - "det" => "Detalji", - "download_import_template" => "Preuzmite predložak za uvoz(CSV)", - "edit" => "Uredi", - "email" => "e-mail", - "email_invalid_format" => "Neispravan e-mail", - "export_csv" => "CSV izvoz", - "export_csv_no" => "Ne", - "export_csv_yes" => "Da", - "fields_required_message" => "Polja u crvenom su obavezna", - "fields_required_message_unique" => "", - "first_name" => "Ime", - "first_name_required" => "Ime je obavezno", - "first_page" => "Prva", - "gender" => "Spol", - "gender_female" => "Ž", - "gender_male" => "M", - "gender_undefined" => "", - "icon" => "", - "id" => "Id", - "import" => "Uvoz", - "import_change_file" => "Promjena", - "import_csv" => "CSV uvoz", - "import_full_path" => "Potrebna je potpuna putanja do csv datoteke", - "import_remove_file" => "Ukloni", - "import_select_file" => "Odaberite datoteku", - "inv" => "lelt.", - "last_name" => "Prezime", - "last_name_required" => "Prezime je obavezno", - "last_page" => "Zadnja", - "learn_about_project" => "za pregled zadnjih informacija o projektu", - "list_of" => "Lista", - "logo" => "", - "logo_mark" => "", - "logout" => "Odjava", - "manager" => "", - "migration_needed" => "", - "new" => "Novi", - "no" => "", - "no_persons_to_display" => "Nema nijede osoba za prikazati", - "none_selected_text" => "Nothing selected", - "or" => "Ili", - "people" => "", - "phone_number" => "Broj telefona", - "phone_number_required" => "Broj telefona je obavezan", - "please_visit_my" => "Molim posjetite", - "position" => "", - "powered_by" => "Pokreće", - "price" => "Ár", - "print" => "Štampati", - "remove" => "Ukloni", - "required" => "Potreban", - "restore" => "", - "return_policy" => "Povratne obavijesti", - "search" => "Traži", - "search_options" => "Opcije pretrage", - "searched_for" => "Tražili", - "software_short" => "", - "software_title" => "", - "state" => "Država", - "submit" => "Prihvati", - "total_spent" => "", - "unknown" => "", - "view_recent_sales" => "Pogledaj nedavne prodaje", - "website" => "web stranicu", - "welcome" => "Dobrodošli", - "welcome_message" => "Dobrodošli u blagajnu otvorenog koda(OSPOS)", - "yes" => "", - "you_are_using_ospos" => "Koristite blagajnu otvorenog koda (Open Source Point Of Sale) verziju", - "zip" => "Broj pošte", + "address_1" => "Adresa 1", + "address_2" => "Adresa 2", + "admin" => "", + "city" => "Grad", + "clerk" => "", + "close" => "Close", + "color" => "", + "comments" => "Komentari", + "common" => "Zajedničko", + "confirm_search" => "Odabrali ste jedan ili više redova koji neće biti odabrani nakon pretrage. Jeste li ste sigurni da želite pretragu?", + "copyrights" => "© 2010 - {0}", + "correct_errors" => "", + "country" => "Država", + "dashboard" => "", + "date" => "Datum", + "delete" => "Obrisati", + "det" => "Detalji", + "download_import_template" => "Preuzmite predložak za uvoz(CSV)", + "edit" => "Uredi", + "email" => "e-mail", + "email_invalid_format" => "Neispravan e-mail", + "export_csv" => "CSV izvoz", + "export_csv_no" => "Ne", + "export_csv_yes" => "Da", + "fields_required_message" => "Polja u crvenom su obavezna", + "fields_required_message_unique" => "", + "first_name" => "Ime", + "first_name_required" => "Ime je obavezno", + "first_page" => "Prva", + "gender" => "Spol", + "gender_female" => "Ž", + "gender_male" => "M", + "gender_undefined" => "", + "icon" => "", + "id" => "Id", + "import" => "Uvoz", + "import_change_file" => "Promjena", + "import_csv" => "CSV uvoz", + "import_full_path" => "Potrebna je potpuna putanja do csv datoteke", + "import_remove_file" => "Ukloni", + "import_select_file" => "Odaberite datoteku", + "inv" => "lelt.", + "last_name" => "Prezime", + "last_name_required" => "Prezime je obavezno", + "last_page" => "Zadnja", + "learn_about_project" => "za pregled zadnjih informacija o projektu", + "list_of" => "Lista", + "logo" => "", + "logo_mark" => "", + "logout" => "Odjava", + "manager" => "", + "migration_needed" => "", + "new" => "Novi", + "no" => "", + "no_persons_to_display" => "Nema nijede osoba za prikazati", + "none_selected_text" => "Nothing selected", + "or" => "Ili", + "people" => "", + "phone_number" => "Broj telefona", + "phone_number_required" => "Broj telefona je obavezan", + "please_visit_my" => "Molim posjetite", + "position" => "", + "powered_by" => "Pokreće", + "price" => "Ár", + "print" => "Štampati", + "remove" => "Ukloni", + "required" => "Potreban", + "restore" => "", + "return_policy" => "Povratne obavijesti", + "search" => "Traži", + "search_options" => "Opcije pretrage", + "searched_for" => "Tražili", + "software_short" => "", + "software_title" => "", + "state" => "Država", + "submit" => "Prihvati", + "total_spent" => "", + "unknown" => "", + "view_recent_sales" => "Pogledaj nedavne prodaje", + "website" => "web stranicu", + "welcome" => "Dobrodošli", + "welcome_message" => "Dobrodošli u blagajnu otvorenog koda(OSPOS)", + "yes" => "", + "you_are_using_ospos" => "Koristite blagajnu otvorenog koda (Open Source Point Of Sale) verziju", + "zip" => "Broj pošte", ]; diff --git a/app/Language/hr-HR/Config.php b/app/Language/hr-HR/Config.php index b868b4cdd..566a494e9 100644 --- a/app/Language/hr-HR/Config.php +++ b/app/Language/hr-HR/Config.php @@ -1,330 +1,330 @@ "Adresa tvrtke", - "address_required" => "Adresu tvrtke je potrebno unijeti", - "all_set" => "All file permissions are set correctly!", - "allow_duplicate_barcodes" => "", - "apostrophe" => "apostrophe", - "backup_button" => "Arhiva", - "backup_database" => "Arhiviranje baze", - "barcode" => "Barkoda", - "barcode_company" => "Naziv tvrtke", - "barcode_configuration" => "Konfiguracija barkoda", - "barcode_content" => "Sadržaj barkoda", - "barcode_first_row" => "1 red", - "barcode_font" => "Pismo", - "barcode_formats" => "", - "barcode_generate_if_empty" => "Generiraj ako je prazno", - "barcode_height" => "Visina(px)", - "barcode_id" => "ID artikla", - "barcode_info" => "Informacija o barkod-ovima", - "barcode_layout" => "Postavke barkod-a", - "barcode_name" => "Naziv", - "barcode_number" => "UPC/EAN/ISBN", - "barcode_number_in_row" => "Red.br.", - "barcode_page_cellspacing" => "Stranični prostor", - "barcode_page_width" => "Širina stranice", - "barcode_price" => "Cijena", - "barcode_second_row" => "2.red", - "barcode_third_row" => "3.red", - "barcode_tooltip" => "", - "barcode_type" => "Tip barkod-a", - "barcode_width" => "Širina (px)", - "bottom" => "Bottom", - "cash_button" => "", - "cash_button_1" => "", - "cash_button_2" => "", - "cash_button_3" => "", - "cash_button_4" => "", - "cash_button_5" => "", - "cash_button_6" => "", - "cash_decimals" => "", - "cash_decimals_tooltip" => "", - "cash_rounding" => "", - "category_dropdown" => "", - "center" => "Center", - "change_apperance_tooltip" => "", - "comma" => "comma", - "company" => "Naziv tvrtke", - "company_avatar" => "", - "company_change_image" => "Promijeni logo", - "company_logo" => "Logo tvrtke", - "company_remove_image" => "Ukloni logo", - "company_required" => "Polje naziv tvrtke je potreban", - "company_select_image" => "Odaberi logo", - "company_website_url" => "Adresa web stranice nije valjana (http://...)", - "country_codes" => "Country Codes", - "country_codes_tooltip" => "Comma separated list of country codes for nominatim address lookup.", - "currency_code" => "", - "currency_decimals" => "Velutne decimale", - "currency_symbol" => "Valutna oznaka", - "current_employee_only" => "", - "customer_reward" => "", - "customer_reward_duplicate" => "", - "customer_reward_enable" => "", - "customer_reward_invalid_chars" => "", - "customer_reward_required" => "", - "customer_sales_tax_support" => "", - "date_or_time_format" => "", - "datetimeformat" => "Oblik datuma i vremena", - "decimal_point" => "Decimalna točka", - "default_barcode_font_size_number" => "Veličina pisma barkod-a mora biti broj", - "default_barcode_font_size_required" => "Veličina pisma je potrebna", - "default_barcode_height_number" => "Veličina barkod-a mora biti broj", - "default_barcode_height_required" => "Veličina barkod-a je potrebna", - "default_barcode_num_in_row_number" => "Broj u redu barkod-a mora biti broj", - "default_barcode_num_in_row_required" => "Broj u redu barkod-a je potreban", - "default_barcode_page_cellspacing_number" => "Razmak barkod-a mora biti broj", - "default_barcode_page_cellspacing_required" => "Vonalkód cellatávolság kötelező mező.", - "default_barcode_page_width_number" => "Širina stranice barkod-a mora biti broj", - "default_barcode_page_width_required" => "Širina stranice barkod-a je potrebna", - "default_barcode_width_number" => "Az alapértelmezett vonalkód szélességnek számnak kell lennie", - "default_barcode_width_required" => "Širina barkod-a mora bit broj", - "default_item_columns" => "", - "default_origin_tax_code" => "", - "default_receivings_discount" => "", - "default_receivings_discount_number" => "", - "default_receivings_discount_required" => "", - "default_sales_discount" => "Zadani popust %", - "default_sales_discount_number" => "Zadani popust mora biti broj", - "default_sales_discount_required" => "Zadani popust je potreban", - "default_tax_category" => "", - "default_tax_code" => "", - "default_tax_jurisdiction" => "", - "default_tax_name_number" => "", - "default_tax_name_required" => "Naziv poreza je poteban", - "default_tax_rate" => "Porez %", - "default_tax_rate_1" => "Porez 1 %", - "default_tax_rate_2" => "Porez 2 %", - "default_tax_rate_3" => "", - "default_tax_rate_number" => "Zadani porez mora biti broj", - "default_tax_rate_required" => "Zadani porez je potreban", - "derive_sale_quantity" => "", - "derive_sale_quantity_tooltip" => "", - "dinner_table" => "", - "dinner_table_duplicate" => "", - "dinner_table_enable" => "", - "dinner_table_invalid_chars" => "", - "dinner_table_required" => "", - "dot" => "dot", - "email" => "Email", - "email_configuration" => "Email Configuration", - "email_mailpath" => "Path to Sendmail", - "email_protocol" => "Protocol", - "email_receipt_check_behaviour" => "", - "email_receipt_check_behaviour_always" => "", - "email_receipt_check_behaviour_last" => "", - "email_receipt_check_behaviour_never" => "", - "email_smtp_crypto" => "SMTP Encryption", - "email_smtp_host" => "SMTP Server", - "email_smtp_pass" => "SMTP Password", - "email_smtp_port" => "SMTP Port", - "email_smtp_timeout" => "SMTP Timeout (s)", - "email_smtp_user" => "SMTP Username", - "enable_avatar" => "", - "enable_avatar_tooltip" => "", - "enable_dropdown_tooltip" => "", - "enable_new_look" => "", - "enable_right_bar" => "", - "enable_right_bar_tooltip" => "", - "enforce_privacy" => "", - "enforce_privacy_tooltip" => "", - "fax" => "Fax", - "file_perm" => "There are problems with file permissions please fix and reload this page.", - "financial_year" => "", - "financial_year_apr" => "", - "financial_year_aug" => "", - "financial_year_dec" => "", - "financial_year_feb" => "", - "financial_year_jan" => "", - "financial_year_jul" => "", - "financial_year_jun" => "", - "financial_year_mar" => "", - "financial_year_may" => "", - "financial_year_nov" => "", - "financial_year_oct" => "", - "financial_year_sep" => "", - "floating_labels" => "", - "gcaptcha_enable" => "", - "gcaptcha_secret_key" => "", - "gcaptcha_secret_key_required" => "", - "gcaptcha_site_key" => "", - "gcaptcha_site_key_required" => "", - "gcaptcha_tooltip" => "", - "general" => "Opća", - "general_configuration" => "Opća konfiguracija", - "giftcard_number" => "", - "giftcard_random" => "", - "giftcard_series" => "", - "image_allowed_file_types" => "", - "image_max_height_tooltip" => "", - "image_max_size_tooltip" => "", - "image_max_width_tooltip" => "", - "image_restrictions" => "", - "include_hsn" => "", - "info" => "Info", - "info_configuration" => "Info o web trgovini", - "input_groups" => "", - "integrations" => "", - "integrations_configuration" => "", - "invoice" => "Račun", - "invoice_configuration" => "Postavke štamapnja", - "invoice_default_comments" => "Komentar na računu", - "invoice_email_message" => "e-mail za račun", - "invoice_enable" => "Enable Invoicing", - "invoice_printer" => "Printer za račun", - "invoice_type" => "", - "is_readable" => "", - "is_writable" => "is writable, but the permissions are higher than 750.", - "item_markup" => "", - "jsprintsetup_required" => "Upozorenje! Onemogućene opcije će raditi samo ako imate instaliran FireFox jsPrintSetup dodatak. Svakako snimiti?", - "language" => "Jezik", - "last_used_invoice_number" => "", - "last_used_quote_number" => "", - "last_used_work_order_number" => "", - "left" => "Left", - "license" => "License", - "license_configuration" => "License Statement", - "line_sequence" => "", - "lines_per_page" => "Linija po stranici", - "lines_per_page_number" => "Linija po stranici mora biti broj", - "lines_per_page_required" => "Broj linija po stranici je potreban podatak", - "locale" => "Lokacija", - "locale_configuration" => "Konfiguracija", - "locale_info" => "Informacije o lokalnoj konfiguraciji", - "location" => "Skladišta", - "location_configuration" => "Mjesto skladišta", - "location_info" => "Info o lokaciji skladišta", - "login_form" => "", - "logout" => "Želite napraviti arhivu prije nego izađete? Pritisnite [OK] za arhivu, [Cancel] to otkazivanje.", - "mailchimp" => "", - "mailchimp_api_key" => "", - "mailchimp_configuration" => "", - "mailchimp_key_successfully" => "", - "mailchimp_key_unsuccessfully" => "", - "mailchimp_lists" => "", - "mailchimp_tooltip" => "", - "message" => "Message", - "message_configuration" => "Message Configuration", - "msg_msg" => "Saved Text Message", - "msg_msg_placeholder" => "If you wish to use a SMS template save your message here. Otherwise leave the box blank.", - "msg_pwd" => "SMS-API Password", - "msg_pwd_required" => "SMS-API Password is a required field", - "msg_src" => "SMS-API Sender ID", - "msg_src_required" => "SMS-API Sender ID is a required field", - "msg_uid" => "SMS-API Username", - "msg_uid_required" => "SMS-API Username is a required field", - "multi_pack_enabled" => "", - "no_risk" => "No security/vulnerability risks.", - "none" => "none", - "notify_alignment" => "Notification Popup Position", - "number_format" => "Format broja", - "number_locale" => "Lokalnoj", - "number_locale_invalid" => "The entered locale is invalid. Check the link in the tooltip to find a sensible value", - "number_locale_required" => "Number Locale is a required field", - "number_locale_tooltip" => "Find a suitable locale through this link", - "os_timezone" => "", - "ospos_info" => "", - "payment_options_order" => "Payment Options Order", - "perm_risk" => "Permissions higher than 750 leaves this software at risk.", - "phone" => "Telefon tvrtke", - "phone_required" => "Telefon tvrtke je potreban", - "print_bottom_margin" => "Doljnja margina", - "print_bottom_margin_number" => "Doljnja margina mora biti broj", - "print_bottom_margin_required" => "Doljnja margina je potrebna", - "print_delay_autoreturn" => "", - "print_delay_autoreturn_number" => "", - "print_delay_autoreturn_required" => "", - "print_footer" => "Prikazati podnožje u pregledniku", - "print_header" => "Prikazati zaglavlje u pregledniku", - "print_left_margin" => "Lijeva margina", - "print_left_margin_number" => "Lijeva margina mora biti broj", - "print_left_margin_required" => "Lijeva margina je obavezna", - "print_receipt_check_behaviour" => "", - "print_receipt_check_behaviour_always" => "", - "print_receipt_check_behaviour_last" => "", - "print_receipt_check_behaviour_never" => "", - "print_right_margin" => "Desna margina", - "print_right_margin_number" => "Desna margina mora biti broj", - "print_right_margin_required" => "Desna margina je potrebna", - "print_silently" => "Pokaži okvir za štampanje", - "print_top_margin" => "Gornja margina", - "print_top_margin_number" => "Gornja margina mora biti broj", - "print_top_margin_required" => "Gornja margina je obavezna", - "quantity_decimals" => "Decimalne količine", - "quick_cash_enable" => "", - "quote_default_comments" => "", - "receipt" => "Priznanica", - "receipt_category" => "", - "receipt_configuration" => "Postavke štamapnja", - "receipt_default" => "Default", - "receipt_font_size" => "", - "receipt_font_size_number" => "", - "receipt_font_size_required" => "", - "receipt_info" => "Informacije o POS računu", - "receipt_printer" => "POS printer", - "receipt_short" => "Short", - "receipt_show_company_name" => "", - "receipt_show_description" => "Show Description", - "receipt_show_serialnumber" => "Show Serial Number", - "receipt_show_tax_ind" => "", - "receipt_show_taxes" => "Prikaži porez", - "receipt_show_total_discount" => "Pokaži ukupni popust", - "receipt_template" => "Receipt Template", - "receiving_calculate_average_price" => "Računaj prosječnu cijenu (primke)", - "recv_invoice_format" => "Oblik ulaznog računa(primke)", - "register_mode_default" => "", - "report_an_issue" => "", - "return_policy_required" => "Polje za povratne obavijesti je potrebno", - "reward" => "", - "reward_configuration" => "", - "right" => "Right", - "sales_invoice_format" => "Oblik fakture", - "sales_quote_format" => "", - "saved_successfully" => "Konfiguracija je uspješno snimljena", - "saved_unsuccessfully" => "Konfiguracija nije uspješno snimljena", - "security_issue" => "Security Vulnerability Warning", - "server_notice" => "Please use the below info for issue reporting.", - "service_charge" => "", - "show_due_enable" => "", - "show_office_group" => "", - "statistics" => "Send statistics", - "statistics_tooltip" => "Send statistics for development and feature improvement purposes", - "stock_location" => "Lokacija skladišta", - "stock_location_duplicate" => "Molim koristite jedinstveni naziv skladišta", - "stock_location_invalid_chars" => "Naziv skaldišta ne može sadržavati '_'", - "stock_location_required" => "Naziv skladišta je potreban", - "suggestions_fifth_column" => "", - "suggestions_first_column" => "", - "suggestions_fourth_column" => "", - "suggestions_layout" => "", - "suggestions_second_column" => "", - "suggestions_third_column" => "", - "system_conf" => "Setup & Conf", - "system_info" => "System Info", - "table" => "", - "table_configuration" => "", - "takings_printer" => "Printer za 'Prodano'", - "tax" => "", - "tax_category" => "", - "tax_category_duplicate" => "", - "tax_category_invalid_chars" => "", - "tax_category_required" => "", - "tax_category_used" => "", - "tax_configuration" => "", - "tax_decimals" => "Porezne decimale", - "tax_id" => "", - "tax_included" => "Uključuje porez", - "theme" => "Theme", - "theme_preview" => "", - "thousands_separator" => "Razdjelnik za tisućice", - "timezone" => "Vremenska zona", - "timezone_error" => "", - "top" => "Top", - "use_destination_based_tax" => "", - "user_timezone" => "", - "website" => "web strana", - "wholesale_markup" => "", - "work_order_enable" => "", - "work_order_format" => "", + "address" => "Adresa tvrtke", + "address_required" => "Adresu tvrtke je potrebno unijeti", + "all_set" => "All file permissions are set correctly!", + "allow_duplicate_barcodes" => "", + "apostrophe" => "apostrophe", + "backup_button" => "Arhiva", + "backup_database" => "Arhiviranje baze", + "barcode" => "Barkoda", + "barcode_company" => "Naziv tvrtke", + "barcode_configuration" => "Konfiguracija barkoda", + "barcode_content" => "Sadržaj barkoda", + "barcode_first_row" => "1 red", + "barcode_font" => "Pismo", + "barcode_formats" => "", + "barcode_generate_if_empty" => "Generiraj ako je prazno", + "barcode_height" => "Visina(px)", + "barcode_id" => "ID artikla", + "barcode_info" => "Informacija o barkod-ovima", + "barcode_layout" => "Postavke barkod-a", + "barcode_name" => "Naziv", + "barcode_number" => "UPC/EAN/ISBN", + "barcode_number_in_row" => "Red.br.", + "barcode_page_cellspacing" => "Stranični prostor", + "barcode_page_width" => "Širina stranice", + "barcode_price" => "Cijena", + "barcode_second_row" => "2.red", + "barcode_third_row" => "3.red", + "barcode_tooltip" => "", + "barcode_type" => "Tip barkod-a", + "barcode_width" => "Širina (px)", + "bottom" => "Bottom", + "cash_button" => "", + "cash_button_1" => "", + "cash_button_2" => "", + "cash_button_3" => "", + "cash_button_4" => "", + "cash_button_5" => "", + "cash_button_6" => "", + "cash_decimals" => "", + "cash_decimals_tooltip" => "", + "cash_rounding" => "", + "category_dropdown" => "", + "center" => "Center", + "change_apperance_tooltip" => "", + "comma" => "comma", + "company" => "Naziv tvrtke", + "company_avatar" => "", + "company_change_image" => "Promijeni logo", + "company_logo" => "Logo tvrtke", + "company_remove_image" => "Ukloni logo", + "company_required" => "Polje naziv tvrtke je potreban", + "company_select_image" => "Odaberi logo", + "company_website_url" => "Adresa web stranice nije valjana (http://...)", + "country_codes" => "Country Codes", + "country_codes_tooltip" => "Comma separated list of country codes for nominatim address lookup.", + "currency_code" => "", + "currency_decimals" => "Velutne decimale", + "currency_symbol" => "Valutna oznaka", + "current_employee_only" => "", + "customer_reward" => "", + "customer_reward_duplicate" => "", + "customer_reward_enable" => "", + "customer_reward_invalid_chars" => "", + "customer_reward_required" => "", + "customer_sales_tax_support" => "", + "date_or_time_format" => "", + "datetimeformat" => "Oblik datuma i vremena", + "decimal_point" => "Decimalna točka", + "default_barcode_font_size_number" => "Veličina pisma barkod-a mora biti broj", + "default_barcode_font_size_required" => "Veličina pisma je potrebna", + "default_barcode_height_number" => "Veličina barkod-a mora biti broj", + "default_barcode_height_required" => "Veličina barkod-a je potrebna", + "default_barcode_num_in_row_number" => "Broj u redu barkod-a mora biti broj", + "default_barcode_num_in_row_required" => "Broj u redu barkod-a je potreban", + "default_barcode_page_cellspacing_number" => "Razmak barkod-a mora biti broj", + "default_barcode_page_cellspacing_required" => "Vonalkód cellatávolság kötelező mező.", + "default_barcode_page_width_number" => "Širina stranice barkod-a mora biti broj", + "default_barcode_page_width_required" => "Širina stranice barkod-a je potrebna", + "default_barcode_width_number" => "Az alapértelmezett vonalkód szélességnek számnak kell lennie", + "default_barcode_width_required" => "Širina barkod-a mora bit broj", + "default_item_columns" => "", + "default_origin_tax_code" => "", + "default_receivings_discount" => "", + "default_receivings_discount_number" => "", + "default_receivings_discount_required" => "", + "default_sales_discount" => "Zadani popust %", + "default_sales_discount_number" => "Zadani popust mora biti broj", + "default_sales_discount_required" => "Zadani popust je potreban", + "default_tax_category" => "", + "default_tax_code" => "", + "default_tax_jurisdiction" => "", + "default_tax_name_number" => "", + "default_tax_name_required" => "Naziv poreza je poteban", + "default_tax_rate" => "Porez %", + "default_tax_rate_1" => "Porez 1 %", + "default_tax_rate_2" => "Porez 2 %", + "default_tax_rate_3" => "", + "default_tax_rate_number" => "Zadani porez mora biti broj", + "default_tax_rate_required" => "Zadani porez je potreban", + "derive_sale_quantity" => "", + "derive_sale_quantity_tooltip" => "", + "dinner_table" => "", + "dinner_table_duplicate" => "", + "dinner_table_enable" => "", + "dinner_table_invalid_chars" => "", + "dinner_table_required" => "", + "dot" => "dot", + "email" => "Email", + "email_configuration" => "Email Configuration", + "email_mailpath" => "Path to Sendmail", + "email_protocol" => "Protocol", + "email_receipt_check_behaviour" => "", + "email_receipt_check_behaviour_always" => "", + "email_receipt_check_behaviour_last" => "", + "email_receipt_check_behaviour_never" => "", + "email_smtp_crypto" => "SMTP Encryption", + "email_smtp_host" => "SMTP Server", + "email_smtp_pass" => "SMTP Password", + "email_smtp_port" => "SMTP Port", + "email_smtp_timeout" => "SMTP Timeout (s)", + "email_smtp_user" => "SMTP Username", + "enable_avatar" => "", + "enable_avatar_tooltip" => "", + "enable_dropdown_tooltip" => "", + "enable_new_look" => "", + "enable_right_bar" => "", + "enable_right_bar_tooltip" => "", + "enforce_privacy" => "", + "enforce_privacy_tooltip" => "", + "fax" => "Fax", + "file_perm" => "There are problems with file permissions please fix and reload this page.", + "financial_year" => "", + "financial_year_apr" => "", + "financial_year_aug" => "", + "financial_year_dec" => "", + "financial_year_feb" => "", + "financial_year_jan" => "", + "financial_year_jul" => "", + "financial_year_jun" => "", + "financial_year_mar" => "", + "financial_year_may" => "", + "financial_year_nov" => "", + "financial_year_oct" => "", + "financial_year_sep" => "", + "floating_labels" => "", + "gcaptcha_enable" => "", + "gcaptcha_secret_key" => "", + "gcaptcha_secret_key_required" => "", + "gcaptcha_site_key" => "", + "gcaptcha_site_key_required" => "", + "gcaptcha_tooltip" => "", + "general" => "Opća", + "general_configuration" => "Opća konfiguracija", + "giftcard_number" => "", + "giftcard_random" => "", + "giftcard_series" => "", + "image_allowed_file_types" => "", + "image_max_height_tooltip" => "", + "image_max_size_tooltip" => "", + "image_max_width_tooltip" => "", + "image_restrictions" => "", + "include_hsn" => "", + "info" => "Info", + "info_configuration" => "Info o web trgovini", + "input_groups" => "", + "integrations" => "", + "integrations_configuration" => "", + "invoice" => "Račun", + "invoice_configuration" => "Postavke štamapnja", + "invoice_default_comments" => "Komentar na računu", + "invoice_email_message" => "e-mail za račun", + "invoice_enable" => "Enable Invoicing", + "invoice_printer" => "Printer za račun", + "invoice_type" => "", + "is_readable" => "", + "is_writable" => "is writable, but the permissions are higher than 750.", + "item_markup" => "", + "jsprintsetup_required" => "Upozorenje! Onemogućene opcije će raditi samo ako imate instaliran FireFox jsPrintSetup dodatak. Svakako snimiti?", + "language" => "Jezik", + "last_used_invoice_number" => "", + "last_used_quote_number" => "", + "last_used_work_order_number" => "", + "left" => "Left", + "license" => "License", + "license_configuration" => "License Statement", + "line_sequence" => "", + "lines_per_page" => "Linija po stranici", + "lines_per_page_number" => "Linija po stranici mora biti broj", + "lines_per_page_required" => "Broj linija po stranici je potreban podatak", + "locale" => "Lokacija", + "locale_configuration" => "Konfiguracija", + "locale_info" => "Informacije o lokalnoj konfiguraciji", + "location" => "Skladišta", + "location_configuration" => "Mjesto skladišta", + "location_info" => "Info o lokaciji skladišta", + "login_form" => "", + "logout" => "Želite napraviti arhivu prije nego izađete? Pritisnite [OK] za arhivu, [Cancel] to otkazivanje.", + "mailchimp" => "", + "mailchimp_api_key" => "", + "mailchimp_configuration" => "", + "mailchimp_key_successfully" => "", + "mailchimp_key_unsuccessfully" => "", + "mailchimp_lists" => "", + "mailchimp_tooltip" => "", + "message" => "Message", + "message_configuration" => "Message Configuration", + "msg_msg" => "Saved Text Message", + "msg_msg_placeholder" => "If you wish to use a SMS template save your message here. Otherwise leave the box blank.", + "msg_pwd" => "SMS-API Password", + "msg_pwd_required" => "SMS-API Password is a required field", + "msg_src" => "SMS-API Sender ID", + "msg_src_required" => "SMS-API Sender ID is a required field", + "msg_uid" => "SMS-API Username", + "msg_uid_required" => "SMS-API Username is a required field", + "multi_pack_enabled" => "", + "no_risk" => "No security/vulnerability risks.", + "none" => "none", + "notify_alignment" => "Notification Popup Position", + "number_format" => "Format broja", + "number_locale" => "Lokalnoj", + "number_locale_invalid" => "The entered locale is invalid. Check the link in the tooltip to find a sensible value", + "number_locale_required" => "Number Locale is a required field", + "number_locale_tooltip" => "Find a suitable locale through this link", + "os_timezone" => "", + "ospos_info" => "", + "payment_options_order" => "Payment Options Order", + "perm_risk" => "Permissions higher than 750 leaves this software at risk.", + "phone" => "Telefon tvrtke", + "phone_required" => "Telefon tvrtke je potreban", + "print_bottom_margin" => "Doljnja margina", + "print_bottom_margin_number" => "Doljnja margina mora biti broj", + "print_bottom_margin_required" => "Doljnja margina je potrebna", + "print_delay_autoreturn" => "", + "print_delay_autoreturn_number" => "", + "print_delay_autoreturn_required" => "", + "print_footer" => "Prikazati podnožje u pregledniku", + "print_header" => "Prikazati zaglavlje u pregledniku", + "print_left_margin" => "Lijeva margina", + "print_left_margin_number" => "Lijeva margina mora biti broj", + "print_left_margin_required" => "Lijeva margina je obavezna", + "print_receipt_check_behaviour" => "", + "print_receipt_check_behaviour_always" => "", + "print_receipt_check_behaviour_last" => "", + "print_receipt_check_behaviour_never" => "", + "print_right_margin" => "Desna margina", + "print_right_margin_number" => "Desna margina mora biti broj", + "print_right_margin_required" => "Desna margina je potrebna", + "print_silently" => "Pokaži okvir za štampanje", + "print_top_margin" => "Gornja margina", + "print_top_margin_number" => "Gornja margina mora biti broj", + "print_top_margin_required" => "Gornja margina je obavezna", + "quantity_decimals" => "Decimalne količine", + "quick_cash_enable" => "", + "quote_default_comments" => "", + "receipt" => "Priznanica", + "receipt_category" => "", + "receipt_configuration" => "Postavke štamapnja", + "receipt_default" => "Default", + "receipt_font_size" => "", + "receipt_font_size_number" => "", + "receipt_font_size_required" => "", + "receipt_info" => "Informacije o POS računu", + "receipt_printer" => "POS printer", + "receipt_short" => "Short", + "receipt_show_company_name" => "", + "receipt_show_description" => "Show Description", + "receipt_show_serialnumber" => "Show Serial Number", + "receipt_show_tax_ind" => "", + "receipt_show_taxes" => "Prikaži porez", + "receipt_show_total_discount" => "Pokaži ukupni popust", + "receipt_template" => "Receipt Template", + "receiving_calculate_average_price" => "Računaj prosječnu cijenu (primke)", + "recv_invoice_format" => "Oblik ulaznog računa(primke)", + "register_mode_default" => "", + "report_an_issue" => "", + "return_policy_required" => "Polje za povratne obavijesti je potrebno", + "reward" => "", + "reward_configuration" => "", + "right" => "Right", + "sales_invoice_format" => "Oblik fakture", + "sales_quote_format" => "", + "saved_successfully" => "Konfiguracija je uspješno snimljena", + "saved_unsuccessfully" => "Konfiguracija nije uspješno snimljena", + "security_issue" => "Security Vulnerability Warning", + "server_notice" => "Please use the below info for issue reporting.", + "service_charge" => "", + "show_due_enable" => "", + "show_office_group" => "", + "statistics" => "Send statistics", + "statistics_tooltip" => "Send statistics for development and feature improvement purposes", + "stock_location" => "Lokacija skladišta", + "stock_location_duplicate" => "Molim koristite jedinstveni naziv skladišta", + "stock_location_invalid_chars" => "Naziv skaldišta ne može sadržavati '_'", + "stock_location_required" => "Naziv skladišta je potreban", + "suggestions_fifth_column" => "", + "suggestions_first_column" => "", + "suggestions_fourth_column" => "", + "suggestions_layout" => "", + "suggestions_second_column" => "", + "suggestions_third_column" => "", + "system_conf" => "Setup & Conf", + "system_info" => "System Info", + "table" => "", + "table_configuration" => "", + "takings_printer" => "Printer za 'Prodano'", + "tax" => "", + "tax_category" => "", + "tax_category_duplicate" => "", + "tax_category_invalid_chars" => "", + "tax_category_required" => "", + "tax_category_used" => "", + "tax_configuration" => "", + "tax_decimals" => "Porezne decimale", + "tax_id" => "", + "tax_included" => "Uključuje porez", + "theme" => "Theme", + "theme_preview" => "", + "thousands_separator" => "Razdjelnik za tisućice", + "timezone" => "Vremenska zona", + "timezone_error" => "", + "top" => "Top", + "use_destination_based_tax" => "", + "user_timezone" => "", + "website" => "web strana", + "wholesale_markup" => "", + "work_order_enable" => "", + "work_order_format" => "", ]; diff --git a/app/Language/hr-HR/Customers.php b/app/Language/hr-HR/Customers.php index a35119002..6148fa713 100644 --- a/app/Language/hr-HR/Customers.php +++ b/app/Language/hr-HR/Customers.php @@ -1,56 +1,56 @@ "IBAN:", - "account_number_duplicate" => "Ovaj IBAN već postoji", - "available_points" => "", - "available_points_value" => "", - "average" => "", - "avg_discount" => "", - "basic_information" => "", - "cannot_be_deleted" => "Ne može se obrisati odabranog kupca, jer jedan ili više odabranih kupaca imaju prodaju.", - "company_name" => "Naziv tvrtke", - "confirm_delete" => "Želite li obrisati odabranog kupca?", - "confirm_restore" => "", - "consent" => "", - "consent_required" => "", - "csv_import_failed" => "Greška kod uvoza iz CSV-a", - "csv_import_nodata_wrongformat" => "Your uploaded file has no data or wrong format", - "csv_import_partially_failed" => "Most Customers imported. But some were not, here is the list", - "csv_import_success" => "Import of Customers successful", - "customer" => "Kupac", - "date" => "", - "discount" => "Discount", - "discount_fixed" => "", - "discount_percent" => "", - "discount_type" => "", - "email_duplicate" => "", - "employee" => "", - "error_adding_updating" => "Greška kod dodavanja/ažuriranja kupca", - "import_items_csv" => "Učitaj kupce iz csv datoteke", - "mailchimp_activity_click" => "", - "mailchimp_activity_lastopen" => "", - "mailchimp_activity_open" => "", - "mailchimp_activity_total" => "", - "mailchimp_activity_unopen" => "", - "mailchimp_email_client" => "", - "mailchimp_info" => "", - "mailchimp_member_rating" => "", - "mailchimp_status" => "", - "mailchimp_vip" => "", - "max" => "", - "min" => "", - "new" => "Novi kupac", - "none_selected" => "Niste odabrali nijednog kupca za brisanje", - "one_or_multiple" => "Kupac(i)", - "quantity" => "", - "stats_info" => "", - "successful_adding" => "Uspješno ste dodali kupca", - "successful_deleted" => "Kupac je uspješno obrisan", - "successful_updating" => "Podaci o kupcu su uspješno ažurirani", - "tax_code" => "", - "tax_id" => "", - "taxable" => "Oporezivo", - "total" => "Total", - "update" => "Ažuriraj kupca", - "rewards_package" => "", + "account_number" => "IBAN:", + "account_number_duplicate" => "Ovaj IBAN već postoji", + "available_points" => "", + "available_points_value" => "", + "average" => "", + "avg_discount" => "", + "basic_information" => "", + "cannot_be_deleted" => "Ne može se obrisati odabranog kupca, jer jedan ili više odabranih kupaca imaju prodaju.", + "company_name" => "Naziv tvrtke", + "confirm_delete" => "Želite li obrisati odabranog kupca?", + "confirm_restore" => "", + "consent" => "", + "consent_required" => "", + "csv_import_failed" => "Greška kod uvoza iz CSV-a", + "csv_import_nodata_wrongformat" => "Your uploaded file has no data or wrong format", + "csv_import_partially_failed" => "Most Customers imported. But some were not, here is the list", + "csv_import_success" => "Import of Customers successful", + "customer" => "Kupac", + "date" => "", + "discount" => "Discount", + "discount_fixed" => "", + "discount_percent" => "", + "discount_type" => "", + "email_duplicate" => "", + "employee" => "", + "error_adding_updating" => "Greška kod dodavanja/ažuriranja kupca", + "import_items_csv" => "Učitaj kupce iz csv datoteke", + "mailchimp_activity_click" => "", + "mailchimp_activity_lastopen" => "", + "mailchimp_activity_open" => "", + "mailchimp_activity_total" => "", + "mailchimp_activity_unopen" => "", + "mailchimp_email_client" => "", + "mailchimp_info" => "", + "mailchimp_member_rating" => "", + "mailchimp_status" => "", + "mailchimp_vip" => "", + "max" => "", + "min" => "", + "new" => "Novi kupac", + "none_selected" => "Niste odabrali nijednog kupca za brisanje", + "one_or_multiple" => "Kupac(i)", + "quantity" => "", + "stats_info" => "", + "successful_adding" => "Uspješno ste dodali kupca", + "successful_deleted" => "Kupac je uspješno obrisan", + "successful_updating" => "Podaci o kupcu su uspješno ažurirani", + "tax_code" => "", + "tax_id" => "", + "taxable" => "Oporezivo", + "total" => "Total", + "update" => "Ažuriraj kupca", + "rewards_package" => "", ]; diff --git a/app/Language/hr-HR/Datepicker.php b/app/Language/hr-HR/Datepicker.php index 91d691aa7..e7fdaccb6 100644 --- a/app/Language/hr-HR/Datepicker.php +++ b/app/Language/hr-HR/Datepicker.php @@ -1,23 +1,23 @@ "Sve", - "apply" => "Primjeni", - "cancel" => "Otkaži", - "custom" => "Slobodan izbor", - "from" => "Od", - "last_30" => "Zadnjih 30 dana", - "last_7" => "Zadnjih 7 dana", - "last_financial_year" => "", - "last_month" => "Zadnji mjesec", - "last_year" => "Zadnja godina", - "same_month_last_year" => "Ovaj mjesec prošle godine", - "same_month_to_same_day_last_year" => "Ovaj mjesec do danas prošle godine", - "this_financial_year" => "", - "this_month" => "Ovaj mjesec", - "this_year" => "Ova godina", - "to" => "Do", - "today" => "Danas", - "today_last_year" => "Ovaj dan prošle godine", - "weekstart" => "1", - "yesterday" => "Jučer", + "all_time" => "Sve", + "apply" => "Primjeni", + "cancel" => "Otkaži", + "custom" => "Slobodan izbor", + "from" => "Od", + "last_30" => "Zadnjih 30 dana", + "last_7" => "Zadnjih 7 dana", + "last_financial_year" => "", + "last_month" => "Zadnji mjesec", + "last_year" => "Zadnja godina", + "same_month_last_year" => "Ovaj mjesec prošle godine", + "same_month_to_same_day_last_year" => "Ovaj mjesec do danas prošle godine", + "this_financial_year" => "", + "this_month" => "Ovaj mjesec", + "this_year" => "Ova godina", + "to" => "Do", + "today" => "Danas", + "today_last_year" => "Ovaj dan prošle godine", + "weekstart" => "1", + "yesterday" => "Jučer", ]; diff --git a/app/Language/hr-HR/Employees.php b/app/Language/hr-HR/Employees.php index 3b2c629a0..0a3650549 100644 --- a/app/Language/hr-HR/Employees.php +++ b/app/Language/hr-HR/Employees.php @@ -1,44 +1,44 @@ "", - "basic_information" => "Informacije", - "cannot_be_deleted" => "Ne možete obristi odabranog radnika, jedan ili više radnika ima prodaju ili pokušavate obristi sebe :)", - "change_employee" => "", - "change_password" => "", - "clerk" => "", - "commission" => "", - "confirm_delete" => "Jeste li ste sigurni da želite obristi odabranog radnika?", - "confirm_restore" => "", - "current_password" => "", - "current_password_invalid" => "", - "employee" => "Radnik", - "error_adding_updating" => "Greška kod dodavanja/ažuriranja radnika", - "error_deleting_demo_admin" => "Ne možete obrisati demo admin korisnika", - "error_updating_demo_admin" => "Ne možete promijeniti demo admin korisnika", - "language" => "", - "login_info" => "Prijava", - "manager" => "", - "new" => "Novi radnik", - "none_selected" => "Nije odabran niti jedan radnik za brisanje", - "one_or_multiple" => "Radnik(ci)", - "password" => "Lozinka", - "password_minlength" => "Lozinka mora imati najmanje 8 znakova", - "password_must_match" => "Lozinka se ne podudara", - "password_not_must_match" => "", - "password_required" => "Lozinka je potrebna", - "permission_desc" => "Odaberite module za dozvolu", - "permission_info" => "Dozvole", - "repeat_password" => "Ponovite lozinku", - "subpermission_required" => "Odaberite barem jednu dozvolu po modulu", - "successful_adding" => "Uspješno ste dodali radnika", - "successful_change_password" => "", - "successful_deleted" => "Uspješno ste obrisali radnika", - "successful_updating" => "Uspješno ste ažurirali radnika", - "system_language" => "", - "unsuccessful_change_password" => "", - "update" => "Ažuriraj radnika", - "username" => "Korisničko ime", - "username_duplicate" => "", - "username_minlength" => "Korisničko ime mora imati najmanje 5 znakova", - "username_required" => "Korisničko ime je potrebno", + "administrator" => "", + "basic_information" => "Informacije", + "cannot_be_deleted" => "Ne možete obristi odabranog radnika, jedan ili više radnika ima prodaju ili pokušavate obristi sebe :)", + "change_employee" => "", + "change_password" => "", + "clerk" => "", + "commission" => "", + "confirm_delete" => "Jeste li ste sigurni da želite obristi odabranog radnika?", + "confirm_restore" => "", + "current_password" => "", + "current_password_invalid" => "", + "employee" => "Radnik", + "error_adding_updating" => "Greška kod dodavanja/ažuriranja radnika", + "error_deleting_demo_admin" => "Ne možete obrisati demo admin korisnika", + "error_updating_demo_admin" => "Ne možete promijeniti demo admin korisnika", + "language" => "", + "login_info" => "Prijava", + "manager" => "", + "new" => "Novi radnik", + "none_selected" => "Nije odabran niti jedan radnik za brisanje", + "one_or_multiple" => "Radnik(ci)", + "password" => "Lozinka", + "password_minlength" => "Lozinka mora imati najmanje 8 znakova", + "password_must_match" => "Lozinka se ne podudara", + "password_not_must_match" => "", + "password_required" => "Lozinka je potrebna", + "permission_desc" => "Odaberite module za dozvolu", + "permission_info" => "Dozvole", + "repeat_password" => "Ponovite lozinku", + "subpermission_required" => "Odaberite barem jednu dozvolu po modulu", + "successful_adding" => "Uspješno ste dodali radnika", + "successful_change_password" => "", + "successful_deleted" => "Uspješno ste obrisali radnika", + "successful_updating" => "Uspješno ste ažurirali radnika", + "system_language" => "", + "unsuccessful_change_password" => "", + "update" => "Ažuriraj radnika", + "username" => "Korisničko ime", + "username_duplicate" => "", + "username_minlength" => "Korisničko ime mora imati najmanje 5 znakova", + "username_required" => "Korisničko ime je potrebno", ]; diff --git a/app/Language/hr-HR/Enum.php b/app/Language/hr-HR/Enum.php index c39655c3b..1ed7e9313 100644 --- a/app/Language/hr-HR/Enum.php +++ b/app/Language/hr-HR/Enum.php @@ -1,10 +1,10 @@ "", - "half_even" => "", - "half_five" => "", - "half_odd" => "", - "half_up" => "", - "round_down" => "", - "round_up" => "", + "half_down" => "", + "half_even" => "", + "half_five" => "", + "half_odd" => "", + "half_up" => "", + "round_down" => "", + "round_up" => "", ]; diff --git a/app/Language/hr-HR/Error.php b/app/Language/hr-HR/Error.php index 7c6327159..aa8fb9aaf 100644 --- a/app/Language/hr-HR/Error.php +++ b/app/Language/hr-HR/Error.php @@ -1,5 +1,5 @@ "Nemate dozvolu za pristup modulu", - "unknown" => "ismeretlen", + "no_permission_module" => "Nemate dozvolu za pristup modulu", + "unknown" => "ismeretlen", ]; diff --git a/app/Language/hr-HR/Expenses.php b/app/Language/hr-HR/Expenses.php index e9e237376..8ef1fe954 100644 --- a/app/Language/hr-HR/Expenses.php +++ b/app/Language/hr-HR/Expenses.php @@ -1,50 +1,50 @@ "", - "amount" => "", - "amount_number" => "", - "amount_required" => "", - "by_category" => "", - "cannot_be_deleted" => "", - "cash" => "", - "cash_filter" => "", - "categories_name" => "", - "category_required" => "", - "check" => "", - "check_filter" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "credit" => "", - "credit_filter" => "", - "date" => "", - "date_number" => "", - "date_required" => "", - "debit" => "", - "debit_filter" => "", - "description" => "", - "due" => "", - "due_filter" => "", - "employee" => "", - "error_adding_updating" => "", - "expense_id" => "", - "expenses_employee" => "", - "info" => "", - "ip_address" => "", - "is_deleted" => "", - "name_required" => "", - "new" => "", - "new_supplier" => "", - "no_expenses_to_display" => "", - "none_selected" => "", - "one_or_multiple" => "", - "payment" => "", - "start_typing_supplier_name" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "supplier_name" => "", - "supplier_tax_code" => "", - "tax_amount" => "", - "tax_amount_number" => "", - "update" => "", + "add_item" => "", + "amount" => "", + "amount_number" => "", + "amount_required" => "", + "by_category" => "", + "cannot_be_deleted" => "", + "cash" => "", + "cash_filter" => "", + "categories_name" => "", + "category_required" => "", + "check" => "", + "check_filter" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "credit" => "", + "credit_filter" => "", + "date" => "", + "date_number" => "", + "date_required" => "", + "debit" => "", + "debit_filter" => "", + "description" => "", + "due" => "", + "due_filter" => "", + "employee" => "", + "error_adding_updating" => "", + "expense_id" => "", + "expenses_employee" => "", + "info" => "", + "ip_address" => "", + "is_deleted" => "", + "name_required" => "", + "new" => "", + "new_supplier" => "", + "no_expenses_to_display" => "", + "none_selected" => "", + "one_or_multiple" => "", + "payment" => "", + "start_typing_supplier_name" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "supplier_name" => "", + "supplier_tax_code" => "", + "tax_amount" => "", + "tax_amount_number" => "", + "update" => "", ]; diff --git a/app/Language/hr-HR/Expenses_categories.php b/app/Language/hr-HR/Expenses_categories.php index 03169e528..7d3b08c27 100644 --- a/app/Language/hr-HR/Expenses_categories.php +++ b/app/Language/hr-HR/Expenses_categories.php @@ -1,22 +1,22 @@ "", - "add_item" => "", - "cannot_be_deleted" => "", - "category_id" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "description" => "", - "error_adding_updating" => "", - "info" => "", - "name" => "", - "new" => "", - "no_expenses_categories_to_display" => "", - "none_selected" => "", - "one_or_multiple" => "", - "quantity" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "update" => "", + "category_name_required" => "", + "add_item" => "", + "cannot_be_deleted" => "", + "category_id" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "description" => "", + "error_adding_updating" => "", + "info" => "", + "name" => "", + "new" => "", + "no_expenses_categories_to_display" => "", + "none_selected" => "", + "one_or_multiple" => "", + "quantity" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "update" => "", ]; diff --git a/app/Language/hr-HR/Giftcards.php b/app/Language/hr-HR/Giftcards.php index aec495257..801ff630d 100644 --- a/app/Language/hr-HR/Giftcards.php +++ b/app/Language/hr-HR/Giftcards.php @@ -1,71 +1,71 @@ "Inventuru dodati/oduzeti", - "allow_alt_description" => "Dozvoli Alt opis", - "bulk_edit" => "Grupno uređivanje", - "cannot_be_deleted" => "Nije moguće obrisati poklon bon, jedan ili više poklon bonova ima prodaju.", - "cannot_find_giftcard" => "Ne možemo pronaći informacije o poklon bonu", - "cannot_use" => "Giftcard {0} cannot be used for this sale. Invalid Customer!", - "card_value" => "Vrijednost", - "category" => "Kategorija", - "change_all_to_allow_alt_desc" => "Dozvoli Alt opis za sve", - "change_all_to_not_allow_allow_desc" => "Nije dozvoljen Alt opis za sve", - "change_all_to_serialized" => "Promijeni sve u Seralized", - "change_all_to_unserialized" => "Promijeni sve u Unseralized", - "confirm_bulk_edit" => "Jeste li sigurni da želite grupno urediti sve odabrane poklon bonove?", - "confirm_delete" => "Jeste li sigurni da želite obrisati sve odabrane poklon bonove?", - "confirm_restore" => "", - "cost_price" => "Nabavna cijena", - "count" => "Ažuriraj inventuru", - "csv_import_failed" => "Greška kod CSV uvoza", - "current_quantity" => "Trenutna količina", - "description" => "Opis", - "details_count" => "Detalji brojanja inventure", - "do_nothing" => "Ne radi ništa", - "edit_fields_you_want_to_update" => "Uredi polja za sve odabrane poklon bonove", - "edit_multiple_giftcards" => "Uređivanje više poklon bonova", - "error_adding_updating" => "Greška kod dodavanja/ažuriranja poklon bona", - "error_updating_multiple" => "Greška kod ažuriranja poklon bona", - "generate_barcodes" => "Generiraj barkod", - "giftcard" => "Poklon bon", - "giftcard_number" => "Broj poklon bona", - "info_provided_by" => "Info daje", - "inventory_comments" => "KomentariMegjegyzések", - "is_serialized" => "Poklon bon ima serijski broj", - "low_inventory_giftcards" => "Poklon bon rasprodaje", - "manually_editing_of_quantity" => "Ručna promjena količine", - "must_select_giftcard_for_barcode" => "Morate odabrati bar jedan poklon bon da generirate barkod", - "new" => "Novi poklon bon", - "no_description_giftcards" => "Poklon bon nema opisa", - "no_giftcards_to_display" => "Nema poklon bona za prikaz", - "none" => "Ništa", - "none_selected" => "Niste odabrali nijedan poklon bon za ispravak", - "number" => "Broj poklon bona mora biti broj", - "number_information" => "Poklon bon broj", - "number_required" => "Broj poklon bona je potreban", - "one_or_multiple" => "Poklon bon(ovi)", - "person_id" => "Kupac", - "quantity" => "Količina", - "quantity_required" => "Količina je potrebna. Molim otkažite (x) za odustajanje", - "remaining_balance" => "Na poklon bonu {0} ostala je još vrijednost {1}!", - "reorder_level" => "Poredaj razine", - "retrive_giftcard_info" => "Pozovi info o pklon bonu", - "sales_tax_1" => "Prodajni porez 1", - "sales_tax_2" => "Prodajni porez 2", - "serialized_giftcards" => "Serializiraj poklon bon", - "successful_adding" => "Uspješno ste dodali poklon bon", - "successful_bulk_edit" => "Uspješno ste promijenili poklon bonove", - "successful_deleted" => "Uspješno ste obrisali poklon bon", - "successful_updating" => "Uspješno ste ažurirali poklon bon", - "supplier" => "Dobavljač", - "tax_1" => "Porez 1", - "tax_2" => "Porez 2", - "tax_percent" => "% poreza", - "tax_percents" => "%-ci poreza", - "unit_price" => "Jedinična cijena", - "upc_database" => "UPC tablica", - "update" => "Ažurirajte poklon bon", - "use_inventory_menu" => "Koristite meni inventure", - "value" => "Vrijednost poklon bona mora biti broj", - "value_required" => "Vrijednost poklon kartice je potrebna", + "add_minus" => "Inventuru dodati/oduzeti", + "allow_alt_description" => "Dozvoli Alt opis", + "bulk_edit" => "Grupno uređivanje", + "cannot_be_deleted" => "Nije moguće obrisati poklon bon, jedan ili više poklon bonova ima prodaju.", + "cannot_find_giftcard" => "Ne možemo pronaći informacije o poklon bonu", + "cannot_use" => "Giftcard {0} cannot be used for this sale. Invalid Customer!", + "card_value" => "Vrijednost", + "category" => "Kategorija", + "change_all_to_allow_alt_desc" => "Dozvoli Alt opis za sve", + "change_all_to_not_allow_allow_desc" => "Nije dozvoljen Alt opis za sve", + "change_all_to_serialized" => "Promijeni sve u Seralized", + "change_all_to_unserialized" => "Promijeni sve u Unseralized", + "confirm_bulk_edit" => "Jeste li sigurni da želite grupno urediti sve odabrane poklon bonove?", + "confirm_delete" => "Jeste li sigurni da želite obrisati sve odabrane poklon bonove?", + "confirm_restore" => "", + "cost_price" => "Nabavna cijena", + "count" => "Ažuriraj inventuru", + "csv_import_failed" => "Greška kod CSV uvoza", + "current_quantity" => "Trenutna količina", + "description" => "Opis", + "details_count" => "Detalji brojanja inventure", + "do_nothing" => "Ne radi ništa", + "edit_fields_you_want_to_update" => "Uredi polja za sve odabrane poklon bonove", + "edit_multiple_giftcards" => "Uređivanje više poklon bonova", + "error_adding_updating" => "Greška kod dodavanja/ažuriranja poklon bona", + "error_updating_multiple" => "Greška kod ažuriranja poklon bona", + "generate_barcodes" => "Generiraj barkod", + "giftcard" => "Poklon bon", + "giftcard_number" => "Broj poklon bona", + "info_provided_by" => "Info daje", + "inventory_comments" => "KomentariMegjegyzések", + "is_serialized" => "Poklon bon ima serijski broj", + "low_inventory_giftcards" => "Poklon bon rasprodaje", + "manually_editing_of_quantity" => "Ručna promjena količine", + "must_select_giftcard_for_barcode" => "Morate odabrati bar jedan poklon bon da generirate barkod", + "new" => "Novi poklon bon", + "no_description_giftcards" => "Poklon bon nema opisa", + "no_giftcards_to_display" => "Nema poklon bona za prikaz", + "none" => "Ništa", + "none_selected" => "Niste odabrali nijedan poklon bon za ispravak", + "number" => "Broj poklon bona mora biti broj", + "number_information" => "Poklon bon broj", + "number_required" => "Broj poklon bona je potreban", + "one_or_multiple" => "Poklon bon(ovi)", + "person_id" => "Kupac", + "quantity" => "Količina", + "quantity_required" => "Količina je potrebna. Molim otkažite (x) za odustajanje", + "remaining_balance" => "Na poklon bonu {0} ostala je još vrijednost {1}!", + "reorder_level" => "Poredaj razine", + "retrive_giftcard_info" => "Pozovi info o pklon bonu", + "sales_tax_1" => "Prodajni porez 1", + "sales_tax_2" => "Prodajni porez 2", + "serialized_giftcards" => "Serializiraj poklon bon", + "successful_adding" => "Uspješno ste dodali poklon bon", + "successful_bulk_edit" => "Uspješno ste promijenili poklon bonove", + "successful_deleted" => "Uspješno ste obrisali poklon bon", + "successful_updating" => "Uspješno ste ažurirali poklon bon", + "supplier" => "Dobavljač", + "tax_1" => "Porez 1", + "tax_2" => "Porez 2", + "tax_percent" => "% poreza", + "tax_percents" => "%-ci poreza", + "unit_price" => "Jedinična cijena", + "upc_database" => "UPC tablica", + "update" => "Ažurirajte poklon bon", + "use_inventory_menu" => "Koristite meni inventure", + "value" => "Vrijednost poklon bona mora biti broj", + "value_required" => "Vrijednost poklon kartice je potrebna", ]; diff --git a/app/Language/hr-HR/Item_kits.php b/app/Language/hr-HR/Item_kits.php index 94d957b1f..c35a670c0 100644 --- a/app/Language/hr-HR/Item_kits.php +++ b/app/Language/hr-HR/Item_kits.php @@ -1,41 +1,41 @@ "Dodaj artikl", - "all" => "", - "cannot_be_deleted" => "Ne možete obrisati normativ(e)", - "confirm_delete" => "Jeste li sigurni da želite obrisati normativ", - "confirm_restore" => "", - "description" => "Opis normativa", - "discount" => "", - "discount_fixed" => "", - "discount_percent" => "", - "discount_type" => "", - "error_adding_updating" => "Greška kod dodavanja/ažuriranja normativa", - "find_kit_item" => "", - "info" => "Info normativa", - "item" => "Artikal", - "item_kit_number" => "", - "item_kit_number_duplicate" => "", - "item_number" => "", - "item_number_duplicate" => "", - "items" => "Stavke normativa", - "kit" => "Normativ br.", - "kit_and_components" => "", - "kit_and_stock" => "", - "kit_only" => "", - "name" => "Naziv normativa", - "new" => "Novi normativ", - "no_item_kits_to_display" => "Nema normativa za prikaz", - "none_selected" => "Niste odabrali nijedan normativ", - "one_or_multiple" => "Stavka(e) normativa", - "price_option" => "", - "priced_only" => "", - "print_option" => "", - "quantity" => "Količina", - "sequence" => "", - "successful_adding" => "Uspješno ste dodali normativ", - "successful_deleted" => "Uspješno ste obrisali normativ", - "successful_updating" => "Uspješno ste ažurirali normativ", - "unit_price" => "", - "update" => "Ažuriranje normativa", + "add_item" => "Dodaj artikl", + "all" => "", + "cannot_be_deleted" => "Ne možete obrisati normativ(e)", + "confirm_delete" => "Jeste li sigurni da želite obrisati normativ", + "confirm_restore" => "", + "description" => "Opis normativa", + "discount" => "", + "discount_fixed" => "", + "discount_percent" => "", + "discount_type" => "", + "error_adding_updating" => "Greška kod dodavanja/ažuriranja normativa", + "find_kit_item" => "", + "info" => "Info normativa", + "item" => "Artikal", + "item_kit_number" => "", + "item_kit_number_duplicate" => "", + "item_number" => "", + "item_number_duplicate" => "", + "items" => "Stavke normativa", + "kit" => "Normativ br.", + "kit_and_components" => "", + "kit_and_stock" => "", + "kit_only" => "", + "name" => "Naziv normativa", + "new" => "Novi normativ", + "no_item_kits_to_display" => "Nema normativa za prikaz", + "none_selected" => "Niste odabrali nijedan normativ", + "one_or_multiple" => "Stavka(e) normativa", + "price_option" => "", + "priced_only" => "", + "print_option" => "", + "quantity" => "Količina", + "sequence" => "", + "successful_adding" => "Uspješno ste dodali normativ", + "successful_deleted" => "Uspješno ste obrisali normativ", + "successful_updating" => "Uspješno ste ažurirali normativ", + "unit_price" => "", + "update" => "Ažuriranje normativa", ]; diff --git a/app/Language/hr-HR/Items.php b/app/Language/hr-HR/Items.php index 66f621b7d..1873930c3 100644 --- a/app/Language/hr-HR/Items.php +++ b/app/Language/hr-HR/Items.php @@ -1,120 +1,120 @@ "Dodavanje/skidanje s inventure", - "allow_alt_description" => "Dozvoli Alt opis", - "amount_entry" => "", - "bulk_edit" => "Zajedno uređenje", - "buy_price_required" => "Prodajna cijena je potrebna", - "cannot_be_deleted" => "Nemožete obrisati odabranu stavku, jedna ili više odabranih stavki ima prodaju.", - "cannot_find_item" => "Nema informacije o odabranoj stavci", - "categories" => "", - "category" => "Kategorija", - "category_new" => "", - "category_required" => "Kategorija je potrebna", - "change_all_to_allow_alt_desc" => "Dozvali Alt opis za sve", - "change_all_to_not_allow_allow_desc" => "Nije dozvoljen Alt opis za sve", - "change_all_to_serialized" => "Promijeni sve u serijske brojeve", - "change_all_to_unserialized" => "ukloni sve serijske brojeve", - "change_image" => "Promjeni sliku", - "confirm_bulk_edit" => "Jeste li sigurni da želite urediti odabrane stavke?", - "confirm_bulk_edit_wipe_taxes" => "Sve stavke poreznih informacija bit će zamijenjene", - "confirm_delete" => "Jeste li sigrni da želite obrisati odabrane stavke?", - "confirm_restore" => "", - "cost_price" => "Nabavna cijena", - "cost_price_number" => "Nabavna cijena mora biti broj", - "cost_price_required" => "Nabavna cijena je potrebna", - "count" => "Ažuriraj inveturu", - "csv_import_failed" => "Greška kod uvoza iz CSV-a", - "csv_import_nodata_wrongformat" => "Your uploaded file has no data or wrong format", - "csv_import_partially_failed" => "Most Items imported. But some were not, here is the list", - "csv_import_success" => "Import of Items successful", - "current_quantity" => "Trenutna količina", - "default_pack_name" => "", - "description" => "Opis", - "details_count" => "Pojedinosati o količinama inventure", - "do_nothing" => "Ne radi ništa", - "edit" => "", - "edit_fields_you_want_to_update" => "Uredi polja koja želite urediti za sve odabrane stavke", - "edit_multiple_items" => "Uredi višestruke stavke", - "empty_upc_items" => "UPC artikal", - "error_adding_updating" => "Greška kod dodavanja/ažuriranja stavke", - "error_updating_multiple" => "Greška kod ažuriranja stavki", - "generate_barcodes" => "Generiraj barkod", - "hsn_code" => "", - "image" => "Slika", - "import_items_csv" => "Uvezi stavke iz CSV-a", - "info_provided_by" => "Info daje", - "inventory" => "Inventura", - "inventory_CSV_import_quantity" => "", - "inventory_comments" => "Komentari", - "inventory_data_tracking" => "", - "inventory_date" => "", - "inventory_employee" => "", - "inventory_in_out_quantity" => "", - "inventory_remarks" => "", - "is_deleted" => "Obrisano", - "is_printed" => "", - "is_serialized" => "Artikal ima ser. broj", - "item" => "Stavka", - "item_id" => "", - "item_number" => "UPC/EAN/ISBN", - "item_number_duplicate" => "Broj stavke već postoji u bazi", - "kit" => "", - "location" => "Mjesto", - "low_inventory_items" => "Rasprodaja artikala", - "low_sell_item" => "", - "manually_editing_of_quantity" => "Ručno uređivanje količine", - "markup" => "", - "name" => "Naziv artikla", - "name_required" => "Naziv artikla je potreban", - "new" => "Novi artikal", - "no_description_items" => "Artikal nema opisa", - "no_items_to_display" => "Nema artikla za prikazati", - "none" => "Egysem", - "none_selected" => "Niste odabrali nijedan artikal za uređivanje", - "nonstock" => "", - "number_information" => "Redni broj", - "number_required" => "UPC/EAN/ISBN je potreban", - "one_or_multiple" => "Artikal(i)", - "pack_name" => "", - "qty_per_pack" => "", - "quantity" => "Količina", - "quantity_number" => "Količina mora biti broj", - "quantity_required" => "", - "receiving_quantity" => "Zaprimljena količina", - "remove_image" => "Ukloni sliku", - "reorder_level" => "Poredaj razine", - "reorder_level_number" => "Numeracija mora biti numerička", - "reorder_level_required" => "Numeracija je obavezna", - "retrive_item_info" => "Info o zaprimljenom artiklu", - "sales_tax_1" => "Prodajni porez 1", - "sales_tax_2" => "Prodajni porez 2", - "search_attributes" => "Polje za pretragu", - "select_image" => "Odaberi sliku", - "serialized_items" => "Artikl ima ser. broj", - "standard" => "", - "stock" => "", - "stock_location" => "Mjesto skladišta", - "stock_type" => "", - "successful_adding" => "Uspješno ste dodali artikal", - "successful_bulk_edit" => "Uspješno ste ažurirali odabrane stavke", - "successful_deleted" => "Uspješno ste obrisali artikl", - "successful_updating" => "Uspješno ste ažurirali artikl", - "supplier" => "Dobavljač", - "tax_1" => "Porez 1", - "tax_2" => "Porez 2", - "tax_3" => "", - "tax_category" => "", - "tax_percent" => "% poreza", - "tax_percent_number" => "", - "tax_percent_required" => "% poreza je obavezan", - "tax_percents" => "%-ci poreza", - "temp" => "", - "type" => "", - "unit_price" => "Maloprodajna cijena", - "unit_price_number" => "Maloprodajna cijena mora biti broj", - "unit_price_required" => "Maloprodajna cijena je obavezna", - "upc_database" => "UPC baza", - "update" => "Ažuriraj artikl", - "use_inventory_menu" => "Koristi inv. meni", + "add_minus" => "Dodavanje/skidanje s inventure", + "allow_alt_description" => "Dozvoli Alt opis", + "amount_entry" => "", + "bulk_edit" => "Zajedno uređenje", + "buy_price_required" => "Prodajna cijena je potrebna", + "cannot_be_deleted" => "Nemožete obrisati odabranu stavku, jedna ili više odabranih stavki ima prodaju.", + "cannot_find_item" => "Nema informacije o odabranoj stavci", + "categories" => "", + "category" => "Kategorija", + "category_new" => "", + "category_required" => "Kategorija je potrebna", + "change_all_to_allow_alt_desc" => "Dozvali Alt opis za sve", + "change_all_to_not_allow_allow_desc" => "Nije dozvoljen Alt opis za sve", + "change_all_to_serialized" => "Promijeni sve u serijske brojeve", + "change_all_to_unserialized" => "ukloni sve serijske brojeve", + "change_image" => "Promjeni sliku", + "confirm_bulk_edit" => "Jeste li sigurni da želite urediti odabrane stavke?", + "confirm_bulk_edit_wipe_taxes" => "Sve stavke poreznih informacija bit će zamijenjene", + "confirm_delete" => "Jeste li sigrni da želite obrisati odabrane stavke?", + "confirm_restore" => "", + "cost_price" => "Nabavna cijena", + "cost_price_number" => "Nabavna cijena mora biti broj", + "cost_price_required" => "Nabavna cijena je potrebna", + "count" => "Ažuriraj inveturu", + "csv_import_failed" => "Greška kod uvoza iz CSV-a", + "csv_import_nodata_wrongformat" => "Your uploaded file has no data or wrong format", + "csv_import_partially_failed" => "Most Items imported. But some were not, here is the list", + "csv_import_success" => "Import of Items successful", + "current_quantity" => "Trenutna količina", + "default_pack_name" => "", + "description" => "Opis", + "details_count" => "Pojedinosati o količinama inventure", + "do_nothing" => "Ne radi ništa", + "edit" => "", + "edit_fields_you_want_to_update" => "Uredi polja koja želite urediti za sve odabrane stavke", + "edit_multiple_items" => "Uredi višestruke stavke", + "empty_upc_items" => "UPC artikal", + "error_adding_updating" => "Greška kod dodavanja/ažuriranja stavke", + "error_updating_multiple" => "Greška kod ažuriranja stavki", + "generate_barcodes" => "Generiraj barkod", + "hsn_code" => "", + "image" => "Slika", + "import_items_csv" => "Uvezi stavke iz CSV-a", + "info_provided_by" => "Info daje", + "inventory" => "Inventura", + "inventory_CSV_import_quantity" => "", + "inventory_comments" => "Komentari", + "inventory_data_tracking" => "", + "inventory_date" => "", + "inventory_employee" => "", + "inventory_in_out_quantity" => "", + "inventory_remarks" => "", + "is_deleted" => "Obrisano", + "is_printed" => "", + "is_serialized" => "Artikal ima ser. broj", + "item" => "Stavka", + "item_id" => "", + "item_number" => "UPC/EAN/ISBN", + "item_number_duplicate" => "Broj stavke već postoji u bazi", + "kit" => "", + "location" => "Mjesto", + "low_inventory_items" => "Rasprodaja artikala", + "low_sell_item" => "", + "manually_editing_of_quantity" => "Ručno uređivanje količine", + "markup" => "", + "name" => "Naziv artikla", + "name_required" => "Naziv artikla je potreban", + "new" => "Novi artikal", + "no_description_items" => "Artikal nema opisa", + "no_items_to_display" => "Nema artikla za prikazati", + "none" => "Egysem", + "none_selected" => "Niste odabrali nijedan artikal za uređivanje", + "nonstock" => "", + "number_information" => "Redni broj", + "number_required" => "UPC/EAN/ISBN je potreban", + "one_or_multiple" => "Artikal(i)", + "pack_name" => "", + "qty_per_pack" => "", + "quantity" => "Količina", + "quantity_number" => "Količina mora biti broj", + "quantity_required" => "", + "receiving_quantity" => "Zaprimljena količina", + "remove_image" => "Ukloni sliku", + "reorder_level" => "Poredaj razine", + "reorder_level_number" => "Numeracija mora biti numerička", + "reorder_level_required" => "Numeracija je obavezna", + "retrive_item_info" => "Info o zaprimljenom artiklu", + "sales_tax_1" => "Prodajni porez 1", + "sales_tax_2" => "Prodajni porez 2", + "search_attributes" => "Polje za pretragu", + "select_image" => "Odaberi sliku", + "serialized_items" => "Artikl ima ser. broj", + "standard" => "", + "stock" => "", + "stock_location" => "Mjesto skladišta", + "stock_type" => "", + "successful_adding" => "Uspješno ste dodali artikal", + "successful_bulk_edit" => "Uspješno ste ažurirali odabrane stavke", + "successful_deleted" => "Uspješno ste obrisali artikl", + "successful_updating" => "Uspješno ste ažurirali artikl", + "supplier" => "Dobavljač", + "tax_1" => "Porez 1", + "tax_2" => "Porez 2", + "tax_3" => "", + "tax_category" => "", + "tax_percent" => "% poreza", + "tax_percent_number" => "", + "tax_percent_required" => "% poreza je obavezan", + "tax_percents" => "%-ci poreza", + "temp" => "", + "type" => "", + "unit_price" => "Maloprodajna cijena", + "unit_price_number" => "Maloprodajna cijena mora biti broj", + "unit_price_required" => "Maloprodajna cijena je obavezna", + "upc_database" => "UPC baza", + "update" => "Ažuriraj artikl", + "use_inventory_menu" => "Koristi inv. meni", ]; diff --git a/app/Language/hr-HR/Login.php b/app/Language/hr-HR/Login.php index 14de86286..b8db23d87 100644 --- a/app/Language/hr-HR/Login.php +++ b/app/Language/hr-HR/Login.php @@ -1,15 +1,15 @@ "", - "go" => "Ulaz", - "invalid_gcaptcha" => "", - "invalid_installation" => "", - "invalid_username_and_password" => "Neispravno ime/lozinka", - "login" => "Prijava", - "logout" => "", - "migration_needed" => "", - "password" => "Lozinka", - "required_username" => "", - "username" => "Korisničko ime", - "welcome" => "", + "gcaptcha" => "", + "go" => "Ulaz", + "invalid_gcaptcha" => "", + "invalid_installation" => "", + "invalid_username_and_password" => "Neispravno ime/lozinka", + "login" => "Prijava", + "logout" => "", + "migration_needed" => "", + "password" => "Lozinka", + "required_username" => "", + "username" => "Korisničko ime", + "welcome" => "", ]; diff --git a/app/Language/hr-HR/Messages.php b/app/Language/hr-HR/Messages.php index dabf5733c..eb254d6dd 100644 --- a/app/Language/hr-HR/Messages.php +++ b/app/Language/hr-HR/Messages.php @@ -1,15 +1,15 @@ "First name", - "last_name" => "Last name", - "message" => "Message", - "message_placeholder" => "Your Message here...", - "message_required" => "Message required", - "multiple_phones" => "(In case of multiple recipients, enter mobile numbers separated by commas)", - "phone" => "Phone number", - "phone_number_required" => "Phone number required", - "phone_placeholder" => "Mobile Number(s) here...", - "sms_send" => "Send SMS", - "successfully_sent" => "Message successfully sent to: ", - "unsuccessfully_sent" => "Message unsuccessfully sent to: ", + "first_name" => "First name", + "last_name" => "Last name", + "message" => "Message", + "message_placeholder" => "Your Message here...", + "message_required" => "Message required", + "multiple_phones" => "(In case of multiple recipients, enter mobile numbers separated by commas)", + "phone" => "Phone number", + "phone_number_required" => "Phone number required", + "phone_placeholder" => "Mobile Number(s) here...", + "sms_send" => "Send SMS", + "successfully_sent" => "Message successfully sent to: ", + "unsuccessfully_sent" => "Message unsuccessfully sent to: ", ]; diff --git a/app/Language/hr-HR/Module.php b/app/Language/hr-HR/Module.php index 99ecbac3d..a12a5f461 100644 --- a/app/Language/hr-HR/Module.php +++ b/app/Language/hr-HR/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "", - "attributes_desc" => "", - "both" => "", - "cashups" => "", - "cashups_desc" => "", - "config" => "Postavke", - "config_desc" => "Promijeni postavke", - "customers" => "Kupci", - "customers_desc" => "Dodaj, ažuriraj, obriši ili traži kupce", - "employees" => "Radnici", - "employees_desc" => "Dodaj, ažuriraj, obriši ili traži radnike", - "expenses" => "", - "expenses_categories" => "", - "expenses_categories_desc" => "", - "expenses_desc" => "", - "giftcards" => "Poklon bon", - "giftcards_desc" => "Dodaj, ažuriraj, obriši ili traži poklon bon", - "home" => "Početna", - "home_desc" => "", - "item_kits" => "Normativi", - "item_kits_desc" => "Dodaj, ažuriraj, obriši ili traži normative", - "items" => "Artikli", - "items_desc" => "Dodaj, ažuriraj, obriši ili traži artikle", - "messages" => "Messages", - "messages_desc" => "Send Messages to Customers, Suppliers, Employees et al.", - "migrate" => "", - "migrate_desc" => "", - "office" => "", - "office_desc" => "", - "receivings" => "Primka", - "receivings_desc" => "Dodaj, ažuriraj, obriši ili traži primke", - "reports" => "Izvještaji", - "reports_desc" => "Pogledaj i generiraj izvještaje", - "sales" => "Prodaja", - "sales_desc" => "Procesi prodaje i povrata", - "suppliers" => "Dobavljači", - "suppliers_desc" => "Dodaj, ažuriraj, obriši ili traži dobavljače", - "taxes" => "", - "taxes_desc" => "", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "", + "attributes_desc" => "", + "both" => "", + "cashups" => "", + "cashups_desc" => "", + "config" => "Postavke", + "config_desc" => "Promijeni postavke", + "customers" => "Kupci", + "customers_desc" => "Dodaj, ažuriraj, obriši ili traži kupce", + "employees" => "Radnici", + "employees_desc" => "Dodaj, ažuriraj, obriši ili traži radnike", + "expenses" => "", + "expenses_categories" => "", + "expenses_categories_desc" => "", + "expenses_desc" => "", + "giftcards" => "Poklon bon", + "giftcards_desc" => "Dodaj, ažuriraj, obriši ili traži poklon bon", + "home" => "Početna", + "home_desc" => "", + "item_kits" => "Normativi", + "item_kits_desc" => "Dodaj, ažuriraj, obriši ili traži normative", + "items" => "Artikli", + "items_desc" => "Dodaj, ažuriraj, obriši ili traži artikle", + "messages" => "Messages", + "messages_desc" => "Send Messages to Customers, Suppliers, Employees et al.", + "migrate" => "", + "migrate_desc" => "", + "office" => "", + "office_desc" => "", + "receivings" => "Primka", + "receivings_desc" => "Dodaj, ažuriraj, obriši ili traži primke", + "reports" => "Izvještaji", + "reports_desc" => "Pogledaj i generiraj izvještaje", + "sales" => "Prodaja", + "sales_desc" => "Procesi prodaje i povrata", + "suppliers" => "Dobavljači", + "suppliers_desc" => "Dodaj, ažuriraj, obriši ili traži dobavljače", + "taxes" => "", + "taxes_desc" => "", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/hr-HR/Receivings.php b/app/Language/hr-HR/Receivings.php index c5212b7c5..cab150d38 100644 --- a/app/Language/hr-HR/Receivings.php +++ b/app/Language/hr-HR/Receivings.php @@ -1,58 +1,58 @@ "", - "cancel_receiving" => "Otkaži", - "cannot_be_deleted" => "Primka(e) ne mogu biti obrisane", - "comments" => "Komentar", - "complete_receiving" => "Završi", - "confirm_cancel_receiving" => "Želite li obrisati ovu primku? Sve stavke bit će obrisane.", - "confirm_delete" => "Želite li obrisati ovu primku? To ne ne može vratiti.", - "confirm_finish_receiving" => "Želite li potvrditi ovu primku? To ne ne može vratiti.", - "confirm_restore" => "", - "cost" => "Cijena", - "daily" => "", - "date" => "Datum", - "date_required" => "Potrebno je unijeti ispravan datum", - "date_type" => "Datum je potreban", - "delete_entire_sale" => "Obrisati cijelu prodaju", - "discount" => "Rabat %", - "edit" => "Urediti", - "edit_sale" => "Uređivanje primke", - "employee" => "Radnik", - "error_editing_item" => "Greška kod uređenja stavke", - "error_requisition" => "Nije moguće micati inventuru iz i na skaldište", - "find_or_scan_item" => "Traži/skeniraj artikal", - "find_or_scan_item_or_receipt" => "Traži/skeniraj artikal ili račun", - "id" => "Primka br.", - "item_name" => "Naziv artikla", - "mode" => "Ulazni mod", - "new_supplier" => "Novi dobavljač", - "one_or_multiple" => "Primka(e)", - "print_after_sale" => "Štampaj poslije prodaje", - "quantity" => "Količina", - "receipt" => "Ulazni račun", - "receipt_number" => "Ulazni rč. broj", - "receiving" => "Primka", - "reference" => "Reference", - "register" => "Stavke primke", - "requisition" => "Međusklad.", - "return" => "Povrat", - "select_supplier" => "Odaberi dobavljača (neobavezno)", - "ship_pack" => "", - "start_typing_supplier_name" => "Počnite upisivati ime dobavljača ...", - "stock" => "", - "stock_destination" => "Na skladište", - "stock_locaiton" => "Mjesto skladišta", - "stock_source" => "Iz skladišta", - "successfully_deleted" => "Uspješno ste obrisali primku", - "successfully_updated" => "Uspješno ste ažurirali primku", - "supplier" => "Dobavljač", - "supplier_address" => "Adresa", - "supplier_email" => "e-mail", - "supplier_location" => "Mjesto", - "total" => "Ukupno", - "transaction_failed" => "Greška kod transakcije primki", - "unable_to_add_item" => "Ne mogu dodati artikal u primku", - "unsuccessfully_updated" => "Neuspješno ažurirana primka", - "update" => "Ažuriraj", + "amount_due" => "", + "cancel_receiving" => "Otkaži", + "cannot_be_deleted" => "Primka(e) ne mogu biti obrisane", + "comments" => "Komentar", + "complete_receiving" => "Završi", + "confirm_cancel_receiving" => "Želite li obrisati ovu primku? Sve stavke bit će obrisane.", + "confirm_delete" => "Želite li obrisati ovu primku? To ne ne može vratiti.", + "confirm_finish_receiving" => "Želite li potvrditi ovu primku? To ne ne može vratiti.", + "confirm_restore" => "", + "cost" => "Cijena", + "daily" => "", + "date" => "Datum", + "date_required" => "Potrebno je unijeti ispravan datum", + "date_type" => "Datum je potreban", + "delete_entire_sale" => "Obrisati cijelu prodaju", + "discount" => "Rabat %", + "edit" => "Urediti", + "edit_sale" => "Uređivanje primke", + "employee" => "Radnik", + "error_editing_item" => "Greška kod uređenja stavke", + "error_requisition" => "Nije moguće micati inventuru iz i na skaldište", + "find_or_scan_item" => "Traži/skeniraj artikal", + "find_or_scan_item_or_receipt" => "Traži/skeniraj artikal ili račun", + "id" => "Primka br.", + "item_name" => "Naziv artikla", + "mode" => "Ulazni mod", + "new_supplier" => "Novi dobavljač", + "one_or_multiple" => "Primka(e)", + "print_after_sale" => "Štampaj poslije prodaje", + "quantity" => "Količina", + "receipt" => "Ulazni račun", + "receipt_number" => "Ulazni rč. broj", + "receiving" => "Primka", + "reference" => "Reference", + "register" => "Stavke primke", + "requisition" => "Međusklad.", + "return" => "Povrat", + "select_supplier" => "Odaberi dobavljača (neobavezno)", + "ship_pack" => "", + "start_typing_supplier_name" => "Počnite upisivati ime dobavljača ...", + "stock" => "", + "stock_destination" => "Na skladište", + "stock_locaiton" => "Mjesto skladišta", + "stock_source" => "Iz skladišta", + "successfully_deleted" => "Uspješno ste obrisali primku", + "successfully_updated" => "Uspješno ste ažurirali primku", + "supplier" => "Dobavljač", + "supplier_address" => "Adresa", + "supplier_email" => "e-mail", + "supplier_location" => "Mjesto", + "total" => "Ukupno", + "transaction_failed" => "Greška kod transakcije primki", + "unable_to_add_item" => "Ne mogu dodati artikal u primku", + "unsuccessfully_updated" => "Neuspješno ažurirana primka", + "update" => "Ažuriraj", ]; diff --git a/app/Language/hr-HR/Reports.php b/app/Language/hr-HR/Reports.php index 9ab284444..8a8ecf945 100644 --- a/app/Language/hr-HR/Reports.php +++ b/app/Language/hr-HR/Reports.php @@ -1,148 +1,148 @@ "Svi", - "authority" => "", - "canceled" => "", - "categories" => "Kategorije", - "categories_summary_report" => "Zbrojni izvještaj po kategorijama", - "category" => "Kategorija", - "code_canceled" => "", - "code_invoice" => "", - "code_pos" => "", - "code_quote" => "", - "code_return" => "", - "code_type" => "", - "code_work_order" => "", - "comments" => "Komentari", - "commission" => "", - "complete" => "", - "completed_sales" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "cost" => "Cijena", - "cost_price" => "Nabavna cijena", - "count" => "Broj", - "customer" => "Kupac", - "customers" => "Kupci", - "customers_summary_report" => "Zbrojni izvještaj po kupcima", - "date" => "Datum", - "date_range" => "Vremenski period", - "description" => "Opis", - "detailed_receivings_report" => "Izvještaj primki", - "detailed_receivings_report_input" => "", - "detailed_reports" => "Izvještaji", - "detailed_requisition_report" => "Izvještaj međuskladišnice", - "detailed_sales_report" => "Izvještaj o prodaji", - "discount" => "Ivještaj o popustu", - "discount_fixed" => "", - "discount_percent" => "% popusta", - "discount_type" => "", - "discounts" => "Popusti", - "discounts_summary_report" => "Zbrojni izvještaj o popustima", - "earned" => "", - "employee" => "Radnik", - "employees" => "Radnici", - "employees_summary_report" => "Zbrojni izvještaj po radnicima", - "expenses" => "", - "expenses_amount" => "", - "expenses_categories" => "", - "expenses_categories_summary_report" => "", - "expenses_category" => "", - "expenses_payment_amount" => "", - "expenses_tax_amount" => "", - "expenses_total_amount" => "", - "expenses_total_tax_amount" => "", - "graphical_reports" => "Grafički izvještaji", - "inventory" => "Inventura", - "inventory_low" => "Mala inventura", - "inventory_low_report" => "Izvještaj o maloj inventuri", - "inventory_reports" => "Izvještaji inventura", - "inventory_summary" => "Zbrojne inventure", - "inventory_summary_report" => "Izvještaji zbrojnih inventura", - "item" => "Artikl", - "item_count" => "Filter broja artikala", - "item_name" => "Naziv artikla", - "item_number" => "Broj artikla", - "items" => "Artikli", - "items_purchased" => "Nabavni artikli", - "items_received" => "Artikli primke", - "items_summary_report" => "Artikli zbrojnog izvještaja", - "jurisdiction" => "", - "low_inventory" => "Niska inventura", - "low_inventory_report" => "Izvještaj niske inventure", - "low_sell_quantity" => "", - "more_than_zero" => "Više od nule", - "name" => "Naziv", - "no_reports_to_display" => "Nema artikla za prikazati", - "payment_type" => "Tip plaćanja", - "payments" => "Plaćanja", - "payments_summary_report" => "Zbrojni izvještaj plaćanja", - "profit" => "RUC", - "quantity" => "Količina", - "quantity_purchased" => "Nabavna količina", - "quotes" => "", - "received_by" => "Primljeno od", - "receiving_id" => "Primka br.", - "receiving_type" => "Tip ulaza", - "receivings" => "Primke", - "reorder_level" => "Poredaj razinu", - "report" => "Izvještaj", - "report_input" => "Ulazni izvještaj", - "reports" => "Izvještaji", - "requisition" => "Međuskladišnica", - "requisition_by" => "Međuskladišnica od", - "requisition_id" => "Međuskladišnica br.", - "requisition_item" => "Artikal međuskladišnice", - "requisition_item_quantity" => "količina artikla međuskladišnice", - "requisition_related_item" => "Povezani artikal međuskladišnice", - "requisition_related_item_total_quantity" => "Povezani količina artikala međuskladišnice", - "requisition_related_item_unit_quantity" => "Povezana jed. cijena artikla međuskladišnice", - "requisitions" => "Međuskladišnica", - "returns" => "Povrati", - "revenue" => "Promet", - "sale_id" => "Prodaja br.", - "sale_type" => "Tip prodaje", - "sales" => "Prodaje", - "sales_amount" => "Prodajna količina", - "sales_summary_report" => "Zbrojni izvještaj o prodaji", - "sales_taxes" => "", - "sales_taxes_summary_report" => "", - "serial_number" => "Ser. broj", - "service_charge" => "", - "sold_by" => "Prodaje", - "sold_items" => "", - "sold_to" => "Prodano", - "stock_location" => "Mjesto skladišta", - "sub_total_value" => "Iznos međuzbroja", - "subtotal" => "Međuzbroj", - "summary_reports" => "Zbrojni izvještaj", - "supplied_by" => "Nabavljeno od", - "supplier" => "Dobavljač", - "suppliers" => "Dobavljači", - "suppliers_summary_report" => "Zbrojni izvještaj po dobavljačima", - "tax" => "Porez", - "tax_category" => "", - "tax_name" => "", - "tax_percent" => "% poreza", - "tax_rate" => "", - "taxes" => "Porezi", - "taxes_summary_report" => "Zbrojni izvještaj po porezima", - "total" => "Ukupno", - "total_inventory_value" => "Ukupan iznos inventure", - "total_low_sell_quantity" => "", - "total_quantity" => "Total Quantity", - "total_retail" => "Total Inv. Retail Value", - "trans_amount" => "", - "trans_due" => "", - "trans_group" => "", - "trans_nopay_sales" => "", - "trans_payments" => "", - "trans_refunded" => "", - "trans_sales" => "", - "trans_type" => "", - "type" => "Tip", - "unit_price" => "Jedinična cijena", - "used" => "", - "work_orders" => "", - "zero_and_less" => "Nula i manje", + "all" => "Svi", + "authority" => "", + "canceled" => "", + "categories" => "Kategorije", + "categories_summary_report" => "Zbrojni izvještaj po kategorijama", + "category" => "Kategorija", + "code_canceled" => "", + "code_invoice" => "", + "code_pos" => "", + "code_quote" => "", + "code_return" => "", + "code_type" => "", + "code_work_order" => "", + "comments" => "Komentari", + "commission" => "", + "complete" => "", + "completed_sales" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "cost" => "Cijena", + "cost_price" => "Nabavna cijena", + "count" => "Broj", + "customer" => "Kupac", + "customers" => "Kupci", + "customers_summary_report" => "Zbrojni izvještaj po kupcima", + "date" => "Datum", + "date_range" => "Vremenski period", + "description" => "Opis", + "detailed_receivings_report" => "Izvještaj primki", + "detailed_receivings_report_input" => "", + "detailed_reports" => "Izvještaji", + "detailed_requisition_report" => "Izvještaj međuskladišnice", + "detailed_sales_report" => "Izvještaj o prodaji", + "discount" => "Ivještaj o popustu", + "discount_fixed" => "", + "discount_percent" => "% popusta", + "discount_type" => "", + "discounts" => "Popusti", + "discounts_summary_report" => "Zbrojni izvještaj o popustima", + "earned" => "", + "employee" => "Radnik", + "employees" => "Radnici", + "employees_summary_report" => "Zbrojni izvještaj po radnicima", + "expenses" => "", + "expenses_amount" => "", + "expenses_categories" => "", + "expenses_categories_summary_report" => "", + "expenses_category" => "", + "expenses_payment_amount" => "", + "expenses_tax_amount" => "", + "expenses_total_amount" => "", + "expenses_total_tax_amount" => "", + "graphical_reports" => "Grafički izvještaji", + "inventory" => "Inventura", + "inventory_low" => "Mala inventura", + "inventory_low_report" => "Izvještaj o maloj inventuri", + "inventory_reports" => "Izvještaji inventura", + "inventory_summary" => "Zbrojne inventure", + "inventory_summary_report" => "Izvještaji zbrojnih inventura", + "item" => "Artikl", + "item_count" => "Filter broja artikala", + "item_name" => "Naziv artikla", + "item_number" => "Broj artikla", + "items" => "Artikli", + "items_purchased" => "Nabavni artikli", + "items_received" => "Artikli primke", + "items_summary_report" => "Artikli zbrojnog izvještaja", + "jurisdiction" => "", + "low_inventory" => "Niska inventura", + "low_inventory_report" => "Izvještaj niske inventure", + "low_sell_quantity" => "", + "more_than_zero" => "Više od nule", + "name" => "Naziv", + "no_reports_to_display" => "Nema artikla za prikazati", + "payment_type" => "Tip plaćanja", + "payments" => "Plaćanja", + "payments_summary_report" => "Zbrojni izvještaj plaćanja", + "profit" => "RUC", + "quantity" => "Količina", + "quantity_purchased" => "Nabavna količina", + "quotes" => "", + "received_by" => "Primljeno od", + "receiving_id" => "Primka br.", + "receiving_type" => "Tip ulaza", + "receivings" => "Primke", + "reorder_level" => "Poredaj razinu", + "report" => "Izvještaj", + "report_input" => "Ulazni izvještaj", + "reports" => "Izvještaji", + "requisition" => "Međuskladišnica", + "requisition_by" => "Međuskladišnica od", + "requisition_id" => "Međuskladišnica br.", + "requisition_item" => "Artikal međuskladišnice", + "requisition_item_quantity" => "količina artikla međuskladišnice", + "requisition_related_item" => "Povezani artikal međuskladišnice", + "requisition_related_item_total_quantity" => "Povezani količina artikala međuskladišnice", + "requisition_related_item_unit_quantity" => "Povezana jed. cijena artikla međuskladišnice", + "requisitions" => "Međuskladišnica", + "returns" => "Povrati", + "revenue" => "Promet", + "sale_id" => "Prodaja br.", + "sale_type" => "Tip prodaje", + "sales" => "Prodaje", + "sales_amount" => "Prodajna količina", + "sales_summary_report" => "Zbrojni izvještaj o prodaji", + "sales_taxes" => "", + "sales_taxes_summary_report" => "", + "serial_number" => "Ser. broj", + "service_charge" => "", + "sold_by" => "Prodaje", + "sold_items" => "", + "sold_to" => "Prodano", + "stock_location" => "Mjesto skladišta", + "sub_total_value" => "Iznos međuzbroja", + "subtotal" => "Međuzbroj", + "summary_reports" => "Zbrojni izvještaj", + "supplied_by" => "Nabavljeno od", + "supplier" => "Dobavljač", + "suppliers" => "Dobavljači", + "suppliers_summary_report" => "Zbrojni izvještaj po dobavljačima", + "tax" => "Porez", + "tax_category" => "", + "tax_name" => "", + "tax_percent" => "% poreza", + "tax_rate" => "", + "taxes" => "Porezi", + "taxes_summary_report" => "Zbrojni izvještaj po porezima", + "total" => "Ukupno", + "total_inventory_value" => "Ukupan iznos inventure", + "total_low_sell_quantity" => "", + "total_quantity" => "Total Quantity", + "total_retail" => "Total Inv. Retail Value", + "trans_amount" => "", + "trans_due" => "", + "trans_group" => "", + "trans_nopay_sales" => "", + "trans_payments" => "", + "trans_refunded" => "", + "trans_sales" => "", + "trans_type" => "", + "type" => "Tip", + "unit_price" => "Jedinična cijena", + "used" => "", + "work_orders" => "", + "zero_and_less" => "Nula i manje", ]; diff --git a/app/Language/hr-HR/Sales.php b/app/Language/hr-HR/Sales.php index a74713264..c51858110 100644 --- a/app/Language/hr-HR/Sales.php +++ b/app/Language/hr-HR/Sales.php @@ -1,224 +1,224 @@ "", - "rewards_package" => "", - "rewards_remaining_balance" => "", - "account_number" => "", - "add_payment" => "Dodaj plaćanje", - "amount_due" => "Iznos duga", - "amount_tendered" => "Ponuđeni iznos", - "authorized_signature" => "", - "cancel_sale" => "Otkaži", - "cash" => "Novčanice", - "cash_1" => "", - "cash_2" => "", - "cash_3" => "", - "cash_4" => "", - "cash_adjustment" => "", - "cash_deposit" => "", - "cash_filter" => "Novčanice", - "change_due" => "Ostatak", - "change_price" => "", - "check" => "Ček", - "check_balance" => "Ostatak čeka", - "check_filter" => "", - "close" => "", - "comment" => "Komentar", - "comments" => "Komentari", - "company_name" => "", - "complete" => "", - "complete_sale" => "Završeno", - "confirm_cancel_sale" => "Želite li otkazati ovu prodaju? Svi artikli se brišu.", - "confirm_delete" => "Želite li obrisati odabranu prodaju?", - "confirm_restore" => "", - "credit" => "Kreditna kartica", - "credit_deposit" => "", - "credit_filter" => "", - "current_table" => "", - "customer" => "Kupac", - "customer_address" => "Adresa kupca", - "customer_discount" => "Popust", - "customer_email" => "e-mail kupca", - "customer_location" => "Mjesto kupca", - "customer_mailchimp_status" => "", - "customer_optional" => "", - "customer_required" => "", - "customer_total" => "Total", - "customer_total_spent" => "", - "daily_sales" => "", - "date" => "Datum prodaje", - "date_range" => "Period", - "date_required" => "Morate unijeti ispravan datum", - "date_type" => "Datum je potreban", - "debit" => "Debitna kartica", - "debit_filter" => "", - "delete" => "", - "delete_confirmation" => "Želite li obrisati ovu prodaju? Ova akcija ne može se vratiti.", - "delete_entire_sale" => "Obrisati cjelokupnu prodaju", - "delete_successful" => "Uspješno ste obrisali prodaju", - "delete_unsuccessful" => "Neuspješno brisanje prodaje", - "description_abbrv" => "Opis", - "discard" => "", - "discard_quote" => "", - "discount" => "Popust %", - "discount_included" => "Popust %", - "discount_short" => "%", - "due" => "", - "due_filter" => "", - "edit" => "Uredi", - "edit_item" => "Uredi artikal", - "edit_sale" => "Uredi prodaju", - "email_receipt" => "e-mail potvrde", - "employee" => "Radnik", - "entry" => "", - "error_editing_item" => "Greška kod uređivanja artikla", - "find_or_scan_item" => "Pronađi/Skaniraj artikal", - "find_or_scan_item_or_receipt" => "Pronađi/Skaniraj artikal ili račun", - "giftcard" => "Poklon bon", - "giftcard_balance" => "Saldo poklon bona", - "giftcard_filter" => "", - "giftcard_number" => "Poklon bon br.", - "group_by_category" => "", - "group_by_type" => "", - "hsn" => "", - "id" => "Prodaja br.", - "include_prices" => "", - "invoice" => "Faktura", - "invoice_confirm" => "Poslati fakturu", - "invoice_enable" => "Napravi fakturu", - "invoice_filter" => "Fakturirati", - "invoice_no_email" => "Kupac nema ispravan e-mail", - "invoice_number" => "Faktura br.", - "invoice_number_duplicate" => "Molim unesite jedinstven broj fakture", - "invoice_sent" => "Faktura poslana", - "invoice_total" => "", - "invoice_type_custom_invoice" => "", - "invoice_type_custom_tax_invoice" => "", - "invoice_type_invoice" => "", - "invoice_type_tax_invoice" => "", - "invoice_unsent" => "Faktura nije poslana", - "invoice_update" => "Ponovno brojanje", - "item_insufficient_of_stock" => "Artikla nema na zalihi", - "item_name" => "Naziv artikla", - "item_number" => "UPC/EAN/ISBN", - "item_out_of_stock" => "Stavka je rasprodana", - "key_browser" => "", - "key_cancel" => "Cancels Current Quote/Invoice/Sale", - "key_customer_search" => "Customer Search", - "key_finish_quote" => "Finish Quote/Invoice witdout payment", - "key_finish_sale" => "Add Payment and Complete Invoice/Sale", - "key_full" => "", - "key_function" => "Function", - "key_help" => "Shortcuts", - "key_help_modal" => "Open Shortcuts Window", - "key_in" => "", - "key_item_search" => "Item Search", - "key_out" => "", - "key_payment" => "Add Payment", - "key_print" => "", - "key_restore" => "", - "key_search" => "", - "key_suspend" => "Suspend Current Sale", - "key_suspended" => "Show Suspended Sales", - "key_system" => "", - "key_tendered" => "Edit Amount Tendered", - "key_title" => "Sales Keyboard Shortcuts", - "mc" => "", - "mode" => "Mod registriranja", - "must_enter_numeric" => "Morate unijeti numeričku vrijednost za količinu", - "must_enter_numeric_giftcard" => "Morate unijeti numeričku vrijednost za poklon bon", - "new_customer" => "Novi kupac", - "new_item" => "Nova stavka", - "no_description" => "Nema opisa", - "no_filter" => "Svi", - "no_items_in_cart" => "Nema artikala u košari", - "no_sales_to_display" => "Nema prodaje za prikaz", - "none_selected" => "Niste odabrali nijedu prodaju za brisanje", - "nontaxed_ind" => "", - "not_authorized" => "", - "one_or_multiple" => "Prodaja(e)", - "payment" => "Tip plaćanja", - "payment_amount" => "Iznos", - "payment_not_cover_total" => "Plaćeni iznos ne pokriva ukupni iznos", - "payment_type" => "Tip", - "payments" => "", - "payments_total" => "Ukupno plaćeno", - "price" => "Cijena", - "print_after_sale" => "Štampaj poslije prodaje", - "quantity" => "Količina", - "quantity_less_than_reorder_level" => "Upozorenje! Željena količina je ispod minimalne.", - "quantity_less_than_zero" => "Upozorenje! Željena količina je nedovoljna. Možete nastaviti prodaju, ali provjerite svoju zalihu.", - "quantity_of_items" => "", - "quote" => "", - "quote_number" => "", - "quote_number_duplicate" => "", - "quote_sent" => "", - "quote_unsent" => "", - "receipt" => "Račun", - "receipt_no_email" => "", - "receipt_number" => "Račun br.", - "receipt_sent" => "Račun poslana", - "receipt_unsent" => "Račun nije poslana", - "refund" => "", - "register" => "Registracija prodaje", - "remove_customer" => "Ukloni kupca", - "remove_discount" => "", - "return" => "Povrat", - "rewards" => "", - "rewards_balance" => "", - "sale" => "Prodaja", - "sale_by_invoice" => "", - "sale_for_customer" => "Kupac:", - "sale_time" => "Vrijeme", - "sales_tax" => "", - "sales_total" => "", - "select_customer" => "Odaberi kupca(neobaveno)", - "send_invoice" => "Pošalji fakturu", - "send_quote" => "", - "send_receipt" => "Pošalji račun", - "send_work_order" => "", - "serial" => "Serijski broj", - "service_charge" => "", - "show_due" => "", - "show_invoice" => "Pokaži fakturu", - "show_receipt" => "Pokaži račun", - "start_typing_customer_name" => "Počnite upisivati naziv kupca ...", - "start_typing_item_name" => "Počnite upisivati naziv artikal ili skenirajte barkod", - "stock" => "", - "stock_location" => "Skladište", - "sub_total" => "Međuzbroj", - "successfully_deleted" => "Uspješno ste obrisali prodaju", - "successfully_restored" => "", - "successfully_suspended_sale" => "Neuspješno brisanje prodaje", - "successfully_updated" => "Uspješno ste ažurirali prodaju", - "suspend_sale" => "Obustavi", - "suspended_doc_id" => "", - "suspended_sale_id" => "Broj obustave", - "suspended_sales" => "Obustavljanje", - "table" => "", - "takings" => "Prodano", - "tax" => "Porez", - "tax_id" => "", - "tax_invoice" => "", - "tax_percent" => "Porez %", - "taxed_ind" => "", - "total" => "Ukupno", - "total_tax_exclusive" => "Porez nije uključen", - "transaction_failed" => "Greška kod prodaje", - "unable_to_add_item" => "Artikal nije moguće dodati", - "unsuccessfully_deleted" => "Prodaju(e) nije moguće izbrisati", - "unsuccessfully_restored" => "", - "unsuccessfully_suspended_sale" => "Neuspješno brisanje prodaje", - "unsuccessfully_updated" => "Prodaju(e) nije moguće ažurirati", - "unsuspend" => "Ponovno uključeno", - "unsuspend_and_delete" => "Uključeno i obrisano", - "update" => "Ažuriraj", - "upi" => "", - "visa" => "", - "wholesale" => "", - "work_order" => "", - "work_order_number" => "", - "work_order_number_duplicate" => "", - "work_order_sent" => "", - "work_order_unsent" => "", + "customers_available_points" => "", + "rewards_package" => "", + "rewards_remaining_balance" => "", + "account_number" => "", + "add_payment" => "Dodaj plaćanje", + "amount_due" => "Iznos duga", + "amount_tendered" => "Ponuđeni iznos", + "authorized_signature" => "", + "cancel_sale" => "Otkaži", + "cash" => "Novčanice", + "cash_1" => "", + "cash_2" => "", + "cash_3" => "", + "cash_4" => "", + "cash_adjustment" => "", + "cash_deposit" => "", + "cash_filter" => "Novčanice", + "change_due" => "Ostatak", + "change_price" => "", + "check" => "Ček", + "check_balance" => "Ostatak čeka", + "check_filter" => "", + "close" => "", + "comment" => "Komentar", + "comments" => "Komentari", + "company_name" => "", + "complete" => "", + "complete_sale" => "Završeno", + "confirm_cancel_sale" => "Želite li otkazati ovu prodaju? Svi artikli se brišu.", + "confirm_delete" => "Želite li obrisati odabranu prodaju?", + "confirm_restore" => "", + "credit" => "Kreditna kartica", + "credit_deposit" => "", + "credit_filter" => "", + "current_table" => "", + "customer" => "Kupac", + "customer_address" => "Adresa kupca", + "customer_discount" => "Popust", + "customer_email" => "e-mail kupca", + "customer_location" => "Mjesto kupca", + "customer_mailchimp_status" => "", + "customer_optional" => "", + "customer_required" => "", + "customer_total" => "Total", + "customer_total_spent" => "", + "daily_sales" => "", + "date" => "Datum prodaje", + "date_range" => "Period", + "date_required" => "Morate unijeti ispravan datum", + "date_type" => "Datum je potreban", + "debit" => "Debitna kartica", + "debit_filter" => "", + "delete" => "", + "delete_confirmation" => "Želite li obrisati ovu prodaju? Ova akcija ne može se vratiti.", + "delete_entire_sale" => "Obrisati cjelokupnu prodaju", + "delete_successful" => "Uspješno ste obrisali prodaju", + "delete_unsuccessful" => "Neuspješno brisanje prodaje", + "description_abbrv" => "Opis", + "discard" => "", + "discard_quote" => "", + "discount" => "Popust %", + "discount_included" => "Popust %", + "discount_short" => "%", + "due" => "", + "due_filter" => "", + "edit" => "Uredi", + "edit_item" => "Uredi artikal", + "edit_sale" => "Uredi prodaju", + "email_receipt" => "e-mail potvrde", + "employee" => "Radnik", + "entry" => "", + "error_editing_item" => "Greška kod uređivanja artikla", + "find_or_scan_item" => "Pronađi/Skaniraj artikal", + "find_or_scan_item_or_receipt" => "Pronađi/Skaniraj artikal ili račun", + "giftcard" => "Poklon bon", + "giftcard_balance" => "Saldo poklon bona", + "giftcard_filter" => "", + "giftcard_number" => "Poklon bon br.", + "group_by_category" => "", + "group_by_type" => "", + "hsn" => "", + "id" => "Prodaja br.", + "include_prices" => "", + "invoice" => "Faktura", + "invoice_confirm" => "Poslati fakturu", + "invoice_enable" => "Napravi fakturu", + "invoice_filter" => "Fakturirati", + "invoice_no_email" => "Kupac nema ispravan e-mail", + "invoice_number" => "Faktura br.", + "invoice_number_duplicate" => "Molim unesite jedinstven broj fakture", + "invoice_sent" => "Faktura poslana", + "invoice_total" => "", + "invoice_type_custom_invoice" => "", + "invoice_type_custom_tax_invoice" => "", + "invoice_type_invoice" => "", + "invoice_type_tax_invoice" => "", + "invoice_unsent" => "Faktura nije poslana", + "invoice_update" => "Ponovno brojanje", + "item_insufficient_of_stock" => "Artikla nema na zalihi", + "item_name" => "Naziv artikla", + "item_number" => "UPC/EAN/ISBN", + "item_out_of_stock" => "Stavka je rasprodana", + "key_browser" => "", + "key_cancel" => "Cancels Current Quote/Invoice/Sale", + "key_customer_search" => "Customer Search", + "key_finish_quote" => "Finish Quote/Invoice witdout payment", + "key_finish_sale" => "Add Payment and Complete Invoice/Sale", + "key_full" => "", + "key_function" => "Function", + "key_help" => "Shortcuts", + "key_help_modal" => "Open Shortcuts Window", + "key_in" => "", + "key_item_search" => "Item Search", + "key_out" => "", + "key_payment" => "Add Payment", + "key_print" => "", + "key_restore" => "", + "key_search" => "", + "key_suspend" => "Suspend Current Sale", + "key_suspended" => "Show Suspended Sales", + "key_system" => "", + "key_tendered" => "Edit Amount Tendered", + "key_title" => "Sales Keyboard Shortcuts", + "mc" => "", + "mode" => "Mod registriranja", + "must_enter_numeric" => "Morate unijeti numeričku vrijednost za količinu", + "must_enter_numeric_giftcard" => "Morate unijeti numeričku vrijednost za poklon bon", + "new_customer" => "Novi kupac", + "new_item" => "Nova stavka", + "no_description" => "Nema opisa", + "no_filter" => "Svi", + "no_items_in_cart" => "Nema artikala u košari", + "no_sales_to_display" => "Nema prodaje za prikaz", + "none_selected" => "Niste odabrali nijedu prodaju za brisanje", + "nontaxed_ind" => "", + "not_authorized" => "", + "one_or_multiple" => "Prodaja(e)", + "payment" => "Tip plaćanja", + "payment_amount" => "Iznos", + "payment_not_cover_total" => "Plaćeni iznos ne pokriva ukupni iznos", + "payment_type" => "Tip", + "payments" => "", + "payments_total" => "Ukupno plaćeno", + "price" => "Cijena", + "print_after_sale" => "Štampaj poslije prodaje", + "quantity" => "Količina", + "quantity_less_than_reorder_level" => "Upozorenje! Željena količina je ispod minimalne.", + "quantity_less_than_zero" => "Upozorenje! Željena količina je nedovoljna. Možete nastaviti prodaju, ali provjerite svoju zalihu.", + "quantity_of_items" => "", + "quote" => "", + "quote_number" => "", + "quote_number_duplicate" => "", + "quote_sent" => "", + "quote_unsent" => "", + "receipt" => "Račun", + "receipt_no_email" => "", + "receipt_number" => "Račun br.", + "receipt_sent" => "Račun poslana", + "receipt_unsent" => "Račun nije poslana", + "refund" => "", + "register" => "Registracija prodaje", + "remove_customer" => "Ukloni kupca", + "remove_discount" => "", + "return" => "Povrat", + "rewards" => "", + "rewards_balance" => "", + "sale" => "Prodaja", + "sale_by_invoice" => "", + "sale_for_customer" => "Kupac:", + "sale_time" => "Vrijeme", + "sales_tax" => "", + "sales_total" => "", + "select_customer" => "Odaberi kupca(neobaveno)", + "send_invoice" => "Pošalji fakturu", + "send_quote" => "", + "send_receipt" => "Pošalji račun", + "send_work_order" => "", + "serial" => "Serijski broj", + "service_charge" => "", + "show_due" => "", + "show_invoice" => "Pokaži fakturu", + "show_receipt" => "Pokaži račun", + "start_typing_customer_name" => "Počnite upisivati naziv kupca ...", + "start_typing_item_name" => "Počnite upisivati naziv artikal ili skenirajte barkod", + "stock" => "", + "stock_location" => "Skladište", + "sub_total" => "Međuzbroj", + "successfully_deleted" => "Uspješno ste obrisali prodaju", + "successfully_restored" => "", + "successfully_suspended_sale" => "Neuspješno brisanje prodaje", + "successfully_updated" => "Uspješno ste ažurirali prodaju", + "suspend_sale" => "Obustavi", + "suspended_doc_id" => "", + "suspended_sale_id" => "Broj obustave", + "suspended_sales" => "Obustavljanje", + "table" => "", + "takings" => "Prodano", + "tax" => "Porez", + "tax_id" => "", + "tax_invoice" => "", + "tax_percent" => "Porez %", + "taxed_ind" => "", + "total" => "Ukupno", + "total_tax_exclusive" => "Porez nije uključen", + "transaction_failed" => "Greška kod prodaje", + "unable_to_add_item" => "Artikal nije moguće dodati", + "unsuccessfully_deleted" => "Prodaju(e) nije moguće izbrisati", + "unsuccessfully_restored" => "", + "unsuccessfully_suspended_sale" => "Neuspješno brisanje prodaje", + "unsuccessfully_updated" => "Prodaju(e) nije moguće ažurirati", + "unsuspend" => "Ponovno uključeno", + "unsuspend_and_delete" => "Uključeno i obrisano", + "update" => "Ažuriraj", + "upi" => "", + "visa" => "", + "wholesale" => "", + "work_order" => "", + "work_order_number" => "", + "work_order_number_duplicate" => "", + "work_order_sent" => "", + "work_order_unsent" => "", ]; diff --git a/app/Language/hr-HR/Suppliers.php b/app/Language/hr-HR/Suppliers.php index 6037fe4e0..ea5618571 100644 --- a/app/Language/hr-HR/Suppliers.php +++ b/app/Language/hr-HR/Suppliers.php @@ -1,24 +1,24 @@ "Račun br.", - "agency_name" => "Naziv djelatnosti", - "cannot_be_deleted" => "Ne mogu obrisati odabranog dobavljača. Jedan ili više odabranih dobavljača ima prodaju.", - "category" => "", - "company_name" => "Naziv tvrtke", - "company_name_required" => "Naziv tvrtke je potreban", - "confirm_delete" => "Jeste li ste sigurni da želite obrisati odabranog dobavljača?", - "confirm_restore" => "", - "cost" => "", - "error_adding_updating" => "Greška kod dodavanja/ažuriranja dobavljača", - "goods" => "", - "new" => "Novi dobavljač", - "none_selected" => "Niste odabrali nijednog dobavljača za brisanje", - "one_or_multiple" => "Dobavljač(i)", - "successful_adding" => "Uspješno ste dodali dobavljača", - "successful_deleted" => "Uspješno ste obrisali dobavljača", - "successful_updating" => "Uspješno ste ažurirali dobavljača", - "supplier" => "Dobavljač", - "supplier_id" => "ID", - "tax_id" => "", - "update" => "Ažuriranje dobavljača", + "account_number" => "Račun br.", + "agency_name" => "Naziv djelatnosti", + "cannot_be_deleted" => "Ne mogu obrisati odabranog dobavljača. Jedan ili više odabranih dobavljača ima prodaju.", + "category" => "", + "company_name" => "Naziv tvrtke", + "company_name_required" => "Naziv tvrtke je potreban", + "confirm_delete" => "Jeste li ste sigurni da želite obrisati odabranog dobavljača?", + "confirm_restore" => "", + "cost" => "", + "error_adding_updating" => "Greška kod dodavanja/ažuriranja dobavljača", + "goods" => "", + "new" => "Novi dobavljač", + "none_selected" => "Niste odabrali nijednog dobavljača za brisanje", + "one_or_multiple" => "Dobavljač(i)", + "successful_adding" => "Uspješno ste dodali dobavljača", + "successful_deleted" => "Uspješno ste obrisali dobavljača", + "successful_updating" => "Uspješno ste ažurirali dobavljača", + "supplier" => "Dobavljač", + "supplier_id" => "ID", + "tax_id" => "", + "update" => "Ažuriranje dobavljača", ]; diff --git a/app/Language/hr-HR/Taxes.php b/app/Language/hr-HR/Taxes.php index 6ae3d5b76..691ff9bb3 100644 --- a/app/Language/hr-HR/Taxes.php +++ b/app/Language/hr-HR/Taxes.php @@ -1,82 +1,82 @@ "", - "cascade" => "", - "cascade_sequence" => "", - "city" => "", - "code" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "default_tax_category" => "", - "default_tax_rate" => "", - "error_adding_updating" => "", - "group_seq" => "", - "jurisdiction_name" => "", - "name" => "", - "new" => "", - "no_taxes" => "", - "no_taxes_to_display" => "", - "reporting_authority" => "", - "round_half_down" => "", - "round_half_even" => "", - "round_half_odd" => "", - "round_half_up" => "", - "rounding_code" => "", - "sales_tax" => "", - "sales_tax_by_invoice" => "", - "sequence" => "", - "state" => "", - "successful_deleted" => "", - "tax_categories" => "", - "tax_categories_configuration" => "", - "tax_categories_saved_successfully" => "", - "tax_categories_saved_unsuccessfully" => "", - "tax_category" => "", - "tax_category_code" => "", - "tax_category_duplicate" => "", - "tax_category_invalid_chars" => "", - "tax_category_name" => "", - "tax_category_new" => "", - "tax_category_required" => "", - "tax_code" => "", - "tax_code_cannot_be_deleted" => "", - "tax_code_duplicate" => "", - "tax_code_invalid_chars" => "", - "tax_code_name" => "", - "tax_code_required" => "", - "tax_code_successful_deleted" => "", - "tax_code_successful_updated" => "", - "tax_code_successful_updating" => "", - "tax_code_successfully_added" => "", - "tax_code_type" => "", - "tax_codes" => "", - "tax_codes_configuration" => "", - "tax_codes_saved_successfully" => "", - "tax_codes_saved_unsuccessfully" => "", - "tax_excluded" => "", - "tax_group" => "", - "tax_group_not_unique" => "", - "tax_group_sequence" => "", - "tax_included" => "", - "tax_jurisdiction" => "", - "tax_jurisdiction_duplicate" => "", - "tax_jurisdiction_invalid_chars" => "", - "tax_jurisdiction_required" => "", - "tax_jurisdictions" => "", - "tax_jurisdictions_configuration" => "", - "tax_jurisdictions_saved_successfully" => "", - "tax_jurisdictions_saved_unsuccessfully" => "", - "tax_rate" => "", - "tax_rate_configuration" => "", - "tax_rate_error_adding_updating" => "", - "tax_rate_numeric" => "", - "tax_rate_required" => "", - "tax_rate_successful_updated" => "", - "tax_rate_successfully_added" => "", - "tax_rates" => "", - "tax_rates_configuration" => "", - "tax_rounding" => "", - "tax_type" => "", - "update" => "", - "vat_tax" => "", + "add_exception" => "", + "cascade" => "", + "cascade_sequence" => "", + "city" => "", + "code" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "default_tax_category" => "", + "default_tax_rate" => "", + "error_adding_updating" => "", + "group_seq" => "", + "jurisdiction_name" => "", + "name" => "", + "new" => "", + "no_taxes" => "", + "no_taxes_to_display" => "", + "reporting_authority" => "", + "round_half_down" => "", + "round_half_even" => "", + "round_half_odd" => "", + "round_half_up" => "", + "rounding_code" => "", + "sales_tax" => "", + "sales_tax_by_invoice" => "", + "sequence" => "", + "state" => "", + "successful_deleted" => "", + "tax_categories" => "", + "tax_categories_configuration" => "", + "tax_categories_saved_successfully" => "", + "tax_categories_saved_unsuccessfully" => "", + "tax_category" => "", + "tax_category_code" => "", + "tax_category_duplicate" => "", + "tax_category_invalid_chars" => "", + "tax_category_name" => "", + "tax_category_new" => "", + "tax_category_required" => "", + "tax_code" => "", + "tax_code_cannot_be_deleted" => "", + "tax_code_duplicate" => "", + "tax_code_invalid_chars" => "", + "tax_code_name" => "", + "tax_code_required" => "", + "tax_code_successful_deleted" => "", + "tax_code_successful_updated" => "", + "tax_code_successful_updating" => "", + "tax_code_successfully_added" => "", + "tax_code_type" => "", + "tax_codes" => "", + "tax_codes_configuration" => "", + "tax_codes_saved_successfully" => "", + "tax_codes_saved_unsuccessfully" => "", + "tax_excluded" => "", + "tax_group" => "", + "tax_group_not_unique" => "", + "tax_group_sequence" => "", + "tax_included" => "", + "tax_jurisdiction" => "", + "tax_jurisdiction_duplicate" => "", + "tax_jurisdiction_invalid_chars" => "", + "tax_jurisdiction_required" => "", + "tax_jurisdictions" => "", + "tax_jurisdictions_configuration" => "", + "tax_jurisdictions_saved_successfully" => "", + "tax_jurisdictions_saved_unsuccessfully" => "", + "tax_rate" => "", + "tax_rate_configuration" => "", + "tax_rate_error_adding_updating" => "", + "tax_rate_numeric" => "", + "tax_rate_required" => "", + "tax_rate_successful_updated" => "", + "tax_rate_successfully_added" => "", + "tax_rates" => "", + "tax_rates_configuration" => "", + "tax_rounding" => "", + "tax_type" => "", + "update" => "", + "vat_tax" => "", ]; diff --git a/app/Language/hr-HR/index.html b/app/Language/hr-HR/index.html index b702fbc39..69df4e1df 100644 --- a/app/Language/hr-HR/index.html +++ b/app/Language/hr-HR/index.html @@ -1,7 +1,7 @@ - 403 Forbidden + 403 Forbidden diff --git a/app/Language/hu/Attributes.php b/app/Language/hu/Attributes.php index 78064ddbb..c47f1b713 100644 --- a/app/Language/hu/Attributes.php +++ b/app/Language/hu/Attributes.php @@ -1,32 +1,32 @@ "Tulajdonság értéke nem tartalmazhat '_' vagy '|' karaktert", - "confirm_delete" => "Biztosan törli szeretné a kijelölt tulajdonságokat?", - "confirm_restore" => "Biztosan visszaállítja a kijelölt tulajdonságokat?", - "definition_cannot_be_deleted" => "Nem sikerült törölni a kijelölt tulajdonságokat", - "definition_error_adding_updating" => "{0} attribútum nem adható hozzá és nem frissíthető. Kérjük, ellenőrizze a hibanaplót.", - "definition_flags" => "Tulajdonság láthatósága", - "definition_group" => "Csoport", - "definition_id" => "Azonosító", - "definition_name" => "Tulajdonság hozzáadása", - "definition_name_required" => "Tulajdonság név kötelező mező", - "definition_one_or_multiple" => "tulajdonságok", - "definition_successful_adding" => "Sikeresen hozzáadta az elemet", - "definition_successful_deleted" => "Sikeresen törölte", - "definition_successful_updating" => "Sikeresen frissítette a tulajdonságot", - "definition_type" => "Tulajdonság típus", - "definition_type_required" => "Tulajdonság típusa kötelező mező", - "definition_unit" => "Mértkékegység", - "definition_values" => "Tulajdonság értékei", - "new" => "Új tulajdnoság", - "no_attributes_to_display" => "Nincs megjelenítendő elem", - "receipt_visibility" => "Nyugta", - "show_in_items" => "Megjelenítés a termékekben", - "show_in_items_visibility" => "Termékek", - "show_in_receipt" => "Nyugta megjelenítése", - "show_in_receivings" => "Meglenesítés árúátvételekben", - "show_in_receivings_visibility" => "Áruátvételek", - "show_in_sales" => "Megjelenítés az értékesítésekben", - "show_in_sales_visibility" => "Értékesítések", - "update" => "Tulajdonság frissítése", + "attribute_value_invalid_chars" => "Tulajdonság értéke nem tartalmazhat '_' vagy '|' karaktert", + "confirm_delete" => "Biztosan törli szeretné a kijelölt tulajdonságokat?", + "confirm_restore" => "Biztosan visszaállítja a kijelölt tulajdonságokat?", + "definition_cannot_be_deleted" => "Nem sikerült törölni a kijelölt tulajdonságokat", + "definition_error_adding_updating" => "{0} attribútum nem adható hozzá és nem frissíthető. Kérjük, ellenőrizze a hibanaplót.", + "definition_flags" => "Tulajdonság láthatósága", + "definition_group" => "Csoport", + "definition_id" => "Azonosító", + "definition_name" => "Tulajdonság hozzáadása", + "definition_name_required" => "Tulajdonság név kötelező mező", + "definition_one_or_multiple" => "tulajdonságok", + "definition_successful_adding" => "Sikeresen hozzáadta az elemet", + "definition_successful_deleted" => "Sikeresen törölte", + "definition_successful_updating" => "Sikeresen frissítette a tulajdonságot", + "definition_type" => "Tulajdonság típus", + "definition_type_required" => "Tulajdonság típusa kötelező mező", + "definition_unit" => "Mértkékegység", + "definition_values" => "Tulajdonság értékei", + "new" => "Új tulajdnoság", + "no_attributes_to_display" => "Nincs megjelenítendő elem", + "receipt_visibility" => "Nyugta", + "show_in_items" => "Megjelenítés a termékekben", + "show_in_items_visibility" => "Termékek", + "show_in_receipt" => "Nyugta megjelenítése", + "show_in_receivings" => "Meglenesítés árúátvételekben", + "show_in_receivings_visibility" => "Áruátvételek", + "show_in_sales" => "Megjelenítés az értékesítésekben", + "show_in_sales_visibility" => "Értékesítések", + "update" => "Tulajdonság frissítése", ]; diff --git a/app/Language/hu/Bootstrap_tables.php b/app/Language/hu/Bootstrap_tables.php index f83ae02b2..25b5cee39 100644 --- a/app/Language/hu/Bootstrap_tables.php +++ b/app/Language/hu/Bootstrap_tables.php @@ -1,11 +1,11 @@ "Mind", - "columns" => "Oszlopok", - "hide_show_pagination" => "Lapozó elrejtése/megjelenítése", - "loading" => "Betöltés, kérem várjon...", - "page_from_to" => "Megjelenítve {0} {1} / {2} összesen", - "refresh" => "Frissítés", - "rows_per_page" => "{0} rekord per oldal", - "toggle" => "Váltás", + "all" => "Mind", + "columns" => "Oszlopok", + "hide_show_pagination" => "Lapozó elrejtése/megjelenítése", + "loading" => "Betöltés, kérem várjon...", + "page_from_to" => "Megjelenítve {0} {1} / {2} összesen", + "refresh" => "Frissítés", + "rows_per_page" => "{0} rekord per oldal", + "toggle" => "Váltás", ]; diff --git a/app/Language/hu/Calendar.php b/app/Language/hu/Calendar.php index 68122488a..f9e783869 100644 --- a/app/Language/hu/Calendar.php +++ b/app/Language/hu/Calendar.php @@ -1,48 +1,48 @@ "V", - "mo" => "H", - "tu" => "K", - "we" => "Sze", - "th" => "Cs", - "fr" => "P", - "sa" => "Szo", - "sun" => "Vas", - "mon" => "Hét", - "tue" => "Kedd", - "wed" => "Sze", - "thu" => "Csü", - "fri" => "Pén", - "sat" => "Szo", - "sunday" => "Vasárnap", - "monday" => "Hétfő", - "tuesday" => "Kedd", - "wednesday" => "Szerda", - "thursday" => "Csütörtök", - "friday" => "Péntek", - "saturday" => "Szombat", - "jan" => "Jan", - "feb" => "Feb", - "mar" => "Már", - "apr" => "Ápr", - "may" => "Máj", - "jun" => "Jún", - "jul" => "Júl", - "aug" => "Aug", - "sep" => "Szep", - "oct" => "Okt", - "nov" => "Nov", - "dec" => "Dec", - "january" => "Január", - "february" => "Február", - "march" => "Március", - "april" => "Április", - "mayl" => "Május", - "june" => "Június", - "july" => "Július", - "august" => "Augusztus", - "september" => "Szeptember", - "october" => "Október", - "november" => "November", - "december" => "December", + "su" => "V", + "mo" => "H", + "tu" => "K", + "we" => "Sze", + "th" => "Cs", + "fr" => "P", + "sa" => "Szo", + "sun" => "Vas", + "mon" => "Hét", + "tue" => "Kedd", + "wed" => "Sze", + "thu" => "Csü", + "fri" => "Pén", + "sat" => "Szo", + "sunday" => "Vasárnap", + "monday" => "Hétfő", + "tuesday" => "Kedd", + "wednesday" => "Szerda", + "thursday" => "Csütörtök", + "friday" => "Péntek", + "saturday" => "Szombat", + "jan" => "Jan", + "feb" => "Feb", + "mar" => "Már", + "apr" => "Ápr", + "may" => "Máj", + "jun" => "Jún", + "jul" => "Júl", + "aug" => "Aug", + "sep" => "Szep", + "oct" => "Okt", + "nov" => "Nov", + "dec" => "Dec", + "january" => "Január", + "february" => "Február", + "march" => "Március", + "april" => "Április", + "mayl" => "Május", + "june" => "Június", + "july" => "Július", + "august" => "Augusztus", + "september" => "Szeptember", + "october" => "Október", + "november" => "November", + "december" => "December", ]; diff --git a/app/Language/hu/Cashups.php b/app/Language/hu/Cashups.php index 412cf1e33..8fe1664b0 100644 --- a/app/Language/hu/Cashups.php +++ b/app/Language/hu/Cashups.php @@ -1,49 +1,49 @@ "Összeg", - "amount_number" => "Az összeg csak szám lehet", - "amount_required" => "Az összeg kitöltése kötelező.", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "Bevétel elszámolást nem lehet törölni", - "cash_difference" => "", - "close_date" => "Zárás időpontja", - "close_employee" => "Lezárta", - "closed_amount_card" => "Kártyák", - "closed_amount_cash" => "Záró pénzösszeg", - "closed_amount_check" => "Ellenőrzések", - "closed_amount_due" => "Esedékesség", - "closed_amount_giftcard" => "", - "closed_amount_total" => "Teljes", - "closed_date" => "Zárás dátuma", - "confirm_delete" => "Biztosan törli a kiválasztott pénztárellenőrzést?", - "confirm_restore" => "Biztosan visszaállítja a kiválasztott pénztárellenőrzéseket?", - "confirm_submit" => "", - "date_number" => "A dátum csak szám lehet", - "date_required" => "Dátum kötelező mező", - "description" => "Leírás", - "enable_expected" => "", - "error_adding_updating" => "Hibás pénztárellenőrzés hozzáadás/frissítés", - "giftcard" => "", - "id" => "Azonosító", - "info" => "Pénztárellenőrzés Információ", - "info_employee" => "", - "is_deleted" => "Törölt", - "new" => "Új pénztárellenőrzés", - "no_cashups_to_display" => "", - "none_selected" => "Nincs kiválasztva pénztárellenőrzést", - "note" => "Megjegyzés", - "one_or_multiple" => "Pénztárellenőrzések", - "open_amount_cash" => "Nyitóösszeg", - "open_date" => "Nyitási dátum", - "open_employee" => "Nyitotta", - "opened_date" => "Megnyitás dátuma", - "successful_adding" => "Pénztárellenőrzés hozzáadása sikeres", - "successful_deleted" => "Pénztárellenőrzés törlése sikeres", - "successful_updating" => "Pénztárellenőrzés frissítése sikeres", - "total" => "Végösszeg", - "transfer_amount_cash" => "Pénzforgalom változás", - "transfer_amount_cash_minus" => "", - "update" => "Pénztárellenőrzés frissítése", - "warning" => "", + "amount" => "Összeg", + "amount_number" => "Az összeg csak szám lehet", + "amount_required" => "Az összeg kitöltése kötelező.", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "Bevétel elszámolást nem lehet törölni", + "cash_difference" => "", + "close_date" => "Zárás időpontja", + "close_employee" => "Lezárta", + "closed_amount_card" => "Kártyák", + "closed_amount_cash" => "Záró pénzösszeg", + "closed_amount_check" => "Ellenőrzések", + "closed_amount_due" => "Esedékesség", + "closed_amount_giftcard" => "", + "closed_amount_total" => "Teljes", + "closed_date" => "Zárás dátuma", + "confirm_delete" => "Biztosan törli a kiválasztott pénztárellenőrzést?", + "confirm_restore" => "Biztosan visszaállítja a kiválasztott pénztárellenőrzéseket?", + "confirm_submit" => "", + "date_number" => "A dátum csak szám lehet", + "date_required" => "Dátum kötelező mező", + "description" => "Leírás", + "enable_expected" => "", + "error_adding_updating" => "Hibás pénztárellenőrzés hozzáadás/frissítés", + "giftcard" => "", + "id" => "Azonosító", + "info" => "Pénztárellenőrzés Információ", + "info_employee" => "", + "is_deleted" => "Törölt", + "new" => "Új pénztárellenőrzés", + "no_cashups_to_display" => "", + "none_selected" => "Nincs kiválasztva pénztárellenőrzést", + "note" => "Megjegyzés", + "one_or_multiple" => "Pénztárellenőrzések", + "open_amount_cash" => "Nyitóösszeg", + "open_date" => "Nyitási dátum", + "open_employee" => "Nyitotta", + "opened_date" => "Megnyitás dátuma", + "successful_adding" => "Pénztárellenőrzés hozzáadása sikeres", + "successful_deleted" => "Pénztárellenőrzés törlése sikeres", + "successful_updating" => "Pénztárellenőrzés frissítése sikeres", + "total" => "Végösszeg", + "transfer_amount_cash" => "Pénzforgalom változás", + "transfer_amount_cash_minus" => "", + "update" => "Pénztárellenőrzés frissítése", + "warning" => "", ]; diff --git a/app/Language/hu/Common.php b/app/Language/hu/Common.php index c6ec89828..b4bf40d73 100644 --- a/app/Language/hu/Common.php +++ b/app/Language/hu/Common.php @@ -1,88 +1,88 @@ "Cím 1", - "address_2" => "Cím 2", - "admin" => "", - "city" => "Város", - "clerk" => "", - "close" => "Bezár", - "color" => "", - "comments" => "Megjegyzések", - "common" => "közös", - "confirm_search" => "Ön egy vagy több mezőt választott ki, a keresés után ezek már nem lesznek kiválasztva. Biztos, hogy elküldi ezt a keresést?", - "copyrights" => "© 2010 - {0}", - "correct_errors" => "", - "country" => "Ország", - "dashboard" => "", - "date" => "Dátum", - "delete" => "Törlés", - "det" => "részletek", - "download_import_template" => "CSV sablon (CSV) letöltése", - "edit" => "szerkeszt", - "email" => "E-Mail", - "email_invalid_format" => "Az E-mail cím nem megfelelően formázott", - "export_csv" => "CSV Export", - "export_csv_no" => "Nem", - "export_csv_yes" => "Igen", - "fields_required_message" => "A piros mezők kötelezők", - "fields_required_message_unique" => "", - "first_name" => "Vezetéknév", - "first_name_required" => "A vezetéknév kötelező mező", - "first_page" => "Első", - "gender" => "Neme", - "gender_female" => "Nő", - "gender_male" => "Ffi", - "gender_undefined" => "", - "icon" => "", - "id" => "ID", - "import" => "Import", - "import_change_file" => "Változtat", - "import_csv" => "CSV Import", - "import_full_path" => "A teljes elérési út kötelező", - "import_remove_file" => "Eltávolít", - "import_select_file" => "Fájl kiválasztása", - "inv" => "lelt.", - "last_name" => "Keresztnév", - "last_name_required" => "A keresztnév kötelező mező", - "last_page" => "Utolsó", - "learn_about_project" => "a legfrissebb információkért a projekttel kapcsolatban.", - "list_of" => "Lista: ", - "logo" => "", - "logo_mark" => "", - "logout" => "Kilépés", - "manager" => "", - "migration_needed" => "", - "new" => "Új", - "no" => "", - "no_persons_to_display" => "Nincsenek megjeleníthető emberek", - "none_selected_text" => "Nincs kiválaszva", - "or" => "VAGY", - "people" => "", - "phone_number" => "Telefonszám", - "phone_number_required" => "Telefonszám kötelező mező", - "please_visit_my" => "Kérem látogassa meg a ", - "position" => "", - "powered_by" => "Powered by", - "price" => "Ár", - "print" => "Nyomtat", - "remove" => "Eltávolít", - "required" => "Kötelező", - "restore" => "", - "return_policy" => "Visszatérítési politika", - "search" => "Keres", - "search_options" => "Keresési opciók", - "searched_for" => "Keresett ", - "software_short" => "", - "software_title" => "", - "state" => "Megye", - "submit" => "Elküld", - "total_spent" => "", - "unknown" => "", - "view_recent_sales" => "Eladások megtekintése", - "website" => "weboldalt", - "welcome" => "Üdvözlet", - "welcome_message" => "Üdvözli az OSPOS, kattintson a modulokra a kezdéshez!", - "yes" => "", - "you_are_using_ospos" => "Ön az Open Source Point Of Sale alábbi verzióját használja", - "zip" => "Ir.Szám", + "address_1" => "Cím 1", + "address_2" => "Cím 2", + "admin" => "", + "city" => "Város", + "clerk" => "", + "close" => "Bezár", + "color" => "", + "comments" => "Megjegyzések", + "common" => "közös", + "confirm_search" => "Ön egy vagy több mezőt választott ki, a keresés után ezek már nem lesznek kiválasztva. Biztos, hogy elküldi ezt a keresést?", + "copyrights" => "© 2010 - {0}", + "correct_errors" => "", + "country" => "Ország", + "dashboard" => "", + "date" => "Dátum", + "delete" => "Törlés", + "det" => "részletek", + "download_import_template" => "CSV sablon (CSV) letöltése", + "edit" => "szerkeszt", + "email" => "E-Mail", + "email_invalid_format" => "Az E-mail cím nem megfelelően formázott", + "export_csv" => "CSV Export", + "export_csv_no" => "Nem", + "export_csv_yes" => "Igen", + "fields_required_message" => "A piros mezők kötelezők", + "fields_required_message_unique" => "", + "first_name" => "Vezetéknév", + "first_name_required" => "A vezetéknév kötelező mező", + "first_page" => "Első", + "gender" => "Neme", + "gender_female" => "Nő", + "gender_male" => "Ffi", + "gender_undefined" => "", + "icon" => "", + "id" => "ID", + "import" => "Import", + "import_change_file" => "Változtat", + "import_csv" => "CSV Import", + "import_full_path" => "A teljes elérési út kötelező", + "import_remove_file" => "Eltávolít", + "import_select_file" => "Fájl kiválasztása", + "inv" => "lelt.", + "last_name" => "Keresztnév", + "last_name_required" => "A keresztnév kötelező mező", + "last_page" => "Utolsó", + "learn_about_project" => "a legfrissebb információkért a projekttel kapcsolatban.", + "list_of" => "Lista: ", + "logo" => "", + "logo_mark" => "", + "logout" => "Kilépés", + "manager" => "", + "migration_needed" => "", + "new" => "Új", + "no" => "", + "no_persons_to_display" => "Nincsenek megjeleníthető emberek", + "none_selected_text" => "Nincs kiválaszva", + "or" => "VAGY", + "people" => "", + "phone_number" => "Telefonszám", + "phone_number_required" => "Telefonszám kötelező mező", + "please_visit_my" => "Kérem látogassa meg a ", + "position" => "", + "powered_by" => "Powered by", + "price" => "Ár", + "print" => "Nyomtat", + "remove" => "Eltávolít", + "required" => "Kötelező", + "restore" => "", + "return_policy" => "Visszatérítési politika", + "search" => "Keres", + "search_options" => "Keresési opciók", + "searched_for" => "Keresett ", + "software_short" => "", + "software_title" => "", + "state" => "Megye", + "submit" => "Elküld", + "total_spent" => "", + "unknown" => "", + "view_recent_sales" => "Eladások megtekintése", + "website" => "weboldalt", + "welcome" => "Üdvözlet", + "welcome_message" => "Üdvözli az OSPOS, kattintson a modulokra a kezdéshez!", + "yes" => "", + "you_are_using_ospos" => "Ön az Open Source Point Of Sale alábbi verzióját használja", + "zip" => "Ir.Szám", ]; diff --git a/app/Language/hu/Config.php b/app/Language/hu/Config.php index 6c982809e..6e9f5a3f1 100644 --- a/app/Language/hu/Config.php +++ b/app/Language/hu/Config.php @@ -1,330 +1,330 @@ "Cég cím", - "address_required" => "Cég cím kötelező mező", - "all_set" => "All file permissions are set correctly!", - "allow_duplicate_barcodes" => "", - "apostrophe" => "aposztrof", - "backup_button" => "Mentés", - "backup_database" => "Adatbázis mentése", - "barcode" => "Vonalkód", - "barcode_company" => "Cég neve", - "barcode_configuration" => "Vonalkód konfigurálása", - "barcode_content" => "Vonalkód tartalma", - "barcode_first_row" => "Sor 1", - "barcode_font" => "Font", - "barcode_formats" => "", - "barcode_generate_if_empty" => "Generáljon ha üres", - "barcode_height" => "Magasság (px)", - "barcode_id" => "Termék Id/Név", - "barcode_info" => "Vonalkód konfigurációs információk", - "barcode_layout" => "Vonalkód elrendezés", - "barcode_name" => "Név", - "barcode_number" => "UPC/EAN/ISBN", - "barcode_number_in_row" => "Szám a sorban", - "barcode_page_cellspacing" => "Display page cellspacing", - "barcode_page_width" => "Display page width", - "barcode_price" => "Ár", - "barcode_second_row" => "Sor 2", - "barcode_third_row" => "Sor 3", - "barcode_tooltip" => "", - "barcode_type" => "Vonalkód tipus", - "barcode_width" => "Szélesség (px)", - "bottom" => "Alul", - "cash_button" => "", - "cash_button_1" => "", - "cash_button_2" => "", - "cash_button_3" => "", - "cash_button_4" => "", - "cash_button_5" => "", - "cash_button_6" => "", - "cash_decimals" => "", - "cash_decimals_tooltip" => "", - "cash_rounding" => "", - "category_dropdown" => "", - "center" => "Közép", - "change_apperance_tooltip" => "", - "comma" => "vessző", - "company" => "Cégnév", - "company_avatar" => "", - "company_change_image" => "Kép cseréje", - "company_logo" => "Cég logó", - "company_remove_image" => "Kép eltávolítása", - "company_required" => "Cégnév kötelező mező", - "company_select_image" => "Kép kiválasztása", - "company_website_url" => "A cég webcime nem érvényes URL (http://...)", - "country_codes" => "Country Codes", - "country_codes_tooltip" => "Comma separated list of country codes for nominatim address lookup.", - "currency_code" => "", - "currency_decimals" => "Currency Decimals", - "currency_symbol" => "Pénznem", - "current_employee_only" => "", - "customer_reward" => "", - "customer_reward_duplicate" => "", - "customer_reward_enable" => "", - "customer_reward_invalid_chars" => "", - "customer_reward_required" => "", - "customer_sales_tax_support" => "", - "date_or_time_format" => "", - "datetimeformat" => "Dátum és idő formátum", - "decimal_point" => "Tizedes pont", - "default_barcode_font_size_number" => "Az alapértelmezett vonalkód font méretnek számnak kell lennie", - "default_barcode_font_size_required" => "Az alapértelmezett vonalkód font méret kötelező mező", - "default_barcode_height_number" => "Az alapértelmezett vonalkód magasságnak számnak kell lennie", - "default_barcode_height_required" => "Az alapértelmezett vonalkód magasság kötelező mező", - "default_barcode_num_in_row_number" => "Az alapértelmezett vonalkód száma a sorbannak számnak kell lennie", - "default_barcode_num_in_row_required" => "Az alapértelmezett vonalkód szám a sorban kötelező mező", - "default_barcode_page_cellspacing_number" => "Vonalkód cellatávolságnak számnak kell lennie", - "default_barcode_page_cellspacing_required" => "Vonalkód cellatávolság kötelező mező.", - "default_barcode_page_width_number" => "Az alapértelmezett vonalkód oldal szélességnek számnak kell lennie", - "default_barcode_page_width_required" => "Az alapértelmezett vonalkód oldal szésesség kötelező.", - "default_barcode_width_number" => "Az alapértelmezett vonalkód szélességnek számnak kell lennie", - "default_barcode_width_required" => "Az alapértelmezett vonalkód szélesség kötelező mező", - "default_item_columns" => "", - "default_origin_tax_code" => "", - "default_receivings_discount" => "", - "default_receivings_discount_number" => "", - "default_receivings_discount_required" => "", - "default_sales_discount" => "Alapértelmezett kedvezmény %", - "default_sales_discount_number" => "Alapértelmezett kedvezménynek számnak kell lennie", - "default_sales_discount_required" => "Alapértelmezett kedvezmény kötelező mező", - "default_tax_category" => "", - "default_tax_code" => "", - "default_tax_jurisdiction" => "", - "default_tax_name_number" => "", - "default_tax_name_required" => "Alapértelmezett adó név kötelező mező", - "default_tax_rate" => "Alapértelmezett adó %", - "default_tax_rate_1" => "Adó 1", - "default_tax_rate_2" => "Adó 2", - "default_tax_rate_3" => "", - "default_tax_rate_number" => "Az alapértelmezett adónak számnak kell lennie", - "default_tax_rate_required" => "Az alapértelmezett adó kötelező mező", - "derive_sale_quantity" => "", - "derive_sale_quantity_tooltip" => "", - "dinner_table" => "", - "dinner_table_duplicate" => "", - "dinner_table_enable" => "", - "dinner_table_invalid_chars" => "", - "dinner_table_required" => "", - "dot" => "pont", - "email" => "Email", - "email_configuration" => "Email beállítás", - "email_mailpath" => "Sendmail elérési út", - "email_protocol" => "Protokoll", - "email_receipt_check_behaviour" => "", - "email_receipt_check_behaviour_always" => "", - "email_receipt_check_behaviour_last" => "", - "email_receipt_check_behaviour_never" => "", - "email_smtp_crypto" => "SMTP Encryption", - "email_smtp_host" => "SMTP Szerver", - "email_smtp_pass" => "SMTP Password", - "email_smtp_port" => "SMTP Port", - "email_smtp_timeout" => "SMTP időtúllépést (mp)", - "email_smtp_user" => "SMTP Username", - "enable_avatar" => "", - "enable_avatar_tooltip" => "", - "enable_dropdown_tooltip" => "", - "enable_new_look" => "", - "enable_right_bar" => "", - "enable_right_bar_tooltip" => "", - "enforce_privacy" => "", - "enforce_privacy_tooltip" => "", - "fax" => "Fax", - "file_perm" => "There are problems with file permissions please fix and reload this page.", - "financial_year" => "", - "financial_year_apr" => "", - "financial_year_aug" => "", - "financial_year_dec" => "", - "financial_year_feb" => "", - "financial_year_jan" => "", - "financial_year_jul" => "", - "financial_year_jun" => "", - "financial_year_mar" => "", - "financial_year_may" => "", - "financial_year_nov" => "", - "financial_year_oct" => "", - "financial_year_sep" => "", - "floating_labels" => "", - "gcaptcha_enable" => "", - "gcaptcha_secret_key" => "", - "gcaptcha_secret_key_required" => "", - "gcaptcha_site_key" => "", - "gcaptcha_site_key_required" => "", - "gcaptcha_tooltip" => "", - "general" => "Általános", - "general_configuration" => "Általános beállitás", - "giftcard_number" => "", - "giftcard_random" => "", - "giftcard_series" => "", - "image_allowed_file_types" => "", - "image_max_height_tooltip" => "", - "image_max_size_tooltip" => "", - "image_max_width_tooltip" => "", - "image_restrictions" => "", - "include_hsn" => "", - "info" => "Információk", - "info_configuration" => "Bolt információk", - "input_groups" => "", - "integrations" => "", - "integrations_configuration" => "", - "invoice" => "Számla", - "invoice_configuration" => "Nyomtatási beállitások", - "invoice_default_comments" => "Alapértelmezett számla kommentek", - "invoice_email_message" => "Email számla sablon", - "invoice_enable" => "Számlázás engedélyezése", - "invoice_printer" => "Számla nyomtató", - "invoice_type" => "", - "is_readable" => "", - "is_writable" => "is writable, but the permissions are higher than 750.", - "item_markup" => "", - "jsprintsetup_required" => "Figyelem! Ez a letiltott funkció csak akkor működik megfelelően, ha a FireFox jsPrintSetup kiegészítő telepítve van. Menti mindezek tudatában?", - "language" => "Nyelv", - "last_used_invoice_number" => "", - "last_used_quote_number" => "", - "last_used_work_order_number" => "", - "left" => "Bal", - "license" => "Licensz", - "license_configuration" => "Licensz statementek", - "line_sequence" => "", - "lines_per_page" => "Sorok száma oldalanként", - "lines_per_page_number" => "A sorok száma oldalanként kötelező mező", - "lines_per_page_required" => "A sor per oldal kötelező mező", - "locale" => "Lokalizációs", - "locale_configuration" => "Lokalizációs beállitások", - "locale_info" => "Lokalizációs beállitási információk", - "location" => "Készlet", - "location_configuration" => "Készlet helye", - "location_info" => "Helyszin konfigurációs információk", - "login_form" => "", - "logout" => "Nem szeretne mentést csinálni kilépés előtt? Kattintson az [OK]-ra a mentéshez, [Mégsem] a kilépéshez", - "mailchimp" => "", - "mailchimp_api_key" => "", - "mailchimp_configuration" => "", - "mailchimp_key_successfully" => "", - "mailchimp_key_unsuccessfully" => "", - "mailchimp_lists" => "", - "mailchimp_tooltip" => "", - "message" => "Üzenet", - "message_configuration" => "Üzenet beállítások", - "msg_msg" => "Mentett text üzenet", - "msg_msg_placeholder" => "Ha SMS alapot kíván használni ide írja. Egyébként hagyja üresen a mezőt.", - "msg_pwd" => "SMS-API Jelszó", - "msg_pwd_required" => "SMS-API jelszó kötelező mező", - "msg_src" => "SMS-API Küldö ID", - "msg_src_required" => "SMS-API Sender ID is a required field", - "msg_uid" => "SMS-API Felhasználó", - "msg_uid_required" => "SMS-API Username kötelező mező", - "multi_pack_enabled" => "", - "no_risk" => "No security/vulnerability risks.", - "none" => "none", - "notify_alignment" => "Notification Popup Position", - "number_format" => "Szám formátum", - "number_locale" => "Lokalizációs", - "number_locale_invalid" => "A megadott érték érvénytelen. Ellenőrizze a linken a megadható értékeket.", - "number_locale_required" => "Lokalizációs szám kötelező mező", - "number_locale_tooltip" => "Find a suitable locale through this link", - "os_timezone" => "", - "ospos_info" => "", - "payment_options_order" => "Payment Options Order", - "perm_risk" => "Permissions higher than 750 leaves this software at risk.", - "phone" => "Cég telefonszáma", - "phone_required" => "Cég telefonszáma kötelező mező", - "print_bottom_margin" => "Alsó margó", - "print_bottom_margin_number" => "The default bottom margin must be a number", - "print_bottom_margin_required" => "The default bottom margin is a required field", - "print_delay_autoreturn" => "", - "print_delay_autoreturn_number" => "", - "print_delay_autoreturn_required" => "", - "print_footer" => "Print Browser Footer", - "print_header" => "Print Browser Header", - "print_left_margin" => "Bal margó", - "print_left_margin_number" => "The default left margin must be a number", - "print_left_margin_required" => "The default left margin is a required field", - "print_receipt_check_behaviour" => "", - "print_receipt_check_behaviour_always" => "", - "print_receipt_check_behaviour_last" => "", - "print_receipt_check_behaviour_never" => "", - "print_right_margin" => "Jobb margó", - "print_right_margin_number" => "The default right margin must be a number", - "print_right_margin_required" => "The default right margin is a required field", - "print_silently" => "Show Print Dialog", - "print_top_margin" => "Felső margó", - "print_top_margin_number" => "The default top margin must be a number", - "print_top_margin_required" => "The default top margin is a required field", - "quantity_decimals" => "Quantity Decimals", - "quick_cash_enable" => "", - "quote_default_comments" => "", - "receipt" => "Nyugta", - "receipt_category" => "", - "receipt_configuration" => "Nyomtatási beállitások", - "receipt_default" => "Alapértelmezett", - "receipt_font_size" => "", - "receipt_font_size_number" => "", - "receipt_font_size_required" => "", - "receipt_info" => "Nyugta beállítási információk", - "receipt_printer" => "Jegy nyomtató", - "receipt_short" => "Rövid", - "receipt_show_company_name" => "", - "receipt_show_description" => "Leírás mutatása", - "receipt_show_serialnumber" => "Szériaszám mutatása", - "receipt_show_tax_ind" => "", - "receipt_show_taxes" => "Adók mutatása", - "receipt_show_total_discount" => "Összes kedvezmény mutatása", - "receipt_template" => "Nyugta template", - "receiving_calculate_average_price" => "Átl. Ár számitása (visszáru)", - "recv_invoice_format" => "Visszatérítési számla formátum", - "register_mode_default" => "", - "report_an_issue" => "", - "return_policy_required" => "Return policy is a required field", - "reward" => "", - "reward_configuration" => "", - "right" => "Jobb", - "sales_invoice_format" => "Eladási számla formátum", - "sales_quote_format" => "", - "saved_successfully" => "Beállítások sikeresen elmentve", - "saved_unsuccessfully" => "Beállítások mentése sikertelen", - "security_issue" => "Security Vulnerability Warning", - "server_notice" => "Please use the below info for issue reporting.", - "service_charge" => "", - "show_due_enable" => "", - "show_office_group" => "", - "statistics" => "Statisztika küldése", - "statistics_tooltip" => "Statisztika küldése fejlesztési célból", - "stock_location" => "Bolt helye", - "stock_location_duplicate" => "Kérem egyedi helyszin nevet használjon", - "stock_location_invalid_chars" => "A bolt helyének neve nem tartalmazhat '_' karaktert", - "stock_location_required" => "Bolt helyszín szám kötelező mező", - "suggestions_fifth_column" => "", - "suggestions_first_column" => "", - "suggestions_fourth_column" => "", - "suggestions_layout" => "", - "suggestions_second_column" => "", - "suggestions_third_column" => "", - "system_conf" => "Setup & Conf", - "system_info" => "System Info", - "table" => "", - "table_configuration" => "", - "takings_printer" => "Takings Printer", - "tax" => "", - "tax_category" => "", - "tax_category_duplicate" => "", - "tax_category_invalid_chars" => "", - "tax_category_required" => "", - "tax_category_used" => "", - "tax_configuration" => "", - "tax_decimals" => "Tax Decimals", - "tax_id" => "", - "tax_included" => "Adókat tartalmaz", - "theme" => "Téma", - "theme_preview" => "", - "thousands_separator" => "Ezres elválasztó", - "timezone" => "Időzóna", - "timezone_error" => "", - "top" => "Felül", - "use_destination_based_tax" => "", - "user_timezone" => "", - "website" => "Weboldal", - "wholesale_markup" => "", - "work_order_enable" => "", - "work_order_format" => "", + "address" => "Cég cím", + "address_required" => "Cég cím kötelező mező", + "all_set" => "All file permissions are set correctly!", + "allow_duplicate_barcodes" => "", + "apostrophe" => "aposztrof", + "backup_button" => "Mentés", + "backup_database" => "Adatbázis mentése", + "barcode" => "Vonalkód", + "barcode_company" => "Cég neve", + "barcode_configuration" => "Vonalkód konfigurálása", + "barcode_content" => "Vonalkód tartalma", + "barcode_first_row" => "Sor 1", + "barcode_font" => "Font", + "barcode_formats" => "", + "barcode_generate_if_empty" => "Generáljon ha üres", + "barcode_height" => "Magasság (px)", + "barcode_id" => "Termék Id/Név", + "barcode_info" => "Vonalkód konfigurációs információk", + "barcode_layout" => "Vonalkód elrendezés", + "barcode_name" => "Név", + "barcode_number" => "UPC/EAN/ISBN", + "barcode_number_in_row" => "Szám a sorban", + "barcode_page_cellspacing" => "Display page cellspacing", + "barcode_page_width" => "Display page width", + "barcode_price" => "Ár", + "barcode_second_row" => "Sor 2", + "barcode_third_row" => "Sor 3", + "barcode_tooltip" => "", + "barcode_type" => "Vonalkód tipus", + "barcode_width" => "Szélesség (px)", + "bottom" => "Alul", + "cash_button" => "", + "cash_button_1" => "", + "cash_button_2" => "", + "cash_button_3" => "", + "cash_button_4" => "", + "cash_button_5" => "", + "cash_button_6" => "", + "cash_decimals" => "", + "cash_decimals_tooltip" => "", + "cash_rounding" => "", + "category_dropdown" => "", + "center" => "Közép", + "change_apperance_tooltip" => "", + "comma" => "vessző", + "company" => "Cégnév", + "company_avatar" => "", + "company_change_image" => "Kép cseréje", + "company_logo" => "Cég logó", + "company_remove_image" => "Kép eltávolítása", + "company_required" => "Cégnév kötelező mező", + "company_select_image" => "Kép kiválasztása", + "company_website_url" => "A cég webcime nem érvényes URL (http://...)", + "country_codes" => "Country Codes", + "country_codes_tooltip" => "Comma separated list of country codes for nominatim address lookup.", + "currency_code" => "", + "currency_decimals" => "Currency Decimals", + "currency_symbol" => "Pénznem", + "current_employee_only" => "", + "customer_reward" => "", + "customer_reward_duplicate" => "", + "customer_reward_enable" => "", + "customer_reward_invalid_chars" => "", + "customer_reward_required" => "", + "customer_sales_tax_support" => "", + "date_or_time_format" => "", + "datetimeformat" => "Dátum és idő formátum", + "decimal_point" => "Tizedes pont", + "default_barcode_font_size_number" => "Az alapértelmezett vonalkód font méretnek számnak kell lennie", + "default_barcode_font_size_required" => "Az alapértelmezett vonalkód font méret kötelező mező", + "default_barcode_height_number" => "Az alapértelmezett vonalkód magasságnak számnak kell lennie", + "default_barcode_height_required" => "Az alapértelmezett vonalkód magasság kötelező mező", + "default_barcode_num_in_row_number" => "Az alapértelmezett vonalkód száma a sorbannak számnak kell lennie", + "default_barcode_num_in_row_required" => "Az alapértelmezett vonalkód szám a sorban kötelező mező", + "default_barcode_page_cellspacing_number" => "Vonalkód cellatávolságnak számnak kell lennie", + "default_barcode_page_cellspacing_required" => "Vonalkód cellatávolság kötelező mező.", + "default_barcode_page_width_number" => "Az alapértelmezett vonalkód oldal szélességnek számnak kell lennie", + "default_barcode_page_width_required" => "Az alapértelmezett vonalkód oldal szésesség kötelező.", + "default_barcode_width_number" => "Az alapértelmezett vonalkód szélességnek számnak kell lennie", + "default_barcode_width_required" => "Az alapértelmezett vonalkód szélesség kötelező mező", + "default_item_columns" => "", + "default_origin_tax_code" => "", + "default_receivings_discount" => "", + "default_receivings_discount_number" => "", + "default_receivings_discount_required" => "", + "default_sales_discount" => "Alapértelmezett kedvezmény %", + "default_sales_discount_number" => "Alapértelmezett kedvezménynek számnak kell lennie", + "default_sales_discount_required" => "Alapértelmezett kedvezmény kötelező mező", + "default_tax_category" => "", + "default_tax_code" => "", + "default_tax_jurisdiction" => "", + "default_tax_name_number" => "", + "default_tax_name_required" => "Alapértelmezett adó név kötelező mező", + "default_tax_rate" => "Alapértelmezett adó %", + "default_tax_rate_1" => "Adó 1", + "default_tax_rate_2" => "Adó 2", + "default_tax_rate_3" => "", + "default_tax_rate_number" => "Az alapértelmezett adónak számnak kell lennie", + "default_tax_rate_required" => "Az alapértelmezett adó kötelező mező", + "derive_sale_quantity" => "", + "derive_sale_quantity_tooltip" => "", + "dinner_table" => "", + "dinner_table_duplicate" => "", + "dinner_table_enable" => "", + "dinner_table_invalid_chars" => "", + "dinner_table_required" => "", + "dot" => "pont", + "email" => "Email", + "email_configuration" => "Email beállítás", + "email_mailpath" => "Sendmail elérési út", + "email_protocol" => "Protokoll", + "email_receipt_check_behaviour" => "", + "email_receipt_check_behaviour_always" => "", + "email_receipt_check_behaviour_last" => "", + "email_receipt_check_behaviour_never" => "", + "email_smtp_crypto" => "SMTP Encryption", + "email_smtp_host" => "SMTP Szerver", + "email_smtp_pass" => "SMTP Password", + "email_smtp_port" => "SMTP Port", + "email_smtp_timeout" => "SMTP időtúllépést (mp)", + "email_smtp_user" => "SMTP Username", + "enable_avatar" => "", + "enable_avatar_tooltip" => "", + "enable_dropdown_tooltip" => "", + "enable_new_look" => "", + "enable_right_bar" => "", + "enable_right_bar_tooltip" => "", + "enforce_privacy" => "", + "enforce_privacy_tooltip" => "", + "fax" => "Fax", + "file_perm" => "There are problems with file permissions please fix and reload this page.", + "financial_year" => "", + "financial_year_apr" => "", + "financial_year_aug" => "", + "financial_year_dec" => "", + "financial_year_feb" => "", + "financial_year_jan" => "", + "financial_year_jul" => "", + "financial_year_jun" => "", + "financial_year_mar" => "", + "financial_year_may" => "", + "financial_year_nov" => "", + "financial_year_oct" => "", + "financial_year_sep" => "", + "floating_labels" => "", + "gcaptcha_enable" => "", + "gcaptcha_secret_key" => "", + "gcaptcha_secret_key_required" => "", + "gcaptcha_site_key" => "", + "gcaptcha_site_key_required" => "", + "gcaptcha_tooltip" => "", + "general" => "Általános", + "general_configuration" => "Általános beállitás", + "giftcard_number" => "", + "giftcard_random" => "", + "giftcard_series" => "", + "image_allowed_file_types" => "", + "image_max_height_tooltip" => "", + "image_max_size_tooltip" => "", + "image_max_width_tooltip" => "", + "image_restrictions" => "", + "include_hsn" => "", + "info" => "Információk", + "info_configuration" => "Bolt információk", + "input_groups" => "", + "integrations" => "", + "integrations_configuration" => "", + "invoice" => "Számla", + "invoice_configuration" => "Nyomtatási beállitások", + "invoice_default_comments" => "Alapértelmezett számla kommentek", + "invoice_email_message" => "Email számla sablon", + "invoice_enable" => "Számlázás engedélyezése", + "invoice_printer" => "Számla nyomtató", + "invoice_type" => "", + "is_readable" => "", + "is_writable" => "is writable, but the permissions are higher than 750.", + "item_markup" => "", + "jsprintsetup_required" => "Figyelem! Ez a letiltott funkció csak akkor működik megfelelően, ha a FireFox jsPrintSetup kiegészítő telepítve van. Menti mindezek tudatában?", + "language" => "Nyelv", + "last_used_invoice_number" => "", + "last_used_quote_number" => "", + "last_used_work_order_number" => "", + "left" => "Bal", + "license" => "Licensz", + "license_configuration" => "Licensz statementek", + "line_sequence" => "", + "lines_per_page" => "Sorok száma oldalanként", + "lines_per_page_number" => "A sorok száma oldalanként kötelező mező", + "lines_per_page_required" => "A sor per oldal kötelező mező", + "locale" => "Lokalizációs", + "locale_configuration" => "Lokalizációs beállitások", + "locale_info" => "Lokalizációs beállitási információk", + "location" => "Készlet", + "location_configuration" => "Készlet helye", + "location_info" => "Helyszin konfigurációs információk", + "login_form" => "", + "logout" => "Nem szeretne mentést csinálni kilépés előtt? Kattintson az [OK]-ra a mentéshez, [Mégsem] a kilépéshez", + "mailchimp" => "", + "mailchimp_api_key" => "", + "mailchimp_configuration" => "", + "mailchimp_key_successfully" => "", + "mailchimp_key_unsuccessfully" => "", + "mailchimp_lists" => "", + "mailchimp_tooltip" => "", + "message" => "Üzenet", + "message_configuration" => "Üzenet beállítások", + "msg_msg" => "Mentett text üzenet", + "msg_msg_placeholder" => "Ha SMS alapot kíván használni ide írja. Egyébként hagyja üresen a mezőt.", + "msg_pwd" => "SMS-API Jelszó", + "msg_pwd_required" => "SMS-API jelszó kötelező mező", + "msg_src" => "SMS-API Küldö ID", + "msg_src_required" => "SMS-API Sender ID is a required field", + "msg_uid" => "SMS-API Felhasználó", + "msg_uid_required" => "SMS-API Username kötelező mező", + "multi_pack_enabled" => "", + "no_risk" => "No security/vulnerability risks.", + "none" => "none", + "notify_alignment" => "Notification Popup Position", + "number_format" => "Szám formátum", + "number_locale" => "Lokalizációs", + "number_locale_invalid" => "A megadott érték érvénytelen. Ellenőrizze a linken a megadható értékeket.", + "number_locale_required" => "Lokalizációs szám kötelező mező", + "number_locale_tooltip" => "Find a suitable locale through this link", + "os_timezone" => "", + "ospos_info" => "", + "payment_options_order" => "Payment Options Order", + "perm_risk" => "Permissions higher than 750 leaves this software at risk.", + "phone" => "Cég telefonszáma", + "phone_required" => "Cég telefonszáma kötelező mező", + "print_bottom_margin" => "Alsó margó", + "print_bottom_margin_number" => "The default bottom margin must be a number", + "print_bottom_margin_required" => "The default bottom margin is a required field", + "print_delay_autoreturn" => "", + "print_delay_autoreturn_number" => "", + "print_delay_autoreturn_required" => "", + "print_footer" => "Print Browser Footer", + "print_header" => "Print Browser Header", + "print_left_margin" => "Bal margó", + "print_left_margin_number" => "The default left margin must be a number", + "print_left_margin_required" => "The default left margin is a required field", + "print_receipt_check_behaviour" => "", + "print_receipt_check_behaviour_always" => "", + "print_receipt_check_behaviour_last" => "", + "print_receipt_check_behaviour_never" => "", + "print_right_margin" => "Jobb margó", + "print_right_margin_number" => "The default right margin must be a number", + "print_right_margin_required" => "The default right margin is a required field", + "print_silently" => "Show Print Dialog", + "print_top_margin" => "Felső margó", + "print_top_margin_number" => "The default top margin must be a number", + "print_top_margin_required" => "The default top margin is a required field", + "quantity_decimals" => "Quantity Decimals", + "quick_cash_enable" => "", + "quote_default_comments" => "", + "receipt" => "Nyugta", + "receipt_category" => "", + "receipt_configuration" => "Nyomtatási beállitások", + "receipt_default" => "Alapértelmezett", + "receipt_font_size" => "", + "receipt_font_size_number" => "", + "receipt_font_size_required" => "", + "receipt_info" => "Nyugta beállítási információk", + "receipt_printer" => "Jegy nyomtató", + "receipt_short" => "Rövid", + "receipt_show_company_name" => "", + "receipt_show_description" => "Leírás mutatása", + "receipt_show_serialnumber" => "Szériaszám mutatása", + "receipt_show_tax_ind" => "", + "receipt_show_taxes" => "Adók mutatása", + "receipt_show_total_discount" => "Összes kedvezmény mutatása", + "receipt_template" => "Nyugta template", + "receiving_calculate_average_price" => "Átl. Ár számitása (visszáru)", + "recv_invoice_format" => "Visszatérítési számla formátum", + "register_mode_default" => "", + "report_an_issue" => "", + "return_policy_required" => "Return policy is a required field", + "reward" => "", + "reward_configuration" => "", + "right" => "Jobb", + "sales_invoice_format" => "Eladási számla formátum", + "sales_quote_format" => "", + "saved_successfully" => "Beállítások sikeresen elmentve", + "saved_unsuccessfully" => "Beállítások mentése sikertelen", + "security_issue" => "Security Vulnerability Warning", + "server_notice" => "Please use the below info for issue reporting.", + "service_charge" => "", + "show_due_enable" => "", + "show_office_group" => "", + "statistics" => "Statisztika küldése", + "statistics_tooltip" => "Statisztika küldése fejlesztési célból", + "stock_location" => "Bolt helye", + "stock_location_duplicate" => "Kérem egyedi helyszin nevet használjon", + "stock_location_invalid_chars" => "A bolt helyének neve nem tartalmazhat '_' karaktert", + "stock_location_required" => "Bolt helyszín szám kötelező mező", + "suggestions_fifth_column" => "", + "suggestions_first_column" => "", + "suggestions_fourth_column" => "", + "suggestions_layout" => "", + "suggestions_second_column" => "", + "suggestions_third_column" => "", + "system_conf" => "Setup & Conf", + "system_info" => "System Info", + "table" => "", + "table_configuration" => "", + "takings_printer" => "Takings Printer", + "tax" => "", + "tax_category" => "", + "tax_category_duplicate" => "", + "tax_category_invalid_chars" => "", + "tax_category_required" => "", + "tax_category_used" => "", + "tax_configuration" => "", + "tax_decimals" => "Tax Decimals", + "tax_id" => "", + "tax_included" => "Adókat tartalmaz", + "theme" => "Téma", + "theme_preview" => "", + "thousands_separator" => "Ezres elválasztó", + "timezone" => "Időzóna", + "timezone_error" => "", + "top" => "Felül", + "use_destination_based_tax" => "", + "user_timezone" => "", + "website" => "Weboldal", + "wholesale_markup" => "", + "work_order_enable" => "", + "work_order_format" => "", ]; diff --git a/app/Language/hu/Customers.php b/app/Language/hu/Customers.php index 8a4bb795a..40322c0d2 100644 --- a/app/Language/hu/Customers.php +++ b/app/Language/hu/Customers.php @@ -1,56 +1,56 @@ "Számla #", - "account_number_duplicate" => "Ez a számlaszám már szerepel az adatbázisban.", - "available_points" => "", - "available_points_value" => "", - "average" => "", - "avg_discount" => "", - "basic_information" => "", - "cannot_be_deleted" => "Nem lehet törölni a kiválasztott vevőket, mert néhánynak már van eladása.", - "company_name" => "Cég neve.", - "confirm_delete" => "Biztos törölni kívánja a kiválasztott vevőket?", - "confirm_restore" => "", - "consent" => "", - "consent_required" => "", - "csv_import_failed" => "CSV import sikertelen", - "csv_import_nodata_wrongformat" => "A feltöltött fájlban nincs adat, vagy rossz formátum.", - "csv_import_partially_failed" => "A legtöbb vásárló importálva. alább a lista a kimaradottakról", - "csv_import_success" => "Vásárlók importálása sikeres", - "customer" => "Vevő", - "date" => "", - "discount" => "Kedvezmény", - "discount_fixed" => "", - "discount_percent" => "", - "discount_type" => "", - "email_duplicate" => "", - "employee" => "", - "error_adding_updating" => "Hiba a vásárló modosításánál/hozzáadásánál", - "import_items_csv" => "Vevők importálása CSVből", - "mailchimp_activity_click" => "", - "mailchimp_activity_lastopen" => "", - "mailchimp_activity_open" => "", - "mailchimp_activity_total" => "", - "mailchimp_activity_unopen" => "", - "mailchimp_email_client" => "", - "mailchimp_info" => "", - "mailchimp_member_rating" => "", - "mailchimp_status" => "", - "mailchimp_vip" => "", - "max" => "", - "min" => "", - "new" => "Új vevő", - "none_selected" => "Nem választott ki egyetlen vásárlót sem a törléshez", - "one_or_multiple" => "vevő(k)", - "quantity" => "", - "stats_info" => "", - "successful_adding" => "Sikeresen hozzáadott egy vevőt", - "successful_deleted" => "Sikeres törlés.", - "successful_updating" => "Sikeresen módosította a vevőt", - "tax_code" => "", - "tax_id" => "", - "taxable" => "Adóköteles", - "total" => "Összesen", - "update" => "Vevő módosítása", - "rewards_package" => "", + "account_number" => "Számla #", + "account_number_duplicate" => "Ez a számlaszám már szerepel az adatbázisban.", + "available_points" => "", + "available_points_value" => "", + "average" => "", + "avg_discount" => "", + "basic_information" => "", + "cannot_be_deleted" => "Nem lehet törölni a kiválasztott vevőket, mert néhánynak már van eladása.", + "company_name" => "Cég neve.", + "confirm_delete" => "Biztos törölni kívánja a kiválasztott vevőket?", + "confirm_restore" => "", + "consent" => "", + "consent_required" => "", + "csv_import_failed" => "CSV import sikertelen", + "csv_import_nodata_wrongformat" => "A feltöltött fájlban nincs adat, vagy rossz formátum.", + "csv_import_partially_failed" => "A legtöbb vásárló importálva. alább a lista a kimaradottakról", + "csv_import_success" => "Vásárlók importálása sikeres", + "customer" => "Vevő", + "date" => "", + "discount" => "Kedvezmény", + "discount_fixed" => "", + "discount_percent" => "", + "discount_type" => "", + "email_duplicate" => "", + "employee" => "", + "error_adding_updating" => "Hiba a vásárló modosításánál/hozzáadásánál", + "import_items_csv" => "Vevők importálása CSVből", + "mailchimp_activity_click" => "", + "mailchimp_activity_lastopen" => "", + "mailchimp_activity_open" => "", + "mailchimp_activity_total" => "", + "mailchimp_activity_unopen" => "", + "mailchimp_email_client" => "", + "mailchimp_info" => "", + "mailchimp_member_rating" => "", + "mailchimp_status" => "", + "mailchimp_vip" => "", + "max" => "", + "min" => "", + "new" => "Új vevő", + "none_selected" => "Nem választott ki egyetlen vásárlót sem a törléshez", + "one_or_multiple" => "vevő(k)", + "quantity" => "", + "stats_info" => "", + "successful_adding" => "Sikeresen hozzáadott egy vevőt", + "successful_deleted" => "Sikeres törlés.", + "successful_updating" => "Sikeresen módosította a vevőt", + "tax_code" => "", + "tax_id" => "", + "taxable" => "Adóköteles", + "total" => "Összesen", + "update" => "Vevő módosítása", + "rewards_package" => "", ]; diff --git a/app/Language/hu/Datepicker.php b/app/Language/hu/Datepicker.php index 7727e1d08..9f6a14bff 100644 --- a/app/Language/hu/Datepicker.php +++ b/app/Language/hu/Datepicker.php @@ -1,23 +1,23 @@ "Kezdetektől", - "apply" => "Elfogad", - "cancel" => "Mégsem", - "custom" => "Egyedi", - "from" => "Tól", - "last_30" => "Utolsó 30 nap", - "last_7" => "Utolsó 7 nap", - "last_financial_year" => "", - "last_month" => "Múlt hónap", - "last_year" => "Múlt év", - "same_month_last_year" => "Ez a hónap, múlt évben", - "same_month_to_same_day_last_year" => "Ez a hónap, mai nap, múlt évben", - "this_financial_year" => "", - "this_month" => "Ez a hónap", - "this_year" => "Ezév", - "to" => "Ig", - "today" => "Ma", - "today_last_year" => "Mai nap, elmúlt évben", - "weekstart" => "1", - "yesterday" => "Tegnap", + "all_time" => "Kezdetektől", + "apply" => "Elfogad", + "cancel" => "Mégsem", + "custom" => "Egyedi", + "from" => "Tól", + "last_30" => "Utolsó 30 nap", + "last_7" => "Utolsó 7 nap", + "last_financial_year" => "", + "last_month" => "Múlt hónap", + "last_year" => "Múlt év", + "same_month_last_year" => "Ez a hónap, múlt évben", + "same_month_to_same_day_last_year" => "Ez a hónap, mai nap, múlt évben", + "this_financial_year" => "", + "this_month" => "Ez a hónap", + "this_year" => "Ezév", + "to" => "Ig", + "today" => "Ma", + "today_last_year" => "Mai nap, elmúlt évben", + "weekstart" => "1", + "yesterday" => "Tegnap", ]; diff --git a/app/Language/hu/Employees.php b/app/Language/hu/Employees.php index 124fc2a5a..c14a4c93c 100644 --- a/app/Language/hu/Employees.php +++ b/app/Language/hu/Employees.php @@ -1,44 +1,44 @@ "", - "basic_information" => "Munkavállaló alap információk", - "cannot_be_deleted" => "Nem lehet a kiválasztott munkavállaló(ka)t törölni, mert már van lezárt értékesítése vagy saját magát kívánja törölni! :)", - "change_employee" => "", - "change_password" => "", - "clerk" => "", - "commission" => "", - "confirm_delete" => "Biztos, hogy törölni kívánja a munkavállalót?", - "confirm_restore" => "", - "current_password" => "", - "current_password_invalid" => "", - "employee" => "Munkavállaló", - "error_adding_updating" => "Hiba a munkavállaló módosításánál/hozzáadásánál", - "error_deleting_demo_admin" => "Nem tudja törölni a demo admin felhasználót", - "error_updating_demo_admin" => "Nem tudja módosítani a demo admin felhasználót", - "language" => "", - "login_info" => "Munkavállaló azonosító", - "manager" => "", - "new" => "Új munkavállaló", - "none_selected" => "Nem választott ki munkavállalót a törléshez", - "one_or_multiple" => "munkavállaló(k)", - "password" => "Jelszó", - "password_minlength" => "A jelszónak legalább 8 karakternek kell lennie", - "password_must_match" => "A jelszó nem egyezik", - "password_not_must_match" => "", - "password_required" => "A jelszó kötelező", - "permission_desc" => "Válassza ki az alábbi boxokat a hozzáférés megadásához", - "permission_info" => "Munkavállaló engedélyei", - "repeat_password" => "Jelszó újra", - "subpermission_required" => "Engedélyezzen legalább egyet minden modulhoz", - "successful_adding" => "Sikeresen hozzáadott egy új munkavállalót", - "successful_change_password" => "", - "successful_deleted" => "Sikeresen törölt egy munkavállalót", - "successful_updating" => "Sikeresen módosította a munkavállalót", - "system_language" => "", - "unsuccessful_change_password" => "", - "update" => "Munkavállaló módosítása", - "username" => "Felhasználó név", - "username_duplicate" => "", - "username_minlength" => "A felhasználó névnek legalább 5 karakternek kell lennie", - "username_required" => "Felhasználó név kötelező", + "administrator" => "", + "basic_information" => "Munkavállaló alap információk", + "cannot_be_deleted" => "Nem lehet a kiválasztott munkavállaló(ka)t törölni, mert már van lezárt értékesítése vagy saját magát kívánja törölni! :)", + "change_employee" => "", + "change_password" => "", + "clerk" => "", + "commission" => "", + "confirm_delete" => "Biztos, hogy törölni kívánja a munkavállalót?", + "confirm_restore" => "", + "current_password" => "", + "current_password_invalid" => "", + "employee" => "Munkavállaló", + "error_adding_updating" => "Hiba a munkavállaló módosításánál/hozzáadásánál", + "error_deleting_demo_admin" => "Nem tudja törölni a demo admin felhasználót", + "error_updating_demo_admin" => "Nem tudja módosítani a demo admin felhasználót", + "language" => "", + "login_info" => "Munkavállaló azonosító", + "manager" => "", + "new" => "Új munkavállaló", + "none_selected" => "Nem választott ki munkavállalót a törléshez", + "one_or_multiple" => "munkavállaló(k)", + "password" => "Jelszó", + "password_minlength" => "A jelszónak legalább 8 karakternek kell lennie", + "password_must_match" => "A jelszó nem egyezik", + "password_not_must_match" => "", + "password_required" => "A jelszó kötelező", + "permission_desc" => "Válassza ki az alábbi boxokat a hozzáférés megadásához", + "permission_info" => "Munkavállaló engedélyei", + "repeat_password" => "Jelszó újra", + "subpermission_required" => "Engedélyezzen legalább egyet minden modulhoz", + "successful_adding" => "Sikeresen hozzáadott egy új munkavállalót", + "successful_change_password" => "", + "successful_deleted" => "Sikeresen törölt egy munkavállalót", + "successful_updating" => "Sikeresen módosította a munkavállalót", + "system_language" => "", + "unsuccessful_change_password" => "", + "update" => "Munkavállaló módosítása", + "username" => "Felhasználó név", + "username_duplicate" => "", + "username_minlength" => "A felhasználó névnek legalább 5 karakternek kell lennie", + "username_required" => "Felhasználó név kötelező", ]; diff --git a/app/Language/hu/Enum.php b/app/Language/hu/Enum.php index c39655c3b..1ed7e9313 100644 --- a/app/Language/hu/Enum.php +++ b/app/Language/hu/Enum.php @@ -1,10 +1,10 @@ "", - "half_even" => "", - "half_five" => "", - "half_odd" => "", - "half_up" => "", - "round_down" => "", - "round_up" => "", + "half_down" => "", + "half_even" => "", + "half_five" => "", + "half_odd" => "", + "half_up" => "", + "round_down" => "", + "round_up" => "", ]; diff --git a/app/Language/hu/Error.php b/app/Language/hu/Error.php index 801a3690b..7949bea5d 100644 --- a/app/Language/hu/Error.php +++ b/app/Language/hu/Error.php @@ -1,5 +1,5 @@ "Önnek nincs hozzáférése az alábbi modulhoz ", - "unknown" => "ismeretlen", + "no_permission_module" => "Önnek nincs hozzáférése az alábbi modulhoz ", + "unknown" => "ismeretlen", ]; diff --git a/app/Language/hu/Expenses.php b/app/Language/hu/Expenses.php index 0cb440313..7a577acf4 100644 --- a/app/Language/hu/Expenses.php +++ b/app/Language/hu/Expenses.php @@ -1,50 +1,50 @@ "Költség hozzáadása", - "amount" => "Összeg", - "amount_number" => "Az összeg csak számot tartalmazhat", - "amount_required" => "A költség megadása kötelező", - "by_category" => "Kategória", - "cannot_be_deleted" => "Költség kategória nem törölhető", - "cash" => "Készpénz", - "cash_filter" => "Készpénz", - "categories_name" => "Kategória", - "category_required" => "Kategória kitöltése kötelező", - "check" => "", - "check_filter" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "credit" => "Hitelkártya", - "credit_filter" => "Hitelkártya", - "date" => "Dátum", - "date_number" => "", - "date_required" => "", - "debit" => "", - "debit_filter" => "", - "description" => "", - "due" => "", - "due_filter" => "", - "employee" => "", - "error_adding_updating" => "", - "expense_id" => "", - "expenses_employee" => "", - "info" => "", - "ip_address" => "", - "is_deleted" => "", - "name_required" => "", - "new" => "", - "new_supplier" => "", - "no_expenses_to_display" => "", - "none_selected" => "", - "one_or_multiple" => "", - "payment" => "", - "start_typing_supplier_name" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "supplier_name" => "", - "supplier_tax_code" => "", - "tax_amount" => "", - "tax_amount_number" => "", - "update" => "", + "add_item" => "Költség hozzáadása", + "amount" => "Összeg", + "amount_number" => "Az összeg csak számot tartalmazhat", + "amount_required" => "A költség megadása kötelező", + "by_category" => "Kategória", + "cannot_be_deleted" => "Költség kategória nem törölhető", + "cash" => "Készpénz", + "cash_filter" => "Készpénz", + "categories_name" => "Kategória", + "category_required" => "Kategória kitöltése kötelező", + "check" => "", + "check_filter" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "credit" => "Hitelkártya", + "credit_filter" => "Hitelkártya", + "date" => "Dátum", + "date_number" => "", + "date_required" => "", + "debit" => "", + "debit_filter" => "", + "description" => "", + "due" => "", + "due_filter" => "", + "employee" => "", + "error_adding_updating" => "", + "expense_id" => "", + "expenses_employee" => "", + "info" => "", + "ip_address" => "", + "is_deleted" => "", + "name_required" => "", + "new" => "", + "new_supplier" => "", + "no_expenses_to_display" => "", + "none_selected" => "", + "one_or_multiple" => "", + "payment" => "", + "start_typing_supplier_name" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "supplier_name" => "", + "supplier_tax_code" => "", + "tax_amount" => "", + "tax_amount_number" => "", + "update" => "", ]; diff --git a/app/Language/hu/Expenses_categories.php b/app/Language/hu/Expenses_categories.php index 03169e528..7d3b08c27 100644 --- a/app/Language/hu/Expenses_categories.php +++ b/app/Language/hu/Expenses_categories.php @@ -1,22 +1,22 @@ "", - "add_item" => "", - "cannot_be_deleted" => "", - "category_id" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "description" => "", - "error_adding_updating" => "", - "info" => "", - "name" => "", - "new" => "", - "no_expenses_categories_to_display" => "", - "none_selected" => "", - "one_or_multiple" => "", - "quantity" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "update" => "", + "category_name_required" => "", + "add_item" => "", + "cannot_be_deleted" => "", + "category_id" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "description" => "", + "error_adding_updating" => "", + "info" => "", + "name" => "", + "new" => "", + "no_expenses_categories_to_display" => "", + "none_selected" => "", + "one_or_multiple" => "", + "quantity" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "update" => "", ]; diff --git a/app/Language/hu/Giftcards.php b/app/Language/hu/Giftcards.php index f7dd963bb..62bd85b5f 100644 --- a/app/Language/hu/Giftcards.php +++ b/app/Language/hu/Giftcards.php @@ -1,71 +1,71 @@ "Hozzáadás/levonás", - "allow_alt_description" => "Alternativ leirás eng.", - "bulk_edit" => "Tömeges mód.", - "cannot_be_deleted" => "Utalvány nem törölhető, mert folyamatban van egy eladás.", - "cannot_find_giftcard" => "Nem található információ az utalványról", - "cannot_use" => "Giftcard {0} cannot be used for this sale. Invalid Customer!", - "card_value" => "Érték", - "category" => "Kategória", - "change_all_to_allow_alt_desc" => "Alternativ leirás eng.", - "change_all_to_not_allow_allow_desc" => "Alternativ leirás tilt.", - "change_all_to_serialized" => "Change All To Serialized", - "change_all_to_unserialized" => "Change All To Unserialized", - "confirm_bulk_edit" => "Biztos, hogy mindegyik kiválasztott utalványt módositja?", - "confirm_delete" => "Biztos, hogy törli a kiválasztott utalványokat?", - "confirm_restore" => "", - "cost_price" => "Költség", - "count" => "Leltár módositása", - "csv_import_failed" => "CSV import sikertelen", - "current_quantity" => "Jelenlegi mennyiség", - "description" => "Leirás", - "details_count" => "Leltár információk", - "do_nothing" => "Ne tegyen semmit", - "edit_fields_you_want_to_update" => "Edit the fields you want to edit for ALL selected giftcards", - "edit_multiple_giftcards" => "Editing Multiple Giftcards", - "error_adding_updating" => "Utalvány hozzáadása/módositása sikertelen", - "error_updating_multiple" => "Utalvány módositása sikertelen", - "generate_barcodes" => "Vonalkód generálás", - "giftcard" => "Uttalvány", - "giftcard_number" => "Utalvány sorszáma", - "info_provided_by" => "Info provided by", - "inventory_comments" => "Megjegyzések", - "is_serialized" => "Utalványnak van sorozatszáma", - "low_inventory_giftcards" => "Alacsony utalvány készl.", - "manually_editing_of_quantity" => "Mennyiség kézi módositása", - "must_select_giftcard_for_barcode" => "Legalább egy utalványt ki kell választania a vonalkód generálásához", - "new" => "Új utalvány", - "no_description_giftcards" => "Utalvány leir. nélk.", - "no_giftcards_to_display" => "Nincsenek megjelenithető utalványok", - "none" => "Nincs", - "none_selected" => "Nem választott ki utalványt a módositáshoz", - "number" => "Utalvány számának számnak kell lennie", - "number_information" => "Utalvány száma", - "number_required" => "Utalvány száma kötelező mező", - "one_or_multiple" => "utalvány(ok)", - "person_id" => "Vevő", - "quantity" => "Mennyiség", - "quantity_required" => "Mennyiség kötelező mező. Kérem zárja be ( X ) a mégsemhez", - "remaining_balance" => "{0} számú utalvány fennmaradó értéke {1}!", - "reorder_level" => "Újrarend. szint", - "retrive_giftcard_info" => "Utalvány visszaváltási infó", - "sales_tax_1" => "Eladási adó", - "sales_tax_2" => "Eladási adó 2", - "serialized_giftcards" => "Sorszámozott utalványok", - "successful_adding" => "Sikeresen hozzáadott utalványt", - "successful_bulk_edit" => "Sikeresen módositotta a kiválasztott utalványt", - "successful_deleted" => "Sikeres törlés", - "successful_updating" => "Sikeres utalvány módositás", - "supplier" => "Szállitó", - "tax_1" => "Adó 1", - "tax_2" => "Adó 2", - "tax_percent" => "Adó %", - "tax_percents" => "Adó %-ok", - "unit_price" => "Egységár", - "upc_database" => "UPC adatbázis", - "update" => "Utalvány módositás", - "use_inventory_menu" => "Leltár menü haszn.", - "value" => "Utalvány értékének számnak kell lennie", - "value_required" => "Utalvány érték kötelező mező", + "add_minus" => "Hozzáadás/levonás", + "allow_alt_description" => "Alternativ leirás eng.", + "bulk_edit" => "Tömeges mód.", + "cannot_be_deleted" => "Utalvány nem törölhető, mert folyamatban van egy eladás.", + "cannot_find_giftcard" => "Nem található információ az utalványról", + "cannot_use" => "Giftcard {0} cannot be used for this sale. Invalid Customer!", + "card_value" => "Érték", + "category" => "Kategória", + "change_all_to_allow_alt_desc" => "Alternativ leirás eng.", + "change_all_to_not_allow_allow_desc" => "Alternativ leirás tilt.", + "change_all_to_serialized" => "Change All To Serialized", + "change_all_to_unserialized" => "Change All To Unserialized", + "confirm_bulk_edit" => "Biztos, hogy mindegyik kiválasztott utalványt módositja?", + "confirm_delete" => "Biztos, hogy törli a kiválasztott utalványokat?", + "confirm_restore" => "", + "cost_price" => "Költség", + "count" => "Leltár módositása", + "csv_import_failed" => "CSV import sikertelen", + "current_quantity" => "Jelenlegi mennyiség", + "description" => "Leirás", + "details_count" => "Leltár információk", + "do_nothing" => "Ne tegyen semmit", + "edit_fields_you_want_to_update" => "Edit the fields you want to edit for ALL selected giftcards", + "edit_multiple_giftcards" => "Editing Multiple Giftcards", + "error_adding_updating" => "Utalvány hozzáadása/módositása sikertelen", + "error_updating_multiple" => "Utalvány módositása sikertelen", + "generate_barcodes" => "Vonalkód generálás", + "giftcard" => "Uttalvány", + "giftcard_number" => "Utalvány sorszáma", + "info_provided_by" => "Info provided by", + "inventory_comments" => "Megjegyzések", + "is_serialized" => "Utalványnak van sorozatszáma", + "low_inventory_giftcards" => "Alacsony utalvány készl.", + "manually_editing_of_quantity" => "Mennyiség kézi módositása", + "must_select_giftcard_for_barcode" => "Legalább egy utalványt ki kell választania a vonalkód generálásához", + "new" => "Új utalvány", + "no_description_giftcards" => "Utalvány leir. nélk.", + "no_giftcards_to_display" => "Nincsenek megjelenithető utalványok", + "none" => "Nincs", + "none_selected" => "Nem választott ki utalványt a módositáshoz", + "number" => "Utalvány számának számnak kell lennie", + "number_information" => "Utalvány száma", + "number_required" => "Utalvány száma kötelező mező", + "one_or_multiple" => "utalvány(ok)", + "person_id" => "Vevő", + "quantity" => "Mennyiség", + "quantity_required" => "Mennyiség kötelező mező. Kérem zárja be ( X ) a mégsemhez", + "remaining_balance" => "{0} számú utalvány fennmaradó értéke {1}!", + "reorder_level" => "Újrarend. szint", + "retrive_giftcard_info" => "Utalvány visszaváltási infó", + "sales_tax_1" => "Eladási adó", + "sales_tax_2" => "Eladási adó 2", + "serialized_giftcards" => "Sorszámozott utalványok", + "successful_adding" => "Sikeresen hozzáadott utalványt", + "successful_bulk_edit" => "Sikeresen módositotta a kiválasztott utalványt", + "successful_deleted" => "Sikeres törlés", + "successful_updating" => "Sikeres utalvány módositás", + "supplier" => "Szállitó", + "tax_1" => "Adó 1", + "tax_2" => "Adó 2", + "tax_percent" => "Adó %", + "tax_percents" => "Adó %-ok", + "unit_price" => "Egységár", + "upc_database" => "UPC adatbázis", + "update" => "Utalvány módositás", + "use_inventory_menu" => "Leltár menü haszn.", + "value" => "Utalvány értékének számnak kell lennie", + "value_required" => "Utalvány érték kötelező mező", ]; diff --git a/app/Language/hu/Item_kits.php b/app/Language/hu/Item_kits.php index 71f8da684..c7efc3466 100644 --- a/app/Language/hu/Item_kits.php +++ b/app/Language/hu/Item_kits.php @@ -1,41 +1,41 @@ "Termék hozzáadása", - "all" => "", - "cannot_be_deleted" => "Termékcsomag(ok) nem törölhető(ek)", - "confirm_delete" => "Biztos, hogy törli a kiválasztott csomagokat?", - "confirm_restore" => "", - "description" => "Termékcsomag leírás", - "discount" => "", - "discount_fixed" => "", - "discount_percent" => "", - "discount_type" => "", - "error_adding_updating" => "Hiba a termékcsomag hozzáadásánál/módosításánál", - "find_kit_item" => "", - "info" => "Termékcsomag info", - "item" => "Termék", - "item_kit_number" => "", - "item_kit_number_duplicate" => "", - "item_number" => "", - "item_number_duplicate" => "", - "items" => "Termékek", - "kit" => "Csomag ID", - "kit_and_components" => "", - "kit_and_stock" => "", - "kit_only" => "", - "name" => "Termékcsomag neve", - "new" => "Új termékcsomag", - "no_item_kits_to_display" => "Nincsenek megjeleníthető termékcsomagok", - "none_selected" => "Nem választott ki termékcsomagot", - "one_or_multiple" => "Termékcsomag(ok)", - "price_option" => "", - "priced_only" => "", - "print_option" => "", - "quantity" => "Mennyiség", - "sequence" => "", - "successful_adding" => "Sikeresen hozzáadta a termékcsomagot", - "successful_deleted" => "Sikeresen törölte a termékcsomagot", - "successful_updating" => "Sikeresen módosította a termékcsomagot", - "unit_price" => "", - "update" => "Termékcsomag módosítása", + "add_item" => "Termék hozzáadása", + "all" => "", + "cannot_be_deleted" => "Termékcsomag(ok) nem törölhető(ek)", + "confirm_delete" => "Biztos, hogy törli a kiválasztott csomagokat?", + "confirm_restore" => "", + "description" => "Termékcsomag leírás", + "discount" => "", + "discount_fixed" => "", + "discount_percent" => "", + "discount_type" => "", + "error_adding_updating" => "Hiba a termékcsomag hozzáadásánál/módosításánál", + "find_kit_item" => "", + "info" => "Termékcsomag info", + "item" => "Termék", + "item_kit_number" => "", + "item_kit_number_duplicate" => "", + "item_number" => "", + "item_number_duplicate" => "", + "items" => "Termékek", + "kit" => "Csomag ID", + "kit_and_components" => "", + "kit_and_stock" => "", + "kit_only" => "", + "name" => "Termékcsomag neve", + "new" => "Új termékcsomag", + "no_item_kits_to_display" => "Nincsenek megjeleníthető termékcsomagok", + "none_selected" => "Nem választott ki termékcsomagot", + "one_or_multiple" => "Termékcsomag(ok)", + "price_option" => "", + "priced_only" => "", + "print_option" => "", + "quantity" => "Mennyiség", + "sequence" => "", + "successful_adding" => "Sikeresen hozzáadta a termékcsomagot", + "successful_deleted" => "Sikeresen törölte a termékcsomagot", + "successful_updating" => "Sikeresen módosította a termékcsomagot", + "unit_price" => "", + "update" => "Termékcsomag módosítása", ]; diff --git a/app/Language/hu/Items.php b/app/Language/hu/Items.php index d7453060e..6adff5af1 100644 --- a/app/Language/hu/Items.php +++ b/app/Language/hu/Items.php @@ -1,120 +1,120 @@ "Mennyiség hozzáadása/elvétele", - "allow_alt_description" => "Alternativ leirás eng.", - "amount_entry" => "", - "bulk_edit" => "Tömeges módosítás", - "buy_price_required" => "Vételár kötelező mező", - "cannot_be_deleted" => "Nem törölhető a kiválasztott termék, mert van folyamatban lévő eladás!", - "cannot_find_item" => "Nem található információ a termékről", - "categories" => "", - "category" => "Kategória", - "category_new" => "", - "category_required" => "Kategória kötelező mező", - "change_all_to_allow_alt_desc" => "Alternativ leirás eng. mindenhol", - "change_all_to_not_allow_allow_desc" => "Alternativ leirás tiltása", - "change_all_to_serialized" => "Change All To Serialized", - "change_all_to_unserialized" => "Change All To Unserialized", - "change_image" => "Kép cseréje", - "confirm_bulk_edit" => "Biztosan módosítani kívánja a kiválasztott termékeket?", - "confirm_bulk_edit_wipe_taxes" => "Minden termék adó információja cserélve lesz!", - "confirm_delete" => "Biztosan törölni kívánja a kijelölt termékeket?", - "confirm_restore" => "", - "cost_price" => "Beker. Ár", - "cost_price_number" => "Bekerülési árnak számnak kell lennie", - "cost_price_required" => "Bekerülési ár kötelező mező", - "count" => "Raktárkészlet módosítása", - "csv_import_failed" => "CSV import sikertelen", - "csv_import_nodata_wrongformat" => "A feltöltött fájlban nincs adat, vagy rossz formátum.", - "csv_import_partially_failed" => "Most Items imported. But some were not, here is the list", - "csv_import_success" => "Import of Items successful", - "current_quantity" => "Jelenlegi mennyiség", - "default_pack_name" => "", - "description" => "Leírás", - "details_count" => "Raktárkészlet információk", - "do_nothing" => "Ne csináljon semmit", - "edit" => "", - "edit_fields_you_want_to_update" => "Edit the fields you want to edit for ALL selected items", - "edit_multiple_items" => "Editing Multiple Items", - "empty_upc_items" => "Üres UPC term.", - "error_adding_updating" => "Termék módositása/hozzáadása sikertelen.", - "error_updating_multiple" => "Termék módositás sikertelen", - "generate_barcodes" => "Vonalkód generálás", - "hsn_code" => "", - "image" => "Avatar", - "import_items_csv" => "Termékek importálása CSVből", - "info_provided_by" => "Info provided by", - "inventory" => "Raktárkészlet", - "inventory_CSV_import_quantity" => "", - "inventory_comments" => "Megjegyzés", - "inventory_data_tracking" => "", - "inventory_date" => "", - "inventory_employee" => "", - "inventory_in_out_quantity" => "", - "inventory_remarks" => "", - "is_deleted" => "Törölve", - "is_printed" => "", - "is_serialized" => "Terméknek van sorozatszáma", - "item" => "Termék információ", - "item_id" => "", - "item_number" => "UPC/EAN/ISBN", - "item_number_duplicate" => "A termék száma már szerepel az adatbázisban", - "kit" => "", - "location" => "Helyszín", - "low_inventory_items" => "Kifogyott term.", - "low_sell_item" => "", - "manually_editing_of_quantity" => "Mennyiség módosítása manuálisan", - "markup" => "", - "name" => "Terméknév", - "name_required" => "Terméknév kötelező mező", - "new" => "Új termék", - "no_description_items" => "Leirás nélk.", - "no_items_to_display" => "Nincsenek megjeleníthető termékek", - "none" => "Egysem", - "none_selected" => "Nem választott ki terméket a módosításhoz", - "nonstock" => "", - "number_information" => "Termék száma", - "number_required" => "UPC/EAN/ISBN kötelező mező", - "one_or_multiple" => "termék(ek)", - "pack_name" => "", - "qty_per_pack" => "", - "quantity" => "Mennyiség", - "quantity_number" => "A mennyiségnek számnak kell lennie", - "quantity_required" => "A mennyiség kötelező mező", - "receiving_quantity" => "Egységcsom mennyiség", - "remove_image" => "Kép eltávolítása", - "reorder_level" => "Újrarend szint", - "reorder_level_number" => "Újrarendelési szintnek számnak kell lennie.", - "reorder_level_required" => "Újrarendelési mező kötelező", - "retrive_item_info" => "Retrive Item Info", - "sales_tax_1" => "Értékesítési adó 1", - "sales_tax_2" => "Értékesítési adó 2", - "search_attributes" => "Egyedi mezők", - "select_image" => "Kép kiválasztása", - "serialized_items" => "Szerializált termékek", - "standard" => "", - "stock" => "", - "stock_location" => "Raktárhely", - "stock_type" => "", - "successful_adding" => "Sikeresen hozzáadott egy terméket", - "successful_bulk_edit" => "Sikeresen módosította a kiválasztott termékeket", - "successful_deleted" => "Sikeres törlés", - "successful_updating" => "Sikeresen módosította a terméket", - "supplier" => "Beszállító", - "tax_1" => "Adó 1", - "tax_2" => "Adó 2", - "tax_3" => "", - "tax_category" => "", - "tax_percent" => "Adó %", - "tax_percent_number" => "", - "tax_percent_required" => "Adó % kötelező mező", - "tax_percents" => "Adó százalék(ok)", - "temp" => "", - "type" => "", - "unit_price" => "Kisker. Ár", - "unit_price_number" => "Egységárnak számnak kell lennie", - "unit_price_required" => "Kiskereskedelmi ár kötelező mező", - "upc_database" => "UPC adatbázis", - "update" => "Termék módosítás", - "use_inventory_menu" => "Készl. menü haszn.", + "add_minus" => "Mennyiség hozzáadása/elvétele", + "allow_alt_description" => "Alternativ leirás eng.", + "amount_entry" => "", + "bulk_edit" => "Tömeges módosítás", + "buy_price_required" => "Vételár kötelező mező", + "cannot_be_deleted" => "Nem törölhető a kiválasztott termék, mert van folyamatban lévő eladás!", + "cannot_find_item" => "Nem található információ a termékről", + "categories" => "", + "category" => "Kategória", + "category_new" => "", + "category_required" => "Kategória kötelező mező", + "change_all_to_allow_alt_desc" => "Alternativ leirás eng. mindenhol", + "change_all_to_not_allow_allow_desc" => "Alternativ leirás tiltása", + "change_all_to_serialized" => "Change All To Serialized", + "change_all_to_unserialized" => "Change All To Unserialized", + "change_image" => "Kép cseréje", + "confirm_bulk_edit" => "Biztosan módosítani kívánja a kiválasztott termékeket?", + "confirm_bulk_edit_wipe_taxes" => "Minden termék adó információja cserélve lesz!", + "confirm_delete" => "Biztosan törölni kívánja a kijelölt termékeket?", + "confirm_restore" => "", + "cost_price" => "Beker. Ár", + "cost_price_number" => "Bekerülési árnak számnak kell lennie", + "cost_price_required" => "Bekerülési ár kötelező mező", + "count" => "Raktárkészlet módosítása", + "csv_import_failed" => "CSV import sikertelen", + "csv_import_nodata_wrongformat" => "A feltöltött fájlban nincs adat, vagy rossz formátum.", + "csv_import_partially_failed" => "Most Items imported. But some were not, here is the list", + "csv_import_success" => "Import of Items successful", + "current_quantity" => "Jelenlegi mennyiség", + "default_pack_name" => "", + "description" => "Leírás", + "details_count" => "Raktárkészlet információk", + "do_nothing" => "Ne csináljon semmit", + "edit" => "", + "edit_fields_you_want_to_update" => "Edit the fields you want to edit for ALL selected items", + "edit_multiple_items" => "Editing Multiple Items", + "empty_upc_items" => "Üres UPC term.", + "error_adding_updating" => "Termék módositása/hozzáadása sikertelen.", + "error_updating_multiple" => "Termék módositás sikertelen", + "generate_barcodes" => "Vonalkód generálás", + "hsn_code" => "", + "image" => "Avatar", + "import_items_csv" => "Termékek importálása CSVből", + "info_provided_by" => "Info provided by", + "inventory" => "Raktárkészlet", + "inventory_CSV_import_quantity" => "", + "inventory_comments" => "Megjegyzés", + "inventory_data_tracking" => "", + "inventory_date" => "", + "inventory_employee" => "", + "inventory_in_out_quantity" => "", + "inventory_remarks" => "", + "is_deleted" => "Törölve", + "is_printed" => "", + "is_serialized" => "Terméknek van sorozatszáma", + "item" => "Termék információ", + "item_id" => "", + "item_number" => "UPC/EAN/ISBN", + "item_number_duplicate" => "A termék száma már szerepel az adatbázisban", + "kit" => "", + "location" => "Helyszín", + "low_inventory_items" => "Kifogyott term.", + "low_sell_item" => "", + "manually_editing_of_quantity" => "Mennyiség módosítása manuálisan", + "markup" => "", + "name" => "Terméknév", + "name_required" => "Terméknév kötelező mező", + "new" => "Új termék", + "no_description_items" => "Leirás nélk.", + "no_items_to_display" => "Nincsenek megjeleníthető termékek", + "none" => "Egysem", + "none_selected" => "Nem választott ki terméket a módosításhoz", + "nonstock" => "", + "number_information" => "Termék száma", + "number_required" => "UPC/EAN/ISBN kötelező mező", + "one_or_multiple" => "termék(ek)", + "pack_name" => "", + "qty_per_pack" => "", + "quantity" => "Mennyiség", + "quantity_number" => "A mennyiségnek számnak kell lennie", + "quantity_required" => "A mennyiség kötelező mező", + "receiving_quantity" => "Egységcsom mennyiség", + "remove_image" => "Kép eltávolítása", + "reorder_level" => "Újrarend szint", + "reorder_level_number" => "Újrarendelési szintnek számnak kell lennie.", + "reorder_level_required" => "Újrarendelési mező kötelező", + "retrive_item_info" => "Retrive Item Info", + "sales_tax_1" => "Értékesítési adó 1", + "sales_tax_2" => "Értékesítési adó 2", + "search_attributes" => "Egyedi mezők", + "select_image" => "Kép kiválasztása", + "serialized_items" => "Szerializált termékek", + "standard" => "", + "stock" => "", + "stock_location" => "Raktárhely", + "stock_type" => "", + "successful_adding" => "Sikeresen hozzáadott egy terméket", + "successful_bulk_edit" => "Sikeresen módosította a kiválasztott termékeket", + "successful_deleted" => "Sikeres törlés", + "successful_updating" => "Sikeresen módosította a terméket", + "supplier" => "Beszállító", + "tax_1" => "Adó 1", + "tax_2" => "Adó 2", + "tax_3" => "", + "tax_category" => "", + "tax_percent" => "Adó %", + "tax_percent_number" => "", + "tax_percent_required" => "Adó % kötelező mező", + "tax_percents" => "Adó százalék(ok)", + "temp" => "", + "type" => "", + "unit_price" => "Kisker. Ár", + "unit_price_number" => "Egységárnak számnak kell lennie", + "unit_price_required" => "Kiskereskedelmi ár kötelező mező", + "upc_database" => "UPC adatbázis", + "update" => "Termék módosítás", + "use_inventory_menu" => "Készl. menü haszn.", ]; diff --git a/app/Language/hu/Login.php b/app/Language/hu/Login.php index a6a8dd8b8..fae395e17 100644 --- a/app/Language/hu/Login.php +++ b/app/Language/hu/Login.php @@ -1,15 +1,15 @@ "", - "go" => "Juhúúúúúú!", - "invalid_gcaptcha" => "", - "invalid_installation" => "", - "invalid_username_and_password" => "Érvénytelen felhasználói név vagy jelszó", - "login" => "Belépés", - "logout" => "", - "migration_needed" => "", - "password" => "Jelszó", - "required_username" => "", - "username" => "Felhasználó név", - "welcome" => "", + "gcaptcha" => "", + "go" => "Juhúúúúúú!", + "invalid_gcaptcha" => "", + "invalid_installation" => "", + "invalid_username_and_password" => "Érvénytelen felhasználói név vagy jelszó", + "login" => "Belépés", + "logout" => "", + "migration_needed" => "", + "password" => "Jelszó", + "required_username" => "", + "username" => "Felhasználó név", + "welcome" => "", ]; diff --git a/app/Language/hu/Messages.php b/app/Language/hu/Messages.php index 631eec318..23ce194ec 100644 --- a/app/Language/hu/Messages.php +++ b/app/Language/hu/Messages.php @@ -1,15 +1,15 @@ "Keresztnév", - "last_name" => "Vezetéknév", - "message" => "Üzenet", - "message_placeholder" => "Az Ön üzente...", - "message_required" => "Üzenet kötelező", - "multiple_phones" => "(Több címzett esetében a telefonszámokat vesszővel válassza el)", - "phone" => "Telefonszám", - "phone_number_required" => "Telefonszám kötelező", - "phone_placeholder" => "Mobil telefonszám(ok) ide...", - "sms_send" => "SMS küldés", - "successfully_sent" => "Az üzenet sikeresen elküldve: ", - "unsuccessfully_sent" => "Sikertelen üzenet küldés:: ", + "first_name" => "Keresztnév", + "last_name" => "Vezetéknév", + "message" => "Üzenet", + "message_placeholder" => "Az Ön üzente...", + "message_required" => "Üzenet kötelező", + "multiple_phones" => "(Több címzett esetében a telefonszámokat vesszővel válassza el)", + "phone" => "Telefonszám", + "phone_number_required" => "Telefonszám kötelező", + "phone_placeholder" => "Mobil telefonszám(ok) ide...", + "sms_send" => "SMS küldés", + "successfully_sent" => "Az üzenet sikeresen elküldve: ", + "unsuccessfully_sent" => "Sikertelen üzenet küldés:: ", ]; diff --git a/app/Language/hu/Module.php b/app/Language/hu/Module.php index b99d10020..44fc14ba6 100644 --- a/app/Language/hu/Module.php +++ b/app/Language/hu/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "", - "attributes_desc" => "", - "both" => "", - "cashups" => "", - "cashups_desc" => "", - "config" => "Bolt beállítás", - "config_desc" => "Bolt beállításainak módosítása", - "customers" => "Vevők", - "customers_desc" => "Vevők hozzáadása, módosítása, törlése és keresése", - "employees" => "Dolgozók", - "employees_desc" => "Dolgozók hozzáadása, módosítása, törlése és keresése", - "expenses" => "", - "expenses_categories" => "", - "expenses_categories_desc" => "", - "expenses_desc" => "", - "giftcards" => "Utalvány", - "giftcards_desc" => "Ajándékutalványok hozzáadása, módosítása, törlése és keresése", - "home" => "Kezdőlap", - "home_desc" => "", - "item_kits" => "Termék csomagok", - "item_kits_desc" => "Termék csomagok hozzáadása, módosítása, törlése és keresése", - "items" => "Termékek", - "items_desc" => "Termékek hozzáadása, módosítása, törlése és keresése", - "messages" => "Messages", - "messages_desc" => "Send Messages to Customers, Suppliers, Employees et al.", - "migrate" => "", - "migrate_desc" => "", - "office" => "", - "office_desc" => "", - "receivings" => "Áruátvétel", - "receivings_desc" => "Beszállítóktól érkező áruk átvétele", - "reports" => "Riportok", - "reports_desc" => "Riportok megtekintése és generálása", - "sales" => "Értékesítés", - "sales_desc" => "Termékek értékesítése és visszavétele", - "suppliers" => "Beszállítók", - "suppliers_desc" => "Beszállítók hozzáadása, módosítása, törlése és keresése", - "taxes" => "", - "taxes_desc" => "", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "", + "attributes_desc" => "", + "both" => "", + "cashups" => "", + "cashups_desc" => "", + "config" => "Bolt beállítás", + "config_desc" => "Bolt beállításainak módosítása", + "customers" => "Vevők", + "customers_desc" => "Vevők hozzáadása, módosítása, törlése és keresése", + "employees" => "Dolgozók", + "employees_desc" => "Dolgozók hozzáadása, módosítása, törlése és keresése", + "expenses" => "", + "expenses_categories" => "", + "expenses_categories_desc" => "", + "expenses_desc" => "", + "giftcards" => "Utalvány", + "giftcards_desc" => "Ajándékutalványok hozzáadása, módosítása, törlése és keresése", + "home" => "Kezdőlap", + "home_desc" => "", + "item_kits" => "Termék csomagok", + "item_kits_desc" => "Termék csomagok hozzáadása, módosítása, törlése és keresése", + "items" => "Termékek", + "items_desc" => "Termékek hozzáadása, módosítása, törlése és keresése", + "messages" => "Messages", + "messages_desc" => "Send Messages to Customers, Suppliers, Employees et al.", + "migrate" => "", + "migrate_desc" => "", + "office" => "", + "office_desc" => "", + "receivings" => "Áruátvétel", + "receivings_desc" => "Beszállítóktól érkező áruk átvétele", + "reports" => "Riportok", + "reports_desc" => "Riportok megtekintése és generálása", + "sales" => "Értékesítés", + "sales_desc" => "Termékek értékesítése és visszavétele", + "suppliers" => "Beszállítók", + "suppliers_desc" => "Beszállítók hozzáadása, módosítása, törlése és keresése", + "taxes" => "", + "taxes_desc" => "", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/hu/Receivings.php b/app/Language/hu/Receivings.php index 9baabda37..de397599c 100644 --- a/app/Language/hu/Receivings.php +++ b/app/Language/hu/Receivings.php @@ -1,58 +1,58 @@ "", - "cancel_receiving" => "Mégsem", - "cannot_be_deleted" => "Átvétel(ek) nem törölhető(ek)", - "comments" => "Megjegyzések", - "complete_receiving" => "Befejez", - "confirm_cancel_receiving" => "Biztos, hogy üriti az átvételt? MINDEN termék eltávolitásra kerül.", - "confirm_delete" => "Biztos, hogy törli az átvételt? Nem lehet visszavonni!", - "confirm_finish_receiving" => "Biztosan beküldi ezt az átvételt? Nem lehet visszavonni!", - "confirm_restore" => "", - "cost" => "Költség", - "daily" => "", - "date" => "Beérkezés dátuma", - "date_required" => "Korrekt dátumot kell megadni", - "date_type" => "Dátum mező kötelező", - "delete_entire_sale" => "Teljes értékesités törlése", - "discount" => "Kedv. %", - "edit" => "Szerkeszt", - "edit_sale" => "Átvétel szerk.", - "employee" => "Dolgozó", - "error_editing_item" => "Termék módositás sikertelen", - "error_requisition" => "Nem sikerült a készlet mozgatása ugyan arra a raktárhelyre", - "find_or_scan_item" => "Termék keresése/scan", - "find_or_scan_item_or_receipt" => "Termék keresése/scan", - "id" => "Átvételi ID", - "item_name" => "Termék neve", - "mode" => "Átvétel módja", - "new_supplier" => "Új beszállitó", - "one_or_multiple" => "átvétel(ek)", - "print_after_sale" => "Nyomtatás eladás után", - "quantity" => "Menny.", - "receipt" => "Átvételi nyugta", - "receipt_number" => "Átvételi #", - "receiving" => "Átvétel", - "reference" => "Reference", - "register" => "Termék átvétel", - "requisition" => "Átadás", - "return" => "Visszáru", - "select_supplier" => "Beszállitó kiválasztása (opcionális)", - "ship_pack" => "", - "start_typing_supplier_name" => "Kezdje gépelni a beszállitó nevét", - "stock" => "", - "stock_destination" => "Célraktár", - "stock_locaiton" => "Raktár helyszin", - "stock_source" => "Raktár forrás", - "successfully_deleted" => "Sikeres törlés", - "successfully_updated" => "Átvétel sikeresen módositva", - "supplier" => "Szállitó", - "supplier_address" => "Szállitó cím", - "supplier_email" => "Szállitó e-mail", - "supplier_location" => "Szállitó hely", - "total" => "Összesen", - "transaction_failed" => "Átvételi tranzakció sikertelen", - "unable_to_add_item" => "Nem sikerült terméket hozzáadni", - "unsuccessfully_updated" => "Átvétel sikertelenül módositva", - "update" => "Módosít", + "amount_due" => "", + "cancel_receiving" => "Mégsem", + "cannot_be_deleted" => "Átvétel(ek) nem törölhető(ek)", + "comments" => "Megjegyzések", + "complete_receiving" => "Befejez", + "confirm_cancel_receiving" => "Biztos, hogy üriti az átvételt? MINDEN termék eltávolitásra kerül.", + "confirm_delete" => "Biztos, hogy törli az átvételt? Nem lehet visszavonni!", + "confirm_finish_receiving" => "Biztosan beküldi ezt az átvételt? Nem lehet visszavonni!", + "confirm_restore" => "", + "cost" => "Költség", + "daily" => "", + "date" => "Beérkezés dátuma", + "date_required" => "Korrekt dátumot kell megadni", + "date_type" => "Dátum mező kötelező", + "delete_entire_sale" => "Teljes értékesités törlése", + "discount" => "Kedv. %", + "edit" => "Szerkeszt", + "edit_sale" => "Átvétel szerk.", + "employee" => "Dolgozó", + "error_editing_item" => "Termék módositás sikertelen", + "error_requisition" => "Nem sikerült a készlet mozgatása ugyan arra a raktárhelyre", + "find_or_scan_item" => "Termék keresése/scan", + "find_or_scan_item_or_receipt" => "Termék keresése/scan", + "id" => "Átvételi ID", + "item_name" => "Termék neve", + "mode" => "Átvétel módja", + "new_supplier" => "Új beszállitó", + "one_or_multiple" => "átvétel(ek)", + "print_after_sale" => "Nyomtatás eladás után", + "quantity" => "Menny.", + "receipt" => "Átvételi nyugta", + "receipt_number" => "Átvételi #", + "receiving" => "Átvétel", + "reference" => "Reference", + "register" => "Termék átvétel", + "requisition" => "Átadás", + "return" => "Visszáru", + "select_supplier" => "Beszállitó kiválasztása (opcionális)", + "ship_pack" => "", + "start_typing_supplier_name" => "Kezdje gépelni a beszállitó nevét", + "stock" => "", + "stock_destination" => "Célraktár", + "stock_locaiton" => "Raktár helyszin", + "stock_source" => "Raktár forrás", + "successfully_deleted" => "Sikeres törlés", + "successfully_updated" => "Átvétel sikeresen módositva", + "supplier" => "Szállitó", + "supplier_address" => "Szállitó cím", + "supplier_email" => "Szállitó e-mail", + "supplier_location" => "Szállitó hely", + "total" => "Összesen", + "transaction_failed" => "Átvételi tranzakció sikertelen", + "unable_to_add_item" => "Nem sikerült terméket hozzáadni", + "unsuccessfully_updated" => "Átvétel sikertelenül módositva", + "update" => "Módosít", ]; diff --git a/app/Language/hu/Reports.php b/app/Language/hu/Reports.php index 5f80969e0..754309fe5 100644 --- a/app/Language/hu/Reports.php +++ b/app/Language/hu/Reports.php @@ -1,148 +1,148 @@ "Összes", - "authority" => "", - "canceled" => "", - "categories" => "Kategóriák", - "categories_summary_report" => "Kategóriák összegző riport", - "category" => "Kategória", - "code_canceled" => "", - "code_invoice" => "", - "code_pos" => "", - "code_quote" => "", - "code_return" => "", - "code_type" => "", - "code_work_order" => "", - "comments" => "Megjegyzések", - "commission" => "", - "complete" => "", - "completed_sales" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "cost" => "Kiadás", - "cost_price" => "Beker. ár", - "count" => "Darabszám", - "customer" => "Vevő", - "customers" => "Vevők", - "customers_summary_report" => "Vevők összegző riport", - "date" => "Dátum", - "date_range" => "Dátum periódus", - "description" => "Leirás", - "detailed_receivings_report" => "Részletes átvételi riportok", - "detailed_receivings_report_input" => "", - "detailed_reports" => "Részletes riportok", - "detailed_requisition_report" => "", - "detailed_sales_report" => "Részletes értékesítési riport", - "discount" => "Kedvezmény", - "discount_fixed" => "", - "discount_percent" => "Kedvezmény százalék", - "discount_type" => "", - "discounts" => "Kedvezmények", - "discounts_summary_report" => "Kedvezmények összegző riport", - "earned" => "", - "employee" => "Dolgozó", - "employees" => "Dolgozók", - "employees_summary_report" => "Dolgozói összesített riport", - "expenses" => "", - "expenses_amount" => "", - "expenses_categories" => "", - "expenses_categories_summary_report" => "", - "expenses_category" => "", - "expenses_payment_amount" => "", - "expenses_tax_amount" => "", - "expenses_total_amount" => "", - "expenses_total_tax_amount" => "", - "graphical_reports" => "Grafikus riport", - "inventory" => "Készlet", - "inventory_low" => "Alacsony készlet", - "inventory_low_report" => "Alacsony készlet riport", - "inventory_reports" => "Készlet riportok", - "inventory_summary" => "Készlet összefoglaló", - "inventory_summary_report" => "Készlet összefoglaló riport", - "item" => "Termék", - "item_count" => "Filter Item Count", - "item_name" => "Termék neve", - "item_number" => "Termék száma", - "items" => "Termékek", - "items_purchased" => "Megvásárolt termékek", - "items_received" => "Fogadott termékek", - "items_summary_report" => "Termékek összefoglaló riport", - "jurisdiction" => "", - "low_inventory" => "", - "low_inventory_report" => "", - "low_sell_quantity" => "", - "more_than_zero" => "Több mint nulla", - "name" => "Név", - "no_reports_to_display" => "Nincsenek megjeleníthető termékek", - "payment_type" => "Fizetési mód", - "payments" => "Fizetések", - "payments_summary_report" => "Fizetések összefoglaló riport", - "profit" => "Profit", - "quantity" => "Mennyiség", - "quantity_purchased" => "Vásárolt mennyiség", - "quotes" => "", - "received_by" => "Átvéve", - "receiving_id" => "Átvételi ID", - "receiving_type" => "Átvételi típus", - "receivings" => "Áruátvétel", - "reorder_level" => "Újrarend. szint", - "report" => "Riport", - "report_input" => "Report Input", - "reports" => "Riportok", - "requisition" => "", - "requisition_by" => "", - "requisition_id" => "", - "requisition_item" => "", - "requisition_item_quantity" => "", - "requisition_related_item" => "", - "requisition_related_item_total_quantity" => "", - "requisition_related_item_unit_quantity" => "", - "requisitions" => "Átadás", - "returns" => "Visszáru", - "revenue" => "Bevétel", - "sale_id" => "Értékesítési ID", - "sale_type" => "Értékesítési típus", - "sales" => "Értékesítés", - "sales_amount" => "Sales amount", - "sales_summary_report" => "Sales Summary Report", - "sales_taxes" => "", - "sales_taxes_summary_report" => "", - "serial_number" => "Serial #", - "service_charge" => "", - "sold_by" => "Eladó", - "sold_items" => "", - "sold_to" => "Eladva", - "stock_location" => "Raktár hely", - "sub_total_value" => "Sub Total", - "subtotal" => "Részösszeg", - "summary_reports" => "Summary Reports", - "supplied_by" => "Supplied by", - "supplier" => "Beszállító", - "suppliers" => "Beszállítók", - "suppliers_summary_report" => "Beszállítók összegző riport", - "tax" => "Adó", - "tax_category" => "", - "tax_name" => "", - "tax_percent" => "Adó %", - "tax_rate" => "", - "taxes" => "Adók", - "taxes_summary_report" => "Adók összegző riport", - "total" => "Összesen", - "total_inventory_value" => "Total Inventory Value", - "total_low_sell_quantity" => "", - "total_quantity" => "Total Quantity", - "total_retail" => "Total Inv. Retail Value", - "trans_amount" => "", - "trans_due" => "", - "trans_group" => "", - "trans_nopay_sales" => "", - "trans_payments" => "", - "trans_refunded" => "", - "trans_sales" => "", - "trans_type" => "", - "type" => "Típus", - "unit_price" => "Kisker. ár", - "used" => "", - "work_orders" => "", - "zero_and_less" => "Nulla és kevesebb", + "all" => "Összes", + "authority" => "", + "canceled" => "", + "categories" => "Kategóriák", + "categories_summary_report" => "Kategóriák összegző riport", + "category" => "Kategória", + "code_canceled" => "", + "code_invoice" => "", + "code_pos" => "", + "code_quote" => "", + "code_return" => "", + "code_type" => "", + "code_work_order" => "", + "comments" => "Megjegyzések", + "commission" => "", + "complete" => "", + "completed_sales" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "cost" => "Kiadás", + "cost_price" => "Beker. ár", + "count" => "Darabszám", + "customer" => "Vevő", + "customers" => "Vevők", + "customers_summary_report" => "Vevők összegző riport", + "date" => "Dátum", + "date_range" => "Dátum periódus", + "description" => "Leirás", + "detailed_receivings_report" => "Részletes átvételi riportok", + "detailed_receivings_report_input" => "", + "detailed_reports" => "Részletes riportok", + "detailed_requisition_report" => "", + "detailed_sales_report" => "Részletes értékesítési riport", + "discount" => "Kedvezmény", + "discount_fixed" => "", + "discount_percent" => "Kedvezmény százalék", + "discount_type" => "", + "discounts" => "Kedvezmények", + "discounts_summary_report" => "Kedvezmények összegző riport", + "earned" => "", + "employee" => "Dolgozó", + "employees" => "Dolgozók", + "employees_summary_report" => "Dolgozói összesített riport", + "expenses" => "", + "expenses_amount" => "", + "expenses_categories" => "", + "expenses_categories_summary_report" => "", + "expenses_category" => "", + "expenses_payment_amount" => "", + "expenses_tax_amount" => "", + "expenses_total_amount" => "", + "expenses_total_tax_amount" => "", + "graphical_reports" => "Grafikus riport", + "inventory" => "Készlet", + "inventory_low" => "Alacsony készlet", + "inventory_low_report" => "Alacsony készlet riport", + "inventory_reports" => "Készlet riportok", + "inventory_summary" => "Készlet összefoglaló", + "inventory_summary_report" => "Készlet összefoglaló riport", + "item" => "Termék", + "item_count" => "Filter Item Count", + "item_name" => "Termék neve", + "item_number" => "Termék száma", + "items" => "Termékek", + "items_purchased" => "Megvásárolt termékek", + "items_received" => "Fogadott termékek", + "items_summary_report" => "Termékek összefoglaló riport", + "jurisdiction" => "", + "low_inventory" => "", + "low_inventory_report" => "", + "low_sell_quantity" => "", + "more_than_zero" => "Több mint nulla", + "name" => "Név", + "no_reports_to_display" => "Nincsenek megjeleníthető termékek", + "payment_type" => "Fizetési mód", + "payments" => "Fizetések", + "payments_summary_report" => "Fizetések összefoglaló riport", + "profit" => "Profit", + "quantity" => "Mennyiség", + "quantity_purchased" => "Vásárolt mennyiség", + "quotes" => "", + "received_by" => "Átvéve", + "receiving_id" => "Átvételi ID", + "receiving_type" => "Átvételi típus", + "receivings" => "Áruátvétel", + "reorder_level" => "Újrarend. szint", + "report" => "Riport", + "report_input" => "Report Input", + "reports" => "Riportok", + "requisition" => "", + "requisition_by" => "", + "requisition_id" => "", + "requisition_item" => "", + "requisition_item_quantity" => "", + "requisition_related_item" => "", + "requisition_related_item_total_quantity" => "", + "requisition_related_item_unit_quantity" => "", + "requisitions" => "Átadás", + "returns" => "Visszáru", + "revenue" => "Bevétel", + "sale_id" => "Értékesítési ID", + "sale_type" => "Értékesítési típus", + "sales" => "Értékesítés", + "sales_amount" => "Sales amount", + "sales_summary_report" => "Sales Summary Report", + "sales_taxes" => "", + "sales_taxes_summary_report" => "", + "serial_number" => "Serial #", + "service_charge" => "", + "sold_by" => "Eladó", + "sold_items" => "", + "sold_to" => "Eladva", + "stock_location" => "Raktár hely", + "sub_total_value" => "Sub Total", + "subtotal" => "Részösszeg", + "summary_reports" => "Summary Reports", + "supplied_by" => "Supplied by", + "supplier" => "Beszállító", + "suppliers" => "Beszállítók", + "suppliers_summary_report" => "Beszállítók összegző riport", + "tax" => "Adó", + "tax_category" => "", + "tax_name" => "", + "tax_percent" => "Adó %", + "tax_rate" => "", + "taxes" => "Adók", + "taxes_summary_report" => "Adók összegző riport", + "total" => "Összesen", + "total_inventory_value" => "Total Inventory Value", + "total_low_sell_quantity" => "", + "total_quantity" => "Total Quantity", + "total_retail" => "Total Inv. Retail Value", + "trans_amount" => "", + "trans_due" => "", + "trans_group" => "", + "trans_nopay_sales" => "", + "trans_payments" => "", + "trans_refunded" => "", + "trans_sales" => "", + "trans_type" => "", + "type" => "Típus", + "unit_price" => "Kisker. ár", + "used" => "", + "work_orders" => "", + "zero_and_less" => "Nulla és kevesebb", ]; diff --git a/app/Language/hu/Sales.php b/app/Language/hu/Sales.php index 7f1dfeadc..606408cbe 100644 --- a/app/Language/hu/Sales.php +++ b/app/Language/hu/Sales.php @@ -1,224 +1,224 @@ "", - "rewards_package" => "", - "rewards_remaining_balance" => "", - "account_number" => "", - "add_payment" => "Fiz. hozzáad.", - "amount_due" => "Fennmaradó", - "amount_tendered" => "Összeg", - "authorized_signature" => "", - "cancel_sale" => "Mégsem", - "cash" => "Készpénz", - "cash_1" => "", - "cash_2" => "", - "cash_3" => "", - "cash_4" => "", - "cash_adjustment" => "", - "cash_deposit" => "", - "cash_filter" => "Készpénz", - "change_due" => "Visszajáró", - "change_price" => "", - "check" => "Csekk", - "check_balance" => "Csekk maradék", - "check_filter" => "", - "close" => "", - "comment" => "Komment", - "comments" => "Kommentek", - "company_name" => "", - "complete" => "", - "complete_sale" => "Eladás befej.", - "confirm_cancel_sale" => "Biztos kiüriti ezt az eladást? MINDEGYIK termék törölve lesz.", - "confirm_delete" => "Biztos, hogy törli a kijelölt értékesitéseket?", - "confirm_restore" => "", - "credit" => "Hitelkártya", - "credit_deposit" => "", - "credit_filter" => "", - "current_table" => "", - "customer" => "Vevő", - "customer_address" => "Vevő cím", - "customer_discount" => "Discount", - "customer_email" => "Vevő e-mail", - "customer_location" => "Vevő hely", - "customer_mailchimp_status" => "", - "customer_optional" => "", - "customer_required" => "", - "customer_total" => "Total", - "customer_total_spent" => "", - "daily_sales" => "", - "date" => "Eladás dátuma", - "date_range" => "Dátum range", - "date_required" => "Korrekt dátumot kell megadnia.", - "date_type" => "Dátum mező kötelező", - "debit" => "Bankkártya", - "debit_filter" => "", - "delete" => "", - "delete_confirmation" => "Biztos, hogy törli ezt az eladást? Nem lehet visszavonni!", - "delete_entire_sale" => "Eladás törlése", - "delete_successful" => "Sikeresen törölte az eladást", - "delete_unsuccessful" => "Sikertelenül törölte az eladást", - "description_abbrv" => "Megnevezés", - "discard" => "", - "discard_quote" => "", - "discount" => "Kedv. %", - "discount_included" => "% kedvezmény", - "discount_short" => "%", - "due" => "", - "due_filter" => "", - "edit" => "Szerkeszt", - "edit_item" => "Módosít", - "edit_sale" => "Eladás szerkesztése", - "email_receipt" => "E-mail nyugta", - "employee" => "Dolgozó", - "entry" => "", - "error_editing_item" => "Termék módositási hiba", - "find_or_scan_item" => "Termék keresés/scan", - "find_or_scan_item_or_receipt" => "Termék keresése", - "giftcard" => "Ajándék utalvány", - "giftcard_balance" => "Ajándék utalvány egyenleg", - "giftcard_filter" => "", - "giftcard_number" => "Ajándék utalvány sorszáma", - "group_by_category" => "", - "group_by_type" => "", - "hsn" => "", - "id" => "Eladási s.szám", - "include_prices" => "", - "invoice" => "Számla", - "invoice_confirm" => "Ez a számla el lesz küldve ", - "invoice_enable" => "Számla elkészítése", - "invoice_filter" => "Számlák", - "invoice_no_email" => "Ennek a vásárlónak nincs érvényes email címe", - "invoice_number" => "Számla #", - "invoice_number_duplicate" => "Kérem adjon meg egyedi számla sorszámot", - "invoice_sent" => "Szálma elküldve ", - "invoice_total" => "", - "invoice_type_custom_invoice" => "", - "invoice_type_custom_tax_invoice" => "", - "invoice_type_invoice" => "", - "invoice_type_tax_invoice" => "", - "invoice_unsent" => "Számla sikertelen küldése ", - "invoice_update" => "Újraszámol", - "item_insufficient_of_stock" => "Termék elégtelen mennyiségú a raktárban.", - "item_name" => "Termék neve", - "item_number" => "Termék #", - "item_out_of_stock" => "Termék kifogyott", - "key_browser" => "", - "key_cancel" => "Cancels Current Quote/Invoice/Sale", - "key_customer_search" => "Customer Search", - "key_finish_quote" => "Finish Quote/Invoice witdout payment", - "key_finish_sale" => "Add Payment and Complete Invoice/Sale", - "key_full" => "", - "key_function" => "Function", - "key_help" => "Shortcuts", - "key_help_modal" => "Open Shortcuts Window", - "key_in" => "", - "key_item_search" => "Item Search", - "key_out" => "", - "key_payment" => "Add Payment", - "key_print" => "", - "key_restore" => "", - "key_search" => "", - "key_suspend" => "Suspend Current Sale", - "key_suspended" => "Show Suspended Sales", - "key_system" => "", - "key_tendered" => "Edit Amount Tendered", - "key_title" => "Sales Keyboard Shortcuts", - "mc" => "", - "mode" => "Nyilv. mód", - "must_enter_numeric" => "Számot kell megadnia a megrendelt mennyiséghez", - "must_enter_numeric_giftcard" => "Vásárlási utalvány számát adja meg", - "new_customer" => "Új vásárló", - "new_item" => "Új termék", - "no_description" => "Nincs leírás", - "no_filter" => "Mindegyik", - "no_items_in_cart" => "Nincsenek termékek a kosárban", - "no_sales_to_display" => "Nincsenek megjelenithető értékesitések", - "none_selected" => "Nem választott ki értékesitést törlésre", - "nontaxed_ind" => "", - "not_authorized" => "", - "one_or_multiple" => "értékesítés(ek)", - "payment" => "Fizetés módja", - "payment_amount" => "Összeg", - "payment_not_cover_total" => "Fizetés összege nem fedezi a teljes összeget", - "payment_type" => "Típus", - "payments" => "", - "payments_total" => "Fizetve eddig:", - "price" => "Ár", - "print_after_sale" => "Nyomtatás eladás után", - "quantity" => "Menny.", - "quantity_less_than_reorder_level" => "Figyelem, a megadott mennyiség elégtelen!", - "quantity_less_than_zero" => "Figyelem, a megadott mennyiség elégtelen! Tovább folytathatja az értékesitést, de ellenőrizze a készletet.", - "quantity_of_items" => "", - "quote" => "", - "quote_number" => "", - "quote_number_duplicate" => "", - "quote_sent" => "", - "quote_unsent" => "", - "receipt" => "Eladási nyugta", - "receipt_no_email" => "", - "receipt_number" => "Értékesítési #", - "receipt_sent" => "Nyugta elküldve", - "receipt_unsent" => "Nyugta sikertelen küldése", - "refund" => "", - "register" => "Értékesitési nyilvántartás", - "remove_customer" => "Vásárló eltávolítása", - "remove_discount" => "", - "return" => "Visszavétel", - "rewards" => "", - "rewards_balance" => "", - "sale" => "Eladás", - "sale_by_invoice" => "", - "sale_for_customer" => "Vevő:", - "sale_time" => "Idő", - "sales_tax" => "", - "sales_total" => "", - "select_customer" => "Vevő kiválasztása (opcionális)", - "send_invoice" => "Számla küldése", - "send_quote" => "", - "send_receipt" => "Nyugta küldése", - "send_work_order" => "", - "serial" => "Serial", - "service_charge" => "", - "show_due" => "", - "show_invoice" => "számla", - "show_receipt" => "nyugta", - "start_typing_customer_name" => "Kezdje gépelni a vevő nevét…", - "start_typing_item_name" => "Irja be a termék nevét vagy olvassa be a vonalkódot…", - "stock" => "", - "stock_location" => "Üzlet helyszine", - "sub_total" => "Részösszeg", - "successfully_deleted" => "Sikeresen törölte", - "successfully_restored" => "", - "successfully_suspended_sale" => "Értékesitése sikeresen felfüggesztve", - "successfully_updated" => "Értékesités sikeresen frissitve", - "suspend_sale" => "Felfüggeszt", - "suspended_doc_id" => "", - "suspended_sale_id" => "ID", - "suspended_sales" => "Függő eladások", - "table" => "", - "takings" => "Bevételek", - "tax" => "Adó", - "tax_id" => "", - "tax_invoice" => "", - "tax_percent" => "Adó %", - "taxed_ind" => "", - "total" => "Összesen", - "total_tax_exclusive" => "Adók nélkül", - "transaction_failed" => "Tranzakció sikertelen", - "unable_to_add_item" => "Nem adható termék az értékesitéshez", - "unsuccessfully_deleted" => "Értékesités(ek) nem törölhető(k)", - "unsuccessfully_restored" => "", - "unsuccessfully_suspended_sale" => "Értékesitése sikeresen felfüggesztve", - "unsuccessfully_updated" => "Értékesités sikertelenül frissitve", - "unsuspend" => "Újraaktivál", - "unsuspend_and_delete" => "Újraaktivál és töröl", - "update" => "Eladás szerk.", - "upi" => "", - "visa" => "", - "wholesale" => "", - "work_order" => "", - "work_order_number" => "", - "work_order_number_duplicate" => "", - "work_order_sent" => "", - "work_order_unsent" => "", + "customers_available_points" => "", + "rewards_package" => "", + "rewards_remaining_balance" => "", + "account_number" => "", + "add_payment" => "Fiz. hozzáad.", + "amount_due" => "Fennmaradó", + "amount_tendered" => "Összeg", + "authorized_signature" => "", + "cancel_sale" => "Mégsem", + "cash" => "Készpénz", + "cash_1" => "", + "cash_2" => "", + "cash_3" => "", + "cash_4" => "", + "cash_adjustment" => "", + "cash_deposit" => "", + "cash_filter" => "Készpénz", + "change_due" => "Visszajáró", + "change_price" => "", + "check" => "Csekk", + "check_balance" => "Csekk maradék", + "check_filter" => "", + "close" => "", + "comment" => "Komment", + "comments" => "Kommentek", + "company_name" => "", + "complete" => "", + "complete_sale" => "Eladás befej.", + "confirm_cancel_sale" => "Biztos kiüriti ezt az eladást? MINDEGYIK termék törölve lesz.", + "confirm_delete" => "Biztos, hogy törli a kijelölt értékesitéseket?", + "confirm_restore" => "", + "credit" => "Hitelkártya", + "credit_deposit" => "", + "credit_filter" => "", + "current_table" => "", + "customer" => "Vevő", + "customer_address" => "Vevő cím", + "customer_discount" => "Discount", + "customer_email" => "Vevő e-mail", + "customer_location" => "Vevő hely", + "customer_mailchimp_status" => "", + "customer_optional" => "", + "customer_required" => "", + "customer_total" => "Total", + "customer_total_spent" => "", + "daily_sales" => "", + "date" => "Eladás dátuma", + "date_range" => "Dátum range", + "date_required" => "Korrekt dátumot kell megadnia.", + "date_type" => "Dátum mező kötelező", + "debit" => "Bankkártya", + "debit_filter" => "", + "delete" => "", + "delete_confirmation" => "Biztos, hogy törli ezt az eladást? Nem lehet visszavonni!", + "delete_entire_sale" => "Eladás törlése", + "delete_successful" => "Sikeresen törölte az eladást", + "delete_unsuccessful" => "Sikertelenül törölte az eladást", + "description_abbrv" => "Megnevezés", + "discard" => "", + "discard_quote" => "", + "discount" => "Kedv. %", + "discount_included" => "% kedvezmény", + "discount_short" => "%", + "due" => "", + "due_filter" => "", + "edit" => "Szerkeszt", + "edit_item" => "Módosít", + "edit_sale" => "Eladás szerkesztése", + "email_receipt" => "E-mail nyugta", + "employee" => "Dolgozó", + "entry" => "", + "error_editing_item" => "Termék módositási hiba", + "find_or_scan_item" => "Termék keresés/scan", + "find_or_scan_item_or_receipt" => "Termék keresése", + "giftcard" => "Ajándék utalvány", + "giftcard_balance" => "Ajándék utalvány egyenleg", + "giftcard_filter" => "", + "giftcard_number" => "Ajándék utalvány sorszáma", + "group_by_category" => "", + "group_by_type" => "", + "hsn" => "", + "id" => "Eladási s.szám", + "include_prices" => "", + "invoice" => "Számla", + "invoice_confirm" => "Ez a számla el lesz küldve ", + "invoice_enable" => "Számla elkészítése", + "invoice_filter" => "Számlák", + "invoice_no_email" => "Ennek a vásárlónak nincs érvényes email címe", + "invoice_number" => "Számla #", + "invoice_number_duplicate" => "Kérem adjon meg egyedi számla sorszámot", + "invoice_sent" => "Szálma elküldve ", + "invoice_total" => "", + "invoice_type_custom_invoice" => "", + "invoice_type_custom_tax_invoice" => "", + "invoice_type_invoice" => "", + "invoice_type_tax_invoice" => "", + "invoice_unsent" => "Számla sikertelen küldése ", + "invoice_update" => "Újraszámol", + "item_insufficient_of_stock" => "Termék elégtelen mennyiségú a raktárban.", + "item_name" => "Termék neve", + "item_number" => "Termék #", + "item_out_of_stock" => "Termék kifogyott", + "key_browser" => "", + "key_cancel" => "Cancels Current Quote/Invoice/Sale", + "key_customer_search" => "Customer Search", + "key_finish_quote" => "Finish Quote/Invoice witdout payment", + "key_finish_sale" => "Add Payment and Complete Invoice/Sale", + "key_full" => "", + "key_function" => "Function", + "key_help" => "Shortcuts", + "key_help_modal" => "Open Shortcuts Window", + "key_in" => "", + "key_item_search" => "Item Search", + "key_out" => "", + "key_payment" => "Add Payment", + "key_print" => "", + "key_restore" => "", + "key_search" => "", + "key_suspend" => "Suspend Current Sale", + "key_suspended" => "Show Suspended Sales", + "key_system" => "", + "key_tendered" => "Edit Amount Tendered", + "key_title" => "Sales Keyboard Shortcuts", + "mc" => "", + "mode" => "Nyilv. mód", + "must_enter_numeric" => "Számot kell megadnia a megrendelt mennyiséghez", + "must_enter_numeric_giftcard" => "Vásárlási utalvány számát adja meg", + "new_customer" => "Új vásárló", + "new_item" => "Új termék", + "no_description" => "Nincs leírás", + "no_filter" => "Mindegyik", + "no_items_in_cart" => "Nincsenek termékek a kosárban", + "no_sales_to_display" => "Nincsenek megjelenithető értékesitések", + "none_selected" => "Nem választott ki értékesitést törlésre", + "nontaxed_ind" => "", + "not_authorized" => "", + "one_or_multiple" => "értékesítés(ek)", + "payment" => "Fizetés módja", + "payment_amount" => "Összeg", + "payment_not_cover_total" => "Fizetés összege nem fedezi a teljes összeget", + "payment_type" => "Típus", + "payments" => "", + "payments_total" => "Fizetve eddig:", + "price" => "Ár", + "print_after_sale" => "Nyomtatás eladás után", + "quantity" => "Menny.", + "quantity_less_than_reorder_level" => "Figyelem, a megadott mennyiség elégtelen!", + "quantity_less_than_zero" => "Figyelem, a megadott mennyiség elégtelen! Tovább folytathatja az értékesitést, de ellenőrizze a készletet.", + "quantity_of_items" => "", + "quote" => "", + "quote_number" => "", + "quote_number_duplicate" => "", + "quote_sent" => "", + "quote_unsent" => "", + "receipt" => "Eladási nyugta", + "receipt_no_email" => "", + "receipt_number" => "Értékesítési #", + "receipt_sent" => "Nyugta elküldve", + "receipt_unsent" => "Nyugta sikertelen küldése", + "refund" => "", + "register" => "Értékesitési nyilvántartás", + "remove_customer" => "Vásárló eltávolítása", + "remove_discount" => "", + "return" => "Visszavétel", + "rewards" => "", + "rewards_balance" => "", + "sale" => "Eladás", + "sale_by_invoice" => "", + "sale_for_customer" => "Vevő:", + "sale_time" => "Idő", + "sales_tax" => "", + "sales_total" => "", + "select_customer" => "Vevő kiválasztása (opcionális)", + "send_invoice" => "Számla küldése", + "send_quote" => "", + "send_receipt" => "Nyugta küldése", + "send_work_order" => "", + "serial" => "Serial", + "service_charge" => "", + "show_due" => "", + "show_invoice" => "számla", + "show_receipt" => "nyugta", + "start_typing_customer_name" => "Kezdje gépelni a vevő nevét…", + "start_typing_item_name" => "Irja be a termék nevét vagy olvassa be a vonalkódot…", + "stock" => "", + "stock_location" => "Üzlet helyszine", + "sub_total" => "Részösszeg", + "successfully_deleted" => "Sikeresen törölte", + "successfully_restored" => "", + "successfully_suspended_sale" => "Értékesitése sikeresen felfüggesztve", + "successfully_updated" => "Értékesités sikeresen frissitve", + "suspend_sale" => "Felfüggeszt", + "suspended_doc_id" => "", + "suspended_sale_id" => "ID", + "suspended_sales" => "Függő eladások", + "table" => "", + "takings" => "Bevételek", + "tax" => "Adó", + "tax_id" => "", + "tax_invoice" => "", + "tax_percent" => "Adó %", + "taxed_ind" => "", + "total" => "Összesen", + "total_tax_exclusive" => "Adók nélkül", + "transaction_failed" => "Tranzakció sikertelen", + "unable_to_add_item" => "Nem adható termék az értékesitéshez", + "unsuccessfully_deleted" => "Értékesités(ek) nem törölhető(k)", + "unsuccessfully_restored" => "", + "unsuccessfully_suspended_sale" => "Értékesitése sikeresen felfüggesztve", + "unsuccessfully_updated" => "Értékesités sikertelenül frissitve", + "unsuspend" => "Újraaktivál", + "unsuspend_and_delete" => "Újraaktivál és töröl", + "update" => "Eladás szerk.", + "upi" => "", + "visa" => "", + "wholesale" => "", + "work_order" => "", + "work_order_number" => "", + "work_order_number_duplicate" => "", + "work_order_sent" => "", + "work_order_unsent" => "", ]; diff --git a/app/Language/hu/Suppliers.php b/app/Language/hu/Suppliers.php index 9519feaa1..fcec418f8 100644 --- a/app/Language/hu/Suppliers.php +++ b/app/Language/hu/Suppliers.php @@ -1,24 +1,24 @@ "Számla #", - "agency_name" => "Ügynökség neve", - "cannot_be_deleted" => "Nem lehet törölni a beszállítót, mert már van eladásuk.", - "category" => "", - "company_name" => "Cégnév", - "company_name_required" => "Cégnév kötelező mező", - "confirm_delete" => "Biztos, hogy törölni kívánja a kiválasztott beszállítókat?", - "confirm_restore" => "", - "cost" => "", - "error_adding_updating" => "Hiba beszállító hozzáadásánál/módosításánál", - "goods" => "", - "new" => "Új beszállító", - "none_selected" => "Nem választott ki beszállítót a törléshez", - "one_or_multiple" => "beszállító(k)", - "successful_adding" => "Sikeresen hozzáadott beszállítót", - "successful_deleted" => "Sikeres törlés", - "successful_updating" => "Sikeresen módosította a beszállítót", - "supplier" => "Beszállító információ", - "supplier_id" => "ID", - "tax_id" => "", - "update" => "Bezsállító módosítása", + "account_number" => "Számla #", + "agency_name" => "Ügynökség neve", + "cannot_be_deleted" => "Nem lehet törölni a beszállítót, mert már van eladásuk.", + "category" => "", + "company_name" => "Cégnév", + "company_name_required" => "Cégnév kötelező mező", + "confirm_delete" => "Biztos, hogy törölni kívánja a kiválasztott beszállítókat?", + "confirm_restore" => "", + "cost" => "", + "error_adding_updating" => "Hiba beszállító hozzáadásánál/módosításánál", + "goods" => "", + "new" => "Új beszállító", + "none_selected" => "Nem választott ki beszállítót a törléshez", + "one_or_multiple" => "beszállító(k)", + "successful_adding" => "Sikeresen hozzáadott beszállítót", + "successful_deleted" => "Sikeres törlés", + "successful_updating" => "Sikeresen módosította a beszállítót", + "supplier" => "Beszállító információ", + "supplier_id" => "ID", + "tax_id" => "", + "update" => "Bezsállító módosítása", ]; diff --git a/app/Language/hu/Taxes.php b/app/Language/hu/Taxes.php index 6ae3d5b76..691ff9bb3 100644 --- a/app/Language/hu/Taxes.php +++ b/app/Language/hu/Taxes.php @@ -1,82 +1,82 @@ "", - "cascade" => "", - "cascade_sequence" => "", - "city" => "", - "code" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "default_tax_category" => "", - "default_tax_rate" => "", - "error_adding_updating" => "", - "group_seq" => "", - "jurisdiction_name" => "", - "name" => "", - "new" => "", - "no_taxes" => "", - "no_taxes_to_display" => "", - "reporting_authority" => "", - "round_half_down" => "", - "round_half_even" => "", - "round_half_odd" => "", - "round_half_up" => "", - "rounding_code" => "", - "sales_tax" => "", - "sales_tax_by_invoice" => "", - "sequence" => "", - "state" => "", - "successful_deleted" => "", - "tax_categories" => "", - "tax_categories_configuration" => "", - "tax_categories_saved_successfully" => "", - "tax_categories_saved_unsuccessfully" => "", - "tax_category" => "", - "tax_category_code" => "", - "tax_category_duplicate" => "", - "tax_category_invalid_chars" => "", - "tax_category_name" => "", - "tax_category_new" => "", - "tax_category_required" => "", - "tax_code" => "", - "tax_code_cannot_be_deleted" => "", - "tax_code_duplicate" => "", - "tax_code_invalid_chars" => "", - "tax_code_name" => "", - "tax_code_required" => "", - "tax_code_successful_deleted" => "", - "tax_code_successful_updated" => "", - "tax_code_successful_updating" => "", - "tax_code_successfully_added" => "", - "tax_code_type" => "", - "tax_codes" => "", - "tax_codes_configuration" => "", - "tax_codes_saved_successfully" => "", - "tax_codes_saved_unsuccessfully" => "", - "tax_excluded" => "", - "tax_group" => "", - "tax_group_not_unique" => "", - "tax_group_sequence" => "", - "tax_included" => "", - "tax_jurisdiction" => "", - "tax_jurisdiction_duplicate" => "", - "tax_jurisdiction_invalid_chars" => "", - "tax_jurisdiction_required" => "", - "tax_jurisdictions" => "", - "tax_jurisdictions_configuration" => "", - "tax_jurisdictions_saved_successfully" => "", - "tax_jurisdictions_saved_unsuccessfully" => "", - "tax_rate" => "", - "tax_rate_configuration" => "", - "tax_rate_error_adding_updating" => "", - "tax_rate_numeric" => "", - "tax_rate_required" => "", - "tax_rate_successful_updated" => "", - "tax_rate_successfully_added" => "", - "tax_rates" => "", - "tax_rates_configuration" => "", - "tax_rounding" => "", - "tax_type" => "", - "update" => "", - "vat_tax" => "", + "add_exception" => "", + "cascade" => "", + "cascade_sequence" => "", + "city" => "", + "code" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "default_tax_category" => "", + "default_tax_rate" => "", + "error_adding_updating" => "", + "group_seq" => "", + "jurisdiction_name" => "", + "name" => "", + "new" => "", + "no_taxes" => "", + "no_taxes_to_display" => "", + "reporting_authority" => "", + "round_half_down" => "", + "round_half_even" => "", + "round_half_odd" => "", + "round_half_up" => "", + "rounding_code" => "", + "sales_tax" => "", + "sales_tax_by_invoice" => "", + "sequence" => "", + "state" => "", + "successful_deleted" => "", + "tax_categories" => "", + "tax_categories_configuration" => "", + "tax_categories_saved_successfully" => "", + "tax_categories_saved_unsuccessfully" => "", + "tax_category" => "", + "tax_category_code" => "", + "tax_category_duplicate" => "", + "tax_category_invalid_chars" => "", + "tax_category_name" => "", + "tax_category_new" => "", + "tax_category_required" => "", + "tax_code" => "", + "tax_code_cannot_be_deleted" => "", + "tax_code_duplicate" => "", + "tax_code_invalid_chars" => "", + "tax_code_name" => "", + "tax_code_required" => "", + "tax_code_successful_deleted" => "", + "tax_code_successful_updated" => "", + "tax_code_successful_updating" => "", + "tax_code_successfully_added" => "", + "tax_code_type" => "", + "tax_codes" => "", + "tax_codes_configuration" => "", + "tax_codes_saved_successfully" => "", + "tax_codes_saved_unsuccessfully" => "", + "tax_excluded" => "", + "tax_group" => "", + "tax_group_not_unique" => "", + "tax_group_sequence" => "", + "tax_included" => "", + "tax_jurisdiction" => "", + "tax_jurisdiction_duplicate" => "", + "tax_jurisdiction_invalid_chars" => "", + "tax_jurisdiction_required" => "", + "tax_jurisdictions" => "", + "tax_jurisdictions_configuration" => "", + "tax_jurisdictions_saved_successfully" => "", + "tax_jurisdictions_saved_unsuccessfully" => "", + "tax_rate" => "", + "tax_rate_configuration" => "", + "tax_rate_error_adding_updating" => "", + "tax_rate_numeric" => "", + "tax_rate_required" => "", + "tax_rate_successful_updated" => "", + "tax_rate_successfully_added" => "", + "tax_rates" => "", + "tax_rates_configuration" => "", + "tax_rounding" => "", + "tax_type" => "", + "update" => "", + "vat_tax" => "", ]; diff --git a/app/Language/hu/index.html b/app/Language/hu/index.html index b702fbc39..69df4e1df 100644 --- a/app/Language/hu/index.html +++ b/app/Language/hu/index.html @@ -1,7 +1,7 @@ - 403 Forbidden + 403 Forbidden diff --git a/app/Language/hy/Attributes.php b/app/Language/hy/Attributes.php index 6cb526d64..95abf8096 100644 --- a/app/Language/hy/Attributes.php +++ b/app/Language/hy/Attributes.php @@ -1,32 +1,32 @@ "Attribute value cannot contain ':' or '|'", - "confirm_delete" => "Are you sure you want to delete the selected attribute(s)?", - "confirm_restore" => "Are you sure you want to restore the selected attribute(s)?", - "definition_cannot_be_deleted" => "Could not delete selected attribute(s)", - "definition_error_adding_updating" => "Attribute {0} could not be added or updated. Please check the error log.", - "definition_flags" => "Attribute Visibility", - "definition_group" => "Group", - "definition_id" => "Id", - "definition_name" => "Add Attribute", - "definition_name_required" => "Attribute name is a required field", - "definition_one_or_multiple" => "attribute(s)", - "definition_successful_adding" => "You have successfully added item", - "definition_successful_deleted" => "You have successfully deleted", - "definition_successful_updating" => "You have successfully updated attribute", - "definition_type" => "Attribute Type", - "definition_type_required" => "Attribute type is a required field", - "definition_unit" => "Measurement Unit", - "definition_values" => "Attribute Values", - "new" => "New Attribute", - "no_attributes_to_display" => "No Items to display", - "receipt_visibility" => "Receipt", - "show_in_items" => "Show in items", - "show_in_items_visibility" => "Items", - "show_in_receipt" => "Show in receipt", - "show_in_receivings" => "Show in receivings", - "show_in_receivings_visibility" => "Receivings", - "show_in_sales" => "Show in sales", - "show_in_sales_visibility" => "Sales", - "update" => "Update Attribute", + "attribute_value_invalid_chars" => "Attribute value cannot contain ':' or '|'", + "confirm_delete" => "Are you sure you want to delete the selected attribute(s)?", + "confirm_restore" => "Are you sure you want to restore the selected attribute(s)?", + "definition_cannot_be_deleted" => "Could not delete selected attribute(s)", + "definition_error_adding_updating" => "Attribute {0} could not be added or updated. Please check the error log.", + "definition_flags" => "Attribute Visibility", + "definition_group" => "Group", + "definition_id" => "Id", + "definition_name" => "Add Attribute", + "definition_name_required" => "Attribute name is a required field", + "definition_one_or_multiple" => "attribute(s)", + "definition_successful_adding" => "You have successfully added item", + "definition_successful_deleted" => "You have successfully deleted", + "definition_successful_updating" => "You have successfully updated attribute", + "definition_type" => "Attribute Type", + "definition_type_required" => "Attribute type is a required field", + "definition_unit" => "Measurement Unit", + "definition_values" => "Attribute Values", + "new" => "New Attribute", + "no_attributes_to_display" => "No Items to display", + "receipt_visibility" => "Receipt", + "show_in_items" => "Show in items", + "show_in_items_visibility" => "Items", + "show_in_receipt" => "Show in receipt", + "show_in_receivings" => "Show in receivings", + "show_in_receivings_visibility" => "Receivings", + "show_in_sales" => "Show in sales", + "show_in_sales_visibility" => "Sales", + "update" => "Update Attribute", ]; diff --git a/app/Language/hy/Bootstrap_tables.php b/app/Language/hy/Bootstrap_tables.php index e02cb2e5a..e257f5276 100644 --- a/app/Language/hy/Bootstrap_tables.php +++ b/app/Language/hy/Bootstrap_tables.php @@ -1,11 +1,11 @@ "", - "columns" => "", - "hide_show_pagination" => "", - "loading" => "", - "page_from_to" => "", - "refresh" => "", - "rows_per_page" => "", - "toggle" => "", + "all" => "", + "columns" => "", + "hide_show_pagination" => "", + "loading" => "", + "page_from_to" => "", + "refresh" => "", + "rows_per_page" => "", + "toggle" => "", ]; diff --git a/app/Language/hy/Calendar.php b/app/Language/hy/Calendar.php index df2f1bb57..6172a3ff1 100644 --- a/app/Language/hy/Calendar.php +++ b/app/Language/hy/Calendar.php @@ -1,48 +1,48 @@ "Կր", - "mo" => "Եկ", - "tu" => "Եք", - "we" => "Չք", - "th" => "Հգ", - "fr" => "Ուր", - "sa" => "Շբ", - "sun" => "Կիր", - "mon" => "Երկ", - "tue" => "Երք", - "wed" => "Չրք", - "thu" => "Հնգ", - "fri" => "Ուր", - "sat" => "Շբթ", - "sunday" => "Կիրակի", - "monday" => "Երկուշաբթի", - "tuesday" => "Երեքշաբթի", - "wednesday" => "Չորեքշաբթի", - "thursday" => "Հինգշաբթի", - "friday" => "Ուրբաթ", - "saturday" => "Շաբաթ", - "jan" => "Հուն.", - "feb" => "Փետր.", - "mar" => "Մարտ", - "apr" => "Ապր․", - "may" => "Մայ․", - "jun" => "Հուն․", - "jul" => "Հուլ․", - "aug" => "Օգոս․", - "sep" => "Սեպտ․", - "oct" => "Հոկտ․", - "nov" => "Նոյ․", - "dec" => "Դեկտ․", - "january" => "Հունվար", - "february" => "Փետրվար", - "march" => "Մարտ", - "april" => "Ապրիլ", - "mayl" => "Մայիս", - "june" => "Հունիս", - "july" => "Հուլիս", - "august" => "Օգոստոս", - "september" => "Սեպտեմբեր", - "october" => "Հոկտեմբեր", - "november" => "Նոյեմբեր", - "december" => "Դեկտեմբեր", + "su" => "Կր", + "mo" => "Եկ", + "tu" => "Եք", + "we" => "Չք", + "th" => "Հգ", + "fr" => "Ուր", + "sa" => "Շբ", + "sun" => "Կիր", + "mon" => "Երկ", + "tue" => "Երք", + "wed" => "Չրք", + "thu" => "Հնգ", + "fri" => "Ուր", + "sat" => "Շբթ", + "sunday" => "Կիրակի", + "monday" => "Երկուշաբթի", + "tuesday" => "Երեքշաբթի", + "wednesday" => "Չորեքշաբթի", + "thursday" => "Հինգշաբթի", + "friday" => "Ուրբաթ", + "saturday" => "Շաբաթ", + "jan" => "Հուն.", + "feb" => "Փետր.", + "mar" => "Մարտ", + "apr" => "Ապր․", + "may" => "Մայ․", + "jun" => "Հուն․", + "jul" => "Հուլ․", + "aug" => "Օգոս․", + "sep" => "Սեպտ․", + "oct" => "Հոկտ․", + "nov" => "Նոյ․", + "dec" => "Դեկտ․", + "january" => "Հունվար", + "february" => "Փետրվար", + "march" => "Մարտ", + "april" => "Ապրիլ", + "mayl" => "Մայիս", + "june" => "Հունիս", + "july" => "Հուլիս", + "august" => "Օգոստոս", + "september" => "Սեպտեմբեր", + "october" => "Հոկտեմբեր", + "november" => "Նոյեմբեր", + "december" => "Դեկտեմբեր", ]; diff --git a/app/Language/hy/Cashups.php b/app/Language/hy/Cashups.php index 2ffc8c593..04d19c94f 100644 --- a/app/Language/hy/Cashups.php +++ b/app/Language/hy/Cashups.php @@ -1,49 +1,49 @@ "", - "amount_number" => "", - "amount_required" => "", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "", - "cash_difference" => "", - "close_date" => "", - "close_employee" => "", - "closed_amount_card" => "", - "closed_amount_cash" => "", - "closed_amount_check" => "", - "closed_amount_due" => "", - "closed_amount_giftcard" => "", - "closed_amount_total" => "", - "closed_date" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "confirm_submit" => "", - "date_number" => "", - "date_required" => "", - "description" => "", - "enable_expected" => "", - "error_adding_updating" => "", - "giftcard" => "", - "id" => "", - "info" => "", - "info_employee" => "", - "is_deleted" => "", - "new" => "", - "no_cashups_to_display" => "", - "none_selected" => "", - "note" => "", - "one_or_multiple" => "", - "open_amount_cash" => "", - "open_date" => "", - "open_employee" => "", - "opened_date" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "total" => "", - "transfer_amount_cash" => "", - "transfer_amount_cash_minus" => "", - "update" => "", - "warning" => "", + "amount" => "", + "amount_number" => "", + "amount_required" => "", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "", + "cash_difference" => "", + "close_date" => "", + "close_employee" => "", + "closed_amount_card" => "", + "closed_amount_cash" => "", + "closed_amount_check" => "", + "closed_amount_due" => "", + "closed_amount_giftcard" => "", + "closed_amount_total" => "", + "closed_date" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "confirm_submit" => "", + "date_number" => "", + "date_required" => "", + "description" => "", + "enable_expected" => "", + "error_adding_updating" => "", + "giftcard" => "", + "id" => "", + "info" => "", + "info_employee" => "", + "is_deleted" => "", + "new" => "", + "no_cashups_to_display" => "", + "none_selected" => "", + "note" => "", + "one_or_multiple" => "", + "open_amount_cash" => "", + "open_date" => "", + "open_employee" => "", + "opened_date" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "total" => "", + "transfer_amount_cash" => "", + "transfer_amount_cash_minus" => "", + "update" => "", + "warning" => "", ]; diff --git a/app/Language/hy/Common.php b/app/Language/hy/Common.php index 83ed187c9..606c59e5b 100644 --- a/app/Language/hy/Common.php +++ b/app/Language/hy/Common.php @@ -1,88 +1,88 @@ "", - "address_2" => "", - "admin" => "", - "city" => "", - "clerk" => "", - "close" => "", - "color" => "", - "comments" => "", - "common" => "", - "confirm_search" => "", - "copyrights" => "© 2010 - {0}", - "correct_errors" => "", - "country" => "", - "dashboard" => "", - "date" => "", - "delete" => "", - "det" => "", - "download_import_template" => "", - "edit" => "", - "email" => "", - "email_invalid_format" => "", - "export_csv" => "", - "export_csv_no" => "", - "export_csv_yes" => "", - "fields_required_message" => "", - "fields_required_message_unique" => "", - "first_name" => "", - "first_name_required" => "", - "first_page" => "", - "gender" => "", - "gender_female" => "", - "gender_male" => "", - "gender_undefined" => "", - "icon" => "", - "id" => "", - "import" => "", - "import_change_file" => "", - "import_csv" => "", - "import_full_path" => "", - "import_remove_file" => "", - "import_select_file" => "", - "inv" => "", - "last_name" => "", - "last_name_required" => "", - "last_page" => "", - "learn_about_project" => "", - "list_of" => "", - "logo" => "", - "logo_mark" => "", - "logout" => "", - "manager" => "", - "migration_needed" => "", - "new" => "", - "no" => "", - "no_persons_to_display" => "", - "none_selected_text" => "", - "or" => "", - "people" => "", - "phone_number" => "", - "phone_number_required" => "", - "please_visit_my" => "", - "position" => "", - "powered_by" => "", - "price" => "", - "print" => "", - "remove" => "", - "required" => "", - "restore" => "", - "return_policy" => "", - "search" => "", - "search_options" => "", - "searched_for" => "", - "software_short" => "", - "software_title" => "", - "state" => "", - "submit" => "", - "total_spent" => "", - "unknown" => "", - "view_recent_sales" => "", - "website" => "", - "welcome" => "", - "welcome_message" => "", - "yes" => "", - "you_are_using_ospos" => "", - "zip" => "", + "address_1" => "", + "address_2" => "", + "admin" => "", + "city" => "", + "clerk" => "", + "close" => "", + "color" => "", + "comments" => "", + "common" => "", + "confirm_search" => "", + "copyrights" => "© 2010 - {0}", + "correct_errors" => "", + "country" => "", + "dashboard" => "", + "date" => "", + "delete" => "", + "det" => "", + "download_import_template" => "", + "edit" => "", + "email" => "", + "email_invalid_format" => "", + "export_csv" => "", + "export_csv_no" => "", + "export_csv_yes" => "", + "fields_required_message" => "", + "fields_required_message_unique" => "", + "first_name" => "", + "first_name_required" => "", + "first_page" => "", + "gender" => "", + "gender_female" => "", + "gender_male" => "", + "gender_undefined" => "", + "icon" => "", + "id" => "", + "import" => "", + "import_change_file" => "", + "import_csv" => "", + "import_full_path" => "", + "import_remove_file" => "", + "import_select_file" => "", + "inv" => "", + "last_name" => "", + "last_name_required" => "", + "last_page" => "", + "learn_about_project" => "", + "list_of" => "", + "logo" => "", + "logo_mark" => "", + "logout" => "", + "manager" => "", + "migration_needed" => "", + "new" => "", + "no" => "", + "no_persons_to_display" => "", + "none_selected_text" => "", + "or" => "", + "people" => "", + "phone_number" => "", + "phone_number_required" => "", + "please_visit_my" => "", + "position" => "", + "powered_by" => "", + "price" => "", + "print" => "", + "remove" => "", + "required" => "", + "restore" => "", + "return_policy" => "", + "search" => "", + "search_options" => "", + "searched_for" => "", + "software_short" => "", + "software_title" => "", + "state" => "", + "submit" => "", + "total_spent" => "", + "unknown" => "", + "view_recent_sales" => "", + "website" => "", + "welcome" => "", + "welcome_message" => "", + "yes" => "", + "you_are_using_ospos" => "", + "zip" => "", ]; diff --git a/app/Language/hy/Config.php b/app/Language/hy/Config.php index a56cf3574..cfc311f2e 100644 --- a/app/Language/hy/Config.php +++ b/app/Language/hy/Config.php @@ -1,330 +1,330 @@ "", - "address_required" => "", - "all_set" => "", - "allow_duplicate_barcodes" => "", - "apostrophe" => "", - "backup_button" => "", - "backup_database" => "", - "barcode" => "", - "barcode_company" => "", - "barcode_configuration" => "", - "barcode_content" => "", - "barcode_first_row" => "", - "barcode_font" => "", - "barcode_formats" => "", - "barcode_generate_if_empty" => "", - "barcode_height" => "", - "barcode_id" => "", - "barcode_info" => "", - "barcode_layout" => "", - "barcode_name" => "", - "barcode_number" => "", - "barcode_number_in_row" => "", - "barcode_page_cellspacing" => "", - "barcode_page_width" => "", - "barcode_price" => "", - "barcode_second_row" => "", - "barcode_third_row" => "", - "barcode_tooltip" => "", - "barcode_type" => "", - "barcode_width" => "", - "bottom" => "", - "cash_button" => "", - "cash_button_1" => "", - "cash_button_2" => "", - "cash_button_3" => "", - "cash_button_4" => "", - "cash_button_5" => "", - "cash_button_6" => "", - "cash_decimals" => "", - "cash_decimals_tooltip" => "", - "cash_rounding" => "", - "category_dropdown" => "", - "center" => "", - "change_apperance_tooltip" => "", - "comma" => "", - "company" => "", - "company_avatar" => "", - "company_change_image" => "", - "company_logo" => "", - "company_remove_image" => "", - "company_required" => "", - "company_select_image" => "", - "company_website_url" => "", - "country_codes" => "", - "country_codes_tooltip" => "", - "currency_code" => "", - "currency_decimals" => "", - "currency_symbol" => "", - "current_employee_only" => "", - "customer_reward" => "", - "customer_reward_duplicate" => "", - "customer_reward_enable" => "", - "customer_reward_invalid_chars" => "", - "customer_reward_required" => "", - "customer_sales_tax_support" => "", - "date_or_time_format" => "", - "datetimeformat" => "", - "decimal_point" => "", - "default_barcode_font_size_number" => "", - "default_barcode_font_size_required" => "", - "default_barcode_height_number" => "", - "default_barcode_height_required" => "", - "default_barcode_num_in_row_number" => "", - "default_barcode_num_in_row_required" => "", - "default_barcode_page_cellspacing_number" => "", - "default_barcode_page_cellspacing_required" => "", - "default_barcode_page_width_number" => "", - "default_barcode_page_width_required" => "", - "default_barcode_width_number" => "", - "default_barcode_width_required" => "", - "default_item_columns" => "", - "default_origin_tax_code" => "", - "default_receivings_discount" => "", - "default_receivings_discount_number" => "", - "default_receivings_discount_required" => "", - "default_sales_discount" => "", - "default_sales_discount_number" => "", - "default_sales_discount_required" => "", - "default_tax_category" => "", - "default_tax_code" => "", - "default_tax_jurisdiction" => "", - "default_tax_name_number" => "", - "default_tax_name_required" => "", - "default_tax_rate" => "", - "default_tax_rate_1" => "", - "default_tax_rate_2" => "", - "default_tax_rate_3" => "", - "default_tax_rate_number" => "", - "default_tax_rate_required" => "", - "derive_sale_quantity" => "", - "derive_sale_quantity_tooltip" => "", - "dinner_table" => "", - "dinner_table_duplicate" => "", - "dinner_table_enable" => "", - "dinner_table_invalid_chars" => "", - "dinner_table_required" => "", - "dot" => "", - "email" => "", - "email_configuration" => "", - "email_mailpath" => "", - "email_protocol" => "", - "email_receipt_check_behaviour" => "", - "email_receipt_check_behaviour_always" => "", - "email_receipt_check_behaviour_last" => "", - "email_receipt_check_behaviour_never" => "", - "email_smtp_crypto" => "", - "email_smtp_host" => "", - "email_smtp_pass" => "", - "email_smtp_port" => "", - "email_smtp_timeout" => "", - "email_smtp_user" => "", - "enable_avatar" => "", - "enable_avatar_tooltip" => "", - "enable_dropdown_tooltip" => "", - "enable_new_look" => "", - "enable_right_bar" => "", - "enable_right_bar_tooltip" => "", - "enforce_privacy" => "", - "enforce_privacy_tooltip" => "", - "fax" => "", - "file_perm" => "", - "financial_year" => "", - "financial_year_apr" => "", - "financial_year_aug" => "", - "financial_year_dec" => "", - "financial_year_feb" => "", - "financial_year_jan" => "", - "financial_year_jul" => "", - "financial_year_jun" => "", - "financial_year_mar" => "", - "financial_year_may" => "", - "financial_year_nov" => "", - "financial_year_oct" => "", - "financial_year_sep" => "", - "floating_labels" => "", - "gcaptcha_enable" => "", - "gcaptcha_secret_key" => "", - "gcaptcha_secret_key_required" => "", - "gcaptcha_site_key" => "", - "gcaptcha_site_key_required" => "", - "gcaptcha_tooltip" => "", - "general" => "", - "general_configuration" => "", - "giftcard_number" => "", - "giftcard_random" => "", - "giftcard_series" => "", - "image_allowed_file_types" => "", - "image_max_height_tooltip" => "", - "image_max_size_tooltip" => "", - "image_max_width_tooltip" => "", - "image_restrictions" => "", - "include_hsn" => "", - "info" => "", - "info_configuration" => "", - "input_groups" => "", - "integrations" => "", - "integrations_configuration" => "", - "invoice" => "", - "invoice_configuration" => "", - "invoice_default_comments" => "", - "invoice_email_message" => "", - "invoice_enable" => "", - "invoice_printer" => "", - "invoice_type" => "", - "is_readable" => "", - "is_writable" => "", - "item_markup" => "", - "jsprintsetup_required" => "", - "language" => "", - "last_used_invoice_number" => "", - "last_used_quote_number" => "", - "last_used_work_order_number" => "", - "left" => "", - "license" => "", - "license_configuration" => "", - "line_sequence" => "", - "lines_per_page" => "", - "lines_per_page_number" => "", - "lines_per_page_required" => "", - "locale" => "", - "locale_configuration" => "", - "locale_info" => "", - "location" => "", - "location_configuration" => "", - "location_info" => "", - "login_form" => "", - "logout" => "", - "mailchimp" => "", - "mailchimp_api_key" => "", - "mailchimp_configuration" => "", - "mailchimp_key_successfully" => "", - "mailchimp_key_unsuccessfully" => "", - "mailchimp_lists" => "", - "mailchimp_tooltip" => "", - "message" => "", - "message_configuration" => "", - "msg_msg" => "", - "msg_msg_placeholder" => "", - "msg_pwd" => "", - "msg_pwd_required" => "", - "msg_src" => "", - "msg_src_required" => "", - "msg_uid" => "", - "msg_uid_required" => "", - "multi_pack_enabled" => "", - "no_risk" => "", - "none" => "", - "notify_alignment" => "", - "number_format" => "", - "number_locale" => "", - "number_locale_invalid" => "", - "number_locale_required" => "", - "number_locale_tooltip" => "", - "os_timezone" => "", - "ospos_info" => "", - "payment_options_order" => "", - "perm_risk" => "", - "phone" => "", - "phone_required" => "", - "print_bottom_margin" => "", - "print_bottom_margin_number" => "", - "print_bottom_margin_required" => "", - "print_delay_autoreturn" => "", - "print_delay_autoreturn_number" => "", - "print_delay_autoreturn_required" => "", - "print_footer" => "", - "print_header" => "", - "print_left_margin" => "", - "print_left_margin_number" => "", - "print_left_margin_required" => "", - "print_receipt_check_behaviour" => "", - "print_receipt_check_behaviour_always" => "", - "print_receipt_check_behaviour_last" => "", - "print_receipt_check_behaviour_never" => "", - "print_right_margin" => "", - "print_right_margin_number" => "", - "print_right_margin_required" => "", - "print_silently" => "", - "print_top_margin" => "", - "print_top_margin_number" => "", - "print_top_margin_required" => "", - "quantity_decimals" => "", - "quick_cash_enable" => "", - "quote_default_comments" => "", - "receipt" => "", - "receipt_category" => "", - "receipt_configuration" => "", - "receipt_default" => "", - "receipt_font_size" => "", - "receipt_font_size_number" => "", - "receipt_font_size_required" => "", - "receipt_info" => "", - "receipt_printer" => "", - "receipt_short" => "", - "receipt_show_company_name" => "", - "receipt_show_description" => "", - "receipt_show_serialnumber" => "", - "receipt_show_tax_ind" => "", - "receipt_show_taxes" => "", - "receipt_show_total_discount" => "", - "receipt_template" => "", - "receiving_calculate_average_price" => "", - "recv_invoice_format" => "", - "register_mode_default" => "", - "report_an_issue" => "", - "return_policy_required" => "", - "reward" => "", - "reward_configuration" => "", - "right" => "", - "sales_invoice_format" => "", - "sales_quote_format" => "", - "saved_successfully" => "", - "saved_unsuccessfully" => "", - "security_issue" => "", - "server_notice" => "", - "service_charge" => "", - "show_due_enable" => "", - "show_office_group" => "", - "statistics" => "", - "statistics_tooltip" => "", - "stock_location" => "", - "stock_location_duplicate" => "", - "stock_location_invalid_chars" => "", - "stock_location_required" => "", - "suggestions_fifth_column" => "", - "suggestions_first_column" => "", - "suggestions_fourth_column" => "", - "suggestions_layout" => "", - "suggestions_second_column" => "", - "suggestions_third_column" => "", - "system_conf" => "", - "system_info" => "", - "table" => "", - "table_configuration" => "", - "takings_printer" => "", - "tax" => "", - "tax_category" => "", - "tax_category_duplicate" => "", - "tax_category_invalid_chars" => "", - "tax_category_required" => "", - "tax_category_used" => "", - "tax_configuration" => "", - "tax_decimals" => "", - "tax_id" => "", - "tax_included" => "", - "theme" => "", - "theme_preview" => "", - "thousands_separator" => "", - "timezone" => "", - "timezone_error" => "", - "top" => "", - "use_destination_based_tax" => "", - "user_timezone" => "", - "website" => "", - "wholesale_markup" => "", - "work_order_enable" => "", - "work_order_format" => "", + "address" => "", + "address_required" => "", + "all_set" => "", + "allow_duplicate_barcodes" => "", + "apostrophe" => "", + "backup_button" => "", + "backup_database" => "", + "barcode" => "", + "barcode_company" => "", + "barcode_configuration" => "", + "barcode_content" => "", + "barcode_first_row" => "", + "barcode_font" => "", + "barcode_formats" => "", + "barcode_generate_if_empty" => "", + "barcode_height" => "", + "barcode_id" => "", + "barcode_info" => "", + "barcode_layout" => "", + "barcode_name" => "", + "barcode_number" => "", + "barcode_number_in_row" => "", + "barcode_page_cellspacing" => "", + "barcode_page_width" => "", + "barcode_price" => "", + "barcode_second_row" => "", + "barcode_third_row" => "", + "barcode_tooltip" => "", + "barcode_type" => "", + "barcode_width" => "", + "bottom" => "", + "cash_button" => "", + "cash_button_1" => "", + "cash_button_2" => "", + "cash_button_3" => "", + "cash_button_4" => "", + "cash_button_5" => "", + "cash_button_6" => "", + "cash_decimals" => "", + "cash_decimals_tooltip" => "", + "cash_rounding" => "", + "category_dropdown" => "", + "center" => "", + "change_apperance_tooltip" => "", + "comma" => "", + "company" => "", + "company_avatar" => "", + "company_change_image" => "", + "company_logo" => "", + "company_remove_image" => "", + "company_required" => "", + "company_select_image" => "", + "company_website_url" => "", + "country_codes" => "", + "country_codes_tooltip" => "", + "currency_code" => "", + "currency_decimals" => "", + "currency_symbol" => "", + "current_employee_only" => "", + "customer_reward" => "", + "customer_reward_duplicate" => "", + "customer_reward_enable" => "", + "customer_reward_invalid_chars" => "", + "customer_reward_required" => "", + "customer_sales_tax_support" => "", + "date_or_time_format" => "", + "datetimeformat" => "", + "decimal_point" => "", + "default_barcode_font_size_number" => "", + "default_barcode_font_size_required" => "", + "default_barcode_height_number" => "", + "default_barcode_height_required" => "", + "default_barcode_num_in_row_number" => "", + "default_barcode_num_in_row_required" => "", + "default_barcode_page_cellspacing_number" => "", + "default_barcode_page_cellspacing_required" => "", + "default_barcode_page_width_number" => "", + "default_barcode_page_width_required" => "", + "default_barcode_width_number" => "", + "default_barcode_width_required" => "", + "default_item_columns" => "", + "default_origin_tax_code" => "", + "default_receivings_discount" => "", + "default_receivings_discount_number" => "", + "default_receivings_discount_required" => "", + "default_sales_discount" => "", + "default_sales_discount_number" => "", + "default_sales_discount_required" => "", + "default_tax_category" => "", + "default_tax_code" => "", + "default_tax_jurisdiction" => "", + "default_tax_name_number" => "", + "default_tax_name_required" => "", + "default_tax_rate" => "", + "default_tax_rate_1" => "", + "default_tax_rate_2" => "", + "default_tax_rate_3" => "", + "default_tax_rate_number" => "", + "default_tax_rate_required" => "", + "derive_sale_quantity" => "", + "derive_sale_quantity_tooltip" => "", + "dinner_table" => "", + "dinner_table_duplicate" => "", + "dinner_table_enable" => "", + "dinner_table_invalid_chars" => "", + "dinner_table_required" => "", + "dot" => "", + "email" => "", + "email_configuration" => "", + "email_mailpath" => "", + "email_protocol" => "", + "email_receipt_check_behaviour" => "", + "email_receipt_check_behaviour_always" => "", + "email_receipt_check_behaviour_last" => "", + "email_receipt_check_behaviour_never" => "", + "email_smtp_crypto" => "", + "email_smtp_host" => "", + "email_smtp_pass" => "", + "email_smtp_port" => "", + "email_smtp_timeout" => "", + "email_smtp_user" => "", + "enable_avatar" => "", + "enable_avatar_tooltip" => "", + "enable_dropdown_tooltip" => "", + "enable_new_look" => "", + "enable_right_bar" => "", + "enable_right_bar_tooltip" => "", + "enforce_privacy" => "", + "enforce_privacy_tooltip" => "", + "fax" => "", + "file_perm" => "", + "financial_year" => "", + "financial_year_apr" => "", + "financial_year_aug" => "", + "financial_year_dec" => "", + "financial_year_feb" => "", + "financial_year_jan" => "", + "financial_year_jul" => "", + "financial_year_jun" => "", + "financial_year_mar" => "", + "financial_year_may" => "", + "financial_year_nov" => "", + "financial_year_oct" => "", + "financial_year_sep" => "", + "floating_labels" => "", + "gcaptcha_enable" => "", + "gcaptcha_secret_key" => "", + "gcaptcha_secret_key_required" => "", + "gcaptcha_site_key" => "", + "gcaptcha_site_key_required" => "", + "gcaptcha_tooltip" => "", + "general" => "", + "general_configuration" => "", + "giftcard_number" => "", + "giftcard_random" => "", + "giftcard_series" => "", + "image_allowed_file_types" => "", + "image_max_height_tooltip" => "", + "image_max_size_tooltip" => "", + "image_max_width_tooltip" => "", + "image_restrictions" => "", + "include_hsn" => "", + "info" => "", + "info_configuration" => "", + "input_groups" => "", + "integrations" => "", + "integrations_configuration" => "", + "invoice" => "", + "invoice_configuration" => "", + "invoice_default_comments" => "", + "invoice_email_message" => "", + "invoice_enable" => "", + "invoice_printer" => "", + "invoice_type" => "", + "is_readable" => "", + "is_writable" => "", + "item_markup" => "", + "jsprintsetup_required" => "", + "language" => "", + "last_used_invoice_number" => "", + "last_used_quote_number" => "", + "last_used_work_order_number" => "", + "left" => "", + "license" => "", + "license_configuration" => "", + "line_sequence" => "", + "lines_per_page" => "", + "lines_per_page_number" => "", + "lines_per_page_required" => "", + "locale" => "", + "locale_configuration" => "", + "locale_info" => "", + "location" => "", + "location_configuration" => "", + "location_info" => "", + "login_form" => "", + "logout" => "", + "mailchimp" => "", + "mailchimp_api_key" => "", + "mailchimp_configuration" => "", + "mailchimp_key_successfully" => "", + "mailchimp_key_unsuccessfully" => "", + "mailchimp_lists" => "", + "mailchimp_tooltip" => "", + "message" => "", + "message_configuration" => "", + "msg_msg" => "", + "msg_msg_placeholder" => "", + "msg_pwd" => "", + "msg_pwd_required" => "", + "msg_src" => "", + "msg_src_required" => "", + "msg_uid" => "", + "msg_uid_required" => "", + "multi_pack_enabled" => "", + "no_risk" => "", + "none" => "", + "notify_alignment" => "", + "number_format" => "", + "number_locale" => "", + "number_locale_invalid" => "", + "number_locale_required" => "", + "number_locale_tooltip" => "", + "os_timezone" => "", + "ospos_info" => "", + "payment_options_order" => "", + "perm_risk" => "", + "phone" => "", + "phone_required" => "", + "print_bottom_margin" => "", + "print_bottom_margin_number" => "", + "print_bottom_margin_required" => "", + "print_delay_autoreturn" => "", + "print_delay_autoreturn_number" => "", + "print_delay_autoreturn_required" => "", + "print_footer" => "", + "print_header" => "", + "print_left_margin" => "", + "print_left_margin_number" => "", + "print_left_margin_required" => "", + "print_receipt_check_behaviour" => "", + "print_receipt_check_behaviour_always" => "", + "print_receipt_check_behaviour_last" => "", + "print_receipt_check_behaviour_never" => "", + "print_right_margin" => "", + "print_right_margin_number" => "", + "print_right_margin_required" => "", + "print_silently" => "", + "print_top_margin" => "", + "print_top_margin_number" => "", + "print_top_margin_required" => "", + "quantity_decimals" => "", + "quick_cash_enable" => "", + "quote_default_comments" => "", + "receipt" => "", + "receipt_category" => "", + "receipt_configuration" => "", + "receipt_default" => "", + "receipt_font_size" => "", + "receipt_font_size_number" => "", + "receipt_font_size_required" => "", + "receipt_info" => "", + "receipt_printer" => "", + "receipt_short" => "", + "receipt_show_company_name" => "", + "receipt_show_description" => "", + "receipt_show_serialnumber" => "", + "receipt_show_tax_ind" => "", + "receipt_show_taxes" => "", + "receipt_show_total_discount" => "", + "receipt_template" => "", + "receiving_calculate_average_price" => "", + "recv_invoice_format" => "", + "register_mode_default" => "", + "report_an_issue" => "", + "return_policy_required" => "", + "reward" => "", + "reward_configuration" => "", + "right" => "", + "sales_invoice_format" => "", + "sales_quote_format" => "", + "saved_successfully" => "", + "saved_unsuccessfully" => "", + "security_issue" => "", + "server_notice" => "", + "service_charge" => "", + "show_due_enable" => "", + "show_office_group" => "", + "statistics" => "", + "statistics_tooltip" => "", + "stock_location" => "", + "stock_location_duplicate" => "", + "stock_location_invalid_chars" => "", + "stock_location_required" => "", + "suggestions_fifth_column" => "", + "suggestions_first_column" => "", + "suggestions_fourth_column" => "", + "suggestions_layout" => "", + "suggestions_second_column" => "", + "suggestions_third_column" => "", + "system_conf" => "", + "system_info" => "", + "table" => "", + "table_configuration" => "", + "takings_printer" => "", + "tax" => "", + "tax_category" => "", + "tax_category_duplicate" => "", + "tax_category_invalid_chars" => "", + "tax_category_required" => "", + "tax_category_used" => "", + "tax_configuration" => "", + "tax_decimals" => "", + "tax_id" => "", + "tax_included" => "", + "theme" => "", + "theme_preview" => "", + "thousands_separator" => "", + "timezone" => "", + "timezone_error" => "", + "top" => "", + "use_destination_based_tax" => "", + "user_timezone" => "", + "website" => "", + "wholesale_markup" => "", + "work_order_enable" => "", + "work_order_format" => "", ]; diff --git a/app/Language/hy/Customers.php b/app/Language/hy/Customers.php index 715fca3e4..686ed3760 100644 --- a/app/Language/hy/Customers.php +++ b/app/Language/hy/Customers.php @@ -1,56 +1,56 @@ "", - "account_number_duplicate" => "", - "available_points" => "", - "available_points_value" => "", - "average" => "", - "avg_discount" => "", - "basic_information" => "", - "cannot_be_deleted" => "", - "company_name" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "consent" => "", - "consent_required" => "", - "csv_import_failed" => "", - "csv_import_nodata_wrongformat" => "", - "csv_import_partially_failed" => "", - "csv_import_success" => "", - "customer" => "", - "date" => "", - "discount" => "", - "discount_fixed" => "", - "discount_percent" => "", - "discount_type" => "", - "email_duplicate" => "", - "employee" => "", - "error_adding_updating" => "", - "import_items_csv" => "", - "mailchimp_activity_click" => "", - "mailchimp_activity_lastopen" => "", - "mailchimp_activity_open" => "", - "mailchimp_activity_total" => "", - "mailchimp_activity_unopen" => "", - "mailchimp_email_client" => "", - "mailchimp_info" => "", - "mailchimp_member_rating" => "", - "mailchimp_status" => "", - "mailchimp_vip" => "", - "max" => "", - "min" => "", - "new" => "", - "none_selected" => "", - "one_or_multiple" => "", - "quantity" => "", - "stats_info" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "tax_code" => "", - "tax_id" => "", - "taxable" => "", - "total" => "", - "update" => "", - "rewards_package" => "", + "account_number" => "", + "account_number_duplicate" => "", + "available_points" => "", + "available_points_value" => "", + "average" => "", + "avg_discount" => "", + "basic_information" => "", + "cannot_be_deleted" => "", + "company_name" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "consent" => "", + "consent_required" => "", + "csv_import_failed" => "", + "csv_import_nodata_wrongformat" => "", + "csv_import_partially_failed" => "", + "csv_import_success" => "", + "customer" => "", + "date" => "", + "discount" => "", + "discount_fixed" => "", + "discount_percent" => "", + "discount_type" => "", + "email_duplicate" => "", + "employee" => "", + "error_adding_updating" => "", + "import_items_csv" => "", + "mailchimp_activity_click" => "", + "mailchimp_activity_lastopen" => "", + "mailchimp_activity_open" => "", + "mailchimp_activity_total" => "", + "mailchimp_activity_unopen" => "", + "mailchimp_email_client" => "", + "mailchimp_info" => "", + "mailchimp_member_rating" => "", + "mailchimp_status" => "", + "mailchimp_vip" => "", + "max" => "", + "min" => "", + "new" => "", + "none_selected" => "", + "one_or_multiple" => "", + "quantity" => "", + "stats_info" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "tax_code" => "", + "tax_id" => "", + "taxable" => "", + "total" => "", + "update" => "", + "rewards_package" => "", ]; diff --git a/app/Language/hy/Datepicker.php b/app/Language/hy/Datepicker.php index e8be7a6c0..7c8e18902 100644 --- a/app/Language/hy/Datepicker.php +++ b/app/Language/hy/Datepicker.php @@ -1,23 +1,23 @@ "", - "apply" => "", - "cancel" => "", - "custom" => "", - "from" => "", - "last_30" => "", - "last_7" => "", - "last_financial_year" => "", - "last_month" => "", - "last_year" => "", - "same_month_last_year" => "", - "same_month_to_same_day_last_year" => "", - "this_financial_year" => "", - "this_month" => "", - "this_year" => "", - "to" => "", - "today" => "", - "today_last_year" => "", - "weekstart" => "", - "yesterday" => "", + "all_time" => "", + "apply" => "", + "cancel" => "", + "custom" => "", + "from" => "", + "last_30" => "", + "last_7" => "", + "last_financial_year" => "", + "last_month" => "", + "last_year" => "", + "same_month_last_year" => "", + "same_month_to_same_day_last_year" => "", + "this_financial_year" => "", + "this_month" => "", + "this_year" => "", + "to" => "", + "today" => "", + "today_last_year" => "", + "weekstart" => "", + "yesterday" => "", ]; diff --git a/app/Language/hy/Employees.php b/app/Language/hy/Employees.php index 6f597ab5b..5aa444ff4 100644 --- a/app/Language/hy/Employees.php +++ b/app/Language/hy/Employees.php @@ -1,44 +1,44 @@ "", - "basic_information" => "", - "cannot_be_deleted" => "", - "change_employee" => "", - "change_password" => "", - "clerk" => "", - "commission" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "current_password" => "", - "current_password_invalid" => "", - "employee" => "", - "error_adding_updating" => "", - "error_deleting_demo_admin" => "", - "error_updating_demo_admin" => "", - "language" => "", - "login_info" => "", - "manager" => "", - "new" => "", - "none_selected" => "", - "one_or_multiple" => "", - "password" => "", - "password_minlength" => "", - "password_must_match" => "", - "password_not_must_match" => "", - "password_required" => "", - "permission_desc" => "", - "permission_info" => "", - "repeat_password" => "", - "subpermission_required" => "", - "successful_adding" => "", - "successful_change_password" => "", - "successful_deleted" => "", - "successful_updating" => "", - "system_language" => "", - "unsuccessful_change_password" => "", - "update" => "", - "username" => "", - "username_duplicate" => "", - "username_minlength" => "", - "username_required" => "", + "administrator" => "", + "basic_information" => "", + "cannot_be_deleted" => "", + "change_employee" => "", + "change_password" => "", + "clerk" => "", + "commission" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "current_password" => "", + "current_password_invalid" => "", + "employee" => "", + "error_adding_updating" => "", + "error_deleting_demo_admin" => "", + "error_updating_demo_admin" => "", + "language" => "", + "login_info" => "", + "manager" => "", + "new" => "", + "none_selected" => "", + "one_or_multiple" => "", + "password" => "", + "password_minlength" => "", + "password_must_match" => "", + "password_not_must_match" => "", + "password_required" => "", + "permission_desc" => "", + "permission_info" => "", + "repeat_password" => "", + "subpermission_required" => "", + "successful_adding" => "", + "successful_change_password" => "", + "successful_deleted" => "", + "successful_updating" => "", + "system_language" => "", + "unsuccessful_change_password" => "", + "update" => "", + "username" => "", + "username_duplicate" => "", + "username_minlength" => "", + "username_required" => "", ]; diff --git a/app/Language/hy/Enum.php b/app/Language/hy/Enum.php index c39655c3b..1ed7e9313 100644 --- a/app/Language/hy/Enum.php +++ b/app/Language/hy/Enum.php @@ -1,10 +1,10 @@ "", - "half_even" => "", - "half_five" => "", - "half_odd" => "", - "half_up" => "", - "round_down" => "", - "round_up" => "", + "half_down" => "", + "half_even" => "", + "half_five" => "", + "half_odd" => "", + "half_up" => "", + "round_down" => "", + "round_up" => "", ]; diff --git a/app/Language/hy/Error.php b/app/Language/hy/Error.php index 6134ea59a..ae85a3b54 100644 --- a/app/Language/hy/Error.php +++ b/app/Language/hy/Error.php @@ -1,5 +1,5 @@ "", - "unknown" => "", + "no_permission_module" => "", + "unknown" => "", ]; diff --git a/app/Language/hy/Expenses.php b/app/Language/hy/Expenses.php index e9e237376..8ef1fe954 100644 --- a/app/Language/hy/Expenses.php +++ b/app/Language/hy/Expenses.php @@ -1,50 +1,50 @@ "", - "amount" => "", - "amount_number" => "", - "amount_required" => "", - "by_category" => "", - "cannot_be_deleted" => "", - "cash" => "", - "cash_filter" => "", - "categories_name" => "", - "category_required" => "", - "check" => "", - "check_filter" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "credit" => "", - "credit_filter" => "", - "date" => "", - "date_number" => "", - "date_required" => "", - "debit" => "", - "debit_filter" => "", - "description" => "", - "due" => "", - "due_filter" => "", - "employee" => "", - "error_adding_updating" => "", - "expense_id" => "", - "expenses_employee" => "", - "info" => "", - "ip_address" => "", - "is_deleted" => "", - "name_required" => "", - "new" => "", - "new_supplier" => "", - "no_expenses_to_display" => "", - "none_selected" => "", - "one_or_multiple" => "", - "payment" => "", - "start_typing_supplier_name" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "supplier_name" => "", - "supplier_tax_code" => "", - "tax_amount" => "", - "tax_amount_number" => "", - "update" => "", + "add_item" => "", + "amount" => "", + "amount_number" => "", + "amount_required" => "", + "by_category" => "", + "cannot_be_deleted" => "", + "cash" => "", + "cash_filter" => "", + "categories_name" => "", + "category_required" => "", + "check" => "", + "check_filter" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "credit" => "", + "credit_filter" => "", + "date" => "", + "date_number" => "", + "date_required" => "", + "debit" => "", + "debit_filter" => "", + "description" => "", + "due" => "", + "due_filter" => "", + "employee" => "", + "error_adding_updating" => "", + "expense_id" => "", + "expenses_employee" => "", + "info" => "", + "ip_address" => "", + "is_deleted" => "", + "name_required" => "", + "new" => "", + "new_supplier" => "", + "no_expenses_to_display" => "", + "none_selected" => "", + "one_or_multiple" => "", + "payment" => "", + "start_typing_supplier_name" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "supplier_name" => "", + "supplier_tax_code" => "", + "tax_amount" => "", + "tax_amount_number" => "", + "update" => "", ]; diff --git a/app/Language/hy/Expenses_categories.php b/app/Language/hy/Expenses_categories.php index 03169e528..7d3b08c27 100644 --- a/app/Language/hy/Expenses_categories.php +++ b/app/Language/hy/Expenses_categories.php @@ -1,22 +1,22 @@ "", - "add_item" => "", - "cannot_be_deleted" => "", - "category_id" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "description" => "", - "error_adding_updating" => "", - "info" => "", - "name" => "", - "new" => "", - "no_expenses_categories_to_display" => "", - "none_selected" => "", - "one_or_multiple" => "", - "quantity" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "update" => "", + "category_name_required" => "", + "add_item" => "", + "cannot_be_deleted" => "", + "category_id" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "description" => "", + "error_adding_updating" => "", + "info" => "", + "name" => "", + "new" => "", + "no_expenses_categories_to_display" => "", + "none_selected" => "", + "one_or_multiple" => "", + "quantity" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "update" => "", ]; diff --git a/app/Language/hy/Giftcards.php b/app/Language/hy/Giftcards.php index f1b1bd322..00d291498 100644 --- a/app/Language/hy/Giftcards.php +++ b/app/Language/hy/Giftcards.php @@ -1,71 +1,71 @@ "", - "allow_alt_description" => "", - "bulk_edit" => "", - "cannot_be_deleted" => "", - "cannot_find_giftcard" => "", - "cannot_use" => "", - "card_value" => "", - "category" => "", - "change_all_to_allow_alt_desc" => "", - "change_all_to_not_allow_allow_desc" => "", - "change_all_to_serialized" => "", - "change_all_to_unserialized" => "", - "confirm_bulk_edit" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "cost_price" => "", - "count" => "", - "csv_import_failed" => "", - "current_quantity" => "", - "description" => "", - "details_count" => "", - "do_nothing" => "", - "edit_fields_you_want_to_update" => "", - "edit_multiple_giftcards" => "", - "error_adding_updating" => "", - "error_updating_multiple" => "", - "generate_barcodes" => "", - "giftcard" => "", - "giftcard_number" => "", - "info_provided_by" => "", - "inventory_comments" => "", - "is_serialized" => "", - "low_inventory_giftcards" => "", - "manually_editing_of_quantity" => "", - "must_select_giftcard_for_barcode" => "", - "new" => "", - "no_description_giftcards" => "", - "no_giftcards_to_display" => "", - "none" => "", - "none_selected" => "", - "number" => "", - "number_information" => "", - "number_required" => "", - "one_or_multiple" => "", - "person_id" => "", - "quantity" => "", - "quantity_required" => "", - "remaining_balance" => "", - "reorder_level" => "", - "retrive_giftcard_info" => "", - "sales_tax_1" => "", - "sales_tax_2" => "", - "serialized_giftcards" => "", - "successful_adding" => "", - "successful_bulk_edit" => "", - "successful_deleted" => "", - "successful_updating" => "", - "supplier" => "", - "tax_1" => "", - "tax_2" => "", - "tax_percent" => "", - "tax_percents" => "", - "unit_price" => "", - "upc_database" => "", - "update" => "", - "use_inventory_menu" => "", - "value" => "", - "value_required" => "", + "add_minus" => "", + "allow_alt_description" => "", + "bulk_edit" => "", + "cannot_be_deleted" => "", + "cannot_find_giftcard" => "", + "cannot_use" => "", + "card_value" => "", + "category" => "", + "change_all_to_allow_alt_desc" => "", + "change_all_to_not_allow_allow_desc" => "", + "change_all_to_serialized" => "", + "change_all_to_unserialized" => "", + "confirm_bulk_edit" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "cost_price" => "", + "count" => "", + "csv_import_failed" => "", + "current_quantity" => "", + "description" => "", + "details_count" => "", + "do_nothing" => "", + "edit_fields_you_want_to_update" => "", + "edit_multiple_giftcards" => "", + "error_adding_updating" => "", + "error_updating_multiple" => "", + "generate_barcodes" => "", + "giftcard" => "", + "giftcard_number" => "", + "info_provided_by" => "", + "inventory_comments" => "", + "is_serialized" => "", + "low_inventory_giftcards" => "", + "manually_editing_of_quantity" => "", + "must_select_giftcard_for_barcode" => "", + "new" => "", + "no_description_giftcards" => "", + "no_giftcards_to_display" => "", + "none" => "", + "none_selected" => "", + "number" => "", + "number_information" => "", + "number_required" => "", + "one_or_multiple" => "", + "person_id" => "", + "quantity" => "", + "quantity_required" => "", + "remaining_balance" => "", + "reorder_level" => "", + "retrive_giftcard_info" => "", + "sales_tax_1" => "", + "sales_tax_2" => "", + "serialized_giftcards" => "", + "successful_adding" => "", + "successful_bulk_edit" => "", + "successful_deleted" => "", + "successful_updating" => "", + "supplier" => "", + "tax_1" => "", + "tax_2" => "", + "tax_percent" => "", + "tax_percents" => "", + "unit_price" => "", + "upc_database" => "", + "update" => "", + "use_inventory_menu" => "", + "value" => "", + "value_required" => "", ]; diff --git a/app/Language/hy/Item_kits.php b/app/Language/hy/Item_kits.php index 2f21a4963..370929649 100644 --- a/app/Language/hy/Item_kits.php +++ b/app/Language/hy/Item_kits.php @@ -1,41 +1,41 @@ "", - "all" => "", - "cannot_be_deleted" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "description" => "", - "discount" => "", - "discount_fixed" => "", - "discount_percent" => "", - "discount_type" => "", - "error_adding_updating" => "", - "find_kit_item" => "", - "info" => "", - "item" => "", - "item_kit_number" => "", - "item_kit_number_duplicate" => "", - "item_number" => "", - "item_number_duplicate" => "", - "items" => "", - "kit" => "", - "kit_and_components" => "", - "kit_and_stock" => "", - "kit_only" => "", - "name" => "", - "new" => "", - "no_item_kits_to_display" => "", - "none_selected" => "", - "one_or_multiple" => "", - "price_option" => "", - "priced_only" => "", - "print_option" => "", - "quantity" => "", - "sequence" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "unit_price" => "", - "update" => "", + "add_item" => "", + "all" => "", + "cannot_be_deleted" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "description" => "", + "discount" => "", + "discount_fixed" => "", + "discount_percent" => "", + "discount_type" => "", + "error_adding_updating" => "", + "find_kit_item" => "", + "info" => "", + "item" => "", + "item_kit_number" => "", + "item_kit_number_duplicate" => "", + "item_number" => "", + "item_number_duplicate" => "", + "items" => "", + "kit" => "", + "kit_and_components" => "", + "kit_and_stock" => "", + "kit_only" => "", + "name" => "", + "new" => "", + "no_item_kits_to_display" => "", + "none_selected" => "", + "one_or_multiple" => "", + "price_option" => "", + "priced_only" => "", + "print_option" => "", + "quantity" => "", + "sequence" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "unit_price" => "", + "update" => "", ]; diff --git a/app/Language/hy/Items.php b/app/Language/hy/Items.php index 9718385d0..25c0395e0 100644 --- a/app/Language/hy/Items.php +++ b/app/Language/hy/Items.php @@ -1,120 +1,120 @@ "", - "allow_alt_description" => "", - "amount_entry" => "", - "bulk_edit" => "", - "buy_price_required" => "", - "cannot_be_deleted" => "", - "cannot_find_item" => "", - "categories" => "", - "category" => "", - "category_new" => "", - "category_required" => "", - "change_all_to_allow_alt_desc" => "", - "change_all_to_not_allow_allow_desc" => "", - "change_all_to_serialized" => "", - "change_all_to_unserialized" => "", - "change_image" => "", - "confirm_bulk_edit" => "", - "confirm_bulk_edit_wipe_taxes" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "cost_price" => "", - "cost_price_number" => "", - "cost_price_required" => "", - "count" => "", - "csv_import_failed" => "", - "csv_import_nodata_wrongformat" => "", - "csv_import_partially_failed" => "", - "csv_import_success" => "", - "current_quantity" => "", - "default_pack_name" => "", - "description" => "", - "details_count" => "", - "do_nothing" => "", - "edit" => "", - "edit_fields_you_want_to_update" => "", - "edit_multiple_items" => "", - "empty_upc_items" => "", - "error_adding_updating" => "", - "error_updating_multiple" => "", - "generate_barcodes" => "", - "hsn_code" => "", - "image" => "", - "import_items_csv" => "", - "info_provided_by" => "", - "inventory" => "", - "inventory_CSV_import_quantity" => "", - "inventory_comments" => "", - "inventory_data_tracking" => "", - "inventory_date" => "", - "inventory_employee" => "", - "inventory_in_out_quantity" => "", - "inventory_remarks" => "", - "is_deleted" => "", - "is_printed" => "", - "is_serialized" => "", - "item" => "", - "item_id" => "", - "item_number" => "", - "item_number_duplicate" => "", - "kit" => "", - "location" => "", - "low_inventory_items" => "", - "low_sell_item" => "", - "manually_editing_of_quantity" => "", - "markup" => "", - "name" => "", - "name_required" => "", - "new" => "", - "no_description_items" => "", - "no_items_to_display" => "", - "none" => "", - "none_selected" => "", - "nonstock" => "", - "number_information" => "", - "number_required" => "", - "one_or_multiple" => "", - "pack_name" => "", - "qty_per_pack" => "", - "quantity" => "", - "quantity_number" => "", - "quantity_required" => "", - "receiving_quantity" => "", - "remove_image" => "", - "reorder_level" => "", - "reorder_level_number" => "", - "reorder_level_required" => "", - "retrive_item_info" => "", - "sales_tax_1" => "", - "sales_tax_2" => "", - "search_attributes" => "", - "select_image" => "", - "serialized_items" => "", - "standard" => "", - "stock" => "", - "stock_location" => "", - "stock_type" => "", - "successful_adding" => "", - "successful_bulk_edit" => "", - "successful_deleted" => "", - "successful_updating" => "", - "supplier" => "", - "tax_1" => "", - "tax_2" => "", - "tax_3" => "", - "tax_category" => "", - "tax_percent" => "", - "tax_percent_number" => "", - "tax_percent_required" => "", - "tax_percents" => "", - "temp" => "", - "type" => "", - "unit_price" => "", - "unit_price_number" => "", - "unit_price_required" => "", - "upc_database" => "", - "update" => "", - "use_inventory_menu" => "", + "add_minus" => "", + "allow_alt_description" => "", + "amount_entry" => "", + "bulk_edit" => "", + "buy_price_required" => "", + "cannot_be_deleted" => "", + "cannot_find_item" => "", + "categories" => "", + "category" => "", + "category_new" => "", + "category_required" => "", + "change_all_to_allow_alt_desc" => "", + "change_all_to_not_allow_allow_desc" => "", + "change_all_to_serialized" => "", + "change_all_to_unserialized" => "", + "change_image" => "", + "confirm_bulk_edit" => "", + "confirm_bulk_edit_wipe_taxes" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "cost_price" => "", + "cost_price_number" => "", + "cost_price_required" => "", + "count" => "", + "csv_import_failed" => "", + "csv_import_nodata_wrongformat" => "", + "csv_import_partially_failed" => "", + "csv_import_success" => "", + "current_quantity" => "", + "default_pack_name" => "", + "description" => "", + "details_count" => "", + "do_nothing" => "", + "edit" => "", + "edit_fields_you_want_to_update" => "", + "edit_multiple_items" => "", + "empty_upc_items" => "", + "error_adding_updating" => "", + "error_updating_multiple" => "", + "generate_barcodes" => "", + "hsn_code" => "", + "image" => "", + "import_items_csv" => "", + "info_provided_by" => "", + "inventory" => "", + "inventory_CSV_import_quantity" => "", + "inventory_comments" => "", + "inventory_data_tracking" => "", + "inventory_date" => "", + "inventory_employee" => "", + "inventory_in_out_quantity" => "", + "inventory_remarks" => "", + "is_deleted" => "", + "is_printed" => "", + "is_serialized" => "", + "item" => "", + "item_id" => "", + "item_number" => "", + "item_number_duplicate" => "", + "kit" => "", + "location" => "", + "low_inventory_items" => "", + "low_sell_item" => "", + "manually_editing_of_quantity" => "", + "markup" => "", + "name" => "", + "name_required" => "", + "new" => "", + "no_description_items" => "", + "no_items_to_display" => "", + "none" => "", + "none_selected" => "", + "nonstock" => "", + "number_information" => "", + "number_required" => "", + "one_or_multiple" => "", + "pack_name" => "", + "qty_per_pack" => "", + "quantity" => "", + "quantity_number" => "", + "quantity_required" => "", + "receiving_quantity" => "", + "remove_image" => "", + "reorder_level" => "", + "reorder_level_number" => "", + "reorder_level_required" => "", + "retrive_item_info" => "", + "sales_tax_1" => "", + "sales_tax_2" => "", + "search_attributes" => "", + "select_image" => "", + "serialized_items" => "", + "standard" => "", + "stock" => "", + "stock_location" => "", + "stock_type" => "", + "successful_adding" => "", + "successful_bulk_edit" => "", + "successful_deleted" => "", + "successful_updating" => "", + "supplier" => "", + "tax_1" => "", + "tax_2" => "", + "tax_3" => "", + "tax_category" => "", + "tax_percent" => "", + "tax_percent_number" => "", + "tax_percent_required" => "", + "tax_percents" => "", + "temp" => "", + "type" => "", + "unit_price" => "", + "unit_price_number" => "", + "unit_price_required" => "", + "upc_database" => "", + "update" => "", + "use_inventory_menu" => "", ]; diff --git a/app/Language/hy/Login.php b/app/Language/hy/Login.php index 4a73810c7..2a18ca41d 100644 --- a/app/Language/hy/Login.php +++ b/app/Language/hy/Login.php @@ -1,15 +1,15 @@ "", - "go" => "", - "invalid_gcaptcha" => "", - "invalid_installation" => "", - "invalid_username_and_password" => "", - "login" => "", - "logout" => "", - "migration_needed" => "", - "password" => "", - "required_username" => "", - "username" => "", - "welcome" => "", + "gcaptcha" => "", + "go" => "", + "invalid_gcaptcha" => "", + "invalid_installation" => "", + "invalid_username_and_password" => "", + "login" => "", + "logout" => "", + "migration_needed" => "", + "password" => "", + "required_username" => "", + "username" => "", + "welcome" => "", ]; diff --git a/app/Language/hy/Messages.php b/app/Language/hy/Messages.php index ce3a2e233..3079da504 100644 --- a/app/Language/hy/Messages.php +++ b/app/Language/hy/Messages.php @@ -1,15 +1,15 @@ "", - "last_name" => "", - "message" => "", - "message_placeholder" => "", - "message_required" => "", - "multiple_phones" => "", - "phone" => "", - "phone_number_required" => "", - "phone_placeholder" => "", - "sms_send" => "", - "successfully_sent" => "", - "unsuccessfully_sent" => "", + "first_name" => "", + "last_name" => "", + "message" => "", + "message_placeholder" => "", + "message_required" => "", + "multiple_phones" => "", + "phone" => "", + "phone_number_required" => "", + "phone_placeholder" => "", + "sms_send" => "", + "successfully_sent" => "", + "unsuccessfully_sent" => "", ]; diff --git a/app/Language/hy/Module.php b/app/Language/hy/Module.php index f2ad04586..fb277bc95 100644 --- a/app/Language/hy/Module.php +++ b/app/Language/hy/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "", - "attributes_desc" => "", - "both" => "", - "cashups" => "", - "cashups_desc" => "", - "config" => "", - "config_desc" => "", - "customers" => "", - "customers_desc" => "", - "employees" => "", - "employees_desc" => "", - "expenses" => "", - "expenses_categories" => "", - "expenses_categories_desc" => "", - "expenses_desc" => "", - "giftcards" => "", - "giftcards_desc" => "", - "home" => "", - "home_desc" => "", - "item_kits" => "", - "item_kits_desc" => "", - "items" => "", - "items_desc" => "", - "messages" => "", - "messages_desc" => "", - "migrate" => "", - "migrate_desc" => "", - "office" => "", - "office_desc" => "", - "receivings" => "", - "receivings_desc" => "", - "reports" => "", - "reports_desc" => "", - "sales" => "", - "sales_desc" => "", - "suppliers" => "", - "suppliers_desc" => "", - "taxes" => "", - "taxes_desc" => "", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "", + "attributes_desc" => "", + "both" => "", + "cashups" => "", + "cashups_desc" => "", + "config" => "", + "config_desc" => "", + "customers" => "", + "customers_desc" => "", + "employees" => "", + "employees_desc" => "", + "expenses" => "", + "expenses_categories" => "", + "expenses_categories_desc" => "", + "expenses_desc" => "", + "giftcards" => "", + "giftcards_desc" => "", + "home" => "", + "home_desc" => "", + "item_kits" => "", + "item_kits_desc" => "", + "items" => "", + "items_desc" => "", + "messages" => "", + "messages_desc" => "", + "migrate" => "", + "migrate_desc" => "", + "office" => "", + "office_desc" => "", + "receivings" => "", + "receivings_desc" => "", + "reports" => "", + "reports_desc" => "", + "sales" => "", + "sales_desc" => "", + "suppliers" => "", + "suppliers_desc" => "", + "taxes" => "", + "taxes_desc" => "", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/hy/Receivings.php b/app/Language/hy/Receivings.php index 4ffca4df7..0936f4851 100644 --- a/app/Language/hy/Receivings.php +++ b/app/Language/hy/Receivings.php @@ -1,58 +1,58 @@ "", - "cancel_receiving" => "", - "cannot_be_deleted" => "", - "comments" => "", - "complete_receiving" => "", - "confirm_cancel_receiving" => "", - "confirm_delete" => "", - "confirm_finish_receiving" => "", - "confirm_restore" => "", - "cost" => "", - "daily" => "", - "date" => "", - "date_required" => "", - "date_type" => "", - "delete_entire_sale" => "", - "discount" => "", - "edit" => "", - "edit_sale" => "", - "employee" => "", - "error_editing_item" => "", - "error_requisition" => "", - "find_or_scan_item" => "", - "find_or_scan_item_or_receipt" => "", - "id" => "", - "item_name" => "", - "mode" => "", - "new_supplier" => "", - "one_or_multiple" => "", - "print_after_sale" => "", - "quantity" => "", - "receipt" => "", - "receipt_number" => "", - "receiving" => "", - "reference" => "", - "register" => "", - "requisition" => "", - "return" => "", - "select_supplier" => "", - "ship_pack" => "", - "start_typing_supplier_name" => "", - "stock" => "", - "stock_destination" => "", - "stock_locaiton" => "", - "stock_source" => "", - "successfully_deleted" => "", - "successfully_updated" => "", - "supplier" => "", - "supplier_address" => "", - "supplier_email" => "", - "supplier_location" => "", - "total" => "", - "transaction_failed" => "", - "unable_to_add_item" => "", - "unsuccessfully_updated" => "", - "update" => "", + "amount_due" => "", + "cancel_receiving" => "", + "cannot_be_deleted" => "", + "comments" => "", + "complete_receiving" => "", + "confirm_cancel_receiving" => "", + "confirm_delete" => "", + "confirm_finish_receiving" => "", + "confirm_restore" => "", + "cost" => "", + "daily" => "", + "date" => "", + "date_required" => "", + "date_type" => "", + "delete_entire_sale" => "", + "discount" => "", + "edit" => "", + "edit_sale" => "", + "employee" => "", + "error_editing_item" => "", + "error_requisition" => "", + "find_or_scan_item" => "", + "find_or_scan_item_or_receipt" => "", + "id" => "", + "item_name" => "", + "mode" => "", + "new_supplier" => "", + "one_or_multiple" => "", + "print_after_sale" => "", + "quantity" => "", + "receipt" => "", + "receipt_number" => "", + "receiving" => "", + "reference" => "", + "register" => "", + "requisition" => "", + "return" => "", + "select_supplier" => "", + "ship_pack" => "", + "start_typing_supplier_name" => "", + "stock" => "", + "stock_destination" => "", + "stock_locaiton" => "", + "stock_source" => "", + "successfully_deleted" => "", + "successfully_updated" => "", + "supplier" => "", + "supplier_address" => "", + "supplier_email" => "", + "supplier_location" => "", + "total" => "", + "transaction_failed" => "", + "unable_to_add_item" => "", + "unsuccessfully_updated" => "", + "update" => "", ]; diff --git a/app/Language/hy/Reports.php b/app/Language/hy/Reports.php index c8f0dcce9..cde8daff6 100644 --- a/app/Language/hy/Reports.php +++ b/app/Language/hy/Reports.php @@ -1,148 +1,148 @@ "", - "authority" => "", - "canceled" => "", - "categories" => "", - "categories_summary_report" => "", - "category" => "", - "code_canceled" => "", - "code_invoice" => "", - "code_pos" => "", - "code_quote" => "", - "code_return" => "", - "code_type" => "", - "code_work_order" => "", - "comments" => "", - "commission" => "", - "complete" => "", - "completed_sales" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "cost" => "", - "cost_price" => "", - "count" => "", - "customer" => "", - "customers" => "", - "customers_summary_report" => "", - "date" => "", - "date_range" => "", - "description" => "", - "detailed_receivings_report" => "", - "detailed_receivings_report_input" => "", - "detailed_reports" => "", - "detailed_requisition_report" => "", - "detailed_sales_report" => "", - "discount" => "", - "discount_fixed" => "", - "discount_percent" => "", - "discount_type" => "", - "discounts" => "", - "discounts_summary_report" => "", - "earned" => "", - "employee" => "", - "employees" => "", - "employees_summary_report" => "", - "expenses" => "", - "expenses_amount" => "", - "expenses_categories" => "", - "expenses_categories_summary_report" => "", - "expenses_category" => "", - "expenses_payment_amount" => "", - "expenses_tax_amount" => "", - "expenses_total_amount" => "", - "expenses_total_tax_amount" => "", - "graphical_reports" => "", - "inventory" => "", - "inventory_low" => "", - "inventory_low_report" => "", - "inventory_reports" => "", - "inventory_summary" => "", - "inventory_summary_report" => "", - "item" => "", - "item_count" => "", - "item_name" => "", - "item_number" => "", - "items" => "", - "items_purchased" => "", - "items_received" => "", - "items_summary_report" => "", - "jurisdiction" => "", - "low_inventory" => "", - "low_inventory_report" => "", - "low_sell_quantity" => "", - "more_than_zero" => "", - "name" => "", - "no_reports_to_display" => "", - "payment_type" => "", - "payments" => "", - "payments_summary_report" => "", - "profit" => "", - "quantity" => "", - "quantity_purchased" => "", - "quotes" => "", - "received_by" => "", - "receiving_id" => "", - "receiving_type" => "", - "receivings" => "", - "reorder_level" => "", - "report" => "", - "report_input" => "", - "reports" => "", - "requisition" => "", - "requisition_by" => "", - "requisition_id" => "", - "requisition_item" => "", - "requisition_item_quantity" => "", - "requisition_related_item" => "", - "requisition_related_item_total_quantity" => "", - "requisition_related_item_unit_quantity" => "", - "requisitions" => "", - "returns" => "", - "revenue" => "", - "sale_id" => "", - "sale_type" => "", - "sales" => "", - "sales_amount" => "", - "sales_summary_report" => "", - "sales_taxes" => "", - "sales_taxes_summary_report" => "", - "serial_number" => "", - "service_charge" => "", - "sold_by" => "", - "sold_items" => "", - "sold_to" => "", - "stock_location" => "", - "sub_total_value" => "", - "subtotal" => "", - "summary_reports" => "", - "supplied_by" => "", - "supplier" => "", - "suppliers" => "", - "suppliers_summary_report" => "", - "tax" => "", - "tax_category" => "", - "tax_name" => "", - "tax_percent" => "", - "tax_rate" => "", - "taxes" => "", - "taxes_summary_report" => "", - "total" => "", - "total_inventory_value" => "", - "total_low_sell_quantity" => "", - "total_quantity" => "", - "total_retail" => "", - "trans_amount" => "", - "trans_due" => "", - "trans_group" => "", - "trans_nopay_sales" => "", - "trans_payments" => "", - "trans_refunded" => "", - "trans_sales" => "", - "trans_type" => "", - "type" => "", - "unit_price" => "", - "used" => "", - "work_orders" => "", - "zero_and_less" => "", + "all" => "", + "authority" => "", + "canceled" => "", + "categories" => "", + "categories_summary_report" => "", + "category" => "", + "code_canceled" => "", + "code_invoice" => "", + "code_pos" => "", + "code_quote" => "", + "code_return" => "", + "code_type" => "", + "code_work_order" => "", + "comments" => "", + "commission" => "", + "complete" => "", + "completed_sales" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "cost" => "", + "cost_price" => "", + "count" => "", + "customer" => "", + "customers" => "", + "customers_summary_report" => "", + "date" => "", + "date_range" => "", + "description" => "", + "detailed_receivings_report" => "", + "detailed_receivings_report_input" => "", + "detailed_reports" => "", + "detailed_requisition_report" => "", + "detailed_sales_report" => "", + "discount" => "", + "discount_fixed" => "", + "discount_percent" => "", + "discount_type" => "", + "discounts" => "", + "discounts_summary_report" => "", + "earned" => "", + "employee" => "", + "employees" => "", + "employees_summary_report" => "", + "expenses" => "", + "expenses_amount" => "", + "expenses_categories" => "", + "expenses_categories_summary_report" => "", + "expenses_category" => "", + "expenses_payment_amount" => "", + "expenses_tax_amount" => "", + "expenses_total_amount" => "", + "expenses_total_tax_amount" => "", + "graphical_reports" => "", + "inventory" => "", + "inventory_low" => "", + "inventory_low_report" => "", + "inventory_reports" => "", + "inventory_summary" => "", + "inventory_summary_report" => "", + "item" => "", + "item_count" => "", + "item_name" => "", + "item_number" => "", + "items" => "", + "items_purchased" => "", + "items_received" => "", + "items_summary_report" => "", + "jurisdiction" => "", + "low_inventory" => "", + "low_inventory_report" => "", + "low_sell_quantity" => "", + "more_than_zero" => "", + "name" => "", + "no_reports_to_display" => "", + "payment_type" => "", + "payments" => "", + "payments_summary_report" => "", + "profit" => "", + "quantity" => "", + "quantity_purchased" => "", + "quotes" => "", + "received_by" => "", + "receiving_id" => "", + "receiving_type" => "", + "receivings" => "", + "reorder_level" => "", + "report" => "", + "report_input" => "", + "reports" => "", + "requisition" => "", + "requisition_by" => "", + "requisition_id" => "", + "requisition_item" => "", + "requisition_item_quantity" => "", + "requisition_related_item" => "", + "requisition_related_item_total_quantity" => "", + "requisition_related_item_unit_quantity" => "", + "requisitions" => "", + "returns" => "", + "revenue" => "", + "sale_id" => "", + "sale_type" => "", + "sales" => "", + "sales_amount" => "", + "sales_summary_report" => "", + "sales_taxes" => "", + "sales_taxes_summary_report" => "", + "serial_number" => "", + "service_charge" => "", + "sold_by" => "", + "sold_items" => "", + "sold_to" => "", + "stock_location" => "", + "sub_total_value" => "", + "subtotal" => "", + "summary_reports" => "", + "supplied_by" => "", + "supplier" => "", + "suppliers" => "", + "suppliers_summary_report" => "", + "tax" => "", + "tax_category" => "", + "tax_name" => "", + "tax_percent" => "", + "tax_rate" => "", + "taxes" => "", + "taxes_summary_report" => "", + "total" => "", + "total_inventory_value" => "", + "total_low_sell_quantity" => "", + "total_quantity" => "", + "total_retail" => "", + "trans_amount" => "", + "trans_due" => "", + "trans_group" => "", + "trans_nopay_sales" => "", + "trans_payments" => "", + "trans_refunded" => "", + "trans_sales" => "", + "trans_type" => "", + "type" => "", + "unit_price" => "", + "used" => "", + "work_orders" => "", + "zero_and_less" => "", ]; diff --git a/app/Language/hy/Sales.php b/app/Language/hy/Sales.php index 6a63d9f51..da1a62b40 100644 --- a/app/Language/hy/Sales.php +++ b/app/Language/hy/Sales.php @@ -1,224 +1,224 @@ "", - "rewards_package" => "", - "rewards_remaining_balance" => "", - "account_number" => "", - "add_payment" => "", - "amount_due" => "", - "amount_tendered" => "", - "authorized_signature" => "", - "cancel_sale" => "", - "cash" => "", - "cash_1" => "", - "cash_2" => "", - "cash_3" => "", - "cash_4" => "", - "cash_adjustment" => "", - "cash_deposit" => "", - "cash_filter" => "", - "change_due" => "", - "change_price" => "", - "check" => "", - "check_balance" => "", - "check_filter" => "", - "close" => "", - "comment" => "", - "comments" => "", - "company_name" => "", - "complete" => "", - "complete_sale" => "", - "confirm_cancel_sale" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "credit" => "", - "credit_deposit" => "", - "credit_filter" => "", - "current_table" => "", - "customer" => "", - "customer_address" => "", - "customer_discount" => "", - "customer_email" => "", - "customer_location" => "", - "customer_mailchimp_status" => "", - "customer_optional" => "", - "customer_required" => "", - "customer_total" => "", - "customer_total_spent" => "", - "daily_sales" => "", - "date" => "", - "date_range" => "", - "date_required" => "", - "date_type" => "", - "debit" => "", - "debit_filter" => "", - "delete" => "", - "delete_confirmation" => "", - "delete_entire_sale" => "", - "delete_successful" => "", - "delete_unsuccessful" => "", - "description_abbrv" => "", - "discard" => "", - "discard_quote" => "", - "discount" => "", - "discount_included" => "", - "discount_short" => "", - "due" => "", - "due_filter" => "", - "edit" => "", - "edit_item" => "", - "edit_sale" => "", - "email_receipt" => "", - "employee" => "", - "entry" => "", - "error_editing_item" => "", - "find_or_scan_item" => "", - "find_or_scan_item_or_receipt" => "", - "giftcard" => "", - "giftcard_balance" => "", - "giftcard_filter" => "", - "giftcard_number" => "", - "group_by_category" => "", - "group_by_type" => "", - "hsn" => "", - "id" => "", - "include_prices" => "", - "invoice" => "", - "invoice_confirm" => "", - "invoice_enable" => "", - "invoice_filter" => "", - "invoice_no_email" => "", - "invoice_number" => "", - "invoice_number_duplicate" => "", - "invoice_sent" => "", - "invoice_total" => "", - "invoice_type_custom_invoice" => "", - "invoice_type_custom_tax_invoice" => "", - "invoice_type_invoice" => "", - "invoice_type_tax_invoice" => "", - "invoice_unsent" => "", - "invoice_update" => "", - "item_insufficient_of_stock" => "", - "item_name" => "", - "item_number" => "", - "item_out_of_stock" => "", - "key_browser" => "", - "key_cancel" => "Cancels Current Quote/Invoice/Sale", - "key_customer_search" => "Customer Search", - "key_finish_quote" => "Finish Quote/Invoice witdout payment", - "key_finish_sale" => "Add Payment and Complete Invoice/Sale", - "key_full" => "", - "key_function" => "Function", - "key_help" => "Shortcuts", - "key_help_modal" => "Open Shortcuts Window", - "key_in" => "", - "key_item_search" => "Item Search", - "key_out" => "", - "key_payment" => "Add Payment", - "key_print" => "", - "key_restore" => "", - "key_search" => "", - "key_suspend" => "Suspend Current Sale", - "key_suspended" => "Show Suspended Sales", - "key_system" => "", - "key_tendered" => "Edit Amount Tendered", - "key_title" => "Sales Keyboard Shortcuts", - "mc" => "", - "mode" => "", - "must_enter_numeric" => "", - "must_enter_numeric_giftcard" => "", - "new_customer" => "", - "new_item" => "", - "no_description" => "", - "no_filter" => "", - "no_items_in_cart" => "", - "no_sales_to_display" => "", - "none_selected" => "", - "nontaxed_ind" => "", - "not_authorized" => "", - "one_or_multiple" => "", - "payment" => "", - "payment_amount" => "", - "payment_not_cover_total" => "", - "payment_type" => "", - "payments" => "", - "payments_total" => "", - "price" => "", - "print_after_sale" => "", - "quantity" => "", - "quantity_less_than_reorder_level" => "", - "quantity_less_than_zero" => "", - "quantity_of_items" => "", - "quote" => "", - "quote_number" => "", - "quote_number_duplicate" => "", - "quote_sent" => "", - "quote_unsent" => "", - "receipt" => "", - "receipt_no_email" => "", - "receipt_number" => "", - "receipt_sent" => "", - "receipt_unsent" => "", - "refund" => "", - "register" => "", - "remove_customer" => "", - "remove_discount" => "", - "return" => "", - "rewards" => "", - "rewards_balance" => "", - "sale" => "", - "sale_by_invoice" => "", - "sale_for_customer" => "", - "sale_time" => "", - "sales_tax" => "", - "sales_total" => "", - "select_customer" => "", - "send_invoice" => "", - "send_quote" => "", - "send_receipt" => "", - "send_work_order" => "", - "serial" => "", - "service_charge" => "", - "show_due" => "", - "show_invoice" => "", - "show_receipt" => "", - "start_typing_customer_name" => "", - "start_typing_item_name" => "", - "stock" => "", - "stock_location" => "", - "sub_total" => "", - "successfully_deleted" => "", - "successfully_restored" => "", - "successfully_suspended_sale" => "", - "successfully_updated" => "", - "suspend_sale" => "", - "suspended_doc_id" => "", - "suspended_sale_id" => "", - "suspended_sales" => "", - "table" => "", - "takings" => "", - "tax" => "", - "tax_id" => "", - "tax_invoice" => "", - "tax_percent" => "", - "taxed_ind" => "", - "total" => "", - "total_tax_exclusive" => "", - "transaction_failed" => "", - "unable_to_add_item" => "", - "unsuccessfully_deleted" => "", - "unsuccessfully_restored" => "", - "unsuccessfully_suspended_sale" => "", - "unsuccessfully_updated" => "", - "unsuspend" => "", - "unsuspend_and_delete" => "", - "update" => "", - "upi" => "", - "visa" => "", - "wholesale" => "", - "work_order" => "", - "work_order_number" => "", - "work_order_number_duplicate" => "", - "work_order_sent" => "", - "work_order_unsent" => "", + "customers_available_points" => "", + "rewards_package" => "", + "rewards_remaining_balance" => "", + "account_number" => "", + "add_payment" => "", + "amount_due" => "", + "amount_tendered" => "", + "authorized_signature" => "", + "cancel_sale" => "", + "cash" => "", + "cash_1" => "", + "cash_2" => "", + "cash_3" => "", + "cash_4" => "", + "cash_adjustment" => "", + "cash_deposit" => "", + "cash_filter" => "", + "change_due" => "", + "change_price" => "", + "check" => "", + "check_balance" => "", + "check_filter" => "", + "close" => "", + "comment" => "", + "comments" => "", + "company_name" => "", + "complete" => "", + "complete_sale" => "", + "confirm_cancel_sale" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "credit" => "", + "credit_deposit" => "", + "credit_filter" => "", + "current_table" => "", + "customer" => "", + "customer_address" => "", + "customer_discount" => "", + "customer_email" => "", + "customer_location" => "", + "customer_mailchimp_status" => "", + "customer_optional" => "", + "customer_required" => "", + "customer_total" => "", + "customer_total_spent" => "", + "daily_sales" => "", + "date" => "", + "date_range" => "", + "date_required" => "", + "date_type" => "", + "debit" => "", + "debit_filter" => "", + "delete" => "", + "delete_confirmation" => "", + "delete_entire_sale" => "", + "delete_successful" => "", + "delete_unsuccessful" => "", + "description_abbrv" => "", + "discard" => "", + "discard_quote" => "", + "discount" => "", + "discount_included" => "", + "discount_short" => "", + "due" => "", + "due_filter" => "", + "edit" => "", + "edit_item" => "", + "edit_sale" => "", + "email_receipt" => "", + "employee" => "", + "entry" => "", + "error_editing_item" => "", + "find_or_scan_item" => "", + "find_or_scan_item_or_receipt" => "", + "giftcard" => "", + "giftcard_balance" => "", + "giftcard_filter" => "", + "giftcard_number" => "", + "group_by_category" => "", + "group_by_type" => "", + "hsn" => "", + "id" => "", + "include_prices" => "", + "invoice" => "", + "invoice_confirm" => "", + "invoice_enable" => "", + "invoice_filter" => "", + "invoice_no_email" => "", + "invoice_number" => "", + "invoice_number_duplicate" => "", + "invoice_sent" => "", + "invoice_total" => "", + "invoice_type_custom_invoice" => "", + "invoice_type_custom_tax_invoice" => "", + "invoice_type_invoice" => "", + "invoice_type_tax_invoice" => "", + "invoice_unsent" => "", + "invoice_update" => "", + "item_insufficient_of_stock" => "", + "item_name" => "", + "item_number" => "", + "item_out_of_stock" => "", + "key_browser" => "", + "key_cancel" => "Cancels Current Quote/Invoice/Sale", + "key_customer_search" => "Customer Search", + "key_finish_quote" => "Finish Quote/Invoice witdout payment", + "key_finish_sale" => "Add Payment and Complete Invoice/Sale", + "key_full" => "", + "key_function" => "Function", + "key_help" => "Shortcuts", + "key_help_modal" => "Open Shortcuts Window", + "key_in" => "", + "key_item_search" => "Item Search", + "key_out" => "", + "key_payment" => "Add Payment", + "key_print" => "", + "key_restore" => "", + "key_search" => "", + "key_suspend" => "Suspend Current Sale", + "key_suspended" => "Show Suspended Sales", + "key_system" => "", + "key_tendered" => "Edit Amount Tendered", + "key_title" => "Sales Keyboard Shortcuts", + "mc" => "", + "mode" => "", + "must_enter_numeric" => "", + "must_enter_numeric_giftcard" => "", + "new_customer" => "", + "new_item" => "", + "no_description" => "", + "no_filter" => "", + "no_items_in_cart" => "", + "no_sales_to_display" => "", + "none_selected" => "", + "nontaxed_ind" => "", + "not_authorized" => "", + "one_or_multiple" => "", + "payment" => "", + "payment_amount" => "", + "payment_not_cover_total" => "", + "payment_type" => "", + "payments" => "", + "payments_total" => "", + "price" => "", + "print_after_sale" => "", + "quantity" => "", + "quantity_less_than_reorder_level" => "", + "quantity_less_than_zero" => "", + "quantity_of_items" => "", + "quote" => "", + "quote_number" => "", + "quote_number_duplicate" => "", + "quote_sent" => "", + "quote_unsent" => "", + "receipt" => "", + "receipt_no_email" => "", + "receipt_number" => "", + "receipt_sent" => "", + "receipt_unsent" => "", + "refund" => "", + "register" => "", + "remove_customer" => "", + "remove_discount" => "", + "return" => "", + "rewards" => "", + "rewards_balance" => "", + "sale" => "", + "sale_by_invoice" => "", + "sale_for_customer" => "", + "sale_time" => "", + "sales_tax" => "", + "sales_total" => "", + "select_customer" => "", + "send_invoice" => "", + "send_quote" => "", + "send_receipt" => "", + "send_work_order" => "", + "serial" => "", + "service_charge" => "", + "show_due" => "", + "show_invoice" => "", + "show_receipt" => "", + "start_typing_customer_name" => "", + "start_typing_item_name" => "", + "stock" => "", + "stock_location" => "", + "sub_total" => "", + "successfully_deleted" => "", + "successfully_restored" => "", + "successfully_suspended_sale" => "", + "successfully_updated" => "", + "suspend_sale" => "", + "suspended_doc_id" => "", + "suspended_sale_id" => "", + "suspended_sales" => "", + "table" => "", + "takings" => "", + "tax" => "", + "tax_id" => "", + "tax_invoice" => "", + "tax_percent" => "", + "taxed_ind" => "", + "total" => "", + "total_tax_exclusive" => "", + "transaction_failed" => "", + "unable_to_add_item" => "", + "unsuccessfully_deleted" => "", + "unsuccessfully_restored" => "", + "unsuccessfully_suspended_sale" => "", + "unsuccessfully_updated" => "", + "unsuspend" => "", + "unsuspend_and_delete" => "", + "update" => "", + "upi" => "", + "visa" => "", + "wholesale" => "", + "work_order" => "", + "work_order_number" => "", + "work_order_number_duplicate" => "", + "work_order_sent" => "", + "work_order_unsent" => "", ]; diff --git a/app/Language/hy/Suppliers.php b/app/Language/hy/Suppliers.php index f26bc2195..3a9fa4cac 100644 --- a/app/Language/hy/Suppliers.php +++ b/app/Language/hy/Suppliers.php @@ -1,24 +1,24 @@ "", - "agency_name" => "", - "cannot_be_deleted" => "", - "category" => "", - "company_name" => "", - "company_name_required" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "cost" => "", - "error_adding_updating" => "", - "goods" => "", - "new" => "", - "none_selected" => "", - "one_or_multiple" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "supplier" => "", - "supplier_id" => "", - "tax_id" => "", - "update" => "", + "account_number" => "", + "agency_name" => "", + "cannot_be_deleted" => "", + "category" => "", + "company_name" => "", + "company_name_required" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "cost" => "", + "error_adding_updating" => "", + "goods" => "", + "new" => "", + "none_selected" => "", + "one_or_multiple" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "supplier" => "", + "supplier_id" => "", + "tax_id" => "", + "update" => "", ]; diff --git a/app/Language/hy/Taxes.php b/app/Language/hy/Taxes.php index 6ae3d5b76..691ff9bb3 100644 --- a/app/Language/hy/Taxes.php +++ b/app/Language/hy/Taxes.php @@ -1,82 +1,82 @@ "", - "cascade" => "", - "cascade_sequence" => "", - "city" => "", - "code" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "default_tax_category" => "", - "default_tax_rate" => "", - "error_adding_updating" => "", - "group_seq" => "", - "jurisdiction_name" => "", - "name" => "", - "new" => "", - "no_taxes" => "", - "no_taxes_to_display" => "", - "reporting_authority" => "", - "round_half_down" => "", - "round_half_even" => "", - "round_half_odd" => "", - "round_half_up" => "", - "rounding_code" => "", - "sales_tax" => "", - "sales_tax_by_invoice" => "", - "sequence" => "", - "state" => "", - "successful_deleted" => "", - "tax_categories" => "", - "tax_categories_configuration" => "", - "tax_categories_saved_successfully" => "", - "tax_categories_saved_unsuccessfully" => "", - "tax_category" => "", - "tax_category_code" => "", - "tax_category_duplicate" => "", - "tax_category_invalid_chars" => "", - "tax_category_name" => "", - "tax_category_new" => "", - "tax_category_required" => "", - "tax_code" => "", - "tax_code_cannot_be_deleted" => "", - "tax_code_duplicate" => "", - "tax_code_invalid_chars" => "", - "tax_code_name" => "", - "tax_code_required" => "", - "tax_code_successful_deleted" => "", - "tax_code_successful_updated" => "", - "tax_code_successful_updating" => "", - "tax_code_successfully_added" => "", - "tax_code_type" => "", - "tax_codes" => "", - "tax_codes_configuration" => "", - "tax_codes_saved_successfully" => "", - "tax_codes_saved_unsuccessfully" => "", - "tax_excluded" => "", - "tax_group" => "", - "tax_group_not_unique" => "", - "tax_group_sequence" => "", - "tax_included" => "", - "tax_jurisdiction" => "", - "tax_jurisdiction_duplicate" => "", - "tax_jurisdiction_invalid_chars" => "", - "tax_jurisdiction_required" => "", - "tax_jurisdictions" => "", - "tax_jurisdictions_configuration" => "", - "tax_jurisdictions_saved_successfully" => "", - "tax_jurisdictions_saved_unsuccessfully" => "", - "tax_rate" => "", - "tax_rate_configuration" => "", - "tax_rate_error_adding_updating" => "", - "tax_rate_numeric" => "", - "tax_rate_required" => "", - "tax_rate_successful_updated" => "", - "tax_rate_successfully_added" => "", - "tax_rates" => "", - "tax_rates_configuration" => "", - "tax_rounding" => "", - "tax_type" => "", - "update" => "", - "vat_tax" => "", + "add_exception" => "", + "cascade" => "", + "cascade_sequence" => "", + "city" => "", + "code" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "default_tax_category" => "", + "default_tax_rate" => "", + "error_adding_updating" => "", + "group_seq" => "", + "jurisdiction_name" => "", + "name" => "", + "new" => "", + "no_taxes" => "", + "no_taxes_to_display" => "", + "reporting_authority" => "", + "round_half_down" => "", + "round_half_even" => "", + "round_half_odd" => "", + "round_half_up" => "", + "rounding_code" => "", + "sales_tax" => "", + "sales_tax_by_invoice" => "", + "sequence" => "", + "state" => "", + "successful_deleted" => "", + "tax_categories" => "", + "tax_categories_configuration" => "", + "tax_categories_saved_successfully" => "", + "tax_categories_saved_unsuccessfully" => "", + "tax_category" => "", + "tax_category_code" => "", + "tax_category_duplicate" => "", + "tax_category_invalid_chars" => "", + "tax_category_name" => "", + "tax_category_new" => "", + "tax_category_required" => "", + "tax_code" => "", + "tax_code_cannot_be_deleted" => "", + "tax_code_duplicate" => "", + "tax_code_invalid_chars" => "", + "tax_code_name" => "", + "tax_code_required" => "", + "tax_code_successful_deleted" => "", + "tax_code_successful_updated" => "", + "tax_code_successful_updating" => "", + "tax_code_successfully_added" => "", + "tax_code_type" => "", + "tax_codes" => "", + "tax_codes_configuration" => "", + "tax_codes_saved_successfully" => "", + "tax_codes_saved_unsuccessfully" => "", + "tax_excluded" => "", + "tax_group" => "", + "tax_group_not_unique" => "", + "tax_group_sequence" => "", + "tax_included" => "", + "tax_jurisdiction" => "", + "tax_jurisdiction_duplicate" => "", + "tax_jurisdiction_invalid_chars" => "", + "tax_jurisdiction_required" => "", + "tax_jurisdictions" => "", + "tax_jurisdictions_configuration" => "", + "tax_jurisdictions_saved_successfully" => "", + "tax_jurisdictions_saved_unsuccessfully" => "", + "tax_rate" => "", + "tax_rate_configuration" => "", + "tax_rate_error_adding_updating" => "", + "tax_rate_numeric" => "", + "tax_rate_required" => "", + "tax_rate_successful_updated" => "", + "tax_rate_successfully_added" => "", + "tax_rates" => "", + "tax_rates_configuration" => "", + "tax_rounding" => "", + "tax_type" => "", + "update" => "", + "vat_tax" => "", ]; diff --git a/app/Language/id/Attributes.php b/app/Language/id/Attributes.php index 5bc73802f..793a106e5 100644 --- a/app/Language/id/Attributes.php +++ b/app/Language/id/Attributes.php @@ -1,32 +1,32 @@ "Nilai Atribut tidak boleh mengandung karakter '_' atau '|'", - "confirm_delete" => "Apakah Anda yakin ingin menghapus atribut tersebut?", - "confirm_restore" => "Apakah Anda yakin ingin mengembalikan atribut tersebut?", - "definition_cannot_be_deleted" => "Tidak bisa menghapus atribut terpilih", - "definition_error_adding_updating" => "Atribut {0} tidak dapat ditambah atau diperbaharui. Silahkan periksa log kesalahan.", - "definition_flags" => "Visibilitas Atribut", - "definition_group" => "Grup", - "definition_id" => "Nomor Id", - "definition_name" => "Tambah Atribut", - "definition_name_required" => "Nama atribut harus diisi", - "definition_one_or_multiple" => "atribut", - "definition_successful_adding" => "Anda telah berhasil menambahkan atribut", - "definition_successful_deleted" => "Anda telah berhasil menghapus", - "definition_successful_updating" => "Anda telah berhasil memperbaharui atribut", - "definition_type" => "Tipe Atribut", - "definition_type_required" => "Tipe Atribut harus diisi", - "definition_unit" => "Satuan Ukuran", - "definition_values" => "Nilai Atribut", - "new" => "Atribut baru", - "no_attributes_to_display" => "Tidak ada Item yang dapat ditampilkan", - "receipt_visibility" => "Struk", - "show_in_items" => "Tampilkan dalam item", - "show_in_items_visibility" => "Item", - "show_in_receipt" => "Tampilkan dalam struk", - "show_in_receivings" => "Tampilkan dalam penerimaan", - "show_in_receivings_visibility" => "Penerimaan", - "show_in_sales" => "Tampilkan dalam penjualan", - "show_in_sales_visibility" => "Penjualan", - "update" => "Perbarui Atribut", + "attribute_value_invalid_chars" => "Nilai Atribut tidak boleh mengandung karakter '_' atau '|'", + "confirm_delete" => "Apakah Anda yakin ingin menghapus atribut tersebut?", + "confirm_restore" => "Apakah Anda yakin ingin mengembalikan atribut tersebut?", + "definition_cannot_be_deleted" => "Tidak bisa menghapus atribut terpilih", + "definition_error_adding_updating" => "Atribut {0} tidak dapat ditambah atau diperbaharui. Silahkan periksa log kesalahan.", + "definition_flags" => "Visibilitas Atribut", + "definition_group" => "Grup", + "definition_id" => "Nomor Id", + "definition_name" => "Tambah Atribut", + "definition_name_required" => "Nama atribut harus diisi", + "definition_one_or_multiple" => "atribut", + "definition_successful_adding" => "Anda telah berhasil menambahkan atribut", + "definition_successful_deleted" => "Anda telah berhasil menghapus", + "definition_successful_updating" => "Anda telah berhasil memperbaharui atribut", + "definition_type" => "Tipe Atribut", + "definition_type_required" => "Tipe Atribut harus diisi", + "definition_unit" => "Satuan Ukuran", + "definition_values" => "Nilai Atribut", + "new" => "Atribut baru", + "no_attributes_to_display" => "Tidak ada Item yang dapat ditampilkan", + "receipt_visibility" => "Struk", + "show_in_items" => "Tampilkan dalam item", + "show_in_items_visibility" => "Item", + "show_in_receipt" => "Tampilkan dalam struk", + "show_in_receivings" => "Tampilkan dalam penerimaan", + "show_in_receivings_visibility" => "Penerimaan", + "show_in_sales" => "Tampilkan dalam penjualan", + "show_in_sales_visibility" => "Penjualan", + "update" => "Perbarui Atribut", ]; diff --git a/app/Language/id/Bootstrap_tables.php b/app/Language/id/Bootstrap_tables.php index 189b81bb4..68b1b215f 100644 --- a/app/Language/id/Bootstrap_tables.php +++ b/app/Language/id/Bootstrap_tables.php @@ -1,11 +1,11 @@ "semua", - "columns" => "Kolom", - "hide_show_pagination" => "Sembunyikan/Tampilkan paginasi", - "loading" => "Memuat, tunggu ...", - "page_from_to" => "Menampilkan {0} sampai {1} dari {2} baris", - "refresh" => "Segarkan", - "rows_per_page" => "{0} baris per halaman", - "toggle" => "Beralih", + "all" => "semua", + "columns" => "Kolom", + "hide_show_pagination" => "Sembunyikan/Tampilkan paginasi", + "loading" => "Memuat, tunggu ...", + "page_from_to" => "Menampilkan {0} sampai {1} dari {2} baris", + "refresh" => "Segarkan", + "rows_per_page" => "{0} baris per halaman", + "toggle" => "Beralih", ]; diff --git a/app/Language/id/Calendar.php b/app/Language/id/Calendar.php index ce45781ad..ff82e1757 100644 --- a/app/Language/id/Calendar.php +++ b/app/Language/id/Calendar.php @@ -1,48 +1,48 @@ "Mg", - "mo" => "Sn", - "tu" => "Sl", - "we" => "Rb", - "th" => "Km", - "fr" => "Jm", - "sa" => "Sb", - "sun" => "Min", - "mon" => "Sen", - "tue" => "Sel", - "wed" => "Rab", - "thu" => "Kam", - "fri" => "Jum", - "sat" => "Sab", - "sunday" => "Minggu", - "monday" => "Senin", - "tuesday" => "Selasa", - "wednesday" => "Rabu", - "thursday" => "Kamis", - "friday" => "Jumat", - "saturday" => "Sabtu", - "jan" => "Jan", - "feb" => "Feb", - "mar" => "Mar", - "apr" => "Apr", - "may" => "Mei", - "jun" => "Jun", - "jul" => "Jul", - "aug" => "Agu", - "sep" => "Sep", - "oct" => "Okt", - "nov" => "Nov", - "dec" => "Des", - "january" => "Januari", - "february" => "Februari", - "march" => "Maret", - "april" => "April", - "mayl" => "Mei", - "june" => "Juni", - "july" => "Juli", - "august" => "Agustus", - "september" => "September", - "october" => "Oktober", - "november" => "November", - "december" => "Desember", + "su" => "Mg", + "mo" => "Sn", + "tu" => "Sl", + "we" => "Rb", + "th" => "Km", + "fr" => "Jm", + "sa" => "Sb", + "sun" => "Min", + "mon" => "Sen", + "tue" => "Sel", + "wed" => "Rab", + "thu" => "Kam", + "fri" => "Jum", + "sat" => "Sab", + "sunday" => "Minggu", + "monday" => "Senin", + "tuesday" => "Selasa", + "wednesday" => "Rabu", + "thursday" => "Kamis", + "friday" => "Jumat", + "saturday" => "Sabtu", + "jan" => "Jan", + "feb" => "Feb", + "mar" => "Mar", + "apr" => "Apr", + "may" => "Mei", + "jun" => "Jun", + "jul" => "Jul", + "aug" => "Agu", + "sep" => "Sep", + "oct" => "Okt", + "nov" => "Nov", + "dec" => "Des", + "january" => "Januari", + "february" => "Februari", + "march" => "Maret", + "april" => "April", + "mayl" => "Mei", + "june" => "Juni", + "july" => "Juli", + "august" => "Agustus", + "september" => "September", + "october" => "Oktober", + "november" => "November", + "december" => "Desember", ]; diff --git a/app/Language/id/Cashups.php b/app/Language/id/Cashups.php index e4bcd196c..dca42a288 100644 --- a/app/Language/id/Cashups.php +++ b/app/Language/id/Cashups.php @@ -1,49 +1,49 @@ "Jumlah", - "amount_number" => "Jumlah harus berupa angka", - "amount_required" => "Jumlah harus diisi.", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "Kasir tidak dapat dihapus", - "cash_difference" => "", - "close_date" => "Tutup Tanggal", - "close_employee" => "Ditutup Oleh", - "closed_amount_card" => "Kartu", - "closed_amount_cash" => "Uang Ditutup", - "closed_amount_check" => "Cek", - "closed_amount_due" => "Iuran", - "closed_amount_giftcard" => "", - "closed_amount_total" => "Total", - "closed_date" => "Tanggal Tutup", - "confirm_delete" => "Apakah anda yakin ingin menghapus Kasir yang dipilih?", - "confirm_restore" => "Apakah Anda yakin ingin memulihkan Kasir yang dipilih?", - "confirm_submit" => "", - "date_number" => "Tanggal harus berupa angka", - "date_required" => "Tanggal harus diisi", - "description" => "Deskripsi", - "enable_expected" => "", - "error_adding_updating" => "Galat ketika menambahkan/perbarui Kasir", - "giftcard" => "", - "id" => "ID", - "info" => "Info", - "info_employee" => "", - "is_deleted" => "Dihapus", - "new" => "Kasir Baru", - "no_cashups_to_display" => "Tidak ada Kasir yang ditampilkan", - "none_selected" => "Anda tidak memilih Kasir manapun", - "note" => "Catatan", - "one_or_multiple" => "Kasir", - "open_amount_cash" => "Buka Kasir", - "open_date" => "Tanggal Buka", - "open_employee" => "Dibuka oleh", - "opened_date" => "Tanggal Dibuka", - "successful_adding" => "Kasir berhasil ditambahkan", - "successful_deleted" => "Kasir berhasil dihapus", - "successful_updating" => "Kasir berhasil diperbaharui", - "total" => "Total", - "transfer_amount_cash" => "Kas Masuk/Keluar", - "transfer_amount_cash_minus" => "", - "update" => "Perbaharui Kasir", - "warning" => "", + "amount" => "Jumlah", + "amount_number" => "Jumlah harus berupa angka", + "amount_required" => "Jumlah harus diisi.", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "Kasir tidak dapat dihapus", + "cash_difference" => "", + "close_date" => "Tutup Tanggal", + "close_employee" => "Ditutup Oleh", + "closed_amount_card" => "Kartu", + "closed_amount_cash" => "Uang Ditutup", + "closed_amount_check" => "Cek", + "closed_amount_due" => "Iuran", + "closed_amount_giftcard" => "", + "closed_amount_total" => "Total", + "closed_date" => "Tanggal Tutup", + "confirm_delete" => "Apakah anda yakin ingin menghapus Kasir yang dipilih?", + "confirm_restore" => "Apakah Anda yakin ingin memulihkan Kasir yang dipilih?", + "confirm_submit" => "", + "date_number" => "Tanggal harus berupa angka", + "date_required" => "Tanggal harus diisi", + "description" => "Deskripsi", + "enable_expected" => "", + "error_adding_updating" => "Galat ketika menambahkan/perbarui Kasir", + "giftcard" => "", + "id" => "ID", + "info" => "Info", + "info_employee" => "", + "is_deleted" => "Dihapus", + "new" => "Kasir Baru", + "no_cashups_to_display" => "Tidak ada Kasir yang ditampilkan", + "none_selected" => "Anda tidak memilih Kasir manapun", + "note" => "Catatan", + "one_or_multiple" => "Kasir", + "open_amount_cash" => "Buka Kasir", + "open_date" => "Tanggal Buka", + "open_employee" => "Dibuka oleh", + "opened_date" => "Tanggal Dibuka", + "successful_adding" => "Kasir berhasil ditambahkan", + "successful_deleted" => "Kasir berhasil dihapus", + "successful_updating" => "Kasir berhasil diperbaharui", + "total" => "Total", + "transfer_amount_cash" => "Kas Masuk/Keluar", + "transfer_amount_cash_minus" => "", + "update" => "Perbaharui Kasir", + "warning" => "", ]; diff --git a/app/Language/id/Datepicker.php b/app/Language/id/Datepicker.php index 7ad592a4c..c892a3856 100644 --- a/app/Language/id/Datepicker.php +++ b/app/Language/id/Datepicker.php @@ -1,23 +1,23 @@ "Semua Waktu", - "apply" => "Terapkan", - "cancel" => "Batal", - "custom" => "Kustom", - "from" => "Dari", - "last_30" => "30 Hari Terakhir", - "last_7" => "7 Hari Terakhir", - "last_financial_year" => "Tahun Fiskal Terakhir", - "last_month" => "Bulan lalu", - "last_year" => "Tahun lalu", - "same_month_last_year" => "Bulan yang sama tahun kemarin", - "same_month_to_same_day_last_year" => "Bulan yang sama untuk hari yang sama tahun yang lalu", - "this_financial_year" => "Tahun Fiskal Saat Ini", - "this_month" => "Bulan ini", - "this_year" => "Tahun ini", - "to" => "sampai", - "today" => "Hari ini", - "today_last_year" => "Hari ini tahun kemarin", - "weekstart" => "0", - "yesterday" => "Kemarin", + "all_time" => "Semua Waktu", + "apply" => "Terapkan", + "cancel" => "Batal", + "custom" => "Kustom", + "from" => "Dari", + "last_30" => "30 Hari Terakhir", + "last_7" => "7 Hari Terakhir", + "last_financial_year" => "Tahun Fiskal Terakhir", + "last_month" => "Bulan lalu", + "last_year" => "Tahun lalu", + "same_month_last_year" => "Bulan yang sama tahun kemarin", + "same_month_to_same_day_last_year" => "Bulan yang sama untuk hari yang sama tahun yang lalu", + "this_financial_year" => "Tahun Fiskal Saat Ini", + "this_month" => "Bulan ini", + "this_year" => "Tahun ini", + "to" => "sampai", + "today" => "Hari ini", + "today_last_year" => "Hari ini tahun kemarin", + "weekstart" => "0", + "yesterday" => "Kemarin", ]; diff --git a/app/Language/id/Enum.php b/app/Language/id/Enum.php index 1b39445bd..5467ddd13 100644 --- a/app/Language/id/Enum.php +++ b/app/Language/id/Enum.php @@ -1,10 +1,10 @@ "Turun Setengah", - "half_even" => "Setengah Genap", - "half_five" => "setengah Lima", - "half_odd" => "Setengah ganjil", - "half_up" => "Setengah", - "round_down" => "Bulatkan ke bawah", - "round_up" => "Bulatkan ke atas", + "half_down" => "Turun Setengah", + "half_even" => "Setengah Genap", + "half_five" => "setengah Lima", + "half_odd" => "Setengah ganjil", + "half_up" => "Setengah", + "round_down" => "Bulatkan ke bawah", + "round_up" => "Bulatkan ke atas", ]; diff --git a/app/Language/id/Error.php b/app/Language/id/Error.php index 378e9a850..9dd219173 100644 --- a/app/Language/id/Error.php +++ b/app/Language/id/Error.php @@ -1,5 +1,5 @@ "Anda tidak memiliki izin untuk mengakses modul ini", - "unknown" => "tidak dikenal", + "no_permission_module" => "Anda tidak memiliki izin untuk mengakses modul ini", + "unknown" => "tidak dikenal", ]; diff --git a/app/Language/id/Expenses.php b/app/Language/id/Expenses.php index 1bb026a3d..fc229876e 100644 --- a/app/Language/id/Expenses.php +++ b/app/Language/id/Expenses.php @@ -1,50 +1,50 @@ "Tambahkan Biaya", - "amount" => "Jumlah", - "amount_number" => "Jumlah harus berupa angka", - "amount_required" => "Jumlah Biaya harus diisi", - "by_category" => "Kategori", - "cannot_be_deleted" => "Tidak dapat menghapus Kategori Biaya", - "cash" => "Tunai", - "cash_filter" => "Tunai", - "categories_name" => "Kategori", - "category_required" => "Kategori harus diisi", - "check" => "Cek", - "check_filter" => "Cek", - "confirm_delete" => "Apakah Anda yakin ingin menghapus Biaya tersebut?", - "confirm_restore" => "Apakah Anda yakin ingin mengembalikan Biaya tersebut?", - "credit" => "Kartu Kredit", - "credit_filter" => "Kartu Kredit", - "date" => "Tanggal", - "date_number" => "Tanggal harus berupa angka", - "date_required" => "Tanggal harus diisi", - "debit" => "Kartu Debit", - "debit_filter" => "Kartu Debit", - "description" => "Deskripsi", - "due" => "Jatuh Tempo", - "due_filter" => "Jatuh Tempo", - "employee" => "Dibuat oleh", - "error_adding_updating" => "Terjadi kesalahan dalam menambahkan/ memperbaharui Biaya", - "expense_id" => "Nomor", - "expenses_employee" => "Karyawan", - "info" => "Info Biaya", - "ip_address" => "", - "is_deleted" => "Dihapus", - "name_required" => "Nama Biaya harus diisi", - "new" => "Biaya baru", - "new_supplier" => "", - "no_expenses_to_display" => "Tidak ada Biaya yang ditampilkan", - "none_selected" => "Tidak ada Biaya yang dipilih", - "one_or_multiple" => "Biaya", - "payment" => "Jenis Pembayaran", - "start_typing_supplier_name" => "Ketik nama pemasok...", - "successful_adding" => "Baiaya berhasil ditambahkan", - "successful_deleted" => "Biaya berhasil dihapus", - "successful_updating" => "Biaya berhasil diperbarui", - "supplier_name" => "Pemasok", - "supplier_tax_code" => "Kode Pajak", - "tax_amount" => "Pajak", - "tax_amount_number" => "", - "update" => "Perbarui Biaya", + "add_item" => "Tambahkan Biaya", + "amount" => "Jumlah", + "amount_number" => "Jumlah harus berupa angka", + "amount_required" => "Jumlah Biaya harus diisi", + "by_category" => "Kategori", + "cannot_be_deleted" => "Tidak dapat menghapus Kategori Biaya", + "cash" => "Tunai", + "cash_filter" => "Tunai", + "categories_name" => "Kategori", + "category_required" => "Kategori harus diisi", + "check" => "Cek", + "check_filter" => "Cek", + "confirm_delete" => "Apakah Anda yakin ingin menghapus Biaya tersebut?", + "confirm_restore" => "Apakah Anda yakin ingin mengembalikan Biaya tersebut?", + "credit" => "Kartu Kredit", + "credit_filter" => "Kartu Kredit", + "date" => "Tanggal", + "date_number" => "Tanggal harus berupa angka", + "date_required" => "Tanggal harus diisi", + "debit" => "Kartu Debit", + "debit_filter" => "Kartu Debit", + "description" => "Deskripsi", + "due" => "Jatuh Tempo", + "due_filter" => "Jatuh Tempo", + "employee" => "Dibuat oleh", + "error_adding_updating" => "Terjadi kesalahan dalam menambahkan/ memperbaharui Biaya", + "expense_id" => "Nomor", + "expenses_employee" => "Karyawan", + "info" => "Info Biaya", + "ip_address" => "", + "is_deleted" => "Dihapus", + "name_required" => "Nama Biaya harus diisi", + "new" => "Biaya baru", + "new_supplier" => "", + "no_expenses_to_display" => "Tidak ada Biaya yang ditampilkan", + "none_selected" => "Tidak ada Biaya yang dipilih", + "one_or_multiple" => "Biaya", + "payment" => "Jenis Pembayaran", + "start_typing_supplier_name" => "Ketik nama pemasok...", + "successful_adding" => "Baiaya berhasil ditambahkan", + "successful_deleted" => "Biaya berhasil dihapus", + "successful_updating" => "Biaya berhasil diperbarui", + "supplier_name" => "Pemasok", + "supplier_tax_code" => "Kode Pajak", + "tax_amount" => "Pajak", + "tax_amount_number" => "", + "update" => "Perbarui Biaya", ]; diff --git a/app/Language/id/Expenses_categories.php b/app/Language/id/Expenses_categories.php index 06cc4affb..7407b0976 100644 --- a/app/Language/id/Expenses_categories.php +++ b/app/Language/id/Expenses_categories.php @@ -1,22 +1,22 @@ "Nama Kategori Biaya harus diisi", - "add_item" => "Tambah Kategori", - "cannot_be_deleted" => "Tidak dapat menghapus Kategori Biaya", - "category_id" => "ID", - "confirm_delete" => "Anda yakin ingin menghapus Kategori Biaya terpilih?", - "confirm_restore" => "Apakah Anda yakin ingin mengembalikan Kategori Biaya yang dipilih?", - "description" => "Deskripsi Kategori", - "error_adding_updating" => "Galat menambah / memperbaharui Kategori Biaya", - "info" => "Info Kategori Biaya", - "name" => "Nama Kategori", - "new" => "Kategori Baru", - "no_expenses_categories_to_display" => "Belum ada Kategori yang dapat ditampilkan", - "none_selected" => "Anda belum memilih Kategori Biaya", - "one_or_multiple" => "Kategori Biaya", - "quantity" => "Kuantitas", - "successful_adding" => "Berhasil menambahkan Kategori Biaya", - "successful_deleted" => "Berhasil menghapus Kategori Biaya", - "successful_updating" => "Berhasil memperbaharui Kategori Biaya", - "update" => "Perbaharui Kategori", + "category_name_required" => "Nama Kategori Biaya harus diisi", + "add_item" => "Tambah Kategori", + "cannot_be_deleted" => "Tidak dapat menghapus Kategori Biaya", + "category_id" => "ID", + "confirm_delete" => "Anda yakin ingin menghapus Kategori Biaya terpilih?", + "confirm_restore" => "Apakah Anda yakin ingin mengembalikan Kategori Biaya yang dipilih?", + "description" => "Deskripsi Kategori", + "error_adding_updating" => "Galat menambah / memperbaharui Kategori Biaya", + "info" => "Info Kategori Biaya", + "name" => "Nama Kategori", + "new" => "Kategori Baru", + "no_expenses_categories_to_display" => "Belum ada Kategori yang dapat ditampilkan", + "none_selected" => "Anda belum memilih Kategori Biaya", + "one_or_multiple" => "Kategori Biaya", + "quantity" => "Kuantitas", + "successful_adding" => "Berhasil menambahkan Kategori Biaya", + "successful_deleted" => "Berhasil menghapus Kategori Biaya", + "successful_updating" => "Berhasil memperbaharui Kategori Biaya", + "update" => "Perbaharui Kategori", ]; diff --git a/app/Language/id/Messages.php b/app/Language/id/Messages.php index cd01f08cf..613f9740d 100644 --- a/app/Language/id/Messages.php +++ b/app/Language/id/Messages.php @@ -1,15 +1,15 @@ "Nama Depan", - "last_name" => "Nama Belakang", - "message" => "Pesan", - "message_placeholder" => "Pesan Anda di sini ...", - "message_required" => "Pesan dibutuhkan", - "multiple_phones" => "(jika penerima banyak, masukkan nomor hp dipisahkan dengan koma)", - "phone" => "No. telepon", - "phone_number_required" => "No. telepon dibutuhkan", - "phone_placeholder" => "Masukkan no. telepon disini...", - "sms_send" => "Kirim SMS", - "successfully_sent" => "Pesan berhasil dikirim ke: ", - "unsuccessfully_sent" => "Pesan gagal dikirim ke: ", + "first_name" => "Nama Depan", + "last_name" => "Nama Belakang", + "message" => "Pesan", + "message_placeholder" => "Pesan Anda di sini ...", + "message_required" => "Pesan dibutuhkan", + "multiple_phones" => "(jika penerima banyak, masukkan nomor hp dipisahkan dengan koma)", + "phone" => "No. telepon", + "phone_number_required" => "No. telepon dibutuhkan", + "phone_placeholder" => "Masukkan no. telepon disini...", + "sms_send" => "Kirim SMS", + "successfully_sent" => "Pesan berhasil dikirim ke: ", + "unsuccessfully_sent" => "Pesan gagal dikirim ke: ", ]; diff --git a/app/Language/id/Module.php b/app/Language/id/Module.php index 6151d4dba..1188a816d 100644 --- a/app/Language/id/Module.php +++ b/app/Language/id/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "Atribut", - "attributes_desc" => "Tambah, Perbaharui, Hapus dan Cari atribut.", - "both" => "Keduanya", - "cashups" => "Kasir", - "cashups_desc" => "Tambah, Perbaharui, Hapus dan Cari Uang Tunai.", - "config" => "Konfigurasi", - "config_desc" => "Ubah Konfigurasi Toko.", - "customers" => "Pelanggan", - "customers_desc" => "Tambah, ubah, hapus, dan cari Pelanggan.", - "employees" => "Karyawan", - "employees_desc" => "Tambah, ubah, hapus, dan cari Karyawan.", - "expenses" => "Biaya", - "expenses_categories" => "Kategori Biaya", - "expenses_categories_desc" => "Tambah, Edit, dan Hapus Kategori Biaya.", - "expenses_desc" => "Tambah, ubah, hapus, dan cari Biaya.", - "giftcards" => "Gift Card", - "giftcards_desc" => "Tambah, ubah, hapus dan cari Gift Card.", - "home" => "Beranda", - "home_desc" => "Daftar modul menu Beranda.", - "item_kits" => "Item Paket", - "item_kits_desc" => "Tambah, ubah, hapus, dan cari Item Paket.", - "items" => "Item Barang", - "items_desc" => "Tambah, ubah, hapus, dan cari Item.", - "messages" => "Messages", - "messages_desc" => "Kirim pesan pada Pelanggan, Pemasok, dan Karyawan.", - "migrate" => "Migrasi", - "migrate_desc" => "Perbaharui basis data OSPOS.", - "office" => "Kantor", - "office_desc" => "Daftar modul menu Kantor.", - "receivings" => "Penerimaan", - "receivings_desc" => "Proses Pesanan Pembelian.", - "reports" => "Laporan", - "reports_desc" => "Lihat dan Cetak Laporan.", - "sales" => "Penjualan", - "sales_desc" => "Proses Penjualan dan Retur.", - "suppliers" => "Pemasok", - "suppliers_desc" => "Tambah, ubah, hapus dan cari Pemasok.", - "taxes" => "Pajak", - "taxes_desc" => "Konfigurasi Pajak Penjualan.", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "Atribut", + "attributes_desc" => "Tambah, Perbaharui, Hapus dan Cari atribut.", + "both" => "Keduanya", + "cashups" => "Kasir", + "cashups_desc" => "Tambah, Perbaharui, Hapus dan Cari Uang Tunai.", + "config" => "Konfigurasi", + "config_desc" => "Ubah Konfigurasi Toko.", + "customers" => "Pelanggan", + "customers_desc" => "Tambah, ubah, hapus, dan cari Pelanggan.", + "employees" => "Karyawan", + "employees_desc" => "Tambah, ubah, hapus, dan cari Karyawan.", + "expenses" => "Biaya", + "expenses_categories" => "Kategori Biaya", + "expenses_categories_desc" => "Tambah, Edit, dan Hapus Kategori Biaya.", + "expenses_desc" => "Tambah, ubah, hapus, dan cari Biaya.", + "giftcards" => "Gift Card", + "giftcards_desc" => "Tambah, ubah, hapus dan cari Gift Card.", + "home" => "Beranda", + "home_desc" => "Daftar modul menu Beranda.", + "item_kits" => "Item Paket", + "item_kits_desc" => "Tambah, ubah, hapus, dan cari Item Paket.", + "items" => "Item Barang", + "items_desc" => "Tambah, ubah, hapus, dan cari Item.", + "messages" => "Messages", + "messages_desc" => "Kirim pesan pada Pelanggan, Pemasok, dan Karyawan.", + "migrate" => "Migrasi", + "migrate_desc" => "Perbaharui basis data OSPOS.", + "office" => "Kantor", + "office_desc" => "Daftar modul menu Kantor.", + "receivings" => "Penerimaan", + "receivings_desc" => "Proses Pesanan Pembelian.", + "reports" => "Laporan", + "reports_desc" => "Lihat dan Cetak Laporan.", + "sales" => "Penjualan", + "sales_desc" => "Proses Penjualan dan Retur.", + "suppliers" => "Pemasok", + "suppliers_desc" => "Tambah, ubah, hapus dan cari Pemasok.", + "taxes" => "Pajak", + "taxes_desc" => "Konfigurasi Pajak Penjualan.", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/id/index.html b/app/Language/id/index.html index dc4326f97..0791187f4 100644 --- a/app/Language/id/index.html +++ b/app/Language/id/index.html @@ -1,11 +1,11 @@ - 403 Dilarang + 403 Dilarang

    Akses direktori dilarang.

    - \ No newline at end of file + diff --git a/app/Language/it/Attributes.php b/app/Language/it/Attributes.php index 9705b0ef2..1d08e72df 100644 --- a/app/Language/it/Attributes.php +++ b/app/Language/it/Attributes.php @@ -1,32 +1,32 @@ "Il valore dell'attributo non può contenere '_' o '|'", - "confirm_delete" => "Sei sicuro di voler eliminare gli attributi selezionati?", - "confirm_restore" => "Sei sicuro di voler ripristinare l'attributo selezionato?", - "definition_cannot_be_deleted" => "Non riesco a cancellare l'attributo selezionato", - "definition_error_adding_updating" => "Impossibile aggiungere o aggiornare l'attributo {0}. Si prega di controllare il registro degli errori.", - "definition_flags" => "Visibilità attributo", - "definition_group" => "Gruppo", - "definition_id" => "Id", - "definition_name" => "Aggiungi attributo", - "definition_name_required" => "Nome attributo è richiesto", - "definition_one_or_multiple" => "attributo(i)", - "definition_successful_adding" => "Hai aggiunto il prodotto con successo", - "definition_successful_deleted" => "Cancellato con successo", - "definition_successful_updating" => "Hai aggiornato correttamente l'attributo", - "definition_type" => "Tipo di attributo", - "definition_type_required" => "Il tipo di attribuito è richiesto", - "definition_unit" => "Unità di misura", - "definition_values" => "Valore attributo", - "new" => "Nuovo attributo", - "no_attributes_to_display" => "Nessun elemento da visualizzare", - "receipt_visibility" => "Scontrino", - "show_in_items" => "Visualizza in articoli", - "show_in_items_visibility" => "Articoli", - "show_in_receipt" => "Mostra in ricevuta", - "show_in_receivings" => "Mostra negli incassi", - "show_in_receivings_visibility" => "Ricezione", - "show_in_sales" => "Visualizza in vendite", - "show_in_sales_visibility" => "Vendite", - "update" => "Aggiorna attributo", + "attribute_value_invalid_chars" => "Il valore dell'attributo non può contenere '_' o '|'", + "confirm_delete" => "Sei sicuro di voler eliminare gli attributi selezionati?", + "confirm_restore" => "Sei sicuro di voler ripristinare l'attributo selezionato?", + "definition_cannot_be_deleted" => "Non riesco a cancellare l'attributo selezionato", + "definition_error_adding_updating" => "Impossibile aggiungere o aggiornare l'attributo {0}. Si prega di controllare il registro degli errori.", + "definition_flags" => "Visibilità attributo", + "definition_group" => "Gruppo", + "definition_id" => "Id", + "definition_name" => "Aggiungi attributo", + "definition_name_required" => "Nome attributo è richiesto", + "definition_one_or_multiple" => "attributo(i)", + "definition_successful_adding" => "Hai aggiunto il prodotto con successo", + "definition_successful_deleted" => "Cancellato con successo", + "definition_successful_updating" => "Hai aggiornato correttamente l'attributo", + "definition_type" => "Tipo di attributo", + "definition_type_required" => "Il tipo di attribuito è richiesto", + "definition_unit" => "Unità di misura", + "definition_values" => "Valore attributo", + "new" => "Nuovo attributo", + "no_attributes_to_display" => "Nessun elemento da visualizzare", + "receipt_visibility" => "Scontrino", + "show_in_items" => "Visualizza in articoli", + "show_in_items_visibility" => "Articoli", + "show_in_receipt" => "Mostra in ricevuta", + "show_in_receivings" => "Mostra negli incassi", + "show_in_receivings_visibility" => "Ricezione", + "show_in_sales" => "Visualizza in vendite", + "show_in_sales_visibility" => "Vendite", + "update" => "Aggiorna attributo", ]; diff --git a/app/Language/it/Bootstrap_tables.php b/app/Language/it/Bootstrap_tables.php index 3b51af501..35e489424 100644 --- a/app/Language/it/Bootstrap_tables.php +++ b/app/Language/it/Bootstrap_tables.php @@ -1,11 +1,11 @@ "Tutte", - "columns" => "Colonne", - "hide_show_pagination" => "Nascondi/mostra paginazione", - "loading" => "Caricamento, attendere prego...", - "page_from_to" => "Mostro {0} a {1} di {2} righe", - "refresh" => "Ricarica", - "rows_per_page" => "{0} righe per pagina", - "toggle" => "Inverti", + "all" => "Tutte", + "columns" => "Colonne", + "hide_show_pagination" => "Nascondi/mostra paginazione", + "loading" => "Caricamento, attendere prego...", + "page_from_to" => "Mostro {0} a {1} di {2} righe", + "refresh" => "Ricarica", + "rows_per_page" => "{0} righe per pagina", + "toggle" => "Inverti", ]; diff --git a/app/Language/it/Calendar.php b/app/Language/it/Calendar.php index 02dc58c61..4fb2309ef 100644 --- a/app/Language/it/Calendar.php +++ b/app/Language/it/Calendar.php @@ -1,48 +1,48 @@ "Do", - "mo" => "Lu", - "tu" => "Ma", - "we" => "Me", - "th" => "Gi", - "fr" => "Ve", - "sa" => "Sa", - "sun" => "Dom", - "mon" => "Lun", - "tue" => "Mar", - "wed" => "Mer", - "thu" => "Gio", - "fri" => "Ven", - "sat" => "Dom", - "sunday" => "Domenica", - "monday" => "Lunedì", - "tuesday" => "Martedì", - "wednesday" => "Mercoledì", - "thursday" => "Giovedì", - "friday" => "Venerdì", - "saturday" => "Sabato", - "jan" => "Gen", - "feb" => "Feb", - "mar" => "Mar", - "apr" => "Apr", - "may" => "Mag", - "jun" => "Giu", - "jul" => "Lug", - "aug" => "Ago", - "sep" => "Set", - "oct" => "Ott", - "nov" => "Nov", - "dec" => "Dic", - "january" => "Gennaio", - "february" => "Febbraio", - "march" => "Marzo", - "april" => "Aprile", - "mayl" => "Maggio", - "june" => "Giugno", - "july" => "Luglio", - "august" => "Agosto", - "september" => "Settembre", - "october" => "Ottobre", - "november" => "Novembre", - "december" => "Dicembre", + "su" => "Do", + "mo" => "Lu", + "tu" => "Ma", + "we" => "Me", + "th" => "Gi", + "fr" => "Ve", + "sa" => "Sa", + "sun" => "Dom", + "mon" => "Lun", + "tue" => "Mar", + "wed" => "Mer", + "thu" => "Gio", + "fri" => "Ven", + "sat" => "Dom", + "sunday" => "Domenica", + "monday" => "Lunedì", + "tuesday" => "Martedì", + "wednesday" => "Mercoledì", + "thursday" => "Giovedì", + "friday" => "Venerdì", + "saturday" => "Sabato", + "jan" => "Gen", + "feb" => "Feb", + "mar" => "Mar", + "apr" => "Apr", + "may" => "Mag", + "jun" => "Giu", + "jul" => "Lug", + "aug" => "Ago", + "sep" => "Set", + "oct" => "Ott", + "nov" => "Nov", + "dec" => "Dic", + "january" => "Gennaio", + "february" => "Febbraio", + "march" => "Marzo", + "april" => "Aprile", + "mayl" => "Maggio", + "june" => "Giugno", + "july" => "Luglio", + "august" => "Agosto", + "september" => "Settembre", + "october" => "Ottobre", + "november" => "Novembre", + "december" => "Dicembre", ]; diff --git a/app/Language/it/Cashups.php b/app/Language/it/Cashups.php index 5bd8618cf..7d5a8fe19 100644 --- a/app/Language/it/Cashups.php +++ b/app/Language/it/Cashups.php @@ -1,49 +1,49 @@ "Importo", - "amount_number" => "Quantità deve essere un numero", - "amount_required" => "Quantità è un campo richiesto.", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "Non posso cancellare incasso", - "cash_difference" => "", - "close_date" => "Data chiusura", - "close_employee" => "Chiuso da", - "closed_amount_card" => "Carte", - "closed_amount_cash" => "Cassa chiusa", - "closed_amount_check" => "Assegni", - "closed_amount_due" => "Contributi", - "closed_amount_giftcard" => "", - "closed_amount_total" => "Totale", - "closed_date" => "Data di chiusura", - "confirm_delete" => "Sicuro di voler cancellare l'incasso selezionato?", - "confirm_restore" => "Sei sicuro di voler ripristinare incasso selezionato?", - "confirm_submit" => "", - "date_number" => "La data deve essere un numero", - "date_required" => "Data è un campo richiesto", - "description" => "Descrizione", - "enable_expected" => "", - "error_adding_updating" => "Errore durante l'aggiunta/aggiornamento incasso", - "giftcard" => "", - "id" => "Id", - "info" => "Info incassi", - "info_employee" => "", - "is_deleted" => "Cancellato", - "new" => "Nuovo incasso", - "no_cashups_to_display" => "Non ci sono incassi da visualizzare", - "none_selected" => "Non hai selezionato alcun incasso", - "note" => "Note", - "one_or_multiple" => "Incassi", - "open_amount_cash" => "Contanti", - "open_date" => "Data di apertura", - "open_employee" => "Aperto da", - "opened_date" => "Data di apertura", - "successful_adding" => "Aggiunta di contanti riuscita", - "successful_deleted" => "Eliminazione di contanti riuscita", - "successful_updating" => "Aggiornamento del pagamento riuscito", - "total" => "Totale", - "transfer_amount_cash" => "Entrate/uscite contanti", - "transfer_amount_cash_minus" => "", - "update" => "Aggiorna contanti", - "warning" => "", + "amount" => "Importo", + "amount_number" => "Quantità deve essere un numero", + "amount_required" => "Quantità è un campo richiesto.", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "Non posso cancellare incasso", + "cash_difference" => "", + "close_date" => "Data chiusura", + "close_employee" => "Chiuso da", + "closed_amount_card" => "Carte", + "closed_amount_cash" => "Cassa chiusa", + "closed_amount_check" => "Assegni", + "closed_amount_due" => "Contributi", + "closed_amount_giftcard" => "", + "closed_amount_total" => "Totale", + "closed_date" => "Data di chiusura", + "confirm_delete" => "Sicuro di voler cancellare l'incasso selezionato?", + "confirm_restore" => "Sei sicuro di voler ripristinare incasso selezionato?", + "confirm_submit" => "", + "date_number" => "La data deve essere un numero", + "date_required" => "Data è un campo richiesto", + "description" => "Descrizione", + "enable_expected" => "", + "error_adding_updating" => "Errore durante l'aggiunta/aggiornamento incasso", + "giftcard" => "", + "id" => "Id", + "info" => "Info incassi", + "info_employee" => "", + "is_deleted" => "Cancellato", + "new" => "Nuovo incasso", + "no_cashups_to_display" => "Non ci sono incassi da visualizzare", + "none_selected" => "Non hai selezionato alcun incasso", + "note" => "Note", + "one_or_multiple" => "Incassi", + "open_amount_cash" => "Contanti", + "open_date" => "Data di apertura", + "open_employee" => "Aperto da", + "opened_date" => "Data di apertura", + "successful_adding" => "Aggiunta di contanti riuscita", + "successful_deleted" => "Eliminazione di contanti riuscita", + "successful_updating" => "Aggiornamento del pagamento riuscito", + "total" => "Totale", + "transfer_amount_cash" => "Entrate/uscite contanti", + "transfer_amount_cash_minus" => "", + "update" => "Aggiorna contanti", + "warning" => "", ]; diff --git a/app/Language/it/Common.php b/app/Language/it/Common.php index c15aeae7a..74b3e31e9 100644 --- a/app/Language/it/Common.php +++ b/app/Language/it/Common.php @@ -1,88 +1,88 @@ "Indirizzo 1", - "address_2" => "Indirizzo 2", - "admin" => "", - "city" => "Città", - "clerk" => "", - "close" => "Chiudere", - "color" => "", - "comments" => "Commenti", - "common" => "comune", - "confirm_search" => "Hai selezionato una o più righe, queste non saranno più selezionate dopo la tua ricerca. Sei sicuro di voler procedere alla ricerca?", - "copyrights" => "© 2010 - {0}", - "correct_errors" => "Correggi gli errori identificati prima di salvare", - "country" => "Paese", - "dashboard" => "", - "date" => "Data", - "delete" => "Cancella", - "det" => "dettagli", - "download_import_template" => "Scarica Template D'importazione CSV (CSV)", - "edit" => "modifica", - "email" => "Email", - "email_invalid_format" => "L'indirizzo email non è nel formato corretto.", - "export_csv" => "Esporta formato CSV", - "export_csv_no" => "No", - "export_csv_yes" => "Si", - "fields_required_message" => "I campi in rosso sono richiesti", - "fields_required_message_unique" => "", - "first_name" => "Nome", - "first_name_required" => "Campo Nome è richiesto.", - "first_page" => "Primo", - "gender" => "Sesso", - "gender_female" => "F", - "gender_male" => "M", - "gender_undefined" => "", - "icon" => "Icona", - "id" => "ID", - "import" => "Importa", - "import_change_file" => "Sostituisci", - "import_csv" => "Importa CSV", - "import_full_path" => "È richiesto il percorso completo del file CSV", - "import_remove_file" => "Rimuovi", - "import_select_file" => "Seleziona file", - "inv" => "fatt", - "last_name" => "Cognome", - "last_name_required" => "Il campo Cognome è richiesto.", - "last_page" => "Ultimo", - "learn_about_project" => "per imparare le ultime informazioni riguardanti il progetto.", - "list_of" => "Lista di", - "logo" => "Logo", - "logo_mark" => "Marchio", - "logout" => "Esci", - "manager" => "", - "migration_needed" => "", - "new" => "Nuovo", - "no" => "", - "no_persons_to_display" => "Non ci sono persone da mostrare.", - "none_selected_text" => "[Selezionare]", - "or" => "OR", - "people" => "", - "phone_number" => "Numero di Telefono", - "phone_number_required" => "", - "please_visit_my" => "Visitare il", - "position" => "", - "powered_by" => "Sviluppato da", - "price" => "Prezzo", - "print" => "Stampa", - "remove" => "Rimuovi", - "required" => "Richiesto", - "restore" => "Ripristina", - "return_policy" => "Politica di restituzione", - "search" => "Cerca", - "search_options" => "Opzioni di ricerca", - "searched_for" => "Cercato per", - "software_short" => "OSPOS", - "software_title" => "Punto vendita Open Source", - "state" => "Provincia", - "submit" => "Invia", - "total_spent" => "Totale spesa", - "unknown" => "Sconosciuto", - "view_recent_sales" => "Mostra Vendite Recenti", - "website" => "Sito web", - "welcome" => "Benvenuto", - "welcome_message" => "Benvenuto in OSPOS, clicca un modulo sottostante per incominciare.", - "yes" => "", - "you_are_using_ospos" => "Stai usando la versione Open Source Point Of Sale (Punto di vendita)", - "zip" => "CAP", + "address_1" => "Indirizzo 1", + "address_2" => "Indirizzo 2", + "admin" => "", + "city" => "Città", + "clerk" => "", + "close" => "Chiudere", + "color" => "", + "comments" => "Commenti", + "common" => "comune", + "confirm_search" => "Hai selezionato una o più righe, queste non saranno più selezionate dopo la tua ricerca. Sei sicuro di voler procedere alla ricerca?", + "copyrights" => "© 2010 - {0}", + "correct_errors" => "Correggi gli errori identificati prima di salvare", + "country" => "Paese", + "dashboard" => "", + "date" => "Data", + "delete" => "Cancella", + "det" => "dettagli", + "download_import_template" => "Scarica Template D'importazione CSV (CSV)", + "edit" => "modifica", + "email" => "Email", + "email_invalid_format" => "L'indirizzo email non è nel formato corretto.", + "export_csv" => "Esporta formato CSV", + "export_csv_no" => "No", + "export_csv_yes" => "Si", + "fields_required_message" => "I campi in rosso sono richiesti", + "fields_required_message_unique" => "", + "first_name" => "Nome", + "first_name_required" => "Campo Nome è richiesto.", + "first_page" => "Primo", + "gender" => "Sesso", + "gender_female" => "F", + "gender_male" => "M", + "gender_undefined" => "", + "icon" => "Icona", + "id" => "ID", + "import" => "Importa", + "import_change_file" => "Sostituisci", + "import_csv" => "Importa CSV", + "import_full_path" => "È richiesto il percorso completo del file CSV", + "import_remove_file" => "Rimuovi", + "import_select_file" => "Seleziona file", + "inv" => "fatt", + "last_name" => "Cognome", + "last_name_required" => "Il campo Cognome è richiesto.", + "last_page" => "Ultimo", + "learn_about_project" => "per imparare le ultime informazioni riguardanti il progetto.", + "list_of" => "Lista di", + "logo" => "Logo", + "logo_mark" => "Marchio", + "logout" => "Esci", + "manager" => "", + "migration_needed" => "", + "new" => "Nuovo", + "no" => "", + "no_persons_to_display" => "Non ci sono persone da mostrare.", + "none_selected_text" => "[Selezionare]", + "or" => "OR", + "people" => "", + "phone_number" => "Numero di Telefono", + "phone_number_required" => "", + "please_visit_my" => "Visitare il", + "position" => "", + "powered_by" => "Sviluppato da", + "price" => "Prezzo", + "print" => "Stampa", + "remove" => "Rimuovi", + "required" => "Richiesto", + "restore" => "Ripristina", + "return_policy" => "Politica di restituzione", + "search" => "Cerca", + "search_options" => "Opzioni di ricerca", + "searched_for" => "Cercato per", + "software_short" => "OSPOS", + "software_title" => "Punto vendita Open Source", + "state" => "Provincia", + "submit" => "Invia", + "total_spent" => "Totale spesa", + "unknown" => "Sconosciuto", + "view_recent_sales" => "Mostra Vendite Recenti", + "website" => "Sito web", + "welcome" => "Benvenuto", + "welcome_message" => "Benvenuto in OSPOS, clicca un modulo sottostante per incominciare.", + "yes" => "", + "you_are_using_ospos" => "Stai usando la versione Open Source Point Of Sale (Punto di vendita)", + "zip" => "CAP", ]; diff --git a/app/Language/it/Config.php b/app/Language/it/Config.php index be8cbb63a..3fd1942a0 100644 --- a/app/Language/it/Config.php +++ b/app/Language/it/Config.php @@ -1,330 +1,330 @@ "Indirizzo Azienda", - "address_required" => "Il campo Indirizzo Azienda è obbligatorio.", - "all_set" => "All file permissions are set correctly!", - "allow_duplicate_barcodes" => "Permetti Codice a Barre duplicati", - "apostrophe" => "apostrofo", - "backup_button" => "Backup", - "backup_database" => "Backup del Database", - "barcode" => "Codici a Barre", - "barcode_company" => "Nome Azienda", - "barcode_configuration" => "Configurazione Codici a Barre", - "barcode_content" => "Contenuto Codice a Barre", - "barcode_first_row" => "Riga 1", - "barcode_font" => "Font", - "barcode_formats" => "Formati d'input", - "barcode_generate_if_empty" => "Genera se vuoto.", - "barcode_height" => "Altezza (px)", - "barcode_id" => "Id/Nome Elemento", - "barcode_info" => "Informazioni Configurazione Codice a Barre", - "barcode_layout" => "Layout Codice a Barre", - "barcode_name" => "Nome", - "barcode_number" => "Codice a Barre", - "barcode_number_in_row" => "Numero nella riga", - "barcode_page_cellspacing" => "Mostra spaziatura celle.", - "barcode_page_width" => "Mostra larghezza pagina", - "barcode_price" => "Prezzo", - "barcode_second_row" => "Riga 2", - "barcode_third_row" => "Riga 3", - "barcode_tooltip" => "Attenzione: Questa funzionalità può causare la duplicazione dei prodotti da essere importati o creati. Non usarla se non vuoi codici a barre duplicati.", - "barcode_type" => "Tipo Codice a Barre", - "barcode_width" => "Larghezza (px)", - "bottom" => "Parte inferiore", - "cash_button" => "", - "cash_button_1" => "", - "cash_button_2" => "", - "cash_button_3" => "", - "cash_button_4" => "", - "cash_button_5" => "", - "cash_button_6" => "", - "cash_decimals" => "Decimali Contanti", - "cash_decimals_tooltip" => "Se Decimali Contanti e Decimali Valuta sono le stesse non verrà effettuato un arrotondamento.", - "cash_rounding" => "Arrotondamento Contanti", - "category_dropdown" => "Mostra categoria come menu a discesa", - "center" => "Centro", - "change_apperance_tooltip" => "", - "comma" => "virgola", - "company" => "Nome Azienda", - "company_avatar" => "", - "company_change_image" => "Cambia Immagine", - "company_logo" => "Logo Azienda", - "company_remove_image" => "Rimuovi Immagine", - "company_required" => "Il campo Nome Compagnia è obbligatorio", - "company_select_image" => "Seleziona Immagine", - "company_website_url" => "Il sito dell'azienda non è un URL valido (http://...).", - "country_codes" => "Codice Postale", - "country_codes_tooltip" => "La lista di Codici Postali separate da virgole sono usate per la ricerca per indirizzo.", - "currency_code" => "Codice valuta", - "currency_decimals" => "Decimali Valuta", - "currency_symbol" => "Simbolo Valuta", - "current_employee_only" => "", - "customer_reward" => "Raccolta Punti", - "customer_reward_duplicate" => "Punti Fedeltà deve essere unica.", - "customer_reward_enable" => "Abilita la Raccolta Punti per i Clienti", - "customer_reward_invalid_chars" => "I punti fedeltà non possono contenere '_'", - "customer_reward_required" => "I Punti Fedeltà sono un campo obbligatorio", - "customer_sales_tax_support" => "Supporto Fiscale di vendita ai Clienti (Sales Tax Support)", - "date_or_time_format" => "Filtro Data e Ora", - "datetimeformat" => "Formato Data e Ora", - "decimal_point" => "Punti Decimali", - "default_barcode_font_size_number" => "La grandezza del Font del Codice a Barre di default deve essere un numero.", - "default_barcode_font_size_required" => "Il campo Grandezza del font del Codice a Barre di Default è obbligatorio.", - "default_barcode_height_number" => "Altezza di Default del Codice a Barre deve essere un numero.", - "default_barcode_height_required" => "Il campo Altezza Codice a Barre di Default è obbligatorio.", - "default_barcode_num_in_row_number" => "Il numero di Codice a Barre di Default nella Riga deve essere un numero.", - "default_barcode_num_in_row_required" => "Numero Codice a Barre di Default nella Riga è un campo obbligatorio.", - "default_barcode_page_cellspacing_number" => "Spaziatura Codice a Barre di Default deve essere un numero.", - "default_barcode_page_cellspacing_required" => "Spaziatura Codice a Barre di Default è un campo obbligatorio.", - "default_barcode_page_width_number" => "Larghezza Codice a Barre di Default deve essere un numero.", - "default_barcode_page_width_required" => "Larghezza Codice a Barre di Default è un campo obbligatorio.", - "default_barcode_width_number" => "Larghezza Codice a Barre di Default deve essere un numero.", - "default_barcode_width_required" => "Larghezza Codice a Barre di Default è un campo obbligatorio.", - "default_item_columns" => "Colonne degli elementi visibili di default", - "default_origin_tax_code" => "Codice Imposta di Origine Default", - "default_receivings_discount" => "Sconto sugli incassi predefiniti", - "default_receivings_discount_number" => "Lo sconto sugli incassi predefinito deve essere un numero.", - "default_receivings_discount_required" => "Lo sconto di ricezione predefinito è un campo obbligatorio.", - "default_sales_discount" => "Sconto Vendita Default %", - "default_sales_discount_number" => "Sconto Vendita Default deve essere un numero.", - "default_sales_discount_required" => "Sconto Vendita Default è un campo obbligatorio.", - "default_tax_category" => "Categoria di imposta predefinita", - "default_tax_code" => "Codice Fiscale predefinito", - "default_tax_jurisdiction" => "Giurisdizione fiscale predefinita", - "default_tax_name_number" => "Nome Tassazione Default deve essere una stringa.", - "default_tax_name_required" => "Nome Tassazione Default è un campo richiesto.", - "default_tax_rate" => "Percent. Imposta Default %", - "default_tax_rate_1" => "Perc. Imposta 1", - "default_tax_rate_2" => "Perc. Imposta 2", - "default_tax_rate_3" => "", - "default_tax_rate_number" => "Percent. Imposta Default deve essere un numero.", - "default_tax_rate_required" => "Percent. Imposta Default è un campo obbligatorio.", - "derive_sale_quantity" => "Permetti Quantità Derivata dalle Vendite", - "derive_sale_quantity_tooltip" => "Se abilitato, un nuovo tipo di elemento sarà dato per quegli elementi che supereranno la quantità", - "dinner_table" => "Tavolo", - "dinner_table_duplicate" => "Il Tavolo deve essere univoco.", - "dinner_table_enable" => "Abilita Tavoli da Cena", - "dinner_table_invalid_chars" => "Nome Tavolo non può contenere '_'.", - "dinner_table_required" => "Tavolo è un campo obbligatorio.", - "dot" => "punto", - "email" => "Email", - "email_configuration" => "Configurazione Email", - "email_mailpath" => "Percorso per Sendmail", - "email_protocol" => "Protocol", - "email_receipt_check_behaviour" => "Checkbox email ricevuta", - "email_receipt_check_behaviour_always" => "Sempre selezionato", - "email_receipt_check_behaviour_last" => "Ricorda l'ultima selezione", - "email_receipt_check_behaviour_never" => "Sempre non selezionato", - "email_smtp_crypto" => "SMTP Encryption", - "email_smtp_host" => "SMTP Server", - "email_smtp_pass" => "SMTP Password", - "email_smtp_port" => "SMTP Porta", - "email_smtp_timeout" => "SMTP Timeout (s)", - "email_smtp_user" => "SMTP Username", - "enable_avatar" => "", - "enable_avatar_tooltip" => "", - "enable_dropdown_tooltip" => "", - "enable_new_look" => "", - "enable_right_bar" => "", - "enable_right_bar_tooltip" => "", - "enforce_privacy" => "Rispetta privacy", - "enforce_privacy_tooltip" => "Rispetta la privacy dei tuoi clienti annullando i loro dati se cancellati", - "fax" => "Fax", - "file_perm" => "There are problems with file permissions please fix and reload this page.", - "financial_year" => "Data Inizio Anno Fiscale", - "financial_year_apr" => "1mo di Aprile", - "financial_year_aug" => "1mo di Agosto", - "financial_year_dec" => "1mo di Dicembre", - "financial_year_feb" => "1mo di Febbraio", - "financial_year_jan" => "1mo di Gennaio", - "financial_year_jul" => "1mo di Luglio", - "financial_year_jun" => "1mo di Giugno", - "financial_year_mar" => "1mo di Marzo", - "financial_year_may" => "1mo di Maggio", - "financial_year_nov" => "1mo di Novembre", - "financial_year_oct" => "1mo di Ottobre", - "financial_year_sep" => "1mo di Settembre", - "floating_labels" => "Etichette mobili", - "gcaptcha_enable" => "Login Page reCAPTCHA", - "gcaptcha_secret_key" => "reCAPTCHA Secret Key", - "gcaptcha_secret_key_required" => "reCAPTCHA Secret Key è un campo obbligatorio", - "gcaptcha_site_key" => "reCAPTCHA Site Key", - "gcaptcha_site_key_required" => "reCAPTCHA Site Key è un campo obbligatorio", - "gcaptcha_tooltip" => "Per proteggere la Login page con Google reCAPTCHA, clicca sull'icona per una key pair per l'API.", - "general" => "Generali", - "general_configuration" => "Configurazione Generale", - "giftcard_number" => "Numero Carta Regalo", - "giftcard_random" => "Genera Casualmente", - "giftcard_series" => "Genera in Serie", - "image_allowed_file_types" => "Tipi di file consentiti", - "image_max_height_tooltip" => "Altezza massima consentita per i caricamenti di immagini in pixel (px).", - "image_max_size_tooltip" => "Dimensione file massima consentita per il caricamento di immagini in kilobyte (kb).", - "image_max_width_tooltip" => "Larghezza massima consentita per i caricamenti di immagini in pixel (px).", - "image_restrictions" => "Restrizioni al caricamento delle immagini", - "include_hsn" => "Includere il supporto per i codici HSN", - "info" => "Informazioni", - "info_configuration" => "Informazioni Negozio", - "input_groups" => "Gruppi di Ingresso", - "integrations" => "Integrazioni", - "integrations_configuration" => "Integrazioni di terze parti", - "invoice" => "Fattura", - "invoice_configuration" => "Impostazioni di Stampa Fattura", - "invoice_default_comments" => "Commenti Fattura di Default", - "invoice_email_message" => "Template Email di Fattura", - "invoice_enable" => "Abilita Fatturazione", - "invoice_printer" => "Stampante per Fattura", - "invoice_type" => "Tipo fattura", - "is_readable" => "è leggibile, ma le autorizzazioni sono impostate in modo errato. Impostalo su 640 o 660 e aggiorna.", - "is_writable" => "è scrivibile, ma i permessi sono impostati in modo errato. Si prega di impostarlo su 750 e aggiornare.", - "item_markup" => "", - "jsprintsetup_required" => "Attenzione: Questa funzionalità funzionerà solo se è installato l'addon di FifeFox jsPrintSetup. Salvare ugualmente ?", - "language" => "Lingua", - "last_used_invoice_number" => "Ultimo Numero Fattura usato", - "last_used_quote_number" => "Ultimo Numero Preventivo usato", - "last_used_work_order_number" => "Ultimo Numero Ordine di Lavoro/Commessa usato", - "left" => "Sinistra", - "license" => "Licenza", - "license_configuration" => "Contenuti della Licenza", - "line_sequence" => "Sequenza Linea", - "lines_per_page" => "Linee per Pagina", - "lines_per_page_number" => "Le linee per Pagina devono essere un numero.", - "lines_per_page_required" => "Linee per Pagina è un campo obbligatorio.", - "locale" => "Localizzazione", - "locale_configuration" => "Configurazione Localizzazione", - "locale_info" => "Informazioni di Configurazione Localizzazione", - "location" => "Magazzino", - "location_configuration" => "Locazione Magazzino", - "location_info" => "Informazioni di Configurazione Posizione", - "login_form" => "Stile modulo di accesso", - "logout" => "Vuoi fare il backup prima di effettuare il logout? Premere [OK] per eseguirlo o [Cancella] per il logout.", - "mailchimp" => "Mailchimp", - "mailchimp_api_key" => "Mailchimp API Key", - "mailchimp_configuration" => "Configurazione Mailchimp", - "mailchimp_key_successfully" => "API Key valida.", - "mailchimp_key_unsuccessfully" => "API Key non valida.", - "mailchimp_lists" => "Lista/e Mailchimp", - "mailchimp_tooltip" => "Click the icon for an API Key.", - "message" => "SMS", - "message_configuration" => "Configurazione SMS", - "msg_msg" => "Testo Messaggio Salvato", - "msg_msg_placeholder" => "Se vuoi utilizzare un template SMS, salva il tuo messaggio qui o lascia il campo in bianco.", - "msg_pwd" => "SMS-API Password", - "msg_pwd_required" => "SMS-API Password è un campo obbligatorio", - "msg_src" => "SMS-API Sender ID", - "msg_src_required" => "SMS-API Sender ID è un campo obbligatorio", - "msg_uid" => "SMS-API Username", - "msg_uid_required" => "SMS-API Username è un campo obbligatorio", - "multi_pack_enabled" => "Pacchetti multipli per articolo", - "no_risk" => "No security/vulnerability risks.", - "none" => "nessuno", - "notify_alignment" => "Posizione Popup di Notifica", - "number_format" => "Formato Numero", - "number_locale" => "Localizzazione", - "number_locale_invalid" => "La località inserita non è valida. Controlla il link nel tooltip per cercare una località valida.", - "number_locale_required" => "Numero Località è un campo obbligatorio.", - "number_locale_tooltip" => "Cerca una Località adatta con questo link.", - "os_timezone" => "OSPOS fuso orario:", - "ospos_info" => "Informazioni sull'installazione di OSPOS", - "payment_options_order" => "Opzioni di Pagamento Ordine", - "perm_risk" => "Le autorizzazioni errate lasciano questo software a rischio.", - "phone" => "Telefono Azienda", - "phone_required" => "Telefono Aziena è un campo obbligatorio.", - "print_bottom_margin" => "Margine Inferiore", - "print_bottom_margin_number" => "Margine Inferiore deve essere un numero.", - "print_bottom_margin_required" => "Margine Inferiore è un campo richiesto.", - "print_delay_autoreturn" => "Ritardo ritorno a Vendite", - "print_delay_autoreturn_number" => "Ritardo è un campo obbligatorio.", - "print_delay_autoreturn_required" => "Ritardo deve essere un numero.", - "print_footer" => "Stampa Footer del Browser", - "print_header" => "Stampa Intestazione del Browser", - "print_left_margin" => "Margine sinistro", - "print_left_margin_number" => "Margine sinistro deve essere un numero.", - "print_left_margin_required" => "Margine Sinistro è un campo obbligatorio.", - "print_receipt_check_behaviour" => "Checkbox stampa scontrino", - "print_receipt_check_behaviour_always" => "Sempre selezionato", - "print_receipt_check_behaviour_last" => "Ricorda l'ultima selezione", - "print_receipt_check_behaviour_never" => "Sempre non selezionato", - "print_right_margin" => "Margine Destro", - "print_right_margin_number" => "Margine Destro deve essere un numero.", - "print_right_margin_required" => "Margine Destro è un campo obbligatorio.", - "print_silently" => "Mostra Finestra di Stampa", - "print_top_margin" => "Margine Superiore", - "print_top_margin_number" => "Margine Superiore deve essere un numero.", - "print_top_margin_required" => "Margine Superiore è un campo obbligatorio.", - "quantity_decimals" => "Decimali Quantità", - "quick_cash_enable" => "", - "quote_default_comments" => "Commento di default Stime", - "receipt" => "Scontrino", - "receipt_category" => "", - "receipt_configuration" => "Impostazioni di stampa Scontrino", - "receipt_default" => "Default", - "receipt_font_size" => "Grandezza Font", - "receipt_font_size_number" => "Grandezza Font deve essere un numero.", - "receipt_font_size_required" => "Grandezza Font è un campo obbligatorio.", - "receipt_info" => "Informazioni di Configurazione Scontrino", - "receipt_printer" => "Stampante Ticket", - "receipt_short" => "Corto", - "receipt_show_company_name" => "Mostra Nome Compagnia", - "receipt_show_description" => "Mostra Descrizione", - "receipt_show_serialnumber" => "Mostra Numero Seriale", - "receipt_show_tax_ind" => "Mostra indicatore fiscale", - "receipt_show_taxes" => "Mostra Imposte", - "receipt_show_total_discount" => "Mostra Sconto Totale", - "receipt_template" => "Template Scontrino", - "receiving_calculate_average_price" => "Calcola Prezzo medio (Ricezione)", - "recv_invoice_format" => "Formato Fattura Acquisto", - "register_mode_default" => "Modalità Registro Automatico/Default", - "report_an_issue" => "Segnala un problema", - "return_policy_required" => "Politica di Reso è un campo obbligatorio.", - "reward" => "Raccolta Punti", - "reward_configuration" => "Configurazione Raccolta Punti", - "right" => "Destra", - "sales_invoice_format" => "Formato Fattura di Vendita", - "sales_quote_format" => "Formato Preventivo", - "saved_successfully" => "Configurazione salvata correttamente.", - "saved_unsuccessfully" => "Salvataggio Configurazione Fallito.", - "security_issue" => "Security Vulnerability Warning", - "server_notice" => "Please use the below info for issue reporting.", - "service_charge" => "", - "show_due_enable" => "", - "show_office_group" => "Mostra icona ufficio", - "statistics" => "Invia Statistiche", - "statistics_tooltip" => "Invia statistiche per lo sviluppo e il miglioramento delle funzionalità proposte.", - "stock_location" => "Posizione Magazzino", - "stock_location_duplicate" => "Posizione Magazzino deve essere unico.", - "stock_location_invalid_chars" => "Posizione Magazzino non può contenere '_'.", - "stock_location_required" => "Posizione Magazzino è un campo obbligatorio.", - "suggestions_fifth_column" => "", - "suggestions_first_column" => "Colonna 1", - "suggestions_fourth_column" => "", - "suggestions_layout" => "Schema di Suggerimenti di ricerca", - "suggestions_second_column" => "Colonna 2", - "suggestions_third_column" => "Colonna 3", - "system_conf" => "Setup & Conf", - "system_info" => "System Info", - "table" => "Tavoli (Ristorazione)", - "table_configuration" => "Configurazione Tavoli", - "takings_printer" => "Stampa scontrino", - "tax" => "Imposte", - "tax_category" => "Categoria Imposta", - "tax_category_duplicate" => "Categoria tassa esistente.", - "tax_category_invalid_chars" => "Categoria tassa non valida.", - "tax_category_required" => "Categoria tassa richiesta.", - "tax_category_used" => "Categoria Imposta non può essere eliminata perchè è in utilizzo.", - "tax_configuration" => "Configurazione Imposte", - "tax_decimals" => "Decimali Imposta", - "tax_id" => "Codice Fiscale", - "tax_included" => "Imposte incluse", - "theme" => "Tema", - "theme_preview" => "Anteprima tema:", - "thousands_separator" => "Separatore centinaia", - "timezone" => "Timezone", - "timezone_error" => "Il fuso orario OSPOS è diverso dal fuso orario locale.", - "top" => "Sopra", - "use_destination_based_tax" => "Usa l'imposta basata sulla destinazione", - "user_timezone" => "Fuso orario locale:", - "website" => "Sitoweb", - "wholesale_markup" => "", - "work_order_enable" => "Supporto all'ordine (Work Order Support)", - "work_order_format" => "Formato ordine di lavoro/commessa", + "address" => "Indirizzo Azienda", + "address_required" => "Il campo Indirizzo Azienda è obbligatorio.", + "all_set" => "All file permissions are set correctly!", + "allow_duplicate_barcodes" => "Permetti Codice a Barre duplicati", + "apostrophe" => "apostrofo", + "backup_button" => "Backup", + "backup_database" => "Backup del Database", + "barcode" => "Codici a Barre", + "barcode_company" => "Nome Azienda", + "barcode_configuration" => "Configurazione Codici a Barre", + "barcode_content" => "Contenuto Codice a Barre", + "barcode_first_row" => "Riga 1", + "barcode_font" => "Font", + "barcode_formats" => "Formati d'input", + "barcode_generate_if_empty" => "Genera se vuoto.", + "barcode_height" => "Altezza (px)", + "barcode_id" => "Id/Nome Elemento", + "barcode_info" => "Informazioni Configurazione Codice a Barre", + "barcode_layout" => "Layout Codice a Barre", + "barcode_name" => "Nome", + "barcode_number" => "Codice a Barre", + "barcode_number_in_row" => "Numero nella riga", + "barcode_page_cellspacing" => "Mostra spaziatura celle.", + "barcode_page_width" => "Mostra larghezza pagina", + "barcode_price" => "Prezzo", + "barcode_second_row" => "Riga 2", + "barcode_third_row" => "Riga 3", + "barcode_tooltip" => "Attenzione: Questa funzionalità può causare la duplicazione dei prodotti da essere importati o creati. Non usarla se non vuoi codici a barre duplicati.", + "barcode_type" => "Tipo Codice a Barre", + "barcode_width" => "Larghezza (px)", + "bottom" => "Parte inferiore", + "cash_button" => "", + "cash_button_1" => "", + "cash_button_2" => "", + "cash_button_3" => "", + "cash_button_4" => "", + "cash_button_5" => "", + "cash_button_6" => "", + "cash_decimals" => "Decimali Contanti", + "cash_decimals_tooltip" => "Se Decimali Contanti e Decimali Valuta sono le stesse non verrà effettuato un arrotondamento.", + "cash_rounding" => "Arrotondamento Contanti", + "category_dropdown" => "Mostra categoria come menu a discesa", + "center" => "Centro", + "change_apperance_tooltip" => "", + "comma" => "virgola", + "company" => "Nome Azienda", + "company_avatar" => "", + "company_change_image" => "Cambia Immagine", + "company_logo" => "Logo Azienda", + "company_remove_image" => "Rimuovi Immagine", + "company_required" => "Il campo Nome Compagnia è obbligatorio", + "company_select_image" => "Seleziona Immagine", + "company_website_url" => "Il sito dell'azienda non è un URL valido (http://...).", + "country_codes" => "Codice Postale", + "country_codes_tooltip" => "La lista di Codici Postali separate da virgole sono usate per la ricerca per indirizzo.", + "currency_code" => "Codice valuta", + "currency_decimals" => "Decimali Valuta", + "currency_symbol" => "Simbolo Valuta", + "current_employee_only" => "", + "customer_reward" => "Raccolta Punti", + "customer_reward_duplicate" => "Punti Fedeltà deve essere unica.", + "customer_reward_enable" => "Abilita la Raccolta Punti per i Clienti", + "customer_reward_invalid_chars" => "I punti fedeltà non possono contenere '_'", + "customer_reward_required" => "I Punti Fedeltà sono un campo obbligatorio", + "customer_sales_tax_support" => "Supporto Fiscale di vendita ai Clienti (Sales Tax Support)", + "date_or_time_format" => "Filtro Data e Ora", + "datetimeformat" => "Formato Data e Ora", + "decimal_point" => "Punti Decimali", + "default_barcode_font_size_number" => "La grandezza del Font del Codice a Barre di default deve essere un numero.", + "default_barcode_font_size_required" => "Il campo Grandezza del font del Codice a Barre di Default è obbligatorio.", + "default_barcode_height_number" => "Altezza di Default del Codice a Barre deve essere un numero.", + "default_barcode_height_required" => "Il campo Altezza Codice a Barre di Default è obbligatorio.", + "default_barcode_num_in_row_number" => "Il numero di Codice a Barre di Default nella Riga deve essere un numero.", + "default_barcode_num_in_row_required" => "Numero Codice a Barre di Default nella Riga è un campo obbligatorio.", + "default_barcode_page_cellspacing_number" => "Spaziatura Codice a Barre di Default deve essere un numero.", + "default_barcode_page_cellspacing_required" => "Spaziatura Codice a Barre di Default è un campo obbligatorio.", + "default_barcode_page_width_number" => "Larghezza Codice a Barre di Default deve essere un numero.", + "default_barcode_page_width_required" => "Larghezza Codice a Barre di Default è un campo obbligatorio.", + "default_barcode_width_number" => "Larghezza Codice a Barre di Default deve essere un numero.", + "default_barcode_width_required" => "Larghezza Codice a Barre di Default è un campo obbligatorio.", + "default_item_columns" => "Colonne degli elementi visibili di default", + "default_origin_tax_code" => "Codice Imposta di Origine Default", + "default_receivings_discount" => "Sconto sugli incassi predefiniti", + "default_receivings_discount_number" => "Lo sconto sugli incassi predefinito deve essere un numero.", + "default_receivings_discount_required" => "Lo sconto di ricezione predefinito è un campo obbligatorio.", + "default_sales_discount" => "Sconto Vendita Default %", + "default_sales_discount_number" => "Sconto Vendita Default deve essere un numero.", + "default_sales_discount_required" => "Sconto Vendita Default è un campo obbligatorio.", + "default_tax_category" => "Categoria di imposta predefinita", + "default_tax_code" => "Codice Fiscale predefinito", + "default_tax_jurisdiction" => "Giurisdizione fiscale predefinita", + "default_tax_name_number" => "Nome Tassazione Default deve essere una stringa.", + "default_tax_name_required" => "Nome Tassazione Default è un campo richiesto.", + "default_tax_rate" => "Percent. Imposta Default %", + "default_tax_rate_1" => "Perc. Imposta 1", + "default_tax_rate_2" => "Perc. Imposta 2", + "default_tax_rate_3" => "", + "default_tax_rate_number" => "Percent. Imposta Default deve essere un numero.", + "default_tax_rate_required" => "Percent. Imposta Default è un campo obbligatorio.", + "derive_sale_quantity" => "Permetti Quantità Derivata dalle Vendite", + "derive_sale_quantity_tooltip" => "Se abilitato, un nuovo tipo di elemento sarà dato per quegli elementi che supereranno la quantità", + "dinner_table" => "Tavolo", + "dinner_table_duplicate" => "Il Tavolo deve essere univoco.", + "dinner_table_enable" => "Abilita Tavoli da Cena", + "dinner_table_invalid_chars" => "Nome Tavolo non può contenere '_'.", + "dinner_table_required" => "Tavolo è un campo obbligatorio.", + "dot" => "punto", + "email" => "Email", + "email_configuration" => "Configurazione Email", + "email_mailpath" => "Percorso per Sendmail", + "email_protocol" => "Protocol", + "email_receipt_check_behaviour" => "Checkbox email ricevuta", + "email_receipt_check_behaviour_always" => "Sempre selezionato", + "email_receipt_check_behaviour_last" => "Ricorda l'ultima selezione", + "email_receipt_check_behaviour_never" => "Sempre non selezionato", + "email_smtp_crypto" => "SMTP Encryption", + "email_smtp_host" => "SMTP Server", + "email_smtp_pass" => "SMTP Password", + "email_smtp_port" => "SMTP Porta", + "email_smtp_timeout" => "SMTP Timeout (s)", + "email_smtp_user" => "SMTP Username", + "enable_avatar" => "", + "enable_avatar_tooltip" => "", + "enable_dropdown_tooltip" => "", + "enable_new_look" => "", + "enable_right_bar" => "", + "enable_right_bar_tooltip" => "", + "enforce_privacy" => "Rispetta privacy", + "enforce_privacy_tooltip" => "Rispetta la privacy dei tuoi clienti annullando i loro dati se cancellati", + "fax" => "Fax", + "file_perm" => "There are problems with file permissions please fix and reload this page.", + "financial_year" => "Data Inizio Anno Fiscale", + "financial_year_apr" => "1mo di Aprile", + "financial_year_aug" => "1mo di Agosto", + "financial_year_dec" => "1mo di Dicembre", + "financial_year_feb" => "1mo di Febbraio", + "financial_year_jan" => "1mo di Gennaio", + "financial_year_jul" => "1mo di Luglio", + "financial_year_jun" => "1mo di Giugno", + "financial_year_mar" => "1mo di Marzo", + "financial_year_may" => "1mo di Maggio", + "financial_year_nov" => "1mo di Novembre", + "financial_year_oct" => "1mo di Ottobre", + "financial_year_sep" => "1mo di Settembre", + "floating_labels" => "Etichette mobili", + "gcaptcha_enable" => "Login Page reCAPTCHA", + "gcaptcha_secret_key" => "reCAPTCHA Secret Key", + "gcaptcha_secret_key_required" => "reCAPTCHA Secret Key è un campo obbligatorio", + "gcaptcha_site_key" => "reCAPTCHA Site Key", + "gcaptcha_site_key_required" => "reCAPTCHA Site Key è un campo obbligatorio", + "gcaptcha_tooltip" => "Per proteggere la Login page con Google reCAPTCHA, clicca sull'icona per una key pair per l'API.", + "general" => "Generali", + "general_configuration" => "Configurazione Generale", + "giftcard_number" => "Numero Carta Regalo", + "giftcard_random" => "Genera Casualmente", + "giftcard_series" => "Genera in Serie", + "image_allowed_file_types" => "Tipi di file consentiti", + "image_max_height_tooltip" => "Altezza massima consentita per i caricamenti di immagini in pixel (px).", + "image_max_size_tooltip" => "Dimensione file massima consentita per il caricamento di immagini in kilobyte (kb).", + "image_max_width_tooltip" => "Larghezza massima consentita per i caricamenti di immagini in pixel (px).", + "image_restrictions" => "Restrizioni al caricamento delle immagini", + "include_hsn" => "Includere il supporto per i codici HSN", + "info" => "Informazioni", + "info_configuration" => "Informazioni Negozio", + "input_groups" => "Gruppi di Ingresso", + "integrations" => "Integrazioni", + "integrations_configuration" => "Integrazioni di terze parti", + "invoice" => "Fattura", + "invoice_configuration" => "Impostazioni di Stampa Fattura", + "invoice_default_comments" => "Commenti Fattura di Default", + "invoice_email_message" => "Template Email di Fattura", + "invoice_enable" => "Abilita Fatturazione", + "invoice_printer" => "Stampante per Fattura", + "invoice_type" => "Tipo fattura", + "is_readable" => "è leggibile, ma le autorizzazioni sono impostate in modo errato. Impostalo su 640 o 660 e aggiorna.", + "is_writable" => "è scrivibile, ma i permessi sono impostati in modo errato. Si prega di impostarlo su 750 e aggiornare.", + "item_markup" => "", + "jsprintsetup_required" => "Attenzione: Questa funzionalità funzionerà solo se è installato l'addon di FifeFox jsPrintSetup. Salvare ugualmente ?", + "language" => "Lingua", + "last_used_invoice_number" => "Ultimo Numero Fattura usato", + "last_used_quote_number" => "Ultimo Numero Preventivo usato", + "last_used_work_order_number" => "Ultimo Numero Ordine di Lavoro/Commessa usato", + "left" => "Sinistra", + "license" => "Licenza", + "license_configuration" => "Contenuti della Licenza", + "line_sequence" => "Sequenza Linea", + "lines_per_page" => "Linee per Pagina", + "lines_per_page_number" => "Le linee per Pagina devono essere un numero.", + "lines_per_page_required" => "Linee per Pagina è un campo obbligatorio.", + "locale" => "Localizzazione", + "locale_configuration" => "Configurazione Localizzazione", + "locale_info" => "Informazioni di Configurazione Localizzazione", + "location" => "Magazzino", + "location_configuration" => "Locazione Magazzino", + "location_info" => "Informazioni di Configurazione Posizione", + "login_form" => "Stile modulo di accesso", + "logout" => "Vuoi fare il backup prima di effettuare il logout? Premere [OK] per eseguirlo o [Cancella] per il logout.", + "mailchimp" => "Mailchimp", + "mailchimp_api_key" => "Mailchimp API Key", + "mailchimp_configuration" => "Configurazione Mailchimp", + "mailchimp_key_successfully" => "API Key valida.", + "mailchimp_key_unsuccessfully" => "API Key non valida.", + "mailchimp_lists" => "Lista/e Mailchimp", + "mailchimp_tooltip" => "Click the icon for an API Key.", + "message" => "SMS", + "message_configuration" => "Configurazione SMS", + "msg_msg" => "Testo Messaggio Salvato", + "msg_msg_placeholder" => "Se vuoi utilizzare un template SMS, salva il tuo messaggio qui o lascia il campo in bianco.", + "msg_pwd" => "SMS-API Password", + "msg_pwd_required" => "SMS-API Password è un campo obbligatorio", + "msg_src" => "SMS-API Sender ID", + "msg_src_required" => "SMS-API Sender ID è un campo obbligatorio", + "msg_uid" => "SMS-API Username", + "msg_uid_required" => "SMS-API Username è un campo obbligatorio", + "multi_pack_enabled" => "Pacchetti multipli per articolo", + "no_risk" => "No security/vulnerability risks.", + "none" => "nessuno", + "notify_alignment" => "Posizione Popup di Notifica", + "number_format" => "Formato Numero", + "number_locale" => "Localizzazione", + "number_locale_invalid" => "La località inserita non è valida. Controlla il link nel tooltip per cercare una località valida.", + "number_locale_required" => "Numero Località è un campo obbligatorio.", + "number_locale_tooltip" => "Cerca una Località adatta con questo link.", + "os_timezone" => "OSPOS fuso orario:", + "ospos_info" => "Informazioni sull'installazione di OSPOS", + "payment_options_order" => "Opzioni di Pagamento Ordine", + "perm_risk" => "Le autorizzazioni errate lasciano questo software a rischio.", + "phone" => "Telefono Azienda", + "phone_required" => "Telefono Aziena è un campo obbligatorio.", + "print_bottom_margin" => "Margine Inferiore", + "print_bottom_margin_number" => "Margine Inferiore deve essere un numero.", + "print_bottom_margin_required" => "Margine Inferiore è un campo richiesto.", + "print_delay_autoreturn" => "Ritardo ritorno a Vendite", + "print_delay_autoreturn_number" => "Ritardo è un campo obbligatorio.", + "print_delay_autoreturn_required" => "Ritardo deve essere un numero.", + "print_footer" => "Stampa Footer del Browser", + "print_header" => "Stampa Intestazione del Browser", + "print_left_margin" => "Margine sinistro", + "print_left_margin_number" => "Margine sinistro deve essere un numero.", + "print_left_margin_required" => "Margine Sinistro è un campo obbligatorio.", + "print_receipt_check_behaviour" => "Checkbox stampa scontrino", + "print_receipt_check_behaviour_always" => "Sempre selezionato", + "print_receipt_check_behaviour_last" => "Ricorda l'ultima selezione", + "print_receipt_check_behaviour_never" => "Sempre non selezionato", + "print_right_margin" => "Margine Destro", + "print_right_margin_number" => "Margine Destro deve essere un numero.", + "print_right_margin_required" => "Margine Destro è un campo obbligatorio.", + "print_silently" => "Mostra Finestra di Stampa", + "print_top_margin" => "Margine Superiore", + "print_top_margin_number" => "Margine Superiore deve essere un numero.", + "print_top_margin_required" => "Margine Superiore è un campo obbligatorio.", + "quantity_decimals" => "Decimali Quantità", + "quick_cash_enable" => "", + "quote_default_comments" => "Commento di default Stime", + "receipt" => "Scontrino", + "receipt_category" => "", + "receipt_configuration" => "Impostazioni di stampa Scontrino", + "receipt_default" => "Default", + "receipt_font_size" => "Grandezza Font", + "receipt_font_size_number" => "Grandezza Font deve essere un numero.", + "receipt_font_size_required" => "Grandezza Font è un campo obbligatorio.", + "receipt_info" => "Informazioni di Configurazione Scontrino", + "receipt_printer" => "Stampante Ticket", + "receipt_short" => "Corto", + "receipt_show_company_name" => "Mostra Nome Compagnia", + "receipt_show_description" => "Mostra Descrizione", + "receipt_show_serialnumber" => "Mostra Numero Seriale", + "receipt_show_tax_ind" => "Mostra indicatore fiscale", + "receipt_show_taxes" => "Mostra Imposte", + "receipt_show_total_discount" => "Mostra Sconto Totale", + "receipt_template" => "Template Scontrino", + "receiving_calculate_average_price" => "Calcola Prezzo medio (Ricezione)", + "recv_invoice_format" => "Formato Fattura Acquisto", + "register_mode_default" => "Modalità Registro Automatico/Default", + "report_an_issue" => "Segnala un problema", + "return_policy_required" => "Politica di Reso è un campo obbligatorio.", + "reward" => "Raccolta Punti", + "reward_configuration" => "Configurazione Raccolta Punti", + "right" => "Destra", + "sales_invoice_format" => "Formato Fattura di Vendita", + "sales_quote_format" => "Formato Preventivo", + "saved_successfully" => "Configurazione salvata correttamente.", + "saved_unsuccessfully" => "Salvataggio Configurazione Fallito.", + "security_issue" => "Security Vulnerability Warning", + "server_notice" => "Please use the below info for issue reporting.", + "service_charge" => "", + "show_due_enable" => "", + "show_office_group" => "Mostra icona ufficio", + "statistics" => "Invia Statistiche", + "statistics_tooltip" => "Invia statistiche per lo sviluppo e il miglioramento delle funzionalità proposte.", + "stock_location" => "Posizione Magazzino", + "stock_location_duplicate" => "Posizione Magazzino deve essere unico.", + "stock_location_invalid_chars" => "Posizione Magazzino non può contenere '_'.", + "stock_location_required" => "Posizione Magazzino è un campo obbligatorio.", + "suggestions_fifth_column" => "", + "suggestions_first_column" => "Colonna 1", + "suggestions_fourth_column" => "", + "suggestions_layout" => "Schema di Suggerimenti di ricerca", + "suggestions_second_column" => "Colonna 2", + "suggestions_third_column" => "Colonna 3", + "system_conf" => "Setup & Conf", + "system_info" => "System Info", + "table" => "Tavoli (Ristorazione)", + "table_configuration" => "Configurazione Tavoli", + "takings_printer" => "Stampa scontrino", + "tax" => "Imposte", + "tax_category" => "Categoria Imposta", + "tax_category_duplicate" => "Categoria tassa esistente.", + "tax_category_invalid_chars" => "Categoria tassa non valida.", + "tax_category_required" => "Categoria tassa richiesta.", + "tax_category_used" => "Categoria Imposta non può essere eliminata perchè è in utilizzo.", + "tax_configuration" => "Configurazione Imposte", + "tax_decimals" => "Decimali Imposta", + "tax_id" => "Codice Fiscale", + "tax_included" => "Imposte incluse", + "theme" => "Tema", + "theme_preview" => "Anteprima tema:", + "thousands_separator" => "Separatore centinaia", + "timezone" => "Timezone", + "timezone_error" => "Il fuso orario OSPOS è diverso dal fuso orario locale.", + "top" => "Sopra", + "use_destination_based_tax" => "Usa l'imposta basata sulla destinazione", + "user_timezone" => "Fuso orario locale:", + "website" => "Sitoweb", + "wholesale_markup" => "", + "work_order_enable" => "Supporto all'ordine (Work Order Support)", + "work_order_format" => "Formato ordine di lavoro/commessa", ]; diff --git a/app/Language/it/Customers.php b/app/Language/it/Customers.php index 2131bcede..cee5d2a60 100644 --- a/app/Language/it/Customers.php +++ b/app/Language/it/Customers.php @@ -1,56 +1,56 @@ "Codice Fiscale", - "account_number_duplicate" => "Il numero dell'account è già presente nel database.", - "available_points" => "Punti Dispnibili", - "available_points_value" => "", - "average" => "Spesa media", - "avg_discount" => "Sconto medio", - "basic_information" => "Informazioni", - "cannot_be_deleted" => "Non puoi eliminare i clienti selezionati, alcuni di questi hanno delle vendite.", - "company_name" => "Compagnia", - "confirm_delete" => "Sei sicuro di voler eliminare i clienti selezionati?", - "confirm_restore" => "Sei sicuro di voler ripristinare i clienti selezionati?", - "consent" => "Consenso trattamento dati", - "consent_required" => "Consenso è un campo obbligatorio.", - "csv_import_failed" => "Importazione CSV fallita", - "csv_import_nodata_wrongformat" => "Il file caricato non ha dati o non è formattato correttamente.", - "csv_import_partially_failed" => "Importazione dei clienti è corretta con dei fallimenti:", - "csv_import_success" => "Importazione dei clienti Corretta.", - "customer" => "Clienti", - "date" => "Data", - "discount" => "Sconto", - "discount_fixed" => "Sconto fisso", - "discount_percent" => "Sconto percentuale", - "discount_type" => "Tipo di sconto", - "email_duplicate" => "L'indirizzo mail è già presente nel database.", - "employee" => "Impiegato", - "error_adding_updating" => "Aggiunta o modifica clienti Fallita.", - "import_items_csv" => "Importazione dei clienti da CSV", - "mailchimp_activity_click" => "Email click", - "mailchimp_activity_lastopen" => "Ultima mail aperta", - "mailchimp_activity_open" => "Email open", - "mailchimp_activity_total" => "Email inviata", - "mailchimp_activity_unopen" => "Email non aperta", - "mailchimp_email_client" => "Email client", - "mailchimp_info" => "Mailchimp", - "mailchimp_member_rating" => "Valutazione", - "mailchimp_status" => "Status", - "mailchimp_vip" => "VIP", - "max" => "Spesa Max", - "min" => "Spesa Min", - "new" => "Nuovo Cliente", - "none_selected" => "Non hai selezionato nessun cliente da eliminare.", - "one_or_multiple" => "cliente(i)", - "quantity" => "Quantità", - "stats_info" => "Stats", - "successful_adding" => "Hai aggiunto con Successo un cliente", - "successful_deleted" => "Eliminazione con successo", - "successful_updating" => "Aggiornamento del cliente terminato correttamente", - "tax_code" => "Codice tassa", - "tax_id" => "", - "taxable" => "Tassabile", - "total" => "Spesa Totale", - "update" => "Aggiorna Cliente", - "rewards_package" => "Pacchetto di ricompensa", + "account_number" => "Codice Fiscale", + "account_number_duplicate" => "Il numero dell'account è già presente nel database.", + "available_points" => "Punti Dispnibili", + "available_points_value" => "", + "average" => "Spesa media", + "avg_discount" => "Sconto medio", + "basic_information" => "Informazioni", + "cannot_be_deleted" => "Non puoi eliminare i clienti selezionati, alcuni di questi hanno delle vendite.", + "company_name" => "Compagnia", + "confirm_delete" => "Sei sicuro di voler eliminare i clienti selezionati?", + "confirm_restore" => "Sei sicuro di voler ripristinare i clienti selezionati?", + "consent" => "Consenso trattamento dati", + "consent_required" => "Consenso è un campo obbligatorio.", + "csv_import_failed" => "Importazione CSV fallita", + "csv_import_nodata_wrongformat" => "Il file caricato non ha dati o non è formattato correttamente.", + "csv_import_partially_failed" => "Importazione dei clienti è corretta con dei fallimenti:", + "csv_import_success" => "Importazione dei clienti Corretta.", + "customer" => "Clienti", + "date" => "Data", + "discount" => "Sconto", + "discount_fixed" => "Sconto fisso", + "discount_percent" => "Sconto percentuale", + "discount_type" => "Tipo di sconto", + "email_duplicate" => "L'indirizzo mail è già presente nel database.", + "employee" => "Impiegato", + "error_adding_updating" => "Aggiunta o modifica clienti Fallita.", + "import_items_csv" => "Importazione dei clienti da CSV", + "mailchimp_activity_click" => "Email click", + "mailchimp_activity_lastopen" => "Ultima mail aperta", + "mailchimp_activity_open" => "Email open", + "mailchimp_activity_total" => "Email inviata", + "mailchimp_activity_unopen" => "Email non aperta", + "mailchimp_email_client" => "Email client", + "mailchimp_info" => "Mailchimp", + "mailchimp_member_rating" => "Valutazione", + "mailchimp_status" => "Status", + "mailchimp_vip" => "VIP", + "max" => "Spesa Max", + "min" => "Spesa Min", + "new" => "Nuovo Cliente", + "none_selected" => "Non hai selezionato nessun cliente da eliminare.", + "one_or_multiple" => "cliente(i)", + "quantity" => "Quantità", + "stats_info" => "Stats", + "successful_adding" => "Hai aggiunto con Successo un cliente", + "successful_deleted" => "Eliminazione con successo", + "successful_updating" => "Aggiornamento del cliente terminato correttamente", + "tax_code" => "Codice tassa", + "tax_id" => "", + "taxable" => "Tassabile", + "total" => "Spesa Totale", + "update" => "Aggiorna Cliente", + "rewards_package" => "Pacchetto di ricompensa", ]; diff --git a/app/Language/it/Datepicker.php b/app/Language/it/Datepicker.php index efcd809af..8c7c198a0 100644 --- a/app/Language/it/Datepicker.php +++ b/app/Language/it/Datepicker.php @@ -1,23 +1,23 @@ "Periodo completo", - "apply" => "Applica", - "cancel" => "Cancella", - "custom" => "Personalizzato", - "from" => "Da", - "last_30" => "Ultimi 30 giorni", - "last_7" => "Ultimi 7 giorni", - "last_financial_year" => "Ultimo Anno Fiscale", - "last_month" => "Ultimo Mese", - "last_year" => "Ultimo Anno", - "same_month_last_year" => "Stesso Mese Ultimo Anno", - "same_month_to_same_day_last_year" => "Stesso mese e giorno dell'ultimo Anno", - "this_financial_year" => "Anno Fiscale Corrente", - "this_month" => "Mese Corrente", - "this_year" => "Anno Corrente", - "to" => "To", - "today" => "Oggi", - "today_last_year" => "Oggi Ultimo Anno", - "weekstart" => "0", - "yesterday" => "Ieri", + "all_time" => "Periodo completo", + "apply" => "Applica", + "cancel" => "Cancella", + "custom" => "Personalizzato", + "from" => "Da", + "last_30" => "Ultimi 30 giorni", + "last_7" => "Ultimi 7 giorni", + "last_financial_year" => "Ultimo Anno Fiscale", + "last_month" => "Ultimo Mese", + "last_year" => "Ultimo Anno", + "same_month_last_year" => "Stesso Mese Ultimo Anno", + "same_month_to_same_day_last_year" => "Stesso mese e giorno dell'ultimo Anno", + "this_financial_year" => "Anno Fiscale Corrente", + "this_month" => "Mese Corrente", + "this_year" => "Anno Corrente", + "to" => "To", + "today" => "Oggi", + "today_last_year" => "Oggi Ultimo Anno", + "weekstart" => "0", + "yesterday" => "Ieri", ]; diff --git a/app/Language/it/Employees.php b/app/Language/it/Employees.php index 369fbc829..2db535b7c 100644 --- a/app/Language/it/Employees.php +++ b/app/Language/it/Employees.php @@ -1,44 +1,44 @@ "", - "basic_information" => "Informazioni", - "cannot_be_deleted" => "Eliminazione dell'impiegato/i non consentita, uno o più hanno trattato delle vendite o stai cancellando il tuo account.", - "change_employee" => "", - "change_password" => "Cambia Password", - "clerk" => "", - "commission" => "", - "confirm_delete" => "Sei sicuro di voler eliminare l'impiegato/i selezionato?", - "confirm_restore" => "Sei sicuro di voler ripristinare gl'Impiegati selezionati?", - "current_password" => "Password Corrente", - "current_password_invalid" => "Password corrente non valida.", - "employee" => "Impiegato", - "error_adding_updating" => "Aggiunta o aggiornamento di impiegati fallito.", - "error_deleting_demo_admin" => "Non puoi eliminare l'utente admin demo.", - "error_updating_demo_admin" => "Non puoi cambiare l'utente admin demo.", - "language" => "Lingua", - "login_info" => "Login", - "manager" => "", - "new" => "Nuovo Impiegato", - "none_selected" => "Non hai selezionato nessun impiegato da eliminare.", - "one_or_multiple" => "impiegato/i", - "password" => "Password", - "password_minlength" => "La Password deve essere lunga almeno 8 caratteri.", - "password_must_match" => "Le Password non corrispondono.", - "password_not_must_match" => "La password corrente e quella nuova devono essere uniche.", - "password_required" => "Password obbligatoria.", - "permission_desc" => "Barra le caselle sotto per garantire l'accesso ai moduli.", - "permission_info" => "Permessi", - "repeat_password" => "Password di nuovo", - "subpermission_required" => "Aggiungi almeno un permesso per ogni modulo.", - "successful_adding" => "Impiegato aggiunto correttamente.", - "successful_change_password" => "Password cambiata con successo.", - "successful_deleted" => "Eliminato correttamente", - "successful_updating" => "Hai correttamente aggiornato un impiegato", - "system_language" => "Lingua di sistema", - "unsuccessful_change_password" => "Cambio password fallito.", - "update" => "Aggiornamento Impiegato", - "username" => "Username", - "username_duplicate" => "", - "username_minlength" => "Lo Username deve essere almeno lungo 5 caratteri di lunghezza.", - "username_required" => "Il campo Username è richiesto.", + "administrator" => "", + "basic_information" => "Informazioni", + "cannot_be_deleted" => "Eliminazione dell'impiegato/i non consentita, uno o più hanno trattato delle vendite o stai cancellando il tuo account.", + "change_employee" => "", + "change_password" => "Cambia Password", + "clerk" => "", + "commission" => "", + "confirm_delete" => "Sei sicuro di voler eliminare l'impiegato/i selezionato?", + "confirm_restore" => "Sei sicuro di voler ripristinare gl'Impiegati selezionati?", + "current_password" => "Password Corrente", + "current_password_invalid" => "Password corrente non valida.", + "employee" => "Impiegato", + "error_adding_updating" => "Aggiunta o aggiornamento di impiegati fallito.", + "error_deleting_demo_admin" => "Non puoi eliminare l'utente admin demo.", + "error_updating_demo_admin" => "Non puoi cambiare l'utente admin demo.", + "language" => "Lingua", + "login_info" => "Login", + "manager" => "", + "new" => "Nuovo Impiegato", + "none_selected" => "Non hai selezionato nessun impiegato da eliminare.", + "one_or_multiple" => "impiegato/i", + "password" => "Password", + "password_minlength" => "La Password deve essere lunga almeno 8 caratteri.", + "password_must_match" => "Le Password non corrispondono.", + "password_not_must_match" => "La password corrente e quella nuova devono essere uniche.", + "password_required" => "Password obbligatoria.", + "permission_desc" => "Barra le caselle sotto per garantire l'accesso ai moduli.", + "permission_info" => "Permessi", + "repeat_password" => "Password di nuovo", + "subpermission_required" => "Aggiungi almeno un permesso per ogni modulo.", + "successful_adding" => "Impiegato aggiunto correttamente.", + "successful_change_password" => "Password cambiata con successo.", + "successful_deleted" => "Eliminato correttamente", + "successful_updating" => "Hai correttamente aggiornato un impiegato", + "system_language" => "Lingua di sistema", + "unsuccessful_change_password" => "Cambio password fallito.", + "update" => "Aggiornamento Impiegato", + "username" => "Username", + "username_duplicate" => "", + "username_minlength" => "Lo Username deve essere almeno lungo 5 caratteri di lunghezza.", + "username_required" => "Il campo Username è richiesto.", ]; diff --git a/app/Language/it/Enum.php b/app/Language/it/Enum.php index 3d601eedc..0bf8f8e0f 100644 --- a/app/Language/it/Enum.php +++ b/app/Language/it/Enum.php @@ -1,10 +1,10 @@ "Arrotondamento difetto", - "half_even" => "Half Even", - "half_five" => "Half Five", - "half_odd" => "Half Odd", - "half_up" => "Half Up", - "round_down" => "Round Down", - "round_up" => "Round Up", + "half_down" => "Arrotondamento difetto", + "half_even" => "Half Even", + "half_five" => "Half Five", + "half_odd" => "Half Odd", + "half_up" => "Half Up", + "round_down" => "Round Down", + "round_up" => "Round Up", ]; diff --git a/app/Language/it/Error.php b/app/Language/it/Error.php index 8c945f642..49f31ae60 100644 --- a/app/Language/it/Error.php +++ b/app/Language/it/Error.php @@ -1,5 +1,5 @@ "Non hai l'autorizzazione per accedere al modulo denominato", - "unknown" => "Errore sconosciuto", + "no_permission_module" => "Non hai l'autorizzazione per accedere al modulo denominato", + "unknown" => "Errore sconosciuto", ]; diff --git a/app/Language/it/Expenses.php b/app/Language/it/Expenses.php index 5eebad67b..1b89a5d48 100644 --- a/app/Language/it/Expenses.php +++ b/app/Language/it/Expenses.php @@ -1,50 +1,50 @@ "Aggiungi Spesa", - "amount" => "Importo", - "amount_number" => "Importo deve essere un numero", - "amount_required" => "Ammontare Spesa richiesto", - "by_category" => "Categoria", - "cannot_be_deleted" => "Non puoi eliminare la Categoria Spesa/e", - "cash" => "Contanti", - "cash_filter" => "Contanti", - "categories_name" => "Categoria", - "category_required" => "Categoria è un campo obbligatorio", - "check" => "Controlla", - "check_filter" => "Controlla", - "confirm_delete" => "Sei sicuro di voler eliminare le spese selezionate?", - "confirm_restore" => "Sei sicuro di voler ripristinare le spese selezionate?", - "credit" => "Carta di Credito", - "credit_filter" => "Carta di Credito", - "date" => "Data", - "date_number" => "Data deve essere un numero", - "date_required" => "Data è un campo obbligatorio", - "debit" => "Carta di Debito", - "debit_filter" => "Carta di Debito", - "description" => "Descrizione", - "due" => "Dovuto", - "due_filter" => "Dovuto", - "employee" => "Creata da", - "error_adding_updating" => "Errore aggiunta/aggiornamento Spesa", - "expense_id" => "Id", - "expenses_employee" => "Impiegato", - "info" => "Spesa Info", - "ip_address" => "", - "is_deleted" => "Eliminato", - "name_required" => "Nome Spesa obbligatorio", - "new" => "Nuova Spesa", - "new_supplier" => "", - "no_expenses_to_display" => "Non ci sono Spese da mostrare", - "none_selected" => "Non hai selezionato alcuna Spesa", - "one_or_multiple" => "Spesa/e", - "payment" => "Tipo di Pagamento", - "start_typing_supplier_name" => "Inizia a digitare il nome del fornitore...", - "successful_adding" => "Spesa aggiunta correttamente", - "successful_deleted" => "Spesa eliminata correttamente", - "successful_updating" => "Spesa aggiornata correttamente", - "supplier_name" => "Fornitore", - "supplier_tax_code" => "Codice Imposta", - "tax_amount" => "Imposte", - "tax_amount_number" => "", - "update" => "Aggiornamento spesa", + "add_item" => "Aggiungi Spesa", + "amount" => "Importo", + "amount_number" => "Importo deve essere un numero", + "amount_required" => "Ammontare Spesa richiesto", + "by_category" => "Categoria", + "cannot_be_deleted" => "Non puoi eliminare la Categoria Spesa/e", + "cash" => "Contanti", + "cash_filter" => "Contanti", + "categories_name" => "Categoria", + "category_required" => "Categoria è un campo obbligatorio", + "check" => "Controlla", + "check_filter" => "Controlla", + "confirm_delete" => "Sei sicuro di voler eliminare le spese selezionate?", + "confirm_restore" => "Sei sicuro di voler ripristinare le spese selezionate?", + "credit" => "Carta di Credito", + "credit_filter" => "Carta di Credito", + "date" => "Data", + "date_number" => "Data deve essere un numero", + "date_required" => "Data è un campo obbligatorio", + "debit" => "Carta di Debito", + "debit_filter" => "Carta di Debito", + "description" => "Descrizione", + "due" => "Dovuto", + "due_filter" => "Dovuto", + "employee" => "Creata da", + "error_adding_updating" => "Errore aggiunta/aggiornamento Spesa", + "expense_id" => "Id", + "expenses_employee" => "Impiegato", + "info" => "Spesa Info", + "ip_address" => "", + "is_deleted" => "Eliminato", + "name_required" => "Nome Spesa obbligatorio", + "new" => "Nuova Spesa", + "new_supplier" => "", + "no_expenses_to_display" => "Non ci sono Spese da mostrare", + "none_selected" => "Non hai selezionato alcuna Spesa", + "one_or_multiple" => "Spesa/e", + "payment" => "Tipo di Pagamento", + "start_typing_supplier_name" => "Inizia a digitare il nome del fornitore...", + "successful_adding" => "Spesa aggiunta correttamente", + "successful_deleted" => "Spesa eliminata correttamente", + "successful_updating" => "Spesa aggiornata correttamente", + "supplier_name" => "Fornitore", + "supplier_tax_code" => "Codice Imposta", + "tax_amount" => "Imposte", + "tax_amount_number" => "", + "update" => "Aggiornamento spesa", ]; diff --git a/app/Language/it/Expenses_categories.php b/app/Language/it/Expenses_categories.php index 0075f0406..b9fe4c41f 100644 --- a/app/Language/it/Expenses_categories.php +++ b/app/Language/it/Expenses_categories.php @@ -1,22 +1,22 @@ "E' richiesto il nome per la Categoria Spesa", - "add_item" => "Aggiungi categoria", - "cannot_be_deleted" => "Non puoi eliminare la Categoria Spese", - "category_id" => "Id", - "confirm_delete" => "Sei sicuro di voler eliminare la Categoria Spesa selezionata?", - "confirm_restore" => "Sei sicuro di voler ripristinare la categoria di spesa selezionata?", - "description" => "Descrizione Categoria", - "error_adding_updating" => "Errore aggiungi/aggiorna Categoria Spesa", - "info" => "Info Categoria Spesa", - "name" => "Nome Categoria", - "new" => "Nuova Categoria", - "no_expenses_categories_to_display" => "Nessuna categoria da mostrare", - "none_selected" => "Non hai selezionato nessuna Categoria Spesa", - "one_or_multiple" => "Categoria Spesa", - "quantity" => "Quantità", - "successful_adding" => "Categoria Spesa aggiunta correttamente", - "successful_deleted" => "Categoria spesa eliminata con successo", - "successful_updating" => "Categoria Spesa aggiornata correttamente", - "update" => "Aggiorna Categoria", + "category_name_required" => "E' richiesto il nome per la Categoria Spesa", + "add_item" => "Aggiungi categoria", + "cannot_be_deleted" => "Non puoi eliminare la Categoria Spese", + "category_id" => "Id", + "confirm_delete" => "Sei sicuro di voler eliminare la Categoria Spesa selezionata?", + "confirm_restore" => "Sei sicuro di voler ripristinare la categoria di spesa selezionata?", + "description" => "Descrizione Categoria", + "error_adding_updating" => "Errore aggiungi/aggiorna Categoria Spesa", + "info" => "Info Categoria Spesa", + "name" => "Nome Categoria", + "new" => "Nuova Categoria", + "no_expenses_categories_to_display" => "Nessuna categoria da mostrare", + "none_selected" => "Non hai selezionato nessuna Categoria Spesa", + "one_or_multiple" => "Categoria Spesa", + "quantity" => "Quantità", + "successful_adding" => "Categoria Spesa aggiunta correttamente", + "successful_deleted" => "Categoria spesa eliminata con successo", + "successful_updating" => "Categoria Spesa aggiornata correttamente", + "update" => "Aggiorna Categoria", ]; diff --git a/app/Language/it/Giftcards.php b/app/Language/it/Giftcards.php index af6a14dea..9a43cf242 100644 --- a/app/Language/it/Giftcards.php +++ b/app/Language/it/Giftcards.php @@ -1,71 +1,71 @@ "Inventario da aggiungere o sottrarre.", - "allow_alt_description" => "Permetti descrizione alternativa", - "bulk_edit" => "Modifica multipla", - "cannot_be_deleted" => "Non è possibile eliminare la Carta Regalo selezionata, una o più di esse sono state usate in una vendita.", - "cannot_find_giftcard" => "Carta Regalo non trovata.", - "cannot_use" => "La Carta Regalo {0} non può essere usata per la vendita: Cliente non valido.", - "card_value" => "Valore", - "category" => "Gategoria", - "change_all_to_allow_alt_desc" => "Permetti descrizione alternativa per tutti.", - "change_all_to_not_allow_allow_desc" => "Non permettere descrizioni alternative a tutti.", - "change_all_to_serialized" => "Cambia Tutti a serializzati", - "change_all_to_unserialized" => "Cambia Tutti a non-serializzati", - "confirm_bulk_edit" => "Sei sicuro che vuoi modificare la Carta Regalo selezionata?", - "confirm_delete" => "Sei sicuro che vuoi eliminare la Carta Regalo selezionata?", - "confirm_restore" => "Sei sicuro di voler ripristinare le Carte Regalo selezionate?", - "cost_price" => "Prezzo Ingrosso", - "count" => "Aggiorna Inventario", - "csv_import_failed" => "Importazione CSV fallita.", - "current_quantity" => "Quantità Corrente", - "description" => "Descrizione", - "details_count" => "Dettagli Conteggio inventario", - "do_nothing" => "Nessuna azione", - "edit_fields_you_want_to_update" => "Modifica il campo desiderato della Carta Regalo selezionata.", - "edit_multiple_giftcards" => "Modifica collettivamente le Carte Regalo.", - "error_adding_updating" => "Aggiunta o aggiornamento Carta Regalo fallito.", - "error_updating_multiple" => "Aggiornamento Carta Regalo Fallito.", - "generate_barcodes" => "Genera Codice a Barre", - "giftcard" => "Carta Regalo", - "giftcard_number" => "Numero Carta Regalo", - "info_provided_by" => "Info fornite da", - "inventory_comments" => "Commenti", - "is_serialized" => "La Carta Regalo ha un numero di serie", - "low_inventory_giftcards" => "Inventario Carta Regalo basso", - "manually_editing_of_quantity" => "Modifica manuale di Quantità", - "must_select_giftcard_for_barcode" => "Devi selezionare almeno una (1) Carta Regalo per generare i codici a barre.", - "new" => "Nuova Carta Regalo", - "no_description_giftcards" => "Nessuna Descrizione Carta Regalo", - "no_giftcards_to_display" => "Nessuna Carta Regalo da mostrare.", - "none" => "Nessuna", - "none_selected" => "Nessuna Carta Regalo selezionata da modificare.", - "number" => "Numero Carta Regalo deve essere un numero.", - "number_information" => "Numero Carta Regalo", - "number_required" => "Numero Carta Regalo è un campo richiesto.", - "one_or_multiple" => "Carta Regalo", - "person_id" => "Cliente", - "quantity" => "Quantità", - "quantity_required" => "Quantità è un campo obbligatorio. Premere (X) per annullare.", - "remaining_balance" => "Carta Regalo {0} ha valore rimanente di {1}!", - "reorder_level" => "Livello di Riordino", - "retrive_giftcard_info" => "Ottieni Info Carta Regalo", - "sales_tax_1" => "Imposte di vendita", - "sales_tax_2" => "Imposte di Vendita 2", - "serialized_giftcards" => "Carta Regalo serializzate", - "successful_adding" => "Hai correttamente aggiunto una Carta Regalo", - "successful_bulk_edit" => "Hai correttamente aggiornato la Carta Regalo selezionata", - "successful_deleted" => "Hai correttamente eliminato", - "successful_updating" => "Hai correttamente aggiornato la Carta Regalo", - "supplier" => "Fornitore", - "tax_1" => "Imposta 1", - "tax_2" => "Imposta 2", - "tax_percent" => "Percentuale Imposta", - "tax_percents" => "Precentuale Imposta(e)", - "unit_price" => "Prezzo unitario", - "upc_database" => "Archivio Codice a Barre", - "update" => "Aggiorna Carta Regalo", - "use_inventory_menu" => "Utilizza Menu Inventario", - "value" => "Valore Carta Regalo devono essere un valore.", - "value_required" => "Valore Carta Regalo è un campo obbligatorio.", + "add_minus" => "Inventario da aggiungere o sottrarre.", + "allow_alt_description" => "Permetti descrizione alternativa", + "bulk_edit" => "Modifica multipla", + "cannot_be_deleted" => "Non è possibile eliminare la Carta Regalo selezionata, una o più di esse sono state usate in una vendita.", + "cannot_find_giftcard" => "Carta Regalo non trovata.", + "cannot_use" => "La Carta Regalo {0} non può essere usata per la vendita: Cliente non valido.", + "card_value" => "Valore", + "category" => "Gategoria", + "change_all_to_allow_alt_desc" => "Permetti descrizione alternativa per tutti.", + "change_all_to_not_allow_allow_desc" => "Non permettere descrizioni alternative a tutti.", + "change_all_to_serialized" => "Cambia Tutti a serializzati", + "change_all_to_unserialized" => "Cambia Tutti a non-serializzati", + "confirm_bulk_edit" => "Sei sicuro che vuoi modificare la Carta Regalo selezionata?", + "confirm_delete" => "Sei sicuro che vuoi eliminare la Carta Regalo selezionata?", + "confirm_restore" => "Sei sicuro di voler ripristinare le Carte Regalo selezionate?", + "cost_price" => "Prezzo Ingrosso", + "count" => "Aggiorna Inventario", + "csv_import_failed" => "Importazione CSV fallita.", + "current_quantity" => "Quantità Corrente", + "description" => "Descrizione", + "details_count" => "Dettagli Conteggio inventario", + "do_nothing" => "Nessuna azione", + "edit_fields_you_want_to_update" => "Modifica il campo desiderato della Carta Regalo selezionata.", + "edit_multiple_giftcards" => "Modifica collettivamente le Carte Regalo.", + "error_adding_updating" => "Aggiunta o aggiornamento Carta Regalo fallito.", + "error_updating_multiple" => "Aggiornamento Carta Regalo Fallito.", + "generate_barcodes" => "Genera Codice a Barre", + "giftcard" => "Carta Regalo", + "giftcard_number" => "Numero Carta Regalo", + "info_provided_by" => "Info fornite da", + "inventory_comments" => "Commenti", + "is_serialized" => "La Carta Regalo ha un numero di serie", + "low_inventory_giftcards" => "Inventario Carta Regalo basso", + "manually_editing_of_quantity" => "Modifica manuale di Quantità", + "must_select_giftcard_for_barcode" => "Devi selezionare almeno una (1) Carta Regalo per generare i codici a barre.", + "new" => "Nuova Carta Regalo", + "no_description_giftcards" => "Nessuna Descrizione Carta Regalo", + "no_giftcards_to_display" => "Nessuna Carta Regalo da mostrare.", + "none" => "Nessuna", + "none_selected" => "Nessuna Carta Regalo selezionata da modificare.", + "number" => "Numero Carta Regalo deve essere un numero.", + "number_information" => "Numero Carta Regalo", + "number_required" => "Numero Carta Regalo è un campo richiesto.", + "one_or_multiple" => "Carta Regalo", + "person_id" => "Cliente", + "quantity" => "Quantità", + "quantity_required" => "Quantità è un campo obbligatorio. Premere (X) per annullare.", + "remaining_balance" => "Carta Regalo {0} ha valore rimanente di {1}!", + "reorder_level" => "Livello di Riordino", + "retrive_giftcard_info" => "Ottieni Info Carta Regalo", + "sales_tax_1" => "Imposte di vendita", + "sales_tax_2" => "Imposte di Vendita 2", + "serialized_giftcards" => "Carta Regalo serializzate", + "successful_adding" => "Hai correttamente aggiunto una Carta Regalo", + "successful_bulk_edit" => "Hai correttamente aggiornato la Carta Regalo selezionata", + "successful_deleted" => "Hai correttamente eliminato", + "successful_updating" => "Hai correttamente aggiornato la Carta Regalo", + "supplier" => "Fornitore", + "tax_1" => "Imposta 1", + "tax_2" => "Imposta 2", + "tax_percent" => "Percentuale Imposta", + "tax_percents" => "Precentuale Imposta(e)", + "unit_price" => "Prezzo unitario", + "upc_database" => "Archivio Codice a Barre", + "update" => "Aggiorna Carta Regalo", + "use_inventory_menu" => "Utilizza Menu Inventario", + "value" => "Valore Carta Regalo devono essere un valore.", + "value_required" => "Valore Carta Regalo è un campo obbligatorio.", ]; diff --git a/app/Language/it/Item_kits.php b/app/Language/it/Item_kits.php index 953f40ffc..218bec4ae 100644 --- a/app/Language/it/Item_kits.php +++ b/app/Language/it/Item_kits.php @@ -1,41 +1,41 @@ "Aggiungi Articolo", - "all" => "Tutti", - "cannot_be_deleted" => "Eliminazione Kit Articolo fallita.", - "confirm_delete" => "Sei sicuro di voler eliminare i seguenti Kit di Articoli?", - "confirm_restore" => "Sei sicuro di voler ripristinare i Kit Articolo selezionati?", - "description" => "Descrizione Kit Articoli", - "discount" => "Sconto", - "discount_fixed" => "Sconto fisso", - "discount_percent" => "Percentuale Sconto", - "discount_type" => "Tipo sconto", - "error_adding_updating" => "Aggiunta o modifica Kit Articoli fallita.", - "find_kit_item" => "Kit Articoli", - "info" => "Informazioni Kit", - "item" => "Articolo", - "item_kit_number" => "Codice a Barre", - "item_kit_number_duplicate" => "Il numero del kit dell'articolo è già presente nel database.", - "item_number" => "", - "item_number_duplicate" => "", - "items" => "Articoli", - "kit" => "Kit ID", - "kit_and_components" => "Kit e Componenti", - "kit_and_stock" => "Kit e Magazzino", - "kit_only" => "Solo Kit", - "name" => "Nome Kit", - "new" => "Nuovo Kit", - "no_item_kits_to_display" => "Nessun Kit da mostrare.", - "none_selected" => "Non hai selezionato alcun Kit.", - "one_or_multiple" => "Kit", - "price_option" => "Opzione Prezzo", - "priced_only" => "Solo prezziati", - "print_option" => "Opzioni stampa", - "quantity" => "Quantità", - "sequence" => "Sequenza", - "successful_adding" => "Hai correttamente aggiunto un Kit", - "successful_deleted" => "Hai correttamente eliminato un Kit", - "successful_updating" => "Hai correttamente aggiornato un Kit", - "unit_price" => "", - "update" => "Aggiorna un Kit", + "add_item" => "Aggiungi Articolo", + "all" => "Tutti", + "cannot_be_deleted" => "Eliminazione Kit Articolo fallita.", + "confirm_delete" => "Sei sicuro di voler eliminare i seguenti Kit di Articoli?", + "confirm_restore" => "Sei sicuro di voler ripristinare i Kit Articolo selezionati?", + "description" => "Descrizione Kit Articoli", + "discount" => "Sconto", + "discount_fixed" => "Sconto fisso", + "discount_percent" => "Percentuale Sconto", + "discount_type" => "Tipo sconto", + "error_adding_updating" => "Aggiunta o modifica Kit Articoli fallita.", + "find_kit_item" => "Kit Articoli", + "info" => "Informazioni Kit", + "item" => "Articolo", + "item_kit_number" => "Codice a Barre", + "item_kit_number_duplicate" => "Il numero del kit dell'articolo è già presente nel database.", + "item_number" => "", + "item_number_duplicate" => "", + "items" => "Articoli", + "kit" => "Kit ID", + "kit_and_components" => "Kit e Componenti", + "kit_and_stock" => "Kit e Magazzino", + "kit_only" => "Solo Kit", + "name" => "Nome Kit", + "new" => "Nuovo Kit", + "no_item_kits_to_display" => "Nessun Kit da mostrare.", + "none_selected" => "Non hai selezionato alcun Kit.", + "one_or_multiple" => "Kit", + "price_option" => "Opzione Prezzo", + "priced_only" => "Solo prezziati", + "print_option" => "Opzioni stampa", + "quantity" => "Quantità", + "sequence" => "Sequenza", + "successful_adding" => "Hai correttamente aggiunto un Kit", + "successful_deleted" => "Hai correttamente eliminato un Kit", + "successful_updating" => "Hai correttamente aggiornato un Kit", + "unit_price" => "", + "update" => "Aggiorna un Kit", ]; diff --git a/app/Language/it/Items.php b/app/Language/it/Items.php index abed6d713..0528ba8dc 100644 --- a/app/Language/it/Items.php +++ b/app/Language/it/Items.php @@ -1,120 +1,120 @@ "Inventario da aggiungere o sottrarre.", - "allow_alt_description" => "Permetti Descrizione alternativa", - "amount_entry" => "Importo Inserito", - "bulk_edit" => "Modifica collettiva", - "buy_price_required" => "Prezzo d'acquisto è un campo obbligatorio.", - "cannot_be_deleted" => "Non è possibile eliminare l'articolo/i selezionato, uno o più sono stati inseriti nelle vendite.", - "cannot_find_item" => "Articolo non trovato.", - "categories" => "", - "category" => "Categoria", - "category_new" => "", - "category_required" => "Categoria è un campo obbligatorio.", - "change_all_to_allow_alt_desc" => "Permetti descrizione alternativa a tutti.", - "change_all_to_not_allow_allow_desc" => "Non permettere Descrizione Alternativa a tutti.", - "change_all_to_serialized" => "Cambia tutti a Serializzati", - "change_all_to_unserialized" => "Cambia tutti i Non-Serializzati", - "change_image" => "Cambia Immagine", - "confirm_bulk_edit" => "Sei sicuro di voler modificare gl'Articoli selezionati?", - "confirm_bulk_edit_wipe_taxes" => "Tutte le informazioni delle tasse degli Articoli saranno sostituiti.", - "confirm_delete" => "Sei sicuro di voler eliminare gli Articoli selezionati?", - "confirm_restore" => "Sei sicuro di voler ripristinare gli Articoli selezionati?", - "cost_price" => "Prezzo all'ingrosso", - "cost_price_number" => "Prezzo all'Ingrosso deve essere un numero.", - "cost_price_required" => "Prezzo all'ingrosso è un campo obbligatorio.", - "count" => "Aggiorna Inventario", - "csv_import_failed" => "Importazione CSV fallita", - "csv_import_nodata_wrongformat" => "L'upload del file non ha dati o non è formattato correttamente.", - "csv_import_partially_failed" => "Si sono verificati {0} errori di importazione degli elementi nelle righe: {1}. Nessuna riga è stata importata.", - "csv_import_success" => "Importazione CSV dell'articolo riuscita.", - "current_quantity" => "Quantità Corrente", - "default_pack_name" => "Ogni", - "description" => "Descrizione", - "details_count" => "Dettagli Conteggio Inventario", - "do_nothing" => "Nessuna azione", - "edit" => "", - "edit_fields_you_want_to_update" => "Modifica il campo desiderato dell'articolo selezionato.", - "edit_multiple_items" => "Modifica multi-Articoli", - "empty_upc_items" => "Svuota Codice a Barre Articoli", - "error_adding_updating" => "Errore aggiunta/aggiornamento Articoli", - "error_updating_multiple" => "Errore aggiornamento Articoli", - "generate_barcodes" => "Genera Codice a Barre", - "hsn_code" => "Nomenclatura del sistema armonizzato", - "image" => "Avatar", - "import_items_csv" => "Importazione Articoli da CSV", - "info_provided_by" => "Informazioni fornite da", - "inventory" => "Inventario", - "inventory_CSV_import_quantity" => "Quantità importata da CSV", - "inventory_comments" => "Commenti", - "inventory_data_tracking" => "Tracking dei Dati Inventario", - "inventory_date" => "Data", - "inventory_employee" => "Impiegato", - "inventory_in_out_quantity" => "Quantità In/Out", - "inventory_remarks" => "Osservazioni", - "is_deleted" => "Eliminato", - "is_printed" => "", - "is_serialized" => "L'Articolo ha un Numero Seriale", - "item" => "Articolo", - "item_id" => "", - "item_number" => "Codice a Barre", - "item_number_duplicate" => "Numero Articolo è già presente nel database.", - "kit" => "Kit", - "location" => "Posizione", - "low_inventory_items" => "Articoli Fuori Stock", - "low_sell_item" => "Articolo di vendita bassa", - "manually_editing_of_quantity" => "Modifica manualmente la Quantità", - "markup" => "", - "name" => "Nome Articolo", - "name_required" => "Nome Articolo è un campo obbligatorio.", - "new" => "Nuovo Articolo", - "no_description_items" => "Nessuna Descrizione Articolo", - "no_items_to_display" => "Nessun Articolo da mostrare.", - "none" => "Nessuno", - "none_selected" => "Non hai selezionato alcun articolo da modificare", - "nonstock" => "Non-stockato", - "number_information" => "Numero Articolo", - "number_required" => "Il Codice a barre è un campo obbligatorio.", - "one_or_multiple" => "articolo/i", - "pack_name" => "Nome confezione", - "qty_per_pack" => "Quantità per confezione", - "quantity" => "Quantità", - "quantity_number" => "Quantità deve essere un numero.", - "quantity_required" => "Quantità è un campo richiesto.", - "receiving_quantity" => "Quantità Ricezione", - "remove_image" => "Rimuovi Immagine", - "reorder_level" => "Livello di Riordino", - "reorder_level_number" => "Livello di Riordino deve essere un numero.", - "reorder_level_required" => "Livello di Riordino è un campo richiesto.", - "retrive_item_info" => "Recupera le informazioni sull'articolo", - "sales_tax_1" => "Imposte di vendita", - "sales_tax_2" => "Imposta di Vendita 2", - "search_attributes" => "Attributi di ricerca", - "select_image" => "Seleziona Immagine", - "serialized_items" => "Articoli Serializzati", - "standard" => "Standard", - "stock" => "Magazzino", - "stock_location" => "Posizione Magazzino", - "stock_type" => "Tipo Magazzino", - "successful_adding" => "Hai correttamente aggiunto un articolo", - "successful_bulk_edit" => "Hai correttamente aggiornato uno o più articoli selezionati", - "successful_deleted" => "Eliminazione conclusa correttamente", - "successful_updating" => "Hai aggiornato un articolo correttamente", - "supplier" => "Fornitore", - "tax_1" => "Imposta 1", - "tax_2" => "Imposta 2", - "tax_3" => "", - "tax_category" => "Categoria fiscale", - "tax_percent" => "Percentuale Imposta", - "tax_percent_number" => "Percentuale Imposta deve essere un numero", - "tax_percent_required" => "Percentuale Imposta è un campo richiesto.", - "tax_percents" => "Percentuale Imposta(e)", - "temp" => "Temporanea", - "type" => "Tipo Articoli", - "unit_price" => "Prezzo al dettaglio", - "unit_price_number" => "Prezzo unitario deve essere un numero.", - "unit_price_required" => "Prezzo al dettaglio è un campo obbligatorio.", - "upc_database" => "Archivio Codice a Barre", - "update" => "Aggiorna Articolo", - "use_inventory_menu" => "Usa Menu Inventario", + "add_minus" => "Inventario da aggiungere o sottrarre.", + "allow_alt_description" => "Permetti Descrizione alternativa", + "amount_entry" => "Importo Inserito", + "bulk_edit" => "Modifica collettiva", + "buy_price_required" => "Prezzo d'acquisto è un campo obbligatorio.", + "cannot_be_deleted" => "Non è possibile eliminare l'articolo/i selezionato, uno o più sono stati inseriti nelle vendite.", + "cannot_find_item" => "Articolo non trovato.", + "categories" => "", + "category" => "Categoria", + "category_new" => "", + "category_required" => "Categoria è un campo obbligatorio.", + "change_all_to_allow_alt_desc" => "Permetti descrizione alternativa a tutti.", + "change_all_to_not_allow_allow_desc" => "Non permettere Descrizione Alternativa a tutti.", + "change_all_to_serialized" => "Cambia tutti a Serializzati", + "change_all_to_unserialized" => "Cambia tutti i Non-Serializzati", + "change_image" => "Cambia Immagine", + "confirm_bulk_edit" => "Sei sicuro di voler modificare gl'Articoli selezionati?", + "confirm_bulk_edit_wipe_taxes" => "Tutte le informazioni delle tasse degli Articoli saranno sostituiti.", + "confirm_delete" => "Sei sicuro di voler eliminare gli Articoli selezionati?", + "confirm_restore" => "Sei sicuro di voler ripristinare gli Articoli selezionati?", + "cost_price" => "Prezzo all'ingrosso", + "cost_price_number" => "Prezzo all'Ingrosso deve essere un numero.", + "cost_price_required" => "Prezzo all'ingrosso è un campo obbligatorio.", + "count" => "Aggiorna Inventario", + "csv_import_failed" => "Importazione CSV fallita", + "csv_import_nodata_wrongformat" => "L'upload del file non ha dati o non è formattato correttamente.", + "csv_import_partially_failed" => "Si sono verificati {0} errori di importazione degli elementi nelle righe: {1}. Nessuna riga è stata importata.", + "csv_import_success" => "Importazione CSV dell'articolo riuscita.", + "current_quantity" => "Quantità Corrente", + "default_pack_name" => "Ogni", + "description" => "Descrizione", + "details_count" => "Dettagli Conteggio Inventario", + "do_nothing" => "Nessuna azione", + "edit" => "", + "edit_fields_you_want_to_update" => "Modifica il campo desiderato dell'articolo selezionato.", + "edit_multiple_items" => "Modifica multi-Articoli", + "empty_upc_items" => "Svuota Codice a Barre Articoli", + "error_adding_updating" => "Errore aggiunta/aggiornamento Articoli", + "error_updating_multiple" => "Errore aggiornamento Articoli", + "generate_barcodes" => "Genera Codice a Barre", + "hsn_code" => "Nomenclatura del sistema armonizzato", + "image" => "Avatar", + "import_items_csv" => "Importazione Articoli da CSV", + "info_provided_by" => "Informazioni fornite da", + "inventory" => "Inventario", + "inventory_CSV_import_quantity" => "Quantità importata da CSV", + "inventory_comments" => "Commenti", + "inventory_data_tracking" => "Tracking dei Dati Inventario", + "inventory_date" => "Data", + "inventory_employee" => "Impiegato", + "inventory_in_out_quantity" => "Quantità In/Out", + "inventory_remarks" => "Osservazioni", + "is_deleted" => "Eliminato", + "is_printed" => "", + "is_serialized" => "L'Articolo ha un Numero Seriale", + "item" => "Articolo", + "item_id" => "", + "item_number" => "Codice a Barre", + "item_number_duplicate" => "Numero Articolo è già presente nel database.", + "kit" => "Kit", + "location" => "Posizione", + "low_inventory_items" => "Articoli Fuori Stock", + "low_sell_item" => "Articolo di vendita bassa", + "manually_editing_of_quantity" => "Modifica manualmente la Quantità", + "markup" => "", + "name" => "Nome Articolo", + "name_required" => "Nome Articolo è un campo obbligatorio.", + "new" => "Nuovo Articolo", + "no_description_items" => "Nessuna Descrizione Articolo", + "no_items_to_display" => "Nessun Articolo da mostrare.", + "none" => "Nessuno", + "none_selected" => "Non hai selezionato alcun articolo da modificare", + "nonstock" => "Non-stockato", + "number_information" => "Numero Articolo", + "number_required" => "Il Codice a barre è un campo obbligatorio.", + "one_or_multiple" => "articolo/i", + "pack_name" => "Nome confezione", + "qty_per_pack" => "Quantità per confezione", + "quantity" => "Quantità", + "quantity_number" => "Quantità deve essere un numero.", + "quantity_required" => "Quantità è un campo richiesto.", + "receiving_quantity" => "Quantità Ricezione", + "remove_image" => "Rimuovi Immagine", + "reorder_level" => "Livello di Riordino", + "reorder_level_number" => "Livello di Riordino deve essere un numero.", + "reorder_level_required" => "Livello di Riordino è un campo richiesto.", + "retrive_item_info" => "Recupera le informazioni sull'articolo", + "sales_tax_1" => "Imposte di vendita", + "sales_tax_2" => "Imposta di Vendita 2", + "search_attributes" => "Attributi di ricerca", + "select_image" => "Seleziona Immagine", + "serialized_items" => "Articoli Serializzati", + "standard" => "Standard", + "stock" => "Magazzino", + "stock_location" => "Posizione Magazzino", + "stock_type" => "Tipo Magazzino", + "successful_adding" => "Hai correttamente aggiunto un articolo", + "successful_bulk_edit" => "Hai correttamente aggiornato uno o più articoli selezionati", + "successful_deleted" => "Eliminazione conclusa correttamente", + "successful_updating" => "Hai aggiornato un articolo correttamente", + "supplier" => "Fornitore", + "tax_1" => "Imposta 1", + "tax_2" => "Imposta 2", + "tax_3" => "", + "tax_category" => "Categoria fiscale", + "tax_percent" => "Percentuale Imposta", + "tax_percent_number" => "Percentuale Imposta deve essere un numero", + "tax_percent_required" => "Percentuale Imposta è un campo richiesto.", + "tax_percents" => "Percentuale Imposta(e)", + "temp" => "Temporanea", + "type" => "Tipo Articoli", + "unit_price" => "Prezzo al dettaglio", + "unit_price_number" => "Prezzo unitario deve essere un numero.", + "unit_price_required" => "Prezzo al dettaglio è un campo obbligatorio.", + "upc_database" => "Archivio Codice a Barre", + "update" => "Aggiorna Articolo", + "use_inventory_menu" => "Usa Menu Inventario", ]; diff --git a/app/Language/it/Login.php b/app/Language/it/Login.php index 2ec694e7e..825555c6f 100644 --- a/app/Language/it/Login.php +++ b/app/Language/it/Login.php @@ -1,15 +1,15 @@ "Non sono un robot.", - "go" => "Go", - "invalid_gcaptcha" => "Verifica di non essere un robot.", - "invalid_installation" => "L'installazione non è corretta, controlla il tuo file php.ini.", - "invalid_username_and_password" => "Username o Password non validi.", - "login" => "Login", - "logout" => "Uscita", - "migration_needed" => "Dopo l'accesso verrà avviata una migrazione del database a {0}.", - "password" => "Password", - "required_username" => "", - "username" => "Username", - "welcome" => "Benvenuto in {0}!", + "gcaptcha" => "Non sono un robot.", + "go" => "Go", + "invalid_gcaptcha" => "Verifica di non essere un robot.", + "invalid_installation" => "L'installazione non è corretta, controlla il tuo file php.ini.", + "invalid_username_and_password" => "Username o Password non validi.", + "login" => "Login", + "logout" => "Uscita", + "migration_needed" => "Dopo l'accesso verrà avviata una migrazione del database a {0}.", + "password" => "Password", + "required_username" => "", + "username" => "Username", + "welcome" => "Benvenuto in {0}!", ]; diff --git a/app/Language/it/Messages.php b/app/Language/it/Messages.php index 804a8346c..4f40849b2 100644 --- a/app/Language/it/Messages.php +++ b/app/Language/it/Messages.php @@ -1,15 +1,15 @@ "Nome", - "last_name" => "Cognome", - "message" => "Messaggio", - "message_placeholder" => "Il tuo messaggio qui...", - "message_required" => "Messaggio richiesto", - "multiple_phones" => "(In caso di destinatari multipli, inserire il numero separato da virgole)", - "phone" => "Numero cellulare", - "phone_number_required" => "Numero cellulare richiesto", - "phone_placeholder" => "Numero(i) cellulare qui...", - "sms_send" => "Manda SMS", - "successfully_sent" => "Hai correttamente inviato a: ", - "unsuccessfully_sent" => "Messaggio non inviato correttamente a: ", + "first_name" => "Nome", + "last_name" => "Cognome", + "message" => "Messaggio", + "message_placeholder" => "Il tuo messaggio qui...", + "message_required" => "Messaggio richiesto", + "multiple_phones" => "(In caso di destinatari multipli, inserire il numero separato da virgole)", + "phone" => "Numero cellulare", + "phone_number_required" => "Numero cellulare richiesto", + "phone_placeholder" => "Numero(i) cellulare qui...", + "sms_send" => "Manda SMS", + "successfully_sent" => "Hai correttamente inviato a: ", + "unsuccessfully_sent" => "Messaggio non inviato correttamente a: ", ]; diff --git a/app/Language/it/Module.php b/app/Language/it/Module.php index cc433d613..b6f66aba5 100644 --- a/app/Language/it/Module.php +++ b/app/Language/it/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "Attributi", - "attributes_desc" => "Aggiungi, aggiorna, cancella e ricerca attributi.", - "both" => "Entrambi", - "cashups" => "Incassi", - "cashups_desc" => "Aggiungi, aggiorna, elimina e cerca incassi.", - "config" => "Configurazione", - "config_desc" => "Modifica Configurazione OSPOS.", - "customers" => "Clienti", - "customers_desc" => "Aggiungi, Aggiorna, Modifica, e Ricerca Clienti.", - "employees" => "Impiegati", - "employees_desc" => "Aggiungi, Aggiorna, Modifica, e Ricerca Impiegati.", - "expenses" => "Spese", - "expenses_categories" => "Categorie di Spesa", - "expenses_categories_desc" => "Aggiungi, Aggiorna, Modifica, e Ricerca Categorie di Spesa.", - "expenses_desc" => "Aggiungi, Aggiorna, Modifica, e Ricerca Spese.", - "giftcards" => "Carte Regalo", - "giftcards_desc" => "Aggiungi, Aggiorna, Modifica, e Ricerca Carte Regalo.", - "home" => "Home", - "home_desc" => "List home menu modules.", - "item_kits" => "Kits", - "item_kits_desc" => "Aggiungi, Aggiorna, Modifica, e Ricerca Kits.", - "items" => "Articoli", - "items_desc" => "Aggiungi, Aggiorna, Modifica, e Ricerca Articoli.", - "messages" => "Messaggi", - "messages_desc" => "Invia Messaggia ai Clienti Fornitori e Impiegati.", - "migrate" => "Migra", - "migrate_desc" => "Aggiorna Database.", - "office" => "Ufficio", - "office_desc" => "Elenco Moduli Ufficio.", - "receivings" => "Movimentazioni", - "receivings_desc" => "Elabora Ordine di Acquisto.", - "reports" => "Resoconti", - "reports_desc" => "Visualizza e crea Resoconti.", - "sales" => "Vendita", - "sales_desc" => "Elabora Vendite e Resi.", - "suppliers" => "Fornitori", - "suppliers_desc" => "Aggiungi, Aggiorna, Modifica, e Ricerca Fornitori.", - "taxes" => "Imposte", - "taxes_desc" => "Configura Imposte.", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "Attributi", + "attributes_desc" => "Aggiungi, aggiorna, cancella e ricerca attributi.", + "both" => "Entrambi", + "cashups" => "Incassi", + "cashups_desc" => "Aggiungi, aggiorna, elimina e cerca incassi.", + "config" => "Configurazione", + "config_desc" => "Modifica Configurazione OSPOS.", + "customers" => "Clienti", + "customers_desc" => "Aggiungi, Aggiorna, Modifica, e Ricerca Clienti.", + "employees" => "Impiegati", + "employees_desc" => "Aggiungi, Aggiorna, Modifica, e Ricerca Impiegati.", + "expenses" => "Spese", + "expenses_categories" => "Categorie di Spesa", + "expenses_categories_desc" => "Aggiungi, Aggiorna, Modifica, e Ricerca Categorie di Spesa.", + "expenses_desc" => "Aggiungi, Aggiorna, Modifica, e Ricerca Spese.", + "giftcards" => "Carte Regalo", + "giftcards_desc" => "Aggiungi, Aggiorna, Modifica, e Ricerca Carte Regalo.", + "home" => "Home", + "home_desc" => "List home menu modules.", + "item_kits" => "Kits", + "item_kits_desc" => "Aggiungi, Aggiorna, Modifica, e Ricerca Kits.", + "items" => "Articoli", + "items_desc" => "Aggiungi, Aggiorna, Modifica, e Ricerca Articoli.", + "messages" => "Messaggi", + "messages_desc" => "Invia Messaggia ai Clienti Fornitori e Impiegati.", + "migrate" => "Migra", + "migrate_desc" => "Aggiorna Database.", + "office" => "Ufficio", + "office_desc" => "Elenco Moduli Ufficio.", + "receivings" => "Movimentazioni", + "receivings_desc" => "Elabora Ordine di Acquisto.", + "reports" => "Resoconti", + "reports_desc" => "Visualizza e crea Resoconti.", + "sales" => "Vendita", + "sales_desc" => "Elabora Vendite e Resi.", + "suppliers" => "Fornitori", + "suppliers_desc" => "Aggiungi, Aggiorna, Modifica, e Ricerca Fornitori.", + "taxes" => "Imposte", + "taxes_desc" => "Configura Imposte.", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/it/Receivings.php b/app/Language/it/Receivings.php index 17f6f98b3..3f4c6f499 100644 --- a/app/Language/it/Receivings.php +++ b/app/Language/it/Receivings.php @@ -1,58 +1,58 @@ "", - "cancel_receiving" => "Cancella", - "cannot_be_deleted" => "Eliminazione Ricezione(i) fallita.", - "comments" => "Commenti", - "complete_receiving" => "Finito", - "confirm_cancel_receiving" => "Sei sicuro di voler cancellare questa ricezione? Tutti gli elementi saranno eliminati.", - "confirm_delete" => "Sei sicuro di voler eliminare questa ricezione? Questa azione non può essere annullata.", - "confirm_finish_receiving" => "Sei sicuro di voler inserire questa ricezione? Questa operazione non può essere annullata.", - "confirm_restore" => "", - "cost" => "Costo", - "daily" => "", - "date" => "Data di ricezione", - "date_required" => "Deve essere inserita una data corretta.", - "date_type" => "Campo Data obbligatorio.", - "delete_entire_sale" => "Cancellare intera vendita", - "discount" => "Sconto %", - "edit" => "Modifica", - "edit_sale" => "Modifica Ricezione", - "employee" => "Impiegato", - "error_editing_item" => "Modifica dell'elemento Fallito.", - "error_requisition" => "Impossibile movimentare Inventario da o per la stessa posizione di Stock.", - "find_or_scan_item" => "Cerca o Esplora Elementi", - "find_or_scan_item_or_receipt" => "Cerca o Esplora Elementi o Ricezione", - "id" => "Ricezione ID", - "item_name" => "Nome Elemento", - "mode" => "Modalità di Ricezione", - "new_supplier" => "Nuovo Fornitore", - "one_or_multiple" => "ricezione/i", - "print_after_sale" => "Stampa dopo l'operazione", - "quantity" => "Quantità", - "receipt" => "Ricevuta di Ricezione", - "receipt_number" => "Ricezione #", - "receiving" => "Ricezione", - "reference" => "Referenza", - "register" => "Articoli Ricevuti", - "requisition" => "Requisizione", - "return" => "Reso", - "select_supplier" => "Seleziona Fornitore (Opzionale)", - "ship_pack" => "Imballo", - "start_typing_supplier_name" => "Incomincia a digitare il nome del Fornitore...", - "stock" => "Scorta", - "stock_destination" => "Destinazione Stock", - "stock_locaiton" => "Luogo di Stock", - "stock_source" => "Provenienza Stock", - "successfully_deleted" => "Eliminata correttamente", - "successfully_updated" => "Ricezione correttamente aggiornata", - "supplier" => "Fornitore", - "supplier_address" => "Indirizzo", - "supplier_email" => "Email", - "supplier_location" => "Luogo", - "total" => "Totale", - "transaction_failed" => "Transazione di Ricezione fallita.", - "unable_to_add_item" => "Fallita aggiunta dell'elemento alla Ricezione.", - "unsuccessfully_updated" => "Fallito aggiornamento Ricezione.", - "update" => "Aggiorna", + "amount_due" => "", + "cancel_receiving" => "Cancella", + "cannot_be_deleted" => "Eliminazione Ricezione(i) fallita.", + "comments" => "Commenti", + "complete_receiving" => "Finito", + "confirm_cancel_receiving" => "Sei sicuro di voler cancellare questa ricezione? Tutti gli elementi saranno eliminati.", + "confirm_delete" => "Sei sicuro di voler eliminare questa ricezione? Questa azione non può essere annullata.", + "confirm_finish_receiving" => "Sei sicuro di voler inserire questa ricezione? Questa operazione non può essere annullata.", + "confirm_restore" => "", + "cost" => "Costo", + "daily" => "", + "date" => "Data di ricezione", + "date_required" => "Deve essere inserita una data corretta.", + "date_type" => "Campo Data obbligatorio.", + "delete_entire_sale" => "Cancellare intera vendita", + "discount" => "Sconto %", + "edit" => "Modifica", + "edit_sale" => "Modifica Ricezione", + "employee" => "Impiegato", + "error_editing_item" => "Modifica dell'elemento Fallito.", + "error_requisition" => "Impossibile movimentare Inventario da o per la stessa posizione di Stock.", + "find_or_scan_item" => "Cerca o Esplora Elementi", + "find_or_scan_item_or_receipt" => "Cerca o Esplora Elementi o Ricezione", + "id" => "Ricezione ID", + "item_name" => "Nome Elemento", + "mode" => "Modalità di Ricezione", + "new_supplier" => "Nuovo Fornitore", + "one_or_multiple" => "ricezione/i", + "print_after_sale" => "Stampa dopo l'operazione", + "quantity" => "Quantità", + "receipt" => "Ricevuta di Ricezione", + "receipt_number" => "Ricezione #", + "receiving" => "Ricezione", + "reference" => "Referenza", + "register" => "Articoli Ricevuti", + "requisition" => "Requisizione", + "return" => "Reso", + "select_supplier" => "Seleziona Fornitore (Opzionale)", + "ship_pack" => "Imballo", + "start_typing_supplier_name" => "Incomincia a digitare il nome del Fornitore...", + "stock" => "Scorta", + "stock_destination" => "Destinazione Stock", + "stock_locaiton" => "Luogo di Stock", + "stock_source" => "Provenienza Stock", + "successfully_deleted" => "Eliminata correttamente", + "successfully_updated" => "Ricezione correttamente aggiornata", + "supplier" => "Fornitore", + "supplier_address" => "Indirizzo", + "supplier_email" => "Email", + "supplier_location" => "Luogo", + "total" => "Totale", + "transaction_failed" => "Transazione di Ricezione fallita.", + "unable_to_add_item" => "Fallita aggiunta dell'elemento alla Ricezione.", + "unsuccessfully_updated" => "Fallito aggiornamento Ricezione.", + "update" => "Aggiorna", ]; diff --git a/app/Language/it/Reports.php b/app/Language/it/Reports.php index fbbf18299..4c6b4a52e 100644 --- a/app/Language/it/Reports.php +++ b/app/Language/it/Reports.php @@ -1,148 +1,148 @@ "Tutti", - "authority" => "Autorità", - "canceled" => "Cancellato", - "categories" => "Categorie", - "categories_summary_report" => "Resoconto riassuntivo Categorie", - "category" => "Categoria", - "code_canceled" => "CNL", - "code_invoice" => "FATT", - "code_pos" => "POS", - "code_quote" => "PREV", - "code_return" => "RESO", - "code_type" => "Tipo", - "code_work_order" => "W/O", - "comments" => "Commenti", - "commission" => "", - "complete" => "Vendite completate e Resi", - "completed_sales" => "Vendite Completate", - "confirm_delete" => "Sei sicuro di voler eliminare la voce(i) selezionata?", - "confirm_restore" => "Sei sicuro di voler ripristinare la voce(i) selezionata?", - "cost" => "Vendita all'ingrosso", - "cost_price" => "Prezzo Ingrosso", - "count" => "Conteggio", - "customer" => "Cliente", - "customers" => "Clienti", - "customers_summary_report" => "Resoconto riassuntivo Clienti", - "date" => "Data", - "date_range" => "Intervallo Data", - "description" => "Descrizione", - "detailed_receivings_report" => "Resoconto d'incasso dettagliato", - "detailed_receivings_report_input" => "", - "detailed_reports" => "Incasso dettagliato", - "detailed_requisition_report" => "", - "detailed_sales_report" => "Resoconto dettagliato Transazioni", - "discount" => "Sconto", - "discount_fixed" => "Sconto fisso", - "discount_percent" => "Percentuale Sconto", - "discount_type" => "Tipo di sconto", - "discounts" => "Sconti", - "discounts_summary_report" => "Resoconto riassuntivo Sconti", - "earned" => "Punti Acquisiti", - "employee" => "Impiegato", - "employees" => "Impiegati", - "employees_summary_report" => "Resoconto riassuntivo Impiegati", - "expenses" => "Spese", - "expenses_amount" => "Importo", - "expenses_categories" => "Spese", - "expenses_categories_summary_report" => "Resoconto riassuntivo Categorie Spese", - "expenses_category" => "Categoria", - "expenses_payment_amount" => "", - "expenses_tax_amount" => "Imposte", - "expenses_total_amount" => "Totale Importo", - "expenses_total_tax_amount" => "Totale Imposte", - "graphical_reports" => "Resoconto Grafico", - "inventory" => "Inventario", - "inventory_low" => "Inventario Basso", - "inventory_low_report" => "Resoconto Inventario Basso", - "inventory_reports" => "Resoconto inventario", - "inventory_summary" => "Riassunto Inventario", - "inventory_summary_report" => "Resoconto Riassuntivo Inventario", - "item" => "Articolo", - "item_count" => "Filtra Conteggio Articolo", - "item_name" => "Nome Articolo", - "item_number" => "Codice a Barre", - "items" => "Articoli", - "items_purchased" => "Articoli acquistati", - "items_received" => "Articoli ricevuti", - "items_summary_report" => "Resoconto riassuntivo Articoli", - "jurisdiction" => "Giurisdizione", - "low_inventory" => "", - "low_inventory_report" => "", - "low_sell_quantity" => "Quantità di vendita minima", - "more_than_zero" => "Più di zero", - "name" => "Nome", - "no_reports_to_display" => "Nessun Articolo da mostrare.", - "payment_type" => "Tipo Pagamento", - "payments" => "Pagamenti", - "payments_summary_report" => "Resoconto riassuntivo Pagamenti", - "profit" => "Profitto", - "quantity" => "Quantità", - "quantity_purchased" => "Quantità Acquistata", - "quotes" => "Preventivi", - "received_by" => "Ricevuto da", - "receiving_id" => "ID Incasso", - "receiving_type" => "Tipo Ricezione", - "receivings" => "Ricezioni", - "reorder_level" => "Livello Riordino", - "report" => "Resoconto", - "report_input" => "Input Resoconto", - "reports" => "Resoconto", - "requisition" => "", - "requisition_by" => "", - "requisition_id" => "", - "requisition_item" => "", - "requisition_item_quantity" => "", - "requisition_related_item" => "", - "requisition_related_item_total_quantity" => "", - "requisition_related_item_unit_quantity" => "", - "requisitions" => "Richieste", - "returns" => "Resi", - "revenue" => "Rendita", - "sale_id" => "ID Trans.", - "sale_type" => "Tipo Transazione", - "sales" => "Transazioni", - "sales_amount" => "Importo Transazioni", - "sales_summary_report" => "Resoconto riassuntivo Transazioni", - "sales_taxes" => "Imposte di vendita", - "sales_taxes_summary_report" => "Riepilogo delle imposte sulle vendite", - "serial_number" => "Numero Seriale", - "service_charge" => "", - "sold_by" => "Venduto da", - "sold_items" => "", - "sold_to" => "Venduto a", - "stock_location" => "Posizione Magazzino", - "sub_total_value" => "Subtotale", - "subtotal" => "Subtotale", - "summary_reports" => "Resoconto Riassuntivo", - "supplied_by" => "Fornito da", - "supplier" => "Fornitore", - "suppliers" => "Fornitori", - "suppliers_summary_report" => "Resoconto Riassuntivo Fornitori", - "tax" => "Imposte", - "tax_category" => "Categoria fiscale", - "tax_name" => "Nome Fiscale", - "tax_percent" => "Percentuale Imposte", - "tax_rate" => "Aliquota fiscale", - "taxes" => "Imposte", - "taxes_summary_report" => "Resoconto Riassuntivo Imposte", - "total" => "Totale", - "total_inventory_value" => "Valore Inventario Totale", - "total_low_sell_quantity" => "Quantità totale di vendita bassa", - "total_quantity" => "Quantità totale", - "total_retail" => "Totale Valore Vendita Inv.", - "trans_amount" => "totale della transazione", - "trans_due" => "Dovuto", - "trans_group" => "Gruppo di transazione", - "trans_nopay_sales" => "Vendite senza pagamento", - "trans_payments" => "Pagamenti", - "trans_refunded" => "Rimborsato", - "trans_sales" => "Saldi", - "trans_type" => "Tipo di transazione", - "type" => "Tipo", - "unit_price" => "Prezzo al dettaglio", - "used" => "Punti Usati", - "work_orders" => "Ordini di lavoro", - "zero_and_less" => "Zero e meno", + "all" => "Tutti", + "authority" => "Autorità", + "canceled" => "Cancellato", + "categories" => "Categorie", + "categories_summary_report" => "Resoconto riassuntivo Categorie", + "category" => "Categoria", + "code_canceled" => "CNL", + "code_invoice" => "FATT", + "code_pos" => "POS", + "code_quote" => "PREV", + "code_return" => "RESO", + "code_type" => "Tipo", + "code_work_order" => "W/O", + "comments" => "Commenti", + "commission" => "", + "complete" => "Vendite completate e Resi", + "completed_sales" => "Vendite Completate", + "confirm_delete" => "Sei sicuro di voler eliminare la voce(i) selezionata?", + "confirm_restore" => "Sei sicuro di voler ripristinare la voce(i) selezionata?", + "cost" => "Vendita all'ingrosso", + "cost_price" => "Prezzo Ingrosso", + "count" => "Conteggio", + "customer" => "Cliente", + "customers" => "Clienti", + "customers_summary_report" => "Resoconto riassuntivo Clienti", + "date" => "Data", + "date_range" => "Intervallo Data", + "description" => "Descrizione", + "detailed_receivings_report" => "Resoconto d'incasso dettagliato", + "detailed_receivings_report_input" => "", + "detailed_reports" => "Incasso dettagliato", + "detailed_requisition_report" => "", + "detailed_sales_report" => "Resoconto dettagliato Transazioni", + "discount" => "Sconto", + "discount_fixed" => "Sconto fisso", + "discount_percent" => "Percentuale Sconto", + "discount_type" => "Tipo di sconto", + "discounts" => "Sconti", + "discounts_summary_report" => "Resoconto riassuntivo Sconti", + "earned" => "Punti Acquisiti", + "employee" => "Impiegato", + "employees" => "Impiegati", + "employees_summary_report" => "Resoconto riassuntivo Impiegati", + "expenses" => "Spese", + "expenses_amount" => "Importo", + "expenses_categories" => "Spese", + "expenses_categories_summary_report" => "Resoconto riassuntivo Categorie Spese", + "expenses_category" => "Categoria", + "expenses_payment_amount" => "", + "expenses_tax_amount" => "Imposte", + "expenses_total_amount" => "Totale Importo", + "expenses_total_tax_amount" => "Totale Imposte", + "graphical_reports" => "Resoconto Grafico", + "inventory" => "Inventario", + "inventory_low" => "Inventario Basso", + "inventory_low_report" => "Resoconto Inventario Basso", + "inventory_reports" => "Resoconto inventario", + "inventory_summary" => "Riassunto Inventario", + "inventory_summary_report" => "Resoconto Riassuntivo Inventario", + "item" => "Articolo", + "item_count" => "Filtra Conteggio Articolo", + "item_name" => "Nome Articolo", + "item_number" => "Codice a Barre", + "items" => "Articoli", + "items_purchased" => "Articoli acquistati", + "items_received" => "Articoli ricevuti", + "items_summary_report" => "Resoconto riassuntivo Articoli", + "jurisdiction" => "Giurisdizione", + "low_inventory" => "", + "low_inventory_report" => "", + "low_sell_quantity" => "Quantità di vendita minima", + "more_than_zero" => "Più di zero", + "name" => "Nome", + "no_reports_to_display" => "Nessun Articolo da mostrare.", + "payment_type" => "Tipo Pagamento", + "payments" => "Pagamenti", + "payments_summary_report" => "Resoconto riassuntivo Pagamenti", + "profit" => "Profitto", + "quantity" => "Quantità", + "quantity_purchased" => "Quantità Acquistata", + "quotes" => "Preventivi", + "received_by" => "Ricevuto da", + "receiving_id" => "ID Incasso", + "receiving_type" => "Tipo Ricezione", + "receivings" => "Ricezioni", + "reorder_level" => "Livello Riordino", + "report" => "Resoconto", + "report_input" => "Input Resoconto", + "reports" => "Resoconto", + "requisition" => "", + "requisition_by" => "", + "requisition_id" => "", + "requisition_item" => "", + "requisition_item_quantity" => "", + "requisition_related_item" => "", + "requisition_related_item_total_quantity" => "", + "requisition_related_item_unit_quantity" => "", + "requisitions" => "Richieste", + "returns" => "Resi", + "revenue" => "Rendita", + "sale_id" => "ID Trans.", + "sale_type" => "Tipo Transazione", + "sales" => "Transazioni", + "sales_amount" => "Importo Transazioni", + "sales_summary_report" => "Resoconto riassuntivo Transazioni", + "sales_taxes" => "Imposte di vendita", + "sales_taxes_summary_report" => "Riepilogo delle imposte sulle vendite", + "serial_number" => "Numero Seriale", + "service_charge" => "", + "sold_by" => "Venduto da", + "sold_items" => "", + "sold_to" => "Venduto a", + "stock_location" => "Posizione Magazzino", + "sub_total_value" => "Subtotale", + "subtotal" => "Subtotale", + "summary_reports" => "Resoconto Riassuntivo", + "supplied_by" => "Fornito da", + "supplier" => "Fornitore", + "suppliers" => "Fornitori", + "suppliers_summary_report" => "Resoconto Riassuntivo Fornitori", + "tax" => "Imposte", + "tax_category" => "Categoria fiscale", + "tax_name" => "Nome Fiscale", + "tax_percent" => "Percentuale Imposte", + "tax_rate" => "Aliquota fiscale", + "taxes" => "Imposte", + "taxes_summary_report" => "Resoconto Riassuntivo Imposte", + "total" => "Totale", + "total_inventory_value" => "Valore Inventario Totale", + "total_low_sell_quantity" => "Quantità totale di vendita bassa", + "total_quantity" => "Quantità totale", + "total_retail" => "Totale Valore Vendita Inv.", + "trans_amount" => "totale della transazione", + "trans_due" => "Dovuto", + "trans_group" => "Gruppo di transazione", + "trans_nopay_sales" => "Vendite senza pagamento", + "trans_payments" => "Pagamenti", + "trans_refunded" => "Rimborsato", + "trans_sales" => "Saldi", + "trans_type" => "Tipo di transazione", + "type" => "Tipo", + "unit_price" => "Prezzo al dettaglio", + "used" => "Punti Usati", + "work_orders" => "Ordini di lavoro", + "zero_and_less" => "Zero e meno", ]; diff --git a/app/Language/it/Sales.php b/app/Language/it/Sales.php index db151993d..eae529867 100644 --- a/app/Language/it/Sales.php +++ b/app/Language/it/Sales.php @@ -1,224 +1,224 @@ "Punti Dispnibili", - "rewards_package" => "Punti Fedeltà", - "rewards_remaining_balance" => "Valore Punti Rimanenti è ", - "account_number" => "Account #", - "add_payment" => "Aggiungi Pagamento", - "amount_due" => "Importo Dovuto", - "amount_tendered" => "Importo Offerto", - "authorized_signature" => "Firma Autorizzata", - "cancel_sale" => "Annulla", - "cash" => "Contanti", - "cash_1" => "", - "cash_2" => "", - "cash_3" => "", - "cash_4" => "", - "cash_adjustment" => "Adeguamento in contanti", - "cash_deposit" => "Deposito Contanti", - "cash_filter" => "Contanti", - "change_due" => "Resto Dovuto", - "change_price" => "Cambio prezzo di vendita", - "check" => "Assegno", - "check_balance" => "Promemoria Assegno", - "check_filter" => "Assegno", - "close" => "", - "comment" => "Commento", - "comments" => "Commenti", - "company_name" => "", - "complete" => "", - "complete_sale" => "Completata", - "confirm_cancel_sale" => "Sei sicuro di voler annullare questa vendita? Tutti gli articoli saranno eliminati.", - "confirm_delete" => "Sei sicuro di voler eliminare la vendita selezionata?", - "confirm_restore" => "Sei sicuro di voler ripristinare la vendita selezionata?", - "credit" => "Carta di Credito", - "credit_deposit" => "Deposito Credito", - "credit_filter" => "Carta di credito", - "current_table" => "", - "customer" => "Nome", - "customer_address" => "Indirizzo", - "customer_discount" => "Sconto", - "customer_email" => "Email", - "customer_location" => "Località", - "customer_mailchimp_status" => "Stato Mailchimp", - "customer_optional" => "(Opzionale)", - "customer_required" => "(Richiesto)", - "customer_total" => "Totale", - "customer_total_spent" => "", - "daily_sales" => "", - "date" => "Data di Vendita", - "date_range" => "Intervallo Data", - "date_required" => "Deve essere inserita una Data corretta.", - "date_type" => "Data è un campo obbligatorio.", - "debit" => "Carta di Debito", - "debit_filter" => "", - "delete" => "Permetti Eliminazione", - "delete_confirmation" => "Sei sicuro di voler eliminare questa vendita? Questa azione non può essere annullata.", - "delete_entire_sale" => "Cancella intera vendita", - "delete_successful" => "Cancellazione Vendita terminata correttamente.", - "delete_unsuccessful" => "Eliminazione Vendita Fallita.", - "description_abbrv" => "Desc.", - "discard" => "Scartare", - "discard_quote" => "", - "discount" => "Sconto %", - "discount_included" => "% Sconto", - "discount_short" => "%", - "due" => "Dovuto", - "due_filter" => "Dovuto", - "edit" => "Modifica", - "edit_item" => "Modifica Articolo", - "edit_sale" => "Modifica Vendita", - "email_receipt" => "Scontrino Email", - "employee" => "Impiegato", - "entry" => "Voce", - "error_editing_item" => "Errore modificando un articolo", - "find_or_scan_item" => "Scansiona o Cerca Articolo", - "find_or_scan_item_or_receipt" => "Scansiona o Cerca Articolo o Scontrino", - "giftcard" => "Carta Regalo", - "giftcard_balance" => "Carta Regalo Bilancio", - "giftcard_filter" => "", - "giftcard_number" => "Numero Carta Regalo", - "group_by_category" => "Raggruppa per Categoria", - "group_by_type" => "Raggruppa per Tipo", - "hsn" => "HSN", - "id" => "ID vendita", - "include_prices" => "Includi i prezzi?", - "invoice" => "Fattura", - "invoice_confirm" => "Questa fattura sarà inviata a", - "invoice_enable" => "Crea Fattura", - "invoice_filter" => "Fatture", - "invoice_no_email" => "Questo cliente non ha un indirizzo email valido.", - "invoice_number" => "Fattura #", - "invoice_number_duplicate" => "Numero Fattura deve essere unico.", - "invoice_sent" => "Fattura inviata a", - "invoice_total" => "Totale Fattura", - "invoice_type_custom_invoice" => "Fattura Personalizzata (custom_invoice.php)", - "invoice_type_custom_tax_invoice" => "Fattura con Imposta Personalizzata (custom_tax_invoice.php)", - "invoice_type_invoice" => "Fattura (invoice.php)", - "invoice_type_tax_invoice" => "Fattura d'Imposta", - "invoice_unsent" => "Fatturazione fallita sarà inviata a", - "invoice_update" => "Ricalcola", - "item_insufficient_of_stock" => "L'articolo non ha un magazzino sufficiente.", - "item_name" => "Nome Articolo", - "item_number" => "Articolo #", - "item_out_of_stock" => "Articolo fuori stock.", - "key_browser" => "Scorciatoie utili", - "key_cancel" => "Cancels Current Quote/Invoice/Sale", - "key_customer_search" => "Customer Search", - "key_finish_quote" => "Termina Preventivo/Fattura senza pagamento", - "key_finish_sale" => "Add Payment and Complete Invoice/Sale", - "key_full" => "Apri in modalità a schermo intero", - "key_function" => "Function", - "key_help" => "Shortcuts", - "key_help_modal" => "Open Shortcuts Window", - "key_in" => "Ingrandire", - "key_item_search" => "Item Search", - "key_out" => "Rimpicciolisci", - "key_payment" => "Add Payment", - "key_print" => "Stampa pagina corrente", - "key_restore" => "Ripristina visualizzazione/zoom originale", - "key_search" => "Tabelle dei rapporti di ricerca", - "key_suspend" => "Suspend Current Sale", - "key_suspended" => "Show Suspended Sales", - "key_system" => "Scorciatoie di sistema", - "key_tendered" => "Edit Amount Tendered", - "key_title" => "Sales Keyboard Shortcuts", - "mc" => "", - "mode" => "Modalità registra", - "must_enter_numeric" => "Import Offerto deve essere un numero.", - "must_enter_numeric_giftcard" => "Numero Carta Regalo deve essere un numero.", - "new_customer" => "Nuovo Cliente", - "new_item" => "Nuovo Articolo", - "no_description" => "Nessun", - "no_filter" => "Tutti", - "no_items_in_cart" => "Non ci sono Articoli nel carrello.", - "no_sales_to_display" => "Nessuna Vendita da mostrare.", - "none_selected" => "Non hai selezionato alcuna vendita da cancellare.", - "nontaxed_ind" => " vendita non tassata ", - "not_authorized" => "Questa azione non può essere autorizzata.", - "one_or_multiple" => "Vendita/e", - "payment" => "Tipo di pagamento", - "payment_amount" => "Importo", - "payment_not_cover_total" => "Pagamento Import deve essere maggiore o uguale al Totale.", - "payment_type" => "Tipo", - "payments" => "", - "payments_total" => "Totale Pagamenti", - "price" => "Prezzo", - "print_after_sale" => "Stampa dopo la vendita", - "quantity" => "Quantità", - "quantity_less_than_reorder_level" => "Attenzione: la Quantità desiderata è sotto al Livello di riordino per questo Articolo.", - "quantity_less_than_zero" => "Attenzione: la Quantità desiderata non è sufficiente. Puoi ancora procedere alla vendita ma controlla l'inventario.", - "quantity_of_items" => "Quantità di {0} Articolo", - "quote" => "Preventivo", - "quote_number" => "Numero Preventivo", - "quote_number_duplicate" => "Numero Preventivo deve essere unico.", - "quote_sent" => "Preventivo inviato a", - "quote_unsent" => "Preventivo fallito d'essere inviato a", - "receipt" => "Scontrino di Vendita", - "receipt_no_email" => "Questo cliente non ha un'email valida.", - "receipt_number" => "Vendita #", - "receipt_sent" => "Scontrino inviato a", - "receipt_unsent" => "Scontrino fallito da inviare a", - "refund" => "Tipo di rimborso", - "register" => "Registrazione Vendita", - "remove_customer" => "Rimuovi Cliente", - "remove_discount" => "", - "return" => "Reso", - "rewards" => "Punti Raccolta", - "rewards_balance" => "Bilancio Punti Raccolta", - "sale" => "Vendita", - "sale_by_invoice" => "Fattura", - "sale_for_customer" => "Cliente:", - "sale_time" => "Tempo", - "sales_tax" => "Imposte di Vendita", - "sales_total" => "", - "select_customer" => "Seleziona Cliente (Opzionale)", - "send_invoice" => "Invia Fattura", - "send_quote" => "Invia Preventivo", - "send_receipt" => "Invia Scontrino", - "send_work_order" => "Invia Commessa/Ordine di Lavoro", - "serial" => "Seriale", - "service_charge" => "", - "show_due" => "", - "show_invoice" => "Mostra Fattura", - "show_receipt" => "Mostra Scontrino", - "start_typing_customer_name" => "Digita i dettagli del cliente...", - "start_typing_item_name" => "Incomincia a digitare Nome Articolo o spara il Codice a Barre...", - "stock" => "Disponibilità", - "stock_location" => "Posizione Stock", - "sub_total" => "Subtotale", - "successfully_deleted" => "Hai correttamente eliminato", - "successfully_restored" => "Hai correttamente ripristinato", - "successfully_suspended_sale" => "Vendita sospesa correttamente.", - "successfully_updated" => "Aggiornamento vendita a buon fine.", - "suspend_sale" => "Sospendi", - "suspended_doc_id" => "Documento", - "suspended_sale_id" => "ID", - "suspended_sales" => "Sospeso", - "table" => "Tavolo", - "takings" => "Vendite del Giorno", - "tax" => "Imposte", - "tax_id" => "ID Imposta", - "tax_invoice" => "Fattura d'Imposta", - "tax_percent" => "Imposte %", - "taxed_ind" => "T", - "total" => "Totale", - "total_tax_exclusive" => "Imposte escluse", - "transaction_failed" => "Transazione di Vendita fallita.", - "unable_to_add_item" => "Aggiunta articolo alla vendita non riuscita", - "unsuccessfully_deleted" => "Eliminazione Vendita/e fallita.", - "unsuccessfully_restored" => "Ripristino Vendita/e fallita.", - "unsuccessfully_suspended_sale" => "Vendita sospesa fallita.", - "unsuccessfully_updated" => "Aggiornamento Vendita fallito.", - "unsuspend" => "Non-sospeso", - "unsuspend_and_delete" => "Azione", - "update" => "Aggiorna", - "upi" => "UPI", - "visa" => "", - "wholesale" => "", - "work_order" => "Ordine di Lavoro", - "work_order_number" => "Numero Ordine di Lavoro", - "work_order_number_duplicate" => "Numero Ordine di Lavoro deve essere unico.", - "work_order_sent" => "Ordine di lavoro inviato", - "work_order_unsent" => "Ordine di Lavoro fallito da inviare a", + "customers_available_points" => "Punti Dispnibili", + "rewards_package" => "Punti Fedeltà", + "rewards_remaining_balance" => "Valore Punti Rimanenti è ", + "account_number" => "Account #", + "add_payment" => "Aggiungi Pagamento", + "amount_due" => "Importo Dovuto", + "amount_tendered" => "Importo Offerto", + "authorized_signature" => "Firma Autorizzata", + "cancel_sale" => "Annulla", + "cash" => "Contanti", + "cash_1" => "", + "cash_2" => "", + "cash_3" => "", + "cash_4" => "", + "cash_adjustment" => "Adeguamento in contanti", + "cash_deposit" => "Deposito Contanti", + "cash_filter" => "Contanti", + "change_due" => "Resto Dovuto", + "change_price" => "Cambio prezzo di vendita", + "check" => "Assegno", + "check_balance" => "Promemoria Assegno", + "check_filter" => "Assegno", + "close" => "", + "comment" => "Commento", + "comments" => "Commenti", + "company_name" => "", + "complete" => "", + "complete_sale" => "Completata", + "confirm_cancel_sale" => "Sei sicuro di voler annullare questa vendita? Tutti gli articoli saranno eliminati.", + "confirm_delete" => "Sei sicuro di voler eliminare la vendita selezionata?", + "confirm_restore" => "Sei sicuro di voler ripristinare la vendita selezionata?", + "credit" => "Carta di Credito", + "credit_deposit" => "Deposito Credito", + "credit_filter" => "Carta di credito", + "current_table" => "", + "customer" => "Nome", + "customer_address" => "Indirizzo", + "customer_discount" => "Sconto", + "customer_email" => "Email", + "customer_location" => "Località", + "customer_mailchimp_status" => "Stato Mailchimp", + "customer_optional" => "(Opzionale)", + "customer_required" => "(Richiesto)", + "customer_total" => "Totale", + "customer_total_spent" => "", + "daily_sales" => "", + "date" => "Data di Vendita", + "date_range" => "Intervallo Data", + "date_required" => "Deve essere inserita una Data corretta.", + "date_type" => "Data è un campo obbligatorio.", + "debit" => "Carta di Debito", + "debit_filter" => "", + "delete" => "Permetti Eliminazione", + "delete_confirmation" => "Sei sicuro di voler eliminare questa vendita? Questa azione non può essere annullata.", + "delete_entire_sale" => "Cancella intera vendita", + "delete_successful" => "Cancellazione Vendita terminata correttamente.", + "delete_unsuccessful" => "Eliminazione Vendita Fallita.", + "description_abbrv" => "Desc.", + "discard" => "Scartare", + "discard_quote" => "", + "discount" => "Sconto %", + "discount_included" => "% Sconto", + "discount_short" => "%", + "due" => "Dovuto", + "due_filter" => "Dovuto", + "edit" => "Modifica", + "edit_item" => "Modifica Articolo", + "edit_sale" => "Modifica Vendita", + "email_receipt" => "Scontrino Email", + "employee" => "Impiegato", + "entry" => "Voce", + "error_editing_item" => "Errore modificando un articolo", + "find_or_scan_item" => "Scansiona o Cerca Articolo", + "find_or_scan_item_or_receipt" => "Scansiona o Cerca Articolo o Scontrino", + "giftcard" => "Carta Regalo", + "giftcard_balance" => "Carta Regalo Bilancio", + "giftcard_filter" => "", + "giftcard_number" => "Numero Carta Regalo", + "group_by_category" => "Raggruppa per Categoria", + "group_by_type" => "Raggruppa per Tipo", + "hsn" => "HSN", + "id" => "ID vendita", + "include_prices" => "Includi i prezzi?", + "invoice" => "Fattura", + "invoice_confirm" => "Questa fattura sarà inviata a", + "invoice_enable" => "Crea Fattura", + "invoice_filter" => "Fatture", + "invoice_no_email" => "Questo cliente non ha un indirizzo email valido.", + "invoice_number" => "Fattura #", + "invoice_number_duplicate" => "Numero Fattura deve essere unico.", + "invoice_sent" => "Fattura inviata a", + "invoice_total" => "Totale Fattura", + "invoice_type_custom_invoice" => "Fattura Personalizzata (custom_invoice.php)", + "invoice_type_custom_tax_invoice" => "Fattura con Imposta Personalizzata (custom_tax_invoice.php)", + "invoice_type_invoice" => "Fattura (invoice.php)", + "invoice_type_tax_invoice" => "Fattura d'Imposta", + "invoice_unsent" => "Fatturazione fallita sarà inviata a", + "invoice_update" => "Ricalcola", + "item_insufficient_of_stock" => "L'articolo non ha un magazzino sufficiente.", + "item_name" => "Nome Articolo", + "item_number" => "Articolo #", + "item_out_of_stock" => "Articolo fuori stock.", + "key_browser" => "Scorciatoie utili", + "key_cancel" => "Cancels Current Quote/Invoice/Sale", + "key_customer_search" => "Customer Search", + "key_finish_quote" => "Termina Preventivo/Fattura senza pagamento", + "key_finish_sale" => "Add Payment and Complete Invoice/Sale", + "key_full" => "Apri in modalità a schermo intero", + "key_function" => "Function", + "key_help" => "Shortcuts", + "key_help_modal" => "Open Shortcuts Window", + "key_in" => "Ingrandire", + "key_item_search" => "Item Search", + "key_out" => "Rimpicciolisci", + "key_payment" => "Add Payment", + "key_print" => "Stampa pagina corrente", + "key_restore" => "Ripristina visualizzazione/zoom originale", + "key_search" => "Tabelle dei rapporti di ricerca", + "key_suspend" => "Suspend Current Sale", + "key_suspended" => "Show Suspended Sales", + "key_system" => "Scorciatoie di sistema", + "key_tendered" => "Edit Amount Tendered", + "key_title" => "Sales Keyboard Shortcuts", + "mc" => "", + "mode" => "Modalità registra", + "must_enter_numeric" => "Import Offerto deve essere un numero.", + "must_enter_numeric_giftcard" => "Numero Carta Regalo deve essere un numero.", + "new_customer" => "Nuovo Cliente", + "new_item" => "Nuovo Articolo", + "no_description" => "Nessun", + "no_filter" => "Tutti", + "no_items_in_cart" => "Non ci sono Articoli nel carrello.", + "no_sales_to_display" => "Nessuna Vendita da mostrare.", + "none_selected" => "Non hai selezionato alcuna vendita da cancellare.", + "nontaxed_ind" => " vendita non tassata ", + "not_authorized" => "Questa azione non può essere autorizzata.", + "one_or_multiple" => "Vendita/e", + "payment" => "Tipo di pagamento", + "payment_amount" => "Importo", + "payment_not_cover_total" => "Pagamento Import deve essere maggiore o uguale al Totale.", + "payment_type" => "Tipo", + "payments" => "", + "payments_total" => "Totale Pagamenti", + "price" => "Prezzo", + "print_after_sale" => "Stampa dopo la vendita", + "quantity" => "Quantità", + "quantity_less_than_reorder_level" => "Attenzione: la Quantità desiderata è sotto al Livello di riordino per questo Articolo.", + "quantity_less_than_zero" => "Attenzione: la Quantità desiderata non è sufficiente. Puoi ancora procedere alla vendita ma controlla l'inventario.", + "quantity_of_items" => "Quantità di {0} Articolo", + "quote" => "Preventivo", + "quote_number" => "Numero Preventivo", + "quote_number_duplicate" => "Numero Preventivo deve essere unico.", + "quote_sent" => "Preventivo inviato a", + "quote_unsent" => "Preventivo fallito d'essere inviato a", + "receipt" => "Scontrino di Vendita", + "receipt_no_email" => "Questo cliente non ha un'email valida.", + "receipt_number" => "Vendita #", + "receipt_sent" => "Scontrino inviato a", + "receipt_unsent" => "Scontrino fallito da inviare a", + "refund" => "Tipo di rimborso", + "register" => "Registrazione Vendita", + "remove_customer" => "Rimuovi Cliente", + "remove_discount" => "", + "return" => "Reso", + "rewards" => "Punti Raccolta", + "rewards_balance" => "Bilancio Punti Raccolta", + "sale" => "Vendita", + "sale_by_invoice" => "Fattura", + "sale_for_customer" => "Cliente:", + "sale_time" => "Tempo", + "sales_tax" => "Imposte di Vendita", + "sales_total" => "", + "select_customer" => "Seleziona Cliente (Opzionale)", + "send_invoice" => "Invia Fattura", + "send_quote" => "Invia Preventivo", + "send_receipt" => "Invia Scontrino", + "send_work_order" => "Invia Commessa/Ordine di Lavoro", + "serial" => "Seriale", + "service_charge" => "", + "show_due" => "", + "show_invoice" => "Mostra Fattura", + "show_receipt" => "Mostra Scontrino", + "start_typing_customer_name" => "Digita i dettagli del cliente...", + "start_typing_item_name" => "Incomincia a digitare Nome Articolo o spara il Codice a Barre...", + "stock" => "Disponibilità", + "stock_location" => "Posizione Stock", + "sub_total" => "Subtotale", + "successfully_deleted" => "Hai correttamente eliminato", + "successfully_restored" => "Hai correttamente ripristinato", + "successfully_suspended_sale" => "Vendita sospesa correttamente.", + "successfully_updated" => "Aggiornamento vendita a buon fine.", + "suspend_sale" => "Sospendi", + "suspended_doc_id" => "Documento", + "suspended_sale_id" => "ID", + "suspended_sales" => "Sospeso", + "table" => "Tavolo", + "takings" => "Vendite del Giorno", + "tax" => "Imposte", + "tax_id" => "ID Imposta", + "tax_invoice" => "Fattura d'Imposta", + "tax_percent" => "Imposte %", + "taxed_ind" => "T", + "total" => "Totale", + "total_tax_exclusive" => "Imposte escluse", + "transaction_failed" => "Transazione di Vendita fallita.", + "unable_to_add_item" => "Aggiunta articolo alla vendita non riuscita", + "unsuccessfully_deleted" => "Eliminazione Vendita/e fallita.", + "unsuccessfully_restored" => "Ripristino Vendita/e fallita.", + "unsuccessfully_suspended_sale" => "Vendita sospesa fallita.", + "unsuccessfully_updated" => "Aggiornamento Vendita fallito.", + "unsuspend" => "Non-sospeso", + "unsuspend_and_delete" => "Azione", + "update" => "Aggiorna", + "upi" => "UPI", + "visa" => "", + "wholesale" => "", + "work_order" => "Ordine di Lavoro", + "work_order_number" => "Numero Ordine di Lavoro", + "work_order_number_duplicate" => "Numero Ordine di Lavoro deve essere unico.", + "work_order_sent" => "Ordine di lavoro inviato", + "work_order_unsent" => "Ordine di Lavoro fallito da inviare a", ]; diff --git a/app/Language/it/Suppliers.php b/app/Language/it/Suppliers.php index dd2de633b..760d50f6b 100644 --- a/app/Language/it/Suppliers.php +++ b/app/Language/it/Suppliers.php @@ -1,24 +1,24 @@ "Partita IVA", - "agency_name" => "Nome Agenzia", - "cannot_be_deleted" => "Eliminazione del/i Fornitore/i non possibile. Uno o più hanno delle vendite.", - "category" => "Categoria", - "company_name" => "Nome della ditta", - "company_name_required" => "Nome della ditta è un campo obbligatorio.", - "confirm_delete" => "Sei sicuro di voler eliminare il/i Fornitore/i selezionati?", - "confirm_restore" => "Sei sicuro di voler ripristinare i Fornitori selezionati?", - "cost" => "Finanziatore", - "error_adding_updating" => "Fallito aggiornamento o aggiunta Fornitore.", - "goods" => "Fornitore", - "new" => "Nuovo Fornitore", - "none_selected" => "Non hai selezionato alcun Fornitore da eliminare.", - "one_or_multiple" => "Fornitore/i", - "successful_adding" => "Hai aggiunto con successo un Fornitore", - "successful_deleted" => "Eliminato con successo", - "successful_updating" => "Aggiornamento Fornitore effettuato con successo", - "supplier" => "Fornitore", - "supplier_id" => "Id", - "tax_id" => "Nome Imposta", - "update" => "Aggiornamento Fornitore", + "account_number" => "Partita IVA", + "agency_name" => "Nome Agenzia", + "cannot_be_deleted" => "Eliminazione del/i Fornitore/i non possibile. Uno o più hanno delle vendite.", + "category" => "Categoria", + "company_name" => "Nome della ditta", + "company_name_required" => "Nome della ditta è un campo obbligatorio.", + "confirm_delete" => "Sei sicuro di voler eliminare il/i Fornitore/i selezionati?", + "confirm_restore" => "Sei sicuro di voler ripristinare i Fornitori selezionati?", + "cost" => "Finanziatore", + "error_adding_updating" => "Fallito aggiornamento o aggiunta Fornitore.", + "goods" => "Fornitore", + "new" => "Nuovo Fornitore", + "none_selected" => "Non hai selezionato alcun Fornitore da eliminare.", + "one_or_multiple" => "Fornitore/i", + "successful_adding" => "Hai aggiunto con successo un Fornitore", + "successful_deleted" => "Eliminato con successo", + "successful_updating" => "Aggiornamento Fornitore effettuato con successo", + "supplier" => "Fornitore", + "supplier_id" => "Id", + "tax_id" => "Nome Imposta", + "update" => "Aggiornamento Fornitore", ]; diff --git a/app/Language/it/Taxes.php b/app/Language/it/Taxes.php index 94857bd86..03d4d87ae 100644 --- a/app/Language/it/Taxes.php +++ b/app/Language/it/Taxes.php @@ -1,82 +1,82 @@ "Aggiungi Eccezione", - "cascade" => "Cascata", - "cascade_sequence" => "Sequenza a cascata (Verificare corretta dicitura)", - "city" => "Città", - "code" => "Codice", - "confirm_delete" => "Sei sicuro di voler eliminare questo Codice Fiscale? Questa azione non può essere annullata", - "confirm_restore" => "Sei sicuro di voler ripristinare i Codice Tassa selezionati?", - "default_tax_category" => "Categoria Imposta Default", - "default_tax_rate" => "Tassazione predefinita", - "error_adding_updating" => "Aggiunta o modifica Codice Fiscale Fallito", - "group_seq" => "Gruppo Seq", - "jurisdiction_name" => "Nome giurisdizione", - "name" => "Nome", - "new" => "Nuovo Codice Imposta", - "no_taxes" => "", - "no_taxes_to_display" => "Nessun codice fiscale disponibile da visualizzare", - "reporting_authority" => "Autorità di segnalazione", - "round_half_down" => "Arrotonda in difetto", - "round_half_even" => "Arrotonda Half Even", - "round_half_odd" => "Arrotonda Half Odd", - "round_half_up" => "Arrotonda in eccesso", - "rounding_code" => "Codice arrotondamento", - "sales_tax" => "Imposte di vendita", - "sales_tax_by_invoice" => "Imposte Fattura", - "sequence" => "Seq. tasse", - "state" => "Stato", - "successful_deleted" => "Eliminato correttamente", - "tax_categories" => "Categoria tassa", - "tax_categories_configuration" => "Configurazione categoria tassa", - "tax_categories_saved_successfully" => "Modifiche alle categorie fiscali salvate", - "tax_categories_saved_unsuccessfully" => "Modifiche alle categorie fiscali non salvate", - "tax_category" => "Categoria Imposta", - "tax_category_code" => "Codice categoria fiscale", - "tax_category_duplicate" => "Duplica categoria fiscale", - "tax_category_invalid_chars" => "Caratteri non validi nel nome della categoria fiscale", - "tax_category_name" => "Nome della categoria fiscale", - "tax_category_new" => "Nuova imposta fiscale", - "tax_category_required" => "Categoria fiscale richiesta", - "tax_code" => "Codice Imposta", - "tax_code_cannot_be_deleted" => "Eliminazione codice fiscale non riuscita", - "tax_code_duplicate" => "Codice fiscale duplicato", - "tax_code_invalid_chars" => "Caratteri non validi nel codice fiscale", - "tax_code_name" => "Nome Codice Imposta", - "tax_code_required" => "Codice Fiscale è un campo obbligatorio", - "tax_code_successful_deleted" => "Hai eliminato con successo Codice Imposta", - "tax_code_successful_updated" => "Aggiornato correttamente", - "tax_code_successful_updating" => "Codice Imposta aggiornato correttamente", - "tax_code_successfully_added" => "Aggiunto correttamente", - "tax_code_type" => "Tipo Codice Imposta", - "tax_codes" => "Codici Fiscale", - "tax_codes_configuration" => "Configurazione Codici Fiscale", - "tax_codes_saved_successfully" => "Modifiche al codice fiscale salvate", - "tax_codes_saved_unsuccessfully" => "Modifiche al codice fiscale non salvate", - "tax_excluded" => "Tasse escluse", - "tax_group" => "Gruppo fiscale", - "tax_group_not_unique" => "Il gruppo fiscale {0} non è univoco", - "tax_group_sequence" => "Sequenza gruppo fiscale", - "tax_included" => "Tasse incluse", - "tax_jurisdiction" => "Giurisdizione tributaria", - "tax_jurisdiction_duplicate" => "Doppia giurisdizione fiscale", - "tax_jurisdiction_invalid_chars" => "Caratteri non validi nel nome della giurisdizione", - "tax_jurisdiction_required" => "È richiesta la giurisdizione fiscale", - "tax_jurisdictions" => "Giurisdizioni fiscali", - "tax_jurisdictions_configuration" => "Configurazione delle giurisdizioni fiscali", - "tax_jurisdictions_saved_successfully" => "Modifiche alla giurisdizione fiscale salvate", - "tax_jurisdictions_saved_unsuccessfully" => "Modifiche alla giurisdizione fiscale non salvate", - "tax_rate" => "Tasso di Imposta", - "tax_rate_configuration" => "Configurazione dell'aliquota fiscale", - "tax_rate_error_adding_updating" => "Aggiunta o aggiornamento dell'aliquota fiscale non riuscita", - "tax_rate_numeric" => "L'aliquota fiscale deve essere un numero", - "tax_rate_required" => "L'aliquota fiscale è un campo obbligatorio", - "tax_rate_successful_updated" => "Hai aggiornato con successo", - "tax_rate_successfully_added" => "Hai aggiunto con successo", - "tax_rates" => "Aliquote fiscali", - "tax_rates_configuration" => "Configurazione delle aliquote fiscali", - "tax_rounding" => "Arrotondamento delle tasse", - "tax_type" => "Tipo Imposta", - "update" => "Aggiorna Imposta Categoria", - "vat_tax" => "IVA", + "add_exception" => "Aggiungi Eccezione", + "cascade" => "Cascata", + "cascade_sequence" => "Sequenza a cascata (Verificare corretta dicitura)", + "city" => "Città", + "code" => "Codice", + "confirm_delete" => "Sei sicuro di voler eliminare questo Codice Fiscale? Questa azione non può essere annullata", + "confirm_restore" => "Sei sicuro di voler ripristinare i Codice Tassa selezionati?", + "default_tax_category" => "Categoria Imposta Default", + "default_tax_rate" => "Tassazione predefinita", + "error_adding_updating" => "Aggiunta o modifica Codice Fiscale Fallito", + "group_seq" => "Gruppo Seq", + "jurisdiction_name" => "Nome giurisdizione", + "name" => "Nome", + "new" => "Nuovo Codice Imposta", + "no_taxes" => "", + "no_taxes_to_display" => "Nessun codice fiscale disponibile da visualizzare", + "reporting_authority" => "Autorità di segnalazione", + "round_half_down" => "Arrotonda in difetto", + "round_half_even" => "Arrotonda Half Even", + "round_half_odd" => "Arrotonda Half Odd", + "round_half_up" => "Arrotonda in eccesso", + "rounding_code" => "Codice arrotondamento", + "sales_tax" => "Imposte di vendita", + "sales_tax_by_invoice" => "Imposte Fattura", + "sequence" => "Seq. tasse", + "state" => "Stato", + "successful_deleted" => "Eliminato correttamente", + "tax_categories" => "Categoria tassa", + "tax_categories_configuration" => "Configurazione categoria tassa", + "tax_categories_saved_successfully" => "Modifiche alle categorie fiscali salvate", + "tax_categories_saved_unsuccessfully" => "Modifiche alle categorie fiscali non salvate", + "tax_category" => "Categoria Imposta", + "tax_category_code" => "Codice categoria fiscale", + "tax_category_duplicate" => "Duplica categoria fiscale", + "tax_category_invalid_chars" => "Caratteri non validi nel nome della categoria fiscale", + "tax_category_name" => "Nome della categoria fiscale", + "tax_category_new" => "Nuova imposta fiscale", + "tax_category_required" => "Categoria fiscale richiesta", + "tax_code" => "Codice Imposta", + "tax_code_cannot_be_deleted" => "Eliminazione codice fiscale non riuscita", + "tax_code_duplicate" => "Codice fiscale duplicato", + "tax_code_invalid_chars" => "Caratteri non validi nel codice fiscale", + "tax_code_name" => "Nome Codice Imposta", + "tax_code_required" => "Codice Fiscale è un campo obbligatorio", + "tax_code_successful_deleted" => "Hai eliminato con successo Codice Imposta", + "tax_code_successful_updated" => "Aggiornato correttamente", + "tax_code_successful_updating" => "Codice Imposta aggiornato correttamente", + "tax_code_successfully_added" => "Aggiunto correttamente", + "tax_code_type" => "Tipo Codice Imposta", + "tax_codes" => "Codici Fiscale", + "tax_codes_configuration" => "Configurazione Codici Fiscale", + "tax_codes_saved_successfully" => "Modifiche al codice fiscale salvate", + "tax_codes_saved_unsuccessfully" => "Modifiche al codice fiscale non salvate", + "tax_excluded" => "Tasse escluse", + "tax_group" => "Gruppo fiscale", + "tax_group_not_unique" => "Il gruppo fiscale {0} non è univoco", + "tax_group_sequence" => "Sequenza gruppo fiscale", + "tax_included" => "Tasse incluse", + "tax_jurisdiction" => "Giurisdizione tributaria", + "tax_jurisdiction_duplicate" => "Doppia giurisdizione fiscale", + "tax_jurisdiction_invalid_chars" => "Caratteri non validi nel nome della giurisdizione", + "tax_jurisdiction_required" => "È richiesta la giurisdizione fiscale", + "tax_jurisdictions" => "Giurisdizioni fiscali", + "tax_jurisdictions_configuration" => "Configurazione delle giurisdizioni fiscali", + "tax_jurisdictions_saved_successfully" => "Modifiche alla giurisdizione fiscale salvate", + "tax_jurisdictions_saved_unsuccessfully" => "Modifiche alla giurisdizione fiscale non salvate", + "tax_rate" => "Tasso di Imposta", + "tax_rate_configuration" => "Configurazione dell'aliquota fiscale", + "tax_rate_error_adding_updating" => "Aggiunta o aggiornamento dell'aliquota fiscale non riuscita", + "tax_rate_numeric" => "L'aliquota fiscale deve essere un numero", + "tax_rate_required" => "L'aliquota fiscale è un campo obbligatorio", + "tax_rate_successful_updated" => "Hai aggiornato con successo", + "tax_rate_successfully_added" => "Hai aggiunto con successo", + "tax_rates" => "Aliquote fiscali", + "tax_rates_configuration" => "Configurazione delle aliquote fiscali", + "tax_rounding" => "Arrotondamento delle tasse", + "tax_type" => "Tipo Imposta", + "update" => "Aggiorna Imposta Categoria", + "vat_tax" => "IVA", ]; diff --git a/app/Language/it/index.html b/app/Language/it/index.html index b702fbc39..69df4e1df 100644 --- a/app/Language/it/index.html +++ b/app/Language/it/index.html @@ -1,7 +1,7 @@ - 403 Forbidden + 403 Forbidden diff --git a/app/Language/km/Attributes.php b/app/Language/km/Attributes.php index 01eef7ca6..e326a37da 100644 --- a/app/Language/km/Attributes.php +++ b/app/Language/km/Attributes.php @@ -1,32 +1,32 @@ "ព៌តមានបន្ថែម មិនអាចមានអក្សរ '_' រឺ '|'", - "confirm_delete" => "តើអ្នកពិតជាចង់លុប ព៌តមានបន្ថែម ដែលបានជ្រើសរើស?", - "confirm_restore" => "តើអ្នកពិតជាដាក់ឡើងវិញនៅ ព៌តមានបន្ថែម ដែលបានជ្រើសរើស?", - "definition_cannot_be_deleted" => "មិនអាចលុបព៌តមានបន្ថែមដែលបានជ្រើសរើស", - "definition_error_adding_updating" => "ព៌តមានបន្ថែម {0} មិនអាចថែម រឺកែប្រែបានឡើយ។​ សូមចូលទៅឆែករបាយការណ៍កំហុស។", - "definition_flags" => "ដាក់បង្ហាញព៌តមានបន្ថែម", - "definition_group" => "ក្រុម", - "definition_id" => "លេខរៀង", - "definition_name" => "បន្ថែម ព៌តមាន", - "definition_name_required" => "ឈ្មោះនៃព៌តមានបន្ថែម​ គឺត្រូវការចាំបាច់ត្រូវបំពេញ", - "definition_one_or_multiple" => "ព៌តមានបន្ថែម", - "definition_successful_adding" => "", - "definition_successful_deleted" => "", - "definition_successful_updating" => "", - "definition_type" => "", - "definition_type_required" => "", - "definition_unit" => "", - "definition_values" => "", - "new" => "", - "no_attributes_to_display" => "", - "receipt_visibility" => "", - "show_in_items" => "", - "show_in_items_visibility" => "", - "show_in_receipt" => "", - "show_in_receivings" => "", - "show_in_receivings_visibility" => "", - "show_in_sales" => "", - "show_in_sales_visibility" => "", - "update" => "", + "attribute_value_invalid_chars" => "ព៌តមានបន្ថែម មិនអាចមានអក្សរ '_' រឺ '|'", + "confirm_delete" => "តើអ្នកពិតជាចង់លុប ព៌តមានបន្ថែម ដែលបានជ្រើសរើស?", + "confirm_restore" => "តើអ្នកពិតជាដាក់ឡើងវិញនៅ ព៌តមានបន្ថែម ដែលបានជ្រើសរើស?", + "definition_cannot_be_deleted" => "មិនអាចលុបព៌តមានបន្ថែមដែលបានជ្រើសរើស", + "definition_error_adding_updating" => "ព៌តមានបន្ថែម {0} មិនអាចថែម រឺកែប្រែបានឡើយ។​ សូមចូលទៅឆែករបាយការណ៍កំហុស។", + "definition_flags" => "ដាក់បង្ហាញព៌តមានបន្ថែម", + "definition_group" => "ក្រុម", + "definition_id" => "លេខរៀង", + "definition_name" => "បន្ថែម ព៌តមាន", + "definition_name_required" => "ឈ្មោះនៃព៌តមានបន្ថែម​ គឺត្រូវការចាំបាច់ត្រូវបំពេញ", + "definition_one_or_multiple" => "ព៌តមានបន្ថែម", + "definition_successful_adding" => "", + "definition_successful_deleted" => "", + "definition_successful_updating" => "", + "definition_type" => "", + "definition_type_required" => "", + "definition_unit" => "", + "definition_values" => "", + "new" => "", + "no_attributes_to_display" => "", + "receipt_visibility" => "", + "show_in_items" => "", + "show_in_items_visibility" => "", + "show_in_receipt" => "", + "show_in_receivings" => "", + "show_in_receivings_visibility" => "", + "show_in_sales" => "", + "show_in_sales_visibility" => "", + "update" => "", ]; diff --git a/app/Language/km/Bootstrap_tables.php b/app/Language/km/Bootstrap_tables.php index beb030dd2..f30673dc4 100644 --- a/app/Language/km/Bootstrap_tables.php +++ b/app/Language/km/Bootstrap_tables.php @@ -1,11 +1,11 @@ "ទាំងអស់", - "columns" => "ជួរឈរ", - "hide_show_pagination" => "លាក់/បង្ហាញ ទំព័រ", - "loading" => "កំពុងរៀបចំ, សូមរងចាំ...", - "page_from_to" => "បង្ហាញពី {0} ដល់​ {1} នៃ​ {2} ជួរដេក", - "refresh" => "ធ្វើអោយថ្មី", - "rows_per_page" => "{0} ជួរដេក ក្នុងមួយទំព័រ", - "toggle" => "បិទបើក", + "all" => "ទាំងអស់", + "columns" => "ជួរឈរ", + "hide_show_pagination" => "លាក់/បង្ហាញ ទំព័រ", + "loading" => "កំពុងរៀបចំ, សូមរងចាំ...", + "page_from_to" => "បង្ហាញពី {0} ដល់​ {1} នៃ​ {2} ជួរដេក", + "refresh" => "ធ្វើអោយថ្មី", + "rows_per_page" => "{0} ជួរដេក ក្នុងមួយទំព័រ", + "toggle" => "បិទបើក", ]; diff --git a/app/Language/km/Calendar.php b/app/Language/km/Calendar.php index 82b301d1d..f67214649 100644 --- a/app/Language/km/Calendar.php +++ b/app/Language/km/Calendar.php @@ -1,48 +1,48 @@ "អទ", - "mo" => "ចន", - "tu" => "អង", - "we" => "ពធ", - "th" => "ពហ", - "fr" => "សក", - "sa" => "សៅ", - "sun" => "អាទិត្យ", - "mon" => "ច័ន្ទ", - "tue" => "អង្គារ", - "wed" => "ពុធ", - "thu" => "ព្រហស្បតិ៍", - "fri" => "សុក្រ", - "sat" => "សៅរ៏", - "sunday" => "ថ្ងៃអាទិត្យ", - "monday" => "ថ្ងៃច័ន្ទ", - "tuesday" => "ថ្ងៃអង្គារ", - "wednesday" => "ថ្ងៃពុធ", - "thursday" => "ថ្ងៃព្រហស្បតិ៍", - "friday" => "ថ្ងៃសុក្រ", - "saturday" => "ថ្ងៃសៅរ៏", - "jan" => "មករា", - "feb" => "កុម្ភះ", - "mar" => "មីនា", - "apr" => "មេសា", - "may" => "ឧសភា", - "jun" => "មិថុនា", - "jul" => "កក្កដា", - "aug" => "សីហា", - "sep" => "កញ្ញា", - "oct" => "តុលា", - "nov" => "វិច្ឆិកា", - "dec" => "ធ្នូ", - "january" => "ខែមករា", - "february" => "ខែកុម្ភះ", - "march" => "ខែមីនា", - "april" => "ខែមេសា", - "mayl" => "ខែឧសភា", - "june" => "ខែមិថុនា", - "july" => "ខែកក្កដា", - "august" => "ខែសីហា", - "september" => "ខែកញ្ញា", - "october" => "ខែតុលា", - "november" => "ខែវិច្ឆិកា", - "december" => "ខែធ្នូ", + "su" => "អទ", + "mo" => "ចន", + "tu" => "អង", + "we" => "ពធ", + "th" => "ពហ", + "fr" => "សក", + "sa" => "សៅ", + "sun" => "អាទិត្យ", + "mon" => "ច័ន្ទ", + "tue" => "អង្គារ", + "wed" => "ពុធ", + "thu" => "ព្រហស្បតិ៍", + "fri" => "សុក្រ", + "sat" => "សៅរ៏", + "sunday" => "ថ្ងៃអាទិត្យ", + "monday" => "ថ្ងៃច័ន្ទ", + "tuesday" => "ថ្ងៃអង្គារ", + "wednesday" => "ថ្ងៃពុធ", + "thursday" => "ថ្ងៃព្រហស្បតិ៍", + "friday" => "ថ្ងៃសុក្រ", + "saturday" => "ថ្ងៃសៅរ៏", + "jan" => "មករា", + "feb" => "កុម្ភះ", + "mar" => "មីនា", + "apr" => "មេសា", + "may" => "ឧសភា", + "jun" => "មិថុនា", + "jul" => "កក្កដា", + "aug" => "សីហា", + "sep" => "កញ្ញា", + "oct" => "តុលា", + "nov" => "វិច្ឆិកា", + "dec" => "ធ្នូ", + "january" => "ខែមករា", + "february" => "ខែកុម្ភះ", + "march" => "ខែមីនា", + "april" => "ខែមេសា", + "mayl" => "ខែឧសភា", + "june" => "ខែមិថុនា", + "july" => "ខែកក្កដា", + "august" => "ខែសីហា", + "september" => "ខែកញ្ញា", + "october" => "ខែតុលា", + "november" => "ខែវិច្ឆិកា", + "december" => "ខែធ្នូ", ]; diff --git a/app/Language/km/Cashups.php b/app/Language/km/Cashups.php index e2074bf30..295242b5a 100644 --- a/app/Language/km/Cashups.php +++ b/app/Language/km/Cashups.php @@ -1,49 +1,49 @@ "ទឹកប្រាក់", - "amount_number" => "ចំនួនទឹកប្រាក់ត្រូវតែជាលេខ", - "amount_required" => "ត្រង់ទឹកប្រាក់​ ត្រូវការបំពេញ", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "សាច់ប្រាក់សរុប មិនអាចលុបចោលបានទេ", - "cash_difference" => "", - "close_date" => "កាលបរិច្ឆេទបិទ", - "close_employee" => "បិទដោយ", - "closed_amount_card" => "កាត", - "closed_amount_cash" => "សាច់ប្រាក់បិទ", - "closed_amount_check" => "ត្រួតពិនិត្", - "closed_amount_due" => "កំណត់", - "closed_amount_giftcard" => "", - "closed_amount_total" => "សរុប", - "closed_date" => "កាលបរិច្ឆេទបានបិទ", - "confirm_delete" => "តើអ្នកពិតជាចង់លុប សាច់ប្រាក់សរុប ដែលបានជ្រើសរើសមែនទេ?", - "confirm_restore" => "តើអ្នកពិតជាចង់ស្តារ សាច់ប្រាក់សរុប ដែលបានជ្រើសរើសឡើងវិញមែនទេ?", - "confirm_submit" => "", - "date_number" => "កាលបរិច្ឆេទត្រូវតែជាលេខ", - "date_required" => "កាលបរិច្ឆេទ ត្រូវការបំពេញ", - "description" => "បរិយាយ", - "enable_expected" => "", - "error_adding_updating" => "មានបញ្ហាក្នុងការបន្ថែម/ធ្វើបច្ចុប្បន្នភាពសាច់ប្រាក់សរុប", - "giftcard" => "", - "id" => "លេខសម្គាល់", - "info" => "ព័ត៌មានសាច់ប្រាក់សរុប", - "info_employee" => "", - "is_deleted" => "បានលុប", - "new" => "សាច់ប្រាក់សរុបថ្មី", - "no_cashups_to_display" => "មិនមាន សាច់ប្រាក់សរុប ដើម្បីបង្ហាញទេ", - "none_selected" => "អ្នកមិនបានជ្រើសរើសយកសាច់ប្រាក់សរុបណាមួយទេ", - "note" => "ចំណាំ", - "one_or_multiple" => "សាច់ប្រាក់សរុប", - "open_amount_cash" => "ប្រាក់បើកបញ្ជី", - "open_date" => "កាលបរិច្ឆេទបើក", - "open_employee" => "បើកដោយ", - "opened_date" => "កាលបរិច្ឆេទបានបើក", - "successful_adding" => "ការបញ្ចូលសាច់ប្រាក់សរុប ទទួលបានជោគជ័យ", - "successful_deleted" => "ការលុបសាច់ប្រាក់សរុបទទួលបានជោគជ័យ", - "successful_updating" => "ការធ្វើបច្ចុប្បន្នភាពសាច់ប្រាក់សរុបបានជោគជ័យ", - "total" => "សរុប", - "transfer_amount_cash" => "ដាក់ប្រាក់/ដកប្រាក់", - "transfer_amount_cash_minus" => "", - "update" => "ធ្វើបច្ចុប្បន្នភាពសាច់ប្រាក់សរុប", - "warning" => "", + "amount" => "ទឹកប្រាក់", + "amount_number" => "ចំនួនទឹកប្រាក់ត្រូវតែជាលេខ", + "amount_required" => "ត្រង់ទឹកប្រាក់​ ត្រូវការបំពេញ", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "សាច់ប្រាក់សរុប មិនអាចលុបចោលបានទេ", + "cash_difference" => "", + "close_date" => "កាលបរិច្ឆេទបិទ", + "close_employee" => "បិទដោយ", + "closed_amount_card" => "កាត", + "closed_amount_cash" => "សាច់ប្រាក់បិទ", + "closed_amount_check" => "ត្រួតពិនិត្", + "closed_amount_due" => "កំណត់", + "closed_amount_giftcard" => "", + "closed_amount_total" => "សរុប", + "closed_date" => "កាលបរិច្ឆេទបានបិទ", + "confirm_delete" => "តើអ្នកពិតជាចង់លុប សាច់ប្រាក់សរុប ដែលបានជ្រើសរើសមែនទេ?", + "confirm_restore" => "តើអ្នកពិតជាចង់ស្តារ សាច់ប្រាក់សរុប ដែលបានជ្រើសរើសឡើងវិញមែនទេ?", + "confirm_submit" => "", + "date_number" => "កាលបរិច្ឆេទត្រូវតែជាលេខ", + "date_required" => "កាលបរិច្ឆេទ ត្រូវការបំពេញ", + "description" => "បរិយាយ", + "enable_expected" => "", + "error_adding_updating" => "មានបញ្ហាក្នុងការបន្ថែម/ធ្វើបច្ចុប្បន្នភាពសាច់ប្រាក់សរុប", + "giftcard" => "", + "id" => "លេខសម្គាល់", + "info" => "ព័ត៌មានសាច់ប្រាក់សរុប", + "info_employee" => "", + "is_deleted" => "បានលុប", + "new" => "សាច់ប្រាក់សរុបថ្មី", + "no_cashups_to_display" => "មិនមាន សាច់ប្រាក់សរុប ដើម្បីបង្ហាញទេ", + "none_selected" => "អ្នកមិនបានជ្រើសរើសយកសាច់ប្រាក់សរុបណាមួយទេ", + "note" => "ចំណាំ", + "one_or_multiple" => "សាច់ប្រាក់សរុប", + "open_amount_cash" => "ប្រាក់បើកបញ្ជី", + "open_date" => "កាលបរិច្ឆេទបើក", + "open_employee" => "បើកដោយ", + "opened_date" => "កាលបរិច្ឆេទបានបើក", + "successful_adding" => "ការបញ្ចូលសាច់ប្រាក់សរុប ទទួលបានជោគជ័យ", + "successful_deleted" => "ការលុបសាច់ប្រាក់សរុបទទួលបានជោគជ័យ", + "successful_updating" => "ការធ្វើបច្ចុប្បន្នភាពសាច់ប្រាក់សរុបបានជោគជ័យ", + "total" => "សរុប", + "transfer_amount_cash" => "ដាក់ប្រាក់/ដកប្រាក់", + "transfer_amount_cash_minus" => "", + "update" => "ធ្វើបច្ចុប្បន្នភាពសាច់ប្រាក់សរុប", + "warning" => "", ]; diff --git a/app/Language/km/Common.php b/app/Language/km/Common.php index 8b741a588..4be8d0e5b 100644 --- a/app/Language/km/Common.php +++ b/app/Language/km/Common.php @@ -1,88 +1,88 @@ "អាសយដ្ឋាន ១", - "address_2" => "អាសយដ្ឋាន ២", - "admin" => "", - "city" => "ទីក្រុង", - "clerk" => "", - "close" => "បិទ", - "color" => "", - "comments" => "មតិយោបល់", - "common" => "ទូទៅ", - "confirm_search" => "អ្នកបានជ្រើសរើសជួរមួយឬច្រើនជួរ, វានឹងមិនត្រូវបានជ្រើសរើសទេបន្ទាប់ពីការស្វែងរករបស់អ្នក។ តើអ្នកពិតជាចង់ដាក់ស្នើការស្វែងរកនេះទេ?", - "copyrights" => "© 2010 - {0}", - "correct_errors" => "សូមកែកំហុសដែលបានកំណត់មុនពេលរក្សាទុក", - "country" => "ប្រទេស", - "dashboard" => "", - "date" => "កាលបរិច្ឆេទ", - "delete" => "លុប", - "det" => "លម្អិត", - "download_import_template" => "ទាញយកការនាំចូលទំព័រគំរូ CSV", - "edit" => "កែប្រែ", - "email" => "អ៊ីមែល", - "email_invalid_format" => "អ៊ីមែលនេះគឺខុសទម្រង់", - "export_csv" => "នាំចេញ CSV", - "export_csv_no" => "ទេ", - "export_csv_yes" => "បាទ", - "fields_required_message" => "ចន្លោះពណ៌ក្រហមត្រូវការបំពេញ", - "fields_required_message_unique" => "", - "first_name" => "នាម​ខ្លួន", - "first_name_required" => "នាម​ខ្លួនត្រូវការបំពេញ", - "first_page" => "ដំបូង", - "gender" => "ភេទ", - "gender_female" => "ស", - "gender_male" => "ប", - "gender_undefined" => "", - "icon" => "រូបតំណាង", - "id" => "លេខសម្គាល់", - "import" => "នាំចូល", - "import_change_file" => "ផ្លាស់ប្តូរ", - "import_csv" => "ការនាំចូល CSV", - "import_full_path" => "ផ្លូវពេញលេញទៅឯកសារ CSV ត្រូវមាន", - "import_remove_file" => "យកចេញ", - "import_select_file" => "ជ្រើសរើសឯកសារ", - "inv" => "វ.ក", - "last_name" => "នាមត្រកូល", - "last_name_required" => "នាមត្រកូលត្រូវការបំពេញ", - "last_page" => "ចុងក្រោយ", - "learn_about_project" => "ដើម្បីរៀនព័ត៌មានចុងក្រោយអំពីគម្រោងនេះ", - "list_of" => "បញ្ជី​នៃ", - "logo" => "ឡូហ្គោល", - "logo_mark" => "ម៉ាក", - "logout" => "ចាកចេញ", - "manager" => "", - "migration_needed" => "ការ​ប្ដូរមូលដ្ឋានទិន្នន័យទៅ {0} នឹងចាប់ផ្តើមបន្ទាប់ពីចូល", - "new" => "ថ្មី", - "no" => "", - "no_persons_to_display" => "មិនមានមនុស្សដើម្បីបង្ហាញទេ", - "none_selected_text" => "[ជ្រើសរើស]", - "or" => "ឬ", - "people" => "", - "phone_number" => "លេខទូរស័ព្ទ", - "phone_number_required" => "", - "please_visit_my" => "សូមកាន់", - "position" => "", - "powered_by" => "ដំណើរការដោយ", - "price" => "តម្លៃ", - "print" => "បោះពុម្ព", - "remove" => "យកចេញ", - "required" => "ចាំបាច់", - "restore" => "ស្ដារ", - "return_policy" => "គោលការណ៍ប្រគល់វិញ", - "search" => "ស្វែងរក", - "search_options" => "ជម្រើសស្វែងរក", - "searched_for" => "ស្វែងរក", - "software_short" => "", - "software_title" => "ប្រព័ន្ធគ្រប់គ្រងការលក់ដូរ", - "state" => "រដ្ឋ", - "submit" => "បញ្ជូន", - "total_spent" => "ចំណាយសរុប", - "unknown" => "មិនស្គាល់", - "view_recent_sales" => "មើលការលក់ថ្មីៗ", - "website" => "opensourcepos.org", - "welcome" => "សូមស្វាគមន៍", - "welcome_message" => "សូមស្វាគមន៍មកកាន់ OSPOS, សូមចុចលើម៉ូឌុលខាងក្រោមដើម្បីចាប់ផ្តើម", - "yes" => "", - "you_are_using_ospos" => "", - "zip" => "កូដប្រៃសណីយ៍", + "address_1" => "អាសយដ្ឋាន ១", + "address_2" => "អាសយដ្ឋាន ២", + "admin" => "", + "city" => "ទីក្រុង", + "clerk" => "", + "close" => "បិទ", + "color" => "", + "comments" => "មតិយោបល់", + "common" => "ទូទៅ", + "confirm_search" => "អ្នកបានជ្រើសរើសជួរមួយឬច្រើនជួរ, វានឹងមិនត្រូវបានជ្រើសរើសទេបន្ទាប់ពីការស្វែងរករបស់អ្នក។ តើអ្នកពិតជាចង់ដាក់ស្នើការស្វែងរកនេះទេ?", + "copyrights" => "© 2010 - {0}", + "correct_errors" => "សូមកែកំហុសដែលបានកំណត់មុនពេលរក្សាទុក", + "country" => "ប្រទេស", + "dashboard" => "", + "date" => "កាលបរិច្ឆេទ", + "delete" => "លុប", + "det" => "លម្អិត", + "download_import_template" => "ទាញយកការនាំចូលទំព័រគំរូ CSV", + "edit" => "កែប្រែ", + "email" => "អ៊ីមែល", + "email_invalid_format" => "អ៊ីមែលនេះគឺខុសទម្រង់", + "export_csv" => "នាំចេញ CSV", + "export_csv_no" => "ទេ", + "export_csv_yes" => "បាទ", + "fields_required_message" => "ចន្លោះពណ៌ក្រហមត្រូវការបំពេញ", + "fields_required_message_unique" => "", + "first_name" => "នាម​ខ្លួន", + "first_name_required" => "នាម​ខ្លួនត្រូវការបំពេញ", + "first_page" => "ដំបូង", + "gender" => "ភេទ", + "gender_female" => "ស", + "gender_male" => "ប", + "gender_undefined" => "", + "icon" => "រូបតំណាង", + "id" => "លេខសម្គាល់", + "import" => "នាំចូល", + "import_change_file" => "ផ្លាស់ប្តូរ", + "import_csv" => "ការនាំចូល CSV", + "import_full_path" => "ផ្លូវពេញលេញទៅឯកសារ CSV ត្រូវមាន", + "import_remove_file" => "យកចេញ", + "import_select_file" => "ជ្រើសរើសឯកសារ", + "inv" => "វ.ក", + "last_name" => "នាមត្រកូល", + "last_name_required" => "នាមត្រកូលត្រូវការបំពេញ", + "last_page" => "ចុងក្រោយ", + "learn_about_project" => "ដើម្បីរៀនព័ត៌មានចុងក្រោយអំពីគម្រោងនេះ", + "list_of" => "បញ្ជី​នៃ", + "logo" => "ឡូហ្គោល", + "logo_mark" => "ម៉ាក", + "logout" => "ចាកចេញ", + "manager" => "", + "migration_needed" => "ការ​ប្ដូរមូលដ្ឋានទិន្នន័យទៅ {0} នឹងចាប់ផ្តើមបន្ទាប់ពីចូល", + "new" => "ថ្មី", + "no" => "", + "no_persons_to_display" => "មិនមានមនុស្សដើម្បីបង្ហាញទេ", + "none_selected_text" => "[ជ្រើសរើស]", + "or" => "ឬ", + "people" => "", + "phone_number" => "លេខទូរស័ព្ទ", + "phone_number_required" => "", + "please_visit_my" => "សូមកាន់", + "position" => "", + "powered_by" => "ដំណើរការដោយ", + "price" => "តម្លៃ", + "print" => "បោះពុម្ព", + "remove" => "យកចេញ", + "required" => "ចាំបាច់", + "restore" => "ស្ដារ", + "return_policy" => "គោលការណ៍ប្រគល់វិញ", + "search" => "ស្វែងរក", + "search_options" => "ជម្រើសស្វែងរក", + "searched_for" => "ស្វែងរក", + "software_short" => "", + "software_title" => "ប្រព័ន្ធគ្រប់គ្រងការលក់ដូរ", + "state" => "រដ្ឋ", + "submit" => "បញ្ជូន", + "total_spent" => "ចំណាយសរុប", + "unknown" => "មិនស្គាល់", + "view_recent_sales" => "មើលការលក់ថ្មីៗ", + "website" => "opensourcepos.org", + "welcome" => "សូមស្វាគមន៍", + "welcome_message" => "សូមស្វាគមន៍មកកាន់ OSPOS, សូមចុចលើម៉ូឌុលខាងក្រោមដើម្បីចាប់ផ្តើម", + "yes" => "", + "you_are_using_ospos" => "", + "zip" => "កូដប្រៃសណីយ៍", ]; diff --git a/app/Language/km/Config.php b/app/Language/km/Config.php index 49d8ea4fc..2b0ffe152 100644 --- a/app/Language/km/Config.php +++ b/app/Language/km/Config.php @@ -1,330 +1,330 @@ "", - "address_required" => "", - "all_set" => "All file permissions are set correctly!", - "allow_duplicate_barcodes" => "", - "apostrophe" => "", - "backup_button" => "", - "backup_database" => "", - "barcode" => "", - "barcode_company" => "", - "barcode_configuration" => "", - "barcode_content" => "", - "barcode_first_row" => "", - "barcode_font" => "", - "barcode_formats" => "", - "barcode_generate_if_empty" => "", - "barcode_height" => "", - "barcode_id" => "", - "barcode_info" => "", - "barcode_layout" => "", - "barcode_name" => "", - "barcode_number" => "", - "barcode_number_in_row" => "", - "barcode_page_cellspacing" => "", - "barcode_page_width" => "", - "barcode_price" => "", - "barcode_second_row" => "", - "barcode_third_row" => "", - "barcode_tooltip" => "", - "barcode_type" => "", - "barcode_width" => "", - "bottom" => "", - "cash_button" => "", - "cash_button_1" => "", - "cash_button_2" => "", - "cash_button_3" => "", - "cash_button_4" => "", - "cash_button_5" => "", - "cash_button_6" => "", - "cash_decimals" => "", - "cash_decimals_tooltip" => "", - "cash_rounding" => "", - "category_dropdown" => "", - "center" => "", - "change_apperance_tooltip" => "", - "comma" => "", - "company" => "", - "company_avatar" => "", - "company_change_image" => "", - "company_logo" => "", - "company_remove_image" => "", - "company_required" => "", - "company_select_image" => "", - "company_website_url" => "", - "country_codes" => "", - "country_codes_tooltip" => "", - "currency_code" => "", - "currency_decimals" => "", - "currency_symbol" => "", - "current_employee_only" => "", - "customer_reward" => "", - "customer_reward_duplicate" => "", - "customer_reward_enable" => "", - "customer_reward_invalid_chars" => "", - "customer_reward_required" => "", - "customer_sales_tax_support" => "", - "date_or_time_format" => "", - "datetimeformat" => "", - "decimal_point" => "", - "default_barcode_font_size_number" => "", - "default_barcode_font_size_required" => "", - "default_barcode_height_number" => "", - "default_barcode_height_required" => "", - "default_barcode_num_in_row_number" => "", - "default_barcode_num_in_row_required" => "", - "default_barcode_page_cellspacing_number" => "", - "default_barcode_page_cellspacing_required" => "", - "default_barcode_page_width_number" => "", - "default_barcode_page_width_required" => "", - "default_barcode_width_number" => "", - "default_barcode_width_required" => "", - "default_item_columns" => "", - "default_origin_tax_code" => "", - "default_receivings_discount" => "", - "default_receivings_discount_number" => "", - "default_receivings_discount_required" => "", - "default_sales_discount" => "", - "default_sales_discount_number" => "", - "default_sales_discount_required" => "", - "default_tax_category" => "", - "default_tax_code" => "", - "default_tax_jurisdiction" => "", - "default_tax_name_number" => "", - "default_tax_name_required" => "", - "default_tax_rate" => "", - "default_tax_rate_1" => "", - "default_tax_rate_2" => "", - "default_tax_rate_3" => "", - "default_tax_rate_number" => "", - "default_tax_rate_required" => "", - "derive_sale_quantity" => "", - "derive_sale_quantity_tooltip" => "", - "dinner_table" => "", - "dinner_table_duplicate" => "", - "dinner_table_enable" => "", - "dinner_table_invalid_chars" => "", - "dinner_table_required" => "", - "dot" => "", - "email" => "", - "email_configuration" => "", - "email_mailpath" => "", - "email_protocol" => "", - "email_receipt_check_behaviour" => "", - "email_receipt_check_behaviour_always" => "", - "email_receipt_check_behaviour_last" => "", - "email_receipt_check_behaviour_never" => "", - "email_smtp_crypto" => "", - "email_smtp_host" => "", - "email_smtp_pass" => "", - "email_smtp_port" => "", - "email_smtp_timeout" => "", - "email_smtp_user" => "", - "enable_avatar" => "", - "enable_avatar_tooltip" => "", - "enable_dropdown_tooltip" => "", - "enable_new_look" => "", - "enable_right_bar" => "", - "enable_right_bar_tooltip" => "", - "enforce_privacy" => "", - "enforce_privacy_tooltip" => "", - "fax" => "", - "file_perm" => "There are problems with file permissions please fix and reload this page.", - "financial_year" => "", - "financial_year_apr" => "", - "financial_year_aug" => "", - "financial_year_dec" => "", - "financial_year_feb" => "", - "financial_year_jan" => "", - "financial_year_jul" => "", - "financial_year_jun" => "", - "financial_year_mar" => "", - "financial_year_may" => "", - "financial_year_nov" => "", - "financial_year_oct" => "", - "financial_year_sep" => "", - "floating_labels" => "", - "gcaptcha_enable" => "", - "gcaptcha_secret_key" => "", - "gcaptcha_secret_key_required" => "", - "gcaptcha_site_key" => "", - "gcaptcha_site_key_required" => "", - "gcaptcha_tooltip" => "", - "general" => "", - "general_configuration" => "", - "giftcard_number" => "", - "giftcard_random" => "", - "giftcard_series" => "", - "image_allowed_file_types" => "", - "image_max_height_tooltip" => "", - "image_max_size_tooltip" => "", - "image_max_width_tooltip" => "", - "image_restrictions" => "", - "include_hsn" => "", - "info" => "", - "info_configuration" => "", - "input_groups" => "", - "integrations" => "", - "integrations_configuration" => "", - "invoice" => "", - "invoice_configuration" => "", - "invoice_default_comments" => "", - "invoice_email_message" => "", - "invoice_enable" => "", - "invoice_printer" => "", - "invoice_type" => "", - "is_readable" => "", - "is_writable" => "is writable, but the permissions are higher than 750.", - "item_markup" => "", - "jsprintsetup_required" => "", - "language" => "", - "last_used_invoice_number" => "", - "last_used_quote_number" => "", - "last_used_work_order_number" => "", - "left" => "", - "license" => "", - "license_configuration" => "", - "line_sequence" => "", - "lines_per_page" => "", - "lines_per_page_number" => "", - "lines_per_page_required" => "", - "locale" => "", - "locale_configuration" => "", - "locale_info" => "", - "location" => "", - "location_configuration" => "", - "location_info" => "", - "login_form" => "", - "logout" => "", - "mailchimp" => "", - "mailchimp_api_key" => "", - "mailchimp_configuration" => "", - "mailchimp_key_successfully" => "", - "mailchimp_key_unsuccessfully" => "", - "mailchimp_lists" => "", - "mailchimp_tooltip" => "", - "message" => "", - "message_configuration" => "", - "msg_msg" => "", - "msg_msg_placeholder" => "", - "msg_pwd" => "", - "msg_pwd_required" => "", - "msg_src" => "", - "msg_src_required" => "", - "msg_uid" => "", - "msg_uid_required" => "", - "multi_pack_enabled" => "", - "no_risk" => "No security/vulnerability risks.", - "none" => "", - "notify_alignment" => "", - "number_format" => "", - "number_locale" => "", - "number_locale_invalid" => "", - "number_locale_required" => "", - "number_locale_tooltip" => "", - "os_timezone" => "", - "ospos_info" => "", - "payment_options_order" => "", - "perm_risk" => "Permissions higher than 750 leaves this software at risk.", - "phone" => "", - "phone_required" => "", - "print_bottom_margin" => "", - "print_bottom_margin_number" => "", - "print_bottom_margin_required" => "", - "print_delay_autoreturn" => "", - "print_delay_autoreturn_number" => "", - "print_delay_autoreturn_required" => "", - "print_footer" => "", - "print_header" => "", - "print_left_margin" => "", - "print_left_margin_number" => "", - "print_left_margin_required" => "", - "print_receipt_check_behaviour" => "", - "print_receipt_check_behaviour_always" => "", - "print_receipt_check_behaviour_last" => "", - "print_receipt_check_behaviour_never" => "", - "print_right_margin" => "", - "print_right_margin_number" => "", - "print_right_margin_required" => "", - "print_silently" => "", - "print_top_margin" => "", - "print_top_margin_number" => "", - "print_top_margin_required" => "", - "quantity_decimals" => "", - "quick_cash_enable" => "", - "quote_default_comments" => "", - "receipt" => "", - "receipt_category" => "", - "receipt_configuration" => "", - "receipt_default" => "", - "receipt_font_size" => "", - "receipt_font_size_number" => "", - "receipt_font_size_required" => "", - "receipt_info" => "", - "receipt_printer" => "", - "receipt_short" => "", - "receipt_show_company_name" => "", - "receipt_show_description" => "", - "receipt_show_serialnumber" => "", - "receipt_show_tax_ind" => "", - "receipt_show_taxes" => "", - "receipt_show_total_discount" => "", - "receipt_template" => "", - "receiving_calculate_average_price" => "", - "recv_invoice_format" => "", - "register_mode_default" => "", - "report_an_issue" => "", - "return_policy_required" => "", - "reward" => "", - "reward_configuration" => "", - "right" => "", - "sales_invoice_format" => "", - "sales_quote_format" => "", - "saved_successfully" => "", - "saved_unsuccessfully" => "", - "security_issue" => "Security Vulnerability Warning", - "server_notice" => "Please use the below info for issue reporting.", - "service_charge" => "", - "show_due_enable" => "", - "show_office_group" => "", - "statistics" => "", - "statistics_tooltip" => "", - "stock_location" => "", - "stock_location_duplicate" => "", - "stock_location_invalid_chars" => "", - "stock_location_required" => "", - "suggestions_fifth_column" => "", - "suggestions_first_column" => "", - "suggestions_fourth_column" => "", - "suggestions_layout" => "", - "suggestions_second_column" => "", - "suggestions_third_column" => "", - "system_conf" => "Setup & Conf", - "system_info" => "System Info", - "table" => "", - "table_configuration" => "", - "takings_printer" => "", - "tax" => "", - "tax_category" => "", - "tax_category_duplicate" => "", - "tax_category_invalid_chars" => "", - "tax_category_required" => "", - "tax_category_used" => "", - "tax_configuration" => "", - "tax_decimals" => "", - "tax_id" => "", - "tax_included" => "", - "theme" => "", - "theme_preview" => "", - "thousands_separator" => "", - "timezone" => "", - "timezone_error" => "", - "top" => "", - "use_destination_based_tax" => "", - "user_timezone" => "", - "website" => "", - "wholesale_markup" => "", - "work_order_enable" => "", - "work_order_format" => "", + "address" => "", + "address_required" => "", + "all_set" => "All file permissions are set correctly!", + "allow_duplicate_barcodes" => "", + "apostrophe" => "", + "backup_button" => "", + "backup_database" => "", + "barcode" => "", + "barcode_company" => "", + "barcode_configuration" => "", + "barcode_content" => "", + "barcode_first_row" => "", + "barcode_font" => "", + "barcode_formats" => "", + "barcode_generate_if_empty" => "", + "barcode_height" => "", + "barcode_id" => "", + "barcode_info" => "", + "barcode_layout" => "", + "barcode_name" => "", + "barcode_number" => "", + "barcode_number_in_row" => "", + "barcode_page_cellspacing" => "", + "barcode_page_width" => "", + "barcode_price" => "", + "barcode_second_row" => "", + "barcode_third_row" => "", + "barcode_tooltip" => "", + "barcode_type" => "", + "barcode_width" => "", + "bottom" => "", + "cash_button" => "", + "cash_button_1" => "", + "cash_button_2" => "", + "cash_button_3" => "", + "cash_button_4" => "", + "cash_button_5" => "", + "cash_button_6" => "", + "cash_decimals" => "", + "cash_decimals_tooltip" => "", + "cash_rounding" => "", + "category_dropdown" => "", + "center" => "", + "change_apperance_tooltip" => "", + "comma" => "", + "company" => "", + "company_avatar" => "", + "company_change_image" => "", + "company_logo" => "", + "company_remove_image" => "", + "company_required" => "", + "company_select_image" => "", + "company_website_url" => "", + "country_codes" => "", + "country_codes_tooltip" => "", + "currency_code" => "", + "currency_decimals" => "", + "currency_symbol" => "", + "current_employee_only" => "", + "customer_reward" => "", + "customer_reward_duplicate" => "", + "customer_reward_enable" => "", + "customer_reward_invalid_chars" => "", + "customer_reward_required" => "", + "customer_sales_tax_support" => "", + "date_or_time_format" => "", + "datetimeformat" => "", + "decimal_point" => "", + "default_barcode_font_size_number" => "", + "default_barcode_font_size_required" => "", + "default_barcode_height_number" => "", + "default_barcode_height_required" => "", + "default_barcode_num_in_row_number" => "", + "default_barcode_num_in_row_required" => "", + "default_barcode_page_cellspacing_number" => "", + "default_barcode_page_cellspacing_required" => "", + "default_barcode_page_width_number" => "", + "default_barcode_page_width_required" => "", + "default_barcode_width_number" => "", + "default_barcode_width_required" => "", + "default_item_columns" => "", + "default_origin_tax_code" => "", + "default_receivings_discount" => "", + "default_receivings_discount_number" => "", + "default_receivings_discount_required" => "", + "default_sales_discount" => "", + "default_sales_discount_number" => "", + "default_sales_discount_required" => "", + "default_tax_category" => "", + "default_tax_code" => "", + "default_tax_jurisdiction" => "", + "default_tax_name_number" => "", + "default_tax_name_required" => "", + "default_tax_rate" => "", + "default_tax_rate_1" => "", + "default_tax_rate_2" => "", + "default_tax_rate_3" => "", + "default_tax_rate_number" => "", + "default_tax_rate_required" => "", + "derive_sale_quantity" => "", + "derive_sale_quantity_tooltip" => "", + "dinner_table" => "", + "dinner_table_duplicate" => "", + "dinner_table_enable" => "", + "dinner_table_invalid_chars" => "", + "dinner_table_required" => "", + "dot" => "", + "email" => "", + "email_configuration" => "", + "email_mailpath" => "", + "email_protocol" => "", + "email_receipt_check_behaviour" => "", + "email_receipt_check_behaviour_always" => "", + "email_receipt_check_behaviour_last" => "", + "email_receipt_check_behaviour_never" => "", + "email_smtp_crypto" => "", + "email_smtp_host" => "", + "email_smtp_pass" => "", + "email_smtp_port" => "", + "email_smtp_timeout" => "", + "email_smtp_user" => "", + "enable_avatar" => "", + "enable_avatar_tooltip" => "", + "enable_dropdown_tooltip" => "", + "enable_new_look" => "", + "enable_right_bar" => "", + "enable_right_bar_tooltip" => "", + "enforce_privacy" => "", + "enforce_privacy_tooltip" => "", + "fax" => "", + "file_perm" => "There are problems with file permissions please fix and reload this page.", + "financial_year" => "", + "financial_year_apr" => "", + "financial_year_aug" => "", + "financial_year_dec" => "", + "financial_year_feb" => "", + "financial_year_jan" => "", + "financial_year_jul" => "", + "financial_year_jun" => "", + "financial_year_mar" => "", + "financial_year_may" => "", + "financial_year_nov" => "", + "financial_year_oct" => "", + "financial_year_sep" => "", + "floating_labels" => "", + "gcaptcha_enable" => "", + "gcaptcha_secret_key" => "", + "gcaptcha_secret_key_required" => "", + "gcaptcha_site_key" => "", + "gcaptcha_site_key_required" => "", + "gcaptcha_tooltip" => "", + "general" => "", + "general_configuration" => "", + "giftcard_number" => "", + "giftcard_random" => "", + "giftcard_series" => "", + "image_allowed_file_types" => "", + "image_max_height_tooltip" => "", + "image_max_size_tooltip" => "", + "image_max_width_tooltip" => "", + "image_restrictions" => "", + "include_hsn" => "", + "info" => "", + "info_configuration" => "", + "input_groups" => "", + "integrations" => "", + "integrations_configuration" => "", + "invoice" => "", + "invoice_configuration" => "", + "invoice_default_comments" => "", + "invoice_email_message" => "", + "invoice_enable" => "", + "invoice_printer" => "", + "invoice_type" => "", + "is_readable" => "", + "is_writable" => "is writable, but the permissions are higher than 750.", + "item_markup" => "", + "jsprintsetup_required" => "", + "language" => "", + "last_used_invoice_number" => "", + "last_used_quote_number" => "", + "last_used_work_order_number" => "", + "left" => "", + "license" => "", + "license_configuration" => "", + "line_sequence" => "", + "lines_per_page" => "", + "lines_per_page_number" => "", + "lines_per_page_required" => "", + "locale" => "", + "locale_configuration" => "", + "locale_info" => "", + "location" => "", + "location_configuration" => "", + "location_info" => "", + "login_form" => "", + "logout" => "", + "mailchimp" => "", + "mailchimp_api_key" => "", + "mailchimp_configuration" => "", + "mailchimp_key_successfully" => "", + "mailchimp_key_unsuccessfully" => "", + "mailchimp_lists" => "", + "mailchimp_tooltip" => "", + "message" => "", + "message_configuration" => "", + "msg_msg" => "", + "msg_msg_placeholder" => "", + "msg_pwd" => "", + "msg_pwd_required" => "", + "msg_src" => "", + "msg_src_required" => "", + "msg_uid" => "", + "msg_uid_required" => "", + "multi_pack_enabled" => "", + "no_risk" => "No security/vulnerability risks.", + "none" => "", + "notify_alignment" => "", + "number_format" => "", + "number_locale" => "", + "number_locale_invalid" => "", + "number_locale_required" => "", + "number_locale_tooltip" => "", + "os_timezone" => "", + "ospos_info" => "", + "payment_options_order" => "", + "perm_risk" => "Permissions higher than 750 leaves this software at risk.", + "phone" => "", + "phone_required" => "", + "print_bottom_margin" => "", + "print_bottom_margin_number" => "", + "print_bottom_margin_required" => "", + "print_delay_autoreturn" => "", + "print_delay_autoreturn_number" => "", + "print_delay_autoreturn_required" => "", + "print_footer" => "", + "print_header" => "", + "print_left_margin" => "", + "print_left_margin_number" => "", + "print_left_margin_required" => "", + "print_receipt_check_behaviour" => "", + "print_receipt_check_behaviour_always" => "", + "print_receipt_check_behaviour_last" => "", + "print_receipt_check_behaviour_never" => "", + "print_right_margin" => "", + "print_right_margin_number" => "", + "print_right_margin_required" => "", + "print_silently" => "", + "print_top_margin" => "", + "print_top_margin_number" => "", + "print_top_margin_required" => "", + "quantity_decimals" => "", + "quick_cash_enable" => "", + "quote_default_comments" => "", + "receipt" => "", + "receipt_category" => "", + "receipt_configuration" => "", + "receipt_default" => "", + "receipt_font_size" => "", + "receipt_font_size_number" => "", + "receipt_font_size_required" => "", + "receipt_info" => "", + "receipt_printer" => "", + "receipt_short" => "", + "receipt_show_company_name" => "", + "receipt_show_description" => "", + "receipt_show_serialnumber" => "", + "receipt_show_tax_ind" => "", + "receipt_show_taxes" => "", + "receipt_show_total_discount" => "", + "receipt_template" => "", + "receiving_calculate_average_price" => "", + "recv_invoice_format" => "", + "register_mode_default" => "", + "report_an_issue" => "", + "return_policy_required" => "", + "reward" => "", + "reward_configuration" => "", + "right" => "", + "sales_invoice_format" => "", + "sales_quote_format" => "", + "saved_successfully" => "", + "saved_unsuccessfully" => "", + "security_issue" => "Security Vulnerability Warning", + "server_notice" => "Please use the below info for issue reporting.", + "service_charge" => "", + "show_due_enable" => "", + "show_office_group" => "", + "statistics" => "", + "statistics_tooltip" => "", + "stock_location" => "", + "stock_location_duplicate" => "", + "stock_location_invalid_chars" => "", + "stock_location_required" => "", + "suggestions_fifth_column" => "", + "suggestions_first_column" => "", + "suggestions_fourth_column" => "", + "suggestions_layout" => "", + "suggestions_second_column" => "", + "suggestions_third_column" => "", + "system_conf" => "Setup & Conf", + "system_info" => "System Info", + "table" => "", + "table_configuration" => "", + "takings_printer" => "", + "tax" => "", + "tax_category" => "", + "tax_category_duplicate" => "", + "tax_category_invalid_chars" => "", + "tax_category_required" => "", + "tax_category_used" => "", + "tax_configuration" => "", + "tax_decimals" => "", + "tax_id" => "", + "tax_included" => "", + "theme" => "", + "theme_preview" => "", + "thousands_separator" => "", + "timezone" => "", + "timezone_error" => "", + "top" => "", + "use_destination_based_tax" => "", + "user_timezone" => "", + "website" => "", + "wholesale_markup" => "", + "work_order_enable" => "", + "work_order_format" => "", ]; diff --git a/app/Language/km/Customers.php b/app/Language/km/Customers.php index f41cee888..82c3f054d 100644 --- a/app/Language/km/Customers.php +++ b/app/Language/km/Customers.php @@ -1,56 +1,56 @@ "លេខ​គណនី", - "account_number_duplicate" => "លេខគណនី មានវត្តមាននៅក្នុងមូលដ្ឋានទិន្នន័យរួចទៅហើយ", - "available_points" => "ពិន្ទុដែលប្រើប្រាស់បាន", - "available_points_value" => "", - "average" => "ចំណាយជាមធ្យម", - "avg_discount" => "បញ្ចុះតម្លៃមធ្យម", - "basic_information" => "ព័ត៌មានមូលដ្ឋាន", - "cannot_be_deleted" => "មិនអាចលុបអតិថិជនដែលបានជ្រើសរើសហើយទេ, អតិថិជនមួយឬច្រើន​ មានការលក់​", - "company_name" => "ក្រុមហ៊ុន", - "confirm_delete" => "តើអ្នកពិតជាចង់លុបអតិថិជនដែលបានជ្រើសរើសឬ?", - "confirm_restore" => "តើអ្នកពិតជាចង់ស្តារអតិថិជនដែលបានជ្រើសរើស ឲ្យដូចដើមវិញឬ?", - "consent" => "ការយល់ព្រមចុះឈ្មោះ", - "consent_required" => "ការយល់ព្រមចុះឈ្មោះ ទាមទារអោយមានការបំពេញ", - "csv_import_failed" => "ការនាំចូល CSV បរាជ័យ", - "csv_import_nodata_wrongformat" => "ឯកសារដែលដាក់ទៅប្រព័ន្ធ មិនមានទិន្នន័យ ឬ ខុសទម្រង់", - "csv_import_partially_failed" => "ការនាំចូលរបស់អតិថិជនទទួលបានជោគជ័យជាមួយនឹងការបរាជ័យមួយចំនួន:", - "csv_import_success" => "ការនាំចូលរបស់អតិថិជនទទួលបានជោគជ័យ", - "customer" => "អតិថិជន", - "date" => "កាលបរិច្ឆេទ", - "discount" => "បញ្ចុះតម្លៃ", - "discount_fixed" => "បញ្ចុះតម្លៃជាសាច់ប្រាក់", - "discount_percent" => "បញ្ចុះតម្លៃជាភាគរយ", - "discount_type" => "ប្រភេទបញ្ចុះតម្លៃ", - "email_duplicate" => "អ៊ីមែលមានរួចហើយនៅក្នុងមូលដ្ឋានទិន្នន័យ", - "employee" => "បុគ្គលិក", - "error_adding_updating" => "ការបន្ថែមឬការធ្វើ​ឲ្យ​ទាន់សម័យរបស់អតិថិជន បរាជ័យ", - "import_items_csv" => "ការនាំចូលអតិថិជនពី CSV", - "mailchimp_activity_click" => "ចុចអ៊ីមែល", - "mailchimp_activity_lastopen" => "អ៊ីមែលបើកចុងក្រោយ", - "mailchimp_activity_open" => "អ៊ីមែលបើក", - "mailchimp_activity_total" => "អ៊ីមែលបានផ្ញើ", - "mailchimp_activity_unopen" => "អ៊ីមែលមិនបើក", - "mailchimp_email_client" => "អតិថិជនអ៊ីមែល", - "mailchimp_info" => "មែលឆិម", - "mailchimp_member_rating" => "ការវាយតម្លៃ", - "mailchimp_status" => "ស្ថានភាព", - "mailchimp_vip" => "វីអាយភី", - "max" => "ចំណាយអតិបរមា", - "min" => "ចំណាយអប្បបរមា", - "new" => "អតិថិជន​ថ្មី", - "none_selected" => "អ្នកមិនបានជ្រើសរើសអតិថិជនណាមួយដើម្បីលុប", - "one_or_multiple" => "អតិថិជន", - "quantity" => "ចំនួន", - "stats_info" => "ស្ថិតិព័ត៌មាន", - "successful_adding" => "អ្នកបានបន្ថែមអតិថិជនដោយជោគជ័យ", - "successful_deleted" => "អ្នកបានលុបដោយជោគជ័យ", - "successful_updating" => "អ្នកបានធ្វើឱ្យអតិថិជនទាន់សម័យដោយជោគជ័យ", - "tax_code" => "លេខកូដពន្ធ", - "tax_id" => "លេខសម្គាល់ពន្ធ", - "taxable" => "ជាប់ពន្ធ", - "total" => "ចំណាយសរុប", - "update" => "ធ្វើបច្ចុប្បន្នភាពអតិថិជន", - "rewards_package" => "កញ្ចប់រង្វាន់", + "account_number" => "លេខ​គណនី", + "account_number_duplicate" => "លេខគណនី មានវត្តមាននៅក្នុងមូលដ្ឋានទិន្នន័យរួចទៅហើយ", + "available_points" => "ពិន្ទុដែលប្រើប្រាស់បាន", + "available_points_value" => "", + "average" => "ចំណាយជាមធ្យម", + "avg_discount" => "បញ្ចុះតម្លៃមធ្យម", + "basic_information" => "ព័ត៌មានមូលដ្ឋាន", + "cannot_be_deleted" => "មិនអាចលុបអតិថិជនដែលបានជ្រើសរើសហើយទេ, អតិថិជនមួយឬច្រើន​ មានការលក់​", + "company_name" => "ក្រុមហ៊ុន", + "confirm_delete" => "តើអ្នកពិតជាចង់លុបអតិថិជនដែលបានជ្រើសរើសឬ?", + "confirm_restore" => "តើអ្នកពិតជាចង់ស្តារអតិថិជនដែលបានជ្រើសរើស ឲ្យដូចដើមវិញឬ?", + "consent" => "ការយល់ព្រមចុះឈ្មោះ", + "consent_required" => "ការយល់ព្រមចុះឈ្មោះ ទាមទារអោយមានការបំពេញ", + "csv_import_failed" => "ការនាំចូល CSV បរាជ័យ", + "csv_import_nodata_wrongformat" => "ឯកសារដែលដាក់ទៅប្រព័ន្ធ មិនមានទិន្នន័យ ឬ ខុសទម្រង់", + "csv_import_partially_failed" => "ការនាំចូលរបស់អតិថិជនទទួលបានជោគជ័យជាមួយនឹងការបរាជ័យមួយចំនួន:", + "csv_import_success" => "ការនាំចូលរបស់អតិថិជនទទួលបានជោគជ័យ", + "customer" => "អតិថិជន", + "date" => "កាលបរិច្ឆេទ", + "discount" => "បញ្ចុះតម្លៃ", + "discount_fixed" => "បញ្ចុះតម្លៃជាសាច់ប្រាក់", + "discount_percent" => "បញ្ចុះតម្លៃជាភាគរយ", + "discount_type" => "ប្រភេទបញ្ចុះតម្លៃ", + "email_duplicate" => "អ៊ីមែលមានរួចហើយនៅក្នុងមូលដ្ឋានទិន្នន័យ", + "employee" => "បុគ្គលិក", + "error_adding_updating" => "ការបន្ថែមឬការធ្វើ​ឲ្យ​ទាន់សម័យរបស់អតិថិជន បរាជ័យ", + "import_items_csv" => "ការនាំចូលអតិថិជនពី CSV", + "mailchimp_activity_click" => "ចុចអ៊ីមែល", + "mailchimp_activity_lastopen" => "អ៊ីមែលបើកចុងក្រោយ", + "mailchimp_activity_open" => "អ៊ីមែលបើក", + "mailchimp_activity_total" => "អ៊ីមែលបានផ្ញើ", + "mailchimp_activity_unopen" => "អ៊ីមែលមិនបើក", + "mailchimp_email_client" => "អតិថិជនអ៊ីមែល", + "mailchimp_info" => "មែលឆិម", + "mailchimp_member_rating" => "ការវាយតម្លៃ", + "mailchimp_status" => "ស្ថានភាព", + "mailchimp_vip" => "វីអាយភី", + "max" => "ចំណាយអតិបរមា", + "min" => "ចំណាយអប្បបរមា", + "new" => "អតិថិជន​ថ្មី", + "none_selected" => "អ្នកមិនបានជ្រើសរើសអតិថិជនណាមួយដើម្បីលុប", + "one_or_multiple" => "អតិថិជន", + "quantity" => "ចំនួន", + "stats_info" => "ស្ថិតិព័ត៌មាន", + "successful_adding" => "អ្នកបានបន្ថែមអតិថិជនដោយជោគជ័យ", + "successful_deleted" => "អ្នកបានលុបដោយជោគជ័យ", + "successful_updating" => "អ្នកបានធ្វើឱ្យអតិថិជនទាន់សម័យដោយជោគជ័យ", + "tax_code" => "លេខកូដពន្ធ", + "tax_id" => "លេខសម្គាល់ពន្ធ", + "taxable" => "ជាប់ពន្ធ", + "total" => "ចំណាយសរុប", + "update" => "ធ្វើបច្ចុប្បន្នភាពអតិថិជន", + "rewards_package" => "កញ្ចប់រង្វាន់", ]; diff --git a/app/Language/km/Datepicker.php b/app/Language/km/Datepicker.php index 23557016d..f811ab28e 100644 --- a/app/Language/km/Datepicker.php +++ b/app/Language/km/Datepicker.php @@ -1,23 +1,23 @@ "គ្រប់ពេល", - "apply" => "ដាក់បញ្ជូល", - "cancel" => "បោះបង់", - "custom" => "", - "from" => "ពី", - "last_30" => "ត្រឹម 30 ថ្ងៃមុន", - "last_7" => "ត្រឹម 7 ថ្ងៃមុន", - "last_financial_year" => "គិតថ្ងៃខែពន្ធដារ", - "last_month" => "ខែមុន", - "last_year" => "ឆ្នាំមុន", - "same_month_last_year" => "ខែដដែល ឆ្នាំទៅ", - "same_month_to_same_day_last_year" => "ពីខែដដែល ទៅថ្ងៃដដែល ឆ្នាំទៅ", - "this_financial_year" => "ឆ្នាំនេះ", - "this_month" => "ខែនេះ", - "this_year" => "", - "to" => "", - "today" => "", - "today_last_year" => "", - "weekstart" => "", - "yesterday" => "", + "all_time" => "គ្រប់ពេល", + "apply" => "ដាក់បញ្ជូល", + "cancel" => "បោះបង់", + "custom" => "", + "from" => "ពី", + "last_30" => "ត្រឹម 30 ថ្ងៃមុន", + "last_7" => "ត្រឹម 7 ថ្ងៃមុន", + "last_financial_year" => "គិតថ្ងៃខែពន្ធដារ", + "last_month" => "ខែមុន", + "last_year" => "ឆ្នាំមុន", + "same_month_last_year" => "ខែដដែល ឆ្នាំទៅ", + "same_month_to_same_day_last_year" => "ពីខែដដែល ទៅថ្ងៃដដែល ឆ្នាំទៅ", + "this_financial_year" => "ឆ្នាំនេះ", + "this_month" => "ខែនេះ", + "this_year" => "", + "to" => "", + "today" => "", + "today_last_year" => "", + "weekstart" => "", + "yesterday" => "", ]; diff --git a/app/Language/km/Employees.php b/app/Language/km/Employees.php index 8b7afd230..974ed4de2 100644 --- a/app/Language/km/Employees.php +++ b/app/Language/km/Employees.php @@ -1,44 +1,44 @@ "", - "basic_information" => "ព៌តមាន", - "cannot_be_deleted" => "មិនអាចលុបបុគ្គលិកដែលបានជ្រើសរើស, មួយ ឬក៏ច្រើន នៃការលក់ ឬអ្នកកំពុងព្យាយាមលុបគណនីរបស់ខ្លួន។", - "change_employee" => "", - "change_password" => "ផ្លាស់ប្ដូរពាក្យសម្ងាត់", - "clerk" => "", - "commission" => "", - "confirm_delete" => "តើអ្នកពិតជាចង់លុបបុគ្គលិកដែលបានជ្រើសរើសមែនទេ?", - "confirm_restore" => "តើអ្នកពិតជាចង់ដាក់មកវិញនៅបុគ្គលិកដែរបានជ្រើសរើស?", - "current_password" => "ពាក្យសម្ងាត់បច្ចុប្បន្ន", - "current_password_invalid" => "ពាក្យសម្ងាត់បច្ចុប្បន្ន មិនត្រឹមត្រូវ។", - "employee" => "បុគ្គលិក", - "error_adding_updating" => "បន្ថែម ឬកែប្រែបុគ្គលិកមិនបានសំរេច។", - "error_deleting_demo_admin" => "អ្នកមិនអាចលុប គណនីសាកល្បង បានទេ។", - "error_updating_demo_admin" => "អ្នកមិនអាចកែប្រែ គណនីសាកល្បងបានទេ។", - "language" => "ភាសា", - "login_info" => "ចូលទៅក្នុងប្រពន្ធ័", - "manager" => "", - "new" => "បុគ្គលិកថ្មី", - "none_selected" => "អ្នកមិនបានជ្រើសរើស បុគ្គលិកណាមួយដើម្បីលុបនោះទេ។", - "one_or_multiple" => "បុគ្គលិក", - "password" => "ពាក្យសម្ងាត់", - "password_minlength" => "ពាក្យសម្ងាត់ ត្រូវតែមានយ៉ាងតិច​ 8 តួអក្សរ។", - "password_must_match" => "ពាក្យសម្ងាត់មិនដូចគ្នា។", - "password_not_must_match" => "ពាក្យសម្ងាត់បច្ចុប្បន្ន នឹងពាក្យសម្ងាត់ថ្មី ត្រូវតែមានតែមួយ។", - "password_required" => "ត្រូវការពាក្យសម្ងាត់។", - "permission_desc" => "ឆែកប្រអប់ខាងក្រោម ដើម្បីផ្ដល់សិទ្ធទៅក្នុងផ្នែកណាមួយ។", - "permission_info" => "សិទ្ធិ", - "repeat_password" => "ពាក្យសម្ងាត់ម្ដងទៀត", - "subpermission_required" => "យ៉ាងហោចណាស់ក៏មាន ផ្នែកមួយត្រូវតែផ្ដល់សិទ្ធិ។", - "successful_adding" => "ការបន្ថែមបុគ្គលិកបានទទួលជោគជ័យ។", - "successful_change_password" => "ការផ្លាស់ប្ដូរពាក្យសម្ងាត់ទទួលបានជោគជ័យ។", - "successful_deleted" => "អ្នកទទួលបានជោគជ័យក្នុងការលុប", - "successful_updating" => "អ្នកទទួលបានជោគជ័យ ក្នុងការកែប្រែបុគ្គលិក", - "system_language" => "ភាសារបស់ប្រព័ន្ធ", - "unsuccessful_change_password" => "ការផ្លាស់ប្ដូរពាក្យសម្ងាត់មិនបានសំរេច។", - "update" => "កែប្រែបុគ្គលិក", - "username" => "ឈ្នោះអ្នកប្រើប្រាស់", - "username_duplicate" => "ឈ្មោះបុគ្គលិកត្រូវបានប្រើប្រាស់រួចរាល់។ សូមជ្រើសរើសសារជាថ្មី។", - "username_minlength" => "ឈ្មោះអ្នកប្រើប្រាស់ត្រូវមាន 5 តួអក្សរយ៉ាងតិច។", - "username_required" => "ឈ្មោះអ្នកប្រើប្រាស់ត្រូវការចាំបាច់។", + "administrator" => "", + "basic_information" => "ព៌តមាន", + "cannot_be_deleted" => "មិនអាចលុបបុគ្គលិកដែលបានជ្រើសរើស, មួយ ឬក៏ច្រើន នៃការលក់ ឬអ្នកកំពុងព្យាយាមលុបគណនីរបស់ខ្លួន។", + "change_employee" => "", + "change_password" => "ផ្លាស់ប្ដូរពាក្យសម្ងាត់", + "clerk" => "", + "commission" => "", + "confirm_delete" => "តើអ្នកពិតជាចង់លុបបុគ្គលិកដែលបានជ្រើសរើសមែនទេ?", + "confirm_restore" => "តើអ្នកពិតជាចង់ដាក់មកវិញនៅបុគ្គលិកដែរបានជ្រើសរើស?", + "current_password" => "ពាក្យសម្ងាត់បច្ចុប្បន្ន", + "current_password_invalid" => "ពាក្យសម្ងាត់បច្ចុប្បន្ន មិនត្រឹមត្រូវ។", + "employee" => "បុគ្គលិក", + "error_adding_updating" => "បន្ថែម ឬកែប្រែបុគ្គលិកមិនបានសំរេច។", + "error_deleting_demo_admin" => "អ្នកមិនអាចលុប គណនីសាកល្បង បានទេ។", + "error_updating_demo_admin" => "អ្នកមិនអាចកែប្រែ គណនីសាកល្បងបានទេ។", + "language" => "ភាសា", + "login_info" => "ចូលទៅក្នុងប្រពន្ធ័", + "manager" => "", + "new" => "បុគ្គលិកថ្មី", + "none_selected" => "អ្នកមិនបានជ្រើសរើស បុគ្គលិកណាមួយដើម្បីលុបនោះទេ។", + "one_or_multiple" => "បុគ្គលិក", + "password" => "ពាក្យសម្ងាត់", + "password_minlength" => "ពាក្យសម្ងាត់ ត្រូវតែមានយ៉ាងតិច​ 8 តួអក្សរ។", + "password_must_match" => "ពាក្យសម្ងាត់មិនដូចគ្នា។", + "password_not_must_match" => "ពាក្យសម្ងាត់បច្ចុប្បន្ន នឹងពាក្យសម្ងាត់ថ្មី ត្រូវតែមានតែមួយ។", + "password_required" => "ត្រូវការពាក្យសម្ងាត់។", + "permission_desc" => "ឆែកប្រអប់ខាងក្រោម ដើម្បីផ្ដល់សិទ្ធទៅក្នុងផ្នែកណាមួយ។", + "permission_info" => "សិទ្ធិ", + "repeat_password" => "ពាក្យសម្ងាត់ម្ដងទៀត", + "subpermission_required" => "យ៉ាងហោចណាស់ក៏មាន ផ្នែកមួយត្រូវតែផ្ដល់សិទ្ធិ។", + "successful_adding" => "ការបន្ថែមបុគ្គលិកបានទទួលជោគជ័យ។", + "successful_change_password" => "ការផ្លាស់ប្ដូរពាក្យសម្ងាត់ទទួលបានជោគជ័យ។", + "successful_deleted" => "អ្នកទទួលបានជោគជ័យក្នុងការលុប", + "successful_updating" => "អ្នកទទួលបានជោគជ័យ ក្នុងការកែប្រែបុគ្គលិក", + "system_language" => "ភាសារបស់ប្រព័ន្ធ", + "unsuccessful_change_password" => "ការផ្លាស់ប្ដូរពាក្យសម្ងាត់មិនបានសំរេច។", + "update" => "កែប្រែបុគ្គលិក", + "username" => "ឈ្នោះអ្នកប្រើប្រាស់", + "username_duplicate" => "ឈ្មោះបុគ្គលិកត្រូវបានប្រើប្រាស់រួចរាល់។ សូមជ្រើសរើសសារជាថ្មី។", + "username_minlength" => "ឈ្មោះអ្នកប្រើប្រាស់ត្រូវមាន 5 តួអក្សរយ៉ាងតិច។", + "username_required" => "ឈ្មោះអ្នកប្រើប្រាស់ត្រូវការចាំបាច់។", ]; diff --git a/app/Language/km/Enum.php b/app/Language/km/Enum.php index 2d1bb300e..232e54a88 100644 --- a/app/Language/km/Enum.php +++ b/app/Language/km/Enum.php @@ -1,10 +1,10 @@ "ត្រឹមពាក់កណ្ដាលចុះក្រោម", - "half_even" => "ពាក់កណ្តាលគូ", - "half_five" => "ពាក់កណ្តាលប្រាំ", - "half_odd" => "ពាក់កណ្តាលសេស", - "half_up" => "ពាក់កណ្តាលឡើងលើ", - "round_down" => "បង្គត់ចុះ", - "round_up" => "បង្គត់ឡើង", + "half_down" => "ត្រឹមពាក់កណ្ដាលចុះក្រោម", + "half_even" => "ពាក់កណ្តាលគូ", + "half_five" => "ពាក់កណ្តាលប្រាំ", + "half_odd" => "ពាក់កណ្តាលសេស", + "half_up" => "ពាក់កណ្តាលឡើងលើ", + "round_down" => "បង្គត់ចុះ", + "round_up" => "បង្គត់ឡើង", ]; diff --git a/app/Language/km/Error.php b/app/Language/km/Error.php index df3806430..84abd5290 100644 --- a/app/Language/km/Error.php +++ b/app/Language/km/Error.php @@ -1,5 +1,5 @@ "អ្នកមិនមានសិទ្ធដើម្បីចូលទៅ ផ្នែកនោះទេ", - "unknown" => "កំហុសមិនស្គាល់", + "no_permission_module" => "អ្នកមិនមានសិទ្ធដើម្បីចូលទៅ ផ្នែកនោះទេ", + "unknown" => "កំហុសមិនស្គាល់", ]; diff --git a/app/Language/km/Expenses.php b/app/Language/km/Expenses.php index 3823859f1..b3234f2ed 100644 --- a/app/Language/km/Expenses.php +++ b/app/Language/km/Expenses.php @@ -1,50 +1,50 @@ "បន្ថែមចំណាយ", - "amount" => "ចំនួន", - "amount_number" => "ចំនួនត្រូវតែជាលេខ", - "amount_required" => "តំរូវអោយបំពេញចំនួនចំណាយ", - "by_category" => "ប្រភេទ", - "cannot_be_deleted" => "មិនអាចលប់ប្រភេទចំណាយ", - "cash" => "សាច់ប្រាក់", - "cash_filter" => "សាច់ប្រាក់", - "categories_name" => "ប្រភេទ", - "category_required" => "តំរូវអោយបំពេញប្រភេទ", - "check" => "ឆែក", - "check_filter" => "ឆែក", - "confirm_delete" => "តើអ្នកពិតជាចង់លប់ចំណាយដែលបានជ្រើសរើសមែនទេ?", - "confirm_restore" => "តើអ្នកពិតជាចង់ទាញយកមកវិញនូវចំណាយដែលបានជ្រើរើសមែនទេ?", - "credit" => "កាត​ឥណទាន", - "credit_filter" => "កាត​ឥណទាន", - "date" => "ថ្ងៃខែ", - "date_number" => "ថ្ងៃខែត្រូវតែជាចំនួនលេខ", - "date_required" => "តំរូវអោយបំពេញថ្ងៃខែ", - "debit" => "ប័ណ្ណ​ឥ​ណ្ណ​ពន្ធ", - "debit_filter" => "ប័ណ្ណ​ឥ​ណ្ណ​ពន្ធ", - "description" => "ការពិពណ៌នា", - "due" => "ប្រមូល", - "due_filter" => "ប្រមូល", - "employee" => "បង្កើតដោយ", - "error_adding_updating" => "កំហុសក្នុងការបន្ថែម / ធ្វើបច្ចុប្បន្នភាពចំណាយ", - "expense_id" => "លេខសំគាល់", - "expenses_employee" => "បុគ្គលិក", - "info" => "ពត៌មានចំណាយ", - "ip_address" => "", - "is_deleted" => "បានលប់", - "name_required" => "តំរូវអោយបំពេញឈ្មោះចំណាយ", - "new" => "ចំណាយថ្មី", - "new_supplier" => "", - "no_expenses_to_display" => "គ្មានចំណាយសំរាប់យកមកបង្ហាញ", - "none_selected" => "អ្នកមិនទាន់បានជ្រើរើសចំណាយណាមួយឡើយ", - "one_or_multiple" => "ចំណាយ", - "payment" => "ប្រភេទបង់ប្រាក់", - "start_typing_supplier_name" => "", - "successful_adding" => "បន្ថែមចំណាយបានជោគជ័យ", - "successful_deleted" => "ការចំណាយលប់បានជោគជ័យ", - "successful_updating" => "ការចំណាយធ្វើបច្ចុប្បន្នភាពបានជោគ", - "supplier_name" => "អ្នកផ្គត់ផ្គង់", - "supplier_tax_code" => "កូដពន្ធ", - "tax_amount" => "ពន្ធ", - "tax_amount_number" => "", - "update" => "ធ្វើបច្ចុប្បន្នភាពចំណាយ", + "add_item" => "បន្ថែមចំណាយ", + "amount" => "ចំនួន", + "amount_number" => "ចំនួនត្រូវតែជាលេខ", + "amount_required" => "តំរូវអោយបំពេញចំនួនចំណាយ", + "by_category" => "ប្រភេទ", + "cannot_be_deleted" => "មិនអាចលប់ប្រភេទចំណាយ", + "cash" => "សាច់ប្រាក់", + "cash_filter" => "សាច់ប្រាក់", + "categories_name" => "ប្រភេទ", + "category_required" => "តំរូវអោយបំពេញប្រភេទ", + "check" => "ឆែក", + "check_filter" => "ឆែក", + "confirm_delete" => "តើអ្នកពិតជាចង់លប់ចំណាយដែលបានជ្រើសរើសមែនទេ?", + "confirm_restore" => "តើអ្នកពិតជាចង់ទាញយកមកវិញនូវចំណាយដែលបានជ្រើរើសមែនទេ?", + "credit" => "កាត​ឥណទាន", + "credit_filter" => "កាត​ឥណទាន", + "date" => "ថ្ងៃខែ", + "date_number" => "ថ្ងៃខែត្រូវតែជាចំនួនលេខ", + "date_required" => "តំរូវអោយបំពេញថ្ងៃខែ", + "debit" => "ប័ណ្ណ​ឥ​ណ្ណ​ពន្ធ", + "debit_filter" => "ប័ណ្ណ​ឥ​ណ្ណ​ពន្ធ", + "description" => "ការពិពណ៌នា", + "due" => "ប្រមូល", + "due_filter" => "ប្រមូល", + "employee" => "បង្កើតដោយ", + "error_adding_updating" => "កំហុសក្នុងការបន្ថែម / ធ្វើបច្ចុប្បន្នភាពចំណាយ", + "expense_id" => "លេខសំគាល់", + "expenses_employee" => "បុគ្គលិក", + "info" => "ពត៌មានចំណាយ", + "ip_address" => "", + "is_deleted" => "បានលប់", + "name_required" => "តំរូវអោយបំពេញឈ្មោះចំណាយ", + "new" => "ចំណាយថ្មី", + "new_supplier" => "", + "no_expenses_to_display" => "គ្មានចំណាយសំរាប់យកមកបង្ហាញ", + "none_selected" => "អ្នកមិនទាន់បានជ្រើរើសចំណាយណាមួយឡើយ", + "one_or_multiple" => "ចំណាយ", + "payment" => "ប្រភេទបង់ប្រាក់", + "start_typing_supplier_name" => "", + "successful_adding" => "បន្ថែមចំណាយបានជោគជ័យ", + "successful_deleted" => "ការចំណាយលប់បានជោគជ័យ", + "successful_updating" => "ការចំណាយធ្វើបច្ចុប្បន្នភាពបានជោគ", + "supplier_name" => "អ្នកផ្គត់ផ្គង់", + "supplier_tax_code" => "កូដពន្ធ", + "tax_amount" => "ពន្ធ", + "tax_amount_number" => "", + "update" => "ធ្វើបច្ចុប្បន្នភាពចំណាយ", ]; diff --git a/app/Language/km/Expenses_categories.php b/app/Language/km/Expenses_categories.php index 0a0993549..f62cece74 100644 --- a/app/Language/km/Expenses_categories.php +++ b/app/Language/km/Expenses_categories.php @@ -1,22 +1,22 @@ "តំរូវអោយបំពេញឈ្មោះប្រភេទចំណាយ", - "add_item" => "បន្ថែមប្រភេទ", - "cannot_be_deleted" => "មិនអាចលប់ប្រភេទចំណាយបាន", - "category_id" => "លេខសំគាល់", - "confirm_delete" => "តើអ្នកពិតជាចង់លប់ប្រភេទចំណាយដែលបានជ្រើរើសមែនទេ?", - "confirm_restore" => "", - "description" => "ពិពណ៌នាអំពីប្រភេទ", - "error_adding_updating" => "កំហុសក្នុងការបន្ថែម / ធ្វើបច្ចុប្បន្នភាពប្រភេទចំណាយ", - "info" => "ពត៌មានប្រភេទចំណាយ", - "name" => "ឈ្មោះប្រភេទ", - "new" => "ប្រភេទថ្មី", - "no_expenses_categories_to_display" => "គ្មានប្រភេទសំរាប់បង្ហាញ", - "none_selected" => "អ្នកមិនទាន់ជ្រើរើសប្រភេទចំណាយណាមួយនុះឡើយ", - "one_or_multiple" => "ប្រភេទចំណាយ", - "quantity" => "បរិមាណ", - "successful_adding" => "បន្ថែមប្រភេទចំណាយបានជោគជ័យ", - "successful_deleted" => "លប់ប្រភេទចំណាយបានជោគជ័យ", - "successful_updating" => "ធ្វើបច្ចុប្បន្នភាពប្រភេទចំណាយបានជោគជ័យ", - "update" => "ធ្វើបច្ចុប្បន្នភាពប្រភេទ", + "category_name_required" => "តំរូវអោយបំពេញឈ្មោះប្រភេទចំណាយ", + "add_item" => "បន្ថែមប្រភេទ", + "cannot_be_deleted" => "មិនអាចលប់ប្រភេទចំណាយបាន", + "category_id" => "លេខសំគាល់", + "confirm_delete" => "តើអ្នកពិតជាចង់លប់ប្រភេទចំណាយដែលបានជ្រើរើសមែនទេ?", + "confirm_restore" => "", + "description" => "ពិពណ៌នាអំពីប្រភេទ", + "error_adding_updating" => "កំហុសក្នុងការបន្ថែម / ធ្វើបច្ចុប្បន្នភាពប្រភេទចំណាយ", + "info" => "ពត៌មានប្រភេទចំណាយ", + "name" => "ឈ្មោះប្រភេទ", + "new" => "ប្រភេទថ្មី", + "no_expenses_categories_to_display" => "គ្មានប្រភេទសំរាប់បង្ហាញ", + "none_selected" => "អ្នកមិនទាន់ជ្រើរើសប្រភេទចំណាយណាមួយនុះឡើយ", + "one_or_multiple" => "ប្រភេទចំណាយ", + "quantity" => "បរិមាណ", + "successful_adding" => "បន្ថែមប្រភេទចំណាយបានជោគជ័យ", + "successful_deleted" => "លប់ប្រភេទចំណាយបានជោគជ័យ", + "successful_updating" => "ធ្វើបច្ចុប្បន្នភាពប្រភេទចំណាយបានជោគជ័យ", + "update" => "ធ្វើបច្ចុប្បន្នភាពប្រភេទ", ]; diff --git a/app/Language/km/Giftcards.php b/app/Language/km/Giftcards.php index 0ea8254ef..3845d3627 100644 --- a/app/Language/km/Giftcards.php +++ b/app/Language/km/Giftcards.php @@ -1,71 +1,71 @@ "បន្ថែមឬដកស្តុកទំនិញ។", - "allow_alt_description" => "អនុញ្ញាតអោយមានពិពណ៌នាផ្សេងទៀត", - "bulk_edit" => "កែសំរួលម្ដងច្រើន", - "cannot_be_deleted" => "មិនអាចលប់ហ្គិវកាតបានទេ, មានហ្គិវកាតមួយឬច្រើនដែលបានជ្រើសរើសកំពង់ជាប់ប្រតិបត្តិការលក់។", - "cannot_find_giftcard" => "ហ្គិវកាតរកមិនឃើញ។", - "cannot_use" => "ហិ្គវកាត {0} មិនអាចយកមកប្រើជាមួយប្រតិបត្តិការលក់នេះបានទេ: មិនមានអតិថិជននេះ។", - "card_value" => "តំលៃ", - "category" => "ប្រភេទ", - "change_all_to_allow_alt_desc" => "អនុញ្ញាតអោយមានពិពណ៌នាផ្សេងទៀតសំរាប់ទាំងអស់។", - "change_all_to_not_allow_allow_desc" => "មិនអនុញ្ញាតិអោយមានពិពណ៌នាផ្សេងទៀតសំរាប់ទាំងអស់។", - "change_all_to_serialized" => "ប្លាស់ប្តូរទាំងអស់អោយទៅជាលេខសេរី", - "change_all_to_unserialized" => "ប្លាស់ប្តូរទាំងអស់មិនអោយទៅជាលេខសេរី", - "confirm_bulk_edit" => "តើអ្នកពិតជាចង់កែសំរួលហ្គិវកាតដែលបានជ្រើសរើសមែនទេ?", - "confirm_delete" => "តើអ្នកពិតជាចង់លប់ហ្គិវកាតដែលបានជ្រើសរើសមែនទេ?", - "confirm_restore" => "តើអ្នកពិតជាចង់ទាញយកហ្គិវកាតដែលបានជ្រើសរើសមកវិញមែនទេ?", - "cost_price" => "តំលៃលក់ដុំ", - "count" => "ធ្វើបច្ចុប្បន្នភាពស្តុកទំនិញ", - "csv_import_failed" => "នាំចូលឯកសារអិចសែលមិនបានជោគជ័យ។", - "current_quantity" => "បរិមាណបច្ចុប្បន្ន", - "description" => "ការពិពណ៌នា", - "details_count" => "រាប់ស្តុកទំនិញលំអិត", - "do_nothing" => "មិនមានប្រតិបតិ្តការ", - "edit_fields_you_want_to_update" => "កែសំរួលចន្លោះដែលអ្នកចង់កែសំរាប់ហ្គិវកាតដែលបានជ្រើរើស។", - "edit_multiple_giftcards" => "កែសំរួលហ្គិវកាតច្រើន។", - "error_adding_updating" => "បន្ថែមឬ ធ្វើបច្ចុប្បន្នភាពហ្គិវកាតមិនបានជោគជ័យ។", - "error_updating_multiple" => "ធ្វើបច្ចុប្បន្នភាពហ្គិវកាតមិនបានជោគជ័យ។", - "generate_barcodes" => "បង្កើតបាកូដ", - "giftcard" => "ហ្គិវកាត", - "giftcard_number" => "លេខហ្គិវកាត", - "info_provided_by" => "ព័ត៌មានផ្តល់ដោយ", - "inventory_comments" => "មតិយោបល់", - "is_serialized" => "ហ្គិវកាតមានលេខសេរី", - "low_inventory_giftcards" => "ស្តុកហ្គិវកាតសល់តិច", - "manually_editing_of_quantity" => "កែសំរួលបរិមាណដោយផ្ទាល់", - "must_select_giftcard_for_barcode" => "អ្នកត្រូវតែជ្រើសរើសហ្គិវកាតយាងតិចមួយសំរាប់យកមកធ្វើបាកូដ។", - "new" => "ហ្គិវកាតថ្មី", - "no_description_giftcards" => "ហ្គិវកាតមិនមានការពិពណ៌នា", - "no_giftcards_to_display" => "មិនមានហ្គិវកាតយកមកបង្ហាញ។", - "none" => "ទទេ", - "none_selected" => "មិនបានជ្រើសរើសហ្គិវកាតយកមកកែសំរួល។", - "number" => "លេខហ្គិវកាតត្រូវតែជាចំនួនលេខ។", - "number_information" => "លេខហ្គិវកាត", - "number_required" => "តំរូវអោយបំពេញលេខហ្គិវកាត។", - "one_or_multiple" => "ហ្គិវកាត", - "person_id" => "អតិថិជន", - "quantity" => "បរិមាណ", - "quantity_required" => "តំរូវអោយបំពេញបរិមាណ។ សូមបិទ (X) ដើម្បីចាកចេញ។", - "remaining_balance" => "ហ្គិវកាត {0} នៅសល់ {1}!", - "reorder_level" => "ចំនួនត្រូវកម្មង់បន្ថែម", - "retrive_giftcard_info" => "ទាញយកព៌ត័មានហ្គិវកាត", - "sales_tax_1" => "ពន្ធលក់", - "sales_tax_2" => "ពន្ធលក់ 2", - "serialized_giftcards" => "បង្កើតសេរីហ្គិវកាត", - "successful_adding" => "អ្នកបន្ថែមហ្គិវកាតបានជោគជ័យ", - "successful_bulk_edit" => "អ្នកបានធ្វើបច្ចុប្បន្នភាពហ្គិវកាតដែលបានជ្រើសរើសដោយជោគជ័យ", - "successful_deleted" => "អ្នកលប់បានជោគជ័យ", - "successful_updating" => "អ្នកបានធ្វើបច្ចុប្បន្នភាពហ្គិវកាតបានជោគជ័យ", - "supplier" => "អ្នកផ្គត់ផ្គង់", - "tax_1" => "ពន្ធ ‌1", - "tax_2" => "ពន្ធ​ 2", - "tax_percent" => "ពន្ធជាភាគរយ", - "tax_percents" => "ពន្ធជាភាគរយ", - "unit_price" => "តំលៃលក់រាយ", - "upc_database" => "ទិន្ន័យបាកូដ", - "update" => "ធ្វើបច្ចុប្បន្នភាពហ្គិវកាត", - "use_inventory_menu" => "ប្រើម៉ឺនុយស្តុកទំនិញ", - "value" => "តំលៃហ្គិវកាតត្រូវតែជាចំនួនលេខ។", - "value_required" => "តំរូវអោយបំពេញតំលៃហ្គិវកាត។", + "add_minus" => "បន្ថែមឬដកស្តុកទំនិញ។", + "allow_alt_description" => "អនុញ្ញាតអោយមានពិពណ៌នាផ្សេងទៀត", + "bulk_edit" => "កែសំរួលម្ដងច្រើន", + "cannot_be_deleted" => "មិនអាចលប់ហ្គិវកាតបានទេ, មានហ្គិវកាតមួយឬច្រើនដែលបានជ្រើសរើសកំពង់ជាប់ប្រតិបត្តិការលក់។", + "cannot_find_giftcard" => "ហ្គិវកាតរកមិនឃើញ។", + "cannot_use" => "ហិ្គវកាត {0} មិនអាចយកមកប្រើជាមួយប្រតិបត្តិការលក់នេះបានទេ: មិនមានអតិថិជននេះ។", + "card_value" => "តំលៃ", + "category" => "ប្រភេទ", + "change_all_to_allow_alt_desc" => "អនុញ្ញាតអោយមានពិពណ៌នាផ្សេងទៀតសំរាប់ទាំងអស់។", + "change_all_to_not_allow_allow_desc" => "មិនអនុញ្ញាតិអោយមានពិពណ៌នាផ្សេងទៀតសំរាប់ទាំងអស់។", + "change_all_to_serialized" => "ប្លាស់ប្តូរទាំងអស់អោយទៅជាលេខសេរី", + "change_all_to_unserialized" => "ប្លាស់ប្តូរទាំងអស់មិនអោយទៅជាលេខសេរី", + "confirm_bulk_edit" => "តើអ្នកពិតជាចង់កែសំរួលហ្គិវកាតដែលបានជ្រើសរើសមែនទេ?", + "confirm_delete" => "តើអ្នកពិតជាចង់លប់ហ្គិវកាតដែលបានជ្រើសរើសមែនទេ?", + "confirm_restore" => "តើអ្នកពិតជាចង់ទាញយកហ្គិវកាតដែលបានជ្រើសរើសមកវិញមែនទេ?", + "cost_price" => "តំលៃលក់ដុំ", + "count" => "ធ្វើបច្ចុប្បន្នភាពស្តុកទំនិញ", + "csv_import_failed" => "នាំចូលឯកសារអិចសែលមិនបានជោគជ័យ។", + "current_quantity" => "បរិមាណបច្ចុប្បន្ន", + "description" => "ការពិពណ៌នា", + "details_count" => "រាប់ស្តុកទំនិញលំអិត", + "do_nothing" => "មិនមានប្រតិបតិ្តការ", + "edit_fields_you_want_to_update" => "កែសំរួលចន្លោះដែលអ្នកចង់កែសំរាប់ហ្គិវកាតដែលបានជ្រើរើស។", + "edit_multiple_giftcards" => "កែសំរួលហ្គិវកាតច្រើន។", + "error_adding_updating" => "បន្ថែមឬ ធ្វើបច្ចុប្បន្នភាពហ្គិវកាតមិនបានជោគជ័យ។", + "error_updating_multiple" => "ធ្វើបច្ចុប្បន្នភាពហ្គិវកាតមិនបានជោគជ័យ។", + "generate_barcodes" => "បង្កើតបាកូដ", + "giftcard" => "ហ្គិវកាត", + "giftcard_number" => "លេខហ្គិវកាត", + "info_provided_by" => "ព័ត៌មានផ្តល់ដោយ", + "inventory_comments" => "មតិយោបល់", + "is_serialized" => "ហ្គិវកាតមានលេខសេរី", + "low_inventory_giftcards" => "ស្តុកហ្គិវកាតសល់តិច", + "manually_editing_of_quantity" => "កែសំរួលបរិមាណដោយផ្ទាល់", + "must_select_giftcard_for_barcode" => "អ្នកត្រូវតែជ្រើសរើសហ្គិវកាតយាងតិចមួយសំរាប់យកមកធ្វើបាកូដ។", + "new" => "ហ្គិវកាតថ្មី", + "no_description_giftcards" => "ហ្គិវកាតមិនមានការពិពណ៌នា", + "no_giftcards_to_display" => "មិនមានហ្គិវកាតយកមកបង្ហាញ។", + "none" => "ទទេ", + "none_selected" => "មិនបានជ្រើសរើសហ្គិវកាតយកមកកែសំរួល។", + "number" => "លេខហ្គិវកាតត្រូវតែជាចំនួនលេខ។", + "number_information" => "លេខហ្គិវកាត", + "number_required" => "តំរូវអោយបំពេញលេខហ្គិវកាត។", + "one_or_multiple" => "ហ្គិវកាត", + "person_id" => "អតិថិជន", + "quantity" => "បរិមាណ", + "quantity_required" => "តំរូវអោយបំពេញបរិមាណ។ សូមបិទ (X) ដើម្បីចាកចេញ។", + "remaining_balance" => "ហ្គិវកាត {0} នៅសល់ {1}!", + "reorder_level" => "ចំនួនត្រូវកម្មង់បន្ថែម", + "retrive_giftcard_info" => "ទាញយកព៌ត័មានហ្គិវកាត", + "sales_tax_1" => "ពន្ធលក់", + "sales_tax_2" => "ពន្ធលក់ 2", + "serialized_giftcards" => "បង្កើតសេរីហ្គិវកាត", + "successful_adding" => "អ្នកបន្ថែមហ្គិវកាតបានជោគជ័យ", + "successful_bulk_edit" => "អ្នកបានធ្វើបច្ចុប្បន្នភាពហ្គិវកាតដែលបានជ្រើសរើសដោយជោគជ័យ", + "successful_deleted" => "អ្នកលប់បានជោគជ័យ", + "successful_updating" => "អ្នកបានធ្វើបច្ចុប្បន្នភាពហ្គិវកាតបានជោគជ័យ", + "supplier" => "អ្នកផ្គត់ផ្គង់", + "tax_1" => "ពន្ធ ‌1", + "tax_2" => "ពន្ធ​ 2", + "tax_percent" => "ពន្ធជាភាគរយ", + "tax_percents" => "ពន្ធជាភាគរយ", + "unit_price" => "តំលៃលក់រាយ", + "upc_database" => "ទិន្ន័យបាកូដ", + "update" => "ធ្វើបច្ចុប្បន្នភាពហ្គិវកាត", + "use_inventory_menu" => "ប្រើម៉ឺនុយស្តុកទំនិញ", + "value" => "តំលៃហ្គិវកាតត្រូវតែជាចំនួនលេខ។", + "value_required" => "តំរូវអោយបំពេញតំលៃហ្គិវកាត។", ]; diff --git a/app/Language/km/Item_kits.php b/app/Language/km/Item_kits.php index 0321cc3ee..a40442137 100644 --- a/app/Language/km/Item_kits.php +++ b/app/Language/km/Item_kits.php @@ -1,41 +1,41 @@ "បន្ថែមទំនិញ", - "all" => "ទាំងអស់", - "cannot_be_deleted" => "ក្រុមទំនិញលប់មិនបានជោគជ័យ។", - "confirm_delete" => "តើអ្នកពិតជាចង់លប់ក្រុមទំនិញដែលបានជ្រើសរើសមែនទេ?", - "confirm_restore" => "តើអ្នកពិតជាចង់ទាញយកមកវិញនៅក្រុមទំនិញដែលបានជ្រើសរើសមែនទេ?", - "description" => "ពិពណ៌នាក្រុមទំនិញ", - "discount" => "", - "discount_fixed" => "", - "discount_percent" => "បញ្ចុះតំលៃជាភាគរយ", - "discount_type" => "", - "error_adding_updating" => "បន្ថែម​ ឬក៏ធ្វើបច្ចុប្បន្នភាព​ ក្រុមទំនិញមិនបានជោគជ័យ។", - "find_kit_item" => "មុខទំនេញ", - "info" => "ព៌ត័មានក្រុមទំនេញ", - "item" => "ទំនិញ", - "item_kit_number" => "", - "item_kit_number_duplicate" => "", - "item_number" => "", - "item_number_duplicate" => "", - "items" => "មុខទំនិញ", - "kit" => "លេខសំគាល់ក្រុមទំនិញ", - "kit_and_components" => "កញ្ចប់និងសមាសភាគ", - "kit_and_stock" => "កញ្ចប់និងស្តុកទំនិញ", - "kit_only" => "កញ្ចប់តែមួយមុខគត់", - "name" => "ឈ្មោះកញ្ចប់ទំនិញ", - "new" => "កញ្ចប់ទំនិញថ្មី", - "no_item_kits_to_display" => "គ្មានកញ្ចប់ទំនិញសំរាប់បង្ហាញ។", - "none_selected" => "អ្នកមិនបានជ្រើសរើសកញ្ចប់ទំនិញណាមួយទេ។", - "one_or_multiple" => "កញ្ចប់ទំនិញ", - "price_option" => "ជម្រើសតម្លៃ", - "priced_only" => "តម្លៃតែប៉ុណ្ណោះ", - "print_option" => "ជម្រើសបោះពុម្ព", - "quantity" => "បរិមាណ", - "sequence" => "លំដាប់", - "successful_adding" => "អ្នកបន្ថែមកញ្ចប់ទំនិញបានជោគជ័យ", - "successful_deleted" => "អ្នកលប់បានជោគជ័យ", - "successful_updating" => "អ្នកធ្វើបច្ចុប្បន្នភាពកញ្ចប់ទំនិញបានជោគជ័យ", - "unit_price" => "", - "update" => "ធ្វើបច្ចុប្បន្នភាពកញ្ចប់ទំនិញ", + "add_item" => "បន្ថែមទំនិញ", + "all" => "ទាំងអស់", + "cannot_be_deleted" => "ក្រុមទំនិញលប់មិនបានជោគជ័យ។", + "confirm_delete" => "តើអ្នកពិតជាចង់លប់ក្រុមទំនិញដែលបានជ្រើសរើសមែនទេ?", + "confirm_restore" => "តើអ្នកពិតជាចង់ទាញយកមកវិញនៅក្រុមទំនិញដែលបានជ្រើសរើសមែនទេ?", + "description" => "ពិពណ៌នាក្រុមទំនិញ", + "discount" => "", + "discount_fixed" => "", + "discount_percent" => "បញ្ចុះតំលៃជាភាគរយ", + "discount_type" => "", + "error_adding_updating" => "បន្ថែម​ ឬក៏ធ្វើបច្ចុប្បន្នភាព​ ក្រុមទំនិញមិនបានជោគជ័យ។", + "find_kit_item" => "មុខទំនេញ", + "info" => "ព៌ត័មានក្រុមទំនេញ", + "item" => "ទំនិញ", + "item_kit_number" => "", + "item_kit_number_duplicate" => "", + "item_number" => "", + "item_number_duplicate" => "", + "items" => "មុខទំនិញ", + "kit" => "លេខសំគាល់ក្រុមទំនិញ", + "kit_and_components" => "កញ្ចប់និងសមាសភាគ", + "kit_and_stock" => "កញ្ចប់និងស្តុកទំនិញ", + "kit_only" => "កញ្ចប់តែមួយមុខគត់", + "name" => "ឈ្មោះកញ្ចប់ទំនិញ", + "new" => "កញ្ចប់ទំនិញថ្មី", + "no_item_kits_to_display" => "គ្មានកញ្ចប់ទំនិញសំរាប់បង្ហាញ។", + "none_selected" => "អ្នកមិនបានជ្រើសរើសកញ្ចប់ទំនិញណាមួយទេ។", + "one_or_multiple" => "កញ្ចប់ទំនិញ", + "price_option" => "ជម្រើសតម្លៃ", + "priced_only" => "តម្លៃតែប៉ុណ្ណោះ", + "print_option" => "ជម្រើសបោះពុម្ព", + "quantity" => "បរិមាណ", + "sequence" => "លំដាប់", + "successful_adding" => "អ្នកបន្ថែមកញ្ចប់ទំនិញបានជោគជ័យ", + "successful_deleted" => "អ្នកលប់បានជោគជ័យ", + "successful_updating" => "អ្នកធ្វើបច្ចុប្បន្នភាពកញ្ចប់ទំនិញបានជោគជ័យ", + "unit_price" => "", + "update" => "ធ្វើបច្ចុប្បន្នភាពកញ្ចប់ទំនិញ", ]; diff --git a/app/Language/km/Items.php b/app/Language/km/Items.php index e089e8230..6648f98c4 100644 --- a/app/Language/km/Items.php +++ b/app/Language/km/Items.php @@ -1,120 +1,120 @@ "ស្តុក​ សំរាប់បន្ថែម រឺក៏ដកទំនិញ។", - "allow_alt_description" => "យល់ព្រម ចំពោះការពិព៌ណនា ផ្សេងទៀត", - "amount_entry" => "ចំនួន ត្រូវបញ្ជូល", - "bulk_edit" => "កែប្រែជាក្រុម", - "buy_price_required" => "តម្លៃទិញចូល ត្រូវតែបំពេញ។", - "cannot_be_deleted" => "", - "cannot_find_item" => "ទំនិញរកមិនឃើញ។", - "categories" => "", - "category" => "ប្រភេទ", - "category_new" => "", - "category_required" => "ត្រូវការ ប្រភេទចាំបាច់។", - "change_all_to_allow_alt_desc" => "អនុញ្ញាតអោយមានការព៌ណនាផ្សេងទៀត សំរាប់គ្រប់យ៉ាង។", - "change_all_to_not_allow_allow_desc" => "មិនអនុញ្ញាតអោយមានការព៌ណនាផ្សេងទៀត សំរាប់គ្រប់យ៉ាង។", - "change_all_to_serialized" => "ផ្លាស់ប្ដូរទាំងអស់ទៅជាលំដាប់", - "change_all_to_unserialized" => "ផ្លាស់ប្ដូរទាំងអស់ទៅជាមិនលំដាប់", - "change_image" => "ផ្លាស់ប្ដូររូបភាព", - "confirm_bulk_edit" => "តើអ្នកពិតជាចង់កែប្រែ ទំនិញដែលបានជ្រើសរើសមែនទេ?", - "confirm_bulk_edit_wipe_taxes" => "រាល់ពន្ធលើទំនិញទាំងអស់ នឹងធ្វើការផ្លាស់ប្ដូរ។", - "confirm_delete" => "តើអ្នកពិតជាចង់លុបទំនិញដែលបានជ្រើសរើសមែនទេ?", - "confirm_restore" => "តើអ្នកពិតជាចង់ដាក់មកវិញនៅទំនិញដែលបានជ្រើសរើសមែនទេ?", - "cost_price" => "តម្លៃលក់ដុំ", - "cost_price_number" => "តម្លៃលក់ដុំត្រូវតែជាលេខ។", - "cost_price_required" => "ត្រូវការតម្លៃលក់ដុំជាចាំបាច់។", - "count" => "កែប្រែ ទំនិញក្នុងស្តុក", - "csv_import_failed" => "CSV បញ្ចូលមិនបានសំរេច", - "csv_import_nodata_wrongformat" => "ដាក់បញ្ជុល CSV មិនមានទិន្នន័យ ឬទំរង់មិនត្រឹមត្រូវ។", - "csv_import_partially_failed" => "មានទំននិញ {0} បញ្ជូលមិនបានសំរេច នៅជួរ: {1}​ ។ គ្មានជួរណាមួយត្រូវបានបញ្ជូលនោះទេ។", - "csv_import_success" => "ទំនិញក្នុង CSV បញ្ចូលបានសំរេច។", - "current_quantity" => "បរិមាណបច្ចុប្បន្ន", - "default_pack_name" => "", - "description" => "បរិយាយ", - "details_count" => "ចំនួនទំនិញក្នុងស្ដុកជាក់លាក់", - "do_nothing" => "មិនធ្វើអ្វី", - "edit" => "", - "edit_fields_you_want_to_update" => "កែប្រែព៌តមានទៅលើកន្លែងដែលបានជ្រើសរើស។", - "edit_multiple_items" => "កែប្រែ ទំនិញច្រើនក្នុងពេលតែមួយ", - "empty_upc_items" => "ទំនិញមិនមាន លេខកូត", - "error_adding_updating" => "មានបញ្ហា បន្ថែម /កែប្រែទំនិញ", - "error_updating_multiple" => "មានបញ្ហាកែប្រែទំនិញ", - "generate_barcodes" => "បង្កើតលេខកូត", - "hsn_code" => "", - "image" => "រូបសម្គាល់", - "import_items_csv" => "ទំនិញបញ្ចូលពី CSV", - "info_provided_by" => "ព៌តមានផ្ដល់ដោយ", - "inventory" => "ស្ដុកទំនិញ", - "inventory_CSV_import_quantity" => "ចំនួនទំនិញ បញ្ចូលពី CSV", - "inventory_comments" => "មតិយោបល់", - "inventory_data_tracking" => "តាមដានទិន្នន័យស្តុកទំនិញ", - "inventory_date" => "ថ្ងៃខែ", - "inventory_employee" => "បុគ្គលិក", - "inventory_in_out_quantity" => "បរិមាណ ចូល/ចេញ", - "inventory_remarks" => "សំគាល់", - "is_deleted" => "បានលុប", - "is_printed" => "", - "is_serialized" => "ទំនិញមានលេខរៀង", - "item" => "ទំនិញ", - "item_id" => "", - "item_number" => "លេខកូត", - "item_number_duplicate" => "លេខរបស់ទំនិញមាននៅក្នុងទិន្នន័យរួចរាល់។", - "kit" => "កញ្ចប់", - "location" => "ទីតាំង", - "low_inventory_items" => "ទំនិញអស់ពីស្តុក", - "low_sell_item" => "ទំនិញជិតអស់", - "manually_editing_of_quantity" => "កែប្រែចំនួនមានក្នុងស្តុក", - "markup" => "", - "name" => "ឈ្មោះទំនិញ", - "name_required" => "ឈោ្មះទំនិញត្រូវការចាំបាច់។", - "new" => "ទំនិញថ្មី", - "no_description_items" => "ទំនិញមិនមានការបរិយាយ", - "no_items_to_display" => "មិនមានទំនិញសំរាប់បង្ហាញ។", - "none" => "គ្មាន", - "none_selected" => "អ្នកមិនបានជ្រើសរើសទំនិញណាមួយសំរាប់កែប្រែនោះទេ", - "nonstock" => "មិនមានស្ដុក", - "number_information" => "លេខរបស់ទំនិញ", - "number_required" => "ត្រូវការលេខកូតចាំបាច់។", - "one_or_multiple" => "ទំនិញ", - "pack_name" => "កញ្ចប់ឈ្មោះ", - "qty_per_pack" => "បរិមាណក្នុងមួយកញ្ចប់", - "quantity" => "បរិមាណ", - "quantity_number" => "បរិមាណត្រូវតែជាលេខ។", - "quantity_required" => "បរិមាណ​ ត្រូវការជាចាំបាច់។", - "receiving_quantity" => "បរិមាណដែលបានទទួល", - "remove_image" => "ដករូបភាព", - "reorder_level" => "រៀបឡើងវិញនៅលំដាប់", - "reorder_level_number" => "រៀបលេខលំដាប់ឡើងវិញត្រូវតែជាលេខ។", - "reorder_level_required" => "រៀបលេខលំដាប់ឡើងវិញត្រូវការចាំបាច់។", - "retrive_item_info" => "ទាញយកព៌តមាននៃទំនិញ", - "sales_tax_1" => "ពន្ធនៃការលក់", - "sales_tax_2" => "ពន្ធនៃការលក់ 2", - "search_attributes" => "ស្វែងរកព៌តមានបន្ថែម", - "select_image" => "ជ្រើសរើសរូបភាព", - "serialized_items" => "ធ្វើអោយទំនិញមានលេខរៀង", - "standard" => "ស្តង់ដារ", - "stock" => "ស្តុក", - "stock_location" => "ទីតាំងស្តុក", - "stock_type" => "ប្រភេទ ស្តុក", - "successful_adding" => "អ្នកទទួលបានជោគជ័យក្នុងការបន្ថែមទំនិញ", - "successful_bulk_edit" => "អ្នកទទួលបានជោគជ័យក្នុងការកែប្រែទំនិញ", - "successful_deleted" => "អ្នកទទួលបានជោគជ័យក្នុងការលុប", - "successful_updating" => "អ្នកទទួលបានជោគជ័យក្នុងការកែប្រែទំនិញ", - "supplier" => "អ្នកផ្គត់ផ្គង់", - "tax_1" => "ពន្ធ​ 1", - "tax_2" => "ពន្ធ​ 2", - "tax_3" => "", - "tax_category" => "ប្រភេទពន្ធ​", - "tax_percent" => "", - "tax_percent_number" => "ភាគរយពន្ធត្រូវតែជាលេខគត់", - "tax_percent_required" => "ភាគរយពន្ធត្រូវការជាចាំបាច់។", - "tax_percents" => "ភាគរយពន្ធ", - "temp" => "បណ្ដោះអាសន្ន", - "type" => "ប្រភេទទំនិញ", - "unit_price" => "តម្លៃរាយ", - "unit_price_number" => "តម្លៃក្នុងមួយឯកតា ត្រូវតែជាលេខ។", - "unit_price_required" => "តម្លៃលក់រាយ ត្រូវការជាចាំបាច់។", - "upc_database" => "ទិន្នន័យ លេខកូត", - "update" => "កែប្រែទំនិញ", - "use_inventory_menu" => "ប្រើប្រាស់បញ្ជីទំនិញ", + "add_minus" => "ស្តុក​ សំរាប់បន្ថែម រឺក៏ដកទំនិញ។", + "allow_alt_description" => "យល់ព្រម ចំពោះការពិព៌ណនា ផ្សេងទៀត", + "amount_entry" => "ចំនួន ត្រូវបញ្ជូល", + "bulk_edit" => "កែប្រែជាក្រុម", + "buy_price_required" => "តម្លៃទិញចូល ត្រូវតែបំពេញ។", + "cannot_be_deleted" => "", + "cannot_find_item" => "ទំនិញរកមិនឃើញ។", + "categories" => "", + "category" => "ប្រភេទ", + "category_new" => "", + "category_required" => "ត្រូវការ ប្រភេទចាំបាច់។", + "change_all_to_allow_alt_desc" => "អនុញ្ញាតអោយមានការព៌ណនាផ្សេងទៀត សំរាប់គ្រប់យ៉ាង។", + "change_all_to_not_allow_allow_desc" => "មិនអនុញ្ញាតអោយមានការព៌ណនាផ្សេងទៀត សំរាប់គ្រប់យ៉ាង។", + "change_all_to_serialized" => "ផ្លាស់ប្ដូរទាំងអស់ទៅជាលំដាប់", + "change_all_to_unserialized" => "ផ្លាស់ប្ដូរទាំងអស់ទៅជាមិនលំដាប់", + "change_image" => "ផ្លាស់ប្ដូររូបភាព", + "confirm_bulk_edit" => "តើអ្នកពិតជាចង់កែប្រែ ទំនិញដែលបានជ្រើសរើសមែនទេ?", + "confirm_bulk_edit_wipe_taxes" => "រាល់ពន្ធលើទំនិញទាំងអស់ នឹងធ្វើការផ្លាស់ប្ដូរ។", + "confirm_delete" => "តើអ្នកពិតជាចង់លុបទំនិញដែលបានជ្រើសរើសមែនទេ?", + "confirm_restore" => "តើអ្នកពិតជាចង់ដាក់មកវិញនៅទំនិញដែលបានជ្រើសរើសមែនទេ?", + "cost_price" => "តម្លៃលក់ដុំ", + "cost_price_number" => "តម្លៃលក់ដុំត្រូវតែជាលេខ។", + "cost_price_required" => "ត្រូវការតម្លៃលក់ដុំជាចាំបាច់។", + "count" => "កែប្រែ ទំនិញក្នុងស្តុក", + "csv_import_failed" => "CSV បញ្ចូលមិនបានសំរេច", + "csv_import_nodata_wrongformat" => "ដាក់បញ្ជុល CSV មិនមានទិន្នន័យ ឬទំរង់មិនត្រឹមត្រូវ។", + "csv_import_partially_failed" => "មានទំននិញ {0} បញ្ជូលមិនបានសំរេច នៅជួរ: {1}​ ។ គ្មានជួរណាមួយត្រូវបានបញ្ជូលនោះទេ។", + "csv_import_success" => "ទំនិញក្នុង CSV បញ្ចូលបានសំរេច។", + "current_quantity" => "បរិមាណបច្ចុប្បន្ន", + "default_pack_name" => "", + "description" => "បរិយាយ", + "details_count" => "ចំនួនទំនិញក្នុងស្ដុកជាក់លាក់", + "do_nothing" => "មិនធ្វើអ្វី", + "edit" => "", + "edit_fields_you_want_to_update" => "កែប្រែព៌តមានទៅលើកន្លែងដែលបានជ្រើសរើស។", + "edit_multiple_items" => "កែប្រែ ទំនិញច្រើនក្នុងពេលតែមួយ", + "empty_upc_items" => "ទំនិញមិនមាន លេខកូត", + "error_adding_updating" => "មានបញ្ហា បន្ថែម /កែប្រែទំនិញ", + "error_updating_multiple" => "មានបញ្ហាកែប្រែទំនិញ", + "generate_barcodes" => "បង្កើតលេខកូត", + "hsn_code" => "", + "image" => "រូបសម្គាល់", + "import_items_csv" => "ទំនិញបញ្ចូលពី CSV", + "info_provided_by" => "ព៌តមានផ្ដល់ដោយ", + "inventory" => "ស្ដុកទំនិញ", + "inventory_CSV_import_quantity" => "ចំនួនទំនិញ បញ្ចូលពី CSV", + "inventory_comments" => "មតិយោបល់", + "inventory_data_tracking" => "តាមដានទិន្នន័យស្តុកទំនិញ", + "inventory_date" => "ថ្ងៃខែ", + "inventory_employee" => "បុគ្គលិក", + "inventory_in_out_quantity" => "បរិមាណ ចូល/ចេញ", + "inventory_remarks" => "សំគាល់", + "is_deleted" => "បានលុប", + "is_printed" => "", + "is_serialized" => "ទំនិញមានលេខរៀង", + "item" => "ទំនិញ", + "item_id" => "", + "item_number" => "លេខកូត", + "item_number_duplicate" => "លេខរបស់ទំនិញមាននៅក្នុងទិន្នន័យរួចរាល់។", + "kit" => "កញ្ចប់", + "location" => "ទីតាំង", + "low_inventory_items" => "ទំនិញអស់ពីស្តុក", + "low_sell_item" => "ទំនិញជិតអស់", + "manually_editing_of_quantity" => "កែប្រែចំនួនមានក្នុងស្តុក", + "markup" => "", + "name" => "ឈ្មោះទំនិញ", + "name_required" => "ឈោ្មះទំនិញត្រូវការចាំបាច់។", + "new" => "ទំនិញថ្មី", + "no_description_items" => "ទំនិញមិនមានការបរិយាយ", + "no_items_to_display" => "មិនមានទំនិញសំរាប់បង្ហាញ។", + "none" => "គ្មាន", + "none_selected" => "អ្នកមិនបានជ្រើសរើសទំនិញណាមួយសំរាប់កែប្រែនោះទេ", + "nonstock" => "មិនមានស្ដុក", + "number_information" => "លេខរបស់ទំនិញ", + "number_required" => "ត្រូវការលេខកូតចាំបាច់។", + "one_or_multiple" => "ទំនិញ", + "pack_name" => "កញ្ចប់ឈ្មោះ", + "qty_per_pack" => "បរិមាណក្នុងមួយកញ្ចប់", + "quantity" => "បរិមាណ", + "quantity_number" => "បរិមាណត្រូវតែជាលេខ។", + "quantity_required" => "បរិមាណ​ ត្រូវការជាចាំបាច់។", + "receiving_quantity" => "បរិមាណដែលបានទទួល", + "remove_image" => "ដករូបភាព", + "reorder_level" => "រៀបឡើងវិញនៅលំដាប់", + "reorder_level_number" => "រៀបលេខលំដាប់ឡើងវិញត្រូវតែជាលេខ។", + "reorder_level_required" => "រៀបលេខលំដាប់ឡើងវិញត្រូវការចាំបាច់។", + "retrive_item_info" => "ទាញយកព៌តមាននៃទំនិញ", + "sales_tax_1" => "ពន្ធនៃការលក់", + "sales_tax_2" => "ពន្ធនៃការលក់ 2", + "search_attributes" => "ស្វែងរកព៌តមានបន្ថែម", + "select_image" => "ជ្រើសរើសរូបភាព", + "serialized_items" => "ធ្វើអោយទំនិញមានលេខរៀង", + "standard" => "ស្តង់ដារ", + "stock" => "ស្តុក", + "stock_location" => "ទីតាំងស្តុក", + "stock_type" => "ប្រភេទ ស្តុក", + "successful_adding" => "អ្នកទទួលបានជោគជ័យក្នុងការបន្ថែមទំនិញ", + "successful_bulk_edit" => "អ្នកទទួលបានជោគជ័យក្នុងការកែប្រែទំនិញ", + "successful_deleted" => "អ្នកទទួលបានជោគជ័យក្នុងការលុប", + "successful_updating" => "អ្នកទទួលបានជោគជ័យក្នុងការកែប្រែទំនិញ", + "supplier" => "អ្នកផ្គត់ផ្គង់", + "tax_1" => "ពន្ធ​ 1", + "tax_2" => "ពន្ធ​ 2", + "tax_3" => "", + "tax_category" => "ប្រភេទពន្ធ​", + "tax_percent" => "", + "tax_percent_number" => "ភាគរយពន្ធត្រូវតែជាលេខគត់", + "tax_percent_required" => "ភាគរយពន្ធត្រូវការជាចាំបាច់។", + "tax_percents" => "ភាគរយពន្ធ", + "temp" => "បណ្ដោះអាសន្ន", + "type" => "ប្រភេទទំនិញ", + "unit_price" => "តម្លៃរាយ", + "unit_price_number" => "តម្លៃក្នុងមួយឯកតា ត្រូវតែជាលេខ។", + "unit_price_required" => "តម្លៃលក់រាយ ត្រូវការជាចាំបាច់។", + "upc_database" => "ទិន្នន័យ លេខកូត", + "update" => "កែប្រែទំនិញ", + "use_inventory_menu" => "ប្រើប្រាស់បញ្ជីទំនិញ", ]; diff --git a/app/Language/km/Login.php b/app/Language/km/Login.php index 508621492..2432a5b94 100644 --- a/app/Language/km/Login.php +++ b/app/Language/km/Login.php @@ -1,15 +1,15 @@ "ខ្ញុំមិនមែនជាម៉ាស៊ីនទេ។", - "go" => "ចាប់ផ្ដើម", - "invalid_gcaptcha" => "មិនត្រឹមត្រូវខ្ញុំមិនមែនជាម៉ាស៊ីនទេ។", - "invalid_installation" => "ការបញ្ចូលមិនត្រឹមត្រូវ, សូមពិនិត្យមើលឯកសារ php.ini របស់អ្នក។", - "invalid_username_and_password" => "ឈ្មោះឬក៏ពាក្យសំងាត់មិនត្រឹមត្រូវ។", - "login" => "ចូល", - "logout" => "", - "migration_needed" => "", - "password" => "ពាក្យសំងាត់", - "required_username" => "", - "username" => "ឈ្មោះ", - "welcome" => "", + "gcaptcha" => "ខ្ញុំមិនមែនជាម៉ាស៊ីនទេ។", + "go" => "ចាប់ផ្ដើម", + "invalid_gcaptcha" => "មិនត្រឹមត្រូវខ្ញុំមិនមែនជាម៉ាស៊ីនទេ។", + "invalid_installation" => "ការបញ្ចូលមិនត្រឹមត្រូវ, សូមពិនិត្យមើលឯកសារ php.ini របស់អ្នក។", + "invalid_username_and_password" => "ឈ្មោះឬក៏ពាក្យសំងាត់មិនត្រឹមត្រូវ។", + "login" => "ចូល", + "logout" => "", + "migration_needed" => "", + "password" => "ពាក្យសំងាត់", + "required_username" => "", + "username" => "ឈ្មោះ", + "welcome" => "", ]; diff --git a/app/Language/km/Messages.php b/app/Language/km/Messages.php index a41942a63..c0403f479 100644 --- a/app/Language/km/Messages.php +++ b/app/Language/km/Messages.php @@ -1,15 +1,15 @@ "នាមត្រកូល", - "last_name" => "ឈ្មោះ", - "message" => "សារ", - "message_placeholder" => "សរសេរសាររបស់អ្នកនៅទីនេះ...", - "message_required" => "តំរូវអោយមានសារ", - "multiple_phones" => "(ក្នុងករណីមានបង្កាន់ដៃច្រើន, សូមបំពេញលេខទូរស័ព្ទដាច់ពីគ្នាដោយសញ្ញាក្បៀស)", - "phone" => "លេខទូរស័ព្ទ", - "phone_number_required" => "តំរូវអោយបំពេញលេខទូរស័ព្ទ", - "phone_placeholder" => "បំពេញលេខទូរស័ព្ទនៅទីនេះ...", - "sms_send" => "ផ្ញើរសារ", - "successfully_sent" => "ការផ្ញើរសារបានជោគជ័យទៅកាន់: ", - "unsuccessfully_sent" => "ការផ្ញើរសារមិនបានជោគជ័យទៅកាន់: ", + "first_name" => "នាមត្រកូល", + "last_name" => "ឈ្មោះ", + "message" => "សារ", + "message_placeholder" => "សរសេរសាររបស់អ្នកនៅទីនេះ...", + "message_required" => "តំរូវអោយមានសារ", + "multiple_phones" => "(ក្នុងករណីមានបង្កាន់ដៃច្រើន, សូមបំពេញលេខទូរស័ព្ទដាច់ពីគ្នាដោយសញ្ញាក្បៀស)", + "phone" => "លេខទូរស័ព្ទ", + "phone_number_required" => "តំរូវអោយបំពេញលេខទូរស័ព្ទ", + "phone_placeholder" => "បំពេញលេខទូរស័ព្ទនៅទីនេះ...", + "sms_send" => "ផ្ញើរសារ", + "successfully_sent" => "ការផ្ញើរសារបានជោគជ័យទៅកាន់: ", + "unsuccessfully_sent" => "ការផ្ញើរសារមិនបានជោគជ័យទៅកាន់: ", ]; diff --git a/app/Language/km/Module.php b/app/Language/km/Module.php index 2243b032d..41c4af141 100644 --- a/app/Language/km/Module.php +++ b/app/Language/km/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "ពត៌មានបន្ថែម", - "attributes_desc" => "ថែម, កែប្រែ, លុប, រឺក៏ ស្វែងរកព៌តមានបន្ថែម។", - "both" => "ទាំងពីរ", - "cashups" => "សាច់ប្រាក់បានទទួល", - "cashups_desc" => "បន្ថែម, កែប្រែ, លុប, រឺស្វែងរក សាច់ប្រាក់ដែលបានទទួល។", - "config" => "ការកំណត់", - "config_desc" => "ផ្លាស់ប្ដូរការកំណត់របស់ OSPOS។", - "customers" => "អតិថិជន", - "customers_desc" => "បន្ថែម, កែប្រែ, លុយ, រឺស្វែងរក អតិថិជន។", - "employees" => "បុគ្គលិក", - "employees_desc" => "បន្ថែម, កែប្រែ, លុប, រឺស្វែងរក បុគ្គលិក។", - "expenses" => "ការចំណាយ", - "expenses_categories" => "ប្រភេទចំណាយ", - "expenses_categories_desc" => "បន្ថែម, កែប្រែ, រឺលុប ប្រភេទចំណាយ។", - "expenses_desc" => "បន្ថែម, កែប្រែ, លុប, រឺស្វែងរក​ ការចំណាយ។", - "giftcards" => "កាតអំណោយ", - "giftcards_desc" => "បន្ថែម, កែប្រែ, លុប, រឺស្វែងរក​ កាតអំណោយ។", - "home" => "ដើម", - "home_desc" => "បញ្ជីទីតាំងដើម។", - "item_kits" => "ទំនិញលក់ជាកញ្ជប់", - "item_kits_desc" => "បន្ថែម, កែប្រែ, លុប, រឺស្វែងរក​ ទំនិញជាកញ្ចប់។", - "items" => "ទំនិញ", - "items_desc" => "បន្ថែម, កែប្រែ, លុប, រឺស្វែងរកទំនិញ។", - "messages" => "សារ", - "messages_desc" => "ផ្ញើរសារទៅកាន់ អតិថិជន, អ្នកផ្គត់ផ្គង, និងបុគ្គលិក។", - "migrate" => "ផ្លាស់ប្ដូរទីតាំង", - "migrate_desc" => "កែប្រែ OSPOS ទិន្នយ័យ។", - "office" => "ការិយាល័យ", - "office_desc" => "បញ្ជីការិយាល័យ។", - "receivings" => "ការទទួល", - "receivings_desc" => "ដាក់បញ្ជារ ការទិញុ។", - "reports" => "របាយការណ៍", - "reports_desc" => "បង្ហាញ និងបង្កើត របាយការណ៍។", - "sales" => "ការលក់", - "sales_desc" => "ដាក់បញ្ជារ​ការលក់ និងទទួលទំនិញត្រលប់មកវិញ។", - "suppliers" => "អ្នកផ្គត់ផ្គង់", - "suppliers_desc" => "បន្ថែម, កែប្រែ, លុប, រឺស្វែងរក អ្នកផ្គត់ផ្គង់។", - "taxes" => "ពន្ធ", - "taxes_desc" => "កំណត់ពន្ធការលក់។", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "ពត៌មានបន្ថែម", + "attributes_desc" => "ថែម, កែប្រែ, លុប, រឺក៏ ស្វែងរកព៌តមានបន្ថែម។", + "both" => "ទាំងពីរ", + "cashups" => "សាច់ប្រាក់បានទទួល", + "cashups_desc" => "បន្ថែម, កែប្រែ, លុប, រឺស្វែងរក សាច់ប្រាក់ដែលបានទទួល។", + "config" => "ការកំណត់", + "config_desc" => "ផ្លាស់ប្ដូរការកំណត់របស់ OSPOS។", + "customers" => "អតិថិជន", + "customers_desc" => "បន្ថែម, កែប្រែ, លុយ, រឺស្វែងរក អតិថិជន។", + "employees" => "បុគ្គលិក", + "employees_desc" => "បន្ថែម, កែប្រែ, លុប, រឺស្វែងរក បុគ្គលិក។", + "expenses" => "ការចំណាយ", + "expenses_categories" => "ប្រភេទចំណាយ", + "expenses_categories_desc" => "បន្ថែម, កែប្រែ, រឺលុប ប្រភេទចំណាយ។", + "expenses_desc" => "បន្ថែម, កែប្រែ, លុប, រឺស្វែងរក​ ការចំណាយ។", + "giftcards" => "កាតអំណោយ", + "giftcards_desc" => "បន្ថែម, កែប្រែ, លុប, រឺស្វែងរក​ កាតអំណោយ។", + "home" => "ដើម", + "home_desc" => "បញ្ជីទីតាំងដើម។", + "item_kits" => "ទំនិញលក់ជាកញ្ជប់", + "item_kits_desc" => "បន្ថែម, កែប្រែ, លុប, រឺស្វែងរក​ ទំនិញជាកញ្ចប់។", + "items" => "ទំនិញ", + "items_desc" => "បន្ថែម, កែប្រែ, លុប, រឺស្វែងរកទំនិញ។", + "messages" => "សារ", + "messages_desc" => "ផ្ញើរសារទៅកាន់ អតិថិជន, អ្នកផ្គត់ផ្គង, និងបុគ្គលិក។", + "migrate" => "ផ្លាស់ប្ដូរទីតាំង", + "migrate_desc" => "កែប្រែ OSPOS ទិន្នយ័យ។", + "office" => "ការិយាល័យ", + "office_desc" => "បញ្ជីការិយាល័យ។", + "receivings" => "ការទទួល", + "receivings_desc" => "ដាក់បញ្ជារ ការទិញុ។", + "reports" => "របាយការណ៍", + "reports_desc" => "បង្ហាញ និងបង្កើត របាយការណ៍។", + "sales" => "ការលក់", + "sales_desc" => "ដាក់បញ្ជារ​ការលក់ និងទទួលទំនិញត្រលប់មកវិញ។", + "suppliers" => "អ្នកផ្គត់ផ្គង់", + "suppliers_desc" => "បន្ថែម, កែប្រែ, លុប, រឺស្វែងរក អ្នកផ្គត់ផ្គង់។", + "taxes" => "ពន្ធ", + "taxes_desc" => "កំណត់ពន្ធការលក់។", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/km/Receivings.php b/app/Language/km/Receivings.php index 953bdbeb5..bdb97ebe7 100644 --- a/app/Language/km/Receivings.php +++ b/app/Language/km/Receivings.php @@ -1,58 +1,58 @@ "", - "cancel_receiving" => "បោះបង់", - "cannot_be_deleted" => "លប់ការទទួលមិនបានជោគជ័យ។", - "comments" => "មតិយោបល់", - "complete_receiving" => "រួចរាល់", - "confirm_cancel_receiving" => "អ្នកពិតជាចង់លប់ការទទួលនេះមែនទេ? រាល់ទំនិញទាំងអស់នឹងត្រូវបានលប់ចោល។", - "confirm_delete" => "តើអ្នកពិតជាចង់លប់ទំនិញកំពង់ទទួលមែនទេ?​សកម្មភាពនេះមិនអាចត្រឡប់ក្រោយវិញបានទេ។", - "confirm_finish_receiving" => "តើអ្នកប្រាកដថាអ្នកចង់បញ្ជូនការទទួលនេះមែនទេ? សកម្មភាពនេះមិនអាចត្រឡប់ក្រោយវេញបានទេ។", - "confirm_restore" => "", - "cost" => "តំលៃ", - "daily" => "", - "date" => "ថ្ងៃខែទទួល", - "date_required" => "ត្រូវបំពេញថ្ងៃខែអោយបានត្រឹមត្រូវ។", - "date_type" => "តម្រូវអោយបំពេញថ្ងៃខែែ។", - "delete_entire_sale" => "លប់ការលក់ទាំងអស់", - "discount" => "បញ្ចុះតំលៃជា %", - "edit" => "កែតម្រូវ", - "edit_sale" => "កែតម្រូវការទទួល", - "employee" => "បុគ្គលិក", - "error_editing_item" => "កែតម្រូវមុខទំនិញមិនបានជោគជ័យ។", - "error_requisition" => "មិនអាចផ្លាស់ប្តូរស្តក់ទំនិញពី ឬក៏ទីតាំងស្តក់ដូចគ្នាបានទេ។", - "find_or_scan_item" => "ស្វែងរក ឬក៏ស្កេនមុខទំនិញ", - "find_or_scan_item_or_receipt" => "ស្វែងរក ឬក៏ស្កេនទំនិញ ឬក៏បង្កាន់ដៃ", - "id" => "លេខសំគាល់ទទួល", - "item_name" => "ឈ្មោះទំនិញ", - "mode" => "របៀបទទួល", - "new_supplier" => "អ្នកផ្គត់ផ្គង់ថ្មី", - "one_or_multiple" => "ការទទួល(s)", - "print_after_sale" => "បោះពុម្ពបន្ទាប់ពីការលក់", - "quantity" => "ចំនួន", - "receipt" => "បង្កាន់ដៃទទួល", - "receipt_number" => "លេខទទួល", - "receiving" => "ទទួល", - "reference" => "យោង", - "register" => "ទទួលទំនិញ", - "requisition" => "កម្មង់", - "return" => "ប្រគល់ត្រឡប់ទៅវិញ", - "select_supplier" => "", - "ship_pack" => "", - "start_typing_supplier_name" => "", - "stock" => "", - "stock_destination" => "", - "stock_locaiton" => "", - "stock_source" => "", - "successfully_deleted" => "", - "successfully_updated" => "", - "supplier" => "", - "supplier_address" => "", - "supplier_email" => "", - "supplier_location" => "", - "total" => "", - "transaction_failed" => "", - "unable_to_add_item" => "", - "unsuccessfully_updated" => "", - "update" => "", + "amount_due" => "", + "cancel_receiving" => "បោះបង់", + "cannot_be_deleted" => "លប់ការទទួលមិនបានជោគជ័យ។", + "comments" => "មតិយោបល់", + "complete_receiving" => "រួចរាល់", + "confirm_cancel_receiving" => "អ្នកពិតជាចង់លប់ការទទួលនេះមែនទេ? រាល់ទំនិញទាំងអស់នឹងត្រូវបានលប់ចោល។", + "confirm_delete" => "តើអ្នកពិតជាចង់លប់ទំនិញកំពង់ទទួលមែនទេ?​សកម្មភាពនេះមិនអាចត្រឡប់ក្រោយវិញបានទេ។", + "confirm_finish_receiving" => "តើអ្នកប្រាកដថាអ្នកចង់បញ្ជូនការទទួលនេះមែនទេ? សកម្មភាពនេះមិនអាចត្រឡប់ក្រោយវេញបានទេ។", + "confirm_restore" => "", + "cost" => "តំលៃ", + "daily" => "", + "date" => "ថ្ងៃខែទទួល", + "date_required" => "ត្រូវបំពេញថ្ងៃខែអោយបានត្រឹមត្រូវ។", + "date_type" => "តម្រូវអោយបំពេញថ្ងៃខែែ។", + "delete_entire_sale" => "លប់ការលក់ទាំងអស់", + "discount" => "បញ្ចុះតំលៃជា %", + "edit" => "កែតម្រូវ", + "edit_sale" => "កែតម្រូវការទទួល", + "employee" => "បុគ្គលិក", + "error_editing_item" => "កែតម្រូវមុខទំនិញមិនបានជោគជ័យ។", + "error_requisition" => "មិនអាចផ្លាស់ប្តូរស្តក់ទំនិញពី ឬក៏ទីតាំងស្តក់ដូចគ្នាបានទេ។", + "find_or_scan_item" => "ស្វែងរក ឬក៏ស្កេនមុខទំនិញ", + "find_or_scan_item_or_receipt" => "ស្វែងរក ឬក៏ស្កេនទំនិញ ឬក៏បង្កាន់ដៃ", + "id" => "លេខសំគាល់ទទួល", + "item_name" => "ឈ្មោះទំនិញ", + "mode" => "របៀបទទួល", + "new_supplier" => "អ្នកផ្គត់ផ្គង់ថ្មី", + "one_or_multiple" => "ការទទួល(s)", + "print_after_sale" => "បោះពុម្ពបន្ទាប់ពីការលក់", + "quantity" => "ចំនួន", + "receipt" => "បង្កាន់ដៃទទួល", + "receipt_number" => "លេខទទួល", + "receiving" => "ទទួល", + "reference" => "យោង", + "register" => "ទទួលទំនិញ", + "requisition" => "កម្មង់", + "return" => "ប្រគល់ត្រឡប់ទៅវិញ", + "select_supplier" => "", + "ship_pack" => "", + "start_typing_supplier_name" => "", + "stock" => "", + "stock_destination" => "", + "stock_locaiton" => "", + "stock_source" => "", + "successfully_deleted" => "", + "successfully_updated" => "", + "supplier" => "", + "supplier_address" => "", + "supplier_email" => "", + "supplier_location" => "", + "total" => "", + "transaction_failed" => "", + "unable_to_add_item" => "", + "unsuccessfully_updated" => "", + "update" => "", ]; diff --git a/app/Language/km/Reports.php b/app/Language/km/Reports.php index 7b6e15b8a..6c3c8858e 100644 --- a/app/Language/km/Reports.php +++ b/app/Language/km/Reports.php @@ -1,148 +1,148 @@ "", - "authority" => "", - "canceled" => "", - "categories" => "", - "categories_summary_report" => "", - "category" => "", - "code_canceled" => "", - "code_invoice" => "", - "code_pos" => "", - "code_quote" => "", - "code_return" => "", - "code_type" => "", - "code_work_order" => "", - "comments" => "", - "commission" => "", - "complete" => "", - "completed_sales" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "cost" => "", - "cost_price" => "", - "count" => "", - "customer" => "", - "customers" => "", - "customers_summary_report" => "", - "date" => "", - "date_range" => "", - "description" => "", - "detailed_receivings_report" => "", - "detailed_receivings_report_input" => "", - "detailed_reports" => "", - "detailed_requisition_report" => "", - "detailed_sales_report" => "", - "discount" => "", - "discount_fixed" => "", - "discount_percent" => "", - "discount_type" => "", - "discounts" => "", - "discounts_summary_report" => "", - "earned" => "", - "employee" => "", - "employees" => "", - "employees_summary_report" => "", - "expenses" => "", - "expenses_amount" => "", - "expenses_categories" => "", - "expenses_categories_summary_report" => "", - "expenses_category" => "", - "expenses_payment_amount" => "", - "expenses_tax_amount" => "", - "expenses_total_amount" => "", - "expenses_total_tax_amount" => "", - "graphical_reports" => "", - "inventory" => "", - "inventory_low" => "", - "inventory_low_report" => "", - "inventory_reports" => "", - "inventory_summary" => "", - "inventory_summary_report" => "", - "item" => "", - "item_count" => "", - "item_name" => "", - "item_number" => "", - "items" => "", - "items_purchased" => "", - "items_received" => "", - "items_summary_report" => "", - "jurisdiction" => "", - "low_inventory" => "", - "low_inventory_report" => "", - "low_sell_quantity" => "", - "more_than_zero" => "", - "name" => "", - "no_reports_to_display" => "", - "payment_type" => "", - "payments" => "", - "payments_summary_report" => "", - "profit" => "", - "quantity" => "", - "quantity_purchased" => "", - "quotes" => "", - "received_by" => "", - "receiving_id" => "", - "receiving_type" => "", - "receivings" => "", - "reorder_level" => "", - "report" => "", - "report_input" => "", - "reports" => "", - "requisition" => "", - "requisition_by" => "", - "requisition_id" => "", - "requisition_item" => "", - "requisition_item_quantity" => "", - "requisition_related_item" => "", - "requisition_related_item_total_quantity" => "", - "requisition_related_item_unit_quantity" => "", - "requisitions" => "", - "returns" => "", - "revenue" => "", - "sale_id" => "", - "sale_type" => "", - "sales" => "", - "sales_amount" => "", - "sales_summary_report" => "", - "sales_taxes" => "", - "sales_taxes_summary_report" => "", - "serial_number" => "", - "service_charge" => "", - "sold_by" => "", - "sold_items" => "", - "sold_to" => "", - "stock_location" => "", - "sub_total_value" => "", - "subtotal" => "", - "summary_reports" => "", - "supplied_by" => "", - "supplier" => "", - "suppliers" => "", - "suppliers_summary_report" => "", - "tax" => "", - "tax_category" => "", - "tax_name" => "", - "tax_percent" => "", - "tax_rate" => "", - "taxes" => "", - "taxes_summary_report" => "", - "total" => "", - "total_inventory_value" => "", - "total_low_sell_quantity" => "", - "total_quantity" => "Total Quantity", - "total_retail" => "Total Inv. Retail Value", - "trans_amount" => "", - "trans_due" => "", - "trans_group" => "", - "trans_nopay_sales" => "", - "trans_payments" => "", - "trans_refunded" => "", - "trans_sales" => "", - "trans_type" => "", - "type" => "", - "unit_price" => "", - "used" => "", - "work_orders" => "", - "zero_and_less" => "", + "all" => "", + "authority" => "", + "canceled" => "", + "categories" => "", + "categories_summary_report" => "", + "category" => "", + "code_canceled" => "", + "code_invoice" => "", + "code_pos" => "", + "code_quote" => "", + "code_return" => "", + "code_type" => "", + "code_work_order" => "", + "comments" => "", + "commission" => "", + "complete" => "", + "completed_sales" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "cost" => "", + "cost_price" => "", + "count" => "", + "customer" => "", + "customers" => "", + "customers_summary_report" => "", + "date" => "", + "date_range" => "", + "description" => "", + "detailed_receivings_report" => "", + "detailed_receivings_report_input" => "", + "detailed_reports" => "", + "detailed_requisition_report" => "", + "detailed_sales_report" => "", + "discount" => "", + "discount_fixed" => "", + "discount_percent" => "", + "discount_type" => "", + "discounts" => "", + "discounts_summary_report" => "", + "earned" => "", + "employee" => "", + "employees" => "", + "employees_summary_report" => "", + "expenses" => "", + "expenses_amount" => "", + "expenses_categories" => "", + "expenses_categories_summary_report" => "", + "expenses_category" => "", + "expenses_payment_amount" => "", + "expenses_tax_amount" => "", + "expenses_total_amount" => "", + "expenses_total_tax_amount" => "", + "graphical_reports" => "", + "inventory" => "", + "inventory_low" => "", + "inventory_low_report" => "", + "inventory_reports" => "", + "inventory_summary" => "", + "inventory_summary_report" => "", + "item" => "", + "item_count" => "", + "item_name" => "", + "item_number" => "", + "items" => "", + "items_purchased" => "", + "items_received" => "", + "items_summary_report" => "", + "jurisdiction" => "", + "low_inventory" => "", + "low_inventory_report" => "", + "low_sell_quantity" => "", + "more_than_zero" => "", + "name" => "", + "no_reports_to_display" => "", + "payment_type" => "", + "payments" => "", + "payments_summary_report" => "", + "profit" => "", + "quantity" => "", + "quantity_purchased" => "", + "quotes" => "", + "received_by" => "", + "receiving_id" => "", + "receiving_type" => "", + "receivings" => "", + "reorder_level" => "", + "report" => "", + "report_input" => "", + "reports" => "", + "requisition" => "", + "requisition_by" => "", + "requisition_id" => "", + "requisition_item" => "", + "requisition_item_quantity" => "", + "requisition_related_item" => "", + "requisition_related_item_total_quantity" => "", + "requisition_related_item_unit_quantity" => "", + "requisitions" => "", + "returns" => "", + "revenue" => "", + "sale_id" => "", + "sale_type" => "", + "sales" => "", + "sales_amount" => "", + "sales_summary_report" => "", + "sales_taxes" => "", + "sales_taxes_summary_report" => "", + "serial_number" => "", + "service_charge" => "", + "sold_by" => "", + "sold_items" => "", + "sold_to" => "", + "stock_location" => "", + "sub_total_value" => "", + "subtotal" => "", + "summary_reports" => "", + "supplied_by" => "", + "supplier" => "", + "suppliers" => "", + "suppliers_summary_report" => "", + "tax" => "", + "tax_category" => "", + "tax_name" => "", + "tax_percent" => "", + "tax_rate" => "", + "taxes" => "", + "taxes_summary_report" => "", + "total" => "", + "total_inventory_value" => "", + "total_low_sell_quantity" => "", + "total_quantity" => "Total Quantity", + "total_retail" => "Total Inv. Retail Value", + "trans_amount" => "", + "trans_due" => "", + "trans_group" => "", + "trans_nopay_sales" => "", + "trans_payments" => "", + "trans_refunded" => "", + "trans_sales" => "", + "trans_type" => "", + "type" => "", + "unit_price" => "", + "used" => "", + "work_orders" => "", + "zero_and_less" => "", ]; diff --git a/app/Language/km/Sales.php b/app/Language/km/Sales.php index 1f8c343e0..bd9d34dd1 100644 --- a/app/Language/km/Sales.php +++ b/app/Language/km/Sales.php @@ -1,224 +1,224 @@ "ពិន្ទុដែលប្រើប្រាស់បាន", - "rewards_package" => "រង្វាន់", - "rewards_remaining_balance" => "ពន្ទុកសំរាប់ដូរយករង្វាន់នៅសល់ ", - "account_number" => "លេខគណនី", - "add_payment" => "បញ្ជូលរបៀបបង់ប្រាក់", - "amount_due" => "ទឹកប្រាក់ដែលត្រូវបង់", - "amount_tendered" => "ទឹកប្រាក់បានមកពីការបង់ទាំងផ្សេងៗ", - "authorized_signature" => "ហត្ថលេខា", - "cancel_sale" => "បោះបង់", - "cash" => "ប្រាក់", - "cash_1" => "", - "cash_2" => "", - "cash_3" => "", - "cash_4" => "", - "cash_adjustment" => "ទឹកប្រាក់ដែរធ្វើការកែប្រែ", - "cash_deposit" => "ប្រាក់កក់", - "cash_filter" => "ប្រាក់", - "change_due" => "សុពលភាពនៃការកែប្រែ", - "change_price" => "ប្ដូរតម្លៃលក់", - "check" => "ឆែក", - "check_balance" => "ឆែក ចំនួននៅសល់", - "check_filter" => "ឆែក", - "close" => "", - "comment" => "យោបល់", - "comments" => "យោបល់", - "company_name" => "", - "complete" => "", - "complete_sale" => "សំរេច", - "confirm_cancel_sale" => "តើអ្នកពិតជាចង់លុបការលក់នេះមែនទេ? រាល់ទំនិញទាំងអស់នឹងត្រូវបានលុប។", - "confirm_delete" => "តើអ្នកពិតជាចង់លុបការលក់ដែរបានជ្រើសរើសមែនទេ?", - "confirm_restore" => "តើអ្នកពិតជាចង់ដាក់មកវិញនៅការលក់ដែរបានជ្រើសរើសមែនទេ?", - "credit" => "បណ្ណ័មូលបត្របំណុល", - "credit_deposit" => "ដាក់ លុយ", - "credit_filter" => "បណ្ណ័មូលបត្របំណុល", - "current_table" => "", - "customer" => "អតិថិជន", - "customer_address" => "អាសយដ្ឋាន", - "customer_discount" => "បញ្ចុះតម្លៃ", - "customer_email" => "អ៊ីម៉ែល", - "customer_location" => "ទីតាំង", - "customer_mailchimp_status" => "", - "customer_optional" => "(ត្រូវការបញ្ចូល ប្រាក់ដែលត្រូវបង់)", - "customer_required" => "(ត្រូវការ)", - "customer_total" => "សរុប", - "customer_total_spent" => "", - "daily_sales" => "", - "date" => "ថ្ងៃខែ លក់", - "date_range" => "ចន្លោះ ថ្ងៃខែ", - "date_required" => "ត្រូវតែបញ្ជូល ថ្ងៃខែ​ដែលត្រឹមត្រូវ", - "date_type" => "ត្រូវការបញ្ចូលថ្ងៃខែ​ជាចាំបាច់។", - "debit" => "កាត ធនាគារ", - "debit_filter" => "", - "delete" => "យល់ព្រម អោយលុប", - "delete_confirmation" => "តើអ្នកពិតជាចង់លុបការលក់នេះមែនទេ? ធ្វើដូចនេះអ្នកមិនអាចហៅវាត្រលប់មកវិញទេ។", - "delete_entire_sale" => "លុបការលក់ទាំងអស់", - "delete_successful" => "ការលក់ ត្រូវបានលុបដោយជោគជ័យ។", - "delete_unsuccessful" => "ការលក់ មិនត្រូវបានលុប។", - "description_abbrv" => "បរិយាយ។", - "discard" => "មិនយកជាការ", - "discard_quote" => "", - "discount" => "បញ្ចុះតម្លៃ", - "discount_included" => "បញ្ចុះតម្លៃ %", - "discount_short" => "%", - "due" => "ដល់ពេល", - "due_filter" => "ដល់ពេល", - "edit" => "កែប្រែ", - "edit_item" => "កែប្រែទំនិញ", - "edit_sale" => "កែប្រែការលក់", - "email_receipt" => "អ្នកទទួលអ៊ីម៉េល", - "employee" => "បុគ្គលិក", - "entry" => "បញ្ចូល", - "error_editing_item" => "មានកំហុស ក្នុងការកែប្រែទំនិញ", - "find_or_scan_item" => "ស្វែងរក ឬស្កេនទំនិញ", - "find_or_scan_item_or_receipt" => "ស្វែងរក ឬ​ស្កេនទំនិញ ឬ វិក័យបត្រ", - "giftcard" => "កាតអំណោយ", - "giftcard_balance" => "សមតុល្យលើកាតអំណោយ", - "giftcard_filter" => "", - "giftcard_number" => "លេខកាតអំណោយ", - "group_by_category" => "", - "group_by_type" => "", - "hsn" => "", - "id" => "", - "include_prices" => "", - "invoice" => "", - "invoice_confirm" => "", - "invoice_enable" => "", - "invoice_filter" => "", - "invoice_no_email" => "", - "invoice_number" => "", - "invoice_number_duplicate" => "", - "invoice_sent" => "", - "invoice_total" => "", - "invoice_type_custom_invoice" => "", - "invoice_type_custom_tax_invoice" => "", - "invoice_type_invoice" => "", - "invoice_type_tax_invoice" => "", - "invoice_unsent" => "", - "invoice_update" => "", - "item_insufficient_of_stock" => "", - "item_name" => "", - "item_number" => "", - "item_out_of_stock" => "", - "key_browser" => "", - "key_cancel" => "Cancels Current Quote/Invoice/Sale", - "key_customer_search" => "Customer Search", - "key_finish_quote" => "Finish Quote/Invoice witdout payment", - "key_finish_sale" => "Add Payment and Complete Invoice/Sale", - "key_full" => "", - "key_function" => "Function", - "key_help" => "Shortcuts", - "key_help_modal" => "Open Shortcuts Window", - "key_in" => "", - "key_item_search" => "Item Search", - "key_out" => "", - "key_payment" => "Add Payment", - "key_print" => "", - "key_restore" => "", - "key_search" => "", - "key_suspend" => "Suspend Current Sale", - "key_suspended" => "Show Suspended Sales", - "key_system" => "", - "key_tendered" => "Edit Amount Tendered", - "key_title" => "Sales Keyboard Shortcuts", - "mc" => "", - "mode" => "", - "must_enter_numeric" => "", - "must_enter_numeric_giftcard" => "", - "new_customer" => "", - "new_item" => "", - "no_description" => "", - "no_filter" => "", - "no_items_in_cart" => "", - "no_sales_to_display" => "", - "none_selected" => "", - "nontaxed_ind" => "", - "not_authorized" => "", - "one_or_multiple" => "", - "payment" => "", - "payment_amount" => "", - "payment_not_cover_total" => "", - "payment_type" => "", - "payments" => "", - "payments_total" => "", - "price" => "", - "print_after_sale" => "", - "quantity" => "", - "quantity_less_than_reorder_level" => "", - "quantity_less_than_zero" => "", - "quantity_of_items" => "", - "quote" => "", - "quote_number" => "", - "quote_number_duplicate" => "", - "quote_sent" => "", - "quote_unsent" => "", - "receipt" => "", - "receipt_no_email" => "", - "receipt_number" => "", - "receipt_sent" => "", - "receipt_unsent" => "", - "refund" => "", - "register" => "", - "remove_customer" => "", - "remove_discount" => "", - "return" => "", - "rewards" => "", - "rewards_balance" => "", - "sale" => "", - "sale_by_invoice" => "", - "sale_for_customer" => "", - "sale_time" => "", - "sales_tax" => "", - "sales_total" => "", - "select_customer" => "", - "send_invoice" => "", - "send_quote" => "", - "send_receipt" => "", - "send_work_order" => "", - "serial" => "", - "service_charge" => "", - "show_due" => "", - "show_invoice" => "", - "show_receipt" => "", - "start_typing_customer_name" => "", - "start_typing_item_name" => "", - "stock" => "", - "stock_location" => "", - "sub_total" => "", - "successfully_deleted" => "", - "successfully_restored" => "", - "successfully_suspended_sale" => "", - "successfully_updated" => "", - "suspend_sale" => "", - "suspended_doc_id" => "", - "suspended_sale_id" => "", - "suspended_sales" => "", - "table" => "", - "takings" => "", - "tax" => "", - "tax_id" => "", - "tax_invoice" => "", - "tax_percent" => "", - "taxed_ind" => "", - "total" => "", - "total_tax_exclusive" => "", - "transaction_failed" => "", - "unable_to_add_item" => "", - "unsuccessfully_deleted" => "", - "unsuccessfully_restored" => "", - "unsuccessfully_suspended_sale" => "", - "unsuccessfully_updated" => "", - "unsuspend" => "", - "unsuspend_and_delete" => "", - "update" => "", - "upi" => "", - "visa" => "", - "wholesale" => "", - "work_order" => "", - "work_order_number" => "", - "work_order_number_duplicate" => "", - "work_order_sent" => "", - "work_order_unsent" => "", + "customers_available_points" => "ពិន្ទុដែលប្រើប្រាស់បាន", + "rewards_package" => "រង្វាន់", + "rewards_remaining_balance" => "ពន្ទុកសំរាប់ដូរយករង្វាន់នៅសល់ ", + "account_number" => "លេខគណនី", + "add_payment" => "បញ្ជូលរបៀបបង់ប្រាក់", + "amount_due" => "ទឹកប្រាក់ដែលត្រូវបង់", + "amount_tendered" => "ទឹកប្រាក់បានមកពីការបង់ទាំងផ្សេងៗ", + "authorized_signature" => "ហត្ថលេខា", + "cancel_sale" => "បោះបង់", + "cash" => "ប្រាក់", + "cash_1" => "", + "cash_2" => "", + "cash_3" => "", + "cash_4" => "", + "cash_adjustment" => "ទឹកប្រាក់ដែរធ្វើការកែប្រែ", + "cash_deposit" => "ប្រាក់កក់", + "cash_filter" => "ប្រាក់", + "change_due" => "សុពលភាពនៃការកែប្រែ", + "change_price" => "ប្ដូរតម្លៃលក់", + "check" => "ឆែក", + "check_balance" => "ឆែក ចំនួននៅសល់", + "check_filter" => "ឆែក", + "close" => "", + "comment" => "យោបល់", + "comments" => "យោបល់", + "company_name" => "", + "complete" => "", + "complete_sale" => "សំរេច", + "confirm_cancel_sale" => "តើអ្នកពិតជាចង់លុបការលក់នេះមែនទេ? រាល់ទំនិញទាំងអស់នឹងត្រូវបានលុប។", + "confirm_delete" => "តើអ្នកពិតជាចង់លុបការលក់ដែរបានជ្រើសរើសមែនទេ?", + "confirm_restore" => "តើអ្នកពិតជាចង់ដាក់មកវិញនៅការលក់ដែរបានជ្រើសរើសមែនទេ?", + "credit" => "បណ្ណ័មូលបត្របំណុល", + "credit_deposit" => "ដាក់ លុយ", + "credit_filter" => "បណ្ណ័មូលបត្របំណុល", + "current_table" => "", + "customer" => "អតិថិជន", + "customer_address" => "អាសយដ្ឋាន", + "customer_discount" => "បញ្ចុះតម្លៃ", + "customer_email" => "អ៊ីម៉ែល", + "customer_location" => "ទីតាំង", + "customer_mailchimp_status" => "", + "customer_optional" => "(ត្រូវការបញ្ចូល ប្រាក់ដែលត្រូវបង់)", + "customer_required" => "(ត្រូវការ)", + "customer_total" => "សរុប", + "customer_total_spent" => "", + "daily_sales" => "", + "date" => "ថ្ងៃខែ លក់", + "date_range" => "ចន្លោះ ថ្ងៃខែ", + "date_required" => "ត្រូវតែបញ្ជូល ថ្ងៃខែ​ដែលត្រឹមត្រូវ", + "date_type" => "ត្រូវការបញ្ចូលថ្ងៃខែ​ជាចាំបាច់។", + "debit" => "កាត ធនាគារ", + "debit_filter" => "", + "delete" => "យល់ព្រម អោយលុប", + "delete_confirmation" => "តើអ្នកពិតជាចង់លុបការលក់នេះមែនទេ? ធ្វើដូចនេះអ្នកមិនអាចហៅវាត្រលប់មកវិញទេ។", + "delete_entire_sale" => "លុបការលក់ទាំងអស់", + "delete_successful" => "ការលក់ ត្រូវបានលុបដោយជោគជ័យ។", + "delete_unsuccessful" => "ការលក់ មិនត្រូវបានលុប។", + "description_abbrv" => "បរិយាយ។", + "discard" => "មិនយកជាការ", + "discard_quote" => "", + "discount" => "បញ្ចុះតម្លៃ", + "discount_included" => "បញ្ចុះតម្លៃ %", + "discount_short" => "%", + "due" => "ដល់ពេល", + "due_filter" => "ដល់ពេល", + "edit" => "កែប្រែ", + "edit_item" => "កែប្រែទំនិញ", + "edit_sale" => "កែប្រែការលក់", + "email_receipt" => "អ្នកទទួលអ៊ីម៉េល", + "employee" => "បុគ្គលិក", + "entry" => "បញ្ចូល", + "error_editing_item" => "មានកំហុស ក្នុងការកែប្រែទំនិញ", + "find_or_scan_item" => "ស្វែងរក ឬស្កេនទំនិញ", + "find_or_scan_item_or_receipt" => "ស្វែងរក ឬ​ស្កេនទំនិញ ឬ វិក័យបត្រ", + "giftcard" => "កាតអំណោយ", + "giftcard_balance" => "សមតុល្យលើកាតអំណោយ", + "giftcard_filter" => "", + "giftcard_number" => "លេខកាតអំណោយ", + "group_by_category" => "", + "group_by_type" => "", + "hsn" => "", + "id" => "", + "include_prices" => "", + "invoice" => "", + "invoice_confirm" => "", + "invoice_enable" => "", + "invoice_filter" => "", + "invoice_no_email" => "", + "invoice_number" => "", + "invoice_number_duplicate" => "", + "invoice_sent" => "", + "invoice_total" => "", + "invoice_type_custom_invoice" => "", + "invoice_type_custom_tax_invoice" => "", + "invoice_type_invoice" => "", + "invoice_type_tax_invoice" => "", + "invoice_unsent" => "", + "invoice_update" => "", + "item_insufficient_of_stock" => "", + "item_name" => "", + "item_number" => "", + "item_out_of_stock" => "", + "key_browser" => "", + "key_cancel" => "Cancels Current Quote/Invoice/Sale", + "key_customer_search" => "Customer Search", + "key_finish_quote" => "Finish Quote/Invoice witdout payment", + "key_finish_sale" => "Add Payment and Complete Invoice/Sale", + "key_full" => "", + "key_function" => "Function", + "key_help" => "Shortcuts", + "key_help_modal" => "Open Shortcuts Window", + "key_in" => "", + "key_item_search" => "Item Search", + "key_out" => "", + "key_payment" => "Add Payment", + "key_print" => "", + "key_restore" => "", + "key_search" => "", + "key_suspend" => "Suspend Current Sale", + "key_suspended" => "Show Suspended Sales", + "key_system" => "", + "key_tendered" => "Edit Amount Tendered", + "key_title" => "Sales Keyboard Shortcuts", + "mc" => "", + "mode" => "", + "must_enter_numeric" => "", + "must_enter_numeric_giftcard" => "", + "new_customer" => "", + "new_item" => "", + "no_description" => "", + "no_filter" => "", + "no_items_in_cart" => "", + "no_sales_to_display" => "", + "none_selected" => "", + "nontaxed_ind" => "", + "not_authorized" => "", + "one_or_multiple" => "", + "payment" => "", + "payment_amount" => "", + "payment_not_cover_total" => "", + "payment_type" => "", + "payments" => "", + "payments_total" => "", + "price" => "", + "print_after_sale" => "", + "quantity" => "", + "quantity_less_than_reorder_level" => "", + "quantity_less_than_zero" => "", + "quantity_of_items" => "", + "quote" => "", + "quote_number" => "", + "quote_number_duplicate" => "", + "quote_sent" => "", + "quote_unsent" => "", + "receipt" => "", + "receipt_no_email" => "", + "receipt_number" => "", + "receipt_sent" => "", + "receipt_unsent" => "", + "refund" => "", + "register" => "", + "remove_customer" => "", + "remove_discount" => "", + "return" => "", + "rewards" => "", + "rewards_balance" => "", + "sale" => "", + "sale_by_invoice" => "", + "sale_for_customer" => "", + "sale_time" => "", + "sales_tax" => "", + "sales_total" => "", + "select_customer" => "", + "send_invoice" => "", + "send_quote" => "", + "send_receipt" => "", + "send_work_order" => "", + "serial" => "", + "service_charge" => "", + "show_due" => "", + "show_invoice" => "", + "show_receipt" => "", + "start_typing_customer_name" => "", + "start_typing_item_name" => "", + "stock" => "", + "stock_location" => "", + "sub_total" => "", + "successfully_deleted" => "", + "successfully_restored" => "", + "successfully_suspended_sale" => "", + "successfully_updated" => "", + "suspend_sale" => "", + "suspended_doc_id" => "", + "suspended_sale_id" => "", + "suspended_sales" => "", + "table" => "", + "takings" => "", + "tax" => "", + "tax_id" => "", + "tax_invoice" => "", + "tax_percent" => "", + "taxed_ind" => "", + "total" => "", + "total_tax_exclusive" => "", + "transaction_failed" => "", + "unable_to_add_item" => "", + "unsuccessfully_deleted" => "", + "unsuccessfully_restored" => "", + "unsuccessfully_suspended_sale" => "", + "unsuccessfully_updated" => "", + "unsuspend" => "", + "unsuspend_and_delete" => "", + "update" => "", + "upi" => "", + "visa" => "", + "wholesale" => "", + "work_order" => "", + "work_order_number" => "", + "work_order_number_duplicate" => "", + "work_order_sent" => "", + "work_order_unsent" => "", ]; diff --git a/app/Language/km/Suppliers.php b/app/Language/km/Suppliers.php index 8dd60cbf2..2683c082a 100644 --- a/app/Language/km/Suppliers.php +++ b/app/Language/km/Suppliers.php @@ -1,24 +1,24 @@ "លេខគណនី", - "agency_name" => "លេខភ្នាក់ងារ", - "cannot_be_deleted" => "មិនអាចលុបអ្នកផ្គត់ផ្គងដែលបានជ្រើសរើស​ ។ មានទំនិញកំពុងដាក់លក់", - "category" => "ប្រភេទទំនិញ", - "company_name" => "ឈ្មោះក្រុមហ៊ុន", - "company_name_required" => "ត្រូវការបំពេញឈ្មោះក្រុមហ៊ុន​។", - "confirm_delete" => "តើអ្នកពិតជាចង់លុបអ្នកផ្គត់ផ្គងដែរបានជ្រើសរើសមែនទេ?", - "confirm_restore" => "តើអ្នកពិតជាចង់ដាក់អ្នកផ្គត់ផ្គង់ដែរបានជ្រើសរើសទៅកន្លែងដើម?", - "cost" => "តម្លៃពីអ្នកផ្គត់ផ្គង់", - "error_adding_updating" => "ការកែប្រែ រឺបន្ថែមអ្នកផ្គត់ផ្គង់មិនបានសំរេច។", - "goods" => "ទំនិញរបស់អ្នកផ្គត់ផ្គង់", - "new" => "អ្នកផ្គត់ផ្គង់ថ្មី", - "none_selected" => "អ្នកមិនបានជ្រើសរើសអ្នកផ្គត់ផ្គង់ណាមួយដើម្បីលុបនោះទេ។", - "one_or_multiple" => "អ្នកផ្គត់ផ្គង់", - "successful_adding" => "អ្នកបានបន្ថែមអ្នកផ្គត់ផ្គង់បានសំរេច", - "successful_deleted" => "អ្នកបានលុបអ្នកផ្គត់ផ្គង់បានសំរេច", - "successful_updating" => "អ្នកបានកែប្រែអ្នកផ្គត់ផ្គង់បានសំរេច", - "supplier" => "អ្នកផ្គត់ផ្គង់", - "supplier_id" => "លេខរៀង", - "tax_id" => "លេខរៀងពន្ធ", - "update" => "កែប្រែអ្នកផ្គត់ផ្គង់", + "account_number" => "លេខគណនី", + "agency_name" => "លេខភ្នាក់ងារ", + "cannot_be_deleted" => "មិនអាចលុបអ្នកផ្គត់ផ្គងដែលបានជ្រើសរើស​ ។ មានទំនិញកំពុងដាក់លក់", + "category" => "ប្រភេទទំនិញ", + "company_name" => "ឈ្មោះក្រុមហ៊ុន", + "company_name_required" => "ត្រូវការបំពេញឈ្មោះក្រុមហ៊ុន​។", + "confirm_delete" => "តើអ្នកពិតជាចង់លុបអ្នកផ្គត់ផ្គងដែរបានជ្រើសរើសមែនទេ?", + "confirm_restore" => "តើអ្នកពិតជាចង់ដាក់អ្នកផ្គត់ផ្គង់ដែរបានជ្រើសរើសទៅកន្លែងដើម?", + "cost" => "តម្លៃពីអ្នកផ្គត់ផ្គង់", + "error_adding_updating" => "ការកែប្រែ រឺបន្ថែមអ្នកផ្គត់ផ្គង់មិនបានសំរេច។", + "goods" => "ទំនិញរបស់អ្នកផ្គត់ផ្គង់", + "new" => "អ្នកផ្គត់ផ្គង់ថ្មី", + "none_selected" => "អ្នកមិនបានជ្រើសរើសអ្នកផ្គត់ផ្គង់ណាមួយដើម្បីលុបនោះទេ។", + "one_or_multiple" => "អ្នកផ្គត់ផ្គង់", + "successful_adding" => "អ្នកបានបន្ថែមអ្នកផ្គត់ផ្គង់បានសំរេច", + "successful_deleted" => "អ្នកបានលុបអ្នកផ្គត់ផ្គង់បានសំរេច", + "successful_updating" => "អ្នកបានកែប្រែអ្នកផ្គត់ផ្គង់បានសំរេច", + "supplier" => "អ្នកផ្គត់ផ្គង់", + "supplier_id" => "លេខរៀង", + "tax_id" => "លេខរៀងពន្ធ", + "update" => "កែប្រែអ្នកផ្គត់ផ្គង់", ]; diff --git a/app/Language/km/Taxes.php b/app/Language/km/Taxes.php index 6ae3d5b76..691ff9bb3 100644 --- a/app/Language/km/Taxes.php +++ b/app/Language/km/Taxes.php @@ -1,82 +1,82 @@ "", - "cascade" => "", - "cascade_sequence" => "", - "city" => "", - "code" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "default_tax_category" => "", - "default_tax_rate" => "", - "error_adding_updating" => "", - "group_seq" => "", - "jurisdiction_name" => "", - "name" => "", - "new" => "", - "no_taxes" => "", - "no_taxes_to_display" => "", - "reporting_authority" => "", - "round_half_down" => "", - "round_half_even" => "", - "round_half_odd" => "", - "round_half_up" => "", - "rounding_code" => "", - "sales_tax" => "", - "sales_tax_by_invoice" => "", - "sequence" => "", - "state" => "", - "successful_deleted" => "", - "tax_categories" => "", - "tax_categories_configuration" => "", - "tax_categories_saved_successfully" => "", - "tax_categories_saved_unsuccessfully" => "", - "tax_category" => "", - "tax_category_code" => "", - "tax_category_duplicate" => "", - "tax_category_invalid_chars" => "", - "tax_category_name" => "", - "tax_category_new" => "", - "tax_category_required" => "", - "tax_code" => "", - "tax_code_cannot_be_deleted" => "", - "tax_code_duplicate" => "", - "tax_code_invalid_chars" => "", - "tax_code_name" => "", - "tax_code_required" => "", - "tax_code_successful_deleted" => "", - "tax_code_successful_updated" => "", - "tax_code_successful_updating" => "", - "tax_code_successfully_added" => "", - "tax_code_type" => "", - "tax_codes" => "", - "tax_codes_configuration" => "", - "tax_codes_saved_successfully" => "", - "tax_codes_saved_unsuccessfully" => "", - "tax_excluded" => "", - "tax_group" => "", - "tax_group_not_unique" => "", - "tax_group_sequence" => "", - "tax_included" => "", - "tax_jurisdiction" => "", - "tax_jurisdiction_duplicate" => "", - "tax_jurisdiction_invalid_chars" => "", - "tax_jurisdiction_required" => "", - "tax_jurisdictions" => "", - "tax_jurisdictions_configuration" => "", - "tax_jurisdictions_saved_successfully" => "", - "tax_jurisdictions_saved_unsuccessfully" => "", - "tax_rate" => "", - "tax_rate_configuration" => "", - "tax_rate_error_adding_updating" => "", - "tax_rate_numeric" => "", - "tax_rate_required" => "", - "tax_rate_successful_updated" => "", - "tax_rate_successfully_added" => "", - "tax_rates" => "", - "tax_rates_configuration" => "", - "tax_rounding" => "", - "tax_type" => "", - "update" => "", - "vat_tax" => "", + "add_exception" => "", + "cascade" => "", + "cascade_sequence" => "", + "city" => "", + "code" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "default_tax_category" => "", + "default_tax_rate" => "", + "error_adding_updating" => "", + "group_seq" => "", + "jurisdiction_name" => "", + "name" => "", + "new" => "", + "no_taxes" => "", + "no_taxes_to_display" => "", + "reporting_authority" => "", + "round_half_down" => "", + "round_half_even" => "", + "round_half_odd" => "", + "round_half_up" => "", + "rounding_code" => "", + "sales_tax" => "", + "sales_tax_by_invoice" => "", + "sequence" => "", + "state" => "", + "successful_deleted" => "", + "tax_categories" => "", + "tax_categories_configuration" => "", + "tax_categories_saved_successfully" => "", + "tax_categories_saved_unsuccessfully" => "", + "tax_category" => "", + "tax_category_code" => "", + "tax_category_duplicate" => "", + "tax_category_invalid_chars" => "", + "tax_category_name" => "", + "tax_category_new" => "", + "tax_category_required" => "", + "tax_code" => "", + "tax_code_cannot_be_deleted" => "", + "tax_code_duplicate" => "", + "tax_code_invalid_chars" => "", + "tax_code_name" => "", + "tax_code_required" => "", + "tax_code_successful_deleted" => "", + "tax_code_successful_updated" => "", + "tax_code_successful_updating" => "", + "tax_code_successfully_added" => "", + "tax_code_type" => "", + "tax_codes" => "", + "tax_codes_configuration" => "", + "tax_codes_saved_successfully" => "", + "tax_codes_saved_unsuccessfully" => "", + "tax_excluded" => "", + "tax_group" => "", + "tax_group_not_unique" => "", + "tax_group_sequence" => "", + "tax_included" => "", + "tax_jurisdiction" => "", + "tax_jurisdiction_duplicate" => "", + "tax_jurisdiction_invalid_chars" => "", + "tax_jurisdiction_required" => "", + "tax_jurisdictions" => "", + "tax_jurisdictions_configuration" => "", + "tax_jurisdictions_saved_successfully" => "", + "tax_jurisdictions_saved_unsuccessfully" => "", + "tax_rate" => "", + "tax_rate_configuration" => "", + "tax_rate_error_adding_updating" => "", + "tax_rate_numeric" => "", + "tax_rate_required" => "", + "tax_rate_successful_updated" => "", + "tax_rate_successfully_added" => "", + "tax_rates" => "", + "tax_rates_configuration" => "", + "tax_rounding" => "", + "tax_type" => "", + "update" => "", + "vat_tax" => "", ]; diff --git a/app/Language/km/index.html b/app/Language/km/index.html index b702fbc39..69df4e1df 100644 --- a/app/Language/km/index.html +++ b/app/Language/km/index.html @@ -1,7 +1,7 @@ - 403 Forbidden + 403 Forbidden diff --git a/app/Language/lo/Attributes.php b/app/Language/lo/Attributes.php index 761d3ba19..5243d30b5 100644 --- a/app/Language/lo/Attributes.php +++ b/app/Language/lo/Attributes.php @@ -1,32 +1,32 @@ "ຄ່າແອດທິບິວບໍ່ສາມາດມີ ':' ຫລື '|'", - "confirm_delete" => "ແນ່ໃຈຫຼືບໍທີ່ຈະລືບລາຍການທີ່ເລືອກ", - "confirm_restore" => "ແນ່ໃຈຫຼືບໍທີ່ຈະຄືນຄ່າແອັດທິບິ້ວດັ່ງກ່າວ?", - "definition_cannot_be_deleted" => "ບໍສາມາດລືບລາຍການທີ່ເລືອກໄດ້", - "definition_error_adding_updating" => "ລາຍການ {0} ບໍສາມາດເພີ່ມ ຫຼື ແກ້ໄຂ. ກະລຸນາກວດສອບຢູ່ log ຂໍ້ຜິດຜາດ", - "definition_flags" => "ຄູນສົມບັດການເບິ່ງເຫັນ", - "definition_group" => "ກຸ່ມ", - "definition_id" => "ລະຫັດ", - "definition_name" => "ເພີ່ມລາຍການ", - "definition_name_required" => "ຕ້ອງໄດ້ລະບຸຊື່ລາຍການ", - "definition_one_or_multiple" => "ລາຍການ", - "definition_successful_adding" => "ເພີ່ມລາຍການສຳເລັດແລ້ວ", - "definition_successful_deleted" => "ລຶບລາຍການສຳເລັດແລ້ວ", - "definition_successful_updating" => "ແກ້ໄຂລາຍການສຳເລັດແລ້ວ", - "definition_type" => "ປະເພດລາຍການ", - "definition_type_required" => "ປະເພດແອດທີບິວ ຈຳເປັນຕ້ອງໃຊ້", - "definition_unit" => "", - "definition_values" => "", - "new" => "", - "no_attributes_to_display" => "", - "receipt_visibility" => "", - "show_in_items" => "", - "show_in_items_visibility" => "", - "show_in_receipt" => "", - "show_in_receivings" => "", - "show_in_receivings_visibility" => "", - "show_in_sales" => "", - "show_in_sales_visibility" => "", - "update" => "", + "attribute_value_invalid_chars" => "ຄ່າແອດທິບິວບໍ່ສາມາດມີ ':' ຫລື '|'", + "confirm_delete" => "ແນ່ໃຈຫຼືບໍທີ່ຈະລືບລາຍການທີ່ເລືອກ", + "confirm_restore" => "ແນ່ໃຈຫຼືບໍທີ່ຈະຄືນຄ່າແອັດທິບິ້ວດັ່ງກ່າວ?", + "definition_cannot_be_deleted" => "ບໍສາມາດລືບລາຍການທີ່ເລືອກໄດ້", + "definition_error_adding_updating" => "ລາຍການ {0} ບໍສາມາດເພີ່ມ ຫຼື ແກ້ໄຂ. ກະລຸນາກວດສອບຢູ່ log ຂໍ້ຜິດຜາດ", + "definition_flags" => "ຄູນສົມບັດການເບິ່ງເຫັນ", + "definition_group" => "ກຸ່ມ", + "definition_id" => "ລະຫັດ", + "definition_name" => "ເພີ່ມລາຍການ", + "definition_name_required" => "ຕ້ອງໄດ້ລະບຸຊື່ລາຍການ", + "definition_one_or_multiple" => "ລາຍການ", + "definition_successful_adding" => "ເພີ່ມລາຍການສຳເລັດແລ້ວ", + "definition_successful_deleted" => "ລຶບລາຍການສຳເລັດແລ້ວ", + "definition_successful_updating" => "ແກ້ໄຂລາຍການສຳເລັດແລ້ວ", + "definition_type" => "ປະເພດລາຍການ", + "definition_type_required" => "ປະເພດແອດທີບິວ ຈຳເປັນຕ້ອງໃຊ້", + "definition_unit" => "", + "definition_values" => "", + "new" => "", + "no_attributes_to_display" => "", + "receipt_visibility" => "", + "show_in_items" => "", + "show_in_items_visibility" => "", + "show_in_receipt" => "", + "show_in_receivings" => "", + "show_in_receivings_visibility" => "", + "show_in_sales" => "", + "show_in_sales_visibility" => "", + "update" => "", ]; diff --git a/app/Language/lo/Bootstrap_tables.php b/app/Language/lo/Bootstrap_tables.php index f298d7d22..c9e288668 100644 --- a/app/Language/lo/Bootstrap_tables.php +++ b/app/Language/lo/Bootstrap_tables.php @@ -1,11 +1,11 @@ "ທັງໝົດ", - "columns" => "ຖັນ", - "hide_show_pagination" => "ເຊື່ອງ/ສະແດງເລກທີໜ້າເຈ້ຍ", - "loading" => "ກຳລັງໂຫຼດ, ກະລຸນາລໍຖ້າ...", - "page_from_to" => "ສະແດງ {0} ຫາ {1} ຂອງ {2} ແຖວ", - "refresh" => "Refresh", - "rows_per_page" => "{0} ແຖວຕໍ່ໜ້າ", - "toggle" => "Toggle", + "all" => "ທັງໝົດ", + "columns" => "ຖັນ", + "hide_show_pagination" => "ເຊື່ອງ/ສະແດງເລກທີໜ້າເຈ້ຍ", + "loading" => "ກຳລັງໂຫຼດ, ກະລຸນາລໍຖ້າ...", + "page_from_to" => "ສະແດງ {0} ຫາ {1} ຂອງ {2} ແຖວ", + "refresh" => "Refresh", + "rows_per_page" => "{0} ແຖວຕໍ່ໜ້າ", + "toggle" => "Toggle", ]; diff --git a/app/Language/lo/Cashups.php b/app/Language/lo/Cashups.php index 2ffc8c593..04d19c94f 100644 --- a/app/Language/lo/Cashups.php +++ b/app/Language/lo/Cashups.php @@ -1,49 +1,49 @@ "", - "amount_number" => "", - "amount_required" => "", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "", - "cash_difference" => "", - "close_date" => "", - "close_employee" => "", - "closed_amount_card" => "", - "closed_amount_cash" => "", - "closed_amount_check" => "", - "closed_amount_due" => "", - "closed_amount_giftcard" => "", - "closed_amount_total" => "", - "closed_date" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "confirm_submit" => "", - "date_number" => "", - "date_required" => "", - "description" => "", - "enable_expected" => "", - "error_adding_updating" => "", - "giftcard" => "", - "id" => "", - "info" => "", - "info_employee" => "", - "is_deleted" => "", - "new" => "", - "no_cashups_to_display" => "", - "none_selected" => "", - "note" => "", - "one_or_multiple" => "", - "open_amount_cash" => "", - "open_date" => "", - "open_employee" => "", - "opened_date" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "total" => "", - "transfer_amount_cash" => "", - "transfer_amount_cash_minus" => "", - "update" => "", - "warning" => "", + "amount" => "", + "amount_number" => "", + "amount_required" => "", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "", + "cash_difference" => "", + "close_date" => "", + "close_employee" => "", + "closed_amount_card" => "", + "closed_amount_cash" => "", + "closed_amount_check" => "", + "closed_amount_due" => "", + "closed_amount_giftcard" => "", + "closed_amount_total" => "", + "closed_date" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "confirm_submit" => "", + "date_number" => "", + "date_required" => "", + "description" => "", + "enable_expected" => "", + "error_adding_updating" => "", + "giftcard" => "", + "id" => "", + "info" => "", + "info_employee" => "", + "is_deleted" => "", + "new" => "", + "no_cashups_to_display" => "", + "none_selected" => "", + "note" => "", + "one_or_multiple" => "", + "open_amount_cash" => "", + "open_date" => "", + "open_employee" => "", + "opened_date" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "total" => "", + "transfer_amount_cash" => "", + "transfer_amount_cash_minus" => "", + "update" => "", + "warning" => "", ]; diff --git a/app/Language/lo/Common.php b/app/Language/lo/Common.php index ade76aa09..aee68f504 100644 --- a/app/Language/lo/Common.php +++ b/app/Language/lo/Common.php @@ -1,88 +1,88 @@ "ທີ່ຢູ່ 1", - "address_2" => "ທີ່ຢູ່ 2", - "admin" => "", - "city" => "ເມືອງ", - "clerk" => "", - "close" => "ປິດ", - "color" => "", - "comments" => "ຄວາມຄິດເຫັນ", - "common" => "ຮ່ວມກັນ", - "confirm_search" => "ທ່ານໄດ້ເລືອກໜຶ່ງແຖວຂຶ້ນໄປຊຶ່ງຈະບໍ່ຖືກເລືອກຫຼັງຈາກການຄົ້ນຫາຂອງທ່ານ ທ່ານແນ່ໃຈຫຼືບໍ່ວ່າຕ້ອງການສົ່ງການຄົ້ນຫານີ້?", - "copyrights" => "© 2010 - {0}", - "correct_errors" => "ກະລູນາແກ້ໄຂຂໍ້ພິດຜາດກ່ອນບັນທຶກ", - "country" => "ປະເທດ", - "dashboard" => "", - "date" => "ວັນທີ", - "delete" => "ລືບ", - "det" => "ລາຍລະອຽດ", - "download_import_template" => "Download Import CSV Template (CSV)", - "edit" => "ແກ້ໄຂ", - "email" => "Email", - "email_invalid_format" => "ຮູບແບບຂອງອີເມລບໍ່ຖືກຕ້ອງ.", - "export_csv" => "CSV Export", - "export_csv_no" => "No", - "export_csv_yes" => "ຕົກລົງ", - "fields_required_message" => "ຕ້ອງໄດ້ປ້ອນຂໍ້ມູນໃນປ່ອງທີ່ເປັນສີແດງ", - "fields_required_message_unique" => "", - "first_name" => "ຊື່", - "first_name_required" => "ຕ້ອງໄດ້ລະບຸຊື່.", - "first_page" => "ທຳອິດ", - "gender" => "ເພດ", - "gender_female" => "ຍ", - "gender_male" => "ຊ", - "gender_undefined" => "", - "icon" => "", - "id" => "ລະຫັດ", - "import" => "ອິມພ໊ອດ", - "import_change_file" => "ປ່ຽນແປງ", - "import_csv" => "ອິມພ໊ອດຈາກເອກເຊວ", - "import_full_path" => "ຕ້ອງການພາດເຕັມໄປຍັງແຟ້ມເອັກເຊວ", - "import_remove_file" => "ລຶບ", - "import_select_file" => "ເລືອກແຟ້ມ", - "inv" => "ໃບແຈ້ງໜີ້", - "last_name" => "ນາມສະກຸນ", - "last_name_required" => "ຕ້ອງໄດ້ລະບຸນາມສະກຸນ.", - "last_page" => "ສຸດທ້າຍ", - "learn_about_project" => "to learn the latest information about the project.", - "list_of" => "List of", - "logo" => "", - "logo_mark" => "", - "logout" => "Logout", - "manager" => "", - "migration_needed" => "ການຍ້າຍຖານຂໍ້ມູນ {0} ຈະເລີ່ມຫຼັງຈາກເຂົ້າສູ່ລະບົບ", - "new" => "ໃໝ່", - "no" => "", - "no_persons_to_display" => "There are no people to display.", - "none_selected_text" => "ບໍ່ໄດ້ເລືອກລາຍການ", - "or" => "ຫຼື", - "people" => "", - "phone_number" => "ເບີໂທ", - "phone_number_required" => "", - "please_visit_my" => "ກະລູນາເຂົ້າບ່ອນນີ້້", - "position" => "", - "powered_by" => "ຂັບເຄື່ອນໂດຍ", - "price" => "ລາຄາ", - "print" => "ສັ່ງພິມ", - "remove" => "ລຶບ", - "required" => "ຈຳເປັນຕ້ອງໃຊ້", - "restore" => "ກູ້ຄືນ", - "return_policy" => "ນະໂຍບາຍການຄືນສິນຄ້າ", - "search" => "ຊອກຫາ", - "search_options" => "ຕົວເລືອກການຊອກຫາ", - "searched_for" => "ຊອກຫາສຳຫຼັບ", - "software_short" => "", - "software_title" => "", - "state" => "ສະຖານະ", - "submit" => "ສົ່ງ", - "total_spent" => "ຍອດການໃຊ້ຈ່າຍທັງໝົດ", - "unknown" => "ບໍ່ຮູ້", - "view_recent_sales" => "ເບິ່ງການຂາຍລ່າສຸດ", - "website" => "ເວັບໄຊ", - "welcome" => "ຍິນດີຕ້ອນຮັບ", - "welcome_message" => "ຍິນດີຕ້ອນຮັບສູ່ OSPOS, ກົດໂມເດວດ້ານລຸ່ມເພື່ອເລີ່ມ.", - "yes" => "", - "you_are_using_ospos" => "ທ່ານກຳລັງໃຊ້ Open Source Point Of Sale ເວີຊັ່ນ", - "zip" => "ລະຫັດໄປສະນີ", + "address_1" => "ທີ່ຢູ່ 1", + "address_2" => "ທີ່ຢູ່ 2", + "admin" => "", + "city" => "ເມືອງ", + "clerk" => "", + "close" => "ປິດ", + "color" => "", + "comments" => "ຄວາມຄິດເຫັນ", + "common" => "ຮ່ວມກັນ", + "confirm_search" => "ທ່ານໄດ້ເລືອກໜຶ່ງແຖວຂຶ້ນໄປຊຶ່ງຈະບໍ່ຖືກເລືອກຫຼັງຈາກການຄົ້ນຫາຂອງທ່ານ ທ່ານແນ່ໃຈຫຼືບໍ່ວ່າຕ້ອງການສົ່ງການຄົ້ນຫານີ້?", + "copyrights" => "© 2010 - {0}", + "correct_errors" => "ກະລູນາແກ້ໄຂຂໍ້ພິດຜາດກ່ອນບັນທຶກ", + "country" => "ປະເທດ", + "dashboard" => "", + "date" => "ວັນທີ", + "delete" => "ລືບ", + "det" => "ລາຍລະອຽດ", + "download_import_template" => "Download Import CSV Template (CSV)", + "edit" => "ແກ້ໄຂ", + "email" => "Email", + "email_invalid_format" => "ຮູບແບບຂອງອີເມລບໍ່ຖືກຕ້ອງ.", + "export_csv" => "CSV Export", + "export_csv_no" => "No", + "export_csv_yes" => "ຕົກລົງ", + "fields_required_message" => "ຕ້ອງໄດ້ປ້ອນຂໍ້ມູນໃນປ່ອງທີ່ເປັນສີແດງ", + "fields_required_message_unique" => "", + "first_name" => "ຊື່", + "first_name_required" => "ຕ້ອງໄດ້ລະບຸຊື່.", + "first_page" => "ທຳອິດ", + "gender" => "ເພດ", + "gender_female" => "ຍ", + "gender_male" => "ຊ", + "gender_undefined" => "", + "icon" => "", + "id" => "ລະຫັດ", + "import" => "ອິມພ໊ອດ", + "import_change_file" => "ປ່ຽນແປງ", + "import_csv" => "ອິມພ໊ອດຈາກເອກເຊວ", + "import_full_path" => "ຕ້ອງການພາດເຕັມໄປຍັງແຟ້ມເອັກເຊວ", + "import_remove_file" => "ລຶບ", + "import_select_file" => "ເລືອກແຟ້ມ", + "inv" => "ໃບແຈ້ງໜີ້", + "last_name" => "ນາມສະກຸນ", + "last_name_required" => "ຕ້ອງໄດ້ລະບຸນາມສະກຸນ.", + "last_page" => "ສຸດທ້າຍ", + "learn_about_project" => "to learn the latest information about the project.", + "list_of" => "List of", + "logo" => "", + "logo_mark" => "", + "logout" => "Logout", + "manager" => "", + "migration_needed" => "ການຍ້າຍຖານຂໍ້ມູນ {0} ຈະເລີ່ມຫຼັງຈາກເຂົ້າສູ່ລະບົບ", + "new" => "ໃໝ່", + "no" => "", + "no_persons_to_display" => "There are no people to display.", + "none_selected_text" => "ບໍ່ໄດ້ເລືອກລາຍການ", + "or" => "ຫຼື", + "people" => "", + "phone_number" => "ເບີໂທ", + "phone_number_required" => "", + "please_visit_my" => "ກະລູນາເຂົ້າບ່ອນນີ້້", + "position" => "", + "powered_by" => "ຂັບເຄື່ອນໂດຍ", + "price" => "ລາຄາ", + "print" => "ສັ່ງພິມ", + "remove" => "ລຶບ", + "required" => "ຈຳເປັນຕ້ອງໃຊ້", + "restore" => "ກູ້ຄືນ", + "return_policy" => "ນະໂຍບາຍການຄືນສິນຄ້າ", + "search" => "ຊອກຫາ", + "search_options" => "ຕົວເລືອກການຊອກຫາ", + "searched_for" => "ຊອກຫາສຳຫຼັບ", + "software_short" => "", + "software_title" => "", + "state" => "ສະຖານະ", + "submit" => "ສົ່ງ", + "total_spent" => "ຍອດການໃຊ້ຈ່າຍທັງໝົດ", + "unknown" => "ບໍ່ຮູ້", + "view_recent_sales" => "ເບິ່ງການຂາຍລ່າສຸດ", + "website" => "ເວັບໄຊ", + "welcome" => "ຍິນດີຕ້ອນຮັບ", + "welcome_message" => "ຍິນດີຕ້ອນຮັບສູ່ OSPOS, ກົດໂມເດວດ້ານລຸ່ມເພື່ອເລີ່ມ.", + "yes" => "", + "you_are_using_ospos" => "ທ່ານກຳລັງໃຊ້ Open Source Point Of Sale ເວີຊັ່ນ", + "zip" => "ລະຫັດໄປສະນີ", ]; diff --git a/app/Language/lo/Config.php b/app/Language/lo/Config.php index ef92ad299..7a015e02e 100644 --- a/app/Language/lo/Config.php +++ b/app/Language/lo/Config.php @@ -1,330 +1,330 @@ "ທີ່ຢູ່ບໍລິສັດ", - "address_required" => "ກະລຸນາໃສ່ທີ່ຢູ່ບໍລິສັດ.", - "all_set" => "All file permissions are set correctly!", - "allow_duplicate_barcodes" => "ອະນຸຍາດໃຫ້ມີບາໂຄດຊໍ້າກັນ", - "apostrophe" => "ຈຸດລາຍນໍ້າ", - "backup_button" => "ການສຳຮອງ", - "backup_database" => "ການສຳຮອງຖານຂໍ້ມູນ", - "barcode" => "ບາໂຄດ", - "barcode_company" => "ຊື່ບໍລິສັດ", - "barcode_configuration" => "ການຕັ້ງຄ່າກ່ຽວກັບ Barcode", - "barcode_content" => "ເນື່ອຫາຂອງ Barcode", - "barcode_first_row" => "ແຖວທີ 1", - "barcode_font" => "ຟອນທ໌", - "barcode_formats" => "ຮູບແບບການໃສ່ຂໍ້ມູນ", - "barcode_generate_if_empty" => "ສ້າງຖ້າວ່າງເປົ່າ.", - "barcode_height" => "ສູງ (px)", - "barcode_id" => "ລະຫັດສິນຄ້າ/ຊື່ສິນຄ້າ", - "barcode_info" => "ຂໍ້ມູນການຕັ້ງຄ່າກ່ຽວກັບ Barcode", - "barcode_layout" => "ການຈັດລຽງຮູບແບບ Barcode", - "barcode_name" => "ຊື່ສິນຄ້າ", - "barcode_number" => "ລະຫັດ Barcode", - "barcode_number_in_row" => "ຈຳນວນແຖວທີ່ໃຊ້", - "barcode_page_cellspacing" => "Display page cellspacing.", - "barcode_page_width" => "Display page width", - "barcode_price" => "ລາຄາ", - "barcode_second_row" => "ແຖວທີ 2", - "barcode_third_row" => "ແຖວທີ 3", - "barcode_tooltip" => "ຄຳເຕືອນ: This feature can cause duplicate items to be imported or created. Do not use if you do not want duplicate barcodes.", - "barcode_type" => "ປະເພດ Barcode", - "barcode_width" => "ຄວາມກວ້າງ (px)", - "bottom" => "ດ້ານລຸ່ມຂອງເຈ້ຍ", - "cash_button" => "", - "cash_button_1" => "", - "cash_button_2" => "", - "cash_button_3" => "", - "cash_button_4" => "", - "cash_button_5" => "", - "cash_button_6" => "", - "cash_decimals" => "ຈຳນວນຕົວເລກເສດເງິນ", - "cash_decimals_tooltip" => "ກະລຸນາປັບຈຳນວນຕົວເລກເສດໃຫ້ເທົ່າກັນເພື່ອຈະໄດ້ບໍ່ມີການປັດມູນຄ່າເງິນ.", - "cash_rounding" => "ການປັດມູນຄ່າເງິນ", - "category_dropdown" => "", - "center" => "ທາງກາງຂອງເຈ້ຍ", - "change_apperance_tooltip" => "", - "comma" => "ເຄື່ອງຫມາຍຈຸດ", - "company" => "ຊື່ບໍລິສັດ", - "company_avatar" => "", - "company_change_image" => "ປ່ຽນຮູບ", - "company_logo" => "Logo ບໍລິສັດ", - "company_remove_image" => "ລຶບຮູບ", - "company_required" => "ກະລຸນາໃສ່ຊື່ບໍລິສັດ", - "company_select_image" => "ກະລຸນາເລືອກຮູບ", - "company_website_url" => "ທີ່ຢູ່ website ຂອງບໍລິສັດບໍ່ຖືກຕ້ອງ URL (http://...).", - "country_codes" => "ລະຫັດປະເທດ", - "country_codes_tooltip" => "ໃຊ້ເຄື່ອງຫມາຍຈຸດເພື່ອແຍກຫົວຫນ່ວຍເງິນຕາ", - "currency_code" => "", - "currency_decimals" => "ຈຳນວນຕົວເລກເສດເງິນ", - "currency_symbol" => "ສັນຍະລັກຂອງເງິນ", - "current_employee_only" => "", - "customer_reward" => "ລາງວັນ", - "customer_reward_duplicate" => "ລາງວັນສຳຫລັບລູກຄ້າຕ້ອງມີຄວາມແຕກຕ່າງ", - "customer_reward_enable" => "ໃຊ້ງານລະບົບລາງວັນສຳຫລັບລູກຄ້າ", - "customer_reward_invalid_chars" => "ລາງວັນບໍ່ສາມາດບັນຈຸໄດ້ '_'", - "customer_reward_required" => "ກະລຸນາກຳນົດລາງວັນ", - "customer_sales_tax_support" => "ເປີດໃຊ້ອາກອນຊົມໃຊ້", - "date_or_time_format" => "Date and Time Filter", - "datetimeformat" => "ຮູບແບບວັນທີ່ ແລະ ເວລາ", - "decimal_point" => "ເຄື່ອງຫມາຍເລກເສດເງິນ", - "default_barcode_font_size_number" => "ຂະຫນາດຂອງຕົວອັກສອນຕ້ອງເປັນຕົວເລກເທົ່ານັ້ນ.", - "default_barcode_font_size_required" => "ກະລຸນາໃສ່ຂະຫນາດຂອງຕົວອັກສອນ.", - "default_barcode_height_number" => "ຂະຫນາດຄວາມສູງຂອງ Barcode ຕ້ອງເປັນຕົວເລກເທົ່ານັ້ນ.", - "default_barcode_height_required" => "ກະລຸນາໃສ່ຂະຫນາດຄວາມສູງຂອງ Barcode.", - "default_barcode_num_in_row_number" => "ຈຳນວນແຖວຂອງ Barcode ຕ້ອງເປັນຕົວເລກເທົ່ານັ້ນ.", - "default_barcode_num_in_row_required" => "ກະລຸນາໃສ່ຈຳນວນແຖວຂອງ Barcode.", - "default_barcode_page_cellspacing_number" => "ຄວາມຫ່າງລະຫວ່າງຫ້ອງຂໍ້ມູນຕ້ອງເປັນຕົວເລກເທົ່ານັ້ນ.", - "default_barcode_page_cellspacing_required" => "ກະລຸນາໃສ່ຄວາມຫ່າງລະຫວ່າງຫ້ອງຂໍ້ມູນ.", - "default_barcode_page_width_number" => "ຄວາມກວ້າງຂອງຫນ້າ Barcode ຕ້ອງເປັນຕົວເລກເທົ່ານັ້ນ.", - "default_barcode_page_width_required" => "ກະລຸນາໃສ່ຄວາມກວ້າງຂອງຫນ້າ Barcode.", - "default_barcode_width_number" => "ຄວາມກວ້າງຂອງ Barcode ຕ້ອງເປັນຕົວເລກເທົ່ານັ້ນ.", - "default_barcode_width_required" => "ກະລຸນາກຳນົດຄວາມກວ້າງຂອງ Barcode.", - "default_item_columns" => "", - "default_origin_tax_code" => "ທີ່ມາຂອງອາກອນ", - "default_receivings_discount" => "", - "default_receivings_discount_number" => "", - "default_receivings_discount_required" => "", - "default_sales_discount" => "ເປີເຊັນສ່ວນຫລຸດ %", - "default_sales_discount_number" => "ເປເຊັນສ່ວນຫລຸດ ຕ້ອງເປັນຕົວເລກເທົ່ານັ້ນ.", - "default_sales_discount_required" => "ກະລຸນາກຳນົດເປີເຊັນສ່ວນຫລຸດ.", - "default_tax_category" => "", - "default_tax_code" => "", - "default_tax_jurisdiction" => "", - "default_tax_name_number" => "ຊື່ຂອງອາກອນຕ້ອງເປັນຕົວອັກສອນ.", - "default_tax_name_required" => "ກະລຸນາໃສ່ຊື່ອາກອນ.", - "default_tax_rate" => "ອັດຕາອາກອນ %", - "default_tax_rate_1" => "ອັດຕາອາກອນທີ 1", - "default_tax_rate_2" => "ອັດຕາອາກອນທີ 2", - "default_tax_rate_3" => "", - "default_tax_rate_number" => "ອັດຕາອາກອນ ຕ້ອງເປັນຕົວເລກເທົ່ານັ້ນ.", - "default_tax_rate_required" => "ກະລຸນາກຳນົດອັດຕາອາກອນ.", - "derive_sale_quantity" => "", - "derive_sale_quantity_tooltip" => "", - "dinner_table" => "ໂຕະສຳຫລັບຮ້ານອາຫານ", - "dinner_table_duplicate" => "ເລກໂຕະຕ້ອງບໍ່ຊໍ້າກັນ.", - "dinner_table_enable" => "ເປີດໃຊ້ງານລະບົບໂຕະສຳລັບຮ້ານອາຫານ", - "dinner_table_invalid_chars" => "ບໍ່ສາມາດໃສ່ຊື່ໂຕະທີ່ມີ '_' ນີ້ໄດ້.", - "dinner_table_required" => "ກະລຸນາກຳນົດຊື່ໂຕະ.", - "dot" => "ຈໍ້າເມັດ", - "email" => "Email", - "email_configuration" => "Email Configuration", - "email_mailpath" => "Path to Sendmail", - "email_protocol" => "Protocol", - "email_receipt_check_behaviour" => "", - "email_receipt_check_behaviour_always" => "", - "email_receipt_check_behaviour_last" => "", - "email_receipt_check_behaviour_never" => "", - "email_smtp_crypto" => "SMTP Encryption", - "email_smtp_host" => "SMTP Server", - "email_smtp_pass" => "SMTP Password", - "email_smtp_port" => "SMTP Port", - "email_smtp_timeout" => "SMTP Timeout (s)", - "email_smtp_user" => "SMTP Username", - "enable_avatar" => "", - "enable_avatar_tooltip" => "", - "enable_dropdown_tooltip" => "", - "enable_new_look" => "", - "enable_right_bar" => "", - "enable_right_bar_tooltip" => "", - "enforce_privacy" => "", - "enforce_privacy_tooltip" => "", - "fax" => "Fax", - "file_perm" => "There are problems with file permissions please fix and reload this page.", - "financial_year" => "Fiscal Year Start", - "financial_year_apr" => "1st of April", - "financial_year_aug" => "1st of August", - "financial_year_dec" => "1st of December", - "financial_year_feb" => "1st of February", - "financial_year_jan" => "1st of January", - "financial_year_jul" => "1st of July", - "financial_year_jun" => "1st of June", - "financial_year_mar" => "1st of March", - "financial_year_may" => "1st of May", - "financial_year_nov" => "1st of November", - "financial_year_oct" => "1st of October", - "financial_year_sep" => "1st of September", - "floating_labels" => "", - "gcaptcha_enable" => "Login Page reCAPTCHA", - "gcaptcha_secret_key" => "reCAPTCHA Secret Key", - "gcaptcha_secret_key_required" => "reCAPTCHA Secret Key is a required field", - "gcaptcha_site_key" => "reCAPTCHA Site Key", - "gcaptcha_site_key_required" => "reCAPTCHA Site Key is a required field", - "gcaptcha_tooltip" => "Protect the Login page with Google reCAPTCHA, click the icon for an API key pair.", - "general" => "General", - "general_configuration" => "General Configuration", - "giftcard_number" => "Gift Card Number", - "giftcard_random" => "Generate Random", - "giftcard_series" => "Generate in Series", - "image_allowed_file_types" => "", - "image_max_height_tooltip" => "", - "image_max_size_tooltip" => "", - "image_max_width_tooltip" => "", - "image_restrictions" => "", - "include_hsn" => "", - "info" => "Information", - "info_configuration" => "Store Information", - "input_groups" => "", - "integrations" => "", - "integrations_configuration" => "", - "invoice" => "Invoice", - "invoice_configuration" => "Invoice Print Settings", - "invoice_default_comments" => "Default Invoice Comments", - "invoice_email_message" => "Invoice Email Template", - "invoice_enable" => "Enable Invoicing", - "invoice_printer" => "Invoice Printer", - "invoice_type" => "", - "is_readable" => "", - "is_writable" => "is writable, but the permissions are higher than 750.", - "item_markup" => "", - "jsprintsetup_required" => "Warning: This functionality will only work if you have the FireFox jsPrintSetup addon installed. Save anyway?", - "language" => "Language", - "last_used_invoice_number" => "Last used Invoice Number", - "last_used_quote_number" => "Last used Quote Number", - "last_used_work_order_number" => "Last used W/O Number", - "left" => "Left", - "license" => "License", - "license_configuration" => "License Statement", - "line_sequence" => "Line Sequence", - "lines_per_page" => "Lines per Page", - "lines_per_page_number" => "", - "lines_per_page_required" => "Lines per Page is a required field.", - "locale" => "Localization", - "locale_configuration" => "Localization Configuration", - "locale_info" => "Localization Configuration Information", - "location" => "Stock", - "location_configuration" => "Stock Locations", - "location_info" => "Location Configuration Information", - "login_form" => "", - "logout" => "Do you want to make a backup before logging out? Click [OK] to backup or [Cancel] to logout.", - "mailchimp" => "Mailchimp", - "mailchimp_api_key" => "Mailchimp API Key", - "mailchimp_configuration" => "Mailchimp Configuration", - "mailchimp_key_successfully" => "API Key is valid.", - "mailchimp_key_unsuccessfully" => "API Key is invalid.", - "mailchimp_lists" => "Mailchimp List(s)", - "mailchimp_tooltip" => "Click the icon for an API Key.", - "message" => "Message", - "message_configuration" => "Message Configuration", - "msg_msg" => "Saved Text Message", - "msg_msg_placeholder" => "If you wish to use a SMS template save your message here, otherwise leave the box blank.", - "msg_pwd" => "SMS-API Password", - "msg_pwd_required" => "SMS-API Password is a required field", - "msg_src" => "SMS-API Sender ID", - "msg_src_required" => "SMS-API Sender ID is a required field", - "msg_uid" => "SMS-API Username", - "msg_uid_required" => "SMS-API Username is a required field", - "multi_pack_enabled" => "", - "no_risk" => "No security/vulnerability risks.", - "none" => "none", - "notify_alignment" => "Notification Popup Position", - "number_format" => "Number Format", - "number_locale" => "Localization", - "number_locale_invalid" => "The entered locale is invalid. Check the link in the tooltip to find a valid locale.", - "number_locale_required" => "Number Locale is a required field.", - "number_locale_tooltip" => "Find a suitable locale through this link.", - "os_timezone" => "", - "ospos_info" => "", - "payment_options_order" => "Payment Options Order", - "perm_risk" => "Permissions higher than 750 leaves this software at risk.", - "phone" => "Company Phone", - "phone_required" => "Company Phone is a required field.", - "print_bottom_margin" => "Margin Bottom", - "print_bottom_margin_number" => "Margin Bottom must be a number.", - "print_bottom_margin_required" => "Margin Bottom is a required field.", - "print_delay_autoreturn" => "", - "print_delay_autoreturn_number" => "", - "print_delay_autoreturn_required" => "", - "print_footer" => "Print Browser Footer", - "print_header" => "Print Browser Header", - "print_left_margin" => "Margin Left", - "print_left_margin_number" => "Margin Left must be a number.", - "print_left_margin_required" => "Margin Left is a required field.", - "print_receipt_check_behaviour" => "", - "print_receipt_check_behaviour_always" => "", - "print_receipt_check_behaviour_last" => "", - "print_receipt_check_behaviour_never" => "", - "print_right_margin" => "Margin Right", - "print_right_margin_number" => "Margin Right must be a number.", - "print_right_margin_required" => "Margin Right is a required field.", - "print_silently" => "Show Print Dialog", - "print_top_margin" => "Margin Top", - "print_top_margin_number" => "Margin Top must be a number.", - "print_top_margin_required" => "Margin Top is a required field.", - "quantity_decimals" => "Quantity Decimals", - "quick_cash_enable" => "", - "quote_default_comments" => "", - "receipt" => "Receipt", - "receipt_category" => "", - "receipt_configuration" => "Receipt Print Settings", - "receipt_default" => "Default", - "receipt_font_size" => "Font Size", - "receipt_font_size_number" => "Font Size must be a number.", - "receipt_font_size_required" => "Font Size is a required field.", - "receipt_info" => "Receipt Configuration Information", - "receipt_printer" => "Ticket Printer", - "receipt_short" => "Short", - "receipt_show_company_name" => "Show Company Name", - "receipt_show_description" => "Show Description", - "receipt_show_serialnumber" => "Show Serial Number", - "receipt_show_tax_ind" => "", - "receipt_show_taxes" => "Show Taxes", - "receipt_show_total_discount" => "Show Total Discount", - "receipt_template" => "Receipt Template", - "receiving_calculate_average_price" => "Calc avg. Price (Receiving)", - "recv_invoice_format" => "Receivings Invoice Format", - "register_mode_default" => "Default Register Mode", - "report_an_issue" => "", - "return_policy_required" => "Return policy is a required field.", - "reward" => "Reward", - "reward_configuration" => "Reward Configuration", - "right" => "Right", - "sales_invoice_format" => "Sales Invoice Format", - "sales_quote_format" => "Sales Quote Format", - "saved_successfully" => "Configuration save successful.", - "saved_unsuccessfully" => "Configuration save failed.", - "security_issue" => "Security Vulnerability Warning", - "server_notice" => "Please use the below info for issue reporting.", - "service_charge" => "", - "show_due_enable" => "", - "show_office_group" => "Show office icon", - "statistics" => "Send Statistics", - "statistics_tooltip" => "Send statistics for development and feature improvement purposes.", - "stock_location" => "Stock location", - "stock_location_duplicate" => "Stock Location must be unique.", - "stock_location_invalid_chars" => "Stock Location can not contain '_'.", - "stock_location_required" => "Stock location is a required field.", - "suggestions_fifth_column" => "", - "suggestions_first_column" => "Column 1", - "suggestions_fourth_column" => "", - "suggestions_layout" => "Search Suggestions Layout", - "suggestions_second_column" => "Column 2", - "suggestions_third_column" => "Column 3", - "system_conf" => "Setup & Conf", - "system_info" => "System Info", - "table" => "Table", - "table_configuration" => "Table Configuration", - "takings_printer" => "Receipt Printer", - "tax" => "Tax", - "tax_category" => "Tax Category", - "tax_category_duplicate" => "", - "tax_category_invalid_chars" => "", - "tax_category_required" => "", - "tax_category_used" => "Tax category cannot be deleted because it is being used.", - "tax_configuration" => "Tax Configuration", - "tax_decimals" => "Tax Decimals", - "tax_id" => "", - "tax_included" => "Tax Included", - "theme" => "Theme", - "theme_preview" => "", - "thousands_separator" => "Thousands Separator", - "timezone" => "Timezone", - "timezone_error" => "", - "top" => "Top", - "use_destination_based_tax" => "", - "user_timezone" => "", - "website" => "Website", - "wholesale_markup" => "", - "work_order_enable" => "Work Order Support", - "work_order_format" => "Work Order Format", + "address" => "ທີ່ຢູ່ບໍລິສັດ", + "address_required" => "ກະລຸນາໃສ່ທີ່ຢູ່ບໍລິສັດ.", + "all_set" => "All file permissions are set correctly!", + "allow_duplicate_barcodes" => "ອະນຸຍາດໃຫ້ມີບາໂຄດຊໍ້າກັນ", + "apostrophe" => "ຈຸດລາຍນໍ້າ", + "backup_button" => "ການສຳຮອງ", + "backup_database" => "ການສຳຮອງຖານຂໍ້ມູນ", + "barcode" => "ບາໂຄດ", + "barcode_company" => "ຊື່ບໍລິສັດ", + "barcode_configuration" => "ການຕັ້ງຄ່າກ່ຽວກັບ Barcode", + "barcode_content" => "ເນື່ອຫາຂອງ Barcode", + "barcode_first_row" => "ແຖວທີ 1", + "barcode_font" => "ຟອນທ໌", + "barcode_formats" => "ຮູບແບບການໃສ່ຂໍ້ມູນ", + "barcode_generate_if_empty" => "ສ້າງຖ້າວ່າງເປົ່າ.", + "barcode_height" => "ສູງ (px)", + "barcode_id" => "ລະຫັດສິນຄ້າ/ຊື່ສິນຄ້າ", + "barcode_info" => "ຂໍ້ມູນການຕັ້ງຄ່າກ່ຽວກັບ Barcode", + "barcode_layout" => "ການຈັດລຽງຮູບແບບ Barcode", + "barcode_name" => "ຊື່ສິນຄ້າ", + "barcode_number" => "ລະຫັດ Barcode", + "barcode_number_in_row" => "ຈຳນວນແຖວທີ່ໃຊ້", + "barcode_page_cellspacing" => "Display page cellspacing.", + "barcode_page_width" => "Display page width", + "barcode_price" => "ລາຄາ", + "barcode_second_row" => "ແຖວທີ 2", + "barcode_third_row" => "ແຖວທີ 3", + "barcode_tooltip" => "ຄຳເຕືອນ: This feature can cause duplicate items to be imported or created. Do not use if you do not want duplicate barcodes.", + "barcode_type" => "ປະເພດ Barcode", + "barcode_width" => "ຄວາມກວ້າງ (px)", + "bottom" => "ດ້ານລຸ່ມຂອງເຈ້ຍ", + "cash_button" => "", + "cash_button_1" => "", + "cash_button_2" => "", + "cash_button_3" => "", + "cash_button_4" => "", + "cash_button_5" => "", + "cash_button_6" => "", + "cash_decimals" => "ຈຳນວນຕົວເລກເສດເງິນ", + "cash_decimals_tooltip" => "ກະລຸນາປັບຈຳນວນຕົວເລກເສດໃຫ້ເທົ່າກັນເພື່ອຈະໄດ້ບໍ່ມີການປັດມູນຄ່າເງິນ.", + "cash_rounding" => "ການປັດມູນຄ່າເງິນ", + "category_dropdown" => "", + "center" => "ທາງກາງຂອງເຈ້ຍ", + "change_apperance_tooltip" => "", + "comma" => "ເຄື່ອງຫມາຍຈຸດ", + "company" => "ຊື່ບໍລິສັດ", + "company_avatar" => "", + "company_change_image" => "ປ່ຽນຮູບ", + "company_logo" => "Logo ບໍລິສັດ", + "company_remove_image" => "ລຶບຮູບ", + "company_required" => "ກະລຸນາໃສ່ຊື່ບໍລິສັດ", + "company_select_image" => "ກະລຸນາເລືອກຮູບ", + "company_website_url" => "ທີ່ຢູ່ website ຂອງບໍລິສັດບໍ່ຖືກຕ້ອງ URL (http://...).", + "country_codes" => "ລະຫັດປະເທດ", + "country_codes_tooltip" => "ໃຊ້ເຄື່ອງຫມາຍຈຸດເພື່ອແຍກຫົວຫນ່ວຍເງິນຕາ", + "currency_code" => "", + "currency_decimals" => "ຈຳນວນຕົວເລກເສດເງິນ", + "currency_symbol" => "ສັນຍະລັກຂອງເງິນ", + "current_employee_only" => "", + "customer_reward" => "ລາງວັນ", + "customer_reward_duplicate" => "ລາງວັນສຳຫລັບລູກຄ້າຕ້ອງມີຄວາມແຕກຕ່າງ", + "customer_reward_enable" => "ໃຊ້ງານລະບົບລາງວັນສຳຫລັບລູກຄ້າ", + "customer_reward_invalid_chars" => "ລາງວັນບໍ່ສາມາດບັນຈຸໄດ້ '_'", + "customer_reward_required" => "ກະລຸນາກຳນົດລາງວັນ", + "customer_sales_tax_support" => "ເປີດໃຊ້ອາກອນຊົມໃຊ້", + "date_or_time_format" => "Date and Time Filter", + "datetimeformat" => "ຮູບແບບວັນທີ່ ແລະ ເວລາ", + "decimal_point" => "ເຄື່ອງຫມາຍເລກເສດເງິນ", + "default_barcode_font_size_number" => "ຂະຫນາດຂອງຕົວອັກສອນຕ້ອງເປັນຕົວເລກເທົ່ານັ້ນ.", + "default_barcode_font_size_required" => "ກະລຸນາໃສ່ຂະຫນາດຂອງຕົວອັກສອນ.", + "default_barcode_height_number" => "ຂະຫນາດຄວາມສູງຂອງ Barcode ຕ້ອງເປັນຕົວເລກເທົ່ານັ້ນ.", + "default_barcode_height_required" => "ກະລຸນາໃສ່ຂະຫນາດຄວາມສູງຂອງ Barcode.", + "default_barcode_num_in_row_number" => "ຈຳນວນແຖວຂອງ Barcode ຕ້ອງເປັນຕົວເລກເທົ່ານັ້ນ.", + "default_barcode_num_in_row_required" => "ກະລຸນາໃສ່ຈຳນວນແຖວຂອງ Barcode.", + "default_barcode_page_cellspacing_number" => "ຄວາມຫ່າງລະຫວ່າງຫ້ອງຂໍ້ມູນຕ້ອງເປັນຕົວເລກເທົ່ານັ້ນ.", + "default_barcode_page_cellspacing_required" => "ກະລຸນາໃສ່ຄວາມຫ່າງລະຫວ່າງຫ້ອງຂໍ້ມູນ.", + "default_barcode_page_width_number" => "ຄວາມກວ້າງຂອງຫນ້າ Barcode ຕ້ອງເປັນຕົວເລກເທົ່ານັ້ນ.", + "default_barcode_page_width_required" => "ກະລຸນາໃສ່ຄວາມກວ້າງຂອງຫນ້າ Barcode.", + "default_barcode_width_number" => "ຄວາມກວ້າງຂອງ Barcode ຕ້ອງເປັນຕົວເລກເທົ່ານັ້ນ.", + "default_barcode_width_required" => "ກະລຸນາກຳນົດຄວາມກວ້າງຂອງ Barcode.", + "default_item_columns" => "", + "default_origin_tax_code" => "ທີ່ມາຂອງອາກອນ", + "default_receivings_discount" => "", + "default_receivings_discount_number" => "", + "default_receivings_discount_required" => "", + "default_sales_discount" => "ເປີເຊັນສ່ວນຫລຸດ %", + "default_sales_discount_number" => "ເປເຊັນສ່ວນຫລຸດ ຕ້ອງເປັນຕົວເລກເທົ່ານັ້ນ.", + "default_sales_discount_required" => "ກະລຸນາກຳນົດເປີເຊັນສ່ວນຫລຸດ.", + "default_tax_category" => "", + "default_tax_code" => "", + "default_tax_jurisdiction" => "", + "default_tax_name_number" => "ຊື່ຂອງອາກອນຕ້ອງເປັນຕົວອັກສອນ.", + "default_tax_name_required" => "ກະລຸນາໃສ່ຊື່ອາກອນ.", + "default_tax_rate" => "ອັດຕາອາກອນ %", + "default_tax_rate_1" => "ອັດຕາອາກອນທີ 1", + "default_tax_rate_2" => "ອັດຕາອາກອນທີ 2", + "default_tax_rate_3" => "", + "default_tax_rate_number" => "ອັດຕາອາກອນ ຕ້ອງເປັນຕົວເລກເທົ່ານັ້ນ.", + "default_tax_rate_required" => "ກະລຸນາກຳນົດອັດຕາອາກອນ.", + "derive_sale_quantity" => "", + "derive_sale_quantity_tooltip" => "", + "dinner_table" => "ໂຕະສຳຫລັບຮ້ານອາຫານ", + "dinner_table_duplicate" => "ເລກໂຕະຕ້ອງບໍ່ຊໍ້າກັນ.", + "dinner_table_enable" => "ເປີດໃຊ້ງານລະບົບໂຕະສຳລັບຮ້ານອາຫານ", + "dinner_table_invalid_chars" => "ບໍ່ສາມາດໃສ່ຊື່ໂຕະທີ່ມີ '_' ນີ້ໄດ້.", + "dinner_table_required" => "ກະລຸນາກຳນົດຊື່ໂຕະ.", + "dot" => "ຈໍ້າເມັດ", + "email" => "Email", + "email_configuration" => "Email Configuration", + "email_mailpath" => "Path to Sendmail", + "email_protocol" => "Protocol", + "email_receipt_check_behaviour" => "", + "email_receipt_check_behaviour_always" => "", + "email_receipt_check_behaviour_last" => "", + "email_receipt_check_behaviour_never" => "", + "email_smtp_crypto" => "SMTP Encryption", + "email_smtp_host" => "SMTP Server", + "email_smtp_pass" => "SMTP Password", + "email_smtp_port" => "SMTP Port", + "email_smtp_timeout" => "SMTP Timeout (s)", + "email_smtp_user" => "SMTP Username", + "enable_avatar" => "", + "enable_avatar_tooltip" => "", + "enable_dropdown_tooltip" => "", + "enable_new_look" => "", + "enable_right_bar" => "", + "enable_right_bar_tooltip" => "", + "enforce_privacy" => "", + "enforce_privacy_tooltip" => "", + "fax" => "Fax", + "file_perm" => "There are problems with file permissions please fix and reload this page.", + "financial_year" => "Fiscal Year Start", + "financial_year_apr" => "1st of April", + "financial_year_aug" => "1st of August", + "financial_year_dec" => "1st of December", + "financial_year_feb" => "1st of February", + "financial_year_jan" => "1st of January", + "financial_year_jul" => "1st of July", + "financial_year_jun" => "1st of June", + "financial_year_mar" => "1st of March", + "financial_year_may" => "1st of May", + "financial_year_nov" => "1st of November", + "financial_year_oct" => "1st of October", + "financial_year_sep" => "1st of September", + "floating_labels" => "", + "gcaptcha_enable" => "Login Page reCAPTCHA", + "gcaptcha_secret_key" => "reCAPTCHA Secret Key", + "gcaptcha_secret_key_required" => "reCAPTCHA Secret Key is a required field", + "gcaptcha_site_key" => "reCAPTCHA Site Key", + "gcaptcha_site_key_required" => "reCAPTCHA Site Key is a required field", + "gcaptcha_tooltip" => "Protect the Login page with Google reCAPTCHA, click the icon for an API key pair.", + "general" => "General", + "general_configuration" => "General Configuration", + "giftcard_number" => "Gift Card Number", + "giftcard_random" => "Generate Random", + "giftcard_series" => "Generate in Series", + "image_allowed_file_types" => "", + "image_max_height_tooltip" => "", + "image_max_size_tooltip" => "", + "image_max_width_tooltip" => "", + "image_restrictions" => "", + "include_hsn" => "", + "info" => "Information", + "info_configuration" => "Store Information", + "input_groups" => "", + "integrations" => "", + "integrations_configuration" => "", + "invoice" => "Invoice", + "invoice_configuration" => "Invoice Print Settings", + "invoice_default_comments" => "Default Invoice Comments", + "invoice_email_message" => "Invoice Email Template", + "invoice_enable" => "Enable Invoicing", + "invoice_printer" => "Invoice Printer", + "invoice_type" => "", + "is_readable" => "", + "is_writable" => "is writable, but the permissions are higher than 750.", + "item_markup" => "", + "jsprintsetup_required" => "Warning: This functionality will only work if you have the FireFox jsPrintSetup addon installed. Save anyway?", + "language" => "Language", + "last_used_invoice_number" => "Last used Invoice Number", + "last_used_quote_number" => "Last used Quote Number", + "last_used_work_order_number" => "Last used W/O Number", + "left" => "Left", + "license" => "License", + "license_configuration" => "License Statement", + "line_sequence" => "Line Sequence", + "lines_per_page" => "Lines per Page", + "lines_per_page_number" => "", + "lines_per_page_required" => "Lines per Page is a required field.", + "locale" => "Localization", + "locale_configuration" => "Localization Configuration", + "locale_info" => "Localization Configuration Information", + "location" => "Stock", + "location_configuration" => "Stock Locations", + "location_info" => "Location Configuration Information", + "login_form" => "", + "logout" => "Do you want to make a backup before logging out? Click [OK] to backup or [Cancel] to logout.", + "mailchimp" => "Mailchimp", + "mailchimp_api_key" => "Mailchimp API Key", + "mailchimp_configuration" => "Mailchimp Configuration", + "mailchimp_key_successfully" => "API Key is valid.", + "mailchimp_key_unsuccessfully" => "API Key is invalid.", + "mailchimp_lists" => "Mailchimp List(s)", + "mailchimp_tooltip" => "Click the icon for an API Key.", + "message" => "Message", + "message_configuration" => "Message Configuration", + "msg_msg" => "Saved Text Message", + "msg_msg_placeholder" => "If you wish to use a SMS template save your message here, otherwise leave the box blank.", + "msg_pwd" => "SMS-API Password", + "msg_pwd_required" => "SMS-API Password is a required field", + "msg_src" => "SMS-API Sender ID", + "msg_src_required" => "SMS-API Sender ID is a required field", + "msg_uid" => "SMS-API Username", + "msg_uid_required" => "SMS-API Username is a required field", + "multi_pack_enabled" => "", + "no_risk" => "No security/vulnerability risks.", + "none" => "none", + "notify_alignment" => "Notification Popup Position", + "number_format" => "Number Format", + "number_locale" => "Localization", + "number_locale_invalid" => "The entered locale is invalid. Check the link in the tooltip to find a valid locale.", + "number_locale_required" => "Number Locale is a required field.", + "number_locale_tooltip" => "Find a suitable locale through this link.", + "os_timezone" => "", + "ospos_info" => "", + "payment_options_order" => "Payment Options Order", + "perm_risk" => "Permissions higher than 750 leaves this software at risk.", + "phone" => "Company Phone", + "phone_required" => "Company Phone is a required field.", + "print_bottom_margin" => "Margin Bottom", + "print_bottom_margin_number" => "Margin Bottom must be a number.", + "print_bottom_margin_required" => "Margin Bottom is a required field.", + "print_delay_autoreturn" => "", + "print_delay_autoreturn_number" => "", + "print_delay_autoreturn_required" => "", + "print_footer" => "Print Browser Footer", + "print_header" => "Print Browser Header", + "print_left_margin" => "Margin Left", + "print_left_margin_number" => "Margin Left must be a number.", + "print_left_margin_required" => "Margin Left is a required field.", + "print_receipt_check_behaviour" => "", + "print_receipt_check_behaviour_always" => "", + "print_receipt_check_behaviour_last" => "", + "print_receipt_check_behaviour_never" => "", + "print_right_margin" => "Margin Right", + "print_right_margin_number" => "Margin Right must be a number.", + "print_right_margin_required" => "Margin Right is a required field.", + "print_silently" => "Show Print Dialog", + "print_top_margin" => "Margin Top", + "print_top_margin_number" => "Margin Top must be a number.", + "print_top_margin_required" => "Margin Top is a required field.", + "quantity_decimals" => "Quantity Decimals", + "quick_cash_enable" => "", + "quote_default_comments" => "", + "receipt" => "Receipt", + "receipt_category" => "", + "receipt_configuration" => "Receipt Print Settings", + "receipt_default" => "Default", + "receipt_font_size" => "Font Size", + "receipt_font_size_number" => "Font Size must be a number.", + "receipt_font_size_required" => "Font Size is a required field.", + "receipt_info" => "Receipt Configuration Information", + "receipt_printer" => "Ticket Printer", + "receipt_short" => "Short", + "receipt_show_company_name" => "Show Company Name", + "receipt_show_description" => "Show Description", + "receipt_show_serialnumber" => "Show Serial Number", + "receipt_show_tax_ind" => "", + "receipt_show_taxes" => "Show Taxes", + "receipt_show_total_discount" => "Show Total Discount", + "receipt_template" => "Receipt Template", + "receiving_calculate_average_price" => "Calc avg. Price (Receiving)", + "recv_invoice_format" => "Receivings Invoice Format", + "register_mode_default" => "Default Register Mode", + "report_an_issue" => "", + "return_policy_required" => "Return policy is a required field.", + "reward" => "Reward", + "reward_configuration" => "Reward Configuration", + "right" => "Right", + "sales_invoice_format" => "Sales Invoice Format", + "sales_quote_format" => "Sales Quote Format", + "saved_successfully" => "Configuration save successful.", + "saved_unsuccessfully" => "Configuration save failed.", + "security_issue" => "Security Vulnerability Warning", + "server_notice" => "Please use the below info for issue reporting.", + "service_charge" => "", + "show_due_enable" => "", + "show_office_group" => "Show office icon", + "statistics" => "Send Statistics", + "statistics_tooltip" => "Send statistics for development and feature improvement purposes.", + "stock_location" => "Stock location", + "stock_location_duplicate" => "Stock Location must be unique.", + "stock_location_invalid_chars" => "Stock Location can not contain '_'.", + "stock_location_required" => "Stock location is a required field.", + "suggestions_fifth_column" => "", + "suggestions_first_column" => "Column 1", + "suggestions_fourth_column" => "", + "suggestions_layout" => "Search Suggestions Layout", + "suggestions_second_column" => "Column 2", + "suggestions_third_column" => "Column 3", + "system_conf" => "Setup & Conf", + "system_info" => "System Info", + "table" => "Table", + "table_configuration" => "Table Configuration", + "takings_printer" => "Receipt Printer", + "tax" => "Tax", + "tax_category" => "Tax Category", + "tax_category_duplicate" => "", + "tax_category_invalid_chars" => "", + "tax_category_required" => "", + "tax_category_used" => "Tax category cannot be deleted because it is being used.", + "tax_configuration" => "Tax Configuration", + "tax_decimals" => "Tax Decimals", + "tax_id" => "", + "tax_included" => "Tax Included", + "theme" => "Theme", + "theme_preview" => "", + "thousands_separator" => "Thousands Separator", + "timezone" => "Timezone", + "timezone_error" => "", + "top" => "Top", + "use_destination_based_tax" => "", + "user_timezone" => "", + "website" => "Website", + "wholesale_markup" => "", + "work_order_enable" => "Work Order Support", + "work_order_format" => "Work Order Format", ]; diff --git a/app/Language/lo/Customers.php b/app/Language/lo/Customers.php index cfd1952a4..d2c060c04 100644 --- a/app/Language/lo/Customers.php +++ b/app/Language/lo/Customers.php @@ -1,56 +1,56 @@ "Account #", - "account_number_duplicate" => "Account Number is already present in the database.", - "available_points" => "Available Points", - "available_points_value" => "", - "average" => "Average spent", - "avg_discount" => "Average discount", - "basic_information" => "Information", - "cannot_be_deleted" => "Could not delete selected customers, one or more of the selected customers has sales.", - "company_name" => "Company", - "confirm_delete" => "Are you sure you want to delete the selected customer(s)?", - "confirm_restore" => "", - "consent" => "", - "consent_required" => "", - "csv_import_failed" => "CSV import failed", - "csv_import_nodata_wrongformat" => "The uploaded file has no data or is incorrectly formatted.", - "csv_import_partially_failed" => "Customer import successful with some failures:", - "csv_import_success" => "Customer import successful.", - "customer" => "Customer", - "date" => "", - "discount" => "Discount", - "discount_fixed" => "", - "discount_percent" => "", - "discount_type" => "", - "email_duplicate" => "Email Address is already present in the database.", - "employee" => "", - "error_adding_updating" => "Customer add or update failed.", - "import_items_csv" => "Customer Import from CSV", - "mailchimp_activity_click" => "Email click", - "mailchimp_activity_lastopen" => "Last open email", - "mailchimp_activity_open" => "Email open", - "mailchimp_activity_total" => "Email sent", - "mailchimp_activity_unopen" => "Email unopen", - "mailchimp_email_client" => "Email client", - "mailchimp_info" => "Mailchimp", - "mailchimp_member_rating" => "Rating", - "mailchimp_status" => "Status", - "mailchimp_vip" => "VIP", - "max" => "Max. spent", - "min" => "Min. spent", - "new" => "New Customer", - "none_selected" => "You have not selected any customer(s) to delete.", - "one_or_multiple" => "customer(s)", - "quantity" => "Quantity", - "stats_info" => "Stats", - "successful_adding" => "You have successfully added customer", - "successful_deleted" => "You have successfully deleted", - "successful_updating" => "You have successfully updated customer", - "tax_code" => "Tax Code", - "tax_id" => "", - "taxable" => "Taxable", - "total" => "Total spent", - "update" => "Update Customer", - "rewards_package" => "Rewards Package", + "account_number" => "Account #", + "account_number_duplicate" => "Account Number is already present in the database.", + "available_points" => "Available Points", + "available_points_value" => "", + "average" => "Average spent", + "avg_discount" => "Average discount", + "basic_information" => "Information", + "cannot_be_deleted" => "Could not delete selected customers, one or more of the selected customers has sales.", + "company_name" => "Company", + "confirm_delete" => "Are you sure you want to delete the selected customer(s)?", + "confirm_restore" => "", + "consent" => "", + "consent_required" => "", + "csv_import_failed" => "CSV import failed", + "csv_import_nodata_wrongformat" => "The uploaded file has no data or is incorrectly formatted.", + "csv_import_partially_failed" => "Customer import successful with some failures:", + "csv_import_success" => "Customer import successful.", + "customer" => "Customer", + "date" => "", + "discount" => "Discount", + "discount_fixed" => "", + "discount_percent" => "", + "discount_type" => "", + "email_duplicate" => "Email Address is already present in the database.", + "employee" => "", + "error_adding_updating" => "Customer add or update failed.", + "import_items_csv" => "Customer Import from CSV", + "mailchimp_activity_click" => "Email click", + "mailchimp_activity_lastopen" => "Last open email", + "mailchimp_activity_open" => "Email open", + "mailchimp_activity_total" => "Email sent", + "mailchimp_activity_unopen" => "Email unopen", + "mailchimp_email_client" => "Email client", + "mailchimp_info" => "Mailchimp", + "mailchimp_member_rating" => "Rating", + "mailchimp_status" => "Status", + "mailchimp_vip" => "VIP", + "max" => "Max. spent", + "min" => "Min. spent", + "new" => "New Customer", + "none_selected" => "You have not selected any customer(s) to delete.", + "one_or_multiple" => "customer(s)", + "quantity" => "Quantity", + "stats_info" => "Stats", + "successful_adding" => "You have successfully added customer", + "successful_deleted" => "You have successfully deleted", + "successful_updating" => "You have successfully updated customer", + "tax_code" => "Tax Code", + "tax_id" => "", + "taxable" => "Taxable", + "total" => "Total spent", + "update" => "Update Customer", + "rewards_package" => "Rewards Package", ]; diff --git a/app/Language/lo/Datepicker.php b/app/Language/lo/Datepicker.php index a125ec078..4dd9fd072 100644 --- a/app/Language/lo/Datepicker.php +++ b/app/Language/lo/Datepicker.php @@ -1,23 +1,23 @@ "ເວລາທັງໝົດ", - "apply" => "ນຳໃຊ້", - "cancel" => "ຍົກເລີກ", - "custom" => "ປັບແຕ່ງ", - "from" => "ເລີ່ມຈາກ", - "last_30" => "30 ວັນຜ່ານມາ", - "last_7" => "7 ວັນຜ່ານມາ", - "last_financial_year" => "1 ປີຜ່ານມາ", - "last_month" => "ເດືອນແລ້ວນີ້", - "last_year" => "ປີກາຍນີ້", - "same_month_last_year" => "ເດືອນນີ້ຂອງປີກາຍ", - "same_month_to_same_day_last_year" => "ມື້ນີ້ ເດືອນນີ້ ຂອງປີກາຍ", - "this_financial_year" => "ສົກປີນີ້", - "this_month" => "ເດືອນປັດຈຸບັນ", - "this_year" => "ປີປັດຈຸບັນ", - "to" => "ເຖິງ", - "today" => "ມື້ນີ້", - "today_last_year" => "ມື້ນີ້ຂອງປີກາຍ", - "weekstart" => "0", - "yesterday" => "ມື້ວານນີ້", + "all_time" => "ເວລາທັງໝົດ", + "apply" => "ນຳໃຊ້", + "cancel" => "ຍົກເລີກ", + "custom" => "ປັບແຕ່ງ", + "from" => "ເລີ່ມຈາກ", + "last_30" => "30 ວັນຜ່ານມາ", + "last_7" => "7 ວັນຜ່ານມາ", + "last_financial_year" => "1 ປີຜ່ານມາ", + "last_month" => "ເດືອນແລ້ວນີ້", + "last_year" => "ປີກາຍນີ້", + "same_month_last_year" => "ເດືອນນີ້ຂອງປີກາຍ", + "same_month_to_same_day_last_year" => "ມື້ນີ້ ເດືອນນີ້ ຂອງປີກາຍ", + "this_financial_year" => "ສົກປີນີ້", + "this_month" => "ເດືອນປັດຈຸບັນ", + "this_year" => "ປີປັດຈຸບັນ", + "to" => "ເຖິງ", + "today" => "ມື້ນີ້", + "today_last_year" => "ມື້ນີ້ຂອງປີກາຍ", + "weekstart" => "0", + "yesterday" => "ມື້ວານນີ້", ]; diff --git a/app/Language/lo/Employees.php b/app/Language/lo/Employees.php index 57a5a4da1..8ea801ca0 100644 --- a/app/Language/lo/Employees.php +++ b/app/Language/lo/Employees.php @@ -1,44 +1,44 @@ "", - "basic_information" => "ຂໍ້ມູນ", - "cannot_be_deleted" => "ບໍ່ສາມາດລຶບພະນັກງານທີ່ເລືອກໄດ້, ຢ່າງໜ້ອຍມີ 1 ລາຍການຫຼືຫຼາຍກວ່ານັ້ນ ຍັງມີການຊື້ຂາຍກັນຢູ່ ຫຼື ທ່ານກຳລັງພະຍາຍາມລຶບບັນຊີຂອງຕົວເອງ.", - "change_employee" => "", - "change_password" => "ປ່ຽນ Password", - "clerk" => "", - "commission" => "", - "confirm_delete" => "ທ່ານຈະລຶບພະນັກງານທີ່ເລືອກແທ້ບໍ່ ?", - "confirm_restore" => "", - "current_password" => "Password ປັດຈຸບັນ", - "current_password_invalid" => "Password ປັດຈຸບັນບໍ່ຖືກຕ້ອງ.", - "employee" => "ພະນັກງານ", - "error_adding_updating" => "ເພີ່ມ ຫຼື ແກ້ໄຂ ພະນັກງານ ບໍ່ສຳເລັດ.", - "error_deleting_demo_admin" => "ທ່ານບໍ່ສາມາດລຶບບັນຊີທົດລອງຜູ້ດູແລລະບົບໄດ້.", - "error_updating_demo_admin" => "ທ່ານບໍ່ສາມາດປ່ຽນແປງບັນຊີທົດລອງຜູ້ດູແລລະບົບໄດ້.", - "language" => "ພາສາ", - "login_info" => "ເຂົ້າລະບົບ", - "manager" => "", - "new" => "ພະນັກງານໃໝ່", - "none_selected" => "ທ່ານຍັງບໍ່ໄດ້ເລືອກພະນັກງານໃດເລີຍເພື່ອລຶບ.", - "one_or_multiple" => "ພະນັກງານ", - "password" => "Password", - "password_minlength" => "Password ຄວນໃສ່ຢ່າງໜ້ອຍ 8 ຕົວອັກສອນ.", - "password_must_match" => "Password ບໍ່ຄືກັນ.", - "password_not_must_match" => "Password ປັດຈຸບັນ ແລະ Password ໃໝ່ ຈະຕ້ອງບໍ່ຄືກັນ.", - "password_required" => "Password ຈຳເປັນຕ້ອງໃສ່.", - "permission_desc" => "ຕິກຂໍ້ມູນດ້ານລຸ່ມເພື່ອໃຫ້ສາມາດນຳໃຊ້ Modules ຕ່າງໆໄດ້.", - "permission_info" => "ສິດ", - "repeat_password" => "ລະຫັດຜ່ານອີກຄັ້ງ", - "subpermission_required" => "Add at least one grant for each module.", - "successful_adding" => "ເພີ່ມພະນັກງານສຳເລັດ.", - "successful_change_password" => "ປ່ຽນລະຫັດຜ່ານສຳເລັດ.", - "successful_deleted" => "ທ່ານລຶບສຳເລັດແລ້ວ", - "successful_updating" => "ທ່ານແກ້ໄຂພະນັກງານສຳເລັດ", - "system_language" => "ພາສາຂອງລະບົບ", - "unsuccessful_change_password" => "ປ່ຽນລະຫັດຜ່ານບໍ່ສຳເລັດ.", - "update" => "ແກ້ໄຂພະນັກງານ", - "username" => "ຊື່ຜູ້ໃຊ້", - "username_duplicate" => "", - "username_minlength" => "Username ຕ້ອງໃສ່ຢ່າງໜ້ອຍ 5 ຕົວອັກສອນ.", - "username_required" => "Username ຈຳເປັນຕ້ອງໃສ່.", + "administrator" => "", + "basic_information" => "ຂໍ້ມູນ", + "cannot_be_deleted" => "ບໍ່ສາມາດລຶບພະນັກງານທີ່ເລືອກໄດ້, ຢ່າງໜ້ອຍມີ 1 ລາຍການຫຼືຫຼາຍກວ່ານັ້ນ ຍັງມີການຊື້ຂາຍກັນຢູ່ ຫຼື ທ່ານກຳລັງພະຍາຍາມລຶບບັນຊີຂອງຕົວເອງ.", + "change_employee" => "", + "change_password" => "ປ່ຽນ Password", + "clerk" => "", + "commission" => "", + "confirm_delete" => "ທ່ານຈະລຶບພະນັກງານທີ່ເລືອກແທ້ບໍ່ ?", + "confirm_restore" => "", + "current_password" => "Password ປັດຈຸບັນ", + "current_password_invalid" => "Password ປັດຈຸບັນບໍ່ຖືກຕ້ອງ.", + "employee" => "ພະນັກງານ", + "error_adding_updating" => "ເພີ່ມ ຫຼື ແກ້ໄຂ ພະນັກງານ ບໍ່ສຳເລັດ.", + "error_deleting_demo_admin" => "ທ່ານບໍ່ສາມາດລຶບບັນຊີທົດລອງຜູ້ດູແລລະບົບໄດ້.", + "error_updating_demo_admin" => "ທ່ານບໍ່ສາມາດປ່ຽນແປງບັນຊີທົດລອງຜູ້ດູແລລະບົບໄດ້.", + "language" => "ພາສາ", + "login_info" => "ເຂົ້າລະບົບ", + "manager" => "", + "new" => "ພະນັກງານໃໝ່", + "none_selected" => "ທ່ານຍັງບໍ່ໄດ້ເລືອກພະນັກງານໃດເລີຍເພື່ອລຶບ.", + "one_or_multiple" => "ພະນັກງານ", + "password" => "Password", + "password_minlength" => "Password ຄວນໃສ່ຢ່າງໜ້ອຍ 8 ຕົວອັກສອນ.", + "password_must_match" => "Password ບໍ່ຄືກັນ.", + "password_not_must_match" => "Password ປັດຈຸບັນ ແລະ Password ໃໝ່ ຈະຕ້ອງບໍ່ຄືກັນ.", + "password_required" => "Password ຈຳເປັນຕ້ອງໃສ່.", + "permission_desc" => "ຕິກຂໍ້ມູນດ້ານລຸ່ມເພື່ອໃຫ້ສາມາດນຳໃຊ້ Modules ຕ່າງໆໄດ້.", + "permission_info" => "ສິດ", + "repeat_password" => "ລະຫັດຜ່ານອີກຄັ້ງ", + "subpermission_required" => "Add at least one grant for each module.", + "successful_adding" => "ເພີ່ມພະນັກງານສຳເລັດ.", + "successful_change_password" => "ປ່ຽນລະຫັດຜ່ານສຳເລັດ.", + "successful_deleted" => "ທ່ານລຶບສຳເລັດແລ້ວ", + "successful_updating" => "ທ່ານແກ້ໄຂພະນັກງານສຳເລັດ", + "system_language" => "ພາສາຂອງລະບົບ", + "unsuccessful_change_password" => "ປ່ຽນລະຫັດຜ່ານບໍ່ສຳເລັດ.", + "update" => "ແກ້ໄຂພະນັກງານ", + "username" => "ຊື່ຜູ້ໃຊ້", + "username_duplicate" => "", + "username_minlength" => "Username ຕ້ອງໃສ່ຢ່າງໜ້ອຍ 5 ຕົວອັກສອນ.", + "username_required" => "Username ຈຳເປັນຕ້ອງໃສ່.", ]; diff --git a/app/Language/lo/Enum.php b/app/Language/lo/Enum.php index 6189977b6..5068622a4 100644 --- a/app/Language/lo/Enum.php +++ b/app/Language/lo/Enum.php @@ -1,10 +1,10 @@ "Half Down", - "half_even" => "Half Even", - "half_five" => "Half Five", - "half_odd" => "Half Odd", - "half_up" => "Half Up", - "round_down" => "Round Down", - "round_up" => "Round Up", + "half_down" => "Half Down", + "half_even" => "Half Even", + "half_five" => "Half Five", + "half_odd" => "Half Odd", + "half_up" => "Half Up", + "round_down" => "Round Down", + "round_up" => "Round Up", ]; diff --git a/app/Language/lo/Error.php b/app/Language/lo/Error.php index 959d2bd72..69c345f4f 100644 --- a/app/Language/lo/Error.php +++ b/app/Language/lo/Error.php @@ -1,5 +1,5 @@ "ທ່ານບໍ່ໄດ້ຮັບອະນຸຍາດໃຫ້ເຂົ້າເຖິງຂໍ້ມູນສ່ວນນີ້", - "unknown" => "ບໍ່ຮູ້", + "no_permission_module" => "ທ່ານບໍ່ໄດ້ຮັບອະນຸຍາດໃຫ້ເຂົ້າເຖິງຂໍ້ມູນສ່ວນນີ້", + "unknown" => "ບໍ່ຮູ້", ]; diff --git a/app/Language/lo/Expenses.php b/app/Language/lo/Expenses.php index d112ce89e..38cda03f1 100644 --- a/app/Language/lo/Expenses.php +++ b/app/Language/lo/Expenses.php @@ -1,50 +1,50 @@ "ເພີ່ມຄ່າໃຊ້ຈ່າຍ", - "amount" => "ຈຳນວນ", - "amount_number" => "ຈຳນວນຕ້ອງໃສ່ເປັນຕົວເລກ", - "amount_required" => "Expense Amount required", - "by_category" => "ປະເພດ", - "cannot_be_deleted" => "ບໍ່ສາມາດລຶບປະເພດຄ່າໃຊ້ຈ່າຍໄດ້", - "cash" => "ເງິນສົດ", - "cash_filter" => "ເງິນສົດ", - "categories_name" => "ປະເພດ", - "category_required" => "ປະເພດຈຳເປັນຕ້ອງໃສ່", - "check" => "ແຊັກ", - "check_filter" => "ແຊັກ", - "confirm_delete" => "ທ່ານຕ້ອງການຈະລຶບຄ່າໃຊ້ຈ່າຍທີ່ທ່ານເລືອກແທ້ບໍ່ ?", - "confirm_restore" => "", - "credit" => "ບັດເຄຣດິດ", - "credit_filter" => "ບັດເຄຣດິດ", - "date" => "ວັນທີ", - "date_number" => "ວັນທີຕ້ອງໃສ່ເປັນຕົວເລກ", - "date_required" => "ວັນທີຈຳເປັນຕ້ອງໃສ່", - "debit" => "ບັດເດບິດ", - "debit_filter" => "ບັດເດບິດ", - "description" => "ຄຳອະທິບາຍ", - "due" => "ຕິດໜີ້", - "due_filter" => "ຕິດໜີ້", - "employee" => "ສ້າງໂດຍ", - "error_adding_updating" => "ຜິດພາດ ການເພີ່ມ/ການແກ້ໄຂ ຄ່າໃຊ້ຈ່າຍ", - "expense_id" => "Id", - "expenses_employee" => "ພະນັກງານ", - "info" => "ຂໍ້ມູນຄ່າໃຊ້ຈ່າຍ", - "ip_address" => "", - "is_deleted" => "ລຶບ", - "name_required" => "ຊື່ຄ່າໃຊ້ຈ່າຍຕ້ອງໃສ່", - "new" => "ຄ່າໃຊ້ຈ່າຍໃໝ່", - "new_supplier" => "", - "no_expenses_to_display" => "ບໍ່ມີຄ່າໃຊ້ຈ່າຍທີ່ຈະສະແດງ", - "none_selected" => "ທ່ານຍັງບໍ່ທັນໄດ້ເລືອກຄ່າໃຊ້ຈ່າຍ", - "one_or_multiple" => "ຄ່າໃຊ້ຈ່າຍ", - "payment" => "ປະເພດການຊໍາລະເງິນ", - "start_typing_supplier_name" => "", - "successful_adding" => "ເພີ່ມຄ່າໃຊ້ຈ່າຍສຳເລັດ", - "successful_deleted" => "ລຶບຄ່າໃຊ້ຈ່າຍສຳເລັດ", - "successful_updating" => "ແກ້ໄຂຄ່າໃຊ້ຈ່າຍສຳເລັດ", - "supplier_name" => "ຜູ້ສະໜອງ", - "supplier_tax_code" => "ລະຫັດພາສີ", - "tax_amount" => "ພາສີ", - "tax_amount_number" => "", - "update" => "ແກ້ໄຂຄ່າໃຊ້ຈ່າຍ", + "add_item" => "ເພີ່ມຄ່າໃຊ້ຈ່າຍ", + "amount" => "ຈຳນວນ", + "amount_number" => "ຈຳນວນຕ້ອງໃສ່ເປັນຕົວເລກ", + "amount_required" => "Expense Amount required", + "by_category" => "ປະເພດ", + "cannot_be_deleted" => "ບໍ່ສາມາດລຶບປະເພດຄ່າໃຊ້ຈ່າຍໄດ້", + "cash" => "ເງິນສົດ", + "cash_filter" => "ເງິນສົດ", + "categories_name" => "ປະເພດ", + "category_required" => "ປະເພດຈຳເປັນຕ້ອງໃສ່", + "check" => "ແຊັກ", + "check_filter" => "ແຊັກ", + "confirm_delete" => "ທ່ານຕ້ອງການຈະລຶບຄ່າໃຊ້ຈ່າຍທີ່ທ່ານເລືອກແທ້ບໍ່ ?", + "confirm_restore" => "", + "credit" => "ບັດເຄຣດິດ", + "credit_filter" => "ບັດເຄຣດິດ", + "date" => "ວັນທີ", + "date_number" => "ວັນທີຕ້ອງໃສ່ເປັນຕົວເລກ", + "date_required" => "ວັນທີຈຳເປັນຕ້ອງໃສ່", + "debit" => "ບັດເດບິດ", + "debit_filter" => "ບັດເດບິດ", + "description" => "ຄຳອະທິບາຍ", + "due" => "ຕິດໜີ້", + "due_filter" => "ຕິດໜີ້", + "employee" => "ສ້າງໂດຍ", + "error_adding_updating" => "ຜິດພາດ ການເພີ່ມ/ການແກ້ໄຂ ຄ່າໃຊ້ຈ່າຍ", + "expense_id" => "Id", + "expenses_employee" => "ພະນັກງານ", + "info" => "ຂໍ້ມູນຄ່າໃຊ້ຈ່າຍ", + "ip_address" => "", + "is_deleted" => "ລຶບ", + "name_required" => "ຊື່ຄ່າໃຊ້ຈ່າຍຕ້ອງໃສ່", + "new" => "ຄ່າໃຊ້ຈ່າຍໃໝ່", + "new_supplier" => "", + "no_expenses_to_display" => "ບໍ່ມີຄ່າໃຊ້ຈ່າຍທີ່ຈະສະແດງ", + "none_selected" => "ທ່ານຍັງບໍ່ທັນໄດ້ເລືອກຄ່າໃຊ້ຈ່າຍ", + "one_or_multiple" => "ຄ່າໃຊ້ຈ່າຍ", + "payment" => "ປະເພດການຊໍາລະເງິນ", + "start_typing_supplier_name" => "", + "successful_adding" => "ເພີ່ມຄ່າໃຊ້ຈ່າຍສຳເລັດ", + "successful_deleted" => "ລຶບຄ່າໃຊ້ຈ່າຍສຳເລັດ", + "successful_updating" => "ແກ້ໄຂຄ່າໃຊ້ຈ່າຍສຳເລັດ", + "supplier_name" => "ຜູ້ສະໜອງ", + "supplier_tax_code" => "ລະຫັດພາສີ", + "tax_amount" => "ພາສີ", + "tax_amount_number" => "", + "update" => "ແກ້ໄຂຄ່າໃຊ້ຈ່າຍ", ]; diff --git a/app/Language/lo/Expenses_categories.php b/app/Language/lo/Expenses_categories.php index 5c1f26bd6..b30e916f2 100644 --- a/app/Language/lo/Expenses_categories.php +++ b/app/Language/lo/Expenses_categories.php @@ -1,22 +1,22 @@ "ຊື່ປະເພດຄ່າໃຊ້ຈ່າຍຈຳເປັນຕ້ອງໃສ່", - "add_item" => "ເພີ່ມປະເພດ", - "cannot_be_deleted" => "ບໍ່ສາມາດລຶບປະເພດຄ່າໃຊ້ຈ່າຍໄດ້", - "category_id" => "Id", - "confirm_delete" => "ທ່ານຕ້ອງການລຶບປະເພດຄ່າໃຊ້ຈ່າຍທີ່ທ່ານເລືອກແທ້ບໍ່ ?", - "confirm_restore" => "", - "description" => "ຄຳອະທິບາຍປະເພດ", - "error_adding_updating" => "ຜິດພາດ ການເພີ່ມ/ການແກ້ໄຂ ປະເພດຄ່າໃຊ້ຈ່າຍ", - "info" => "ຂໍ້ມູນປະເພດຄ່າໃຊ້ຈ່າຍ", - "name" => "ຊື່ປະເພດ", - "new" => "ປະເພດໃໝ່", - "no_expenses_categories_to_display" => "ບໍ່ມີປະເພດທີ່ຈະສະແດງ", - "none_selected" => "ທ່ານຍັງບໍ່ໄດ້ເລືອກປະເພດຄ່າໃຊ້ຈ່າຍໃດເລີຍ", - "one_or_multiple" => "ປະເພດຄ່າໃຊ້ຈ່າຍ", - "quantity" => "ຈຳນວນ", - "successful_adding" => "ເພີ່ມປະເພດຄ່າໃຊ້ຈ່າຍສຳເລັດ", - "successful_deleted" => "ລຶບປະເພດຄ່າໃຊ້ຈ່າຍສຳເລັດ", - "successful_updating" => "ແກ້ໄຂປະເພດຄ່າໃຊ້ຈ່າຍສຳເລັດ", - "update" => "ແກ້ໄຂປະເພດ", + "category_name_required" => "ຊື່ປະເພດຄ່າໃຊ້ຈ່າຍຈຳເປັນຕ້ອງໃສ່", + "add_item" => "ເພີ່ມປະເພດ", + "cannot_be_deleted" => "ບໍ່ສາມາດລຶບປະເພດຄ່າໃຊ້ຈ່າຍໄດ້", + "category_id" => "Id", + "confirm_delete" => "ທ່ານຕ້ອງການລຶບປະເພດຄ່າໃຊ້ຈ່າຍທີ່ທ່ານເລືອກແທ້ບໍ່ ?", + "confirm_restore" => "", + "description" => "ຄຳອະທິບາຍປະເພດ", + "error_adding_updating" => "ຜິດພາດ ການເພີ່ມ/ການແກ້ໄຂ ປະເພດຄ່າໃຊ້ຈ່າຍ", + "info" => "ຂໍ້ມູນປະເພດຄ່າໃຊ້ຈ່າຍ", + "name" => "ຊື່ປະເພດ", + "new" => "ປະເພດໃໝ່", + "no_expenses_categories_to_display" => "ບໍ່ມີປະເພດທີ່ຈະສະແດງ", + "none_selected" => "ທ່ານຍັງບໍ່ໄດ້ເລືອກປະເພດຄ່າໃຊ້ຈ່າຍໃດເລີຍ", + "one_or_multiple" => "ປະເພດຄ່າໃຊ້ຈ່າຍ", + "quantity" => "ຈຳນວນ", + "successful_adding" => "ເພີ່ມປະເພດຄ່າໃຊ້ຈ່າຍສຳເລັດ", + "successful_deleted" => "ລຶບປະເພດຄ່າໃຊ້ຈ່າຍສຳເລັດ", + "successful_updating" => "ແກ້ໄຂປະເພດຄ່າໃຊ້ຈ່າຍສຳເລັດ", + "update" => "ແກ້ໄຂປະເພດ", ]; diff --git a/app/Language/lo/Giftcards.php b/app/Language/lo/Giftcards.php index a99855b92..7b37589ff 100644 --- a/app/Language/lo/Giftcards.php +++ b/app/Language/lo/Giftcards.php @@ -1,71 +1,71 @@ "Inventory to add or subtract.", - "allow_alt_description" => "Allow Alternate Description", - "bulk_edit" => "Bulk Edit", - "cannot_be_deleted" => "Could not delete selected Gift Card(s), one or more of the selected Gift Cards has sales.", - "cannot_find_giftcard" => "Gift Card not found.", - "cannot_use" => "Gift Card {0} cannot be used for this sale: invalid Customer.", - "card_value" => "Value", - "category" => "Category", - "change_all_to_allow_alt_desc" => "Allow alternate description for all.", - "change_all_to_not_allow_allow_desc" => "Do not allow alternate description for all.", - "change_all_to_serialized" => "Change All To Serialized", - "change_all_to_unserialized" => "Change All To Unserialized", - "confirm_bulk_edit" => "Are you sure you want to edit the selected Gift Card(s)?", - "confirm_delete" => "Are you sure you want to delete the selected Gift Card(s)?", - "confirm_restore" => "", - "cost_price" => "Wholesale Price", - "count" => "Update Inventory", - "csv_import_failed" => "CSV import failed.", - "current_quantity" => "Current Quantity", - "description" => "Description", - "details_count" => "Inventory Count Details", - "do_nothing" => "Do Nothing", - "edit_fields_you_want_to_update" => "Edit desired fields for selected Gift Card(s).", - "edit_multiple_giftcards" => "Edit Multiple Gift Cards.", - "error_adding_updating" => "Gift Card add or update failed.", - "error_updating_multiple" => "Gift Card(s) update failed.", - "generate_barcodes" => "Generate Barcodes", - "giftcard" => "Gift Card", - "giftcard_number" => "Gift Card Number", - "info_provided_by" => "Info provided by", - "inventory_comments" => "Comments", - "is_serialized" => "Gift Card has Serial Number", - "low_inventory_giftcards" => "Low Inventory Gift Cards", - "manually_editing_of_quantity" => "Manual Edit of Quantity", - "must_select_giftcard_for_barcode" => "You must select at least one (1) Gift Card to generate barcodes.", - "new" => "New Gift Card", - "no_description_giftcards" => "No Description Gift Cards", - "no_giftcards_to_display" => "No Gift Cards to display.", - "none" => "None", - "none_selected" => "No Gift Card(s) selected to edit.", - "number" => "Gift Card Number must be a number.", - "number_information" => "Gift Card Number", - "number_required" => "Gift Card Number is a required field.", - "one_or_multiple" => "Gift Card(s)", - "person_id" => "Customer", - "quantity" => "Quantity", - "quantity_required" => "Quantity is a required field. Please close (X) to cancel.", - "remaining_balance" => "Gift Card {0} remaining value is {1}!", - "reorder_level" => "Reorder Level", - "retrive_giftcard_info" => "Retrieve Gift Card Info", - "sales_tax_1" => "Sales Tax", - "sales_tax_2" => "Sales Tax 2", - "serialized_giftcards" => "Serialized Gift Cards", - "successful_adding" => "You have successfully added Gift Card", - "successful_bulk_edit" => "You have successfully updated the selected Gift Card(s)", - "successful_deleted" => "You have successfully deleted", - "successful_updating" => "You have successfully updated Gift Card", - "supplier" => "Supplier", - "tax_1" => "Tax 1", - "tax_2" => "Tax 2", - "tax_percent" => "Tax Percent", - "tax_percents" => "Tax Percent(s)", - "unit_price" => "Retail Value", - "upc_database" => "Barcode Database", - "update" => "Update Gift Card", - "use_inventory_menu" => "Use Inventory Menu", - "value" => "Gift Card Value must be a number.", - "value_required" => "Gift Card Value is a required field.", + "add_minus" => "Inventory to add or subtract.", + "allow_alt_description" => "Allow Alternate Description", + "bulk_edit" => "Bulk Edit", + "cannot_be_deleted" => "Could not delete selected Gift Card(s), one or more of the selected Gift Cards has sales.", + "cannot_find_giftcard" => "Gift Card not found.", + "cannot_use" => "Gift Card {0} cannot be used for this sale: invalid Customer.", + "card_value" => "Value", + "category" => "Category", + "change_all_to_allow_alt_desc" => "Allow alternate description for all.", + "change_all_to_not_allow_allow_desc" => "Do not allow alternate description for all.", + "change_all_to_serialized" => "Change All To Serialized", + "change_all_to_unserialized" => "Change All To Unserialized", + "confirm_bulk_edit" => "Are you sure you want to edit the selected Gift Card(s)?", + "confirm_delete" => "Are you sure you want to delete the selected Gift Card(s)?", + "confirm_restore" => "", + "cost_price" => "Wholesale Price", + "count" => "Update Inventory", + "csv_import_failed" => "CSV import failed.", + "current_quantity" => "Current Quantity", + "description" => "Description", + "details_count" => "Inventory Count Details", + "do_nothing" => "Do Nothing", + "edit_fields_you_want_to_update" => "Edit desired fields for selected Gift Card(s).", + "edit_multiple_giftcards" => "Edit Multiple Gift Cards.", + "error_adding_updating" => "Gift Card add or update failed.", + "error_updating_multiple" => "Gift Card(s) update failed.", + "generate_barcodes" => "Generate Barcodes", + "giftcard" => "Gift Card", + "giftcard_number" => "Gift Card Number", + "info_provided_by" => "Info provided by", + "inventory_comments" => "Comments", + "is_serialized" => "Gift Card has Serial Number", + "low_inventory_giftcards" => "Low Inventory Gift Cards", + "manually_editing_of_quantity" => "Manual Edit of Quantity", + "must_select_giftcard_for_barcode" => "You must select at least one (1) Gift Card to generate barcodes.", + "new" => "New Gift Card", + "no_description_giftcards" => "No Description Gift Cards", + "no_giftcards_to_display" => "No Gift Cards to display.", + "none" => "None", + "none_selected" => "No Gift Card(s) selected to edit.", + "number" => "Gift Card Number must be a number.", + "number_information" => "Gift Card Number", + "number_required" => "Gift Card Number is a required field.", + "one_or_multiple" => "Gift Card(s)", + "person_id" => "Customer", + "quantity" => "Quantity", + "quantity_required" => "Quantity is a required field. Please close (X) to cancel.", + "remaining_balance" => "Gift Card {0} remaining value is {1}!", + "reorder_level" => "Reorder Level", + "retrive_giftcard_info" => "Retrieve Gift Card Info", + "sales_tax_1" => "Sales Tax", + "sales_tax_2" => "Sales Tax 2", + "serialized_giftcards" => "Serialized Gift Cards", + "successful_adding" => "You have successfully added Gift Card", + "successful_bulk_edit" => "You have successfully updated the selected Gift Card(s)", + "successful_deleted" => "You have successfully deleted", + "successful_updating" => "You have successfully updated Gift Card", + "supplier" => "Supplier", + "tax_1" => "Tax 1", + "tax_2" => "Tax 2", + "tax_percent" => "Tax Percent", + "tax_percents" => "Tax Percent(s)", + "unit_price" => "Retail Value", + "upc_database" => "Barcode Database", + "update" => "Update Gift Card", + "use_inventory_menu" => "Use Inventory Menu", + "value" => "Gift Card Value must be a number.", + "value_required" => "Gift Card Value is a required field.", ]; diff --git a/app/Language/lo/Item_kits.php b/app/Language/lo/Item_kits.php index 82f110b67..a1562c51b 100644 --- a/app/Language/lo/Item_kits.php +++ b/app/Language/lo/Item_kits.php @@ -1,41 +1,41 @@ "ເພີ່ມລາຍການສິນຄ້າແບບຊຸດ", - "all" => "ທັງຫມົດ", - "cannot_be_deleted" => "ການລຶບສິນຄ້າຊຸດລົ້ມເຫຼວ.", - "confirm_delete" => "ທ່ານຕ້ອງການລຶບລາຍການຊຸດສິນຄ້າແທ້ບໍ່ ?", - "confirm_restore" => "", - "description" => "ລາຍລະອຽດຂອງຊຸດສິນຄ້າ", - "discount" => "", - "discount_fixed" => "", - "discount_percent" => "ອັດຕາສ່ວນຫຼຸດ", - "discount_type" => "", - "error_adding_updating" => "ການເພີ່ມຊຸດສິນຄ້າ ແລະ ການປັບປຸງຊຸດສິນຄ້າລົ້ມເຫຼວ.", - "find_kit_item" => "ຊຸດສິນຄ້າ", - "info" => "ຂໍ້ມູນຊຸດສິນຄ້າ", - "item" => "ສິນຄ້າ", - "item_kit_number" => "", - "item_kit_number_duplicate" => "", - "item_number" => "", - "item_number_duplicate" => "", - "items" => "ສິນຄ້າ", - "kit" => "ID ຊຸດສິນຄ້າ", - "kit_and_components" => "ສ່ວນປະກອບ ແລະ ຊຸດສິນຄ້າ", - "kit_and_stock" => "ສາງ ແລະ ຊຸດສິນຄ້າ", - "kit_only" => "ຊຸດສິນຄ້າພຽງຢ່າງດຽວ", - "name" => "ຊື່ຊຸດສິນຄ້າ", - "new" => "ສ້າງຊຸດສິນຄ້າໃຫມ່", - "no_item_kits_to_display" => "ບໍ່ມີຊຸດສິນຄ້າເພື່ອສະແດງ.", - "none_selected" => "ທ່ານຍັງບໍ່ທັນໄດ້ເລືອກຊຸດສິນຄ້າເທື່ອ.", - "one_or_multiple" => "ຊຸດສິນຄ້າ", - "price_option" => "ໂຕເລືອກສຳລັບລາຄາ", - "priced_only" => "ລາຄາຢ່າງດຽວ", - "print_option" => "ໂຕເລືອກດ້ານການພິມ", - "quantity" => "ຈຳນວນຊຸດສິນຄ້າ", - "sequence" => "ລຳດັບຊຸດສິນຄ້າ", - "successful_adding" => "ທ່ານໄດ້ເພີ່ມຊຸດສິນຄ້າໃຫມ່ສຳເລັດແລ້ວ", - "successful_deleted" => "ທ່ານໄດ້ລຶບຊຸດສິນຄ້າສຳເລັດແລ້ວ", - "successful_updating" => "ທ່ານໄດ້ແກ້ໄຂຂໍ້ມູນຊຸດສິນຄ້າສຳເລັດແລ້ວ", - "unit_price" => "", - "update" => "ແກ້ໄຂຂໍ້ມູນຊຸດສິນຄ້າ", + "add_item" => "ເພີ່ມລາຍການສິນຄ້າແບບຊຸດ", + "all" => "ທັງຫມົດ", + "cannot_be_deleted" => "ການລຶບສິນຄ້າຊຸດລົ້ມເຫຼວ.", + "confirm_delete" => "ທ່ານຕ້ອງການລຶບລາຍການຊຸດສິນຄ້າແທ້ບໍ່ ?", + "confirm_restore" => "", + "description" => "ລາຍລະອຽດຂອງຊຸດສິນຄ້າ", + "discount" => "", + "discount_fixed" => "", + "discount_percent" => "ອັດຕາສ່ວນຫຼຸດ", + "discount_type" => "", + "error_adding_updating" => "ການເພີ່ມຊຸດສິນຄ້າ ແລະ ການປັບປຸງຊຸດສິນຄ້າລົ້ມເຫຼວ.", + "find_kit_item" => "ຊຸດສິນຄ້າ", + "info" => "ຂໍ້ມູນຊຸດສິນຄ້າ", + "item" => "ສິນຄ້າ", + "item_kit_number" => "", + "item_kit_number_duplicate" => "", + "item_number" => "", + "item_number_duplicate" => "", + "items" => "ສິນຄ້າ", + "kit" => "ID ຊຸດສິນຄ້າ", + "kit_and_components" => "ສ່ວນປະກອບ ແລະ ຊຸດສິນຄ້າ", + "kit_and_stock" => "ສາງ ແລະ ຊຸດສິນຄ້າ", + "kit_only" => "ຊຸດສິນຄ້າພຽງຢ່າງດຽວ", + "name" => "ຊື່ຊຸດສິນຄ້າ", + "new" => "ສ້າງຊຸດສິນຄ້າໃຫມ່", + "no_item_kits_to_display" => "ບໍ່ມີຊຸດສິນຄ້າເພື່ອສະແດງ.", + "none_selected" => "ທ່ານຍັງບໍ່ທັນໄດ້ເລືອກຊຸດສິນຄ້າເທື່ອ.", + "one_or_multiple" => "ຊຸດສິນຄ້າ", + "price_option" => "ໂຕເລືອກສຳລັບລາຄາ", + "priced_only" => "ລາຄາຢ່າງດຽວ", + "print_option" => "ໂຕເລືອກດ້ານການພິມ", + "quantity" => "ຈຳນວນຊຸດສິນຄ້າ", + "sequence" => "ລຳດັບຊຸດສິນຄ້າ", + "successful_adding" => "ທ່ານໄດ້ເພີ່ມຊຸດສິນຄ້າໃຫມ່ສຳເລັດແລ້ວ", + "successful_deleted" => "ທ່ານໄດ້ລຶບຊຸດສິນຄ້າສຳເລັດແລ້ວ", + "successful_updating" => "ທ່ານໄດ້ແກ້ໄຂຂໍ້ມູນຊຸດສິນຄ້າສຳເລັດແລ້ວ", + "unit_price" => "", + "update" => "ແກ້ໄຂຂໍ້ມູນຊຸດສິນຄ້າ", ]; diff --git a/app/Language/lo/Items.php b/app/Language/lo/Items.php index bac76ad5d..cd1c068d7 100644 --- a/app/Language/lo/Items.php +++ b/app/Language/lo/Items.php @@ -1,120 +1,120 @@ "ເພີ່ມຫລືຫລຸດປະລິມານສິນຄ້າໃນສາງ", - "allow_alt_description" => "ອະນຸຍາດໃຫ້ມີລາຍລະອຽດເສີມ", - "amount_entry" => "", - "bulk_edit" => "ແກ້ໄຂເປັນກຸ່ມ", - "buy_price_required" => "ກະລຸນາກຳນົດລາຄາ.", - "cannot_be_deleted" => "ບໍ່ສາມາດລຶບສິນຄ້າທີ່ເລືອກໄດ້, ໃນສິນຄ້າທີ່ເລືອກໄດ້ມີການຂາຍແລ້ວ.", - "cannot_find_item" => "ບໍ່ພົບສິນຄ້າ.", - "categories" => "", - "category" => "ປະເພດສິນຄ້າ", - "category_new" => "", - "category_required" => "ກະລຸນາກຳນົດປະເພດສິນຄ້າ.", - "change_all_to_allow_alt_desc" => "ອະນຸບາດໃຫ້ມີລາຍລະອຽດເສີມທຸກສິນຄ້າ.", - "change_all_to_not_allow_allow_desc" => "ບໍ່ອະນຸຍາດໃຫ້ມີລາຍລະອຽດເສີດທຸກສິນຄ້າ.", - "change_all_to_serialized" => "ປ່ຽນທັງຫມົດໃຫ້ເປັນເລກລຽງ", - "change_all_to_unserialized" => "ປ່ຽນທັງຫມົດໃຫ້ເປັນເລກບໍ່ລຽງ", - "change_image" => "ປ່ຽນຮູບ", - "confirm_bulk_edit" => "ທ່ານຕ້ອງການລຶບສິນຄ້າທີ່ເລືອກໄວ້ບໍ່?", - "confirm_bulk_edit_wipe_taxes" => "ຂໍ້ມູນພາສີຂອງທຸກສິນຄ້າຈະຖືກປ່ຽນແທນ.", - "confirm_delete" => "ທ່ານຕ້ອງການລຶບສິນຄ້າທີ່ເລືອກໄວ້ຫລືບໍ່?", - "confirm_restore" => "", - "cost_price" => "ລາຄາຕົ້ນທຶນ", - "cost_price_number" => "ລາຄາຕົ້ນທຶນຕ້ອງເປັນຕົວເລກເທົ່ານັ້ນ.", - "cost_price_required" => "ກະລຸນາກຳນົດລາຄາຕົ້ນທຶນ.", - "count" => "ອັບເດດປະລິມານສິນຄ້າໃນສາງ", - "csv_import_failed" => "CSV import failed", - "csv_import_nodata_wrongformat" => "The uploaded file has no data or is formatted incorrectly.", - "csv_import_partially_failed" => "Item import successful with some failures:", - "csv_import_success" => "Item import successful.", - "current_quantity" => "ປະລິມານເຄື່ອງປັດຈຸບັນ", - "default_pack_name" => "", - "description" => "ລາຍລະອຽດສິນຄ້່າ", - "details_count" => "ນັບສິນຄ້າໃນສາງ", - "do_nothing" => "Do Nothing", - "edit" => "", - "edit_fields_you_want_to_update" => "Edit the desired fields for selected item(s).", - "edit_multiple_items" => "Editing Multiple Items", - "empty_upc_items" => "Empty Barcode Items", - "error_adding_updating" => "Error adding/updating item", - "error_updating_multiple" => "Error updating items", - "generate_barcodes" => "Generate Barcodes", - "hsn_code" => "", - "image" => "Avatar", - "import_items_csv" => "Item Import from CSV", - "info_provided_by" => "Information provided by", - "inventory" => "Inventory", - "inventory_CSV_import_quantity" => "", - "inventory_comments" => "Comments", - "inventory_data_tracking" => "Inventory Data Tracking", - "inventory_date" => "Date", - "inventory_employee" => "Employee", - "inventory_in_out_quantity" => "In/Out Quantity", - "inventory_remarks" => "Remarks", - "is_deleted" => "Deleted", - "is_printed" => "", - "is_serialized" => "Item has Serial Number", - "item" => "Item", - "item_id" => "", - "item_number" => "Barcode", - "item_number_duplicate" => "Item Number is already present in the database.", - "kit" => "Kit", - "location" => "Location", - "low_inventory_items" => "Out Of Stock Items", - "low_sell_item" => "", - "manually_editing_of_quantity" => "Manual Edit of Quantity", - "markup" => "", - "name" => "Item Name", - "name_required" => "Item Name is a required field.", - "new" => "New Item", - "no_description_items" => "No Description Items", - "no_items_to_display" => "No Items to display.", - "none" => "None", - "none_selected" => "You have not selected any Item(s) to edit", - "nonstock" => "Non-stocked", - "number_information" => "Item Number", - "number_required" => "Barcode is a required field.", - "one_or_multiple" => "item(s)", - "pack_name" => "", - "qty_per_pack" => "", - "quantity" => "Quantity", - "quantity_number" => "Quantity must be a number.", - "quantity_required" => "Quantity is a required field.", - "receiving_quantity" => "Receiving Quantity", - "remove_image" => "Remove Image", - "reorder_level" => "Reorder Level", - "reorder_level_number" => "Reorder Level must be a number.", - "reorder_level_required" => "Reorder Level is a required field.", - "retrive_item_info" => "Retrive Item Info", - "sales_tax_1" => "Sales Tax", - "sales_tax_2" => "Sales Tax 2", - "search_attributes" => "Search Attributes", - "select_image" => "Select Image", - "serialized_items" => "Serialized Items", - "standard" => "Standard", - "stock" => "Stock", - "stock_location" => "Stock location", - "stock_type" => "Stock Type", - "successful_adding" => "You have successfully added item", - "successful_bulk_edit" => "You have successfully updated the selected item(s)", - "successful_deleted" => "You have successfully deleted", - "successful_updating" => "You have successfully updated item", - "supplier" => "Supplier", - "tax_1" => "Tax 1", - "tax_2" => "Tax 2", - "tax_3" => "", - "tax_category" => "", - "tax_percent" => "Tax Percent", - "tax_percent_number" => "", - "tax_percent_required" => "Tax Percent is a required field.", - "tax_percents" => "Tax Percent(s)", - "temp" => "", - "type" => "Item Type", - "unit_price" => "Retail Price", - "unit_price_number" => "Unit price must be a number.", - "unit_price_required" => "Retail Price is a required field.", - "upc_database" => "Barcode Database", - "update" => "Update Item", - "use_inventory_menu" => "Use Inventory Menu", + "add_minus" => "ເພີ່ມຫລືຫລຸດປະລິມານສິນຄ້າໃນສາງ", + "allow_alt_description" => "ອະນຸຍາດໃຫ້ມີລາຍລະອຽດເສີມ", + "amount_entry" => "", + "bulk_edit" => "ແກ້ໄຂເປັນກຸ່ມ", + "buy_price_required" => "ກະລຸນາກຳນົດລາຄາ.", + "cannot_be_deleted" => "ບໍ່ສາມາດລຶບສິນຄ້າທີ່ເລືອກໄດ້, ໃນສິນຄ້າທີ່ເລືອກໄດ້ມີການຂາຍແລ້ວ.", + "cannot_find_item" => "ບໍ່ພົບສິນຄ້າ.", + "categories" => "", + "category" => "ປະເພດສິນຄ້າ", + "category_new" => "", + "category_required" => "ກະລຸນາກຳນົດປະເພດສິນຄ້າ.", + "change_all_to_allow_alt_desc" => "ອະນຸບາດໃຫ້ມີລາຍລະອຽດເສີມທຸກສິນຄ້າ.", + "change_all_to_not_allow_allow_desc" => "ບໍ່ອະນຸຍາດໃຫ້ມີລາຍລະອຽດເສີດທຸກສິນຄ້າ.", + "change_all_to_serialized" => "ປ່ຽນທັງຫມົດໃຫ້ເປັນເລກລຽງ", + "change_all_to_unserialized" => "ປ່ຽນທັງຫມົດໃຫ້ເປັນເລກບໍ່ລຽງ", + "change_image" => "ປ່ຽນຮູບ", + "confirm_bulk_edit" => "ທ່ານຕ້ອງການລຶບສິນຄ້າທີ່ເລືອກໄວ້ບໍ່?", + "confirm_bulk_edit_wipe_taxes" => "ຂໍ້ມູນພາສີຂອງທຸກສິນຄ້າຈະຖືກປ່ຽນແທນ.", + "confirm_delete" => "ທ່ານຕ້ອງການລຶບສິນຄ້າທີ່ເລືອກໄວ້ຫລືບໍ່?", + "confirm_restore" => "", + "cost_price" => "ລາຄາຕົ້ນທຶນ", + "cost_price_number" => "ລາຄາຕົ້ນທຶນຕ້ອງເປັນຕົວເລກເທົ່ານັ້ນ.", + "cost_price_required" => "ກະລຸນາກຳນົດລາຄາຕົ້ນທຶນ.", + "count" => "ອັບເດດປະລິມານສິນຄ້າໃນສາງ", + "csv_import_failed" => "CSV import failed", + "csv_import_nodata_wrongformat" => "The uploaded file has no data or is formatted incorrectly.", + "csv_import_partially_failed" => "Item import successful with some failures:", + "csv_import_success" => "Item import successful.", + "current_quantity" => "ປະລິມານເຄື່ອງປັດຈຸບັນ", + "default_pack_name" => "", + "description" => "ລາຍລະອຽດສິນຄ້່າ", + "details_count" => "ນັບສິນຄ້າໃນສາງ", + "do_nothing" => "Do Nothing", + "edit" => "", + "edit_fields_you_want_to_update" => "Edit the desired fields for selected item(s).", + "edit_multiple_items" => "Editing Multiple Items", + "empty_upc_items" => "Empty Barcode Items", + "error_adding_updating" => "Error adding/updating item", + "error_updating_multiple" => "Error updating items", + "generate_barcodes" => "Generate Barcodes", + "hsn_code" => "", + "image" => "Avatar", + "import_items_csv" => "Item Import from CSV", + "info_provided_by" => "Information provided by", + "inventory" => "Inventory", + "inventory_CSV_import_quantity" => "", + "inventory_comments" => "Comments", + "inventory_data_tracking" => "Inventory Data Tracking", + "inventory_date" => "Date", + "inventory_employee" => "Employee", + "inventory_in_out_quantity" => "In/Out Quantity", + "inventory_remarks" => "Remarks", + "is_deleted" => "Deleted", + "is_printed" => "", + "is_serialized" => "Item has Serial Number", + "item" => "Item", + "item_id" => "", + "item_number" => "Barcode", + "item_number_duplicate" => "Item Number is already present in the database.", + "kit" => "Kit", + "location" => "Location", + "low_inventory_items" => "Out Of Stock Items", + "low_sell_item" => "", + "manually_editing_of_quantity" => "Manual Edit of Quantity", + "markup" => "", + "name" => "Item Name", + "name_required" => "Item Name is a required field.", + "new" => "New Item", + "no_description_items" => "No Description Items", + "no_items_to_display" => "No Items to display.", + "none" => "None", + "none_selected" => "You have not selected any Item(s) to edit", + "nonstock" => "Non-stocked", + "number_information" => "Item Number", + "number_required" => "Barcode is a required field.", + "one_or_multiple" => "item(s)", + "pack_name" => "", + "qty_per_pack" => "", + "quantity" => "Quantity", + "quantity_number" => "Quantity must be a number.", + "quantity_required" => "Quantity is a required field.", + "receiving_quantity" => "Receiving Quantity", + "remove_image" => "Remove Image", + "reorder_level" => "Reorder Level", + "reorder_level_number" => "Reorder Level must be a number.", + "reorder_level_required" => "Reorder Level is a required field.", + "retrive_item_info" => "Retrive Item Info", + "sales_tax_1" => "Sales Tax", + "sales_tax_2" => "Sales Tax 2", + "search_attributes" => "Search Attributes", + "select_image" => "Select Image", + "serialized_items" => "Serialized Items", + "standard" => "Standard", + "stock" => "Stock", + "stock_location" => "Stock location", + "stock_type" => "Stock Type", + "successful_adding" => "You have successfully added item", + "successful_bulk_edit" => "You have successfully updated the selected item(s)", + "successful_deleted" => "You have successfully deleted", + "successful_updating" => "You have successfully updated item", + "supplier" => "Supplier", + "tax_1" => "Tax 1", + "tax_2" => "Tax 2", + "tax_3" => "", + "tax_category" => "", + "tax_percent" => "Tax Percent", + "tax_percent_number" => "", + "tax_percent_required" => "Tax Percent is a required field.", + "tax_percents" => "Tax Percent(s)", + "temp" => "", + "type" => "Item Type", + "unit_price" => "Retail Price", + "unit_price_number" => "Unit price must be a number.", + "unit_price_required" => "Retail Price is a required field.", + "upc_database" => "Barcode Database", + "update" => "Update Item", + "use_inventory_menu" => "Use Inventory Menu", ]; diff --git a/app/Language/lo/Login.php b/app/Language/lo/Login.php index 3bb9ed866..f07c5e037 100644 --- a/app/Language/lo/Login.php +++ b/app/Language/lo/Login.php @@ -1,15 +1,15 @@ "ຂ້ອຍບໍ່ແມ່ນເຄື່ອງຈັກ.", - "go" => "Go", - "invalid_gcaptcha" => "ຍັງບໍ່ໄດ້ຕິກ ຂ້ອຍບໍ່ແມ່ນເຄື່ອງຈັກ.", - "invalid_installation" => "ການຕິດຕັ້ງມີຂໍ້ຜິດພາດ, ກະລຸນາກວດສອບ php.ini file.", - "invalid_username_and_password" => "Username ຫຼື Password ບໍ່ຖືກຕ້ອງ.", - "login" => "ເຂົ້າລະບົບ", - "logout" => "", - "migration_needed" => "", - "password" => "Password", - "required_username" => "", - "username" => "Username", - "welcome" => "", + "gcaptcha" => "ຂ້ອຍບໍ່ແມ່ນເຄື່ອງຈັກ.", + "go" => "Go", + "invalid_gcaptcha" => "ຍັງບໍ່ໄດ້ຕິກ ຂ້ອຍບໍ່ແມ່ນເຄື່ອງຈັກ.", + "invalid_installation" => "ການຕິດຕັ້ງມີຂໍ້ຜິດພາດ, ກະລຸນາກວດສອບ php.ini file.", + "invalid_username_and_password" => "Username ຫຼື Password ບໍ່ຖືກຕ້ອງ.", + "login" => "ເຂົ້າລະບົບ", + "logout" => "", + "migration_needed" => "", + "password" => "Password", + "required_username" => "", + "username" => "Username", + "welcome" => "", ]; diff --git a/app/Language/lo/Messages.php b/app/Language/lo/Messages.php index b6b36d361..d82f9112f 100644 --- a/app/Language/lo/Messages.php +++ b/app/Language/lo/Messages.php @@ -1,15 +1,15 @@ "ຊື່", - "last_name" => "ນາມສະກຸນ", - "message" => "ຂໍ້ຄວາມ", - "message_placeholder" => "ໃສ່ຂໍ້ຄວາມຂອງທ່ານບ່ອນນີ້...", - "message_required" => "ຂໍ້ຄວາມຈຳເປັນຕ້ອງໃສ່", - "multiple_phones" => "(ໃນກໍລະນີມີຜູ້ຮັບຫຼາຍຄົນ, ໃຫ້ໃສ່ເບີໂທຂັ້ນດ້ວຍໝາຍຈຸດ)", - "phone" => "ເບີໂທ", - "phone_number_required" => "ເບີໂທຈຳເປັນຕ້ອງໃສ່", - "phone_placeholder" => "ໃສ່ເບີໂທບ່ອນນີ້...", - "sms_send" => "ສົ່ງ SMS", - "successfully_sent" => "ສົ່ງຂໍ້ຄວາມສຳເລັດ ໄປຫາ: ", - "unsuccessfully_sent" => "ສົ່ງຂໍ້ຄວາມບໍ່ສຳເລັດ ໄປຫາ: ", + "first_name" => "ຊື່", + "last_name" => "ນາມສະກຸນ", + "message" => "ຂໍ້ຄວາມ", + "message_placeholder" => "ໃສ່ຂໍ້ຄວາມຂອງທ່ານບ່ອນນີ້...", + "message_required" => "ຂໍ້ຄວາມຈຳເປັນຕ້ອງໃສ່", + "multiple_phones" => "(ໃນກໍລະນີມີຜູ້ຮັບຫຼາຍຄົນ, ໃຫ້ໃສ່ເບີໂທຂັ້ນດ້ວຍໝາຍຈຸດ)", + "phone" => "ເບີໂທ", + "phone_number_required" => "ເບີໂທຈຳເປັນຕ້ອງໃສ່", + "phone_placeholder" => "ໃສ່ເບີໂທບ່ອນນີ້...", + "sms_send" => "ສົ່ງ SMS", + "successfully_sent" => "ສົ່ງຂໍ້ຄວາມສຳເລັດ ໄປຫາ: ", + "unsuccessfully_sent" => "ສົ່ງຂໍ້ຄວາມບໍ່ສຳເລັດ ໄປຫາ: ", ]; diff --git a/app/Language/lo/Module.php b/app/Language/lo/Module.php index ff7129f05..dedc913d6 100644 --- a/app/Language/lo/Module.php +++ b/app/Language/lo/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "", - "attributes_desc" => "", - "both" => "Both", - "cashups" => "", - "cashups_desc" => "", - "config" => "Configuration", - "config_desc" => "Change OSPOS's Configuration.", - "customers" => "Customers", - "customers_desc" => "Add, Update, Delete, and Search Customers.", - "employees" => "Employees", - "employees_desc" => "Add, Update, Delete, and Search Employees.", - "expenses" => "Expenses", - "expenses_categories" => "Expenses Categories", - "expenses_categories_desc" => "Add, Update, and Delete Expenses Categories.", - "expenses_desc" => "Add, Update, Delete, and Search Expenses.", - "giftcards" => "Gift Cards", - "giftcards_desc" => "Add, Update, Delete and Search Gift Cards.", - "home" => "Home", - "home_desc" => "List home menu modules.", - "item_kits" => "Item Kits", - "item_kits_desc" => "Add, Update, Delete and Search Item Kits.", - "items" => "Items", - "items_desc" => "Add, Update, Delete, and Search Items.", - "messages" => "Messages", - "messages_desc" => "Send Messages to Customers, Suppliers and Employees.", - "migrate" => "Migrate", - "migrate_desc" => "Update the OSPOS Database.", - "office" => "Office", - "office_desc" => "List office menu modules.", - "receivings" => "Receivings", - "receivings_desc" => "Process Purchase Orders.", - "reports" => "Reports", - "reports_desc" => "View and generate Reports.", - "sales" => "Sales", - "sales_desc" => "Process Sales and Returns.", - "suppliers" => "Suppliers", - "suppliers_desc" => "Add, Update, Delete, and Search Suppliers.", - "taxes" => "Taxes", - "taxes_desc" => "Configure Sales Taxes.", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "", + "attributes_desc" => "", + "both" => "Both", + "cashups" => "", + "cashups_desc" => "", + "config" => "Configuration", + "config_desc" => "Change OSPOS's Configuration.", + "customers" => "Customers", + "customers_desc" => "Add, Update, Delete, and Search Customers.", + "employees" => "Employees", + "employees_desc" => "Add, Update, Delete, and Search Employees.", + "expenses" => "Expenses", + "expenses_categories" => "Expenses Categories", + "expenses_categories_desc" => "Add, Update, and Delete Expenses Categories.", + "expenses_desc" => "Add, Update, Delete, and Search Expenses.", + "giftcards" => "Gift Cards", + "giftcards_desc" => "Add, Update, Delete and Search Gift Cards.", + "home" => "Home", + "home_desc" => "List home menu modules.", + "item_kits" => "Item Kits", + "item_kits_desc" => "Add, Update, Delete and Search Item Kits.", + "items" => "Items", + "items_desc" => "Add, Update, Delete, and Search Items.", + "messages" => "Messages", + "messages_desc" => "Send Messages to Customers, Suppliers and Employees.", + "migrate" => "Migrate", + "migrate_desc" => "Update the OSPOS Database.", + "office" => "Office", + "office_desc" => "List office menu modules.", + "receivings" => "Receivings", + "receivings_desc" => "Process Purchase Orders.", + "reports" => "Reports", + "reports_desc" => "View and generate Reports.", + "sales" => "Sales", + "sales_desc" => "Process Sales and Returns.", + "suppliers" => "Suppliers", + "suppliers_desc" => "Add, Update, Delete, and Search Suppliers.", + "taxes" => "Taxes", + "taxes_desc" => "Configure Sales Taxes.", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/lo/Receivings.php b/app/Language/lo/Receivings.php index c3f8eacca..2869cdc96 100644 --- a/app/Language/lo/Receivings.php +++ b/app/Language/lo/Receivings.php @@ -1,58 +1,58 @@ "", - "cancel_receiving" => "Cancel", - "cannot_be_deleted" => "Receiving(s) delete failed.", - "comments" => "Comments", - "complete_receiving" => "Finish", - "confirm_cancel_receiving" => "Are you sure you want to clear this receiving? All items will cleared.", - "confirm_delete" => "Are you sure you want to delete this receiving? This action cannot be undone.", - "confirm_finish_receiving" => "Are you sure you want to submit this receiving? This cannot be undone.", - "confirm_restore" => "", - "cost" => "Cost", - "daily" => "", - "date" => "Receiving Date", - "date_required" => "A correct date must be entered.", - "date_type" => "Date is a required field.", - "delete_entire_sale" => "Delete Entire Sale", - "discount" => "Discount %", - "edit" => "Edit", - "edit_sale" => "Edit Receiving", - "employee" => "Employee", - "error_editing_item" => "Item edit failed.", - "error_requisition" => "Unable to move Inventory from or to the same Stock Location.", - "find_or_scan_item" => "Find or Scan Item", - "find_or_scan_item_or_receipt" => "Find or Scan Item or Receipt", - "id" => "Receiving ID", - "item_name" => "Item Name", - "mode" => "Receiving Mode", - "new_supplier" => "New Supplier", - "one_or_multiple" => "receiving(s)", - "print_after_sale" => "Print After Sale", - "quantity" => "Qty.", - "receipt" => "Receivings Receipt", - "receipt_number" => "Receiving #", - "receiving" => "Receive", - "reference" => "Reference", - "register" => "Items Receiving", - "requisition" => "Requisition", - "return" => "Return", - "select_supplier" => "Select Supplier (Optional)", - "ship_pack" => "", - "start_typing_supplier_name" => "Start Typing Supplier's name...", - "stock" => "", - "stock_destination" => "Stock Destination", - "stock_locaiton" => "Stock Location", - "stock_source" => "Stock Source", - "successfully_deleted" => "You have successfully deleted", - "successfully_updated" => "Receiving successfully updated", - "supplier" => "Supplier", - "supplier_address" => "Address", - "supplier_email" => "Email", - "supplier_location" => "Location", - "total" => "Total", - "transaction_failed" => "Receivings transaction(s) failed.", - "unable_to_add_item" => "Item add to Receiving failed.", - "unsuccessfully_updated" => "Receiving update failed.", - "update" => "Update", + "amount_due" => "", + "cancel_receiving" => "Cancel", + "cannot_be_deleted" => "Receiving(s) delete failed.", + "comments" => "Comments", + "complete_receiving" => "Finish", + "confirm_cancel_receiving" => "Are you sure you want to clear this receiving? All items will cleared.", + "confirm_delete" => "Are you sure you want to delete this receiving? This action cannot be undone.", + "confirm_finish_receiving" => "Are you sure you want to submit this receiving? This cannot be undone.", + "confirm_restore" => "", + "cost" => "Cost", + "daily" => "", + "date" => "Receiving Date", + "date_required" => "A correct date must be entered.", + "date_type" => "Date is a required field.", + "delete_entire_sale" => "Delete Entire Sale", + "discount" => "Discount %", + "edit" => "Edit", + "edit_sale" => "Edit Receiving", + "employee" => "Employee", + "error_editing_item" => "Item edit failed.", + "error_requisition" => "Unable to move Inventory from or to the same Stock Location.", + "find_or_scan_item" => "Find or Scan Item", + "find_or_scan_item_or_receipt" => "Find or Scan Item or Receipt", + "id" => "Receiving ID", + "item_name" => "Item Name", + "mode" => "Receiving Mode", + "new_supplier" => "New Supplier", + "one_or_multiple" => "receiving(s)", + "print_after_sale" => "Print After Sale", + "quantity" => "Qty.", + "receipt" => "Receivings Receipt", + "receipt_number" => "Receiving #", + "receiving" => "Receive", + "reference" => "Reference", + "register" => "Items Receiving", + "requisition" => "Requisition", + "return" => "Return", + "select_supplier" => "Select Supplier (Optional)", + "ship_pack" => "", + "start_typing_supplier_name" => "Start Typing Supplier's name...", + "stock" => "", + "stock_destination" => "Stock Destination", + "stock_locaiton" => "Stock Location", + "stock_source" => "Stock Source", + "successfully_deleted" => "You have successfully deleted", + "successfully_updated" => "Receiving successfully updated", + "supplier" => "Supplier", + "supplier_address" => "Address", + "supplier_email" => "Email", + "supplier_location" => "Location", + "total" => "Total", + "transaction_failed" => "Receivings transaction(s) failed.", + "unable_to_add_item" => "Item add to Receiving failed.", + "unsuccessfully_updated" => "Receiving update failed.", + "update" => "Update", ]; diff --git a/app/Language/lo/Reports.php b/app/Language/lo/Reports.php index f6be9f146..017931458 100644 --- a/app/Language/lo/Reports.php +++ b/app/Language/lo/Reports.php @@ -1,148 +1,148 @@ "All", - "authority" => "", - "canceled" => "Canceled", - "categories" => "Categories", - "categories_summary_report" => "Categories Summary Report", - "category" => "Category", - "code_canceled" => "CNL", - "code_invoice" => "INV", - "code_pos" => "", - "code_quote" => "Q", - "code_return" => "RET", - "code_type" => "Type", - "code_work_order" => "W/O", - "comments" => "Comments", - "commission" => "", - "complete" => "Completed Sales and Returns", - "completed_sales" => "Completed Sales", - "confirm_delete" => "", - "confirm_restore" => "", - "cost" => "Wholesale", - "cost_price" => "Wholesale Price", - "count" => "Count", - "customer" => "Customer", - "customers" => "Customers", - "customers_summary_report" => "Customers Summary Report", - "date" => "Date", - "date_range" => "Date Range", - "description" => "Description", - "detailed_receivings_report" => "Detailed Receivings Report", - "detailed_receivings_report_input" => "", - "detailed_reports" => "Detailed Reports", - "detailed_requisition_report" => "", - "detailed_sales_report" => "Detailed Transactions Report", - "discount" => "Discount", - "discount_fixed" => "", - "discount_percent" => "Discount Percent", - "discount_type" => "", - "discounts" => "Discounts", - "discounts_summary_report" => "Discounts Summary Report", - "earned" => "Points Earned", - "employee" => "Employee", - "employees" => "Employees", - "employees_summary_report" => "Employees Summary Report", - "expenses" => "", - "expenses_amount" => "Amount", - "expenses_categories" => "Expenses", - "expenses_categories_summary_report" => "Expense Categories Summary Report", - "expenses_category" => "Category", - "expenses_payment_amount" => "", - "expenses_tax_amount" => "Tax", - "expenses_total_amount" => "Total Amount", - "expenses_total_tax_amount" => "Total Tax", - "graphical_reports" => "Graphical Reports", - "inventory" => "Inventory", - "inventory_low" => "Low Inventory", - "inventory_low_report" => "Low Inventory Report", - "inventory_reports" => "Inventory Reports", - "inventory_summary" => "Inventory Summary", - "inventory_summary_report" => "Inventory Summary Report", - "item" => "Item", - "item_count" => "Filter Item Count", - "item_name" => "Item Name", - "item_number" => "Barcode", - "items" => "Items", - "items_purchased" => "Items Purchased", - "items_received" => "Items Received", - "items_summary_report" => "Items Summary Report", - "jurisdiction" => "", - "low_inventory" => "", - "low_inventory_report" => "", - "low_sell_quantity" => "", - "more_than_zero" => "More than zero", - "name" => "Name", - "no_reports_to_display" => "No Items to display.", - "payment_type" => "Payment Type", - "payments" => "Payments", - "payments_summary_report" => "Payments Summary Report", - "profit" => "Profit", - "quantity" => "Quantity", - "quantity_purchased" => "Quantity Purchased", - "quotes" => "Quotes", - "received_by" => "Received By", - "receiving_id" => "Receiving ID", - "receiving_type" => "Receiving Type", - "receivings" => "Receivings", - "reorder_level" => "Reorder Level", - "report" => "Report", - "report_input" => "Report Input", - "reports" => "Reports", - "requisition" => "", - "requisition_by" => "", - "requisition_id" => "", - "requisition_item" => "", - "requisition_item_quantity" => "", - "requisition_related_item" => "", - "requisition_related_item_total_quantity" => "", - "requisition_related_item_unit_quantity" => "", - "requisitions" => "Requisitions", - "returns" => "Returns", - "revenue" => "Revenue", - "sale_id" => "Trans. ID", - "sale_type" => "Transaction Type", - "sales" => "Transactions", - "sales_amount" => "Transactions amount", - "sales_summary_report" => "Transactions Summary Report", - "sales_taxes" => "", - "sales_taxes_summary_report" => "", - "serial_number" => "Serial Number", - "service_charge" => "", - "sold_by" => "Sold By", - "sold_items" => "", - "sold_to" => "Sold To", - "stock_location" => "Stock Location", - "sub_total_value" => "Subtotal", - "subtotal" => "Subtotal", - "summary_reports" => "Summary Reports", - "supplied_by" => "Supplied by", - "supplier" => "Supplier", - "suppliers" => "Suppliers", - "suppliers_summary_report" => "Suppliers Summary Report", - "tax" => "Tax", - "tax_category" => "", - "tax_name" => "", - "tax_percent" => "Tax Percent", - "tax_rate" => "", - "taxes" => "Taxes", - "taxes_summary_report" => "Taxes Summary Report", - "total" => "Total", - "total_inventory_value" => "Total Inventory Value", - "total_low_sell_quantity" => "", - "total_quantity" => "Total Quantity", - "total_retail" => "Total Inv. Retail Value", - "trans_amount" => "", - "trans_due" => "", - "trans_group" => "", - "trans_nopay_sales" => "", - "trans_payments" => "", - "trans_refunded" => "", - "trans_sales" => "", - "trans_type" => "", - "type" => "Type", - "unit_price" => "Retail Price", - "used" => "Points Used", - "work_orders" => "Work Orders", - "zero_and_less" => "Zero and less", + "all" => "All", + "authority" => "", + "canceled" => "Canceled", + "categories" => "Categories", + "categories_summary_report" => "Categories Summary Report", + "category" => "Category", + "code_canceled" => "CNL", + "code_invoice" => "INV", + "code_pos" => "", + "code_quote" => "Q", + "code_return" => "RET", + "code_type" => "Type", + "code_work_order" => "W/O", + "comments" => "Comments", + "commission" => "", + "complete" => "Completed Sales and Returns", + "completed_sales" => "Completed Sales", + "confirm_delete" => "", + "confirm_restore" => "", + "cost" => "Wholesale", + "cost_price" => "Wholesale Price", + "count" => "Count", + "customer" => "Customer", + "customers" => "Customers", + "customers_summary_report" => "Customers Summary Report", + "date" => "Date", + "date_range" => "Date Range", + "description" => "Description", + "detailed_receivings_report" => "Detailed Receivings Report", + "detailed_receivings_report_input" => "", + "detailed_reports" => "Detailed Reports", + "detailed_requisition_report" => "", + "detailed_sales_report" => "Detailed Transactions Report", + "discount" => "Discount", + "discount_fixed" => "", + "discount_percent" => "Discount Percent", + "discount_type" => "", + "discounts" => "Discounts", + "discounts_summary_report" => "Discounts Summary Report", + "earned" => "Points Earned", + "employee" => "Employee", + "employees" => "Employees", + "employees_summary_report" => "Employees Summary Report", + "expenses" => "", + "expenses_amount" => "Amount", + "expenses_categories" => "Expenses", + "expenses_categories_summary_report" => "Expense Categories Summary Report", + "expenses_category" => "Category", + "expenses_payment_amount" => "", + "expenses_tax_amount" => "Tax", + "expenses_total_amount" => "Total Amount", + "expenses_total_tax_amount" => "Total Tax", + "graphical_reports" => "Graphical Reports", + "inventory" => "Inventory", + "inventory_low" => "Low Inventory", + "inventory_low_report" => "Low Inventory Report", + "inventory_reports" => "Inventory Reports", + "inventory_summary" => "Inventory Summary", + "inventory_summary_report" => "Inventory Summary Report", + "item" => "Item", + "item_count" => "Filter Item Count", + "item_name" => "Item Name", + "item_number" => "Barcode", + "items" => "Items", + "items_purchased" => "Items Purchased", + "items_received" => "Items Received", + "items_summary_report" => "Items Summary Report", + "jurisdiction" => "", + "low_inventory" => "", + "low_inventory_report" => "", + "low_sell_quantity" => "", + "more_than_zero" => "More than zero", + "name" => "Name", + "no_reports_to_display" => "No Items to display.", + "payment_type" => "Payment Type", + "payments" => "Payments", + "payments_summary_report" => "Payments Summary Report", + "profit" => "Profit", + "quantity" => "Quantity", + "quantity_purchased" => "Quantity Purchased", + "quotes" => "Quotes", + "received_by" => "Received By", + "receiving_id" => "Receiving ID", + "receiving_type" => "Receiving Type", + "receivings" => "Receivings", + "reorder_level" => "Reorder Level", + "report" => "Report", + "report_input" => "Report Input", + "reports" => "Reports", + "requisition" => "", + "requisition_by" => "", + "requisition_id" => "", + "requisition_item" => "", + "requisition_item_quantity" => "", + "requisition_related_item" => "", + "requisition_related_item_total_quantity" => "", + "requisition_related_item_unit_quantity" => "", + "requisitions" => "Requisitions", + "returns" => "Returns", + "revenue" => "Revenue", + "sale_id" => "Trans. ID", + "sale_type" => "Transaction Type", + "sales" => "Transactions", + "sales_amount" => "Transactions amount", + "sales_summary_report" => "Transactions Summary Report", + "sales_taxes" => "", + "sales_taxes_summary_report" => "", + "serial_number" => "Serial Number", + "service_charge" => "", + "sold_by" => "Sold By", + "sold_items" => "", + "sold_to" => "Sold To", + "stock_location" => "Stock Location", + "sub_total_value" => "Subtotal", + "subtotal" => "Subtotal", + "summary_reports" => "Summary Reports", + "supplied_by" => "Supplied by", + "supplier" => "Supplier", + "suppliers" => "Suppliers", + "suppliers_summary_report" => "Suppliers Summary Report", + "tax" => "Tax", + "tax_category" => "", + "tax_name" => "", + "tax_percent" => "Tax Percent", + "tax_rate" => "", + "taxes" => "Taxes", + "taxes_summary_report" => "Taxes Summary Report", + "total" => "Total", + "total_inventory_value" => "Total Inventory Value", + "total_low_sell_quantity" => "", + "total_quantity" => "Total Quantity", + "total_retail" => "Total Inv. Retail Value", + "trans_amount" => "", + "trans_due" => "", + "trans_group" => "", + "trans_nopay_sales" => "", + "trans_payments" => "", + "trans_refunded" => "", + "trans_sales" => "", + "trans_type" => "", + "type" => "Type", + "unit_price" => "Retail Price", + "used" => "Points Used", + "work_orders" => "Work Orders", + "zero_and_less" => "Zero and less", ]; diff --git a/app/Language/lo/Sales.php b/app/Language/lo/Sales.php index f76cfd96f..9020d7a9a 100644 --- a/app/Language/lo/Sales.php +++ b/app/Language/lo/Sales.php @@ -1,224 +1,224 @@ "Available Points", - "rewards_package" => "Rewards", - "rewards_remaining_balance" => "Reward Points remaining value is ", - "account_number" => "", - "add_payment" => "Add Payment", - "amount_due" => "Amount Due", - "amount_tendered" => "Amount Tendered", - "authorized_signature" => "", - "cancel_sale" => "Cancel", - "cash" => "Cash", - "cash_1" => "", - "cash_2" => "", - "cash_3" => "", - "cash_4" => "", - "cash_adjustment" => "", - "cash_deposit" => "Cash Deposit", - "cash_filter" => "Cash", - "change_due" => "Change Due", - "change_price" => "", - "check" => "Check", - "check_balance" => "Check remainder", - "check_filter" => "Check", - "close" => "", - "comment" => "Comment", - "comments" => "Comments", - "company_name" => "", - "complete" => "", - "complete_sale" => "Complete", - "confirm_cancel_sale" => "Are you sure you want to clear this sale? All items will cleared.", - "confirm_delete" => "Are you sure you want to delete the selected Sale(s)?", - "confirm_restore" => "Are you sure you want to restore the selected Sale(s)?", - "credit" => "Credit Card", - "credit_deposit" => "Credit Deposit", - "credit_filter" => "", - "current_table" => "", - "customer" => "Name", - "customer_address" => "Address", - "customer_discount" => "Discount", - "customer_email" => "Email", - "customer_location" => "Location", - "customer_mailchimp_status" => "Mailchimp status", - "customer_optional" => "", - "customer_required" => "", - "customer_total" => "Total", - "customer_total_spent" => "", - "daily_sales" => "", - "date" => "Sale Date", - "date_range" => "Date Range", - "date_required" => "A correct date must be entered.", - "date_type" => "Date is a required field.", - "debit" => "Debit Card", - "debit_filter" => "", - "delete" => "Allow Delete", - "delete_confirmation" => "Are you sure you want to delete this sale? This action cannot be undone.", - "delete_entire_sale" => "Delete Entire Sale", - "delete_successful" => "Sale delete successful.", - "delete_unsuccessful" => "Sale delete failed.", - "description_abbrv" => "Desc.", - "discard" => "Discard", - "discard_quote" => "", - "discount" => "Disc %", - "discount_included" => "% Discount", - "discount_short" => "%", - "due" => "Due", - "due_filter" => "Due", - "edit" => "Edit", - "edit_item" => "Edit Item", - "edit_sale" => "Edit Sale", - "email_receipt" => "Email Receipt", - "employee" => "Employee", - "entry" => "Entry", - "error_editing_item" => "Error editing item", - "find_or_scan_item" => "Find or Scan Item", - "find_or_scan_item_or_receipt" => "Find or Scan Item or Receipt", - "giftcard" => "Gift Card", - "giftcard_balance" => "Gift Card Balance", - "giftcard_filter" => "", - "giftcard_number" => "Gift Card Number", - "group_by_category" => "Group by Category", - "group_by_type" => "Group by Type", - "hsn" => "", - "id" => "Sale ID", - "include_prices" => "Include Prices?", - "invoice" => "Invoice", - "invoice_confirm" => "This invoice will be sent to", - "invoice_enable" => "Create Invoice", - "invoice_filter" => "Invoices", - "invoice_no_email" => "This customer does not have a valid email address", - "invoice_number" => "Invoice #", - "invoice_number_duplicate" => "Invoice Number must be unique.", - "invoice_sent" => "Invoice sent to", - "invoice_total" => "", - "invoice_type_custom_invoice" => "", - "invoice_type_custom_tax_invoice" => "", - "invoice_type_invoice" => "", - "invoice_type_tax_invoice" => "", - "invoice_unsent" => "Invoice failed to be sent to", - "invoice_update" => "Recount", - "item_insufficient_of_stock" => "Item has insufficient stock.", - "item_name" => "Item Name", - "item_number" => "Item #", - "item_out_of_stock" => "Item is out of stock.", - "key_browser" => "", - "key_cancel" => "Cancels Current Quote/Invoice/Sale", - "key_customer_search" => "Customer Search", - "key_finish_quote" => "Finish Quote/Invoice witdout payment", - "key_finish_sale" => "Add Payment and Complete Invoice/Sale", - "key_full" => "", - "key_function" => "Function", - "key_help" => "Shortcuts", - "key_help_modal" => "Open Shortcuts Window", - "key_in" => "", - "key_item_search" => "Item Search", - "key_out" => "", - "key_payment" => "Add Payment", - "key_print" => "", - "key_restore" => "", - "key_search" => "", - "key_suspend" => "Suspend Current Sale", - "key_suspended" => "Show Suspended Sales", - "key_system" => "", - "key_tendered" => "Edit Amount Tendered", - "key_title" => "Sales Keyboard Shortcuts", - "mc" => "", - "mode" => "Register Mode", - "must_enter_numeric" => "Amount Tendered must be a number.", - "must_enter_numeric_giftcard" => "Gift Card Number must be a number.", - "new_customer" => "New Customer", - "new_item" => "New Item", - "no_description" => "None", - "no_filter" => "All", - "no_items_in_cart" => "There are no Items in the cart.", - "no_sales_to_display" => "No Sales to display.", - "none_selected" => "You have not selected any Sale(s) to delete.", - "nontaxed_ind" => "", - "not_authorized" => "This action is not authorized.", - "one_or_multiple" => "Sale(s)", - "payment" => "Payment Type", - "payment_amount" => "Amount", - "payment_not_cover_total" => "Payment Amount must be greater than or equal to Total.", - "payment_type" => "Type", - "payments" => "", - "payments_total" => "Payments Total", - "price" => "Price", - "print_after_sale" => "Print after Sale", - "quantity" => "Quantity", - "quantity_less_than_reorder_level" => "Warning: Desired Quantity is below Reorder Level for that Item.", - "quantity_less_than_zero" => "Warning: Desired Quantity is insufficient. You can still process the sale, but audit your inventory.", - "quantity_of_items" => "Quantity of {0} Items", - "quote" => "Quote", - "quote_number" => "Quote Number", - "quote_number_duplicate" => "Quote Number must be unique.", - "quote_sent" => "Quote sent to", - "quote_unsent" => "Quote failed to be sent to", - "receipt" => "Sales Receipt", - "receipt_no_email" => "", - "receipt_number" => "Sale #", - "receipt_sent" => "Receipt sent to", - "receipt_unsent" => "Receipt failed to be sent to", - "refund" => "", - "register" => "Sales Register", - "remove_customer" => "Remove Customer", - "remove_discount" => "", - "return" => "Return", - "rewards" => "Reward Points", - "rewards_balance" => "Reward Points Balance", - "sale" => "Sale", - "sale_by_invoice" => "Sale by Invoice", - "sale_for_customer" => "Customer:", - "sale_time" => "Time", - "sales_tax" => "Sales Tax", - "sales_total" => "", - "select_customer" => "Select Customer (Optional)", - "send_invoice" => "Send Invoice", - "send_quote" => "Send Quote", - "send_receipt" => "Send Receipt", - "send_work_order" => "Send Work Order", - "serial" => "Serial", - "service_charge" => "", - "show_due" => "", - "show_invoice" => "Show Invoice", - "show_receipt" => "Show Receipt", - "start_typing_customer_name" => "Start typing customer details...", - "start_typing_item_name" => "Start typing Item Name or scan Barcode...", - "stock" => "Stock", - "stock_location" => "Stock Location", - "sub_total" => "Subtotal", - "successfully_deleted" => "You have successfully deleted", - "successfully_restored" => "You have successfully restored", - "successfully_suspended_sale" => "Sale suspend successful.", - "successfully_updated" => "Sale update successful.", - "suspend_sale" => "Suspend", - "suspended_doc_id" => "Document", - "suspended_sale_id" => "ID", - "suspended_sales" => "Suspended", - "table" => "Table", - "takings" => "Daily Sales", - "tax" => "Tax", - "tax_id" => "", - "tax_invoice" => "", - "tax_percent" => "Tax %", - "taxed_ind" => "", - "total" => "Total", - "total_tax_exclusive" => "Tax excluded", - "transaction_failed" => "Sales Transaction failed.", - "unable_to_add_item" => "Item add to Sale failed", - "unsuccessfully_deleted" => "Sale(s) delete failed.", - "unsuccessfully_restored" => "Sale(s) restore failed.", - "unsuccessfully_suspended_sale" => "Sale suspend failed.", - "unsuccessfully_updated" => "Sale update failed.", - "unsuspend" => "Unsuspend", - "unsuspend_and_delete" => "Action", - "update" => "Update", - "upi" => "", - "visa" => "", - "wholesale" => "", - "work_order" => "Work Order", - "work_order_number" => "Work Order Number", - "work_order_number_duplicate" => "Work Order Number must be unique.", - "work_order_sent" => "Work Order sent to", - "work_order_unsent" => "Work Order failed to be sent to", + "customers_available_points" => "Available Points", + "rewards_package" => "Rewards", + "rewards_remaining_balance" => "Reward Points remaining value is ", + "account_number" => "", + "add_payment" => "Add Payment", + "amount_due" => "Amount Due", + "amount_tendered" => "Amount Tendered", + "authorized_signature" => "", + "cancel_sale" => "Cancel", + "cash" => "Cash", + "cash_1" => "", + "cash_2" => "", + "cash_3" => "", + "cash_4" => "", + "cash_adjustment" => "", + "cash_deposit" => "Cash Deposit", + "cash_filter" => "Cash", + "change_due" => "Change Due", + "change_price" => "", + "check" => "Check", + "check_balance" => "Check remainder", + "check_filter" => "Check", + "close" => "", + "comment" => "Comment", + "comments" => "Comments", + "company_name" => "", + "complete" => "", + "complete_sale" => "Complete", + "confirm_cancel_sale" => "Are you sure you want to clear this sale? All items will cleared.", + "confirm_delete" => "Are you sure you want to delete the selected Sale(s)?", + "confirm_restore" => "Are you sure you want to restore the selected Sale(s)?", + "credit" => "Credit Card", + "credit_deposit" => "Credit Deposit", + "credit_filter" => "", + "current_table" => "", + "customer" => "Name", + "customer_address" => "Address", + "customer_discount" => "Discount", + "customer_email" => "Email", + "customer_location" => "Location", + "customer_mailchimp_status" => "Mailchimp status", + "customer_optional" => "", + "customer_required" => "", + "customer_total" => "Total", + "customer_total_spent" => "", + "daily_sales" => "", + "date" => "Sale Date", + "date_range" => "Date Range", + "date_required" => "A correct date must be entered.", + "date_type" => "Date is a required field.", + "debit" => "Debit Card", + "debit_filter" => "", + "delete" => "Allow Delete", + "delete_confirmation" => "Are you sure you want to delete this sale? This action cannot be undone.", + "delete_entire_sale" => "Delete Entire Sale", + "delete_successful" => "Sale delete successful.", + "delete_unsuccessful" => "Sale delete failed.", + "description_abbrv" => "Desc.", + "discard" => "Discard", + "discard_quote" => "", + "discount" => "Disc %", + "discount_included" => "% Discount", + "discount_short" => "%", + "due" => "Due", + "due_filter" => "Due", + "edit" => "Edit", + "edit_item" => "Edit Item", + "edit_sale" => "Edit Sale", + "email_receipt" => "Email Receipt", + "employee" => "Employee", + "entry" => "Entry", + "error_editing_item" => "Error editing item", + "find_or_scan_item" => "Find or Scan Item", + "find_or_scan_item_or_receipt" => "Find or Scan Item or Receipt", + "giftcard" => "Gift Card", + "giftcard_balance" => "Gift Card Balance", + "giftcard_filter" => "", + "giftcard_number" => "Gift Card Number", + "group_by_category" => "Group by Category", + "group_by_type" => "Group by Type", + "hsn" => "", + "id" => "Sale ID", + "include_prices" => "Include Prices?", + "invoice" => "Invoice", + "invoice_confirm" => "This invoice will be sent to", + "invoice_enable" => "Create Invoice", + "invoice_filter" => "Invoices", + "invoice_no_email" => "This customer does not have a valid email address", + "invoice_number" => "Invoice #", + "invoice_number_duplicate" => "Invoice Number must be unique.", + "invoice_sent" => "Invoice sent to", + "invoice_total" => "", + "invoice_type_custom_invoice" => "", + "invoice_type_custom_tax_invoice" => "", + "invoice_type_invoice" => "", + "invoice_type_tax_invoice" => "", + "invoice_unsent" => "Invoice failed to be sent to", + "invoice_update" => "Recount", + "item_insufficient_of_stock" => "Item has insufficient stock.", + "item_name" => "Item Name", + "item_number" => "Item #", + "item_out_of_stock" => "Item is out of stock.", + "key_browser" => "", + "key_cancel" => "Cancels Current Quote/Invoice/Sale", + "key_customer_search" => "Customer Search", + "key_finish_quote" => "Finish Quote/Invoice witdout payment", + "key_finish_sale" => "Add Payment and Complete Invoice/Sale", + "key_full" => "", + "key_function" => "Function", + "key_help" => "Shortcuts", + "key_help_modal" => "Open Shortcuts Window", + "key_in" => "", + "key_item_search" => "Item Search", + "key_out" => "", + "key_payment" => "Add Payment", + "key_print" => "", + "key_restore" => "", + "key_search" => "", + "key_suspend" => "Suspend Current Sale", + "key_suspended" => "Show Suspended Sales", + "key_system" => "", + "key_tendered" => "Edit Amount Tendered", + "key_title" => "Sales Keyboard Shortcuts", + "mc" => "", + "mode" => "Register Mode", + "must_enter_numeric" => "Amount Tendered must be a number.", + "must_enter_numeric_giftcard" => "Gift Card Number must be a number.", + "new_customer" => "New Customer", + "new_item" => "New Item", + "no_description" => "None", + "no_filter" => "All", + "no_items_in_cart" => "There are no Items in the cart.", + "no_sales_to_display" => "No Sales to display.", + "none_selected" => "You have not selected any Sale(s) to delete.", + "nontaxed_ind" => "", + "not_authorized" => "This action is not authorized.", + "one_or_multiple" => "Sale(s)", + "payment" => "Payment Type", + "payment_amount" => "Amount", + "payment_not_cover_total" => "Payment Amount must be greater than or equal to Total.", + "payment_type" => "Type", + "payments" => "", + "payments_total" => "Payments Total", + "price" => "Price", + "print_after_sale" => "Print after Sale", + "quantity" => "Quantity", + "quantity_less_than_reorder_level" => "Warning: Desired Quantity is below Reorder Level for that Item.", + "quantity_less_than_zero" => "Warning: Desired Quantity is insufficient. You can still process the sale, but audit your inventory.", + "quantity_of_items" => "Quantity of {0} Items", + "quote" => "Quote", + "quote_number" => "Quote Number", + "quote_number_duplicate" => "Quote Number must be unique.", + "quote_sent" => "Quote sent to", + "quote_unsent" => "Quote failed to be sent to", + "receipt" => "Sales Receipt", + "receipt_no_email" => "", + "receipt_number" => "Sale #", + "receipt_sent" => "Receipt sent to", + "receipt_unsent" => "Receipt failed to be sent to", + "refund" => "", + "register" => "Sales Register", + "remove_customer" => "Remove Customer", + "remove_discount" => "", + "return" => "Return", + "rewards" => "Reward Points", + "rewards_balance" => "Reward Points Balance", + "sale" => "Sale", + "sale_by_invoice" => "Sale by Invoice", + "sale_for_customer" => "Customer:", + "sale_time" => "Time", + "sales_tax" => "Sales Tax", + "sales_total" => "", + "select_customer" => "Select Customer (Optional)", + "send_invoice" => "Send Invoice", + "send_quote" => "Send Quote", + "send_receipt" => "Send Receipt", + "send_work_order" => "Send Work Order", + "serial" => "Serial", + "service_charge" => "", + "show_due" => "", + "show_invoice" => "Show Invoice", + "show_receipt" => "Show Receipt", + "start_typing_customer_name" => "Start typing customer details...", + "start_typing_item_name" => "Start typing Item Name or scan Barcode...", + "stock" => "Stock", + "stock_location" => "Stock Location", + "sub_total" => "Subtotal", + "successfully_deleted" => "You have successfully deleted", + "successfully_restored" => "You have successfully restored", + "successfully_suspended_sale" => "Sale suspend successful.", + "successfully_updated" => "Sale update successful.", + "suspend_sale" => "Suspend", + "suspended_doc_id" => "Document", + "suspended_sale_id" => "ID", + "suspended_sales" => "Suspended", + "table" => "Table", + "takings" => "Daily Sales", + "tax" => "Tax", + "tax_id" => "", + "tax_invoice" => "", + "tax_percent" => "Tax %", + "taxed_ind" => "", + "total" => "Total", + "total_tax_exclusive" => "Tax excluded", + "transaction_failed" => "Sales Transaction failed.", + "unable_to_add_item" => "Item add to Sale failed", + "unsuccessfully_deleted" => "Sale(s) delete failed.", + "unsuccessfully_restored" => "Sale(s) restore failed.", + "unsuccessfully_suspended_sale" => "Sale suspend failed.", + "unsuccessfully_updated" => "Sale update failed.", + "unsuspend" => "Unsuspend", + "unsuspend_and_delete" => "Action", + "update" => "Update", + "upi" => "", + "visa" => "", + "wholesale" => "", + "work_order" => "Work Order", + "work_order_number" => "Work Order Number", + "work_order_number_duplicate" => "Work Order Number must be unique.", + "work_order_sent" => "Work Order sent to", + "work_order_unsent" => "Work Order failed to be sent to", ]; diff --git a/app/Language/lo/Suppliers.php b/app/Language/lo/Suppliers.php index 38168e9bd..6ae0ad4af 100644 --- a/app/Language/lo/Suppliers.php +++ b/app/Language/lo/Suppliers.php @@ -1,24 +1,24 @@ "ເລກບັນຊີ", - "agency_name" => "ຊື່ Agency", - "cannot_be_deleted" => "ບໍ່ສາມາດລຶບຜູ້ສະໜອງທີ່ເລືອກໄດ້. 1 ຫຼື ຫຼາຍກວ່ານັ້ນມີການຊື້-ຂາຍຢູ່.", - "category" => "", - "company_name" => "ຊື່ບໍລິສັດ", - "company_name_required" => "ຊື່ບໍລິສັດຈຳເປັນຕ້ອງໃສ່.", - "confirm_delete" => "ທ່ານຕ້ອງການລຶບຜູ້ສະໜອງທີ່ທ່ານເລືອກແທ້ບໍ່ ?", - "confirm_restore" => "", - "cost" => "", - "error_adding_updating" => "ເພີ່ມ ຫຼື ແກ້ໄຂ ຜູ້ສະໜອງບໍ່ສຳເລັດ.", - "goods" => "", - "new" => "ຜູ້ສະໜອງໃໝ່", - "none_selected" => "ທ່ານຍັງບໍ່ໄດ້ເລືອກຜູ້ສະໜອງເພື່ອລຶບ.", - "one_or_multiple" => "ຜູ້ສະໜອງ", - "successful_adding" => "ທ່ານໄດ້ເພີ່ມຜູ້ສະໜອງສຳເລັດແລ້ວ", - "successful_deleted" => "ທ່ານໄດ້ລຶບຜູ້ສະໜອງສຳເລັດແລ້ວ", - "successful_updating" => "ທ່ານໄດ້ແກ້ໄຂຜູ້ສະໜອງສຳເລັດແລ້ວ", - "supplier" => "ຜູ້ສະໜອງ", - "supplier_id" => "Id", - "tax_id" => "", - "update" => "ແກ້ໄຂຜູ້ສະໜອງ", + "account_number" => "ເລກບັນຊີ", + "agency_name" => "ຊື່ Agency", + "cannot_be_deleted" => "ບໍ່ສາມາດລຶບຜູ້ສະໜອງທີ່ເລືອກໄດ້. 1 ຫຼື ຫຼາຍກວ່ານັ້ນມີການຊື້-ຂາຍຢູ່.", + "category" => "", + "company_name" => "ຊື່ບໍລິສັດ", + "company_name_required" => "ຊື່ບໍລິສັດຈຳເປັນຕ້ອງໃສ່.", + "confirm_delete" => "ທ່ານຕ້ອງການລຶບຜູ້ສະໜອງທີ່ທ່ານເລືອກແທ້ບໍ່ ?", + "confirm_restore" => "", + "cost" => "", + "error_adding_updating" => "ເພີ່ມ ຫຼື ແກ້ໄຂ ຜູ້ສະໜອງບໍ່ສຳເລັດ.", + "goods" => "", + "new" => "ຜູ້ສະໜອງໃໝ່", + "none_selected" => "ທ່ານຍັງບໍ່ໄດ້ເລືອກຜູ້ສະໜອງເພື່ອລຶບ.", + "one_or_multiple" => "ຜູ້ສະໜອງ", + "successful_adding" => "ທ່ານໄດ້ເພີ່ມຜູ້ສະໜອງສຳເລັດແລ້ວ", + "successful_deleted" => "ທ່ານໄດ້ລຶບຜູ້ສະໜອງສຳເລັດແລ້ວ", + "successful_updating" => "ທ່ານໄດ້ແກ້ໄຂຜູ້ສະໜອງສຳເລັດແລ້ວ", + "supplier" => "ຜູ້ສະໜອງ", + "supplier_id" => "Id", + "tax_id" => "", + "update" => "ແກ້ໄຂຜູ້ສະໜອງ", ]; diff --git a/app/Language/lo/Taxes.php b/app/Language/lo/Taxes.php index 975efe50a..96aaf86e4 100644 --- a/app/Language/lo/Taxes.php +++ b/app/Language/lo/Taxes.php @@ -1,82 +1,82 @@ "ເພີ່ມຂໍ້ຜິດພາດ", - "cascade" => "Cascade", - "cascade_sequence" => "", - "city" => "ເມືອງ", - "code" => "ລະຫັດ", - "confirm_delete" => "ແນ່ໃຈບໍວ່າຕ້ອງການລຶບອອກ? ການກຳທຳນີ້ຈະບໍສາມາດເຮັດຄືນໄດ້", - "confirm_restore" => "", - "default_tax_category" => "ຄ່າພຶ້ນຖານໝວດພາສີ", - "default_tax_rate" => "ພຶ້ນຖານອັດຕາພາສີ", - "error_adding_updating" => "ເພີ່ມຫຼືແກ້ໄຂລະຫັດພາສີບໍສຳເລັດ", - "group_seq" => "ກຸ່ມ", - "jurisdiction_name" => "ຊື່ເຂດອຳນາດສານ", - "name" => "ຊື່", - "new" => "ພາສີໃໝ່", - "no_taxes" => "", - "no_taxes_to_display" => "ບໍມີລະຫັດພາສີທີ່ຈະສະແດງ", - "reporting_authority" => "ລາຍງານສິດທິ", - "round_half_down" => "ເຄິ່ງໜຶ່ງ", - "round_half_even" => "ເຄິ່ງຄູ່", - "round_half_odd" => "ເຄິ່ງຄີກ", - "round_half_up" => "ເຄິ່ງຂຶ້ນ", - "rounding_code" => "ລະຫັດປັດເສດ", - "sales_tax" => "ພາສີການຂາຍ", - "sales_tax_by_invoice" => "ພາສີການຂາຍຕາມໃບແຈ້ງໜີ້", - "sequence" => "ລຳດັບ.", - "state" => "ສະຖານະ", - "successful_deleted" => "ລືບສຳເລັດ", - "tax_categories" => "ໝວດພາສີ", - "tax_categories_configuration" => "", - "tax_categories_saved_successfully" => "", - "tax_categories_saved_unsuccessfully" => "", - "tax_category" => "Tax Category", - "tax_category_code" => "", - "tax_category_duplicate" => "", - "tax_category_invalid_chars" => "", - "tax_category_name" => "", - "tax_category_new" => "", - "tax_category_required" => "", - "tax_code" => "Tax Code", - "tax_code_cannot_be_deleted" => "Tax Code delete failed.", - "tax_code_duplicate" => "", - "tax_code_invalid_chars" => "", - "tax_code_name" => "Tax Code Name", - "tax_code_required" => "Tax Code is a required field.", - "tax_code_successful_deleted" => "You have successfully deleted Tax Code", - "tax_code_successful_updated" => "You have successfully updated", - "tax_code_successful_updating" => "You have successfully updated Tax Code", - "tax_code_successfully_added" => "You have successfully added", - "tax_code_type" => "Tax Code Type", - "tax_codes" => "", - "tax_codes_configuration" => "", - "tax_codes_saved_successfully" => "", - "tax_codes_saved_unsuccessfully" => "", - "tax_excluded" => "", - "tax_group" => "", - "tax_group_not_unique" => "", - "tax_group_sequence" => "", - "tax_included" => "", - "tax_jurisdiction" => "", - "tax_jurisdiction_duplicate" => "", - "tax_jurisdiction_invalid_chars" => "", - "tax_jurisdiction_required" => "", - "tax_jurisdictions" => "", - "tax_jurisdictions_configuration" => "", - "tax_jurisdictions_saved_successfully" => "", - "tax_jurisdictions_saved_unsuccessfully" => "", - "tax_rate" => "Tax Rate", - "tax_rate_configuration" => "", - "tax_rate_error_adding_updating" => "", - "tax_rate_numeric" => "Tax Rate must be a number.", - "tax_rate_required" => "Tax Rate is a required field.", - "tax_rate_successful_updated" => "", - "tax_rate_successfully_added" => "", - "tax_rates" => "", - "tax_rates_configuration" => "", - "tax_rounding" => "", - "tax_type" => "", - "update" => "Update Sales Category Tax", - "vat_tax" => "VAT Tax", + "add_exception" => "ເພີ່ມຂໍ້ຜິດພາດ", + "cascade" => "Cascade", + "cascade_sequence" => "", + "city" => "ເມືອງ", + "code" => "ລະຫັດ", + "confirm_delete" => "ແນ່ໃຈບໍວ່າຕ້ອງການລຶບອອກ? ການກຳທຳນີ້ຈະບໍສາມາດເຮັດຄືນໄດ້", + "confirm_restore" => "", + "default_tax_category" => "ຄ່າພຶ້ນຖານໝວດພາສີ", + "default_tax_rate" => "ພຶ້ນຖານອັດຕາພາສີ", + "error_adding_updating" => "ເພີ່ມຫຼືແກ້ໄຂລະຫັດພາສີບໍສຳເລັດ", + "group_seq" => "ກຸ່ມ", + "jurisdiction_name" => "ຊື່ເຂດອຳນາດສານ", + "name" => "ຊື່", + "new" => "ພາສີໃໝ່", + "no_taxes" => "", + "no_taxes_to_display" => "ບໍມີລະຫັດພາສີທີ່ຈະສະແດງ", + "reporting_authority" => "ລາຍງານສິດທິ", + "round_half_down" => "ເຄິ່ງໜຶ່ງ", + "round_half_even" => "ເຄິ່ງຄູ່", + "round_half_odd" => "ເຄິ່ງຄີກ", + "round_half_up" => "ເຄິ່ງຂຶ້ນ", + "rounding_code" => "ລະຫັດປັດເສດ", + "sales_tax" => "ພາສີການຂາຍ", + "sales_tax_by_invoice" => "ພາສີການຂາຍຕາມໃບແຈ້ງໜີ້", + "sequence" => "ລຳດັບ.", + "state" => "ສະຖານະ", + "successful_deleted" => "ລືບສຳເລັດ", + "tax_categories" => "ໝວດພາສີ", + "tax_categories_configuration" => "", + "tax_categories_saved_successfully" => "", + "tax_categories_saved_unsuccessfully" => "", + "tax_category" => "Tax Category", + "tax_category_code" => "", + "tax_category_duplicate" => "", + "tax_category_invalid_chars" => "", + "tax_category_name" => "", + "tax_category_new" => "", + "tax_category_required" => "", + "tax_code" => "Tax Code", + "tax_code_cannot_be_deleted" => "Tax Code delete failed.", + "tax_code_duplicate" => "", + "tax_code_invalid_chars" => "", + "tax_code_name" => "Tax Code Name", + "tax_code_required" => "Tax Code is a required field.", + "tax_code_successful_deleted" => "You have successfully deleted Tax Code", + "tax_code_successful_updated" => "You have successfully updated", + "tax_code_successful_updating" => "You have successfully updated Tax Code", + "tax_code_successfully_added" => "You have successfully added", + "tax_code_type" => "Tax Code Type", + "tax_codes" => "", + "tax_codes_configuration" => "", + "tax_codes_saved_successfully" => "", + "tax_codes_saved_unsuccessfully" => "", + "tax_excluded" => "", + "tax_group" => "", + "tax_group_not_unique" => "", + "tax_group_sequence" => "", + "tax_included" => "", + "tax_jurisdiction" => "", + "tax_jurisdiction_duplicate" => "", + "tax_jurisdiction_invalid_chars" => "", + "tax_jurisdiction_required" => "", + "tax_jurisdictions" => "", + "tax_jurisdictions_configuration" => "", + "tax_jurisdictions_saved_successfully" => "", + "tax_jurisdictions_saved_unsuccessfully" => "", + "tax_rate" => "Tax Rate", + "tax_rate_configuration" => "", + "tax_rate_error_adding_updating" => "", + "tax_rate_numeric" => "Tax Rate must be a number.", + "tax_rate_required" => "Tax Rate is a required field.", + "tax_rate_successful_updated" => "", + "tax_rate_successfully_added" => "", + "tax_rates" => "", + "tax_rates_configuration" => "", + "tax_rounding" => "", + "tax_type" => "", + "update" => "Update Sales Category Tax", + "vat_tax" => "VAT Tax", ]; diff --git a/app/Language/lo/index.html b/app/Language/lo/index.html index b702fbc39..69df4e1df 100644 --- a/app/Language/lo/index.html +++ b/app/Language/lo/index.html @@ -1,7 +1,7 @@ - 403 Forbidden + 403 Forbidden diff --git a/app/Language/ml/Attributes.php b/app/Language/ml/Attributes.php index 399422bfa..bb94a6aea 100644 --- a/app/Language/ml/Attributes.php +++ b/app/Language/ml/Attributes.php @@ -1,32 +1,32 @@ "Attribute value cannot contain ':' or '|'", - "confirm_delete" => "Are you sure you want to delete the selected attribute(s)?", - "confirm_restore" => "", - "definition_cannot_be_deleted" => "Could not delete selected attribute(s)", - "definition_error_adding_updating" => "", - "definition_flags" => "Attribute Visibility", - "definition_group" => "Group", - "definition_id" => "Id", - "definition_name" => "Attribute Name", - "definition_name_required" => "Attribute name is a required field", - "definition_one_or_multiple" => "attribute(s)", - "definition_successful_adding" => "You have successfully added item", - "definition_successful_deleted" => "You have successfully deleted", - "definition_successful_updating" => "You have successfully updated attribute", - "definition_type" => "Attribute Type", - "definition_type_required" => "Attribute type is a required field", - "definition_unit" => "", - "definition_values" => "Attribute Values", - "new" => "New Attribute", - "no_attributes_to_display" => "No Items to display", - "receipt_visibility" => "Receipt", - "show_in_items" => "Show in items", - "show_in_items_visibility" => "Items", - "show_in_receipt" => "Show in receipt", - "show_in_receivings" => "Show in receivings", - "show_in_receivings_visibility" => "Receivings", - "show_in_sales" => "Show in sales", - "show_in_sales_visibility" => "Sales", - "update" => "Update Attribute", + "attribute_value_invalid_chars" => "Attribute value cannot contain ':' or '|'", + "confirm_delete" => "Are you sure you want to delete the selected attribute(s)?", + "confirm_restore" => "", + "definition_cannot_be_deleted" => "Could not delete selected attribute(s)", + "definition_error_adding_updating" => "", + "definition_flags" => "Attribute Visibility", + "definition_group" => "Group", + "definition_id" => "Id", + "definition_name" => "Attribute Name", + "definition_name_required" => "Attribute name is a required field", + "definition_one_or_multiple" => "attribute(s)", + "definition_successful_adding" => "You have successfully added item", + "definition_successful_deleted" => "You have successfully deleted", + "definition_successful_updating" => "You have successfully updated attribute", + "definition_type" => "Attribute Type", + "definition_type_required" => "Attribute type is a required field", + "definition_unit" => "", + "definition_values" => "Attribute Values", + "new" => "New Attribute", + "no_attributes_to_display" => "No Items to display", + "receipt_visibility" => "Receipt", + "show_in_items" => "Show in items", + "show_in_items_visibility" => "Items", + "show_in_receipt" => "Show in receipt", + "show_in_receivings" => "Show in receivings", + "show_in_receivings_visibility" => "Receivings", + "show_in_sales" => "Show in sales", + "show_in_sales_visibility" => "Sales", + "update" => "Update Attribute", ]; diff --git a/app/Language/ml/Bootstrap_tables.php b/app/Language/ml/Bootstrap_tables.php index e02cb2e5a..e257f5276 100644 --- a/app/Language/ml/Bootstrap_tables.php +++ b/app/Language/ml/Bootstrap_tables.php @@ -1,11 +1,11 @@ "", - "columns" => "", - "hide_show_pagination" => "", - "loading" => "", - "page_from_to" => "", - "refresh" => "", - "rows_per_page" => "", - "toggle" => "", + "all" => "", + "columns" => "", + "hide_show_pagination" => "", + "loading" => "", + "page_from_to" => "", + "refresh" => "", + "rows_per_page" => "", + "toggle" => "", ]; diff --git a/app/Language/ml/Cashups.php b/app/Language/ml/Cashups.php index 2ffc8c593..04d19c94f 100644 --- a/app/Language/ml/Cashups.php +++ b/app/Language/ml/Cashups.php @@ -1,49 +1,49 @@ "", - "amount_number" => "", - "amount_required" => "", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "", - "cash_difference" => "", - "close_date" => "", - "close_employee" => "", - "closed_amount_card" => "", - "closed_amount_cash" => "", - "closed_amount_check" => "", - "closed_amount_due" => "", - "closed_amount_giftcard" => "", - "closed_amount_total" => "", - "closed_date" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "confirm_submit" => "", - "date_number" => "", - "date_required" => "", - "description" => "", - "enable_expected" => "", - "error_adding_updating" => "", - "giftcard" => "", - "id" => "", - "info" => "", - "info_employee" => "", - "is_deleted" => "", - "new" => "", - "no_cashups_to_display" => "", - "none_selected" => "", - "note" => "", - "one_or_multiple" => "", - "open_amount_cash" => "", - "open_date" => "", - "open_employee" => "", - "opened_date" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "total" => "", - "transfer_amount_cash" => "", - "transfer_amount_cash_minus" => "", - "update" => "", - "warning" => "", + "amount" => "", + "amount_number" => "", + "amount_required" => "", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "", + "cash_difference" => "", + "close_date" => "", + "close_employee" => "", + "closed_amount_card" => "", + "closed_amount_cash" => "", + "closed_amount_check" => "", + "closed_amount_due" => "", + "closed_amount_giftcard" => "", + "closed_amount_total" => "", + "closed_date" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "confirm_submit" => "", + "date_number" => "", + "date_required" => "", + "description" => "", + "enable_expected" => "", + "error_adding_updating" => "", + "giftcard" => "", + "id" => "", + "info" => "", + "info_employee" => "", + "is_deleted" => "", + "new" => "", + "no_cashups_to_display" => "", + "none_selected" => "", + "note" => "", + "one_or_multiple" => "", + "open_amount_cash" => "", + "open_date" => "", + "open_employee" => "", + "opened_date" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "total" => "", + "transfer_amount_cash" => "", + "transfer_amount_cash_minus" => "", + "update" => "", + "warning" => "", ]; diff --git a/app/Language/ml/Common.php b/app/Language/ml/Common.php index 83ed187c9..606c59e5b 100644 --- a/app/Language/ml/Common.php +++ b/app/Language/ml/Common.php @@ -1,88 +1,88 @@ "", - "address_2" => "", - "admin" => "", - "city" => "", - "clerk" => "", - "close" => "", - "color" => "", - "comments" => "", - "common" => "", - "confirm_search" => "", - "copyrights" => "© 2010 - {0}", - "correct_errors" => "", - "country" => "", - "dashboard" => "", - "date" => "", - "delete" => "", - "det" => "", - "download_import_template" => "", - "edit" => "", - "email" => "", - "email_invalid_format" => "", - "export_csv" => "", - "export_csv_no" => "", - "export_csv_yes" => "", - "fields_required_message" => "", - "fields_required_message_unique" => "", - "first_name" => "", - "first_name_required" => "", - "first_page" => "", - "gender" => "", - "gender_female" => "", - "gender_male" => "", - "gender_undefined" => "", - "icon" => "", - "id" => "", - "import" => "", - "import_change_file" => "", - "import_csv" => "", - "import_full_path" => "", - "import_remove_file" => "", - "import_select_file" => "", - "inv" => "", - "last_name" => "", - "last_name_required" => "", - "last_page" => "", - "learn_about_project" => "", - "list_of" => "", - "logo" => "", - "logo_mark" => "", - "logout" => "", - "manager" => "", - "migration_needed" => "", - "new" => "", - "no" => "", - "no_persons_to_display" => "", - "none_selected_text" => "", - "or" => "", - "people" => "", - "phone_number" => "", - "phone_number_required" => "", - "please_visit_my" => "", - "position" => "", - "powered_by" => "", - "price" => "", - "print" => "", - "remove" => "", - "required" => "", - "restore" => "", - "return_policy" => "", - "search" => "", - "search_options" => "", - "searched_for" => "", - "software_short" => "", - "software_title" => "", - "state" => "", - "submit" => "", - "total_spent" => "", - "unknown" => "", - "view_recent_sales" => "", - "website" => "", - "welcome" => "", - "welcome_message" => "", - "yes" => "", - "you_are_using_ospos" => "", - "zip" => "", + "address_1" => "", + "address_2" => "", + "admin" => "", + "city" => "", + "clerk" => "", + "close" => "", + "color" => "", + "comments" => "", + "common" => "", + "confirm_search" => "", + "copyrights" => "© 2010 - {0}", + "correct_errors" => "", + "country" => "", + "dashboard" => "", + "date" => "", + "delete" => "", + "det" => "", + "download_import_template" => "", + "edit" => "", + "email" => "", + "email_invalid_format" => "", + "export_csv" => "", + "export_csv_no" => "", + "export_csv_yes" => "", + "fields_required_message" => "", + "fields_required_message_unique" => "", + "first_name" => "", + "first_name_required" => "", + "first_page" => "", + "gender" => "", + "gender_female" => "", + "gender_male" => "", + "gender_undefined" => "", + "icon" => "", + "id" => "", + "import" => "", + "import_change_file" => "", + "import_csv" => "", + "import_full_path" => "", + "import_remove_file" => "", + "import_select_file" => "", + "inv" => "", + "last_name" => "", + "last_name_required" => "", + "last_page" => "", + "learn_about_project" => "", + "list_of" => "", + "logo" => "", + "logo_mark" => "", + "logout" => "", + "manager" => "", + "migration_needed" => "", + "new" => "", + "no" => "", + "no_persons_to_display" => "", + "none_selected_text" => "", + "or" => "", + "people" => "", + "phone_number" => "", + "phone_number_required" => "", + "please_visit_my" => "", + "position" => "", + "powered_by" => "", + "price" => "", + "print" => "", + "remove" => "", + "required" => "", + "restore" => "", + "return_policy" => "", + "search" => "", + "search_options" => "", + "searched_for" => "", + "software_short" => "", + "software_title" => "", + "state" => "", + "submit" => "", + "total_spent" => "", + "unknown" => "", + "view_recent_sales" => "", + "website" => "", + "welcome" => "", + "welcome_message" => "", + "yes" => "", + "you_are_using_ospos" => "", + "zip" => "", ]; diff --git a/app/Language/ml/Config.php b/app/Language/ml/Config.php index 49d8ea4fc..2b0ffe152 100644 --- a/app/Language/ml/Config.php +++ b/app/Language/ml/Config.php @@ -1,330 +1,330 @@ "", - "address_required" => "", - "all_set" => "All file permissions are set correctly!", - "allow_duplicate_barcodes" => "", - "apostrophe" => "", - "backup_button" => "", - "backup_database" => "", - "barcode" => "", - "barcode_company" => "", - "barcode_configuration" => "", - "barcode_content" => "", - "barcode_first_row" => "", - "barcode_font" => "", - "barcode_formats" => "", - "barcode_generate_if_empty" => "", - "barcode_height" => "", - "barcode_id" => "", - "barcode_info" => "", - "barcode_layout" => "", - "barcode_name" => "", - "barcode_number" => "", - "barcode_number_in_row" => "", - "barcode_page_cellspacing" => "", - "barcode_page_width" => "", - "barcode_price" => "", - "barcode_second_row" => "", - "barcode_third_row" => "", - "barcode_tooltip" => "", - "barcode_type" => "", - "barcode_width" => "", - "bottom" => "", - "cash_button" => "", - "cash_button_1" => "", - "cash_button_2" => "", - "cash_button_3" => "", - "cash_button_4" => "", - "cash_button_5" => "", - "cash_button_6" => "", - "cash_decimals" => "", - "cash_decimals_tooltip" => "", - "cash_rounding" => "", - "category_dropdown" => "", - "center" => "", - "change_apperance_tooltip" => "", - "comma" => "", - "company" => "", - "company_avatar" => "", - "company_change_image" => "", - "company_logo" => "", - "company_remove_image" => "", - "company_required" => "", - "company_select_image" => "", - "company_website_url" => "", - "country_codes" => "", - "country_codes_tooltip" => "", - "currency_code" => "", - "currency_decimals" => "", - "currency_symbol" => "", - "current_employee_only" => "", - "customer_reward" => "", - "customer_reward_duplicate" => "", - "customer_reward_enable" => "", - "customer_reward_invalid_chars" => "", - "customer_reward_required" => "", - "customer_sales_tax_support" => "", - "date_or_time_format" => "", - "datetimeformat" => "", - "decimal_point" => "", - "default_barcode_font_size_number" => "", - "default_barcode_font_size_required" => "", - "default_barcode_height_number" => "", - "default_barcode_height_required" => "", - "default_barcode_num_in_row_number" => "", - "default_barcode_num_in_row_required" => "", - "default_barcode_page_cellspacing_number" => "", - "default_barcode_page_cellspacing_required" => "", - "default_barcode_page_width_number" => "", - "default_barcode_page_width_required" => "", - "default_barcode_width_number" => "", - "default_barcode_width_required" => "", - "default_item_columns" => "", - "default_origin_tax_code" => "", - "default_receivings_discount" => "", - "default_receivings_discount_number" => "", - "default_receivings_discount_required" => "", - "default_sales_discount" => "", - "default_sales_discount_number" => "", - "default_sales_discount_required" => "", - "default_tax_category" => "", - "default_tax_code" => "", - "default_tax_jurisdiction" => "", - "default_tax_name_number" => "", - "default_tax_name_required" => "", - "default_tax_rate" => "", - "default_tax_rate_1" => "", - "default_tax_rate_2" => "", - "default_tax_rate_3" => "", - "default_tax_rate_number" => "", - "default_tax_rate_required" => "", - "derive_sale_quantity" => "", - "derive_sale_quantity_tooltip" => "", - "dinner_table" => "", - "dinner_table_duplicate" => "", - "dinner_table_enable" => "", - "dinner_table_invalid_chars" => "", - "dinner_table_required" => "", - "dot" => "", - "email" => "", - "email_configuration" => "", - "email_mailpath" => "", - "email_protocol" => "", - "email_receipt_check_behaviour" => "", - "email_receipt_check_behaviour_always" => "", - "email_receipt_check_behaviour_last" => "", - "email_receipt_check_behaviour_never" => "", - "email_smtp_crypto" => "", - "email_smtp_host" => "", - "email_smtp_pass" => "", - "email_smtp_port" => "", - "email_smtp_timeout" => "", - "email_smtp_user" => "", - "enable_avatar" => "", - "enable_avatar_tooltip" => "", - "enable_dropdown_tooltip" => "", - "enable_new_look" => "", - "enable_right_bar" => "", - "enable_right_bar_tooltip" => "", - "enforce_privacy" => "", - "enforce_privacy_tooltip" => "", - "fax" => "", - "file_perm" => "There are problems with file permissions please fix and reload this page.", - "financial_year" => "", - "financial_year_apr" => "", - "financial_year_aug" => "", - "financial_year_dec" => "", - "financial_year_feb" => "", - "financial_year_jan" => "", - "financial_year_jul" => "", - "financial_year_jun" => "", - "financial_year_mar" => "", - "financial_year_may" => "", - "financial_year_nov" => "", - "financial_year_oct" => "", - "financial_year_sep" => "", - "floating_labels" => "", - "gcaptcha_enable" => "", - "gcaptcha_secret_key" => "", - "gcaptcha_secret_key_required" => "", - "gcaptcha_site_key" => "", - "gcaptcha_site_key_required" => "", - "gcaptcha_tooltip" => "", - "general" => "", - "general_configuration" => "", - "giftcard_number" => "", - "giftcard_random" => "", - "giftcard_series" => "", - "image_allowed_file_types" => "", - "image_max_height_tooltip" => "", - "image_max_size_tooltip" => "", - "image_max_width_tooltip" => "", - "image_restrictions" => "", - "include_hsn" => "", - "info" => "", - "info_configuration" => "", - "input_groups" => "", - "integrations" => "", - "integrations_configuration" => "", - "invoice" => "", - "invoice_configuration" => "", - "invoice_default_comments" => "", - "invoice_email_message" => "", - "invoice_enable" => "", - "invoice_printer" => "", - "invoice_type" => "", - "is_readable" => "", - "is_writable" => "is writable, but the permissions are higher than 750.", - "item_markup" => "", - "jsprintsetup_required" => "", - "language" => "", - "last_used_invoice_number" => "", - "last_used_quote_number" => "", - "last_used_work_order_number" => "", - "left" => "", - "license" => "", - "license_configuration" => "", - "line_sequence" => "", - "lines_per_page" => "", - "lines_per_page_number" => "", - "lines_per_page_required" => "", - "locale" => "", - "locale_configuration" => "", - "locale_info" => "", - "location" => "", - "location_configuration" => "", - "location_info" => "", - "login_form" => "", - "logout" => "", - "mailchimp" => "", - "mailchimp_api_key" => "", - "mailchimp_configuration" => "", - "mailchimp_key_successfully" => "", - "mailchimp_key_unsuccessfully" => "", - "mailchimp_lists" => "", - "mailchimp_tooltip" => "", - "message" => "", - "message_configuration" => "", - "msg_msg" => "", - "msg_msg_placeholder" => "", - "msg_pwd" => "", - "msg_pwd_required" => "", - "msg_src" => "", - "msg_src_required" => "", - "msg_uid" => "", - "msg_uid_required" => "", - "multi_pack_enabled" => "", - "no_risk" => "No security/vulnerability risks.", - "none" => "", - "notify_alignment" => "", - "number_format" => "", - "number_locale" => "", - "number_locale_invalid" => "", - "number_locale_required" => "", - "number_locale_tooltip" => "", - "os_timezone" => "", - "ospos_info" => "", - "payment_options_order" => "", - "perm_risk" => "Permissions higher than 750 leaves this software at risk.", - "phone" => "", - "phone_required" => "", - "print_bottom_margin" => "", - "print_bottom_margin_number" => "", - "print_bottom_margin_required" => "", - "print_delay_autoreturn" => "", - "print_delay_autoreturn_number" => "", - "print_delay_autoreturn_required" => "", - "print_footer" => "", - "print_header" => "", - "print_left_margin" => "", - "print_left_margin_number" => "", - "print_left_margin_required" => "", - "print_receipt_check_behaviour" => "", - "print_receipt_check_behaviour_always" => "", - "print_receipt_check_behaviour_last" => "", - "print_receipt_check_behaviour_never" => "", - "print_right_margin" => "", - "print_right_margin_number" => "", - "print_right_margin_required" => "", - "print_silently" => "", - "print_top_margin" => "", - "print_top_margin_number" => "", - "print_top_margin_required" => "", - "quantity_decimals" => "", - "quick_cash_enable" => "", - "quote_default_comments" => "", - "receipt" => "", - "receipt_category" => "", - "receipt_configuration" => "", - "receipt_default" => "", - "receipt_font_size" => "", - "receipt_font_size_number" => "", - "receipt_font_size_required" => "", - "receipt_info" => "", - "receipt_printer" => "", - "receipt_short" => "", - "receipt_show_company_name" => "", - "receipt_show_description" => "", - "receipt_show_serialnumber" => "", - "receipt_show_tax_ind" => "", - "receipt_show_taxes" => "", - "receipt_show_total_discount" => "", - "receipt_template" => "", - "receiving_calculate_average_price" => "", - "recv_invoice_format" => "", - "register_mode_default" => "", - "report_an_issue" => "", - "return_policy_required" => "", - "reward" => "", - "reward_configuration" => "", - "right" => "", - "sales_invoice_format" => "", - "sales_quote_format" => "", - "saved_successfully" => "", - "saved_unsuccessfully" => "", - "security_issue" => "Security Vulnerability Warning", - "server_notice" => "Please use the below info for issue reporting.", - "service_charge" => "", - "show_due_enable" => "", - "show_office_group" => "", - "statistics" => "", - "statistics_tooltip" => "", - "stock_location" => "", - "stock_location_duplicate" => "", - "stock_location_invalid_chars" => "", - "stock_location_required" => "", - "suggestions_fifth_column" => "", - "suggestions_first_column" => "", - "suggestions_fourth_column" => "", - "suggestions_layout" => "", - "suggestions_second_column" => "", - "suggestions_third_column" => "", - "system_conf" => "Setup & Conf", - "system_info" => "System Info", - "table" => "", - "table_configuration" => "", - "takings_printer" => "", - "tax" => "", - "tax_category" => "", - "tax_category_duplicate" => "", - "tax_category_invalid_chars" => "", - "tax_category_required" => "", - "tax_category_used" => "", - "tax_configuration" => "", - "tax_decimals" => "", - "tax_id" => "", - "tax_included" => "", - "theme" => "", - "theme_preview" => "", - "thousands_separator" => "", - "timezone" => "", - "timezone_error" => "", - "top" => "", - "use_destination_based_tax" => "", - "user_timezone" => "", - "website" => "", - "wholesale_markup" => "", - "work_order_enable" => "", - "work_order_format" => "", + "address" => "", + "address_required" => "", + "all_set" => "All file permissions are set correctly!", + "allow_duplicate_barcodes" => "", + "apostrophe" => "", + "backup_button" => "", + "backup_database" => "", + "barcode" => "", + "barcode_company" => "", + "barcode_configuration" => "", + "barcode_content" => "", + "barcode_first_row" => "", + "barcode_font" => "", + "barcode_formats" => "", + "barcode_generate_if_empty" => "", + "barcode_height" => "", + "barcode_id" => "", + "barcode_info" => "", + "barcode_layout" => "", + "barcode_name" => "", + "barcode_number" => "", + "barcode_number_in_row" => "", + "barcode_page_cellspacing" => "", + "barcode_page_width" => "", + "barcode_price" => "", + "barcode_second_row" => "", + "barcode_third_row" => "", + "barcode_tooltip" => "", + "barcode_type" => "", + "barcode_width" => "", + "bottom" => "", + "cash_button" => "", + "cash_button_1" => "", + "cash_button_2" => "", + "cash_button_3" => "", + "cash_button_4" => "", + "cash_button_5" => "", + "cash_button_6" => "", + "cash_decimals" => "", + "cash_decimals_tooltip" => "", + "cash_rounding" => "", + "category_dropdown" => "", + "center" => "", + "change_apperance_tooltip" => "", + "comma" => "", + "company" => "", + "company_avatar" => "", + "company_change_image" => "", + "company_logo" => "", + "company_remove_image" => "", + "company_required" => "", + "company_select_image" => "", + "company_website_url" => "", + "country_codes" => "", + "country_codes_tooltip" => "", + "currency_code" => "", + "currency_decimals" => "", + "currency_symbol" => "", + "current_employee_only" => "", + "customer_reward" => "", + "customer_reward_duplicate" => "", + "customer_reward_enable" => "", + "customer_reward_invalid_chars" => "", + "customer_reward_required" => "", + "customer_sales_tax_support" => "", + "date_or_time_format" => "", + "datetimeformat" => "", + "decimal_point" => "", + "default_barcode_font_size_number" => "", + "default_barcode_font_size_required" => "", + "default_barcode_height_number" => "", + "default_barcode_height_required" => "", + "default_barcode_num_in_row_number" => "", + "default_barcode_num_in_row_required" => "", + "default_barcode_page_cellspacing_number" => "", + "default_barcode_page_cellspacing_required" => "", + "default_barcode_page_width_number" => "", + "default_barcode_page_width_required" => "", + "default_barcode_width_number" => "", + "default_barcode_width_required" => "", + "default_item_columns" => "", + "default_origin_tax_code" => "", + "default_receivings_discount" => "", + "default_receivings_discount_number" => "", + "default_receivings_discount_required" => "", + "default_sales_discount" => "", + "default_sales_discount_number" => "", + "default_sales_discount_required" => "", + "default_tax_category" => "", + "default_tax_code" => "", + "default_tax_jurisdiction" => "", + "default_tax_name_number" => "", + "default_tax_name_required" => "", + "default_tax_rate" => "", + "default_tax_rate_1" => "", + "default_tax_rate_2" => "", + "default_tax_rate_3" => "", + "default_tax_rate_number" => "", + "default_tax_rate_required" => "", + "derive_sale_quantity" => "", + "derive_sale_quantity_tooltip" => "", + "dinner_table" => "", + "dinner_table_duplicate" => "", + "dinner_table_enable" => "", + "dinner_table_invalid_chars" => "", + "dinner_table_required" => "", + "dot" => "", + "email" => "", + "email_configuration" => "", + "email_mailpath" => "", + "email_protocol" => "", + "email_receipt_check_behaviour" => "", + "email_receipt_check_behaviour_always" => "", + "email_receipt_check_behaviour_last" => "", + "email_receipt_check_behaviour_never" => "", + "email_smtp_crypto" => "", + "email_smtp_host" => "", + "email_smtp_pass" => "", + "email_smtp_port" => "", + "email_smtp_timeout" => "", + "email_smtp_user" => "", + "enable_avatar" => "", + "enable_avatar_tooltip" => "", + "enable_dropdown_tooltip" => "", + "enable_new_look" => "", + "enable_right_bar" => "", + "enable_right_bar_tooltip" => "", + "enforce_privacy" => "", + "enforce_privacy_tooltip" => "", + "fax" => "", + "file_perm" => "There are problems with file permissions please fix and reload this page.", + "financial_year" => "", + "financial_year_apr" => "", + "financial_year_aug" => "", + "financial_year_dec" => "", + "financial_year_feb" => "", + "financial_year_jan" => "", + "financial_year_jul" => "", + "financial_year_jun" => "", + "financial_year_mar" => "", + "financial_year_may" => "", + "financial_year_nov" => "", + "financial_year_oct" => "", + "financial_year_sep" => "", + "floating_labels" => "", + "gcaptcha_enable" => "", + "gcaptcha_secret_key" => "", + "gcaptcha_secret_key_required" => "", + "gcaptcha_site_key" => "", + "gcaptcha_site_key_required" => "", + "gcaptcha_tooltip" => "", + "general" => "", + "general_configuration" => "", + "giftcard_number" => "", + "giftcard_random" => "", + "giftcard_series" => "", + "image_allowed_file_types" => "", + "image_max_height_tooltip" => "", + "image_max_size_tooltip" => "", + "image_max_width_tooltip" => "", + "image_restrictions" => "", + "include_hsn" => "", + "info" => "", + "info_configuration" => "", + "input_groups" => "", + "integrations" => "", + "integrations_configuration" => "", + "invoice" => "", + "invoice_configuration" => "", + "invoice_default_comments" => "", + "invoice_email_message" => "", + "invoice_enable" => "", + "invoice_printer" => "", + "invoice_type" => "", + "is_readable" => "", + "is_writable" => "is writable, but the permissions are higher than 750.", + "item_markup" => "", + "jsprintsetup_required" => "", + "language" => "", + "last_used_invoice_number" => "", + "last_used_quote_number" => "", + "last_used_work_order_number" => "", + "left" => "", + "license" => "", + "license_configuration" => "", + "line_sequence" => "", + "lines_per_page" => "", + "lines_per_page_number" => "", + "lines_per_page_required" => "", + "locale" => "", + "locale_configuration" => "", + "locale_info" => "", + "location" => "", + "location_configuration" => "", + "location_info" => "", + "login_form" => "", + "logout" => "", + "mailchimp" => "", + "mailchimp_api_key" => "", + "mailchimp_configuration" => "", + "mailchimp_key_successfully" => "", + "mailchimp_key_unsuccessfully" => "", + "mailchimp_lists" => "", + "mailchimp_tooltip" => "", + "message" => "", + "message_configuration" => "", + "msg_msg" => "", + "msg_msg_placeholder" => "", + "msg_pwd" => "", + "msg_pwd_required" => "", + "msg_src" => "", + "msg_src_required" => "", + "msg_uid" => "", + "msg_uid_required" => "", + "multi_pack_enabled" => "", + "no_risk" => "No security/vulnerability risks.", + "none" => "", + "notify_alignment" => "", + "number_format" => "", + "number_locale" => "", + "number_locale_invalid" => "", + "number_locale_required" => "", + "number_locale_tooltip" => "", + "os_timezone" => "", + "ospos_info" => "", + "payment_options_order" => "", + "perm_risk" => "Permissions higher than 750 leaves this software at risk.", + "phone" => "", + "phone_required" => "", + "print_bottom_margin" => "", + "print_bottom_margin_number" => "", + "print_bottom_margin_required" => "", + "print_delay_autoreturn" => "", + "print_delay_autoreturn_number" => "", + "print_delay_autoreturn_required" => "", + "print_footer" => "", + "print_header" => "", + "print_left_margin" => "", + "print_left_margin_number" => "", + "print_left_margin_required" => "", + "print_receipt_check_behaviour" => "", + "print_receipt_check_behaviour_always" => "", + "print_receipt_check_behaviour_last" => "", + "print_receipt_check_behaviour_never" => "", + "print_right_margin" => "", + "print_right_margin_number" => "", + "print_right_margin_required" => "", + "print_silently" => "", + "print_top_margin" => "", + "print_top_margin_number" => "", + "print_top_margin_required" => "", + "quantity_decimals" => "", + "quick_cash_enable" => "", + "quote_default_comments" => "", + "receipt" => "", + "receipt_category" => "", + "receipt_configuration" => "", + "receipt_default" => "", + "receipt_font_size" => "", + "receipt_font_size_number" => "", + "receipt_font_size_required" => "", + "receipt_info" => "", + "receipt_printer" => "", + "receipt_short" => "", + "receipt_show_company_name" => "", + "receipt_show_description" => "", + "receipt_show_serialnumber" => "", + "receipt_show_tax_ind" => "", + "receipt_show_taxes" => "", + "receipt_show_total_discount" => "", + "receipt_template" => "", + "receiving_calculate_average_price" => "", + "recv_invoice_format" => "", + "register_mode_default" => "", + "report_an_issue" => "", + "return_policy_required" => "", + "reward" => "", + "reward_configuration" => "", + "right" => "", + "sales_invoice_format" => "", + "sales_quote_format" => "", + "saved_successfully" => "", + "saved_unsuccessfully" => "", + "security_issue" => "Security Vulnerability Warning", + "server_notice" => "Please use the below info for issue reporting.", + "service_charge" => "", + "show_due_enable" => "", + "show_office_group" => "", + "statistics" => "", + "statistics_tooltip" => "", + "stock_location" => "", + "stock_location_duplicate" => "", + "stock_location_invalid_chars" => "", + "stock_location_required" => "", + "suggestions_fifth_column" => "", + "suggestions_first_column" => "", + "suggestions_fourth_column" => "", + "suggestions_layout" => "", + "suggestions_second_column" => "", + "suggestions_third_column" => "", + "system_conf" => "Setup & Conf", + "system_info" => "System Info", + "table" => "", + "table_configuration" => "", + "takings_printer" => "", + "tax" => "", + "tax_category" => "", + "tax_category_duplicate" => "", + "tax_category_invalid_chars" => "", + "tax_category_required" => "", + "tax_category_used" => "", + "tax_configuration" => "", + "tax_decimals" => "", + "tax_id" => "", + "tax_included" => "", + "theme" => "", + "theme_preview" => "", + "thousands_separator" => "", + "timezone" => "", + "timezone_error" => "", + "top" => "", + "use_destination_based_tax" => "", + "user_timezone" => "", + "website" => "", + "wholesale_markup" => "", + "work_order_enable" => "", + "work_order_format" => "", ]; diff --git a/app/Language/ml/Customers.php b/app/Language/ml/Customers.php index 715fca3e4..686ed3760 100644 --- a/app/Language/ml/Customers.php +++ b/app/Language/ml/Customers.php @@ -1,56 +1,56 @@ "", - "account_number_duplicate" => "", - "available_points" => "", - "available_points_value" => "", - "average" => "", - "avg_discount" => "", - "basic_information" => "", - "cannot_be_deleted" => "", - "company_name" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "consent" => "", - "consent_required" => "", - "csv_import_failed" => "", - "csv_import_nodata_wrongformat" => "", - "csv_import_partially_failed" => "", - "csv_import_success" => "", - "customer" => "", - "date" => "", - "discount" => "", - "discount_fixed" => "", - "discount_percent" => "", - "discount_type" => "", - "email_duplicate" => "", - "employee" => "", - "error_adding_updating" => "", - "import_items_csv" => "", - "mailchimp_activity_click" => "", - "mailchimp_activity_lastopen" => "", - "mailchimp_activity_open" => "", - "mailchimp_activity_total" => "", - "mailchimp_activity_unopen" => "", - "mailchimp_email_client" => "", - "mailchimp_info" => "", - "mailchimp_member_rating" => "", - "mailchimp_status" => "", - "mailchimp_vip" => "", - "max" => "", - "min" => "", - "new" => "", - "none_selected" => "", - "one_or_multiple" => "", - "quantity" => "", - "stats_info" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "tax_code" => "", - "tax_id" => "", - "taxable" => "", - "total" => "", - "update" => "", - "rewards_package" => "", + "account_number" => "", + "account_number_duplicate" => "", + "available_points" => "", + "available_points_value" => "", + "average" => "", + "avg_discount" => "", + "basic_information" => "", + "cannot_be_deleted" => "", + "company_name" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "consent" => "", + "consent_required" => "", + "csv_import_failed" => "", + "csv_import_nodata_wrongformat" => "", + "csv_import_partially_failed" => "", + "csv_import_success" => "", + "customer" => "", + "date" => "", + "discount" => "", + "discount_fixed" => "", + "discount_percent" => "", + "discount_type" => "", + "email_duplicate" => "", + "employee" => "", + "error_adding_updating" => "", + "import_items_csv" => "", + "mailchimp_activity_click" => "", + "mailchimp_activity_lastopen" => "", + "mailchimp_activity_open" => "", + "mailchimp_activity_total" => "", + "mailchimp_activity_unopen" => "", + "mailchimp_email_client" => "", + "mailchimp_info" => "", + "mailchimp_member_rating" => "", + "mailchimp_status" => "", + "mailchimp_vip" => "", + "max" => "", + "min" => "", + "new" => "", + "none_selected" => "", + "one_or_multiple" => "", + "quantity" => "", + "stats_info" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "tax_code" => "", + "tax_id" => "", + "taxable" => "", + "total" => "", + "update" => "", + "rewards_package" => "", ]; diff --git a/app/Language/ml/Datepicker.php b/app/Language/ml/Datepicker.php index e8be7a6c0..7c8e18902 100644 --- a/app/Language/ml/Datepicker.php +++ b/app/Language/ml/Datepicker.php @@ -1,23 +1,23 @@ "", - "apply" => "", - "cancel" => "", - "custom" => "", - "from" => "", - "last_30" => "", - "last_7" => "", - "last_financial_year" => "", - "last_month" => "", - "last_year" => "", - "same_month_last_year" => "", - "same_month_to_same_day_last_year" => "", - "this_financial_year" => "", - "this_month" => "", - "this_year" => "", - "to" => "", - "today" => "", - "today_last_year" => "", - "weekstart" => "", - "yesterday" => "", + "all_time" => "", + "apply" => "", + "cancel" => "", + "custom" => "", + "from" => "", + "last_30" => "", + "last_7" => "", + "last_financial_year" => "", + "last_month" => "", + "last_year" => "", + "same_month_last_year" => "", + "same_month_to_same_day_last_year" => "", + "this_financial_year" => "", + "this_month" => "", + "this_year" => "", + "to" => "", + "today" => "", + "today_last_year" => "", + "weekstart" => "", + "yesterday" => "", ]; diff --git a/app/Language/ml/Employees.php b/app/Language/ml/Employees.php index 6f597ab5b..5aa444ff4 100644 --- a/app/Language/ml/Employees.php +++ b/app/Language/ml/Employees.php @@ -1,44 +1,44 @@ "", - "basic_information" => "", - "cannot_be_deleted" => "", - "change_employee" => "", - "change_password" => "", - "clerk" => "", - "commission" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "current_password" => "", - "current_password_invalid" => "", - "employee" => "", - "error_adding_updating" => "", - "error_deleting_demo_admin" => "", - "error_updating_demo_admin" => "", - "language" => "", - "login_info" => "", - "manager" => "", - "new" => "", - "none_selected" => "", - "one_or_multiple" => "", - "password" => "", - "password_minlength" => "", - "password_must_match" => "", - "password_not_must_match" => "", - "password_required" => "", - "permission_desc" => "", - "permission_info" => "", - "repeat_password" => "", - "subpermission_required" => "", - "successful_adding" => "", - "successful_change_password" => "", - "successful_deleted" => "", - "successful_updating" => "", - "system_language" => "", - "unsuccessful_change_password" => "", - "update" => "", - "username" => "", - "username_duplicate" => "", - "username_minlength" => "", - "username_required" => "", + "administrator" => "", + "basic_information" => "", + "cannot_be_deleted" => "", + "change_employee" => "", + "change_password" => "", + "clerk" => "", + "commission" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "current_password" => "", + "current_password_invalid" => "", + "employee" => "", + "error_adding_updating" => "", + "error_deleting_demo_admin" => "", + "error_updating_demo_admin" => "", + "language" => "", + "login_info" => "", + "manager" => "", + "new" => "", + "none_selected" => "", + "one_or_multiple" => "", + "password" => "", + "password_minlength" => "", + "password_must_match" => "", + "password_not_must_match" => "", + "password_required" => "", + "permission_desc" => "", + "permission_info" => "", + "repeat_password" => "", + "subpermission_required" => "", + "successful_adding" => "", + "successful_change_password" => "", + "successful_deleted" => "", + "successful_updating" => "", + "system_language" => "", + "unsuccessful_change_password" => "", + "update" => "", + "username" => "", + "username_duplicate" => "", + "username_minlength" => "", + "username_required" => "", ]; diff --git a/app/Language/ml/Enum.php b/app/Language/ml/Enum.php index c39655c3b..1ed7e9313 100644 --- a/app/Language/ml/Enum.php +++ b/app/Language/ml/Enum.php @@ -1,10 +1,10 @@ "", - "half_even" => "", - "half_five" => "", - "half_odd" => "", - "half_up" => "", - "round_down" => "", - "round_up" => "", + "half_down" => "", + "half_even" => "", + "half_five" => "", + "half_odd" => "", + "half_up" => "", + "round_down" => "", + "round_up" => "", ]; diff --git a/app/Language/ml/Error.php b/app/Language/ml/Error.php index 6134ea59a..ae85a3b54 100644 --- a/app/Language/ml/Error.php +++ b/app/Language/ml/Error.php @@ -1,5 +1,5 @@ "", - "unknown" => "", + "no_permission_module" => "", + "unknown" => "", ]; diff --git a/app/Language/ml/Expenses.php b/app/Language/ml/Expenses.php index e9e237376..8ef1fe954 100644 --- a/app/Language/ml/Expenses.php +++ b/app/Language/ml/Expenses.php @@ -1,50 +1,50 @@ "", - "amount" => "", - "amount_number" => "", - "amount_required" => "", - "by_category" => "", - "cannot_be_deleted" => "", - "cash" => "", - "cash_filter" => "", - "categories_name" => "", - "category_required" => "", - "check" => "", - "check_filter" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "credit" => "", - "credit_filter" => "", - "date" => "", - "date_number" => "", - "date_required" => "", - "debit" => "", - "debit_filter" => "", - "description" => "", - "due" => "", - "due_filter" => "", - "employee" => "", - "error_adding_updating" => "", - "expense_id" => "", - "expenses_employee" => "", - "info" => "", - "ip_address" => "", - "is_deleted" => "", - "name_required" => "", - "new" => "", - "new_supplier" => "", - "no_expenses_to_display" => "", - "none_selected" => "", - "one_or_multiple" => "", - "payment" => "", - "start_typing_supplier_name" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "supplier_name" => "", - "supplier_tax_code" => "", - "tax_amount" => "", - "tax_amount_number" => "", - "update" => "", + "add_item" => "", + "amount" => "", + "amount_number" => "", + "amount_required" => "", + "by_category" => "", + "cannot_be_deleted" => "", + "cash" => "", + "cash_filter" => "", + "categories_name" => "", + "category_required" => "", + "check" => "", + "check_filter" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "credit" => "", + "credit_filter" => "", + "date" => "", + "date_number" => "", + "date_required" => "", + "debit" => "", + "debit_filter" => "", + "description" => "", + "due" => "", + "due_filter" => "", + "employee" => "", + "error_adding_updating" => "", + "expense_id" => "", + "expenses_employee" => "", + "info" => "", + "ip_address" => "", + "is_deleted" => "", + "name_required" => "", + "new" => "", + "new_supplier" => "", + "no_expenses_to_display" => "", + "none_selected" => "", + "one_or_multiple" => "", + "payment" => "", + "start_typing_supplier_name" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "supplier_name" => "", + "supplier_tax_code" => "", + "tax_amount" => "", + "tax_amount_number" => "", + "update" => "", ]; diff --git a/app/Language/ml/Expenses_categories.php b/app/Language/ml/Expenses_categories.php index 03169e528..7d3b08c27 100644 --- a/app/Language/ml/Expenses_categories.php +++ b/app/Language/ml/Expenses_categories.php @@ -1,22 +1,22 @@ "", - "add_item" => "", - "cannot_be_deleted" => "", - "category_id" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "description" => "", - "error_adding_updating" => "", - "info" => "", - "name" => "", - "new" => "", - "no_expenses_categories_to_display" => "", - "none_selected" => "", - "one_or_multiple" => "", - "quantity" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "update" => "", + "category_name_required" => "", + "add_item" => "", + "cannot_be_deleted" => "", + "category_id" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "description" => "", + "error_adding_updating" => "", + "info" => "", + "name" => "", + "new" => "", + "no_expenses_categories_to_display" => "", + "none_selected" => "", + "one_or_multiple" => "", + "quantity" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "update" => "", ]; diff --git a/app/Language/ml/Giftcards.php b/app/Language/ml/Giftcards.php index f1b1bd322..00d291498 100644 --- a/app/Language/ml/Giftcards.php +++ b/app/Language/ml/Giftcards.php @@ -1,71 +1,71 @@ "", - "allow_alt_description" => "", - "bulk_edit" => "", - "cannot_be_deleted" => "", - "cannot_find_giftcard" => "", - "cannot_use" => "", - "card_value" => "", - "category" => "", - "change_all_to_allow_alt_desc" => "", - "change_all_to_not_allow_allow_desc" => "", - "change_all_to_serialized" => "", - "change_all_to_unserialized" => "", - "confirm_bulk_edit" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "cost_price" => "", - "count" => "", - "csv_import_failed" => "", - "current_quantity" => "", - "description" => "", - "details_count" => "", - "do_nothing" => "", - "edit_fields_you_want_to_update" => "", - "edit_multiple_giftcards" => "", - "error_adding_updating" => "", - "error_updating_multiple" => "", - "generate_barcodes" => "", - "giftcard" => "", - "giftcard_number" => "", - "info_provided_by" => "", - "inventory_comments" => "", - "is_serialized" => "", - "low_inventory_giftcards" => "", - "manually_editing_of_quantity" => "", - "must_select_giftcard_for_barcode" => "", - "new" => "", - "no_description_giftcards" => "", - "no_giftcards_to_display" => "", - "none" => "", - "none_selected" => "", - "number" => "", - "number_information" => "", - "number_required" => "", - "one_or_multiple" => "", - "person_id" => "", - "quantity" => "", - "quantity_required" => "", - "remaining_balance" => "", - "reorder_level" => "", - "retrive_giftcard_info" => "", - "sales_tax_1" => "", - "sales_tax_2" => "", - "serialized_giftcards" => "", - "successful_adding" => "", - "successful_bulk_edit" => "", - "successful_deleted" => "", - "successful_updating" => "", - "supplier" => "", - "tax_1" => "", - "tax_2" => "", - "tax_percent" => "", - "tax_percents" => "", - "unit_price" => "", - "upc_database" => "", - "update" => "", - "use_inventory_menu" => "", - "value" => "", - "value_required" => "", + "add_minus" => "", + "allow_alt_description" => "", + "bulk_edit" => "", + "cannot_be_deleted" => "", + "cannot_find_giftcard" => "", + "cannot_use" => "", + "card_value" => "", + "category" => "", + "change_all_to_allow_alt_desc" => "", + "change_all_to_not_allow_allow_desc" => "", + "change_all_to_serialized" => "", + "change_all_to_unserialized" => "", + "confirm_bulk_edit" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "cost_price" => "", + "count" => "", + "csv_import_failed" => "", + "current_quantity" => "", + "description" => "", + "details_count" => "", + "do_nothing" => "", + "edit_fields_you_want_to_update" => "", + "edit_multiple_giftcards" => "", + "error_adding_updating" => "", + "error_updating_multiple" => "", + "generate_barcodes" => "", + "giftcard" => "", + "giftcard_number" => "", + "info_provided_by" => "", + "inventory_comments" => "", + "is_serialized" => "", + "low_inventory_giftcards" => "", + "manually_editing_of_quantity" => "", + "must_select_giftcard_for_barcode" => "", + "new" => "", + "no_description_giftcards" => "", + "no_giftcards_to_display" => "", + "none" => "", + "none_selected" => "", + "number" => "", + "number_information" => "", + "number_required" => "", + "one_or_multiple" => "", + "person_id" => "", + "quantity" => "", + "quantity_required" => "", + "remaining_balance" => "", + "reorder_level" => "", + "retrive_giftcard_info" => "", + "sales_tax_1" => "", + "sales_tax_2" => "", + "serialized_giftcards" => "", + "successful_adding" => "", + "successful_bulk_edit" => "", + "successful_deleted" => "", + "successful_updating" => "", + "supplier" => "", + "tax_1" => "", + "tax_2" => "", + "tax_percent" => "", + "tax_percents" => "", + "unit_price" => "", + "upc_database" => "", + "update" => "", + "use_inventory_menu" => "", + "value" => "", + "value_required" => "", ]; diff --git a/app/Language/ml/Item_kits.php b/app/Language/ml/Item_kits.php index 2f21a4963..370929649 100644 --- a/app/Language/ml/Item_kits.php +++ b/app/Language/ml/Item_kits.php @@ -1,41 +1,41 @@ "", - "all" => "", - "cannot_be_deleted" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "description" => "", - "discount" => "", - "discount_fixed" => "", - "discount_percent" => "", - "discount_type" => "", - "error_adding_updating" => "", - "find_kit_item" => "", - "info" => "", - "item" => "", - "item_kit_number" => "", - "item_kit_number_duplicate" => "", - "item_number" => "", - "item_number_duplicate" => "", - "items" => "", - "kit" => "", - "kit_and_components" => "", - "kit_and_stock" => "", - "kit_only" => "", - "name" => "", - "new" => "", - "no_item_kits_to_display" => "", - "none_selected" => "", - "one_or_multiple" => "", - "price_option" => "", - "priced_only" => "", - "print_option" => "", - "quantity" => "", - "sequence" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "unit_price" => "", - "update" => "", + "add_item" => "", + "all" => "", + "cannot_be_deleted" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "description" => "", + "discount" => "", + "discount_fixed" => "", + "discount_percent" => "", + "discount_type" => "", + "error_adding_updating" => "", + "find_kit_item" => "", + "info" => "", + "item" => "", + "item_kit_number" => "", + "item_kit_number_duplicate" => "", + "item_number" => "", + "item_number_duplicate" => "", + "items" => "", + "kit" => "", + "kit_and_components" => "", + "kit_and_stock" => "", + "kit_only" => "", + "name" => "", + "new" => "", + "no_item_kits_to_display" => "", + "none_selected" => "", + "one_or_multiple" => "", + "price_option" => "", + "priced_only" => "", + "print_option" => "", + "quantity" => "", + "sequence" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "unit_price" => "", + "update" => "", ]; diff --git a/app/Language/ml/Items.php b/app/Language/ml/Items.php index 9718385d0..25c0395e0 100644 --- a/app/Language/ml/Items.php +++ b/app/Language/ml/Items.php @@ -1,120 +1,120 @@ "", - "allow_alt_description" => "", - "amount_entry" => "", - "bulk_edit" => "", - "buy_price_required" => "", - "cannot_be_deleted" => "", - "cannot_find_item" => "", - "categories" => "", - "category" => "", - "category_new" => "", - "category_required" => "", - "change_all_to_allow_alt_desc" => "", - "change_all_to_not_allow_allow_desc" => "", - "change_all_to_serialized" => "", - "change_all_to_unserialized" => "", - "change_image" => "", - "confirm_bulk_edit" => "", - "confirm_bulk_edit_wipe_taxes" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "cost_price" => "", - "cost_price_number" => "", - "cost_price_required" => "", - "count" => "", - "csv_import_failed" => "", - "csv_import_nodata_wrongformat" => "", - "csv_import_partially_failed" => "", - "csv_import_success" => "", - "current_quantity" => "", - "default_pack_name" => "", - "description" => "", - "details_count" => "", - "do_nothing" => "", - "edit" => "", - "edit_fields_you_want_to_update" => "", - "edit_multiple_items" => "", - "empty_upc_items" => "", - "error_adding_updating" => "", - "error_updating_multiple" => "", - "generate_barcodes" => "", - "hsn_code" => "", - "image" => "", - "import_items_csv" => "", - "info_provided_by" => "", - "inventory" => "", - "inventory_CSV_import_quantity" => "", - "inventory_comments" => "", - "inventory_data_tracking" => "", - "inventory_date" => "", - "inventory_employee" => "", - "inventory_in_out_quantity" => "", - "inventory_remarks" => "", - "is_deleted" => "", - "is_printed" => "", - "is_serialized" => "", - "item" => "", - "item_id" => "", - "item_number" => "", - "item_number_duplicate" => "", - "kit" => "", - "location" => "", - "low_inventory_items" => "", - "low_sell_item" => "", - "manually_editing_of_quantity" => "", - "markup" => "", - "name" => "", - "name_required" => "", - "new" => "", - "no_description_items" => "", - "no_items_to_display" => "", - "none" => "", - "none_selected" => "", - "nonstock" => "", - "number_information" => "", - "number_required" => "", - "one_or_multiple" => "", - "pack_name" => "", - "qty_per_pack" => "", - "quantity" => "", - "quantity_number" => "", - "quantity_required" => "", - "receiving_quantity" => "", - "remove_image" => "", - "reorder_level" => "", - "reorder_level_number" => "", - "reorder_level_required" => "", - "retrive_item_info" => "", - "sales_tax_1" => "", - "sales_tax_2" => "", - "search_attributes" => "", - "select_image" => "", - "serialized_items" => "", - "standard" => "", - "stock" => "", - "stock_location" => "", - "stock_type" => "", - "successful_adding" => "", - "successful_bulk_edit" => "", - "successful_deleted" => "", - "successful_updating" => "", - "supplier" => "", - "tax_1" => "", - "tax_2" => "", - "tax_3" => "", - "tax_category" => "", - "tax_percent" => "", - "tax_percent_number" => "", - "tax_percent_required" => "", - "tax_percents" => "", - "temp" => "", - "type" => "", - "unit_price" => "", - "unit_price_number" => "", - "unit_price_required" => "", - "upc_database" => "", - "update" => "", - "use_inventory_menu" => "", + "add_minus" => "", + "allow_alt_description" => "", + "amount_entry" => "", + "bulk_edit" => "", + "buy_price_required" => "", + "cannot_be_deleted" => "", + "cannot_find_item" => "", + "categories" => "", + "category" => "", + "category_new" => "", + "category_required" => "", + "change_all_to_allow_alt_desc" => "", + "change_all_to_not_allow_allow_desc" => "", + "change_all_to_serialized" => "", + "change_all_to_unserialized" => "", + "change_image" => "", + "confirm_bulk_edit" => "", + "confirm_bulk_edit_wipe_taxes" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "cost_price" => "", + "cost_price_number" => "", + "cost_price_required" => "", + "count" => "", + "csv_import_failed" => "", + "csv_import_nodata_wrongformat" => "", + "csv_import_partially_failed" => "", + "csv_import_success" => "", + "current_quantity" => "", + "default_pack_name" => "", + "description" => "", + "details_count" => "", + "do_nothing" => "", + "edit" => "", + "edit_fields_you_want_to_update" => "", + "edit_multiple_items" => "", + "empty_upc_items" => "", + "error_adding_updating" => "", + "error_updating_multiple" => "", + "generate_barcodes" => "", + "hsn_code" => "", + "image" => "", + "import_items_csv" => "", + "info_provided_by" => "", + "inventory" => "", + "inventory_CSV_import_quantity" => "", + "inventory_comments" => "", + "inventory_data_tracking" => "", + "inventory_date" => "", + "inventory_employee" => "", + "inventory_in_out_quantity" => "", + "inventory_remarks" => "", + "is_deleted" => "", + "is_printed" => "", + "is_serialized" => "", + "item" => "", + "item_id" => "", + "item_number" => "", + "item_number_duplicate" => "", + "kit" => "", + "location" => "", + "low_inventory_items" => "", + "low_sell_item" => "", + "manually_editing_of_quantity" => "", + "markup" => "", + "name" => "", + "name_required" => "", + "new" => "", + "no_description_items" => "", + "no_items_to_display" => "", + "none" => "", + "none_selected" => "", + "nonstock" => "", + "number_information" => "", + "number_required" => "", + "one_or_multiple" => "", + "pack_name" => "", + "qty_per_pack" => "", + "quantity" => "", + "quantity_number" => "", + "quantity_required" => "", + "receiving_quantity" => "", + "remove_image" => "", + "reorder_level" => "", + "reorder_level_number" => "", + "reorder_level_required" => "", + "retrive_item_info" => "", + "sales_tax_1" => "", + "sales_tax_2" => "", + "search_attributes" => "", + "select_image" => "", + "serialized_items" => "", + "standard" => "", + "stock" => "", + "stock_location" => "", + "stock_type" => "", + "successful_adding" => "", + "successful_bulk_edit" => "", + "successful_deleted" => "", + "successful_updating" => "", + "supplier" => "", + "tax_1" => "", + "tax_2" => "", + "tax_3" => "", + "tax_category" => "", + "tax_percent" => "", + "tax_percent_number" => "", + "tax_percent_required" => "", + "tax_percents" => "", + "temp" => "", + "type" => "", + "unit_price" => "", + "unit_price_number" => "", + "unit_price_required" => "", + "upc_database" => "", + "update" => "", + "use_inventory_menu" => "", ]; diff --git a/app/Language/ml/Login.php b/app/Language/ml/Login.php index 4a73810c7..2a18ca41d 100644 --- a/app/Language/ml/Login.php +++ b/app/Language/ml/Login.php @@ -1,15 +1,15 @@ "", - "go" => "", - "invalid_gcaptcha" => "", - "invalid_installation" => "", - "invalid_username_and_password" => "", - "login" => "", - "logout" => "", - "migration_needed" => "", - "password" => "", - "required_username" => "", - "username" => "", - "welcome" => "", + "gcaptcha" => "", + "go" => "", + "invalid_gcaptcha" => "", + "invalid_installation" => "", + "invalid_username_and_password" => "", + "login" => "", + "logout" => "", + "migration_needed" => "", + "password" => "", + "required_username" => "", + "username" => "", + "welcome" => "", ]; diff --git a/app/Language/ml/Messages.php b/app/Language/ml/Messages.php index ce3a2e233..3079da504 100644 --- a/app/Language/ml/Messages.php +++ b/app/Language/ml/Messages.php @@ -1,15 +1,15 @@ "", - "last_name" => "", - "message" => "", - "message_placeholder" => "", - "message_required" => "", - "multiple_phones" => "", - "phone" => "", - "phone_number_required" => "", - "phone_placeholder" => "", - "sms_send" => "", - "successfully_sent" => "", - "unsuccessfully_sent" => "", + "first_name" => "", + "last_name" => "", + "message" => "", + "message_placeholder" => "", + "message_required" => "", + "multiple_phones" => "", + "phone" => "", + "phone_number_required" => "", + "phone_placeholder" => "", + "sms_send" => "", + "successfully_sent" => "", + "unsuccessfully_sent" => "", ]; diff --git a/app/Language/ml/Module.php b/app/Language/ml/Module.php index f2ad04586..fb277bc95 100644 --- a/app/Language/ml/Module.php +++ b/app/Language/ml/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "", - "attributes_desc" => "", - "both" => "", - "cashups" => "", - "cashups_desc" => "", - "config" => "", - "config_desc" => "", - "customers" => "", - "customers_desc" => "", - "employees" => "", - "employees_desc" => "", - "expenses" => "", - "expenses_categories" => "", - "expenses_categories_desc" => "", - "expenses_desc" => "", - "giftcards" => "", - "giftcards_desc" => "", - "home" => "", - "home_desc" => "", - "item_kits" => "", - "item_kits_desc" => "", - "items" => "", - "items_desc" => "", - "messages" => "", - "messages_desc" => "", - "migrate" => "", - "migrate_desc" => "", - "office" => "", - "office_desc" => "", - "receivings" => "", - "receivings_desc" => "", - "reports" => "", - "reports_desc" => "", - "sales" => "", - "sales_desc" => "", - "suppliers" => "", - "suppliers_desc" => "", - "taxes" => "", - "taxes_desc" => "", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "", + "attributes_desc" => "", + "both" => "", + "cashups" => "", + "cashups_desc" => "", + "config" => "", + "config_desc" => "", + "customers" => "", + "customers_desc" => "", + "employees" => "", + "employees_desc" => "", + "expenses" => "", + "expenses_categories" => "", + "expenses_categories_desc" => "", + "expenses_desc" => "", + "giftcards" => "", + "giftcards_desc" => "", + "home" => "", + "home_desc" => "", + "item_kits" => "", + "item_kits_desc" => "", + "items" => "", + "items_desc" => "", + "messages" => "", + "messages_desc" => "", + "migrate" => "", + "migrate_desc" => "", + "office" => "", + "office_desc" => "", + "receivings" => "", + "receivings_desc" => "", + "reports" => "", + "reports_desc" => "", + "sales" => "", + "sales_desc" => "", + "suppliers" => "", + "suppliers_desc" => "", + "taxes" => "", + "taxes_desc" => "", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/ml/Receivings.php b/app/Language/ml/Receivings.php index 4ffca4df7..0936f4851 100644 --- a/app/Language/ml/Receivings.php +++ b/app/Language/ml/Receivings.php @@ -1,58 +1,58 @@ "", - "cancel_receiving" => "", - "cannot_be_deleted" => "", - "comments" => "", - "complete_receiving" => "", - "confirm_cancel_receiving" => "", - "confirm_delete" => "", - "confirm_finish_receiving" => "", - "confirm_restore" => "", - "cost" => "", - "daily" => "", - "date" => "", - "date_required" => "", - "date_type" => "", - "delete_entire_sale" => "", - "discount" => "", - "edit" => "", - "edit_sale" => "", - "employee" => "", - "error_editing_item" => "", - "error_requisition" => "", - "find_or_scan_item" => "", - "find_or_scan_item_or_receipt" => "", - "id" => "", - "item_name" => "", - "mode" => "", - "new_supplier" => "", - "one_or_multiple" => "", - "print_after_sale" => "", - "quantity" => "", - "receipt" => "", - "receipt_number" => "", - "receiving" => "", - "reference" => "", - "register" => "", - "requisition" => "", - "return" => "", - "select_supplier" => "", - "ship_pack" => "", - "start_typing_supplier_name" => "", - "stock" => "", - "stock_destination" => "", - "stock_locaiton" => "", - "stock_source" => "", - "successfully_deleted" => "", - "successfully_updated" => "", - "supplier" => "", - "supplier_address" => "", - "supplier_email" => "", - "supplier_location" => "", - "total" => "", - "transaction_failed" => "", - "unable_to_add_item" => "", - "unsuccessfully_updated" => "", - "update" => "", + "amount_due" => "", + "cancel_receiving" => "", + "cannot_be_deleted" => "", + "comments" => "", + "complete_receiving" => "", + "confirm_cancel_receiving" => "", + "confirm_delete" => "", + "confirm_finish_receiving" => "", + "confirm_restore" => "", + "cost" => "", + "daily" => "", + "date" => "", + "date_required" => "", + "date_type" => "", + "delete_entire_sale" => "", + "discount" => "", + "edit" => "", + "edit_sale" => "", + "employee" => "", + "error_editing_item" => "", + "error_requisition" => "", + "find_or_scan_item" => "", + "find_or_scan_item_or_receipt" => "", + "id" => "", + "item_name" => "", + "mode" => "", + "new_supplier" => "", + "one_or_multiple" => "", + "print_after_sale" => "", + "quantity" => "", + "receipt" => "", + "receipt_number" => "", + "receiving" => "", + "reference" => "", + "register" => "", + "requisition" => "", + "return" => "", + "select_supplier" => "", + "ship_pack" => "", + "start_typing_supplier_name" => "", + "stock" => "", + "stock_destination" => "", + "stock_locaiton" => "", + "stock_source" => "", + "successfully_deleted" => "", + "successfully_updated" => "", + "supplier" => "", + "supplier_address" => "", + "supplier_email" => "", + "supplier_location" => "", + "total" => "", + "transaction_failed" => "", + "unable_to_add_item" => "", + "unsuccessfully_updated" => "", + "update" => "", ]; diff --git a/app/Language/ml/Reports.php b/app/Language/ml/Reports.php index c8f0dcce9..cde8daff6 100644 --- a/app/Language/ml/Reports.php +++ b/app/Language/ml/Reports.php @@ -1,148 +1,148 @@ "", - "authority" => "", - "canceled" => "", - "categories" => "", - "categories_summary_report" => "", - "category" => "", - "code_canceled" => "", - "code_invoice" => "", - "code_pos" => "", - "code_quote" => "", - "code_return" => "", - "code_type" => "", - "code_work_order" => "", - "comments" => "", - "commission" => "", - "complete" => "", - "completed_sales" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "cost" => "", - "cost_price" => "", - "count" => "", - "customer" => "", - "customers" => "", - "customers_summary_report" => "", - "date" => "", - "date_range" => "", - "description" => "", - "detailed_receivings_report" => "", - "detailed_receivings_report_input" => "", - "detailed_reports" => "", - "detailed_requisition_report" => "", - "detailed_sales_report" => "", - "discount" => "", - "discount_fixed" => "", - "discount_percent" => "", - "discount_type" => "", - "discounts" => "", - "discounts_summary_report" => "", - "earned" => "", - "employee" => "", - "employees" => "", - "employees_summary_report" => "", - "expenses" => "", - "expenses_amount" => "", - "expenses_categories" => "", - "expenses_categories_summary_report" => "", - "expenses_category" => "", - "expenses_payment_amount" => "", - "expenses_tax_amount" => "", - "expenses_total_amount" => "", - "expenses_total_tax_amount" => "", - "graphical_reports" => "", - "inventory" => "", - "inventory_low" => "", - "inventory_low_report" => "", - "inventory_reports" => "", - "inventory_summary" => "", - "inventory_summary_report" => "", - "item" => "", - "item_count" => "", - "item_name" => "", - "item_number" => "", - "items" => "", - "items_purchased" => "", - "items_received" => "", - "items_summary_report" => "", - "jurisdiction" => "", - "low_inventory" => "", - "low_inventory_report" => "", - "low_sell_quantity" => "", - "more_than_zero" => "", - "name" => "", - "no_reports_to_display" => "", - "payment_type" => "", - "payments" => "", - "payments_summary_report" => "", - "profit" => "", - "quantity" => "", - "quantity_purchased" => "", - "quotes" => "", - "received_by" => "", - "receiving_id" => "", - "receiving_type" => "", - "receivings" => "", - "reorder_level" => "", - "report" => "", - "report_input" => "", - "reports" => "", - "requisition" => "", - "requisition_by" => "", - "requisition_id" => "", - "requisition_item" => "", - "requisition_item_quantity" => "", - "requisition_related_item" => "", - "requisition_related_item_total_quantity" => "", - "requisition_related_item_unit_quantity" => "", - "requisitions" => "", - "returns" => "", - "revenue" => "", - "sale_id" => "", - "sale_type" => "", - "sales" => "", - "sales_amount" => "", - "sales_summary_report" => "", - "sales_taxes" => "", - "sales_taxes_summary_report" => "", - "serial_number" => "", - "service_charge" => "", - "sold_by" => "", - "sold_items" => "", - "sold_to" => "", - "stock_location" => "", - "sub_total_value" => "", - "subtotal" => "", - "summary_reports" => "", - "supplied_by" => "", - "supplier" => "", - "suppliers" => "", - "suppliers_summary_report" => "", - "tax" => "", - "tax_category" => "", - "tax_name" => "", - "tax_percent" => "", - "tax_rate" => "", - "taxes" => "", - "taxes_summary_report" => "", - "total" => "", - "total_inventory_value" => "", - "total_low_sell_quantity" => "", - "total_quantity" => "", - "total_retail" => "", - "trans_amount" => "", - "trans_due" => "", - "trans_group" => "", - "trans_nopay_sales" => "", - "trans_payments" => "", - "trans_refunded" => "", - "trans_sales" => "", - "trans_type" => "", - "type" => "", - "unit_price" => "", - "used" => "", - "work_orders" => "", - "zero_and_less" => "", + "all" => "", + "authority" => "", + "canceled" => "", + "categories" => "", + "categories_summary_report" => "", + "category" => "", + "code_canceled" => "", + "code_invoice" => "", + "code_pos" => "", + "code_quote" => "", + "code_return" => "", + "code_type" => "", + "code_work_order" => "", + "comments" => "", + "commission" => "", + "complete" => "", + "completed_sales" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "cost" => "", + "cost_price" => "", + "count" => "", + "customer" => "", + "customers" => "", + "customers_summary_report" => "", + "date" => "", + "date_range" => "", + "description" => "", + "detailed_receivings_report" => "", + "detailed_receivings_report_input" => "", + "detailed_reports" => "", + "detailed_requisition_report" => "", + "detailed_sales_report" => "", + "discount" => "", + "discount_fixed" => "", + "discount_percent" => "", + "discount_type" => "", + "discounts" => "", + "discounts_summary_report" => "", + "earned" => "", + "employee" => "", + "employees" => "", + "employees_summary_report" => "", + "expenses" => "", + "expenses_amount" => "", + "expenses_categories" => "", + "expenses_categories_summary_report" => "", + "expenses_category" => "", + "expenses_payment_amount" => "", + "expenses_tax_amount" => "", + "expenses_total_amount" => "", + "expenses_total_tax_amount" => "", + "graphical_reports" => "", + "inventory" => "", + "inventory_low" => "", + "inventory_low_report" => "", + "inventory_reports" => "", + "inventory_summary" => "", + "inventory_summary_report" => "", + "item" => "", + "item_count" => "", + "item_name" => "", + "item_number" => "", + "items" => "", + "items_purchased" => "", + "items_received" => "", + "items_summary_report" => "", + "jurisdiction" => "", + "low_inventory" => "", + "low_inventory_report" => "", + "low_sell_quantity" => "", + "more_than_zero" => "", + "name" => "", + "no_reports_to_display" => "", + "payment_type" => "", + "payments" => "", + "payments_summary_report" => "", + "profit" => "", + "quantity" => "", + "quantity_purchased" => "", + "quotes" => "", + "received_by" => "", + "receiving_id" => "", + "receiving_type" => "", + "receivings" => "", + "reorder_level" => "", + "report" => "", + "report_input" => "", + "reports" => "", + "requisition" => "", + "requisition_by" => "", + "requisition_id" => "", + "requisition_item" => "", + "requisition_item_quantity" => "", + "requisition_related_item" => "", + "requisition_related_item_total_quantity" => "", + "requisition_related_item_unit_quantity" => "", + "requisitions" => "", + "returns" => "", + "revenue" => "", + "sale_id" => "", + "sale_type" => "", + "sales" => "", + "sales_amount" => "", + "sales_summary_report" => "", + "sales_taxes" => "", + "sales_taxes_summary_report" => "", + "serial_number" => "", + "service_charge" => "", + "sold_by" => "", + "sold_items" => "", + "sold_to" => "", + "stock_location" => "", + "sub_total_value" => "", + "subtotal" => "", + "summary_reports" => "", + "supplied_by" => "", + "supplier" => "", + "suppliers" => "", + "suppliers_summary_report" => "", + "tax" => "", + "tax_category" => "", + "tax_name" => "", + "tax_percent" => "", + "tax_rate" => "", + "taxes" => "", + "taxes_summary_report" => "", + "total" => "", + "total_inventory_value" => "", + "total_low_sell_quantity" => "", + "total_quantity" => "", + "total_retail" => "", + "trans_amount" => "", + "trans_due" => "", + "trans_group" => "", + "trans_nopay_sales" => "", + "trans_payments" => "", + "trans_refunded" => "", + "trans_sales" => "", + "trans_type" => "", + "type" => "", + "unit_price" => "", + "used" => "", + "work_orders" => "", + "zero_and_less" => "", ]; diff --git a/app/Language/ml/Sales.php b/app/Language/ml/Sales.php index 6a63d9f51..da1a62b40 100644 --- a/app/Language/ml/Sales.php +++ b/app/Language/ml/Sales.php @@ -1,224 +1,224 @@ "", - "rewards_package" => "", - "rewards_remaining_balance" => "", - "account_number" => "", - "add_payment" => "", - "amount_due" => "", - "amount_tendered" => "", - "authorized_signature" => "", - "cancel_sale" => "", - "cash" => "", - "cash_1" => "", - "cash_2" => "", - "cash_3" => "", - "cash_4" => "", - "cash_adjustment" => "", - "cash_deposit" => "", - "cash_filter" => "", - "change_due" => "", - "change_price" => "", - "check" => "", - "check_balance" => "", - "check_filter" => "", - "close" => "", - "comment" => "", - "comments" => "", - "company_name" => "", - "complete" => "", - "complete_sale" => "", - "confirm_cancel_sale" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "credit" => "", - "credit_deposit" => "", - "credit_filter" => "", - "current_table" => "", - "customer" => "", - "customer_address" => "", - "customer_discount" => "", - "customer_email" => "", - "customer_location" => "", - "customer_mailchimp_status" => "", - "customer_optional" => "", - "customer_required" => "", - "customer_total" => "", - "customer_total_spent" => "", - "daily_sales" => "", - "date" => "", - "date_range" => "", - "date_required" => "", - "date_type" => "", - "debit" => "", - "debit_filter" => "", - "delete" => "", - "delete_confirmation" => "", - "delete_entire_sale" => "", - "delete_successful" => "", - "delete_unsuccessful" => "", - "description_abbrv" => "", - "discard" => "", - "discard_quote" => "", - "discount" => "", - "discount_included" => "", - "discount_short" => "", - "due" => "", - "due_filter" => "", - "edit" => "", - "edit_item" => "", - "edit_sale" => "", - "email_receipt" => "", - "employee" => "", - "entry" => "", - "error_editing_item" => "", - "find_or_scan_item" => "", - "find_or_scan_item_or_receipt" => "", - "giftcard" => "", - "giftcard_balance" => "", - "giftcard_filter" => "", - "giftcard_number" => "", - "group_by_category" => "", - "group_by_type" => "", - "hsn" => "", - "id" => "", - "include_prices" => "", - "invoice" => "", - "invoice_confirm" => "", - "invoice_enable" => "", - "invoice_filter" => "", - "invoice_no_email" => "", - "invoice_number" => "", - "invoice_number_duplicate" => "", - "invoice_sent" => "", - "invoice_total" => "", - "invoice_type_custom_invoice" => "", - "invoice_type_custom_tax_invoice" => "", - "invoice_type_invoice" => "", - "invoice_type_tax_invoice" => "", - "invoice_unsent" => "", - "invoice_update" => "", - "item_insufficient_of_stock" => "", - "item_name" => "", - "item_number" => "", - "item_out_of_stock" => "", - "key_browser" => "", - "key_cancel" => "Cancels Current Quote/Invoice/Sale", - "key_customer_search" => "Customer Search", - "key_finish_quote" => "Finish Quote/Invoice witdout payment", - "key_finish_sale" => "Add Payment and Complete Invoice/Sale", - "key_full" => "", - "key_function" => "Function", - "key_help" => "Shortcuts", - "key_help_modal" => "Open Shortcuts Window", - "key_in" => "", - "key_item_search" => "Item Search", - "key_out" => "", - "key_payment" => "Add Payment", - "key_print" => "", - "key_restore" => "", - "key_search" => "", - "key_suspend" => "Suspend Current Sale", - "key_suspended" => "Show Suspended Sales", - "key_system" => "", - "key_tendered" => "Edit Amount Tendered", - "key_title" => "Sales Keyboard Shortcuts", - "mc" => "", - "mode" => "", - "must_enter_numeric" => "", - "must_enter_numeric_giftcard" => "", - "new_customer" => "", - "new_item" => "", - "no_description" => "", - "no_filter" => "", - "no_items_in_cart" => "", - "no_sales_to_display" => "", - "none_selected" => "", - "nontaxed_ind" => "", - "not_authorized" => "", - "one_or_multiple" => "", - "payment" => "", - "payment_amount" => "", - "payment_not_cover_total" => "", - "payment_type" => "", - "payments" => "", - "payments_total" => "", - "price" => "", - "print_after_sale" => "", - "quantity" => "", - "quantity_less_than_reorder_level" => "", - "quantity_less_than_zero" => "", - "quantity_of_items" => "", - "quote" => "", - "quote_number" => "", - "quote_number_duplicate" => "", - "quote_sent" => "", - "quote_unsent" => "", - "receipt" => "", - "receipt_no_email" => "", - "receipt_number" => "", - "receipt_sent" => "", - "receipt_unsent" => "", - "refund" => "", - "register" => "", - "remove_customer" => "", - "remove_discount" => "", - "return" => "", - "rewards" => "", - "rewards_balance" => "", - "sale" => "", - "sale_by_invoice" => "", - "sale_for_customer" => "", - "sale_time" => "", - "sales_tax" => "", - "sales_total" => "", - "select_customer" => "", - "send_invoice" => "", - "send_quote" => "", - "send_receipt" => "", - "send_work_order" => "", - "serial" => "", - "service_charge" => "", - "show_due" => "", - "show_invoice" => "", - "show_receipt" => "", - "start_typing_customer_name" => "", - "start_typing_item_name" => "", - "stock" => "", - "stock_location" => "", - "sub_total" => "", - "successfully_deleted" => "", - "successfully_restored" => "", - "successfully_suspended_sale" => "", - "successfully_updated" => "", - "suspend_sale" => "", - "suspended_doc_id" => "", - "suspended_sale_id" => "", - "suspended_sales" => "", - "table" => "", - "takings" => "", - "tax" => "", - "tax_id" => "", - "tax_invoice" => "", - "tax_percent" => "", - "taxed_ind" => "", - "total" => "", - "total_tax_exclusive" => "", - "transaction_failed" => "", - "unable_to_add_item" => "", - "unsuccessfully_deleted" => "", - "unsuccessfully_restored" => "", - "unsuccessfully_suspended_sale" => "", - "unsuccessfully_updated" => "", - "unsuspend" => "", - "unsuspend_and_delete" => "", - "update" => "", - "upi" => "", - "visa" => "", - "wholesale" => "", - "work_order" => "", - "work_order_number" => "", - "work_order_number_duplicate" => "", - "work_order_sent" => "", - "work_order_unsent" => "", + "customers_available_points" => "", + "rewards_package" => "", + "rewards_remaining_balance" => "", + "account_number" => "", + "add_payment" => "", + "amount_due" => "", + "amount_tendered" => "", + "authorized_signature" => "", + "cancel_sale" => "", + "cash" => "", + "cash_1" => "", + "cash_2" => "", + "cash_3" => "", + "cash_4" => "", + "cash_adjustment" => "", + "cash_deposit" => "", + "cash_filter" => "", + "change_due" => "", + "change_price" => "", + "check" => "", + "check_balance" => "", + "check_filter" => "", + "close" => "", + "comment" => "", + "comments" => "", + "company_name" => "", + "complete" => "", + "complete_sale" => "", + "confirm_cancel_sale" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "credit" => "", + "credit_deposit" => "", + "credit_filter" => "", + "current_table" => "", + "customer" => "", + "customer_address" => "", + "customer_discount" => "", + "customer_email" => "", + "customer_location" => "", + "customer_mailchimp_status" => "", + "customer_optional" => "", + "customer_required" => "", + "customer_total" => "", + "customer_total_spent" => "", + "daily_sales" => "", + "date" => "", + "date_range" => "", + "date_required" => "", + "date_type" => "", + "debit" => "", + "debit_filter" => "", + "delete" => "", + "delete_confirmation" => "", + "delete_entire_sale" => "", + "delete_successful" => "", + "delete_unsuccessful" => "", + "description_abbrv" => "", + "discard" => "", + "discard_quote" => "", + "discount" => "", + "discount_included" => "", + "discount_short" => "", + "due" => "", + "due_filter" => "", + "edit" => "", + "edit_item" => "", + "edit_sale" => "", + "email_receipt" => "", + "employee" => "", + "entry" => "", + "error_editing_item" => "", + "find_or_scan_item" => "", + "find_or_scan_item_or_receipt" => "", + "giftcard" => "", + "giftcard_balance" => "", + "giftcard_filter" => "", + "giftcard_number" => "", + "group_by_category" => "", + "group_by_type" => "", + "hsn" => "", + "id" => "", + "include_prices" => "", + "invoice" => "", + "invoice_confirm" => "", + "invoice_enable" => "", + "invoice_filter" => "", + "invoice_no_email" => "", + "invoice_number" => "", + "invoice_number_duplicate" => "", + "invoice_sent" => "", + "invoice_total" => "", + "invoice_type_custom_invoice" => "", + "invoice_type_custom_tax_invoice" => "", + "invoice_type_invoice" => "", + "invoice_type_tax_invoice" => "", + "invoice_unsent" => "", + "invoice_update" => "", + "item_insufficient_of_stock" => "", + "item_name" => "", + "item_number" => "", + "item_out_of_stock" => "", + "key_browser" => "", + "key_cancel" => "Cancels Current Quote/Invoice/Sale", + "key_customer_search" => "Customer Search", + "key_finish_quote" => "Finish Quote/Invoice witdout payment", + "key_finish_sale" => "Add Payment and Complete Invoice/Sale", + "key_full" => "", + "key_function" => "Function", + "key_help" => "Shortcuts", + "key_help_modal" => "Open Shortcuts Window", + "key_in" => "", + "key_item_search" => "Item Search", + "key_out" => "", + "key_payment" => "Add Payment", + "key_print" => "", + "key_restore" => "", + "key_search" => "", + "key_suspend" => "Suspend Current Sale", + "key_suspended" => "Show Suspended Sales", + "key_system" => "", + "key_tendered" => "Edit Amount Tendered", + "key_title" => "Sales Keyboard Shortcuts", + "mc" => "", + "mode" => "", + "must_enter_numeric" => "", + "must_enter_numeric_giftcard" => "", + "new_customer" => "", + "new_item" => "", + "no_description" => "", + "no_filter" => "", + "no_items_in_cart" => "", + "no_sales_to_display" => "", + "none_selected" => "", + "nontaxed_ind" => "", + "not_authorized" => "", + "one_or_multiple" => "", + "payment" => "", + "payment_amount" => "", + "payment_not_cover_total" => "", + "payment_type" => "", + "payments" => "", + "payments_total" => "", + "price" => "", + "print_after_sale" => "", + "quantity" => "", + "quantity_less_than_reorder_level" => "", + "quantity_less_than_zero" => "", + "quantity_of_items" => "", + "quote" => "", + "quote_number" => "", + "quote_number_duplicate" => "", + "quote_sent" => "", + "quote_unsent" => "", + "receipt" => "", + "receipt_no_email" => "", + "receipt_number" => "", + "receipt_sent" => "", + "receipt_unsent" => "", + "refund" => "", + "register" => "", + "remove_customer" => "", + "remove_discount" => "", + "return" => "", + "rewards" => "", + "rewards_balance" => "", + "sale" => "", + "sale_by_invoice" => "", + "sale_for_customer" => "", + "sale_time" => "", + "sales_tax" => "", + "sales_total" => "", + "select_customer" => "", + "send_invoice" => "", + "send_quote" => "", + "send_receipt" => "", + "send_work_order" => "", + "serial" => "", + "service_charge" => "", + "show_due" => "", + "show_invoice" => "", + "show_receipt" => "", + "start_typing_customer_name" => "", + "start_typing_item_name" => "", + "stock" => "", + "stock_location" => "", + "sub_total" => "", + "successfully_deleted" => "", + "successfully_restored" => "", + "successfully_suspended_sale" => "", + "successfully_updated" => "", + "suspend_sale" => "", + "suspended_doc_id" => "", + "suspended_sale_id" => "", + "suspended_sales" => "", + "table" => "", + "takings" => "", + "tax" => "", + "tax_id" => "", + "tax_invoice" => "", + "tax_percent" => "", + "taxed_ind" => "", + "total" => "", + "total_tax_exclusive" => "", + "transaction_failed" => "", + "unable_to_add_item" => "", + "unsuccessfully_deleted" => "", + "unsuccessfully_restored" => "", + "unsuccessfully_suspended_sale" => "", + "unsuccessfully_updated" => "", + "unsuspend" => "", + "unsuspend_and_delete" => "", + "update" => "", + "upi" => "", + "visa" => "", + "wholesale" => "", + "work_order" => "", + "work_order_number" => "", + "work_order_number_duplicate" => "", + "work_order_sent" => "", + "work_order_unsent" => "", ]; diff --git a/app/Language/ml/Suppliers.php b/app/Language/ml/Suppliers.php index f26bc2195..3a9fa4cac 100644 --- a/app/Language/ml/Suppliers.php +++ b/app/Language/ml/Suppliers.php @@ -1,24 +1,24 @@ "", - "agency_name" => "", - "cannot_be_deleted" => "", - "category" => "", - "company_name" => "", - "company_name_required" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "cost" => "", - "error_adding_updating" => "", - "goods" => "", - "new" => "", - "none_selected" => "", - "one_or_multiple" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "supplier" => "", - "supplier_id" => "", - "tax_id" => "", - "update" => "", + "account_number" => "", + "agency_name" => "", + "cannot_be_deleted" => "", + "category" => "", + "company_name" => "", + "company_name_required" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "cost" => "", + "error_adding_updating" => "", + "goods" => "", + "new" => "", + "none_selected" => "", + "one_or_multiple" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "supplier" => "", + "supplier_id" => "", + "tax_id" => "", + "update" => "", ]; diff --git a/app/Language/ml/Taxes.php b/app/Language/ml/Taxes.php index 6ae3d5b76..691ff9bb3 100644 --- a/app/Language/ml/Taxes.php +++ b/app/Language/ml/Taxes.php @@ -1,82 +1,82 @@ "", - "cascade" => "", - "cascade_sequence" => "", - "city" => "", - "code" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "default_tax_category" => "", - "default_tax_rate" => "", - "error_adding_updating" => "", - "group_seq" => "", - "jurisdiction_name" => "", - "name" => "", - "new" => "", - "no_taxes" => "", - "no_taxes_to_display" => "", - "reporting_authority" => "", - "round_half_down" => "", - "round_half_even" => "", - "round_half_odd" => "", - "round_half_up" => "", - "rounding_code" => "", - "sales_tax" => "", - "sales_tax_by_invoice" => "", - "sequence" => "", - "state" => "", - "successful_deleted" => "", - "tax_categories" => "", - "tax_categories_configuration" => "", - "tax_categories_saved_successfully" => "", - "tax_categories_saved_unsuccessfully" => "", - "tax_category" => "", - "tax_category_code" => "", - "tax_category_duplicate" => "", - "tax_category_invalid_chars" => "", - "tax_category_name" => "", - "tax_category_new" => "", - "tax_category_required" => "", - "tax_code" => "", - "tax_code_cannot_be_deleted" => "", - "tax_code_duplicate" => "", - "tax_code_invalid_chars" => "", - "tax_code_name" => "", - "tax_code_required" => "", - "tax_code_successful_deleted" => "", - "tax_code_successful_updated" => "", - "tax_code_successful_updating" => "", - "tax_code_successfully_added" => "", - "tax_code_type" => "", - "tax_codes" => "", - "tax_codes_configuration" => "", - "tax_codes_saved_successfully" => "", - "tax_codes_saved_unsuccessfully" => "", - "tax_excluded" => "", - "tax_group" => "", - "tax_group_not_unique" => "", - "tax_group_sequence" => "", - "tax_included" => "", - "tax_jurisdiction" => "", - "tax_jurisdiction_duplicate" => "", - "tax_jurisdiction_invalid_chars" => "", - "tax_jurisdiction_required" => "", - "tax_jurisdictions" => "", - "tax_jurisdictions_configuration" => "", - "tax_jurisdictions_saved_successfully" => "", - "tax_jurisdictions_saved_unsuccessfully" => "", - "tax_rate" => "", - "tax_rate_configuration" => "", - "tax_rate_error_adding_updating" => "", - "tax_rate_numeric" => "", - "tax_rate_required" => "", - "tax_rate_successful_updated" => "", - "tax_rate_successfully_added" => "", - "tax_rates" => "", - "tax_rates_configuration" => "", - "tax_rounding" => "", - "tax_type" => "", - "update" => "", - "vat_tax" => "", + "add_exception" => "", + "cascade" => "", + "cascade_sequence" => "", + "city" => "", + "code" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "default_tax_category" => "", + "default_tax_rate" => "", + "error_adding_updating" => "", + "group_seq" => "", + "jurisdiction_name" => "", + "name" => "", + "new" => "", + "no_taxes" => "", + "no_taxes_to_display" => "", + "reporting_authority" => "", + "round_half_down" => "", + "round_half_even" => "", + "round_half_odd" => "", + "round_half_up" => "", + "rounding_code" => "", + "sales_tax" => "", + "sales_tax_by_invoice" => "", + "sequence" => "", + "state" => "", + "successful_deleted" => "", + "tax_categories" => "", + "tax_categories_configuration" => "", + "tax_categories_saved_successfully" => "", + "tax_categories_saved_unsuccessfully" => "", + "tax_category" => "", + "tax_category_code" => "", + "tax_category_duplicate" => "", + "tax_category_invalid_chars" => "", + "tax_category_name" => "", + "tax_category_new" => "", + "tax_category_required" => "", + "tax_code" => "", + "tax_code_cannot_be_deleted" => "", + "tax_code_duplicate" => "", + "tax_code_invalid_chars" => "", + "tax_code_name" => "", + "tax_code_required" => "", + "tax_code_successful_deleted" => "", + "tax_code_successful_updated" => "", + "tax_code_successful_updating" => "", + "tax_code_successfully_added" => "", + "tax_code_type" => "", + "tax_codes" => "", + "tax_codes_configuration" => "", + "tax_codes_saved_successfully" => "", + "tax_codes_saved_unsuccessfully" => "", + "tax_excluded" => "", + "tax_group" => "", + "tax_group_not_unique" => "", + "tax_group_sequence" => "", + "tax_included" => "", + "tax_jurisdiction" => "", + "tax_jurisdiction_duplicate" => "", + "tax_jurisdiction_invalid_chars" => "", + "tax_jurisdiction_required" => "", + "tax_jurisdictions" => "", + "tax_jurisdictions_configuration" => "", + "tax_jurisdictions_saved_successfully" => "", + "tax_jurisdictions_saved_unsuccessfully" => "", + "tax_rate" => "", + "tax_rate_configuration" => "", + "tax_rate_error_adding_updating" => "", + "tax_rate_numeric" => "", + "tax_rate_required" => "", + "tax_rate_successful_updated" => "", + "tax_rate_successfully_added" => "", + "tax_rates" => "", + "tax_rates_configuration" => "", + "tax_rounding" => "", + "tax_type" => "", + "update" => "", + "vat_tax" => "", ]; diff --git a/app/Language/nb/Attributes.php b/app/Language/nb/Attributes.php index 6cb526d64..95abf8096 100644 --- a/app/Language/nb/Attributes.php +++ b/app/Language/nb/Attributes.php @@ -1,32 +1,32 @@ "Attribute value cannot contain ':' or '|'", - "confirm_delete" => "Are you sure you want to delete the selected attribute(s)?", - "confirm_restore" => "Are you sure you want to restore the selected attribute(s)?", - "definition_cannot_be_deleted" => "Could not delete selected attribute(s)", - "definition_error_adding_updating" => "Attribute {0} could not be added or updated. Please check the error log.", - "definition_flags" => "Attribute Visibility", - "definition_group" => "Group", - "definition_id" => "Id", - "definition_name" => "Add Attribute", - "definition_name_required" => "Attribute name is a required field", - "definition_one_or_multiple" => "attribute(s)", - "definition_successful_adding" => "You have successfully added item", - "definition_successful_deleted" => "You have successfully deleted", - "definition_successful_updating" => "You have successfully updated attribute", - "definition_type" => "Attribute Type", - "definition_type_required" => "Attribute type is a required field", - "definition_unit" => "Measurement Unit", - "definition_values" => "Attribute Values", - "new" => "New Attribute", - "no_attributes_to_display" => "No Items to display", - "receipt_visibility" => "Receipt", - "show_in_items" => "Show in items", - "show_in_items_visibility" => "Items", - "show_in_receipt" => "Show in receipt", - "show_in_receivings" => "Show in receivings", - "show_in_receivings_visibility" => "Receivings", - "show_in_sales" => "Show in sales", - "show_in_sales_visibility" => "Sales", - "update" => "Update Attribute", + "attribute_value_invalid_chars" => "Attribute value cannot contain ':' or '|'", + "confirm_delete" => "Are you sure you want to delete the selected attribute(s)?", + "confirm_restore" => "Are you sure you want to restore the selected attribute(s)?", + "definition_cannot_be_deleted" => "Could not delete selected attribute(s)", + "definition_error_adding_updating" => "Attribute {0} could not be added or updated. Please check the error log.", + "definition_flags" => "Attribute Visibility", + "definition_group" => "Group", + "definition_id" => "Id", + "definition_name" => "Add Attribute", + "definition_name_required" => "Attribute name is a required field", + "definition_one_or_multiple" => "attribute(s)", + "definition_successful_adding" => "You have successfully added item", + "definition_successful_deleted" => "You have successfully deleted", + "definition_successful_updating" => "You have successfully updated attribute", + "definition_type" => "Attribute Type", + "definition_type_required" => "Attribute type is a required field", + "definition_unit" => "Measurement Unit", + "definition_values" => "Attribute Values", + "new" => "New Attribute", + "no_attributes_to_display" => "No Items to display", + "receipt_visibility" => "Receipt", + "show_in_items" => "Show in items", + "show_in_items_visibility" => "Items", + "show_in_receipt" => "Show in receipt", + "show_in_receivings" => "Show in receivings", + "show_in_receivings_visibility" => "Receivings", + "show_in_sales" => "Show in sales", + "show_in_sales_visibility" => "Sales", + "update" => "Update Attribute", ]; diff --git a/app/Language/nb/Bootstrap_tables.php b/app/Language/nb/Bootstrap_tables.php index e02cb2e5a..e257f5276 100644 --- a/app/Language/nb/Bootstrap_tables.php +++ b/app/Language/nb/Bootstrap_tables.php @@ -1,11 +1,11 @@ "", - "columns" => "", - "hide_show_pagination" => "", - "loading" => "", - "page_from_to" => "", - "refresh" => "", - "rows_per_page" => "", - "toggle" => "", + "all" => "", + "columns" => "", + "hide_show_pagination" => "", + "loading" => "", + "page_from_to" => "", + "refresh" => "", + "rows_per_page" => "", + "toggle" => "", ]; diff --git a/app/Language/nb/Cashups.php b/app/Language/nb/Cashups.php index 2ffc8c593..04d19c94f 100644 --- a/app/Language/nb/Cashups.php +++ b/app/Language/nb/Cashups.php @@ -1,49 +1,49 @@ "", - "amount_number" => "", - "amount_required" => "", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "", - "cash_difference" => "", - "close_date" => "", - "close_employee" => "", - "closed_amount_card" => "", - "closed_amount_cash" => "", - "closed_amount_check" => "", - "closed_amount_due" => "", - "closed_amount_giftcard" => "", - "closed_amount_total" => "", - "closed_date" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "confirm_submit" => "", - "date_number" => "", - "date_required" => "", - "description" => "", - "enable_expected" => "", - "error_adding_updating" => "", - "giftcard" => "", - "id" => "", - "info" => "", - "info_employee" => "", - "is_deleted" => "", - "new" => "", - "no_cashups_to_display" => "", - "none_selected" => "", - "note" => "", - "one_or_multiple" => "", - "open_amount_cash" => "", - "open_date" => "", - "open_employee" => "", - "opened_date" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "total" => "", - "transfer_amount_cash" => "", - "transfer_amount_cash_minus" => "", - "update" => "", - "warning" => "", + "amount" => "", + "amount_number" => "", + "amount_required" => "", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "", + "cash_difference" => "", + "close_date" => "", + "close_employee" => "", + "closed_amount_card" => "", + "closed_amount_cash" => "", + "closed_amount_check" => "", + "closed_amount_due" => "", + "closed_amount_giftcard" => "", + "closed_amount_total" => "", + "closed_date" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "confirm_submit" => "", + "date_number" => "", + "date_required" => "", + "description" => "", + "enable_expected" => "", + "error_adding_updating" => "", + "giftcard" => "", + "id" => "", + "info" => "", + "info_employee" => "", + "is_deleted" => "", + "new" => "", + "no_cashups_to_display" => "", + "none_selected" => "", + "note" => "", + "one_or_multiple" => "", + "open_amount_cash" => "", + "open_date" => "", + "open_employee" => "", + "opened_date" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "total" => "", + "transfer_amount_cash" => "", + "transfer_amount_cash_minus" => "", + "update" => "", + "warning" => "", ]; diff --git a/app/Language/nb/Common.php b/app/Language/nb/Common.php index 83ed187c9..606c59e5b 100644 --- a/app/Language/nb/Common.php +++ b/app/Language/nb/Common.php @@ -1,88 +1,88 @@ "", - "address_2" => "", - "admin" => "", - "city" => "", - "clerk" => "", - "close" => "", - "color" => "", - "comments" => "", - "common" => "", - "confirm_search" => "", - "copyrights" => "© 2010 - {0}", - "correct_errors" => "", - "country" => "", - "dashboard" => "", - "date" => "", - "delete" => "", - "det" => "", - "download_import_template" => "", - "edit" => "", - "email" => "", - "email_invalid_format" => "", - "export_csv" => "", - "export_csv_no" => "", - "export_csv_yes" => "", - "fields_required_message" => "", - "fields_required_message_unique" => "", - "first_name" => "", - "first_name_required" => "", - "first_page" => "", - "gender" => "", - "gender_female" => "", - "gender_male" => "", - "gender_undefined" => "", - "icon" => "", - "id" => "", - "import" => "", - "import_change_file" => "", - "import_csv" => "", - "import_full_path" => "", - "import_remove_file" => "", - "import_select_file" => "", - "inv" => "", - "last_name" => "", - "last_name_required" => "", - "last_page" => "", - "learn_about_project" => "", - "list_of" => "", - "logo" => "", - "logo_mark" => "", - "logout" => "", - "manager" => "", - "migration_needed" => "", - "new" => "", - "no" => "", - "no_persons_to_display" => "", - "none_selected_text" => "", - "or" => "", - "people" => "", - "phone_number" => "", - "phone_number_required" => "", - "please_visit_my" => "", - "position" => "", - "powered_by" => "", - "price" => "", - "print" => "", - "remove" => "", - "required" => "", - "restore" => "", - "return_policy" => "", - "search" => "", - "search_options" => "", - "searched_for" => "", - "software_short" => "", - "software_title" => "", - "state" => "", - "submit" => "", - "total_spent" => "", - "unknown" => "", - "view_recent_sales" => "", - "website" => "", - "welcome" => "", - "welcome_message" => "", - "yes" => "", - "you_are_using_ospos" => "", - "zip" => "", + "address_1" => "", + "address_2" => "", + "admin" => "", + "city" => "", + "clerk" => "", + "close" => "", + "color" => "", + "comments" => "", + "common" => "", + "confirm_search" => "", + "copyrights" => "© 2010 - {0}", + "correct_errors" => "", + "country" => "", + "dashboard" => "", + "date" => "", + "delete" => "", + "det" => "", + "download_import_template" => "", + "edit" => "", + "email" => "", + "email_invalid_format" => "", + "export_csv" => "", + "export_csv_no" => "", + "export_csv_yes" => "", + "fields_required_message" => "", + "fields_required_message_unique" => "", + "first_name" => "", + "first_name_required" => "", + "first_page" => "", + "gender" => "", + "gender_female" => "", + "gender_male" => "", + "gender_undefined" => "", + "icon" => "", + "id" => "", + "import" => "", + "import_change_file" => "", + "import_csv" => "", + "import_full_path" => "", + "import_remove_file" => "", + "import_select_file" => "", + "inv" => "", + "last_name" => "", + "last_name_required" => "", + "last_page" => "", + "learn_about_project" => "", + "list_of" => "", + "logo" => "", + "logo_mark" => "", + "logout" => "", + "manager" => "", + "migration_needed" => "", + "new" => "", + "no" => "", + "no_persons_to_display" => "", + "none_selected_text" => "", + "or" => "", + "people" => "", + "phone_number" => "", + "phone_number_required" => "", + "please_visit_my" => "", + "position" => "", + "powered_by" => "", + "price" => "", + "print" => "", + "remove" => "", + "required" => "", + "restore" => "", + "return_policy" => "", + "search" => "", + "search_options" => "", + "searched_for" => "", + "software_short" => "", + "software_title" => "", + "state" => "", + "submit" => "", + "total_spent" => "", + "unknown" => "", + "view_recent_sales" => "", + "website" => "", + "welcome" => "", + "welcome_message" => "", + "yes" => "", + "you_are_using_ospos" => "", + "zip" => "", ]; diff --git a/app/Language/nb/Config.php b/app/Language/nb/Config.php index a56cf3574..cfc311f2e 100644 --- a/app/Language/nb/Config.php +++ b/app/Language/nb/Config.php @@ -1,330 +1,330 @@ "", - "address_required" => "", - "all_set" => "", - "allow_duplicate_barcodes" => "", - "apostrophe" => "", - "backup_button" => "", - "backup_database" => "", - "barcode" => "", - "barcode_company" => "", - "barcode_configuration" => "", - "barcode_content" => "", - "barcode_first_row" => "", - "barcode_font" => "", - "barcode_formats" => "", - "barcode_generate_if_empty" => "", - "barcode_height" => "", - "barcode_id" => "", - "barcode_info" => "", - "barcode_layout" => "", - "barcode_name" => "", - "barcode_number" => "", - "barcode_number_in_row" => "", - "barcode_page_cellspacing" => "", - "barcode_page_width" => "", - "barcode_price" => "", - "barcode_second_row" => "", - "barcode_third_row" => "", - "barcode_tooltip" => "", - "barcode_type" => "", - "barcode_width" => "", - "bottom" => "", - "cash_button" => "", - "cash_button_1" => "", - "cash_button_2" => "", - "cash_button_3" => "", - "cash_button_4" => "", - "cash_button_5" => "", - "cash_button_6" => "", - "cash_decimals" => "", - "cash_decimals_tooltip" => "", - "cash_rounding" => "", - "category_dropdown" => "", - "center" => "", - "change_apperance_tooltip" => "", - "comma" => "", - "company" => "", - "company_avatar" => "", - "company_change_image" => "", - "company_logo" => "", - "company_remove_image" => "", - "company_required" => "", - "company_select_image" => "", - "company_website_url" => "", - "country_codes" => "", - "country_codes_tooltip" => "", - "currency_code" => "", - "currency_decimals" => "", - "currency_symbol" => "", - "current_employee_only" => "", - "customer_reward" => "", - "customer_reward_duplicate" => "", - "customer_reward_enable" => "", - "customer_reward_invalid_chars" => "", - "customer_reward_required" => "", - "customer_sales_tax_support" => "", - "date_or_time_format" => "", - "datetimeformat" => "", - "decimal_point" => "", - "default_barcode_font_size_number" => "", - "default_barcode_font_size_required" => "", - "default_barcode_height_number" => "", - "default_barcode_height_required" => "", - "default_barcode_num_in_row_number" => "", - "default_barcode_num_in_row_required" => "", - "default_barcode_page_cellspacing_number" => "", - "default_barcode_page_cellspacing_required" => "", - "default_barcode_page_width_number" => "", - "default_barcode_page_width_required" => "", - "default_barcode_width_number" => "", - "default_barcode_width_required" => "", - "default_item_columns" => "", - "default_origin_tax_code" => "", - "default_receivings_discount" => "", - "default_receivings_discount_number" => "", - "default_receivings_discount_required" => "", - "default_sales_discount" => "", - "default_sales_discount_number" => "", - "default_sales_discount_required" => "", - "default_tax_category" => "", - "default_tax_code" => "", - "default_tax_jurisdiction" => "", - "default_tax_name_number" => "", - "default_tax_name_required" => "", - "default_tax_rate" => "", - "default_tax_rate_1" => "", - "default_tax_rate_2" => "", - "default_tax_rate_3" => "", - "default_tax_rate_number" => "", - "default_tax_rate_required" => "", - "derive_sale_quantity" => "", - "derive_sale_quantity_tooltip" => "", - "dinner_table" => "", - "dinner_table_duplicate" => "", - "dinner_table_enable" => "", - "dinner_table_invalid_chars" => "", - "dinner_table_required" => "", - "dot" => "", - "email" => "", - "email_configuration" => "", - "email_mailpath" => "", - "email_protocol" => "", - "email_receipt_check_behaviour" => "", - "email_receipt_check_behaviour_always" => "", - "email_receipt_check_behaviour_last" => "", - "email_receipt_check_behaviour_never" => "", - "email_smtp_crypto" => "", - "email_smtp_host" => "", - "email_smtp_pass" => "", - "email_smtp_port" => "", - "email_smtp_timeout" => "", - "email_smtp_user" => "", - "enable_avatar" => "", - "enable_avatar_tooltip" => "", - "enable_dropdown_tooltip" => "", - "enable_new_look" => "", - "enable_right_bar" => "", - "enable_right_bar_tooltip" => "", - "enforce_privacy" => "", - "enforce_privacy_tooltip" => "", - "fax" => "", - "file_perm" => "", - "financial_year" => "", - "financial_year_apr" => "", - "financial_year_aug" => "", - "financial_year_dec" => "", - "financial_year_feb" => "", - "financial_year_jan" => "", - "financial_year_jul" => "", - "financial_year_jun" => "", - "financial_year_mar" => "", - "financial_year_may" => "", - "financial_year_nov" => "", - "financial_year_oct" => "", - "financial_year_sep" => "", - "floating_labels" => "", - "gcaptcha_enable" => "", - "gcaptcha_secret_key" => "", - "gcaptcha_secret_key_required" => "", - "gcaptcha_site_key" => "", - "gcaptcha_site_key_required" => "", - "gcaptcha_tooltip" => "", - "general" => "", - "general_configuration" => "", - "giftcard_number" => "", - "giftcard_random" => "", - "giftcard_series" => "", - "image_allowed_file_types" => "", - "image_max_height_tooltip" => "", - "image_max_size_tooltip" => "", - "image_max_width_tooltip" => "", - "image_restrictions" => "", - "include_hsn" => "", - "info" => "", - "info_configuration" => "", - "input_groups" => "", - "integrations" => "", - "integrations_configuration" => "", - "invoice" => "", - "invoice_configuration" => "", - "invoice_default_comments" => "", - "invoice_email_message" => "", - "invoice_enable" => "", - "invoice_printer" => "", - "invoice_type" => "", - "is_readable" => "", - "is_writable" => "", - "item_markup" => "", - "jsprintsetup_required" => "", - "language" => "", - "last_used_invoice_number" => "", - "last_used_quote_number" => "", - "last_used_work_order_number" => "", - "left" => "", - "license" => "", - "license_configuration" => "", - "line_sequence" => "", - "lines_per_page" => "", - "lines_per_page_number" => "", - "lines_per_page_required" => "", - "locale" => "", - "locale_configuration" => "", - "locale_info" => "", - "location" => "", - "location_configuration" => "", - "location_info" => "", - "login_form" => "", - "logout" => "", - "mailchimp" => "", - "mailchimp_api_key" => "", - "mailchimp_configuration" => "", - "mailchimp_key_successfully" => "", - "mailchimp_key_unsuccessfully" => "", - "mailchimp_lists" => "", - "mailchimp_tooltip" => "", - "message" => "", - "message_configuration" => "", - "msg_msg" => "", - "msg_msg_placeholder" => "", - "msg_pwd" => "", - "msg_pwd_required" => "", - "msg_src" => "", - "msg_src_required" => "", - "msg_uid" => "", - "msg_uid_required" => "", - "multi_pack_enabled" => "", - "no_risk" => "", - "none" => "", - "notify_alignment" => "", - "number_format" => "", - "number_locale" => "", - "number_locale_invalid" => "", - "number_locale_required" => "", - "number_locale_tooltip" => "", - "os_timezone" => "", - "ospos_info" => "", - "payment_options_order" => "", - "perm_risk" => "", - "phone" => "", - "phone_required" => "", - "print_bottom_margin" => "", - "print_bottom_margin_number" => "", - "print_bottom_margin_required" => "", - "print_delay_autoreturn" => "", - "print_delay_autoreturn_number" => "", - "print_delay_autoreturn_required" => "", - "print_footer" => "", - "print_header" => "", - "print_left_margin" => "", - "print_left_margin_number" => "", - "print_left_margin_required" => "", - "print_receipt_check_behaviour" => "", - "print_receipt_check_behaviour_always" => "", - "print_receipt_check_behaviour_last" => "", - "print_receipt_check_behaviour_never" => "", - "print_right_margin" => "", - "print_right_margin_number" => "", - "print_right_margin_required" => "", - "print_silently" => "", - "print_top_margin" => "", - "print_top_margin_number" => "", - "print_top_margin_required" => "", - "quantity_decimals" => "", - "quick_cash_enable" => "", - "quote_default_comments" => "", - "receipt" => "", - "receipt_category" => "", - "receipt_configuration" => "", - "receipt_default" => "", - "receipt_font_size" => "", - "receipt_font_size_number" => "", - "receipt_font_size_required" => "", - "receipt_info" => "", - "receipt_printer" => "", - "receipt_short" => "", - "receipt_show_company_name" => "", - "receipt_show_description" => "", - "receipt_show_serialnumber" => "", - "receipt_show_tax_ind" => "", - "receipt_show_taxes" => "", - "receipt_show_total_discount" => "", - "receipt_template" => "", - "receiving_calculate_average_price" => "", - "recv_invoice_format" => "", - "register_mode_default" => "", - "report_an_issue" => "", - "return_policy_required" => "", - "reward" => "", - "reward_configuration" => "", - "right" => "", - "sales_invoice_format" => "", - "sales_quote_format" => "", - "saved_successfully" => "", - "saved_unsuccessfully" => "", - "security_issue" => "", - "server_notice" => "", - "service_charge" => "", - "show_due_enable" => "", - "show_office_group" => "", - "statistics" => "", - "statistics_tooltip" => "", - "stock_location" => "", - "stock_location_duplicate" => "", - "stock_location_invalid_chars" => "", - "stock_location_required" => "", - "suggestions_fifth_column" => "", - "suggestions_first_column" => "", - "suggestions_fourth_column" => "", - "suggestions_layout" => "", - "suggestions_second_column" => "", - "suggestions_third_column" => "", - "system_conf" => "", - "system_info" => "", - "table" => "", - "table_configuration" => "", - "takings_printer" => "", - "tax" => "", - "tax_category" => "", - "tax_category_duplicate" => "", - "tax_category_invalid_chars" => "", - "tax_category_required" => "", - "tax_category_used" => "", - "tax_configuration" => "", - "tax_decimals" => "", - "tax_id" => "", - "tax_included" => "", - "theme" => "", - "theme_preview" => "", - "thousands_separator" => "", - "timezone" => "", - "timezone_error" => "", - "top" => "", - "use_destination_based_tax" => "", - "user_timezone" => "", - "website" => "", - "wholesale_markup" => "", - "work_order_enable" => "", - "work_order_format" => "", + "address" => "", + "address_required" => "", + "all_set" => "", + "allow_duplicate_barcodes" => "", + "apostrophe" => "", + "backup_button" => "", + "backup_database" => "", + "barcode" => "", + "barcode_company" => "", + "barcode_configuration" => "", + "barcode_content" => "", + "barcode_first_row" => "", + "barcode_font" => "", + "barcode_formats" => "", + "barcode_generate_if_empty" => "", + "barcode_height" => "", + "barcode_id" => "", + "barcode_info" => "", + "barcode_layout" => "", + "barcode_name" => "", + "barcode_number" => "", + "barcode_number_in_row" => "", + "barcode_page_cellspacing" => "", + "barcode_page_width" => "", + "barcode_price" => "", + "barcode_second_row" => "", + "barcode_third_row" => "", + "barcode_tooltip" => "", + "barcode_type" => "", + "barcode_width" => "", + "bottom" => "", + "cash_button" => "", + "cash_button_1" => "", + "cash_button_2" => "", + "cash_button_3" => "", + "cash_button_4" => "", + "cash_button_5" => "", + "cash_button_6" => "", + "cash_decimals" => "", + "cash_decimals_tooltip" => "", + "cash_rounding" => "", + "category_dropdown" => "", + "center" => "", + "change_apperance_tooltip" => "", + "comma" => "", + "company" => "", + "company_avatar" => "", + "company_change_image" => "", + "company_logo" => "", + "company_remove_image" => "", + "company_required" => "", + "company_select_image" => "", + "company_website_url" => "", + "country_codes" => "", + "country_codes_tooltip" => "", + "currency_code" => "", + "currency_decimals" => "", + "currency_symbol" => "", + "current_employee_only" => "", + "customer_reward" => "", + "customer_reward_duplicate" => "", + "customer_reward_enable" => "", + "customer_reward_invalid_chars" => "", + "customer_reward_required" => "", + "customer_sales_tax_support" => "", + "date_or_time_format" => "", + "datetimeformat" => "", + "decimal_point" => "", + "default_barcode_font_size_number" => "", + "default_barcode_font_size_required" => "", + "default_barcode_height_number" => "", + "default_barcode_height_required" => "", + "default_barcode_num_in_row_number" => "", + "default_barcode_num_in_row_required" => "", + "default_barcode_page_cellspacing_number" => "", + "default_barcode_page_cellspacing_required" => "", + "default_barcode_page_width_number" => "", + "default_barcode_page_width_required" => "", + "default_barcode_width_number" => "", + "default_barcode_width_required" => "", + "default_item_columns" => "", + "default_origin_tax_code" => "", + "default_receivings_discount" => "", + "default_receivings_discount_number" => "", + "default_receivings_discount_required" => "", + "default_sales_discount" => "", + "default_sales_discount_number" => "", + "default_sales_discount_required" => "", + "default_tax_category" => "", + "default_tax_code" => "", + "default_tax_jurisdiction" => "", + "default_tax_name_number" => "", + "default_tax_name_required" => "", + "default_tax_rate" => "", + "default_tax_rate_1" => "", + "default_tax_rate_2" => "", + "default_tax_rate_3" => "", + "default_tax_rate_number" => "", + "default_tax_rate_required" => "", + "derive_sale_quantity" => "", + "derive_sale_quantity_tooltip" => "", + "dinner_table" => "", + "dinner_table_duplicate" => "", + "dinner_table_enable" => "", + "dinner_table_invalid_chars" => "", + "dinner_table_required" => "", + "dot" => "", + "email" => "", + "email_configuration" => "", + "email_mailpath" => "", + "email_protocol" => "", + "email_receipt_check_behaviour" => "", + "email_receipt_check_behaviour_always" => "", + "email_receipt_check_behaviour_last" => "", + "email_receipt_check_behaviour_never" => "", + "email_smtp_crypto" => "", + "email_smtp_host" => "", + "email_smtp_pass" => "", + "email_smtp_port" => "", + "email_smtp_timeout" => "", + "email_smtp_user" => "", + "enable_avatar" => "", + "enable_avatar_tooltip" => "", + "enable_dropdown_tooltip" => "", + "enable_new_look" => "", + "enable_right_bar" => "", + "enable_right_bar_tooltip" => "", + "enforce_privacy" => "", + "enforce_privacy_tooltip" => "", + "fax" => "", + "file_perm" => "", + "financial_year" => "", + "financial_year_apr" => "", + "financial_year_aug" => "", + "financial_year_dec" => "", + "financial_year_feb" => "", + "financial_year_jan" => "", + "financial_year_jul" => "", + "financial_year_jun" => "", + "financial_year_mar" => "", + "financial_year_may" => "", + "financial_year_nov" => "", + "financial_year_oct" => "", + "financial_year_sep" => "", + "floating_labels" => "", + "gcaptcha_enable" => "", + "gcaptcha_secret_key" => "", + "gcaptcha_secret_key_required" => "", + "gcaptcha_site_key" => "", + "gcaptcha_site_key_required" => "", + "gcaptcha_tooltip" => "", + "general" => "", + "general_configuration" => "", + "giftcard_number" => "", + "giftcard_random" => "", + "giftcard_series" => "", + "image_allowed_file_types" => "", + "image_max_height_tooltip" => "", + "image_max_size_tooltip" => "", + "image_max_width_tooltip" => "", + "image_restrictions" => "", + "include_hsn" => "", + "info" => "", + "info_configuration" => "", + "input_groups" => "", + "integrations" => "", + "integrations_configuration" => "", + "invoice" => "", + "invoice_configuration" => "", + "invoice_default_comments" => "", + "invoice_email_message" => "", + "invoice_enable" => "", + "invoice_printer" => "", + "invoice_type" => "", + "is_readable" => "", + "is_writable" => "", + "item_markup" => "", + "jsprintsetup_required" => "", + "language" => "", + "last_used_invoice_number" => "", + "last_used_quote_number" => "", + "last_used_work_order_number" => "", + "left" => "", + "license" => "", + "license_configuration" => "", + "line_sequence" => "", + "lines_per_page" => "", + "lines_per_page_number" => "", + "lines_per_page_required" => "", + "locale" => "", + "locale_configuration" => "", + "locale_info" => "", + "location" => "", + "location_configuration" => "", + "location_info" => "", + "login_form" => "", + "logout" => "", + "mailchimp" => "", + "mailchimp_api_key" => "", + "mailchimp_configuration" => "", + "mailchimp_key_successfully" => "", + "mailchimp_key_unsuccessfully" => "", + "mailchimp_lists" => "", + "mailchimp_tooltip" => "", + "message" => "", + "message_configuration" => "", + "msg_msg" => "", + "msg_msg_placeholder" => "", + "msg_pwd" => "", + "msg_pwd_required" => "", + "msg_src" => "", + "msg_src_required" => "", + "msg_uid" => "", + "msg_uid_required" => "", + "multi_pack_enabled" => "", + "no_risk" => "", + "none" => "", + "notify_alignment" => "", + "number_format" => "", + "number_locale" => "", + "number_locale_invalid" => "", + "number_locale_required" => "", + "number_locale_tooltip" => "", + "os_timezone" => "", + "ospos_info" => "", + "payment_options_order" => "", + "perm_risk" => "", + "phone" => "", + "phone_required" => "", + "print_bottom_margin" => "", + "print_bottom_margin_number" => "", + "print_bottom_margin_required" => "", + "print_delay_autoreturn" => "", + "print_delay_autoreturn_number" => "", + "print_delay_autoreturn_required" => "", + "print_footer" => "", + "print_header" => "", + "print_left_margin" => "", + "print_left_margin_number" => "", + "print_left_margin_required" => "", + "print_receipt_check_behaviour" => "", + "print_receipt_check_behaviour_always" => "", + "print_receipt_check_behaviour_last" => "", + "print_receipt_check_behaviour_never" => "", + "print_right_margin" => "", + "print_right_margin_number" => "", + "print_right_margin_required" => "", + "print_silently" => "", + "print_top_margin" => "", + "print_top_margin_number" => "", + "print_top_margin_required" => "", + "quantity_decimals" => "", + "quick_cash_enable" => "", + "quote_default_comments" => "", + "receipt" => "", + "receipt_category" => "", + "receipt_configuration" => "", + "receipt_default" => "", + "receipt_font_size" => "", + "receipt_font_size_number" => "", + "receipt_font_size_required" => "", + "receipt_info" => "", + "receipt_printer" => "", + "receipt_short" => "", + "receipt_show_company_name" => "", + "receipt_show_description" => "", + "receipt_show_serialnumber" => "", + "receipt_show_tax_ind" => "", + "receipt_show_taxes" => "", + "receipt_show_total_discount" => "", + "receipt_template" => "", + "receiving_calculate_average_price" => "", + "recv_invoice_format" => "", + "register_mode_default" => "", + "report_an_issue" => "", + "return_policy_required" => "", + "reward" => "", + "reward_configuration" => "", + "right" => "", + "sales_invoice_format" => "", + "sales_quote_format" => "", + "saved_successfully" => "", + "saved_unsuccessfully" => "", + "security_issue" => "", + "server_notice" => "", + "service_charge" => "", + "show_due_enable" => "", + "show_office_group" => "", + "statistics" => "", + "statistics_tooltip" => "", + "stock_location" => "", + "stock_location_duplicate" => "", + "stock_location_invalid_chars" => "", + "stock_location_required" => "", + "suggestions_fifth_column" => "", + "suggestions_first_column" => "", + "suggestions_fourth_column" => "", + "suggestions_layout" => "", + "suggestions_second_column" => "", + "suggestions_third_column" => "", + "system_conf" => "", + "system_info" => "", + "table" => "", + "table_configuration" => "", + "takings_printer" => "", + "tax" => "", + "tax_category" => "", + "tax_category_duplicate" => "", + "tax_category_invalid_chars" => "", + "tax_category_required" => "", + "tax_category_used" => "", + "tax_configuration" => "", + "tax_decimals" => "", + "tax_id" => "", + "tax_included" => "", + "theme" => "", + "theme_preview" => "", + "thousands_separator" => "", + "timezone" => "", + "timezone_error" => "", + "top" => "", + "use_destination_based_tax" => "", + "user_timezone" => "", + "website" => "", + "wholesale_markup" => "", + "work_order_enable" => "", + "work_order_format" => "", ]; diff --git a/app/Language/nb/Customers.php b/app/Language/nb/Customers.php index 715fca3e4..686ed3760 100644 --- a/app/Language/nb/Customers.php +++ b/app/Language/nb/Customers.php @@ -1,56 +1,56 @@ "", - "account_number_duplicate" => "", - "available_points" => "", - "available_points_value" => "", - "average" => "", - "avg_discount" => "", - "basic_information" => "", - "cannot_be_deleted" => "", - "company_name" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "consent" => "", - "consent_required" => "", - "csv_import_failed" => "", - "csv_import_nodata_wrongformat" => "", - "csv_import_partially_failed" => "", - "csv_import_success" => "", - "customer" => "", - "date" => "", - "discount" => "", - "discount_fixed" => "", - "discount_percent" => "", - "discount_type" => "", - "email_duplicate" => "", - "employee" => "", - "error_adding_updating" => "", - "import_items_csv" => "", - "mailchimp_activity_click" => "", - "mailchimp_activity_lastopen" => "", - "mailchimp_activity_open" => "", - "mailchimp_activity_total" => "", - "mailchimp_activity_unopen" => "", - "mailchimp_email_client" => "", - "mailchimp_info" => "", - "mailchimp_member_rating" => "", - "mailchimp_status" => "", - "mailchimp_vip" => "", - "max" => "", - "min" => "", - "new" => "", - "none_selected" => "", - "one_or_multiple" => "", - "quantity" => "", - "stats_info" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "tax_code" => "", - "tax_id" => "", - "taxable" => "", - "total" => "", - "update" => "", - "rewards_package" => "", + "account_number" => "", + "account_number_duplicate" => "", + "available_points" => "", + "available_points_value" => "", + "average" => "", + "avg_discount" => "", + "basic_information" => "", + "cannot_be_deleted" => "", + "company_name" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "consent" => "", + "consent_required" => "", + "csv_import_failed" => "", + "csv_import_nodata_wrongformat" => "", + "csv_import_partially_failed" => "", + "csv_import_success" => "", + "customer" => "", + "date" => "", + "discount" => "", + "discount_fixed" => "", + "discount_percent" => "", + "discount_type" => "", + "email_duplicate" => "", + "employee" => "", + "error_adding_updating" => "", + "import_items_csv" => "", + "mailchimp_activity_click" => "", + "mailchimp_activity_lastopen" => "", + "mailchimp_activity_open" => "", + "mailchimp_activity_total" => "", + "mailchimp_activity_unopen" => "", + "mailchimp_email_client" => "", + "mailchimp_info" => "", + "mailchimp_member_rating" => "", + "mailchimp_status" => "", + "mailchimp_vip" => "", + "max" => "", + "min" => "", + "new" => "", + "none_selected" => "", + "one_or_multiple" => "", + "quantity" => "", + "stats_info" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "tax_code" => "", + "tax_id" => "", + "taxable" => "", + "total" => "", + "update" => "", + "rewards_package" => "", ]; diff --git a/app/Language/nb/Datepicker.php b/app/Language/nb/Datepicker.php index e8be7a6c0..7c8e18902 100644 --- a/app/Language/nb/Datepicker.php +++ b/app/Language/nb/Datepicker.php @@ -1,23 +1,23 @@ "", - "apply" => "", - "cancel" => "", - "custom" => "", - "from" => "", - "last_30" => "", - "last_7" => "", - "last_financial_year" => "", - "last_month" => "", - "last_year" => "", - "same_month_last_year" => "", - "same_month_to_same_day_last_year" => "", - "this_financial_year" => "", - "this_month" => "", - "this_year" => "", - "to" => "", - "today" => "", - "today_last_year" => "", - "weekstart" => "", - "yesterday" => "", + "all_time" => "", + "apply" => "", + "cancel" => "", + "custom" => "", + "from" => "", + "last_30" => "", + "last_7" => "", + "last_financial_year" => "", + "last_month" => "", + "last_year" => "", + "same_month_last_year" => "", + "same_month_to_same_day_last_year" => "", + "this_financial_year" => "", + "this_month" => "", + "this_year" => "", + "to" => "", + "today" => "", + "today_last_year" => "", + "weekstart" => "", + "yesterday" => "", ]; diff --git a/app/Language/nb/Employees.php b/app/Language/nb/Employees.php index 6f597ab5b..5aa444ff4 100644 --- a/app/Language/nb/Employees.php +++ b/app/Language/nb/Employees.php @@ -1,44 +1,44 @@ "", - "basic_information" => "", - "cannot_be_deleted" => "", - "change_employee" => "", - "change_password" => "", - "clerk" => "", - "commission" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "current_password" => "", - "current_password_invalid" => "", - "employee" => "", - "error_adding_updating" => "", - "error_deleting_demo_admin" => "", - "error_updating_demo_admin" => "", - "language" => "", - "login_info" => "", - "manager" => "", - "new" => "", - "none_selected" => "", - "one_or_multiple" => "", - "password" => "", - "password_minlength" => "", - "password_must_match" => "", - "password_not_must_match" => "", - "password_required" => "", - "permission_desc" => "", - "permission_info" => "", - "repeat_password" => "", - "subpermission_required" => "", - "successful_adding" => "", - "successful_change_password" => "", - "successful_deleted" => "", - "successful_updating" => "", - "system_language" => "", - "unsuccessful_change_password" => "", - "update" => "", - "username" => "", - "username_duplicate" => "", - "username_minlength" => "", - "username_required" => "", + "administrator" => "", + "basic_information" => "", + "cannot_be_deleted" => "", + "change_employee" => "", + "change_password" => "", + "clerk" => "", + "commission" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "current_password" => "", + "current_password_invalid" => "", + "employee" => "", + "error_adding_updating" => "", + "error_deleting_demo_admin" => "", + "error_updating_demo_admin" => "", + "language" => "", + "login_info" => "", + "manager" => "", + "new" => "", + "none_selected" => "", + "one_or_multiple" => "", + "password" => "", + "password_minlength" => "", + "password_must_match" => "", + "password_not_must_match" => "", + "password_required" => "", + "permission_desc" => "", + "permission_info" => "", + "repeat_password" => "", + "subpermission_required" => "", + "successful_adding" => "", + "successful_change_password" => "", + "successful_deleted" => "", + "successful_updating" => "", + "system_language" => "", + "unsuccessful_change_password" => "", + "update" => "", + "username" => "", + "username_duplicate" => "", + "username_minlength" => "", + "username_required" => "", ]; diff --git a/app/Language/nb/Enum.php b/app/Language/nb/Enum.php index c39655c3b..1ed7e9313 100644 --- a/app/Language/nb/Enum.php +++ b/app/Language/nb/Enum.php @@ -1,10 +1,10 @@ "", - "half_even" => "", - "half_five" => "", - "half_odd" => "", - "half_up" => "", - "round_down" => "", - "round_up" => "", + "half_down" => "", + "half_even" => "", + "half_five" => "", + "half_odd" => "", + "half_up" => "", + "round_down" => "", + "round_up" => "", ]; diff --git a/app/Language/nb/Error.php b/app/Language/nb/Error.php index 6134ea59a..ae85a3b54 100644 --- a/app/Language/nb/Error.php +++ b/app/Language/nb/Error.php @@ -1,5 +1,5 @@ "", - "unknown" => "", + "no_permission_module" => "", + "unknown" => "", ]; diff --git a/app/Language/nb/Expenses.php b/app/Language/nb/Expenses.php index e9e237376..8ef1fe954 100644 --- a/app/Language/nb/Expenses.php +++ b/app/Language/nb/Expenses.php @@ -1,50 +1,50 @@ "", - "amount" => "", - "amount_number" => "", - "amount_required" => "", - "by_category" => "", - "cannot_be_deleted" => "", - "cash" => "", - "cash_filter" => "", - "categories_name" => "", - "category_required" => "", - "check" => "", - "check_filter" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "credit" => "", - "credit_filter" => "", - "date" => "", - "date_number" => "", - "date_required" => "", - "debit" => "", - "debit_filter" => "", - "description" => "", - "due" => "", - "due_filter" => "", - "employee" => "", - "error_adding_updating" => "", - "expense_id" => "", - "expenses_employee" => "", - "info" => "", - "ip_address" => "", - "is_deleted" => "", - "name_required" => "", - "new" => "", - "new_supplier" => "", - "no_expenses_to_display" => "", - "none_selected" => "", - "one_or_multiple" => "", - "payment" => "", - "start_typing_supplier_name" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "supplier_name" => "", - "supplier_tax_code" => "", - "tax_amount" => "", - "tax_amount_number" => "", - "update" => "", + "add_item" => "", + "amount" => "", + "amount_number" => "", + "amount_required" => "", + "by_category" => "", + "cannot_be_deleted" => "", + "cash" => "", + "cash_filter" => "", + "categories_name" => "", + "category_required" => "", + "check" => "", + "check_filter" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "credit" => "", + "credit_filter" => "", + "date" => "", + "date_number" => "", + "date_required" => "", + "debit" => "", + "debit_filter" => "", + "description" => "", + "due" => "", + "due_filter" => "", + "employee" => "", + "error_adding_updating" => "", + "expense_id" => "", + "expenses_employee" => "", + "info" => "", + "ip_address" => "", + "is_deleted" => "", + "name_required" => "", + "new" => "", + "new_supplier" => "", + "no_expenses_to_display" => "", + "none_selected" => "", + "one_or_multiple" => "", + "payment" => "", + "start_typing_supplier_name" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "supplier_name" => "", + "supplier_tax_code" => "", + "tax_amount" => "", + "tax_amount_number" => "", + "update" => "", ]; diff --git a/app/Language/nb/Expenses_categories.php b/app/Language/nb/Expenses_categories.php index 03169e528..7d3b08c27 100644 --- a/app/Language/nb/Expenses_categories.php +++ b/app/Language/nb/Expenses_categories.php @@ -1,22 +1,22 @@ "", - "add_item" => "", - "cannot_be_deleted" => "", - "category_id" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "description" => "", - "error_adding_updating" => "", - "info" => "", - "name" => "", - "new" => "", - "no_expenses_categories_to_display" => "", - "none_selected" => "", - "one_or_multiple" => "", - "quantity" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "update" => "", + "category_name_required" => "", + "add_item" => "", + "cannot_be_deleted" => "", + "category_id" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "description" => "", + "error_adding_updating" => "", + "info" => "", + "name" => "", + "new" => "", + "no_expenses_categories_to_display" => "", + "none_selected" => "", + "one_or_multiple" => "", + "quantity" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "update" => "", ]; diff --git a/app/Language/nb/Giftcards.php b/app/Language/nb/Giftcards.php index f1b1bd322..00d291498 100644 --- a/app/Language/nb/Giftcards.php +++ b/app/Language/nb/Giftcards.php @@ -1,71 +1,71 @@ "", - "allow_alt_description" => "", - "bulk_edit" => "", - "cannot_be_deleted" => "", - "cannot_find_giftcard" => "", - "cannot_use" => "", - "card_value" => "", - "category" => "", - "change_all_to_allow_alt_desc" => "", - "change_all_to_not_allow_allow_desc" => "", - "change_all_to_serialized" => "", - "change_all_to_unserialized" => "", - "confirm_bulk_edit" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "cost_price" => "", - "count" => "", - "csv_import_failed" => "", - "current_quantity" => "", - "description" => "", - "details_count" => "", - "do_nothing" => "", - "edit_fields_you_want_to_update" => "", - "edit_multiple_giftcards" => "", - "error_adding_updating" => "", - "error_updating_multiple" => "", - "generate_barcodes" => "", - "giftcard" => "", - "giftcard_number" => "", - "info_provided_by" => "", - "inventory_comments" => "", - "is_serialized" => "", - "low_inventory_giftcards" => "", - "manually_editing_of_quantity" => "", - "must_select_giftcard_for_barcode" => "", - "new" => "", - "no_description_giftcards" => "", - "no_giftcards_to_display" => "", - "none" => "", - "none_selected" => "", - "number" => "", - "number_information" => "", - "number_required" => "", - "one_or_multiple" => "", - "person_id" => "", - "quantity" => "", - "quantity_required" => "", - "remaining_balance" => "", - "reorder_level" => "", - "retrive_giftcard_info" => "", - "sales_tax_1" => "", - "sales_tax_2" => "", - "serialized_giftcards" => "", - "successful_adding" => "", - "successful_bulk_edit" => "", - "successful_deleted" => "", - "successful_updating" => "", - "supplier" => "", - "tax_1" => "", - "tax_2" => "", - "tax_percent" => "", - "tax_percents" => "", - "unit_price" => "", - "upc_database" => "", - "update" => "", - "use_inventory_menu" => "", - "value" => "", - "value_required" => "", + "add_minus" => "", + "allow_alt_description" => "", + "bulk_edit" => "", + "cannot_be_deleted" => "", + "cannot_find_giftcard" => "", + "cannot_use" => "", + "card_value" => "", + "category" => "", + "change_all_to_allow_alt_desc" => "", + "change_all_to_not_allow_allow_desc" => "", + "change_all_to_serialized" => "", + "change_all_to_unserialized" => "", + "confirm_bulk_edit" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "cost_price" => "", + "count" => "", + "csv_import_failed" => "", + "current_quantity" => "", + "description" => "", + "details_count" => "", + "do_nothing" => "", + "edit_fields_you_want_to_update" => "", + "edit_multiple_giftcards" => "", + "error_adding_updating" => "", + "error_updating_multiple" => "", + "generate_barcodes" => "", + "giftcard" => "", + "giftcard_number" => "", + "info_provided_by" => "", + "inventory_comments" => "", + "is_serialized" => "", + "low_inventory_giftcards" => "", + "manually_editing_of_quantity" => "", + "must_select_giftcard_for_barcode" => "", + "new" => "", + "no_description_giftcards" => "", + "no_giftcards_to_display" => "", + "none" => "", + "none_selected" => "", + "number" => "", + "number_information" => "", + "number_required" => "", + "one_or_multiple" => "", + "person_id" => "", + "quantity" => "", + "quantity_required" => "", + "remaining_balance" => "", + "reorder_level" => "", + "retrive_giftcard_info" => "", + "sales_tax_1" => "", + "sales_tax_2" => "", + "serialized_giftcards" => "", + "successful_adding" => "", + "successful_bulk_edit" => "", + "successful_deleted" => "", + "successful_updating" => "", + "supplier" => "", + "tax_1" => "", + "tax_2" => "", + "tax_percent" => "", + "tax_percents" => "", + "unit_price" => "", + "upc_database" => "", + "update" => "", + "use_inventory_menu" => "", + "value" => "", + "value_required" => "", ]; diff --git a/app/Language/nb/Item_kits.php b/app/Language/nb/Item_kits.php index 2f21a4963..370929649 100644 --- a/app/Language/nb/Item_kits.php +++ b/app/Language/nb/Item_kits.php @@ -1,41 +1,41 @@ "", - "all" => "", - "cannot_be_deleted" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "description" => "", - "discount" => "", - "discount_fixed" => "", - "discount_percent" => "", - "discount_type" => "", - "error_adding_updating" => "", - "find_kit_item" => "", - "info" => "", - "item" => "", - "item_kit_number" => "", - "item_kit_number_duplicate" => "", - "item_number" => "", - "item_number_duplicate" => "", - "items" => "", - "kit" => "", - "kit_and_components" => "", - "kit_and_stock" => "", - "kit_only" => "", - "name" => "", - "new" => "", - "no_item_kits_to_display" => "", - "none_selected" => "", - "one_or_multiple" => "", - "price_option" => "", - "priced_only" => "", - "print_option" => "", - "quantity" => "", - "sequence" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "unit_price" => "", - "update" => "", + "add_item" => "", + "all" => "", + "cannot_be_deleted" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "description" => "", + "discount" => "", + "discount_fixed" => "", + "discount_percent" => "", + "discount_type" => "", + "error_adding_updating" => "", + "find_kit_item" => "", + "info" => "", + "item" => "", + "item_kit_number" => "", + "item_kit_number_duplicate" => "", + "item_number" => "", + "item_number_duplicate" => "", + "items" => "", + "kit" => "", + "kit_and_components" => "", + "kit_and_stock" => "", + "kit_only" => "", + "name" => "", + "new" => "", + "no_item_kits_to_display" => "", + "none_selected" => "", + "one_or_multiple" => "", + "price_option" => "", + "priced_only" => "", + "print_option" => "", + "quantity" => "", + "sequence" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "unit_price" => "", + "update" => "", ]; diff --git a/app/Language/nb/Items.php b/app/Language/nb/Items.php index 9718385d0..25c0395e0 100644 --- a/app/Language/nb/Items.php +++ b/app/Language/nb/Items.php @@ -1,120 +1,120 @@ "", - "allow_alt_description" => "", - "amount_entry" => "", - "bulk_edit" => "", - "buy_price_required" => "", - "cannot_be_deleted" => "", - "cannot_find_item" => "", - "categories" => "", - "category" => "", - "category_new" => "", - "category_required" => "", - "change_all_to_allow_alt_desc" => "", - "change_all_to_not_allow_allow_desc" => "", - "change_all_to_serialized" => "", - "change_all_to_unserialized" => "", - "change_image" => "", - "confirm_bulk_edit" => "", - "confirm_bulk_edit_wipe_taxes" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "cost_price" => "", - "cost_price_number" => "", - "cost_price_required" => "", - "count" => "", - "csv_import_failed" => "", - "csv_import_nodata_wrongformat" => "", - "csv_import_partially_failed" => "", - "csv_import_success" => "", - "current_quantity" => "", - "default_pack_name" => "", - "description" => "", - "details_count" => "", - "do_nothing" => "", - "edit" => "", - "edit_fields_you_want_to_update" => "", - "edit_multiple_items" => "", - "empty_upc_items" => "", - "error_adding_updating" => "", - "error_updating_multiple" => "", - "generate_barcodes" => "", - "hsn_code" => "", - "image" => "", - "import_items_csv" => "", - "info_provided_by" => "", - "inventory" => "", - "inventory_CSV_import_quantity" => "", - "inventory_comments" => "", - "inventory_data_tracking" => "", - "inventory_date" => "", - "inventory_employee" => "", - "inventory_in_out_quantity" => "", - "inventory_remarks" => "", - "is_deleted" => "", - "is_printed" => "", - "is_serialized" => "", - "item" => "", - "item_id" => "", - "item_number" => "", - "item_number_duplicate" => "", - "kit" => "", - "location" => "", - "low_inventory_items" => "", - "low_sell_item" => "", - "manually_editing_of_quantity" => "", - "markup" => "", - "name" => "", - "name_required" => "", - "new" => "", - "no_description_items" => "", - "no_items_to_display" => "", - "none" => "", - "none_selected" => "", - "nonstock" => "", - "number_information" => "", - "number_required" => "", - "one_or_multiple" => "", - "pack_name" => "", - "qty_per_pack" => "", - "quantity" => "", - "quantity_number" => "", - "quantity_required" => "", - "receiving_quantity" => "", - "remove_image" => "", - "reorder_level" => "", - "reorder_level_number" => "", - "reorder_level_required" => "", - "retrive_item_info" => "", - "sales_tax_1" => "", - "sales_tax_2" => "", - "search_attributes" => "", - "select_image" => "", - "serialized_items" => "", - "standard" => "", - "stock" => "", - "stock_location" => "", - "stock_type" => "", - "successful_adding" => "", - "successful_bulk_edit" => "", - "successful_deleted" => "", - "successful_updating" => "", - "supplier" => "", - "tax_1" => "", - "tax_2" => "", - "tax_3" => "", - "tax_category" => "", - "tax_percent" => "", - "tax_percent_number" => "", - "tax_percent_required" => "", - "tax_percents" => "", - "temp" => "", - "type" => "", - "unit_price" => "", - "unit_price_number" => "", - "unit_price_required" => "", - "upc_database" => "", - "update" => "", - "use_inventory_menu" => "", + "add_minus" => "", + "allow_alt_description" => "", + "amount_entry" => "", + "bulk_edit" => "", + "buy_price_required" => "", + "cannot_be_deleted" => "", + "cannot_find_item" => "", + "categories" => "", + "category" => "", + "category_new" => "", + "category_required" => "", + "change_all_to_allow_alt_desc" => "", + "change_all_to_not_allow_allow_desc" => "", + "change_all_to_serialized" => "", + "change_all_to_unserialized" => "", + "change_image" => "", + "confirm_bulk_edit" => "", + "confirm_bulk_edit_wipe_taxes" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "cost_price" => "", + "cost_price_number" => "", + "cost_price_required" => "", + "count" => "", + "csv_import_failed" => "", + "csv_import_nodata_wrongformat" => "", + "csv_import_partially_failed" => "", + "csv_import_success" => "", + "current_quantity" => "", + "default_pack_name" => "", + "description" => "", + "details_count" => "", + "do_nothing" => "", + "edit" => "", + "edit_fields_you_want_to_update" => "", + "edit_multiple_items" => "", + "empty_upc_items" => "", + "error_adding_updating" => "", + "error_updating_multiple" => "", + "generate_barcodes" => "", + "hsn_code" => "", + "image" => "", + "import_items_csv" => "", + "info_provided_by" => "", + "inventory" => "", + "inventory_CSV_import_quantity" => "", + "inventory_comments" => "", + "inventory_data_tracking" => "", + "inventory_date" => "", + "inventory_employee" => "", + "inventory_in_out_quantity" => "", + "inventory_remarks" => "", + "is_deleted" => "", + "is_printed" => "", + "is_serialized" => "", + "item" => "", + "item_id" => "", + "item_number" => "", + "item_number_duplicate" => "", + "kit" => "", + "location" => "", + "low_inventory_items" => "", + "low_sell_item" => "", + "manually_editing_of_quantity" => "", + "markup" => "", + "name" => "", + "name_required" => "", + "new" => "", + "no_description_items" => "", + "no_items_to_display" => "", + "none" => "", + "none_selected" => "", + "nonstock" => "", + "number_information" => "", + "number_required" => "", + "one_or_multiple" => "", + "pack_name" => "", + "qty_per_pack" => "", + "quantity" => "", + "quantity_number" => "", + "quantity_required" => "", + "receiving_quantity" => "", + "remove_image" => "", + "reorder_level" => "", + "reorder_level_number" => "", + "reorder_level_required" => "", + "retrive_item_info" => "", + "sales_tax_1" => "", + "sales_tax_2" => "", + "search_attributes" => "", + "select_image" => "", + "serialized_items" => "", + "standard" => "", + "stock" => "", + "stock_location" => "", + "stock_type" => "", + "successful_adding" => "", + "successful_bulk_edit" => "", + "successful_deleted" => "", + "successful_updating" => "", + "supplier" => "", + "tax_1" => "", + "tax_2" => "", + "tax_3" => "", + "tax_category" => "", + "tax_percent" => "", + "tax_percent_number" => "", + "tax_percent_required" => "", + "tax_percents" => "", + "temp" => "", + "type" => "", + "unit_price" => "", + "unit_price_number" => "", + "unit_price_required" => "", + "upc_database" => "", + "update" => "", + "use_inventory_menu" => "", ]; diff --git a/app/Language/nb/Login.php b/app/Language/nb/Login.php index 4a73810c7..2a18ca41d 100644 --- a/app/Language/nb/Login.php +++ b/app/Language/nb/Login.php @@ -1,15 +1,15 @@ "", - "go" => "", - "invalid_gcaptcha" => "", - "invalid_installation" => "", - "invalid_username_and_password" => "", - "login" => "", - "logout" => "", - "migration_needed" => "", - "password" => "", - "required_username" => "", - "username" => "", - "welcome" => "", + "gcaptcha" => "", + "go" => "", + "invalid_gcaptcha" => "", + "invalid_installation" => "", + "invalid_username_and_password" => "", + "login" => "", + "logout" => "", + "migration_needed" => "", + "password" => "", + "required_username" => "", + "username" => "", + "welcome" => "", ]; diff --git a/app/Language/nb/Messages.php b/app/Language/nb/Messages.php index ce3a2e233..3079da504 100644 --- a/app/Language/nb/Messages.php +++ b/app/Language/nb/Messages.php @@ -1,15 +1,15 @@ "", - "last_name" => "", - "message" => "", - "message_placeholder" => "", - "message_required" => "", - "multiple_phones" => "", - "phone" => "", - "phone_number_required" => "", - "phone_placeholder" => "", - "sms_send" => "", - "successfully_sent" => "", - "unsuccessfully_sent" => "", + "first_name" => "", + "last_name" => "", + "message" => "", + "message_placeholder" => "", + "message_required" => "", + "multiple_phones" => "", + "phone" => "", + "phone_number_required" => "", + "phone_placeholder" => "", + "sms_send" => "", + "successfully_sent" => "", + "unsuccessfully_sent" => "", ]; diff --git a/app/Language/nb/Module.php b/app/Language/nb/Module.php index f2ad04586..fb277bc95 100644 --- a/app/Language/nb/Module.php +++ b/app/Language/nb/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "", - "attributes_desc" => "", - "both" => "", - "cashups" => "", - "cashups_desc" => "", - "config" => "", - "config_desc" => "", - "customers" => "", - "customers_desc" => "", - "employees" => "", - "employees_desc" => "", - "expenses" => "", - "expenses_categories" => "", - "expenses_categories_desc" => "", - "expenses_desc" => "", - "giftcards" => "", - "giftcards_desc" => "", - "home" => "", - "home_desc" => "", - "item_kits" => "", - "item_kits_desc" => "", - "items" => "", - "items_desc" => "", - "messages" => "", - "messages_desc" => "", - "migrate" => "", - "migrate_desc" => "", - "office" => "", - "office_desc" => "", - "receivings" => "", - "receivings_desc" => "", - "reports" => "", - "reports_desc" => "", - "sales" => "", - "sales_desc" => "", - "suppliers" => "", - "suppliers_desc" => "", - "taxes" => "", - "taxes_desc" => "", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "", + "attributes_desc" => "", + "both" => "", + "cashups" => "", + "cashups_desc" => "", + "config" => "", + "config_desc" => "", + "customers" => "", + "customers_desc" => "", + "employees" => "", + "employees_desc" => "", + "expenses" => "", + "expenses_categories" => "", + "expenses_categories_desc" => "", + "expenses_desc" => "", + "giftcards" => "", + "giftcards_desc" => "", + "home" => "", + "home_desc" => "", + "item_kits" => "", + "item_kits_desc" => "", + "items" => "", + "items_desc" => "", + "messages" => "", + "messages_desc" => "", + "migrate" => "", + "migrate_desc" => "", + "office" => "", + "office_desc" => "", + "receivings" => "", + "receivings_desc" => "", + "reports" => "", + "reports_desc" => "", + "sales" => "", + "sales_desc" => "", + "suppliers" => "", + "suppliers_desc" => "", + "taxes" => "", + "taxes_desc" => "", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/nb/Receivings.php b/app/Language/nb/Receivings.php index 4ffca4df7..0936f4851 100644 --- a/app/Language/nb/Receivings.php +++ b/app/Language/nb/Receivings.php @@ -1,58 +1,58 @@ "", - "cancel_receiving" => "", - "cannot_be_deleted" => "", - "comments" => "", - "complete_receiving" => "", - "confirm_cancel_receiving" => "", - "confirm_delete" => "", - "confirm_finish_receiving" => "", - "confirm_restore" => "", - "cost" => "", - "daily" => "", - "date" => "", - "date_required" => "", - "date_type" => "", - "delete_entire_sale" => "", - "discount" => "", - "edit" => "", - "edit_sale" => "", - "employee" => "", - "error_editing_item" => "", - "error_requisition" => "", - "find_or_scan_item" => "", - "find_or_scan_item_or_receipt" => "", - "id" => "", - "item_name" => "", - "mode" => "", - "new_supplier" => "", - "one_or_multiple" => "", - "print_after_sale" => "", - "quantity" => "", - "receipt" => "", - "receipt_number" => "", - "receiving" => "", - "reference" => "", - "register" => "", - "requisition" => "", - "return" => "", - "select_supplier" => "", - "ship_pack" => "", - "start_typing_supplier_name" => "", - "stock" => "", - "stock_destination" => "", - "stock_locaiton" => "", - "stock_source" => "", - "successfully_deleted" => "", - "successfully_updated" => "", - "supplier" => "", - "supplier_address" => "", - "supplier_email" => "", - "supplier_location" => "", - "total" => "", - "transaction_failed" => "", - "unable_to_add_item" => "", - "unsuccessfully_updated" => "", - "update" => "", + "amount_due" => "", + "cancel_receiving" => "", + "cannot_be_deleted" => "", + "comments" => "", + "complete_receiving" => "", + "confirm_cancel_receiving" => "", + "confirm_delete" => "", + "confirm_finish_receiving" => "", + "confirm_restore" => "", + "cost" => "", + "daily" => "", + "date" => "", + "date_required" => "", + "date_type" => "", + "delete_entire_sale" => "", + "discount" => "", + "edit" => "", + "edit_sale" => "", + "employee" => "", + "error_editing_item" => "", + "error_requisition" => "", + "find_or_scan_item" => "", + "find_or_scan_item_or_receipt" => "", + "id" => "", + "item_name" => "", + "mode" => "", + "new_supplier" => "", + "one_or_multiple" => "", + "print_after_sale" => "", + "quantity" => "", + "receipt" => "", + "receipt_number" => "", + "receiving" => "", + "reference" => "", + "register" => "", + "requisition" => "", + "return" => "", + "select_supplier" => "", + "ship_pack" => "", + "start_typing_supplier_name" => "", + "stock" => "", + "stock_destination" => "", + "stock_locaiton" => "", + "stock_source" => "", + "successfully_deleted" => "", + "successfully_updated" => "", + "supplier" => "", + "supplier_address" => "", + "supplier_email" => "", + "supplier_location" => "", + "total" => "", + "transaction_failed" => "", + "unable_to_add_item" => "", + "unsuccessfully_updated" => "", + "update" => "", ]; diff --git a/app/Language/nb/Reports.php b/app/Language/nb/Reports.php index c8f0dcce9..cde8daff6 100644 --- a/app/Language/nb/Reports.php +++ b/app/Language/nb/Reports.php @@ -1,148 +1,148 @@ "", - "authority" => "", - "canceled" => "", - "categories" => "", - "categories_summary_report" => "", - "category" => "", - "code_canceled" => "", - "code_invoice" => "", - "code_pos" => "", - "code_quote" => "", - "code_return" => "", - "code_type" => "", - "code_work_order" => "", - "comments" => "", - "commission" => "", - "complete" => "", - "completed_sales" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "cost" => "", - "cost_price" => "", - "count" => "", - "customer" => "", - "customers" => "", - "customers_summary_report" => "", - "date" => "", - "date_range" => "", - "description" => "", - "detailed_receivings_report" => "", - "detailed_receivings_report_input" => "", - "detailed_reports" => "", - "detailed_requisition_report" => "", - "detailed_sales_report" => "", - "discount" => "", - "discount_fixed" => "", - "discount_percent" => "", - "discount_type" => "", - "discounts" => "", - "discounts_summary_report" => "", - "earned" => "", - "employee" => "", - "employees" => "", - "employees_summary_report" => "", - "expenses" => "", - "expenses_amount" => "", - "expenses_categories" => "", - "expenses_categories_summary_report" => "", - "expenses_category" => "", - "expenses_payment_amount" => "", - "expenses_tax_amount" => "", - "expenses_total_amount" => "", - "expenses_total_tax_amount" => "", - "graphical_reports" => "", - "inventory" => "", - "inventory_low" => "", - "inventory_low_report" => "", - "inventory_reports" => "", - "inventory_summary" => "", - "inventory_summary_report" => "", - "item" => "", - "item_count" => "", - "item_name" => "", - "item_number" => "", - "items" => "", - "items_purchased" => "", - "items_received" => "", - "items_summary_report" => "", - "jurisdiction" => "", - "low_inventory" => "", - "low_inventory_report" => "", - "low_sell_quantity" => "", - "more_than_zero" => "", - "name" => "", - "no_reports_to_display" => "", - "payment_type" => "", - "payments" => "", - "payments_summary_report" => "", - "profit" => "", - "quantity" => "", - "quantity_purchased" => "", - "quotes" => "", - "received_by" => "", - "receiving_id" => "", - "receiving_type" => "", - "receivings" => "", - "reorder_level" => "", - "report" => "", - "report_input" => "", - "reports" => "", - "requisition" => "", - "requisition_by" => "", - "requisition_id" => "", - "requisition_item" => "", - "requisition_item_quantity" => "", - "requisition_related_item" => "", - "requisition_related_item_total_quantity" => "", - "requisition_related_item_unit_quantity" => "", - "requisitions" => "", - "returns" => "", - "revenue" => "", - "sale_id" => "", - "sale_type" => "", - "sales" => "", - "sales_amount" => "", - "sales_summary_report" => "", - "sales_taxes" => "", - "sales_taxes_summary_report" => "", - "serial_number" => "", - "service_charge" => "", - "sold_by" => "", - "sold_items" => "", - "sold_to" => "", - "stock_location" => "", - "sub_total_value" => "", - "subtotal" => "", - "summary_reports" => "", - "supplied_by" => "", - "supplier" => "", - "suppliers" => "", - "suppliers_summary_report" => "", - "tax" => "", - "tax_category" => "", - "tax_name" => "", - "tax_percent" => "", - "tax_rate" => "", - "taxes" => "", - "taxes_summary_report" => "", - "total" => "", - "total_inventory_value" => "", - "total_low_sell_quantity" => "", - "total_quantity" => "", - "total_retail" => "", - "trans_amount" => "", - "trans_due" => "", - "trans_group" => "", - "trans_nopay_sales" => "", - "trans_payments" => "", - "trans_refunded" => "", - "trans_sales" => "", - "trans_type" => "", - "type" => "", - "unit_price" => "", - "used" => "", - "work_orders" => "", - "zero_and_less" => "", + "all" => "", + "authority" => "", + "canceled" => "", + "categories" => "", + "categories_summary_report" => "", + "category" => "", + "code_canceled" => "", + "code_invoice" => "", + "code_pos" => "", + "code_quote" => "", + "code_return" => "", + "code_type" => "", + "code_work_order" => "", + "comments" => "", + "commission" => "", + "complete" => "", + "completed_sales" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "cost" => "", + "cost_price" => "", + "count" => "", + "customer" => "", + "customers" => "", + "customers_summary_report" => "", + "date" => "", + "date_range" => "", + "description" => "", + "detailed_receivings_report" => "", + "detailed_receivings_report_input" => "", + "detailed_reports" => "", + "detailed_requisition_report" => "", + "detailed_sales_report" => "", + "discount" => "", + "discount_fixed" => "", + "discount_percent" => "", + "discount_type" => "", + "discounts" => "", + "discounts_summary_report" => "", + "earned" => "", + "employee" => "", + "employees" => "", + "employees_summary_report" => "", + "expenses" => "", + "expenses_amount" => "", + "expenses_categories" => "", + "expenses_categories_summary_report" => "", + "expenses_category" => "", + "expenses_payment_amount" => "", + "expenses_tax_amount" => "", + "expenses_total_amount" => "", + "expenses_total_tax_amount" => "", + "graphical_reports" => "", + "inventory" => "", + "inventory_low" => "", + "inventory_low_report" => "", + "inventory_reports" => "", + "inventory_summary" => "", + "inventory_summary_report" => "", + "item" => "", + "item_count" => "", + "item_name" => "", + "item_number" => "", + "items" => "", + "items_purchased" => "", + "items_received" => "", + "items_summary_report" => "", + "jurisdiction" => "", + "low_inventory" => "", + "low_inventory_report" => "", + "low_sell_quantity" => "", + "more_than_zero" => "", + "name" => "", + "no_reports_to_display" => "", + "payment_type" => "", + "payments" => "", + "payments_summary_report" => "", + "profit" => "", + "quantity" => "", + "quantity_purchased" => "", + "quotes" => "", + "received_by" => "", + "receiving_id" => "", + "receiving_type" => "", + "receivings" => "", + "reorder_level" => "", + "report" => "", + "report_input" => "", + "reports" => "", + "requisition" => "", + "requisition_by" => "", + "requisition_id" => "", + "requisition_item" => "", + "requisition_item_quantity" => "", + "requisition_related_item" => "", + "requisition_related_item_total_quantity" => "", + "requisition_related_item_unit_quantity" => "", + "requisitions" => "", + "returns" => "", + "revenue" => "", + "sale_id" => "", + "sale_type" => "", + "sales" => "", + "sales_amount" => "", + "sales_summary_report" => "", + "sales_taxes" => "", + "sales_taxes_summary_report" => "", + "serial_number" => "", + "service_charge" => "", + "sold_by" => "", + "sold_items" => "", + "sold_to" => "", + "stock_location" => "", + "sub_total_value" => "", + "subtotal" => "", + "summary_reports" => "", + "supplied_by" => "", + "supplier" => "", + "suppliers" => "", + "suppliers_summary_report" => "", + "tax" => "", + "tax_category" => "", + "tax_name" => "", + "tax_percent" => "", + "tax_rate" => "", + "taxes" => "", + "taxes_summary_report" => "", + "total" => "", + "total_inventory_value" => "", + "total_low_sell_quantity" => "", + "total_quantity" => "", + "total_retail" => "", + "trans_amount" => "", + "trans_due" => "", + "trans_group" => "", + "trans_nopay_sales" => "", + "trans_payments" => "", + "trans_refunded" => "", + "trans_sales" => "", + "trans_type" => "", + "type" => "", + "unit_price" => "", + "used" => "", + "work_orders" => "", + "zero_and_less" => "", ]; diff --git a/app/Language/nb/Sales.php b/app/Language/nb/Sales.php index 6a63d9f51..da1a62b40 100644 --- a/app/Language/nb/Sales.php +++ b/app/Language/nb/Sales.php @@ -1,224 +1,224 @@ "", - "rewards_package" => "", - "rewards_remaining_balance" => "", - "account_number" => "", - "add_payment" => "", - "amount_due" => "", - "amount_tendered" => "", - "authorized_signature" => "", - "cancel_sale" => "", - "cash" => "", - "cash_1" => "", - "cash_2" => "", - "cash_3" => "", - "cash_4" => "", - "cash_adjustment" => "", - "cash_deposit" => "", - "cash_filter" => "", - "change_due" => "", - "change_price" => "", - "check" => "", - "check_balance" => "", - "check_filter" => "", - "close" => "", - "comment" => "", - "comments" => "", - "company_name" => "", - "complete" => "", - "complete_sale" => "", - "confirm_cancel_sale" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "credit" => "", - "credit_deposit" => "", - "credit_filter" => "", - "current_table" => "", - "customer" => "", - "customer_address" => "", - "customer_discount" => "", - "customer_email" => "", - "customer_location" => "", - "customer_mailchimp_status" => "", - "customer_optional" => "", - "customer_required" => "", - "customer_total" => "", - "customer_total_spent" => "", - "daily_sales" => "", - "date" => "", - "date_range" => "", - "date_required" => "", - "date_type" => "", - "debit" => "", - "debit_filter" => "", - "delete" => "", - "delete_confirmation" => "", - "delete_entire_sale" => "", - "delete_successful" => "", - "delete_unsuccessful" => "", - "description_abbrv" => "", - "discard" => "", - "discard_quote" => "", - "discount" => "", - "discount_included" => "", - "discount_short" => "", - "due" => "", - "due_filter" => "", - "edit" => "", - "edit_item" => "", - "edit_sale" => "", - "email_receipt" => "", - "employee" => "", - "entry" => "", - "error_editing_item" => "", - "find_or_scan_item" => "", - "find_or_scan_item_or_receipt" => "", - "giftcard" => "", - "giftcard_balance" => "", - "giftcard_filter" => "", - "giftcard_number" => "", - "group_by_category" => "", - "group_by_type" => "", - "hsn" => "", - "id" => "", - "include_prices" => "", - "invoice" => "", - "invoice_confirm" => "", - "invoice_enable" => "", - "invoice_filter" => "", - "invoice_no_email" => "", - "invoice_number" => "", - "invoice_number_duplicate" => "", - "invoice_sent" => "", - "invoice_total" => "", - "invoice_type_custom_invoice" => "", - "invoice_type_custom_tax_invoice" => "", - "invoice_type_invoice" => "", - "invoice_type_tax_invoice" => "", - "invoice_unsent" => "", - "invoice_update" => "", - "item_insufficient_of_stock" => "", - "item_name" => "", - "item_number" => "", - "item_out_of_stock" => "", - "key_browser" => "", - "key_cancel" => "Cancels Current Quote/Invoice/Sale", - "key_customer_search" => "Customer Search", - "key_finish_quote" => "Finish Quote/Invoice witdout payment", - "key_finish_sale" => "Add Payment and Complete Invoice/Sale", - "key_full" => "", - "key_function" => "Function", - "key_help" => "Shortcuts", - "key_help_modal" => "Open Shortcuts Window", - "key_in" => "", - "key_item_search" => "Item Search", - "key_out" => "", - "key_payment" => "Add Payment", - "key_print" => "", - "key_restore" => "", - "key_search" => "", - "key_suspend" => "Suspend Current Sale", - "key_suspended" => "Show Suspended Sales", - "key_system" => "", - "key_tendered" => "Edit Amount Tendered", - "key_title" => "Sales Keyboard Shortcuts", - "mc" => "", - "mode" => "", - "must_enter_numeric" => "", - "must_enter_numeric_giftcard" => "", - "new_customer" => "", - "new_item" => "", - "no_description" => "", - "no_filter" => "", - "no_items_in_cart" => "", - "no_sales_to_display" => "", - "none_selected" => "", - "nontaxed_ind" => "", - "not_authorized" => "", - "one_or_multiple" => "", - "payment" => "", - "payment_amount" => "", - "payment_not_cover_total" => "", - "payment_type" => "", - "payments" => "", - "payments_total" => "", - "price" => "", - "print_after_sale" => "", - "quantity" => "", - "quantity_less_than_reorder_level" => "", - "quantity_less_than_zero" => "", - "quantity_of_items" => "", - "quote" => "", - "quote_number" => "", - "quote_number_duplicate" => "", - "quote_sent" => "", - "quote_unsent" => "", - "receipt" => "", - "receipt_no_email" => "", - "receipt_number" => "", - "receipt_sent" => "", - "receipt_unsent" => "", - "refund" => "", - "register" => "", - "remove_customer" => "", - "remove_discount" => "", - "return" => "", - "rewards" => "", - "rewards_balance" => "", - "sale" => "", - "sale_by_invoice" => "", - "sale_for_customer" => "", - "sale_time" => "", - "sales_tax" => "", - "sales_total" => "", - "select_customer" => "", - "send_invoice" => "", - "send_quote" => "", - "send_receipt" => "", - "send_work_order" => "", - "serial" => "", - "service_charge" => "", - "show_due" => "", - "show_invoice" => "", - "show_receipt" => "", - "start_typing_customer_name" => "", - "start_typing_item_name" => "", - "stock" => "", - "stock_location" => "", - "sub_total" => "", - "successfully_deleted" => "", - "successfully_restored" => "", - "successfully_suspended_sale" => "", - "successfully_updated" => "", - "suspend_sale" => "", - "suspended_doc_id" => "", - "suspended_sale_id" => "", - "suspended_sales" => "", - "table" => "", - "takings" => "", - "tax" => "", - "tax_id" => "", - "tax_invoice" => "", - "tax_percent" => "", - "taxed_ind" => "", - "total" => "", - "total_tax_exclusive" => "", - "transaction_failed" => "", - "unable_to_add_item" => "", - "unsuccessfully_deleted" => "", - "unsuccessfully_restored" => "", - "unsuccessfully_suspended_sale" => "", - "unsuccessfully_updated" => "", - "unsuspend" => "", - "unsuspend_and_delete" => "", - "update" => "", - "upi" => "", - "visa" => "", - "wholesale" => "", - "work_order" => "", - "work_order_number" => "", - "work_order_number_duplicate" => "", - "work_order_sent" => "", - "work_order_unsent" => "", + "customers_available_points" => "", + "rewards_package" => "", + "rewards_remaining_balance" => "", + "account_number" => "", + "add_payment" => "", + "amount_due" => "", + "amount_tendered" => "", + "authorized_signature" => "", + "cancel_sale" => "", + "cash" => "", + "cash_1" => "", + "cash_2" => "", + "cash_3" => "", + "cash_4" => "", + "cash_adjustment" => "", + "cash_deposit" => "", + "cash_filter" => "", + "change_due" => "", + "change_price" => "", + "check" => "", + "check_balance" => "", + "check_filter" => "", + "close" => "", + "comment" => "", + "comments" => "", + "company_name" => "", + "complete" => "", + "complete_sale" => "", + "confirm_cancel_sale" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "credit" => "", + "credit_deposit" => "", + "credit_filter" => "", + "current_table" => "", + "customer" => "", + "customer_address" => "", + "customer_discount" => "", + "customer_email" => "", + "customer_location" => "", + "customer_mailchimp_status" => "", + "customer_optional" => "", + "customer_required" => "", + "customer_total" => "", + "customer_total_spent" => "", + "daily_sales" => "", + "date" => "", + "date_range" => "", + "date_required" => "", + "date_type" => "", + "debit" => "", + "debit_filter" => "", + "delete" => "", + "delete_confirmation" => "", + "delete_entire_sale" => "", + "delete_successful" => "", + "delete_unsuccessful" => "", + "description_abbrv" => "", + "discard" => "", + "discard_quote" => "", + "discount" => "", + "discount_included" => "", + "discount_short" => "", + "due" => "", + "due_filter" => "", + "edit" => "", + "edit_item" => "", + "edit_sale" => "", + "email_receipt" => "", + "employee" => "", + "entry" => "", + "error_editing_item" => "", + "find_or_scan_item" => "", + "find_or_scan_item_or_receipt" => "", + "giftcard" => "", + "giftcard_balance" => "", + "giftcard_filter" => "", + "giftcard_number" => "", + "group_by_category" => "", + "group_by_type" => "", + "hsn" => "", + "id" => "", + "include_prices" => "", + "invoice" => "", + "invoice_confirm" => "", + "invoice_enable" => "", + "invoice_filter" => "", + "invoice_no_email" => "", + "invoice_number" => "", + "invoice_number_duplicate" => "", + "invoice_sent" => "", + "invoice_total" => "", + "invoice_type_custom_invoice" => "", + "invoice_type_custom_tax_invoice" => "", + "invoice_type_invoice" => "", + "invoice_type_tax_invoice" => "", + "invoice_unsent" => "", + "invoice_update" => "", + "item_insufficient_of_stock" => "", + "item_name" => "", + "item_number" => "", + "item_out_of_stock" => "", + "key_browser" => "", + "key_cancel" => "Cancels Current Quote/Invoice/Sale", + "key_customer_search" => "Customer Search", + "key_finish_quote" => "Finish Quote/Invoice witdout payment", + "key_finish_sale" => "Add Payment and Complete Invoice/Sale", + "key_full" => "", + "key_function" => "Function", + "key_help" => "Shortcuts", + "key_help_modal" => "Open Shortcuts Window", + "key_in" => "", + "key_item_search" => "Item Search", + "key_out" => "", + "key_payment" => "Add Payment", + "key_print" => "", + "key_restore" => "", + "key_search" => "", + "key_suspend" => "Suspend Current Sale", + "key_suspended" => "Show Suspended Sales", + "key_system" => "", + "key_tendered" => "Edit Amount Tendered", + "key_title" => "Sales Keyboard Shortcuts", + "mc" => "", + "mode" => "", + "must_enter_numeric" => "", + "must_enter_numeric_giftcard" => "", + "new_customer" => "", + "new_item" => "", + "no_description" => "", + "no_filter" => "", + "no_items_in_cart" => "", + "no_sales_to_display" => "", + "none_selected" => "", + "nontaxed_ind" => "", + "not_authorized" => "", + "one_or_multiple" => "", + "payment" => "", + "payment_amount" => "", + "payment_not_cover_total" => "", + "payment_type" => "", + "payments" => "", + "payments_total" => "", + "price" => "", + "print_after_sale" => "", + "quantity" => "", + "quantity_less_than_reorder_level" => "", + "quantity_less_than_zero" => "", + "quantity_of_items" => "", + "quote" => "", + "quote_number" => "", + "quote_number_duplicate" => "", + "quote_sent" => "", + "quote_unsent" => "", + "receipt" => "", + "receipt_no_email" => "", + "receipt_number" => "", + "receipt_sent" => "", + "receipt_unsent" => "", + "refund" => "", + "register" => "", + "remove_customer" => "", + "remove_discount" => "", + "return" => "", + "rewards" => "", + "rewards_balance" => "", + "sale" => "", + "sale_by_invoice" => "", + "sale_for_customer" => "", + "sale_time" => "", + "sales_tax" => "", + "sales_total" => "", + "select_customer" => "", + "send_invoice" => "", + "send_quote" => "", + "send_receipt" => "", + "send_work_order" => "", + "serial" => "", + "service_charge" => "", + "show_due" => "", + "show_invoice" => "", + "show_receipt" => "", + "start_typing_customer_name" => "", + "start_typing_item_name" => "", + "stock" => "", + "stock_location" => "", + "sub_total" => "", + "successfully_deleted" => "", + "successfully_restored" => "", + "successfully_suspended_sale" => "", + "successfully_updated" => "", + "suspend_sale" => "", + "suspended_doc_id" => "", + "suspended_sale_id" => "", + "suspended_sales" => "", + "table" => "", + "takings" => "", + "tax" => "", + "tax_id" => "", + "tax_invoice" => "", + "tax_percent" => "", + "taxed_ind" => "", + "total" => "", + "total_tax_exclusive" => "", + "transaction_failed" => "", + "unable_to_add_item" => "", + "unsuccessfully_deleted" => "", + "unsuccessfully_restored" => "", + "unsuccessfully_suspended_sale" => "", + "unsuccessfully_updated" => "", + "unsuspend" => "", + "unsuspend_and_delete" => "", + "update" => "", + "upi" => "", + "visa" => "", + "wholesale" => "", + "work_order" => "", + "work_order_number" => "", + "work_order_number_duplicate" => "", + "work_order_sent" => "", + "work_order_unsent" => "", ]; diff --git a/app/Language/nb/Suppliers.php b/app/Language/nb/Suppliers.php index f26bc2195..3a9fa4cac 100644 --- a/app/Language/nb/Suppliers.php +++ b/app/Language/nb/Suppliers.php @@ -1,24 +1,24 @@ "", - "agency_name" => "", - "cannot_be_deleted" => "", - "category" => "", - "company_name" => "", - "company_name_required" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "cost" => "", - "error_adding_updating" => "", - "goods" => "", - "new" => "", - "none_selected" => "", - "one_or_multiple" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "supplier" => "", - "supplier_id" => "", - "tax_id" => "", - "update" => "", + "account_number" => "", + "agency_name" => "", + "cannot_be_deleted" => "", + "category" => "", + "company_name" => "", + "company_name_required" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "cost" => "", + "error_adding_updating" => "", + "goods" => "", + "new" => "", + "none_selected" => "", + "one_or_multiple" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "supplier" => "", + "supplier_id" => "", + "tax_id" => "", + "update" => "", ]; diff --git a/app/Language/nb/Taxes.php b/app/Language/nb/Taxes.php index 6ae3d5b76..691ff9bb3 100644 --- a/app/Language/nb/Taxes.php +++ b/app/Language/nb/Taxes.php @@ -1,82 +1,82 @@ "", - "cascade" => "", - "cascade_sequence" => "", - "city" => "", - "code" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "default_tax_category" => "", - "default_tax_rate" => "", - "error_adding_updating" => "", - "group_seq" => "", - "jurisdiction_name" => "", - "name" => "", - "new" => "", - "no_taxes" => "", - "no_taxes_to_display" => "", - "reporting_authority" => "", - "round_half_down" => "", - "round_half_even" => "", - "round_half_odd" => "", - "round_half_up" => "", - "rounding_code" => "", - "sales_tax" => "", - "sales_tax_by_invoice" => "", - "sequence" => "", - "state" => "", - "successful_deleted" => "", - "tax_categories" => "", - "tax_categories_configuration" => "", - "tax_categories_saved_successfully" => "", - "tax_categories_saved_unsuccessfully" => "", - "tax_category" => "", - "tax_category_code" => "", - "tax_category_duplicate" => "", - "tax_category_invalid_chars" => "", - "tax_category_name" => "", - "tax_category_new" => "", - "tax_category_required" => "", - "tax_code" => "", - "tax_code_cannot_be_deleted" => "", - "tax_code_duplicate" => "", - "tax_code_invalid_chars" => "", - "tax_code_name" => "", - "tax_code_required" => "", - "tax_code_successful_deleted" => "", - "tax_code_successful_updated" => "", - "tax_code_successful_updating" => "", - "tax_code_successfully_added" => "", - "tax_code_type" => "", - "tax_codes" => "", - "tax_codes_configuration" => "", - "tax_codes_saved_successfully" => "", - "tax_codes_saved_unsuccessfully" => "", - "tax_excluded" => "", - "tax_group" => "", - "tax_group_not_unique" => "", - "tax_group_sequence" => "", - "tax_included" => "", - "tax_jurisdiction" => "", - "tax_jurisdiction_duplicate" => "", - "tax_jurisdiction_invalid_chars" => "", - "tax_jurisdiction_required" => "", - "tax_jurisdictions" => "", - "tax_jurisdictions_configuration" => "", - "tax_jurisdictions_saved_successfully" => "", - "tax_jurisdictions_saved_unsuccessfully" => "", - "tax_rate" => "", - "tax_rate_configuration" => "", - "tax_rate_error_adding_updating" => "", - "tax_rate_numeric" => "", - "tax_rate_required" => "", - "tax_rate_successful_updated" => "", - "tax_rate_successfully_added" => "", - "tax_rates" => "", - "tax_rates_configuration" => "", - "tax_rounding" => "", - "tax_type" => "", - "update" => "", - "vat_tax" => "", + "add_exception" => "", + "cascade" => "", + "cascade_sequence" => "", + "city" => "", + "code" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "default_tax_category" => "", + "default_tax_rate" => "", + "error_adding_updating" => "", + "group_seq" => "", + "jurisdiction_name" => "", + "name" => "", + "new" => "", + "no_taxes" => "", + "no_taxes_to_display" => "", + "reporting_authority" => "", + "round_half_down" => "", + "round_half_even" => "", + "round_half_odd" => "", + "round_half_up" => "", + "rounding_code" => "", + "sales_tax" => "", + "sales_tax_by_invoice" => "", + "sequence" => "", + "state" => "", + "successful_deleted" => "", + "tax_categories" => "", + "tax_categories_configuration" => "", + "tax_categories_saved_successfully" => "", + "tax_categories_saved_unsuccessfully" => "", + "tax_category" => "", + "tax_category_code" => "", + "tax_category_duplicate" => "", + "tax_category_invalid_chars" => "", + "tax_category_name" => "", + "tax_category_new" => "", + "tax_category_required" => "", + "tax_code" => "", + "tax_code_cannot_be_deleted" => "", + "tax_code_duplicate" => "", + "tax_code_invalid_chars" => "", + "tax_code_name" => "", + "tax_code_required" => "", + "tax_code_successful_deleted" => "", + "tax_code_successful_updated" => "", + "tax_code_successful_updating" => "", + "tax_code_successfully_added" => "", + "tax_code_type" => "", + "tax_codes" => "", + "tax_codes_configuration" => "", + "tax_codes_saved_successfully" => "", + "tax_codes_saved_unsuccessfully" => "", + "tax_excluded" => "", + "tax_group" => "", + "tax_group_not_unique" => "", + "tax_group_sequence" => "", + "tax_included" => "", + "tax_jurisdiction" => "", + "tax_jurisdiction_duplicate" => "", + "tax_jurisdiction_invalid_chars" => "", + "tax_jurisdiction_required" => "", + "tax_jurisdictions" => "", + "tax_jurisdictions_configuration" => "", + "tax_jurisdictions_saved_successfully" => "", + "tax_jurisdictions_saved_unsuccessfully" => "", + "tax_rate" => "", + "tax_rate_configuration" => "", + "tax_rate_error_adding_updating" => "", + "tax_rate_numeric" => "", + "tax_rate_required" => "", + "tax_rate_successful_updated" => "", + "tax_rate_successfully_added" => "", + "tax_rates" => "", + "tax_rates_configuration" => "", + "tax_rounding" => "", + "tax_type" => "", + "update" => "", + "vat_tax" => "", ]; diff --git a/app/Language/nl-BE/Attributes.php b/app/Language/nl-BE/Attributes.php index daab3d1cf..0dee5685b 100644 --- a/app/Language/nl-BE/Attributes.php +++ b/app/Language/nl-BE/Attributes.php @@ -1,32 +1,32 @@ "Attribuut waarde kan geen ':' of '|' bevatten", - "confirm_delete" => "Bent u zeker dat u de geselecteerde attributen wil verwijderen?", - "confirm_restore" => "Bent u zeker dat u de geselecteerde attributen wil herstellen?", - "definition_cannot_be_deleted" => "De geselecteerde attributen konden niet verwijderd worden", - "definition_error_adding_updating" => "Attribuut {0} kon niet toegevoegd of gewijzigd worden. Kijk de error logs na.", - "definition_flags" => "Zichtbaarheid", - "definition_group" => "Groep", - "definition_id" => "Id", - "definition_name" => "Nieuw attribuut", - "definition_name_required" => "Attribuut naam is een verplicht veld", - "definition_one_or_multiple" => "Attribu(u)t(en)", - "definition_successful_adding" => "Attribuut succesvol toegevoegd", - "definition_successful_deleted" => "Attribu(u)t(en) succesvol verwijderd", - "definition_successful_updating" => "Wijzigingen bewaard voor", - "definition_type" => "Type", - "definition_type_required" => "Attribuut type is een verplicht veld", - "definition_unit" => "Meeteenheid", - "definition_values" => "Attribuut waardes", - "new" => "Nieuw Attribuut", - "no_attributes_to_display" => "Er werden geen attributen gevonden", - "receipt_visibility" => "Verkoop", - "show_in_items" => "Toon in producten", - "show_in_items_visibility" => "Producten", - "show_in_receipt" => "Toon in verkoop", - "show_in_receivings" => "Toon in orders", - "show_in_receivings_visibility" => "Orders", - "show_in_sales" => "Toon in verkoop", - "show_in_sales_visibility" => "Verkoop", - "update" => "Wijzig Attribuut", + "attribute_value_invalid_chars" => "Attribuut waarde kan geen ':' of '|' bevatten", + "confirm_delete" => "Bent u zeker dat u de geselecteerde attributen wil verwijderen?", + "confirm_restore" => "Bent u zeker dat u de geselecteerde attributen wil herstellen?", + "definition_cannot_be_deleted" => "De geselecteerde attributen konden niet verwijderd worden", + "definition_error_adding_updating" => "Attribuut {0} kon niet toegevoegd of gewijzigd worden. Kijk de error logs na.", + "definition_flags" => "Zichtbaarheid", + "definition_group" => "Groep", + "definition_id" => "Id", + "definition_name" => "Nieuw attribuut", + "definition_name_required" => "Attribuut naam is een verplicht veld", + "definition_one_or_multiple" => "Attribu(u)t(en)", + "definition_successful_adding" => "Attribuut succesvol toegevoegd", + "definition_successful_deleted" => "Attribu(u)t(en) succesvol verwijderd", + "definition_successful_updating" => "Wijzigingen bewaard voor", + "definition_type" => "Type", + "definition_type_required" => "Attribuut type is een verplicht veld", + "definition_unit" => "Meeteenheid", + "definition_values" => "Attribuut waardes", + "new" => "Nieuw Attribuut", + "no_attributes_to_display" => "Er werden geen attributen gevonden", + "receipt_visibility" => "Verkoop", + "show_in_items" => "Toon in producten", + "show_in_items_visibility" => "Producten", + "show_in_receipt" => "Toon in verkoop", + "show_in_receivings" => "Toon in orders", + "show_in_receivings_visibility" => "Orders", + "show_in_sales" => "Toon in verkoop", + "show_in_sales_visibility" => "Verkoop", + "update" => "Wijzig Attribuut", ]; diff --git a/app/Language/nl-BE/Bootstrap_tables.php b/app/Language/nl-BE/Bootstrap_tables.php index 226717dc7..7cd956137 100644 --- a/app/Language/nl-BE/Bootstrap_tables.php +++ b/app/Language/nl-BE/Bootstrap_tables.php @@ -1,11 +1,11 @@ "alle", - "columns" => "Kolommen", - "hide_show_pagination" => "Toon %s record(s)", - "loading" => "Laden, even geduld...", - "page_from_to" => "Toon {0} tot {1} van {2} record(s)", - "refresh" => "Vernieuwen", - "rows_per_page" => "{0} records per pagina", - "toggle" => "Omschakelen", + "all" => "alle", + "columns" => "Kolommen", + "hide_show_pagination" => "Toon %s record(s)", + "loading" => "Laden, even geduld...", + "page_from_to" => "Toon {0} tot {1} van {2} record(s)", + "refresh" => "Vernieuwen", + "rows_per_page" => "{0} records per pagina", + "toggle" => "Omschakelen", ]; diff --git a/app/Language/nl-BE/Calendar.php b/app/Language/nl-BE/Calendar.php index 9c2250e80..c9eba6392 100644 --- a/app/Language/nl-BE/Calendar.php +++ b/app/Language/nl-BE/Calendar.php @@ -1,48 +1,48 @@ "zo", - "mo" => "ma", - "tu" => "di", - "we" => "wo", - "th" => "do", - "fr" => "vr", - "sa" => "za", - "sun" => "zon", - "mon" => "maa", - "tue" => "din", - "wed" => "woe", - "thu" => "don", - "fri" => "vri", - "sat" => "zat", - "sunday" => "zondag", - "monday" => "maandag", - "tuesday" => "dinsdag", - "wednesday" => "woensdag", - "thursday" => "donderdag", - "friday" => "vrijdag", - "saturday" => "zaterdag", - "jan" => "jan", - "feb" => "feb", - "mar" => "mar", - "apr" => "apr", - "may" => "mei", - "jun" => "jun", - "jul" => "jul", - "aug" => "aug", - "sep" => "sep", - "oct" => "okt", - "nov" => "nov", - "dec" => "dec", - "january" => "januari", - "february" => "februari", - "march" => "maart", - "april" => "april", - "mayl" => "mei", - "june" => "juni", - "july" => "juli", - "august" => "augustus", - "september" => "september", - "october" => "oktober", - "november" => "november", - "december" => "december", + "su" => "zo", + "mo" => "ma", + "tu" => "di", + "we" => "wo", + "th" => "do", + "fr" => "vr", + "sa" => "za", + "sun" => "zon", + "mon" => "maa", + "tue" => "din", + "wed" => "woe", + "thu" => "don", + "fri" => "vri", + "sat" => "zat", + "sunday" => "zondag", + "monday" => "maandag", + "tuesday" => "dinsdag", + "wednesday" => "woensdag", + "thursday" => "donderdag", + "friday" => "vrijdag", + "saturday" => "zaterdag", + "jan" => "jan", + "feb" => "feb", + "mar" => "mar", + "apr" => "apr", + "may" => "mei", + "jun" => "jun", + "jul" => "jul", + "aug" => "aug", + "sep" => "sep", + "oct" => "okt", + "nov" => "nov", + "dec" => "dec", + "january" => "januari", + "february" => "februari", + "march" => "maart", + "april" => "april", + "mayl" => "mei", + "june" => "juni", + "july" => "juli", + "august" => "augustus", + "september" => "september", + "october" => "oktober", + "november" => "november", + "december" => "december", ]; diff --git a/app/Language/nl-BE/Cashups.php b/app/Language/nl-BE/Cashups.php index 19bc578f5..974bdd613 100644 --- a/app/Language/nl-BE/Cashups.php +++ b/app/Language/nl-BE/Cashups.php @@ -1,49 +1,49 @@ "Bedrag", - "amount_number" => "Bedrag moet een getal zijn", - "amount_required" => "Een bedrag moet worden ingevuld.", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "Cashup kan niet verwijderd worden", - "cash_difference" => "", - "close_date" => "Datum sluiting kassa", - "close_employee" => "Werknemer", - "closed_amount_card" => "Debitkaart", - "closed_amount_cash" => "Cash", - "closed_amount_check" => "Cheque", - "closed_amount_due" => "Tegoeden", - "closed_amount_giftcard" => "", - "closed_amount_total" => "Totaal", - "closed_date" => "Datum afgesloten", - "confirm_delete" => "Bent u zeker dat u de geselecteerde cashups wil verwijderen?", - "confirm_restore" => "Bent u zeker dat u de geselecteerde cashups wil herstellen?", - "confirm_submit" => "", - "date_number" => "Ongeldige datum", - "date_required" => "Datum is een verplicht veld", - "description" => "Omschrijving", - "enable_expected" => "", - "error_adding_updating" => "Fout bij het aanmaken/wijzigen van de cashup", - "giftcard" => "", - "id" => "Id", - "info" => "Cashups Info", - "info_employee" => "", - "is_deleted" => "Verwijderd", - "new" => "Nieuwe Cashup", - "no_cashups_to_display" => "Er zijn geen cashups weer te geven", - "none_selected" => "U hebt geen cashups geselecteerd", - "note" => "Notities", - "one_or_multiple" => "Cashup(s)", - "open_amount_cash" => "Startbedrag", - "open_date" => "Open Datum", - "open_employee" => "Geopend door", - "opened_date" => "Datum geopend", - "successful_adding" => "Cashup succesvol toegevoegd", - "successful_deleted" => "Cashup succesvol vewijderd", - "successful_updating" => "Cashup succesvol gewijzigd", - "total" => "Totaal", - "transfer_amount_cash" => "In/Out Cash", - "transfer_amount_cash_minus" => "", - "update" => "Wijzig Cashup", - "warning" => "", + "amount" => "Bedrag", + "amount_number" => "Bedrag moet een getal zijn", + "amount_required" => "Een bedrag moet worden ingevuld.", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "Cashup kan niet verwijderd worden", + "cash_difference" => "", + "close_date" => "Datum sluiting kassa", + "close_employee" => "Werknemer", + "closed_amount_card" => "Debitkaart", + "closed_amount_cash" => "Cash", + "closed_amount_check" => "Cheque", + "closed_amount_due" => "Tegoeden", + "closed_amount_giftcard" => "", + "closed_amount_total" => "Totaal", + "closed_date" => "Datum afgesloten", + "confirm_delete" => "Bent u zeker dat u de geselecteerde cashups wil verwijderen?", + "confirm_restore" => "Bent u zeker dat u de geselecteerde cashups wil herstellen?", + "confirm_submit" => "", + "date_number" => "Ongeldige datum", + "date_required" => "Datum is een verplicht veld", + "description" => "Omschrijving", + "enable_expected" => "", + "error_adding_updating" => "Fout bij het aanmaken/wijzigen van de cashup", + "giftcard" => "", + "id" => "Id", + "info" => "Cashups Info", + "info_employee" => "", + "is_deleted" => "Verwijderd", + "new" => "Nieuwe Cashup", + "no_cashups_to_display" => "Er zijn geen cashups weer te geven", + "none_selected" => "U hebt geen cashups geselecteerd", + "note" => "Notities", + "one_or_multiple" => "Cashup(s)", + "open_amount_cash" => "Startbedrag", + "open_date" => "Open Datum", + "open_employee" => "Geopend door", + "opened_date" => "Datum geopend", + "successful_adding" => "Cashup succesvol toegevoegd", + "successful_deleted" => "Cashup succesvol vewijderd", + "successful_updating" => "Cashup succesvol gewijzigd", + "total" => "Totaal", + "transfer_amount_cash" => "In/Out Cash", + "transfer_amount_cash_minus" => "", + "update" => "Wijzig Cashup", + "warning" => "", ]; diff --git a/app/Language/nl-BE/Common.php b/app/Language/nl-BE/Common.php index 820fc61b2..a2582dd16 100644 --- a/app/Language/nl-BE/Common.php +++ b/app/Language/nl-BE/Common.php @@ -1,88 +1,88 @@ "Adres 1", - "address_2" => "Adres 2", - "admin" => "", - "city" => "Stad", - "clerk" => "", - "close" => "Sluit", - "color" => "", - "comments" => "Commentaar", - "common" => "algemeen", - "confirm_search" => "U hebt een of meerdere rijen geselecteerd, deze zullen niet langer geselecteerd zijn na de zoekopdracht. Bent u zeker dat u wil verdergaan?", - "copyrights" => "© 2010 - {0}", - "correct_errors" => "Los aub de aangegeven fouten op voor u bewaart", - "country" => "Land", - "dashboard" => "", - "date" => "Datum", - "delete" => "Verwijder", - "det" => "details", - "download_import_template" => "Download Import CSV Template (CSV)", - "edit" => "bewerk", - "email" => "Email", - "email_invalid_format" => "Je moet een geldig email adres invullen.", - "export_csv" => "CSV Export", - "export_csv_no" => "No", - "export_csv_yes" => "Ja", - "fields_required_message" => "Velden met een * moeten ingevuld worden", - "fields_required_message_unique" => "", - "first_name" => "Voornaam", - "first_name_required" => "De voornaam moet ingevuld worden.", - "first_page" => "Eerste", - "gender" => "Geslacht", - "gender_female" => "V", - "gender_male" => "M", - "gender_undefined" => "X", - "icon" => "Pictogram", - "id" => "ID", - "import" => "Import", - "import_change_file" => "Wijzig", - "import_csv" => "CSV Import", - "import_full_path" => "Volledig path naar CSV-bestand vereist", - "import_remove_file" => "Verwijder", - "import_select_file" => "Selecteer bestand", - "inv" => "stock", - "last_name" => "Achternaam", - "last_name_required" => "De achternaam moet ingevuld worden.", - "last_page" => "Laatste", - "learn_about_project" => "om de laatste informatie te verkrijgen over het project.", - "list_of" => "Lijst van", - "logo" => "Logo", - "logo_mark" => "Merk", - "logout" => "UItloggen", - "manager" => "", - "migration_needed" => "Een database migratie naar {0} zal starten na de login.", - "new" => "Nieuw", - "no" => "Neen", - "no_persons_to_display" => "Er werden geen personen gevonden.", - "none_selected_text" => "Geen selectie", - "or" => "Of", - "people" => "", - "phone_number" => "Telefoon", - "phone_number_required" => "", - "please_visit_my" => "Bezoek mijn", - "position" => "", - "powered_by" => "Mogelijk gemaakt door", - "price" => "Prijs", - "print" => "Print", - "remove" => "Verwijder", - "required" => "Vereist", - "restore" => "Herstel", - "return_policy" => "Retourvoorwaarden", - "search" => "Zoek", - "search_options" => "Zoek criteria", - "searched_for" => "Gezocht op", - "software_short" => "OSPOS", - "software_title" => "Open Source Verkooppunt", - "state" => "Provincie", - "submit" => "Verzend", - "total_spent" => "Totaal uitgegeven", - "unknown" => "Onbekend", - "view_recent_sales" => "Bekijk recente verkoop", - "website" => "website", - "welcome" => "Welkom", - "welcome_message" => "Welkom bij OSPOS, klik op een module hieronder om te beginnen.", - "yes" => "Ja", - "you_are_using_ospos" => "U gebruikt Open Source Point Of Sale Version", - "zip" => "Postcode", + "address_1" => "Adres 1", + "address_2" => "Adres 2", + "admin" => "", + "city" => "Stad", + "clerk" => "", + "close" => "Sluit", + "color" => "", + "comments" => "Commentaar", + "common" => "algemeen", + "confirm_search" => "U hebt een of meerdere rijen geselecteerd, deze zullen niet langer geselecteerd zijn na de zoekopdracht. Bent u zeker dat u wil verdergaan?", + "copyrights" => "© 2010 - {0}", + "correct_errors" => "Los aub de aangegeven fouten op voor u bewaart", + "country" => "Land", + "dashboard" => "", + "date" => "Datum", + "delete" => "Verwijder", + "det" => "details", + "download_import_template" => "Download Import CSV Template (CSV)", + "edit" => "bewerk", + "email" => "Email", + "email_invalid_format" => "Je moet een geldig email adres invullen.", + "export_csv" => "CSV Export", + "export_csv_no" => "No", + "export_csv_yes" => "Ja", + "fields_required_message" => "Velden met een * moeten ingevuld worden", + "fields_required_message_unique" => "", + "first_name" => "Voornaam", + "first_name_required" => "De voornaam moet ingevuld worden.", + "first_page" => "Eerste", + "gender" => "Geslacht", + "gender_female" => "V", + "gender_male" => "M", + "gender_undefined" => "X", + "icon" => "Pictogram", + "id" => "ID", + "import" => "Import", + "import_change_file" => "Wijzig", + "import_csv" => "CSV Import", + "import_full_path" => "Volledig path naar CSV-bestand vereist", + "import_remove_file" => "Verwijder", + "import_select_file" => "Selecteer bestand", + "inv" => "stock", + "last_name" => "Achternaam", + "last_name_required" => "De achternaam moet ingevuld worden.", + "last_page" => "Laatste", + "learn_about_project" => "om de laatste informatie te verkrijgen over het project.", + "list_of" => "Lijst van", + "logo" => "Logo", + "logo_mark" => "Merk", + "logout" => "UItloggen", + "manager" => "", + "migration_needed" => "Een database migratie naar {0} zal starten na de login.", + "new" => "Nieuw", + "no" => "Neen", + "no_persons_to_display" => "Er werden geen personen gevonden.", + "none_selected_text" => "Geen selectie", + "or" => "Of", + "people" => "", + "phone_number" => "Telefoon", + "phone_number_required" => "", + "please_visit_my" => "Bezoek mijn", + "position" => "", + "powered_by" => "Mogelijk gemaakt door", + "price" => "Prijs", + "print" => "Print", + "remove" => "Verwijder", + "required" => "Vereist", + "restore" => "Herstel", + "return_policy" => "Retourvoorwaarden", + "search" => "Zoek", + "search_options" => "Zoek criteria", + "searched_for" => "Gezocht op", + "software_short" => "OSPOS", + "software_title" => "Open Source Verkooppunt", + "state" => "Provincie", + "submit" => "Verzend", + "total_spent" => "Totaal uitgegeven", + "unknown" => "Onbekend", + "view_recent_sales" => "Bekijk recente verkoop", + "website" => "website", + "welcome" => "Welkom", + "welcome_message" => "Welkom bij OSPOS, klik op een module hieronder om te beginnen.", + "yes" => "Ja", + "you_are_using_ospos" => "U gebruikt Open Source Point Of Sale Version", + "zip" => "Postcode", ]; diff --git a/app/Language/nl-BE/Config.php b/app/Language/nl-BE/Config.php index 5c843e8a8..b37620a24 100644 --- a/app/Language/nl-BE/Config.php +++ b/app/Language/nl-BE/Config.php @@ -1,330 +1,330 @@ "Adres", - "address_required" => "Het adres van het bedrijf moet ingevuld worden.", - "all_set" => "All permissies zijn correct ingesteld!", - "allow_duplicate_barcodes" => "Sta gedupliceerde barcodes toe", - "apostrophe" => "apostrof", - "backup_button" => "Backup", - "backup_database" => "Backup Database", - "barcode" => "Streepjescode", - "barcode_company" => "Bedrijfsnaam", - "barcode_configuration" => "Barcode Configuratie", - "barcode_content" => "Inhoud Barcode", - "barcode_first_row" => "Rij 1", - "barcode_font" => "Lettertype", - "barcode_formats" => "Barcode Formaat", - "barcode_generate_if_empty" => "Genereer indien leeg.", - "barcode_height" => "Hoogte (px)", - "barcode_id" => "Product id/naam", - "barcode_info" => "Barcode instellingen", - "barcode_layout" => "Streepjescode-indeling", - "barcode_name" => "Productnaam", - "barcode_number" => "UPC/EAN/ISBN", - "barcode_number_in_row" => "Aantal per rij", - "barcode_page_cellspacing" => "Toon cellspatiëring.", - "barcode_page_width" => "Toon paginabreedte", - "barcode_price" => "Prijs", - "barcode_second_row" => "Rij 2", - "barcode_third_row" => "Rij 3", - "barcode_tooltip" => "Waarschuwing: Deze functie kan ertoe leiden dat er dubbele artikels worden geïmporteerd of aangemaakt. Niet gebruiken als u geen dubbele streepjescodes wilt.", - "barcode_type" => "Type Barcode", - "barcode_width" => "Breedte (px)", - "bottom" => "Bodem", - "cash_button" => "", - "cash_button_1" => "", - "cash_button_2" => "", - "cash_button_3" => "", - "cash_button_4" => "", - "cash_button_5" => "", - "cash_button_6" => "", - "cash_decimals" => "Cash precisie", - "cash_decimals_tooltip" => "Als cash en currency precies niet hetzelfde zijn dan zal er geena afronding gebeuren.", - "cash_rounding" => "Cash Afronding", - "category_dropdown" => "Toon categorie als dropdown", - "center" => "Midden", - "change_apperance_tooltip" => "", - "comma" => "komma", - "company" => "Bedrijfsnaam", - "company_avatar" => "", - "company_change_image" => "Selecteer Afbeelding", - "company_logo" => "Logo", - "company_remove_image" => "Verwijder Afbeelding", - "company_required" => "De bedrijfsnaam moet ingevuld worden", - "company_select_image" => "Selecteer Afbeelding", - "company_website_url" => "De website van het bedrijf is geen geldige URL (http://...).", - "country_codes" => "Land Codes", - "country_codes_tooltip" => "Komma's gescheiden lijst van landencodes voor het op naam opzoeken van het adres opzoeken.", - "currency_code" => "Munteenheid", - "currency_decimals" => "Valuta decimalen", - "currency_symbol" => "Valuta", - "current_employee_only" => "", - "customer_reward" => "Punten", - "customer_reward_duplicate" => "Spaarpunten moeten uniek zijn.", - "customer_reward_enable" => "Activeer Spaarpunten", - "customer_reward_invalid_chars" => "Spaarpunten kunnen geen '_' bevatten", - "customer_reward_required" => "Spaarpunten is een verplicht veld", - "customer_sales_tax_support" => "Klant fiscale support", - "date_or_time_format" => "Datum en tijd filter", - "datetimeformat" => "Datum en tijd formaat", - "decimal_point" => "Decimale punt", - "default_barcode_font_size_number" => "De barcode font grootte moet een getal zijn.", - "default_barcode_font_size_required" => "De barcode font grootte is een verplicht veld.", - "default_barcode_height_number" => "De barcode grootte moet een getal zijn.", - "default_barcode_height_required" => "De barcode grootte is een verplicht veld.", - "default_barcode_num_in_row_number" => "De barcode nummering moet een getal zijn.", - "default_barcode_num_in_row_required" => "De barcode nummering is een verplicht veld.", - "default_barcode_page_cellspacing_number" => "De barcode cellspatiëring moet een getal zijn.", - "default_barcode_page_cellspacing_required" => "De barcode pagina spatiëring is een verplicht veld.", - "default_barcode_page_width_number" => "Standaardbreedte van de streepjescodepagina moet een getal zijn.", - "default_barcode_page_width_required" => "De barcode breedte is een verplicht veld.", - "default_barcode_width_number" => "De breedte van de barcode moet een getal zijn.", - "default_barcode_width_required" => "De breedte van de barcode is een verplicht veld.", - "default_item_columns" => "Standaard Zichtbaarheid Kolommen", - "default_origin_tax_code" => "Standaard VAT code", - "default_receivings_discount" => "Standaard Korting Orders", - "default_receivings_discount_number" => "De korting moet een getal zijn.", - "default_receivings_discount_required" => "De korting is een verplicht veld.", - "default_sales_discount" => "Standaard Korting Verkoop", - "default_sales_discount_number" => "De korting moet een getal zijn.", - "default_sales_discount_required" => "De korting is een verplicht veld.", - "default_tax_category" => "Standaard Tax Categorie", - "default_tax_code" => "Standaard Tax Code", - "default_tax_jurisdiction" => "Standaard Tax District", - "default_tax_name_number" => "Standaard VAT naam moet een string zijn.", - "default_tax_name_required" => "De naam van de VAT moet ingevuld worden.", - "default_tax_rate" => "Standaard VAT %", - "default_tax_rate_1" => "VAT 1 %", - "default_tax_rate_2" => "VAT 2 %", - "default_tax_rate_3" => "", - "default_tax_rate_number" => "Het percentage VAT moet een nummer zijn.", - "default_tax_rate_required" => "Het percentage VAT is een verplicht veld.", - "derive_sale_quantity" => "Laat Verkoop Afgeleide Hoeveelheid toe", - "derive_sale_quantity_tooltip" => "Indien aangevinkt zal er een nieuw item type voorzien worden om items te ordenen", - "dinner_table" => "Tafel", - "dinner_table_duplicate" => "Tafel moet uniek zijn.", - "dinner_table_enable" => "Activeer Restomode", - "dinner_table_invalid_chars" => "Tafel Naam kan geen '_' bevatten.", - "dinner_table_required" => "Tafel is een verplicht veld.", - "dot" => "punt", - "email" => "Email", - "email_configuration" => "Email Configuration", - "email_mailpath" => "Pad naar Sendmail", - "email_protocol" => "Protocol", - "email_receipt_check_behaviour" => "Email Ticket", - "email_receipt_check_behaviour_always" => "Altijd aan", - "email_receipt_check_behaviour_last" => "Onthoud de laatste selectie", - "email_receipt_check_behaviour_never" => "Altijd uitgetikt", - "email_smtp_crypto" => "SMTP Encryptie", - "email_smtp_host" => "SMTP Server", - "email_smtp_pass" => "SMTP Wachtwoord", - "email_smtp_port" => "SMTP Poort", - "email_smtp_timeout" => "SMTP Time-out (s)", - "email_smtp_user" => "SMTP Gebruikersnaam", - "enable_avatar" => "", - "enable_avatar_tooltip" => "", - "enable_dropdown_tooltip" => "", - "enable_new_look" => "", - "enable_right_bar" => "", - "enable_right_bar_tooltip" => "", - "enforce_privacy" => "Vereis privacy", - "enforce_privacy_tooltip" => "Bescherm klanten hun privacy door data obfuscatie toe te passen in geval van verwijdering", - "fax" => "Fax", - "file_perm" => "Er zijn problemen met de bestandsrechten, herstel ze en herlaad deze pagina.", - "financial_year" => "Start boekjaar", - "financial_year_apr" => "Eerste april", - "financial_year_aug" => "Eerste augustus", - "financial_year_dec" => "Eerste december", - "financial_year_feb" => "Eerste februari", - "financial_year_jan" => "Eerste januari", - "financial_year_jul" => "Eerste juli", - "financial_year_jun" => "Eerste juni", - "financial_year_mar" => "Eerste maart", - "financial_year_may" => "Eerste mei", - "financial_year_nov" => "Eerste november", - "financial_year_oct" => "Eerste oktober", - "financial_year_sep" => "Eerste september", - "floating_labels" => "Variabele Etiketten", - "gcaptcha_enable" => "Login Pagina reCAPTCHA", - "gcaptcha_secret_key" => "reCAPTCHA sleutel", - "gcaptcha_secret_key_required" => "reCAPTCHA sleutel is een verplicht veld", - "gcaptcha_site_key" => "reCAPTCHA site sleutel", - "gcaptcha_site_key_required" => "reCAPTCHA site sleutel is een verplicht veld", - "gcaptcha_tooltip" => "Bescherm de login pagina met Google reCAPTCHA, klik op het icoon voor een API key pair.", - "general" => "Algemene", - "general_configuration" => "Algemene Instellingen", - "giftcard_number" => "Cadeaubon Nummer", - "giftcard_random" => "Genereer Willekeurig", - "giftcard_series" => "Genereer in volgorde", - "image_allowed_file_types" => "Toegelaten bestandstypes", - "image_max_height_tooltip" => "Maximum toegelaten hoogte voor afbeeldingen in pixels (px).", - "image_max_size_tooltip" => "Maximum toegelaten bestandsgrootte voor afbeeldingen in kilobytes (kb).", - "image_max_width_tooltip" => "Maximum toegelaten breedte voor afbeeldingen in pixels (px).", - "image_restrictions" => "Upload Instellingen voor Afbeeldingen", - "include_hsn" => "Ondersteuning voor HSN Codes", - "info" => "Instellingen", - "info_configuration" => "Instellingen", - "input_groups" => "Invoer Groepen", - "integrations" => "Integraties", - "integrations_configuration" => "Integraties", - "invoice" => "Factuur", - "invoice_configuration" => "Print Instellingen", - "invoice_default_comments" => "Factuur Mededeling", - "invoice_email_message" => "Factuur Email Sjabloon", - "invoice_enable" => "Factureren inschakelen", - "invoice_printer" => "Factuur Printer", - "invoice_type" => "Factuur Type", - "is_readable" => "kan gelezen worden, maar de permissies zijn niet correct. Zet deze op 640 of 660 en vernieuw.", - "is_writable" => "kan beschreven worden, maar de permissies zijn niet correct. Zet deze op 750 en vernieuw.", - "item_markup" => "", - "jsprintsetup_required" => "Opgelet! De uitgeschakelde functionaliteit werkt enkel met de jsPrintSetup addon in Firefox. Toch opslaan?", - "language" => "Taal", - "last_used_invoice_number" => "Laatst gebruikte factuurnummer", - "last_used_quote_number" => "Laatst gebruikte offertenummer", - "last_used_work_order_number" => "Laatst gebruikte werkordernummer", - "left" => "Links", - "license" => "Licentie", - "license_configuration" => "Licentie Verklaring", - "line_sequence" => "Lijn nummer", - "lines_per_page" => "Lijnen Per Pagina", - "lines_per_page_number" => "Regels per pagina moet een nummer zijn.", - "lines_per_page_required" => "Regels per pagina is een verplicht veld.", - "locale" => "Locatie", - "locale_configuration" => "Locatie Configuratie", - "locale_info" => "Locatie Configuratie Informatie", - "location" => "Voorraad", - "location_configuration" => "Stock Locaties", - "location_info" => "Instellingen Locatie", - "login_form" => "Inlogformulier Stijl", - "logout" => "Wilt u een backup maken alvorens uit te loggen? Klik [OK] voor backup of [Annuleer] om uit te loggen.", - "mailchimp" => "MailChimp", - "mailchimp_api_key" => "MailChimp API Sleutel", - "mailchimp_configuration" => "MailChimp Configuratie", - "mailchimp_key_successfully" => "API sleutel is geldig.", - "mailchimp_key_unsuccessfully" => "API sleutel is ongeldig.", - "mailchimp_lists" => "MailChimp Lijst(en)", - "mailchimp_tooltip" => "Klik op het icoon voor een API sleutel.", - "message" => "Message", - "message_configuration" => "Message Configuration", - "msg_msg" => "Opgeslagen SMS-bericht", - "msg_msg_placeholder" => "Wilt u gebruik maken van een SMS-sjabloon? sla hier uw bericht op. Laat ander het vak leeg.", - "msg_pwd" => "SMS-API Password", - "msg_pwd_required" => "SMS-API Wachtwoord is een verplicht veld", - "msg_src" => "SMS-API Verzender ID", - "msg_src_required" => "SMS-API Verzender ID is een verplicht veld", - "msg_uid" => "SMS-API Gebruikersnaam", - "msg_uid_required" => "SMS-API Gebruikersnaam is een verplicht veld", - "multi_pack_enabled" => "Multipack Ingeschakeld", - "no_risk" => "Geen veiligheids-/kwetsbaarheidsrisico's.", - "none" => "none", - "notify_alignment" => "Notificatie Pop-up positie", - "number_format" => "Number Format", - "number_locale" => "Localisation", - "number_locale_invalid" => "De ingevoerde locatie is ongeldig. Controleer de link in de tooltip om een geldige waarde te vinden.", - "number_locale_required" => "Nummer formaat is een verplicht veld.", - "number_locale_tooltip" => "Vind een geldig formaat via deze link.", - "os_timezone" => "OSPOS Tijdzone:", - "ospos_info" => "OSPOS Installatiegegevens", - "payment_options_order" => "Betaal opties volgorde", - "perm_risk" => "Verkeerd ingestelde permissies vormen een beveiligingsrisico.", - "phone" => "Telefoon", - "phone_required" => "De telefoonnummer van het bedrijf is een verplicht veld.", - "print_bottom_margin" => "Marge Beneden", - "print_bottom_margin_number" => "De ondermarge moet een getal zijn.", - "print_bottom_margin_required" => "De ondermarge is een verplicht veld.", - "print_delay_autoreturn" => "Automatische retour voor vertraagde verkoop", - "print_delay_autoreturn_number" => "Automatische retour voor vertraagde verkoop is een verplicht veld.", - "print_delay_autoreturn_required" => "Automatische retour voor vertraagde verkoop moet een cijfer zijn.", - "print_footer" => "Print browser voettekst", - "print_header" => "Print browser koptekst", - "print_left_margin" => "Marge Links", - "print_left_margin_number" => "De linkermarge moet een getal zijn.", - "print_left_margin_required" => "De linkermarge is een verplicht veld.", - "print_receipt_check_behaviour" => "Print Ticket selectievakje", - "print_receipt_check_behaviour_always" => "Altijd aangevinkt", - "print_receipt_check_behaviour_last" => "Onthoud laatste selectie", - "print_receipt_check_behaviour_never" => "Altijd uitgetikt", - "print_right_margin" => "Marge Rechts", - "print_right_margin_number" => "De rechtermarge moet een getal zijn.", - "print_right_margin_required" => "De rechtermarge is een verplicht veld.", - "print_silently" => "Toon Printvenster", - "print_top_margin" => "Marge Boven", - "print_top_margin_number" => "De bovenmarge moet een getal zijn.", - "print_top_margin_required" => "De bovenmarge is een verplicht veld.", - "quantity_decimals" => "Kwantiteit Decimalen", - "quick_cash_enable" => "", - "quote_default_comments" => "Standaard Offerte Commentaar", - "receipt" => "Ontvangst", - "receipt_category" => "", - "receipt_configuration" => "Print Instellingen", - "receipt_default" => "Default", - "receipt_font_size" => "Font grootte", - "receipt_font_size_number" => "Font grootte moet een nummer zijn.", - "receipt_font_size_required" => "Font grootte is een verplicht veld.", - "receipt_info" => "Ticket Instellingen", - "receipt_printer" => "Bon Printer", - "receipt_short" => "Kort", - "receipt_show_company_name" => "Toon bedrijfsnaam", - "receipt_show_description" => "Laat beschrijving zien", - "receipt_show_serialnumber" => "Toon Serienummer", - "receipt_show_tax_ind" => "Toon Tax Indicator", - "receipt_show_taxes" => "Toon VAT", - "receipt_show_total_discount" => "Toon Totale Korting", - "receipt_template" => "Bon sjabloon", - "receiving_calculate_average_price" => "Bereken gem. Prijs (Ontvangend)", - "recv_invoice_format" => "Formattering Order #", - "register_mode_default" => "Standaard kassa mode", - "report_an_issue" => "Rapporteer een probleem", - "return_policy_required" => "De retourvoorwaarden moeten ingevuld worden.", - "reward" => "Spaarpunten", - "reward_configuration" => "Spaarpunten configuratie", - "right" => "Rechts", - "sales_invoice_format" => "Formattering Aankoop #", - "sales_quote_format" => "Offerte formaat", - "saved_successfully" => "Configuratie werd bewaard.", - "saved_unsuccessfully" => "Configuratie kon niet worden bewaard.", - "security_issue" => "Waarschuwing voor Veiligheidslek", - "server_notice" => "Gebruik de onderstaande info voor het melden van problemen.", - "service_charge" => "", - "show_due_enable" => "", - "show_office_group" => "Toon kantoor icoon", - "statistics" => "Verstuur statistieken", - "statistics_tooltip" => "Verstuur statistieken voor ontwikkeling en verbetering van de applicatie.", - "stock_location" => "Stock locatie", - "stock_location_duplicate" => "Vul een unieke naam in.", - "stock_location_invalid_chars" => "Stock locatie kan geen '_' bevatten.", - "stock_location_required" => "Naam van de stock locatie is een verplicht veld.", - "suggestions_fifth_column" => "", - "suggestions_first_column" => "Kolom 1", - "suggestions_fourth_column" => "", - "suggestions_layout" => "Zoek Suggesties Layout", - "suggestions_second_column" => "Kolom 2", - "suggestions_third_column" => "Kolom 3", - "system_conf" => "Instelling en Conf", - "system_info" => "System Info", - "table" => "Tafel", - "table_configuration" => "Tafel Configuratie", - "takings_printer" => "Ontvangst Printer", - "tax" => "VAT", - "tax_category" => "VAT Categorie", - "tax_category_duplicate" => "De ingevulde VAT categorie bestaat al.", - "tax_category_invalid_chars" => "De ingevulde VAT categorie is ongeldig.", - "tax_category_required" => "De VAT categorie is verplicht.", - "tax_category_used" => "De VAT categorie kan niet verwijderd worden omdat die in gebruik is.", - "tax_configuration" => "VAT Configuratie", - "tax_decimals" => "Belasting Decimalen", - "tax_id" => "Tax id", - "tax_included" => "VAT Inbegrepen", - "theme" => "Theme", - "theme_preview" => "Voorbeeld Thema:", - "thousands_separator" => "duizenden Separator", - "timezone" => "Tijdzone", - "timezone_error" => "OSPOS tijdzone is verschillend van uw lokale tijdzone.", - "top" => "Top", - "use_destination_based_tax" => "Activeer 'Destination Based Tax'", - "user_timezone" => "Lokale tijdzone:", - "website" => "Website", - "wholesale_markup" => "", - "work_order_enable" => "Werk Order Ondersteuning", - "work_order_format" => "Werk Order Formaat", + "address" => "Adres", + "address_required" => "Het adres van het bedrijf moet ingevuld worden.", + "all_set" => "All permissies zijn correct ingesteld!", + "allow_duplicate_barcodes" => "Sta gedupliceerde barcodes toe", + "apostrophe" => "apostrof", + "backup_button" => "Backup", + "backup_database" => "Backup Database", + "barcode" => "Streepjescode", + "barcode_company" => "Bedrijfsnaam", + "barcode_configuration" => "Barcode Configuratie", + "barcode_content" => "Inhoud Barcode", + "barcode_first_row" => "Rij 1", + "barcode_font" => "Lettertype", + "barcode_formats" => "Barcode Formaat", + "barcode_generate_if_empty" => "Genereer indien leeg.", + "barcode_height" => "Hoogte (px)", + "barcode_id" => "Product id/naam", + "barcode_info" => "Barcode instellingen", + "barcode_layout" => "Streepjescode-indeling", + "barcode_name" => "Productnaam", + "barcode_number" => "UPC/EAN/ISBN", + "barcode_number_in_row" => "Aantal per rij", + "barcode_page_cellspacing" => "Toon cellspatiëring.", + "barcode_page_width" => "Toon paginabreedte", + "barcode_price" => "Prijs", + "barcode_second_row" => "Rij 2", + "barcode_third_row" => "Rij 3", + "barcode_tooltip" => "Waarschuwing: Deze functie kan ertoe leiden dat er dubbele artikels worden geïmporteerd of aangemaakt. Niet gebruiken als u geen dubbele streepjescodes wilt.", + "barcode_type" => "Type Barcode", + "barcode_width" => "Breedte (px)", + "bottom" => "Bodem", + "cash_button" => "", + "cash_button_1" => "", + "cash_button_2" => "", + "cash_button_3" => "", + "cash_button_4" => "", + "cash_button_5" => "", + "cash_button_6" => "", + "cash_decimals" => "Cash precisie", + "cash_decimals_tooltip" => "Als cash en currency precies niet hetzelfde zijn dan zal er geena afronding gebeuren.", + "cash_rounding" => "Cash Afronding", + "category_dropdown" => "Toon categorie als dropdown", + "center" => "Midden", + "change_apperance_tooltip" => "", + "comma" => "komma", + "company" => "Bedrijfsnaam", + "company_avatar" => "", + "company_change_image" => "Selecteer Afbeelding", + "company_logo" => "Logo", + "company_remove_image" => "Verwijder Afbeelding", + "company_required" => "De bedrijfsnaam moet ingevuld worden", + "company_select_image" => "Selecteer Afbeelding", + "company_website_url" => "De website van het bedrijf is geen geldige URL (http://...).", + "country_codes" => "Land Codes", + "country_codes_tooltip" => "Komma's gescheiden lijst van landencodes voor het op naam opzoeken van het adres opzoeken.", + "currency_code" => "Munteenheid", + "currency_decimals" => "Valuta decimalen", + "currency_symbol" => "Valuta", + "current_employee_only" => "", + "customer_reward" => "Punten", + "customer_reward_duplicate" => "Spaarpunten moeten uniek zijn.", + "customer_reward_enable" => "Activeer Spaarpunten", + "customer_reward_invalid_chars" => "Spaarpunten kunnen geen '_' bevatten", + "customer_reward_required" => "Spaarpunten is een verplicht veld", + "customer_sales_tax_support" => "Klant fiscale support", + "date_or_time_format" => "Datum en tijd filter", + "datetimeformat" => "Datum en tijd formaat", + "decimal_point" => "Decimale punt", + "default_barcode_font_size_number" => "De barcode font grootte moet een getal zijn.", + "default_barcode_font_size_required" => "De barcode font grootte is een verplicht veld.", + "default_barcode_height_number" => "De barcode grootte moet een getal zijn.", + "default_barcode_height_required" => "De barcode grootte is een verplicht veld.", + "default_barcode_num_in_row_number" => "De barcode nummering moet een getal zijn.", + "default_barcode_num_in_row_required" => "De barcode nummering is een verplicht veld.", + "default_barcode_page_cellspacing_number" => "De barcode cellspatiëring moet een getal zijn.", + "default_barcode_page_cellspacing_required" => "De barcode pagina spatiëring is een verplicht veld.", + "default_barcode_page_width_number" => "Standaardbreedte van de streepjescodepagina moet een getal zijn.", + "default_barcode_page_width_required" => "De barcode breedte is een verplicht veld.", + "default_barcode_width_number" => "De breedte van de barcode moet een getal zijn.", + "default_barcode_width_required" => "De breedte van de barcode is een verplicht veld.", + "default_item_columns" => "Standaard Zichtbaarheid Kolommen", + "default_origin_tax_code" => "Standaard VAT code", + "default_receivings_discount" => "Standaard Korting Orders", + "default_receivings_discount_number" => "De korting moet een getal zijn.", + "default_receivings_discount_required" => "De korting is een verplicht veld.", + "default_sales_discount" => "Standaard Korting Verkoop", + "default_sales_discount_number" => "De korting moet een getal zijn.", + "default_sales_discount_required" => "De korting is een verplicht veld.", + "default_tax_category" => "Standaard Tax Categorie", + "default_tax_code" => "Standaard Tax Code", + "default_tax_jurisdiction" => "Standaard Tax District", + "default_tax_name_number" => "Standaard VAT naam moet een string zijn.", + "default_tax_name_required" => "De naam van de VAT moet ingevuld worden.", + "default_tax_rate" => "Standaard VAT %", + "default_tax_rate_1" => "VAT 1 %", + "default_tax_rate_2" => "VAT 2 %", + "default_tax_rate_3" => "", + "default_tax_rate_number" => "Het percentage VAT moet een nummer zijn.", + "default_tax_rate_required" => "Het percentage VAT is een verplicht veld.", + "derive_sale_quantity" => "Laat Verkoop Afgeleide Hoeveelheid toe", + "derive_sale_quantity_tooltip" => "Indien aangevinkt zal er een nieuw item type voorzien worden om items te ordenen", + "dinner_table" => "Tafel", + "dinner_table_duplicate" => "Tafel moet uniek zijn.", + "dinner_table_enable" => "Activeer Restomode", + "dinner_table_invalid_chars" => "Tafel Naam kan geen '_' bevatten.", + "dinner_table_required" => "Tafel is een verplicht veld.", + "dot" => "punt", + "email" => "Email", + "email_configuration" => "Email Configuration", + "email_mailpath" => "Pad naar Sendmail", + "email_protocol" => "Protocol", + "email_receipt_check_behaviour" => "Email Ticket", + "email_receipt_check_behaviour_always" => "Altijd aan", + "email_receipt_check_behaviour_last" => "Onthoud de laatste selectie", + "email_receipt_check_behaviour_never" => "Altijd uitgetikt", + "email_smtp_crypto" => "SMTP Encryptie", + "email_smtp_host" => "SMTP Server", + "email_smtp_pass" => "SMTP Wachtwoord", + "email_smtp_port" => "SMTP Poort", + "email_smtp_timeout" => "SMTP Time-out (s)", + "email_smtp_user" => "SMTP Gebruikersnaam", + "enable_avatar" => "", + "enable_avatar_tooltip" => "", + "enable_dropdown_tooltip" => "", + "enable_new_look" => "", + "enable_right_bar" => "", + "enable_right_bar_tooltip" => "", + "enforce_privacy" => "Vereis privacy", + "enforce_privacy_tooltip" => "Bescherm klanten hun privacy door data obfuscatie toe te passen in geval van verwijdering", + "fax" => "Fax", + "file_perm" => "Er zijn problemen met de bestandsrechten, herstel ze en herlaad deze pagina.", + "financial_year" => "Start boekjaar", + "financial_year_apr" => "Eerste april", + "financial_year_aug" => "Eerste augustus", + "financial_year_dec" => "Eerste december", + "financial_year_feb" => "Eerste februari", + "financial_year_jan" => "Eerste januari", + "financial_year_jul" => "Eerste juli", + "financial_year_jun" => "Eerste juni", + "financial_year_mar" => "Eerste maart", + "financial_year_may" => "Eerste mei", + "financial_year_nov" => "Eerste november", + "financial_year_oct" => "Eerste oktober", + "financial_year_sep" => "Eerste september", + "floating_labels" => "Variabele Etiketten", + "gcaptcha_enable" => "Login Pagina reCAPTCHA", + "gcaptcha_secret_key" => "reCAPTCHA sleutel", + "gcaptcha_secret_key_required" => "reCAPTCHA sleutel is een verplicht veld", + "gcaptcha_site_key" => "reCAPTCHA site sleutel", + "gcaptcha_site_key_required" => "reCAPTCHA site sleutel is een verplicht veld", + "gcaptcha_tooltip" => "Bescherm de login pagina met Google reCAPTCHA, klik op het icoon voor een API key pair.", + "general" => "Algemene", + "general_configuration" => "Algemene Instellingen", + "giftcard_number" => "Cadeaubon Nummer", + "giftcard_random" => "Genereer Willekeurig", + "giftcard_series" => "Genereer in volgorde", + "image_allowed_file_types" => "Toegelaten bestandstypes", + "image_max_height_tooltip" => "Maximum toegelaten hoogte voor afbeeldingen in pixels (px).", + "image_max_size_tooltip" => "Maximum toegelaten bestandsgrootte voor afbeeldingen in kilobytes (kb).", + "image_max_width_tooltip" => "Maximum toegelaten breedte voor afbeeldingen in pixels (px).", + "image_restrictions" => "Upload Instellingen voor Afbeeldingen", + "include_hsn" => "Ondersteuning voor HSN Codes", + "info" => "Instellingen", + "info_configuration" => "Instellingen", + "input_groups" => "Invoer Groepen", + "integrations" => "Integraties", + "integrations_configuration" => "Integraties", + "invoice" => "Factuur", + "invoice_configuration" => "Print Instellingen", + "invoice_default_comments" => "Factuur Mededeling", + "invoice_email_message" => "Factuur Email Sjabloon", + "invoice_enable" => "Factureren inschakelen", + "invoice_printer" => "Factuur Printer", + "invoice_type" => "Factuur Type", + "is_readable" => "kan gelezen worden, maar de permissies zijn niet correct. Zet deze op 640 of 660 en vernieuw.", + "is_writable" => "kan beschreven worden, maar de permissies zijn niet correct. Zet deze op 750 en vernieuw.", + "item_markup" => "", + "jsprintsetup_required" => "Opgelet! De uitgeschakelde functionaliteit werkt enkel met de jsPrintSetup addon in Firefox. Toch opslaan?", + "language" => "Taal", + "last_used_invoice_number" => "Laatst gebruikte factuurnummer", + "last_used_quote_number" => "Laatst gebruikte offertenummer", + "last_used_work_order_number" => "Laatst gebruikte werkordernummer", + "left" => "Links", + "license" => "Licentie", + "license_configuration" => "Licentie Verklaring", + "line_sequence" => "Lijn nummer", + "lines_per_page" => "Lijnen Per Pagina", + "lines_per_page_number" => "Regels per pagina moet een nummer zijn.", + "lines_per_page_required" => "Regels per pagina is een verplicht veld.", + "locale" => "Locatie", + "locale_configuration" => "Locatie Configuratie", + "locale_info" => "Locatie Configuratie Informatie", + "location" => "Voorraad", + "location_configuration" => "Stock Locaties", + "location_info" => "Instellingen Locatie", + "login_form" => "Inlogformulier Stijl", + "logout" => "Wilt u een backup maken alvorens uit te loggen? Klik [OK] voor backup of [Annuleer] om uit te loggen.", + "mailchimp" => "MailChimp", + "mailchimp_api_key" => "MailChimp API Sleutel", + "mailchimp_configuration" => "MailChimp Configuratie", + "mailchimp_key_successfully" => "API sleutel is geldig.", + "mailchimp_key_unsuccessfully" => "API sleutel is ongeldig.", + "mailchimp_lists" => "MailChimp Lijst(en)", + "mailchimp_tooltip" => "Klik op het icoon voor een API sleutel.", + "message" => "Message", + "message_configuration" => "Message Configuration", + "msg_msg" => "Opgeslagen SMS-bericht", + "msg_msg_placeholder" => "Wilt u gebruik maken van een SMS-sjabloon? sla hier uw bericht op. Laat ander het vak leeg.", + "msg_pwd" => "SMS-API Password", + "msg_pwd_required" => "SMS-API Wachtwoord is een verplicht veld", + "msg_src" => "SMS-API Verzender ID", + "msg_src_required" => "SMS-API Verzender ID is een verplicht veld", + "msg_uid" => "SMS-API Gebruikersnaam", + "msg_uid_required" => "SMS-API Gebruikersnaam is een verplicht veld", + "multi_pack_enabled" => "Multipack Ingeschakeld", + "no_risk" => "Geen veiligheids-/kwetsbaarheidsrisico's.", + "none" => "none", + "notify_alignment" => "Notificatie Pop-up positie", + "number_format" => "Number Format", + "number_locale" => "Localisation", + "number_locale_invalid" => "De ingevoerde locatie is ongeldig. Controleer de link in de tooltip om een geldige waarde te vinden.", + "number_locale_required" => "Nummer formaat is een verplicht veld.", + "number_locale_tooltip" => "Vind een geldig formaat via deze link.", + "os_timezone" => "OSPOS Tijdzone:", + "ospos_info" => "OSPOS Installatiegegevens", + "payment_options_order" => "Betaal opties volgorde", + "perm_risk" => "Verkeerd ingestelde permissies vormen een beveiligingsrisico.", + "phone" => "Telefoon", + "phone_required" => "De telefoonnummer van het bedrijf is een verplicht veld.", + "print_bottom_margin" => "Marge Beneden", + "print_bottom_margin_number" => "De ondermarge moet een getal zijn.", + "print_bottom_margin_required" => "De ondermarge is een verplicht veld.", + "print_delay_autoreturn" => "Automatische retour voor vertraagde verkoop", + "print_delay_autoreturn_number" => "Automatische retour voor vertraagde verkoop is een verplicht veld.", + "print_delay_autoreturn_required" => "Automatische retour voor vertraagde verkoop moet een cijfer zijn.", + "print_footer" => "Print browser voettekst", + "print_header" => "Print browser koptekst", + "print_left_margin" => "Marge Links", + "print_left_margin_number" => "De linkermarge moet een getal zijn.", + "print_left_margin_required" => "De linkermarge is een verplicht veld.", + "print_receipt_check_behaviour" => "Print Ticket selectievakje", + "print_receipt_check_behaviour_always" => "Altijd aangevinkt", + "print_receipt_check_behaviour_last" => "Onthoud laatste selectie", + "print_receipt_check_behaviour_never" => "Altijd uitgetikt", + "print_right_margin" => "Marge Rechts", + "print_right_margin_number" => "De rechtermarge moet een getal zijn.", + "print_right_margin_required" => "De rechtermarge is een verplicht veld.", + "print_silently" => "Toon Printvenster", + "print_top_margin" => "Marge Boven", + "print_top_margin_number" => "De bovenmarge moet een getal zijn.", + "print_top_margin_required" => "De bovenmarge is een verplicht veld.", + "quantity_decimals" => "Kwantiteit Decimalen", + "quick_cash_enable" => "", + "quote_default_comments" => "Standaard Offerte Commentaar", + "receipt" => "Ontvangst", + "receipt_category" => "", + "receipt_configuration" => "Print Instellingen", + "receipt_default" => "Default", + "receipt_font_size" => "Font grootte", + "receipt_font_size_number" => "Font grootte moet een nummer zijn.", + "receipt_font_size_required" => "Font grootte is een verplicht veld.", + "receipt_info" => "Ticket Instellingen", + "receipt_printer" => "Bon Printer", + "receipt_short" => "Kort", + "receipt_show_company_name" => "Toon bedrijfsnaam", + "receipt_show_description" => "Laat beschrijving zien", + "receipt_show_serialnumber" => "Toon Serienummer", + "receipt_show_tax_ind" => "Toon Tax Indicator", + "receipt_show_taxes" => "Toon VAT", + "receipt_show_total_discount" => "Toon Totale Korting", + "receipt_template" => "Bon sjabloon", + "receiving_calculate_average_price" => "Bereken gem. Prijs (Ontvangend)", + "recv_invoice_format" => "Formattering Order #", + "register_mode_default" => "Standaard kassa mode", + "report_an_issue" => "Rapporteer een probleem", + "return_policy_required" => "De retourvoorwaarden moeten ingevuld worden.", + "reward" => "Spaarpunten", + "reward_configuration" => "Spaarpunten configuratie", + "right" => "Rechts", + "sales_invoice_format" => "Formattering Aankoop #", + "sales_quote_format" => "Offerte formaat", + "saved_successfully" => "Configuratie werd bewaard.", + "saved_unsuccessfully" => "Configuratie kon niet worden bewaard.", + "security_issue" => "Waarschuwing voor Veiligheidslek", + "server_notice" => "Gebruik de onderstaande info voor het melden van problemen.", + "service_charge" => "", + "show_due_enable" => "", + "show_office_group" => "Toon kantoor icoon", + "statistics" => "Verstuur statistieken", + "statistics_tooltip" => "Verstuur statistieken voor ontwikkeling en verbetering van de applicatie.", + "stock_location" => "Stock locatie", + "stock_location_duplicate" => "Vul een unieke naam in.", + "stock_location_invalid_chars" => "Stock locatie kan geen '_' bevatten.", + "stock_location_required" => "Naam van de stock locatie is een verplicht veld.", + "suggestions_fifth_column" => "", + "suggestions_first_column" => "Kolom 1", + "suggestions_fourth_column" => "", + "suggestions_layout" => "Zoek Suggesties Layout", + "suggestions_second_column" => "Kolom 2", + "suggestions_third_column" => "Kolom 3", + "system_conf" => "Instelling en Conf", + "system_info" => "System Info", + "table" => "Tafel", + "table_configuration" => "Tafel Configuratie", + "takings_printer" => "Ontvangst Printer", + "tax" => "VAT", + "tax_category" => "VAT Categorie", + "tax_category_duplicate" => "De ingevulde VAT categorie bestaat al.", + "tax_category_invalid_chars" => "De ingevulde VAT categorie is ongeldig.", + "tax_category_required" => "De VAT categorie is verplicht.", + "tax_category_used" => "De VAT categorie kan niet verwijderd worden omdat die in gebruik is.", + "tax_configuration" => "VAT Configuratie", + "tax_decimals" => "Belasting Decimalen", + "tax_id" => "Tax id", + "tax_included" => "VAT Inbegrepen", + "theme" => "Theme", + "theme_preview" => "Voorbeeld Thema:", + "thousands_separator" => "duizenden Separator", + "timezone" => "Tijdzone", + "timezone_error" => "OSPOS tijdzone is verschillend van uw lokale tijdzone.", + "top" => "Top", + "use_destination_based_tax" => "Activeer 'Destination Based Tax'", + "user_timezone" => "Lokale tijdzone:", + "website" => "Website", + "wholesale_markup" => "", + "work_order_enable" => "Werk Order Ondersteuning", + "work_order_format" => "Werk Order Formaat", ]; diff --git a/app/Language/nl-BE/Customers.php b/app/Language/nl-BE/Customers.php index 5bb44cd6f..00d754299 100644 --- a/app/Language/nl-BE/Customers.php +++ b/app/Language/nl-BE/Customers.php @@ -1,56 +1,56 @@ "Btwnummer", - "account_number_duplicate" => "Deze VAT nummer is reeds aanwezig in de database.", - "available_points" => "Beschikbare Punten", - "available_points_value" => "", - "average" => "Uitgegeven gemiddelde", - "avg_discount" => "Gemiddelde korting", - "basic_information" => "Informatie", - "cannot_be_deleted" => "De geselecteerde klanten konden niet worden verwijderd. Eén of meerdere klanten hebben verkoopsgegevens in de database zitten.", - "company_name" => "Bedrijfsnaam", - "confirm_delete" => "Bent u zeker dat u de geselecteerde klanten wil verwijderen?", - "confirm_restore" => "Bent u zeker dat u de geselecteerde klant(en) wil herstellen?", - "consent" => "Toestemming gebruilker", - "consent_required" => "Toestemming gebruiker is een verplicht veld.", - "csv_import_failed" => "CSV import mislukt", - "csv_import_nodata_wrongformat" => "Je geüploade bestand heeft geen gegevens of een verkeerd formaat.", - "csv_import_partially_failed" => "De meeste klanten zijn geïmporteerd. Maar sommige niet, hier is de lijst:", - "csv_import_success" => "Klanten met succes geïmporteerd.", - "customer" => "Klant", - "date" => "Datum", - "discount" => "Korting", - "discount_fixed" => "Korting (€)", - "discount_percent" => "Korting (%)", - "discount_type" => "Type Korting", - "email_duplicate" => "Emailadres is reeds aanwezig in de database.", - "employee" => "Werknemer", - "error_adding_updating" => "Fout bij het toevoegen/bewerken van een klant.", - "import_items_csv" => "Importeer klanten vanuit een CSV bestand", - "mailchimp_activity_click" => "Email klik", - "mailchimp_activity_lastopen" => "Laatst geopende email", - "mailchimp_activity_open" => "Email open", - "mailchimp_activity_total" => "Email verstuurd", - "mailchimp_activity_unopen" => "Email ongeopend", - "mailchimp_email_client" => "Email client", - "mailchimp_info" => "MailChimp", - "mailchimp_member_rating" => "Waardering", - "mailchimp_status" => "Status", - "mailchimp_vip" => "VIP", - "max" => "Max. uitgegeven", - "min" => "Min. uitgegeven", - "new" => "Nieuwe Klant", - "none_selected" => "U hebt geen klanten geselecteerd om te verwijderen.", - "one_or_multiple" => "klant(en) verwijderd", - "quantity" => "Hoeveelheid", - "stats_info" => "Statistieken", - "successful_adding" => "Klant succesvol aangemaakt", - "successful_deleted" => "Er werd(en)", - "successful_updating" => "Wijzigingen klantgegevens bewaard voor", - "tax_code" => "VAT code", - "tax_id" => "BtwNr", - "taxable" => "Belastbaar", - "total" => "Totaal", - "update" => "Bewerk Klant", - "rewards_package" => "Spaarpunten", + "account_number" => "Btwnummer", + "account_number_duplicate" => "Deze VAT nummer is reeds aanwezig in de database.", + "available_points" => "Beschikbare Punten", + "available_points_value" => "", + "average" => "Uitgegeven gemiddelde", + "avg_discount" => "Gemiddelde korting", + "basic_information" => "Informatie", + "cannot_be_deleted" => "De geselecteerde klanten konden niet worden verwijderd. Eén of meerdere klanten hebben verkoopsgegevens in de database zitten.", + "company_name" => "Bedrijfsnaam", + "confirm_delete" => "Bent u zeker dat u de geselecteerde klanten wil verwijderen?", + "confirm_restore" => "Bent u zeker dat u de geselecteerde klant(en) wil herstellen?", + "consent" => "Toestemming gebruilker", + "consent_required" => "Toestemming gebruiker is een verplicht veld.", + "csv_import_failed" => "CSV import mislukt", + "csv_import_nodata_wrongformat" => "Je geüploade bestand heeft geen gegevens of een verkeerd formaat.", + "csv_import_partially_failed" => "De meeste klanten zijn geïmporteerd. Maar sommige niet, hier is de lijst:", + "csv_import_success" => "Klanten met succes geïmporteerd.", + "customer" => "Klant", + "date" => "Datum", + "discount" => "Korting", + "discount_fixed" => "Korting (€)", + "discount_percent" => "Korting (%)", + "discount_type" => "Type Korting", + "email_duplicate" => "Emailadres is reeds aanwezig in de database.", + "employee" => "Werknemer", + "error_adding_updating" => "Fout bij het toevoegen/bewerken van een klant.", + "import_items_csv" => "Importeer klanten vanuit een CSV bestand", + "mailchimp_activity_click" => "Email klik", + "mailchimp_activity_lastopen" => "Laatst geopende email", + "mailchimp_activity_open" => "Email open", + "mailchimp_activity_total" => "Email verstuurd", + "mailchimp_activity_unopen" => "Email ongeopend", + "mailchimp_email_client" => "Email client", + "mailchimp_info" => "MailChimp", + "mailchimp_member_rating" => "Waardering", + "mailchimp_status" => "Status", + "mailchimp_vip" => "VIP", + "max" => "Max. uitgegeven", + "min" => "Min. uitgegeven", + "new" => "Nieuwe Klant", + "none_selected" => "U hebt geen klanten geselecteerd om te verwijderen.", + "one_or_multiple" => "klant(en) verwijderd", + "quantity" => "Hoeveelheid", + "stats_info" => "Statistieken", + "successful_adding" => "Klant succesvol aangemaakt", + "successful_deleted" => "Er werd(en)", + "successful_updating" => "Wijzigingen klantgegevens bewaard voor", + "tax_code" => "VAT code", + "tax_id" => "BtwNr", + "taxable" => "Belastbaar", + "total" => "Totaal", + "update" => "Bewerk Klant", + "rewards_package" => "Spaarpunten", ]; diff --git a/app/Language/nl-BE/Datepicker.php b/app/Language/nl-BE/Datepicker.php index e10e1dca0..0bbf1d1cc 100644 --- a/app/Language/nl-BE/Datepicker.php +++ b/app/Language/nl-BE/Datepicker.php @@ -1,23 +1,23 @@ "Alle", - "apply" => "Toepassen", - "cancel" => "Annuleren", - "custom" => "Aangepaste", - "from" => "Van", - "last_30" => "Vorige 30 Dagen", - "last_7" => "Vorige 7 Dagen", - "last_financial_year" => "Vorige Boekjaar", - "last_month" => "Vorige Maand", - "last_year" => "Vorig Jaar", - "same_month_last_year" => "Dezelfde maand vorig jaar", - "same_month_to_same_day_last_year" => "Dezelfde maand op dezelfde dag vorig jaar", - "this_financial_year" => "Huidig Boekjaar", - "this_month" => "Deze Maand", - "this_year" => "Dit Jaar", - "to" => "To", - "today" => "Vandaag", - "today_last_year" => "Vandaag vorig jaar", - "weekstart" => "0", - "yesterday" => "Gisteren", + "all_time" => "Alle", + "apply" => "Toepassen", + "cancel" => "Annuleren", + "custom" => "Aangepaste", + "from" => "Van", + "last_30" => "Vorige 30 Dagen", + "last_7" => "Vorige 7 Dagen", + "last_financial_year" => "Vorige Boekjaar", + "last_month" => "Vorige Maand", + "last_year" => "Vorig Jaar", + "same_month_last_year" => "Dezelfde maand vorig jaar", + "same_month_to_same_day_last_year" => "Dezelfde maand op dezelfde dag vorig jaar", + "this_financial_year" => "Huidig Boekjaar", + "this_month" => "Deze Maand", + "this_year" => "Dit Jaar", + "to" => "To", + "today" => "Vandaag", + "today_last_year" => "Vandaag vorig jaar", + "weekstart" => "0", + "yesterday" => "Gisteren", ]; diff --git a/app/Language/nl-BE/Employees.php b/app/Language/nl-BE/Employees.php index e86ed5fa8..b96113028 100644 --- a/app/Language/nl-BE/Employees.php +++ b/app/Language/nl-BE/Employees.php @@ -1,44 +1,44 @@ "", - "basic_information" => "Informatie", - "cannot_be_deleted" => "Kon de geselecteerde gebruilker(s) niet verwijderen, één of meerdere die u probeert te verwijderen hebben aankopen verwerkt.", - "change_employee" => "", - "change_password" => "Wijzig Paswoord", - "clerk" => "", - "commission" => "", - "confirm_delete" => "Bent u zeker dat u de geselecteerde werknemers wil verwijderen?", - "confirm_restore" => "Bent u zeker dat u de geselecteerde werknemers wil herstellen?", - "current_password" => "Huidig Paswoord", - "current_password_invalid" => "Huidig paswoord is ongeldig.", - "employee" => "Werknemer", - "error_adding_updating" => "Fout bij het toevoegen/aanpassen medewerker.", - "error_deleting_demo_admin" => "Je kan de demo gebruilker niet verwijderen.", - "error_updating_demo_admin" => "Jij kan de demo gebruiker niet veranderen.", - "language" => "Taal", - "login_info" => "Login", - "manager" => "", - "new" => "N. Werknemer", - "none_selected" => "U hebt geen werknemers geselecteerd.", - "one_or_multiple" => "werknemer(s) verwijderd", - "password" => "Paswoord", - "password_minlength" => "Paswoord moet minstens 8 characters lang zijn.", - "password_must_match" => "Paswoorden komen niet overeen.", - "password_not_must_match" => "Het huidige en het nieuwe paswoord moeten verschillend zijn.", - "password_required" => "Paswoord moet ingevuld worden.", - "permission_desc" => "Vink de selectievakjes hieronder aan om toegang te verlenen tot de modules.", - "permission_info" => "Rechten", - "repeat_password" => "Herhaal Paswoord", - "subpermission_required" => "Selecteer minstens één permissie voor elke module.", - "successful_adding" => "Je hebt met succes een medewerker toegevoegd.", - "successful_change_password" => "Paswoord wijziging geslaagd.", - "successful_deleted" => "Er werd(en)", - "successful_updating" => "Je hebt met succes de medewerker gewijzigd", - "system_language" => "Systeem taal", - "unsuccessful_change_password" => "Paswoord wijziging gefaald.", - "update" => "Update Werknemer", - "username" => "Gebruikersnaam", - "username_duplicate" => "Werknemer gebruikersnaam is al in gebruik. Gelieve een andere te kiezen.", - "username_minlength" => "Gebruikersnaam moet minstens 5 characters lang zijn.", - "username_required" => "Gebruikersnaam moet ingevuld worden.", + "administrator" => "", + "basic_information" => "Informatie", + "cannot_be_deleted" => "Kon de geselecteerde gebruilker(s) niet verwijderen, één of meerdere die u probeert te verwijderen hebben aankopen verwerkt.", + "change_employee" => "", + "change_password" => "Wijzig Paswoord", + "clerk" => "", + "commission" => "", + "confirm_delete" => "Bent u zeker dat u de geselecteerde werknemers wil verwijderen?", + "confirm_restore" => "Bent u zeker dat u de geselecteerde werknemers wil herstellen?", + "current_password" => "Huidig Paswoord", + "current_password_invalid" => "Huidig paswoord is ongeldig.", + "employee" => "Werknemer", + "error_adding_updating" => "Fout bij het toevoegen/aanpassen medewerker.", + "error_deleting_demo_admin" => "Je kan de demo gebruilker niet verwijderen.", + "error_updating_demo_admin" => "Jij kan de demo gebruiker niet veranderen.", + "language" => "Taal", + "login_info" => "Login", + "manager" => "", + "new" => "N. Werknemer", + "none_selected" => "U hebt geen werknemers geselecteerd.", + "one_or_multiple" => "werknemer(s) verwijderd", + "password" => "Paswoord", + "password_minlength" => "Paswoord moet minstens 8 characters lang zijn.", + "password_must_match" => "Paswoorden komen niet overeen.", + "password_not_must_match" => "Het huidige en het nieuwe paswoord moeten verschillend zijn.", + "password_required" => "Paswoord moet ingevuld worden.", + "permission_desc" => "Vink de selectievakjes hieronder aan om toegang te verlenen tot de modules.", + "permission_info" => "Rechten", + "repeat_password" => "Herhaal Paswoord", + "subpermission_required" => "Selecteer minstens één permissie voor elke module.", + "successful_adding" => "Je hebt met succes een medewerker toegevoegd.", + "successful_change_password" => "Paswoord wijziging geslaagd.", + "successful_deleted" => "Er werd(en)", + "successful_updating" => "Je hebt met succes de medewerker gewijzigd", + "system_language" => "Systeem taal", + "unsuccessful_change_password" => "Paswoord wijziging gefaald.", + "update" => "Update Werknemer", + "username" => "Gebruikersnaam", + "username_duplicate" => "Werknemer gebruikersnaam is al in gebruik. Gelieve een andere te kiezen.", + "username_minlength" => "Gebruikersnaam moet minstens 5 characters lang zijn.", + "username_required" => "Gebruikersnaam moet ingevuld worden.", ]; diff --git a/app/Language/nl-BE/Enum.php b/app/Language/nl-BE/Enum.php index d7ea6b473..bb32d0e26 100644 --- a/app/Language/nl-BE/Enum.php +++ b/app/Language/nl-BE/Enum.php @@ -1,10 +1,10 @@ "Half Omlaag", - "half_even" => "Half Even", - "half_five" => "Half Vijf", - "half_odd" => "Half Oneven", - "half_up" => "Half Boven", - "round_down" => "Naar Beneden", - "round_up" => "Naar Boven", + "half_down" => "Half Omlaag", + "half_even" => "Half Even", + "half_five" => "Half Vijf", + "half_odd" => "Half Oneven", + "half_up" => "Half Boven", + "round_down" => "Naar Beneden", + "round_up" => "Naar Boven", ]; diff --git a/app/Language/nl-BE/Error.php b/app/Language/nl-BE/Error.php index e31d9e433..337a5a4a9 100644 --- a/app/Language/nl-BE/Error.php +++ b/app/Language/nl-BE/Error.php @@ -1,5 +1,5 @@ "U hebt geen toegang tot de module genaamd", - "unknown" => "onbekend", + "no_permission_module" => "U hebt geen toegang tot de module genaamd", + "unknown" => "onbekend", ]; diff --git a/app/Language/nl-BE/Expenses.php b/app/Language/nl-BE/Expenses.php index c8d359e2d..aaaf054ae 100644 --- a/app/Language/nl-BE/Expenses.php +++ b/app/Language/nl-BE/Expenses.php @@ -1,50 +1,50 @@ "Voeg kosten toe", - "amount" => "Bedrag", - "amount_number" => "Hoeveelheid moet een getal zijn", - "amount_required" => "Kost bedrag verplicht", - "by_category" => "Categorie", - "cannot_be_deleted" => "Kan Categorie Kosten niet verwijderen", - "cash" => "Contant", - "cash_filter" => "Contant", - "categories_name" => "Categorie", - "category_required" => "Categorie is een verplicht veld", - "check" => "Cheque", - "check_filter" => "Cheque", - "confirm_delete" => "Weet u zeker dat u de geselecteerde uitgave(n) wilt verwijderen?", - "confirm_restore" => "Weet u zeker dat u de geselecteerde uitgave(n) wilt herstellen?", - "credit" => "Creditcard", - "credit_filter" => "Creditcard", - "date" => "Datum", - "date_number" => "Datum moet een nummer zijn", - "date_required" => "Datum is een verplicht veld", - "debit" => "Debitcard", - "debit_filter" => "Debitcard", - "description" => "Omschrijving", - "due" => "Tegoed", - "due_filter" => "Tegoed", - "employee" => "Aangemaakt door", - "error_adding_updating" => "Fout bij het toevoegen of updaten van een onkost", - "expense_id" => "Id", - "expenses_employee" => "Werknemer", - "info" => "Onkostennota", - "ip_address" => "", - "is_deleted" => "Verwijderd", - "name_required" => "Onkostennota verplicht", - "new" => "Nieuwe onkost", - "new_supplier" => "", - "no_expenses_to_display" => "Er zijn geen onkosten weer te geven", - "none_selected" => "U heb geen onkosten geselecteerd", - "one_or_multiple" => "Onkost(en)", - "payment" => "Betaalwijze", - "start_typing_supplier_name" => "Begin de naam van de Leverancier te Typen...", - "successful_adding" => "Onkosten toevoegen geslaagd", - "successful_deleted" => "Onkosten verwijderen geslaagd", - "successful_updating" => "Onkosten updaten geslaagd", - "supplier_name" => "Bevoorrader", - "supplier_tax_code" => "VAT Code", - "tax_amount" => "VAT", - "tax_amount_number" => "", - "update" => "Bewaar Onkosten", + "add_item" => "Voeg kosten toe", + "amount" => "Bedrag", + "amount_number" => "Hoeveelheid moet een getal zijn", + "amount_required" => "Kost bedrag verplicht", + "by_category" => "Categorie", + "cannot_be_deleted" => "Kan Categorie Kosten niet verwijderen", + "cash" => "Contant", + "cash_filter" => "Contant", + "categories_name" => "Categorie", + "category_required" => "Categorie is een verplicht veld", + "check" => "Cheque", + "check_filter" => "Cheque", + "confirm_delete" => "Weet u zeker dat u de geselecteerde uitgave(n) wilt verwijderen?", + "confirm_restore" => "Weet u zeker dat u de geselecteerde uitgave(n) wilt herstellen?", + "credit" => "Creditcard", + "credit_filter" => "Creditcard", + "date" => "Datum", + "date_number" => "Datum moet een nummer zijn", + "date_required" => "Datum is een verplicht veld", + "debit" => "Debitcard", + "debit_filter" => "Debitcard", + "description" => "Omschrijving", + "due" => "Tegoed", + "due_filter" => "Tegoed", + "employee" => "Aangemaakt door", + "error_adding_updating" => "Fout bij het toevoegen of updaten van een onkost", + "expense_id" => "Id", + "expenses_employee" => "Werknemer", + "info" => "Onkostennota", + "ip_address" => "", + "is_deleted" => "Verwijderd", + "name_required" => "Onkostennota verplicht", + "new" => "Nieuwe onkost", + "new_supplier" => "", + "no_expenses_to_display" => "Er zijn geen onkosten weer te geven", + "none_selected" => "U heb geen onkosten geselecteerd", + "one_or_multiple" => "Onkost(en)", + "payment" => "Betaalwijze", + "start_typing_supplier_name" => "Begin de naam van de Leverancier te Typen...", + "successful_adding" => "Onkosten toevoegen geslaagd", + "successful_deleted" => "Onkosten verwijderen geslaagd", + "successful_updating" => "Onkosten updaten geslaagd", + "supplier_name" => "Bevoorrader", + "supplier_tax_code" => "VAT Code", + "tax_amount" => "VAT", + "tax_amount_number" => "", + "update" => "Bewaar Onkosten", ]; diff --git a/app/Language/nl-BE/Expenses_categories.php b/app/Language/nl-BE/Expenses_categories.php index 353f811bc..0a1d55edc 100644 --- a/app/Language/nl-BE/Expenses_categories.php +++ b/app/Language/nl-BE/Expenses_categories.php @@ -1,22 +1,22 @@ "De naam van dit veld is verplicht", - "add_item" => "Voeg onkostencategorie toe", - "cannot_be_deleted" => "Kan de onkostencategorie niet verwijderen", - "category_id" => "Id", - "confirm_delete" => "Bent u zeker dat u de geselecteerde onkostencategorie wil verwijderen?", - "confirm_restore" => "Bent u zeker dat u de geselecteerde onkostencategorie wil herstellen?", - "description" => "Categorie Omschrijving", - "error_adding_updating" => "Fout bij het toevoegen of wijzigen van een onkostencategorie", - "info" => "Onkostencategorie", - "name" => "Naam", - "new" => "Nieuwe Onkostencategorie", - "no_expenses_categories_to_display" => "Geen onkostencategoriën om weer te geven", - "none_selected" => "U hebt geen onkostencategorie geselecteerd", - "one_or_multiple" => "Onkostencategori(ën)", - "quantity" => "Hoeveelheid", - "successful_adding" => "Onkostencategorie toevoegen geslaagd", - "successful_deleted" => "Onkostencategorie verwijderen is geslaagd", - "successful_updating" => "Onkostencategorie bijwerken voltooid", - "update" => "Onkostencategorie Bijwerken", + "category_name_required" => "De naam van dit veld is verplicht", + "add_item" => "Voeg onkostencategorie toe", + "cannot_be_deleted" => "Kan de onkostencategorie niet verwijderen", + "category_id" => "Id", + "confirm_delete" => "Bent u zeker dat u de geselecteerde onkostencategorie wil verwijderen?", + "confirm_restore" => "Bent u zeker dat u de geselecteerde onkostencategorie wil herstellen?", + "description" => "Categorie Omschrijving", + "error_adding_updating" => "Fout bij het toevoegen of wijzigen van een onkostencategorie", + "info" => "Onkostencategorie", + "name" => "Naam", + "new" => "Nieuwe Onkostencategorie", + "no_expenses_categories_to_display" => "Geen onkostencategoriën om weer te geven", + "none_selected" => "U hebt geen onkostencategorie geselecteerd", + "one_or_multiple" => "Onkostencategori(ën)", + "quantity" => "Hoeveelheid", + "successful_adding" => "Onkostencategorie toevoegen geslaagd", + "successful_deleted" => "Onkostencategorie verwijderen is geslaagd", + "successful_updating" => "Onkostencategorie bijwerken voltooid", + "update" => "Onkostencategorie Bijwerken", ]; diff --git a/app/Language/nl-BE/Giftcards.php b/app/Language/nl-BE/Giftcards.php index d6faa836c..6352b928e 100644 --- a/app/Language/nl-BE/Giftcards.php +++ b/app/Language/nl-BE/Giftcards.php @@ -1,71 +1,71 @@ "Corrigatie hoeveelheid.", - "allow_alt_description" => "Aanpasbare omschrijving", - "bulk_edit" => "Bewerk Selectie", - "cannot_be_deleted" => "De cadeaubons konden niet worden verwijderd.", - "cannot_find_giftcard" => "Kan cadeaubon niet vinden.", - "cannot_use" => "Cadeaubon {0} kan niet gebruikt worden voor deze aankoop: ongeldige klant.", - "card_value" => "Waarde", - "category" => "Categorie", - "change_all_to_allow_alt_desc" => "Aanpasb. omschrijvingen.", - "change_all_to_not_allow_allow_desc" => "Geen aanpasb. omschrijvingen.", - "change_all_to_serialized" => "Genummerd", - "change_all_to_unserialized" => "Niet genummerd", - "confirm_bulk_edit" => "Bent u zeker dat u de geselecteerde cadeaubons wil aanpassen?", - "confirm_delete" => "Bent u zeker dat u de geselecteerde cadeaubons wil verwijderen?", - "confirm_restore" => "Bent u zeker dat u de geselecteerde cadeaubon(nen) wil herstellen?", - "cost_price" => "Aankoopprijs", - "count" => "Update Stock", - "csv_import_failed" => "CSV import mislukt.", - "current_quantity" => "Huidige hoeveelheid", - "description" => "Omschrijving", - "details_count" => "Stockgegevens", - "do_nothing" => "Doe niets", - "edit_fields_you_want_to_update" => "Bewerk de velden die u wil aanpassen voor ALLE geselecteerde cadeaubon(s).", - "edit_multiple_giftcards" => "Bewerk meerdere cadeaubons.", - "error_adding_updating" => "Fout bij het bewaren van cadeaubons.", - "error_updating_multiple" => "Fout bij het bewaren van cadeaubons.", - "generate_barcodes" => "Genereer Barcodes", - "giftcard" => "Cadeaubon", - "giftcard_number" => "Cadeaubon Nummer", - "info_provided_by" => "Info afgeleverd door", - "inventory_comments" => "Commentaar", - "is_serialized" => "Optelbaar", - "low_inventory_giftcards" => "Cadeaubons niet in stock", - "manually_editing_of_quantity" => "Manuele aanpassing hoeveelheid", - "must_select_giftcard_for_barcode" => "U moet tenminste 1 cadeaubon te selecteren om een barcode te genereren.", - "new" => "N. Cadeaubon", - "no_description_giftcards" => "Cadeaubons zonder omschrijving", - "no_giftcards_to_display" => "Er werden geen cadeaubons gevonden.", - "none" => "Geen", - "none_selected" => "U hebt geen cadeaubons geselecteerd.", - "number" => "Cadeaubon Nummer moet een getal zijn.", - "number_information" => "Cadeaubon Nummer", - "number_required" => "Cadeaubon Nummer is een verplicht veld.", - "one_or_multiple" => "cadeaubon(s) verwijderd", - "person_id" => "Klant", - "quantity" => "In stock", - "quantity_required" => "Hoeveelheid moet ingevuld worden. Druk Sluit ( X ) om te annuleren.", - "remaining_balance" => "Resterende waarde cadeaubon {0} is {1}!", - "reorder_level" => "Bestel niveau", - "retrive_giftcard_info" => "Haal Info Op", - "sales_tax_1" => "VAT", - "sales_tax_2" => "VAT 2", - "serialized_giftcards" => "Optelbare cadeaubons", - "successful_adding" => "Cadeaubon succesvol toegevoegd", - "successful_bulk_edit" => "Cadeaubons werden succesvol bewaard", - "successful_deleted" => "Er werd(en)", - "successful_updating" => "Wijzigingen bewaard voor", - "supplier" => "Leverancier", - "tax_1" => "VAT", - "tax_2" => "VAT 2", - "tax_percent" => "VAT %", - "tax_percents" => "VAT Percentages", - "unit_price" => "Verkoopsprijs", - "upc_database" => "UPC Database", - "update" => "Bewaar Cadeaubon", - "use_inventory_menu" => "Gebruik inventaris menu", - "value" => "Cadeaubon Waarde moet een getal zijn.", - "value_required" => "Cadeaubon Waarde is een verplicht veld.", + "add_minus" => "Corrigatie hoeveelheid.", + "allow_alt_description" => "Aanpasbare omschrijving", + "bulk_edit" => "Bewerk Selectie", + "cannot_be_deleted" => "De cadeaubons konden niet worden verwijderd.", + "cannot_find_giftcard" => "Kan cadeaubon niet vinden.", + "cannot_use" => "Cadeaubon {0} kan niet gebruikt worden voor deze aankoop: ongeldige klant.", + "card_value" => "Waarde", + "category" => "Categorie", + "change_all_to_allow_alt_desc" => "Aanpasb. omschrijvingen.", + "change_all_to_not_allow_allow_desc" => "Geen aanpasb. omschrijvingen.", + "change_all_to_serialized" => "Genummerd", + "change_all_to_unserialized" => "Niet genummerd", + "confirm_bulk_edit" => "Bent u zeker dat u de geselecteerde cadeaubons wil aanpassen?", + "confirm_delete" => "Bent u zeker dat u de geselecteerde cadeaubons wil verwijderen?", + "confirm_restore" => "Bent u zeker dat u de geselecteerde cadeaubon(nen) wil herstellen?", + "cost_price" => "Aankoopprijs", + "count" => "Update Stock", + "csv_import_failed" => "CSV import mislukt.", + "current_quantity" => "Huidige hoeveelheid", + "description" => "Omschrijving", + "details_count" => "Stockgegevens", + "do_nothing" => "Doe niets", + "edit_fields_you_want_to_update" => "Bewerk de velden die u wil aanpassen voor ALLE geselecteerde cadeaubon(s).", + "edit_multiple_giftcards" => "Bewerk meerdere cadeaubons.", + "error_adding_updating" => "Fout bij het bewaren van cadeaubons.", + "error_updating_multiple" => "Fout bij het bewaren van cadeaubons.", + "generate_barcodes" => "Genereer Barcodes", + "giftcard" => "Cadeaubon", + "giftcard_number" => "Cadeaubon Nummer", + "info_provided_by" => "Info afgeleverd door", + "inventory_comments" => "Commentaar", + "is_serialized" => "Optelbaar", + "low_inventory_giftcards" => "Cadeaubons niet in stock", + "manually_editing_of_quantity" => "Manuele aanpassing hoeveelheid", + "must_select_giftcard_for_barcode" => "U moet tenminste 1 cadeaubon te selecteren om een barcode te genereren.", + "new" => "N. Cadeaubon", + "no_description_giftcards" => "Cadeaubons zonder omschrijving", + "no_giftcards_to_display" => "Er werden geen cadeaubons gevonden.", + "none" => "Geen", + "none_selected" => "U hebt geen cadeaubons geselecteerd.", + "number" => "Cadeaubon Nummer moet een getal zijn.", + "number_information" => "Cadeaubon Nummer", + "number_required" => "Cadeaubon Nummer is een verplicht veld.", + "one_or_multiple" => "cadeaubon(s) verwijderd", + "person_id" => "Klant", + "quantity" => "In stock", + "quantity_required" => "Hoeveelheid moet ingevuld worden. Druk Sluit ( X ) om te annuleren.", + "remaining_balance" => "Resterende waarde cadeaubon {0} is {1}!", + "reorder_level" => "Bestel niveau", + "retrive_giftcard_info" => "Haal Info Op", + "sales_tax_1" => "VAT", + "sales_tax_2" => "VAT 2", + "serialized_giftcards" => "Optelbare cadeaubons", + "successful_adding" => "Cadeaubon succesvol toegevoegd", + "successful_bulk_edit" => "Cadeaubons werden succesvol bewaard", + "successful_deleted" => "Er werd(en)", + "successful_updating" => "Wijzigingen bewaard voor", + "supplier" => "Leverancier", + "tax_1" => "VAT", + "tax_2" => "VAT 2", + "tax_percent" => "VAT %", + "tax_percents" => "VAT Percentages", + "unit_price" => "Verkoopsprijs", + "upc_database" => "UPC Database", + "update" => "Bewaar Cadeaubon", + "use_inventory_menu" => "Gebruik inventaris menu", + "value" => "Cadeaubon Waarde moet een getal zijn.", + "value_required" => "Cadeaubon Waarde is een verplicht veld.", ]; diff --git a/app/Language/nl-BE/Item_kits.php b/app/Language/nl-BE/Item_kits.php index 8d1b69cb4..91a242fd4 100644 --- a/app/Language/nl-BE/Item_kits.php +++ b/app/Language/nl-BE/Item_kits.php @@ -1,41 +1,41 @@ "Nieuw Product", - "all" => "Alle", - "cannot_be_deleted" => "De sets konden niet worden verwijderd.", - "confirm_delete" => "Bent u zeker dat u de geselecteerde sets wil verwijderen?", - "confirm_restore" => "Bent u zeker dat u de geselecteerde set(s) wil herstellen?", - "description" => "Omschrijving", - "discount" => "Korting", - "discount_fixed" => "Korting (€)", - "discount_percent" => "Korting (%)", - "discount_type" => "Type Korting", - "error_adding_updating" => "Fout bij het toevoegen/aanpassen van een set.", - "find_kit_item" => "Item Set", - "info" => "Productset Info", - "item" => "Product", - "item_kit_number" => "Streepjescode", - "item_kit_number_duplicate" => "Artikel Kit Nummer is reeds aanwezig in de database.", - "item_number" => "", - "item_number_duplicate" => "", - "items" => "Producten", - "kit" => "Productset Id", - "kit_and_components" => "Productset en onderdelen", - "kit_and_stock" => "Productset en stock", - "kit_only" => "Productset enkel", - "name" => "Naam", - "new" => "Nieuwe Set", - "no_item_kits_to_display" => "Geen Productsets gevonden.", - "none_selected" => "U hebt geen Productsets geselecteerd.", - "one_or_multiple" => "Productset(s) verwijderd", - "price_option" => "Prijs Optie", - "priced_only" => "Enkel Geprijsd", - "print_option" => "Print Optie", - "quantity" => "In Stock", - "sequence" => "Sequentie", - "successful_adding" => "Productset succesvol toegevoegd", - "successful_deleted" => "Er werd(en)", - "successful_updating" => "Wijzigingen Productset bewaard", - "unit_price" => "", - "update" => "Bewaar Productset", + "add_item" => "Nieuw Product", + "all" => "Alle", + "cannot_be_deleted" => "De sets konden niet worden verwijderd.", + "confirm_delete" => "Bent u zeker dat u de geselecteerde sets wil verwijderen?", + "confirm_restore" => "Bent u zeker dat u de geselecteerde set(s) wil herstellen?", + "description" => "Omschrijving", + "discount" => "Korting", + "discount_fixed" => "Korting (€)", + "discount_percent" => "Korting (%)", + "discount_type" => "Type Korting", + "error_adding_updating" => "Fout bij het toevoegen/aanpassen van een set.", + "find_kit_item" => "Item Set", + "info" => "Productset Info", + "item" => "Product", + "item_kit_number" => "Streepjescode", + "item_kit_number_duplicate" => "Artikel Kit Nummer is reeds aanwezig in de database.", + "item_number" => "", + "item_number_duplicate" => "", + "items" => "Producten", + "kit" => "Productset Id", + "kit_and_components" => "Productset en onderdelen", + "kit_and_stock" => "Productset en stock", + "kit_only" => "Productset enkel", + "name" => "Naam", + "new" => "Nieuwe Set", + "no_item_kits_to_display" => "Geen Productsets gevonden.", + "none_selected" => "U hebt geen Productsets geselecteerd.", + "one_or_multiple" => "Productset(s) verwijderd", + "price_option" => "Prijs Optie", + "priced_only" => "Enkel Geprijsd", + "print_option" => "Print Optie", + "quantity" => "In Stock", + "sequence" => "Sequentie", + "successful_adding" => "Productset succesvol toegevoegd", + "successful_deleted" => "Er werd(en)", + "successful_updating" => "Wijzigingen Productset bewaard", + "unit_price" => "", + "update" => "Bewaar Productset", ]; diff --git a/app/Language/nl-BE/Items.php b/app/Language/nl-BE/Items.php index 9a3961df1..91f190b4f 100644 --- a/app/Language/nl-BE/Items.php +++ b/app/Language/nl-BE/Items.php @@ -1,120 +1,120 @@ "Correctie hoeveelheid.", - "allow_alt_description" => "Aanpasbare omschrijving", - "amount_entry" => "Hoeveelheid", - "bulk_edit" => "Bewerk Selectie", - "buy_price_required" => "Inkoopprijs is een verplicht veld.", - "cannot_be_deleted" => "De geselecteerde producten konden niet worden verwijderd.", - "cannot_find_item" => "Product niet gevonden.", - "categories" => "", - "category" => "Categorie", - "category_new" => "", - "category_required" => "Categorie moet ingevuld worden.", - "change_all_to_allow_alt_desc" => "Aanpasb. omschrijvingen voor alles.", - "change_all_to_not_allow_allow_desc" => "Vaste omschrijvingen voor alles.", - "change_all_to_serialized" => "Genummerd", - "change_all_to_unserialized" => "Niet genummerd", - "change_image" => "Selecteer Afbeelding", - "confirm_bulk_edit" => "Bent u zeker dat u de geselecteerde producten wil aanpassen?", - "confirm_bulk_edit_wipe_taxes" => "Alle taxgegevens zullen overschreven worden.", - "confirm_delete" => "Bent u zeker dat u de geselecteerde producten wil verwijderen?", - "confirm_restore" => "Bent u zeker dat u de geselecteerde product(en) wil herstellen?", - "cost_price" => "Groothandelsprijs", - "cost_price_number" => "Groothandelsprijs moet een getal zijn.", - "cost_price_required" => "Groothandelsprijs is een verplicht veld.", - "count" => "Update Stock", - "csv_import_failed" => "CSV import mislukt", - "csv_import_nodata_wrongformat" => "Het geüploade CSV-bestand bevat geen gegevens of is onjuist geformatteerd.", - "csv_import_partially_failed" => "Er waren {0} artikel import fout(en) op regel(s): {1}. Er werden geen rijen geïmporteerd.", - "csv_import_success" => "Artikel CSV import geslaagd.", - "current_quantity" => "Huidige hoeveelheid", - "default_pack_name" => "Enkel", - "description" => "Omschrijving", - "details_count" => "Stockgegevens", - "do_nothing" => "Doe Niets", - "edit" => "", - "edit_fields_you_want_to_update" => "Bewerk de gewenste velden voor het (de) geselecteerde artikel( en).", - "edit_multiple_items" => "Meerdere Producten Bewerken", - "empty_upc_items" => "Zonder barcode", - "error_adding_updating" => "Fout bij het toevoegen/aanpassen van een product", - "error_updating_multiple" => "Fout bij het bewaren van producten", - "generate_barcodes" => "Genereer Barcodes", - "hsn_code" => "Geharmoniseerd Systeem Naamgeving", - "image" => "Afbeelding", - "import_items_csv" => "Importeer artikelen van een CSV sheet", - "info_provided_by" => "Info afgeleverd door", - "inventory" => "Stock", - "inventory_CSV_import_quantity" => "Hoeveelheid Geïmporteerd uit CSV", - "inventory_comments" => "Commentaar", - "inventory_data_tracking" => "Inventarisgegevens Bijhouden", - "inventory_date" => "Datum", - "inventory_employee" => "Werknemer", - "inventory_in_out_quantity" => "In/Uit Hoeveelheid", - "inventory_remarks" => "Opmerkingen", - "is_deleted" => "Verwijderd", - "is_printed" => "", - "is_serialized" => "Optelbaar", - "item" => "Product", - "item_id" => "", - "item_number" => "UPC/EAN/ISBN", - "item_number_duplicate" => "Artikelnummer is reeds aanwezig in de database.", - "kit" => "Set", - "location" => "Locatie", - "low_inventory_items" => "Niet in stock", - "low_sell_item" => "Goedkoop artikel", - "manually_editing_of_quantity" => "Manuele aanpassing hoeveelheid", - "markup" => "", - "name" => "Productnaam", - "name_required" => "Artikelnaam is een verplicht veld.", - "new" => "Nieuw Product", - "no_description_items" => "Producten zonder omschrijving", - "no_items_to_display" => "Geen artikelen om weer te geven.", - "none" => "Geen", - "none_selected" => "U hebt geen producten geselecteerd", - "nonstock" => "Geen Stock", - "number_information" => "Productnummer", - "number_required" => "Barcode is een verplicht veld.", - "one_or_multiple" => "product(en) verwijderd", - "pack_name" => "Pak Naam", - "qty_per_pack" => "Aantal per pak", - "quantity" => "Stock", - "quantity_number" => "Aantal moet een getal zijn.", - "quantity_required" => "Hoeveelheid is een verplicht veld.", - "receiving_quantity" => "Aantal per lijn", - "remove_image" => "Verwijder Afbeelding", - "reorder_level" => "Bestel niveau", - "reorder_level_number" => "Nabestel Niveau moet een getal zijn.", - "reorder_level_required" => "Nabestel Niveau is een verplicht veld.", - "retrive_item_info" => "Artikel Info Opvragen", - "sales_tax_1" => "VAT", - "sales_tax_2" => "VAT 2", - "search_attributes" => "Zoek Kenmerken", - "select_image" => "Selecteer Afbeelding", - "serialized_items" => "Artikelen met serienummer", - "standard" => "Standaard", - "stock" => "Voorraad", - "stock_location" => "Stock locatie", - "stock_type" => "Voorraad Type", - "successful_adding" => "Product succesvol toegevoegd", - "successful_bulk_edit" => "Producten werden succesvol bewaard", - "successful_deleted" => "Er werd(en)", - "successful_updating" => "Wijzigingen bewaard voor", - "supplier" => "Leverancier", - "tax_1" => "VAT", - "tax_2" => "VAT 2", - "tax_3" => "", - "tax_category" => "BTW-Categorie", - "tax_percent" => "VAT %", - "tax_percent_number" => "Tax Percentage moet een numerieke waarde zijn", - "tax_percent_required" => "BTW Percentage is een verplicht veld.", - "tax_percents" => "VAT", - "temp" => "Tijdelijk", - "type" => "Item Type", - "unit_price" => "Verkoopprijs", - "unit_price_number" => "Eenheidsprijs moet een getal zijn.", - "unit_price_required" => "Verkoopprijs is een verplicht veld.", - "upc_database" => "UPC Database", - "update" => "Bewerk Product", - "use_inventory_menu" => "Gebruik inventaris menu", + "add_minus" => "Correctie hoeveelheid.", + "allow_alt_description" => "Aanpasbare omschrijving", + "amount_entry" => "Hoeveelheid", + "bulk_edit" => "Bewerk Selectie", + "buy_price_required" => "Inkoopprijs is een verplicht veld.", + "cannot_be_deleted" => "De geselecteerde producten konden niet worden verwijderd.", + "cannot_find_item" => "Product niet gevonden.", + "categories" => "", + "category" => "Categorie", + "category_new" => "", + "category_required" => "Categorie moet ingevuld worden.", + "change_all_to_allow_alt_desc" => "Aanpasb. omschrijvingen voor alles.", + "change_all_to_not_allow_allow_desc" => "Vaste omschrijvingen voor alles.", + "change_all_to_serialized" => "Genummerd", + "change_all_to_unserialized" => "Niet genummerd", + "change_image" => "Selecteer Afbeelding", + "confirm_bulk_edit" => "Bent u zeker dat u de geselecteerde producten wil aanpassen?", + "confirm_bulk_edit_wipe_taxes" => "Alle taxgegevens zullen overschreven worden.", + "confirm_delete" => "Bent u zeker dat u de geselecteerde producten wil verwijderen?", + "confirm_restore" => "Bent u zeker dat u de geselecteerde product(en) wil herstellen?", + "cost_price" => "Groothandelsprijs", + "cost_price_number" => "Groothandelsprijs moet een getal zijn.", + "cost_price_required" => "Groothandelsprijs is een verplicht veld.", + "count" => "Update Stock", + "csv_import_failed" => "CSV import mislukt", + "csv_import_nodata_wrongformat" => "Het geüploade CSV-bestand bevat geen gegevens of is onjuist geformatteerd.", + "csv_import_partially_failed" => "Er waren {0} artikel import fout(en) op regel(s): {1}. Er werden geen rijen geïmporteerd.", + "csv_import_success" => "Artikel CSV import geslaagd.", + "current_quantity" => "Huidige hoeveelheid", + "default_pack_name" => "Enkel", + "description" => "Omschrijving", + "details_count" => "Stockgegevens", + "do_nothing" => "Doe Niets", + "edit" => "", + "edit_fields_you_want_to_update" => "Bewerk de gewenste velden voor het (de) geselecteerde artikel( en).", + "edit_multiple_items" => "Meerdere Producten Bewerken", + "empty_upc_items" => "Zonder barcode", + "error_adding_updating" => "Fout bij het toevoegen/aanpassen van een product", + "error_updating_multiple" => "Fout bij het bewaren van producten", + "generate_barcodes" => "Genereer Barcodes", + "hsn_code" => "Geharmoniseerd Systeem Naamgeving", + "image" => "Afbeelding", + "import_items_csv" => "Importeer artikelen van een CSV sheet", + "info_provided_by" => "Info afgeleverd door", + "inventory" => "Stock", + "inventory_CSV_import_quantity" => "Hoeveelheid Geïmporteerd uit CSV", + "inventory_comments" => "Commentaar", + "inventory_data_tracking" => "Inventarisgegevens Bijhouden", + "inventory_date" => "Datum", + "inventory_employee" => "Werknemer", + "inventory_in_out_quantity" => "In/Uit Hoeveelheid", + "inventory_remarks" => "Opmerkingen", + "is_deleted" => "Verwijderd", + "is_printed" => "", + "is_serialized" => "Optelbaar", + "item" => "Product", + "item_id" => "", + "item_number" => "UPC/EAN/ISBN", + "item_number_duplicate" => "Artikelnummer is reeds aanwezig in de database.", + "kit" => "Set", + "location" => "Locatie", + "low_inventory_items" => "Niet in stock", + "low_sell_item" => "Goedkoop artikel", + "manually_editing_of_quantity" => "Manuele aanpassing hoeveelheid", + "markup" => "", + "name" => "Productnaam", + "name_required" => "Artikelnaam is een verplicht veld.", + "new" => "Nieuw Product", + "no_description_items" => "Producten zonder omschrijving", + "no_items_to_display" => "Geen artikelen om weer te geven.", + "none" => "Geen", + "none_selected" => "U hebt geen producten geselecteerd", + "nonstock" => "Geen Stock", + "number_information" => "Productnummer", + "number_required" => "Barcode is een verplicht veld.", + "one_or_multiple" => "product(en) verwijderd", + "pack_name" => "Pak Naam", + "qty_per_pack" => "Aantal per pak", + "quantity" => "Stock", + "quantity_number" => "Aantal moet een getal zijn.", + "quantity_required" => "Hoeveelheid is een verplicht veld.", + "receiving_quantity" => "Aantal per lijn", + "remove_image" => "Verwijder Afbeelding", + "reorder_level" => "Bestel niveau", + "reorder_level_number" => "Nabestel Niveau moet een getal zijn.", + "reorder_level_required" => "Nabestel Niveau is een verplicht veld.", + "retrive_item_info" => "Artikel Info Opvragen", + "sales_tax_1" => "VAT", + "sales_tax_2" => "VAT 2", + "search_attributes" => "Zoek Kenmerken", + "select_image" => "Selecteer Afbeelding", + "serialized_items" => "Artikelen met serienummer", + "standard" => "Standaard", + "stock" => "Voorraad", + "stock_location" => "Stock locatie", + "stock_type" => "Voorraad Type", + "successful_adding" => "Product succesvol toegevoegd", + "successful_bulk_edit" => "Producten werden succesvol bewaard", + "successful_deleted" => "Er werd(en)", + "successful_updating" => "Wijzigingen bewaard voor", + "supplier" => "Leverancier", + "tax_1" => "VAT", + "tax_2" => "VAT 2", + "tax_3" => "", + "tax_category" => "BTW-Categorie", + "tax_percent" => "VAT %", + "tax_percent_number" => "Tax Percentage moet een numerieke waarde zijn", + "tax_percent_required" => "BTW Percentage is een verplicht veld.", + "tax_percents" => "VAT", + "temp" => "Tijdelijk", + "type" => "Item Type", + "unit_price" => "Verkoopprijs", + "unit_price_number" => "Eenheidsprijs moet een getal zijn.", + "unit_price_required" => "Verkoopprijs is een verplicht veld.", + "upc_database" => "UPC Database", + "update" => "Bewerk Product", + "use_inventory_menu" => "Gebruik inventaris menu", ]; diff --git a/app/Language/nl-BE/Login.php b/app/Language/nl-BE/Login.php index afb8d51a8..05d8c1c60 100644 --- a/app/Language/nl-BE/Login.php +++ b/app/Language/nl-BE/Login.php @@ -1,15 +1,15 @@ "Ik ben geen robot.", - "go" => "Verstuur", - "invalid_gcaptcha" => "Controleer of u geen robot bent.", - "invalid_installation" => "De installatie is onvolledig. Kijk uw php.ini file na.", - "invalid_username_and_password" => "Ongeldige gebruiker en/of paswoord.", - "login" => "Login", - "logout" => "Log-uit", - "migration_needed" => "Een database migratie naar {0} zal starten na het inloggen.", - "password" => "Paswoord", - "required_username" => "", - "username" => "Gebruiker", - "welcome" => "Welkom op {0}!", + "gcaptcha" => "Ik ben geen robot.", + "go" => "Verstuur", + "invalid_gcaptcha" => "Controleer of u geen robot bent.", + "invalid_installation" => "De installatie is onvolledig. Kijk uw php.ini file na.", + "invalid_username_and_password" => "Ongeldige gebruiker en/of paswoord.", + "login" => "Login", + "logout" => "Log-uit", + "migration_needed" => "Een database migratie naar {0} zal starten na het inloggen.", + "password" => "Paswoord", + "required_username" => "", + "username" => "Gebruiker", + "welcome" => "Welkom op {0}!", ]; diff --git a/app/Language/nl-BE/Messages.php b/app/Language/nl-BE/Messages.php index 8aa0ca4a4..b8cac7511 100644 --- a/app/Language/nl-BE/Messages.php +++ b/app/Language/nl-BE/Messages.php @@ -1,15 +1,15 @@ "Voornaam", - "last_name" => "Achternaam", - "message" => "Message", - "message_placeholder" => "Jou bericht hier..", - "message_required" => "Bericht verplicht", - "multiple_phones" => "(In het geval van meerdere ontvangers, voer de mobiele nummers gescheiden door komma's in)", - "phone" => "Telefoonnummer", - "phone_number_required" => "Telefoonnummer verplicht", - "phone_placeholder" => "Mobiele nummer(s) hier...", - "sms_send" => "Send SMS", - "successfully_sent" => "Bericht met succes verzonden naar: ", - "unsuccessfully_sent" => "Bericht zonder succes verzonden naar: ", + "first_name" => "Voornaam", + "last_name" => "Achternaam", + "message" => "Message", + "message_placeholder" => "Jou bericht hier..", + "message_required" => "Bericht verplicht", + "multiple_phones" => "(In het geval van meerdere ontvangers, voer de mobiele nummers gescheiden door komma's in)", + "phone" => "Telefoonnummer", + "phone_number_required" => "Telefoonnummer verplicht", + "phone_placeholder" => "Mobiele nummer(s) hier...", + "sms_send" => "Send SMS", + "successfully_sent" => "Bericht met succes verzonden naar: ", + "unsuccessfully_sent" => "Bericht zonder succes verzonden naar: ", ]; diff --git a/app/Language/nl-BE/Module.php b/app/Language/nl-BE/Module.php index 276fcdbff..92308344a 100644 --- a/app/Language/nl-BE/Module.php +++ b/app/Language/nl-BE/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "Attributen", - "attributes_desc" => "Zoek, bewerk, verwijder en voeg attributen toe.", - "both" => "Beide", - "cashups" => "Geldophalingen", - "cashups_desc" => "Zoek, bewerk, verwijder en voeg cashups toe.", - "config" => "Configuratie", - "config_desc" => "Globale configuratie aanpassen.", - "customers" => "Klanten", - "customers_desc" => "Zoek, bewerk, verwijder en voeg klanten toe.", - "employees" => "Werknemers", - "employees_desc" => "Zoek, bewerk, verwijder en voeg werknemers toe.", - "expenses" => "Onkosten", - "expenses_categories" => "Type Onkosten", - "expenses_categories_desc" => "Zoek, bewerk verwijder en voeg type onkosten toe.", - "expenses_desc" => "Zoek, bewerk, verwijder en voeg onkosten toe.", - "giftcards" => "Cadeaubons", - "giftcards_desc" => "Zoek, bewerk, verwijder en voeg cadeaubons toe.", - "home" => "Home", - "home_desc" => "Toon home menu modules.", - "item_kits" => "Productsets", - "item_kits_desc" => "Zoek, bewerk, verwijder en voeg productsets toe.", - "items" => "Producten", - "items_desc" => "Zoek, bewerk, verwijder en voeg producten toe.", - "messages" => "Messages", - "messages_desc" => "Send Messages to Customers, Suppliers, Employees et al.", - "migrate" => "Migreer", - "migrate_desc" => "Update de OSPOS database.", - "office" => "Kantoor", - "office_desc" => "Toon kantoor menu modules.", - "receivings" => "Orders", - "receivings_desc" => "Verwerk binnenkomende orders.", - "reports" => "Rapporten", - "reports_desc" => "Toon en genereer rapporten.", - "sales" => "Kassa", - "sales_desc" => "Verwerk aankopen en retours.", - "suppliers" => "Leveranciers", - "suppliers_desc" => "Zoek, bewerk, verwijder en voeg leveranciers toe.", - "taxes" => "VAT", - "taxes_desc" => "Configureer VAT.", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "Attributen", + "attributes_desc" => "Zoek, bewerk, verwijder en voeg attributen toe.", + "both" => "Beide", + "cashups" => "Geldophalingen", + "cashups_desc" => "Zoek, bewerk, verwijder en voeg cashups toe.", + "config" => "Configuratie", + "config_desc" => "Globale configuratie aanpassen.", + "customers" => "Klanten", + "customers_desc" => "Zoek, bewerk, verwijder en voeg klanten toe.", + "employees" => "Werknemers", + "employees_desc" => "Zoek, bewerk, verwijder en voeg werknemers toe.", + "expenses" => "Onkosten", + "expenses_categories" => "Type Onkosten", + "expenses_categories_desc" => "Zoek, bewerk verwijder en voeg type onkosten toe.", + "expenses_desc" => "Zoek, bewerk, verwijder en voeg onkosten toe.", + "giftcards" => "Cadeaubons", + "giftcards_desc" => "Zoek, bewerk, verwijder en voeg cadeaubons toe.", + "home" => "Home", + "home_desc" => "Toon home menu modules.", + "item_kits" => "Productsets", + "item_kits_desc" => "Zoek, bewerk, verwijder en voeg productsets toe.", + "items" => "Producten", + "items_desc" => "Zoek, bewerk, verwijder en voeg producten toe.", + "messages" => "Messages", + "messages_desc" => "Send Messages to Customers, Suppliers, Employees et al.", + "migrate" => "Migreer", + "migrate_desc" => "Update de OSPOS database.", + "office" => "Kantoor", + "office_desc" => "Toon kantoor menu modules.", + "receivings" => "Orders", + "receivings_desc" => "Verwerk binnenkomende orders.", + "reports" => "Rapporten", + "reports_desc" => "Toon en genereer rapporten.", + "sales" => "Kassa", + "sales_desc" => "Verwerk aankopen en retours.", + "suppliers" => "Leveranciers", + "suppliers_desc" => "Zoek, bewerk, verwijder en voeg leveranciers toe.", + "taxes" => "VAT", + "taxes_desc" => "Configureer VAT.", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/nl-BE/Receivings.php b/app/Language/nl-BE/Receivings.php index 29bb26cd8..ac81a54bd 100644 --- a/app/Language/nl-BE/Receivings.php +++ b/app/Language/nl-BE/Receivings.php @@ -1,58 +1,58 @@ "", - "cancel_receiving" => "Annuleer", - "cannot_be_deleted" => "Order(s) konden niet bijgewerkt worden.", - "comments" => "Commentaar", - "complete_receiving" => "Bevestig", - "confirm_cancel_receiving" => "Bent u zeker dat u dit order wil wissen? Alle items worden verwijderd.", - "confirm_delete" => "Bent u zeker dat u dit order wil verwijderen? Dit kan niet ongedaan gemaakt worden.", - "confirm_finish_receiving" => "Bent u zeker dat u dit order wil ingeven? Dit kan niet ongedaan gemaakt worden.", - "confirm_restore" => "", - "cost" => "Kost", - "daily" => "", - "date" => "Order Datum", - "date_required" => "Gelieve een correcte datum in te vullen.", - "date_type" => "Datum is een verplicht veld.", - "delete_entire_sale" => "Verwijder", - "discount" => "Korting %", - "edit" => "Bewerk", - "edit_sale" => "Bewerk", - "employee" => "Werknemer", - "error_editing_item" => "Fout tijdens updaten product.", - "error_requisition" => "Kon de stock transfer niet vervolledigen.", - "find_or_scan_item" => "Zoek/Scan Product", - "find_or_scan_item_or_receipt" => "Zoek/Scan Product OF Tickets", - "id" => "Ordernummer", - "item_name" => "Productnaam", - "mode" => "Order type", - "new_supplier" => "N. Leverancier", - "one_or_multiple" => "order(s)", - "print_after_sale" => "Print Ticket", - "quantity" => "Aantal", - "receipt" => "Ontvangstbewijs", - "receipt_number" => "Order #", - "receiving" => "Inkoop", - "reference" => "Referentie", - "register" => "Orders", - "requisition" => "Transfer", - "return" => "Teruggave", - "select_supplier" => "Selecteer Leverancier (Optioneel)", - "ship_pack" => "Pakket", - "start_typing_supplier_name" => "Typ naam leverancier..", - "stock" => "Voorraad", - "stock_destination" => "Stock bestemming", - "stock_locaiton" => "Stock locatie", - "stock_source" => "Stock bron", - "successfully_deleted" => "Er werd(en)", - "successfully_updated" => "Order werd geupdatet", - "supplier" => "Leverancier", - "supplier_address" => "Leverancier Address", - "supplier_email" => "Leverancier Email", - "supplier_location" => "Leverancier Location", - "total" => "Totaal", - "transaction_failed" => "Order transactie mislukt.", - "unable_to_add_item" => "Onmogelijk om product aan order toe te voegen.", - "unsuccessfully_updated" => "Order kon niet bijgewerkt worden.", - "update" => "Bewerk", + "amount_due" => "", + "cancel_receiving" => "Annuleer", + "cannot_be_deleted" => "Order(s) konden niet bijgewerkt worden.", + "comments" => "Commentaar", + "complete_receiving" => "Bevestig", + "confirm_cancel_receiving" => "Bent u zeker dat u dit order wil wissen? Alle items worden verwijderd.", + "confirm_delete" => "Bent u zeker dat u dit order wil verwijderen? Dit kan niet ongedaan gemaakt worden.", + "confirm_finish_receiving" => "Bent u zeker dat u dit order wil ingeven? Dit kan niet ongedaan gemaakt worden.", + "confirm_restore" => "", + "cost" => "Kost", + "daily" => "", + "date" => "Order Datum", + "date_required" => "Gelieve een correcte datum in te vullen.", + "date_type" => "Datum is een verplicht veld.", + "delete_entire_sale" => "Verwijder", + "discount" => "Korting %", + "edit" => "Bewerk", + "edit_sale" => "Bewerk", + "employee" => "Werknemer", + "error_editing_item" => "Fout tijdens updaten product.", + "error_requisition" => "Kon de stock transfer niet vervolledigen.", + "find_or_scan_item" => "Zoek/Scan Product", + "find_or_scan_item_or_receipt" => "Zoek/Scan Product OF Tickets", + "id" => "Ordernummer", + "item_name" => "Productnaam", + "mode" => "Order type", + "new_supplier" => "N. Leverancier", + "one_or_multiple" => "order(s)", + "print_after_sale" => "Print Ticket", + "quantity" => "Aantal", + "receipt" => "Ontvangstbewijs", + "receipt_number" => "Order #", + "receiving" => "Inkoop", + "reference" => "Referentie", + "register" => "Orders", + "requisition" => "Transfer", + "return" => "Teruggave", + "select_supplier" => "Selecteer Leverancier (Optioneel)", + "ship_pack" => "Pakket", + "start_typing_supplier_name" => "Typ naam leverancier..", + "stock" => "Voorraad", + "stock_destination" => "Stock bestemming", + "stock_locaiton" => "Stock locatie", + "stock_source" => "Stock bron", + "successfully_deleted" => "Er werd(en)", + "successfully_updated" => "Order werd geupdatet", + "supplier" => "Leverancier", + "supplier_address" => "Leverancier Address", + "supplier_email" => "Leverancier Email", + "supplier_location" => "Leverancier Location", + "total" => "Totaal", + "transaction_failed" => "Order transactie mislukt.", + "unable_to_add_item" => "Onmogelijk om product aan order toe te voegen.", + "unsuccessfully_updated" => "Order kon niet bijgewerkt worden.", + "update" => "Bewerk", ]; diff --git a/app/Language/nl-BE/Reports.php b/app/Language/nl-BE/Reports.php index acc8bbb77..305059269 100644 --- a/app/Language/nl-BE/Reports.php +++ b/app/Language/nl-BE/Reports.php @@ -1,148 +1,148 @@ "Alle", - "authority" => "Autoriteit", - "canceled" => "Geannuleerd", - "categories" => "Categorieën", - "categories_summary_report" => "Rapport Overzicht Categorieën", - "category" => "Categorie", - "code_canceled" => "CNL", - "code_invoice" => "INV", - "code_pos" => "POS", - "code_quote" => "Q", - "code_return" => "RET", - "code_type" => "Type", - "code_work_order" => "W/0", - "comments" => "Commentaar", - "commission" => "", - "complete" => "Afgehandelde Verkopen en Retourzendingen", - "completed_sales" => "Verwerkte Verkopen", - "confirm_delete" => "Bent u zeker dat u de geselecteerde rij(en) wil verwijderen?", - "confirm_restore" => "Bent u zeker dat u de geselecteerde rij(en) wil herstellen?", - "cost" => "Groothandel", - "cost_price" => "Groothandelsprijs", - "count" => "Aantal", - "customer" => "Klant", - "customers" => "Klanten", - "customers_summary_report" => "Rapport Overzicht Klanten", - "date" => "Datum", - "date_range" => "Periode", - "description" => "Omschrijving", - "detailed_receivings_report" => "Gedetailleerd Raport Orders", - "detailed_receivings_report_input" => "", - "detailed_reports" => "Gedetailleerde Rapporten", - "detailed_requisition_report" => "", - "detailed_sales_report" => "Gedetailleerd Rapport Verkoop", - "discount" => "Korting", - "discount_fixed" => "Korting (€)", - "discount_percent" => "Korting (%)", - "discount_type" => "Type Korting", - "discounts" => "Kortingen", - "discounts_summary_report" => "Overzicht Kortingen", - "earned" => "Punten Verdiend", - "employee" => "Werknemer", - "employees" => "Werknemrs", - "employees_summary_report" => "Rapport Overzicht Werknemers", - "expenses" => "Onkosten", - "expenses_amount" => "Bedrag", - "expenses_categories" => "Onkosten", - "expenses_categories_summary_report" => "Onkosten Categoriën Overzicht", - "expenses_category" => "Categorie", - "expenses_payment_amount" => "", - "expenses_tax_amount" => "VAT", - "expenses_total_amount" => "Totaal Bedrag", - "expenses_total_tax_amount" => "Totaal VAT", - "graphical_reports" => "Grafische Rapporten", - "inventory" => "Stock", - "inventory_low" => "Herbevoorrading", - "inventory_low_report" => "Rapport Herbevoorrading", - "inventory_reports" => "Rapporten Bevoorrading", - "inventory_summary" => "Overzicht Vooraad", - "inventory_summary_report" => "Rapport Overzicht Vooraad", - "item" => "Product", - "item_count" => "Filter product aantal", - "item_name" => "Product Naam", - "item_number" => "Productnummer", - "items" => "Producten", - "items_purchased" => "Hoeveelheid", - "items_received" => "Items Ontvangen", - "items_summary_report" => "Rapport Overzicht Producten", - "jurisdiction" => "Jurisdictie", - "low_inventory" => "", - "low_inventory_report" => "", - "low_sell_quantity" => "Laag Verkoop Aantal", - "more_than_zero" => "Meer dan nul", - "name" => "Naam", - "no_reports_to_display" => "Geen Artikelen om weer te geven.", - "payment_type" => "Betaald", - "payments" => "Betalingen", - "payments_summary_report" => "Overzicht Betalingen", - "profit" => "Winst", - "quantity" => "Hoeveelheid", - "quantity_purchased" => "Aangekochte Hoeveelheid", - "quotes" => "Offertes", - "received_by" => "Ontvangen door", - "receiving_id" => "Ordernummer", - "receiving_type" => "Ordertype", - "receivings" => "Orders", - "reorder_level" => "Bestel niveau", - "report" => "Rapport", - "report_input" => "Input Rapport", - "reports" => "Rapporten", - "requisition" => "", - "requisition_by" => "", - "requisition_id" => "", - "requisition_item" => "", - "requisition_item_quantity" => "", - "requisition_related_item" => "", - "requisition_related_item_total_quantity" => "", - "requisition_related_item_unit_quantity" => "", - "requisitions" => "Aanvullingen", - "returns" => "Retour", - "revenue" => "Inkomsten", - "sale_id" => "Ticket°", - "sale_type" => "Type", - "sales" => "Verkoop", - "sales_amount" => "Verkoopbedrag", - "sales_summary_report" => "Overzicht Verkoop", - "sales_taxes" => "VAT", - "sales_taxes_summary_report" => "VAT Rapport", - "serial_number" => "Nummer", - "service_charge" => "", - "sold_by" => "Werknemer", - "sold_items" => "", - "sold_to" => "Klant", - "stock_location" => "Stock Locatie", - "sub_total_value" => "Subtotaal", - "subtotal" => "Subtotaal", - "summary_reports" => "Samenvatting Rapporten", - "supplied_by" => "Geleverd door", - "supplier" => "Leverancier", - "suppliers" => "Leveranciers", - "suppliers_summary_report" => "Rapport Overzicht Leveranciers", - "tax" => "VAT", - "tax_category" => "VAT Categorie", - "tax_name" => "BTW Naam", - "tax_percent" => "VAT Percentage", - "tax_rate" => "VAT %", - "taxes" => "Belastingen", - "taxes_summary_report" => "Rapport Overzicht Belastingen", - "total" => "Totaal", - "total_inventory_value" => "Totale waarde stock", - "total_low_sell_quantity" => "Totale Lage Verkoophoeveelheid", - "total_quantity" => "Totale Hoeveelheid", - "total_retail" => "Totale Inv. Winkelwaarde", - "trans_amount" => "Bedrag Transactie", - "trans_due" => "Tegoed", - "trans_group" => "Transactie Groep", - "trans_nopay_sales" => "Verkoop zonder betalingen", - "trans_payments" => "Betalingen", - "trans_refunded" => "Terugstorting", - "trans_sales" => "Verkoop", - "trans_type" => "Transactie Type", - "type" => "Type", - "unit_price" => "Verkoopprijs", - "used" => "Gebruikte Punten", - "work_orders" => "Werk Orders", - "zero_and_less" => "Nul en minder", + "all" => "Alle", + "authority" => "Autoriteit", + "canceled" => "Geannuleerd", + "categories" => "Categorieën", + "categories_summary_report" => "Rapport Overzicht Categorieën", + "category" => "Categorie", + "code_canceled" => "CNL", + "code_invoice" => "INV", + "code_pos" => "POS", + "code_quote" => "Q", + "code_return" => "RET", + "code_type" => "Type", + "code_work_order" => "W/0", + "comments" => "Commentaar", + "commission" => "", + "complete" => "Afgehandelde Verkopen en Retourzendingen", + "completed_sales" => "Verwerkte Verkopen", + "confirm_delete" => "Bent u zeker dat u de geselecteerde rij(en) wil verwijderen?", + "confirm_restore" => "Bent u zeker dat u de geselecteerde rij(en) wil herstellen?", + "cost" => "Groothandel", + "cost_price" => "Groothandelsprijs", + "count" => "Aantal", + "customer" => "Klant", + "customers" => "Klanten", + "customers_summary_report" => "Rapport Overzicht Klanten", + "date" => "Datum", + "date_range" => "Periode", + "description" => "Omschrijving", + "detailed_receivings_report" => "Gedetailleerd Raport Orders", + "detailed_receivings_report_input" => "", + "detailed_reports" => "Gedetailleerde Rapporten", + "detailed_requisition_report" => "", + "detailed_sales_report" => "Gedetailleerd Rapport Verkoop", + "discount" => "Korting", + "discount_fixed" => "Korting (€)", + "discount_percent" => "Korting (%)", + "discount_type" => "Type Korting", + "discounts" => "Kortingen", + "discounts_summary_report" => "Overzicht Kortingen", + "earned" => "Punten Verdiend", + "employee" => "Werknemer", + "employees" => "Werknemrs", + "employees_summary_report" => "Rapport Overzicht Werknemers", + "expenses" => "Onkosten", + "expenses_amount" => "Bedrag", + "expenses_categories" => "Onkosten", + "expenses_categories_summary_report" => "Onkosten Categoriën Overzicht", + "expenses_category" => "Categorie", + "expenses_payment_amount" => "", + "expenses_tax_amount" => "VAT", + "expenses_total_amount" => "Totaal Bedrag", + "expenses_total_tax_amount" => "Totaal VAT", + "graphical_reports" => "Grafische Rapporten", + "inventory" => "Stock", + "inventory_low" => "Herbevoorrading", + "inventory_low_report" => "Rapport Herbevoorrading", + "inventory_reports" => "Rapporten Bevoorrading", + "inventory_summary" => "Overzicht Vooraad", + "inventory_summary_report" => "Rapport Overzicht Vooraad", + "item" => "Product", + "item_count" => "Filter product aantal", + "item_name" => "Product Naam", + "item_number" => "Productnummer", + "items" => "Producten", + "items_purchased" => "Hoeveelheid", + "items_received" => "Items Ontvangen", + "items_summary_report" => "Rapport Overzicht Producten", + "jurisdiction" => "Jurisdictie", + "low_inventory" => "", + "low_inventory_report" => "", + "low_sell_quantity" => "Laag Verkoop Aantal", + "more_than_zero" => "Meer dan nul", + "name" => "Naam", + "no_reports_to_display" => "Geen Artikelen om weer te geven.", + "payment_type" => "Betaald", + "payments" => "Betalingen", + "payments_summary_report" => "Overzicht Betalingen", + "profit" => "Winst", + "quantity" => "Hoeveelheid", + "quantity_purchased" => "Aangekochte Hoeveelheid", + "quotes" => "Offertes", + "received_by" => "Ontvangen door", + "receiving_id" => "Ordernummer", + "receiving_type" => "Ordertype", + "receivings" => "Orders", + "reorder_level" => "Bestel niveau", + "report" => "Rapport", + "report_input" => "Input Rapport", + "reports" => "Rapporten", + "requisition" => "", + "requisition_by" => "", + "requisition_id" => "", + "requisition_item" => "", + "requisition_item_quantity" => "", + "requisition_related_item" => "", + "requisition_related_item_total_quantity" => "", + "requisition_related_item_unit_quantity" => "", + "requisitions" => "Aanvullingen", + "returns" => "Retour", + "revenue" => "Inkomsten", + "sale_id" => "Ticket°", + "sale_type" => "Type", + "sales" => "Verkoop", + "sales_amount" => "Verkoopbedrag", + "sales_summary_report" => "Overzicht Verkoop", + "sales_taxes" => "VAT", + "sales_taxes_summary_report" => "VAT Rapport", + "serial_number" => "Nummer", + "service_charge" => "", + "sold_by" => "Werknemer", + "sold_items" => "", + "sold_to" => "Klant", + "stock_location" => "Stock Locatie", + "sub_total_value" => "Subtotaal", + "subtotal" => "Subtotaal", + "summary_reports" => "Samenvatting Rapporten", + "supplied_by" => "Geleverd door", + "supplier" => "Leverancier", + "suppliers" => "Leveranciers", + "suppliers_summary_report" => "Rapport Overzicht Leveranciers", + "tax" => "VAT", + "tax_category" => "VAT Categorie", + "tax_name" => "BTW Naam", + "tax_percent" => "VAT Percentage", + "tax_rate" => "VAT %", + "taxes" => "Belastingen", + "taxes_summary_report" => "Rapport Overzicht Belastingen", + "total" => "Totaal", + "total_inventory_value" => "Totale waarde stock", + "total_low_sell_quantity" => "Totale Lage Verkoophoeveelheid", + "total_quantity" => "Totale Hoeveelheid", + "total_retail" => "Totale Inv. Winkelwaarde", + "trans_amount" => "Bedrag Transactie", + "trans_due" => "Tegoed", + "trans_group" => "Transactie Groep", + "trans_nopay_sales" => "Verkoop zonder betalingen", + "trans_payments" => "Betalingen", + "trans_refunded" => "Terugstorting", + "trans_sales" => "Verkoop", + "trans_type" => "Transactie Type", + "type" => "Type", + "unit_price" => "Verkoopprijs", + "used" => "Gebruikte Punten", + "work_orders" => "Werk Orders", + "zero_and_less" => "Nul en minder", ]; diff --git a/app/Language/nl-BE/Sales.php b/app/Language/nl-BE/Sales.php index aeccad83d..0decf7be6 100644 --- a/app/Language/nl-BE/Sales.php +++ b/app/Language/nl-BE/Sales.php @@ -1,224 +1,224 @@ "Beschikbare Punten", - "rewards_package" => "Spaarpunten", - "rewards_remaining_balance" => "Saldo Spaarpunten is ", - "account_number" => "Btw-nummer", - "add_payment" => "Betaal", - "amount_due" => "Te betalen", - "amount_tendered" => "Ontvangen bedrag", - "authorized_signature" => "Handtekening", - "cancel_sale" => "Annuleer", - "cash" => "Contant", - "cash_1" => "", - "cash_2" => "", - "cash_3" => "", - "cash_4" => "", - "cash_adjustment" => "Liquiditeitsaanpassing", - "cash_deposit" => "Cash", - "cash_filter" => "Contant", - "change_due" => "Wisselgeld terug", - "change_price" => "Wijzig Verkoopprijs", - "check" => "Waardebon", - "check_balance" => "Waardebon terug", - "check_filter" => "Waardebon", - "close" => "", - "comment" => "Commentaar", - "comments" => "Commentaar", - "company_name" => "", - "complete" => "", - "complete_sale" => "Bevestig", - "confirm_cancel_sale" => "Weet u zeker dat u deze verkoop wilt annuleren? Alle items zullen worden gewist.", - "confirm_delete" => "Bent u zeker dat u de geselecteerde aankopen wil verwijderen?", - "confirm_restore" => "Bent u zeker dat u de geselecteerde aankopen wil verwijderen?", - "credit" => "Kredietkaart", - "credit_deposit" => "Credit", - "credit_filter" => "Kredietkaart", - "current_table" => "", - "customer" => "Klant", - "customer_address" => "Customer Address", - "customer_discount" => "Korting", - "customer_email" => "Customer Email", - "customer_location" => "Customer Location", - "customer_mailchimp_status" => "MailChimp staat", - "customer_optional" => "(Optioneel)", - "customer_required" => "(Vereist)", - "customer_total" => "Totaal", - "customer_total_spent" => "", - "daily_sales" => "", - "date" => "Datum", - "date_range" => "Periode", - "date_required" => "Gelieve een correcte datum in te vullen.", - "date_type" => "Er moet een correcte datum ingevuld worden.", - "debit" => "Bancontact", - "debit_filter" => "", - "delete" => "Verwijderen Toegestaan", - "delete_confirmation" => "Weet u zeker dat u deze verkoop wilt verwijderen? Deze actie kan niet ongedaan worden gemaakt.", - "delete_entire_sale" => "Verwijder", - "delete_successful" => "De geselecteerde verko(o)p(en) werden verwijderd.", - "delete_unsuccessful" => "De geselecteerde aankopen konden niet worden verwijderd.", - "description_abbrv" => "Omschr.", - "discard" => "Annuleer", - "discard_quote" => "", - "discount" => "Korting", - "discount_included" => "% Korting", - "discount_short" => "%", - "due" => "Tegoed", - "due_filter" => "Tegoed", - "edit" => "Bewerk", - "edit_item" => "Bewaar", - "edit_sale" => "Bewerk Ticket", - "email_receipt" => "Email Ticket", - "employee" => "Werknemer", - "entry" => "Rij", - "error_editing_item" => "Fout bij bewerken", - "find_or_scan_item" => "Zoek/Scan Product", - "find_or_scan_item_or_receipt" => "Zoek/Scan Product of Ticket", - "giftcard" => "Cadeaubon", - "giftcard_balance" => "Cadeaubon Resterend", - "giftcard_filter" => "", - "giftcard_number" => "Cadeaubon nummer", - "group_by_category" => "Per Categorie", - "group_by_type" => "Per Type", - "hsn" => "HSN", - "id" => "Verkoop ID", - "include_prices" => "Prijzen inclusief?", - "invoice" => "Factuur", - "invoice_confirm" => "Deze factuur zal verstuurd worden naar", - "invoice_enable" => "Maak Factuur", - "invoice_filter" => "Facturen", - "invoice_no_email" => "Er werd geen email adres gevonden voor deze klant.", - "invoice_number" => "Factuur #", - "invoice_number_duplicate" => "Vul een uniek factuurnummer in.", - "invoice_sent" => "Factuur verstuurd naar", - "invoice_total" => "Totaal Factuur", - "invoice_type_custom_invoice" => "Factuur (custom_invoice.php)", - "invoice_type_custom_tax_invoice" => "Factuur (custom_tax_invoice.php)", - "invoice_type_invoice" => "Factuur (invoice.php)", - "invoice_type_tax_invoice" => "Factuur (tax_invoice.php)", - "invoice_unsent" => "Fout bij het versturen van factuur naar", - "invoice_update" => "Hernummer", - "item_insufficient_of_stock" => "Product is niet meer in voorraad.", - "item_name" => "Naam", - "item_number" => "Product #", - "item_out_of_stock" => "Product is niet meer in voorraad.", - "key_browser" => "Handige Snelkoppelingen", - "key_cancel" => "Annuleert Huidige Offerte/Factuur/Verkoop", - "key_customer_search" => "Klant Zoeken", - "key_finish_quote" => "Beëindig Offerte/Factuur zonder betaling", - "key_finish_sale" => "Betaling Toevoegen en Factuur/Verkoop Voltooien", - "key_full" => "Openen op Volledig Scherm", - "key_function" => "Function", - "key_help" => "Sneltoetsen", - "key_help_modal" => "Open Sneltoetsen Venster", - "key_in" => "Inzoomen", - "key_item_search" => "Artikel Zoeken", - "key_out" => "Uitzoomen", - "key_payment" => "Betaalmiddel Toevoegen", - "key_print" => "Huidige Pagina Afdrukken", - "key_restore" => "Originele Weergave/Vergroting Herstellen", - "key_search" => "Zoeken in Rapporten Tabellen", - "key_suspend" => "Huidige Verkoop Uitstellen", - "key_suspended" => "Toon Uitgestelde Verkopen", - "key_system" => "Systeem Sneltoetsen", - "key_tendered" => "Wijziging Aangeboden Bedrag", - "key_title" => "Sneltoetsen Verkoop", - "mc" => "", - "mode" => "Type Registratie", - "must_enter_numeric" => "Het ontvangen bedrag moet een numerieke waarde zijn.", - "must_enter_numeric_giftcard" => "Er moet een geldige code worden ingevuld voor de cadeaubon.", - "new_customer" => "Nieuwe klant", - "new_item" => "Nieuw Product", - "no_description" => "Geen", - "no_filter" => "Alle", - "no_items_in_cart" => "Er zijn geen verkopen geselecteerd.", - "no_sales_to_display" => "Er werden geen verkopen gevonden.", - "none_selected" => "U hebt geen verkopen geselecteerd.", - "nontaxed_ind" => " . ", - "not_authorized" => "Deze actie is niet toegestaan.", - "one_or_multiple" => "Verkoop(en)", - "payment" => "Betaalmethode", - "payment_amount" => "Bedrag", - "payment_not_cover_total" => "Betaalde hoeveelheid is onvoldoende.", - "payment_type" => "Type", - "payments" => "", - "payments_total" => "Betaald bedrag", - "price" => "Prijs", - "print_after_sale" => "Print Ticket", - "quantity" => "Aantal", - "quantity_less_than_reorder_level" => "Waarschuwing, de gewenste hoeveelheid stock is overschreden.", - "quantity_less_than_zero" => "Waarschuwing: Gewenste hoeveelheid is onvoldoende. U kunt de verkoop nog steeds verwerken, maar controleer uw inventaris.", - "quantity_of_items" => "Hoeveelheid van {0} items", - "quote" => "Offerte", - "quote_number" => "Offertenummer", - "quote_number_duplicate" => "Offertenummer moet uniek zijn.", - "quote_sent" => "Offerte verzonden naar", - "quote_unsent" => "Offerte kon niet verzonden worden naar", - "receipt" => "Ticket #", - "receipt_no_email" => "De klant heeft geen geldig email adres.", - "receipt_number" => "Ticket #", - "receipt_sent" => "Ticket verstuurd naar", - "receipt_unsent" => "Fout bij het versturen van ticket naar", - "refund" => "Type Terugbetaling", - "register" => "Kassa", - "remove_customer" => "Verwijder Klant", - "remove_discount" => "", - "return" => "Retour", - "rewards" => "Punten", - "rewards_balance" => "Punten Balans", - "sale" => "Verkoop", - "sale_by_invoice" => "Verkoop op Factuur", - "sale_for_customer" => "Klant:", - "sale_time" => "Datum", - "sales_tax" => "VAT", - "sales_total" => "", - "select_customer" => "Selecteer Klant", - "send_invoice" => "Verstuur Factuur", - "send_quote" => "Verstuur Offerte", - "send_receipt" => "Verstuur Ticket", - "send_work_order" => "Verstuur Werkorder", - "serial" => "Nummer", - "service_charge" => "", - "show_due" => "", - "show_invoice" => "Toon Factuur", - "show_receipt" => "Toon Ticket", - "start_typing_customer_name" => "Typ naam klant...", - "start_typing_item_name" => "Typ naam product of barcode...", - "stock" => "Voorraad", - "stock_location" => "Stock Locatie", - "sub_total" => "Subtotaal", - "successfully_deleted" => "Uw aankoop werd verwijderd", - "successfully_restored" => "U hebt hersteld", - "successfully_suspended_sale" => "Wijzigingen bewaard voor verkoop.", - "successfully_updated" => "Verkoop Update Geslaagd.", - "suspend_sale" => "Bewaar", - "suspended_doc_id" => "Document", - "suspended_sale_id" => "ID", - "suspended_sales" => "Bewaarde Aankopen", - "table" => "Tafel", - "takings" => "Overzicht", - "tax" => "VAT", - "tax_id" => "Tax id", - "tax_invoice" => "Vat Factuur", - "tax_percent" => "VAT %", - "taxed_ind" => "T", - "total" => "Totaal", - "total_tax_exclusive" => "Totaal", - "transaction_failed" => "Transactie mislukt.", - "unable_to_add_item" => "Artikel toevoegen aan Verkoop mislukt", - "unsuccessfully_deleted" => "De aankoop kon niet verwijderd worden.", - "unsuccessfully_restored" => "De verkoop kon niet hersteld worden.", - "unsuccessfully_suspended_sale" => "Uw verkoop werd niet bewaard.", - "unsuccessfully_updated" => "Fout bij het bewaren van verkoop.", - "unsuspend" => "Hervat", - "unsuspend_and_delete" => "Actie", - "update" => "Bewerk", - "upi" => "UPI", - "visa" => "", - "wholesale" => "", - "work_order" => "Werkorder", - "work_order_number" => "Werkorder Nummer", - "work_order_number_duplicate" => "Werkorder Nummer moet uniek zijn.", - "work_order_sent" => "Werkorder verzonder naar", - "work_order_unsent" => "Werkorder kon niet verzonden worden naar", + "customers_available_points" => "Beschikbare Punten", + "rewards_package" => "Spaarpunten", + "rewards_remaining_balance" => "Saldo Spaarpunten is ", + "account_number" => "Btw-nummer", + "add_payment" => "Betaal", + "amount_due" => "Te betalen", + "amount_tendered" => "Ontvangen bedrag", + "authorized_signature" => "Handtekening", + "cancel_sale" => "Annuleer", + "cash" => "Contant", + "cash_1" => "", + "cash_2" => "", + "cash_3" => "", + "cash_4" => "", + "cash_adjustment" => "Liquiditeitsaanpassing", + "cash_deposit" => "Cash", + "cash_filter" => "Contant", + "change_due" => "Wisselgeld terug", + "change_price" => "Wijzig Verkoopprijs", + "check" => "Waardebon", + "check_balance" => "Waardebon terug", + "check_filter" => "Waardebon", + "close" => "", + "comment" => "Commentaar", + "comments" => "Commentaar", + "company_name" => "", + "complete" => "", + "complete_sale" => "Bevestig", + "confirm_cancel_sale" => "Weet u zeker dat u deze verkoop wilt annuleren? Alle items zullen worden gewist.", + "confirm_delete" => "Bent u zeker dat u de geselecteerde aankopen wil verwijderen?", + "confirm_restore" => "Bent u zeker dat u de geselecteerde aankopen wil verwijderen?", + "credit" => "Kredietkaart", + "credit_deposit" => "Credit", + "credit_filter" => "Kredietkaart", + "current_table" => "", + "customer" => "Klant", + "customer_address" => "Customer Address", + "customer_discount" => "Korting", + "customer_email" => "Customer Email", + "customer_location" => "Customer Location", + "customer_mailchimp_status" => "MailChimp staat", + "customer_optional" => "(Optioneel)", + "customer_required" => "(Vereist)", + "customer_total" => "Totaal", + "customer_total_spent" => "", + "daily_sales" => "", + "date" => "Datum", + "date_range" => "Periode", + "date_required" => "Gelieve een correcte datum in te vullen.", + "date_type" => "Er moet een correcte datum ingevuld worden.", + "debit" => "Bancontact", + "debit_filter" => "", + "delete" => "Verwijderen Toegestaan", + "delete_confirmation" => "Weet u zeker dat u deze verkoop wilt verwijderen? Deze actie kan niet ongedaan worden gemaakt.", + "delete_entire_sale" => "Verwijder", + "delete_successful" => "De geselecteerde verko(o)p(en) werden verwijderd.", + "delete_unsuccessful" => "De geselecteerde aankopen konden niet worden verwijderd.", + "description_abbrv" => "Omschr.", + "discard" => "Annuleer", + "discard_quote" => "", + "discount" => "Korting", + "discount_included" => "% Korting", + "discount_short" => "%", + "due" => "Tegoed", + "due_filter" => "Tegoed", + "edit" => "Bewerk", + "edit_item" => "Bewaar", + "edit_sale" => "Bewerk Ticket", + "email_receipt" => "Email Ticket", + "employee" => "Werknemer", + "entry" => "Rij", + "error_editing_item" => "Fout bij bewerken", + "find_or_scan_item" => "Zoek/Scan Product", + "find_or_scan_item_or_receipt" => "Zoek/Scan Product of Ticket", + "giftcard" => "Cadeaubon", + "giftcard_balance" => "Cadeaubon Resterend", + "giftcard_filter" => "", + "giftcard_number" => "Cadeaubon nummer", + "group_by_category" => "Per Categorie", + "group_by_type" => "Per Type", + "hsn" => "HSN", + "id" => "Verkoop ID", + "include_prices" => "Prijzen inclusief?", + "invoice" => "Factuur", + "invoice_confirm" => "Deze factuur zal verstuurd worden naar", + "invoice_enable" => "Maak Factuur", + "invoice_filter" => "Facturen", + "invoice_no_email" => "Er werd geen email adres gevonden voor deze klant.", + "invoice_number" => "Factuur #", + "invoice_number_duplicate" => "Vul een uniek factuurnummer in.", + "invoice_sent" => "Factuur verstuurd naar", + "invoice_total" => "Totaal Factuur", + "invoice_type_custom_invoice" => "Factuur (custom_invoice.php)", + "invoice_type_custom_tax_invoice" => "Factuur (custom_tax_invoice.php)", + "invoice_type_invoice" => "Factuur (invoice.php)", + "invoice_type_tax_invoice" => "Factuur (tax_invoice.php)", + "invoice_unsent" => "Fout bij het versturen van factuur naar", + "invoice_update" => "Hernummer", + "item_insufficient_of_stock" => "Product is niet meer in voorraad.", + "item_name" => "Naam", + "item_number" => "Product #", + "item_out_of_stock" => "Product is niet meer in voorraad.", + "key_browser" => "Handige Snelkoppelingen", + "key_cancel" => "Annuleert Huidige Offerte/Factuur/Verkoop", + "key_customer_search" => "Klant Zoeken", + "key_finish_quote" => "Beëindig Offerte/Factuur zonder betaling", + "key_finish_sale" => "Betaling Toevoegen en Factuur/Verkoop Voltooien", + "key_full" => "Openen op Volledig Scherm", + "key_function" => "Function", + "key_help" => "Sneltoetsen", + "key_help_modal" => "Open Sneltoetsen Venster", + "key_in" => "Inzoomen", + "key_item_search" => "Artikel Zoeken", + "key_out" => "Uitzoomen", + "key_payment" => "Betaalmiddel Toevoegen", + "key_print" => "Huidige Pagina Afdrukken", + "key_restore" => "Originele Weergave/Vergroting Herstellen", + "key_search" => "Zoeken in Rapporten Tabellen", + "key_suspend" => "Huidige Verkoop Uitstellen", + "key_suspended" => "Toon Uitgestelde Verkopen", + "key_system" => "Systeem Sneltoetsen", + "key_tendered" => "Wijziging Aangeboden Bedrag", + "key_title" => "Sneltoetsen Verkoop", + "mc" => "", + "mode" => "Type Registratie", + "must_enter_numeric" => "Het ontvangen bedrag moet een numerieke waarde zijn.", + "must_enter_numeric_giftcard" => "Er moet een geldige code worden ingevuld voor de cadeaubon.", + "new_customer" => "Nieuwe klant", + "new_item" => "Nieuw Product", + "no_description" => "Geen", + "no_filter" => "Alle", + "no_items_in_cart" => "Er zijn geen verkopen geselecteerd.", + "no_sales_to_display" => "Er werden geen verkopen gevonden.", + "none_selected" => "U hebt geen verkopen geselecteerd.", + "nontaxed_ind" => " . ", + "not_authorized" => "Deze actie is niet toegestaan.", + "one_or_multiple" => "Verkoop(en)", + "payment" => "Betaalmethode", + "payment_amount" => "Bedrag", + "payment_not_cover_total" => "Betaalde hoeveelheid is onvoldoende.", + "payment_type" => "Type", + "payments" => "", + "payments_total" => "Betaald bedrag", + "price" => "Prijs", + "print_after_sale" => "Print Ticket", + "quantity" => "Aantal", + "quantity_less_than_reorder_level" => "Waarschuwing, de gewenste hoeveelheid stock is overschreden.", + "quantity_less_than_zero" => "Waarschuwing: Gewenste hoeveelheid is onvoldoende. U kunt de verkoop nog steeds verwerken, maar controleer uw inventaris.", + "quantity_of_items" => "Hoeveelheid van {0} items", + "quote" => "Offerte", + "quote_number" => "Offertenummer", + "quote_number_duplicate" => "Offertenummer moet uniek zijn.", + "quote_sent" => "Offerte verzonden naar", + "quote_unsent" => "Offerte kon niet verzonden worden naar", + "receipt" => "Ticket #", + "receipt_no_email" => "De klant heeft geen geldig email adres.", + "receipt_number" => "Ticket #", + "receipt_sent" => "Ticket verstuurd naar", + "receipt_unsent" => "Fout bij het versturen van ticket naar", + "refund" => "Type Terugbetaling", + "register" => "Kassa", + "remove_customer" => "Verwijder Klant", + "remove_discount" => "", + "return" => "Retour", + "rewards" => "Punten", + "rewards_balance" => "Punten Balans", + "sale" => "Verkoop", + "sale_by_invoice" => "Verkoop op Factuur", + "sale_for_customer" => "Klant:", + "sale_time" => "Datum", + "sales_tax" => "VAT", + "sales_total" => "", + "select_customer" => "Selecteer Klant", + "send_invoice" => "Verstuur Factuur", + "send_quote" => "Verstuur Offerte", + "send_receipt" => "Verstuur Ticket", + "send_work_order" => "Verstuur Werkorder", + "serial" => "Nummer", + "service_charge" => "", + "show_due" => "", + "show_invoice" => "Toon Factuur", + "show_receipt" => "Toon Ticket", + "start_typing_customer_name" => "Typ naam klant...", + "start_typing_item_name" => "Typ naam product of barcode...", + "stock" => "Voorraad", + "stock_location" => "Stock Locatie", + "sub_total" => "Subtotaal", + "successfully_deleted" => "Uw aankoop werd verwijderd", + "successfully_restored" => "U hebt hersteld", + "successfully_suspended_sale" => "Wijzigingen bewaard voor verkoop.", + "successfully_updated" => "Verkoop Update Geslaagd.", + "suspend_sale" => "Bewaar", + "suspended_doc_id" => "Document", + "suspended_sale_id" => "ID", + "suspended_sales" => "Bewaarde Aankopen", + "table" => "Tafel", + "takings" => "Overzicht", + "tax" => "VAT", + "tax_id" => "Tax id", + "tax_invoice" => "Vat Factuur", + "tax_percent" => "VAT %", + "taxed_ind" => "T", + "total" => "Totaal", + "total_tax_exclusive" => "Totaal", + "transaction_failed" => "Transactie mislukt.", + "unable_to_add_item" => "Artikel toevoegen aan Verkoop mislukt", + "unsuccessfully_deleted" => "De aankoop kon niet verwijderd worden.", + "unsuccessfully_restored" => "De verkoop kon niet hersteld worden.", + "unsuccessfully_suspended_sale" => "Uw verkoop werd niet bewaard.", + "unsuccessfully_updated" => "Fout bij het bewaren van verkoop.", + "unsuspend" => "Hervat", + "unsuspend_and_delete" => "Actie", + "update" => "Bewerk", + "upi" => "UPI", + "visa" => "", + "wholesale" => "", + "work_order" => "Werkorder", + "work_order_number" => "Werkorder Nummer", + "work_order_number_duplicate" => "Werkorder Nummer moet uniek zijn.", + "work_order_sent" => "Werkorder verzonder naar", + "work_order_unsent" => "Werkorder kon niet verzonden worden naar", ]; diff --git a/app/Language/nl-BE/Suppliers.php b/app/Language/nl-BE/Suppliers.php index a377e16fd..cd3290d99 100644 --- a/app/Language/nl-BE/Suppliers.php +++ b/app/Language/nl-BE/Suppliers.php @@ -1,24 +1,24 @@ "Btw nummer", - "agency_name" => "Agencynaam", - "cannot_be_deleted" => "De geselecteeerde leveranciers konden niet worden verwijderd. Eén of meerdere leveranciers hebben ordergegevens in de database zitten.", - "category" => "Categorie", - "company_name" => "Leverancier", - "company_name_required" => "Bedrijfsnaam moet ingevuld worden.", - "confirm_delete" => "Bent u zeker dat u de geselecteerde leveranciers wil verwijderen?", - "confirm_restore" => "Bent u zeker dat u de geselecteerde leverancier(s) wil herstellen?", - "cost" => "Kostprijs Leverancier", - "error_adding_updating" => "Fout bij het toevoegen/aanpassen van een leverancier.", - "goods" => "Goederen Leverancier", - "new" => "N. Leverancier", - "none_selected" => "U hebt geen leveranciers geselecteerd om te verwijderen.", - "one_or_multiple" => "leverancier(s) verwijderd", - "successful_adding" => "Leverancier succesvol toegevoegd", - "successful_deleted" => "Er werd(en)", - "successful_updating" => "Wijzigingen leveranciersgegevens bewaard", - "supplier" => "Leverancier", - "supplier_id" => "Id", - "tax_id" => "BTW Id", - "update" => "Bewerk Leverancier", + "account_number" => "Btw nummer", + "agency_name" => "Agencynaam", + "cannot_be_deleted" => "De geselecteeerde leveranciers konden niet worden verwijderd. Eén of meerdere leveranciers hebben ordergegevens in de database zitten.", + "category" => "Categorie", + "company_name" => "Leverancier", + "company_name_required" => "Bedrijfsnaam moet ingevuld worden.", + "confirm_delete" => "Bent u zeker dat u de geselecteerde leveranciers wil verwijderen?", + "confirm_restore" => "Bent u zeker dat u de geselecteerde leverancier(s) wil herstellen?", + "cost" => "Kostprijs Leverancier", + "error_adding_updating" => "Fout bij het toevoegen/aanpassen van een leverancier.", + "goods" => "Goederen Leverancier", + "new" => "N. Leverancier", + "none_selected" => "U hebt geen leveranciers geselecteerd om te verwijderen.", + "one_or_multiple" => "leverancier(s) verwijderd", + "successful_adding" => "Leverancier succesvol toegevoegd", + "successful_deleted" => "Er werd(en)", + "successful_updating" => "Wijzigingen leveranciersgegevens bewaard", + "supplier" => "Leverancier", + "supplier_id" => "Id", + "tax_id" => "BTW Id", + "update" => "Bewerk Leverancier", ]; diff --git a/app/Language/nl-BE/Taxes.php b/app/Language/nl-BE/Taxes.php index 106759543..fba324c14 100644 --- a/app/Language/nl-BE/Taxes.php +++ b/app/Language/nl-BE/Taxes.php @@ -1,82 +1,82 @@ "Voeg uitzondering toe", - "cascade" => "Cascade", - "cascade_sequence" => "Cascade Sequentie", - "city" => "Stad", - "code" => "Code", - "confirm_delete" => "Bent u zeker dat u deze code wil verwijderen? Dit kan niet ongedaan gemaakt worden", - "confirm_restore" => "Weet u zeker dat u geselecteerde belastingcode(s) wilt terugzetten?", - "default_tax_category" => "Standaard BTW Categorie", - "default_tax_rate" => "Standaard BTW-tarief", - "error_adding_updating" => "BTW-code toevoegen of bijwerken mislukt", - "group_seq" => "Groep Seq", - "jurisdiction_name" => "Rechtsgebied Naam", - "name" => "Naam", - "new" => "Nieuwe BTW", - "no_taxes" => "", - "no_taxes_to_display" => "Geen BTW-code beschikbaar om weer te geven", - "reporting_authority" => "Rapportage-Instantie", - "round_half_down" => "Half Omlaag", - "round_half_even" => "De Helft Zelfs", - "round_half_odd" => "Half Oneven", - "round_half_up" => "Half Omhoog", - "rounding_code" => "Afronding Code", - "sales_tax" => "Verkoopbelasting", - "sales_tax_by_invoice" => "Verkoopbelasting per factuur", - "sequence" => "Seq.", - "state" => "Staat", - "successful_deleted" => "Je hebt succesvol verwijderd", - "tax_categories" => "BTW Categorieën", - "tax_categories_configuration" => "BTW Categorieën Configuratie", - "tax_categories_saved_successfully" => "BTW-Categorie wijzigingen opgeslagen", - "tax_categories_saved_unsuccessfully" => "BTW-Categorie wijzigingen niet opgeslagen", - "tax_category" => "BTW-Categorie", - "tax_category_code" => "BTW-Categorie Code", - "tax_category_duplicate" => "Dubbele BTW-categorie", - "tax_category_invalid_chars" => "Ongeldige tekens in de naam van de BTW-categorie", - "tax_category_name" => "BTW-Categorie Naam", - "tax_category_new" => "Nieuwe BTW-Categorie", - "tax_category_required" => "BTW-Categorie is verplicht", - "tax_code" => "BTW Code", - "tax_code_cannot_be_deleted" => "BTW-Code verwijderen mislukt", - "tax_code_duplicate" => "Dubbele BTW-Code", - "tax_code_invalid_chars" => "Ongeldige tekens in BTW-Code", - "tax_code_name" => "BTW-Code Naam", - "tax_code_required" => "BTW-Code is een verplicht veld", - "tax_code_successful_deleted" => "Je hebt met succes de BTW-Code verwijderd", - "tax_code_successful_updated" => "U heeft succesvol bijgewerkt", - "tax_code_successful_updating" => "Je hebt met succes de BTW-Code bijgewerkt", - "tax_code_successfully_added" => "Je hebt succesvol toegevoegd", - "tax_code_type" => "BTW Code Type", - "tax_codes" => "BTW Codes", - "tax_codes_configuration" => "BTW-Codes Configuratie", - "tax_codes_saved_successfully" => "BTW-Code wijzigingen opgeslagen", - "tax_codes_saved_unsuccessfully" => "BTW-Code wijzigingen niet opgeslagen", - "tax_excluded" => "Exclusief BTW", - "tax_group" => "BTW Groep", - "tax_group_not_unique" => "BTW-Groep {0} is niet uniek", - "tax_group_sequence" => "BTW-Groep Volgorde", - "tax_included" => "BTW Inbegrepen", - "tax_jurisdiction" => "BTW Bevoegdheid", - "tax_jurisdiction_duplicate" => "Dubbele BTW Bevoegdheid", - "tax_jurisdiction_invalid_chars" => "Ongeldige tekens in de naam van het bevoegd gerecht", - "tax_jurisdiction_required" => "BTW bevoegdheid is vereist", - "tax_jurisdictions" => "BTW-Rechtsgebieden", - "tax_jurisdictions_configuration" => "BTW-Rechtsgebied Configuratie", - "tax_jurisdictions_saved_successfully" => "BTW-Rechtsgebied wijzigingen opgeslagen", - "tax_jurisdictions_saved_unsuccessfully" => "BTW-Rechtsgebied wijzigingen niet opgeslagen", - "tax_rate" => "BTW-Tarief", - "tax_rate_configuration" => "BTW-Tarief Configuratie", - "tax_rate_error_adding_updating" => "BTW-Tarief toevoegen of bijwerken mislukt", - "tax_rate_numeric" => "BTW-tarief moet een getal zijn", - "tax_rate_required" => "BTW-Tarief is een verplicht veld", - "tax_rate_successful_updated" => "Je hebt met succes bijgewerkt", - "tax_rate_successfully_added" => "Je hebt succesvol toegevoegd", - "tax_rates" => "BTW-Tarieven", - "tax_rates_configuration" => "BTW-Tarieven Configuratie", - "tax_rounding" => "BTW-Afronding", - "tax_type" => "BTW Type", - "update" => "BTW-Tarief Bijwerken", - "vat_tax" => "BTW Belasting", + "add_exception" => "Voeg uitzondering toe", + "cascade" => "Cascade", + "cascade_sequence" => "Cascade Sequentie", + "city" => "Stad", + "code" => "Code", + "confirm_delete" => "Bent u zeker dat u deze code wil verwijderen? Dit kan niet ongedaan gemaakt worden", + "confirm_restore" => "Weet u zeker dat u geselecteerde belastingcode(s) wilt terugzetten?", + "default_tax_category" => "Standaard BTW Categorie", + "default_tax_rate" => "Standaard BTW-tarief", + "error_adding_updating" => "BTW-code toevoegen of bijwerken mislukt", + "group_seq" => "Groep Seq", + "jurisdiction_name" => "Rechtsgebied Naam", + "name" => "Naam", + "new" => "Nieuwe BTW", + "no_taxes" => "", + "no_taxes_to_display" => "Geen BTW-code beschikbaar om weer te geven", + "reporting_authority" => "Rapportage-Instantie", + "round_half_down" => "Half Omlaag", + "round_half_even" => "De Helft Zelfs", + "round_half_odd" => "Half Oneven", + "round_half_up" => "Half Omhoog", + "rounding_code" => "Afronding Code", + "sales_tax" => "Verkoopbelasting", + "sales_tax_by_invoice" => "Verkoopbelasting per factuur", + "sequence" => "Seq.", + "state" => "Staat", + "successful_deleted" => "Je hebt succesvol verwijderd", + "tax_categories" => "BTW Categorieën", + "tax_categories_configuration" => "BTW Categorieën Configuratie", + "tax_categories_saved_successfully" => "BTW-Categorie wijzigingen opgeslagen", + "tax_categories_saved_unsuccessfully" => "BTW-Categorie wijzigingen niet opgeslagen", + "tax_category" => "BTW-Categorie", + "tax_category_code" => "BTW-Categorie Code", + "tax_category_duplicate" => "Dubbele BTW-categorie", + "tax_category_invalid_chars" => "Ongeldige tekens in de naam van de BTW-categorie", + "tax_category_name" => "BTW-Categorie Naam", + "tax_category_new" => "Nieuwe BTW-Categorie", + "tax_category_required" => "BTW-Categorie is verplicht", + "tax_code" => "BTW Code", + "tax_code_cannot_be_deleted" => "BTW-Code verwijderen mislukt", + "tax_code_duplicate" => "Dubbele BTW-Code", + "tax_code_invalid_chars" => "Ongeldige tekens in BTW-Code", + "tax_code_name" => "BTW-Code Naam", + "tax_code_required" => "BTW-Code is een verplicht veld", + "tax_code_successful_deleted" => "Je hebt met succes de BTW-Code verwijderd", + "tax_code_successful_updated" => "U heeft succesvol bijgewerkt", + "tax_code_successful_updating" => "Je hebt met succes de BTW-Code bijgewerkt", + "tax_code_successfully_added" => "Je hebt succesvol toegevoegd", + "tax_code_type" => "BTW Code Type", + "tax_codes" => "BTW Codes", + "tax_codes_configuration" => "BTW-Codes Configuratie", + "tax_codes_saved_successfully" => "BTW-Code wijzigingen opgeslagen", + "tax_codes_saved_unsuccessfully" => "BTW-Code wijzigingen niet opgeslagen", + "tax_excluded" => "Exclusief BTW", + "tax_group" => "BTW Groep", + "tax_group_not_unique" => "BTW-Groep {0} is niet uniek", + "tax_group_sequence" => "BTW-Groep Volgorde", + "tax_included" => "BTW Inbegrepen", + "tax_jurisdiction" => "BTW Bevoegdheid", + "tax_jurisdiction_duplicate" => "Dubbele BTW Bevoegdheid", + "tax_jurisdiction_invalid_chars" => "Ongeldige tekens in de naam van het bevoegd gerecht", + "tax_jurisdiction_required" => "BTW bevoegdheid is vereist", + "tax_jurisdictions" => "BTW-Rechtsgebieden", + "tax_jurisdictions_configuration" => "BTW-Rechtsgebied Configuratie", + "tax_jurisdictions_saved_successfully" => "BTW-Rechtsgebied wijzigingen opgeslagen", + "tax_jurisdictions_saved_unsuccessfully" => "BTW-Rechtsgebied wijzigingen niet opgeslagen", + "tax_rate" => "BTW-Tarief", + "tax_rate_configuration" => "BTW-Tarief Configuratie", + "tax_rate_error_adding_updating" => "BTW-Tarief toevoegen of bijwerken mislukt", + "tax_rate_numeric" => "BTW-tarief moet een getal zijn", + "tax_rate_required" => "BTW-Tarief is een verplicht veld", + "tax_rate_successful_updated" => "Je hebt met succes bijgewerkt", + "tax_rate_successfully_added" => "Je hebt succesvol toegevoegd", + "tax_rates" => "BTW-Tarieven", + "tax_rates_configuration" => "BTW-Tarieven Configuratie", + "tax_rounding" => "BTW-Afronding", + "tax_type" => "BTW Type", + "update" => "BTW-Tarief Bijwerken", + "vat_tax" => "BTW Belasting", ]; diff --git a/app/Language/nl-BE/index.html b/app/Language/nl-BE/index.html index b702fbc39..69df4e1df 100644 --- a/app/Language/nl-BE/index.html +++ b/app/Language/nl-BE/index.html @@ -1,7 +1,7 @@ - 403 Forbidden + 403 Forbidden diff --git a/app/Language/nl-NL/Attributes.php b/app/Language/nl-NL/Attributes.php index d4761a249..5236dc48d 100644 --- a/app/Language/nl-NL/Attributes.php +++ b/app/Language/nl-NL/Attributes.php @@ -1,32 +1,32 @@ "Kenmerkwaarde mag niet '_' of '|' bevatten", - "confirm_delete" => "Weet u zeker dat u de geselecteerde kenmerken wilt verwijderen?", - "confirm_restore" => "Weet u zeker dat u de geselecteerde kenmerken wilt herstellen?", - "definition_cannot_be_deleted" => "Kan geselecteerde kenmerk(en) niet verwijderen", - "definition_error_adding_updating" => "Kenmerk {0} kan niet worden toegevoegd of bijgewerkt. Bekijk het foutenlogboek.", - "definition_flags" => "Kenmerk zichtbaarheid", - "definition_group" => "Groep", - "definition_id" => "Id", - "definition_name" => "Kenmerk toevoegen", - "definition_name_required" => "Kenmerknaam is een vereist veld", - "definition_one_or_multiple" => "kenmerk(en)", - "definition_successful_adding" => "U heeft een artikel toegevoegd", - "definition_successful_deleted" => "U heeft verwijderd", - "definition_successful_updating" => "U heeft het kenmerk bijgewerkt", - "definition_type" => "Kenmerk soort", - "definition_type_required" => "Kenmerk soort is een vereist veld", - "definition_unit" => "Maateenheid", - "definition_values" => "Kenmerkwaarden", - "new" => "Nieuw kenmerk", - "no_attributes_to_display" => "Geen artikelen om te weergeven", - "receipt_visibility" => "Kassabon", - "show_in_items" => "Weergeven in artikelen", - "show_in_items_visibility" => "Artikelen", - "show_in_receipt" => "Weergeven op kassabon", - "show_in_receivings" => "Weergeven in leveringen", - "show_in_receivings_visibility" => "Leveringen", - "show_in_sales" => "Weergeven in verkopen", - "show_in_sales_visibility" => "Verkopen", - "update" => "Kenmerk bijwerken", + "attribute_value_invalid_chars" => "Kenmerkwaarde mag niet '_' of '|' bevatten", + "confirm_delete" => "Weet u zeker dat u de geselecteerde kenmerken wilt verwijderen?", + "confirm_restore" => "Weet u zeker dat u de geselecteerde kenmerken wilt herstellen?", + "definition_cannot_be_deleted" => "Kan geselecteerde kenmerk(en) niet verwijderen", + "definition_error_adding_updating" => "Kenmerk {0} kan niet worden toegevoegd of bijgewerkt. Bekijk het foutenlogboek.", + "definition_flags" => "Kenmerk zichtbaarheid", + "definition_group" => "Groep", + "definition_id" => "Id", + "definition_name" => "Kenmerk toevoegen", + "definition_name_required" => "Kenmerknaam is een vereist veld", + "definition_one_or_multiple" => "kenmerk(en)", + "definition_successful_adding" => "U heeft een artikel toegevoegd", + "definition_successful_deleted" => "U heeft verwijderd", + "definition_successful_updating" => "U heeft het kenmerk bijgewerkt", + "definition_type" => "Kenmerk soort", + "definition_type_required" => "Kenmerk soort is een vereist veld", + "definition_unit" => "Maateenheid", + "definition_values" => "Kenmerkwaarden", + "new" => "Nieuw kenmerk", + "no_attributes_to_display" => "Geen artikelen om te weergeven", + "receipt_visibility" => "Kassabon", + "show_in_items" => "Weergeven in artikelen", + "show_in_items_visibility" => "Artikelen", + "show_in_receipt" => "Weergeven op kassabon", + "show_in_receivings" => "Weergeven in leveringen", + "show_in_receivings_visibility" => "Leveringen", + "show_in_sales" => "Weergeven in verkopen", + "show_in_sales_visibility" => "Verkopen", + "update" => "Kenmerk bijwerken", ]; diff --git a/app/Language/nl-NL/Bootstrap_tables.php b/app/Language/nl-NL/Bootstrap_tables.php index ebf1d56f6..6a7e2cb37 100644 --- a/app/Language/nl-NL/Bootstrap_tables.php +++ b/app/Language/nl-NL/Bootstrap_tables.php @@ -1,11 +1,11 @@ "alles", - "columns" => "Kolommen", - "hide_show_pagination" => "Verbergen/weergeven paginering", - "loading" => "Laden, een ogenblik geduld...", - "page_from_to" => "{0} tot {1} van {2} rijen weergegeven", - "refresh" => "Vernieuwen", - "rows_per_page" => "{0} rijen per pagina", - "toggle" => "Wisselen", + "all" => "alles", + "columns" => "Kolommen", + "hide_show_pagination" => "Verbergen/weergeven paginering", + "loading" => "Laden, een ogenblik geduld...", + "page_from_to" => "{0} tot {1} van {2} rijen weergegeven", + "refresh" => "Vernieuwen", + "rows_per_page" => "{0} rijen per pagina", + "toggle" => "Wisselen", ]; diff --git a/app/Language/nl-NL/Cashups.php b/app/Language/nl-NL/Cashups.php index a1b44fedc..e1325b74f 100644 --- a/app/Language/nl-NL/Cashups.php +++ b/app/Language/nl-NL/Cashups.php @@ -1,49 +1,49 @@ "Bedrag", - "amount_number" => "Bedrag moet een getal zijn", - "amount_required" => "Bedrag is een vereist veld.", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "Kan kasopmaak niet verwijderen", - "cash_difference" => "", - "close_date" => "Datum sluiting", - "close_employee" => "Gesloten door", - "closed_amount_card" => "Passen", - "closed_amount_cash" => "Contacten bij sluiting", - "closed_amount_check" => "Cheques", - "closed_amount_due" => "Openstaande posten", - "closed_amount_giftcard" => "", - "closed_amount_total" => "Totaal", - "closed_date" => "Datum gesloten", - "confirm_delete" => "Weet u zeker dat u de geselecteerde kasopmaak wilt verwijderen?", - "confirm_restore" => "Weet u zeker dat u de geselecteerde kasopmaak wilt herstellen?", - "confirm_submit" => "", - "date_number" => "Datum moet een getal zijn", - "date_required" => "Datum is een vereist veld", - "description" => "Beschrijving", - "enable_expected" => "", - "error_adding_updating" => "Fout bij toevoegen/bijwerken kasopmaak", - "giftcard" => "", - "id" => "ID", - "info" => "Kasopmaak info", - "info_employee" => "", - "is_deleted" => "Verwijderd", - "new" => "Nieuwe kasopmaak", - "no_cashups_to_display" => "Geen kasopmaak om te weergeven", - "none_selected" => "Geen kasopmaak geselecteerd", - "note" => "Notities", - "one_or_multiple" => "Kasopmaak", - "open_amount_cash" => "Contant bij opening", - "open_date" => "Datum opening", - "open_employee" => "Geopend door", - "opened_date" => "Datum geopend", - "successful_adding" => "Kasopmaak toegevoegd", - "successful_deleted" => "Kasopmaak verwijderd", - "successful_updating" => "Cashup bijgewerkt", - "total" => "Totaal", - "transfer_amount_cash" => "Contant in/uit", - "transfer_amount_cash_minus" => "", - "update" => "Kasopmaak bijwerken", - "warning" => "", + "amount" => "Bedrag", + "amount_number" => "Bedrag moet een getal zijn", + "amount_required" => "Bedrag is een vereist veld.", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "Kan kasopmaak niet verwijderen", + "cash_difference" => "", + "close_date" => "Datum sluiting", + "close_employee" => "Gesloten door", + "closed_amount_card" => "Passen", + "closed_amount_cash" => "Contacten bij sluiting", + "closed_amount_check" => "Cheques", + "closed_amount_due" => "Openstaande posten", + "closed_amount_giftcard" => "", + "closed_amount_total" => "Totaal", + "closed_date" => "Datum gesloten", + "confirm_delete" => "Weet u zeker dat u de geselecteerde kasopmaak wilt verwijderen?", + "confirm_restore" => "Weet u zeker dat u de geselecteerde kasopmaak wilt herstellen?", + "confirm_submit" => "", + "date_number" => "Datum moet een getal zijn", + "date_required" => "Datum is een vereist veld", + "description" => "Beschrijving", + "enable_expected" => "", + "error_adding_updating" => "Fout bij toevoegen/bijwerken kasopmaak", + "giftcard" => "", + "id" => "ID", + "info" => "Kasopmaak info", + "info_employee" => "", + "is_deleted" => "Verwijderd", + "new" => "Nieuwe kasopmaak", + "no_cashups_to_display" => "Geen kasopmaak om te weergeven", + "none_selected" => "Geen kasopmaak geselecteerd", + "note" => "Notities", + "one_or_multiple" => "Kasopmaak", + "open_amount_cash" => "Contant bij opening", + "open_date" => "Datum opening", + "open_employee" => "Geopend door", + "opened_date" => "Datum geopend", + "successful_adding" => "Kasopmaak toegevoegd", + "successful_deleted" => "Kasopmaak verwijderd", + "successful_updating" => "Cashup bijgewerkt", + "total" => "Totaal", + "transfer_amount_cash" => "Contant in/uit", + "transfer_amount_cash_minus" => "", + "update" => "Kasopmaak bijwerken", + "warning" => "", ]; diff --git a/app/Language/nl-NL/Common.php b/app/Language/nl-NL/Common.php index a103a37ae..13d96258c 100644 --- a/app/Language/nl-NL/Common.php +++ b/app/Language/nl-NL/Common.php @@ -1,88 +1,88 @@ "Adres 1", - "address_2" => "Adres 2", - "admin" => "", - "city" => "Plaats", - "clerk" => "", - "close" => "Sluiten", - "color" => "", - "comments" => "Opmerkingen", - "common" => "algemeen", - "confirm_search" => "U heeft één of meerdere rijen geselecteerd, deze zullen niet langer geselecteerd zijn na uw zoekopdracht. Weet u zeker dat u deze zoekopdracht wilt verzenden?", - "copyrights" => "© 2010 - {0}", - "correct_errors" => "Geïdentificeerd fouten oplossen voor het opslaan", - "country" => "Land", - "dashboard" => "", - "date" => "Datum", - "delete" => "Verwijderen", - "det" => "details", - "download_import_template" => "Importeer CSV sjabloon downloaden (CSV)", - "edit" => "bewerken", - "email" => "E-mail", - "email_invalid_format" => "Dit e-mailadres bevat niet de juiste indeling.", - "export_csv" => "CSV exporteren", - "export_csv_no" => "Nee", - "export_csv_yes" => "Ja", - "fields_required_message" => "Rode velden zijn vereist", - "fields_required_message_unique" => "", - "first_name" => "Voornaam", - "first_name_required" => "Voornaam is een vereist veld.", - "first_page" => "Eerste", - "gender" => "Geslacht", - "gender_female" => "V", - "gender_male" => "M", - "gender_undefined" => "", - "icon" => "Pictogram", - "id" => "ID", - "import" => "Importeren", - "import_change_file" => "Wijzigen", - "import_csv" => "CSV importeren", - "import_full_path" => "Volledige pad naar CSV-bestand vereist", - "import_remove_file" => "Verwijderen", - "import_select_file" => "Bestand selecteren", - "inv" => "ftr", - "last_name" => "Achternaam", - "last_name_required" => "Achternaam is een vereist veld.", - "last_page" => "Laatste", - "learn_about_project" => "om de laatste informatie over het project te bekijken.", - "list_of" => "Lijst van", - "logo" => "Logo", - "logo_mark" => "", - "logout" => "Afmelden", - "manager" => "", - "migration_needed" => "Een databasemigratie naar {0} zal starten na aanmelding.", - "new" => "Nieuw", - "no" => "", - "no_persons_to_display" => "Er zijn geen personen om te weergeven.", - "none_selected_text" => "[Selecteren]", - "or" => "OF", - "people" => "", - "phone_number" => "Telefoonnummer", - "phone_number_required" => "", - "please_visit_my" => "Bezoek de", - "position" => "", - "powered_by" => "Mogelijk gemaakt door", - "price" => "Prijs", - "print" => "Afdrukken", - "remove" => "Verwijderen", - "required" => "Vereist", - "restore" => "Herstellen", - "return_policy" => "Retourbeleid", - "search" => "Zoeken", - "search_options" => "Zoek opties", - "searched_for" => "Gezocht naar", - "software_short" => "", - "software_title" => "", - "state" => "Provincie", - "submit" => "Verzenden", - "total_spent" => "Totaal uitgegeven", - "unknown" => "Onbekend", - "view_recent_sales" => "Recente verkopen bekijken", - "website" => "opensourcepos.org", - "welcome" => "Welkom", - "welcome_message" => "Welkom bij OSPOS, klik op een module hieronder om te beginnen.", - "yes" => "", - "you_are_using_ospos" => "", - "zip" => "Postcode", + "address_1" => "Adres 1", + "address_2" => "Adres 2", + "admin" => "", + "city" => "Plaats", + "clerk" => "", + "close" => "Sluiten", + "color" => "", + "comments" => "Opmerkingen", + "common" => "algemeen", + "confirm_search" => "U heeft één of meerdere rijen geselecteerd, deze zullen niet langer geselecteerd zijn na uw zoekopdracht. Weet u zeker dat u deze zoekopdracht wilt verzenden?", + "copyrights" => "© 2010 - {0}", + "correct_errors" => "Geïdentificeerd fouten oplossen voor het opslaan", + "country" => "Land", + "dashboard" => "", + "date" => "Datum", + "delete" => "Verwijderen", + "det" => "details", + "download_import_template" => "Importeer CSV sjabloon downloaden (CSV)", + "edit" => "bewerken", + "email" => "E-mail", + "email_invalid_format" => "Dit e-mailadres bevat niet de juiste indeling.", + "export_csv" => "CSV exporteren", + "export_csv_no" => "Nee", + "export_csv_yes" => "Ja", + "fields_required_message" => "Rode velden zijn vereist", + "fields_required_message_unique" => "", + "first_name" => "Voornaam", + "first_name_required" => "Voornaam is een vereist veld.", + "first_page" => "Eerste", + "gender" => "Geslacht", + "gender_female" => "V", + "gender_male" => "M", + "gender_undefined" => "", + "icon" => "Pictogram", + "id" => "ID", + "import" => "Importeren", + "import_change_file" => "Wijzigen", + "import_csv" => "CSV importeren", + "import_full_path" => "Volledige pad naar CSV-bestand vereist", + "import_remove_file" => "Verwijderen", + "import_select_file" => "Bestand selecteren", + "inv" => "ftr", + "last_name" => "Achternaam", + "last_name_required" => "Achternaam is een vereist veld.", + "last_page" => "Laatste", + "learn_about_project" => "om de laatste informatie over het project te bekijken.", + "list_of" => "Lijst van", + "logo" => "Logo", + "logo_mark" => "", + "logout" => "Afmelden", + "manager" => "", + "migration_needed" => "Een databasemigratie naar {0} zal starten na aanmelding.", + "new" => "Nieuw", + "no" => "", + "no_persons_to_display" => "Er zijn geen personen om te weergeven.", + "none_selected_text" => "[Selecteren]", + "or" => "OF", + "people" => "", + "phone_number" => "Telefoonnummer", + "phone_number_required" => "", + "please_visit_my" => "Bezoek de", + "position" => "", + "powered_by" => "Mogelijk gemaakt door", + "price" => "Prijs", + "print" => "Afdrukken", + "remove" => "Verwijderen", + "required" => "Vereist", + "restore" => "Herstellen", + "return_policy" => "Retourbeleid", + "search" => "Zoeken", + "search_options" => "Zoek opties", + "searched_for" => "Gezocht naar", + "software_short" => "", + "software_title" => "", + "state" => "Provincie", + "submit" => "Verzenden", + "total_spent" => "Totaal uitgegeven", + "unknown" => "Onbekend", + "view_recent_sales" => "Recente verkopen bekijken", + "website" => "opensourcepos.org", + "welcome" => "Welkom", + "welcome_message" => "Welkom bij OSPOS, klik op een module hieronder om te beginnen.", + "yes" => "", + "you_are_using_ospos" => "", + "zip" => "Postcode", ]; diff --git a/app/Language/nl-NL/Config.php b/app/Language/nl-NL/Config.php index 7cd68b59d..7c302d141 100644 --- a/app/Language/nl-NL/Config.php +++ b/app/Language/nl-NL/Config.php @@ -1,330 +1,330 @@ "Bedrijfsadres", - "address_required" => "Bedrijfsadres is een vereist veld.", - "all_set" => "Alle bestandsmachtigingen zijn juist ingesteld!", - "allow_duplicate_barcodes" => "Dezelfde streepjescodes toestaan", - "apostrophe" => "apostrof", - "backup_button" => "Reservekopie", - "backup_database" => "Reservekopie database", - "barcode" => "Streepjescode", - "barcode_company" => "Bedrijfsnaam", - "barcode_configuration" => "Streepjescode configuratie", - "barcode_content" => "Streepjescode inhoud", - "barcode_first_row" => "Rij 1", - "barcode_font" => "Lettertype", - "barcode_formats" => "Indelingen invoeren", - "barcode_generate_if_empty" => "Genereren wanneer leeg.", - "barcode_height" => "Hoogte (px)", - "barcode_id" => "Artikel ID/Naam", - "barcode_info" => "Streepjescode configuratie informatie", - "barcode_layout" => "Streepjescode indeling", - "barcode_name" => "Naam", - "barcode_number" => "Streepjescode", - "barcode_number_in_row" => "Nummer in rij", - "barcode_page_cellspacing" => "Pagina cel afstand weergeven.", - "barcode_page_width" => "Pagina breedte weergeven", - "barcode_price" => "Prijs", - "barcode_second_row" => "Rij 2", - "barcode_third_row" => "Rij 3", - "barcode_tooltip" => "Waarschuwing: Deze functie kan veroorzaken dat er dubbele items worden geïmporteerd of aangemaakt. Niet gebruiken als u geen dubbele streepjescodes wilt.", - "barcode_type" => "Streepjescode soort", - "barcode_width" => "Breedte (px)", - "bottom" => "Onderaan", - "cash_button" => "", - "cash_button_1" => "", - "cash_button_2" => "", - "cash_button_3" => "", - "cash_button_4" => "", - "cash_button_5" => "", - "cash_button_6" => "", - "cash_decimals" => "Contant decimalen", - "cash_decimals_tooltip" => "Wanneer contant decimalen en valuta decimalen gelijk zijn, vindt er geen contant afronding plaats. Tenzij contant afronding is ingesteld op halveren vijf.", - "cash_rounding" => "Contant afronding", - "category_dropdown" => "Categorie als vervolgkeuzelijst weergeven", - "center" => "Centreren", - "change_apperance_tooltip" => "", - "comma" => "komma", - "company" => "Bedrijfsnaam", - "company_avatar" => "", - "company_change_image" => "Afbeelding wijzigen", - "company_logo" => "Bedrijfslogo", - "company_remove_image" => "Afbeelding verwijderen", - "company_required" => "Bedrijfsnaam is een vereist veld", - "company_select_image" => "Afbeelding selecteren", - "company_website_url" => "Bedrijfswebsite is geen geldige URL (http://...).", - "country_codes" => "Land codes", - "country_codes_tooltip" => "Kommagescheiden lijst van land codes voor het opzoeken van adres bij naam.", - "currency_code" => "Valuta code", - "currency_decimals" => "Valuta decimalen", - "currency_symbol" => "Valuta symbool", - "current_employee_only" => "", - "customer_reward" => "Beloning", - "customer_reward_duplicate" => "Beloning moet uniek zijn.", - "customer_reward_enable" => "Klantbeloningen inschakelen", - "customer_reward_invalid_chars" => "Beloning met '_' niet bevatten", - "customer_reward_required" => "Beloning is een vereist veld", - "customer_sales_tax_support" => "", - "date_or_time_format" => "Datum en tijd filter", - "datetimeformat" => "Datum en tijd indeling", - "decimal_point" => "Decimaal punt", - "default_barcode_font_size_number" => "Standaard streepjescode lettergrootte moet een getal zijn.", - "default_barcode_font_size_required" => "Standaard streepjescode lettergrootte is een vereist veld.", - "default_barcode_height_number" => "Standaard streepjescode hoogte moet een getal zijn.", - "default_barcode_height_required" => "Standaard streepjescode hoogte is een vereist veld.", - "default_barcode_num_in_row_number" => "Standaard streepjescode nummer in een rij moet een getal zijn.", - "default_barcode_num_in_row_required" => "Standaard streepjescode nummer in een rij is een vereist veld.", - "default_barcode_page_cellspacing_number" => "Standaard streepjescode pagina cel afstand moet een getal zijn.", - "default_barcode_page_cellspacing_required" => "Standaard streepjescode pagina cel afstand is een vereist veld.", - "default_barcode_page_width_number" => "Standaard streepjescode pagina breedte moet een getal zijn.", - "default_barcode_page_width_required" => "Standaard streepjescode pagina breedte is een vereist veld.", - "default_barcode_width_number" => "Standaard streepjescode breedte moet een getal zijn.", - "default_barcode_width_required" => "Standaard streepjescode breedte is een vereist veld.", - "default_item_columns" => "Standaard zichtbare artikelkolommen", - "default_origin_tax_code" => "Standaard oorsprong belastingcode", - "default_receivings_discount" => "Standaard leveringskorting", - "default_receivings_discount_number" => "Standaard leveringskorting moet een getal zijn.", - "default_receivings_discount_required" => "Standaard leveringskorting is een vereist veld.", - "default_sales_discount" => "Standaard verkoopkorting", - "default_sales_discount_number" => "Standaard verkoopkorting moet een getal zijn.", - "default_sales_discount_required" => "Standaard verkoopkorting is een vereist veld.", - "default_tax_category" => "Standaard belastingcategorie", - "default_tax_code" => "Standaard belastingcode", - "default_tax_jurisdiction" => "Standaard BTW-jurisdictie", - "default_tax_name_number" => "Standaard belastingnaam moet een tekenreeks zijn.", - "default_tax_name_required" => "Standaard belastingnaam is een vereist veld.", - "default_tax_rate" => "Standaard belastingtarief %", - "default_tax_rate_1" => "Belasting 1 tarief", - "default_tax_rate_2" => "Belasting 2 tarief", - "default_tax_rate_3" => "", - "default_tax_rate_number" => "Standaard belastingtarief moet een getal zijn.", - "default_tax_rate_required" => "Standaard belastingtarief is een vereist veld.", - "derive_sale_quantity" => "Afgeleide verkoophoeveelheid toestaan", - "derive_sale_quantity_tooltip" => "Wanneer aangevinkt zal er een nieuwe artikelsoort worden aangeleverd voor artikelen geordend op uitgebreid bedrag", - "dinner_table" => "Tafel", - "dinner_table_duplicate" => "Tafel moet uniek zijn.", - "dinner_table_enable" => "Eettafels inschakelen", - "dinner_table_invalid_chars" => "Tafelnaam mag '_' niet bevatten.", - "dinner_table_required" => "Tafel is een vereist veld.", - "dot" => "punt", - "email" => "E-mail", - "email_configuration" => "E-mail configuratie", - "email_mailpath" => "Pad naar Sendmail", - "email_protocol" => "Protocol", - "email_receipt_check_behaviour" => "E-mail ontvangstbevestiging selectievakje", - "email_receipt_check_behaviour_always" => "Altijd geselecteerd", - "email_receipt_check_behaviour_last" => "Laatste selectie onthouden", - "email_receipt_check_behaviour_never" => "Nooit geselecteerd", - "email_smtp_crypto" => "SMTP encryptie", - "email_smtp_host" => "SMTP server", - "email_smtp_pass" => "SMTP wachtwoord", - "email_smtp_port" => "SMTP poort", - "email_smtp_timeout" => "SMTP time-out (s)", - "email_smtp_user" => "SMTP gebruikersnaam", - "enable_avatar" => "", - "enable_avatar_tooltip" => "", - "enable_dropdown_tooltip" => "", - "enable_new_look" => "", - "enable_right_bar" => "", - "enable_right_bar_tooltip" => "", - "enforce_privacy" => "Privacy afdwingen", - "enforce_privacy_tooltip" => "Privacy van klanten beschermen door data te versleutelen als deze verwijderd wordt", - "fax" => "Fax", - "file_perm" => "Er zijn problemen met bestandsmachtigingen. Eerst oplossen en pagina vernieuwen.", - "financial_year" => "Begin boekjaar", - "financial_year_apr" => "1 april", - "financial_year_aug" => "1 augustus", - "financial_year_dec" => "1 december", - "financial_year_feb" => "1 februari", - "financial_year_jan" => "1 januari", - "financial_year_jul" => "1 juli", - "financial_year_jun" => "1 juni", - "financial_year_mar" => "1 maart", - "financial_year_may" => "1 mei", - "financial_year_nov" => "1 november", - "financial_year_oct" => "1 oktober", - "financial_year_sep" => "1 september", - "floating_labels" => "", - "gcaptcha_enable" => "Aanmeldingspagina reCAPTCHA", - "gcaptcha_secret_key" => "reCAPTCHA geheime sleutel", - "gcaptcha_secret_key_required" => "reCAPTCHA geheime sleutel is een vereist veld", - "gcaptcha_site_key" => "reCAPTCHA site sleutel", - "gcaptcha_site_key_required" => "reCAPTCHA site sleutel is een vereist veld", - "gcaptcha_tooltip" => "Aanmeldingspagina beschermen met Google reCAPTCHA. Klik op het pictogram om API sleutel te koppelen.", - "general" => "Algemeen", - "general_configuration" => "Algemene configuratie", - "giftcard_number" => "Cadeaubonnummer", - "giftcard_random" => "Willekeurige genereren", - "giftcard_series" => "Genereren in series", - "image_allowed_file_types" => "Toegestane bestandstypen", - "image_max_height_tooltip" => "Maximaal toegestane hoogte van afbeelding uploads in pixels (px).", - "image_max_size_tooltip" => "Maximaal toegestane bestandsgrootte van afbeelding uploads in kilobytes (kb).", - "image_max_width_tooltip" => "Maximaal toegestane breedte van afbeelding uploads in pixels (px).", - "image_restrictions" => "Afbeelding upload beperkingen", - "include_hsn" => "Ondersteuning voor HSN codes inschakelen", - "info" => "Informatie", - "info_configuration" => "Winkelinformatie", - "input_groups" => "", - "integrations" => "Integraties", - "integrations_configuration" => "Derde partij integraties", - "invoice" => "Factuur", - "invoice_configuration" => "Factuur afdrukinstellingen", - "invoice_default_comments" => "Standaard factuur opmerkingen", - "invoice_email_message" => "Factuur e-mail sjabloon", - "invoice_enable" => "Facturering inschakelen", - "invoice_printer" => "Factuur printer", - "invoice_type" => "Factuur soort", - "is_readable" => "is leesbaar, maar de machtigingen zijn onjuist ingesteld. Instellen op 640 of 660 en vernieuwen.", - "is_writable" => "is schrijfbaar, maar de machtigingen zijn onjuist ingesteld. Instellen op 750 en vernieuwen.", - "item_markup" => "", - "jsprintsetup_required" => "Waarschuwing: Deze functionaliteit werkt alleen wanneer je de FireFox jsPrintSetup invoegtoepassing hebt geïnstalleerd. Toch opslaan?", - "language" => "Taal", - "last_used_invoice_number" => "Laatst gebruikte factuurnummer", - "last_used_quote_number" => "Laatst gebruikte offertenummer", - "last_used_work_order_number" => "Laatst gebruikte W/O-nummer", - "left" => "Links", - "license" => "Licentie", - "license_configuration" => "Licentieoverzicht", - "line_sequence" => "Lijn volgorde", - "lines_per_page" => "Lijnen per pagina", - "lines_per_page_number" => "Lijnen per pagina moet een getal zijn.", - "lines_per_page_required" => "Lijnen per pagina is een vereist veld.", - "locale" => "Lokalisatie", - "locale_configuration" => "Lokalisatie configuratie", - "locale_info" => "Lokalisatie configuratie informatie", - "location" => "Voorraad", - "location_configuration" => "Voorraadlocaties", - "location_info" => "Locatie configuratie informatie", - "login_form" => "Stijl aanmeldformulier", - "logout" => "Wilt u een reservekopie maken voor het afmelden? Klik op [OK] om te bevestigen of op [Annuleren] om toch af te melden.", - "mailchimp" => "MailChimp", - "mailchimp_api_key" => "MailChimp API-sleutel", - "mailchimp_configuration" => "MailChimp configuratie", - "mailchimp_key_successfully" => "API-sleutel is geldig.", - "mailchimp_key_unsuccessfully" => "API-sleutel is ongeldig.", - "mailchimp_lists" => "MailChimp lijst(en)", - "mailchimp_tooltip" => "Klik op het pictogram voor een API-sleutel.", - "message" => "Bericht", - "message_configuration" => "Bericht configuratie", - "msg_msg" => "Opgeslagen sms-bericht", - "msg_msg_placeholder" => "Sla uw bericht hier op als u een sms-sjabloon wilt maken, zo niet laat het vak leeg.", - "msg_pwd" => "Sms API wachtwoord", - "msg_pwd_required" => "Sms API wachtwoord is een vereist veld", - "msg_src" => "Sms API afzender ID", - "msg_src_required" => "Sms API afzender ID is een vereist veld", - "msg_uid" => "Sms API gebruikersnaam", - "msg_uid_required" => "Sms API gebruikersnaam is een vereist veld", - "multi_pack_enabled" => "Meerdere pakketten per artikel", - "no_risk" => "Geen kwetsbaarheden/beveiligingsrisico's.", - "none" => "geen", - "notify_alignment" => "Meldingspop-up positie", - "number_format" => "Nummer indeling", - "number_locale" => "Lokalisatie", - "number_locale_invalid" => "De ingevoerde landinstelling is ongeldig. Bekijk de koppeling in de knopinfo om een geldige landinstelling te vinden.", - "number_locale_required" => "Nummer landinstelling is een vereist veld.", - "number_locale_tooltip" => "Vind een geschikte landinstelling via deze koppeling.", - "os_timezone" => "OSPOS tijdzone:", - "ospos_info" => "OSPOS installatie info", - "payment_options_order" => "Betalingsopties volgorde", - "perm_risk" => "Onjuiste machtigingen zijn een risico voor deze software.", - "phone" => "Telefoonnummer bedrijf", - "phone_required" => "Telefoonnummer bedrijf is een vereist veld.", - "print_bottom_margin" => "Marge onderkant", - "print_bottom_margin_number" => "Marge onderkant moet een getal zijn.", - "print_bottom_margin_required" => "Marge onderkant is een vereist veld.", - "print_delay_autoreturn" => "Vertraging automatisch terugkeren naar verkoop", - "print_delay_autoreturn_number" => "Vertraging automatisch terugkeren naar verkoop is een vereist veld.", - "print_delay_autoreturn_required" => "Vertraging automatisch terugkeren naar verkoop moet een getal zijn.", - "print_footer" => "Browser voettekst afdrukken", - "print_header" => "Browser koptekst afdrukken", - "print_left_margin" => "Marge linkerkant", - "print_left_margin_number" => "Marge linkerkant moet een getal zijn.", - "print_left_margin_required" => "Marge linkerkant is een vereist veld.", - "print_receipt_check_behaviour" => "Kassabon afdrukken selectievakje", - "print_receipt_check_behaviour_always" => "Altijd geselecteerd", - "print_receipt_check_behaviour_last" => "Laatst gebruikt onthouden", - "print_receipt_check_behaviour_never" => "Nooit geselecteerd", - "print_right_margin" => "Marge rechterkant", - "print_right_margin_number" => "Marge rechterkant moet een getal zijn.", - "print_right_margin_required" => "Marge rechterkant is een vereist veld.", - "print_silently" => "Dialoogvenster afdrukken weergeven", - "print_top_margin" => "Marge bovenkant", - "print_top_margin_number" => "Marge bovenkant moet een getal zijn.", - "print_top_margin_required" => "Marge bovenkant is een vereist veld.", - "quantity_decimals" => "Hoeveelheid decimalen", - "quick_cash_enable" => "", - "quote_default_comments" => "Standaard offerte opmerkingen", - "receipt" => "Kassabon", - "receipt_category" => "", - "receipt_configuration" => "Kassabon afdrukinstellingen", - "receipt_default" => "Standaard", - "receipt_font_size" => "Lettergrootte", - "receipt_font_size_number" => "Lettergrootte moet een getal zijn.", - "receipt_font_size_required" => "Lettergrootte is een vereist veld.", - "receipt_info" => "Kassabon configuratie informatie", - "receipt_printer" => "Ticket printer", - "receipt_short" => "Kort", - "receipt_show_company_name" => "Bedrijfsnaam weergeven", - "receipt_show_description" => "Beschrijving weergeven", - "receipt_show_serialnumber" => "Serienummer weergeven", - "receipt_show_tax_ind" => "Belastingindicator weergeven", - "receipt_show_taxes" => "Belastingen weergeven", - "receipt_show_total_discount" => "Totale korting weergeven", - "receipt_template" => "Kassabon sjabloon", - "receiving_calculate_average_price" => "Gemiddelde prijs berekenen (levering)", - "recv_invoice_format" => "Leveringen factuurindeling", - "register_mode_default" => "Standaard kassa modus", - "report_an_issue" => "Probleem melden", - "return_policy_required" => "Retourbeleid is een vereist veld.", - "reward" => "Beloning", - "reward_configuration" => "Beloning configuratie", - "right" => "Rechts", - "sales_invoice_format" => "Indeling verkoopfactuur", - "sales_quote_format" => "Indeling verkoopofferte", - "saved_successfully" => "Configuratie opgeslagen.", - "saved_unsuccessfully" => "Configuratie opslaan mislukt.", - "security_issue" => "Beveilingskwetsbaarheid waarschuwing", - "server_notice" => "Gebruik onderstaande info om het probleem te melden.", - "service_charge" => "", - "show_due_enable" => "", - "show_office_group" => "Kantoor pictogram weergeven", - "statistics" => "Statistieken verzenden", - "statistics_tooltip" => "Statistieken verzenden voor ontwikkelings- en functie verbeteringen.", - "stock_location" => "Voorraadlocatie", - "stock_location_duplicate" => "Voorraadlocatie moet uniek zijn.", - "stock_location_invalid_chars" => "Voorraadlocatie mag '_' niet bevatten.", - "stock_location_required" => "Voorraadlocatie is een vereist veld.", - "suggestions_fifth_column" => "", - "suggestions_first_column" => "Kolom 1", - "suggestions_fourth_column" => "", - "suggestions_layout" => "Indeling zoeksuggesties", - "suggestions_second_column" => "Kolom 2", - "suggestions_third_column" => "Kolom 3", - "system_conf" => "Installatie & configuratie", - "system_info" => "Systeeminfo", - "table" => "Tafel", - "table_configuration" => "Tafel configuratie", - "takings_printer" => "Kassabon printer", - "tax" => "Belasting", - "tax_category" => "belastingcategorie", - "tax_category_duplicate" => "De ingevoerde belastingcategorie bestaat al.", - "tax_category_invalid_chars" => "De ingevoerde belastingcategorie is ongeldig.", - "tax_category_required" => "De belastingcategorie is vereist.", - "tax_category_used" => "Kan belastingcategorie niet verwijderen omdat deze in gebruik is.", - "tax_configuration" => "Belasting configuratie", - "tax_decimals" => "Belasting decimalen", - "tax_id" => "Belasting ID", - "tax_included" => "Inclusief belasting", - "theme" => "Thema", - "theme_preview" => "Thema voorbeeld:", - "thousands_separator" => "Duizenden scheidingsteken", - "timezone" => "Tijdzone", - "timezone_error" => "OSPOS tijdzone is anders dan uw lokale tijdzone.", - "top" => "Boven", - "use_destination_based_tax" => "Bestemming gebaseerde belasting gebruiken", - "user_timezone" => "Lokale tijdzone:", - "website" => "Website", - "wholesale_markup" => "", - "work_order_enable" => "Werkorder ondersteuning", - "work_order_format" => "Indeling werkorder", + "address" => "Bedrijfsadres", + "address_required" => "Bedrijfsadres is een vereist veld.", + "all_set" => "Alle bestandsmachtigingen zijn juist ingesteld!", + "allow_duplicate_barcodes" => "Dezelfde streepjescodes toestaan", + "apostrophe" => "apostrof", + "backup_button" => "Reservekopie", + "backup_database" => "Reservekopie database", + "barcode" => "Streepjescode", + "barcode_company" => "Bedrijfsnaam", + "barcode_configuration" => "Streepjescode configuratie", + "barcode_content" => "Streepjescode inhoud", + "barcode_first_row" => "Rij 1", + "barcode_font" => "Lettertype", + "barcode_formats" => "Indelingen invoeren", + "barcode_generate_if_empty" => "Genereren wanneer leeg.", + "barcode_height" => "Hoogte (px)", + "barcode_id" => "Artikel ID/Naam", + "barcode_info" => "Streepjescode configuratie informatie", + "barcode_layout" => "Streepjescode indeling", + "barcode_name" => "Naam", + "barcode_number" => "Streepjescode", + "barcode_number_in_row" => "Nummer in rij", + "barcode_page_cellspacing" => "Pagina cel afstand weergeven.", + "barcode_page_width" => "Pagina breedte weergeven", + "barcode_price" => "Prijs", + "barcode_second_row" => "Rij 2", + "barcode_third_row" => "Rij 3", + "barcode_tooltip" => "Waarschuwing: Deze functie kan veroorzaken dat er dubbele items worden geïmporteerd of aangemaakt. Niet gebruiken als u geen dubbele streepjescodes wilt.", + "barcode_type" => "Streepjescode soort", + "barcode_width" => "Breedte (px)", + "bottom" => "Onderaan", + "cash_button" => "", + "cash_button_1" => "", + "cash_button_2" => "", + "cash_button_3" => "", + "cash_button_4" => "", + "cash_button_5" => "", + "cash_button_6" => "", + "cash_decimals" => "Contant decimalen", + "cash_decimals_tooltip" => "Wanneer contant decimalen en valuta decimalen gelijk zijn, vindt er geen contant afronding plaats. Tenzij contant afronding is ingesteld op halveren vijf.", + "cash_rounding" => "Contant afronding", + "category_dropdown" => "Categorie als vervolgkeuzelijst weergeven", + "center" => "Centreren", + "change_apperance_tooltip" => "", + "comma" => "komma", + "company" => "Bedrijfsnaam", + "company_avatar" => "", + "company_change_image" => "Afbeelding wijzigen", + "company_logo" => "Bedrijfslogo", + "company_remove_image" => "Afbeelding verwijderen", + "company_required" => "Bedrijfsnaam is een vereist veld", + "company_select_image" => "Afbeelding selecteren", + "company_website_url" => "Bedrijfswebsite is geen geldige URL (http://...).", + "country_codes" => "Land codes", + "country_codes_tooltip" => "Kommagescheiden lijst van land codes voor het opzoeken van adres bij naam.", + "currency_code" => "Valuta code", + "currency_decimals" => "Valuta decimalen", + "currency_symbol" => "Valuta symbool", + "current_employee_only" => "", + "customer_reward" => "Beloning", + "customer_reward_duplicate" => "Beloning moet uniek zijn.", + "customer_reward_enable" => "Klantbeloningen inschakelen", + "customer_reward_invalid_chars" => "Beloning met '_' niet bevatten", + "customer_reward_required" => "Beloning is een vereist veld", + "customer_sales_tax_support" => "", + "date_or_time_format" => "Datum en tijd filter", + "datetimeformat" => "Datum en tijd indeling", + "decimal_point" => "Decimaal punt", + "default_barcode_font_size_number" => "Standaard streepjescode lettergrootte moet een getal zijn.", + "default_barcode_font_size_required" => "Standaard streepjescode lettergrootte is een vereist veld.", + "default_barcode_height_number" => "Standaard streepjescode hoogte moet een getal zijn.", + "default_barcode_height_required" => "Standaard streepjescode hoogte is een vereist veld.", + "default_barcode_num_in_row_number" => "Standaard streepjescode nummer in een rij moet een getal zijn.", + "default_barcode_num_in_row_required" => "Standaard streepjescode nummer in een rij is een vereist veld.", + "default_barcode_page_cellspacing_number" => "Standaard streepjescode pagina cel afstand moet een getal zijn.", + "default_barcode_page_cellspacing_required" => "Standaard streepjescode pagina cel afstand is een vereist veld.", + "default_barcode_page_width_number" => "Standaard streepjescode pagina breedte moet een getal zijn.", + "default_barcode_page_width_required" => "Standaard streepjescode pagina breedte is een vereist veld.", + "default_barcode_width_number" => "Standaard streepjescode breedte moet een getal zijn.", + "default_barcode_width_required" => "Standaard streepjescode breedte is een vereist veld.", + "default_item_columns" => "Standaard zichtbare artikelkolommen", + "default_origin_tax_code" => "Standaard oorsprong belastingcode", + "default_receivings_discount" => "Standaard leveringskorting", + "default_receivings_discount_number" => "Standaard leveringskorting moet een getal zijn.", + "default_receivings_discount_required" => "Standaard leveringskorting is een vereist veld.", + "default_sales_discount" => "Standaard verkoopkorting", + "default_sales_discount_number" => "Standaard verkoopkorting moet een getal zijn.", + "default_sales_discount_required" => "Standaard verkoopkorting is een vereist veld.", + "default_tax_category" => "Standaard belastingcategorie", + "default_tax_code" => "Standaard belastingcode", + "default_tax_jurisdiction" => "Standaard BTW-jurisdictie", + "default_tax_name_number" => "Standaard belastingnaam moet een tekenreeks zijn.", + "default_tax_name_required" => "Standaard belastingnaam is een vereist veld.", + "default_tax_rate" => "Standaard belastingtarief %", + "default_tax_rate_1" => "Belasting 1 tarief", + "default_tax_rate_2" => "Belasting 2 tarief", + "default_tax_rate_3" => "", + "default_tax_rate_number" => "Standaard belastingtarief moet een getal zijn.", + "default_tax_rate_required" => "Standaard belastingtarief is een vereist veld.", + "derive_sale_quantity" => "Afgeleide verkoophoeveelheid toestaan", + "derive_sale_quantity_tooltip" => "Wanneer aangevinkt zal er een nieuwe artikelsoort worden aangeleverd voor artikelen geordend op uitgebreid bedrag", + "dinner_table" => "Tafel", + "dinner_table_duplicate" => "Tafel moet uniek zijn.", + "dinner_table_enable" => "Eettafels inschakelen", + "dinner_table_invalid_chars" => "Tafelnaam mag '_' niet bevatten.", + "dinner_table_required" => "Tafel is een vereist veld.", + "dot" => "punt", + "email" => "E-mail", + "email_configuration" => "E-mail configuratie", + "email_mailpath" => "Pad naar Sendmail", + "email_protocol" => "Protocol", + "email_receipt_check_behaviour" => "E-mail ontvangstbevestiging selectievakje", + "email_receipt_check_behaviour_always" => "Altijd geselecteerd", + "email_receipt_check_behaviour_last" => "Laatste selectie onthouden", + "email_receipt_check_behaviour_never" => "Nooit geselecteerd", + "email_smtp_crypto" => "SMTP encryptie", + "email_smtp_host" => "SMTP server", + "email_smtp_pass" => "SMTP wachtwoord", + "email_smtp_port" => "SMTP poort", + "email_smtp_timeout" => "SMTP time-out (s)", + "email_smtp_user" => "SMTP gebruikersnaam", + "enable_avatar" => "", + "enable_avatar_tooltip" => "", + "enable_dropdown_tooltip" => "", + "enable_new_look" => "", + "enable_right_bar" => "", + "enable_right_bar_tooltip" => "", + "enforce_privacy" => "Privacy afdwingen", + "enforce_privacy_tooltip" => "Privacy van klanten beschermen door data te versleutelen als deze verwijderd wordt", + "fax" => "Fax", + "file_perm" => "Er zijn problemen met bestandsmachtigingen. Eerst oplossen en pagina vernieuwen.", + "financial_year" => "Begin boekjaar", + "financial_year_apr" => "1 april", + "financial_year_aug" => "1 augustus", + "financial_year_dec" => "1 december", + "financial_year_feb" => "1 februari", + "financial_year_jan" => "1 januari", + "financial_year_jul" => "1 juli", + "financial_year_jun" => "1 juni", + "financial_year_mar" => "1 maart", + "financial_year_may" => "1 mei", + "financial_year_nov" => "1 november", + "financial_year_oct" => "1 oktober", + "financial_year_sep" => "1 september", + "floating_labels" => "", + "gcaptcha_enable" => "Aanmeldingspagina reCAPTCHA", + "gcaptcha_secret_key" => "reCAPTCHA geheime sleutel", + "gcaptcha_secret_key_required" => "reCAPTCHA geheime sleutel is een vereist veld", + "gcaptcha_site_key" => "reCAPTCHA site sleutel", + "gcaptcha_site_key_required" => "reCAPTCHA site sleutel is een vereist veld", + "gcaptcha_tooltip" => "Aanmeldingspagina beschermen met Google reCAPTCHA. Klik op het pictogram om API sleutel te koppelen.", + "general" => "Algemeen", + "general_configuration" => "Algemene configuratie", + "giftcard_number" => "Cadeaubonnummer", + "giftcard_random" => "Willekeurige genereren", + "giftcard_series" => "Genereren in series", + "image_allowed_file_types" => "Toegestane bestandstypen", + "image_max_height_tooltip" => "Maximaal toegestane hoogte van afbeelding uploads in pixels (px).", + "image_max_size_tooltip" => "Maximaal toegestane bestandsgrootte van afbeelding uploads in kilobytes (kb).", + "image_max_width_tooltip" => "Maximaal toegestane breedte van afbeelding uploads in pixels (px).", + "image_restrictions" => "Afbeelding upload beperkingen", + "include_hsn" => "Ondersteuning voor HSN codes inschakelen", + "info" => "Informatie", + "info_configuration" => "Winkelinformatie", + "input_groups" => "", + "integrations" => "Integraties", + "integrations_configuration" => "Derde partij integraties", + "invoice" => "Factuur", + "invoice_configuration" => "Factuur afdrukinstellingen", + "invoice_default_comments" => "Standaard factuur opmerkingen", + "invoice_email_message" => "Factuur e-mail sjabloon", + "invoice_enable" => "Facturering inschakelen", + "invoice_printer" => "Factuur printer", + "invoice_type" => "Factuur soort", + "is_readable" => "is leesbaar, maar de machtigingen zijn onjuist ingesteld. Instellen op 640 of 660 en vernieuwen.", + "is_writable" => "is schrijfbaar, maar de machtigingen zijn onjuist ingesteld. Instellen op 750 en vernieuwen.", + "item_markup" => "", + "jsprintsetup_required" => "Waarschuwing: Deze functionaliteit werkt alleen wanneer je de FireFox jsPrintSetup invoegtoepassing hebt geïnstalleerd. Toch opslaan?", + "language" => "Taal", + "last_used_invoice_number" => "Laatst gebruikte factuurnummer", + "last_used_quote_number" => "Laatst gebruikte offertenummer", + "last_used_work_order_number" => "Laatst gebruikte W/O-nummer", + "left" => "Links", + "license" => "Licentie", + "license_configuration" => "Licentieoverzicht", + "line_sequence" => "Lijn volgorde", + "lines_per_page" => "Lijnen per pagina", + "lines_per_page_number" => "Lijnen per pagina moet een getal zijn.", + "lines_per_page_required" => "Lijnen per pagina is een vereist veld.", + "locale" => "Lokalisatie", + "locale_configuration" => "Lokalisatie configuratie", + "locale_info" => "Lokalisatie configuratie informatie", + "location" => "Voorraad", + "location_configuration" => "Voorraadlocaties", + "location_info" => "Locatie configuratie informatie", + "login_form" => "Stijl aanmeldformulier", + "logout" => "Wilt u een reservekopie maken voor het afmelden? Klik op [OK] om te bevestigen of op [Annuleren] om toch af te melden.", + "mailchimp" => "MailChimp", + "mailchimp_api_key" => "MailChimp API-sleutel", + "mailchimp_configuration" => "MailChimp configuratie", + "mailchimp_key_successfully" => "API-sleutel is geldig.", + "mailchimp_key_unsuccessfully" => "API-sleutel is ongeldig.", + "mailchimp_lists" => "MailChimp lijst(en)", + "mailchimp_tooltip" => "Klik op het pictogram voor een API-sleutel.", + "message" => "Bericht", + "message_configuration" => "Bericht configuratie", + "msg_msg" => "Opgeslagen sms-bericht", + "msg_msg_placeholder" => "Sla uw bericht hier op als u een sms-sjabloon wilt maken, zo niet laat het vak leeg.", + "msg_pwd" => "Sms API wachtwoord", + "msg_pwd_required" => "Sms API wachtwoord is een vereist veld", + "msg_src" => "Sms API afzender ID", + "msg_src_required" => "Sms API afzender ID is een vereist veld", + "msg_uid" => "Sms API gebruikersnaam", + "msg_uid_required" => "Sms API gebruikersnaam is een vereist veld", + "multi_pack_enabled" => "Meerdere pakketten per artikel", + "no_risk" => "Geen kwetsbaarheden/beveiligingsrisico's.", + "none" => "geen", + "notify_alignment" => "Meldingspop-up positie", + "number_format" => "Nummer indeling", + "number_locale" => "Lokalisatie", + "number_locale_invalid" => "De ingevoerde landinstelling is ongeldig. Bekijk de koppeling in de knopinfo om een geldige landinstelling te vinden.", + "number_locale_required" => "Nummer landinstelling is een vereist veld.", + "number_locale_tooltip" => "Vind een geschikte landinstelling via deze koppeling.", + "os_timezone" => "OSPOS tijdzone:", + "ospos_info" => "OSPOS installatie info", + "payment_options_order" => "Betalingsopties volgorde", + "perm_risk" => "Onjuiste machtigingen zijn een risico voor deze software.", + "phone" => "Telefoonnummer bedrijf", + "phone_required" => "Telefoonnummer bedrijf is een vereist veld.", + "print_bottom_margin" => "Marge onderkant", + "print_bottom_margin_number" => "Marge onderkant moet een getal zijn.", + "print_bottom_margin_required" => "Marge onderkant is een vereist veld.", + "print_delay_autoreturn" => "Vertraging automatisch terugkeren naar verkoop", + "print_delay_autoreturn_number" => "Vertraging automatisch terugkeren naar verkoop is een vereist veld.", + "print_delay_autoreturn_required" => "Vertraging automatisch terugkeren naar verkoop moet een getal zijn.", + "print_footer" => "Browser voettekst afdrukken", + "print_header" => "Browser koptekst afdrukken", + "print_left_margin" => "Marge linkerkant", + "print_left_margin_number" => "Marge linkerkant moet een getal zijn.", + "print_left_margin_required" => "Marge linkerkant is een vereist veld.", + "print_receipt_check_behaviour" => "Kassabon afdrukken selectievakje", + "print_receipt_check_behaviour_always" => "Altijd geselecteerd", + "print_receipt_check_behaviour_last" => "Laatst gebruikt onthouden", + "print_receipt_check_behaviour_never" => "Nooit geselecteerd", + "print_right_margin" => "Marge rechterkant", + "print_right_margin_number" => "Marge rechterkant moet een getal zijn.", + "print_right_margin_required" => "Marge rechterkant is een vereist veld.", + "print_silently" => "Dialoogvenster afdrukken weergeven", + "print_top_margin" => "Marge bovenkant", + "print_top_margin_number" => "Marge bovenkant moet een getal zijn.", + "print_top_margin_required" => "Marge bovenkant is een vereist veld.", + "quantity_decimals" => "Hoeveelheid decimalen", + "quick_cash_enable" => "", + "quote_default_comments" => "Standaard offerte opmerkingen", + "receipt" => "Kassabon", + "receipt_category" => "", + "receipt_configuration" => "Kassabon afdrukinstellingen", + "receipt_default" => "Standaard", + "receipt_font_size" => "Lettergrootte", + "receipt_font_size_number" => "Lettergrootte moet een getal zijn.", + "receipt_font_size_required" => "Lettergrootte is een vereist veld.", + "receipt_info" => "Kassabon configuratie informatie", + "receipt_printer" => "Ticket printer", + "receipt_short" => "Kort", + "receipt_show_company_name" => "Bedrijfsnaam weergeven", + "receipt_show_description" => "Beschrijving weergeven", + "receipt_show_serialnumber" => "Serienummer weergeven", + "receipt_show_tax_ind" => "Belastingindicator weergeven", + "receipt_show_taxes" => "Belastingen weergeven", + "receipt_show_total_discount" => "Totale korting weergeven", + "receipt_template" => "Kassabon sjabloon", + "receiving_calculate_average_price" => "Gemiddelde prijs berekenen (levering)", + "recv_invoice_format" => "Leveringen factuurindeling", + "register_mode_default" => "Standaard kassa modus", + "report_an_issue" => "Probleem melden", + "return_policy_required" => "Retourbeleid is een vereist veld.", + "reward" => "Beloning", + "reward_configuration" => "Beloning configuratie", + "right" => "Rechts", + "sales_invoice_format" => "Indeling verkoopfactuur", + "sales_quote_format" => "Indeling verkoopofferte", + "saved_successfully" => "Configuratie opgeslagen.", + "saved_unsuccessfully" => "Configuratie opslaan mislukt.", + "security_issue" => "Beveilingskwetsbaarheid waarschuwing", + "server_notice" => "Gebruik onderstaande info om het probleem te melden.", + "service_charge" => "", + "show_due_enable" => "", + "show_office_group" => "Kantoor pictogram weergeven", + "statistics" => "Statistieken verzenden", + "statistics_tooltip" => "Statistieken verzenden voor ontwikkelings- en functie verbeteringen.", + "stock_location" => "Voorraadlocatie", + "stock_location_duplicate" => "Voorraadlocatie moet uniek zijn.", + "stock_location_invalid_chars" => "Voorraadlocatie mag '_' niet bevatten.", + "stock_location_required" => "Voorraadlocatie is een vereist veld.", + "suggestions_fifth_column" => "", + "suggestions_first_column" => "Kolom 1", + "suggestions_fourth_column" => "", + "suggestions_layout" => "Indeling zoeksuggesties", + "suggestions_second_column" => "Kolom 2", + "suggestions_third_column" => "Kolom 3", + "system_conf" => "Installatie & configuratie", + "system_info" => "Systeeminfo", + "table" => "Tafel", + "table_configuration" => "Tafel configuratie", + "takings_printer" => "Kassabon printer", + "tax" => "Belasting", + "tax_category" => "belastingcategorie", + "tax_category_duplicate" => "De ingevoerde belastingcategorie bestaat al.", + "tax_category_invalid_chars" => "De ingevoerde belastingcategorie is ongeldig.", + "tax_category_required" => "De belastingcategorie is vereist.", + "tax_category_used" => "Kan belastingcategorie niet verwijderen omdat deze in gebruik is.", + "tax_configuration" => "Belasting configuratie", + "tax_decimals" => "Belasting decimalen", + "tax_id" => "Belasting ID", + "tax_included" => "Inclusief belasting", + "theme" => "Thema", + "theme_preview" => "Thema voorbeeld:", + "thousands_separator" => "Duizenden scheidingsteken", + "timezone" => "Tijdzone", + "timezone_error" => "OSPOS tijdzone is anders dan uw lokale tijdzone.", + "top" => "Boven", + "use_destination_based_tax" => "Bestemming gebaseerde belasting gebruiken", + "user_timezone" => "Lokale tijdzone:", + "website" => "Website", + "wholesale_markup" => "", + "work_order_enable" => "Werkorder ondersteuning", + "work_order_format" => "Indeling werkorder", ]; diff --git a/app/Language/nl-NL/Customers.php b/app/Language/nl-NL/Customers.php index 6660c3949..4c428b8cd 100644 --- a/app/Language/nl-NL/Customers.php +++ b/app/Language/nl-NL/Customers.php @@ -1,56 +1,56 @@ "Account #", - "account_number_duplicate" => "Accountnummer is al aanwezig in de database.", - "available_points" => "Beschikbare punten", - "available_points_value" => "", - "average" => "Gemiddelde uitgave", - "avg_discount" => "Gemiddelde korting", - "basic_information" => "Informatie", - "cannot_be_deleted" => "Kan geselecteerde klanten niet verwijderen. Eén of meerdere van de geselecteerde klantgegevens bevatten verkopen.", - "company_name" => "Bedrijf", - "confirm_delete" => "Weet u zeker dat u de geselecteerde klant(en) wilt verwijderen?", - "confirm_restore" => "Weet u zeker dat u de geselecteerde klant(en) wilt herstellen?", - "consent" => "Toestemming registratie", - "consent_required" => "Toestemming registratie is een vereist veld.", - "csv_import_failed" => "CSV importeren mislukt", - "csv_import_nodata_wrongformat" => "Het geüploade bestand bevat geen gegevens or heeft de verkeerde indeling.", - "csv_import_partially_failed" => "Klanten importeren is gelukt, met enkele fouten:", - "csv_import_success" => "Klanten geïmporteerd.", - "customer" => "Klant", - "date" => "Datum", - "discount" => "Korting", - "discount_fixed" => "Vaste korting", - "discount_percent" => "Kortingspercentage", - "discount_type" => "Kortingssoort", - "email_duplicate" => "E-mailadres is al aanwezig in de database.", - "employee" => "Werknemer", - "error_adding_updating" => "Klant toevoegen of bijwerken mislukt.", - "import_items_csv" => "Klanten importeren vanuit CSV", - "mailchimp_activity_click" => "E-mail klik", - "mailchimp_activity_lastopen" => "Laatste geopende e-mail", - "mailchimp_activity_open" => "E-mail open", - "mailchimp_activity_total" => "E-mail verstuurd", - "mailchimp_activity_unopen" => "E-mail ongeopend", - "mailchimp_email_client" => "E-mailclient", - "mailchimp_info" => "MailChimp", - "mailchimp_member_rating" => "Beoordeling", - "mailchimp_status" => "Status", - "mailchimp_vip" => "VIP", - "max" => "Max. uitgave", - "min" => "Min. uitgave", - "new" => "Nieuwe klant", - "none_selected" => "Geen klant(en) geselecteerd om te verwijderen.", - "one_or_multiple" => "klant(en)", - "quantity" => "Hoeveelheid", - "stats_info" => "Statistieken", - "successful_adding" => "Klant toegevoegd", - "successful_deleted" => "U heeft verwijderd", - "successful_updating" => "Klant bijgewerkt", - "tax_code" => "Belastingcode", - "tax_id" => "Belasting ID", - "taxable" => "Belastbaar", - "total" => "Totale uitgave", - "update" => "Klant bijwerken", - "rewards_package" => "Beloningspakket", + "account_number" => "Account #", + "account_number_duplicate" => "Accountnummer is al aanwezig in de database.", + "available_points" => "Beschikbare punten", + "available_points_value" => "", + "average" => "Gemiddelde uitgave", + "avg_discount" => "Gemiddelde korting", + "basic_information" => "Informatie", + "cannot_be_deleted" => "Kan geselecteerde klanten niet verwijderen. Eén of meerdere van de geselecteerde klantgegevens bevatten verkopen.", + "company_name" => "Bedrijf", + "confirm_delete" => "Weet u zeker dat u de geselecteerde klant(en) wilt verwijderen?", + "confirm_restore" => "Weet u zeker dat u de geselecteerde klant(en) wilt herstellen?", + "consent" => "Toestemming registratie", + "consent_required" => "Toestemming registratie is een vereist veld.", + "csv_import_failed" => "CSV importeren mislukt", + "csv_import_nodata_wrongformat" => "Het geüploade bestand bevat geen gegevens or heeft de verkeerde indeling.", + "csv_import_partially_failed" => "Klanten importeren is gelukt, met enkele fouten:", + "csv_import_success" => "Klanten geïmporteerd.", + "customer" => "Klant", + "date" => "Datum", + "discount" => "Korting", + "discount_fixed" => "Vaste korting", + "discount_percent" => "Kortingspercentage", + "discount_type" => "Kortingssoort", + "email_duplicate" => "E-mailadres is al aanwezig in de database.", + "employee" => "Werknemer", + "error_adding_updating" => "Klant toevoegen of bijwerken mislukt.", + "import_items_csv" => "Klanten importeren vanuit CSV", + "mailchimp_activity_click" => "E-mail klik", + "mailchimp_activity_lastopen" => "Laatste geopende e-mail", + "mailchimp_activity_open" => "E-mail open", + "mailchimp_activity_total" => "E-mail verstuurd", + "mailchimp_activity_unopen" => "E-mail ongeopend", + "mailchimp_email_client" => "E-mailclient", + "mailchimp_info" => "MailChimp", + "mailchimp_member_rating" => "Beoordeling", + "mailchimp_status" => "Status", + "mailchimp_vip" => "VIP", + "max" => "Max. uitgave", + "min" => "Min. uitgave", + "new" => "Nieuwe klant", + "none_selected" => "Geen klant(en) geselecteerd om te verwijderen.", + "one_or_multiple" => "klant(en)", + "quantity" => "Hoeveelheid", + "stats_info" => "Statistieken", + "successful_adding" => "Klant toegevoegd", + "successful_deleted" => "U heeft verwijderd", + "successful_updating" => "Klant bijgewerkt", + "tax_code" => "Belastingcode", + "tax_id" => "Belasting ID", + "taxable" => "Belastbaar", + "total" => "Totale uitgave", + "update" => "Klant bijwerken", + "rewards_package" => "Beloningspakket", ]; diff --git a/app/Language/nl-NL/Datepicker.php b/app/Language/nl-NL/Datepicker.php index eb3e8b755..7807b2aa1 100644 --- a/app/Language/nl-NL/Datepicker.php +++ b/app/Language/nl-NL/Datepicker.php @@ -1,23 +1,23 @@ "Alles", - "apply" => "Toepassen", - "cancel" => "Annuleren", - "custom" => "Aangepast", - "from" => "Van", - "last_30" => "Afgelopen 30 dagen", - "last_7" => "Afgelopen 7 dagen", - "last_financial_year" => "Afgelopen boekjaar", - "last_month" => "Afgelopen maand", - "last_year" => "Afgelopen jaar", - "same_month_last_year" => "Dezelfde maand afgelopen jaar", - "same_month_to_same_day_last_year" => "Dezelfde maand tot dezelfde dag afgelopen jaar", - "this_financial_year" => "Huidige boekjaar", - "this_month" => "Huidige maand", - "this_year" => "Huidige jaar", - "to" => "Tot", - "today" => "Vandaag", - "today_last_year" => "Vandaag afgelopen jaar", - "weekstart" => "0", - "yesterday" => "Gisteren", + "all_time" => "Alles", + "apply" => "Toepassen", + "cancel" => "Annuleren", + "custom" => "Aangepast", + "from" => "Van", + "last_30" => "Afgelopen 30 dagen", + "last_7" => "Afgelopen 7 dagen", + "last_financial_year" => "Afgelopen boekjaar", + "last_month" => "Afgelopen maand", + "last_year" => "Afgelopen jaar", + "same_month_last_year" => "Dezelfde maand afgelopen jaar", + "same_month_to_same_day_last_year" => "Dezelfde maand tot dezelfde dag afgelopen jaar", + "this_financial_year" => "Huidige boekjaar", + "this_month" => "Huidige maand", + "this_year" => "Huidige jaar", + "to" => "Tot", + "today" => "Vandaag", + "today_last_year" => "Vandaag afgelopen jaar", + "weekstart" => "0", + "yesterday" => "Gisteren", ]; diff --git a/app/Language/nl-NL/Employees.php b/app/Language/nl-NL/Employees.php index afeff6364..ba3467ee8 100644 --- a/app/Language/nl-NL/Employees.php +++ b/app/Language/nl-NL/Employees.php @@ -1,44 +1,44 @@ "", - "basic_information" => "Informatie", - "cannot_be_deleted" => "Kan geselecteerde werknemer(s) niet verwijderen, één of meerdere bevatten verwerkte verkopen of u probeert uw account te verwijderen.", - "change_employee" => "", - "change_password" => "Wachtwoord wijzigen", - "clerk" => "", - "commission" => "", - "confirm_delete" => "Weet u zeker dat u de geselecteerde werknemer(s) wilt verwijderen?", - "confirm_restore" => "Weet u zeker dat u de geselecteerde werknemer(s) wilt herstellen?", - "current_password" => "Huidige wachtwoord", - "current_password_invalid" => "Huidige wachtwoord is ongeldig.", - "employee" => "Werknemer", - "error_adding_updating" => "Werknemer toevoegen of bijwerken mislukt.", - "error_deleting_demo_admin" => "Kan de demo admin gebruiker niet verwijderen.", - "error_updating_demo_admin" => "Kan de demo admin gebruiker niet wijzigen.", - "language" => "Taal", - "login_info" => "Aanmelden", - "manager" => "", - "new" => "Nieuwe werknemer", - "none_selected" => "Geen werknemer(s) geselecteerd om te verwijderen.", - "one_or_multiple" => "werknemer(s)", - "password" => "Wachtwoord", - "password_minlength" => "Wachtwoord moet minstens 8 karakters bevatten.", - "password_must_match" => "Wachtwoorden komen niet overeen.", - "password_not_must_match" => "Huidige wachtwoord en nieuwe wachtwoord moeten uniek zijn.", - "password_required" => "Wachtwoord is vereist.", - "permission_desc" => "De selectievakjes hieronder selecteren om toegang te verlenen tot modules.", - "permission_info" => "Machtigingen", - "repeat_password" => "Wachtwoord opnieuw", - "subpermission_required" => "Tenminste eenmaal toegang verlenen voor elke module.", - "successful_adding" => "Werknemer toegevoegd.", - "successful_change_password" => "Wachtwoord gewijzigd.", - "successful_deleted" => "U heeft verwijderd", - "successful_updating" => "Werknemer bijgewerkt", - "system_language" => "Systeemtaal", - "unsuccessful_change_password" => "Wachtwoord wijzigen mislukt.", - "update" => "Werknemer bijwerken", - "username" => "Gebruikersnaam", - "username_duplicate" => "", - "username_minlength" => "Gebruikersnaam moet minstens 5 karakters bevatten.", - "username_required" => "Gebruikersnaam is een vereist veld.", + "administrator" => "", + "basic_information" => "Informatie", + "cannot_be_deleted" => "Kan geselecteerde werknemer(s) niet verwijderen, één of meerdere bevatten verwerkte verkopen of u probeert uw account te verwijderen.", + "change_employee" => "", + "change_password" => "Wachtwoord wijzigen", + "clerk" => "", + "commission" => "", + "confirm_delete" => "Weet u zeker dat u de geselecteerde werknemer(s) wilt verwijderen?", + "confirm_restore" => "Weet u zeker dat u de geselecteerde werknemer(s) wilt herstellen?", + "current_password" => "Huidige wachtwoord", + "current_password_invalid" => "Huidige wachtwoord is ongeldig.", + "employee" => "Werknemer", + "error_adding_updating" => "Werknemer toevoegen of bijwerken mislukt.", + "error_deleting_demo_admin" => "Kan de demo admin gebruiker niet verwijderen.", + "error_updating_demo_admin" => "Kan de demo admin gebruiker niet wijzigen.", + "language" => "Taal", + "login_info" => "Aanmelden", + "manager" => "", + "new" => "Nieuwe werknemer", + "none_selected" => "Geen werknemer(s) geselecteerd om te verwijderen.", + "one_or_multiple" => "werknemer(s)", + "password" => "Wachtwoord", + "password_minlength" => "Wachtwoord moet minstens 8 karakters bevatten.", + "password_must_match" => "Wachtwoorden komen niet overeen.", + "password_not_must_match" => "Huidige wachtwoord en nieuwe wachtwoord moeten uniek zijn.", + "password_required" => "Wachtwoord is vereist.", + "permission_desc" => "De selectievakjes hieronder selecteren om toegang te verlenen tot modules.", + "permission_info" => "Machtigingen", + "repeat_password" => "Wachtwoord opnieuw", + "subpermission_required" => "Tenminste eenmaal toegang verlenen voor elke module.", + "successful_adding" => "Werknemer toegevoegd.", + "successful_change_password" => "Wachtwoord gewijzigd.", + "successful_deleted" => "U heeft verwijderd", + "successful_updating" => "Werknemer bijgewerkt", + "system_language" => "Systeemtaal", + "unsuccessful_change_password" => "Wachtwoord wijzigen mislukt.", + "update" => "Werknemer bijwerken", + "username" => "Gebruikersnaam", + "username_duplicate" => "", + "username_minlength" => "Gebruikersnaam moet minstens 5 karakters bevatten.", + "username_required" => "Gebruikersnaam is een vereist veld.", ]; diff --git a/app/Language/nl-NL/Enum.php b/app/Language/nl-NL/Enum.php index 6b7c909f2..eb02bf9ab 100644 --- a/app/Language/nl-NL/Enum.php +++ b/app/Language/nl-NL/Enum.php @@ -1,10 +1,10 @@ "Halveren naar beneden", - "half_even" => "Halveren even", - "half_five" => "Halveren vijf", - "half_odd" => "Halveren oneven", - "half_up" => "Halveren naar boven", - "round_down" => "Naar beneden afronden", - "round_up" => "Naar boven afronden", + "half_down" => "Halveren naar beneden", + "half_even" => "Halveren even", + "half_five" => "Halveren vijf", + "half_odd" => "Halveren oneven", + "half_up" => "Halveren naar boven", + "round_down" => "Naar beneden afronden", + "round_up" => "Naar boven afronden", ]; diff --git a/app/Language/nl-NL/Error.php b/app/Language/nl-NL/Error.php index 59e400547..038c0aa0a 100644 --- a/app/Language/nl-NL/Error.php +++ b/app/Language/nl-NL/Error.php @@ -1,5 +1,5 @@ "U bent niet gemachtigd voor toegang tot de module genaamd", - "unknown" => "Onverwachte fout", + "no_permission_module" => "U bent niet gemachtigd voor toegang tot de module genaamd", + "unknown" => "Onverwachte fout", ]; diff --git a/app/Language/nl-NL/Expenses.php b/app/Language/nl-NL/Expenses.php index 45fe775dd..c514677dc 100644 --- a/app/Language/nl-NL/Expenses.php +++ b/app/Language/nl-NL/Expenses.php @@ -1,50 +1,50 @@ "Onkosten toevoegen", - "amount" => "Bedrag", - "amount_number" => "Bedrag moet een getal zijn", - "amount_required" => "Onkosten bedrag vereist", - "by_category" => "Categorie", - "cannot_be_deleted" => "Kan categorie onkosten niet verwijderen", - "cash" => "Contant", - "cash_filter" => "Contant", - "categories_name" => "Categorie", - "category_required" => "categorie is een vereist veld", - "check" => "Cheque", - "check_filter" => "Cheque", - "confirm_delete" => "Weet u zeker dat u de geselecteerde onkosten wilt verwijderen?", - "confirm_restore" => "Weet u zeker dat u de geselecteerde onkosten wilt herstellen?", - "credit" => "Creditcard", - "credit_filter" => "Creditcard", - "date" => "Datum", - "date_number" => "Datum moet een getal zijn", - "date_required" => "datum is een vereist veld", - "debit" => "Betaalpas", - "debit_filter" => "Betaalpas", - "description" => "Beschrijving", - "due" => "Te betalen", - "due_filter" => "Te betalen", - "employee" => "Aangemaakt door", - "error_adding_updating" => "Fout bij toevoegen/bijwerken onkosten", - "expense_id" => "ID", - "expenses_employee" => "Werknemer", - "info" => "Onkosten info", - "ip_address" => "", - "is_deleted" => "Verwijderd", - "name_required" => "Onkosten naam vereist", - "new" => "Nieuwe onkosten", - "new_supplier" => "", - "no_expenses_to_display" => "Geen onkosten om te weergeven", - "none_selected" => "Geen onkosten geselecteerd", - "one_or_multiple" => "Onkosten", - "payment" => "Betalingssoort", - "start_typing_supplier_name" => "Begin met typen leveranciersnaam...", - "successful_adding" => "Onkosten toegevoegd", - "successful_deleted" => "Onkosten verwijderd", - "successful_updating" => "Onkosten bijgewerkt", - "supplier_name" => "Leverancier", - "supplier_tax_code" => "Belastingcode", - "tax_amount" => "Belasting", - "tax_amount_number" => "", - "update" => "Onkosten bijwerken", + "add_item" => "Onkosten toevoegen", + "amount" => "Bedrag", + "amount_number" => "Bedrag moet een getal zijn", + "amount_required" => "Onkosten bedrag vereist", + "by_category" => "Categorie", + "cannot_be_deleted" => "Kan categorie onkosten niet verwijderen", + "cash" => "Contant", + "cash_filter" => "Contant", + "categories_name" => "Categorie", + "category_required" => "categorie is een vereist veld", + "check" => "Cheque", + "check_filter" => "Cheque", + "confirm_delete" => "Weet u zeker dat u de geselecteerde onkosten wilt verwijderen?", + "confirm_restore" => "Weet u zeker dat u de geselecteerde onkosten wilt herstellen?", + "credit" => "Creditcard", + "credit_filter" => "Creditcard", + "date" => "Datum", + "date_number" => "Datum moet een getal zijn", + "date_required" => "datum is een vereist veld", + "debit" => "Betaalpas", + "debit_filter" => "Betaalpas", + "description" => "Beschrijving", + "due" => "Te betalen", + "due_filter" => "Te betalen", + "employee" => "Aangemaakt door", + "error_adding_updating" => "Fout bij toevoegen/bijwerken onkosten", + "expense_id" => "ID", + "expenses_employee" => "Werknemer", + "info" => "Onkosten info", + "ip_address" => "", + "is_deleted" => "Verwijderd", + "name_required" => "Onkosten naam vereist", + "new" => "Nieuwe onkosten", + "new_supplier" => "", + "no_expenses_to_display" => "Geen onkosten om te weergeven", + "none_selected" => "Geen onkosten geselecteerd", + "one_or_multiple" => "Onkosten", + "payment" => "Betalingssoort", + "start_typing_supplier_name" => "Begin met typen leveranciersnaam...", + "successful_adding" => "Onkosten toegevoegd", + "successful_deleted" => "Onkosten verwijderd", + "successful_updating" => "Onkosten bijgewerkt", + "supplier_name" => "Leverancier", + "supplier_tax_code" => "Belastingcode", + "tax_amount" => "Belasting", + "tax_amount_number" => "", + "update" => "Onkosten bijwerken", ]; diff --git a/app/Language/nl-NL/Expenses_categories.php b/app/Language/nl-NL/Expenses_categories.php index 076ca0282..1370291c8 100644 --- a/app/Language/nl-NL/Expenses_categories.php +++ b/app/Language/nl-NL/Expenses_categories.php @@ -1,22 +1,22 @@ "Onkostencategorie naam is vereist", - "add_item" => "Category toevoegen", - "cannot_be_deleted" => "Kan categorie onkosten niet verwijderen", - "category_id" => "ID", - "confirm_delete" => "Weet u zeker dat u de geselecteerde categorie onkosten wilt verwijderen?", - "confirm_restore" => "Weet u zeker dat u de geselecteerde categorie onkosten wilt herstellen?", - "description" => "Categorie beschrijving", - "error_adding_updating" => "Fout bij toevoegen/bijwerken onkosten categorie", - "info" => "Categorie onkosten info", - "name" => "Categorie naam", - "new" => "Nieuwe categorie", - "no_expenses_categories_to_display" => "Geen categorie om te weergeven", - "none_selected" => "Geen categorie onkosten geselecteerd", - "one_or_multiple" => "Categorie onkosten", - "quantity" => "Hoeveelheid", - "successful_adding" => "Onkosten categorie toegevoegd", - "successful_deleted" => "Onkosten categorie verwijderd", - "successful_updating" => "Onkosten categorie bijgewerkt", - "update" => "Categorie bijwerken", + "category_name_required" => "Onkostencategorie naam is vereist", + "add_item" => "Category toevoegen", + "cannot_be_deleted" => "Kan categorie onkosten niet verwijderen", + "category_id" => "ID", + "confirm_delete" => "Weet u zeker dat u de geselecteerde categorie onkosten wilt verwijderen?", + "confirm_restore" => "Weet u zeker dat u de geselecteerde categorie onkosten wilt herstellen?", + "description" => "Categorie beschrijving", + "error_adding_updating" => "Fout bij toevoegen/bijwerken onkosten categorie", + "info" => "Categorie onkosten info", + "name" => "Categorie naam", + "new" => "Nieuwe categorie", + "no_expenses_categories_to_display" => "Geen categorie om te weergeven", + "none_selected" => "Geen categorie onkosten geselecteerd", + "one_or_multiple" => "Categorie onkosten", + "quantity" => "Hoeveelheid", + "successful_adding" => "Onkosten categorie toegevoegd", + "successful_deleted" => "Onkosten categorie verwijderd", + "successful_updating" => "Onkosten categorie bijgewerkt", + "update" => "Categorie bijwerken", ]; diff --git a/app/Language/nl-NL/Giftcards.php b/app/Language/nl-NL/Giftcards.php index 6af70edae..f1811f252 100644 --- a/app/Language/nl-NL/Giftcards.php +++ b/app/Language/nl-NL/Giftcards.php @@ -1,71 +1,71 @@ "Voorraad toevoegen of aftrekken.", - "allow_alt_description" => "Alternatieve beschrijving toestaan", - "bulk_edit" => "Bewerken in bulk", - "cannot_be_deleted" => "Kan geselecteerde cadeaubon(nen) niet verwijderen, één of meer van de geselecteerde cadeaubonnen heeft verkopen.", - "cannot_find_giftcard" => "Cadeaubon niet gevonden.", - "cannot_use" => "Cadeaubon {0} kan niet gebruikt worden voor deze verkoop: ongeldige klant.", - "card_value" => "Waarde", - "category" => "Categorie", - "change_all_to_allow_alt_desc" => "Alternatieve beschrijving toestaan voor alles.", - "change_all_to_not_allow_allow_desc" => "Alternatieve beschrijving niet toestaand voor alles.", - "change_all_to_serialized" => "Alles veranderen naar genummerd", - "change_all_to_unserialized" => "Alles veranderen naar niet genummerd", - "confirm_bulk_edit" => "Weet u zeker dat u de geselecteerde cadeaubon(nen) wilt bewerken?", - "confirm_delete" => "Weet u zeker dat u de geselecteerde cadeaubon(nen) wilt verwijderen?", - "confirm_restore" => "Weet u zeker dat u de geselecteerde cadeaubon(nen) wilt herstellen?", - "cost_price" => "Inkoopprijs", - "count" => "Voorraad bijwerken", - "csv_import_failed" => "CSV importeren mislukt.", - "current_quantity" => "Huidige hoeveelheid", - "description" => "Beschrijving", - "details_count" => "Voorraadtelling details", - "do_nothing" => "Niets doen", - "edit_fields_you_want_to_update" => "Gewenste velden voor geselecteerde cadeaunbon(nen) bewerken.", - "edit_multiple_giftcards" => "Meerdere cadeaubonnen bewerken.", - "error_adding_updating" => "Cadeaubon toevoegen of bijwerken mislukt.", - "error_updating_multiple" => "Cadeaunbon(nen) bijwerken mislukt.", - "generate_barcodes" => "Streepjescodes genereren", - "giftcard" => "Cadeaubon", - "giftcard_number" => "Cadeaubon nummer", - "info_provided_by" => "Info aangeleverd door", - "inventory_comments" => "Opmerkingen", - "is_serialized" => "Cadeaubon heeft serienummer", - "low_inventory_giftcards" => "Lage voorraad cadeaubonnen", - "manually_editing_of_quantity" => "Hoeveelheid handmatig bewerken", - "must_select_giftcard_for_barcode" => "Selecteer tenminste één (1) cadeaubon om streepjescodes te genereren.", - "new" => "Nieuwe cadeaubon", - "no_description_giftcards" => "Cadeaubonnen zonder beschrijving", - "no_giftcards_to_display" => "Geen cadeaubonnen om te weergeven.", - "none" => "Geen", - "none_selected" => "Geen cadeaubon(nen) geselecteerd om te bewerken.", - "number" => "Cadeaubon nummer moet een getal zijn.", - "number_information" => "Cadeaubon nummer", - "number_required" => "Cadeaubon nummer is een vereist veld.", - "one_or_multiple" => "Cadeaubon(nen)", - "person_id" => "Klant", - "quantity" => "Hoeveelheid", - "quantity_required" => "Hoeveelheid is een vereist veld. Sluiten (X) om te annuleren.", - "remaining_balance" => "Resterende waarde cadeaubon {0} is {1}!", - "reorder_level" => "Opnieuw bestellen niveau", - "retrive_giftcard_info" => "Cadeaubon info ophalen", - "sales_tax_1" => "BTW", - "sales_tax_2" => "BTW 2", - "serialized_giftcards" => "Cadeaubonnen met serienummer", - "successful_adding" => "Cadeaubon toegevoegd", - "successful_bulk_edit" => "Geselecteerde cadeaubon(nen) bijgewerkt", - "successful_deleted" => "U heeft verwijderd", - "successful_updating" => "Cadeaubon bijgewerkt", - "supplier" => "Leverancier", - "tax_1" => "Belasting 1", - "tax_2" => "Belasting 2", - "tax_percent" => "Belastingpercentage", - "tax_percents" => "Belastingpercentage(s)", - "unit_price" => "Verkoopprijs", - "upc_database" => "Streepjescode database", - "update" => "Cadeaubon bijwerken", - "use_inventory_menu" => "Voorraad menu gebruiken", - "value" => "Cadeaubon waarde moet een getal zijn.", - "value_required" => "Cadeaubon waarde is een vereist veld.", + "add_minus" => "Voorraad toevoegen of aftrekken.", + "allow_alt_description" => "Alternatieve beschrijving toestaan", + "bulk_edit" => "Bewerken in bulk", + "cannot_be_deleted" => "Kan geselecteerde cadeaubon(nen) niet verwijderen, één of meer van de geselecteerde cadeaubonnen heeft verkopen.", + "cannot_find_giftcard" => "Cadeaubon niet gevonden.", + "cannot_use" => "Cadeaubon {0} kan niet gebruikt worden voor deze verkoop: ongeldige klant.", + "card_value" => "Waarde", + "category" => "Categorie", + "change_all_to_allow_alt_desc" => "Alternatieve beschrijving toestaan voor alles.", + "change_all_to_not_allow_allow_desc" => "Alternatieve beschrijving niet toestaand voor alles.", + "change_all_to_serialized" => "Alles veranderen naar genummerd", + "change_all_to_unserialized" => "Alles veranderen naar niet genummerd", + "confirm_bulk_edit" => "Weet u zeker dat u de geselecteerde cadeaubon(nen) wilt bewerken?", + "confirm_delete" => "Weet u zeker dat u de geselecteerde cadeaubon(nen) wilt verwijderen?", + "confirm_restore" => "Weet u zeker dat u de geselecteerde cadeaubon(nen) wilt herstellen?", + "cost_price" => "Inkoopprijs", + "count" => "Voorraad bijwerken", + "csv_import_failed" => "CSV importeren mislukt.", + "current_quantity" => "Huidige hoeveelheid", + "description" => "Beschrijving", + "details_count" => "Voorraadtelling details", + "do_nothing" => "Niets doen", + "edit_fields_you_want_to_update" => "Gewenste velden voor geselecteerde cadeaunbon(nen) bewerken.", + "edit_multiple_giftcards" => "Meerdere cadeaubonnen bewerken.", + "error_adding_updating" => "Cadeaubon toevoegen of bijwerken mislukt.", + "error_updating_multiple" => "Cadeaunbon(nen) bijwerken mislukt.", + "generate_barcodes" => "Streepjescodes genereren", + "giftcard" => "Cadeaubon", + "giftcard_number" => "Cadeaubon nummer", + "info_provided_by" => "Info aangeleverd door", + "inventory_comments" => "Opmerkingen", + "is_serialized" => "Cadeaubon heeft serienummer", + "low_inventory_giftcards" => "Lage voorraad cadeaubonnen", + "manually_editing_of_quantity" => "Hoeveelheid handmatig bewerken", + "must_select_giftcard_for_barcode" => "Selecteer tenminste één (1) cadeaubon om streepjescodes te genereren.", + "new" => "Nieuwe cadeaubon", + "no_description_giftcards" => "Cadeaubonnen zonder beschrijving", + "no_giftcards_to_display" => "Geen cadeaubonnen om te weergeven.", + "none" => "Geen", + "none_selected" => "Geen cadeaubon(nen) geselecteerd om te bewerken.", + "number" => "Cadeaubon nummer moet een getal zijn.", + "number_information" => "Cadeaubon nummer", + "number_required" => "Cadeaubon nummer is een vereist veld.", + "one_or_multiple" => "Cadeaubon(nen)", + "person_id" => "Klant", + "quantity" => "Hoeveelheid", + "quantity_required" => "Hoeveelheid is een vereist veld. Sluiten (X) om te annuleren.", + "remaining_balance" => "Resterende waarde cadeaubon {0} is {1}!", + "reorder_level" => "Opnieuw bestellen niveau", + "retrive_giftcard_info" => "Cadeaubon info ophalen", + "sales_tax_1" => "BTW", + "sales_tax_2" => "BTW 2", + "serialized_giftcards" => "Cadeaubonnen met serienummer", + "successful_adding" => "Cadeaubon toegevoegd", + "successful_bulk_edit" => "Geselecteerde cadeaubon(nen) bijgewerkt", + "successful_deleted" => "U heeft verwijderd", + "successful_updating" => "Cadeaubon bijgewerkt", + "supplier" => "Leverancier", + "tax_1" => "Belasting 1", + "tax_2" => "Belasting 2", + "tax_percent" => "Belastingpercentage", + "tax_percents" => "Belastingpercentage(s)", + "unit_price" => "Verkoopprijs", + "upc_database" => "Streepjescode database", + "update" => "Cadeaubon bijwerken", + "use_inventory_menu" => "Voorraad menu gebruiken", + "value" => "Cadeaubon waarde moet een getal zijn.", + "value_required" => "Cadeaubon waarde is een vereist veld.", ]; diff --git a/app/Language/nl-NL/Item_kits.php b/app/Language/nl-NL/Item_kits.php index dcd3ee83f..fc5dcb628 100644 --- a/app/Language/nl-NL/Item_kits.php +++ b/app/Language/nl-NL/Item_kits.php @@ -1,41 +1,41 @@ "Artikel toevoegen", - "all" => "Alles", - "cannot_be_deleted" => "Artikelset(s) verwijderen mislukt.", - "confirm_delete" => "Weet u zeker dat u de geselecteerde artikelset(s) wilt verwijderen?", - "confirm_restore" => "Weet u zeker dat u de geselecteerde artikelset(s) wilt herstellen?", - "description" => "Artikelset beschrijving", - "discount" => "Korting", - "discount_fixed" => "Vaste korting", - "discount_percent" => "Kortingspercentage", - "discount_type" => "Korting soort", - "error_adding_updating" => "Artikelset toevoegen of bijwerken mislukt.", - "find_kit_item" => "Set artikel", - "info" => "Artikelset info", - "item" => "Artikel", - "item_kit_number" => "Streepjescode", - "item_kit_number_duplicate" => "Artikelset nummer is al aanwezig in de database.", - "item_number" => "", - "item_number_duplicate" => "", - "items" => "Artikelen", - "kit" => "Set ID", - "kit_and_components" => "Set en onderdelen", - "kit_and_stock" => "Set en voorraad", - "kit_only" => "Alleen set", - "name" => "Artikelset naam", - "new" => "Nieuwe artikelset", - "no_item_kits_to_display" => "Geen artikelsets om te weergeven.", - "none_selected" => "Geen artikelsets geselecteerd.", - "one_or_multiple" => "Artikelset(s)", - "price_option" => "Prijs optie", - "priced_only" => "Alleen geprijsd", - "print_option" => "Adruk optie", - "quantity" => "Hoeveelheid", - "sequence" => "Volgorde", - "successful_adding" => "Artikelset toegevoegd", - "successful_deleted" => "U heeft verwijderd", - "successful_updating" => "Artikelset bijgewerkt", - "unit_price" => "", - "update" => "Artikelset bijwerken", + "add_item" => "Artikel toevoegen", + "all" => "Alles", + "cannot_be_deleted" => "Artikelset(s) verwijderen mislukt.", + "confirm_delete" => "Weet u zeker dat u de geselecteerde artikelset(s) wilt verwijderen?", + "confirm_restore" => "Weet u zeker dat u de geselecteerde artikelset(s) wilt herstellen?", + "description" => "Artikelset beschrijving", + "discount" => "Korting", + "discount_fixed" => "Vaste korting", + "discount_percent" => "Kortingspercentage", + "discount_type" => "Korting soort", + "error_adding_updating" => "Artikelset toevoegen of bijwerken mislukt.", + "find_kit_item" => "Set artikel", + "info" => "Artikelset info", + "item" => "Artikel", + "item_kit_number" => "Streepjescode", + "item_kit_number_duplicate" => "Artikelset nummer is al aanwezig in de database.", + "item_number" => "", + "item_number_duplicate" => "", + "items" => "Artikelen", + "kit" => "Set ID", + "kit_and_components" => "Set en onderdelen", + "kit_and_stock" => "Set en voorraad", + "kit_only" => "Alleen set", + "name" => "Artikelset naam", + "new" => "Nieuwe artikelset", + "no_item_kits_to_display" => "Geen artikelsets om te weergeven.", + "none_selected" => "Geen artikelsets geselecteerd.", + "one_or_multiple" => "Artikelset(s)", + "price_option" => "Prijs optie", + "priced_only" => "Alleen geprijsd", + "print_option" => "Adruk optie", + "quantity" => "Hoeveelheid", + "sequence" => "Volgorde", + "successful_adding" => "Artikelset toegevoegd", + "successful_deleted" => "U heeft verwijderd", + "successful_updating" => "Artikelset bijgewerkt", + "unit_price" => "", + "update" => "Artikelset bijwerken", ]; diff --git a/app/Language/nl-NL/Items.php b/app/Language/nl-NL/Items.php index 039eae118..1d324f335 100644 --- a/app/Language/nl-NL/Items.php +++ b/app/Language/nl-NL/Items.php @@ -1,120 +1,120 @@ "Voorraad om toe te voegen of af te trekken.", - "allow_alt_description" => "Alternatieve beschrijving toestaan", - "amount_entry" => "Aantal vermelding", - "bulk_edit" => "Bewerken in bulk", - "buy_price_required" => "Inkoopprijs is een vereist veld.", - "cannot_be_deleted" => "Kan de geselecteerde artikel(en) niet verwijderen, één of meer van de geselecteerde artikelen bevatten verkopen.", - "cannot_find_item" => "Artikel niet gevonden.", - "categories" => "", - "category" => "Categorie", - "category_new" => "", - "category_required" => "Categorie is een vereist veld.", - "change_all_to_allow_alt_desc" => "Alternatieve beschrijving toestaan voor alles.", - "change_all_to_not_allow_allow_desc" => "Alternatieve beschrijving niet toestaan voor alles.", - "change_all_to_serialized" => "Alles veranderen naar genummerd", - "change_all_to_unserialized" => "Alles veranderen naar ongenummerd", - "change_image" => "Afbeelding veranderen", - "confirm_bulk_edit" => "Weet u zeker dat u de geselecteerde artikel(en) wilt bewerken?", - "confirm_bulk_edit_wipe_taxes" => "Alle artikelbelasting informatie zal worden vervangen.", - "confirm_delete" => "Weet u zeker dat u de geselecteerde artikel(en) wilt verwijderen?", - "confirm_restore" => "Weet u zeker dat u de geselecteerde artikel(en) wilt herstellen?", - "cost_price" => "Inkoopprijs", - "cost_price_number" => "Inkoopprijs moet een getal zijn.", - "cost_price_required" => "Inkoopprijs is een vereist veld.", - "count" => "Voorraad bijwerken", - "csv_import_failed" => "CSV importeren mislukt", - "csv_import_nodata_wrongformat" => "Het geüploade CSV-bestand bevat geen gegevens or heeft de verkeerde indeling.", - "csv_import_partially_failed" => "Er zijn {0} artikel import fout(en) in lijn(en): {1}. Geen rijen geïmporteerd.", - "csv_import_success" => "Artikel CSV geïmporteerd.", - "current_quantity" => "Huidige hoeveelheid", - "default_pack_name" => "Per stuk", - "description" => "Beschrijving", - "details_count" => "Voorraadtelling details", - "do_nothing" => "Niets doen", - "edit" => "", - "edit_fields_you_want_to_update" => "De gewenste velden bewerken voor de geselecteerde artikel(en).", - "edit_multiple_items" => "Meerdere artikelen aan het bewerken", - "empty_upc_items" => "Artikelen zonder streepjescode", - "error_adding_updating" => "Fout bij toevoegen/bijwerken artikel", - "error_updating_multiple" => "Fout bij bijwerken artikelen", - "generate_barcodes" => "Streepjescodes genereren", - "hsn_code" => "Harmonized System Nomenclature", - "image" => "Avatar", - "import_items_csv" => "Artikel importeren vanuit CSV", - "info_provided_by" => "Informatie aangeleverd door", - "inventory" => "Voorraad", - "inventory_CSV_import_quantity" => "Hoeveelheid geïmporteerd vanuit CSV", - "inventory_comments" => "Opmerkingen", - "inventory_data_tracking" => "Voorraad gegevens bijhouden", - "inventory_date" => "Datum", - "inventory_employee" => "Werknemer", - "inventory_in_out_quantity" => "In/uit hoeveelheid", - "inventory_remarks" => "Opmerkingen", - "is_deleted" => "Verwijderd", - "is_printed" => "", - "is_serialized" => "Artikel heeft serienummer", - "item" => "Artikel", - "item_id" => "", - "item_number" => "Streepjescode", - "item_number_duplicate" => "Artikelnummer is al aanwezig in de database.", - "kit" => "Set", - "location" => "Locatie", - "low_inventory_items" => "Artikelen niet voorradig", - "low_sell_item" => "Lage verkoop artikel", - "manually_editing_of_quantity" => "Hoeveelheid handmatig bewerken", - "markup" => "", - "name" => "Artikelnaam", - "name_required" => "Artikelnaam is een vereist veld.", - "new" => "Nieuw artikel", - "no_description_items" => "Artikelen zonder beschrijving", - "no_items_to_display" => "Geen artikelen om te weergeven.", - "none" => "Geen", - "none_selected" => "Geen artikel(en) geselecteerd om te bewerken", - "nonstock" => "Niet-voorradig", - "number_information" => "Artikelnummer", - "number_required" => "Streepjescode is een vereist veld.", - "one_or_multiple" => "artikel(en)", - "pack_name" => "Verpakkingnaam", - "qty_per_pack" => "Hoeveelheid per verpakking", - "quantity" => "Hoeveelheid", - "quantity_number" => "Hoeveelheid moet een getal zijn.", - "quantity_required" => "Hoeveelheid is een vereist veld.", - "receiving_quantity" => "Leveringshoeveelheid", - "remove_image" => "Afbeelding verwijderen", - "reorder_level" => "Opnieuw bestellen niveau", - "reorder_level_number" => "Opnieuw bestellen niveau moet een getal zijn.", - "reorder_level_required" => "Opnieuw bestellen niveau is een vereist veld.", - "retrive_item_info" => "Artikelinfo ophalen", - "sales_tax_1" => "BTW", - "sales_tax_2" => "BTW 2", - "search_attributes" => "Zoekkenmerken", - "select_image" => "Afbeelding selecteren", - "serialized_items" => "Artikelen met serienummer", - "standard" => "Standaard", - "stock" => "Voorraad", - "stock_location" => "Voorraadlocatie", - "stock_type" => "Voorraadsoort", - "successful_adding" => "Artikel toegevoegd", - "successful_bulk_edit" => "Geselecteerde artikel(en) bijgewerkt", - "successful_deleted" => "U heeft verwijderd", - "successful_updating" => "Artikel bijgewerkt", - "supplier" => "Leverancier", - "tax_1" => "Belasting 1", - "tax_2" => "Belasting 2", - "tax_3" => "", - "tax_category" => "Belastingcategorie", - "tax_percent" => "VAT %", - "tax_percent_number" => "Belastingpercentage moet een numerieke waarde zijn", - "tax_percent_required" => "Belastingpercentage is een vereist veld.", - "tax_percents" => "Belastingpercentage(s)", - "temp" => "Tijdelijk", - "type" => "Artikelsoort", - "unit_price" => "Verkoopprijs", - "unit_price_number" => "Eenheid prijs moet een getal zijn.", - "unit_price_required" => "Verkoopprijs is een vereist veld.", - "upc_database" => "Streepjescode database", - "update" => "Artikel bijwerken", - "use_inventory_menu" => "Voorraadmenu gebruiken", + "add_minus" => "Voorraad om toe te voegen of af te trekken.", + "allow_alt_description" => "Alternatieve beschrijving toestaan", + "amount_entry" => "Aantal vermelding", + "bulk_edit" => "Bewerken in bulk", + "buy_price_required" => "Inkoopprijs is een vereist veld.", + "cannot_be_deleted" => "Kan de geselecteerde artikel(en) niet verwijderen, één of meer van de geselecteerde artikelen bevatten verkopen.", + "cannot_find_item" => "Artikel niet gevonden.", + "categories" => "", + "category" => "Categorie", + "category_new" => "", + "category_required" => "Categorie is een vereist veld.", + "change_all_to_allow_alt_desc" => "Alternatieve beschrijving toestaan voor alles.", + "change_all_to_not_allow_allow_desc" => "Alternatieve beschrijving niet toestaan voor alles.", + "change_all_to_serialized" => "Alles veranderen naar genummerd", + "change_all_to_unserialized" => "Alles veranderen naar ongenummerd", + "change_image" => "Afbeelding veranderen", + "confirm_bulk_edit" => "Weet u zeker dat u de geselecteerde artikel(en) wilt bewerken?", + "confirm_bulk_edit_wipe_taxes" => "Alle artikelbelasting informatie zal worden vervangen.", + "confirm_delete" => "Weet u zeker dat u de geselecteerde artikel(en) wilt verwijderen?", + "confirm_restore" => "Weet u zeker dat u de geselecteerde artikel(en) wilt herstellen?", + "cost_price" => "Inkoopprijs", + "cost_price_number" => "Inkoopprijs moet een getal zijn.", + "cost_price_required" => "Inkoopprijs is een vereist veld.", + "count" => "Voorraad bijwerken", + "csv_import_failed" => "CSV importeren mislukt", + "csv_import_nodata_wrongformat" => "Het geüploade CSV-bestand bevat geen gegevens or heeft de verkeerde indeling.", + "csv_import_partially_failed" => "Er zijn {0} artikel import fout(en) in lijn(en): {1}. Geen rijen geïmporteerd.", + "csv_import_success" => "Artikel CSV geïmporteerd.", + "current_quantity" => "Huidige hoeveelheid", + "default_pack_name" => "Per stuk", + "description" => "Beschrijving", + "details_count" => "Voorraadtelling details", + "do_nothing" => "Niets doen", + "edit" => "", + "edit_fields_you_want_to_update" => "De gewenste velden bewerken voor de geselecteerde artikel(en).", + "edit_multiple_items" => "Meerdere artikelen aan het bewerken", + "empty_upc_items" => "Artikelen zonder streepjescode", + "error_adding_updating" => "Fout bij toevoegen/bijwerken artikel", + "error_updating_multiple" => "Fout bij bijwerken artikelen", + "generate_barcodes" => "Streepjescodes genereren", + "hsn_code" => "Harmonized System Nomenclature", + "image" => "Avatar", + "import_items_csv" => "Artikel importeren vanuit CSV", + "info_provided_by" => "Informatie aangeleverd door", + "inventory" => "Voorraad", + "inventory_CSV_import_quantity" => "Hoeveelheid geïmporteerd vanuit CSV", + "inventory_comments" => "Opmerkingen", + "inventory_data_tracking" => "Voorraad gegevens bijhouden", + "inventory_date" => "Datum", + "inventory_employee" => "Werknemer", + "inventory_in_out_quantity" => "In/uit hoeveelheid", + "inventory_remarks" => "Opmerkingen", + "is_deleted" => "Verwijderd", + "is_printed" => "", + "is_serialized" => "Artikel heeft serienummer", + "item" => "Artikel", + "item_id" => "", + "item_number" => "Streepjescode", + "item_number_duplicate" => "Artikelnummer is al aanwezig in de database.", + "kit" => "Set", + "location" => "Locatie", + "low_inventory_items" => "Artikelen niet voorradig", + "low_sell_item" => "Lage verkoop artikel", + "manually_editing_of_quantity" => "Hoeveelheid handmatig bewerken", + "markup" => "", + "name" => "Artikelnaam", + "name_required" => "Artikelnaam is een vereist veld.", + "new" => "Nieuw artikel", + "no_description_items" => "Artikelen zonder beschrijving", + "no_items_to_display" => "Geen artikelen om te weergeven.", + "none" => "Geen", + "none_selected" => "Geen artikel(en) geselecteerd om te bewerken", + "nonstock" => "Niet-voorradig", + "number_information" => "Artikelnummer", + "number_required" => "Streepjescode is een vereist veld.", + "one_or_multiple" => "artikel(en)", + "pack_name" => "Verpakkingnaam", + "qty_per_pack" => "Hoeveelheid per verpakking", + "quantity" => "Hoeveelheid", + "quantity_number" => "Hoeveelheid moet een getal zijn.", + "quantity_required" => "Hoeveelheid is een vereist veld.", + "receiving_quantity" => "Leveringshoeveelheid", + "remove_image" => "Afbeelding verwijderen", + "reorder_level" => "Opnieuw bestellen niveau", + "reorder_level_number" => "Opnieuw bestellen niveau moet een getal zijn.", + "reorder_level_required" => "Opnieuw bestellen niveau is een vereist veld.", + "retrive_item_info" => "Artikelinfo ophalen", + "sales_tax_1" => "BTW", + "sales_tax_2" => "BTW 2", + "search_attributes" => "Zoekkenmerken", + "select_image" => "Afbeelding selecteren", + "serialized_items" => "Artikelen met serienummer", + "standard" => "Standaard", + "stock" => "Voorraad", + "stock_location" => "Voorraadlocatie", + "stock_type" => "Voorraadsoort", + "successful_adding" => "Artikel toegevoegd", + "successful_bulk_edit" => "Geselecteerde artikel(en) bijgewerkt", + "successful_deleted" => "U heeft verwijderd", + "successful_updating" => "Artikel bijgewerkt", + "supplier" => "Leverancier", + "tax_1" => "Belasting 1", + "tax_2" => "Belasting 2", + "tax_3" => "", + "tax_category" => "Belastingcategorie", + "tax_percent" => "VAT %", + "tax_percent_number" => "Belastingpercentage moet een numerieke waarde zijn", + "tax_percent_required" => "Belastingpercentage is een vereist veld.", + "tax_percents" => "Belastingpercentage(s)", + "temp" => "Tijdelijk", + "type" => "Artikelsoort", + "unit_price" => "Verkoopprijs", + "unit_price_number" => "Eenheid prijs moet een getal zijn.", + "unit_price_required" => "Verkoopprijs is een vereist veld.", + "upc_database" => "Streepjescode database", + "update" => "Artikel bijwerken", + "use_inventory_menu" => "Voorraadmenu gebruiken", ]; diff --git a/app/Language/nl-NL/Login.php b/app/Language/nl-NL/Login.php index ade97e530..87d61d40d 100644 --- a/app/Language/nl-NL/Login.php +++ b/app/Language/nl-NL/Login.php @@ -1,15 +1,15 @@ "Ik ben geen robot.", - "go" => "Aanmelden", - "invalid_gcaptcha" => "Bewijs dat je geen robot bent.", - "invalid_installation" => "De installatie is niet juist, controleer uw php.ini bestand.", - "invalid_username_and_password" => "Ongeldige gebruikersnaam en/of wachtwoord.", - "login" => "Aanmelden", - "logout" => "Afmelden", - "migration_needed" => "Een databasemigratie naar {0} zal starten na aanmelding.", - "password" => "Wachtwoord", - "required_username" => "Het gebruikersnaam veld is verplicht.", - "username" => "Gebruikersnaam", - "welcome" => "Welkom bij {0}!", + "gcaptcha" => "Ik ben geen robot.", + "go" => "Aanmelden", + "invalid_gcaptcha" => "Bewijs dat je geen robot bent.", + "invalid_installation" => "De installatie is niet juist, controleer uw php.ini bestand.", + "invalid_username_and_password" => "Ongeldige gebruikersnaam en/of wachtwoord.", + "login" => "Aanmelden", + "logout" => "Afmelden", + "migration_needed" => "Een databasemigratie naar {0} zal starten na aanmelding.", + "password" => "Wachtwoord", + "required_username" => "Het gebruikersnaam veld is verplicht.", + "username" => "Gebruikersnaam", + "welcome" => "Welkom bij {0}!", ]; diff --git a/app/Language/nl-NL/Messages.php b/app/Language/nl-NL/Messages.php index d959f726c..c4ed0c4bb 100644 --- a/app/Language/nl-NL/Messages.php +++ b/app/Language/nl-NL/Messages.php @@ -1,15 +1,15 @@ "Voornaam", - "last_name" => "Achternaam", - "message" => "Bericht", - "message_placeholder" => "Uw bericht hier...", - "message_required" => "Bericht verplicht", - "multiple_phones" => "(In het geval van meerdere ontvangers, voer de mobiele nummers in gescheiden door komma's)", - "phone" => "Telefoonnummer", - "phone_number_required" => "Telefoonnummer verplicht", - "phone_placeholder" => "Mobiele nummer(s) hier...", - "sms_send" => "SMS verzenden", - "successfully_sent" => "Bericht verzonden naar: ", - "unsuccessfully_sent" => "Bericht niet verzonden naar: ", + "first_name" => "Voornaam", + "last_name" => "Achternaam", + "message" => "Bericht", + "message_placeholder" => "Uw bericht hier...", + "message_required" => "Bericht verplicht", + "multiple_phones" => "(In het geval van meerdere ontvangers, voer de mobiele nummers in gescheiden door komma's)", + "phone" => "Telefoonnummer", + "phone_number_required" => "Telefoonnummer verplicht", + "phone_placeholder" => "Mobiele nummer(s) hier...", + "sms_send" => "SMS verzenden", + "successfully_sent" => "Bericht verzonden naar: ", + "unsuccessfully_sent" => "Bericht niet verzonden naar: ", ]; diff --git a/app/Language/nl-NL/Module.php b/app/Language/nl-NL/Module.php index bbb368178..2c3f00131 100644 --- a/app/Language/nl-NL/Module.php +++ b/app/Language/nl-NL/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "Kenmerken", - "attributes_desc" => "Kenmerken toevoegen, bijwerken, verwijderen en zoeken.", - "both" => "Beide", - "cashups" => "Kasopmaak", - "cashups_desc" => "Kasopmaak toevoegen, bijwerken, verwijderen en zoeken.", - "config" => "Configuratie", - "config_desc" => "OSPOS's configuratie wijzigen.", - "customers" => "Klanten", - "customers_desc" => "Klanten toevoegen, bijwerken, verwijderen en zoeken.", - "employees" => "Werknemers", - "employees_desc" => "Werknemers toevoegen, bijwerken, verwijderen en zoeken.", - "expenses" => "Onkosten", - "expenses_categories" => "Onkosten categoriën", - "expenses_categories_desc" => "Onkosten categorieën toevoegen, bijwerken en verwijderen.", - "expenses_desc" => "Onkosten toevoegen, bijwerken, verwijderen en zoeken.", - "giftcards" => "Cadeaubonnen", - "giftcards_desc" => "Cadeaubonnen toevoegen, bijwerken, verwijderen en zoeken.", - "home" => "Home", - "home_desc" => "Home menu modules weergeven.", - "item_kits" => "Artikelsets", - "item_kits_desc" => "Artikelsets toevoegen, bijwerken, verwijderen en zoeken.", - "items" => "Artikelen", - "items_desc" => "Artikelen toevoegen, bijwerken, verwijderen en zoeken.", - "messages" => "Berichten", - "messages_desc" => "Berichten verzenden naar klanten, leveranciers en werknemers.", - "migrate" => "Migreren", - "migrate_desc" => "OSPOS database bijwerken.", - "office" => "Kantoor", - "office_desc" => "Kantoor menu modules weergeven.", - "receivings" => "Leveringen", - "receivings_desc" => "Inkooporders verwerken.", - "reports" => "Rapporten", - "reports_desc" => "Rapporten weergeven en genereren.", - "sales" => "Verkopen", - "sales_desc" => "Verkopen en retouren verwerken.", - "suppliers" => "Leveranciers", - "suppliers_desc" => "Leveranciers toevoegen, bijwerken, verwijderen en zoeken.", - "taxes" => "Belastingen", - "taxes_desc" => "BTW configureren.", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "Kenmerken", + "attributes_desc" => "Kenmerken toevoegen, bijwerken, verwijderen en zoeken.", + "both" => "Beide", + "cashups" => "Kasopmaak", + "cashups_desc" => "Kasopmaak toevoegen, bijwerken, verwijderen en zoeken.", + "config" => "Configuratie", + "config_desc" => "OSPOS's configuratie wijzigen.", + "customers" => "Klanten", + "customers_desc" => "Klanten toevoegen, bijwerken, verwijderen en zoeken.", + "employees" => "Werknemers", + "employees_desc" => "Werknemers toevoegen, bijwerken, verwijderen en zoeken.", + "expenses" => "Onkosten", + "expenses_categories" => "Onkosten categoriën", + "expenses_categories_desc" => "Onkosten categorieën toevoegen, bijwerken en verwijderen.", + "expenses_desc" => "Onkosten toevoegen, bijwerken, verwijderen en zoeken.", + "giftcards" => "Cadeaubonnen", + "giftcards_desc" => "Cadeaubonnen toevoegen, bijwerken, verwijderen en zoeken.", + "home" => "Home", + "home_desc" => "Home menu modules weergeven.", + "item_kits" => "Artikelsets", + "item_kits_desc" => "Artikelsets toevoegen, bijwerken, verwijderen en zoeken.", + "items" => "Artikelen", + "items_desc" => "Artikelen toevoegen, bijwerken, verwijderen en zoeken.", + "messages" => "Berichten", + "messages_desc" => "Berichten verzenden naar klanten, leveranciers en werknemers.", + "migrate" => "Migreren", + "migrate_desc" => "OSPOS database bijwerken.", + "office" => "Kantoor", + "office_desc" => "Kantoor menu modules weergeven.", + "receivings" => "Leveringen", + "receivings_desc" => "Inkooporders verwerken.", + "reports" => "Rapporten", + "reports_desc" => "Rapporten weergeven en genereren.", + "sales" => "Verkopen", + "sales_desc" => "Verkopen en retouren verwerken.", + "suppliers" => "Leveranciers", + "suppliers_desc" => "Leveranciers toevoegen, bijwerken, verwijderen en zoeken.", + "taxes" => "Belastingen", + "taxes_desc" => "BTW configureren.", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/nl-NL/Receivings.php b/app/Language/nl-NL/Receivings.php index ae596036e..eeaee13af 100644 --- a/app/Language/nl-NL/Receivings.php +++ b/app/Language/nl-NL/Receivings.php @@ -1,58 +1,58 @@ "", - "cancel_receiving" => "Annuleren", - "cannot_be_deleted" => "Levering(en) verwijderen mislukt.", - "comments" => "Opmerkingen", - "complete_receiving" => "Voltooien", - "confirm_cancel_receiving" => "Weet u zeker dat u deze levering wilt wissen? Alle artikelen worden gewist.", - "confirm_delete" => "Weet u zeker dat u deze levering wilt verwijderen? Dit kan niet ongedaan gemaakt worden.", - "confirm_finish_receiving" => "Bent u zeker dat u dit order wil ingeven? Dit kan niet ongedaan gemaakt worden.", - "confirm_restore" => "", - "cost" => "Kosten", - "daily" => "", - "date" => "Leveringsdatum", - "date_required" => "Een juiste datum moet worden ingevuld.", - "date_type" => "Datum is vereist veld.", - "delete_entire_sale" => "Volledige verkoop verwijderen", - "discount" => "Korting", - "edit" => "Bewerken", - "edit_sale" => "Levering bewerken", - "employee" => "Werknemer", - "error_editing_item" => "Artikel bewerken mislukt.", - "error_requisition" => "Verplaatsen van inventaris van of naar dezelfde voorraad locatie niet mogelijk.", - "find_or_scan_item" => "Artikel vinden of scannen", - "find_or_scan_item_or_receipt" => "Artikel of kassabon vinden of scannen", - "id" => "Levering ID", - "item_name" => "Artikelnaam", - "mode" => "Leveringsmodus", - "new_supplier" => "Nieuwe leverancier", - "one_or_multiple" => "levering(en)", - "print_after_sale" => "Afdrukken na verkoop", - "quantity" => "Aantal", - "receipt" => "Leveringsbewijs", - "receipt_number" => "Levering #", - "receiving" => "Leveren", - "reference" => "Referentie", - "register" => "Artikelen leveren", - "requisition" => "Aanvragen", - "return" => "Retourneren", - "select_supplier" => "Leverancier selecteren (optioneel)", - "ship_pack" => "Aantal in verpakking", - "start_typing_supplier_name" => "Leveranciersnaam typen...", - "stock" => "Voorraad", - "stock_destination" => "Voorraad bestemming", - "stock_locaiton" => "Voorraad locatie", - "stock_source" => "Voorraad herkomst", - "successfully_deleted" => "Succesvol verwijderd", - "successfully_updated" => "Levering succesvol bijgewerkt", - "supplier" => "Leverancier", - "supplier_address" => "Adres", - "supplier_email" => "E-mail", - "supplier_location" => "Locatie", - "total" => "Totaal", - "transaction_failed" => "Leveringstransactie(s) mislukt.", - "unable_to_add_item" => "Artikel toevoegen aan levering mislukt.", - "unsuccessfully_updated" => "Levering niet bijgewerkt.", - "update" => "Bijwerken", + "amount_due" => "", + "cancel_receiving" => "Annuleren", + "cannot_be_deleted" => "Levering(en) verwijderen mislukt.", + "comments" => "Opmerkingen", + "complete_receiving" => "Voltooien", + "confirm_cancel_receiving" => "Weet u zeker dat u deze levering wilt wissen? Alle artikelen worden gewist.", + "confirm_delete" => "Weet u zeker dat u deze levering wilt verwijderen? Dit kan niet ongedaan gemaakt worden.", + "confirm_finish_receiving" => "Bent u zeker dat u dit order wil ingeven? Dit kan niet ongedaan gemaakt worden.", + "confirm_restore" => "", + "cost" => "Kosten", + "daily" => "", + "date" => "Leveringsdatum", + "date_required" => "Een juiste datum moet worden ingevuld.", + "date_type" => "Datum is vereist veld.", + "delete_entire_sale" => "Volledige verkoop verwijderen", + "discount" => "Korting", + "edit" => "Bewerken", + "edit_sale" => "Levering bewerken", + "employee" => "Werknemer", + "error_editing_item" => "Artikel bewerken mislukt.", + "error_requisition" => "Verplaatsen van inventaris van of naar dezelfde voorraad locatie niet mogelijk.", + "find_or_scan_item" => "Artikel vinden of scannen", + "find_or_scan_item_or_receipt" => "Artikel of kassabon vinden of scannen", + "id" => "Levering ID", + "item_name" => "Artikelnaam", + "mode" => "Leveringsmodus", + "new_supplier" => "Nieuwe leverancier", + "one_or_multiple" => "levering(en)", + "print_after_sale" => "Afdrukken na verkoop", + "quantity" => "Aantal", + "receipt" => "Leveringsbewijs", + "receipt_number" => "Levering #", + "receiving" => "Leveren", + "reference" => "Referentie", + "register" => "Artikelen leveren", + "requisition" => "Aanvragen", + "return" => "Retourneren", + "select_supplier" => "Leverancier selecteren (optioneel)", + "ship_pack" => "Aantal in verpakking", + "start_typing_supplier_name" => "Leveranciersnaam typen...", + "stock" => "Voorraad", + "stock_destination" => "Voorraad bestemming", + "stock_locaiton" => "Voorraad locatie", + "stock_source" => "Voorraad herkomst", + "successfully_deleted" => "Succesvol verwijderd", + "successfully_updated" => "Levering succesvol bijgewerkt", + "supplier" => "Leverancier", + "supplier_address" => "Adres", + "supplier_email" => "E-mail", + "supplier_location" => "Locatie", + "total" => "Totaal", + "transaction_failed" => "Leveringstransactie(s) mislukt.", + "unable_to_add_item" => "Artikel toevoegen aan levering mislukt.", + "unsuccessfully_updated" => "Levering niet bijgewerkt.", + "update" => "Bijwerken", ]; diff --git a/app/Language/nl-NL/Reports.php b/app/Language/nl-NL/Reports.php index dfeb1ae04..b268d60d1 100644 --- a/app/Language/nl-NL/Reports.php +++ b/app/Language/nl-NL/Reports.php @@ -1,148 +1,148 @@ "Alles", - "authority" => "Instantie", - "canceled" => "Geannuleerd", - "categories" => "Categorieën", - "categories_summary_report" => "Categorieën overzicht rapport", - "category" => "Categorie", - "code_canceled" => "ANL", - "code_invoice" => "FTR", - "code_pos" => "VKP", - "code_quote" => "O", - "code_return" => "RET", - "code_type" => "Soort", - "code_work_order" => "W/O", - "comments" => "Opmerkingen", - "commission" => "", - "complete" => "Voltooide verkopen en retouren", - "completed_sales" => "Voltooide verkopen", - "confirm_delete" => "Weet u zeker dat u de geselecteerde vermelding(en) wilt verwijderen?", - "confirm_restore" => "Weet u zeker dat u de geselecteerde vermelding(en) wilt herstellen?", - "cost" => "Groothandel", - "cost_price" => "Inkoopprijs", - "count" => "Aantal", - "customer" => "Klant", - "customers" => "Klanten", - "customers_summary_report" => "Klanten overzicht rapport", - "date" => "Datum", - "date_range" => "Datumbereik", - "description" => "Beschrijving", - "detailed_receivings_report" => "Gedetailleerd leveringen rapport", - "detailed_receivings_report_input" => "", - "detailed_reports" => "Gedetailleerde rapporten", - "detailed_requisition_report" => "", - "detailed_sales_report" => "Gedetailleerd transacties rapport", - "discount" => "Korting", - "discount_fixed" => "Vaste korting", - "discount_percent" => "Kortingspercentage", - "discount_type" => "Korting soort", - "discounts" => "Kortingen", - "discounts_summary_report" => "Kortingen overzicht rapport", - "earned" => "Punten verdiend", - "employee" => "Werknemer", - "employees" => "Werknemers", - "employees_summary_report" => "Werknemers overzicht rapport", - "expenses" => "Onkosten", - "expenses_amount" => "Hoeveelheid", - "expenses_categories" => "Onkosten", - "expenses_categories_summary_report" => "Onkosten categorieën overzicht rapport", - "expenses_category" => "Categorie", - "expenses_payment_amount" => "", - "expenses_tax_amount" => "Belasting", - "expenses_total_amount" => "Totale hoeveelheid", - "expenses_total_tax_amount" => "Totale belasting", - "graphical_reports" => "Grafische rapporten", - "inventory" => "Voorraad", - "inventory_low" => "Lage voorraad", - "inventory_low_report" => "Lage voorraad rapport", - "inventory_reports" => "Voorraad rapporten", - "inventory_summary" => "Voorraad overzicht", - "inventory_summary_report" => "Voorraad overzicht rapport", - "item" => "Artikel", - "item_count" => "Filter artikel aantal", - "item_name" => "Artikelnaam", - "item_number" => "Streepjescode", - "items" => "Artikelen", - "items_purchased" => "Artikelen aangeschaft", - "items_received" => "Artikelen ontvangen", - "items_summary_report" => "Artikelen overzicht rapport", - "jurisdiction" => "Jurisdictie", - "low_inventory" => "", - "low_inventory_report" => "", - "low_sell_quantity" => "Lage verkoop hoeveelheid", - "more_than_zero" => "Meer dan nul", - "name" => "Naam", - "no_reports_to_display" => "Geen artikelen om te weergeven.", - "payment_type" => "Betalingssoort", - "payments" => "Betalingen", - "payments_summary_report" => "Betalingen overzicht rapport", - "profit" => "Winst", - "quantity" => "Hoeveelheid", - "quantity_purchased" => "Hoeveelheid aangeschaft", - "quotes" => "Offertes", - "received_by" => "Ontvangen door", - "receiving_id" => "Levering ID", - "receiving_type" => "Levering soort", - "receivings" => "Leveringen", - "reorder_level" => "Opnieuw bestellen niveau", - "report" => "Rapport", - "report_input" => "Rapport invoer", - "reports" => "Rapporten", - "requisition" => "", - "requisition_by" => "", - "requisition_id" => "", - "requisition_item" => "", - "requisition_item_quantity" => "", - "requisition_related_item" => "", - "requisition_related_item_total_quantity" => "", - "requisition_related_item_unit_quantity" => "", - "requisitions" => "Aanvragen", - "returns" => "Retouren", - "revenue" => "Opbrengst", - "sale_id" => "Trans. ID", - "sale_type" => "Transactie soort", - "sales" => "Transacties", - "sales_amount" => "Transacties aantal", - "sales_summary_report" => "Transacties overzicht rapport", - "sales_taxes" => "Verkoopbelastingen", - "sales_taxes_summary_report" => "Verkoopbelastingen overzicht rapport", - "serial_number" => "Serienummer", - "service_charge" => "", - "sold_by" => "Verkocht door", - "sold_items" => "", - "sold_to" => "Verkocht aan", - "stock_location" => "Voorraadlocatie", - "sub_total_value" => "Subtotaal", - "subtotal" => "Subtotaal", - "summary_reports" => "Overzicht rapporten", - "supplied_by" => "Geleverd door", - "supplier" => "Leverancier", - "suppliers" => "Leveranciers", - "suppliers_summary_report" => "Leveranciers overzicht rapport", - "tax" => "Belasting", - "tax_category" => "Belastingcategorie", - "tax_name" => "", - "tax_percent" => "Belastingpercentage", - "tax_rate" => "Belastingtarief", - "taxes" => "Belastingen", - "taxes_summary_report" => "Belastingen overzicht rapport", - "total" => "Totaal", - "total_inventory_value" => "Totale voorraadwaarde", - "total_low_sell_quantity" => "Totale lage verkoop hoeveelheid", - "total_quantity" => "Totale hoeveelheid", - "total_retail" => "Totale factuurwaarde detailhandel", - "trans_amount" => "Transactie aantal", - "trans_due" => "Te betalen", - "trans_group" => "Transactie groep", - "trans_nopay_sales" => "Verkopen zonder betaling", - "trans_payments" => "Betalingen", - "trans_refunded" => "Terugbetaald", - "trans_sales" => "Verkopen", - "trans_type" => "Transactie soort", - "type" => "Soort", - "unit_price" => "Verkoopprijs", - "used" => "Punten gebruikt", - "work_orders" => "Werkorders", - "zero_and_less" => "Nul en minder", + "all" => "Alles", + "authority" => "Instantie", + "canceled" => "Geannuleerd", + "categories" => "Categorieën", + "categories_summary_report" => "Categorieën overzicht rapport", + "category" => "Categorie", + "code_canceled" => "ANL", + "code_invoice" => "FTR", + "code_pos" => "VKP", + "code_quote" => "O", + "code_return" => "RET", + "code_type" => "Soort", + "code_work_order" => "W/O", + "comments" => "Opmerkingen", + "commission" => "", + "complete" => "Voltooide verkopen en retouren", + "completed_sales" => "Voltooide verkopen", + "confirm_delete" => "Weet u zeker dat u de geselecteerde vermelding(en) wilt verwijderen?", + "confirm_restore" => "Weet u zeker dat u de geselecteerde vermelding(en) wilt herstellen?", + "cost" => "Groothandel", + "cost_price" => "Inkoopprijs", + "count" => "Aantal", + "customer" => "Klant", + "customers" => "Klanten", + "customers_summary_report" => "Klanten overzicht rapport", + "date" => "Datum", + "date_range" => "Datumbereik", + "description" => "Beschrijving", + "detailed_receivings_report" => "Gedetailleerd leveringen rapport", + "detailed_receivings_report_input" => "", + "detailed_reports" => "Gedetailleerde rapporten", + "detailed_requisition_report" => "", + "detailed_sales_report" => "Gedetailleerd transacties rapport", + "discount" => "Korting", + "discount_fixed" => "Vaste korting", + "discount_percent" => "Kortingspercentage", + "discount_type" => "Korting soort", + "discounts" => "Kortingen", + "discounts_summary_report" => "Kortingen overzicht rapport", + "earned" => "Punten verdiend", + "employee" => "Werknemer", + "employees" => "Werknemers", + "employees_summary_report" => "Werknemers overzicht rapport", + "expenses" => "Onkosten", + "expenses_amount" => "Hoeveelheid", + "expenses_categories" => "Onkosten", + "expenses_categories_summary_report" => "Onkosten categorieën overzicht rapport", + "expenses_category" => "Categorie", + "expenses_payment_amount" => "", + "expenses_tax_amount" => "Belasting", + "expenses_total_amount" => "Totale hoeveelheid", + "expenses_total_tax_amount" => "Totale belasting", + "graphical_reports" => "Grafische rapporten", + "inventory" => "Voorraad", + "inventory_low" => "Lage voorraad", + "inventory_low_report" => "Lage voorraad rapport", + "inventory_reports" => "Voorraad rapporten", + "inventory_summary" => "Voorraad overzicht", + "inventory_summary_report" => "Voorraad overzicht rapport", + "item" => "Artikel", + "item_count" => "Filter artikel aantal", + "item_name" => "Artikelnaam", + "item_number" => "Streepjescode", + "items" => "Artikelen", + "items_purchased" => "Artikelen aangeschaft", + "items_received" => "Artikelen ontvangen", + "items_summary_report" => "Artikelen overzicht rapport", + "jurisdiction" => "Jurisdictie", + "low_inventory" => "", + "low_inventory_report" => "", + "low_sell_quantity" => "Lage verkoop hoeveelheid", + "more_than_zero" => "Meer dan nul", + "name" => "Naam", + "no_reports_to_display" => "Geen artikelen om te weergeven.", + "payment_type" => "Betalingssoort", + "payments" => "Betalingen", + "payments_summary_report" => "Betalingen overzicht rapport", + "profit" => "Winst", + "quantity" => "Hoeveelheid", + "quantity_purchased" => "Hoeveelheid aangeschaft", + "quotes" => "Offertes", + "received_by" => "Ontvangen door", + "receiving_id" => "Levering ID", + "receiving_type" => "Levering soort", + "receivings" => "Leveringen", + "reorder_level" => "Opnieuw bestellen niveau", + "report" => "Rapport", + "report_input" => "Rapport invoer", + "reports" => "Rapporten", + "requisition" => "", + "requisition_by" => "", + "requisition_id" => "", + "requisition_item" => "", + "requisition_item_quantity" => "", + "requisition_related_item" => "", + "requisition_related_item_total_quantity" => "", + "requisition_related_item_unit_quantity" => "", + "requisitions" => "Aanvragen", + "returns" => "Retouren", + "revenue" => "Opbrengst", + "sale_id" => "Trans. ID", + "sale_type" => "Transactie soort", + "sales" => "Transacties", + "sales_amount" => "Transacties aantal", + "sales_summary_report" => "Transacties overzicht rapport", + "sales_taxes" => "Verkoopbelastingen", + "sales_taxes_summary_report" => "Verkoopbelastingen overzicht rapport", + "serial_number" => "Serienummer", + "service_charge" => "", + "sold_by" => "Verkocht door", + "sold_items" => "", + "sold_to" => "Verkocht aan", + "stock_location" => "Voorraadlocatie", + "sub_total_value" => "Subtotaal", + "subtotal" => "Subtotaal", + "summary_reports" => "Overzicht rapporten", + "supplied_by" => "Geleverd door", + "supplier" => "Leverancier", + "suppliers" => "Leveranciers", + "suppliers_summary_report" => "Leveranciers overzicht rapport", + "tax" => "Belasting", + "tax_category" => "Belastingcategorie", + "tax_name" => "", + "tax_percent" => "Belastingpercentage", + "tax_rate" => "Belastingtarief", + "taxes" => "Belastingen", + "taxes_summary_report" => "Belastingen overzicht rapport", + "total" => "Totaal", + "total_inventory_value" => "Totale voorraadwaarde", + "total_low_sell_quantity" => "Totale lage verkoop hoeveelheid", + "total_quantity" => "Totale hoeveelheid", + "total_retail" => "Totale factuurwaarde detailhandel", + "trans_amount" => "Transactie aantal", + "trans_due" => "Te betalen", + "trans_group" => "Transactie groep", + "trans_nopay_sales" => "Verkopen zonder betaling", + "trans_payments" => "Betalingen", + "trans_refunded" => "Terugbetaald", + "trans_sales" => "Verkopen", + "trans_type" => "Transactie soort", + "type" => "Soort", + "unit_price" => "Verkoopprijs", + "used" => "Punten gebruikt", + "work_orders" => "Werkorders", + "zero_and_less" => "Nul en minder", ]; diff --git a/app/Language/nl-NL/Sales.php b/app/Language/nl-NL/Sales.php index 87cca64ab..4a0c08a58 100644 --- a/app/Language/nl-NL/Sales.php +++ b/app/Language/nl-NL/Sales.php @@ -1,224 +1,224 @@ "Beschikbare punten", - "rewards_package" => "Beloningen", - "rewards_remaining_balance" => "Resterende beloningspunten waarde is ", - "account_number" => "Account #", - "add_payment" => "Betaling toevoegen", - "amount_due" => "Te betalen bedrag", - "amount_tendered" => "Betaald bedrag", - "authorized_signature" => "Geautoriseerde handtekening", - "cancel_sale" => "Annuleren", - "cash" => "Contant", - "cash_1" => "", - "cash_2" => "", - "cash_3" => "", - "cash_4" => "", - "cash_adjustment" => "Contant correctie", - "cash_deposit" => "Contact storting", - "cash_filter" => "Contant", - "change_due" => "Wisselgeld tegoed", - "change_price" => "Verkoopprijs wijzigen", - "check" => "Cheque", - "check_balance" => "Cheque restant", - "check_filter" => "Cheque", - "close" => "", - "comment" => "Opmerking", - "comments" => "Opmerkingen", - "company_name" => "", - "complete" => "", - "complete_sale" => "Voltooien", - "confirm_cancel_sale" => "Weet u zeker dat u deze verkoop wilt wissen? Alle artikelen worden gewist.", - "confirm_delete" => "Weet u zeker dat u de geselecteerde verko(o)p(en) wilt verwijderen?", - "confirm_restore" => "Weet u zeker dat u de geselecteerde verko(o)p(en) wilt herstellen?", - "credit" => "Creditcard", - "credit_deposit" => "Krediet storting", - "credit_filter" => "Creditcard", - "current_table" => "", - "customer" => "Klant", - "customer_address" => "Adres", - "customer_discount" => "Korting", - "customer_email" => "E-mail", - "customer_location" => "Locatie", - "customer_mailchimp_status" => "MailChimp Status", - "customer_optional" => "(Vereist voor te betalen betalingen)", - "customer_required" => "(Vereist)", - "customer_total" => "Totaal", - "customer_total_spent" => "", - "daily_sales" => "", - "date" => "Verkoopdatum", - "date_range" => "Datumbereik", - "date_required" => "Een juiste datum moet ingevuld worden.", - "date_type" => "Datum is een vereist veld.", - "debit" => "Betaalpas", - "debit_filter" => "", - "delete" => "Verwijderen toestaan", - "delete_confirmation" => "Weet u zeker dat u deze verkoop wilt verwijderen? Deze actie kan niet ongedaan worden gemaakt.", - "delete_entire_sale" => "Volledige verkoop verwijderen", - "delete_successful" => "Verkoop verwijderd.", - "delete_unsuccessful" => "Verkoop verwijderen mislukt.", - "description_abbrv" => "Beschr.", - "discard" => "Negeren", - "discard_quote" => "", - "discount" => "Krtng", - "discount_included" => "% korting", - "discount_short" => "%", - "due" => "Te betalen", - "due_filter" => "Te betalen", - "edit" => "Bewerken", - "edit_item" => "Artikel bewerken", - "edit_sale" => "Verkoop bewerken", - "email_receipt" => "E-mail kassabon", - "employee" => "Werknemer", - "entry" => "Vermelding", - "error_editing_item" => "Fout bij artikel bewerken", - "find_or_scan_item" => "Artikel zoeken of scannen", - "find_or_scan_item_or_receipt" => "Artikel of kassabon vinden of scannen", - "giftcard" => "Cadeaubon", - "giftcard_balance" => "Cadeaubon saldo", - "giftcard_filter" => "", - "giftcard_number" => "Cadeaubonnummer", - "group_by_category" => "Groeperen op categorie", - "group_by_type" => "Groeperen op soort", - "hsn" => "HSN", - "id" => "Verkoop ID", - "include_prices" => "Prijzen opnemen?", - "invoice" => "Factuur", - "invoice_confirm" => "Deze factuur zal verzonden worden naar", - "invoice_enable" => "Factuurnummer", - "invoice_filter" => "Facturen", - "invoice_no_email" => "Deze klant bevat geen geldig e-mailadres.", - "invoice_number" => "Factuur #", - "invoice_number_duplicate" => "Factuurnummer {0} moet uniek zijn.", - "invoice_sent" => "Factuur verzonden naar", - "invoice_total" => "Factuurtotaal", - "invoice_type_custom_invoice" => "Aangepaste factuur (custom_invoice.php)", - "invoice_type_custom_tax_invoice" => "Aangepaste belastingfactuur (custom_tax_invoice.php)", - "invoice_type_invoice" => "Factuur (invoice.php)", - "invoice_type_tax_invoice" => "Belastingfactuur (tax_invoice.php)", - "invoice_unsent" => "Fout bij verzenden van factuur naar", - "invoice_update" => "Opnieuw tellen", - "item_insufficient_of_stock" => "Artikel heeft onvoldoende voorraad.", - "item_name" => "Artikelnaam", - "item_number" => "Artikel #", - "item_out_of_stock" => "Artikel is niet voorradig.", - "key_browser" => "Handige snelkoppelingen", - "key_cancel" => "Cancels Current Quote/Invoice/Sale", - "key_customer_search" => "Customer Search", - "key_finish_quote" => "Voltooi Offerte/Factuur zonder betaling", - "key_finish_sale" => "Add Payment and Complete Invoice/Sale", - "key_full" => "Openen in volledig scherm", - "key_function" => "Function", - "key_help" => "Shortcuts", - "key_help_modal" => "Open Shortcuts Window", - "key_in" => "Inzoomen", - "key_item_search" => "Item Search", - "key_out" => "Uitzoomen", - "key_payment" => "Add Payment", - "key_print" => "Huidige pagina afdrukken", - "key_restore" => "Originele weergave/grootte herstellen", - "key_search" => "", - "key_suspend" => "Suspend Current Sale", - "key_suspended" => "Show Suspended Sales", - "key_system" => "", - "key_tendered" => "Edit Amount Tendered", - "key_title" => "Sales Keyboard Shortcuts", - "mc" => "", - "mode" => "Registratie modus", - "must_enter_numeric" => "Betaald bedrag moet een getal zijn.", - "must_enter_numeric_giftcard" => "Cadeaubonnummer moet een getal zijn.", - "new_customer" => "Nieuwe klant", - "new_item" => "Nieuw artikel", - "no_description" => "Geen beschrijving", - "no_filter" => "Alles", - "no_items_in_cart" => "Geen artikelen in de winkelwagen.", - "no_sales_to_display" => "Geen verkopen om te weergeven.", - "none_selected" => "Geen verko(o)p(en) geselecteerd om te verwijderen.", - "nontaxed_ind" => " ", - "not_authorized" => "Deze actie is niet geautoriseerd.", - "one_or_multiple" => "Verko(o)p(en)", - "payment" => "Betalingssoort", - "payment_amount" => "Bedrag", - "payment_not_cover_total" => "Betaalde bedrag moet groter of gelijk zijn aan totaal.", - "payment_type" => "Soort", - "payments" => "", - "payments_total" => "Betalingstotaal", - "price" => "Prijs", - "print_after_sale" => "Afdrukken na verkoop", - "quantity" => "Hoeveelheid", - "quantity_less_than_reorder_level" => "Waarschuwing: gewenste hoeveelheid is lager dan het opnieuw bestellen niveau voor dit artikel.", - "quantity_less_than_zero" => "Waarschuwing: gewenste hoeveelheid is onvoldoende. De verkoop kan nog steeds verwerkt worden, maar controleer de voorraad.", - "quantity_of_items" => "Hoeveelheid van {0} artikelen", - "quote" => "Offerte", - "quote_number" => "Offertenummer", - "quote_number_duplicate" => "Offertenummer moet uniek zijn.", - "quote_sent" => "Offerte verzonden naar", - "quote_unsent" => "Offerte niet verzonden naar", - "receipt" => "Kassabon", - "receipt_no_email" => "Deze klant bevat geen geldig e-mailadres.", - "receipt_number" => "Verkoop #", - "receipt_sent" => "Kassabon verzonden naar", - "receipt_unsent" => "Kassabon niet verzonden naar", - "refund" => "Terugbetaling soort", - "register" => "Verkoopregister", - "remove_customer" => "Klant verwijderen", - "remove_discount" => "", - "return" => "Retourneren", - "rewards" => "Beloningspunten", - "rewards_balance" => "Beloningspunten balans", - "sale" => "Verkoop", - "sale_by_invoice" => "Verkopen op factuur", - "sale_for_customer" => "Klant:", - "sale_time" => "Tijd", - "sales_tax" => "BTW", - "sales_total" => "", - "select_customer" => "Klant selecteren", - "send_invoice" => "Factuur verzenden", - "send_quote" => "Offerte verzenden", - "send_receipt" => "Kassabon verzenden", - "send_work_order" => "Werkorder verzenden", - "serial" => "Serieel", - "service_charge" => "", - "show_due" => "", - "show_invoice" => "Factuur weergeven", - "show_receipt" => "Kassabon weergeven", - "start_typing_customer_name" => "Begin met typen klantgegevens...", - "start_typing_item_name" => "Begin met typen artikelnaam of scan streepjescode...", - "stock" => "Voorraad", - "stock_location" => "Voorraadlocatie", - "sub_total" => "Subtotaal", - "successfully_deleted" => "U heeft verwijderd", - "successfully_restored" => "U heeft hersteld", - "successfully_suspended_sale" => "Verkoop gesluimerd.", - "successfully_updated" => "Verkoop bijgewerkt.", - "suspend_sale" => "Sluimeren", - "suspended_doc_id" => "Document", - "suspended_sale_id" => "ID", - "suspended_sales" => "Gesluimerd", - "table" => "Tafel", - "takings" => "Dagelijkse verkopen", - "tax" => "Belasting", - "tax_id" => "Belasting ID", - "tax_invoice" => "Belastingfactuur", - "tax_percent" => "Belasting %", - "taxed_ind" => "B", - "total" => "Totaal", - "total_tax_exclusive" => "Belasting uitsluiten", - "transaction_failed" => "Verkooptransactie mislukt.", - "unable_to_add_item" => "Artikel toevoegen aan verkoop mislukt", - "unsuccessfully_deleted" => "Verko(o)p(en) verwijderen mislukt.", - "unsuccessfully_restored" => "Verko(o)p(en) herstellen mislukt.", - "unsuccessfully_suspended_sale" => "Verkoop sluimeren mislukt.", - "unsuccessfully_updated" => "Verkoop bijwerken mislukt.", - "unsuspend" => "Ontsluimeren", - "unsuspend_and_delete" => "Actie", - "update" => "Bijwerken", - "upi" => "UPI", - "visa" => "", - "wholesale" => "", - "work_order" => "Werkorder", - "work_order_number" => "Werkordernummer", - "work_order_number_duplicate" => "Werkordernummer moet uniek zijn.", - "work_order_sent" => "Werkorder verzonden naar", - "work_order_unsent" => "Werkorder niet verzonden naar", + "customers_available_points" => "Beschikbare punten", + "rewards_package" => "Beloningen", + "rewards_remaining_balance" => "Resterende beloningspunten waarde is ", + "account_number" => "Account #", + "add_payment" => "Betaling toevoegen", + "amount_due" => "Te betalen bedrag", + "amount_tendered" => "Betaald bedrag", + "authorized_signature" => "Geautoriseerde handtekening", + "cancel_sale" => "Annuleren", + "cash" => "Contant", + "cash_1" => "", + "cash_2" => "", + "cash_3" => "", + "cash_4" => "", + "cash_adjustment" => "Contant correctie", + "cash_deposit" => "Contact storting", + "cash_filter" => "Contant", + "change_due" => "Wisselgeld tegoed", + "change_price" => "Verkoopprijs wijzigen", + "check" => "Cheque", + "check_balance" => "Cheque restant", + "check_filter" => "Cheque", + "close" => "", + "comment" => "Opmerking", + "comments" => "Opmerkingen", + "company_name" => "", + "complete" => "", + "complete_sale" => "Voltooien", + "confirm_cancel_sale" => "Weet u zeker dat u deze verkoop wilt wissen? Alle artikelen worden gewist.", + "confirm_delete" => "Weet u zeker dat u de geselecteerde verko(o)p(en) wilt verwijderen?", + "confirm_restore" => "Weet u zeker dat u de geselecteerde verko(o)p(en) wilt herstellen?", + "credit" => "Creditcard", + "credit_deposit" => "Krediet storting", + "credit_filter" => "Creditcard", + "current_table" => "", + "customer" => "Klant", + "customer_address" => "Adres", + "customer_discount" => "Korting", + "customer_email" => "E-mail", + "customer_location" => "Locatie", + "customer_mailchimp_status" => "MailChimp Status", + "customer_optional" => "(Vereist voor te betalen betalingen)", + "customer_required" => "(Vereist)", + "customer_total" => "Totaal", + "customer_total_spent" => "", + "daily_sales" => "", + "date" => "Verkoopdatum", + "date_range" => "Datumbereik", + "date_required" => "Een juiste datum moet ingevuld worden.", + "date_type" => "Datum is een vereist veld.", + "debit" => "Betaalpas", + "debit_filter" => "", + "delete" => "Verwijderen toestaan", + "delete_confirmation" => "Weet u zeker dat u deze verkoop wilt verwijderen? Deze actie kan niet ongedaan worden gemaakt.", + "delete_entire_sale" => "Volledige verkoop verwijderen", + "delete_successful" => "Verkoop verwijderd.", + "delete_unsuccessful" => "Verkoop verwijderen mislukt.", + "description_abbrv" => "Beschr.", + "discard" => "Negeren", + "discard_quote" => "", + "discount" => "Krtng", + "discount_included" => "% korting", + "discount_short" => "%", + "due" => "Te betalen", + "due_filter" => "Te betalen", + "edit" => "Bewerken", + "edit_item" => "Artikel bewerken", + "edit_sale" => "Verkoop bewerken", + "email_receipt" => "E-mail kassabon", + "employee" => "Werknemer", + "entry" => "Vermelding", + "error_editing_item" => "Fout bij artikel bewerken", + "find_or_scan_item" => "Artikel zoeken of scannen", + "find_or_scan_item_or_receipt" => "Artikel of kassabon vinden of scannen", + "giftcard" => "Cadeaubon", + "giftcard_balance" => "Cadeaubon saldo", + "giftcard_filter" => "", + "giftcard_number" => "Cadeaubonnummer", + "group_by_category" => "Groeperen op categorie", + "group_by_type" => "Groeperen op soort", + "hsn" => "HSN", + "id" => "Verkoop ID", + "include_prices" => "Prijzen opnemen?", + "invoice" => "Factuur", + "invoice_confirm" => "Deze factuur zal verzonden worden naar", + "invoice_enable" => "Factuurnummer", + "invoice_filter" => "Facturen", + "invoice_no_email" => "Deze klant bevat geen geldig e-mailadres.", + "invoice_number" => "Factuur #", + "invoice_number_duplicate" => "Factuurnummer {0} moet uniek zijn.", + "invoice_sent" => "Factuur verzonden naar", + "invoice_total" => "Factuurtotaal", + "invoice_type_custom_invoice" => "Aangepaste factuur (custom_invoice.php)", + "invoice_type_custom_tax_invoice" => "Aangepaste belastingfactuur (custom_tax_invoice.php)", + "invoice_type_invoice" => "Factuur (invoice.php)", + "invoice_type_tax_invoice" => "Belastingfactuur (tax_invoice.php)", + "invoice_unsent" => "Fout bij verzenden van factuur naar", + "invoice_update" => "Opnieuw tellen", + "item_insufficient_of_stock" => "Artikel heeft onvoldoende voorraad.", + "item_name" => "Artikelnaam", + "item_number" => "Artikel #", + "item_out_of_stock" => "Artikel is niet voorradig.", + "key_browser" => "Handige snelkoppelingen", + "key_cancel" => "Cancels Current Quote/Invoice/Sale", + "key_customer_search" => "Customer Search", + "key_finish_quote" => "Voltooi Offerte/Factuur zonder betaling", + "key_finish_sale" => "Add Payment and Complete Invoice/Sale", + "key_full" => "Openen in volledig scherm", + "key_function" => "Function", + "key_help" => "Shortcuts", + "key_help_modal" => "Open Shortcuts Window", + "key_in" => "Inzoomen", + "key_item_search" => "Item Search", + "key_out" => "Uitzoomen", + "key_payment" => "Add Payment", + "key_print" => "Huidige pagina afdrukken", + "key_restore" => "Originele weergave/grootte herstellen", + "key_search" => "", + "key_suspend" => "Suspend Current Sale", + "key_suspended" => "Show Suspended Sales", + "key_system" => "", + "key_tendered" => "Edit Amount Tendered", + "key_title" => "Sales Keyboard Shortcuts", + "mc" => "", + "mode" => "Registratie modus", + "must_enter_numeric" => "Betaald bedrag moet een getal zijn.", + "must_enter_numeric_giftcard" => "Cadeaubonnummer moet een getal zijn.", + "new_customer" => "Nieuwe klant", + "new_item" => "Nieuw artikel", + "no_description" => "Geen beschrijving", + "no_filter" => "Alles", + "no_items_in_cart" => "Geen artikelen in de winkelwagen.", + "no_sales_to_display" => "Geen verkopen om te weergeven.", + "none_selected" => "Geen verko(o)p(en) geselecteerd om te verwijderen.", + "nontaxed_ind" => " ", + "not_authorized" => "Deze actie is niet geautoriseerd.", + "one_or_multiple" => "Verko(o)p(en)", + "payment" => "Betalingssoort", + "payment_amount" => "Bedrag", + "payment_not_cover_total" => "Betaalde bedrag moet groter of gelijk zijn aan totaal.", + "payment_type" => "Soort", + "payments" => "", + "payments_total" => "Betalingstotaal", + "price" => "Prijs", + "print_after_sale" => "Afdrukken na verkoop", + "quantity" => "Hoeveelheid", + "quantity_less_than_reorder_level" => "Waarschuwing: gewenste hoeveelheid is lager dan het opnieuw bestellen niveau voor dit artikel.", + "quantity_less_than_zero" => "Waarschuwing: gewenste hoeveelheid is onvoldoende. De verkoop kan nog steeds verwerkt worden, maar controleer de voorraad.", + "quantity_of_items" => "Hoeveelheid van {0} artikelen", + "quote" => "Offerte", + "quote_number" => "Offertenummer", + "quote_number_duplicate" => "Offertenummer moet uniek zijn.", + "quote_sent" => "Offerte verzonden naar", + "quote_unsent" => "Offerte niet verzonden naar", + "receipt" => "Kassabon", + "receipt_no_email" => "Deze klant bevat geen geldig e-mailadres.", + "receipt_number" => "Verkoop #", + "receipt_sent" => "Kassabon verzonden naar", + "receipt_unsent" => "Kassabon niet verzonden naar", + "refund" => "Terugbetaling soort", + "register" => "Verkoopregister", + "remove_customer" => "Klant verwijderen", + "remove_discount" => "", + "return" => "Retourneren", + "rewards" => "Beloningspunten", + "rewards_balance" => "Beloningspunten balans", + "sale" => "Verkoop", + "sale_by_invoice" => "Verkopen op factuur", + "sale_for_customer" => "Klant:", + "sale_time" => "Tijd", + "sales_tax" => "BTW", + "sales_total" => "", + "select_customer" => "Klant selecteren", + "send_invoice" => "Factuur verzenden", + "send_quote" => "Offerte verzenden", + "send_receipt" => "Kassabon verzenden", + "send_work_order" => "Werkorder verzenden", + "serial" => "Serieel", + "service_charge" => "", + "show_due" => "", + "show_invoice" => "Factuur weergeven", + "show_receipt" => "Kassabon weergeven", + "start_typing_customer_name" => "Begin met typen klantgegevens...", + "start_typing_item_name" => "Begin met typen artikelnaam of scan streepjescode...", + "stock" => "Voorraad", + "stock_location" => "Voorraadlocatie", + "sub_total" => "Subtotaal", + "successfully_deleted" => "U heeft verwijderd", + "successfully_restored" => "U heeft hersteld", + "successfully_suspended_sale" => "Verkoop gesluimerd.", + "successfully_updated" => "Verkoop bijgewerkt.", + "suspend_sale" => "Sluimeren", + "suspended_doc_id" => "Document", + "suspended_sale_id" => "ID", + "suspended_sales" => "Gesluimerd", + "table" => "Tafel", + "takings" => "Dagelijkse verkopen", + "tax" => "Belasting", + "tax_id" => "Belasting ID", + "tax_invoice" => "Belastingfactuur", + "tax_percent" => "Belasting %", + "taxed_ind" => "B", + "total" => "Totaal", + "total_tax_exclusive" => "Belasting uitsluiten", + "transaction_failed" => "Verkooptransactie mislukt.", + "unable_to_add_item" => "Artikel toevoegen aan verkoop mislukt", + "unsuccessfully_deleted" => "Verko(o)p(en) verwijderen mislukt.", + "unsuccessfully_restored" => "Verko(o)p(en) herstellen mislukt.", + "unsuccessfully_suspended_sale" => "Verkoop sluimeren mislukt.", + "unsuccessfully_updated" => "Verkoop bijwerken mislukt.", + "unsuspend" => "Ontsluimeren", + "unsuspend_and_delete" => "Actie", + "update" => "Bijwerken", + "upi" => "UPI", + "visa" => "", + "wholesale" => "", + "work_order" => "Werkorder", + "work_order_number" => "Werkordernummer", + "work_order_number_duplicate" => "Werkordernummer moet uniek zijn.", + "work_order_sent" => "Werkorder verzonden naar", + "work_order_unsent" => "Werkorder niet verzonden naar", ]; diff --git a/app/Language/nl-NL/Suppliers.php b/app/Language/nl-NL/Suppliers.php index 33a2b4576..5be73fd79 100644 --- a/app/Language/nl-NL/Suppliers.php +++ b/app/Language/nl-NL/Suppliers.php @@ -1,24 +1,24 @@ "Accountnummer", - "agency_name" => "Agentschapnaam", - "cannot_be_deleted" => "Kan geselecteerde leverancier(s) niet verwijderen. Eén of meer bevatten verkopen.", - "category" => "Categorie", - "company_name" => "Bedrijfsnaam", - "company_name_required" => "Bedrijfsnaam is een vereist veld.", - "confirm_delete" => "Weet u zeker dat u de geselecteerde leverancier(s) wilt verwijderen?", - "confirm_restore" => "Weet u zeker dat u de geselecteerde leverancier(s) wilt herstellen?", - "cost" => "Kosten leverancier", - "error_adding_updating" => "Leverancier bijwerken of toevoegen mislukt.", - "goods" => "Goederen leverancier", - "new" => "Nieuwe leverancier", - "none_selected" => "Er zijn geen leverancier(s) geselecteerd om te verwijderen.", - "one_or_multiple" => "Leverancier(s)", - "successful_adding" => "Leverancier toegevoegd", - "successful_deleted" => "U heeft verwijderd", - "successful_updating" => "Leverancier bijgewerkt", - "supplier" => "Leverancier", - "supplier_id" => "Id", - "tax_id" => "Belasting ID", - "update" => "Leverancier bijwerken", + "account_number" => "Accountnummer", + "agency_name" => "Agentschapnaam", + "cannot_be_deleted" => "Kan geselecteerde leverancier(s) niet verwijderen. Eén of meer bevatten verkopen.", + "category" => "Categorie", + "company_name" => "Bedrijfsnaam", + "company_name_required" => "Bedrijfsnaam is een vereist veld.", + "confirm_delete" => "Weet u zeker dat u de geselecteerde leverancier(s) wilt verwijderen?", + "confirm_restore" => "Weet u zeker dat u de geselecteerde leverancier(s) wilt herstellen?", + "cost" => "Kosten leverancier", + "error_adding_updating" => "Leverancier bijwerken of toevoegen mislukt.", + "goods" => "Goederen leverancier", + "new" => "Nieuwe leverancier", + "none_selected" => "Er zijn geen leverancier(s) geselecteerd om te verwijderen.", + "one_or_multiple" => "Leverancier(s)", + "successful_adding" => "Leverancier toegevoegd", + "successful_deleted" => "U heeft verwijderd", + "successful_updating" => "Leverancier bijgewerkt", + "supplier" => "Leverancier", + "supplier_id" => "Id", + "tax_id" => "Belasting ID", + "update" => "Leverancier bijwerken", ]; diff --git a/app/Language/nl-NL/Taxes.php b/app/Language/nl-NL/Taxes.php index d35ae9847..4208de7c8 100644 --- a/app/Language/nl-NL/Taxes.php +++ b/app/Language/nl-NL/Taxes.php @@ -1,82 +1,82 @@ "Uitzondering toevoegen", - "cascade" => "Trapsgewijs", - "cascade_sequence" => "Trapsgewijze volgorde", - "city" => "Stad", - "code" => "Code", - "confirm_delete" => "Weet u zeker dat u deze belastingcode verwijderen? Deze actie kan niet ongedaan worden gemaakt", - "confirm_restore" => "Weet u zeker dat u de geselecteerde belastingcode(s) wilt herstellen?", - "default_tax_category" => "Standaard belastingcategorie", - "default_tax_rate" => "Standaard belastingtarief", - "error_adding_updating" => "Belastingcode toevoegen of bijwerken mislukt", - "group_seq" => "Groep volg", - "jurisdiction_name" => "Jurisdictie naam", - "name" => "Naam", - "new" => "Nieuwe belasting", - "no_taxes" => "", - "no_taxes_to_display" => "Geen belastingcode beschikbaar om te weergeven", - "reporting_authority" => "Rapportage instantie", - "round_half_down" => "Halveren naar beneden", - "round_half_even" => "Halveren even", - "round_half_odd" => "Halveren oneven", - "round_half_up" => "Halveren naar boven", - "rounding_code" => "Afronden code", - "sales_tax" => "BTW", - "sales_tax_by_invoice" => "BTW op factuur", - "sequence" => "Volg.", - "state" => "Provincie", - "successful_deleted" => "U heeft verwijderd", - "tax_categories" => "Belastingcategorieën", - "tax_categories_configuration" => "Belastingcategorieën configuratie", - "tax_categories_saved_successfully" => "Belastingcategorieën wijzigingen opgeslagen", - "tax_categories_saved_unsuccessfully" => "Belastingcategorieën wijzigingen niet opgeslagen", - "tax_category" => "Belastingcategorie", - "tax_category_code" => "Belastingcategorie code", - "tax_category_duplicate" => "Dubbele belastingcategorie", - "tax_category_invalid_chars" => "Ongeldige karakters in belastingcategorie naam", - "tax_category_name" => "Belastingcategorie naam", - "tax_category_new" => "Nieuwe belastingcategorie", - "tax_category_required" => "Belastingcategorie is Vereist", - "tax_code" => "Belastingcode", - "tax_code_cannot_be_deleted" => "Belastingcode verwijderen mislukt", - "tax_code_duplicate" => "Dubbele belastingcode", - "tax_code_invalid_chars" => "Ongeldige karakters in belastingcode", - "tax_code_name" => "Belastingcode naam", - "tax_code_required" => "Belastingcode is een vereist veld", - "tax_code_successful_deleted" => "Belastingcode verwijderd", - "tax_code_successful_updated" => "Bijgewerkt", - "tax_code_successful_updating" => "Belastingcode bijgewerkt", - "tax_code_successfully_added" => "Toegevoegd", - "tax_code_type" => "Belastingcode soort", - "tax_codes" => "Belastingcodes", - "tax_codes_configuration" => "Belastingcodes configuratie", - "tax_codes_saved_successfully" => "Belastingcode wijzigingen opgeslagen", - "tax_codes_saved_unsuccessfully" => "Belastingcode wijzigingen niet opgeslagen", - "tax_excluded" => "Exclusief belasting", - "tax_group" => "Belastinggroep", - "tax_group_not_unique" => "Belastinggroep {0} is niet uniek", - "tax_group_sequence" => "Belastinggroep volgorde", - "tax_included" => "Inclusief belasting", - "tax_jurisdiction" => "Belastingjurisdictie", - "tax_jurisdiction_duplicate" => "Dubbele belastingjurisdictie", - "tax_jurisdiction_invalid_chars" => "Ongeldige karakters in jurisdictie naam", - "tax_jurisdiction_required" => "Belastingjurisdictie is vereist", - "tax_jurisdictions" => "Belastingjurisdicties", - "tax_jurisdictions_configuration" => "Belastingjurisdicties configuratie", - "tax_jurisdictions_saved_successfully" => "Belastingjurisdictie wijzigingen opgeslagen", - "tax_jurisdictions_saved_unsuccessfully" => "Belastingjurisdictie wijzigingen niet opgeslagen", - "tax_rate" => "Belastingtarief", - "tax_rate_configuration" => "Belastingtarief configuratie", - "tax_rate_error_adding_updating" => "Belastingtarief toevoegen of bijwerken mislukt", - "tax_rate_numeric" => "Belastingtarief moet een getal zijn", - "tax_rate_required" => "Belastingtarief is een vereist veld", - "tax_rate_successful_updated" => "Bijgewerkt", - "tax_rate_successfully_added" => "Toegevoegd", - "tax_rates" => "Belastingtarieven", - "tax_rates_configuration" => "Belastingtarieven configuratie", - "tax_rounding" => "Belastingafronding", - "tax_type" => "Belastingsoort", - "update" => "Belastingtarief bijwerken", - "vat_tax" => "BTW", + "add_exception" => "Uitzondering toevoegen", + "cascade" => "Trapsgewijs", + "cascade_sequence" => "Trapsgewijze volgorde", + "city" => "Stad", + "code" => "Code", + "confirm_delete" => "Weet u zeker dat u deze belastingcode verwijderen? Deze actie kan niet ongedaan worden gemaakt", + "confirm_restore" => "Weet u zeker dat u de geselecteerde belastingcode(s) wilt herstellen?", + "default_tax_category" => "Standaard belastingcategorie", + "default_tax_rate" => "Standaard belastingtarief", + "error_adding_updating" => "Belastingcode toevoegen of bijwerken mislukt", + "group_seq" => "Groep volg", + "jurisdiction_name" => "Jurisdictie naam", + "name" => "Naam", + "new" => "Nieuwe belasting", + "no_taxes" => "", + "no_taxes_to_display" => "Geen belastingcode beschikbaar om te weergeven", + "reporting_authority" => "Rapportage instantie", + "round_half_down" => "Halveren naar beneden", + "round_half_even" => "Halveren even", + "round_half_odd" => "Halveren oneven", + "round_half_up" => "Halveren naar boven", + "rounding_code" => "Afronden code", + "sales_tax" => "BTW", + "sales_tax_by_invoice" => "BTW op factuur", + "sequence" => "Volg.", + "state" => "Provincie", + "successful_deleted" => "U heeft verwijderd", + "tax_categories" => "Belastingcategorieën", + "tax_categories_configuration" => "Belastingcategorieën configuratie", + "tax_categories_saved_successfully" => "Belastingcategorieën wijzigingen opgeslagen", + "tax_categories_saved_unsuccessfully" => "Belastingcategorieën wijzigingen niet opgeslagen", + "tax_category" => "Belastingcategorie", + "tax_category_code" => "Belastingcategorie code", + "tax_category_duplicate" => "Dubbele belastingcategorie", + "tax_category_invalid_chars" => "Ongeldige karakters in belastingcategorie naam", + "tax_category_name" => "Belastingcategorie naam", + "tax_category_new" => "Nieuwe belastingcategorie", + "tax_category_required" => "Belastingcategorie is Vereist", + "tax_code" => "Belastingcode", + "tax_code_cannot_be_deleted" => "Belastingcode verwijderen mislukt", + "tax_code_duplicate" => "Dubbele belastingcode", + "tax_code_invalid_chars" => "Ongeldige karakters in belastingcode", + "tax_code_name" => "Belastingcode naam", + "tax_code_required" => "Belastingcode is een vereist veld", + "tax_code_successful_deleted" => "Belastingcode verwijderd", + "tax_code_successful_updated" => "Bijgewerkt", + "tax_code_successful_updating" => "Belastingcode bijgewerkt", + "tax_code_successfully_added" => "Toegevoegd", + "tax_code_type" => "Belastingcode soort", + "tax_codes" => "Belastingcodes", + "tax_codes_configuration" => "Belastingcodes configuratie", + "tax_codes_saved_successfully" => "Belastingcode wijzigingen opgeslagen", + "tax_codes_saved_unsuccessfully" => "Belastingcode wijzigingen niet opgeslagen", + "tax_excluded" => "Exclusief belasting", + "tax_group" => "Belastinggroep", + "tax_group_not_unique" => "Belastinggroep {0} is niet uniek", + "tax_group_sequence" => "Belastinggroep volgorde", + "tax_included" => "Inclusief belasting", + "tax_jurisdiction" => "Belastingjurisdictie", + "tax_jurisdiction_duplicate" => "Dubbele belastingjurisdictie", + "tax_jurisdiction_invalid_chars" => "Ongeldige karakters in jurisdictie naam", + "tax_jurisdiction_required" => "Belastingjurisdictie is vereist", + "tax_jurisdictions" => "Belastingjurisdicties", + "tax_jurisdictions_configuration" => "Belastingjurisdicties configuratie", + "tax_jurisdictions_saved_successfully" => "Belastingjurisdictie wijzigingen opgeslagen", + "tax_jurisdictions_saved_unsuccessfully" => "Belastingjurisdictie wijzigingen niet opgeslagen", + "tax_rate" => "Belastingtarief", + "tax_rate_configuration" => "Belastingtarief configuratie", + "tax_rate_error_adding_updating" => "Belastingtarief toevoegen of bijwerken mislukt", + "tax_rate_numeric" => "Belastingtarief moet een getal zijn", + "tax_rate_required" => "Belastingtarief is een vereist veld", + "tax_rate_successful_updated" => "Bijgewerkt", + "tax_rate_successfully_added" => "Toegevoegd", + "tax_rates" => "Belastingtarieven", + "tax_rates_configuration" => "Belastingtarieven configuratie", + "tax_rounding" => "Belastingafronding", + "tax_type" => "Belastingsoort", + "update" => "Belastingtarief bijwerken", + "vat_tax" => "BTW", ]; diff --git a/app/Language/nl-NL/index.html b/app/Language/nl-NL/index.html index b702fbc39..69df4e1df 100644 --- a/app/Language/nl-NL/index.html +++ b/app/Language/nl-NL/index.html @@ -1,7 +1,7 @@ - 403 Forbidden + 403 Forbidden diff --git a/app/Language/pl/Attributes.php b/app/Language/pl/Attributes.php index 2f4e9501f..97cdaf8ed 100644 --- a/app/Language/pl/Attributes.php +++ b/app/Language/pl/Attributes.php @@ -1,32 +1,32 @@ "Wartość atrybutu nie może zawierać'_' lub '|'", - "confirm_delete" => "Czy jesteś pewny, że chcesz usunąć wybrane atrybuty?", - "confirm_restore" => "Czy jesteś pewien, że chcesz przywrócić zaznaczone atrybuty?", - "definition_cannot_be_deleted" => "Nie można usunąć wybranych atrybutów", - "definition_error_adding_updating" => "Atrybut 51 nie może zostać dodany lub zaktualizowany. Sprawdź dziennik błędów.", - "definition_flags" => "Widoczność atrybutu", - "definition_group" => "Grupa", - "definition_id" => "Id", - "definition_name" => "Dodaj atrybut", - "definition_name_required" => "Nazwa atrybutu jest wymagana", - "definition_one_or_multiple" => "atrybut(y)", - "definition_successful_adding" => "Pomyślnie dodano element", - "definition_successful_deleted" => "Pomyślnie usunięto", - "definition_successful_updating" => "Pomyślnie zaktualizowano atrybut", - "definition_type" => "Typ atrybutu", - "definition_type_required" => "Typ atrybutu jest wymagany", - "definition_unit" => "Jednostka miary", - "definition_values" => "Wartość atrybutu", - "new" => "Nowy atrybut", - "no_attributes_to_display" => "Brak elementów do wyświetlenia", - "receipt_visibility" => "Paragon", - "show_in_items" => "Pokaż w produktach", - "show_in_items_visibility" => "Produkty", - "show_in_receipt" => "Pokaż w paragonie", - "show_in_receivings" => "Pokaż w dostawach", - "show_in_receivings_visibility" => "Dostawy", - "show_in_sales" => "Pokaż w sprzedażach", - "show_in_sales_visibility" => "Sprzedaże", - "update" => "Zaktualizuj atrybut", + "attribute_value_invalid_chars" => "Wartość atrybutu nie może zawierać'_' lub '|'", + "confirm_delete" => "Czy jesteś pewny, że chcesz usunąć wybrane atrybuty?", + "confirm_restore" => "Czy jesteś pewien, że chcesz przywrócić zaznaczone atrybuty?", + "definition_cannot_be_deleted" => "Nie można usunąć wybranych atrybutów", + "definition_error_adding_updating" => "Atrybut 51 nie może zostać dodany lub zaktualizowany. Sprawdź dziennik błędów.", + "definition_flags" => "Widoczność atrybutu", + "definition_group" => "Grupa", + "definition_id" => "Id", + "definition_name" => "Dodaj atrybut", + "definition_name_required" => "Nazwa atrybutu jest wymagana", + "definition_one_or_multiple" => "atrybut(y)", + "definition_successful_adding" => "Pomyślnie dodano element", + "definition_successful_deleted" => "Pomyślnie usunięto", + "definition_successful_updating" => "Pomyślnie zaktualizowano atrybut", + "definition_type" => "Typ atrybutu", + "definition_type_required" => "Typ atrybutu jest wymagany", + "definition_unit" => "Jednostka miary", + "definition_values" => "Wartość atrybutu", + "new" => "Nowy atrybut", + "no_attributes_to_display" => "Brak elementów do wyświetlenia", + "receipt_visibility" => "Paragon", + "show_in_items" => "Pokaż w produktach", + "show_in_items_visibility" => "Produkty", + "show_in_receipt" => "Pokaż w paragonie", + "show_in_receivings" => "Pokaż w dostawach", + "show_in_receivings_visibility" => "Dostawy", + "show_in_sales" => "Pokaż w sprzedażach", + "show_in_sales_visibility" => "Sprzedaże", + "update" => "Zaktualizuj atrybut", ]; diff --git a/app/Language/pl/Bootstrap_tables.php b/app/Language/pl/Bootstrap_tables.php index da3c5ada2..191baa811 100644 --- a/app/Language/pl/Bootstrap_tables.php +++ b/app/Language/pl/Bootstrap_tables.php @@ -1,11 +1,11 @@ "wszystko", - "columns" => "Kolumny", - "hide_show_pagination" => "Ukryj/pokaż paginację", - "loading" => "Ładowanie, proszę czekać...", - "page_from_to" => "Pokazuję od {0} do {1} z {2} wierszy", - "refresh" => "Odśwież", - "rows_per_page" => "{0} wierszy na stronę", - "toggle" => "Włącz", + "all" => "wszystko", + "columns" => "Kolumny", + "hide_show_pagination" => "Ukryj/pokaż paginację", + "loading" => "Ładowanie, proszę czekać...", + "page_from_to" => "Pokazuję od {0} do {1} z {2} wierszy", + "refresh" => "Odśwież", + "rows_per_page" => "{0} wierszy na stronę", + "toggle" => "Włącz", ]; diff --git a/app/Language/pl/Calendar.php b/app/Language/pl/Calendar.php index abbdcfeb8..900f0f774 100644 --- a/app/Language/pl/Calendar.php +++ b/app/Language/pl/Calendar.php @@ -1,48 +1,48 @@ "Nie", - "mo" => "Pon", - "tu" => "Wt", - "we" => "Śr", - "th" => "Czw", - "fr" => "Pt", - "sa" => "Sob", - "sun" => "Nie", - "mon" => "Pon", - "tue" => "Wt", - "wed" => "Śr", - "thu" => "Czw", - "fri" => "Pt", - "sat" => "Sob", - "sunday" => "Niedziela", - "monday" => "Poniedziałek", - "tuesday" => "Wtorek", - "wednesday" => "Środa", - "thursday" => "Czwartek", - "friday" => "Piątek", - "saturday" => "Sobota", - "jan" => "Sty", - "feb" => "Lut", - "mar" => "Mar", - "apr" => "Kwi", - "may" => "Maj", - "jun" => "Cze", - "jul" => "Lip", - "aug" => "Sie", - "sep" => "Wrz", - "oct" => "Paź", - "nov" => "Lis", - "dec" => "Gru", - "january" => "Styczeń", - "february" => "Luty", - "march" => "Marzec", - "april" => "Kwiecień", - "mayl" => "Maj", - "june" => "Czerwiec", - "july" => "Lipiec", - "august" => "Sierpień", - "september" => "Wrzesień", - "october" => "Październik", - "november" => "Listopad", - "december" => "Grudzień", + "su" => "Nie", + "mo" => "Pon", + "tu" => "Wt", + "we" => "Śr", + "th" => "Czw", + "fr" => "Pt", + "sa" => "Sob", + "sun" => "Nie", + "mon" => "Pon", + "tue" => "Wt", + "wed" => "Śr", + "thu" => "Czw", + "fri" => "Pt", + "sat" => "Sob", + "sunday" => "Niedziela", + "monday" => "Poniedziałek", + "tuesday" => "Wtorek", + "wednesday" => "Środa", + "thursday" => "Czwartek", + "friday" => "Piątek", + "saturday" => "Sobota", + "jan" => "Sty", + "feb" => "Lut", + "mar" => "Mar", + "apr" => "Kwi", + "may" => "Maj", + "jun" => "Cze", + "jul" => "Lip", + "aug" => "Sie", + "sep" => "Wrz", + "oct" => "Paź", + "nov" => "Lis", + "dec" => "Gru", + "january" => "Styczeń", + "february" => "Luty", + "march" => "Marzec", + "april" => "Kwiecień", + "mayl" => "Maj", + "june" => "Czerwiec", + "july" => "Lipiec", + "august" => "Sierpień", + "september" => "Wrzesień", + "october" => "Październik", + "november" => "Listopad", + "december" => "Grudzień", ]; diff --git a/app/Language/pl/Cashups.php b/app/Language/pl/Cashups.php index f56328d05..0f524563d 100644 --- a/app/Language/pl/Cashups.php +++ b/app/Language/pl/Cashups.php @@ -1,49 +1,49 @@ "Liczba", - "amount_number" => "", - "amount_required" => "", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "", - "cash_difference" => "", - "close_date" => "", - "close_employee" => "", - "closed_amount_card" => "", - "closed_amount_cash" => "", - "closed_amount_check" => "", - "closed_amount_due" => "", - "closed_amount_giftcard" => "", - "closed_amount_total" => "", - "closed_date" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "confirm_submit" => "", - "date_number" => "", - "date_required" => "", - "description" => "", - "enable_expected" => "", - "error_adding_updating" => "", - "giftcard" => "", - "id" => "", - "info" => "", - "info_employee" => "", - "is_deleted" => "", - "new" => "", - "no_cashups_to_display" => "", - "none_selected" => "", - "note" => "", - "one_or_multiple" => "", - "open_amount_cash" => "", - "open_date" => "", - "open_employee" => "", - "opened_date" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "total" => "", - "transfer_amount_cash" => "", - "transfer_amount_cash_minus" => "", - "update" => "", - "warning" => "", + "amount" => "Liczba", + "amount_number" => "", + "amount_required" => "", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "", + "cash_difference" => "", + "close_date" => "", + "close_employee" => "", + "closed_amount_card" => "", + "closed_amount_cash" => "", + "closed_amount_check" => "", + "closed_amount_due" => "", + "closed_amount_giftcard" => "", + "closed_amount_total" => "", + "closed_date" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "confirm_submit" => "", + "date_number" => "", + "date_required" => "", + "description" => "", + "enable_expected" => "", + "error_adding_updating" => "", + "giftcard" => "", + "id" => "", + "info" => "", + "info_employee" => "", + "is_deleted" => "", + "new" => "", + "no_cashups_to_display" => "", + "none_selected" => "", + "note" => "", + "one_or_multiple" => "", + "open_amount_cash" => "", + "open_date" => "", + "open_employee" => "", + "opened_date" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "total" => "", + "transfer_amount_cash" => "", + "transfer_amount_cash_minus" => "", + "update" => "", + "warning" => "", ]; diff --git a/app/Language/pl/Common.php b/app/Language/pl/Common.php index 238a0cc96..055e41fb1 100644 --- a/app/Language/pl/Common.php +++ b/app/Language/pl/Common.php @@ -1,88 +1,88 @@ "Adres 1", - "address_2" => "Adres 2", - "admin" => "", - "city" => "Miasto", - "clerk" => "", - "close" => "Zamknij", - "color" => "", - "comments" => "Komentarze", - "common" => "common", - "confirm_search" => "Zaznaczyłeś jeden lub więcej wierszy, nie będą dalej zaznaczone po wyszukaniu. Czy jesteś pewien, że chcesz zatwierdzić to wyszukiwanie?", - "copyrights" => "© 2010 - {0}", - "correct_errors" => "Proszę poprawić zidentyfikowane błędy przed zapisaniem", - "country" => "Kraj", - "dashboard" => "", - "date" => "Data", - "delete" => "Usuń", - "det" => "szczegóły", - "download_import_template" => "Pobierz szablon importu pliku CSV (.CSV)", - "edit" => "edytuj", - "email" => "Email", - "email_invalid_format" => "Adres email nie jest w poprawnym formacie.", - "export_csv" => "Eksportuj plik CSV", - "export_csv_no" => "Nie", - "export_csv_yes" => "Tak", - "fields_required_message" => "Czerwone pola są wymagane", - "fields_required_message_unique" => "", - "first_name" => "Imię", - "first_name_required" => "Imię jest wymagane.", - "first_page" => "Pierwszy", - "gender" => "Płeć", - "gender_female" => "Kobieta", - "gender_male" => "Mężczyzna", - "gender_undefined" => "", - "icon" => "Ikona", - "id" => "ID", - "import" => "Importuj", - "import_change_file" => "Zmień", - "import_csv" => "Importuj plik CSV", - "import_full_path" => "Wymagana jest pełna ścieżka do pliku CSV", - "import_remove_file" => "Usuń", - "import_select_file" => "Wybierz plik", - "inv" => "faktura", - "last_name" => "Nazwisko", - "last_name_required" => "Nazwisko jest wymaganym polem.", - "last_page" => "Ostatni", - "learn_about_project" => "aby dowiedzieć się najważniejszych informacji o projekcie.", - "list_of" => "Lista", - "logo" => "Logo", - "logo_mark" => "Znak", - "logout" => "Logout", - "manager" => "", - "migration_needed" => "A database migration to {0} will start after login.", - "new" => "Nowy", - "no" => "", - "no_persons_to_display" => "Nie ma osób do wyświetlenia.", - "none_selected_text" => "[Wybierz]", - "or" => "LUB", - "people" => "", - "phone_number" => "Numer telefonu", - "phone_number_required" => "", - "please_visit_my" => "Proszę odwiedzić", - "position" => "", - "powered_by" => "Wspierane przez", - "price" => "Cena", - "print" => "Wydrukuj", - "remove" => "Usuń", - "required" => "Wymagane", - "restore" => "Przywróć", - "return_policy" => "Polityka zwrotów", - "search" => "Szukaj", - "search_options" => "Opcje wyszukiwania", - "searched_for" => "Szukano", - "software_short" => "OSPOS", - "software_title" => "Otwarto źródłowy punkt sprzedaży", - "state" => "Status", - "submit" => "Wyślij", - "total_spent" => "Całkowite wydatki", - "unknown" => "Nieznany", - "view_recent_sales" => "Wyświetl ostatnie sprzedaże", - "website" => "opensourcepos.org", - "welcome" => "Witamy", - "welcome_message" => "Witamy w OSPOS, kliknij moduł, aby rozpocząć.", - "yes" => "", - "you_are_using_ospos" => "You are using Open Source Point Of Sale version", - "zip" => "Kod pocztowy", + "address_1" => "Adres 1", + "address_2" => "Adres 2", + "admin" => "", + "city" => "Miasto", + "clerk" => "", + "close" => "Zamknij", + "color" => "", + "comments" => "Komentarze", + "common" => "common", + "confirm_search" => "Zaznaczyłeś jeden lub więcej wierszy, nie będą dalej zaznaczone po wyszukaniu. Czy jesteś pewien, że chcesz zatwierdzić to wyszukiwanie?", + "copyrights" => "© 2010 - {0}", + "correct_errors" => "Proszę poprawić zidentyfikowane błędy przed zapisaniem", + "country" => "Kraj", + "dashboard" => "", + "date" => "Data", + "delete" => "Usuń", + "det" => "szczegóły", + "download_import_template" => "Pobierz szablon importu pliku CSV (.CSV)", + "edit" => "edytuj", + "email" => "Email", + "email_invalid_format" => "Adres email nie jest w poprawnym formacie.", + "export_csv" => "Eksportuj plik CSV", + "export_csv_no" => "Nie", + "export_csv_yes" => "Tak", + "fields_required_message" => "Czerwone pola są wymagane", + "fields_required_message_unique" => "", + "first_name" => "Imię", + "first_name_required" => "Imię jest wymagane.", + "first_page" => "Pierwszy", + "gender" => "Płeć", + "gender_female" => "Kobieta", + "gender_male" => "Mężczyzna", + "gender_undefined" => "", + "icon" => "Ikona", + "id" => "ID", + "import" => "Importuj", + "import_change_file" => "Zmień", + "import_csv" => "Importuj plik CSV", + "import_full_path" => "Wymagana jest pełna ścieżka do pliku CSV", + "import_remove_file" => "Usuń", + "import_select_file" => "Wybierz plik", + "inv" => "faktura", + "last_name" => "Nazwisko", + "last_name_required" => "Nazwisko jest wymaganym polem.", + "last_page" => "Ostatni", + "learn_about_project" => "aby dowiedzieć się najważniejszych informacji o projekcie.", + "list_of" => "Lista", + "logo" => "Logo", + "logo_mark" => "Znak", + "logout" => "Logout", + "manager" => "", + "migration_needed" => "A database migration to {0} will start after login.", + "new" => "Nowy", + "no" => "", + "no_persons_to_display" => "Nie ma osób do wyświetlenia.", + "none_selected_text" => "[Wybierz]", + "or" => "LUB", + "people" => "", + "phone_number" => "Numer telefonu", + "phone_number_required" => "", + "please_visit_my" => "Proszę odwiedzić", + "position" => "", + "powered_by" => "Wspierane przez", + "price" => "Cena", + "print" => "Wydrukuj", + "remove" => "Usuń", + "required" => "Wymagane", + "restore" => "Przywróć", + "return_policy" => "Polityka zwrotów", + "search" => "Szukaj", + "search_options" => "Opcje wyszukiwania", + "searched_for" => "Szukano", + "software_short" => "OSPOS", + "software_title" => "Otwarto źródłowy punkt sprzedaży", + "state" => "Status", + "submit" => "Wyślij", + "total_spent" => "Całkowite wydatki", + "unknown" => "Nieznany", + "view_recent_sales" => "Wyświetl ostatnie sprzedaże", + "website" => "opensourcepos.org", + "welcome" => "Witamy", + "welcome_message" => "Witamy w OSPOS, kliknij moduł, aby rozpocząć.", + "yes" => "", + "you_are_using_ospos" => "You are using Open Source Point Of Sale version", + "zip" => "Kod pocztowy", ]; diff --git a/app/Language/pl/Config.php b/app/Language/pl/Config.php index 49d8ea4fc..2b0ffe152 100644 --- a/app/Language/pl/Config.php +++ b/app/Language/pl/Config.php @@ -1,330 +1,330 @@ "", - "address_required" => "", - "all_set" => "All file permissions are set correctly!", - "allow_duplicate_barcodes" => "", - "apostrophe" => "", - "backup_button" => "", - "backup_database" => "", - "barcode" => "", - "barcode_company" => "", - "barcode_configuration" => "", - "barcode_content" => "", - "barcode_first_row" => "", - "barcode_font" => "", - "barcode_formats" => "", - "barcode_generate_if_empty" => "", - "barcode_height" => "", - "barcode_id" => "", - "barcode_info" => "", - "barcode_layout" => "", - "barcode_name" => "", - "barcode_number" => "", - "barcode_number_in_row" => "", - "barcode_page_cellspacing" => "", - "barcode_page_width" => "", - "barcode_price" => "", - "barcode_second_row" => "", - "barcode_third_row" => "", - "barcode_tooltip" => "", - "barcode_type" => "", - "barcode_width" => "", - "bottom" => "", - "cash_button" => "", - "cash_button_1" => "", - "cash_button_2" => "", - "cash_button_3" => "", - "cash_button_4" => "", - "cash_button_5" => "", - "cash_button_6" => "", - "cash_decimals" => "", - "cash_decimals_tooltip" => "", - "cash_rounding" => "", - "category_dropdown" => "", - "center" => "", - "change_apperance_tooltip" => "", - "comma" => "", - "company" => "", - "company_avatar" => "", - "company_change_image" => "", - "company_logo" => "", - "company_remove_image" => "", - "company_required" => "", - "company_select_image" => "", - "company_website_url" => "", - "country_codes" => "", - "country_codes_tooltip" => "", - "currency_code" => "", - "currency_decimals" => "", - "currency_symbol" => "", - "current_employee_only" => "", - "customer_reward" => "", - "customer_reward_duplicate" => "", - "customer_reward_enable" => "", - "customer_reward_invalid_chars" => "", - "customer_reward_required" => "", - "customer_sales_tax_support" => "", - "date_or_time_format" => "", - "datetimeformat" => "", - "decimal_point" => "", - "default_barcode_font_size_number" => "", - "default_barcode_font_size_required" => "", - "default_barcode_height_number" => "", - "default_barcode_height_required" => "", - "default_barcode_num_in_row_number" => "", - "default_barcode_num_in_row_required" => "", - "default_barcode_page_cellspacing_number" => "", - "default_barcode_page_cellspacing_required" => "", - "default_barcode_page_width_number" => "", - "default_barcode_page_width_required" => "", - "default_barcode_width_number" => "", - "default_barcode_width_required" => "", - "default_item_columns" => "", - "default_origin_tax_code" => "", - "default_receivings_discount" => "", - "default_receivings_discount_number" => "", - "default_receivings_discount_required" => "", - "default_sales_discount" => "", - "default_sales_discount_number" => "", - "default_sales_discount_required" => "", - "default_tax_category" => "", - "default_tax_code" => "", - "default_tax_jurisdiction" => "", - "default_tax_name_number" => "", - "default_tax_name_required" => "", - "default_tax_rate" => "", - "default_tax_rate_1" => "", - "default_tax_rate_2" => "", - "default_tax_rate_3" => "", - "default_tax_rate_number" => "", - "default_tax_rate_required" => "", - "derive_sale_quantity" => "", - "derive_sale_quantity_tooltip" => "", - "dinner_table" => "", - "dinner_table_duplicate" => "", - "dinner_table_enable" => "", - "dinner_table_invalid_chars" => "", - "dinner_table_required" => "", - "dot" => "", - "email" => "", - "email_configuration" => "", - "email_mailpath" => "", - "email_protocol" => "", - "email_receipt_check_behaviour" => "", - "email_receipt_check_behaviour_always" => "", - "email_receipt_check_behaviour_last" => "", - "email_receipt_check_behaviour_never" => "", - "email_smtp_crypto" => "", - "email_smtp_host" => "", - "email_smtp_pass" => "", - "email_smtp_port" => "", - "email_smtp_timeout" => "", - "email_smtp_user" => "", - "enable_avatar" => "", - "enable_avatar_tooltip" => "", - "enable_dropdown_tooltip" => "", - "enable_new_look" => "", - "enable_right_bar" => "", - "enable_right_bar_tooltip" => "", - "enforce_privacy" => "", - "enforce_privacy_tooltip" => "", - "fax" => "", - "file_perm" => "There are problems with file permissions please fix and reload this page.", - "financial_year" => "", - "financial_year_apr" => "", - "financial_year_aug" => "", - "financial_year_dec" => "", - "financial_year_feb" => "", - "financial_year_jan" => "", - "financial_year_jul" => "", - "financial_year_jun" => "", - "financial_year_mar" => "", - "financial_year_may" => "", - "financial_year_nov" => "", - "financial_year_oct" => "", - "financial_year_sep" => "", - "floating_labels" => "", - "gcaptcha_enable" => "", - "gcaptcha_secret_key" => "", - "gcaptcha_secret_key_required" => "", - "gcaptcha_site_key" => "", - "gcaptcha_site_key_required" => "", - "gcaptcha_tooltip" => "", - "general" => "", - "general_configuration" => "", - "giftcard_number" => "", - "giftcard_random" => "", - "giftcard_series" => "", - "image_allowed_file_types" => "", - "image_max_height_tooltip" => "", - "image_max_size_tooltip" => "", - "image_max_width_tooltip" => "", - "image_restrictions" => "", - "include_hsn" => "", - "info" => "", - "info_configuration" => "", - "input_groups" => "", - "integrations" => "", - "integrations_configuration" => "", - "invoice" => "", - "invoice_configuration" => "", - "invoice_default_comments" => "", - "invoice_email_message" => "", - "invoice_enable" => "", - "invoice_printer" => "", - "invoice_type" => "", - "is_readable" => "", - "is_writable" => "is writable, but the permissions are higher than 750.", - "item_markup" => "", - "jsprintsetup_required" => "", - "language" => "", - "last_used_invoice_number" => "", - "last_used_quote_number" => "", - "last_used_work_order_number" => "", - "left" => "", - "license" => "", - "license_configuration" => "", - "line_sequence" => "", - "lines_per_page" => "", - "lines_per_page_number" => "", - "lines_per_page_required" => "", - "locale" => "", - "locale_configuration" => "", - "locale_info" => "", - "location" => "", - "location_configuration" => "", - "location_info" => "", - "login_form" => "", - "logout" => "", - "mailchimp" => "", - "mailchimp_api_key" => "", - "mailchimp_configuration" => "", - "mailchimp_key_successfully" => "", - "mailchimp_key_unsuccessfully" => "", - "mailchimp_lists" => "", - "mailchimp_tooltip" => "", - "message" => "", - "message_configuration" => "", - "msg_msg" => "", - "msg_msg_placeholder" => "", - "msg_pwd" => "", - "msg_pwd_required" => "", - "msg_src" => "", - "msg_src_required" => "", - "msg_uid" => "", - "msg_uid_required" => "", - "multi_pack_enabled" => "", - "no_risk" => "No security/vulnerability risks.", - "none" => "", - "notify_alignment" => "", - "number_format" => "", - "number_locale" => "", - "number_locale_invalid" => "", - "number_locale_required" => "", - "number_locale_tooltip" => "", - "os_timezone" => "", - "ospos_info" => "", - "payment_options_order" => "", - "perm_risk" => "Permissions higher than 750 leaves this software at risk.", - "phone" => "", - "phone_required" => "", - "print_bottom_margin" => "", - "print_bottom_margin_number" => "", - "print_bottom_margin_required" => "", - "print_delay_autoreturn" => "", - "print_delay_autoreturn_number" => "", - "print_delay_autoreturn_required" => "", - "print_footer" => "", - "print_header" => "", - "print_left_margin" => "", - "print_left_margin_number" => "", - "print_left_margin_required" => "", - "print_receipt_check_behaviour" => "", - "print_receipt_check_behaviour_always" => "", - "print_receipt_check_behaviour_last" => "", - "print_receipt_check_behaviour_never" => "", - "print_right_margin" => "", - "print_right_margin_number" => "", - "print_right_margin_required" => "", - "print_silently" => "", - "print_top_margin" => "", - "print_top_margin_number" => "", - "print_top_margin_required" => "", - "quantity_decimals" => "", - "quick_cash_enable" => "", - "quote_default_comments" => "", - "receipt" => "", - "receipt_category" => "", - "receipt_configuration" => "", - "receipt_default" => "", - "receipt_font_size" => "", - "receipt_font_size_number" => "", - "receipt_font_size_required" => "", - "receipt_info" => "", - "receipt_printer" => "", - "receipt_short" => "", - "receipt_show_company_name" => "", - "receipt_show_description" => "", - "receipt_show_serialnumber" => "", - "receipt_show_tax_ind" => "", - "receipt_show_taxes" => "", - "receipt_show_total_discount" => "", - "receipt_template" => "", - "receiving_calculate_average_price" => "", - "recv_invoice_format" => "", - "register_mode_default" => "", - "report_an_issue" => "", - "return_policy_required" => "", - "reward" => "", - "reward_configuration" => "", - "right" => "", - "sales_invoice_format" => "", - "sales_quote_format" => "", - "saved_successfully" => "", - "saved_unsuccessfully" => "", - "security_issue" => "Security Vulnerability Warning", - "server_notice" => "Please use the below info for issue reporting.", - "service_charge" => "", - "show_due_enable" => "", - "show_office_group" => "", - "statistics" => "", - "statistics_tooltip" => "", - "stock_location" => "", - "stock_location_duplicate" => "", - "stock_location_invalid_chars" => "", - "stock_location_required" => "", - "suggestions_fifth_column" => "", - "suggestions_first_column" => "", - "suggestions_fourth_column" => "", - "suggestions_layout" => "", - "suggestions_second_column" => "", - "suggestions_third_column" => "", - "system_conf" => "Setup & Conf", - "system_info" => "System Info", - "table" => "", - "table_configuration" => "", - "takings_printer" => "", - "tax" => "", - "tax_category" => "", - "tax_category_duplicate" => "", - "tax_category_invalid_chars" => "", - "tax_category_required" => "", - "tax_category_used" => "", - "tax_configuration" => "", - "tax_decimals" => "", - "tax_id" => "", - "tax_included" => "", - "theme" => "", - "theme_preview" => "", - "thousands_separator" => "", - "timezone" => "", - "timezone_error" => "", - "top" => "", - "use_destination_based_tax" => "", - "user_timezone" => "", - "website" => "", - "wholesale_markup" => "", - "work_order_enable" => "", - "work_order_format" => "", + "address" => "", + "address_required" => "", + "all_set" => "All file permissions are set correctly!", + "allow_duplicate_barcodes" => "", + "apostrophe" => "", + "backup_button" => "", + "backup_database" => "", + "barcode" => "", + "barcode_company" => "", + "barcode_configuration" => "", + "barcode_content" => "", + "barcode_first_row" => "", + "barcode_font" => "", + "barcode_formats" => "", + "barcode_generate_if_empty" => "", + "barcode_height" => "", + "barcode_id" => "", + "barcode_info" => "", + "barcode_layout" => "", + "barcode_name" => "", + "barcode_number" => "", + "barcode_number_in_row" => "", + "barcode_page_cellspacing" => "", + "barcode_page_width" => "", + "barcode_price" => "", + "barcode_second_row" => "", + "barcode_third_row" => "", + "barcode_tooltip" => "", + "barcode_type" => "", + "barcode_width" => "", + "bottom" => "", + "cash_button" => "", + "cash_button_1" => "", + "cash_button_2" => "", + "cash_button_3" => "", + "cash_button_4" => "", + "cash_button_5" => "", + "cash_button_6" => "", + "cash_decimals" => "", + "cash_decimals_tooltip" => "", + "cash_rounding" => "", + "category_dropdown" => "", + "center" => "", + "change_apperance_tooltip" => "", + "comma" => "", + "company" => "", + "company_avatar" => "", + "company_change_image" => "", + "company_logo" => "", + "company_remove_image" => "", + "company_required" => "", + "company_select_image" => "", + "company_website_url" => "", + "country_codes" => "", + "country_codes_tooltip" => "", + "currency_code" => "", + "currency_decimals" => "", + "currency_symbol" => "", + "current_employee_only" => "", + "customer_reward" => "", + "customer_reward_duplicate" => "", + "customer_reward_enable" => "", + "customer_reward_invalid_chars" => "", + "customer_reward_required" => "", + "customer_sales_tax_support" => "", + "date_or_time_format" => "", + "datetimeformat" => "", + "decimal_point" => "", + "default_barcode_font_size_number" => "", + "default_barcode_font_size_required" => "", + "default_barcode_height_number" => "", + "default_barcode_height_required" => "", + "default_barcode_num_in_row_number" => "", + "default_barcode_num_in_row_required" => "", + "default_barcode_page_cellspacing_number" => "", + "default_barcode_page_cellspacing_required" => "", + "default_barcode_page_width_number" => "", + "default_barcode_page_width_required" => "", + "default_barcode_width_number" => "", + "default_barcode_width_required" => "", + "default_item_columns" => "", + "default_origin_tax_code" => "", + "default_receivings_discount" => "", + "default_receivings_discount_number" => "", + "default_receivings_discount_required" => "", + "default_sales_discount" => "", + "default_sales_discount_number" => "", + "default_sales_discount_required" => "", + "default_tax_category" => "", + "default_tax_code" => "", + "default_tax_jurisdiction" => "", + "default_tax_name_number" => "", + "default_tax_name_required" => "", + "default_tax_rate" => "", + "default_tax_rate_1" => "", + "default_tax_rate_2" => "", + "default_tax_rate_3" => "", + "default_tax_rate_number" => "", + "default_tax_rate_required" => "", + "derive_sale_quantity" => "", + "derive_sale_quantity_tooltip" => "", + "dinner_table" => "", + "dinner_table_duplicate" => "", + "dinner_table_enable" => "", + "dinner_table_invalid_chars" => "", + "dinner_table_required" => "", + "dot" => "", + "email" => "", + "email_configuration" => "", + "email_mailpath" => "", + "email_protocol" => "", + "email_receipt_check_behaviour" => "", + "email_receipt_check_behaviour_always" => "", + "email_receipt_check_behaviour_last" => "", + "email_receipt_check_behaviour_never" => "", + "email_smtp_crypto" => "", + "email_smtp_host" => "", + "email_smtp_pass" => "", + "email_smtp_port" => "", + "email_smtp_timeout" => "", + "email_smtp_user" => "", + "enable_avatar" => "", + "enable_avatar_tooltip" => "", + "enable_dropdown_tooltip" => "", + "enable_new_look" => "", + "enable_right_bar" => "", + "enable_right_bar_tooltip" => "", + "enforce_privacy" => "", + "enforce_privacy_tooltip" => "", + "fax" => "", + "file_perm" => "There are problems with file permissions please fix and reload this page.", + "financial_year" => "", + "financial_year_apr" => "", + "financial_year_aug" => "", + "financial_year_dec" => "", + "financial_year_feb" => "", + "financial_year_jan" => "", + "financial_year_jul" => "", + "financial_year_jun" => "", + "financial_year_mar" => "", + "financial_year_may" => "", + "financial_year_nov" => "", + "financial_year_oct" => "", + "financial_year_sep" => "", + "floating_labels" => "", + "gcaptcha_enable" => "", + "gcaptcha_secret_key" => "", + "gcaptcha_secret_key_required" => "", + "gcaptcha_site_key" => "", + "gcaptcha_site_key_required" => "", + "gcaptcha_tooltip" => "", + "general" => "", + "general_configuration" => "", + "giftcard_number" => "", + "giftcard_random" => "", + "giftcard_series" => "", + "image_allowed_file_types" => "", + "image_max_height_tooltip" => "", + "image_max_size_tooltip" => "", + "image_max_width_tooltip" => "", + "image_restrictions" => "", + "include_hsn" => "", + "info" => "", + "info_configuration" => "", + "input_groups" => "", + "integrations" => "", + "integrations_configuration" => "", + "invoice" => "", + "invoice_configuration" => "", + "invoice_default_comments" => "", + "invoice_email_message" => "", + "invoice_enable" => "", + "invoice_printer" => "", + "invoice_type" => "", + "is_readable" => "", + "is_writable" => "is writable, but the permissions are higher than 750.", + "item_markup" => "", + "jsprintsetup_required" => "", + "language" => "", + "last_used_invoice_number" => "", + "last_used_quote_number" => "", + "last_used_work_order_number" => "", + "left" => "", + "license" => "", + "license_configuration" => "", + "line_sequence" => "", + "lines_per_page" => "", + "lines_per_page_number" => "", + "lines_per_page_required" => "", + "locale" => "", + "locale_configuration" => "", + "locale_info" => "", + "location" => "", + "location_configuration" => "", + "location_info" => "", + "login_form" => "", + "logout" => "", + "mailchimp" => "", + "mailchimp_api_key" => "", + "mailchimp_configuration" => "", + "mailchimp_key_successfully" => "", + "mailchimp_key_unsuccessfully" => "", + "mailchimp_lists" => "", + "mailchimp_tooltip" => "", + "message" => "", + "message_configuration" => "", + "msg_msg" => "", + "msg_msg_placeholder" => "", + "msg_pwd" => "", + "msg_pwd_required" => "", + "msg_src" => "", + "msg_src_required" => "", + "msg_uid" => "", + "msg_uid_required" => "", + "multi_pack_enabled" => "", + "no_risk" => "No security/vulnerability risks.", + "none" => "", + "notify_alignment" => "", + "number_format" => "", + "number_locale" => "", + "number_locale_invalid" => "", + "number_locale_required" => "", + "number_locale_tooltip" => "", + "os_timezone" => "", + "ospos_info" => "", + "payment_options_order" => "", + "perm_risk" => "Permissions higher than 750 leaves this software at risk.", + "phone" => "", + "phone_required" => "", + "print_bottom_margin" => "", + "print_bottom_margin_number" => "", + "print_bottom_margin_required" => "", + "print_delay_autoreturn" => "", + "print_delay_autoreturn_number" => "", + "print_delay_autoreturn_required" => "", + "print_footer" => "", + "print_header" => "", + "print_left_margin" => "", + "print_left_margin_number" => "", + "print_left_margin_required" => "", + "print_receipt_check_behaviour" => "", + "print_receipt_check_behaviour_always" => "", + "print_receipt_check_behaviour_last" => "", + "print_receipt_check_behaviour_never" => "", + "print_right_margin" => "", + "print_right_margin_number" => "", + "print_right_margin_required" => "", + "print_silently" => "", + "print_top_margin" => "", + "print_top_margin_number" => "", + "print_top_margin_required" => "", + "quantity_decimals" => "", + "quick_cash_enable" => "", + "quote_default_comments" => "", + "receipt" => "", + "receipt_category" => "", + "receipt_configuration" => "", + "receipt_default" => "", + "receipt_font_size" => "", + "receipt_font_size_number" => "", + "receipt_font_size_required" => "", + "receipt_info" => "", + "receipt_printer" => "", + "receipt_short" => "", + "receipt_show_company_name" => "", + "receipt_show_description" => "", + "receipt_show_serialnumber" => "", + "receipt_show_tax_ind" => "", + "receipt_show_taxes" => "", + "receipt_show_total_discount" => "", + "receipt_template" => "", + "receiving_calculate_average_price" => "", + "recv_invoice_format" => "", + "register_mode_default" => "", + "report_an_issue" => "", + "return_policy_required" => "", + "reward" => "", + "reward_configuration" => "", + "right" => "", + "sales_invoice_format" => "", + "sales_quote_format" => "", + "saved_successfully" => "", + "saved_unsuccessfully" => "", + "security_issue" => "Security Vulnerability Warning", + "server_notice" => "Please use the below info for issue reporting.", + "service_charge" => "", + "show_due_enable" => "", + "show_office_group" => "", + "statistics" => "", + "statistics_tooltip" => "", + "stock_location" => "", + "stock_location_duplicate" => "", + "stock_location_invalid_chars" => "", + "stock_location_required" => "", + "suggestions_fifth_column" => "", + "suggestions_first_column" => "", + "suggestions_fourth_column" => "", + "suggestions_layout" => "", + "suggestions_second_column" => "", + "suggestions_third_column" => "", + "system_conf" => "Setup & Conf", + "system_info" => "System Info", + "table" => "", + "table_configuration" => "", + "takings_printer" => "", + "tax" => "", + "tax_category" => "", + "tax_category_duplicate" => "", + "tax_category_invalid_chars" => "", + "tax_category_required" => "", + "tax_category_used" => "", + "tax_configuration" => "", + "tax_decimals" => "", + "tax_id" => "", + "tax_included" => "", + "theme" => "", + "theme_preview" => "", + "thousands_separator" => "", + "timezone" => "", + "timezone_error" => "", + "top" => "", + "use_destination_based_tax" => "", + "user_timezone" => "", + "website" => "", + "wholesale_markup" => "", + "work_order_enable" => "", + "work_order_format" => "", ]; diff --git a/app/Language/pl/Customers.php b/app/Language/pl/Customers.php index 0f29b0ae8..8abd02548 100644 --- a/app/Language/pl/Customers.php +++ b/app/Language/pl/Customers.php @@ -1,56 +1,56 @@ "Konto #", - "account_number_duplicate" => "", - "available_points" => "Dostępne punkty", - "available_points_value" => "", - "average" => "", - "avg_discount" => "", - "basic_information" => "", - "cannot_be_deleted" => "", - "company_name" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "consent" => "", - "consent_required" => "", - "csv_import_failed" => "", - "csv_import_nodata_wrongformat" => "", - "csv_import_partially_failed" => "", - "csv_import_success" => "", - "customer" => "", - "date" => "", - "discount" => "", - "discount_fixed" => "", - "discount_percent" => "", - "discount_type" => "", - "email_duplicate" => "", - "employee" => "", - "error_adding_updating" => "", - "import_items_csv" => "", - "mailchimp_activity_click" => "", - "mailchimp_activity_lastopen" => "", - "mailchimp_activity_open" => "", - "mailchimp_activity_total" => "", - "mailchimp_activity_unopen" => "", - "mailchimp_email_client" => "", - "mailchimp_info" => "", - "mailchimp_member_rating" => "", - "mailchimp_status" => "", - "mailchimp_vip" => "", - "max" => "", - "min" => "", - "new" => "", - "none_selected" => "", - "one_or_multiple" => "", - "quantity" => "", - "stats_info" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "tax_code" => "", - "tax_id" => "", - "taxable" => "", - "total" => "", - "update" => "", - "rewards_package" => "", + "account_number" => "Konto #", + "account_number_duplicate" => "", + "available_points" => "Dostępne punkty", + "available_points_value" => "", + "average" => "", + "avg_discount" => "", + "basic_information" => "", + "cannot_be_deleted" => "", + "company_name" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "consent" => "", + "consent_required" => "", + "csv_import_failed" => "", + "csv_import_nodata_wrongformat" => "", + "csv_import_partially_failed" => "", + "csv_import_success" => "", + "customer" => "", + "date" => "", + "discount" => "", + "discount_fixed" => "", + "discount_percent" => "", + "discount_type" => "", + "email_duplicate" => "", + "employee" => "", + "error_adding_updating" => "", + "import_items_csv" => "", + "mailchimp_activity_click" => "", + "mailchimp_activity_lastopen" => "", + "mailchimp_activity_open" => "", + "mailchimp_activity_total" => "", + "mailchimp_activity_unopen" => "", + "mailchimp_email_client" => "", + "mailchimp_info" => "", + "mailchimp_member_rating" => "", + "mailchimp_status" => "", + "mailchimp_vip" => "", + "max" => "", + "min" => "", + "new" => "", + "none_selected" => "", + "one_or_multiple" => "", + "quantity" => "", + "stats_info" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "tax_code" => "", + "tax_id" => "", + "taxable" => "", + "total" => "", + "update" => "", + "rewards_package" => "", ]; diff --git a/app/Language/pl/Datepicker.php b/app/Language/pl/Datepicker.php index fde0f9775..064485998 100644 --- a/app/Language/pl/Datepicker.php +++ b/app/Language/pl/Datepicker.php @@ -1,23 +1,23 @@ "Cały czas", - "apply" => "Zastosuj", - "cancel" => "Anuluj", - "custom" => "Niestandardowy", - "from" => "Od", - "last_30" => "Ostatnie 30 dni", - "last_7" => "Ostatnie 7 dni", - "last_financial_year" => "Ostatni rok fiskalny", - "last_month" => "Ostatni miesiąc", - "last_year" => "Ostatni rok", - "same_month_last_year" => "Ten sam miesiąc w zeszłym roku", - "same_month_to_same_day_last_year" => "Ten sam dzień w tym samym miesiącu rok temu", - "this_financial_year" => "Obecny rok fiskalny", - "this_month" => "Obecny miesiąc", - "this_year" => "Obecny rok", - "to" => "Do", - "today" => "Dzisiaj", - "today_last_year" => "Dzisiaj rok temu", - "weekstart" => "0", - "yesterday" => "Wczoraj", + "all_time" => "Cały czas", + "apply" => "Zastosuj", + "cancel" => "Anuluj", + "custom" => "Niestandardowy", + "from" => "Od", + "last_30" => "Ostatnie 30 dni", + "last_7" => "Ostatnie 7 dni", + "last_financial_year" => "Ostatni rok fiskalny", + "last_month" => "Ostatni miesiąc", + "last_year" => "Ostatni rok", + "same_month_last_year" => "Ten sam miesiąc w zeszłym roku", + "same_month_to_same_day_last_year" => "Ten sam dzień w tym samym miesiącu rok temu", + "this_financial_year" => "Obecny rok fiskalny", + "this_month" => "Obecny miesiąc", + "this_year" => "Obecny rok", + "to" => "Do", + "today" => "Dzisiaj", + "today_last_year" => "Dzisiaj rok temu", + "weekstart" => "0", + "yesterday" => "Wczoraj", ]; diff --git a/app/Language/pl/Employees.php b/app/Language/pl/Employees.php index 2e0061f0d..22a158f0a 100644 --- a/app/Language/pl/Employees.php +++ b/app/Language/pl/Employees.php @@ -1,44 +1,44 @@ "", - "basic_information" => "Informacje", - "cannot_be_deleted" => "", - "change_employee" => "", - "change_password" => "", - "clerk" => "", - "commission" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "current_password" => "", - "current_password_invalid" => "", - "employee" => "", - "error_adding_updating" => "", - "error_deleting_demo_admin" => "", - "error_updating_demo_admin" => "", - "language" => "", - "login_info" => "", - "manager" => "", - "new" => "", - "none_selected" => "", - "one_or_multiple" => "", - "password" => "", - "password_minlength" => "", - "password_must_match" => "", - "password_not_must_match" => "", - "password_required" => "", - "permission_desc" => "", - "permission_info" => "", - "repeat_password" => "", - "subpermission_required" => "", - "successful_adding" => "", - "successful_change_password" => "", - "successful_deleted" => "", - "successful_updating" => "", - "system_language" => "", - "unsuccessful_change_password" => "", - "update" => "", - "username" => "", - "username_duplicate" => "", - "username_minlength" => "", - "username_required" => "", + "administrator" => "", + "basic_information" => "Informacje", + "cannot_be_deleted" => "", + "change_employee" => "", + "change_password" => "", + "clerk" => "", + "commission" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "current_password" => "", + "current_password_invalid" => "", + "employee" => "", + "error_adding_updating" => "", + "error_deleting_demo_admin" => "", + "error_updating_demo_admin" => "", + "language" => "", + "login_info" => "", + "manager" => "", + "new" => "", + "none_selected" => "", + "one_or_multiple" => "", + "password" => "", + "password_minlength" => "", + "password_must_match" => "", + "password_not_must_match" => "", + "password_required" => "", + "permission_desc" => "", + "permission_info" => "", + "repeat_password" => "", + "subpermission_required" => "", + "successful_adding" => "", + "successful_change_password" => "", + "successful_deleted" => "", + "successful_updating" => "", + "system_language" => "", + "unsuccessful_change_password" => "", + "update" => "", + "username" => "", + "username_duplicate" => "", + "username_minlength" => "", + "username_required" => "", ]; diff --git a/app/Language/pl/Enum.php b/app/Language/pl/Enum.php index c39655c3b..1ed7e9313 100644 --- a/app/Language/pl/Enum.php +++ b/app/Language/pl/Enum.php @@ -1,10 +1,10 @@ "", - "half_even" => "", - "half_five" => "", - "half_odd" => "", - "half_up" => "", - "round_down" => "", - "round_up" => "", + "half_down" => "", + "half_even" => "", + "half_five" => "", + "half_odd" => "", + "half_up" => "", + "round_down" => "", + "round_up" => "", ]; diff --git a/app/Language/pl/Error.php b/app/Language/pl/Error.php index d8907d627..3b63b3a58 100644 --- a/app/Language/pl/Error.php +++ b/app/Language/pl/Error.php @@ -1,5 +1,5 @@ "Nie masz dostępu do modułu", - "unknown" => "Niespodziewany błąd", + "no_permission_module" => "Nie masz dostępu do modułu", + "unknown" => "Niespodziewany błąd", ]; diff --git a/app/Language/pl/Expenses.php b/app/Language/pl/Expenses.php index c8cd05a05..5ce332ee6 100644 --- a/app/Language/pl/Expenses.php +++ b/app/Language/pl/Expenses.php @@ -1,50 +1,50 @@ "Dodaj wydatek", - "amount" => "", - "amount_number" => "", - "amount_required" => "", - "by_category" => "", - "cannot_be_deleted" => "", - "cash" => "", - "cash_filter" => "", - "categories_name" => "", - "category_required" => "", - "check" => "", - "check_filter" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "credit" => "", - "credit_filter" => "", - "date" => "", - "date_number" => "", - "date_required" => "", - "debit" => "", - "debit_filter" => "", - "description" => "", - "due" => "", - "due_filter" => "", - "employee" => "", - "error_adding_updating" => "", - "expense_id" => "", - "expenses_employee" => "", - "info" => "", - "ip_address" => "", - "is_deleted" => "", - "name_required" => "", - "new" => "", - "new_supplier" => "", - "no_expenses_to_display" => "", - "none_selected" => "", - "one_or_multiple" => "", - "payment" => "", - "start_typing_supplier_name" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "supplier_name" => "", - "supplier_tax_code" => "", - "tax_amount" => "", - "tax_amount_number" => "", - "update" => "", + "add_item" => "Dodaj wydatek", + "amount" => "", + "amount_number" => "", + "amount_required" => "", + "by_category" => "", + "cannot_be_deleted" => "", + "cash" => "", + "cash_filter" => "", + "categories_name" => "", + "category_required" => "", + "check" => "", + "check_filter" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "credit" => "", + "credit_filter" => "", + "date" => "", + "date_number" => "", + "date_required" => "", + "debit" => "", + "debit_filter" => "", + "description" => "", + "due" => "", + "due_filter" => "", + "employee" => "", + "error_adding_updating" => "", + "expense_id" => "", + "expenses_employee" => "", + "info" => "", + "ip_address" => "", + "is_deleted" => "", + "name_required" => "", + "new" => "", + "new_supplier" => "", + "no_expenses_to_display" => "", + "none_selected" => "", + "one_or_multiple" => "", + "payment" => "", + "start_typing_supplier_name" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "supplier_name" => "", + "supplier_tax_code" => "", + "tax_amount" => "", + "tax_amount_number" => "", + "update" => "", ]; diff --git a/app/Language/pl/Expenses_categories.php b/app/Language/pl/Expenses_categories.php index 03169e528..7d3b08c27 100644 --- a/app/Language/pl/Expenses_categories.php +++ b/app/Language/pl/Expenses_categories.php @@ -1,22 +1,22 @@ "", - "add_item" => "", - "cannot_be_deleted" => "", - "category_id" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "description" => "", - "error_adding_updating" => "", - "info" => "", - "name" => "", - "new" => "", - "no_expenses_categories_to_display" => "", - "none_selected" => "", - "one_or_multiple" => "", - "quantity" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "update" => "", + "category_name_required" => "", + "add_item" => "", + "cannot_be_deleted" => "", + "category_id" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "description" => "", + "error_adding_updating" => "", + "info" => "", + "name" => "", + "new" => "", + "no_expenses_categories_to_display" => "", + "none_selected" => "", + "one_or_multiple" => "", + "quantity" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "update" => "", ]; diff --git a/app/Language/pl/Giftcards.php b/app/Language/pl/Giftcards.php index ed9a2ea77..fd9d538e4 100644 --- a/app/Language/pl/Giftcards.php +++ b/app/Language/pl/Giftcards.php @@ -1,71 +1,71 @@ "", - "allow_alt_description" => "Zezwól na alternatywny opis", - "bulk_edit" => "Edycja zbiorcza", - "cannot_be_deleted" => "", - "cannot_find_giftcard" => "", - "cannot_use" => "", - "card_value" => "", - "category" => "", - "change_all_to_allow_alt_desc" => "", - "change_all_to_not_allow_allow_desc" => "", - "change_all_to_serialized" => "", - "change_all_to_unserialized" => "", - "confirm_bulk_edit" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "cost_price" => "", - "count" => "", - "csv_import_failed" => "", - "current_quantity" => "", - "description" => "", - "details_count" => "", - "do_nothing" => "", - "edit_fields_you_want_to_update" => "", - "edit_multiple_giftcards" => "", - "error_adding_updating" => "", - "error_updating_multiple" => "", - "generate_barcodes" => "", - "giftcard" => "", - "giftcard_number" => "", - "info_provided_by" => "", - "inventory_comments" => "", - "is_serialized" => "", - "low_inventory_giftcards" => "", - "manually_editing_of_quantity" => "", - "must_select_giftcard_for_barcode" => "", - "new" => "", - "no_description_giftcards" => "", - "no_giftcards_to_display" => "", - "none" => "", - "none_selected" => "", - "number" => "", - "number_information" => "", - "number_required" => "", - "one_or_multiple" => "", - "person_id" => "", - "quantity" => "", - "quantity_required" => "", - "remaining_balance" => "", - "reorder_level" => "", - "retrive_giftcard_info" => "", - "sales_tax_1" => "", - "sales_tax_2" => "", - "serialized_giftcards" => "", - "successful_adding" => "", - "successful_bulk_edit" => "", - "successful_deleted" => "", - "successful_updating" => "", - "supplier" => "", - "tax_1" => "", - "tax_2" => "", - "tax_percent" => "", - "tax_percents" => "", - "unit_price" => "", - "upc_database" => "", - "update" => "", - "use_inventory_menu" => "", - "value" => "", - "value_required" => "", + "add_minus" => "", + "allow_alt_description" => "Zezwól na alternatywny opis", + "bulk_edit" => "Edycja zbiorcza", + "cannot_be_deleted" => "", + "cannot_find_giftcard" => "", + "cannot_use" => "", + "card_value" => "", + "category" => "", + "change_all_to_allow_alt_desc" => "", + "change_all_to_not_allow_allow_desc" => "", + "change_all_to_serialized" => "", + "change_all_to_unserialized" => "", + "confirm_bulk_edit" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "cost_price" => "", + "count" => "", + "csv_import_failed" => "", + "current_quantity" => "", + "description" => "", + "details_count" => "", + "do_nothing" => "", + "edit_fields_you_want_to_update" => "", + "edit_multiple_giftcards" => "", + "error_adding_updating" => "", + "error_updating_multiple" => "", + "generate_barcodes" => "", + "giftcard" => "", + "giftcard_number" => "", + "info_provided_by" => "", + "inventory_comments" => "", + "is_serialized" => "", + "low_inventory_giftcards" => "", + "manually_editing_of_quantity" => "", + "must_select_giftcard_for_barcode" => "", + "new" => "", + "no_description_giftcards" => "", + "no_giftcards_to_display" => "", + "none" => "", + "none_selected" => "", + "number" => "", + "number_information" => "", + "number_required" => "", + "one_or_multiple" => "", + "person_id" => "", + "quantity" => "", + "quantity_required" => "", + "remaining_balance" => "", + "reorder_level" => "", + "retrive_giftcard_info" => "", + "sales_tax_1" => "", + "sales_tax_2" => "", + "serialized_giftcards" => "", + "successful_adding" => "", + "successful_bulk_edit" => "", + "successful_deleted" => "", + "successful_updating" => "", + "supplier" => "", + "tax_1" => "", + "tax_2" => "", + "tax_percent" => "", + "tax_percents" => "", + "unit_price" => "", + "upc_database" => "", + "update" => "", + "use_inventory_menu" => "", + "value" => "", + "value_required" => "", ]; diff --git a/app/Language/pl/Item_kits.php b/app/Language/pl/Item_kits.php index d353accc1..949de3d21 100644 --- a/app/Language/pl/Item_kits.php +++ b/app/Language/pl/Item_kits.php @@ -1,41 +1,41 @@ "Dodaj element", - "all" => "", - "cannot_be_deleted" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "description" => "", - "discount" => "", - "discount_fixed" => "", - "discount_percent" => "", - "discount_type" => "", - "error_adding_updating" => "", - "find_kit_item" => "", - "info" => "", - "item" => "", - "item_kit_number" => "", - "item_kit_number_duplicate" => "", - "item_number" => "", - "item_number_duplicate" => "", - "items" => "", - "kit" => "", - "kit_and_components" => "", - "kit_and_stock" => "", - "kit_only" => "", - "name" => "", - "new" => "", - "no_item_kits_to_display" => "", - "none_selected" => "", - "one_or_multiple" => "", - "price_option" => "", - "priced_only" => "", - "print_option" => "", - "quantity" => "", - "sequence" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "unit_price" => "", - "update" => "", + "add_item" => "Dodaj element", + "all" => "", + "cannot_be_deleted" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "description" => "", + "discount" => "", + "discount_fixed" => "", + "discount_percent" => "", + "discount_type" => "", + "error_adding_updating" => "", + "find_kit_item" => "", + "info" => "", + "item" => "", + "item_kit_number" => "", + "item_kit_number_duplicate" => "", + "item_number" => "", + "item_number_duplicate" => "", + "items" => "", + "kit" => "", + "kit_and_components" => "", + "kit_and_stock" => "", + "kit_only" => "", + "name" => "", + "new" => "", + "no_item_kits_to_display" => "", + "none_selected" => "", + "one_or_multiple" => "", + "price_option" => "", + "priced_only" => "", + "print_option" => "", + "quantity" => "", + "sequence" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "unit_price" => "", + "update" => "", ]; diff --git a/app/Language/pl/Items.php b/app/Language/pl/Items.php index 9718385d0..25c0395e0 100644 --- a/app/Language/pl/Items.php +++ b/app/Language/pl/Items.php @@ -1,120 +1,120 @@ "", - "allow_alt_description" => "", - "amount_entry" => "", - "bulk_edit" => "", - "buy_price_required" => "", - "cannot_be_deleted" => "", - "cannot_find_item" => "", - "categories" => "", - "category" => "", - "category_new" => "", - "category_required" => "", - "change_all_to_allow_alt_desc" => "", - "change_all_to_not_allow_allow_desc" => "", - "change_all_to_serialized" => "", - "change_all_to_unserialized" => "", - "change_image" => "", - "confirm_bulk_edit" => "", - "confirm_bulk_edit_wipe_taxes" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "cost_price" => "", - "cost_price_number" => "", - "cost_price_required" => "", - "count" => "", - "csv_import_failed" => "", - "csv_import_nodata_wrongformat" => "", - "csv_import_partially_failed" => "", - "csv_import_success" => "", - "current_quantity" => "", - "default_pack_name" => "", - "description" => "", - "details_count" => "", - "do_nothing" => "", - "edit" => "", - "edit_fields_you_want_to_update" => "", - "edit_multiple_items" => "", - "empty_upc_items" => "", - "error_adding_updating" => "", - "error_updating_multiple" => "", - "generate_barcodes" => "", - "hsn_code" => "", - "image" => "", - "import_items_csv" => "", - "info_provided_by" => "", - "inventory" => "", - "inventory_CSV_import_quantity" => "", - "inventory_comments" => "", - "inventory_data_tracking" => "", - "inventory_date" => "", - "inventory_employee" => "", - "inventory_in_out_quantity" => "", - "inventory_remarks" => "", - "is_deleted" => "", - "is_printed" => "", - "is_serialized" => "", - "item" => "", - "item_id" => "", - "item_number" => "", - "item_number_duplicate" => "", - "kit" => "", - "location" => "", - "low_inventory_items" => "", - "low_sell_item" => "", - "manually_editing_of_quantity" => "", - "markup" => "", - "name" => "", - "name_required" => "", - "new" => "", - "no_description_items" => "", - "no_items_to_display" => "", - "none" => "", - "none_selected" => "", - "nonstock" => "", - "number_information" => "", - "number_required" => "", - "one_or_multiple" => "", - "pack_name" => "", - "qty_per_pack" => "", - "quantity" => "", - "quantity_number" => "", - "quantity_required" => "", - "receiving_quantity" => "", - "remove_image" => "", - "reorder_level" => "", - "reorder_level_number" => "", - "reorder_level_required" => "", - "retrive_item_info" => "", - "sales_tax_1" => "", - "sales_tax_2" => "", - "search_attributes" => "", - "select_image" => "", - "serialized_items" => "", - "standard" => "", - "stock" => "", - "stock_location" => "", - "stock_type" => "", - "successful_adding" => "", - "successful_bulk_edit" => "", - "successful_deleted" => "", - "successful_updating" => "", - "supplier" => "", - "tax_1" => "", - "tax_2" => "", - "tax_3" => "", - "tax_category" => "", - "tax_percent" => "", - "tax_percent_number" => "", - "tax_percent_required" => "", - "tax_percents" => "", - "temp" => "", - "type" => "", - "unit_price" => "", - "unit_price_number" => "", - "unit_price_required" => "", - "upc_database" => "", - "update" => "", - "use_inventory_menu" => "", + "add_minus" => "", + "allow_alt_description" => "", + "amount_entry" => "", + "bulk_edit" => "", + "buy_price_required" => "", + "cannot_be_deleted" => "", + "cannot_find_item" => "", + "categories" => "", + "category" => "", + "category_new" => "", + "category_required" => "", + "change_all_to_allow_alt_desc" => "", + "change_all_to_not_allow_allow_desc" => "", + "change_all_to_serialized" => "", + "change_all_to_unserialized" => "", + "change_image" => "", + "confirm_bulk_edit" => "", + "confirm_bulk_edit_wipe_taxes" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "cost_price" => "", + "cost_price_number" => "", + "cost_price_required" => "", + "count" => "", + "csv_import_failed" => "", + "csv_import_nodata_wrongformat" => "", + "csv_import_partially_failed" => "", + "csv_import_success" => "", + "current_quantity" => "", + "default_pack_name" => "", + "description" => "", + "details_count" => "", + "do_nothing" => "", + "edit" => "", + "edit_fields_you_want_to_update" => "", + "edit_multiple_items" => "", + "empty_upc_items" => "", + "error_adding_updating" => "", + "error_updating_multiple" => "", + "generate_barcodes" => "", + "hsn_code" => "", + "image" => "", + "import_items_csv" => "", + "info_provided_by" => "", + "inventory" => "", + "inventory_CSV_import_quantity" => "", + "inventory_comments" => "", + "inventory_data_tracking" => "", + "inventory_date" => "", + "inventory_employee" => "", + "inventory_in_out_quantity" => "", + "inventory_remarks" => "", + "is_deleted" => "", + "is_printed" => "", + "is_serialized" => "", + "item" => "", + "item_id" => "", + "item_number" => "", + "item_number_duplicate" => "", + "kit" => "", + "location" => "", + "low_inventory_items" => "", + "low_sell_item" => "", + "manually_editing_of_quantity" => "", + "markup" => "", + "name" => "", + "name_required" => "", + "new" => "", + "no_description_items" => "", + "no_items_to_display" => "", + "none" => "", + "none_selected" => "", + "nonstock" => "", + "number_information" => "", + "number_required" => "", + "one_or_multiple" => "", + "pack_name" => "", + "qty_per_pack" => "", + "quantity" => "", + "quantity_number" => "", + "quantity_required" => "", + "receiving_quantity" => "", + "remove_image" => "", + "reorder_level" => "", + "reorder_level_number" => "", + "reorder_level_required" => "", + "retrive_item_info" => "", + "sales_tax_1" => "", + "sales_tax_2" => "", + "search_attributes" => "", + "select_image" => "", + "serialized_items" => "", + "standard" => "", + "stock" => "", + "stock_location" => "", + "stock_type" => "", + "successful_adding" => "", + "successful_bulk_edit" => "", + "successful_deleted" => "", + "successful_updating" => "", + "supplier" => "", + "tax_1" => "", + "tax_2" => "", + "tax_3" => "", + "tax_category" => "", + "tax_percent" => "", + "tax_percent_number" => "", + "tax_percent_required" => "", + "tax_percents" => "", + "temp" => "", + "type" => "", + "unit_price" => "", + "unit_price_number" => "", + "unit_price_required" => "", + "upc_database" => "", + "update" => "", + "use_inventory_menu" => "", ]; diff --git a/app/Language/pl/Login.php b/app/Language/pl/Login.php index 1d3eec8db..9cc2d01d1 100644 --- a/app/Language/pl/Login.php +++ b/app/Language/pl/Login.php @@ -1,15 +1,15 @@ "Nie jestem robotem.", - "go" => "Idź", - "invalid_gcaptcha" => "Udowodnij, że nie jesteś robotem.", - "invalid_installation" => "Instalacja nie jest poprawna, sprawdź swój plik php.ini.", - "invalid_username_and_password" => "Niepoprawna nazwa użytkownika i/lub hasło.", - "login" => "Zaloguj", - "logout" => "Wyloguj", - "migration_needed" => "Migracja bazy danych do {0} zacznie się po zalogowaniu.", - "password" => "Hasło", - "required_username" => "", - "username" => "Nazwa użytkownika", - "welcome" => "Witaj w {0}!", + "gcaptcha" => "Nie jestem robotem.", + "go" => "Idź", + "invalid_gcaptcha" => "Udowodnij, że nie jesteś robotem.", + "invalid_installation" => "Instalacja nie jest poprawna, sprawdź swój plik php.ini.", + "invalid_username_and_password" => "Niepoprawna nazwa użytkownika i/lub hasło.", + "login" => "Zaloguj", + "logout" => "Wyloguj", + "migration_needed" => "Migracja bazy danych do {0} zacznie się po zalogowaniu.", + "password" => "Hasło", + "required_username" => "", + "username" => "Nazwa użytkownika", + "welcome" => "Witaj w {0}!", ]; diff --git a/app/Language/pl/Messages.php b/app/Language/pl/Messages.php index afdcae223..513ac058a 100644 --- a/app/Language/pl/Messages.php +++ b/app/Language/pl/Messages.php @@ -1,15 +1,15 @@ "Pierwsze imię", - "last_name" => "Nazwisko", - "message" => "Wiadomość", - "message_placeholder" => "Twoja wiadomość tutaj...", - "message_required" => "Wiadomość wymagana", - "multiple_phones" => "(W przypadku wielu odbiorców, wpisz numery telefonów oddzielone przecinkami)", - "phone" => "Numer telefonu", - "phone_number_required" => "Numer telefonu wymagany", - "phone_placeholder" => "Numer(y) telefonu tutaj...", - "sms_send" => "Wyślij SMS", - "successfully_sent" => "Wiadomość pomyślnie wysłana do: ", - "unsuccessfully_sent" => "Wiadomość nie została wysłana z powodzeniem do: ", + "first_name" => "Pierwsze imię", + "last_name" => "Nazwisko", + "message" => "Wiadomość", + "message_placeholder" => "Twoja wiadomość tutaj...", + "message_required" => "Wiadomość wymagana", + "multiple_phones" => "(W przypadku wielu odbiorców, wpisz numery telefonów oddzielone przecinkami)", + "phone" => "Numer telefonu", + "phone_number_required" => "Numer telefonu wymagany", + "phone_placeholder" => "Numer(y) telefonu tutaj...", + "sms_send" => "Wyślij SMS", + "successfully_sent" => "Wiadomość pomyślnie wysłana do: ", + "unsuccessfully_sent" => "Wiadomość nie została wysłana z powodzeniem do: ", ]; diff --git a/app/Language/pl/Module.php b/app/Language/pl/Module.php index d25a7c07b..daf811baa 100644 --- a/app/Language/pl/Module.php +++ b/app/Language/pl/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "Atrybuty", - "attributes_desc" => "", - "both" => "", - "cashups" => "", - "cashups_desc" => "", - "config" => "", - "config_desc" => "", - "customers" => "", - "customers_desc" => "", - "employees" => "", - "employees_desc" => "", - "expenses" => "", - "expenses_categories" => "", - "expenses_categories_desc" => "", - "expenses_desc" => "", - "giftcards" => "", - "giftcards_desc" => "", - "home" => "", - "home_desc" => "", - "item_kits" => "", - "item_kits_desc" => "", - "items" => "", - "items_desc" => "", - "messages" => "", - "messages_desc" => "", - "migrate" => "", - "migrate_desc" => "", - "office" => "", - "office_desc" => "", - "receivings" => "", - "receivings_desc" => "", - "reports" => "", - "reports_desc" => "", - "sales" => "", - "sales_desc" => "", - "suppliers" => "", - "suppliers_desc" => "", - "taxes" => "", - "taxes_desc" => "", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "Atrybuty", + "attributes_desc" => "", + "both" => "", + "cashups" => "", + "cashups_desc" => "", + "config" => "", + "config_desc" => "", + "customers" => "", + "customers_desc" => "", + "employees" => "", + "employees_desc" => "", + "expenses" => "", + "expenses_categories" => "", + "expenses_categories_desc" => "", + "expenses_desc" => "", + "giftcards" => "", + "giftcards_desc" => "", + "home" => "", + "home_desc" => "", + "item_kits" => "", + "item_kits_desc" => "", + "items" => "", + "items_desc" => "", + "messages" => "", + "messages_desc" => "", + "migrate" => "", + "migrate_desc" => "", + "office" => "", + "office_desc" => "", + "receivings" => "", + "receivings_desc" => "", + "reports" => "", + "reports_desc" => "", + "sales" => "", + "sales_desc" => "", + "suppliers" => "", + "suppliers_desc" => "", + "taxes" => "", + "taxes_desc" => "", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/pl/Receivings.php b/app/Language/pl/Receivings.php index 9fe96c3e2..4975f4061 100644 --- a/app/Language/pl/Receivings.php +++ b/app/Language/pl/Receivings.php @@ -1,58 +1,58 @@ "", - "cancel_receiving" => "Anuluj", - "cannot_be_deleted" => "", - "comments" => "", - "complete_receiving" => "", - "confirm_cancel_receiving" => "", - "confirm_delete" => "", - "confirm_finish_receiving" => "", - "confirm_restore" => "", - "cost" => "", - "daily" => "", - "date" => "", - "date_required" => "", - "date_type" => "", - "delete_entire_sale" => "", - "discount" => "", - "edit" => "", - "edit_sale" => "", - "employee" => "", - "error_editing_item" => "", - "error_requisition" => "", - "find_or_scan_item" => "", - "find_or_scan_item_or_receipt" => "", - "id" => "", - "item_name" => "", - "mode" => "", - "new_supplier" => "", - "one_or_multiple" => "", - "print_after_sale" => "", - "quantity" => "", - "receipt" => "", - "receipt_number" => "", - "receiving" => "", - "reference" => "", - "register" => "", - "requisition" => "", - "return" => "", - "select_supplier" => "", - "ship_pack" => "", - "start_typing_supplier_name" => "", - "stock" => "", - "stock_destination" => "", - "stock_locaiton" => "", - "stock_source" => "", - "successfully_deleted" => "", - "successfully_updated" => "", - "supplier" => "", - "supplier_address" => "", - "supplier_email" => "", - "supplier_location" => "", - "total" => "", - "transaction_failed" => "", - "unable_to_add_item" => "", - "unsuccessfully_updated" => "", - "update" => "", + "amount_due" => "", + "cancel_receiving" => "Anuluj", + "cannot_be_deleted" => "", + "comments" => "", + "complete_receiving" => "", + "confirm_cancel_receiving" => "", + "confirm_delete" => "", + "confirm_finish_receiving" => "", + "confirm_restore" => "", + "cost" => "", + "daily" => "", + "date" => "", + "date_required" => "", + "date_type" => "", + "delete_entire_sale" => "", + "discount" => "", + "edit" => "", + "edit_sale" => "", + "employee" => "", + "error_editing_item" => "", + "error_requisition" => "", + "find_or_scan_item" => "", + "find_or_scan_item_or_receipt" => "", + "id" => "", + "item_name" => "", + "mode" => "", + "new_supplier" => "", + "one_or_multiple" => "", + "print_after_sale" => "", + "quantity" => "", + "receipt" => "", + "receipt_number" => "", + "receiving" => "", + "reference" => "", + "register" => "", + "requisition" => "", + "return" => "", + "select_supplier" => "", + "ship_pack" => "", + "start_typing_supplier_name" => "", + "stock" => "", + "stock_destination" => "", + "stock_locaiton" => "", + "stock_source" => "", + "successfully_deleted" => "", + "successfully_updated" => "", + "supplier" => "", + "supplier_address" => "", + "supplier_email" => "", + "supplier_location" => "", + "total" => "", + "transaction_failed" => "", + "unable_to_add_item" => "", + "unsuccessfully_updated" => "", + "update" => "", ]; diff --git a/app/Language/pl/Reports.php b/app/Language/pl/Reports.php index 121a67e1a..f7ff20504 100644 --- a/app/Language/pl/Reports.php +++ b/app/Language/pl/Reports.php @@ -1,148 +1,148 @@ "Wszystko", - "authority" => "", - "canceled" => "", - "categories" => "", - "categories_summary_report" => "", - "category" => "", - "code_canceled" => "", - "code_invoice" => "", - "code_pos" => "", - "code_quote" => "", - "code_return" => "", - "code_type" => "", - "code_work_order" => "", - "comments" => "", - "commission" => "", - "complete" => "", - "completed_sales" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "cost" => "", - "cost_price" => "", - "count" => "", - "customer" => "", - "customers" => "", - "customers_summary_report" => "", - "date" => "", - "date_range" => "", - "description" => "", - "detailed_receivings_report" => "", - "detailed_receivings_report_input" => "", - "detailed_reports" => "", - "detailed_requisition_report" => "", - "detailed_sales_report" => "", - "discount" => "", - "discount_fixed" => "", - "discount_percent" => "", - "discount_type" => "", - "discounts" => "", - "discounts_summary_report" => "", - "earned" => "", - "employee" => "", - "employees" => "", - "employees_summary_report" => "", - "expenses" => "", - "expenses_amount" => "", - "expenses_categories" => "", - "expenses_categories_summary_report" => "", - "expenses_category" => "", - "expenses_payment_amount" => "", - "expenses_tax_amount" => "", - "expenses_total_amount" => "", - "expenses_total_tax_amount" => "", - "graphical_reports" => "", - "inventory" => "", - "inventory_low" => "", - "inventory_low_report" => "", - "inventory_reports" => "", - "inventory_summary" => "", - "inventory_summary_report" => "", - "item" => "", - "item_count" => "", - "item_name" => "", - "item_number" => "", - "items" => "", - "items_purchased" => "", - "items_received" => "", - "items_summary_report" => "", - "jurisdiction" => "", - "low_inventory" => "", - "low_inventory_report" => "", - "low_sell_quantity" => "", - "more_than_zero" => "", - "name" => "", - "no_reports_to_display" => "", - "payment_type" => "", - "payments" => "", - "payments_summary_report" => "", - "profit" => "", - "quantity" => "", - "quantity_purchased" => "", - "quotes" => "", - "received_by" => "", - "receiving_id" => "", - "receiving_type" => "", - "receivings" => "", - "reorder_level" => "", - "report" => "", - "report_input" => "", - "reports" => "", - "requisition" => "", - "requisition_by" => "", - "requisition_id" => "", - "requisition_item" => "", - "requisition_item_quantity" => "", - "requisition_related_item" => "", - "requisition_related_item_total_quantity" => "", - "requisition_related_item_unit_quantity" => "", - "requisitions" => "", - "returns" => "", - "revenue" => "", - "sale_id" => "", - "sale_type" => "", - "sales" => "", - "sales_amount" => "", - "sales_summary_report" => "", - "sales_taxes" => "", - "sales_taxes_summary_report" => "", - "serial_number" => "", - "service_charge" => "", - "sold_by" => "", - "sold_items" => "", - "sold_to" => "", - "stock_location" => "", - "sub_total_value" => "", - "subtotal" => "", - "summary_reports" => "", - "supplied_by" => "", - "supplier" => "", - "suppliers" => "", - "suppliers_summary_report" => "", - "tax" => "", - "tax_category" => "", - "tax_name" => "", - "tax_percent" => "", - "tax_rate" => "", - "taxes" => "", - "taxes_summary_report" => "", - "total" => "", - "total_inventory_value" => "", - "total_low_sell_quantity" => "", - "total_quantity" => "", - "total_retail" => "", - "trans_amount" => "", - "trans_due" => "", - "trans_group" => "", - "trans_nopay_sales" => "", - "trans_payments" => "", - "trans_refunded" => "", - "trans_sales" => "", - "trans_type" => "", - "type" => "", - "unit_price" => "", - "used" => "", - "work_orders" => "", - "zero_and_less" => "", + "all" => "Wszystko", + "authority" => "", + "canceled" => "", + "categories" => "", + "categories_summary_report" => "", + "category" => "", + "code_canceled" => "", + "code_invoice" => "", + "code_pos" => "", + "code_quote" => "", + "code_return" => "", + "code_type" => "", + "code_work_order" => "", + "comments" => "", + "commission" => "", + "complete" => "", + "completed_sales" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "cost" => "", + "cost_price" => "", + "count" => "", + "customer" => "", + "customers" => "", + "customers_summary_report" => "", + "date" => "", + "date_range" => "", + "description" => "", + "detailed_receivings_report" => "", + "detailed_receivings_report_input" => "", + "detailed_reports" => "", + "detailed_requisition_report" => "", + "detailed_sales_report" => "", + "discount" => "", + "discount_fixed" => "", + "discount_percent" => "", + "discount_type" => "", + "discounts" => "", + "discounts_summary_report" => "", + "earned" => "", + "employee" => "", + "employees" => "", + "employees_summary_report" => "", + "expenses" => "", + "expenses_amount" => "", + "expenses_categories" => "", + "expenses_categories_summary_report" => "", + "expenses_category" => "", + "expenses_payment_amount" => "", + "expenses_tax_amount" => "", + "expenses_total_amount" => "", + "expenses_total_tax_amount" => "", + "graphical_reports" => "", + "inventory" => "", + "inventory_low" => "", + "inventory_low_report" => "", + "inventory_reports" => "", + "inventory_summary" => "", + "inventory_summary_report" => "", + "item" => "", + "item_count" => "", + "item_name" => "", + "item_number" => "", + "items" => "", + "items_purchased" => "", + "items_received" => "", + "items_summary_report" => "", + "jurisdiction" => "", + "low_inventory" => "", + "low_inventory_report" => "", + "low_sell_quantity" => "", + "more_than_zero" => "", + "name" => "", + "no_reports_to_display" => "", + "payment_type" => "", + "payments" => "", + "payments_summary_report" => "", + "profit" => "", + "quantity" => "", + "quantity_purchased" => "", + "quotes" => "", + "received_by" => "", + "receiving_id" => "", + "receiving_type" => "", + "receivings" => "", + "reorder_level" => "", + "report" => "", + "report_input" => "", + "reports" => "", + "requisition" => "", + "requisition_by" => "", + "requisition_id" => "", + "requisition_item" => "", + "requisition_item_quantity" => "", + "requisition_related_item" => "", + "requisition_related_item_total_quantity" => "", + "requisition_related_item_unit_quantity" => "", + "requisitions" => "", + "returns" => "", + "revenue" => "", + "sale_id" => "", + "sale_type" => "", + "sales" => "", + "sales_amount" => "", + "sales_summary_report" => "", + "sales_taxes" => "", + "sales_taxes_summary_report" => "", + "serial_number" => "", + "service_charge" => "", + "sold_by" => "", + "sold_items" => "", + "sold_to" => "", + "stock_location" => "", + "sub_total_value" => "", + "subtotal" => "", + "summary_reports" => "", + "supplied_by" => "", + "supplier" => "", + "suppliers" => "", + "suppliers_summary_report" => "", + "tax" => "", + "tax_category" => "", + "tax_name" => "", + "tax_percent" => "", + "tax_rate" => "", + "taxes" => "", + "taxes_summary_report" => "", + "total" => "", + "total_inventory_value" => "", + "total_low_sell_quantity" => "", + "total_quantity" => "", + "total_retail" => "", + "trans_amount" => "", + "trans_due" => "", + "trans_group" => "", + "trans_nopay_sales" => "", + "trans_payments" => "", + "trans_refunded" => "", + "trans_sales" => "", + "trans_type" => "", + "type" => "", + "unit_price" => "", + "used" => "", + "work_orders" => "", + "zero_and_less" => "", ]; diff --git a/app/Language/pl/Sales.php b/app/Language/pl/Sales.php index beedefd6f..f2c9737f6 100644 --- a/app/Language/pl/Sales.php +++ b/app/Language/pl/Sales.php @@ -1,224 +1,224 @@ "Dostępne punkty", - "rewards_package" => "", - "rewards_remaining_balance" => "", - "account_number" => "", - "add_payment" => "", - "amount_due" => "", - "amount_tendered" => "", - "authorized_signature" => "", - "cancel_sale" => "", - "cash" => "", - "cash_1" => "", - "cash_2" => "", - "cash_3" => "", - "cash_4" => "", - "cash_adjustment" => "", - "cash_deposit" => "", - "cash_filter" => "", - "change_due" => "", - "change_price" => "", - "check" => "", - "check_balance" => "", - "check_filter" => "", - "close" => "", - "comment" => "", - "comments" => "", - "company_name" => "", - "complete" => "", - "complete_sale" => "", - "confirm_cancel_sale" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "credit" => "", - "credit_deposit" => "", - "credit_filter" => "", - "current_table" => "", - "customer" => "", - "customer_address" => "", - "customer_discount" => "", - "customer_email" => "", - "customer_location" => "", - "customer_mailchimp_status" => "", - "customer_optional" => "", - "customer_required" => "", - "customer_total" => "", - "customer_total_spent" => "", - "daily_sales" => "", - "date" => "", - "date_range" => "", - "date_required" => "", - "date_type" => "", - "debit" => "", - "debit_filter" => "", - "delete" => "", - "delete_confirmation" => "", - "delete_entire_sale" => "", - "delete_successful" => "", - "delete_unsuccessful" => "", - "description_abbrv" => "", - "discard" => "", - "discard_quote" => "", - "discount" => "", - "discount_included" => "", - "discount_short" => "", - "due" => "", - "due_filter" => "", - "edit" => "", - "edit_item" => "", - "edit_sale" => "", - "email_receipt" => "", - "employee" => "", - "entry" => "", - "error_editing_item" => "", - "find_or_scan_item" => "", - "find_or_scan_item_or_receipt" => "", - "giftcard" => "", - "giftcard_balance" => "", - "giftcard_filter" => "", - "giftcard_number" => "", - "group_by_category" => "", - "group_by_type" => "", - "hsn" => "", - "id" => "", - "include_prices" => "", - "invoice" => "", - "invoice_confirm" => "", - "invoice_enable" => "", - "invoice_filter" => "", - "invoice_no_email" => "", - "invoice_number" => "", - "invoice_number_duplicate" => "", - "invoice_sent" => "", - "invoice_total" => "", - "invoice_type_custom_invoice" => "", - "invoice_type_custom_tax_invoice" => "", - "invoice_type_invoice" => "", - "invoice_type_tax_invoice" => "", - "invoice_unsent" => "", - "invoice_update" => "", - "item_insufficient_of_stock" => "", - "item_name" => "", - "item_number" => "", - "item_out_of_stock" => "", - "key_browser" => "", - "key_cancel" => "Cancels Current Quote/Invoice/Sale", - "key_customer_search" => "Customer Search", - "key_finish_quote" => "Finish Quote/Invoice witdout payment", - "key_finish_sale" => "Add Payment and Complete Invoice/Sale", - "key_full" => "", - "key_function" => "Function", - "key_help" => "Shortcuts", - "key_help_modal" => "Open Shortcuts Window", - "key_in" => "", - "key_item_search" => "Item Search", - "key_out" => "", - "key_payment" => "Add Payment", - "key_print" => "", - "key_restore" => "", - "key_search" => "", - "key_suspend" => "Suspend Current Sale", - "key_suspended" => "Show Suspended Sales", - "key_system" => "", - "key_tendered" => "Edit Amount Tendered", - "key_title" => "Sales Keyboard Shortcuts", - "mc" => "", - "mode" => "", - "must_enter_numeric" => "", - "must_enter_numeric_giftcard" => "", - "new_customer" => "", - "new_item" => "", - "no_description" => "", - "no_filter" => "", - "no_items_in_cart" => "", - "no_sales_to_display" => "", - "none_selected" => "", - "nontaxed_ind" => "", - "not_authorized" => "", - "one_or_multiple" => "", - "payment" => "", - "payment_amount" => "", - "payment_not_cover_total" => "", - "payment_type" => "", - "payments" => "", - "payments_total" => "", - "price" => "", - "print_after_sale" => "", - "quantity" => "", - "quantity_less_than_reorder_level" => "", - "quantity_less_than_zero" => "", - "quantity_of_items" => "", - "quote" => "", - "quote_number" => "", - "quote_number_duplicate" => "", - "quote_sent" => "", - "quote_unsent" => "", - "receipt" => "", - "receipt_no_email" => "", - "receipt_number" => "", - "receipt_sent" => "", - "receipt_unsent" => "", - "refund" => "", - "register" => "", - "remove_customer" => "", - "remove_discount" => "", - "return" => "", - "rewards" => "", - "rewards_balance" => "", - "sale" => "", - "sale_by_invoice" => "", - "sale_for_customer" => "", - "sale_time" => "", - "sales_tax" => "", - "sales_total" => "", - "select_customer" => "", - "send_invoice" => "", - "send_quote" => "", - "send_receipt" => "", - "send_work_order" => "", - "serial" => "", - "service_charge" => "", - "show_due" => "", - "show_invoice" => "", - "show_receipt" => "", - "start_typing_customer_name" => "", - "start_typing_item_name" => "", - "stock" => "", - "stock_location" => "", - "sub_total" => "", - "successfully_deleted" => "", - "successfully_restored" => "", - "successfully_suspended_sale" => "", - "successfully_updated" => "", - "suspend_sale" => "", - "suspended_doc_id" => "", - "suspended_sale_id" => "", - "suspended_sales" => "", - "table" => "", - "takings" => "", - "tax" => "", - "tax_id" => "", - "tax_invoice" => "", - "tax_percent" => "", - "taxed_ind" => "", - "total" => "", - "total_tax_exclusive" => "", - "transaction_failed" => "", - "unable_to_add_item" => "", - "unsuccessfully_deleted" => "", - "unsuccessfully_restored" => "", - "unsuccessfully_suspended_sale" => "", - "unsuccessfully_updated" => "", - "unsuspend" => "", - "unsuspend_and_delete" => "", - "update" => "", - "upi" => "", - "visa" => "", - "wholesale" => "", - "work_order" => "", - "work_order_number" => "", - "work_order_number_duplicate" => "", - "work_order_sent" => "", - "work_order_unsent" => "", + "customers_available_points" => "Dostępne punkty", + "rewards_package" => "", + "rewards_remaining_balance" => "", + "account_number" => "", + "add_payment" => "", + "amount_due" => "", + "amount_tendered" => "", + "authorized_signature" => "", + "cancel_sale" => "", + "cash" => "", + "cash_1" => "", + "cash_2" => "", + "cash_3" => "", + "cash_4" => "", + "cash_adjustment" => "", + "cash_deposit" => "", + "cash_filter" => "", + "change_due" => "", + "change_price" => "", + "check" => "", + "check_balance" => "", + "check_filter" => "", + "close" => "", + "comment" => "", + "comments" => "", + "company_name" => "", + "complete" => "", + "complete_sale" => "", + "confirm_cancel_sale" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "credit" => "", + "credit_deposit" => "", + "credit_filter" => "", + "current_table" => "", + "customer" => "", + "customer_address" => "", + "customer_discount" => "", + "customer_email" => "", + "customer_location" => "", + "customer_mailchimp_status" => "", + "customer_optional" => "", + "customer_required" => "", + "customer_total" => "", + "customer_total_spent" => "", + "daily_sales" => "", + "date" => "", + "date_range" => "", + "date_required" => "", + "date_type" => "", + "debit" => "", + "debit_filter" => "", + "delete" => "", + "delete_confirmation" => "", + "delete_entire_sale" => "", + "delete_successful" => "", + "delete_unsuccessful" => "", + "description_abbrv" => "", + "discard" => "", + "discard_quote" => "", + "discount" => "", + "discount_included" => "", + "discount_short" => "", + "due" => "", + "due_filter" => "", + "edit" => "", + "edit_item" => "", + "edit_sale" => "", + "email_receipt" => "", + "employee" => "", + "entry" => "", + "error_editing_item" => "", + "find_or_scan_item" => "", + "find_or_scan_item_or_receipt" => "", + "giftcard" => "", + "giftcard_balance" => "", + "giftcard_filter" => "", + "giftcard_number" => "", + "group_by_category" => "", + "group_by_type" => "", + "hsn" => "", + "id" => "", + "include_prices" => "", + "invoice" => "", + "invoice_confirm" => "", + "invoice_enable" => "", + "invoice_filter" => "", + "invoice_no_email" => "", + "invoice_number" => "", + "invoice_number_duplicate" => "", + "invoice_sent" => "", + "invoice_total" => "", + "invoice_type_custom_invoice" => "", + "invoice_type_custom_tax_invoice" => "", + "invoice_type_invoice" => "", + "invoice_type_tax_invoice" => "", + "invoice_unsent" => "", + "invoice_update" => "", + "item_insufficient_of_stock" => "", + "item_name" => "", + "item_number" => "", + "item_out_of_stock" => "", + "key_browser" => "", + "key_cancel" => "Cancels Current Quote/Invoice/Sale", + "key_customer_search" => "Customer Search", + "key_finish_quote" => "Finish Quote/Invoice witdout payment", + "key_finish_sale" => "Add Payment and Complete Invoice/Sale", + "key_full" => "", + "key_function" => "Function", + "key_help" => "Shortcuts", + "key_help_modal" => "Open Shortcuts Window", + "key_in" => "", + "key_item_search" => "Item Search", + "key_out" => "", + "key_payment" => "Add Payment", + "key_print" => "", + "key_restore" => "", + "key_search" => "", + "key_suspend" => "Suspend Current Sale", + "key_suspended" => "Show Suspended Sales", + "key_system" => "", + "key_tendered" => "Edit Amount Tendered", + "key_title" => "Sales Keyboard Shortcuts", + "mc" => "", + "mode" => "", + "must_enter_numeric" => "", + "must_enter_numeric_giftcard" => "", + "new_customer" => "", + "new_item" => "", + "no_description" => "", + "no_filter" => "", + "no_items_in_cart" => "", + "no_sales_to_display" => "", + "none_selected" => "", + "nontaxed_ind" => "", + "not_authorized" => "", + "one_or_multiple" => "", + "payment" => "", + "payment_amount" => "", + "payment_not_cover_total" => "", + "payment_type" => "", + "payments" => "", + "payments_total" => "", + "price" => "", + "print_after_sale" => "", + "quantity" => "", + "quantity_less_than_reorder_level" => "", + "quantity_less_than_zero" => "", + "quantity_of_items" => "", + "quote" => "", + "quote_number" => "", + "quote_number_duplicate" => "", + "quote_sent" => "", + "quote_unsent" => "", + "receipt" => "", + "receipt_no_email" => "", + "receipt_number" => "", + "receipt_sent" => "", + "receipt_unsent" => "", + "refund" => "", + "register" => "", + "remove_customer" => "", + "remove_discount" => "", + "return" => "", + "rewards" => "", + "rewards_balance" => "", + "sale" => "", + "sale_by_invoice" => "", + "sale_for_customer" => "", + "sale_time" => "", + "sales_tax" => "", + "sales_total" => "", + "select_customer" => "", + "send_invoice" => "", + "send_quote" => "", + "send_receipt" => "", + "send_work_order" => "", + "serial" => "", + "service_charge" => "", + "show_due" => "", + "show_invoice" => "", + "show_receipt" => "", + "start_typing_customer_name" => "", + "start_typing_item_name" => "", + "stock" => "", + "stock_location" => "", + "sub_total" => "", + "successfully_deleted" => "", + "successfully_restored" => "", + "successfully_suspended_sale" => "", + "successfully_updated" => "", + "suspend_sale" => "", + "suspended_doc_id" => "", + "suspended_sale_id" => "", + "suspended_sales" => "", + "table" => "", + "takings" => "", + "tax" => "", + "tax_id" => "", + "tax_invoice" => "", + "tax_percent" => "", + "taxed_ind" => "", + "total" => "", + "total_tax_exclusive" => "", + "transaction_failed" => "", + "unable_to_add_item" => "", + "unsuccessfully_deleted" => "", + "unsuccessfully_restored" => "", + "unsuccessfully_suspended_sale" => "", + "unsuccessfully_updated" => "", + "unsuspend" => "", + "unsuspend_and_delete" => "", + "update" => "", + "upi" => "", + "visa" => "", + "wholesale" => "", + "work_order" => "", + "work_order_number" => "", + "work_order_number_duplicate" => "", + "work_order_sent" => "", + "work_order_unsent" => "", ]; diff --git a/app/Language/pl/Suppliers.php b/app/Language/pl/Suppliers.php index db6ae90f9..aea119a00 100644 --- a/app/Language/pl/Suppliers.php +++ b/app/Language/pl/Suppliers.php @@ -1,24 +1,24 @@ "Numer konta", - "agency_name" => "", - "cannot_be_deleted" => "", - "category" => "", - "company_name" => "", - "company_name_required" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "cost" => "", - "error_adding_updating" => "", - "goods" => "", - "new" => "", - "none_selected" => "", - "one_or_multiple" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "supplier" => "", - "supplier_id" => "", - "tax_id" => "", - "update" => "", + "account_number" => "Numer konta", + "agency_name" => "", + "cannot_be_deleted" => "", + "category" => "", + "company_name" => "", + "company_name_required" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "cost" => "", + "error_adding_updating" => "", + "goods" => "", + "new" => "", + "none_selected" => "", + "one_or_multiple" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "supplier" => "", + "supplier_id" => "", + "tax_id" => "", + "update" => "", ]; diff --git a/app/Language/pl/Taxes.php b/app/Language/pl/Taxes.php index 08b818bd7..1702c2e08 100644 --- a/app/Language/pl/Taxes.php +++ b/app/Language/pl/Taxes.php @@ -1,82 +1,82 @@ "Dodaj wyjątek", - "cascade" => "", - "cascade_sequence" => "", - "city" => "", - "code" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "default_tax_category" => "", - "default_tax_rate" => "", - "error_adding_updating" => "", - "group_seq" => "", - "jurisdiction_name" => "", - "name" => "", - "new" => "", - "no_taxes" => "", - "no_taxes_to_display" => "", - "reporting_authority" => "", - "round_half_down" => "", - "round_half_even" => "", - "round_half_odd" => "", - "round_half_up" => "", - "rounding_code" => "", - "sales_tax" => "", - "sales_tax_by_invoice" => "", - "sequence" => "", - "state" => "", - "successful_deleted" => "", - "tax_categories" => "", - "tax_categories_configuration" => "", - "tax_categories_saved_successfully" => "", - "tax_categories_saved_unsuccessfully" => "", - "tax_category" => "", - "tax_category_code" => "", - "tax_category_duplicate" => "", - "tax_category_invalid_chars" => "", - "tax_category_name" => "", - "tax_category_new" => "", - "tax_category_required" => "", - "tax_code" => "", - "tax_code_cannot_be_deleted" => "", - "tax_code_duplicate" => "", - "tax_code_invalid_chars" => "", - "tax_code_name" => "", - "tax_code_required" => "", - "tax_code_successful_deleted" => "", - "tax_code_successful_updated" => "", - "tax_code_successful_updating" => "", - "tax_code_successfully_added" => "", - "tax_code_type" => "", - "tax_codes" => "", - "tax_codes_configuration" => "", - "tax_codes_saved_successfully" => "", - "tax_codes_saved_unsuccessfully" => "", - "tax_excluded" => "", - "tax_group" => "", - "tax_group_not_unique" => "", - "tax_group_sequence" => "", - "tax_included" => "", - "tax_jurisdiction" => "", - "tax_jurisdiction_duplicate" => "", - "tax_jurisdiction_invalid_chars" => "", - "tax_jurisdiction_required" => "", - "tax_jurisdictions" => "", - "tax_jurisdictions_configuration" => "", - "tax_jurisdictions_saved_successfully" => "", - "tax_jurisdictions_saved_unsuccessfully" => "", - "tax_rate" => "", - "tax_rate_configuration" => "", - "tax_rate_error_adding_updating" => "", - "tax_rate_numeric" => "", - "tax_rate_required" => "", - "tax_rate_successful_updated" => "", - "tax_rate_successfully_added" => "", - "tax_rates" => "", - "tax_rates_configuration" => "", - "tax_rounding" => "", - "tax_type" => "", - "update" => "", - "vat_tax" => "", + "add_exception" => "Dodaj wyjątek", + "cascade" => "", + "cascade_sequence" => "", + "city" => "", + "code" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "default_tax_category" => "", + "default_tax_rate" => "", + "error_adding_updating" => "", + "group_seq" => "", + "jurisdiction_name" => "", + "name" => "", + "new" => "", + "no_taxes" => "", + "no_taxes_to_display" => "", + "reporting_authority" => "", + "round_half_down" => "", + "round_half_even" => "", + "round_half_odd" => "", + "round_half_up" => "", + "rounding_code" => "", + "sales_tax" => "", + "sales_tax_by_invoice" => "", + "sequence" => "", + "state" => "", + "successful_deleted" => "", + "tax_categories" => "", + "tax_categories_configuration" => "", + "tax_categories_saved_successfully" => "", + "tax_categories_saved_unsuccessfully" => "", + "tax_category" => "", + "tax_category_code" => "", + "tax_category_duplicate" => "", + "tax_category_invalid_chars" => "", + "tax_category_name" => "", + "tax_category_new" => "", + "tax_category_required" => "", + "tax_code" => "", + "tax_code_cannot_be_deleted" => "", + "tax_code_duplicate" => "", + "tax_code_invalid_chars" => "", + "tax_code_name" => "", + "tax_code_required" => "", + "tax_code_successful_deleted" => "", + "tax_code_successful_updated" => "", + "tax_code_successful_updating" => "", + "tax_code_successfully_added" => "", + "tax_code_type" => "", + "tax_codes" => "", + "tax_codes_configuration" => "", + "tax_codes_saved_successfully" => "", + "tax_codes_saved_unsuccessfully" => "", + "tax_excluded" => "", + "tax_group" => "", + "tax_group_not_unique" => "", + "tax_group_sequence" => "", + "tax_included" => "", + "tax_jurisdiction" => "", + "tax_jurisdiction_duplicate" => "", + "tax_jurisdiction_invalid_chars" => "", + "tax_jurisdiction_required" => "", + "tax_jurisdictions" => "", + "tax_jurisdictions_configuration" => "", + "tax_jurisdictions_saved_successfully" => "", + "tax_jurisdictions_saved_unsuccessfully" => "", + "tax_rate" => "", + "tax_rate_configuration" => "", + "tax_rate_error_adding_updating" => "", + "tax_rate_numeric" => "", + "tax_rate_required" => "", + "tax_rate_successful_updated" => "", + "tax_rate_successfully_added" => "", + "tax_rates" => "", + "tax_rates_configuration" => "", + "tax_rounding" => "", + "tax_type" => "", + "update" => "", + "vat_tax" => "", ]; diff --git a/app/Language/pt-BR/Attributes.php b/app/Language/pt-BR/Attributes.php index 6ef059e93..61bfec798 100644 --- a/app/Language/pt-BR/Attributes.php +++ b/app/Language/pt-BR/Attributes.php @@ -1,32 +1,32 @@ "Valor do atributo não pode conter ':' ou '|'", - "confirm_delete" => "Tem certeza de que deseja excluir os atributos selecionados?", - "confirm_restore" => "Tem certeza de que deseja restaurar o(s) atributo(s) selecionado(s)?", - "definition_cannot_be_deleted" => "Não foi possível excluir atributo selecionado (s)", - "definition_error_adding_updating" => "Atributo {0} não pode ser adicionado ou atualizado. Por favor verifique o log de erros.", - "definition_flags" => "Visibilidade de atributo", - "definition_group" => "Grupo", - "definition_id" => "Id", - "definition_name" => "Adicionar Atributo", - "definition_name_required" => "Nome do atributo é um campo obrigatório", - "definition_one_or_multiple" => "Atributo(s)", - "definition_successful_adding" => "Você adicionou com êxito o item", - "definition_successful_deleted" => "Você excluiu com êxito", - "definition_successful_updating" => "Você atualizou com êxito o atributo", - "definition_type" => "Tipo de atributo", - "definition_type_required" => "Tipo de atributo é um campo obrigatório", - "definition_unit" => "Unidade de medida", - "definition_values" => "Valores de atributo", - "new" => "Novo Atributo", - "no_attributes_to_display" => "Não há itens para exibir", - "receipt_visibility" => "Recibo", - "show_in_items" => "Mostrar em itens", - "show_in_items_visibility" => "Itens", - "show_in_receipt" => "Mostrar no recibo", - "show_in_receivings" => "Mostrar em recebimentos", - "show_in_receivings_visibility" => "Recebimentos", - "show_in_sales" => "Mostrar em vendas", - "show_in_sales_visibility" => "Vendas", - "update" => "Atualizar atributo", + "attribute_value_invalid_chars" => "Valor do atributo não pode conter ':' ou '|'", + "confirm_delete" => "Tem certeza de que deseja excluir os atributos selecionados?", + "confirm_restore" => "Tem certeza de que deseja restaurar o(s) atributo(s) selecionado(s)?", + "definition_cannot_be_deleted" => "Não foi possível excluir atributo selecionado (s)", + "definition_error_adding_updating" => "Atributo {0} não pode ser adicionado ou atualizado. Por favor verifique o log de erros.", + "definition_flags" => "Visibilidade de atributo", + "definition_group" => "Grupo", + "definition_id" => "Id", + "definition_name" => "Adicionar Atributo", + "definition_name_required" => "Nome do atributo é um campo obrigatório", + "definition_one_or_multiple" => "Atributo(s)", + "definition_successful_adding" => "Você adicionou com êxito o item", + "definition_successful_deleted" => "Você excluiu com êxito", + "definition_successful_updating" => "Você atualizou com êxito o atributo", + "definition_type" => "Tipo de atributo", + "definition_type_required" => "Tipo de atributo é um campo obrigatório", + "definition_unit" => "Unidade de medida", + "definition_values" => "Valores de atributo", + "new" => "Novo Atributo", + "no_attributes_to_display" => "Não há itens para exibir", + "receipt_visibility" => "Recibo", + "show_in_items" => "Mostrar em itens", + "show_in_items_visibility" => "Itens", + "show_in_receipt" => "Mostrar no recibo", + "show_in_receivings" => "Mostrar em recebimentos", + "show_in_receivings_visibility" => "Recebimentos", + "show_in_sales" => "Mostrar em vendas", + "show_in_sales_visibility" => "Vendas", + "update" => "Atualizar atributo", ]; diff --git a/app/Language/pt-BR/Bootstrap_tables.php b/app/Language/pt-BR/Bootstrap_tables.php index 74150cc8a..78323ce10 100644 --- a/app/Language/pt-BR/Bootstrap_tables.php +++ b/app/Language/pt-BR/Bootstrap_tables.php @@ -1,11 +1,11 @@ "Tudo", - "columns" => "Colunas", - "hide_show_pagination" => "Ocultar/Exibir paginação", - "loading" => "Carregando, aguarde...", - "page_from_to" => "Exibindo {0} até {1} de {2} linhas", - "refresh" => "Recarregar", - "rows_per_page" => "{0} registros por página", - "toggle" => "Ocultar/Exibir paginação", + "all" => "Tudo", + "columns" => "Colunas", + "hide_show_pagination" => "Ocultar/Exibir paginação", + "loading" => "Carregando, aguarde...", + "page_from_to" => "Exibindo {0} até {1} de {2} linhas", + "refresh" => "Recarregar", + "rows_per_page" => "{0} registros por página", + "toggle" => "Ocultar/Exibir paginação", ]; diff --git a/app/Language/pt-BR/Calendar.php b/app/Language/pt-BR/Calendar.php index 78d6ce33d..9d0abb705 100644 --- a/app/Language/pt-BR/Calendar.php +++ b/app/Language/pt-BR/Calendar.php @@ -1,48 +1,48 @@ "Do", - "mo" => "Se", - "tu" => "Te", - "we" => "Qu", - "th" => "Qu", - "fr" => "Se", - "sa" => "Sá", - "sun" => "Dom", - "mon" => "Seg", - "tue" => "Ter", - "wed" => "Qua", - "thu" => "Qui", - "fri" => "Sex", - "sat" => "Sáb", - "sunday" => "Domingo", - "monday" => "Segunda", - "tuesday" => "Terça", - "wednesday" => "Quarta", - "thursday" => "Quinta", - "friday" => "Sexta", - "saturday" => "Sábado", - "jan" => "Jan", - "feb" => "Fev", - "mar" => "Mar", - "apr" => "Abr", - "may" => "Mai", - "jun" => "Jun", - "jul" => "Jul", - "aug" => "Ago", - "sep" => "Set", - "oct" => "Out", - "nov" => "Nov", - "dec" => "Dez", - "january" => "Janeiro", - "february" => "Fevereiro", - "march" => "Março", - "april" => "Abril", - "mayl" => "Maio", - "june" => "Junho", - "july" => "Julho", - "august" => "Agosto", - "september" => "Setembro", - "october" => "Outubro", - "november" => "Novembro", - "december" => "Dezembro", + "su" => "Do", + "mo" => "Se", + "tu" => "Te", + "we" => "Qu", + "th" => "Qu", + "fr" => "Se", + "sa" => "Sá", + "sun" => "Dom", + "mon" => "Seg", + "tue" => "Ter", + "wed" => "Qua", + "thu" => "Qui", + "fri" => "Sex", + "sat" => "Sáb", + "sunday" => "Domingo", + "monday" => "Segunda", + "tuesday" => "Terça", + "wednesday" => "Quarta", + "thursday" => "Quinta", + "friday" => "Sexta", + "saturday" => "Sábado", + "jan" => "Jan", + "feb" => "Fev", + "mar" => "Mar", + "apr" => "Abr", + "may" => "Mai", + "jun" => "Jun", + "jul" => "Jul", + "aug" => "Ago", + "sep" => "Set", + "oct" => "Out", + "nov" => "Nov", + "dec" => "Dez", + "january" => "Janeiro", + "february" => "Fevereiro", + "march" => "Março", + "april" => "Abril", + "mayl" => "Maio", + "june" => "Junho", + "july" => "Julho", + "august" => "Agosto", + "september" => "Setembro", + "october" => "Outubro", + "november" => "Novembro", + "december" => "Dezembro", ]; diff --git a/app/Language/pt-BR/Cashups.php b/app/Language/pt-BR/Cashups.php index d95139a73..4977711e4 100644 --- a/app/Language/pt-BR/Cashups.php +++ b/app/Language/pt-BR/Cashups.php @@ -1,49 +1,49 @@ "Quantidade", - "amount_number" => "O valor deve ser um número", - "amount_required" => "Quantidade é um campo obrigatório.", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "Recebimento não pode ser excluído", - "cash_difference" => "", - "close_date" => "Fechar data", - "close_employee" => "Fechado por", - "closed_amount_card" => "Cartão", - "closed_amount_cash" => "Dinheiro Fechado", - "closed_amount_check" => "Cheques", - "closed_amount_due" => "Devido", - "closed_amount_giftcard" => "", - "closed_amount_total" => "Total", - "closed_date" => "Data Fechada", - "confirm_delete" => "Tem a certeza de que pretende eliminar o recebimento selecionado?", - "confirm_restore" => "Tem certeza de que deseja restaurar o(s) recebimento(s) selecionado(s)?", - "confirm_submit" => "", - "date_number" => "Data deve ser um número", - "date_required" => "Data é um campo obrigatório", - "description" => "Descrição", - "enable_expected" => "", - "error_adding_updating" => "Erro ao adicionar/atualizar o recebimento", - "giftcard" => "", - "id" => "Id", - "info" => "Informações do recebimento", - "info_employee" => "", - "is_deleted" => "Apagado", - "new" => "Novo recebimento", - "no_cashups_to_display" => "Não há recebimentos para exibir", - "none_selected" => "Você não selecionou nenhum recebimento", - "note" => "Notas", - "one_or_multiple" => "Recebimento(s)", - "open_amount_cash" => "Caixa Aberto", - "open_date" => "Data abertura", - "open_employee" => "Aberto por", - "opened_date" => "Data de abertura", - "successful_adding" => "Recebimento adicionado com sucesso", - "successful_deleted" => "Recebimento excluído com sucesso", - "successful_updating" => "Atualização de recebimento bem-sucedida", - "total" => "Total", - "transfer_amount_cash" => "Dinheiro E/S", - "transfer_amount_cash_minus" => "", - "update" => "Atualizar recebimento", - "warning" => "", + "amount" => "Quantidade", + "amount_number" => "O valor deve ser um número", + "amount_required" => "Quantidade é um campo obrigatório.", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "Recebimento não pode ser excluído", + "cash_difference" => "", + "close_date" => "Fechar data", + "close_employee" => "Fechado por", + "closed_amount_card" => "Cartão", + "closed_amount_cash" => "Dinheiro Fechado", + "closed_amount_check" => "Cheques", + "closed_amount_due" => "Devido", + "closed_amount_giftcard" => "", + "closed_amount_total" => "Total", + "closed_date" => "Data Fechada", + "confirm_delete" => "Tem a certeza de que pretende eliminar o recebimento selecionado?", + "confirm_restore" => "Tem certeza de que deseja restaurar o(s) recebimento(s) selecionado(s)?", + "confirm_submit" => "", + "date_number" => "Data deve ser um número", + "date_required" => "Data é um campo obrigatório", + "description" => "Descrição", + "enable_expected" => "", + "error_adding_updating" => "Erro ao adicionar/atualizar o recebimento", + "giftcard" => "", + "id" => "Id", + "info" => "Informações do recebimento", + "info_employee" => "", + "is_deleted" => "Apagado", + "new" => "Novo recebimento", + "no_cashups_to_display" => "Não há recebimentos para exibir", + "none_selected" => "Você não selecionou nenhum recebimento", + "note" => "Notas", + "one_or_multiple" => "Recebimento(s)", + "open_amount_cash" => "Caixa Aberto", + "open_date" => "Data abertura", + "open_employee" => "Aberto por", + "opened_date" => "Data de abertura", + "successful_adding" => "Recebimento adicionado com sucesso", + "successful_deleted" => "Recebimento excluído com sucesso", + "successful_updating" => "Atualização de recebimento bem-sucedida", + "total" => "Total", + "transfer_amount_cash" => "Dinheiro E/S", + "transfer_amount_cash_minus" => "", + "update" => "Atualizar recebimento", + "warning" => "", ]; diff --git a/app/Language/pt-BR/Common.php b/app/Language/pt-BR/Common.php index 3df68bccd..e24ae0e41 100644 --- a/app/Language/pt-BR/Common.php +++ b/app/Language/pt-BR/Common.php @@ -1,88 +1,88 @@ "Endereço", - "address_2" => "Complemento", - "admin" => "", - "city" => "Cidade", - "clerk" => "", - "close" => "Fechar", - "color" => "", - "comments" => "Comentários", - "common" => "comum", - "confirm_search" => "Você selecionou uma ou mais linhas, estes não serão mais selecionados após a sua pesquisa. Tem certeza de que deseja enviar esta pesquisa?", - "copyrights" => "© 2010 - {0}", - "correct_errors" => "Por favor, corrija os erros identificados antes de salvar", - "country" => "País", - "dashboard" => "", - "date" => "Data", - "delete" => "Apagar", - "det" => "detalhes", - "download_import_template" => "Baixar Modelo de importação CSV(CSV)", - "edit" => "editar", - "email" => "e-mail", - "email_invalid_format" => "O formato do e-mail não é válido.", - "export_csv" => "Exportar para CSV", - "export_csv_no" => "Não", - "export_csv_yes" => "Sim", - "fields_required_message" => "Campos em vermelho são obrigatórios", - "fields_required_message_unique" => "", - "first_name" => "Nome", - "first_name_required" => "O nome é requerido.", - "first_page" => "Primeira", - "gender" => "Sexo", - "gender_female" => "F", - "gender_male" => "M", - "gender_undefined" => "", - "icon" => "", - "id" => "Id", - "import" => "Importar", - "import_change_file" => "Requerido", - "import_csv" => "Importar do CSV", - "import_full_path" => "Caminho completo para o arquivo do CSV é necessário", - "import_remove_file" => "Remover", - "import_select_file" => "Selecionar o arquivo", - "inv" => "fat", - "last_name" => "Sobrenome", - "last_name_required" => "O sobrenome é requerido.", - "last_page" => "Última", - "learn_about_project" => "no GitHub.", - "list_of" => "Lista de", - "logo" => "", - "logo_mark" => "", - "logout" => "Sair", - "manager" => "", - "migration_needed" => "Uma migração do banco de dados para {0} será iniciada após o login.", - "new" => "Novo", - "no" => "", - "no_persons_to_display" => "Não existem pessoas para mostrar.", - "none_selected_text" => "Selecione", - "or" => "ou", - "people" => "", - "phone_number" => "Telefone", - "phone_number_required" => "Número do telefone é requerido", - "please_visit_my" => "Para saber mais sobre esta aplicação visite o website do projeto |", - "position" => "", - "powered_by" => "Desenvolvido por", - "price" => "Preço", - "print" => "Imprimir", - "remove" => "Remover", - "required" => "Requerido", - "restore" => "Restaurar", - "return_policy" => "Política", - "search" => "Pesquisar", - "search_options" => "Opções de pesquisa", - "searched_for" => "Pesquisar por", - "software_short" => "", - "software_title" => "", - "state" => "Estado", - "submit" => "Enviar", - "total_spent" => "Total gasto", - "unknown" => "Desconhecido", - "view_recent_sales" => "Ver Vendas Recentes", - "website" => "opensourcepos.org", - "welcome" => "Bem-vindo", - "welcome_message" => "Bem-vindo.", - "yes" => "", - "you_are_using_ospos" => "Você está usando Open Source Point Of Sale Versão", - "zip" => "CEP", + "address_1" => "Endereço", + "address_2" => "Complemento", + "admin" => "", + "city" => "Cidade", + "clerk" => "", + "close" => "Fechar", + "color" => "", + "comments" => "Comentários", + "common" => "comum", + "confirm_search" => "Você selecionou uma ou mais linhas, estes não serão mais selecionados após a sua pesquisa. Tem certeza de que deseja enviar esta pesquisa?", + "copyrights" => "© 2010 - {0}", + "correct_errors" => "Por favor, corrija os erros identificados antes de salvar", + "country" => "País", + "dashboard" => "", + "date" => "Data", + "delete" => "Apagar", + "det" => "detalhes", + "download_import_template" => "Baixar Modelo de importação CSV(CSV)", + "edit" => "editar", + "email" => "e-mail", + "email_invalid_format" => "O formato do e-mail não é válido.", + "export_csv" => "Exportar para CSV", + "export_csv_no" => "Não", + "export_csv_yes" => "Sim", + "fields_required_message" => "Campos em vermelho são obrigatórios", + "fields_required_message_unique" => "", + "first_name" => "Nome", + "first_name_required" => "O nome é requerido.", + "first_page" => "Primeira", + "gender" => "Sexo", + "gender_female" => "F", + "gender_male" => "M", + "gender_undefined" => "", + "icon" => "", + "id" => "Id", + "import" => "Importar", + "import_change_file" => "Requerido", + "import_csv" => "Importar do CSV", + "import_full_path" => "Caminho completo para o arquivo do CSV é necessário", + "import_remove_file" => "Remover", + "import_select_file" => "Selecionar o arquivo", + "inv" => "fat", + "last_name" => "Sobrenome", + "last_name_required" => "O sobrenome é requerido.", + "last_page" => "Última", + "learn_about_project" => "no GitHub.", + "list_of" => "Lista de", + "logo" => "", + "logo_mark" => "", + "logout" => "Sair", + "manager" => "", + "migration_needed" => "Uma migração do banco de dados para {0} será iniciada após o login.", + "new" => "Novo", + "no" => "", + "no_persons_to_display" => "Não existem pessoas para mostrar.", + "none_selected_text" => "Selecione", + "or" => "ou", + "people" => "", + "phone_number" => "Telefone", + "phone_number_required" => "Número do telefone é requerido", + "please_visit_my" => "Para saber mais sobre esta aplicação visite o website do projeto |", + "position" => "", + "powered_by" => "Desenvolvido por", + "price" => "Preço", + "print" => "Imprimir", + "remove" => "Remover", + "required" => "Requerido", + "restore" => "Restaurar", + "return_policy" => "Política", + "search" => "Pesquisar", + "search_options" => "Opções de pesquisa", + "searched_for" => "Pesquisar por", + "software_short" => "", + "software_title" => "", + "state" => "Estado", + "submit" => "Enviar", + "total_spent" => "Total gasto", + "unknown" => "Desconhecido", + "view_recent_sales" => "Ver Vendas Recentes", + "website" => "opensourcepos.org", + "welcome" => "Bem-vindo", + "welcome_message" => "Bem-vindo.", + "yes" => "", + "you_are_using_ospos" => "Você está usando Open Source Point Of Sale Versão", + "zip" => "CEP", ]; diff --git a/app/Language/pt-BR/Config.php b/app/Language/pt-BR/Config.php index 827467a63..817fa850f 100644 --- a/app/Language/pt-BR/Config.php +++ b/app/Language/pt-BR/Config.php @@ -1,330 +1,330 @@ "Endereço da empresa", - "address_required" => "Endereço da empresa é um campo obrigatório.", - "all_set" => "All file permissions are set correctly!", - "allow_duplicate_barcodes" => "Permitir códigos de barras duplicados", - "apostrophe" => "apóstrofe", - "backup_button" => "Cópia de Segurança", - "backup_database" => "Cópia de Segurança", - "barcode" => "Código de Barras", - "barcode_company" => "Nome da Empresa", - "barcode_configuration" => "Configuração do Código de Barras", - "barcode_content" => "Conteúdo do código de barras", - "barcode_first_row" => "Linha 1", - "barcode_font" => "Fonte", - "barcode_formats" => "Formatos de entrada", - "barcode_generate_if_empty" => "Gerar se vazio.", - "barcode_height" => "Altura (px)", - "barcode_id" => "Item Id/Nome", - "barcode_info" => "Informação de configuração de códigos de barras", - "barcode_layout" => "Layout Código de barras", - "barcode_name" => "Nome", - "barcode_number" => "Código de Barras", - "barcode_number_in_row" => "Número de linhas", - "barcode_page_cellspacing" => "Espaçamento das células na página de exibição.", - "barcode_page_width" => "Largura da página de exibição", - "barcode_price" => "Preço", - "barcode_second_row" => "Linha 2", - "barcode_third_row" => "Linha 3", - "barcode_tooltip" => "Aviso: esse recurso pode fazer com que itens duplicados sejam importados ou criados. Não use se você não quiser códigos de barras duplicados.", - "barcode_type" => "Tipo de código de barras", - "barcode_width" => "Largura (px)", - "bottom" => "Inferior", - "cash_button" => "", - "cash_button_1" => "", - "cash_button_2" => "", - "cash_button_3" => "", - "cash_button_4" => "", - "cash_button_5" => "", - "cash_button_6" => "", - "cash_decimals" => "Decimais da moeda", - "cash_decimals_tooltip" => "Se os decimais de caixa e os decimais de moeda forem os mesmos, não haverá arredondamento de caixa.", - "cash_rounding" => "Arredondamento de Caixa", - "category_dropdown" => "Mostrar Categoria como campo suspenso", - "center" => "Centro", - "change_apperance_tooltip" => "", - "comma" => "Vírgula", - "company" => "Nome da empresa", - "company_avatar" => "", - "company_change_image" => "Trocar imagem", - "company_logo" => "Logo da empresa", - "company_remove_image" => "Remover imagem", - "company_required" => "Nome da empresa é requerido", - "company_select_image" => "Selecionar imagem", - "company_website_url" => "Site da empresa não é uma URL válida (http://...).", - "country_codes" => "Código do país", - "country_codes_tooltip" => "Vírgula lista de códigos de país separado para pesquisa de endereços pelo nome.", - "currency_code" => "Código da moeda", - "currency_decimals" => "Decimais da moeda", - "currency_symbol" => "Simbolo moeda", - "current_employee_only" => "", - "customer_reward" => "Recompensa", - "customer_reward_duplicate" => "Recompensa deve ser única.", - "customer_reward_enable" => "Ativar recompensas do cliente", - "customer_reward_invalid_chars" => "Recompensa não pode conter '_'", - "customer_reward_required" => "Recompensa é um campo obrigatório", - "customer_sales_tax_support" => "Suporte ao imposto sobre vendas do cliente", - "date_or_time_format" => "Filtro de data e hora", - "datetimeformat" => "Formato da data e hora", - "decimal_point" => "Ponto decimal", - "default_barcode_font_size_number" => "O tamanho da fonte do código de barras padrão deve ser um número.", - "default_barcode_font_size_required" => "O tamanho da fonte do código de barras padrão é um campo obrigatório.", - "default_barcode_height_number" => "A altura do código de barras padrão deve ser um número.", - "default_barcode_height_required" => "A altura do código de barras padrão é um campo obrigatório.", - "default_barcode_num_in_row_number" => "O número de código de barras padrão na linha deve ser um número.", - "default_barcode_num_in_row_required" => "O número de código de barras padrão na linha é um campo obrigatório.", - "default_barcode_page_cellspacing_number" => "O espaçamento das células na página de código de barras padrão deve ser um número.", - "default_barcode_page_cellspacing_required" => "O espaçamento das células na página de código de barras padrão é um campo obrigatório.", - "default_barcode_page_width_number" => "A largura da página de código de barras padrão deve ser um número.", - "default_barcode_page_width_required" => "A largura da página de código de barras padrão é um campo obrigatório.", - "default_barcode_width_number" => "A largura do código de barras padrão deve ser um número.", - "default_barcode_width_required" => "A largura do código de barras padrão é um campo obrigatório.", - "default_item_columns" => "Colunas de itens visíveis padrão", - "default_origin_tax_code" => "Código de imposto de origem padrão", - "default_receivings_discount" => "Desconto de recebimento padrão", - "default_receivings_discount_number" => "Desconto de recebimento padrão deve ser um número.", - "default_receivings_discount_required" => "Desconto de recebimento padrão é um campo obrigatório.", - "default_sales_discount" => "Desconto de vendas padrão", - "default_sales_discount_number" => "O desconto de vendas padrão deve ser um número.", - "default_sales_discount_required" => "O desconto de vendas padrão é um campo obrigatório.", - "default_tax_category" => "Categoria de imposto padrão", - "default_tax_code" => "Código Tributário Padrão", - "default_tax_jurisdiction" => "Jurisdição fiscal padrão", - "default_tax_name_number" => "O nome do imposto padrão deve ser uma string.", - "default_tax_name_required" => "Nome da taxa padrão é requerida.", - "default_tax_rate" => "Imposto Tarifa Padrão %", - "default_tax_rate_1" => "Imposto 1 Tarifa", - "default_tax_rate_2" => "Imposto 2 Tarifa", - "default_tax_rate_3" => "", - "default_tax_rate_number" => "A taxa de Imposto padrão deve ser um número.", - "default_tax_rate_required" => "A taxa de Imposto padrão é um campo obrigatório.", - "derive_sale_quantity" => "Permitir quantidade de venda derivada", - "derive_sale_quantity_tooltip" => "Se marcado, um novo tipo de item será fornecido para itens solicitados por quantidade estendida", - "dinner_table" => "Mesa", - "dinner_table_duplicate" => "A mesa deve ser única.", - "dinner_table_enable" => "Ativar mesas de jantar", - "dinner_table_invalid_chars" => "O nome da mesa não pode conter '_'.", - "dinner_table_required" => "A mesa é um campo obrigatório.", - "dot" => "ponto", - "email" => "E-mail", - "email_configuration" => "Configuração de Email", - "email_mailpath" => "Caminho para Sendmail", - "email_protocol" => "Protocolo", - "email_receipt_check_behaviour" => "Caixa de seleção de recibo de e-mail", - "email_receipt_check_behaviour_always" => "Sempre selecionado", - "email_receipt_check_behaviour_last" => "Lembrar da última seleção", - "email_receipt_check_behaviour_never" => "Sempre desativado", - "email_smtp_crypto" => "Criptografia SMTP", - "email_smtp_host" => "Servidor SMTP", - "email_smtp_pass" => "Senha SMTP", - "email_smtp_port" => "Porta SMTP", - "email_smtp_timeout" => "SMTP Tempo esgotado", - "email_smtp_user" => "Nome de usuário SMTP", - "enable_avatar" => "", - "enable_avatar_tooltip" => "", - "enable_dropdown_tooltip" => "", - "enable_new_look" => "", - "enable_right_bar" => "", - "enable_right_bar_tooltip" => "", - "enforce_privacy" => "Reforce a privacidade", - "enforce_privacy_tooltip" => "Proteja a privacidade dos clientes, impondo a codificação de dados no caso de seus dados serem excluídos", - "fax" => "Fax", - "file_perm" => "There are problems with file permissions please fix and reload this page.", - "financial_year" => "Início do ano fiscal", - "financial_year_apr" => "1 de abril", - "financial_year_aug" => "1 de agosto", - "financial_year_dec" => "1 de dezembro", - "financial_year_feb" => "1 de fevereiro", - "financial_year_jan" => "1 de janeiro", - "financial_year_jul" => "1 de julho", - "financial_year_jun" => "1 de junho", - "financial_year_mar" => "1 de março", - "financial_year_may" => "1 de maio", - "financial_year_nov" => "1 de novembro", - "financial_year_oct" => "1 de outubro", - "financial_year_sep" => "1 de setembro", - "floating_labels" => "", - "gcaptcha_enable" => "Página de login reCAPTCHA", - "gcaptcha_secret_key" => "Chave secreta do reCAPTCHA", - "gcaptcha_secret_key_required" => "A chave secreta reCAPTCHA é um campo obrigatório", - "gcaptcha_site_key" => "Chave do site reCAPTCHA", - "gcaptcha_site_key_required" => "A chave do site reCAPTCHA é um campo obrigatório", - "gcaptcha_tooltip" => "Proteja a página de login com o Google reCAPTCHA e clique no ícone de um par de chaves de API.", - "general" => "Gerais", - "general_configuration" => "Configurações Gerais", - "giftcard_number" => "Número cartão presente", - "giftcard_random" => "Geração aleaória", - "giftcard_series" => "Gerado em serie", - "image_allowed_file_types" => "Tipos de arquivo permitidos", - "image_max_height_tooltip" => "Altura máxima permitida para envio de imagens em pixels (px).", - "image_max_size_tooltip" => "Tamanho máximo permitido para envio de imagens em kilobytes (kb).", - "image_max_width_tooltip" => "Largura máxima permitida para envio de imagens em pixels (px).", - "image_restrictions" => "Restrições no envio de imagens", - "include_hsn" => "Incluir suporte para códigos HSN", - "info" => "Informações", - "info_configuration" => "Informações da loja", - "input_groups" => "", - "integrations" => "Integrações", - "integrations_configuration" => "Integrações de terceiros", - "invoice" => "Fatura", - "invoice_configuration" => "Configuração de Impressão", - "invoice_default_comments" => "Comentário", - "invoice_email_message" => "Modelo de e-mail Fatura", - "invoice_enable" => "Habilitar faturamento", - "invoice_printer" => "Imprimir fatura", - "invoice_type" => "Tipo Fatura", - "is_readable" => "É readable, mas as permissões estão incorretas. Por favor defina para 640 ou 660 e recarregue.", - "is_writable" => "É writable, mas as permissões estão incorretas. Por favor defina para 750 e recarrege.", - "item_markup" => "", - "jsprintsetup_required" => "Aviso! Esta funcionalidade só irá funcionar se você tem o addon FireFox jsPrintSetup instalado. Salvar de qualquer maneira?", - "language" => "Linguagem", - "last_used_invoice_number" => "Último número de fatura usado", - "last_used_quote_number" => "Último número de cotação usada", - "last_used_work_order_number" => "Último número de ordem de serviço usado", - "left" => "Esquerda", - "license" => "Licenças", - "license_configuration" => "Declaração de licença", - "line_sequence" => "Sequência de Linhas", - "lines_per_page" => "Linhas por página", - "lines_per_page_number" => "Linhas por página deve ser um número.", - "lines_per_page_required" => "As linhas por página é um campo obrigatório.", - "locale" => "Localização", - "locale_configuration" => "Configuração de Localização", - "locale_info" => "Informações da Configuração de Localização", - "location" => "Estoque", - "location_configuration" => "Localização do Estoque", - "location_info" => "Informações da localização", - "login_form" => "", - "logout" => "Você não quer fazer uma cópia de segurança antes de sair? Clique [OK] para fazer a cópia de segurança.", - "mailchimp" => "Configuração Mailchimp", - "mailchimp_api_key" => "Mailchimp chave API", - "mailchimp_configuration" => "Configuração Mailchimp", - "mailchimp_key_successfully" => "API chave válida.", - "mailchimp_key_unsuccessfully" => "API chave inválida.", - "mailchimp_lists" => "Lista(s) Mailchimp", - "mailchimp_tooltip" => "Clique no ícone de uma chave de API.", - "message" => "Mensagem", - "message_configuration" => "Configuração de Mensagens", - "msg_msg" => "Salvar mensagem de texto", - "msg_msg_placeholder" => "Se você deseja usar um modelo de SMS salvar a sua mensagem aqui. Caso contrário, deixe a caixa em branco.", - "msg_pwd" => "SMS-API senha", - "msg_pwd_required" => "SMS-API Senha é um campo obrigatório", - "msg_src" => "SMS-API Remetente ID", - "msg_src_required" => "SMS-API Remetente ID é um campo obrigatório", - "msg_uid" => "SMS-API usuário", - "msg_uid_required" => "SMS-API usuário é um campo obrigatório", - "multi_pack_enabled" => "Vários pacotes por item", - "no_risk" => "No security/vulnerability risks.", - "none" => "nenhum", - "notify_alignment" => "Notificação Posição Popup", - "number_format" => "Formato do número", - "number_locale" => "Localização", - "number_locale_invalid" => "A localidade digitada é inválida. Verifique o link na dica para encontrar um valor aceitável.", - "number_locale_required" => "Número Local é um campo obrigatório.", - "number_locale_tooltip" => "Encontrar um local adequado através deste link.", - "os_timezone" => "Fuso horário do OSPOS:", - "ospos_info" => "Informações de instalação do OSPOS", - "payment_options_order" => "Opções da ordem de pagamento", - "perm_risk" => "Permissões incorretas deixam este software em risco.", - "phone" => "Telefone", - "phone_required" => "Telefone da Empresa é requerido.", - "print_bottom_margin" => "Margem inferior", - "print_bottom_margin_number" => "A margem inferior padrão deve ser um número.", - "print_bottom_margin_required" => "A margem inferior padrão é um campo obrigatório.", - "print_delay_autoreturn" => "Retorno automático para atraso de venda", - "print_delay_autoreturn_number" => "Retorno automático para venda é um campo obrigatório.", - "print_delay_autoreturn_required" => "Retorno automático para devolução de venda deve ser um número.", - "print_footer" => "Imprimir rodapé do navegador", - "print_header" => "Imprimir o cabeçalho do navegador", - "print_left_margin" => "Margem esquerda", - "print_left_margin_number" => "A margem esquerda padrão deve ser um número.", - "print_left_margin_required" => "A margem esquerda padrão é um campo obrigatório.", - "print_receipt_check_behaviour" => "Caixa seleção Recibo de impressão", - "print_receipt_check_behaviour_always" => "Sempre verificado", - "print_receipt_check_behaviour_last" => "Lembre-se da última seleção", - "print_receipt_check_behaviour_never" => "Sempre desmarcado", - "print_right_margin" => "Margem Direita", - "print_right_margin_number" => "A margem direita padrão deve ser um número.", - "print_right_margin_required" => "A margem direita padrão é um campo obrigatório.", - "print_silently" => "Mostrar caixa de diálogo de impressão", - "print_top_margin" => "Margem superior", - "print_top_margin_number" => "A margem superior padrão deve ser um número.", - "print_top_margin_required" => "A margem superior padrão é um campo obrigatório.", - "quantity_decimals" => "Número de decimais", - "quick_cash_enable" => "", - "quote_default_comments" => "Comentários de cotação padrão", - "receipt" => "Recibo", - "receipt_category" => "", - "receipt_configuration" => "Configuração de Impressão", - "receipt_default" => "Padrão", - "receipt_font_size" => "Tamanho da fonte", - "receipt_font_size_number" => "Tamanho da fonte deve ser um número.", - "receipt_font_size_required" => "Tamanho da fonte é requerido.", - "receipt_info" => "Informações de configuração de Recibos", - "receipt_printer" => "Imprimir recibo", - "receipt_short" => "Pequeno", - "receipt_show_company_name" => "Mostrar nome da empresa", - "receipt_show_description" => "Exibir descrição", - "receipt_show_serialnumber" => "Exibir número serial", - "receipt_show_tax_ind" => "Mostrar indicator de impostos", - "receipt_show_taxes" => "Mostrar Impostos", - "receipt_show_total_discount" => "Mostrar total desconto", - "receipt_template" => "Modelo de recibo", - "receiving_calculate_average_price" => "Calc Médio de Preço (Recebimento)", - "recv_invoice_format" => "Formato da fatura de recebimento", - "register_mode_default" => "Modo de registro padrão", - "report_an_issue" => "Reporte um problema", - "return_policy_required" => "A política de devolução é um campo obrigatório.", - "reward" => "Recompensa", - "reward_configuration" => "Configuração de recompensa", - "right" => "Direita", - "sales_invoice_format" => "Formato da Fatura de Vendas", - "sales_quote_format" => "Formato de cotação de vendas", - "saved_successfully" => "Configuração salva com sucesso.", - "saved_unsuccessfully" => "Configuração não salva.", - "security_issue" => "Security Vulnerability Warning", - "server_notice" => "Por favor, use as informações abaixo para o relatório de problemas.", - "service_charge" => "", - "show_due_enable" => "", - "show_office_group" => "Mostrar ícone do escritório", - "statistics" => "Enviar estatísticas", - "statistics_tooltip" => "Envie estatísticas para desenvolvimento e aprimoramento de recursos.", - "stock_location" => "Localização do Estoque", - "stock_location_duplicate" => "Por favor, use um nome de localização única.", - "stock_location_invalid_chars" => "O nome do local de ações não pode conter '_'.", - "stock_location_required" => "Número da localização do estoque é um campo obrigatório.", - "suggestions_fifth_column" => "", - "suggestions_first_column" => "Coluna 1", - "suggestions_fourth_column" => "", - "suggestions_layout" => "Layout de sugestões de pesquisa", - "suggestions_second_column" => "Coluna 2", - "suggestions_third_column" => "Coluna 3", - "system_conf" => "Setup & Conf", - "system_info" => "System Info", - "table" => "Mesa", - "table_configuration" => "Configuração da mesa", - "takings_printer" => "Imprimir Vendas", - "tax" => "Imp", - "tax_category" => "Categoria de imposto", - "tax_category_duplicate" => "A categoria de imposto inserida já existe.", - "tax_category_invalid_chars" => "A categoria de imposto inserida é inválida.", - "tax_category_required" => "A categoria de imposto é obrigatória.", - "tax_category_used" => "A categoria de imposto não pode ser excluída porque está sendo usada.", - "tax_configuration" => "Configuração de impostos", - "tax_decimals" => "Decimais da taxa", - "tax_id" => "Id imposto", - "tax_included" => "Imposto Incluído", - "theme" => "Tema", - "theme_preview" => "", - "thousands_separator" => "Separador de milhar", - "timezone" => "Fuso horário", - "timezone_error" => "O fuso horário do OSPOS é diferente do fuso horário local.", - "top" => "Topo", - "use_destination_based_tax" => "Use o Imposto Baseado em Destino", - "user_timezone" => "Fuso horário local:", - "website" => "OSPOS", - "wholesale_markup" => "", - "work_order_enable" => "Suporte para Ordem de Serviço", - "work_order_format" => "Formato Ordem de Serviço", + "address" => "Endereço da empresa", + "address_required" => "Endereço da empresa é um campo obrigatório.", + "all_set" => "All file permissions are set correctly!", + "allow_duplicate_barcodes" => "Permitir códigos de barras duplicados", + "apostrophe" => "apóstrofe", + "backup_button" => "Cópia de Segurança", + "backup_database" => "Cópia de Segurança", + "barcode" => "Código de Barras", + "barcode_company" => "Nome da Empresa", + "barcode_configuration" => "Configuração do Código de Barras", + "barcode_content" => "Conteúdo do código de barras", + "barcode_first_row" => "Linha 1", + "barcode_font" => "Fonte", + "barcode_formats" => "Formatos de entrada", + "barcode_generate_if_empty" => "Gerar se vazio.", + "barcode_height" => "Altura (px)", + "barcode_id" => "Item Id/Nome", + "barcode_info" => "Informação de configuração de códigos de barras", + "barcode_layout" => "Layout Código de barras", + "barcode_name" => "Nome", + "barcode_number" => "Código de Barras", + "barcode_number_in_row" => "Número de linhas", + "barcode_page_cellspacing" => "Espaçamento das células na página de exibição.", + "barcode_page_width" => "Largura da página de exibição", + "barcode_price" => "Preço", + "barcode_second_row" => "Linha 2", + "barcode_third_row" => "Linha 3", + "barcode_tooltip" => "Aviso: esse recurso pode fazer com que itens duplicados sejam importados ou criados. Não use se você não quiser códigos de barras duplicados.", + "barcode_type" => "Tipo de código de barras", + "barcode_width" => "Largura (px)", + "bottom" => "Inferior", + "cash_button" => "", + "cash_button_1" => "", + "cash_button_2" => "", + "cash_button_3" => "", + "cash_button_4" => "", + "cash_button_5" => "", + "cash_button_6" => "", + "cash_decimals" => "Decimais da moeda", + "cash_decimals_tooltip" => "Se os decimais de caixa e os decimais de moeda forem os mesmos, não haverá arredondamento de caixa.", + "cash_rounding" => "Arredondamento de Caixa", + "category_dropdown" => "Mostrar Categoria como campo suspenso", + "center" => "Centro", + "change_apperance_tooltip" => "", + "comma" => "Vírgula", + "company" => "Nome da empresa", + "company_avatar" => "", + "company_change_image" => "Trocar imagem", + "company_logo" => "Logo da empresa", + "company_remove_image" => "Remover imagem", + "company_required" => "Nome da empresa é requerido", + "company_select_image" => "Selecionar imagem", + "company_website_url" => "Site da empresa não é uma URL válida (http://...).", + "country_codes" => "Código do país", + "country_codes_tooltip" => "Vírgula lista de códigos de país separado para pesquisa de endereços pelo nome.", + "currency_code" => "Código da moeda", + "currency_decimals" => "Decimais da moeda", + "currency_symbol" => "Simbolo moeda", + "current_employee_only" => "", + "customer_reward" => "Recompensa", + "customer_reward_duplicate" => "Recompensa deve ser única.", + "customer_reward_enable" => "Ativar recompensas do cliente", + "customer_reward_invalid_chars" => "Recompensa não pode conter '_'", + "customer_reward_required" => "Recompensa é um campo obrigatório", + "customer_sales_tax_support" => "Suporte ao imposto sobre vendas do cliente", + "date_or_time_format" => "Filtro de data e hora", + "datetimeformat" => "Formato da data e hora", + "decimal_point" => "Ponto decimal", + "default_barcode_font_size_number" => "O tamanho da fonte do código de barras padrão deve ser um número.", + "default_barcode_font_size_required" => "O tamanho da fonte do código de barras padrão é um campo obrigatório.", + "default_barcode_height_number" => "A altura do código de barras padrão deve ser um número.", + "default_barcode_height_required" => "A altura do código de barras padrão é um campo obrigatório.", + "default_barcode_num_in_row_number" => "O número de código de barras padrão na linha deve ser um número.", + "default_barcode_num_in_row_required" => "O número de código de barras padrão na linha é um campo obrigatório.", + "default_barcode_page_cellspacing_number" => "O espaçamento das células na página de código de barras padrão deve ser um número.", + "default_barcode_page_cellspacing_required" => "O espaçamento das células na página de código de barras padrão é um campo obrigatório.", + "default_barcode_page_width_number" => "A largura da página de código de barras padrão deve ser um número.", + "default_barcode_page_width_required" => "A largura da página de código de barras padrão é um campo obrigatório.", + "default_barcode_width_number" => "A largura do código de barras padrão deve ser um número.", + "default_barcode_width_required" => "A largura do código de barras padrão é um campo obrigatório.", + "default_item_columns" => "Colunas de itens visíveis padrão", + "default_origin_tax_code" => "Código de imposto de origem padrão", + "default_receivings_discount" => "Desconto de recebimento padrão", + "default_receivings_discount_number" => "Desconto de recebimento padrão deve ser um número.", + "default_receivings_discount_required" => "Desconto de recebimento padrão é um campo obrigatório.", + "default_sales_discount" => "Desconto de vendas padrão", + "default_sales_discount_number" => "O desconto de vendas padrão deve ser um número.", + "default_sales_discount_required" => "O desconto de vendas padrão é um campo obrigatório.", + "default_tax_category" => "Categoria de imposto padrão", + "default_tax_code" => "Código Tributário Padrão", + "default_tax_jurisdiction" => "Jurisdição fiscal padrão", + "default_tax_name_number" => "O nome do imposto padrão deve ser uma string.", + "default_tax_name_required" => "Nome da taxa padrão é requerida.", + "default_tax_rate" => "Imposto Tarifa Padrão %", + "default_tax_rate_1" => "Imposto 1 Tarifa", + "default_tax_rate_2" => "Imposto 2 Tarifa", + "default_tax_rate_3" => "", + "default_tax_rate_number" => "A taxa de Imposto padrão deve ser um número.", + "default_tax_rate_required" => "A taxa de Imposto padrão é um campo obrigatório.", + "derive_sale_quantity" => "Permitir quantidade de venda derivada", + "derive_sale_quantity_tooltip" => "Se marcado, um novo tipo de item será fornecido para itens solicitados por quantidade estendida", + "dinner_table" => "Mesa", + "dinner_table_duplicate" => "A mesa deve ser única.", + "dinner_table_enable" => "Ativar mesas de jantar", + "dinner_table_invalid_chars" => "O nome da mesa não pode conter '_'.", + "dinner_table_required" => "A mesa é um campo obrigatório.", + "dot" => "ponto", + "email" => "E-mail", + "email_configuration" => "Configuração de Email", + "email_mailpath" => "Caminho para Sendmail", + "email_protocol" => "Protocolo", + "email_receipt_check_behaviour" => "Caixa de seleção de recibo de e-mail", + "email_receipt_check_behaviour_always" => "Sempre selecionado", + "email_receipt_check_behaviour_last" => "Lembrar da última seleção", + "email_receipt_check_behaviour_never" => "Sempre desativado", + "email_smtp_crypto" => "Criptografia SMTP", + "email_smtp_host" => "Servidor SMTP", + "email_smtp_pass" => "Senha SMTP", + "email_smtp_port" => "Porta SMTP", + "email_smtp_timeout" => "SMTP Tempo esgotado", + "email_smtp_user" => "Nome de usuário SMTP", + "enable_avatar" => "", + "enable_avatar_tooltip" => "", + "enable_dropdown_tooltip" => "", + "enable_new_look" => "", + "enable_right_bar" => "", + "enable_right_bar_tooltip" => "", + "enforce_privacy" => "Reforce a privacidade", + "enforce_privacy_tooltip" => "Proteja a privacidade dos clientes, impondo a codificação de dados no caso de seus dados serem excluídos", + "fax" => "Fax", + "file_perm" => "There are problems with file permissions please fix and reload this page.", + "financial_year" => "Início do ano fiscal", + "financial_year_apr" => "1 de abril", + "financial_year_aug" => "1 de agosto", + "financial_year_dec" => "1 de dezembro", + "financial_year_feb" => "1 de fevereiro", + "financial_year_jan" => "1 de janeiro", + "financial_year_jul" => "1 de julho", + "financial_year_jun" => "1 de junho", + "financial_year_mar" => "1 de março", + "financial_year_may" => "1 de maio", + "financial_year_nov" => "1 de novembro", + "financial_year_oct" => "1 de outubro", + "financial_year_sep" => "1 de setembro", + "floating_labels" => "", + "gcaptcha_enable" => "Página de login reCAPTCHA", + "gcaptcha_secret_key" => "Chave secreta do reCAPTCHA", + "gcaptcha_secret_key_required" => "A chave secreta reCAPTCHA é um campo obrigatório", + "gcaptcha_site_key" => "Chave do site reCAPTCHA", + "gcaptcha_site_key_required" => "A chave do site reCAPTCHA é um campo obrigatório", + "gcaptcha_tooltip" => "Proteja a página de login com o Google reCAPTCHA e clique no ícone de um par de chaves de API.", + "general" => "Gerais", + "general_configuration" => "Configurações Gerais", + "giftcard_number" => "Número cartão presente", + "giftcard_random" => "Geração aleaória", + "giftcard_series" => "Gerado em serie", + "image_allowed_file_types" => "Tipos de arquivo permitidos", + "image_max_height_tooltip" => "Altura máxima permitida para envio de imagens em pixels (px).", + "image_max_size_tooltip" => "Tamanho máximo permitido para envio de imagens em kilobytes (kb).", + "image_max_width_tooltip" => "Largura máxima permitida para envio de imagens em pixels (px).", + "image_restrictions" => "Restrições no envio de imagens", + "include_hsn" => "Incluir suporte para códigos HSN", + "info" => "Informações", + "info_configuration" => "Informações da loja", + "input_groups" => "", + "integrations" => "Integrações", + "integrations_configuration" => "Integrações de terceiros", + "invoice" => "Fatura", + "invoice_configuration" => "Configuração de Impressão", + "invoice_default_comments" => "Comentário", + "invoice_email_message" => "Modelo de e-mail Fatura", + "invoice_enable" => "Habilitar faturamento", + "invoice_printer" => "Imprimir fatura", + "invoice_type" => "Tipo Fatura", + "is_readable" => "É readable, mas as permissões estão incorretas. Por favor defina para 640 ou 660 e recarregue.", + "is_writable" => "É writable, mas as permissões estão incorretas. Por favor defina para 750 e recarrege.", + "item_markup" => "", + "jsprintsetup_required" => "Aviso! Esta funcionalidade só irá funcionar se você tem o addon FireFox jsPrintSetup instalado. Salvar de qualquer maneira?", + "language" => "Linguagem", + "last_used_invoice_number" => "Último número de fatura usado", + "last_used_quote_number" => "Último número de cotação usada", + "last_used_work_order_number" => "Último número de ordem de serviço usado", + "left" => "Esquerda", + "license" => "Licenças", + "license_configuration" => "Declaração de licença", + "line_sequence" => "Sequência de Linhas", + "lines_per_page" => "Linhas por página", + "lines_per_page_number" => "Linhas por página deve ser um número.", + "lines_per_page_required" => "As linhas por página é um campo obrigatório.", + "locale" => "Localização", + "locale_configuration" => "Configuração de Localização", + "locale_info" => "Informações da Configuração de Localização", + "location" => "Estoque", + "location_configuration" => "Localização do Estoque", + "location_info" => "Informações da localização", + "login_form" => "", + "logout" => "Você não quer fazer uma cópia de segurança antes de sair? Clique [OK] para fazer a cópia de segurança.", + "mailchimp" => "Configuração Mailchimp", + "mailchimp_api_key" => "Mailchimp chave API", + "mailchimp_configuration" => "Configuração Mailchimp", + "mailchimp_key_successfully" => "API chave válida.", + "mailchimp_key_unsuccessfully" => "API chave inválida.", + "mailchimp_lists" => "Lista(s) Mailchimp", + "mailchimp_tooltip" => "Clique no ícone de uma chave de API.", + "message" => "Mensagem", + "message_configuration" => "Configuração de Mensagens", + "msg_msg" => "Salvar mensagem de texto", + "msg_msg_placeholder" => "Se você deseja usar um modelo de SMS salvar a sua mensagem aqui. Caso contrário, deixe a caixa em branco.", + "msg_pwd" => "SMS-API senha", + "msg_pwd_required" => "SMS-API Senha é um campo obrigatório", + "msg_src" => "SMS-API Remetente ID", + "msg_src_required" => "SMS-API Remetente ID é um campo obrigatório", + "msg_uid" => "SMS-API usuário", + "msg_uid_required" => "SMS-API usuário é um campo obrigatório", + "multi_pack_enabled" => "Vários pacotes por item", + "no_risk" => "No security/vulnerability risks.", + "none" => "nenhum", + "notify_alignment" => "Notificação Posição Popup", + "number_format" => "Formato do número", + "number_locale" => "Localização", + "number_locale_invalid" => "A localidade digitada é inválida. Verifique o link na dica para encontrar um valor aceitável.", + "number_locale_required" => "Número Local é um campo obrigatório.", + "number_locale_tooltip" => "Encontrar um local adequado através deste link.", + "os_timezone" => "Fuso horário do OSPOS:", + "ospos_info" => "Informações de instalação do OSPOS", + "payment_options_order" => "Opções da ordem de pagamento", + "perm_risk" => "Permissões incorretas deixam este software em risco.", + "phone" => "Telefone", + "phone_required" => "Telefone da Empresa é requerido.", + "print_bottom_margin" => "Margem inferior", + "print_bottom_margin_number" => "A margem inferior padrão deve ser um número.", + "print_bottom_margin_required" => "A margem inferior padrão é um campo obrigatório.", + "print_delay_autoreturn" => "Retorno automático para atraso de venda", + "print_delay_autoreturn_number" => "Retorno automático para venda é um campo obrigatório.", + "print_delay_autoreturn_required" => "Retorno automático para devolução de venda deve ser um número.", + "print_footer" => "Imprimir rodapé do navegador", + "print_header" => "Imprimir o cabeçalho do navegador", + "print_left_margin" => "Margem esquerda", + "print_left_margin_number" => "A margem esquerda padrão deve ser um número.", + "print_left_margin_required" => "A margem esquerda padrão é um campo obrigatório.", + "print_receipt_check_behaviour" => "Caixa seleção Recibo de impressão", + "print_receipt_check_behaviour_always" => "Sempre verificado", + "print_receipt_check_behaviour_last" => "Lembre-se da última seleção", + "print_receipt_check_behaviour_never" => "Sempre desmarcado", + "print_right_margin" => "Margem Direita", + "print_right_margin_number" => "A margem direita padrão deve ser um número.", + "print_right_margin_required" => "A margem direita padrão é um campo obrigatório.", + "print_silently" => "Mostrar caixa de diálogo de impressão", + "print_top_margin" => "Margem superior", + "print_top_margin_number" => "A margem superior padrão deve ser um número.", + "print_top_margin_required" => "A margem superior padrão é um campo obrigatório.", + "quantity_decimals" => "Número de decimais", + "quick_cash_enable" => "", + "quote_default_comments" => "Comentários de cotação padrão", + "receipt" => "Recibo", + "receipt_category" => "", + "receipt_configuration" => "Configuração de Impressão", + "receipt_default" => "Padrão", + "receipt_font_size" => "Tamanho da fonte", + "receipt_font_size_number" => "Tamanho da fonte deve ser um número.", + "receipt_font_size_required" => "Tamanho da fonte é requerido.", + "receipt_info" => "Informações de configuração de Recibos", + "receipt_printer" => "Imprimir recibo", + "receipt_short" => "Pequeno", + "receipt_show_company_name" => "Mostrar nome da empresa", + "receipt_show_description" => "Exibir descrição", + "receipt_show_serialnumber" => "Exibir número serial", + "receipt_show_tax_ind" => "Mostrar indicator de impostos", + "receipt_show_taxes" => "Mostrar Impostos", + "receipt_show_total_discount" => "Mostrar total desconto", + "receipt_template" => "Modelo de recibo", + "receiving_calculate_average_price" => "Calc Médio de Preço (Recebimento)", + "recv_invoice_format" => "Formato da fatura de recebimento", + "register_mode_default" => "Modo de registro padrão", + "report_an_issue" => "Reporte um problema", + "return_policy_required" => "A política de devolução é um campo obrigatório.", + "reward" => "Recompensa", + "reward_configuration" => "Configuração de recompensa", + "right" => "Direita", + "sales_invoice_format" => "Formato da Fatura de Vendas", + "sales_quote_format" => "Formato de cotação de vendas", + "saved_successfully" => "Configuração salva com sucesso.", + "saved_unsuccessfully" => "Configuração não salva.", + "security_issue" => "Security Vulnerability Warning", + "server_notice" => "Por favor, use as informações abaixo para o relatório de problemas.", + "service_charge" => "", + "show_due_enable" => "", + "show_office_group" => "Mostrar ícone do escritório", + "statistics" => "Enviar estatísticas", + "statistics_tooltip" => "Envie estatísticas para desenvolvimento e aprimoramento de recursos.", + "stock_location" => "Localização do Estoque", + "stock_location_duplicate" => "Por favor, use um nome de localização única.", + "stock_location_invalid_chars" => "O nome do local de ações não pode conter '_'.", + "stock_location_required" => "Número da localização do estoque é um campo obrigatório.", + "suggestions_fifth_column" => "", + "suggestions_first_column" => "Coluna 1", + "suggestions_fourth_column" => "", + "suggestions_layout" => "Layout de sugestões de pesquisa", + "suggestions_second_column" => "Coluna 2", + "suggestions_third_column" => "Coluna 3", + "system_conf" => "Setup & Conf", + "system_info" => "System Info", + "table" => "Mesa", + "table_configuration" => "Configuração da mesa", + "takings_printer" => "Imprimir Vendas", + "tax" => "Imp", + "tax_category" => "Categoria de imposto", + "tax_category_duplicate" => "A categoria de imposto inserida já existe.", + "tax_category_invalid_chars" => "A categoria de imposto inserida é inválida.", + "tax_category_required" => "A categoria de imposto é obrigatória.", + "tax_category_used" => "A categoria de imposto não pode ser excluída porque está sendo usada.", + "tax_configuration" => "Configuração de impostos", + "tax_decimals" => "Decimais da taxa", + "tax_id" => "Id imposto", + "tax_included" => "Imposto Incluído", + "theme" => "Tema", + "theme_preview" => "", + "thousands_separator" => "Separador de milhar", + "timezone" => "Fuso horário", + "timezone_error" => "O fuso horário do OSPOS é diferente do fuso horário local.", + "top" => "Topo", + "use_destination_based_tax" => "Use o Imposto Baseado em Destino", + "user_timezone" => "Fuso horário local:", + "website" => "OSPOS", + "wholesale_markup" => "", + "work_order_enable" => "Suporte para Ordem de Serviço", + "work_order_format" => "Formato Ordem de Serviço", ]; diff --git a/app/Language/pt-BR/Customers.php b/app/Language/pt-BR/Customers.php index 7fd39a158..d219995fb 100644 --- a/app/Language/pt-BR/Customers.php +++ b/app/Language/pt-BR/Customers.php @@ -1,56 +1,56 @@ "Conta nº", - "account_number_duplicate" => "Este número de conta já está presente na base de dados.", - "available_points" => "Pontos Disponíveis", - "available_points_value" => "", - "average" => "Média Gasto", - "avg_discount" => "Desconto médio", - "basic_information" => "Informação", - "cannot_be_deleted" => "Não foi possível excluir clientes selecionados um ou mais dos Clientes selecionados tem vendas.", - "company_name" => "Empresa", - "confirm_delete" => "Tem certeza de que deseja excluir os clientes selecionados?", - "confirm_restore" => "Tem certeza de que deseja restaurar o (s) cliente (s) selecionado (s)?", - "consent" => "Consentimento de registro", - "consent_required" => "O consentimento de registro é um campo obrigatório.", - "csv_import_failed" => "Importação do CSV falhou", - "csv_import_nodata_wrongformat" => "Seu arquivo enviado não contém dados ou formato errado.", - "csv_import_partially_failed" => "A maioria dos clientes importado. Mas alguns não eram, aqui está a lista:", - "csv_import_success" => "Importação de clientes com sucesso.", - "customer" => "Cliente", - "date" => "Data", - "discount" => "Desconto", - "discount_fixed" => "Desconto fixo", - "discount_percent" => "Percentual de desconto", - "discount_type" => "Tipo de desconto", - "email_duplicate" => "O endereço de e-mail já está presente no banco de dados.", - "employee" => "Empregado", - "error_adding_updating" => "Erro adicionar/atualizar cliente.", - "import_items_csv" => "Importar clientes com planilha do CSV", - "mailchimp_activity_click" => "Clique por e-mail", - "mailchimp_activity_lastopen" => "Último email aberto", - "mailchimp_activity_open" => "Email aberto", - "mailchimp_activity_total" => "Email enviado", - "mailchimp_activity_unopen" => "Email fechado", - "mailchimp_email_client" => "Cliente de e-mail", - "mailchimp_info" => "Mailchimp", - "mailchimp_member_rating" => "Avaliação", - "mailchimp_status" => "Status", - "mailchimp_vip" => "VIP", - "max" => "Max. gasto", - "min" => "Min. Gasto", - "new" => "Novo Cliente", - "none_selected" => "Você não selecionou nenhum clientes para apagar.", - "one_or_multiple" => "Cliente(s)", - "quantity" => "Quantidade", - "stats_info" => "Estatísticas", - "successful_adding" => "Você adicionou o cliente com sucesso", - "successful_deleted" => "Você excluiu com sucesso", - "successful_updating" => "Você atualizou o cliente com secesso", - "tax_code" => "Código de Imposto", - "tax_id" => "Id imposto", - "taxable" => "Tributável", - "total" => "Total", - "update" => "Atualizar Cliente", - "rewards_package" => "Pacote de recompensas", + "account_number" => "Conta nº", + "account_number_duplicate" => "Este número de conta já está presente na base de dados.", + "available_points" => "Pontos Disponíveis", + "available_points_value" => "", + "average" => "Média Gasto", + "avg_discount" => "Desconto médio", + "basic_information" => "Informação", + "cannot_be_deleted" => "Não foi possível excluir clientes selecionados um ou mais dos Clientes selecionados tem vendas.", + "company_name" => "Empresa", + "confirm_delete" => "Tem certeza de que deseja excluir os clientes selecionados?", + "confirm_restore" => "Tem certeza de que deseja restaurar o (s) cliente (s) selecionado (s)?", + "consent" => "Consentimento de registro", + "consent_required" => "O consentimento de registro é um campo obrigatório.", + "csv_import_failed" => "Importação do CSV falhou", + "csv_import_nodata_wrongformat" => "Seu arquivo enviado não contém dados ou formato errado.", + "csv_import_partially_failed" => "A maioria dos clientes importado. Mas alguns não eram, aqui está a lista:", + "csv_import_success" => "Importação de clientes com sucesso.", + "customer" => "Cliente", + "date" => "Data", + "discount" => "Desconto", + "discount_fixed" => "Desconto fixo", + "discount_percent" => "Percentual de desconto", + "discount_type" => "Tipo de desconto", + "email_duplicate" => "O endereço de e-mail já está presente no banco de dados.", + "employee" => "Empregado", + "error_adding_updating" => "Erro adicionar/atualizar cliente.", + "import_items_csv" => "Importar clientes com planilha do CSV", + "mailchimp_activity_click" => "Clique por e-mail", + "mailchimp_activity_lastopen" => "Último email aberto", + "mailchimp_activity_open" => "Email aberto", + "mailchimp_activity_total" => "Email enviado", + "mailchimp_activity_unopen" => "Email fechado", + "mailchimp_email_client" => "Cliente de e-mail", + "mailchimp_info" => "Mailchimp", + "mailchimp_member_rating" => "Avaliação", + "mailchimp_status" => "Status", + "mailchimp_vip" => "VIP", + "max" => "Max. gasto", + "min" => "Min. Gasto", + "new" => "Novo Cliente", + "none_selected" => "Você não selecionou nenhum clientes para apagar.", + "one_or_multiple" => "Cliente(s)", + "quantity" => "Quantidade", + "stats_info" => "Estatísticas", + "successful_adding" => "Você adicionou o cliente com sucesso", + "successful_deleted" => "Você excluiu com sucesso", + "successful_updating" => "Você atualizou o cliente com secesso", + "tax_code" => "Código de Imposto", + "tax_id" => "Id imposto", + "taxable" => "Tributável", + "total" => "Total", + "update" => "Atualizar Cliente", + "rewards_package" => "Pacote de recompensas", ]; diff --git a/app/Language/pt-BR/Datepicker.php b/app/Language/pt-BR/Datepicker.php index 16b506103..a0a9a579f 100644 --- a/app/Language/pt-BR/Datepicker.php +++ b/app/Language/pt-BR/Datepicker.php @@ -1,23 +1,23 @@ "Todos", - "apply" => "Aplicar", - "cancel" => "Cancelar", - "custom" => "Cliente", - "from" => "De", - "last_30" => "Últimos 30 Dias", - "last_7" => "Últimos 7 Dias", - "last_financial_year" => "Último ano fiscal", - "last_month" => "Último Mês", - "last_year" => "Último ano", - "same_month_last_year" => "Este mês último ano", - "same_month_to_same_day_last_year" => "Este mês Para Hoje Último Ano", - "this_financial_year" => "Exercício atual", - "this_month" => "Este Mês", - "this_year" => "Este Ano", - "to" => "Para", - "today" => "Hoje", - "today_last_year" => "Hoje Último Ano", - "weekstart" => "0", - "yesterday" => "Ontem", + "all_time" => "Todos", + "apply" => "Aplicar", + "cancel" => "Cancelar", + "custom" => "Cliente", + "from" => "De", + "last_30" => "Últimos 30 Dias", + "last_7" => "Últimos 7 Dias", + "last_financial_year" => "Último ano fiscal", + "last_month" => "Último Mês", + "last_year" => "Último ano", + "same_month_last_year" => "Este mês último ano", + "same_month_to_same_day_last_year" => "Este mês Para Hoje Último Ano", + "this_financial_year" => "Exercício atual", + "this_month" => "Este Mês", + "this_year" => "Este Ano", + "to" => "Para", + "today" => "Hoje", + "today_last_year" => "Hoje Último Ano", + "weekstart" => "0", + "yesterday" => "Ontem", ]; diff --git a/app/Language/pt-BR/Employees.php b/app/Language/pt-BR/Employees.php index 34c96a0b7..518bc70d2 100644 --- a/app/Language/pt-BR/Employees.php +++ b/app/Language/pt-BR/Employees.php @@ -1,44 +1,44 @@ "", - "basic_information" => "Informações do Funcionário", - "cannot_be_deleted" => "Não foi possível excluir funcionários selecionados, um ou mais dos funcionários processou vendas ou você está tentando excluir-se :).", - "change_employee" => "", - "change_password" => "Alterar senha", - "clerk" => "", - "commission" => "", - "confirm_delete" => "Tem certeza de que deseja excluir os funcionários selecionados?", - "confirm_restore" => "Tem certeza de que deseja restaurar o (s) empregado (s) selecionado (s)?", - "current_password" => "Senha atual", - "current_password_invalid" => "Senha atual inválida.", - "employee" => "Funcionário", - "error_adding_updating" => "Erro ao adicionar/atualizar funcionário.", - "error_deleting_demo_admin" => "Você não pode excluir o usuário administrador de demonstração.", - "error_updating_demo_admin" => "Você não pode alterar o usuário de demonstração de administração.", - "language" => "Linguagem", - "login_info" => "Autenticação", - "manager" => "", - "new" => "Novo Funcionário", - "none_selected" => "Você não selecionou nenhum funcionário para excluir.", - "one_or_multiple" => "funcionário(s)", - "password" => "Senha", - "password_minlength" => "As senhas devem ter pelo menos 8 caracteres.", - "password_must_match" => "As senhas não correspondem.", - "password_not_must_match" => "A senha atual e a nova senha devem ser exclusivas.", - "password_required" => "Senha requerida.", - "permission_desc" => "Marque as caixas abaixo para conceder acesso aos módulos.", - "permission_info" => "Permissões de acesso do funcionário", - "repeat_password" => "Confirme a senha", - "subpermission_required" => "Adicione pelo menos um privilégio para cada módulo.", - "successful_adding" => "Você adicionou o funcionário com sucesso.", - "successful_change_password" => "Alteração de senha bem sucedida.", - "successful_deleted" => "Você apagou o funcionário com sucesso", - "successful_updating" => "Você atualizou com sucesso o funcionário", - "system_language" => "Idioma do sistema", - "unsuccessful_change_password" => "Falha na mudança de senha.", - "update" => "Atualizar funcionário", - "username" => "Usuário", - "username_duplicate" => "", - "username_minlength" => "O nome de usuário deve ter pelo menos 5 caracteres.", - "username_required" => "Nome de Usuário é um campo obrigatório.", + "administrator" => "", + "basic_information" => "Informações do Funcionário", + "cannot_be_deleted" => "Não foi possível excluir funcionários selecionados, um ou mais dos funcionários processou vendas ou você está tentando excluir-se :).", + "change_employee" => "", + "change_password" => "Alterar senha", + "clerk" => "", + "commission" => "", + "confirm_delete" => "Tem certeza de que deseja excluir os funcionários selecionados?", + "confirm_restore" => "Tem certeza de que deseja restaurar o (s) empregado (s) selecionado (s)?", + "current_password" => "Senha atual", + "current_password_invalid" => "Senha atual inválida.", + "employee" => "Funcionário", + "error_adding_updating" => "Erro ao adicionar/atualizar funcionário.", + "error_deleting_demo_admin" => "Você não pode excluir o usuário administrador de demonstração.", + "error_updating_demo_admin" => "Você não pode alterar o usuário de demonstração de administração.", + "language" => "Linguagem", + "login_info" => "Autenticação", + "manager" => "", + "new" => "Novo Funcionário", + "none_selected" => "Você não selecionou nenhum funcionário para excluir.", + "one_or_multiple" => "funcionário(s)", + "password" => "Senha", + "password_minlength" => "As senhas devem ter pelo menos 8 caracteres.", + "password_must_match" => "As senhas não correspondem.", + "password_not_must_match" => "A senha atual e a nova senha devem ser exclusivas.", + "password_required" => "Senha requerida.", + "permission_desc" => "Marque as caixas abaixo para conceder acesso aos módulos.", + "permission_info" => "Permissões de acesso do funcionário", + "repeat_password" => "Confirme a senha", + "subpermission_required" => "Adicione pelo menos um privilégio para cada módulo.", + "successful_adding" => "Você adicionou o funcionário com sucesso.", + "successful_change_password" => "Alteração de senha bem sucedida.", + "successful_deleted" => "Você apagou o funcionário com sucesso", + "successful_updating" => "Você atualizou com sucesso o funcionário", + "system_language" => "Idioma do sistema", + "unsuccessful_change_password" => "Falha na mudança de senha.", + "update" => "Atualizar funcionário", + "username" => "Usuário", + "username_duplicate" => "", + "username_minlength" => "O nome de usuário deve ter pelo menos 5 caracteres.", + "username_required" => "Nome de Usuário é um campo obrigatório.", ]; diff --git a/app/Language/pt-BR/Enum.php b/app/Language/pt-BR/Enum.php index f3ca77e4a..cc0fb781f 100644 --- a/app/Language/pt-BR/Enum.php +++ b/app/Language/pt-BR/Enum.php @@ -1,10 +1,10 @@ "Arredondar para baixo", - "half_even" => "Não arredondar", - "half_five" => "Arredondar par um quarto", - "half_odd" => "Meio", - "half_up" => "Arredondar para cima", - "round_down" => "Arredondar para baixo", - "round_up" => "Arredondar para cima", + "half_down" => "Arredondar para baixo", + "half_even" => "Não arredondar", + "half_five" => "Arredondar par um quarto", + "half_odd" => "Meio", + "half_up" => "Arredondar para cima", + "round_down" => "Arredondar para baixo", + "round_up" => "Arredondar para cima", ]; diff --git a/app/Language/pt-BR/Error.php b/app/Language/pt-BR/Error.php index c01e2d2bb..64ec21312 100644 --- a/app/Language/pt-BR/Error.php +++ b/app/Language/pt-BR/Error.php @@ -1,5 +1,5 @@ "Você não tem permissão para acessar o módulo chamado", - "unknown" => "Desconhecido", + "no_permission_module" => "Você não tem permissão para acessar o módulo chamado", + "unknown" => "Desconhecido", ]; diff --git a/app/Language/pt-BR/Expenses.php b/app/Language/pt-BR/Expenses.php index f7778b390..2bd976086 100644 --- a/app/Language/pt-BR/Expenses.php +++ b/app/Language/pt-BR/Expenses.php @@ -1,50 +1,50 @@ "Adicionar Despesa", - "amount" => "Total", - "amount_number" => "O valor deve ser um número", - "amount_required" => "Quantia de Despesas Requerida", - "by_category" => "Categoria", - "cannot_be_deleted" => "Não foi possível excluir o (s) gasto (s) de categoria", - "cash" => "Dinheiro", - "cash_filter" => "Dinheiro", - "categories_name" => "Categoria", - "category_required" => "categoria é um campo obrigatório", - "check" => "Cheque", - "check_filter" => "Cheque", - "confirm_delete" => "Tem certeza de que deseja excluir a(s) despesa(s) selecionada?", - "confirm_restore" => "Tem certeza de que deseja restaurar a(s) despesa(s) selecionada(s)?", - "credit" => "Cartão de Crédito", - "credit_filter" => "Cartão de Crédito", - "date" => "Data", - "date_number" => "data deve ser um número", - "date_required" => "data é um campo obrigatório", - "debit" => "Cartão de débito", - "debit_filter" => "Cartão de débito", - "description" => "Descrição", - "due" => "Vencimento", - "due_filter" => "Vencimento", - "employee" => "Criado por", - "error_adding_updating" => "Erro ao adicionar / atualizar a despesa", - "expense_id" => "Id", - "expenses_employee" => "Funcionário", - "info" => "Informação da despesa", - "ip_address" => "", - "is_deleted" => "Apagado", - "name_required" => "Nome da Despesa Requerido", - "new" => "Nova despesa", - "new_supplier" => "", - "no_expenses_to_display" => "Não há despesas para exibir", - "none_selected" => "Você não selecionou nenhuma despesa", - "one_or_multiple" => "Despesa (s)", - "payment" => "Tipo de pagamento", - "start_typing_supplier_name" => "Comece digitando o nome do fornecedor...", - "successful_adding" => "Despesa adiciona sucesso", - "successful_deleted" => "Despesa excluir com sucesso", - "successful_updating" => "Atualização de despesas bem-sucedida", - "supplier_name" => "Fornecedor", - "supplier_tax_code" => "Código imposto", - "tax_amount" => "Imposto", - "tax_amount_number" => "", - "update" => "Atualizar Despesa", + "add_item" => "Adicionar Despesa", + "amount" => "Total", + "amount_number" => "O valor deve ser um número", + "amount_required" => "Quantia de Despesas Requerida", + "by_category" => "Categoria", + "cannot_be_deleted" => "Não foi possível excluir o (s) gasto (s) de categoria", + "cash" => "Dinheiro", + "cash_filter" => "Dinheiro", + "categories_name" => "Categoria", + "category_required" => "categoria é um campo obrigatório", + "check" => "Cheque", + "check_filter" => "Cheque", + "confirm_delete" => "Tem certeza de que deseja excluir a(s) despesa(s) selecionada?", + "confirm_restore" => "Tem certeza de que deseja restaurar a(s) despesa(s) selecionada(s)?", + "credit" => "Cartão de Crédito", + "credit_filter" => "Cartão de Crédito", + "date" => "Data", + "date_number" => "data deve ser um número", + "date_required" => "data é um campo obrigatório", + "debit" => "Cartão de débito", + "debit_filter" => "Cartão de débito", + "description" => "Descrição", + "due" => "Vencimento", + "due_filter" => "Vencimento", + "employee" => "Criado por", + "error_adding_updating" => "Erro ao adicionar / atualizar a despesa", + "expense_id" => "Id", + "expenses_employee" => "Funcionário", + "info" => "Informação da despesa", + "ip_address" => "", + "is_deleted" => "Apagado", + "name_required" => "Nome da Despesa Requerido", + "new" => "Nova despesa", + "new_supplier" => "", + "no_expenses_to_display" => "Não há despesas para exibir", + "none_selected" => "Você não selecionou nenhuma despesa", + "one_or_multiple" => "Despesa (s)", + "payment" => "Tipo de pagamento", + "start_typing_supplier_name" => "Comece digitando o nome do fornecedor...", + "successful_adding" => "Despesa adiciona sucesso", + "successful_deleted" => "Despesa excluir com sucesso", + "successful_updating" => "Atualização de despesas bem-sucedida", + "supplier_name" => "Fornecedor", + "supplier_tax_code" => "Código imposto", + "tax_amount" => "Imposto", + "tax_amount_number" => "", + "update" => "Atualizar Despesa", ]; diff --git a/app/Language/pt-BR/Expenses_categories.php b/app/Language/pt-BR/Expenses_categories.php index 93d2400ce..f7f4cb622 100644 --- a/app/Language/pt-BR/Expenses_categories.php +++ b/app/Language/pt-BR/Expenses_categories.php @@ -1,22 +1,22 @@ "Nome da Categoria de Despesa Requerido", - "add_item" => "Adicionar categoria", - "cannot_be_deleted" => "Não foi possível excluir a (s) despesa (s) de categoria", - "category_id" => "Id", - "confirm_delete" => "Tem certeza de que deseja excluir a categoria de despesa selecionada?", - "confirm_restore" => "Tem certeza de que deseja restaurar a categoria de despesa selecionada?", - "description" => "Categoria Descrição", - "error_adding_updating" => "Erro ao adicionar / atualizar a categoria de despesa", - "info" => "Informações de despesas de categoria", - "name" => "Nome da Categoria", - "new" => "Nova categoria", - "no_expenses_categories_to_display" => "Nenhuma categoria para exibir", - "none_selected" => "Você não selecionou nenhuma despesa de categoria", - "one_or_multiple" => "Categoria de Despesa", - "quantity" => "Quantidade", - "successful_adding" => "Categoria de despesa adiciona sucesso", - "successful_deleted" => "Categoria de Despesas excluída com sucesso", - "successful_updating" => "Atualização de categoria de despesa bem-sucedida", - "update" => "Atualizar categoria", + "category_name_required" => "Nome da Categoria de Despesa Requerido", + "add_item" => "Adicionar categoria", + "cannot_be_deleted" => "Não foi possível excluir a (s) despesa (s) de categoria", + "category_id" => "Id", + "confirm_delete" => "Tem certeza de que deseja excluir a categoria de despesa selecionada?", + "confirm_restore" => "Tem certeza de que deseja restaurar a categoria de despesa selecionada?", + "description" => "Categoria Descrição", + "error_adding_updating" => "Erro ao adicionar / atualizar a categoria de despesa", + "info" => "Informações de despesas de categoria", + "name" => "Nome da Categoria", + "new" => "Nova categoria", + "no_expenses_categories_to_display" => "Nenhuma categoria para exibir", + "none_selected" => "Você não selecionou nenhuma despesa de categoria", + "one_or_multiple" => "Categoria de Despesa", + "quantity" => "Quantidade", + "successful_adding" => "Categoria de despesa adiciona sucesso", + "successful_deleted" => "Categoria de Despesas excluída com sucesso", + "successful_updating" => "Atualização de categoria de despesa bem-sucedida", + "update" => "Atualizar categoria", ]; diff --git a/app/Language/pt-BR/Giftcards.php b/app/Language/pt-BR/Giftcards.php index 1d0a740e5..e0770d13f 100644 --- a/app/Language/pt-BR/Giftcards.php +++ b/app/Language/pt-BR/Giftcards.php @@ -1,71 +1,71 @@ "Inventário para adicionar/subtrair.", - "allow_alt_description" => "Permitir Alterar Descrição", - "bulk_edit" => "Edição em massa", - "cannot_be_deleted" => "Não foi possível excluir os cartões de presente selecionados, um ou mais dos cartões de presente selecionados tem vendas.", - "cannot_find_giftcard" => "Não consegue encontrar qualquer informação sobre cartões de presente.", - "cannot_use" => "O Cartão presente {0} não pode ser usado para esta venda: cliente inválido.", - "card_value" => "Valor", - "category" => "Categoria", - "change_all_to_allow_alt_desc" => "Permitir alterar desconto para todos.", - "change_all_to_not_allow_allow_desc" => "Não Permitir alterar desconto para todos.", - "change_all_to_serialized" => "Alterar todos os seriais", - "change_all_to_unserialized" => "Alterar todos os sem seriais", - "confirm_bulk_edit" => "Tem certeza de que deseja editar todas os cartões de presente selecionados?", - "confirm_delete" => "Tem certeza de que deseja excluir os cartões de presente selecionados?", - "confirm_restore" => "Tem a certeza de que pretende restaurar cartão presente (s) selecionado (s)?", - "cost_price" => "Preço de custo", - "count" => "Atualiza inventário", - "csv_import_failed" => "importação CSV falhou.", - "current_quantity" => "Quantidade atual", - "description" => "Descrição", - "details_count" => "Detalhes contagem de inventário", - "do_nothing" => "Fazer nada", - "edit_fields_you_want_to_update" => "Editar os campos que deseja editar para TODOS cartões de presente selecionados.", - "edit_multiple_giftcards" => "Editar vários cartões de presente.", - "error_adding_updating" => "Erro ao adicionar/atualizar cartões de presente.", - "error_updating_multiple" => "Erro ao atualizar cartões de presente.", - "generate_barcodes" => "Gerar códigos de barras", - "giftcard" => "Cartão Presente", - "giftcard_number" => "Número cartão de presente", - "info_provided_by" => "Informação fornecida pela", - "inventory_comments" => "Comentários", - "is_serialized" => "cartões de presente tem o número de série", - "low_inventory_giftcards" => "cartões de presente com estoques baixos", - "manually_editing_of_quantity" => "Editar manualmente a quantidade", - "must_select_giftcard_for_barcode" => "Você deve selecionar pelo menos um cartão de presente para gerar códigos de barras.", - "new" => "Novo cartão de presente", - "no_description_giftcards" => "Cartão de presente sem descrição", - "no_giftcards_to_display" => "Sem cartões de presente para exibir.", - "none" => "Nenhum", - "none_selected" => "Você não selecionou nenhum cartão de presente para editar.", - "number" => "Cartão de presente deve ser um número.", - "number_information" => "Número cartão de presente", - "number_required" => "Número cartão de presente é um campo obrigatório.", - "one_or_multiple" => "cartão de presente(s)", - "person_id" => "Cliente", - "quantity" => "Quantidade", - "quantity_required" => "Quantidade é um campo obrigatório. Por favor, feche (X) para cancelar.", - "remaining_balance" => "Cartão de presente {0} valor remanescente é {1}!", - "reorder_level" => "Nível de reabastecimento", - "retrive_giftcard_info" => "Recuperar Informações dos cartões de presente", - "sales_tax_1" => "Imposto sobre vendas", - "sales_tax_2" => "Taxa de imposto 2", - "serialized_giftcards" => "Cartões de presente serializados", - "successful_adding" => "Você adicionou com sucesso o cartão de presente", - "successful_bulk_edit" => "Você atualizou com sucesso os cartões de presente selecionados", - "successful_deleted" => "Você excluiu com sucesso", - "successful_updating" => "Você atualizou com sucesso o cartão de presente", - "supplier" => "fornecedor", - "tax_1" => "Imposto 1", - "tax_2" => "Imposto 2", - "tax_percent" => "por cento de imposto", - "tax_percents" => "Por cento (s) fiscal", - "unit_price" => "Preço unitário", - "upc_database" => "UPC Banco de Dados", - "update" => "atualização cartão de presente", - "use_inventory_menu" => "Usar menu de inventário", - "value" => "Cartão de presente: O valor deve ser um número.", - "value_required" => "Cartão de presente: O valor é um campo obrigatório.", + "add_minus" => "Inventário para adicionar/subtrair.", + "allow_alt_description" => "Permitir Alterar Descrição", + "bulk_edit" => "Edição em massa", + "cannot_be_deleted" => "Não foi possível excluir os cartões de presente selecionados, um ou mais dos cartões de presente selecionados tem vendas.", + "cannot_find_giftcard" => "Não consegue encontrar qualquer informação sobre cartões de presente.", + "cannot_use" => "O Cartão presente {0} não pode ser usado para esta venda: cliente inválido.", + "card_value" => "Valor", + "category" => "Categoria", + "change_all_to_allow_alt_desc" => "Permitir alterar desconto para todos.", + "change_all_to_not_allow_allow_desc" => "Não Permitir alterar desconto para todos.", + "change_all_to_serialized" => "Alterar todos os seriais", + "change_all_to_unserialized" => "Alterar todos os sem seriais", + "confirm_bulk_edit" => "Tem certeza de que deseja editar todas os cartões de presente selecionados?", + "confirm_delete" => "Tem certeza de que deseja excluir os cartões de presente selecionados?", + "confirm_restore" => "Tem a certeza de que pretende restaurar cartão presente (s) selecionado (s)?", + "cost_price" => "Preço de custo", + "count" => "Atualiza inventário", + "csv_import_failed" => "importação CSV falhou.", + "current_quantity" => "Quantidade atual", + "description" => "Descrição", + "details_count" => "Detalhes contagem de inventário", + "do_nothing" => "Fazer nada", + "edit_fields_you_want_to_update" => "Editar os campos que deseja editar para TODOS cartões de presente selecionados.", + "edit_multiple_giftcards" => "Editar vários cartões de presente.", + "error_adding_updating" => "Erro ao adicionar/atualizar cartões de presente.", + "error_updating_multiple" => "Erro ao atualizar cartões de presente.", + "generate_barcodes" => "Gerar códigos de barras", + "giftcard" => "Cartão Presente", + "giftcard_number" => "Número cartão de presente", + "info_provided_by" => "Informação fornecida pela", + "inventory_comments" => "Comentários", + "is_serialized" => "cartões de presente tem o número de série", + "low_inventory_giftcards" => "cartões de presente com estoques baixos", + "manually_editing_of_quantity" => "Editar manualmente a quantidade", + "must_select_giftcard_for_barcode" => "Você deve selecionar pelo menos um cartão de presente para gerar códigos de barras.", + "new" => "Novo cartão de presente", + "no_description_giftcards" => "Cartão de presente sem descrição", + "no_giftcards_to_display" => "Sem cartões de presente para exibir.", + "none" => "Nenhum", + "none_selected" => "Você não selecionou nenhum cartão de presente para editar.", + "number" => "Cartão de presente deve ser um número.", + "number_information" => "Número cartão de presente", + "number_required" => "Número cartão de presente é um campo obrigatório.", + "one_or_multiple" => "cartão de presente(s)", + "person_id" => "Cliente", + "quantity" => "Quantidade", + "quantity_required" => "Quantidade é um campo obrigatório. Por favor, feche (X) para cancelar.", + "remaining_balance" => "Cartão de presente {0} valor remanescente é {1}!", + "reorder_level" => "Nível de reabastecimento", + "retrive_giftcard_info" => "Recuperar Informações dos cartões de presente", + "sales_tax_1" => "Imposto sobre vendas", + "sales_tax_2" => "Taxa de imposto 2", + "serialized_giftcards" => "Cartões de presente serializados", + "successful_adding" => "Você adicionou com sucesso o cartão de presente", + "successful_bulk_edit" => "Você atualizou com sucesso os cartões de presente selecionados", + "successful_deleted" => "Você excluiu com sucesso", + "successful_updating" => "Você atualizou com sucesso o cartão de presente", + "supplier" => "fornecedor", + "tax_1" => "Imposto 1", + "tax_2" => "Imposto 2", + "tax_percent" => "por cento de imposto", + "tax_percents" => "Por cento (s) fiscal", + "unit_price" => "Preço unitário", + "upc_database" => "UPC Banco de Dados", + "update" => "atualização cartão de presente", + "use_inventory_menu" => "Usar menu de inventário", + "value" => "Cartão de presente: O valor deve ser um número.", + "value_required" => "Cartão de presente: O valor é um campo obrigatório.", ]; diff --git a/app/Language/pt-BR/Item_kits.php b/app/Language/pt-BR/Item_kits.php index 88c1ceb66..4a789b73e 100644 --- a/app/Language/pt-BR/Item_kits.php +++ b/app/Language/pt-BR/Item_kits.php @@ -1,41 +1,41 @@ "Adicionar Item", - "all" => "Todos", - "cannot_be_deleted" => "Não foi possível eliminar conjunto de itens.", - "confirm_delete" => "Tem certeza de que deseja excluir os conjuntos de itens selecionados?", - "confirm_restore" => "Tem certeza de que deseja restaurar o Kit de Itens selecionado?", - "description" => "Descrição do conjunto de Itens", - "discount" => "Desconto", - "discount_fixed" => "Desconto fixo", - "discount_percent" => "Percentagem de desconto", - "discount_type" => "Tipo de desconto", - "error_adding_updating" => "Erro ao adicionar/atualizar conjunto de item.", - "find_kit_item" => "Item do Conjunto", - "info" => "Informação do conjunto de Itens", - "item" => "Produto", - "item_kit_number" => "Código de Barras", - "item_kit_number_duplicate" => "O número do kit já se encontra na base de dados.", - "item_number" => "", - "item_number_duplicate" => "", - "items" => "Itens", - "kit" => "Conjunto Id", - "kit_and_components" => "Conjunto e componentes", - "kit_and_stock" => "Conjunto e estoque", - "kit_only" => "Só conjunto", - "name" => "Nome conjunto de Itens", - "new" => "Novo conjunto de Itens", - "no_item_kits_to_display" => "Não há conjuntos de itens para exibir.", - "none_selected" => "Você não selecionou nenhum conjunto de itens.", - "one_or_multiple" => "Conjunto de Itens", - "price_option" => "Opção de preço", - "priced_only" => "Apenas preço", - "print_option" => "Opção de impressão", - "quantity" => "Quantidade", - "sequence" => "Sequencia", - "successful_adding" => "Você adicionou com sucesso conjunto de item", - "successful_deleted" => "Você excluiu com sucesso", - "successful_updating" => "Você atualizou com sucesso conjunto de item", - "unit_price" => "", - "update" => "Atualizar Item no conjunto", + "add_item" => "Adicionar Item", + "all" => "Todos", + "cannot_be_deleted" => "Não foi possível eliminar conjunto de itens.", + "confirm_delete" => "Tem certeza de que deseja excluir os conjuntos de itens selecionados?", + "confirm_restore" => "Tem certeza de que deseja restaurar o Kit de Itens selecionado?", + "description" => "Descrição do conjunto de Itens", + "discount" => "Desconto", + "discount_fixed" => "Desconto fixo", + "discount_percent" => "Percentagem de desconto", + "discount_type" => "Tipo de desconto", + "error_adding_updating" => "Erro ao adicionar/atualizar conjunto de item.", + "find_kit_item" => "Item do Conjunto", + "info" => "Informação do conjunto de Itens", + "item" => "Produto", + "item_kit_number" => "Código de Barras", + "item_kit_number_duplicate" => "O número do kit já se encontra na base de dados.", + "item_number" => "", + "item_number_duplicate" => "", + "items" => "Itens", + "kit" => "Conjunto Id", + "kit_and_components" => "Conjunto e componentes", + "kit_and_stock" => "Conjunto e estoque", + "kit_only" => "Só conjunto", + "name" => "Nome conjunto de Itens", + "new" => "Novo conjunto de Itens", + "no_item_kits_to_display" => "Não há conjuntos de itens para exibir.", + "none_selected" => "Você não selecionou nenhum conjunto de itens.", + "one_or_multiple" => "Conjunto de Itens", + "price_option" => "Opção de preço", + "priced_only" => "Apenas preço", + "print_option" => "Opção de impressão", + "quantity" => "Quantidade", + "sequence" => "Sequencia", + "successful_adding" => "Você adicionou com sucesso conjunto de item", + "successful_deleted" => "Você excluiu com sucesso", + "successful_updating" => "Você atualizou com sucesso conjunto de item", + "unit_price" => "", + "update" => "Atualizar Item no conjunto", ]; diff --git a/app/Language/pt-BR/Items.php b/app/Language/pt-BR/Items.php index f71461607..fe8b329cf 100644 --- a/app/Language/pt-BR/Items.php +++ b/app/Language/pt-BR/Items.php @@ -1,120 +1,120 @@ "Inventário para adicionar/subtrair.", - "allow_alt_description" => "Permitir atualizar descrição", - "amount_entry" => "Entrada de montante", - "bulk_edit" => "Editar Múltiplos Itens", - "buy_price_required" => "Preço de compra é um campo obrigatório.", - "cannot_be_deleted" => "Não foi possível excluir os itens selecionados um ou mais dos itens selecionados tem vendas.", - "cannot_find_item" => "Não consegue encontrar qualquer informação sobre o produto.", - "categories" => "", - "category" => "Categoria", - "category_new" => "", - "category_required" => "Categoria é um campo obrigatório.", - "change_all_to_allow_alt_desc" => "Permitir alterar desconto para todos.", - "change_all_to_not_allow_allow_desc" => "Não Permitir alterar desconto para todos.", - "change_all_to_serialized" => "Alterar todos para serializados", - "change_all_to_unserialized" => "Alterar todos para não serializados", - "change_image" => "Substituir imagem", - "confirm_bulk_edit" => "Tem certeza de que deseja editar todos os itens selecionados?", - "confirm_bulk_edit_wipe_taxes" => "Tem certeza de que deseja editar todos os impostos selecionados?.", - "confirm_delete" => "Tem certeza de que deseja excluir os itens selecionados?", - "confirm_restore" => "Tem certeza de que deseja restaurar o (s) item (ns) selecionado (s)?", - "cost_price" => "Preço de Custo", - "cost_price_number" => "Preço de custo deve ser um número.", - "cost_price_required" => "Preço de custo é um campo obrigatório.", - "count" => "Acrescentar ao Inventário", - "csv_import_failed" => "Importação do CSV falhou", - "csv_import_nodata_wrongformat" => "Seu arquivo enviado não contém dados ou formato errado.", - "csv_import_partially_failed" => "Houve {0} falha na importação de itens na(s) linha(s): {1}. Nenhuma linha foi importada.", - "csv_import_success" => "Importação de Itens com sucesso.", - "current_quantity" => "Quantidade Atual", - "default_pack_name" => "Cada", - "description" => "Descrição", - "details_count" => "Detalhes da contagem de inventário", - "do_nothing" => "Nada a fazer", - "edit" => "", - "edit_fields_you_want_to_update" => "Editar os campos que deseja editar para todos os itens selecionados.", - "edit_multiple_items" => "Editando Múltiplos Itens", - "empty_upc_items" => "Vazio UPC Itens", - "error_adding_updating" => "Erro ao adicionar/atualizar item", - "error_updating_multiple" => "Erro na atualização de itens", - "generate_barcodes" => "Gerar Códigos de Barras", - "hsn_code" => "Nomenclatura do Sistema Harmonizado", - "image" => "Imagem", - "import_items_csv" => "Importar planilha de produtos do CSV", - "info_provided_by" => "Informação fornecida por", - "inventory" => "Inventário", - "inventory_CSV_import_quantity" => "Quantidade importada do CSV", - "inventory_comments" => "Comentário", - "inventory_data_tracking" => "Acompanhamento de dados de inventário", - "inventory_date" => "Data", - "inventory_employee" => "Funcionário", - "inventory_in_out_quantity" => "Quantidade In / Out", - "inventory_remarks" => "Observações", - "is_deleted" => "Apagado", - "is_printed" => "", - "is_serialized" => "Item tem Número Serial", - "item" => "Produto", - "item_id" => "", - "item_number" => "Cod. Barra", - "item_number_duplicate" => "O número do item já está presente na base de dados.", - "kit" => "Conjunto", - "location" => "Localização", - "low_inventory_items" => "Itens sem estoque", - "low_sell_item" => "Item de baixa venda", - "manually_editing_of_quantity" => "Editar manualmente a quantidade", - "markup" => "", - "name" => "Nome produto", - "name_required" => "Nome do item é um campo obrigatório.", - "new" => "Novo Item", - "no_description_items" => "Sem descrição dos Itens", - "no_items_to_display" => "Sem itens para mostrar.", - "none" => "Nenhum", - "none_selected" => "Não selecionou nenhum produto para editar", - "nonstock" => "Sem estoque", - "number_information" => "Item Número", - "number_required" => "Cod. Barra é um campo obrigatório.", - "one_or_multiple" => "item(s)", - "pack_name" => "Nome do pacote", - "qty_per_pack" => "Quantidade por embalagem", - "quantity" => "Quantidade", - "quantity_number" => "Quantidade deve ser um número.", - "quantity_required" => "Quantidade é um campo obrigatório.", - "receiving_quantity" => "Quantidade a receber", - "remove_image" => "Remover imagem", - "reorder_level" => "Nível de reposição", - "reorder_level_number" => "Nível de reposição deve ser um número.", - "reorder_level_required" => "Nível de reposição é um campo obrigatório.", - "retrive_item_info" => "Recuperar Informação do Item", - "sales_tax_1" => "Imposto de venda", - "sales_tax_2" => "Imposto de venda 2", - "search_attributes" => "pesquisar atributos", - "select_image" => "Selecionar imagem", - "serialized_items" => "Serializar Itens", - "standard" => "Padrão", - "stock" => "Estoque", - "stock_location" => "Localização do estoque", - "stock_type" => "Tipo estoque", - "successful_adding" => "Você adicionou o item com sucesso", - "successful_bulk_edit" => "Você atualizou com sucesso os itens selecionados", - "successful_deleted" => "Você excluiu com sucesso", - "successful_updating" => "Você atualizou com sucesso o item", - "supplier" => "Fornecedor", - "tax_1" => "Imposto 1", - "tax_2" => "Imposto 2", - "tax_3" => "", - "tax_category" => "Categoria de imposto", - "tax_percent" => "Percentual Imposto", - "tax_percent_number" => "Porcentagem de imposto deve ser um valor numérico", - "tax_percent_required" => "Imposto Percentual um campo obrigatório.", - "tax_percents" => "Imposto Percentual", - "temp" => "Temporário", - "type" => "Tipo item", - "unit_price" => "Preço Varejo", - "unit_price_number" => "Preço unitário deve ser um número.", - "unit_price_required" => "Preço de varejo é um campo obrigatório.", - "upc_database" => "Base de dados UPC", - "update" => "Atualizar Item", - "use_inventory_menu" => "Usar Menu Inventário", + "add_minus" => "Inventário para adicionar/subtrair.", + "allow_alt_description" => "Permitir atualizar descrição", + "amount_entry" => "Entrada de montante", + "bulk_edit" => "Editar Múltiplos Itens", + "buy_price_required" => "Preço de compra é um campo obrigatório.", + "cannot_be_deleted" => "Não foi possível excluir os itens selecionados um ou mais dos itens selecionados tem vendas.", + "cannot_find_item" => "Não consegue encontrar qualquer informação sobre o produto.", + "categories" => "", + "category" => "Categoria", + "category_new" => "", + "category_required" => "Categoria é um campo obrigatório.", + "change_all_to_allow_alt_desc" => "Permitir alterar desconto para todos.", + "change_all_to_not_allow_allow_desc" => "Não Permitir alterar desconto para todos.", + "change_all_to_serialized" => "Alterar todos para serializados", + "change_all_to_unserialized" => "Alterar todos para não serializados", + "change_image" => "Substituir imagem", + "confirm_bulk_edit" => "Tem certeza de que deseja editar todos os itens selecionados?", + "confirm_bulk_edit_wipe_taxes" => "Tem certeza de que deseja editar todos os impostos selecionados?.", + "confirm_delete" => "Tem certeza de que deseja excluir os itens selecionados?", + "confirm_restore" => "Tem certeza de que deseja restaurar o (s) item (ns) selecionado (s)?", + "cost_price" => "Preço de Custo", + "cost_price_number" => "Preço de custo deve ser um número.", + "cost_price_required" => "Preço de custo é um campo obrigatório.", + "count" => "Acrescentar ao Inventário", + "csv_import_failed" => "Importação do CSV falhou", + "csv_import_nodata_wrongformat" => "Seu arquivo enviado não contém dados ou formato errado.", + "csv_import_partially_failed" => "Houve {0} falha na importação de itens na(s) linha(s): {1}. Nenhuma linha foi importada.", + "csv_import_success" => "Importação de Itens com sucesso.", + "current_quantity" => "Quantidade Atual", + "default_pack_name" => "Cada", + "description" => "Descrição", + "details_count" => "Detalhes da contagem de inventário", + "do_nothing" => "Nada a fazer", + "edit" => "", + "edit_fields_you_want_to_update" => "Editar os campos que deseja editar para todos os itens selecionados.", + "edit_multiple_items" => "Editando Múltiplos Itens", + "empty_upc_items" => "Vazio UPC Itens", + "error_adding_updating" => "Erro ao adicionar/atualizar item", + "error_updating_multiple" => "Erro na atualização de itens", + "generate_barcodes" => "Gerar Códigos de Barras", + "hsn_code" => "Nomenclatura do Sistema Harmonizado", + "image" => "Imagem", + "import_items_csv" => "Importar planilha de produtos do CSV", + "info_provided_by" => "Informação fornecida por", + "inventory" => "Inventário", + "inventory_CSV_import_quantity" => "Quantidade importada do CSV", + "inventory_comments" => "Comentário", + "inventory_data_tracking" => "Acompanhamento de dados de inventário", + "inventory_date" => "Data", + "inventory_employee" => "Funcionário", + "inventory_in_out_quantity" => "Quantidade In / Out", + "inventory_remarks" => "Observações", + "is_deleted" => "Apagado", + "is_printed" => "", + "is_serialized" => "Item tem Número Serial", + "item" => "Produto", + "item_id" => "", + "item_number" => "Cod. Barra", + "item_number_duplicate" => "O número do item já está presente na base de dados.", + "kit" => "Conjunto", + "location" => "Localização", + "low_inventory_items" => "Itens sem estoque", + "low_sell_item" => "Item de baixa venda", + "manually_editing_of_quantity" => "Editar manualmente a quantidade", + "markup" => "", + "name" => "Nome produto", + "name_required" => "Nome do item é um campo obrigatório.", + "new" => "Novo Item", + "no_description_items" => "Sem descrição dos Itens", + "no_items_to_display" => "Sem itens para mostrar.", + "none" => "Nenhum", + "none_selected" => "Não selecionou nenhum produto para editar", + "nonstock" => "Sem estoque", + "number_information" => "Item Número", + "number_required" => "Cod. Barra é um campo obrigatório.", + "one_or_multiple" => "item(s)", + "pack_name" => "Nome do pacote", + "qty_per_pack" => "Quantidade por embalagem", + "quantity" => "Quantidade", + "quantity_number" => "Quantidade deve ser um número.", + "quantity_required" => "Quantidade é um campo obrigatório.", + "receiving_quantity" => "Quantidade a receber", + "remove_image" => "Remover imagem", + "reorder_level" => "Nível de reposição", + "reorder_level_number" => "Nível de reposição deve ser um número.", + "reorder_level_required" => "Nível de reposição é um campo obrigatório.", + "retrive_item_info" => "Recuperar Informação do Item", + "sales_tax_1" => "Imposto de venda", + "sales_tax_2" => "Imposto de venda 2", + "search_attributes" => "pesquisar atributos", + "select_image" => "Selecionar imagem", + "serialized_items" => "Serializar Itens", + "standard" => "Padrão", + "stock" => "Estoque", + "stock_location" => "Localização do estoque", + "stock_type" => "Tipo estoque", + "successful_adding" => "Você adicionou o item com sucesso", + "successful_bulk_edit" => "Você atualizou com sucesso os itens selecionados", + "successful_deleted" => "Você excluiu com sucesso", + "successful_updating" => "Você atualizou com sucesso o item", + "supplier" => "Fornecedor", + "tax_1" => "Imposto 1", + "tax_2" => "Imposto 2", + "tax_3" => "", + "tax_category" => "Categoria de imposto", + "tax_percent" => "Percentual Imposto", + "tax_percent_number" => "Porcentagem de imposto deve ser um valor numérico", + "tax_percent_required" => "Imposto Percentual um campo obrigatório.", + "tax_percents" => "Imposto Percentual", + "temp" => "Temporário", + "type" => "Tipo item", + "unit_price" => "Preço Varejo", + "unit_price_number" => "Preço unitário deve ser um número.", + "unit_price_required" => "Preço de varejo é um campo obrigatório.", + "upc_database" => "Base de dados UPC", + "update" => "Atualizar Item", + "use_inventory_menu" => "Usar Menu Inventário", ]; diff --git a/app/Language/pt-BR/Login.php b/app/Language/pt-BR/Login.php index 18251a616..d8a0c2078 100644 --- a/app/Language/pt-BR/Login.php +++ b/app/Language/pt-BR/Login.php @@ -1,15 +1,15 @@ "Não sou um robô.", - "go" => "Entrar", - "invalid_gcaptcha" => "Inválido eu não sou um robô.", - "invalid_installation" => "A instalação não está correta, verifique o seu arquivo php.ini.", - "invalid_username_and_password" => "Usuário ou senha inválido.", - "login" => "Autenticação", - "logout" => "", - "migration_needed" => "", - "password" => "Senha", - "required_username" => "", - "username" => "Usuário", - "welcome" => "", + "gcaptcha" => "Não sou um robô.", + "go" => "Entrar", + "invalid_gcaptcha" => "Inválido eu não sou um robô.", + "invalid_installation" => "A instalação não está correta, verifique o seu arquivo php.ini.", + "invalid_username_and_password" => "Usuário ou senha inválido.", + "login" => "Autenticação", + "logout" => "", + "migration_needed" => "", + "password" => "Senha", + "required_username" => "", + "username" => "Usuário", + "welcome" => "", ]; diff --git a/app/Language/pt-BR/Messages.php b/app/Language/pt-BR/Messages.php index cb9554cd9..145019006 100644 --- a/app/Language/pt-BR/Messages.php +++ b/app/Language/pt-BR/Messages.php @@ -1,15 +1,15 @@ "Primeiro nome", - "last_name" => "Último nome", - "message" => "Mensagem", - "message_placeholder" => "Sua mensagem aqui ...", - "message_required" => "Mensagem é requerida", - "multiple_phones" => "(No caso de vários destinatários, digite os números celulares separadas por vírgula)", - "phone" => "Número do telefone", - "phone_number_required" => "Número do Celular é obrigatório", - "phone_placeholder" => "Numero(s) do(s) Celulares aqui ...", - "sms_send" => "Enviar SMS", - "successfully_sent" => "Mensagem enviada com sucesso para: ", - "unsuccessfully_sent" => "Mensagem sem sucesso no envio para: ", + "first_name" => "Primeiro nome", + "last_name" => "Último nome", + "message" => "Mensagem", + "message_placeholder" => "Sua mensagem aqui ...", + "message_required" => "Mensagem é requerida", + "multiple_phones" => "(No caso de vários destinatários, digite os números celulares separadas por vírgula)", + "phone" => "Número do telefone", + "phone_number_required" => "Número do Celular é obrigatório", + "phone_placeholder" => "Numero(s) do(s) Celulares aqui ...", + "sms_send" => "Enviar SMS", + "successfully_sent" => "Mensagem enviada com sucesso para: ", + "unsuccessfully_sent" => "Mensagem sem sucesso no envio para: ", ]; diff --git a/app/Language/pt-BR/Module.php b/app/Language/pt-BR/Module.php index 4657704ff..3ab0351ae 100644 --- a/app/Language/pt-BR/Module.php +++ b/app/Language/pt-BR/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "Atributos", - "attributes_desc" => "Adicionar, atualizar, excluir e pesquisar atributos.", - "both" => "Ambos", - "cashups" => "Liquidação", - "cashups_desc" => "Adicione, atualize, exclua e pesquise as liquidações.", - "config" => "Configurações", - "config_desc" => "Alterar configurações do sistema.", - "customers" => "Clientes", - "customers_desc" => "Adicionar, atualizar, excluir e Pesquisar clientes.", - "employees" => "Funcionários", - "employees_desc" => "Adicionar , atualizar, excluir e Pesquisar funcionários.", - "expenses" => "Despesas", - "expenses_categories" => "Categorias de despesas", - "expenses_categories_desc" => "Adicionar, atualizar e excluir categorias de despesas.", - "expenses_desc" => "Adicionar, atualizar, excluir e despesas de pesquisa.", - "giftcards" => "Cartões Presente", - "giftcards_desc" => "Adicionar, atualizar, excluir e Pesquisar cartões presente.", - "home" => "Início", - "home_desc" => "Listar os módulos do menu inicial.", - "item_kits" => "Conjuntos", - "item_kits_desc" => "Adicionar , atualizar, excluir e Pesquisar conjunto de itens.", - "items" => "Itens", - "items_desc" => "Adicionar, atualizar, excluir e Pesquisar itens.", - "messages" => "Mensagens", - "messages_desc" => "Enviar mensagens para os clientes, fornecedores, colaboradores etc.", - "migrate" => "Migrar", - "migrate_desc" => "Atualize o banco de dados do OSPOS.", - "office" => "Escritório", - "office_desc" => "Listar módulos de menu do escritório.", - "receivings" => "Recebimento", - "receivings_desc" => "Processar ordens.", - "reports" => "Relatórios", - "reports_desc" => "Visualizar e Gerar relatórios.", - "sales" => "Vendas", - "sales_desc" => "Processar vendas e devoluções.", - "suppliers" => "Fornecedores", - "suppliers_desc" => "Adicionar, atualizar, excluir e Pesquisar fornecedores.", - "taxes" => "Impostos", - "taxes_desc" => "Configurar impostos sobre vendas.", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "Atributos", + "attributes_desc" => "Adicionar, atualizar, excluir e pesquisar atributos.", + "both" => "Ambos", + "cashups" => "Liquidação", + "cashups_desc" => "Adicione, atualize, exclua e pesquise as liquidações.", + "config" => "Configurações", + "config_desc" => "Alterar configurações do sistema.", + "customers" => "Clientes", + "customers_desc" => "Adicionar, atualizar, excluir e Pesquisar clientes.", + "employees" => "Funcionários", + "employees_desc" => "Adicionar , atualizar, excluir e Pesquisar funcionários.", + "expenses" => "Despesas", + "expenses_categories" => "Categorias de despesas", + "expenses_categories_desc" => "Adicionar, atualizar e excluir categorias de despesas.", + "expenses_desc" => "Adicionar, atualizar, excluir e despesas de pesquisa.", + "giftcards" => "Cartões Presente", + "giftcards_desc" => "Adicionar, atualizar, excluir e Pesquisar cartões presente.", + "home" => "Início", + "home_desc" => "Listar os módulos do menu inicial.", + "item_kits" => "Conjuntos", + "item_kits_desc" => "Adicionar , atualizar, excluir e Pesquisar conjunto de itens.", + "items" => "Itens", + "items_desc" => "Adicionar, atualizar, excluir e Pesquisar itens.", + "messages" => "Mensagens", + "messages_desc" => "Enviar mensagens para os clientes, fornecedores, colaboradores etc.", + "migrate" => "Migrar", + "migrate_desc" => "Atualize o banco de dados do OSPOS.", + "office" => "Escritório", + "office_desc" => "Listar módulos de menu do escritório.", + "receivings" => "Recebimento", + "receivings_desc" => "Processar ordens.", + "reports" => "Relatórios", + "reports_desc" => "Visualizar e Gerar relatórios.", + "sales" => "Vendas", + "sales_desc" => "Processar vendas e devoluções.", + "suppliers" => "Fornecedores", + "suppliers_desc" => "Adicionar, atualizar, excluir e Pesquisar fornecedores.", + "taxes" => "Impostos", + "taxes_desc" => "Configurar impostos sobre vendas.", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/pt-BR/Receivings.php b/app/Language/pt-BR/Receivings.php index 4c198bd16..8306639f4 100644 --- a/app/Language/pt-BR/Receivings.php +++ b/app/Language/pt-BR/Receivings.php @@ -1,58 +1,58 @@ "", - "cancel_receiving" => "Cancelar", - "cannot_be_deleted" => "Recebimento(s) não pode ser excluído.", - "comments" => "Comentário", - "complete_receiving" => "Finalizado", - "confirm_cancel_receiving" => "Tem certeza de que deseja apagar este recebimento? Todos os itens serão apagados.", - "confirm_delete" => "Tem certeza de que deseja excluir este recebimento esta ação não pode ser desfeita.", - "confirm_finish_receiving" => "Tem certeza de que deseja enviar este recebimento? Isto não pode ser desfeito.", - "confirm_restore" => "", - "cost" => "Custo", - "daily" => "", - "date" => "Data Recebimento", - "date_required" => "A data correta precisa ser preenchida.", - "date_type" => "Campo de data é obrigatório.", - "delete_entire_sale" => "Apagar toda a venda", - "discount" => "Desconto", - "edit" => "Editar", - "edit_sale" => "Editar Recebimento", - "employee" => "Funcionário", - "error_editing_item" => "Erro editando item.", - "error_requisition" => "Não é possível mover o estoque de ou para o mesmo local de estoque.", - "find_or_scan_item" => "Localizar Item", - "find_or_scan_item_or_receipt" => "Produto no Estoque", - "id" => "Recebimento ID", - "item_name" => "Nome do item", - "mode" => "Tipo Recebimento", - "new_supplier" => "Novo Fornecedor", - "one_or_multiple" => "recebimento(s)", - "print_after_sale" => "Imprimir ao concluir", - "quantity" => "Qtde.", - "receipt" => "Recebimentos", - "receipt_number" => "Recebimento nº", - "receiving" => "Receber", - "reference" => "Referência", - "register" => "Itens Recebimento", - "requisition" => "Requisição", - "return" => "Devolução", - "select_supplier" => "Selecionar Fornecedor (Opcional)", - "ship_pack" => "Pacote de envio", - "start_typing_supplier_name" => "Digite o nome do fornecedor...", - "stock" => "Estoque", - "stock_destination" => "Destinação do estoque", - "stock_locaiton" => "Localização do estoque", - "stock_source" => "Fonte do estoque", - "successfully_deleted" => "Você excluiu com sucesso", - "successfully_updated" => "Recebimento atualizado com sucesso", - "supplier" => "Fornecedor", - "supplier_address" => "Endereço", - "supplier_email" => "e-mail", - "supplier_location" => "Localização", - "total" => "Total", - "transaction_failed" => "Recebimentos Transações Falharam.", - "unable_to_add_item" => "Não é possível adicionar item para recebimento.", - "unsuccessfully_updated" => "Recebimento não atualizado.", - "update" => "Atualizar", + "amount_due" => "", + "cancel_receiving" => "Cancelar", + "cannot_be_deleted" => "Recebimento(s) não pode ser excluído.", + "comments" => "Comentário", + "complete_receiving" => "Finalizado", + "confirm_cancel_receiving" => "Tem certeza de que deseja apagar este recebimento? Todos os itens serão apagados.", + "confirm_delete" => "Tem certeza de que deseja excluir este recebimento esta ação não pode ser desfeita.", + "confirm_finish_receiving" => "Tem certeza de que deseja enviar este recebimento? Isto não pode ser desfeito.", + "confirm_restore" => "", + "cost" => "Custo", + "daily" => "", + "date" => "Data Recebimento", + "date_required" => "A data correta precisa ser preenchida.", + "date_type" => "Campo de data é obrigatório.", + "delete_entire_sale" => "Apagar toda a venda", + "discount" => "Desconto", + "edit" => "Editar", + "edit_sale" => "Editar Recebimento", + "employee" => "Funcionário", + "error_editing_item" => "Erro editando item.", + "error_requisition" => "Não é possível mover o estoque de ou para o mesmo local de estoque.", + "find_or_scan_item" => "Localizar Item", + "find_or_scan_item_or_receipt" => "Produto no Estoque", + "id" => "Recebimento ID", + "item_name" => "Nome do item", + "mode" => "Tipo Recebimento", + "new_supplier" => "Novo Fornecedor", + "one_or_multiple" => "recebimento(s)", + "print_after_sale" => "Imprimir ao concluir", + "quantity" => "Qtde.", + "receipt" => "Recebimentos", + "receipt_number" => "Recebimento nº", + "receiving" => "Receber", + "reference" => "Referência", + "register" => "Itens Recebimento", + "requisition" => "Requisição", + "return" => "Devolução", + "select_supplier" => "Selecionar Fornecedor (Opcional)", + "ship_pack" => "Pacote de envio", + "start_typing_supplier_name" => "Digite o nome do fornecedor...", + "stock" => "Estoque", + "stock_destination" => "Destinação do estoque", + "stock_locaiton" => "Localização do estoque", + "stock_source" => "Fonte do estoque", + "successfully_deleted" => "Você excluiu com sucesso", + "successfully_updated" => "Recebimento atualizado com sucesso", + "supplier" => "Fornecedor", + "supplier_address" => "Endereço", + "supplier_email" => "e-mail", + "supplier_location" => "Localização", + "total" => "Total", + "transaction_failed" => "Recebimentos Transações Falharam.", + "unable_to_add_item" => "Não é possível adicionar item para recebimento.", + "unsuccessfully_updated" => "Recebimento não atualizado.", + "update" => "Atualizar", ]; diff --git a/app/Language/pt-BR/Reports.php b/app/Language/pt-BR/Reports.php index 33a2a3a38..426499141 100644 --- a/app/Language/pt-BR/Reports.php +++ b/app/Language/pt-BR/Reports.php @@ -1,148 +1,148 @@ "Todos", - "authority" => "Autoridade", - "canceled" => "Cancelado", - "categories" => "Categorias", - "categories_summary_report" => "Relatório Resumo de Categorias", - "category" => "Categoria", - "code_canceled" => "CNL", - "code_invoice" => "FAT", - "code_pos" => "POS", - "code_quote" => "Q", - "code_return" => "RET", - "code_type" => "Tipo", - "code_work_order" => "O/T", - "comments" => "Comentário", - "commission" => "", - "complete" => "Vendas e devoluções concluídas", - "completed_sales" => "Vendas concluídas", - "confirm_delete" => "Tem certeza de que deseja excluir as entradas selecionadas?", - "confirm_restore" => "Tem certeza de que deseja restaurar a (s) entrada (s) selecionada (s)?", - "cost" => "Custo", - "cost_price" => "Preço de Custo", - "count" => "Quantidade", - "customer" => "Cliente", - "customers" => "Clientes", - "customers_summary_report" => "Relatório Resumo de Clientes", - "date" => "Data", - "date_range" => "Período", - "description" => "Descrição", - "detailed_receivings_report" => "Relatório Detalhado de Recebimentos", - "detailed_receivings_report_input" => "", - "detailed_reports" => "Relatório Detalhado", - "detailed_requisition_report" => "Relatório Detalhado de Recebimentos", - "detailed_sales_report" => "Relatório Detalhado de Vendas", - "discount" => "Desconto", - "discount_fixed" => "Desconto fixo", - "discount_percent" => "Desconto Percentual", - "discount_type" => "Tipo de desconto", - "discounts" => "Descontos", - "discounts_summary_report" => "Relatório Resumo de Descontos", - "earned" => "Pontos ganhos", - "employee" => "Filtro por quantidade", - "employees" => "Funcionários", - "employees_summary_report" => "Relatório Resumido de Funcionários", - "expenses" => "Despesas", - "expenses_amount" => "Total", - "expenses_categories" => "Despesas", - "expenses_categories_summary_report" => "Relatório de resumo de categorias de despesas", - "expenses_category" => "Categoria", - "expenses_payment_amount" => "", - "expenses_tax_amount" => "IMP", - "expenses_total_amount" => "Valor Total", - "expenses_total_tax_amount" => "Total Imposto", - "graphical_reports" => "Relatório gráfico", - "inventory" => "Inventário", - "inventory_low" => "Inventário de baixas", - "inventory_low_report" => "Relatório inventário de baixas", - "inventory_reports" => "Relatório Inventário", - "inventory_summary" => "Sumário de Inventário", - "inventory_summary_report" => "Relatório Sumário de Inventário", - "item" => "Produto", - "item_count" => "Filtro por quantidade", - "item_name" => "Item Nome", - "item_number" => "Código de barras", - "items" => "Itens", - "items_purchased" => "Itens Procurados", - "items_received" => "Itens Recebidos", - "items_summary_report" => "Relatório Resumo de Itens", - "jurisdiction" => "Jurisdição", - "low_inventory" => "Relatório de estoque baixo", - "low_inventory_report" => "Relatório de inventário baixo", - "low_sell_quantity" => "Qtd de baixa venda", - "more_than_zero" => "Maior do que zero", - "name" => "Nome", - "no_reports_to_display" => "Sem itens para mostrar.", - "payment_type" => "Tipo pagamento", - "payments" => "Pagamentos", - "payments_summary_report" => "Relatório Resumido de Pagamentos", - "profit" => "Lucro", - "quantity" => "Quantidade", - "quantity_purchased" => "Quantidade Comprada", - "quotes" => "Citações", - "received_by" => "Recebido por", - "receiving_id" => "Recebimento ID", - "receiving_type" => "Tipo Recebimento", - "receivings" => "Recebimentos", - "reorder_level" => "Nível de reabastecimento", - "report" => "Relatório", - "report_input" => "Relatório Entrada", - "reports" => "Relatórios", - "requisition" => "requisição", - "requisition_by" => "requisição de", - "requisition_id" => "Requisição de ID", - "requisition_item" => "item requisição", - "requisition_item_quantity" => "Número de item Requisição", - "requisition_related_item" => "item relacionado Requisição", - "requisition_related_item_total_quantity" => "Valor total requisição item", - "requisition_related_item_unit_quantity" => "item montante unitário de Requisição", - "requisitions" => "Requisições", - "returns" => "Devoluções", - "revenue" => "Receita", - "sale_id" => "Venda ID", - "sale_type" => "Tipo Venda", - "sales" => "Venda", - "sales_amount" => "Montante de venda", - "sales_summary_report" => "Relatório Resumo de Vendas", - "sales_taxes" => "Impostos sobre vendas", - "sales_taxes_summary_report" => "Relatório de Resumo de Impostos sobre Vendas", - "serial_number" => "Serial nº", - "service_charge" => "", - "sold_by" => "Vendido por", - "sold_items" => "", - "sold_to" => "Vendido para", - "stock_location" => "Localização do Estoque", - "sub_total_value" => "Sub-total", - "subtotal" => "Sub total", - "summary_reports" => "Relatório Resumido", - "supplied_by" => "Fornecido por", - "supplier" => "Fornecedor", - "suppliers" => "Fornecedores", - "suppliers_summary_report" => "Relatório Resumido Fornecedor", - "tax" => "Imposto", - "tax_category" => "Categoria de impostos", - "tax_name" => "", - "tax_percent" => "Percentual de Imposto", - "tax_rate" => "Taxa de imposto", - "taxes" => "Impostos", - "taxes_summary_report" => "Relatório Resumido de Impostos", - "total" => "Total", - "total_inventory_value" => "Valor Total Inventário", - "total_low_sell_quantity" => "Quantidade Total de Venda Baixa", - "total_quantity" => "Quantidade total", - "total_retail" => "Total Inv. Valor de varejo", - "trans_amount" => "Montante de transação", - "trans_due" => "Vencimento", - "trans_group" => "Grupo de transações", - "trans_nopay_sales" => "Vendas sem pagamento", - "trans_payments" => "Pagamentos", - "trans_refunded" => "Devolvido", - "trans_sales" => "Vendas", - "trans_type" => "Tipo de transação", - "type" => "Tipo", - "unit_price" => "Preço Varejo", - "used" => "Pontos usados", - "work_orders" => "Ordens de trabalho", - "zero_and_less" => "Zero e menor", + "all" => "Todos", + "authority" => "Autoridade", + "canceled" => "Cancelado", + "categories" => "Categorias", + "categories_summary_report" => "Relatório Resumo de Categorias", + "category" => "Categoria", + "code_canceled" => "CNL", + "code_invoice" => "FAT", + "code_pos" => "POS", + "code_quote" => "Q", + "code_return" => "RET", + "code_type" => "Tipo", + "code_work_order" => "O/T", + "comments" => "Comentário", + "commission" => "", + "complete" => "Vendas e devoluções concluídas", + "completed_sales" => "Vendas concluídas", + "confirm_delete" => "Tem certeza de que deseja excluir as entradas selecionadas?", + "confirm_restore" => "Tem certeza de que deseja restaurar a (s) entrada (s) selecionada (s)?", + "cost" => "Custo", + "cost_price" => "Preço de Custo", + "count" => "Quantidade", + "customer" => "Cliente", + "customers" => "Clientes", + "customers_summary_report" => "Relatório Resumo de Clientes", + "date" => "Data", + "date_range" => "Período", + "description" => "Descrição", + "detailed_receivings_report" => "Relatório Detalhado de Recebimentos", + "detailed_receivings_report_input" => "", + "detailed_reports" => "Relatório Detalhado", + "detailed_requisition_report" => "Relatório Detalhado de Recebimentos", + "detailed_sales_report" => "Relatório Detalhado de Vendas", + "discount" => "Desconto", + "discount_fixed" => "Desconto fixo", + "discount_percent" => "Desconto Percentual", + "discount_type" => "Tipo de desconto", + "discounts" => "Descontos", + "discounts_summary_report" => "Relatório Resumo de Descontos", + "earned" => "Pontos ganhos", + "employee" => "Filtro por quantidade", + "employees" => "Funcionários", + "employees_summary_report" => "Relatório Resumido de Funcionários", + "expenses" => "Despesas", + "expenses_amount" => "Total", + "expenses_categories" => "Despesas", + "expenses_categories_summary_report" => "Relatório de resumo de categorias de despesas", + "expenses_category" => "Categoria", + "expenses_payment_amount" => "", + "expenses_tax_amount" => "IMP", + "expenses_total_amount" => "Valor Total", + "expenses_total_tax_amount" => "Total Imposto", + "graphical_reports" => "Relatório gráfico", + "inventory" => "Inventário", + "inventory_low" => "Inventário de baixas", + "inventory_low_report" => "Relatório inventário de baixas", + "inventory_reports" => "Relatório Inventário", + "inventory_summary" => "Sumário de Inventário", + "inventory_summary_report" => "Relatório Sumário de Inventário", + "item" => "Produto", + "item_count" => "Filtro por quantidade", + "item_name" => "Item Nome", + "item_number" => "Código de barras", + "items" => "Itens", + "items_purchased" => "Itens Procurados", + "items_received" => "Itens Recebidos", + "items_summary_report" => "Relatório Resumo de Itens", + "jurisdiction" => "Jurisdição", + "low_inventory" => "Relatório de estoque baixo", + "low_inventory_report" => "Relatório de inventário baixo", + "low_sell_quantity" => "Qtd de baixa venda", + "more_than_zero" => "Maior do que zero", + "name" => "Nome", + "no_reports_to_display" => "Sem itens para mostrar.", + "payment_type" => "Tipo pagamento", + "payments" => "Pagamentos", + "payments_summary_report" => "Relatório Resumido de Pagamentos", + "profit" => "Lucro", + "quantity" => "Quantidade", + "quantity_purchased" => "Quantidade Comprada", + "quotes" => "Citações", + "received_by" => "Recebido por", + "receiving_id" => "Recebimento ID", + "receiving_type" => "Tipo Recebimento", + "receivings" => "Recebimentos", + "reorder_level" => "Nível de reabastecimento", + "report" => "Relatório", + "report_input" => "Relatório Entrada", + "reports" => "Relatórios", + "requisition" => "requisição", + "requisition_by" => "requisição de", + "requisition_id" => "Requisição de ID", + "requisition_item" => "item requisição", + "requisition_item_quantity" => "Número de item Requisição", + "requisition_related_item" => "item relacionado Requisição", + "requisition_related_item_total_quantity" => "Valor total requisição item", + "requisition_related_item_unit_quantity" => "item montante unitário de Requisição", + "requisitions" => "Requisições", + "returns" => "Devoluções", + "revenue" => "Receita", + "sale_id" => "Venda ID", + "sale_type" => "Tipo Venda", + "sales" => "Venda", + "sales_amount" => "Montante de venda", + "sales_summary_report" => "Relatório Resumo de Vendas", + "sales_taxes" => "Impostos sobre vendas", + "sales_taxes_summary_report" => "Relatório de Resumo de Impostos sobre Vendas", + "serial_number" => "Serial nº", + "service_charge" => "", + "sold_by" => "Vendido por", + "sold_items" => "", + "sold_to" => "Vendido para", + "stock_location" => "Localização do Estoque", + "sub_total_value" => "Sub-total", + "subtotal" => "Sub total", + "summary_reports" => "Relatório Resumido", + "supplied_by" => "Fornecido por", + "supplier" => "Fornecedor", + "suppliers" => "Fornecedores", + "suppliers_summary_report" => "Relatório Resumido Fornecedor", + "tax" => "Imposto", + "tax_category" => "Categoria de impostos", + "tax_name" => "", + "tax_percent" => "Percentual de Imposto", + "tax_rate" => "Taxa de imposto", + "taxes" => "Impostos", + "taxes_summary_report" => "Relatório Resumido de Impostos", + "total" => "Total", + "total_inventory_value" => "Valor Total Inventário", + "total_low_sell_quantity" => "Quantidade Total de Venda Baixa", + "total_quantity" => "Quantidade total", + "total_retail" => "Total Inv. Valor de varejo", + "trans_amount" => "Montante de transação", + "trans_due" => "Vencimento", + "trans_group" => "Grupo de transações", + "trans_nopay_sales" => "Vendas sem pagamento", + "trans_payments" => "Pagamentos", + "trans_refunded" => "Devolvido", + "trans_sales" => "Vendas", + "trans_type" => "Tipo de transação", + "type" => "Tipo", + "unit_price" => "Preço Varejo", + "used" => "Pontos usados", + "work_orders" => "Ordens de trabalho", + "zero_and_less" => "Zero e menor", ]; diff --git a/app/Language/pt-BR/Sales.php b/app/Language/pt-BR/Sales.php index a57cdbc09..296aa1af5 100644 --- a/app/Language/pt-BR/Sales.php +++ b/app/Language/pt-BR/Sales.php @@ -1,224 +1,224 @@ "Pontos Disponíveis", - "rewards_package" => "Recompensa", - "rewards_remaining_balance" => "O valor restante dos pontos de recompensa é ", - "account_number" => "Montante º", - "add_payment" => "Pagar", - "amount_due" => "Diferença", - "amount_tendered" => "A Pagar", - "authorized_signature" => "Assinatura autorizada", - "cancel_sale" => "Cancelar", - "cash" => "Dinheiro", - "cash_1" => "", - "cash_2" => "", - "cash_3" => "", - "cash_4" => "", - "cash_adjustment" => "Ajuste de Dinheiro", - "cash_deposit" => "Depósito em dinheiro", - "cash_filter" => "Dinheiro", - "change_due" => "Troco", - "change_price" => "Mudar o Preço de Venda", - "check" => "Cheque", - "check_balance" => "Cheque restante", - "check_filter" => "Cheque", - "close" => "", - "comment" => "Cementário", - "comments" => "Comentários", - "company_name" => "", - "complete" => "", - "complete_sale" => "Finalizar", - "confirm_cancel_sale" => "Tem certeza de que deseja apagar esta venda? Todos os itens serão apagados.", - "confirm_delete" => "Tem certeza de que deseja excluir as vendas selecionados?", - "confirm_restore" => "Tem certeza de que deseja restaurar a (s) venda (ões) selecionada (s)?", - "credit" => "Cartão Crédito", - "credit_deposit" => "Depósito de crédito", - "credit_filter" => "Cartão de Crédito", - "current_table" => "", - "customer" => "Cliente", - "customer_address" => "Endereço", - "customer_discount" => "Desconto", - "customer_email" => "e-mail", - "customer_location" => "Localização", - "customer_mailchimp_status" => "Status Mailchimp", - "customer_optional" => "(Obrigatório para pagamentos vencidos)", - "customer_required" => "(Requerido)", - "customer_total" => "Total", - "customer_total_spent" => "", - "daily_sales" => "", - "date" => "Data Venda", - "date_range" => "Intervalo de datas", - "date_required" => "A data correta precisa ser preenchida.", - "date_type" => "Data é requerida.", - "debit" => "Cartão Débito", - "debit_filter" => "", - "delete" => "Permitir exclusão", - "delete_confirmation" => "Tem certeza de que deseja excluir esta venda, esta ação não pode ser desfeita.", - "delete_entire_sale" => "Apagar toda a venda", - "delete_successful" => "Apagado com sucesso.", - "delete_unsuccessful" => "Foi excluído com sucesso uma venda.", - "description_abbrv" => "Descrição.", - "discard" => "Descartar", - "discard_quote" => "", - "discount" => "Desconto", - "discount_included" => "% Desconto", - "discount_short" => "%", - "due" => "Vencimento", - "due_filter" => "Vencimento", - "edit" => "Editar", - "edit_item" => "Atualizar", - "edit_sale" => "Editar Venda", - "email_receipt" => "E-mail Recebido", - "employee" => "Empregado", - "entry" => "Entrada", - "error_editing_item" => "Erro editando item", - "find_or_scan_item" => "Pesquisar Item", - "find_or_scan_item_or_receipt" => "Produto", - "giftcard" => "Cupom", - "giftcard_balance" => "Balanço de Cartões presente", - "giftcard_filter" => "", - "giftcard_number" => "Número cartão presente", - "group_by_category" => "Agrupar por Categoria", - "group_by_type" => "Agrupar por Tipo", - "hsn" => "HSN", - "id" => "Venda ID", - "include_prices" => "Incluir Preços?", - "invoice" => "Fatura", - "invoice_confirm" => "Esta fatura será enviada para", - "invoice_enable" => "Criar Fatura", - "invoice_filter" => "Faturas", - "invoice_no_email" => "Este cliente não tem um endereço de e-mail válido.", - "invoice_number" => "Fatura nº", - "invoice_number_duplicate" => "Por favor insira um número de fatura única.", - "invoice_sent" => "Enviar Fatura para", - "invoice_total" => "Total da fatura", - "invoice_type_custom_invoice" => "Fatura personalizada (custom_invoice.php)", - "invoice_type_custom_tax_invoice" => "Fatura fiscal personalizada (custom_tax_invoice.php)", - "invoice_type_invoice" => "Fatura (invoice.php)", - "invoice_type_tax_invoice" => "Fatura fiscal (tax_invoice.php)", - "invoice_unsent" => "Fatura não devem ser enviados para", - "invoice_update" => "Recontagem", - "item_insufficient_of_stock" => "Item insuficiente no estoque.", - "item_name" => "Produto", - "item_number" => "Item nº", - "item_out_of_stock" => "Item sem estoque.", - "key_browser" => "", - "key_cancel" => "Cancels Current Quote/Invoice/Sale", - "key_customer_search" => "Customer Search", - "key_finish_quote" => "Finish Quote/Invoice witdout payment", - "key_finish_sale" => "Add Payment and Complete Invoice/Sale", - "key_full" => "", - "key_function" => "Function", - "key_help" => "Shortcuts", - "key_help_modal" => "Open Shortcuts Window", - "key_in" => "", - "key_item_search" => "Item Search", - "key_out" => "", - "key_payment" => "Add Payment", - "key_print" => "", - "key_restore" => "", - "key_search" => "", - "key_suspend" => "Suspend Current Sale", - "key_suspended" => "Show Suspended Sales", - "key_system" => "", - "key_tendered" => "Edit Amount Tendered", - "key_title" => "Sales Keyboard Shortcuts", - "mc" => "", - "mode" => "Registrar como", - "must_enter_numeric" => "Deve entrar valor numérico para montante da proposta apresentada.", - "must_enter_numeric_giftcard" => "Deve entrar valor numérico para o número de cartão presente.", - "new_customer" => "Novo Cliente", - "new_item" => "Novo Item", - "no_description" => "Sem descrição", - "no_filter" => "Todos", - "no_items_in_cart" => "Não há itens na cesta.", - "no_sales_to_display" => "Sem vendas para mostrar.", - "none_selected" => "Você não selecionou nenhuma venda para apagar.", - "nontaxed_ind" => " ", - "not_authorized" => "Esta ação não é autorizada.", - "one_or_multiple" => "venda(s)", - "payment" => "Forma de pagamento", - "payment_amount" => "Conta", - "payment_not_cover_total" => "Valor do pagamento não cobre total.", - "payment_type" => "Tipo", - "payments" => "", - "payments_total" => "Total Pago", - "price" => "Preço", - "print_after_sale" => "Imprimir ao final", - "quantity" => "Quantidade", - "quantity_less_than_reorder_level" => "Aviso, quantidade desejada está abaixo do nível de reabastecimento.", - "quantity_less_than_zero" => "Aviso, Quantidade desejado é insuficiente. Você ainda pode processar a venda mas verifique seu inventário.", - "quantity_of_items" => "Quantidade de {0} itens", - "quote" => "Cotação", - "quote_number" => "Cotação número", - "quote_number_duplicate" => "O número de cotação deve ser exclusivo.", - "quote_sent" => "Cotação enviada para", - "quote_unsent" => "As cotações não foram enviadas para", - "receipt" => "Vendas", - "receipt_no_email" => "Este cliente não possui um endereço de email válido.", - "receipt_number" => "Venda nº", - "receipt_sent" => "Enviar recibo para", - "receipt_unsent" => "Recibo não devem ser enviados para", - "refund" => "Tipo de Reembolso", - "register" => "Registar Venda", - "remove_customer" => "Remover Cliente", - "remove_discount" => "", - "return" => "Devolução", - "rewards" => "Pontos de recompensa", - "rewards_balance" => "Saldo de pontos de recompensa", - "sale" => "Venda", - "sale_by_invoice" => "Venda por fatura", - "sale_for_customer" => "Cliente:", - "sale_time" => "Data", - "sales_tax" => "Imposto de venda", - "sales_total" => "", - "select_customer" => "Selecionar Cliente", - "send_invoice" => "Enviar fatura", - "send_quote" => "enviar cotação", - "send_receipt" => "Enviar recibo", - "send_work_order" => "Enviar ordem de trabalho", - "serial" => "Série", - "service_charge" => "", - "show_due" => "", - "show_invoice" => "fatura", - "show_receipt" => "recibo", - "start_typing_customer_name" => "Nome Cliente ...", - "start_typing_item_name" => "Produto ...", - "stock" => "Estoque", - "stock_location" => "Estoque", - "sub_total" => "Sub-total", - "successfully_deleted" => "Apagado com sucesso", - "successfully_restored" => "Você restaurou com sucesso", - "successfully_suspended_sale" => "Suspenso com sucesso.", - "successfully_updated" => "Venda atualizada.", - "suspend_sale" => "Suspender", - "suspended_doc_id" => "Documento", - "suspended_sale_id" => "ID", - "suspended_sales" => "Suspenso", - "table" => "Mesa", - "takings" => "Vendas", - "tax" => "Taxa", - "tax_id" => "Id imposto", - "tax_invoice" => "Fatura de imposto", - "tax_percent" => "Taxa %", - "taxed_ind" => "Indicador de Taxa de Vendas", - "total" => "Total", - "total_tax_exclusive" => "taxas excluídas", - "transaction_failed" => "Falha na transação Vendas.", - "unable_to_add_item" => "Não é possível adicionar item à venda", - "unsuccessfully_deleted" => "Venda(s) não pode ser excluído.", - "unsuccessfully_restored" => "Falha na restauração de venda (s).", - "unsuccessfully_suspended_sale" => "Suspenso com sucesso.", - "unsuccessfully_updated" => "Venda sem sucesso na atualização.", - "unsuspend" => "Não suspenso", - "unsuspend_and_delete" => "Retornar e apagar", - "update" => "Editar Venda", - "upi" => "UPI", - "visa" => "", - "wholesale" => "", - "work_order" => "Ordem de trabalho", - "work_order_number" => "Número da ordem de trabalho", - "work_order_number_duplicate" => "O número da ordem de serviço deve ser exclusivo.", - "work_order_sent" => "Ordem de trabalho enviada para", - "work_order_unsent" => "A ordem de serviço não foi enviada para", + "customers_available_points" => "Pontos Disponíveis", + "rewards_package" => "Recompensa", + "rewards_remaining_balance" => "O valor restante dos pontos de recompensa é ", + "account_number" => "Montante º", + "add_payment" => "Pagar", + "amount_due" => "Diferença", + "amount_tendered" => "A Pagar", + "authorized_signature" => "Assinatura autorizada", + "cancel_sale" => "Cancelar", + "cash" => "Dinheiro", + "cash_1" => "", + "cash_2" => "", + "cash_3" => "", + "cash_4" => "", + "cash_adjustment" => "Ajuste de Dinheiro", + "cash_deposit" => "Depósito em dinheiro", + "cash_filter" => "Dinheiro", + "change_due" => "Troco", + "change_price" => "Mudar o Preço de Venda", + "check" => "Cheque", + "check_balance" => "Cheque restante", + "check_filter" => "Cheque", + "close" => "", + "comment" => "Cementário", + "comments" => "Comentários", + "company_name" => "", + "complete" => "", + "complete_sale" => "Finalizar", + "confirm_cancel_sale" => "Tem certeza de que deseja apagar esta venda? Todos os itens serão apagados.", + "confirm_delete" => "Tem certeza de que deseja excluir as vendas selecionados?", + "confirm_restore" => "Tem certeza de que deseja restaurar a (s) venda (ões) selecionada (s)?", + "credit" => "Cartão Crédito", + "credit_deposit" => "Depósito de crédito", + "credit_filter" => "Cartão de Crédito", + "current_table" => "", + "customer" => "Cliente", + "customer_address" => "Endereço", + "customer_discount" => "Desconto", + "customer_email" => "e-mail", + "customer_location" => "Localização", + "customer_mailchimp_status" => "Status Mailchimp", + "customer_optional" => "(Obrigatório para pagamentos vencidos)", + "customer_required" => "(Requerido)", + "customer_total" => "Total", + "customer_total_spent" => "", + "daily_sales" => "", + "date" => "Data Venda", + "date_range" => "Intervalo de datas", + "date_required" => "A data correta precisa ser preenchida.", + "date_type" => "Data é requerida.", + "debit" => "Cartão Débito", + "debit_filter" => "", + "delete" => "Permitir exclusão", + "delete_confirmation" => "Tem certeza de que deseja excluir esta venda, esta ação não pode ser desfeita.", + "delete_entire_sale" => "Apagar toda a venda", + "delete_successful" => "Apagado com sucesso.", + "delete_unsuccessful" => "Foi excluído com sucesso uma venda.", + "description_abbrv" => "Descrição.", + "discard" => "Descartar", + "discard_quote" => "", + "discount" => "Desconto", + "discount_included" => "% Desconto", + "discount_short" => "%", + "due" => "Vencimento", + "due_filter" => "Vencimento", + "edit" => "Editar", + "edit_item" => "Atualizar", + "edit_sale" => "Editar Venda", + "email_receipt" => "E-mail Recebido", + "employee" => "Empregado", + "entry" => "Entrada", + "error_editing_item" => "Erro editando item", + "find_or_scan_item" => "Pesquisar Item", + "find_or_scan_item_or_receipt" => "Produto", + "giftcard" => "Cupom", + "giftcard_balance" => "Balanço de Cartões presente", + "giftcard_filter" => "", + "giftcard_number" => "Número cartão presente", + "group_by_category" => "Agrupar por Categoria", + "group_by_type" => "Agrupar por Tipo", + "hsn" => "HSN", + "id" => "Venda ID", + "include_prices" => "Incluir Preços?", + "invoice" => "Fatura", + "invoice_confirm" => "Esta fatura será enviada para", + "invoice_enable" => "Criar Fatura", + "invoice_filter" => "Faturas", + "invoice_no_email" => "Este cliente não tem um endereço de e-mail válido.", + "invoice_number" => "Fatura nº", + "invoice_number_duplicate" => "Por favor insira um número de fatura única.", + "invoice_sent" => "Enviar Fatura para", + "invoice_total" => "Total da fatura", + "invoice_type_custom_invoice" => "Fatura personalizada (custom_invoice.php)", + "invoice_type_custom_tax_invoice" => "Fatura fiscal personalizada (custom_tax_invoice.php)", + "invoice_type_invoice" => "Fatura (invoice.php)", + "invoice_type_tax_invoice" => "Fatura fiscal (tax_invoice.php)", + "invoice_unsent" => "Fatura não devem ser enviados para", + "invoice_update" => "Recontagem", + "item_insufficient_of_stock" => "Item insuficiente no estoque.", + "item_name" => "Produto", + "item_number" => "Item nº", + "item_out_of_stock" => "Item sem estoque.", + "key_browser" => "", + "key_cancel" => "Cancels Current Quote/Invoice/Sale", + "key_customer_search" => "Customer Search", + "key_finish_quote" => "Finish Quote/Invoice witdout payment", + "key_finish_sale" => "Add Payment and Complete Invoice/Sale", + "key_full" => "", + "key_function" => "Function", + "key_help" => "Shortcuts", + "key_help_modal" => "Open Shortcuts Window", + "key_in" => "", + "key_item_search" => "Item Search", + "key_out" => "", + "key_payment" => "Add Payment", + "key_print" => "", + "key_restore" => "", + "key_search" => "", + "key_suspend" => "Suspend Current Sale", + "key_suspended" => "Show Suspended Sales", + "key_system" => "", + "key_tendered" => "Edit Amount Tendered", + "key_title" => "Sales Keyboard Shortcuts", + "mc" => "", + "mode" => "Registrar como", + "must_enter_numeric" => "Deve entrar valor numérico para montante da proposta apresentada.", + "must_enter_numeric_giftcard" => "Deve entrar valor numérico para o número de cartão presente.", + "new_customer" => "Novo Cliente", + "new_item" => "Novo Item", + "no_description" => "Sem descrição", + "no_filter" => "Todos", + "no_items_in_cart" => "Não há itens na cesta.", + "no_sales_to_display" => "Sem vendas para mostrar.", + "none_selected" => "Você não selecionou nenhuma venda para apagar.", + "nontaxed_ind" => " ", + "not_authorized" => "Esta ação não é autorizada.", + "one_or_multiple" => "venda(s)", + "payment" => "Forma de pagamento", + "payment_amount" => "Conta", + "payment_not_cover_total" => "Valor do pagamento não cobre total.", + "payment_type" => "Tipo", + "payments" => "", + "payments_total" => "Total Pago", + "price" => "Preço", + "print_after_sale" => "Imprimir ao final", + "quantity" => "Quantidade", + "quantity_less_than_reorder_level" => "Aviso, quantidade desejada está abaixo do nível de reabastecimento.", + "quantity_less_than_zero" => "Aviso, Quantidade desejado é insuficiente. Você ainda pode processar a venda mas verifique seu inventário.", + "quantity_of_items" => "Quantidade de {0} itens", + "quote" => "Cotação", + "quote_number" => "Cotação número", + "quote_number_duplicate" => "O número de cotação deve ser exclusivo.", + "quote_sent" => "Cotação enviada para", + "quote_unsent" => "As cotações não foram enviadas para", + "receipt" => "Vendas", + "receipt_no_email" => "Este cliente não possui um endereço de email válido.", + "receipt_number" => "Venda nº", + "receipt_sent" => "Enviar recibo para", + "receipt_unsent" => "Recibo não devem ser enviados para", + "refund" => "Tipo de Reembolso", + "register" => "Registar Venda", + "remove_customer" => "Remover Cliente", + "remove_discount" => "", + "return" => "Devolução", + "rewards" => "Pontos de recompensa", + "rewards_balance" => "Saldo de pontos de recompensa", + "sale" => "Venda", + "sale_by_invoice" => "Venda por fatura", + "sale_for_customer" => "Cliente:", + "sale_time" => "Data", + "sales_tax" => "Imposto de venda", + "sales_total" => "", + "select_customer" => "Selecionar Cliente", + "send_invoice" => "Enviar fatura", + "send_quote" => "enviar cotação", + "send_receipt" => "Enviar recibo", + "send_work_order" => "Enviar ordem de trabalho", + "serial" => "Série", + "service_charge" => "", + "show_due" => "", + "show_invoice" => "fatura", + "show_receipt" => "recibo", + "start_typing_customer_name" => "Nome Cliente ...", + "start_typing_item_name" => "Produto ...", + "stock" => "Estoque", + "stock_location" => "Estoque", + "sub_total" => "Sub-total", + "successfully_deleted" => "Apagado com sucesso", + "successfully_restored" => "Você restaurou com sucesso", + "successfully_suspended_sale" => "Suspenso com sucesso.", + "successfully_updated" => "Venda atualizada.", + "suspend_sale" => "Suspender", + "suspended_doc_id" => "Documento", + "suspended_sale_id" => "ID", + "suspended_sales" => "Suspenso", + "table" => "Mesa", + "takings" => "Vendas", + "tax" => "Taxa", + "tax_id" => "Id imposto", + "tax_invoice" => "Fatura de imposto", + "tax_percent" => "Taxa %", + "taxed_ind" => "Indicador de Taxa de Vendas", + "total" => "Total", + "total_tax_exclusive" => "taxas excluídas", + "transaction_failed" => "Falha na transação Vendas.", + "unable_to_add_item" => "Não é possível adicionar item à venda", + "unsuccessfully_deleted" => "Venda(s) não pode ser excluído.", + "unsuccessfully_restored" => "Falha na restauração de venda (s).", + "unsuccessfully_suspended_sale" => "Suspenso com sucesso.", + "unsuccessfully_updated" => "Venda sem sucesso na atualização.", + "unsuspend" => "Não suspenso", + "unsuspend_and_delete" => "Retornar e apagar", + "update" => "Editar Venda", + "upi" => "UPI", + "visa" => "", + "wholesale" => "", + "work_order" => "Ordem de trabalho", + "work_order_number" => "Número da ordem de trabalho", + "work_order_number_duplicate" => "O número da ordem de serviço deve ser exclusivo.", + "work_order_sent" => "Ordem de trabalho enviada para", + "work_order_unsent" => "A ordem de serviço não foi enviada para", ]; diff --git a/app/Language/pt-BR/Suppliers.php b/app/Language/pt-BR/Suppliers.php index 25fd46bc1..655159a50 100644 --- a/app/Language/pt-BR/Suppliers.php +++ b/app/Language/pt-BR/Suppliers.php @@ -1,24 +1,24 @@ "Conta nº", - "agency_name" => "Nome da Agência", - "cannot_be_deleted" => "Não foi possível excluir fornecedores selecionados, um ou mais dos fornecedores selecionados tem vendas.", - "category" => "Categoria", - "company_name" => "Empresa", - "company_name_required" => "Nome da Empresa é um campo obrigatório.", - "confirm_delete" => "Tem certeza de que deseja excluir os fornecedores selecionados?", - "confirm_restore" => "Tem certeza de que deseja restaurar o (s) fornecedor (es) selecionado (s)?", - "cost" => "Fornecedor de custos", - "error_adding_updating" => "Erro ao adicionar/atualizar fornecedor.", - "goods" => "Fornecedor de bens", - "new" => "Novo Fornecedor", - "none_selected" => "Você não selecionou nenhum fornecedores para excluir.", - "one_or_multiple" => "fornecedor(es)", - "successful_adding" => "fornecedor adicionado com sucesso", - "successful_deleted" => "excluído com sucesso", - "successful_updating" => "Você atualizou com sucesso fornecedor", - "supplier" => "Fornecedor", - "supplier_id" => "Id", - "tax_id" => "Id imposto", - "update" => "Atualização Fornecedor", + "account_number" => "Conta nº", + "agency_name" => "Nome da Agência", + "cannot_be_deleted" => "Não foi possível excluir fornecedores selecionados, um ou mais dos fornecedores selecionados tem vendas.", + "category" => "Categoria", + "company_name" => "Empresa", + "company_name_required" => "Nome da Empresa é um campo obrigatório.", + "confirm_delete" => "Tem certeza de que deseja excluir os fornecedores selecionados?", + "confirm_restore" => "Tem certeza de que deseja restaurar o (s) fornecedor (es) selecionado (s)?", + "cost" => "Fornecedor de custos", + "error_adding_updating" => "Erro ao adicionar/atualizar fornecedor.", + "goods" => "Fornecedor de bens", + "new" => "Novo Fornecedor", + "none_selected" => "Você não selecionou nenhum fornecedores para excluir.", + "one_or_multiple" => "fornecedor(es)", + "successful_adding" => "fornecedor adicionado com sucesso", + "successful_deleted" => "excluído com sucesso", + "successful_updating" => "Você atualizou com sucesso fornecedor", + "supplier" => "Fornecedor", + "supplier_id" => "Id", + "tax_id" => "Id imposto", + "update" => "Atualização Fornecedor", ]; diff --git a/app/Language/pt-BR/Taxes.php b/app/Language/pt-BR/Taxes.php index c27d8c515..296561616 100644 --- a/app/Language/pt-BR/Taxes.php +++ b/app/Language/pt-BR/Taxes.php @@ -1,82 +1,82 @@ "Adicione exceção", - "cascade" => "Cascata", - "cascade_sequence" => "Sequência em cascata", - "city" => "Cidade", - "code" => "Código", - "confirm_delete" => "Tem certeza de que deseja excluir este código de imposto? Essa ação não pode ser desfeita", - "confirm_restore" => "Tem certeza de que deseja restaurar o (s) código (s) de imposto selecionado (s)?", - "default_tax_category" => "Categoria de imposto padrão", - "default_tax_rate" => "Taxa de imposto padrão", - "error_adding_updating" => "Código fiscal adicionar ou atualizar falhou", - "group_seq" => "Sequência do grupo", - "jurisdiction_name" => "Nome da Jurisdição", - "name" => "Nome", - "new" => "Novo Imposto", - "no_taxes" => "", - "no_taxes_to_display" => "Nenhum código de impostos disponível para exibição", - "reporting_authority" => "Autoridade de relatórios", - "round_half_down" => "Metade para baixo", - "round_half_even" => "Metade", - "round_half_odd" => "Meio", - "round_half_up" => "Metade para cima", - "rounding_code" => "Código de Arredondamento", - "sales_tax" => "Imposto sobre vendas", - "sales_tax_by_invoice" => "Imposto sobre vendas por fatura", - "sequence" => "Sequência", - "state" => "Estado", - "successful_deleted" => "Você excluiu com sucesso", - "tax_categories" => "Categoria do imposto", - "tax_categories_configuration" => "Configuração da categoria do imposto", - "tax_categories_saved_successfully" => "Alterações nas categorias de impostos salvas", - "tax_categories_saved_unsuccessfully" => "Alterações nas categorias de impostos não salvas", - "tax_category" => "Categoria de imposto", - "tax_category_code" => "Código de Categoria Fiscal", - "tax_category_duplicate" => "Duplicar categoria tributária", - "tax_category_invalid_chars" => "Caracteres inválidos no nome da categoria do imposto", - "tax_category_name" => "Nome da Categoria Fiscal", - "tax_category_new" => "Nova Categoria Fiscal", - "tax_category_required" => "A categoria fiscal é obrigatória", - "tax_code" => "Código do imposto", - "tax_code_cannot_be_deleted" => "A exclusão do código de imposto falhou", - "tax_code_duplicate" => "Código fiscal duplicado", - "tax_code_invalid_chars" => "Caracteres inválidos no código de imposto", - "tax_code_name" => "Nome do Código Tributário", - "tax_code_required" => "Código Fiscal é um campo obrigatório", - "tax_code_successful_deleted" => "Você excluiu o código do imposto", - "tax_code_successful_updated" => "Você atualizou com sucesso", - "tax_code_successful_updating" => "Você atualizou com sucesso o código tributário", - "tax_code_successfully_added" => "Você adicionou com sucesso", - "tax_code_type" => "Tipo de Código Fiscal", - "tax_codes" => "Códigos Tributários", - "tax_codes_configuration" => "Configuração dos Códigos Fiscais", - "tax_codes_saved_successfully" => "Alterações no Código Fiscal salvas", - "tax_codes_saved_unsuccessfully" => "Alterações no Código Tributário não salvas", - "tax_excluded" => "Imposto excluído", - "tax_group" => "Grupo de impostos", - "tax_group_not_unique" => "Grupo de impostos {0} não é único", - "tax_group_sequence" => "Sequência do Grupo Fiscal", - "tax_included" => "Imposto incluído", - "tax_jurisdiction" => "Jurisdição Fiscal", - "tax_jurisdiction_duplicate" => "Jurisdição fiscal duplicada", - "tax_jurisdiction_invalid_chars" => "Caracteres inválidos no nome da jurisdição", - "tax_jurisdiction_required" => "A jurisdição fiscal é obrigatória", - "tax_jurisdictions" => "Jurisdições Fiscais", - "tax_jurisdictions_configuration" => "Configuração de Jurisdições Fiscais", - "tax_jurisdictions_saved_successfully" => "Alterações na jurisdição fiscal salvas", - "tax_jurisdictions_saved_unsuccessfully" => "Alterações na jurisdição fiscal não salvas", - "tax_rate" => "Taxa de imposto", - "tax_rate_configuration" => "Configuração de taxa de imposto", - "tax_rate_error_adding_updating" => "A adição ou atualização de taxa de imposto falhou", - "tax_rate_numeric" => "Taxa de imposto deve ser um número", - "tax_rate_required" => "Taxa de imposto é um campo obrigatório", - "tax_rate_successful_updated" => "Você atualizou com sucesso", - "tax_rate_successfully_added" => "Você adicionou com sucesso", - "tax_rates" => "Taxas de impostos", - "tax_rates_configuration" => "Configuração das Taxas Fiscais", - "tax_rounding" => "Arredondamento Fiscal", - "tax_type" => "Tipo de imposto", - "update" => "Atualizar taxa de imposto", - "vat_tax" => "Imposto IVA", + "add_exception" => "Adicione exceção", + "cascade" => "Cascata", + "cascade_sequence" => "Sequência em cascata", + "city" => "Cidade", + "code" => "Código", + "confirm_delete" => "Tem certeza de que deseja excluir este código de imposto? Essa ação não pode ser desfeita", + "confirm_restore" => "Tem certeza de que deseja restaurar o (s) código (s) de imposto selecionado (s)?", + "default_tax_category" => "Categoria de imposto padrão", + "default_tax_rate" => "Taxa de imposto padrão", + "error_adding_updating" => "Código fiscal adicionar ou atualizar falhou", + "group_seq" => "Sequência do grupo", + "jurisdiction_name" => "Nome da Jurisdição", + "name" => "Nome", + "new" => "Novo Imposto", + "no_taxes" => "", + "no_taxes_to_display" => "Nenhum código de impostos disponível para exibição", + "reporting_authority" => "Autoridade de relatórios", + "round_half_down" => "Metade para baixo", + "round_half_even" => "Metade", + "round_half_odd" => "Meio", + "round_half_up" => "Metade para cima", + "rounding_code" => "Código de Arredondamento", + "sales_tax" => "Imposto sobre vendas", + "sales_tax_by_invoice" => "Imposto sobre vendas por fatura", + "sequence" => "Sequência", + "state" => "Estado", + "successful_deleted" => "Você excluiu com sucesso", + "tax_categories" => "Categoria do imposto", + "tax_categories_configuration" => "Configuração da categoria do imposto", + "tax_categories_saved_successfully" => "Alterações nas categorias de impostos salvas", + "tax_categories_saved_unsuccessfully" => "Alterações nas categorias de impostos não salvas", + "tax_category" => "Categoria de imposto", + "tax_category_code" => "Código de Categoria Fiscal", + "tax_category_duplicate" => "Duplicar categoria tributária", + "tax_category_invalid_chars" => "Caracteres inválidos no nome da categoria do imposto", + "tax_category_name" => "Nome da Categoria Fiscal", + "tax_category_new" => "Nova Categoria Fiscal", + "tax_category_required" => "A categoria fiscal é obrigatória", + "tax_code" => "Código do imposto", + "tax_code_cannot_be_deleted" => "A exclusão do código de imposto falhou", + "tax_code_duplicate" => "Código fiscal duplicado", + "tax_code_invalid_chars" => "Caracteres inválidos no código de imposto", + "tax_code_name" => "Nome do Código Tributário", + "tax_code_required" => "Código Fiscal é um campo obrigatório", + "tax_code_successful_deleted" => "Você excluiu o código do imposto", + "tax_code_successful_updated" => "Você atualizou com sucesso", + "tax_code_successful_updating" => "Você atualizou com sucesso o código tributário", + "tax_code_successfully_added" => "Você adicionou com sucesso", + "tax_code_type" => "Tipo de Código Fiscal", + "tax_codes" => "Códigos Tributários", + "tax_codes_configuration" => "Configuração dos Códigos Fiscais", + "tax_codes_saved_successfully" => "Alterações no Código Fiscal salvas", + "tax_codes_saved_unsuccessfully" => "Alterações no Código Tributário não salvas", + "tax_excluded" => "Imposto excluído", + "tax_group" => "Grupo de impostos", + "tax_group_not_unique" => "Grupo de impostos {0} não é único", + "tax_group_sequence" => "Sequência do Grupo Fiscal", + "tax_included" => "Imposto incluído", + "tax_jurisdiction" => "Jurisdição Fiscal", + "tax_jurisdiction_duplicate" => "Jurisdição fiscal duplicada", + "tax_jurisdiction_invalid_chars" => "Caracteres inválidos no nome da jurisdição", + "tax_jurisdiction_required" => "A jurisdição fiscal é obrigatória", + "tax_jurisdictions" => "Jurisdições Fiscais", + "tax_jurisdictions_configuration" => "Configuração de Jurisdições Fiscais", + "tax_jurisdictions_saved_successfully" => "Alterações na jurisdição fiscal salvas", + "tax_jurisdictions_saved_unsuccessfully" => "Alterações na jurisdição fiscal não salvas", + "tax_rate" => "Taxa de imposto", + "tax_rate_configuration" => "Configuração de taxa de imposto", + "tax_rate_error_adding_updating" => "A adição ou atualização de taxa de imposto falhou", + "tax_rate_numeric" => "Taxa de imposto deve ser um número", + "tax_rate_required" => "Taxa de imposto é um campo obrigatório", + "tax_rate_successful_updated" => "Você atualizou com sucesso", + "tax_rate_successfully_added" => "Você adicionou com sucesso", + "tax_rates" => "Taxas de impostos", + "tax_rates_configuration" => "Configuração das Taxas Fiscais", + "tax_rounding" => "Arredondamento Fiscal", + "tax_type" => "Tipo de imposto", + "update" => "Atualizar taxa de imposto", + "vat_tax" => "Imposto IVA", ]; diff --git a/app/Language/pt-BR/index.html b/app/Language/pt-BR/index.html index b702fbc39..69df4e1df 100644 --- a/app/Language/pt-BR/index.html +++ b/app/Language/pt-BR/index.html @@ -1,7 +1,7 @@ - 403 Forbidden + 403 Forbidden diff --git a/app/Language/ro/Attributes.php b/app/Language/ro/Attributes.php index d4e749b81..e84667539 100644 --- a/app/Language/ro/Attributes.php +++ b/app/Language/ro/Attributes.php @@ -1,32 +1,32 @@ "Valoare atribut nu poate contine ':' sau '|'", - "confirm_delete" => "Sigur doriti stergerea atributului/atributelor selectat(e)?", - "confirm_restore" => "", - "definition_cannot_be_deleted" => "Nu se poate sterge atributul/atributele selectat(e)", - "definition_error_adding_updating" => "", - "definition_flags" => "Vizibilitate atribut", - "definition_group" => "Grup", - "definition_id" => "Id", - "definition_name" => "Adauga atribut", - "definition_name_required" => "Nume atribut este un camp obligatoriu", - "definition_one_or_multiple" => "atribut(e)", - "definition_successful_adding" => "Ati adaugat articolul cu succes", - "definition_successful_deleted" => "Ati sters cu succes", - "definition_successful_updating" => "Ati actualizat atributul cu succes", - "definition_type" => "Tip Atribut", - "definition_type_required" => "Tip Atribut este camp obligatoriu", - "definition_unit" => "", - "definition_values" => "Valori Atribut", - "new" => "Atribut nou", - "no_attributes_to_display" => "Nu sunt articole de afisat", - "receipt_visibility" => "Chitanta", - "show_in_items" => "Arata in articole", - "show_in_items_visibility" => "Articole", - "show_in_receipt" => "Arata in chitanta", - "show_in_receivings" => "Arata in receptii", - "show_in_receivings_visibility" => "Receptii", - "show_in_sales" => "Arata in vanzari", - "show_in_sales_visibility" => "Vanzari", - "update" => "Actualizare Atribut", + "attribute_value_invalid_chars" => "Valoare atribut nu poate contine ':' sau '|'", + "confirm_delete" => "Sigur doriti stergerea atributului/atributelor selectat(e)?", + "confirm_restore" => "", + "definition_cannot_be_deleted" => "Nu se poate sterge atributul/atributele selectat(e)", + "definition_error_adding_updating" => "", + "definition_flags" => "Vizibilitate atribut", + "definition_group" => "Grup", + "definition_id" => "Id", + "definition_name" => "Adauga atribut", + "definition_name_required" => "Nume atribut este un camp obligatoriu", + "definition_one_or_multiple" => "atribut(e)", + "definition_successful_adding" => "Ati adaugat articolul cu succes", + "definition_successful_deleted" => "Ati sters cu succes", + "definition_successful_updating" => "Ati actualizat atributul cu succes", + "definition_type" => "Tip Atribut", + "definition_type_required" => "Tip Atribut este camp obligatoriu", + "definition_unit" => "", + "definition_values" => "Valori Atribut", + "new" => "Atribut nou", + "no_attributes_to_display" => "Nu sunt articole de afisat", + "receipt_visibility" => "Chitanta", + "show_in_items" => "Arata in articole", + "show_in_items_visibility" => "Articole", + "show_in_receipt" => "Arata in chitanta", + "show_in_receivings" => "Arata in receptii", + "show_in_receivings_visibility" => "Receptii", + "show_in_sales" => "Arata in vanzari", + "show_in_sales_visibility" => "Vanzari", + "update" => "Actualizare Atribut", ]; diff --git a/app/Language/ro/Bootstrap_tables.php b/app/Language/ro/Bootstrap_tables.php index edb527aa4..8c6819005 100644 --- a/app/Language/ro/Bootstrap_tables.php +++ b/app/Language/ro/Bootstrap_tables.php @@ -1,11 +1,11 @@ "Toate", - "columns" => "Coloane", - "hide_show_pagination" => "Ascunde/Arată paginare", - "loading" => "Se încarcă, vă rugăm așteptați...", - "page_from_to" => "Arată {0} până la {1} din {2} rânduri", - "refresh" => "Reîmprospătare", - "rows_per_page" => "{0} rânduri per pagină", - "toggle" => "Comută", + "all" => "Toate", + "columns" => "Coloane", + "hide_show_pagination" => "Ascunde/Arată paginare", + "loading" => "Se încarcă, vă rugăm așteptați...", + "page_from_to" => "Arată {0} până la {1} din {2} rânduri", + "refresh" => "Reîmprospătare", + "rows_per_page" => "{0} rânduri per pagină", + "toggle" => "Comută", ]; diff --git a/app/Language/ro/Calendar.php b/app/Language/ro/Calendar.php index c99e76408..6b282e322 100644 --- a/app/Language/ro/Calendar.php +++ b/app/Language/ro/Calendar.php @@ -1,48 +1,48 @@ "Du", - "mo" => "Lu", - "tu" => "Ma", - "we" => "Mi", - "th" => "Jo", - "fr" => "Vi", - "sa" => "Sâ", - "sun" => "Dum", - "mon" => "Lun", - "tue" => "Mar", - "wed" => "Mie", - "thu" => "Joi", - "fri" => "Vin", - "sat" => "Sâm", - "sunday" => "Duminică", - "monday" => "Luni", - "tuesday" => "Marți", - "wednesday" => "Miercuri", - "thursday" => "Joi", - "friday" => "Vineri", - "saturday" => "Sâmbătă", - "jan" => "Ian", - "feb" => "Feb", - "mar" => "Mar", - "apr" => "Apr", - "may" => "Mai", - "jun" => "Iun", - "jul" => "Iul", - "aug" => "Aug", - "sep" => "Sep", - "oct" => "Oct", - "nov" => "Nov", - "dec" => "Dec", - "january" => "Ianuarie", - "february" => "Februarie", - "march" => "Martie", - "april" => "Aprilie", - "mayl" => "Mai", - "june" => "Iunie", - "july" => "Iulie", - "august" => "August", - "september" => "Septembrie", - "october" => "Octombrie", - "november" => "Noiembrie", - "december" => "Decembrie", + "su" => "Du", + "mo" => "Lu", + "tu" => "Ma", + "we" => "Mi", + "th" => "Jo", + "fr" => "Vi", + "sa" => "Sâ", + "sun" => "Dum", + "mon" => "Lun", + "tue" => "Mar", + "wed" => "Mie", + "thu" => "Joi", + "fri" => "Vin", + "sat" => "Sâm", + "sunday" => "Duminică", + "monday" => "Luni", + "tuesday" => "Marți", + "wednesday" => "Miercuri", + "thursday" => "Joi", + "friday" => "Vineri", + "saturday" => "Sâmbătă", + "jan" => "Ian", + "feb" => "Feb", + "mar" => "Mar", + "apr" => "Apr", + "may" => "Mai", + "jun" => "Iun", + "jul" => "Iul", + "aug" => "Aug", + "sep" => "Sep", + "oct" => "Oct", + "nov" => "Nov", + "dec" => "Dec", + "january" => "Ianuarie", + "february" => "Februarie", + "march" => "Martie", + "april" => "Aprilie", + "mayl" => "Mai", + "june" => "Iunie", + "july" => "Iulie", + "august" => "August", + "september" => "Septembrie", + "october" => "Octombrie", + "november" => "Noiembrie", + "december" => "Decembrie", ]; diff --git a/app/Language/ro/Cashups.php b/app/Language/ro/Cashups.php index 739eb468d..7a130c738 100644 --- a/app/Language/ro/Cashups.php +++ b/app/Language/ro/Cashups.php @@ -1,49 +1,49 @@ "Valoare", - "amount_number" => "Valoare trebuie sa fie numerica", - "amount_required" => "Valoare este un camp obligatoriu.", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "Incasarea nu poate fi stearsa", - "cash_difference" => "", - "close_date" => "Data inchidere", - "close_employee" => "Inchisa de", - "closed_amount_card" => "Carduri", - "closed_amount_cash" => "Inchis Numerar", - "closed_amount_check" => "Cecuri", - "closed_amount_due" => "Taxe", - "closed_amount_giftcard" => "", - "closed_amount_total" => "Total", - "closed_date" => "Data inchidere", - "confirm_delete" => "Sigur doriti stergerea Incasarii selectate?", - "confirm_restore" => "Sigur doriti restaurarea Incasarii/Incasarilor?", - "confirm_submit" => "", - "date_number" => "Data trebuie sa fie numerica", - "date_required" => "Data este camp obligatoriu", - "description" => "Descriere", - "enable_expected" => "", - "error_adding_updating" => "Eroare privind adaugare/actualizare Incasare", - "giftcard" => "", - "id" => "Id", - "info" => "Info Incasare", - "info_employee" => "", - "is_deleted" => "Stearsa", - "new" => "Incasare Noua", - "no_cashups_to_display" => "Nu sunt Incasari de afisat", - "none_selected" => "Nu ati selectat nicio Incasare", - "note" => "Notite", - "one_or_multiple" => "Incasari", - "open_amount_cash" => "Deschide Numerar", - "open_date" => "Data Deschiderii", - "open_employee" => "Deschis de catre", - "opened_date" => "Data deschideri", - "successful_adding" => "Adaugare Incasare reusita", - "successful_deleted" => "Stergere Incasare reusita", - "successful_updating" => "Actualizare Incasare reusita", - "total" => "Total", - "transfer_amount_cash" => "Intrare/Iesire Numerar", - "transfer_amount_cash_minus" => "", - "update" => "Acutualizare Incasare", - "warning" => "", + "amount" => "Valoare", + "amount_number" => "Valoare trebuie sa fie numerica", + "amount_required" => "Valoare este un camp obligatoriu.", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "Incasarea nu poate fi stearsa", + "cash_difference" => "", + "close_date" => "Data inchidere", + "close_employee" => "Inchisa de", + "closed_amount_card" => "Carduri", + "closed_amount_cash" => "Inchis Numerar", + "closed_amount_check" => "Cecuri", + "closed_amount_due" => "Taxe", + "closed_amount_giftcard" => "", + "closed_amount_total" => "Total", + "closed_date" => "Data inchidere", + "confirm_delete" => "Sigur doriti stergerea Incasarii selectate?", + "confirm_restore" => "Sigur doriti restaurarea Incasarii/Incasarilor?", + "confirm_submit" => "", + "date_number" => "Data trebuie sa fie numerica", + "date_required" => "Data este camp obligatoriu", + "description" => "Descriere", + "enable_expected" => "", + "error_adding_updating" => "Eroare privind adaugare/actualizare Incasare", + "giftcard" => "", + "id" => "Id", + "info" => "Info Incasare", + "info_employee" => "", + "is_deleted" => "Stearsa", + "new" => "Incasare Noua", + "no_cashups_to_display" => "Nu sunt Incasari de afisat", + "none_selected" => "Nu ati selectat nicio Incasare", + "note" => "Notite", + "one_or_multiple" => "Incasari", + "open_amount_cash" => "Deschide Numerar", + "open_date" => "Data Deschiderii", + "open_employee" => "Deschis de catre", + "opened_date" => "Data deschideri", + "successful_adding" => "Adaugare Incasare reusita", + "successful_deleted" => "Stergere Incasare reusita", + "successful_updating" => "Actualizare Incasare reusita", + "total" => "Total", + "transfer_amount_cash" => "Intrare/Iesire Numerar", + "transfer_amount_cash_minus" => "", + "update" => "Acutualizare Incasare", + "warning" => "", ]; diff --git a/app/Language/ro/Common.php b/app/Language/ro/Common.php index 51916eecd..eaf7041fe 100644 --- a/app/Language/ro/Common.php +++ b/app/Language/ro/Common.php @@ -1,88 +1,88 @@ "Adresă 1", - "address_2" => "Adresă 2", - "admin" => "", - "city" => "Oraș", - "clerk" => "", - "close" => "Închide", - "color" => "", - "comments" => "Comnetarii", - "common" => "comun", - "confirm_search" => "Ați selectat unul sau mai multe rânduri, acestea nu vor mai fi selectate după căutarea dvs. Sigur doriți să trimiteți această căutare?", - "copyrights" => "© 2010 - {0}", - "correct_errors" => "Corectati va rog erorile identificate inainte de salvare", - "country" => "Țară", - "dashboard" => "", - "date" => "Dată", - "delete" => "Ștergere", - "det" => "detalii", - "download_import_template" => "Descarcă Importează CSV Template (CSV)", - "edit" => "editează", - "email" => "Adresă de email", - "email_invalid_format" => "Adresa de e-mail nu este în formatul corect.", - "export_csv" => "Export CSV", - "export_csv_no" => "Nu", - "export_csv_yes" => "Da", - "fields_required_message" => "Sunt obligatorii câmpurile roșii", - "fields_required_message_unique" => "", - "first_name" => "Nume", - "first_name_required" => "Primul nume este un câmp obligatoriu.", - "first_page" => "Primul", - "gender" => "Gen", - "gender_female" => "F", - "gender_male" => "M", - "gender_undefined" => "", - "icon" => "", - "id" => "Id", - "import" => "Import", - "import_change_file" => "Schimbare", - "import_csv" => "CSV Import", - "import_full_path" => "Calea completa pentru fisierul CSV este necesara", - "import_remove_file" => "Elimină", - "import_select_file" => "Selectează fișier", - "inv" => "inv", - "last_name" => "Numele de familie", - "last_name_required" => "Ultimul nume este un câmp obligatoriu.", - "last_page" => "Ultimul", - "learn_about_project" => "pentru a afla ultimele informații despre proiect.", - "list_of" => "Lista de", - "logo" => "", - "logo_mark" => "", - "logout" => "Deconectare", - "manager" => "", - "migration_needed" => "Migrarea bazei de date catre {0} va incepe dupa autentificare.", - "new" => "Nou", - "no" => "", - "no_persons_to_display" => "Nu există persoane de afișat.", - "none_selected_text" => "[Select]ati", - "or" => "SAU", - "people" => "", - "phone_number" => "Număr de telefon", - "phone_number_required" => "", - "please_visit_my" => "Vă rugăm să vizitați", - "position" => "", - "powered_by" => "Sustinut de", - "price" => "Preț", - "print" => "Printează", - "remove" => "Elimină", - "required" => "Necesar", - "restore" => "Restabilire", - "return_policy" => "Politica de returnare", - "search" => "Caută", - "search_options" => "Opțiuni de căutare", - "searched_for" => "Căutat pentru", - "software_short" => "", - "software_title" => "", - "state" => "Stat", - "submit" => "Depune", - "total_spent" => "Total cheltuit", - "unknown" => "Necunoscut", - "view_recent_sales" => "Vedeți vânzările recente", - "website" => "website", - "welcome" => "Bine ați venit", - "welcome_message" => "Bine ați venit la OSPOS, faceți clic pe un modul de mai jos pentru a începe.", - "yes" => "", - "you_are_using_ospos" => "Folosiți Open Source Point Of Sale versiunea", - "zip" => "Cod poștal", + "address_1" => "Adresă 1", + "address_2" => "Adresă 2", + "admin" => "", + "city" => "Oraș", + "clerk" => "", + "close" => "Închide", + "color" => "", + "comments" => "Comnetarii", + "common" => "comun", + "confirm_search" => "Ați selectat unul sau mai multe rânduri, acestea nu vor mai fi selectate după căutarea dvs. Sigur doriți să trimiteți această căutare?", + "copyrights" => "© 2010 - {0}", + "correct_errors" => "Corectati va rog erorile identificate inainte de salvare", + "country" => "Țară", + "dashboard" => "", + "date" => "Dată", + "delete" => "Ștergere", + "det" => "detalii", + "download_import_template" => "Descarcă Importează CSV Template (CSV)", + "edit" => "editează", + "email" => "Adresă de email", + "email_invalid_format" => "Adresa de e-mail nu este în formatul corect.", + "export_csv" => "Export CSV", + "export_csv_no" => "Nu", + "export_csv_yes" => "Da", + "fields_required_message" => "Sunt obligatorii câmpurile roșii", + "fields_required_message_unique" => "", + "first_name" => "Nume", + "first_name_required" => "Primul nume este un câmp obligatoriu.", + "first_page" => "Primul", + "gender" => "Gen", + "gender_female" => "F", + "gender_male" => "M", + "gender_undefined" => "", + "icon" => "", + "id" => "Id", + "import" => "Import", + "import_change_file" => "Schimbare", + "import_csv" => "CSV Import", + "import_full_path" => "Calea completa pentru fisierul CSV este necesara", + "import_remove_file" => "Elimină", + "import_select_file" => "Selectează fișier", + "inv" => "inv", + "last_name" => "Numele de familie", + "last_name_required" => "Ultimul nume este un câmp obligatoriu.", + "last_page" => "Ultimul", + "learn_about_project" => "pentru a afla ultimele informații despre proiect.", + "list_of" => "Lista de", + "logo" => "", + "logo_mark" => "", + "logout" => "Deconectare", + "manager" => "", + "migration_needed" => "Migrarea bazei de date catre {0} va incepe dupa autentificare.", + "new" => "Nou", + "no" => "", + "no_persons_to_display" => "Nu există persoane de afișat.", + "none_selected_text" => "[Select]ati", + "or" => "SAU", + "people" => "", + "phone_number" => "Număr de telefon", + "phone_number_required" => "", + "please_visit_my" => "Vă rugăm să vizitați", + "position" => "", + "powered_by" => "Sustinut de", + "price" => "Preț", + "print" => "Printează", + "remove" => "Elimină", + "required" => "Necesar", + "restore" => "Restabilire", + "return_policy" => "Politica de returnare", + "search" => "Caută", + "search_options" => "Opțiuni de căutare", + "searched_for" => "Căutat pentru", + "software_short" => "", + "software_title" => "", + "state" => "Stat", + "submit" => "Depune", + "total_spent" => "Total cheltuit", + "unknown" => "Necunoscut", + "view_recent_sales" => "Vedeți vânzările recente", + "website" => "website", + "welcome" => "Bine ați venit", + "welcome_message" => "Bine ați venit la OSPOS, faceți clic pe un modul de mai jos pentru a începe.", + "yes" => "", + "you_are_using_ospos" => "Folosiți Open Source Point Of Sale versiunea", + "zip" => "Cod poștal", ]; diff --git a/app/Language/ro/Config.php b/app/Language/ro/Config.php index e65430ced..5166b1910 100644 --- a/app/Language/ro/Config.php +++ b/app/Language/ro/Config.php @@ -1,330 +1,330 @@ "Adresa companiei", - "address_required" => "Adresa companiei este un câmp obligatoriu.", - "all_set" => "All file permissions are set correctly!", - "allow_duplicate_barcodes" => "Permiteți coduri de bare duplicate", - "apostrophe" => "apostrof", - "backup_button" => "Backup", - "backup_database" => "Rezervă de date", - "barcode" => "Barcode", - "barcode_company" => "Numele Companiei", - "barcode_configuration" => "Configurarea codului de bare", - "barcode_content" => "Conținutul codului de bare", - "barcode_first_row" => "Rândul 1", - "barcode_font" => "Font", - "barcode_formats" => "Formate de intrare", - "barcode_generate_if_empty" => "Generați dacă este gol.", - "barcode_height" => "Înălțime (px)", - "barcode_id" => "Element Id / Nume", - "barcode_info" => "Informații privind configurația codurilor de bare", - "barcode_layout" => "Formatul de coduri de bare", - "barcode_name" => "Nume", - "barcode_number" => "Cod de bare", - "barcode_number_in_row" => "Numar în rânduri", - "barcode_page_cellspacing" => "Afișați spațiul celular în pagină.", - "barcode_page_width" => "Afișați lățimea paginii", - "barcode_price" => "Preț", - "barcode_second_row" => "Rândul 2", - "barcode_third_row" => "Rândul 3", - "barcode_tooltip" => "Avertisment: această caracteristică poate determina importul sau crearea elementelor duplicate. Nu utilizați dacă nu doriți coduri de bare duplicat.", - "barcode_type" => "Tipul codului de bare", - "barcode_width" => "Lățime (px)", - "bottom" => "Subsol", - "cash_button" => "", - "cash_button_1" => "", - "cash_button_2" => "", - "cash_button_3" => "", - "cash_button_4" => "", - "cash_button_5" => "", - "cash_button_6" => "", - "cash_decimals" => "Decimale de numerar", - "cash_decimals_tooltip" => "Dacă decimalele în numerar și decimalele monetare sunt aceleași, atunci nu va avea loc nicio rotunjire a numerarului.", - "cash_rounding" => "Rotunjire numerar", - "category_dropdown" => "", - "center" => "Centru", - "change_apperance_tooltip" => "", - "comma" => "virgula", - "company" => "Numele Companiei", - "company_avatar" => "", - "company_change_image" => "Schimbați imaginea", - "company_logo" => "Sigla companiei", - "company_remove_image" => "Eliminați imaginea", - "company_required" => "Numele companiei este obligatoriu", - "company_select_image" => "Selectati imaginea", - "company_website_url" => "Site-ul Web al companie nu este un URL valid (http://...).", - "country_codes" => "Cod tara", - "country_codes_tooltip" => "Lista separata prin virgula a codurilor tarilor pentru cautarea adresei.", - "currency_code" => "", - "currency_decimals" => "Zecimale Valuta", - "currency_symbol" => "Simbol Valuta", - "current_employee_only" => "", - "customer_reward" => "Recompensa", - "customer_reward_duplicate" => "Recompensa trebuie sa fie unica", - "customer_reward_enable" => "Activatie Recompensare Client", - "customer_reward_invalid_chars" => "Recompensa nu poate contine '_'", - "customer_reward_required" => "Recompensa este un camp obligatoriu", - "customer_sales_tax_support" => "Suport Clienti privind Taxele pe Vanzari", - "date_or_time_format" => "Filtru Data si Timp", - "datetimeformat" => "Format Data si Timp", - "decimal_point" => "", - "default_barcode_font_size_number" => "", - "default_barcode_font_size_required" => "", - "default_barcode_height_number" => "", - "default_barcode_height_required" => "", - "default_barcode_num_in_row_number" => "", - "default_barcode_num_in_row_required" => "", - "default_barcode_page_cellspacing_number" => "", - "default_barcode_page_cellspacing_required" => "", - "default_barcode_page_width_number" => "", - "default_barcode_page_width_required" => "", - "default_barcode_width_number" => "", - "default_barcode_width_required" => "", - "default_item_columns" => "", - "default_origin_tax_code" => "", - "default_receivings_discount" => "", - "default_receivings_discount_number" => "", - "default_receivings_discount_required" => "", - "default_sales_discount" => "", - "default_sales_discount_number" => "", - "default_sales_discount_required" => "", - "default_tax_category" => "", - "default_tax_code" => "", - "default_tax_jurisdiction" => "", - "default_tax_name_number" => "", - "default_tax_name_required" => "", - "default_tax_rate" => "", - "default_tax_rate_1" => "", - "default_tax_rate_2" => "", - "default_tax_rate_3" => "", - "default_tax_rate_number" => "", - "default_tax_rate_required" => "", - "derive_sale_quantity" => "", - "derive_sale_quantity_tooltip" => "", - "dinner_table" => "", - "dinner_table_duplicate" => "", - "dinner_table_enable" => "", - "dinner_table_invalid_chars" => "", - "dinner_table_required" => "", - "dot" => "", - "email" => "", - "email_configuration" => "", - "email_mailpath" => "", - "email_protocol" => "", - "email_receipt_check_behaviour" => "", - "email_receipt_check_behaviour_always" => "", - "email_receipt_check_behaviour_last" => "", - "email_receipt_check_behaviour_never" => "", - "email_smtp_crypto" => "", - "email_smtp_host" => "", - "email_smtp_pass" => "", - "email_smtp_port" => "", - "email_smtp_timeout" => "", - "email_smtp_user" => "", - "enable_avatar" => "", - "enable_avatar_tooltip" => "", - "enable_dropdown_tooltip" => "", - "enable_new_look" => "", - "enable_right_bar" => "", - "enable_right_bar_tooltip" => "", - "enforce_privacy" => "", - "enforce_privacy_tooltip" => "", - "fax" => "", - "file_perm" => "There are problems with file permissions please fix and reload this page.", - "financial_year" => "", - "financial_year_apr" => "", - "financial_year_aug" => "", - "financial_year_dec" => "", - "financial_year_feb" => "", - "financial_year_jan" => "", - "financial_year_jul" => "", - "financial_year_jun" => "", - "financial_year_mar" => "", - "financial_year_may" => "", - "financial_year_nov" => "", - "financial_year_oct" => "", - "financial_year_sep" => "", - "floating_labels" => "", - "gcaptcha_enable" => "", - "gcaptcha_secret_key" => "", - "gcaptcha_secret_key_required" => "", - "gcaptcha_site_key" => "", - "gcaptcha_site_key_required" => "", - "gcaptcha_tooltip" => "", - "general" => "", - "general_configuration" => "", - "giftcard_number" => "", - "giftcard_random" => "", - "giftcard_series" => "", - "image_allowed_file_types" => "", - "image_max_height_tooltip" => "", - "image_max_size_tooltip" => "", - "image_max_width_tooltip" => "", - "image_restrictions" => "", - "include_hsn" => "", - "info" => "", - "info_configuration" => "", - "input_groups" => "", - "integrations" => "", - "integrations_configuration" => "", - "invoice" => "", - "invoice_configuration" => "", - "invoice_default_comments" => "", - "invoice_email_message" => "", - "invoice_enable" => "", - "invoice_printer" => "", - "invoice_type" => "", - "is_readable" => "", - "is_writable" => "is writable, but the permissions are higher than 750.", - "item_markup" => "", - "jsprintsetup_required" => "", - "language" => "", - "last_used_invoice_number" => "", - "last_used_quote_number" => "", - "last_used_work_order_number" => "", - "left" => "", - "license" => "", - "license_configuration" => "", - "line_sequence" => "", - "lines_per_page" => "", - "lines_per_page_number" => "", - "lines_per_page_required" => "", - "locale" => "", - "locale_configuration" => "", - "locale_info" => "", - "location" => "", - "location_configuration" => "", - "location_info" => "", - "login_form" => "", - "logout" => "", - "mailchimp" => "", - "mailchimp_api_key" => "", - "mailchimp_configuration" => "", - "mailchimp_key_successfully" => "", - "mailchimp_key_unsuccessfully" => "", - "mailchimp_lists" => "", - "mailchimp_tooltip" => "", - "message" => "", - "message_configuration" => "", - "msg_msg" => "", - "msg_msg_placeholder" => "", - "msg_pwd" => "", - "msg_pwd_required" => "", - "msg_src" => "", - "msg_src_required" => "", - "msg_uid" => "", - "msg_uid_required" => "", - "multi_pack_enabled" => "", - "no_risk" => "No security/vulnerability risks.", - "none" => "", - "notify_alignment" => "", - "number_format" => "", - "number_locale" => "", - "number_locale_invalid" => "", - "number_locale_required" => "", - "number_locale_tooltip" => "", - "os_timezone" => "", - "ospos_info" => "", - "payment_options_order" => "", - "perm_risk" => "Permissions higher than 750 leaves this software at risk.", - "phone" => "", - "phone_required" => "", - "print_bottom_margin" => "", - "print_bottom_margin_number" => "", - "print_bottom_margin_required" => "", - "print_delay_autoreturn" => "", - "print_delay_autoreturn_number" => "", - "print_delay_autoreturn_required" => "", - "print_footer" => "", - "print_header" => "", - "print_left_margin" => "", - "print_left_margin_number" => "", - "print_left_margin_required" => "", - "print_receipt_check_behaviour" => "", - "print_receipt_check_behaviour_always" => "", - "print_receipt_check_behaviour_last" => "", - "print_receipt_check_behaviour_never" => "", - "print_right_margin" => "", - "print_right_margin_number" => "", - "print_right_margin_required" => "", - "print_silently" => "", - "print_top_margin" => "", - "print_top_margin_number" => "", - "print_top_margin_required" => "", - "quantity_decimals" => "", - "quick_cash_enable" => "", - "quote_default_comments" => "", - "receipt" => "", - "receipt_category" => "", - "receipt_configuration" => "", - "receipt_default" => "", - "receipt_font_size" => "", - "receipt_font_size_number" => "", - "receipt_font_size_required" => "", - "receipt_info" => "", - "receipt_printer" => "", - "receipt_short" => "", - "receipt_show_company_name" => "", - "receipt_show_description" => "", - "receipt_show_serialnumber" => "", - "receipt_show_tax_ind" => "", - "receipt_show_taxes" => "", - "receipt_show_total_discount" => "", - "receipt_template" => "", - "receiving_calculate_average_price" => "", - "recv_invoice_format" => "", - "register_mode_default" => "", - "report_an_issue" => "", - "return_policy_required" => "", - "reward" => "", - "reward_configuration" => "", - "right" => "", - "sales_invoice_format" => "", - "sales_quote_format" => "", - "saved_successfully" => "", - "saved_unsuccessfully" => "", - "security_issue" => "Security Vulnerability Warning", - "server_notice" => "Please use the below info for issue reporting.", - "service_charge" => "", - "show_due_enable" => "", - "show_office_group" => "", - "statistics" => "", - "statistics_tooltip" => "", - "stock_location" => "", - "stock_location_duplicate" => "", - "stock_location_invalid_chars" => "", - "stock_location_required" => "", - "suggestions_fifth_column" => "", - "suggestions_first_column" => "", - "suggestions_fourth_column" => "", - "suggestions_layout" => "", - "suggestions_second_column" => "", - "suggestions_third_column" => "", - "system_conf" => "Setup & Conf", - "system_info" => "System Info", - "table" => "", - "table_configuration" => "", - "takings_printer" => "", - "tax" => "", - "tax_category" => "", - "tax_category_duplicate" => "", - "tax_category_invalid_chars" => "", - "tax_category_required" => "", - "tax_category_used" => "", - "tax_configuration" => "", - "tax_decimals" => "", - "tax_id" => "", - "tax_included" => "", - "theme" => "", - "theme_preview" => "", - "thousands_separator" => "", - "timezone" => "", - "timezone_error" => "", - "top" => "", - "use_destination_based_tax" => "", - "user_timezone" => "", - "website" => "", - "wholesale_markup" => "", - "work_order_enable" => "", - "work_order_format" => "", + "address" => "Adresa companiei", + "address_required" => "Adresa companiei este un câmp obligatoriu.", + "all_set" => "All file permissions are set correctly!", + "allow_duplicate_barcodes" => "Permiteți coduri de bare duplicate", + "apostrophe" => "apostrof", + "backup_button" => "Backup", + "backup_database" => "Rezervă de date", + "barcode" => "Barcode", + "barcode_company" => "Numele Companiei", + "barcode_configuration" => "Configurarea codului de bare", + "barcode_content" => "Conținutul codului de bare", + "barcode_first_row" => "Rândul 1", + "barcode_font" => "Font", + "barcode_formats" => "Formate de intrare", + "barcode_generate_if_empty" => "Generați dacă este gol.", + "barcode_height" => "Înălțime (px)", + "barcode_id" => "Element Id / Nume", + "barcode_info" => "Informații privind configurația codurilor de bare", + "barcode_layout" => "Formatul de coduri de bare", + "barcode_name" => "Nume", + "barcode_number" => "Cod de bare", + "barcode_number_in_row" => "Numar în rânduri", + "barcode_page_cellspacing" => "Afișați spațiul celular în pagină.", + "barcode_page_width" => "Afișați lățimea paginii", + "barcode_price" => "Preț", + "barcode_second_row" => "Rândul 2", + "barcode_third_row" => "Rândul 3", + "barcode_tooltip" => "Avertisment: această caracteristică poate determina importul sau crearea elementelor duplicate. Nu utilizați dacă nu doriți coduri de bare duplicat.", + "barcode_type" => "Tipul codului de bare", + "barcode_width" => "Lățime (px)", + "bottom" => "Subsol", + "cash_button" => "", + "cash_button_1" => "", + "cash_button_2" => "", + "cash_button_3" => "", + "cash_button_4" => "", + "cash_button_5" => "", + "cash_button_6" => "", + "cash_decimals" => "Decimale de numerar", + "cash_decimals_tooltip" => "Dacă decimalele în numerar și decimalele monetare sunt aceleași, atunci nu va avea loc nicio rotunjire a numerarului.", + "cash_rounding" => "Rotunjire numerar", + "category_dropdown" => "", + "center" => "Centru", + "change_apperance_tooltip" => "", + "comma" => "virgula", + "company" => "Numele Companiei", + "company_avatar" => "", + "company_change_image" => "Schimbați imaginea", + "company_logo" => "Sigla companiei", + "company_remove_image" => "Eliminați imaginea", + "company_required" => "Numele companiei este obligatoriu", + "company_select_image" => "Selectati imaginea", + "company_website_url" => "Site-ul Web al companie nu este un URL valid (http://...).", + "country_codes" => "Cod tara", + "country_codes_tooltip" => "Lista separata prin virgula a codurilor tarilor pentru cautarea adresei.", + "currency_code" => "", + "currency_decimals" => "Zecimale Valuta", + "currency_symbol" => "Simbol Valuta", + "current_employee_only" => "", + "customer_reward" => "Recompensa", + "customer_reward_duplicate" => "Recompensa trebuie sa fie unica", + "customer_reward_enable" => "Activatie Recompensare Client", + "customer_reward_invalid_chars" => "Recompensa nu poate contine '_'", + "customer_reward_required" => "Recompensa este un camp obligatoriu", + "customer_sales_tax_support" => "Suport Clienti privind Taxele pe Vanzari", + "date_or_time_format" => "Filtru Data si Timp", + "datetimeformat" => "Format Data si Timp", + "decimal_point" => "", + "default_barcode_font_size_number" => "", + "default_barcode_font_size_required" => "", + "default_barcode_height_number" => "", + "default_barcode_height_required" => "", + "default_barcode_num_in_row_number" => "", + "default_barcode_num_in_row_required" => "", + "default_barcode_page_cellspacing_number" => "", + "default_barcode_page_cellspacing_required" => "", + "default_barcode_page_width_number" => "", + "default_barcode_page_width_required" => "", + "default_barcode_width_number" => "", + "default_barcode_width_required" => "", + "default_item_columns" => "", + "default_origin_tax_code" => "", + "default_receivings_discount" => "", + "default_receivings_discount_number" => "", + "default_receivings_discount_required" => "", + "default_sales_discount" => "", + "default_sales_discount_number" => "", + "default_sales_discount_required" => "", + "default_tax_category" => "", + "default_tax_code" => "", + "default_tax_jurisdiction" => "", + "default_tax_name_number" => "", + "default_tax_name_required" => "", + "default_tax_rate" => "", + "default_tax_rate_1" => "", + "default_tax_rate_2" => "", + "default_tax_rate_3" => "", + "default_tax_rate_number" => "", + "default_tax_rate_required" => "", + "derive_sale_quantity" => "", + "derive_sale_quantity_tooltip" => "", + "dinner_table" => "", + "dinner_table_duplicate" => "", + "dinner_table_enable" => "", + "dinner_table_invalid_chars" => "", + "dinner_table_required" => "", + "dot" => "", + "email" => "", + "email_configuration" => "", + "email_mailpath" => "", + "email_protocol" => "", + "email_receipt_check_behaviour" => "", + "email_receipt_check_behaviour_always" => "", + "email_receipt_check_behaviour_last" => "", + "email_receipt_check_behaviour_never" => "", + "email_smtp_crypto" => "", + "email_smtp_host" => "", + "email_smtp_pass" => "", + "email_smtp_port" => "", + "email_smtp_timeout" => "", + "email_smtp_user" => "", + "enable_avatar" => "", + "enable_avatar_tooltip" => "", + "enable_dropdown_tooltip" => "", + "enable_new_look" => "", + "enable_right_bar" => "", + "enable_right_bar_tooltip" => "", + "enforce_privacy" => "", + "enforce_privacy_tooltip" => "", + "fax" => "", + "file_perm" => "There are problems with file permissions please fix and reload this page.", + "financial_year" => "", + "financial_year_apr" => "", + "financial_year_aug" => "", + "financial_year_dec" => "", + "financial_year_feb" => "", + "financial_year_jan" => "", + "financial_year_jul" => "", + "financial_year_jun" => "", + "financial_year_mar" => "", + "financial_year_may" => "", + "financial_year_nov" => "", + "financial_year_oct" => "", + "financial_year_sep" => "", + "floating_labels" => "", + "gcaptcha_enable" => "", + "gcaptcha_secret_key" => "", + "gcaptcha_secret_key_required" => "", + "gcaptcha_site_key" => "", + "gcaptcha_site_key_required" => "", + "gcaptcha_tooltip" => "", + "general" => "", + "general_configuration" => "", + "giftcard_number" => "", + "giftcard_random" => "", + "giftcard_series" => "", + "image_allowed_file_types" => "", + "image_max_height_tooltip" => "", + "image_max_size_tooltip" => "", + "image_max_width_tooltip" => "", + "image_restrictions" => "", + "include_hsn" => "", + "info" => "", + "info_configuration" => "", + "input_groups" => "", + "integrations" => "", + "integrations_configuration" => "", + "invoice" => "", + "invoice_configuration" => "", + "invoice_default_comments" => "", + "invoice_email_message" => "", + "invoice_enable" => "", + "invoice_printer" => "", + "invoice_type" => "", + "is_readable" => "", + "is_writable" => "is writable, but the permissions are higher than 750.", + "item_markup" => "", + "jsprintsetup_required" => "", + "language" => "", + "last_used_invoice_number" => "", + "last_used_quote_number" => "", + "last_used_work_order_number" => "", + "left" => "", + "license" => "", + "license_configuration" => "", + "line_sequence" => "", + "lines_per_page" => "", + "lines_per_page_number" => "", + "lines_per_page_required" => "", + "locale" => "", + "locale_configuration" => "", + "locale_info" => "", + "location" => "", + "location_configuration" => "", + "location_info" => "", + "login_form" => "", + "logout" => "", + "mailchimp" => "", + "mailchimp_api_key" => "", + "mailchimp_configuration" => "", + "mailchimp_key_successfully" => "", + "mailchimp_key_unsuccessfully" => "", + "mailchimp_lists" => "", + "mailchimp_tooltip" => "", + "message" => "", + "message_configuration" => "", + "msg_msg" => "", + "msg_msg_placeholder" => "", + "msg_pwd" => "", + "msg_pwd_required" => "", + "msg_src" => "", + "msg_src_required" => "", + "msg_uid" => "", + "msg_uid_required" => "", + "multi_pack_enabled" => "", + "no_risk" => "No security/vulnerability risks.", + "none" => "", + "notify_alignment" => "", + "number_format" => "", + "number_locale" => "", + "number_locale_invalid" => "", + "number_locale_required" => "", + "number_locale_tooltip" => "", + "os_timezone" => "", + "ospos_info" => "", + "payment_options_order" => "", + "perm_risk" => "Permissions higher than 750 leaves this software at risk.", + "phone" => "", + "phone_required" => "", + "print_bottom_margin" => "", + "print_bottom_margin_number" => "", + "print_bottom_margin_required" => "", + "print_delay_autoreturn" => "", + "print_delay_autoreturn_number" => "", + "print_delay_autoreturn_required" => "", + "print_footer" => "", + "print_header" => "", + "print_left_margin" => "", + "print_left_margin_number" => "", + "print_left_margin_required" => "", + "print_receipt_check_behaviour" => "", + "print_receipt_check_behaviour_always" => "", + "print_receipt_check_behaviour_last" => "", + "print_receipt_check_behaviour_never" => "", + "print_right_margin" => "", + "print_right_margin_number" => "", + "print_right_margin_required" => "", + "print_silently" => "", + "print_top_margin" => "", + "print_top_margin_number" => "", + "print_top_margin_required" => "", + "quantity_decimals" => "", + "quick_cash_enable" => "", + "quote_default_comments" => "", + "receipt" => "", + "receipt_category" => "", + "receipt_configuration" => "", + "receipt_default" => "", + "receipt_font_size" => "", + "receipt_font_size_number" => "", + "receipt_font_size_required" => "", + "receipt_info" => "", + "receipt_printer" => "", + "receipt_short" => "", + "receipt_show_company_name" => "", + "receipt_show_description" => "", + "receipt_show_serialnumber" => "", + "receipt_show_tax_ind" => "", + "receipt_show_taxes" => "", + "receipt_show_total_discount" => "", + "receipt_template" => "", + "receiving_calculate_average_price" => "", + "recv_invoice_format" => "", + "register_mode_default" => "", + "report_an_issue" => "", + "return_policy_required" => "", + "reward" => "", + "reward_configuration" => "", + "right" => "", + "sales_invoice_format" => "", + "sales_quote_format" => "", + "saved_successfully" => "", + "saved_unsuccessfully" => "", + "security_issue" => "Security Vulnerability Warning", + "server_notice" => "Please use the below info for issue reporting.", + "service_charge" => "", + "show_due_enable" => "", + "show_office_group" => "", + "statistics" => "", + "statistics_tooltip" => "", + "stock_location" => "", + "stock_location_duplicate" => "", + "stock_location_invalid_chars" => "", + "stock_location_required" => "", + "suggestions_fifth_column" => "", + "suggestions_first_column" => "", + "suggestions_fourth_column" => "", + "suggestions_layout" => "", + "suggestions_second_column" => "", + "suggestions_third_column" => "", + "system_conf" => "Setup & Conf", + "system_info" => "System Info", + "table" => "", + "table_configuration" => "", + "takings_printer" => "", + "tax" => "", + "tax_category" => "", + "tax_category_duplicate" => "", + "tax_category_invalid_chars" => "", + "tax_category_required" => "", + "tax_category_used" => "", + "tax_configuration" => "", + "tax_decimals" => "", + "tax_id" => "", + "tax_included" => "", + "theme" => "", + "theme_preview" => "", + "thousands_separator" => "", + "timezone" => "", + "timezone_error" => "", + "top" => "", + "use_destination_based_tax" => "", + "user_timezone" => "", + "website" => "", + "wholesale_markup" => "", + "work_order_enable" => "", + "work_order_format" => "", ]; diff --git a/app/Language/ro/Customers.php b/app/Language/ro/Customers.php index 9344daa9b..ec334657d 100644 --- a/app/Language/ro/Customers.php +++ b/app/Language/ro/Customers.php @@ -1,56 +1,56 @@ "Cont #", - "account_number_duplicate" => "Numarul de cont exista deja in baza de date.", - "available_points" => "Puncte disponibile", - "available_points_value" => "", - "average" => "Cheltuit mediu", - "avg_discount" => "Reducere medie", - "basic_information" => "Informatii", - "cannot_be_deleted" => "Nu se pot sterge clientii selectati, unul sau mai multi din clientii selectati au vanzari.", - "company_name" => "Companie", - "confirm_delete" => "Sunteti sigur ca doriti stergerea clientului selectat/clientilor selectati?", - "confirm_restore" => "Sunteti sigur ca doriti restabilirea clientului selectat / clientilor selectati?", - "consent" => "Confirmare Inregistrare", - "consent_required" => "Confirmare Inregistrare este un camp obligatoriu.", - "csv_import_failed" => "Importare CSV esuata", - "csv_import_nodata_wrongformat" => "Fisierul incarcat nu contine date sau are format incorect.", - "csv_import_partially_failed" => "Importare client cu succes avand cateva esecuri:", - "csv_import_success" => "Importare cu succes Client.", - "customer" => "Client", - "date" => "Data", - "discount" => "Reducere", - "discount_fixed" => "Reducere fixa", - "discount_percent" => "Reducere procentuala", - "discount_type" => "Tip Reducere", - "email_duplicate" => "Adresa de email exista deja in baza de date.", - "employee" => "Angajat", - "error_adding_updating" => "Adugare sau actualizare Client esuata.", - "import_items_csv" => "Importare Client din CSV", - "mailchimp_activity_click" => "Click email", - "mailchimp_activity_lastopen" => "Ultima deschidere email", - "mailchimp_activity_open" => "Deschide email", - "mailchimp_activity_total" => "Email trimis", - "mailchimp_activity_unopen" => "Email nedeschis", - "mailchimp_email_client" => "Client de email", - "mailchimp_info" => "MailChimp", - "mailchimp_member_rating" => "Evaluare", - "mailchimp_status" => "Stare", - "mailchimp_vip" => "VIP", - "max" => "Maxim cheltuit", - "min" => "Minim cheltuit", - "new" => "Client nou", - "none_selected" => "Nu ati selectat niciun client de sters.", - "one_or_multiple" => "client(i)", - "quantity" => "Cantitate", - "stats_info" => "Statistici", - "successful_adding" => "Ati adaugat cu succes clientul", - "successful_deleted" => "Ati sters cu succes", - "successful_updating" => "Ati actualizat cu succes clientul", - "tax_code" => "Cod taxa", - "tax_id" => "Id Taxa", - "taxable" => "Taxabil", - "total" => "Total cheltuit", - "update" => "Actualizeaza Client", - "rewards_package" => "Pachet recompense", + "account_number" => "Cont #", + "account_number_duplicate" => "Numarul de cont exista deja in baza de date.", + "available_points" => "Puncte disponibile", + "available_points_value" => "", + "average" => "Cheltuit mediu", + "avg_discount" => "Reducere medie", + "basic_information" => "Informatii", + "cannot_be_deleted" => "Nu se pot sterge clientii selectati, unul sau mai multi din clientii selectati au vanzari.", + "company_name" => "Companie", + "confirm_delete" => "Sunteti sigur ca doriti stergerea clientului selectat/clientilor selectati?", + "confirm_restore" => "Sunteti sigur ca doriti restabilirea clientului selectat / clientilor selectati?", + "consent" => "Confirmare Inregistrare", + "consent_required" => "Confirmare Inregistrare este un camp obligatoriu.", + "csv_import_failed" => "Importare CSV esuata", + "csv_import_nodata_wrongformat" => "Fisierul incarcat nu contine date sau are format incorect.", + "csv_import_partially_failed" => "Importare client cu succes avand cateva esecuri:", + "csv_import_success" => "Importare cu succes Client.", + "customer" => "Client", + "date" => "Data", + "discount" => "Reducere", + "discount_fixed" => "Reducere fixa", + "discount_percent" => "Reducere procentuala", + "discount_type" => "Tip Reducere", + "email_duplicate" => "Adresa de email exista deja in baza de date.", + "employee" => "Angajat", + "error_adding_updating" => "Adugare sau actualizare Client esuata.", + "import_items_csv" => "Importare Client din CSV", + "mailchimp_activity_click" => "Click email", + "mailchimp_activity_lastopen" => "Ultima deschidere email", + "mailchimp_activity_open" => "Deschide email", + "mailchimp_activity_total" => "Email trimis", + "mailchimp_activity_unopen" => "Email nedeschis", + "mailchimp_email_client" => "Client de email", + "mailchimp_info" => "MailChimp", + "mailchimp_member_rating" => "Evaluare", + "mailchimp_status" => "Stare", + "mailchimp_vip" => "VIP", + "max" => "Maxim cheltuit", + "min" => "Minim cheltuit", + "new" => "Client nou", + "none_selected" => "Nu ati selectat niciun client de sters.", + "one_or_multiple" => "client(i)", + "quantity" => "Cantitate", + "stats_info" => "Statistici", + "successful_adding" => "Ati adaugat cu succes clientul", + "successful_deleted" => "Ati sters cu succes", + "successful_updating" => "Ati actualizat cu succes clientul", + "tax_code" => "Cod taxa", + "tax_id" => "Id Taxa", + "taxable" => "Taxabil", + "total" => "Total cheltuit", + "update" => "Actualizeaza Client", + "rewards_package" => "Pachet recompense", ]; diff --git a/app/Language/ro/Datepicker.php b/app/Language/ro/Datepicker.php index e8be7a6c0..7c8e18902 100644 --- a/app/Language/ro/Datepicker.php +++ b/app/Language/ro/Datepicker.php @@ -1,23 +1,23 @@ "", - "apply" => "", - "cancel" => "", - "custom" => "", - "from" => "", - "last_30" => "", - "last_7" => "", - "last_financial_year" => "", - "last_month" => "", - "last_year" => "", - "same_month_last_year" => "", - "same_month_to_same_day_last_year" => "", - "this_financial_year" => "", - "this_month" => "", - "this_year" => "", - "to" => "", - "today" => "", - "today_last_year" => "", - "weekstart" => "", - "yesterday" => "", + "all_time" => "", + "apply" => "", + "cancel" => "", + "custom" => "", + "from" => "", + "last_30" => "", + "last_7" => "", + "last_financial_year" => "", + "last_month" => "", + "last_year" => "", + "same_month_last_year" => "", + "same_month_to_same_day_last_year" => "", + "this_financial_year" => "", + "this_month" => "", + "this_year" => "", + "to" => "", + "today" => "", + "today_last_year" => "", + "weekstart" => "", + "yesterday" => "", ]; diff --git a/app/Language/ro/Employees.php b/app/Language/ro/Employees.php index 6f597ab5b..5aa444ff4 100644 --- a/app/Language/ro/Employees.php +++ b/app/Language/ro/Employees.php @@ -1,44 +1,44 @@ "", - "basic_information" => "", - "cannot_be_deleted" => "", - "change_employee" => "", - "change_password" => "", - "clerk" => "", - "commission" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "current_password" => "", - "current_password_invalid" => "", - "employee" => "", - "error_adding_updating" => "", - "error_deleting_demo_admin" => "", - "error_updating_demo_admin" => "", - "language" => "", - "login_info" => "", - "manager" => "", - "new" => "", - "none_selected" => "", - "one_or_multiple" => "", - "password" => "", - "password_minlength" => "", - "password_must_match" => "", - "password_not_must_match" => "", - "password_required" => "", - "permission_desc" => "", - "permission_info" => "", - "repeat_password" => "", - "subpermission_required" => "", - "successful_adding" => "", - "successful_change_password" => "", - "successful_deleted" => "", - "successful_updating" => "", - "system_language" => "", - "unsuccessful_change_password" => "", - "update" => "", - "username" => "", - "username_duplicate" => "", - "username_minlength" => "", - "username_required" => "", + "administrator" => "", + "basic_information" => "", + "cannot_be_deleted" => "", + "change_employee" => "", + "change_password" => "", + "clerk" => "", + "commission" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "current_password" => "", + "current_password_invalid" => "", + "employee" => "", + "error_adding_updating" => "", + "error_deleting_demo_admin" => "", + "error_updating_demo_admin" => "", + "language" => "", + "login_info" => "", + "manager" => "", + "new" => "", + "none_selected" => "", + "one_or_multiple" => "", + "password" => "", + "password_minlength" => "", + "password_must_match" => "", + "password_not_must_match" => "", + "password_required" => "", + "permission_desc" => "", + "permission_info" => "", + "repeat_password" => "", + "subpermission_required" => "", + "successful_adding" => "", + "successful_change_password" => "", + "successful_deleted" => "", + "successful_updating" => "", + "system_language" => "", + "unsuccessful_change_password" => "", + "update" => "", + "username" => "", + "username_duplicate" => "", + "username_minlength" => "", + "username_required" => "", ]; diff --git a/app/Language/ro/Enum.php b/app/Language/ro/Enum.php index c39655c3b..1ed7e9313 100644 --- a/app/Language/ro/Enum.php +++ b/app/Language/ro/Enum.php @@ -1,10 +1,10 @@ "", - "half_even" => "", - "half_five" => "", - "half_odd" => "", - "half_up" => "", - "round_down" => "", - "round_up" => "", + "half_down" => "", + "half_even" => "", + "half_five" => "", + "half_odd" => "", + "half_up" => "", + "round_down" => "", + "round_up" => "", ]; diff --git a/app/Language/ro/Error.php b/app/Language/ro/Error.php index 8fcd4d7f0..480f89107 100644 --- a/app/Language/ro/Error.php +++ b/app/Language/ro/Error.php @@ -1,5 +1,5 @@ "Nu aveti permisiunea de acces a modulului numit", - "unknown" => "Eroare neasteptata", + "no_permission_module" => "Nu aveti permisiunea de acces a modulului numit", + "unknown" => "Eroare neasteptata", ]; diff --git a/app/Language/ro/Expenses.php b/app/Language/ro/Expenses.php index e9e237376..8ef1fe954 100644 --- a/app/Language/ro/Expenses.php +++ b/app/Language/ro/Expenses.php @@ -1,50 +1,50 @@ "", - "amount" => "", - "amount_number" => "", - "amount_required" => "", - "by_category" => "", - "cannot_be_deleted" => "", - "cash" => "", - "cash_filter" => "", - "categories_name" => "", - "category_required" => "", - "check" => "", - "check_filter" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "credit" => "", - "credit_filter" => "", - "date" => "", - "date_number" => "", - "date_required" => "", - "debit" => "", - "debit_filter" => "", - "description" => "", - "due" => "", - "due_filter" => "", - "employee" => "", - "error_adding_updating" => "", - "expense_id" => "", - "expenses_employee" => "", - "info" => "", - "ip_address" => "", - "is_deleted" => "", - "name_required" => "", - "new" => "", - "new_supplier" => "", - "no_expenses_to_display" => "", - "none_selected" => "", - "one_or_multiple" => "", - "payment" => "", - "start_typing_supplier_name" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "supplier_name" => "", - "supplier_tax_code" => "", - "tax_amount" => "", - "tax_amount_number" => "", - "update" => "", + "add_item" => "", + "amount" => "", + "amount_number" => "", + "amount_required" => "", + "by_category" => "", + "cannot_be_deleted" => "", + "cash" => "", + "cash_filter" => "", + "categories_name" => "", + "category_required" => "", + "check" => "", + "check_filter" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "credit" => "", + "credit_filter" => "", + "date" => "", + "date_number" => "", + "date_required" => "", + "debit" => "", + "debit_filter" => "", + "description" => "", + "due" => "", + "due_filter" => "", + "employee" => "", + "error_adding_updating" => "", + "expense_id" => "", + "expenses_employee" => "", + "info" => "", + "ip_address" => "", + "is_deleted" => "", + "name_required" => "", + "new" => "", + "new_supplier" => "", + "no_expenses_to_display" => "", + "none_selected" => "", + "one_or_multiple" => "", + "payment" => "", + "start_typing_supplier_name" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "supplier_name" => "", + "supplier_tax_code" => "", + "tax_amount" => "", + "tax_amount_number" => "", + "update" => "", ]; diff --git a/app/Language/ro/Expenses_categories.php b/app/Language/ro/Expenses_categories.php index 03169e528..7d3b08c27 100644 --- a/app/Language/ro/Expenses_categories.php +++ b/app/Language/ro/Expenses_categories.php @@ -1,22 +1,22 @@ "", - "add_item" => "", - "cannot_be_deleted" => "", - "category_id" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "description" => "", - "error_adding_updating" => "", - "info" => "", - "name" => "", - "new" => "", - "no_expenses_categories_to_display" => "", - "none_selected" => "", - "one_or_multiple" => "", - "quantity" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "update" => "", + "category_name_required" => "", + "add_item" => "", + "cannot_be_deleted" => "", + "category_id" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "description" => "", + "error_adding_updating" => "", + "info" => "", + "name" => "", + "new" => "", + "no_expenses_categories_to_display" => "", + "none_selected" => "", + "one_or_multiple" => "", + "quantity" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "update" => "", ]; diff --git a/app/Language/ro/Giftcards.php b/app/Language/ro/Giftcards.php index f1b1bd322..00d291498 100644 --- a/app/Language/ro/Giftcards.php +++ b/app/Language/ro/Giftcards.php @@ -1,71 +1,71 @@ "", - "allow_alt_description" => "", - "bulk_edit" => "", - "cannot_be_deleted" => "", - "cannot_find_giftcard" => "", - "cannot_use" => "", - "card_value" => "", - "category" => "", - "change_all_to_allow_alt_desc" => "", - "change_all_to_not_allow_allow_desc" => "", - "change_all_to_serialized" => "", - "change_all_to_unserialized" => "", - "confirm_bulk_edit" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "cost_price" => "", - "count" => "", - "csv_import_failed" => "", - "current_quantity" => "", - "description" => "", - "details_count" => "", - "do_nothing" => "", - "edit_fields_you_want_to_update" => "", - "edit_multiple_giftcards" => "", - "error_adding_updating" => "", - "error_updating_multiple" => "", - "generate_barcodes" => "", - "giftcard" => "", - "giftcard_number" => "", - "info_provided_by" => "", - "inventory_comments" => "", - "is_serialized" => "", - "low_inventory_giftcards" => "", - "manually_editing_of_quantity" => "", - "must_select_giftcard_for_barcode" => "", - "new" => "", - "no_description_giftcards" => "", - "no_giftcards_to_display" => "", - "none" => "", - "none_selected" => "", - "number" => "", - "number_information" => "", - "number_required" => "", - "one_or_multiple" => "", - "person_id" => "", - "quantity" => "", - "quantity_required" => "", - "remaining_balance" => "", - "reorder_level" => "", - "retrive_giftcard_info" => "", - "sales_tax_1" => "", - "sales_tax_2" => "", - "serialized_giftcards" => "", - "successful_adding" => "", - "successful_bulk_edit" => "", - "successful_deleted" => "", - "successful_updating" => "", - "supplier" => "", - "tax_1" => "", - "tax_2" => "", - "tax_percent" => "", - "tax_percents" => "", - "unit_price" => "", - "upc_database" => "", - "update" => "", - "use_inventory_menu" => "", - "value" => "", - "value_required" => "", + "add_minus" => "", + "allow_alt_description" => "", + "bulk_edit" => "", + "cannot_be_deleted" => "", + "cannot_find_giftcard" => "", + "cannot_use" => "", + "card_value" => "", + "category" => "", + "change_all_to_allow_alt_desc" => "", + "change_all_to_not_allow_allow_desc" => "", + "change_all_to_serialized" => "", + "change_all_to_unserialized" => "", + "confirm_bulk_edit" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "cost_price" => "", + "count" => "", + "csv_import_failed" => "", + "current_quantity" => "", + "description" => "", + "details_count" => "", + "do_nothing" => "", + "edit_fields_you_want_to_update" => "", + "edit_multiple_giftcards" => "", + "error_adding_updating" => "", + "error_updating_multiple" => "", + "generate_barcodes" => "", + "giftcard" => "", + "giftcard_number" => "", + "info_provided_by" => "", + "inventory_comments" => "", + "is_serialized" => "", + "low_inventory_giftcards" => "", + "manually_editing_of_quantity" => "", + "must_select_giftcard_for_barcode" => "", + "new" => "", + "no_description_giftcards" => "", + "no_giftcards_to_display" => "", + "none" => "", + "none_selected" => "", + "number" => "", + "number_information" => "", + "number_required" => "", + "one_or_multiple" => "", + "person_id" => "", + "quantity" => "", + "quantity_required" => "", + "remaining_balance" => "", + "reorder_level" => "", + "retrive_giftcard_info" => "", + "sales_tax_1" => "", + "sales_tax_2" => "", + "serialized_giftcards" => "", + "successful_adding" => "", + "successful_bulk_edit" => "", + "successful_deleted" => "", + "successful_updating" => "", + "supplier" => "", + "tax_1" => "", + "tax_2" => "", + "tax_percent" => "", + "tax_percents" => "", + "unit_price" => "", + "upc_database" => "", + "update" => "", + "use_inventory_menu" => "", + "value" => "", + "value_required" => "", ]; diff --git a/app/Language/ro/Item_kits.php b/app/Language/ro/Item_kits.php index 2f21a4963..370929649 100644 --- a/app/Language/ro/Item_kits.php +++ b/app/Language/ro/Item_kits.php @@ -1,41 +1,41 @@ "", - "all" => "", - "cannot_be_deleted" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "description" => "", - "discount" => "", - "discount_fixed" => "", - "discount_percent" => "", - "discount_type" => "", - "error_adding_updating" => "", - "find_kit_item" => "", - "info" => "", - "item" => "", - "item_kit_number" => "", - "item_kit_number_duplicate" => "", - "item_number" => "", - "item_number_duplicate" => "", - "items" => "", - "kit" => "", - "kit_and_components" => "", - "kit_and_stock" => "", - "kit_only" => "", - "name" => "", - "new" => "", - "no_item_kits_to_display" => "", - "none_selected" => "", - "one_or_multiple" => "", - "price_option" => "", - "priced_only" => "", - "print_option" => "", - "quantity" => "", - "sequence" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "unit_price" => "", - "update" => "", + "add_item" => "", + "all" => "", + "cannot_be_deleted" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "description" => "", + "discount" => "", + "discount_fixed" => "", + "discount_percent" => "", + "discount_type" => "", + "error_adding_updating" => "", + "find_kit_item" => "", + "info" => "", + "item" => "", + "item_kit_number" => "", + "item_kit_number_duplicate" => "", + "item_number" => "", + "item_number_duplicate" => "", + "items" => "", + "kit" => "", + "kit_and_components" => "", + "kit_and_stock" => "", + "kit_only" => "", + "name" => "", + "new" => "", + "no_item_kits_to_display" => "", + "none_selected" => "", + "one_or_multiple" => "", + "price_option" => "", + "priced_only" => "", + "print_option" => "", + "quantity" => "", + "sequence" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "unit_price" => "", + "update" => "", ]; diff --git a/app/Language/ro/Items.php b/app/Language/ro/Items.php index 64c07b1a5..d82ddb4b9 100644 --- a/app/Language/ro/Items.php +++ b/app/Language/ro/Items.php @@ -1,120 +1,120 @@ "", - "allow_alt_description" => "", - "amount_entry" => "", - "bulk_edit" => "", - "buy_price_required" => "", - "cannot_be_deleted" => "", - "cannot_find_item" => "", - "categories" => "Categorii - selectare numar produs.", - "category" => "Categorie", - "category_new" => "Categorie noua", - "category_required" => "Campul Categorie este obligatoriu.", - "change_all_to_allow_alt_desc" => "Permite descriere alternativa pentru tot.", - "change_all_to_not_allow_allow_desc" => "Nu permite descriere alternativa pentru tot.", - "change_all_to_serialized" => "", - "change_all_to_unserialized" => "", - "change_image" => "Schimbare imagine", - "confirm_bulk_edit" => "Sigur doriti editarea produsului/produselor selectate?", - "confirm_bulk_edit_wipe_taxes" => "Toate informatiile cu privire la taxe, vor fi inlocuite.", - "confirm_delete" => "Sigur doriti stergerea produselor selectate?", - "confirm_restore" => "Sigur doriti restaurarea produselor selectate?", - "cost_price" => "", - "cost_price_number" => "", - "cost_price_required" => "", - "count" => "", - "csv_import_failed" => "", - "csv_import_nodata_wrongformat" => "", - "csv_import_partially_failed" => "", - "csv_import_success" => "", - "current_quantity" => "", - "default_pack_name" => "", - "description" => "", - "details_count" => "", - "do_nothing" => "", - "edit" => "", - "edit_fields_you_want_to_update" => "", - "edit_multiple_items" => "", - "empty_upc_items" => "", - "error_adding_updating" => "", - "error_updating_multiple" => "", - "generate_barcodes" => "", - "hsn_code" => "", - "image" => "", - "import_items_csv" => "", - "info_provided_by" => "", - "inventory" => "", - "inventory_CSV_import_quantity" => "", - "inventory_comments" => "", - "inventory_data_tracking" => "", - "inventory_date" => "", - "inventory_employee" => "", - "inventory_in_out_quantity" => "", - "inventory_remarks" => "", - "is_deleted" => "", - "is_printed" => "", - "is_serialized" => "", - "item" => "", - "item_id" => "", - "item_number" => "", - "item_number_duplicate" => "", - "kit" => "", - "location" => "", - "low_inventory_items" => "", - "low_sell_item" => "", - "manually_editing_of_quantity" => "", - "markup" => "", - "name" => "", - "name_required" => "", - "new" => "", - "no_description_items" => "", - "no_items_to_display" => "", - "none" => "", - "none_selected" => "", - "nonstock" => "", - "number_information" => "", - "number_required" => "", - "one_or_multiple" => "", - "pack_name" => "", - "qty_per_pack" => "", - "quantity" => "", - "quantity_number" => "", - "quantity_required" => "", - "receiving_quantity" => "", - "remove_image" => "", - "reorder_level" => "", - "reorder_level_number" => "", - "reorder_level_required" => "", - "retrive_item_info" => "", - "sales_tax_1" => "", - "sales_tax_2" => "", - "search_attributes" => "", - "select_image" => "", - "serialized_items" => "", - "standard" => "", - "stock" => "", - "stock_location" => "", - "stock_type" => "", - "successful_adding" => "", - "successful_bulk_edit" => "", - "successful_deleted" => "", - "successful_updating" => "", - "supplier" => "", - "tax_1" => "", - "tax_2" => "", - "tax_3" => "", - "tax_category" => "", - "tax_percent" => "", - "tax_percent_number" => "", - "tax_percent_required" => "", - "tax_percents" => "", - "temp" => "", - "type" => "", - "unit_price" => "", - "unit_price_number" => "", - "unit_price_required" => "", - "upc_database" => "", - "update" => "", - "use_inventory_menu" => "", + "add_minus" => "", + "allow_alt_description" => "", + "amount_entry" => "", + "bulk_edit" => "", + "buy_price_required" => "", + "cannot_be_deleted" => "", + "cannot_find_item" => "", + "categories" => "Categorii - selectare numar produs.", + "category" => "Categorie", + "category_new" => "Categorie noua", + "category_required" => "Campul Categorie este obligatoriu.", + "change_all_to_allow_alt_desc" => "Permite descriere alternativa pentru tot.", + "change_all_to_not_allow_allow_desc" => "Nu permite descriere alternativa pentru tot.", + "change_all_to_serialized" => "", + "change_all_to_unserialized" => "", + "change_image" => "Schimbare imagine", + "confirm_bulk_edit" => "Sigur doriti editarea produsului/produselor selectate?", + "confirm_bulk_edit_wipe_taxes" => "Toate informatiile cu privire la taxe, vor fi inlocuite.", + "confirm_delete" => "Sigur doriti stergerea produselor selectate?", + "confirm_restore" => "Sigur doriti restaurarea produselor selectate?", + "cost_price" => "", + "cost_price_number" => "", + "cost_price_required" => "", + "count" => "", + "csv_import_failed" => "", + "csv_import_nodata_wrongformat" => "", + "csv_import_partially_failed" => "", + "csv_import_success" => "", + "current_quantity" => "", + "default_pack_name" => "", + "description" => "", + "details_count" => "", + "do_nothing" => "", + "edit" => "", + "edit_fields_you_want_to_update" => "", + "edit_multiple_items" => "", + "empty_upc_items" => "", + "error_adding_updating" => "", + "error_updating_multiple" => "", + "generate_barcodes" => "", + "hsn_code" => "", + "image" => "", + "import_items_csv" => "", + "info_provided_by" => "", + "inventory" => "", + "inventory_CSV_import_quantity" => "", + "inventory_comments" => "", + "inventory_data_tracking" => "", + "inventory_date" => "", + "inventory_employee" => "", + "inventory_in_out_quantity" => "", + "inventory_remarks" => "", + "is_deleted" => "", + "is_printed" => "", + "is_serialized" => "", + "item" => "", + "item_id" => "", + "item_number" => "", + "item_number_duplicate" => "", + "kit" => "", + "location" => "", + "low_inventory_items" => "", + "low_sell_item" => "", + "manually_editing_of_quantity" => "", + "markup" => "", + "name" => "", + "name_required" => "", + "new" => "", + "no_description_items" => "", + "no_items_to_display" => "", + "none" => "", + "none_selected" => "", + "nonstock" => "", + "number_information" => "", + "number_required" => "", + "one_or_multiple" => "", + "pack_name" => "", + "qty_per_pack" => "", + "quantity" => "", + "quantity_number" => "", + "quantity_required" => "", + "receiving_quantity" => "", + "remove_image" => "", + "reorder_level" => "", + "reorder_level_number" => "", + "reorder_level_required" => "", + "retrive_item_info" => "", + "sales_tax_1" => "", + "sales_tax_2" => "", + "search_attributes" => "", + "select_image" => "", + "serialized_items" => "", + "standard" => "", + "stock" => "", + "stock_location" => "", + "stock_type" => "", + "successful_adding" => "", + "successful_bulk_edit" => "", + "successful_deleted" => "", + "successful_updating" => "", + "supplier" => "", + "tax_1" => "", + "tax_2" => "", + "tax_3" => "", + "tax_category" => "", + "tax_percent" => "", + "tax_percent_number" => "", + "tax_percent_required" => "", + "tax_percents" => "", + "temp" => "", + "type" => "", + "unit_price" => "", + "unit_price_number" => "", + "unit_price_required" => "", + "upc_database" => "", + "update" => "", + "use_inventory_menu" => "", ]; diff --git a/app/Language/ro/Login.php b/app/Language/ro/Login.php index 4a73810c7..2a18ca41d 100644 --- a/app/Language/ro/Login.php +++ b/app/Language/ro/Login.php @@ -1,15 +1,15 @@ "", - "go" => "", - "invalid_gcaptcha" => "", - "invalid_installation" => "", - "invalid_username_and_password" => "", - "login" => "", - "logout" => "", - "migration_needed" => "", - "password" => "", - "required_username" => "", - "username" => "", - "welcome" => "", + "gcaptcha" => "", + "go" => "", + "invalid_gcaptcha" => "", + "invalid_installation" => "", + "invalid_username_and_password" => "", + "login" => "", + "logout" => "", + "migration_needed" => "", + "password" => "", + "required_username" => "", + "username" => "", + "welcome" => "", ]; diff --git a/app/Language/ro/Messages.php b/app/Language/ro/Messages.php index ce3a2e233..3079da504 100644 --- a/app/Language/ro/Messages.php +++ b/app/Language/ro/Messages.php @@ -1,15 +1,15 @@ "", - "last_name" => "", - "message" => "", - "message_placeholder" => "", - "message_required" => "", - "multiple_phones" => "", - "phone" => "", - "phone_number_required" => "", - "phone_placeholder" => "", - "sms_send" => "", - "successfully_sent" => "", - "unsuccessfully_sent" => "", + "first_name" => "", + "last_name" => "", + "message" => "", + "message_placeholder" => "", + "message_required" => "", + "multiple_phones" => "", + "phone" => "", + "phone_number_required" => "", + "phone_placeholder" => "", + "sms_send" => "", + "successfully_sent" => "", + "unsuccessfully_sent" => "", ]; diff --git a/app/Language/ro/Module.php b/app/Language/ro/Module.php index f2ad04586..fb277bc95 100644 --- a/app/Language/ro/Module.php +++ b/app/Language/ro/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "", - "attributes_desc" => "", - "both" => "", - "cashups" => "", - "cashups_desc" => "", - "config" => "", - "config_desc" => "", - "customers" => "", - "customers_desc" => "", - "employees" => "", - "employees_desc" => "", - "expenses" => "", - "expenses_categories" => "", - "expenses_categories_desc" => "", - "expenses_desc" => "", - "giftcards" => "", - "giftcards_desc" => "", - "home" => "", - "home_desc" => "", - "item_kits" => "", - "item_kits_desc" => "", - "items" => "", - "items_desc" => "", - "messages" => "", - "messages_desc" => "", - "migrate" => "", - "migrate_desc" => "", - "office" => "", - "office_desc" => "", - "receivings" => "", - "receivings_desc" => "", - "reports" => "", - "reports_desc" => "", - "sales" => "", - "sales_desc" => "", - "suppliers" => "", - "suppliers_desc" => "", - "taxes" => "", - "taxes_desc" => "", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "", + "attributes_desc" => "", + "both" => "", + "cashups" => "", + "cashups_desc" => "", + "config" => "", + "config_desc" => "", + "customers" => "", + "customers_desc" => "", + "employees" => "", + "employees_desc" => "", + "expenses" => "", + "expenses_categories" => "", + "expenses_categories_desc" => "", + "expenses_desc" => "", + "giftcards" => "", + "giftcards_desc" => "", + "home" => "", + "home_desc" => "", + "item_kits" => "", + "item_kits_desc" => "", + "items" => "", + "items_desc" => "", + "messages" => "", + "messages_desc" => "", + "migrate" => "", + "migrate_desc" => "", + "office" => "", + "office_desc" => "", + "receivings" => "", + "receivings_desc" => "", + "reports" => "", + "reports_desc" => "", + "sales" => "", + "sales_desc" => "", + "suppliers" => "", + "suppliers_desc" => "", + "taxes" => "", + "taxes_desc" => "", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/ro/Receivings.php b/app/Language/ro/Receivings.php index 2a1c49abb..ae309c0d4 100644 --- a/app/Language/ro/Receivings.php +++ b/app/Language/ro/Receivings.php @@ -1,58 +1,58 @@ "", - "cancel_receiving" => "Anulare", - "cannot_be_deleted" => "Stergere Recptie/Receptii esuata.", - "comments" => "Comentarii", - "complete_receiving" => "Finalizare", - "confirm_cancel_receiving" => "Sigr doriti eliminarea acestei receptii? Toate articolele vor fi eliminate.", - "confirm_delete" => "", - "confirm_finish_receiving" => "", - "confirm_restore" => "", - "cost" => "", - "daily" => "", - "date" => "", - "date_required" => "", - "date_type" => "", - "delete_entire_sale" => "", - "discount" => "", - "edit" => "", - "edit_sale" => "", - "employee" => "", - "error_editing_item" => "", - "error_requisition" => "", - "find_or_scan_item" => "", - "find_or_scan_item_or_receipt" => "", - "id" => "", - "item_name" => "", - "mode" => "", - "new_supplier" => "", - "one_or_multiple" => "", - "print_after_sale" => "", - "quantity" => "", - "receipt" => "", - "receipt_number" => "", - "receiving" => "", - "reference" => "", - "register" => "", - "requisition" => "", - "return" => "", - "select_supplier" => "", - "ship_pack" => "", - "start_typing_supplier_name" => "", - "stock" => "", - "stock_destination" => "", - "stock_locaiton" => "", - "stock_source" => "", - "successfully_deleted" => "", - "successfully_updated" => "", - "supplier" => "", - "supplier_address" => "", - "supplier_email" => "", - "supplier_location" => "", - "total" => "", - "transaction_failed" => "", - "unable_to_add_item" => "", - "unsuccessfully_updated" => "", - "update" => "", + "amount_due" => "", + "cancel_receiving" => "Anulare", + "cannot_be_deleted" => "Stergere Recptie/Receptii esuata.", + "comments" => "Comentarii", + "complete_receiving" => "Finalizare", + "confirm_cancel_receiving" => "Sigr doriti eliminarea acestei receptii? Toate articolele vor fi eliminate.", + "confirm_delete" => "", + "confirm_finish_receiving" => "", + "confirm_restore" => "", + "cost" => "", + "daily" => "", + "date" => "", + "date_required" => "", + "date_type" => "", + "delete_entire_sale" => "", + "discount" => "", + "edit" => "", + "edit_sale" => "", + "employee" => "", + "error_editing_item" => "", + "error_requisition" => "", + "find_or_scan_item" => "", + "find_or_scan_item_or_receipt" => "", + "id" => "", + "item_name" => "", + "mode" => "", + "new_supplier" => "", + "one_or_multiple" => "", + "print_after_sale" => "", + "quantity" => "", + "receipt" => "", + "receipt_number" => "", + "receiving" => "", + "reference" => "", + "register" => "", + "requisition" => "", + "return" => "", + "select_supplier" => "", + "ship_pack" => "", + "start_typing_supplier_name" => "", + "stock" => "", + "stock_destination" => "", + "stock_locaiton" => "", + "stock_source" => "", + "successfully_deleted" => "", + "successfully_updated" => "", + "supplier" => "", + "supplier_address" => "", + "supplier_email" => "", + "supplier_location" => "", + "total" => "", + "transaction_failed" => "", + "unable_to_add_item" => "", + "unsuccessfully_updated" => "", + "update" => "", ]; diff --git a/app/Language/ro/Reports.php b/app/Language/ro/Reports.php index c8f0dcce9..cde8daff6 100644 --- a/app/Language/ro/Reports.php +++ b/app/Language/ro/Reports.php @@ -1,148 +1,148 @@ "", - "authority" => "", - "canceled" => "", - "categories" => "", - "categories_summary_report" => "", - "category" => "", - "code_canceled" => "", - "code_invoice" => "", - "code_pos" => "", - "code_quote" => "", - "code_return" => "", - "code_type" => "", - "code_work_order" => "", - "comments" => "", - "commission" => "", - "complete" => "", - "completed_sales" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "cost" => "", - "cost_price" => "", - "count" => "", - "customer" => "", - "customers" => "", - "customers_summary_report" => "", - "date" => "", - "date_range" => "", - "description" => "", - "detailed_receivings_report" => "", - "detailed_receivings_report_input" => "", - "detailed_reports" => "", - "detailed_requisition_report" => "", - "detailed_sales_report" => "", - "discount" => "", - "discount_fixed" => "", - "discount_percent" => "", - "discount_type" => "", - "discounts" => "", - "discounts_summary_report" => "", - "earned" => "", - "employee" => "", - "employees" => "", - "employees_summary_report" => "", - "expenses" => "", - "expenses_amount" => "", - "expenses_categories" => "", - "expenses_categories_summary_report" => "", - "expenses_category" => "", - "expenses_payment_amount" => "", - "expenses_tax_amount" => "", - "expenses_total_amount" => "", - "expenses_total_tax_amount" => "", - "graphical_reports" => "", - "inventory" => "", - "inventory_low" => "", - "inventory_low_report" => "", - "inventory_reports" => "", - "inventory_summary" => "", - "inventory_summary_report" => "", - "item" => "", - "item_count" => "", - "item_name" => "", - "item_number" => "", - "items" => "", - "items_purchased" => "", - "items_received" => "", - "items_summary_report" => "", - "jurisdiction" => "", - "low_inventory" => "", - "low_inventory_report" => "", - "low_sell_quantity" => "", - "more_than_zero" => "", - "name" => "", - "no_reports_to_display" => "", - "payment_type" => "", - "payments" => "", - "payments_summary_report" => "", - "profit" => "", - "quantity" => "", - "quantity_purchased" => "", - "quotes" => "", - "received_by" => "", - "receiving_id" => "", - "receiving_type" => "", - "receivings" => "", - "reorder_level" => "", - "report" => "", - "report_input" => "", - "reports" => "", - "requisition" => "", - "requisition_by" => "", - "requisition_id" => "", - "requisition_item" => "", - "requisition_item_quantity" => "", - "requisition_related_item" => "", - "requisition_related_item_total_quantity" => "", - "requisition_related_item_unit_quantity" => "", - "requisitions" => "", - "returns" => "", - "revenue" => "", - "sale_id" => "", - "sale_type" => "", - "sales" => "", - "sales_amount" => "", - "sales_summary_report" => "", - "sales_taxes" => "", - "sales_taxes_summary_report" => "", - "serial_number" => "", - "service_charge" => "", - "sold_by" => "", - "sold_items" => "", - "sold_to" => "", - "stock_location" => "", - "sub_total_value" => "", - "subtotal" => "", - "summary_reports" => "", - "supplied_by" => "", - "supplier" => "", - "suppliers" => "", - "suppliers_summary_report" => "", - "tax" => "", - "tax_category" => "", - "tax_name" => "", - "tax_percent" => "", - "tax_rate" => "", - "taxes" => "", - "taxes_summary_report" => "", - "total" => "", - "total_inventory_value" => "", - "total_low_sell_quantity" => "", - "total_quantity" => "", - "total_retail" => "", - "trans_amount" => "", - "trans_due" => "", - "trans_group" => "", - "trans_nopay_sales" => "", - "trans_payments" => "", - "trans_refunded" => "", - "trans_sales" => "", - "trans_type" => "", - "type" => "", - "unit_price" => "", - "used" => "", - "work_orders" => "", - "zero_and_less" => "", + "all" => "", + "authority" => "", + "canceled" => "", + "categories" => "", + "categories_summary_report" => "", + "category" => "", + "code_canceled" => "", + "code_invoice" => "", + "code_pos" => "", + "code_quote" => "", + "code_return" => "", + "code_type" => "", + "code_work_order" => "", + "comments" => "", + "commission" => "", + "complete" => "", + "completed_sales" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "cost" => "", + "cost_price" => "", + "count" => "", + "customer" => "", + "customers" => "", + "customers_summary_report" => "", + "date" => "", + "date_range" => "", + "description" => "", + "detailed_receivings_report" => "", + "detailed_receivings_report_input" => "", + "detailed_reports" => "", + "detailed_requisition_report" => "", + "detailed_sales_report" => "", + "discount" => "", + "discount_fixed" => "", + "discount_percent" => "", + "discount_type" => "", + "discounts" => "", + "discounts_summary_report" => "", + "earned" => "", + "employee" => "", + "employees" => "", + "employees_summary_report" => "", + "expenses" => "", + "expenses_amount" => "", + "expenses_categories" => "", + "expenses_categories_summary_report" => "", + "expenses_category" => "", + "expenses_payment_amount" => "", + "expenses_tax_amount" => "", + "expenses_total_amount" => "", + "expenses_total_tax_amount" => "", + "graphical_reports" => "", + "inventory" => "", + "inventory_low" => "", + "inventory_low_report" => "", + "inventory_reports" => "", + "inventory_summary" => "", + "inventory_summary_report" => "", + "item" => "", + "item_count" => "", + "item_name" => "", + "item_number" => "", + "items" => "", + "items_purchased" => "", + "items_received" => "", + "items_summary_report" => "", + "jurisdiction" => "", + "low_inventory" => "", + "low_inventory_report" => "", + "low_sell_quantity" => "", + "more_than_zero" => "", + "name" => "", + "no_reports_to_display" => "", + "payment_type" => "", + "payments" => "", + "payments_summary_report" => "", + "profit" => "", + "quantity" => "", + "quantity_purchased" => "", + "quotes" => "", + "received_by" => "", + "receiving_id" => "", + "receiving_type" => "", + "receivings" => "", + "reorder_level" => "", + "report" => "", + "report_input" => "", + "reports" => "", + "requisition" => "", + "requisition_by" => "", + "requisition_id" => "", + "requisition_item" => "", + "requisition_item_quantity" => "", + "requisition_related_item" => "", + "requisition_related_item_total_quantity" => "", + "requisition_related_item_unit_quantity" => "", + "requisitions" => "", + "returns" => "", + "revenue" => "", + "sale_id" => "", + "sale_type" => "", + "sales" => "", + "sales_amount" => "", + "sales_summary_report" => "", + "sales_taxes" => "", + "sales_taxes_summary_report" => "", + "serial_number" => "", + "service_charge" => "", + "sold_by" => "", + "sold_items" => "", + "sold_to" => "", + "stock_location" => "", + "sub_total_value" => "", + "subtotal" => "", + "summary_reports" => "", + "supplied_by" => "", + "supplier" => "", + "suppliers" => "", + "suppliers_summary_report" => "", + "tax" => "", + "tax_category" => "", + "tax_name" => "", + "tax_percent" => "", + "tax_rate" => "", + "taxes" => "", + "taxes_summary_report" => "", + "total" => "", + "total_inventory_value" => "", + "total_low_sell_quantity" => "", + "total_quantity" => "", + "total_retail" => "", + "trans_amount" => "", + "trans_due" => "", + "trans_group" => "", + "trans_nopay_sales" => "", + "trans_payments" => "", + "trans_refunded" => "", + "trans_sales" => "", + "trans_type" => "", + "type" => "", + "unit_price" => "", + "used" => "", + "work_orders" => "", + "zero_and_less" => "", ]; diff --git a/app/Language/ro/Sales.php b/app/Language/ro/Sales.php index 2f9e7d07b..ab187f829 100644 --- a/app/Language/ro/Sales.php +++ b/app/Language/ro/Sales.php @@ -1,224 +1,224 @@ "Puncte disponibile", - "rewards_package" => "Recompense", - "rewards_remaining_balance" => "Valoarea ramasa a punctelor de fidelizare este ", - "account_number" => "Cont #", - "add_payment" => "Adauga Plata", - "amount_due" => "Suma datorata", - "amount_tendered" => "Suma Oferita", - "authorized_signature" => "Semnatura Autorizata", - "cancel_sale" => "Anuleaza", - "cash" => "Numerar", - "cash_1" => "", - "cash_2" => "", - "cash_3" => "", - "cash_4" => "", - "cash_adjustment" => "", - "cash_deposit" => "Depozit Numerar", - "cash_filter" => "Numerar", - "change_due" => "Rest datorat", - "change_price" => "", - "check" => "Bon/cec", - "check_balance" => "Verificati restul", - "check_filter" => "Bon/cec", - "close" => "", - "comment" => "Comentariu", - "comments" => "Comentarii", - "company_name" => "", - "complete" => "", - "complete_sale" => "Finalizare", - "confirm_cancel_sale" => "Sigur vreti sa eliminati aceasta vanzare? Toate articolele vor fi sterse.", - "confirm_delete" => "Sigur doriti stergerea Vanzarii/Vanzarilor selectate?", - "confirm_restore" => "Sigur doriti restabilirea Vanzarii/Vanzarilor selectate?", - "credit" => "Card Credit", - "credit_deposit" => "Depozit Credit", - "credit_filter" => "", - "current_table" => "", - "customer" => "Nume", - "customer_address" => "Adresa", - "customer_discount" => "Reducere", - "customer_email" => "Email", - "customer_location" => "Amplasare", - "customer_mailchimp_status" => "Situatie Mailchimp", - "customer_optional" => "(Optional)", - "customer_required" => "(Necesar)", - "customer_total" => "Total", - "customer_total_spent" => "", - "daily_sales" => "", - "date" => "Data Vanzare", - "date_range" => "Perioada", - "date_required" => "Trebuie introdusa o data corecta.", - "date_type" => "Data este un camp obligatoriu.", - "debit" => "Card Debit", - "debit_filter" => "", - "delete" => "Permite Stergerea", - "delete_confirmation" => "Sigur doriti stergerea acestei vanzari? Nu puteti reveni anterior dupa aceasta actiune.", - "delete_entire_sale" => "Sterge Toata Vanzarea", - "delete_successful" => "Stergere vanzare reusita.", - "delete_unsuccessful" => "Stergere vanzare nereusita.", - "description_abbrv" => "Desc.", - "discard" => "Renunta", - "discard_quote" => "", - "discount" => "Reducere", - "discount_included" => "% Reducere", - "discount_short" => "%", - "due" => "Datorat", - "due_filter" => "De plata", - "edit" => "Editare", - "edit_item" => "Editare Articol", - "edit_sale" => "Editare Vanzare", - "email_receipt" => "Transmite Chitanta pe email", - "employee" => "Salariat", - "entry" => "Intrare", - "error_editing_item" => "Eroare editare articol", - "find_or_scan_item" => "Gaseste sau scaneaza Articol", - "find_or_scan_item_or_receipt" => "Gaseste sau scaneaza Articol sau Chitanta", - "giftcard" => "Card Cadou", - "giftcard_balance" => "Sold Card Cadou", - "giftcard_filter" => "", - "giftcard_number" => "Numar Card Cadou", - "group_by_category" => "Grupare dupa Categorie", - "group_by_type" => "Grupare dupa Tip", - "hsn" => "HSN", - "id" => "ID Vanzare", - "include_prices" => "Include Preturi?", - "invoice" => "Factura", - "invoice_confirm" => "Aceasta factura va fi trimisa catre", - "invoice_enable" => "Creare Factura", - "invoice_filter" => "Facturi", - "invoice_no_email" => "Adresa de email a acestui client nu este valida.", - "invoice_number" => "Factura #", - "invoice_number_duplicate" => "Numar Factura trebuie sa fie unic.", - "invoice_sent" => "Factura trimisa catre", - "invoice_total" => "Total Factura", - "invoice_type_custom_invoice" => "Factura Personalizata (custom_invoice.php)", - "invoice_type_custom_tax_invoice" => "Factura Fiscala Personalizata (custom_tax_invoice.php)", - "invoice_type_invoice" => "Factura (invoice.php)", - "invoice_type_tax_invoice" => "Factura Fiscala (tax_invoice.php)", - "invoice_unsent" => "Factura nu a putut fi trimisă catre", - "invoice_update" => "Renumara", - "item_insufficient_of_stock" => "Articol cu fara stoc suficient.", - "item_name" => "Nume Articol", - "item_number" => "Articol #", - "item_out_of_stock" => "Articolul nu este in stoc.", - "key_browser" => "", - "key_cancel" => "Cancels Current Quote/Invoice/Sale", - "key_customer_search" => "Customer Search", - "key_finish_quote" => "Finish Quote/Invoice witdout payment", - "key_finish_sale" => "Add Payment and Complete Invoice/Sale", - "key_full" => "", - "key_function" => "Function", - "key_help" => "Shortcuts", - "key_help_modal" => "Open Shortcuts Window", - "key_in" => "", - "key_item_search" => "Item Search", - "key_out" => "", - "key_payment" => "Add Payment", - "key_print" => "", - "key_restore" => "", - "key_search" => "", - "key_suspend" => "Suspend Current Sale", - "key_suspended" => "Show Suspended Sales", - "key_system" => "", - "key_tendered" => "Edit Amount Tendered", - "key_title" => "Sales Keyboard Shortcuts", - "mc" => "", - "mode" => "Mod inregistrare", - "must_enter_numeric" => "Valoare ofertata trebuie sa fie numerica.", - "must_enter_numeric_giftcard" => "Numar Card Cadou trebuie sa fie numeric.", - "new_customer" => "Client nou", - "new_item" => "Articol nou", - "no_description" => "Fara descriere", - "no_filter" => "Toate", - "no_items_in_cart" => "Nu sunt articole in cosul de cumparaturi.", - "no_sales_to_display" => "Nu sunt Vanzari de afisat.", - "none_selected" => "Nu ati selecta nicio Vanzare de sters.", - "nontaxed_ind" => "", - "not_authorized" => "Aceasta actiune nu este autorizata.", - "one_or_multiple" => "Vanzare(i)", - "payment" => "Tip Plata", - "payment_amount" => "Valoare", - "payment_not_cover_total" => "Valoarea de Plata trebuie sa fie mai mare sau egala decat Totalul.", - "payment_type" => "Tip", - "payments" => "", - "payments_total" => "Total Plati", - "price" => "Pret", - "print_after_sale" => "Tipareste dupa Vanzare", - "quantity" => "Cantitate", - "quantity_less_than_reorder_level" => "Avertisment: Cantitatea dorita este sub nivelul de resuplinire a acestui Articol.", - "quantity_less_than_zero" => "Avertisment: Cantitatea dorita este insuficienta. Vanzarea poate continua, dar verificati-va stocul.", - "quantity_of_items" => "Cantitatea a {0} Articole", - "quote" => "Cotatie", - "quote_number" => "Numar Cotatie", - "quote_number_duplicate" => "Numar Cotatie trebuie sa fie unic.", - "quote_sent" => "Cotatie trimisa catre", - "quote_unsent" => "Timitere cotatie nereusita catre", - "receipt" => "Chitanta Vanzari", - "receipt_no_email" => "Acest client nu are adresa de email valida.", - "receipt_number" => "Vanzare #", - "receipt_sent" => "Chitanta trimisa catre", - "receipt_unsent" => "Trimitere chitanta nereusita catre", - "refund" => "", - "register" => "Registru Vanzari", - "remove_customer" => "Eliminati Clientul", - "remove_discount" => "", - "return" => "Inapoiere", - "rewards" => "Puncte fidelizare", - "rewards_balance" => "Sold Puncte fidelizare", - "sale" => "Vanzare", - "sale_by_invoice" => "Vanzare cu Factura", - "sale_for_customer" => "Client:", - "sale_time" => "Timp", - "sales_tax" => "Taxa", - "sales_total" => "", - "select_customer" => "Selectare Client", - "send_invoice" => "Trimite Factura", - "send_quote" => "Trimite Cotatie", - "send_receipt" => "Trimite Chitanta", - "send_work_order" => "Trimite Comanda de Lucru", - "serial" => "Serie", - "service_charge" => "", - "show_due" => "", - "show_invoice" => "Arata Factura", - "show_receipt" => "Arata Chitanta", - "start_typing_customer_name" => "Incepeti sa tastati detaliile clientului ...", - "start_typing_item_name" => "Incepeti tastarea Nume Articol sau scanati Cod de bare ...", - "stock" => "Stoc", - "stock_location" => "Locatie Stoc", - "sub_total" => "Subtotal", - "successfully_deleted" => "Ati reusit stergerea", - "successfully_restored" => "Ati reusit restaurarea", - "successfully_suspended_sale" => "Suspendare vanzare reusita.", - "successfully_updated" => "Actualizare vanzare reusita.", - "suspend_sale" => "Suspendare", - "suspended_doc_id" => "Document", - "suspended_sale_id" => "ID", - "suspended_sales" => "Suspendata", - "table" => "Masa", - "takings" => "Vanzari Zilnice", - "tax" => "Taxa", - "tax_id" => "Id Taxa", - "tax_invoice" => "Factura Fiscala", - "tax_percent" => "Taxa %", - "taxed_ind" => "", - "total" => "Total", - "total_tax_exclusive" => "Fara taxe", - "transaction_failed" => "Tranzactie nereusita.", - "unable_to_add_item" => "Adaugare articol la Vanzare nereusita", - "unsuccessfully_deleted" => "Stergere Vanzare(i) nereusita.", - "unsuccessfully_restored" => "Restaurare Vanzare(i) nereusita.", - "unsuccessfully_suspended_sale" => "Suspendare Vanzare nereusita.", - "unsuccessfully_updated" => "Actualizare Vanzare nereusita.", - "unsuspend" => "Nesuspendata", - "unsuspend_and_delete" => "Actiune", - "update" => "Actualizare", - "upi" => "", - "visa" => "", - "wholesale" => "", - "work_order" => "", - "work_order_number" => "", - "work_order_number_duplicate" => "", - "work_order_sent" => "", - "work_order_unsent" => "", + "customers_available_points" => "Puncte disponibile", + "rewards_package" => "Recompense", + "rewards_remaining_balance" => "Valoarea ramasa a punctelor de fidelizare este ", + "account_number" => "Cont #", + "add_payment" => "Adauga Plata", + "amount_due" => "Suma datorata", + "amount_tendered" => "Suma Oferita", + "authorized_signature" => "Semnatura Autorizata", + "cancel_sale" => "Anuleaza", + "cash" => "Numerar", + "cash_1" => "", + "cash_2" => "", + "cash_3" => "", + "cash_4" => "", + "cash_adjustment" => "", + "cash_deposit" => "Depozit Numerar", + "cash_filter" => "Numerar", + "change_due" => "Rest datorat", + "change_price" => "", + "check" => "Bon/cec", + "check_balance" => "Verificati restul", + "check_filter" => "Bon/cec", + "close" => "", + "comment" => "Comentariu", + "comments" => "Comentarii", + "company_name" => "", + "complete" => "", + "complete_sale" => "Finalizare", + "confirm_cancel_sale" => "Sigur vreti sa eliminati aceasta vanzare? Toate articolele vor fi sterse.", + "confirm_delete" => "Sigur doriti stergerea Vanzarii/Vanzarilor selectate?", + "confirm_restore" => "Sigur doriti restabilirea Vanzarii/Vanzarilor selectate?", + "credit" => "Card Credit", + "credit_deposit" => "Depozit Credit", + "credit_filter" => "", + "current_table" => "", + "customer" => "Nume", + "customer_address" => "Adresa", + "customer_discount" => "Reducere", + "customer_email" => "Email", + "customer_location" => "Amplasare", + "customer_mailchimp_status" => "Situatie Mailchimp", + "customer_optional" => "(Optional)", + "customer_required" => "(Necesar)", + "customer_total" => "Total", + "customer_total_spent" => "", + "daily_sales" => "", + "date" => "Data Vanzare", + "date_range" => "Perioada", + "date_required" => "Trebuie introdusa o data corecta.", + "date_type" => "Data este un camp obligatoriu.", + "debit" => "Card Debit", + "debit_filter" => "", + "delete" => "Permite Stergerea", + "delete_confirmation" => "Sigur doriti stergerea acestei vanzari? Nu puteti reveni anterior dupa aceasta actiune.", + "delete_entire_sale" => "Sterge Toata Vanzarea", + "delete_successful" => "Stergere vanzare reusita.", + "delete_unsuccessful" => "Stergere vanzare nereusita.", + "description_abbrv" => "Desc.", + "discard" => "Renunta", + "discard_quote" => "", + "discount" => "Reducere", + "discount_included" => "% Reducere", + "discount_short" => "%", + "due" => "Datorat", + "due_filter" => "De plata", + "edit" => "Editare", + "edit_item" => "Editare Articol", + "edit_sale" => "Editare Vanzare", + "email_receipt" => "Transmite Chitanta pe email", + "employee" => "Salariat", + "entry" => "Intrare", + "error_editing_item" => "Eroare editare articol", + "find_or_scan_item" => "Gaseste sau scaneaza Articol", + "find_or_scan_item_or_receipt" => "Gaseste sau scaneaza Articol sau Chitanta", + "giftcard" => "Card Cadou", + "giftcard_balance" => "Sold Card Cadou", + "giftcard_filter" => "", + "giftcard_number" => "Numar Card Cadou", + "group_by_category" => "Grupare dupa Categorie", + "group_by_type" => "Grupare dupa Tip", + "hsn" => "HSN", + "id" => "ID Vanzare", + "include_prices" => "Include Preturi?", + "invoice" => "Factura", + "invoice_confirm" => "Aceasta factura va fi trimisa catre", + "invoice_enable" => "Creare Factura", + "invoice_filter" => "Facturi", + "invoice_no_email" => "Adresa de email a acestui client nu este valida.", + "invoice_number" => "Factura #", + "invoice_number_duplicate" => "Numar Factura trebuie sa fie unic.", + "invoice_sent" => "Factura trimisa catre", + "invoice_total" => "Total Factura", + "invoice_type_custom_invoice" => "Factura Personalizata (custom_invoice.php)", + "invoice_type_custom_tax_invoice" => "Factura Fiscala Personalizata (custom_tax_invoice.php)", + "invoice_type_invoice" => "Factura (invoice.php)", + "invoice_type_tax_invoice" => "Factura Fiscala (tax_invoice.php)", + "invoice_unsent" => "Factura nu a putut fi trimisă catre", + "invoice_update" => "Renumara", + "item_insufficient_of_stock" => "Articol cu fara stoc suficient.", + "item_name" => "Nume Articol", + "item_number" => "Articol #", + "item_out_of_stock" => "Articolul nu este in stoc.", + "key_browser" => "", + "key_cancel" => "Cancels Current Quote/Invoice/Sale", + "key_customer_search" => "Customer Search", + "key_finish_quote" => "Finish Quote/Invoice witdout payment", + "key_finish_sale" => "Add Payment and Complete Invoice/Sale", + "key_full" => "", + "key_function" => "Function", + "key_help" => "Shortcuts", + "key_help_modal" => "Open Shortcuts Window", + "key_in" => "", + "key_item_search" => "Item Search", + "key_out" => "", + "key_payment" => "Add Payment", + "key_print" => "", + "key_restore" => "", + "key_search" => "", + "key_suspend" => "Suspend Current Sale", + "key_suspended" => "Show Suspended Sales", + "key_system" => "", + "key_tendered" => "Edit Amount Tendered", + "key_title" => "Sales Keyboard Shortcuts", + "mc" => "", + "mode" => "Mod inregistrare", + "must_enter_numeric" => "Valoare ofertata trebuie sa fie numerica.", + "must_enter_numeric_giftcard" => "Numar Card Cadou trebuie sa fie numeric.", + "new_customer" => "Client nou", + "new_item" => "Articol nou", + "no_description" => "Fara descriere", + "no_filter" => "Toate", + "no_items_in_cart" => "Nu sunt articole in cosul de cumparaturi.", + "no_sales_to_display" => "Nu sunt Vanzari de afisat.", + "none_selected" => "Nu ati selecta nicio Vanzare de sters.", + "nontaxed_ind" => "", + "not_authorized" => "Aceasta actiune nu este autorizata.", + "one_or_multiple" => "Vanzare(i)", + "payment" => "Tip Plata", + "payment_amount" => "Valoare", + "payment_not_cover_total" => "Valoarea de Plata trebuie sa fie mai mare sau egala decat Totalul.", + "payment_type" => "Tip", + "payments" => "", + "payments_total" => "Total Plati", + "price" => "Pret", + "print_after_sale" => "Tipareste dupa Vanzare", + "quantity" => "Cantitate", + "quantity_less_than_reorder_level" => "Avertisment: Cantitatea dorita este sub nivelul de resuplinire a acestui Articol.", + "quantity_less_than_zero" => "Avertisment: Cantitatea dorita este insuficienta. Vanzarea poate continua, dar verificati-va stocul.", + "quantity_of_items" => "Cantitatea a {0} Articole", + "quote" => "Cotatie", + "quote_number" => "Numar Cotatie", + "quote_number_duplicate" => "Numar Cotatie trebuie sa fie unic.", + "quote_sent" => "Cotatie trimisa catre", + "quote_unsent" => "Timitere cotatie nereusita catre", + "receipt" => "Chitanta Vanzari", + "receipt_no_email" => "Acest client nu are adresa de email valida.", + "receipt_number" => "Vanzare #", + "receipt_sent" => "Chitanta trimisa catre", + "receipt_unsent" => "Trimitere chitanta nereusita catre", + "refund" => "", + "register" => "Registru Vanzari", + "remove_customer" => "Eliminati Clientul", + "remove_discount" => "", + "return" => "Inapoiere", + "rewards" => "Puncte fidelizare", + "rewards_balance" => "Sold Puncte fidelizare", + "sale" => "Vanzare", + "sale_by_invoice" => "Vanzare cu Factura", + "sale_for_customer" => "Client:", + "sale_time" => "Timp", + "sales_tax" => "Taxa", + "sales_total" => "", + "select_customer" => "Selectare Client", + "send_invoice" => "Trimite Factura", + "send_quote" => "Trimite Cotatie", + "send_receipt" => "Trimite Chitanta", + "send_work_order" => "Trimite Comanda de Lucru", + "serial" => "Serie", + "service_charge" => "", + "show_due" => "", + "show_invoice" => "Arata Factura", + "show_receipt" => "Arata Chitanta", + "start_typing_customer_name" => "Incepeti sa tastati detaliile clientului ...", + "start_typing_item_name" => "Incepeti tastarea Nume Articol sau scanati Cod de bare ...", + "stock" => "Stoc", + "stock_location" => "Locatie Stoc", + "sub_total" => "Subtotal", + "successfully_deleted" => "Ati reusit stergerea", + "successfully_restored" => "Ati reusit restaurarea", + "successfully_suspended_sale" => "Suspendare vanzare reusita.", + "successfully_updated" => "Actualizare vanzare reusita.", + "suspend_sale" => "Suspendare", + "suspended_doc_id" => "Document", + "suspended_sale_id" => "ID", + "suspended_sales" => "Suspendata", + "table" => "Masa", + "takings" => "Vanzari Zilnice", + "tax" => "Taxa", + "tax_id" => "Id Taxa", + "tax_invoice" => "Factura Fiscala", + "tax_percent" => "Taxa %", + "taxed_ind" => "", + "total" => "Total", + "total_tax_exclusive" => "Fara taxe", + "transaction_failed" => "Tranzactie nereusita.", + "unable_to_add_item" => "Adaugare articol la Vanzare nereusita", + "unsuccessfully_deleted" => "Stergere Vanzare(i) nereusita.", + "unsuccessfully_restored" => "Restaurare Vanzare(i) nereusita.", + "unsuccessfully_suspended_sale" => "Suspendare Vanzare nereusita.", + "unsuccessfully_updated" => "Actualizare Vanzare nereusita.", + "unsuspend" => "Nesuspendata", + "unsuspend_and_delete" => "Actiune", + "update" => "Actualizare", + "upi" => "", + "visa" => "", + "wholesale" => "", + "work_order" => "", + "work_order_number" => "", + "work_order_number_duplicate" => "", + "work_order_sent" => "", + "work_order_unsent" => "", ]; diff --git a/app/Language/ro/Suppliers.php b/app/Language/ro/Suppliers.php index f6a8af42f..1a7697fc9 100644 --- a/app/Language/ro/Suppliers.php +++ b/app/Language/ro/Suppliers.php @@ -1,24 +1,24 @@ "Număr cont", - "agency_name" => "Nume Agenție", - "cannot_be_deleted" => "Nu pot șterge Funrizorul/Furnizorii selectat/selectați. Unul sau mai mulți au Vânzări.", - "category" => "Categorie", - "company_name" => "Nume Companie", - "company_name_required" => "Este obligatoriu câmpul Nume Companie.", - "confirm_delete" => "", - "confirm_restore" => "", - "cost" => "", - "error_adding_updating" => "", - "goods" => "", - "new" => "", - "none_selected" => "", - "one_or_multiple" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "supplier" => "", - "supplier_id" => "", - "tax_id" => "", - "update" => "", + "account_number" => "Număr cont", + "agency_name" => "Nume Agenție", + "cannot_be_deleted" => "Nu pot șterge Funrizorul/Furnizorii selectat/selectați. Unul sau mai mulți au Vânzări.", + "category" => "Categorie", + "company_name" => "Nume Companie", + "company_name_required" => "Este obligatoriu câmpul Nume Companie.", + "confirm_delete" => "", + "confirm_restore" => "", + "cost" => "", + "error_adding_updating" => "", + "goods" => "", + "new" => "", + "none_selected" => "", + "one_or_multiple" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "supplier" => "", + "supplier_id" => "", + "tax_id" => "", + "update" => "", ]; diff --git a/app/Language/ro/Taxes.php b/app/Language/ro/Taxes.php index 6ae3d5b76..691ff9bb3 100644 --- a/app/Language/ro/Taxes.php +++ b/app/Language/ro/Taxes.php @@ -1,82 +1,82 @@ "", - "cascade" => "", - "cascade_sequence" => "", - "city" => "", - "code" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "default_tax_category" => "", - "default_tax_rate" => "", - "error_adding_updating" => "", - "group_seq" => "", - "jurisdiction_name" => "", - "name" => "", - "new" => "", - "no_taxes" => "", - "no_taxes_to_display" => "", - "reporting_authority" => "", - "round_half_down" => "", - "round_half_even" => "", - "round_half_odd" => "", - "round_half_up" => "", - "rounding_code" => "", - "sales_tax" => "", - "sales_tax_by_invoice" => "", - "sequence" => "", - "state" => "", - "successful_deleted" => "", - "tax_categories" => "", - "tax_categories_configuration" => "", - "tax_categories_saved_successfully" => "", - "tax_categories_saved_unsuccessfully" => "", - "tax_category" => "", - "tax_category_code" => "", - "tax_category_duplicate" => "", - "tax_category_invalid_chars" => "", - "tax_category_name" => "", - "tax_category_new" => "", - "tax_category_required" => "", - "tax_code" => "", - "tax_code_cannot_be_deleted" => "", - "tax_code_duplicate" => "", - "tax_code_invalid_chars" => "", - "tax_code_name" => "", - "tax_code_required" => "", - "tax_code_successful_deleted" => "", - "tax_code_successful_updated" => "", - "tax_code_successful_updating" => "", - "tax_code_successfully_added" => "", - "tax_code_type" => "", - "tax_codes" => "", - "tax_codes_configuration" => "", - "tax_codes_saved_successfully" => "", - "tax_codes_saved_unsuccessfully" => "", - "tax_excluded" => "", - "tax_group" => "", - "tax_group_not_unique" => "", - "tax_group_sequence" => "", - "tax_included" => "", - "tax_jurisdiction" => "", - "tax_jurisdiction_duplicate" => "", - "tax_jurisdiction_invalid_chars" => "", - "tax_jurisdiction_required" => "", - "tax_jurisdictions" => "", - "tax_jurisdictions_configuration" => "", - "tax_jurisdictions_saved_successfully" => "", - "tax_jurisdictions_saved_unsuccessfully" => "", - "tax_rate" => "", - "tax_rate_configuration" => "", - "tax_rate_error_adding_updating" => "", - "tax_rate_numeric" => "", - "tax_rate_required" => "", - "tax_rate_successful_updated" => "", - "tax_rate_successfully_added" => "", - "tax_rates" => "", - "tax_rates_configuration" => "", - "tax_rounding" => "", - "tax_type" => "", - "update" => "", - "vat_tax" => "", + "add_exception" => "", + "cascade" => "", + "cascade_sequence" => "", + "city" => "", + "code" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "default_tax_category" => "", + "default_tax_rate" => "", + "error_adding_updating" => "", + "group_seq" => "", + "jurisdiction_name" => "", + "name" => "", + "new" => "", + "no_taxes" => "", + "no_taxes_to_display" => "", + "reporting_authority" => "", + "round_half_down" => "", + "round_half_even" => "", + "round_half_odd" => "", + "round_half_up" => "", + "rounding_code" => "", + "sales_tax" => "", + "sales_tax_by_invoice" => "", + "sequence" => "", + "state" => "", + "successful_deleted" => "", + "tax_categories" => "", + "tax_categories_configuration" => "", + "tax_categories_saved_successfully" => "", + "tax_categories_saved_unsuccessfully" => "", + "tax_category" => "", + "tax_category_code" => "", + "tax_category_duplicate" => "", + "tax_category_invalid_chars" => "", + "tax_category_name" => "", + "tax_category_new" => "", + "tax_category_required" => "", + "tax_code" => "", + "tax_code_cannot_be_deleted" => "", + "tax_code_duplicate" => "", + "tax_code_invalid_chars" => "", + "tax_code_name" => "", + "tax_code_required" => "", + "tax_code_successful_deleted" => "", + "tax_code_successful_updated" => "", + "tax_code_successful_updating" => "", + "tax_code_successfully_added" => "", + "tax_code_type" => "", + "tax_codes" => "", + "tax_codes_configuration" => "", + "tax_codes_saved_successfully" => "", + "tax_codes_saved_unsuccessfully" => "", + "tax_excluded" => "", + "tax_group" => "", + "tax_group_not_unique" => "", + "tax_group_sequence" => "", + "tax_included" => "", + "tax_jurisdiction" => "", + "tax_jurisdiction_duplicate" => "", + "tax_jurisdiction_invalid_chars" => "", + "tax_jurisdiction_required" => "", + "tax_jurisdictions" => "", + "tax_jurisdictions_configuration" => "", + "tax_jurisdictions_saved_successfully" => "", + "tax_jurisdictions_saved_unsuccessfully" => "", + "tax_rate" => "", + "tax_rate_configuration" => "", + "tax_rate_error_adding_updating" => "", + "tax_rate_numeric" => "", + "tax_rate_required" => "", + "tax_rate_successful_updated" => "", + "tax_rate_successfully_added" => "", + "tax_rates" => "", + "tax_rates_configuration" => "", + "tax_rounding" => "", + "tax_type" => "", + "update" => "", + "vat_tax" => "", ]; diff --git a/app/Language/ru/Attributes.php b/app/Language/ru/Attributes.php index e29110528..80ebc6b91 100644 --- a/app/Language/ru/Attributes.php +++ b/app/Language/ru/Attributes.php @@ -1,32 +1,32 @@ "Значение атрибута не может содержать ':' или '|'", - "confirm_delete" => "Вы уверены, что хотите удалить выбранные атрибут(ы)?", - "confirm_restore" => "Вы уверены, что хотите восстановить выбранные атрибут(ы)?", - "definition_cannot_be_deleted" => "Не удалось удалить выбранные атрибут(ы)", - "definition_error_adding_updating" => "Атрибут {0} не может быть добавлен или обновлен. Пожалуйста, проверьте журнал ошибок.", - "definition_flags" => "Видимость атрибута", - "definition_group" => "Группа", - "definition_id" => "№", - "definition_name" => "Добавить атрибут", - "definition_name_required" => "Название атрибута - обязательное поле", - "definition_one_or_multiple" => "атрибут(ы)", - "definition_successful_adding" => "Вы успешно добавили товар", - "definition_successful_deleted" => "Успешно удалено", - "definition_successful_updating" => "Обновлено успешно", - "definition_type" => "Тип атрибута", - "definition_type_required" => "Название атрибута - обязательное поле", - "definition_unit" => "Единица измерения", - "definition_values" => "Значения атрибута", - "new" => "Новый атрибут", - "no_attributes_to_display" => "Нет товаров для отображения", - "receipt_visibility" => "Чек", - "show_in_items" => "Показать в товарах", - "show_in_items_visibility" => "Товары", - "show_in_receipt" => "Показать в квитанции", - "show_in_receivings" => "Показать в закупках", - "show_in_receivings_visibility" => "Закупки", - "show_in_sales" => "Показать в продажах", - "show_in_sales_visibility" => "Продажи", - "update" => "Обновить атрибут", + "attribute_value_invalid_chars" => "Значение атрибута не может содержать ':' или '|'", + "confirm_delete" => "Вы уверены, что хотите удалить выбранные атрибут(ы)?", + "confirm_restore" => "Вы уверены, что хотите восстановить выбранные атрибут(ы)?", + "definition_cannot_be_deleted" => "Не удалось удалить выбранные атрибут(ы)", + "definition_error_adding_updating" => "Атрибут {0} не может быть добавлен или обновлен. Пожалуйста, проверьте журнал ошибок.", + "definition_flags" => "Видимость атрибута", + "definition_group" => "Группа", + "definition_id" => "№", + "definition_name" => "Добавить атрибут", + "definition_name_required" => "Название атрибута - обязательное поле", + "definition_one_or_multiple" => "атрибут(ы)", + "definition_successful_adding" => "Вы успешно добавили товар", + "definition_successful_deleted" => "Успешно удалено", + "definition_successful_updating" => "Обновлено успешно", + "definition_type" => "Тип атрибута", + "definition_type_required" => "Название атрибута - обязательное поле", + "definition_unit" => "Единица измерения", + "definition_values" => "Значения атрибута", + "new" => "Новый атрибут", + "no_attributes_to_display" => "Нет товаров для отображения", + "receipt_visibility" => "Чек", + "show_in_items" => "Показать в товарах", + "show_in_items_visibility" => "Товары", + "show_in_receipt" => "Показать в квитанции", + "show_in_receivings" => "Показать в закупках", + "show_in_receivings_visibility" => "Закупки", + "show_in_sales" => "Показать в продажах", + "show_in_sales_visibility" => "Продажи", + "update" => "Обновить атрибут", ]; diff --git a/app/Language/ru/Bootstrap_tables.php b/app/Language/ru/Bootstrap_tables.php index f538c54ad..7ae3e18b2 100644 --- a/app/Language/ru/Bootstrap_tables.php +++ b/app/Language/ru/Bootstrap_tables.php @@ -1,11 +1,11 @@ "все", - "columns" => "Колонки", - "hide_show_pagination" => "Скрыть/Показать нумерацию страниц", - "loading" => "Пожалуйста, подождите, идёт загрузка...", - "page_from_to" => "Показать с {0} по {1} из {2} записей", - "refresh" => "Обновить", - "rows_per_page" => "{0} записей на страницу", - "toggle" => "Переключить", + "all" => "все", + "columns" => "Колонки", + "hide_show_pagination" => "Скрыть/Показать нумерацию страниц", + "loading" => "Пожалуйста, подождите, идёт загрузка...", + "page_from_to" => "Показать с {0} по {1} из {2} записей", + "refresh" => "Обновить", + "rows_per_page" => "{0} записей на страницу", + "toggle" => "Переключить", ]; diff --git a/app/Language/ru/Calendar.php b/app/Language/ru/Calendar.php index f3065bd3a..f6bab4b38 100644 --- a/app/Language/ru/Calendar.php +++ b/app/Language/ru/Calendar.php @@ -1,48 +1,48 @@ "Вс", - "mo" => "Пн", - "tu" => "Вт", - "we" => "Ср", - "th" => "Чт", - "fr" => "Пт", - "sa" => "Сб", - "sun" => "Вс", - "mon" => "Пн", - "tue" => "Вт", - "wed" => "Ср", - "thu" => "Чт", - "fri" => "Пт", - "sat" => "Сб", - "sunday" => "Воскресенье", - "monday" => "Понедельник", - "tuesday" => "Вторник", - "wednesday" => "Среда", - "thursday" => "Четверг", - "friday" => "Пятница", - "saturday" => "Суббота", - "jan" => "Янв", - "feb" => "Фев", - "mar" => "Мар", - "apr" => "Апр", - "may" => "Май", - "jun" => "Июн", - "jul" => "Июл", - "aug" => "Авг", - "sep" => "Сен", - "oct" => "Окт", - "nov" => "Ноя", - "dec" => "Дек", - "january" => "Январь", - "february" => "Февраль", - "march" => "Март", - "april" => "Апрель", - "mayl" => "Май", - "june" => "Июнь", - "july" => "Июль", - "august" => "Август", - "september" => "Сентябрь", - "october" => "Октябрь", - "november" => "Ноябрь", - "december" => "Декабрь", + "su" => "Вс", + "mo" => "Пн", + "tu" => "Вт", + "we" => "Ср", + "th" => "Чт", + "fr" => "Пт", + "sa" => "Сб", + "sun" => "Вс", + "mon" => "Пн", + "tue" => "Вт", + "wed" => "Ср", + "thu" => "Чт", + "fri" => "Пт", + "sat" => "Сб", + "sunday" => "Воскресенье", + "monday" => "Понедельник", + "tuesday" => "Вторник", + "wednesday" => "Среда", + "thursday" => "Четверг", + "friday" => "Пятница", + "saturday" => "Суббота", + "jan" => "Янв", + "feb" => "Фев", + "mar" => "Мар", + "apr" => "Апр", + "may" => "Май", + "jun" => "Июн", + "jul" => "Июл", + "aug" => "Авг", + "sep" => "Сен", + "oct" => "Окт", + "nov" => "Ноя", + "dec" => "Дек", + "january" => "Январь", + "february" => "Февраль", + "march" => "Март", + "april" => "Апрель", + "mayl" => "Май", + "june" => "Июнь", + "july" => "Июль", + "august" => "Август", + "september" => "Сентябрь", + "october" => "Октябрь", + "november" => "Ноябрь", + "december" => "Декабрь", ]; diff --git a/app/Language/ru/Cashups.php b/app/Language/ru/Cashups.php index 0fe3d0de6..1850b9506 100644 --- a/app/Language/ru/Cashups.php +++ b/app/Language/ru/Cashups.php @@ -1,49 +1,49 @@ "Количество", - "amount_number" => "Количество должно быть цифрами", - "amount_required" => "Количество - обязательное поле.", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "", - "cash_difference" => "", - "close_date" => "", - "close_employee" => "", - "closed_amount_card" => "", - "closed_amount_cash" => "", - "closed_amount_check" => "", - "closed_amount_due" => "", - "closed_amount_giftcard" => "", - "closed_amount_total" => "", - "closed_date" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "confirm_submit" => "", - "date_number" => "Дата должна быть цифрами", - "date_required" => "", - "description" => "", - "enable_expected" => "", - "error_adding_updating" => "", - "giftcard" => "", - "id" => "", - "info" => "", - "info_employee" => "", - "is_deleted" => "", - "new" => "", - "no_cashups_to_display" => "", - "none_selected" => "", - "note" => "", - "one_or_multiple" => "", - "open_amount_cash" => "", - "open_date" => "", - "open_employee" => "", - "opened_date" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "total" => "", - "transfer_amount_cash" => "", - "transfer_amount_cash_minus" => "", - "update" => "", - "warning" => "", + "amount" => "Количество", + "amount_number" => "Количество должно быть цифрами", + "amount_required" => "Количество - обязательное поле.", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "", + "cash_difference" => "", + "close_date" => "", + "close_employee" => "", + "closed_amount_card" => "", + "closed_amount_cash" => "", + "closed_amount_check" => "", + "closed_amount_due" => "", + "closed_amount_giftcard" => "", + "closed_amount_total" => "", + "closed_date" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "confirm_submit" => "", + "date_number" => "Дата должна быть цифрами", + "date_required" => "", + "description" => "", + "enable_expected" => "", + "error_adding_updating" => "", + "giftcard" => "", + "id" => "", + "info" => "", + "info_employee" => "", + "is_deleted" => "", + "new" => "", + "no_cashups_to_display" => "", + "none_selected" => "", + "note" => "", + "one_or_multiple" => "", + "open_amount_cash" => "", + "open_date" => "", + "open_employee" => "", + "opened_date" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "total" => "", + "transfer_amount_cash" => "", + "transfer_amount_cash_minus" => "", + "update" => "", + "warning" => "", ]; diff --git a/app/Language/ru/Common.php b/app/Language/ru/Common.php index 392892cc7..527cc77bb 100644 --- a/app/Language/ru/Common.php +++ b/app/Language/ru/Common.php @@ -1,88 +1,88 @@ "Адрес 1", - "address_2" => "Адрес 2", - "admin" => "", - "city" => "Город", - "clerk" => "", - "close" => "Закрыть", - "color" => "", - "comments" => "Комментарии", - "common" => "общее", - "confirm_search" => "Вы выбрали одну или несколько строк, после поиска они больше не будут выбраны. Вы уверены, что хотите отправить этот запрос?", - "copyrights" => "© 2010 - {0}", - "correct_errors" => "", - "country" => "Страна", - "dashboard" => "", - "date" => "Дата", - "delete" => "Удалить", - "det" => "подробности", - "download_import_template" => "Скачать шаблон Импорт Calc (CSV)", - "edit" => "правка", - "email" => "Эл. почта", - "email_invalid_format" => "Адрес электронной почты имеет неправильный формат.", - "export_csv" => "Экспорт в CSV", - "export_csv_no" => "Нет", - "export_csv_yes" => "Да", - "fields_required_message" => "Поля, выделенные красным, обязательны для заполнения", - "fields_required_message_unique" => "", - "first_name" => "Имя", - "first_name_required" => "Имя - обязательное поле для заполнения.", - "first_page" => "Первая", - "gender" => "Пол", - "gender_female" => "Жен.", - "gender_male" => "Муж.", - "gender_undefined" => "", - "icon" => "Иконка", - "id" => "№", - "import" => "Импорт", - "import_change_file" => "Править", - "import_csv" => "Импорт из CSV", - "import_full_path" => "Требуется полный путь к CSV-файлу", - "import_remove_file" => "Удалить", - "import_select_file" => "Выберите файл", - "inv" => "счет", - "last_name" => "Фамилия", - "last_name_required" => "Фамилия - обязательное поле для заполнения.", - "last_page" => "Последняя", - "learn_about_project" => ", чтобы узнать самую последнюю информацию о проекте.", - "list_of" => "Список", - "logo" => "Логотип", - "logo_mark" => "Пометка", - "logout" => "Выход", - "manager" => "", - "migration_needed" => "", - "new" => "Новый", - "no" => "", - "no_persons_to_display" => "Нет информации для отображения.", - "none_selected_text" => "[Выбрать]", - "or" => "ИЛИ", - "people" => "", - "phone_number" => "Номер телефона", - "phone_number_required" => "", - "please_visit_my" => "Посетите", - "position" => "", - "powered_by" => "ПО:", - "price" => "Цена", - "print" => "Печать", - "remove" => "Удалить", - "required" => "Обязательно", - "restore" => "Восстановить", - "return_policy" => "Политика возврата", - "search" => "Поиск", - "search_options" => "Параметры поиска", - "searched_for" => "Найдено", - "software_short" => "", - "software_title" => "Система управления продажами с открытым исходным кодом", - "state" => "Регион", - "submit" => "Сохранить", - "total_spent" => "Всего потрачено", - "unknown" => "Неизветсно", - "view_recent_sales" => "Посмотреть недавние продажи", - "website" => "opensourcepos.org", - "welcome" => "Добро пожаловать", - "welcome_message" => "Добро пожаловать в OSPOS, нажмите на модули ниже, чтобы начать.", - "yes" => "", - "you_are_using_ospos" => "Вы использоваете Open Source Point Of Sale Версия", - "zip" => "Почтовый индекс", + "address_1" => "Адрес 1", + "address_2" => "Адрес 2", + "admin" => "", + "city" => "Город", + "clerk" => "", + "close" => "Закрыть", + "color" => "", + "comments" => "Комментарии", + "common" => "общее", + "confirm_search" => "Вы выбрали одну или несколько строк, после поиска они больше не будут выбраны. Вы уверены, что хотите отправить этот запрос?", + "copyrights" => "© 2010 - {0}", + "correct_errors" => "", + "country" => "Страна", + "dashboard" => "", + "date" => "Дата", + "delete" => "Удалить", + "det" => "подробности", + "download_import_template" => "Скачать шаблон Импорт Calc (CSV)", + "edit" => "правка", + "email" => "Эл. почта", + "email_invalid_format" => "Адрес электронной почты имеет неправильный формат.", + "export_csv" => "Экспорт в CSV", + "export_csv_no" => "Нет", + "export_csv_yes" => "Да", + "fields_required_message" => "Поля, выделенные красным, обязательны для заполнения", + "fields_required_message_unique" => "", + "first_name" => "Имя", + "first_name_required" => "Имя - обязательное поле для заполнения.", + "first_page" => "Первая", + "gender" => "Пол", + "gender_female" => "Жен.", + "gender_male" => "Муж.", + "gender_undefined" => "", + "icon" => "Иконка", + "id" => "№", + "import" => "Импорт", + "import_change_file" => "Править", + "import_csv" => "Импорт из CSV", + "import_full_path" => "Требуется полный путь к CSV-файлу", + "import_remove_file" => "Удалить", + "import_select_file" => "Выберите файл", + "inv" => "счет", + "last_name" => "Фамилия", + "last_name_required" => "Фамилия - обязательное поле для заполнения.", + "last_page" => "Последняя", + "learn_about_project" => ", чтобы узнать самую последнюю информацию о проекте.", + "list_of" => "Список", + "logo" => "Логотип", + "logo_mark" => "Пометка", + "logout" => "Выход", + "manager" => "", + "migration_needed" => "", + "new" => "Новый", + "no" => "", + "no_persons_to_display" => "Нет информации для отображения.", + "none_selected_text" => "[Выбрать]", + "or" => "ИЛИ", + "people" => "", + "phone_number" => "Номер телефона", + "phone_number_required" => "", + "please_visit_my" => "Посетите", + "position" => "", + "powered_by" => "ПО:", + "price" => "Цена", + "print" => "Печать", + "remove" => "Удалить", + "required" => "Обязательно", + "restore" => "Восстановить", + "return_policy" => "Политика возврата", + "search" => "Поиск", + "search_options" => "Параметры поиска", + "searched_for" => "Найдено", + "software_short" => "", + "software_title" => "Система управления продажами с открытым исходным кодом", + "state" => "Регион", + "submit" => "Сохранить", + "total_spent" => "Всего потрачено", + "unknown" => "Неизветсно", + "view_recent_sales" => "Посмотреть недавние продажи", + "website" => "opensourcepos.org", + "welcome" => "Добро пожаловать", + "welcome_message" => "Добро пожаловать в OSPOS, нажмите на модули ниже, чтобы начать.", + "yes" => "", + "you_are_using_ospos" => "Вы использоваете Open Source Point Of Sale Версия", + "zip" => "Почтовый индекс", ]; diff --git a/app/Language/ru/Config.php b/app/Language/ru/Config.php index 6503275fc..0894924f5 100644 --- a/app/Language/ru/Config.php +++ b/app/Language/ru/Config.php @@ -1,330 +1,330 @@ "Адрес компании", - "address_required" => "Адрес компании - обязательное поле для заполнения.", - "all_set" => "Все права доступа к файлам установлены правильно!", - "allow_duplicate_barcodes" => "Разрешить дубликаты штрих-кодов", - "apostrophe" => "апостроф", - "backup_button" => "Резервная копия", - "backup_database" => "Резервная копия базы данных", - "barcode" => "Штрих-код", - "barcode_company" => "Название компании", - "barcode_configuration" => "Параметры штрих-кода", - "barcode_content" => "Содержание штрих-кода", - "barcode_first_row" => "Строка 1", - "barcode_font" => "Шрифт", - "barcode_formats" => "Формат ввода", - "barcode_generate_if_empty" => "Сгенерировать новый, если пусто.", - "barcode_height" => "Высота (пикс.)", - "barcode_id" => "№ товара/Название", - "barcode_info" => "Информация о параметрах штрих-кода", - "barcode_layout" => "Макет штрих-кода", - "barcode_name" => "Название", - "barcode_number" => "Штрих-код", - "barcode_number_in_row" => "Номер в строке", - "barcode_page_cellspacing" => "Расстояние между ячейками.", - "barcode_page_width" => "Ширина страницы", - "barcode_price" => "Цена", - "barcode_second_row" => "Строка 2", - "barcode_third_row" => "Строка 3", - "barcode_tooltip" => "Предупреждение: Эта функция может привести к тому, что будут созданы или импортированы дублирующиеся товары. Не используйте, если вы не хотите дублировать штрих-коды.", - "barcode_type" => "Тип штрих-кода", - "barcode_width" => "Ширина (пикс.)", - "bottom" => "Конец", - "cash_button" => "", - "cash_button_1" => "", - "cash_button_2" => "", - "cash_button_3" => "", - "cash_button_4" => "", - "cash_button_5" => "", - "cash_button_6" => "", - "cash_decimals" => "Цены - десятичные дроби", - "cash_decimals_tooltip" => "Если десятичные дроби для цен и валюты совпадают, то это не будет выполняться, если для цен не установлено округление до пяти.", - "cash_rounding" => "Округление цен", - "category_dropdown" => "Показывать категории всплывающим списом", - "center" => "Центр", - "change_apperance_tooltip" => "", - "comma" => "Запятая", - "company" => "Название компании", - "company_avatar" => "", - "company_change_image" => "Сменить изображение", - "company_logo" => "Логотип компании", - "company_remove_image" => "Удалить изображение", - "company_required" => "Название компании - обязательное поле для заполнения", - "company_select_image" => "Выбрать изображение", - "company_website_url" => "Веб-сайт компании не является допустимым адресом (https://...).", - "country_codes" => "Коды cтран", - "country_codes_tooltip" => "Разделенный запятыми список кодов стран для поиска адреса.", - "currency_code" => "Код валюты", - "currency_decimals" => "Валюта - десятичные дроби", - "currency_symbol" => "Символ валюты", - "current_employee_only" => "", - "customer_reward" => "Вознаграждение", - "customer_reward_duplicate" => "Вознаграждение должно быть уникальным.", - "customer_reward_enable" => "Включить программу лояльности", - "customer_reward_invalid_chars" => "Вознаграждение не может содержать '_'", - "customer_reward_required" => "Вознаграждение - обязательное поле для заполнения", - "customer_sales_tax_support" => "", - "date_or_time_format" => "Фильтр даты и времени", - "datetimeformat" => "Формат даты и времени", - "decimal_point" => "Разделитель десятичных", - "default_barcode_font_size_number" => "Размер шрифта штрих-кода должен быть введен цифрами.", - "default_barcode_font_size_required" => "Размер шрифта штрих-кода - обязательное поле.", - "default_barcode_height_number" => "Высота штрих-кода должна быть введена цифрами.", - "default_barcode_height_required" => "Высота штрих-кода - обязательное поле.", - "default_barcode_num_in_row_number" => "Номер штрих-кода должен быть введен цифрами.", - "default_barcode_num_in_row_required" => "Номер штрих-кода - обязательное поле.", - "default_barcode_page_cellspacing_number" => "Расстояние между ячейками страницы штрих-кода должено быть введено цифрами.", - "default_barcode_page_cellspacing_required" => "Расстояние между ячейками страницы штрих-кода - обязательное поле.", - "default_barcode_page_width_number" => "Ширина страницы штрих-кода должна быть введена цифрами.", - "default_barcode_page_width_required" => "Ширина страницы штрих-кода - обязательное поле.", - "default_barcode_width_number" => "Ширина штрих-кода должна быть введена цифрами.", - "default_barcode_width_required" => "Ширина штрих-кода - обязательное поле.", - "default_item_columns" => "Колонки по умолчанию", - "default_origin_tax_code" => "Код налога по умолчанию", - "default_receivings_discount" => "Скидка на закупки по умолчанию", - "default_receivings_discount_number" => "Скидка на закупки должна быть введена цифрами.", - "default_receivings_discount_required" => "Скидка на закупки - обязательное поле.", - "default_sales_discount" => "Скидка с продаж по умолчанию", - "default_sales_discount_number" => "Скидка с продаж должна быть введена цифрами.", - "default_sales_discount_required" => "Скидка с продаж - обязательное поле.", - "default_tax_category" => "Категория налогов по умолчанию", - "default_tax_code" => "Код налога по умолчанию", - "default_tax_jurisdiction" => "Налоговая юрисдикция по умолчанию", - "default_tax_name_number" => "Название налога должно быть строкой.", - "default_tax_name_required" => "Название налога - обязательное поле.", - "default_tax_rate" => "Ставка налога по умолчанию (в %)", - "default_tax_rate_1" => "Ставка налога 1", - "default_tax_rate_2" => "Ставка налога 2", - "default_tax_rate_3" => "", - "default_tax_rate_number" => "Ставка налога должна быть введена цифрами.", - "default_tax_rate_required" => "Ставка налога - обязательное поле.", - "derive_sale_quantity" => "Разрешить кол-во основанное на продажах", - "derive_sale_quantity_tooltip" => "Если этот флажок установлен, для товаров, заказанных на расширенную сумму, будет предоставлен новый тип товара", - "dinner_table" => "Столы", - "dinner_table_duplicate" => "Стол должен быть уникальным.", - "dinner_table_enable" => "Включить обеденные столы", - "dinner_table_invalid_chars" => "Название стола не может содержать '_'.", - "dinner_table_required" => "Название стола - обязательное поле.", - "dot" => "точка", - "email" => "Эл. почта", - "email_configuration" => "Параметры эл. почты", - "email_mailpath" => "Адрес эл. почты", - "email_protocol" => "Протокол", - "email_receipt_check_behaviour" => "Чек по эл. почте", - "email_receipt_check_behaviour_always" => "Всегда активно", - "email_receipt_check_behaviour_last" => "Запомнить последний выбор", - "email_receipt_check_behaviour_never" => "Всегда неактивно", - "email_smtp_crypto" => "Шифрование SMTP", - "email_smtp_host" => "Сервер SMTP", - "email_smtp_pass" => "Пароль SMTP", - "email_smtp_port" => "Порт SMTP", - "email_smtp_timeout" => "Задержка SMTP (сек.)", - "email_smtp_user" => "Имя пользователя SMTP", - "enable_avatar" => "", - "enable_avatar_tooltip" => "", - "enable_dropdown_tooltip" => "", - "enable_new_look" => "", - "enable_right_bar" => "", - "enable_right_bar_tooltip" => "", - "enforce_privacy" => "Конфиденциальность", - "enforce_privacy_tooltip" => "Защитите конфиденциальность клиентов, применяя шифрование данных в случае их удаления", - "fax" => "Факс", - "file_perm" => "Есть проблемы с правами доступа к файлам. Пожалуйста, исправьте и перезагрузите эту страницу.", - "financial_year" => "Начало финансового года", - "financial_year_apr" => "1-е апреля", - "financial_year_aug" => "1-е августа", - "financial_year_dec" => "1-е декабря", - "financial_year_feb" => "1-е февраля", - "financial_year_jan" => "1-е января", - "financial_year_jul" => "1-е июля", - "financial_year_jun" => "1-е июня", - "financial_year_mar" => "1-е марта", - "financial_year_may" => "1-е мая", - "financial_year_nov" => "1-е ноября", - "financial_year_oct" => "1-е октября", - "financial_year_sep" => "1-е сентября", - "floating_labels" => "Всплывающие заголовки", - "gcaptcha_enable" => "Страница входа с защитой reCAPTCHA", - "gcaptcha_secret_key" => "reCAPTCHA секретный ключ", - "gcaptcha_secret_key_required" => "reCAPTCHA секретный ключ - обязательное поле", - "gcaptcha_site_key" => "reCAPTCHA Ключ сайта", - "gcaptcha_site_key_required" => "reCAPTCHA Ключ сайта - обязательное поле", - "gcaptcha_tooltip" => "Защитите страницу входа с помощью Google reCAPTCHA.", - "general" => "Основные", - "general_configuration" => "Общие настройки", - "giftcard_number" => "Номер подарочной карты", - "giftcard_random" => "Сгенерировать случайно", - "giftcard_series" => "Сгенерировать в серии", - "image_allowed_file_types" => "Доступные типы файлов", - "image_max_height_tooltip" => "Максимально допустимая высота загружаемых изображений в пикселях.", - "image_max_size_tooltip" => "Максимально допустимый размер загружаемого файла изображения в килобайтах (кб).", - "image_max_width_tooltip" => "Максимально допустимая ширина загружаемых изображений в пикселях.", - "image_restrictions" => "Ограничения на загрузку изображений", - "include_hsn" => "Включить поддержку кодов HSN", - "info" => "Информация", - "info_configuration" => "Информация о магазине", - "input_groups" => "Входные группы", - "integrations" => "Интеграции", - "integrations_configuration" => "Сторонние интеграции", - "invoice" => "Счет (накладная)", - "invoice_configuration" => "Настройки печати накладной", - "invoice_default_comments" => "Комментарии к накладной по умолчанию", - "invoice_email_message" => "Шаблон эл. письма накладной", - "invoice_enable" => "Включить накладные", - "invoice_printer" => "Принтер накладных", - "invoice_type" => "Тип накладной", - "is_readable" => "доступно для чтения, но права выставлены неправильно. Установите их на 640 или 660 и обновите эту страницу.", - "is_writable" => "доступно для чтения, но права установлены неправильно. Установите их на 750 и обновите эту страницу.", - "item_markup" => "", - "jsprintsetup_required" => "Предупреждение: эта функция будет работать, только если у вас установлено дополнение FireFox jsPrintSetup. Все равно сохранить?", - "language" => "Язык", - "last_used_invoice_number" => "Последний использованный номер накладной", - "last_used_quote_number" => "Последний номер предложения", - "last_used_work_order_number" => "Последний номер рабочего заказа", - "left" => "Слева", - "license" => "Лицензии", - "license_configuration" => "Заявление о лицензии", - "line_sequence" => "Последовательность строк", - "lines_per_page" => "Кол-во строк на страницу", - "lines_per_page_number" => "Кол-во строк на страницу должно быть введено цифрами.", - "lines_per_page_required" => "Кол-во строк на страницу - обязательное поле.", - "locale" => "Локализация", - "locale_configuration" => "Параметры локализации", - "locale_info" => "Информация о параметрах локализации", - "location" => "Склад", - "location_configuration" => "Расположение складов", - "location_info" => "Информация о параметрах расположения", - "login_form" => "Стиль формы входа", - "logout" => "Вы хотите сделать резервную копию перед выходом из системы? Нажмите [OK] для резервного копирования или [Отмена] для выхода.", - "mailchimp" => "MailChimp", - "mailchimp_api_key" => "MailChimp API-ключ", - "mailchimp_configuration" => "Настройки MailChimp", - "mailchimp_key_successfully" => "API-ключ верен.", - "mailchimp_key_unsuccessfully" => "Неверный API-ключ.", - "mailchimp_lists" => "Списки MailChimp", - "mailchimp_tooltip" => "Нажмите на значок API-ключа.", - "message" => "SMS", - "message_configuration" => "Настройки сообщений", - "msg_msg" => "Сохраненные текстовые сообщения", - "msg_msg_placeholder" => "Если вы хотите использовать шаблон SMS, сохраните свое сообщение здесь, в противном случае оставьте поле пустым.", - "msg_pwd" => "Пароль SMS-API", - "msg_pwd_required" => "Пароль SMS-API - обязательное поле", - "msg_src" => "ID отправителя SMS-API", - "msg_src_required" => "ID отправителя SMS-API - обязательное поле", - "msg_uid" => "Пользователь SMS-API", - "msg_uid_required" => "Пользователь SMS-API - обязательное поле", - "multi_pack_enabled" => "Несколько упаковок на товар", - "no_risk" => "Нет рисков безопасности/уязвимостей.", - "none" => "нет", - "notify_alignment" => "Позиция всплывающего уведомления", - "number_format" => "Формат номера", - "number_locale" => "Локализация", - "number_locale_invalid" => "Введенный регион недействителен. Проверьте ссылку во всплывающей подсказке, чтобы найти допустимый регион.", - "number_locale_required" => "Региональный номер - обязательное поле.", - "number_locale_tooltip" => "Найдите подходящий регион по этой ссылке.", - "os_timezone" => "Часовой пояс системы:", - "ospos_info" => "Информация об установке OSPOS", - "payment_options_order" => "Параметры оплаты заказа", - "perm_risk" => "Неправильные разрешения на доступ подвергают это программное обеспечение риску.", - "phone" => "Телефон компании", - "phone_required" => "Телефон компании - обязательное поле.", - "print_bottom_margin" => "Отступ снизу", - "print_bottom_margin_number" => "Отступ снизу должен быть введен цифрами.", - "print_bottom_margin_required" => "Отступ снизу - обязательное поле.", - "print_delay_autoreturn" => "Задержка автовозврата", - "print_delay_autoreturn_number" => "Задержка автовозврата - обязательное поле.", - "print_delay_autoreturn_required" => "Задержка автовозврата должна быть введена цифрами.", - "print_footer" => "Печать нижнего колонтитула браузера", - "print_header" => "Печать верхнего колонтитула браузера", - "print_left_margin" => "Отступ слева", - "print_left_margin_number" => "Отступ слева должен быть введен цифрами.", - "print_left_margin_required" => "Отступ слева - обязательное поле.", - "print_receipt_check_behaviour" => "Опция печати квитанции", - "print_receipt_check_behaviour_always" => "Всегда активно", - "print_receipt_check_behaviour_last" => "Запомнить последний выбор", - "print_receipt_check_behaviour_never" => "Всегда неактивно", - "print_right_margin" => "Отступ справа", - "print_right_margin_number" => "Отступ справа должен быть введен цифрами.", - "print_right_margin_required" => "Отступ справа - обязательное поле.", - "print_silently" => "Показывать уведомление о печати", - "print_top_margin" => "Отступ сверху", - "print_top_margin_number" => "Отступ сверху должен быть введен цифрами.", - "print_top_margin_required" => "Отступ сверху - обязательное поле.", - "quantity_decimals" => "Количество - десятичные дроби", - "quick_cash_enable" => "", - "quote_default_comments" => "Комментарий для предложения по умолчанию", - "receipt" => "Чек", - "receipt_category" => "", - "receipt_configuration" => "Параметры печати чека", - "receipt_default" => "По умолчанию", - "receipt_font_size" => "Размер шрифта", - "receipt_font_size_number" => "Размер шрифта должен быть введен цифрами.", - "receipt_font_size_required" => "Размер шрифта - обязательное поле.", - "receipt_info" => "Информация о настройках квитанций", - "receipt_printer" => "Билетный принтер", - "receipt_short" => "Короткий", - "receipt_show_company_name" => "Показывать название компании", - "receipt_show_description" => "Показывать описание", - "receipt_show_serialnumber" => "Показывать серийный номер", - "receipt_show_tax_ind" => "Показывать налоговый индикатор", - "receipt_show_taxes" => "Показывать налоги", - "receipt_show_total_discount" => "Показывать общую скидку", - "receipt_template" => "Шаблон чека", - "receiving_calculate_average_price" => "Расчет сред. цены (закупки)", - "recv_invoice_format" => "Формат накладной для закупок", - "register_mode_default" => "Режим регистрации по умолчанию", - "report_an_issue" => "Сообщить о проблеме", - "return_policy_required" => "Политика возврата - обязательное поле.", - "reward" => "Программа лояльности", - "reward_configuration" => "Параметры программы лояльности", - "right" => "Справа", - "sales_invoice_format" => "Формат накладной для продаж", - "sales_quote_format" => "Формат предложений на продажу", - "saved_successfully" => "Конфигурация успешно сохранена.", - "saved_unsuccessfully" => "Произошла ошибка при сохранении конфигурации.", - "security_issue" => "Предупреждение об уязвимости системы безопасности", - "server_notice" => "Пожалуйста, используйте приведенную ниже информацию для сообщения о проблеме.", - "service_charge" => "", - "show_due_enable" => "", - "show_office_group" => "Показать значок \"Офис\"", - "statistics" => "Отправить статистику", - "statistics_tooltip" => "Отправляйте статистику для разработки и улучшения функций.", - "stock_location" => "Расположение склада", - "stock_location_duplicate" => "Местоположение склада должно быть уникальным.", - "stock_location_invalid_chars" => "Местоположение склада не может содержать '_'.", - "stock_location_required" => "Местонахождение склада - обязательное поле.", - "suggestions_fifth_column" => "", - "suggestions_first_column" => "Колонка 1", - "suggestions_fourth_column" => "", - "suggestions_layout" => "Макет предложений поиска", - "suggestions_second_column" => "Колонка 2", - "suggestions_third_column" => "Колонка 3", - "system_conf" => "Информация", - "system_info" => "Системная информация", - "table" => "Столики", - "table_configuration" => "Настройка столов", - "takings_printer" => "Чековый принтер", - "tax" => "Налог", - "tax_category" => "Категория налога", - "tax_category_duplicate" => "Введенная налоговая категория уже существует.", - "tax_category_invalid_chars" => "Введенная налоговая категория недействительна.", - "tax_category_required" => "Налоговая категория - обязательна для заполнения.", - "tax_category_used" => "Налоговая категория не может быть удалена, поскольку она используется.", - "tax_configuration" => "Параметры налогов", - "tax_decimals" => "Налоги - десятичные дроби", - "tax_id" => "№ налога", - "tax_included" => "Вкл. налоги", - "theme" => "Тема", - "theme_preview" => "Предпросмотр темы:", - "thousands_separator" => "Разделитель тысяч", - "timezone" => "Часовой пояс", - "timezone_error" => "Часовой пояс системы отличается от вашего местного часового пояса.", - "top" => "Вверх", - "use_destination_based_tax" => "Использовать налог на основе пункта назначения", - "user_timezone" => "Ваш часовой пояс:", - "website" => "Веб-сайт", - "wholesale_markup" => "", - "work_order_enable" => "Поддержка рабочих заказов", - "work_order_format" => "Формат рабочих заказов", + "address" => "Адрес компании", + "address_required" => "Адрес компании - обязательное поле для заполнения.", + "all_set" => "Все права доступа к файлам установлены правильно!", + "allow_duplicate_barcodes" => "Разрешить дубликаты штрих-кодов", + "apostrophe" => "апостроф", + "backup_button" => "Резервная копия", + "backup_database" => "Резервная копия базы данных", + "barcode" => "Штрих-код", + "barcode_company" => "Название компании", + "barcode_configuration" => "Параметры штрих-кода", + "barcode_content" => "Содержание штрих-кода", + "barcode_first_row" => "Строка 1", + "barcode_font" => "Шрифт", + "barcode_formats" => "Формат ввода", + "barcode_generate_if_empty" => "Сгенерировать новый, если пусто.", + "barcode_height" => "Высота (пикс.)", + "barcode_id" => "№ товара/Название", + "barcode_info" => "Информация о параметрах штрих-кода", + "barcode_layout" => "Макет штрих-кода", + "barcode_name" => "Название", + "barcode_number" => "Штрих-код", + "barcode_number_in_row" => "Номер в строке", + "barcode_page_cellspacing" => "Расстояние между ячейками.", + "barcode_page_width" => "Ширина страницы", + "barcode_price" => "Цена", + "barcode_second_row" => "Строка 2", + "barcode_third_row" => "Строка 3", + "barcode_tooltip" => "Предупреждение: Эта функция может привести к тому, что будут созданы или импортированы дублирующиеся товары. Не используйте, если вы не хотите дублировать штрих-коды.", + "barcode_type" => "Тип штрих-кода", + "barcode_width" => "Ширина (пикс.)", + "bottom" => "Конец", + "cash_button" => "", + "cash_button_1" => "", + "cash_button_2" => "", + "cash_button_3" => "", + "cash_button_4" => "", + "cash_button_5" => "", + "cash_button_6" => "", + "cash_decimals" => "Цены - десятичные дроби", + "cash_decimals_tooltip" => "Если десятичные дроби для цен и валюты совпадают, то это не будет выполняться, если для цен не установлено округление до пяти.", + "cash_rounding" => "Округление цен", + "category_dropdown" => "Показывать категории всплывающим списом", + "center" => "Центр", + "change_apperance_tooltip" => "", + "comma" => "Запятая", + "company" => "Название компании", + "company_avatar" => "", + "company_change_image" => "Сменить изображение", + "company_logo" => "Логотип компании", + "company_remove_image" => "Удалить изображение", + "company_required" => "Название компании - обязательное поле для заполнения", + "company_select_image" => "Выбрать изображение", + "company_website_url" => "Веб-сайт компании не является допустимым адресом (https://...).", + "country_codes" => "Коды cтран", + "country_codes_tooltip" => "Разделенный запятыми список кодов стран для поиска адреса.", + "currency_code" => "Код валюты", + "currency_decimals" => "Валюта - десятичные дроби", + "currency_symbol" => "Символ валюты", + "current_employee_only" => "", + "customer_reward" => "Вознаграждение", + "customer_reward_duplicate" => "Вознаграждение должно быть уникальным.", + "customer_reward_enable" => "Включить программу лояльности", + "customer_reward_invalid_chars" => "Вознаграждение не может содержать '_'", + "customer_reward_required" => "Вознаграждение - обязательное поле для заполнения", + "customer_sales_tax_support" => "", + "date_or_time_format" => "Фильтр даты и времени", + "datetimeformat" => "Формат даты и времени", + "decimal_point" => "Разделитель десятичных", + "default_barcode_font_size_number" => "Размер шрифта штрих-кода должен быть введен цифрами.", + "default_barcode_font_size_required" => "Размер шрифта штрих-кода - обязательное поле.", + "default_barcode_height_number" => "Высота штрих-кода должна быть введена цифрами.", + "default_barcode_height_required" => "Высота штрих-кода - обязательное поле.", + "default_barcode_num_in_row_number" => "Номер штрих-кода должен быть введен цифрами.", + "default_barcode_num_in_row_required" => "Номер штрих-кода - обязательное поле.", + "default_barcode_page_cellspacing_number" => "Расстояние между ячейками страницы штрих-кода должено быть введено цифрами.", + "default_barcode_page_cellspacing_required" => "Расстояние между ячейками страницы штрих-кода - обязательное поле.", + "default_barcode_page_width_number" => "Ширина страницы штрих-кода должна быть введена цифрами.", + "default_barcode_page_width_required" => "Ширина страницы штрих-кода - обязательное поле.", + "default_barcode_width_number" => "Ширина штрих-кода должна быть введена цифрами.", + "default_barcode_width_required" => "Ширина штрих-кода - обязательное поле.", + "default_item_columns" => "Колонки по умолчанию", + "default_origin_tax_code" => "Код налога по умолчанию", + "default_receivings_discount" => "Скидка на закупки по умолчанию", + "default_receivings_discount_number" => "Скидка на закупки должна быть введена цифрами.", + "default_receivings_discount_required" => "Скидка на закупки - обязательное поле.", + "default_sales_discount" => "Скидка с продаж по умолчанию", + "default_sales_discount_number" => "Скидка с продаж должна быть введена цифрами.", + "default_sales_discount_required" => "Скидка с продаж - обязательное поле.", + "default_tax_category" => "Категория налогов по умолчанию", + "default_tax_code" => "Код налога по умолчанию", + "default_tax_jurisdiction" => "Налоговая юрисдикция по умолчанию", + "default_tax_name_number" => "Название налога должно быть строкой.", + "default_tax_name_required" => "Название налога - обязательное поле.", + "default_tax_rate" => "Ставка налога по умолчанию (в %)", + "default_tax_rate_1" => "Ставка налога 1", + "default_tax_rate_2" => "Ставка налога 2", + "default_tax_rate_3" => "", + "default_tax_rate_number" => "Ставка налога должна быть введена цифрами.", + "default_tax_rate_required" => "Ставка налога - обязательное поле.", + "derive_sale_quantity" => "Разрешить кол-во основанное на продажах", + "derive_sale_quantity_tooltip" => "Если этот флажок установлен, для товаров, заказанных на расширенную сумму, будет предоставлен новый тип товара", + "dinner_table" => "Столы", + "dinner_table_duplicate" => "Стол должен быть уникальным.", + "dinner_table_enable" => "Включить обеденные столы", + "dinner_table_invalid_chars" => "Название стола не может содержать '_'.", + "dinner_table_required" => "Название стола - обязательное поле.", + "dot" => "точка", + "email" => "Эл. почта", + "email_configuration" => "Параметры эл. почты", + "email_mailpath" => "Адрес эл. почты", + "email_protocol" => "Протокол", + "email_receipt_check_behaviour" => "Чек по эл. почте", + "email_receipt_check_behaviour_always" => "Всегда активно", + "email_receipt_check_behaviour_last" => "Запомнить последний выбор", + "email_receipt_check_behaviour_never" => "Всегда неактивно", + "email_smtp_crypto" => "Шифрование SMTP", + "email_smtp_host" => "Сервер SMTP", + "email_smtp_pass" => "Пароль SMTP", + "email_smtp_port" => "Порт SMTP", + "email_smtp_timeout" => "Задержка SMTP (сек.)", + "email_smtp_user" => "Имя пользователя SMTP", + "enable_avatar" => "", + "enable_avatar_tooltip" => "", + "enable_dropdown_tooltip" => "", + "enable_new_look" => "", + "enable_right_bar" => "", + "enable_right_bar_tooltip" => "", + "enforce_privacy" => "Конфиденциальность", + "enforce_privacy_tooltip" => "Защитите конфиденциальность клиентов, применяя шифрование данных в случае их удаления", + "fax" => "Факс", + "file_perm" => "Есть проблемы с правами доступа к файлам. Пожалуйста, исправьте и перезагрузите эту страницу.", + "financial_year" => "Начало финансового года", + "financial_year_apr" => "1-е апреля", + "financial_year_aug" => "1-е августа", + "financial_year_dec" => "1-е декабря", + "financial_year_feb" => "1-е февраля", + "financial_year_jan" => "1-е января", + "financial_year_jul" => "1-е июля", + "financial_year_jun" => "1-е июня", + "financial_year_mar" => "1-е марта", + "financial_year_may" => "1-е мая", + "financial_year_nov" => "1-е ноября", + "financial_year_oct" => "1-е октября", + "financial_year_sep" => "1-е сентября", + "floating_labels" => "Всплывающие заголовки", + "gcaptcha_enable" => "Страница входа с защитой reCAPTCHA", + "gcaptcha_secret_key" => "reCAPTCHA секретный ключ", + "gcaptcha_secret_key_required" => "reCAPTCHA секретный ключ - обязательное поле", + "gcaptcha_site_key" => "reCAPTCHA Ключ сайта", + "gcaptcha_site_key_required" => "reCAPTCHA Ключ сайта - обязательное поле", + "gcaptcha_tooltip" => "Защитите страницу входа с помощью Google reCAPTCHA.", + "general" => "Основные", + "general_configuration" => "Общие настройки", + "giftcard_number" => "Номер подарочной карты", + "giftcard_random" => "Сгенерировать случайно", + "giftcard_series" => "Сгенерировать в серии", + "image_allowed_file_types" => "Доступные типы файлов", + "image_max_height_tooltip" => "Максимально допустимая высота загружаемых изображений в пикселях.", + "image_max_size_tooltip" => "Максимально допустимый размер загружаемого файла изображения в килобайтах (кб).", + "image_max_width_tooltip" => "Максимально допустимая ширина загружаемых изображений в пикселях.", + "image_restrictions" => "Ограничения на загрузку изображений", + "include_hsn" => "Включить поддержку кодов HSN", + "info" => "Информация", + "info_configuration" => "Информация о магазине", + "input_groups" => "Входные группы", + "integrations" => "Интеграции", + "integrations_configuration" => "Сторонние интеграции", + "invoice" => "Счет (накладная)", + "invoice_configuration" => "Настройки печати накладной", + "invoice_default_comments" => "Комментарии к накладной по умолчанию", + "invoice_email_message" => "Шаблон эл. письма накладной", + "invoice_enable" => "Включить накладные", + "invoice_printer" => "Принтер накладных", + "invoice_type" => "Тип накладной", + "is_readable" => "доступно для чтения, но права выставлены неправильно. Установите их на 640 или 660 и обновите эту страницу.", + "is_writable" => "доступно для чтения, но права установлены неправильно. Установите их на 750 и обновите эту страницу.", + "item_markup" => "", + "jsprintsetup_required" => "Предупреждение: эта функция будет работать, только если у вас установлено дополнение FireFox jsPrintSetup. Все равно сохранить?", + "language" => "Язык", + "last_used_invoice_number" => "Последний использованный номер накладной", + "last_used_quote_number" => "Последний номер предложения", + "last_used_work_order_number" => "Последний номер рабочего заказа", + "left" => "Слева", + "license" => "Лицензии", + "license_configuration" => "Заявление о лицензии", + "line_sequence" => "Последовательность строк", + "lines_per_page" => "Кол-во строк на страницу", + "lines_per_page_number" => "Кол-во строк на страницу должно быть введено цифрами.", + "lines_per_page_required" => "Кол-во строк на страницу - обязательное поле.", + "locale" => "Локализация", + "locale_configuration" => "Параметры локализации", + "locale_info" => "Информация о параметрах локализации", + "location" => "Склад", + "location_configuration" => "Расположение складов", + "location_info" => "Информация о параметрах расположения", + "login_form" => "Стиль формы входа", + "logout" => "Вы хотите сделать резервную копию перед выходом из системы? Нажмите [OK] для резервного копирования или [Отмена] для выхода.", + "mailchimp" => "MailChimp", + "mailchimp_api_key" => "MailChimp API-ключ", + "mailchimp_configuration" => "Настройки MailChimp", + "mailchimp_key_successfully" => "API-ключ верен.", + "mailchimp_key_unsuccessfully" => "Неверный API-ключ.", + "mailchimp_lists" => "Списки MailChimp", + "mailchimp_tooltip" => "Нажмите на значок API-ключа.", + "message" => "SMS", + "message_configuration" => "Настройки сообщений", + "msg_msg" => "Сохраненные текстовые сообщения", + "msg_msg_placeholder" => "Если вы хотите использовать шаблон SMS, сохраните свое сообщение здесь, в противном случае оставьте поле пустым.", + "msg_pwd" => "Пароль SMS-API", + "msg_pwd_required" => "Пароль SMS-API - обязательное поле", + "msg_src" => "ID отправителя SMS-API", + "msg_src_required" => "ID отправителя SMS-API - обязательное поле", + "msg_uid" => "Пользователь SMS-API", + "msg_uid_required" => "Пользователь SMS-API - обязательное поле", + "multi_pack_enabled" => "Несколько упаковок на товар", + "no_risk" => "Нет рисков безопасности/уязвимостей.", + "none" => "нет", + "notify_alignment" => "Позиция всплывающего уведомления", + "number_format" => "Формат номера", + "number_locale" => "Локализация", + "number_locale_invalid" => "Введенный регион недействителен. Проверьте ссылку во всплывающей подсказке, чтобы найти допустимый регион.", + "number_locale_required" => "Региональный номер - обязательное поле.", + "number_locale_tooltip" => "Найдите подходящий регион по этой ссылке.", + "os_timezone" => "Часовой пояс системы:", + "ospos_info" => "Информация об установке OSPOS", + "payment_options_order" => "Параметры оплаты заказа", + "perm_risk" => "Неправильные разрешения на доступ подвергают это программное обеспечение риску.", + "phone" => "Телефон компании", + "phone_required" => "Телефон компании - обязательное поле.", + "print_bottom_margin" => "Отступ снизу", + "print_bottom_margin_number" => "Отступ снизу должен быть введен цифрами.", + "print_bottom_margin_required" => "Отступ снизу - обязательное поле.", + "print_delay_autoreturn" => "Задержка автовозврата", + "print_delay_autoreturn_number" => "Задержка автовозврата - обязательное поле.", + "print_delay_autoreturn_required" => "Задержка автовозврата должна быть введена цифрами.", + "print_footer" => "Печать нижнего колонтитула браузера", + "print_header" => "Печать верхнего колонтитула браузера", + "print_left_margin" => "Отступ слева", + "print_left_margin_number" => "Отступ слева должен быть введен цифрами.", + "print_left_margin_required" => "Отступ слева - обязательное поле.", + "print_receipt_check_behaviour" => "Опция печати квитанции", + "print_receipt_check_behaviour_always" => "Всегда активно", + "print_receipt_check_behaviour_last" => "Запомнить последний выбор", + "print_receipt_check_behaviour_never" => "Всегда неактивно", + "print_right_margin" => "Отступ справа", + "print_right_margin_number" => "Отступ справа должен быть введен цифрами.", + "print_right_margin_required" => "Отступ справа - обязательное поле.", + "print_silently" => "Показывать уведомление о печати", + "print_top_margin" => "Отступ сверху", + "print_top_margin_number" => "Отступ сверху должен быть введен цифрами.", + "print_top_margin_required" => "Отступ сверху - обязательное поле.", + "quantity_decimals" => "Количество - десятичные дроби", + "quick_cash_enable" => "", + "quote_default_comments" => "Комментарий для предложения по умолчанию", + "receipt" => "Чек", + "receipt_category" => "", + "receipt_configuration" => "Параметры печати чека", + "receipt_default" => "По умолчанию", + "receipt_font_size" => "Размер шрифта", + "receipt_font_size_number" => "Размер шрифта должен быть введен цифрами.", + "receipt_font_size_required" => "Размер шрифта - обязательное поле.", + "receipt_info" => "Информация о настройках квитанций", + "receipt_printer" => "Билетный принтер", + "receipt_short" => "Короткий", + "receipt_show_company_name" => "Показывать название компании", + "receipt_show_description" => "Показывать описание", + "receipt_show_serialnumber" => "Показывать серийный номер", + "receipt_show_tax_ind" => "Показывать налоговый индикатор", + "receipt_show_taxes" => "Показывать налоги", + "receipt_show_total_discount" => "Показывать общую скидку", + "receipt_template" => "Шаблон чека", + "receiving_calculate_average_price" => "Расчет сред. цены (закупки)", + "recv_invoice_format" => "Формат накладной для закупок", + "register_mode_default" => "Режим регистрации по умолчанию", + "report_an_issue" => "Сообщить о проблеме", + "return_policy_required" => "Политика возврата - обязательное поле.", + "reward" => "Программа лояльности", + "reward_configuration" => "Параметры программы лояльности", + "right" => "Справа", + "sales_invoice_format" => "Формат накладной для продаж", + "sales_quote_format" => "Формат предложений на продажу", + "saved_successfully" => "Конфигурация успешно сохранена.", + "saved_unsuccessfully" => "Произошла ошибка при сохранении конфигурации.", + "security_issue" => "Предупреждение об уязвимости системы безопасности", + "server_notice" => "Пожалуйста, используйте приведенную ниже информацию для сообщения о проблеме.", + "service_charge" => "", + "show_due_enable" => "", + "show_office_group" => "Показать значок \"Офис\"", + "statistics" => "Отправить статистику", + "statistics_tooltip" => "Отправляйте статистику для разработки и улучшения функций.", + "stock_location" => "Расположение склада", + "stock_location_duplicate" => "Местоположение склада должно быть уникальным.", + "stock_location_invalid_chars" => "Местоположение склада не может содержать '_'.", + "stock_location_required" => "Местонахождение склада - обязательное поле.", + "suggestions_fifth_column" => "", + "suggestions_first_column" => "Колонка 1", + "suggestions_fourth_column" => "", + "suggestions_layout" => "Макет предложений поиска", + "suggestions_second_column" => "Колонка 2", + "suggestions_third_column" => "Колонка 3", + "system_conf" => "Информация", + "system_info" => "Системная информация", + "table" => "Столики", + "table_configuration" => "Настройка столов", + "takings_printer" => "Чековый принтер", + "tax" => "Налог", + "tax_category" => "Категория налога", + "tax_category_duplicate" => "Введенная налоговая категория уже существует.", + "tax_category_invalid_chars" => "Введенная налоговая категория недействительна.", + "tax_category_required" => "Налоговая категория - обязательна для заполнения.", + "tax_category_used" => "Налоговая категория не может быть удалена, поскольку она используется.", + "tax_configuration" => "Параметры налогов", + "tax_decimals" => "Налоги - десятичные дроби", + "tax_id" => "№ налога", + "tax_included" => "Вкл. налоги", + "theme" => "Тема", + "theme_preview" => "Предпросмотр темы:", + "thousands_separator" => "Разделитель тысяч", + "timezone" => "Часовой пояс", + "timezone_error" => "Часовой пояс системы отличается от вашего местного часового пояса.", + "top" => "Вверх", + "use_destination_based_tax" => "Использовать налог на основе пункта назначения", + "user_timezone" => "Ваш часовой пояс:", + "website" => "Веб-сайт", + "wholesale_markup" => "", + "work_order_enable" => "Поддержка рабочих заказов", + "work_order_format" => "Формат рабочих заказов", ]; diff --git a/app/Language/ru/Customers.php b/app/Language/ru/Customers.php index bebdb1d51..448b3986d 100644 --- a/app/Language/ru/Customers.php +++ b/app/Language/ru/Customers.php @@ -1,56 +1,56 @@ "№ клиента", - "account_number_duplicate" => "Номер клиента уже присутствует в базе данных.", - "available_points" => "Доступные баллы", - "available_points_value" => "", - "average" => "Средние траты", - "avg_discount" => "Средняя скидка", - "basic_information" => "Информация", - "cannot_be_deleted" => "Не удалось удалить выбранных клиентов, у одного или нескольких выбранных клиентов есть продажи.", - "company_name" => "Компания", - "confirm_delete" => "Вы уверены, что хотите удалить выбранных клиентов?", - "confirm_restore" => "Вы уверены, что хотите восстановить выбранных клиентов?", - "consent" => "Согласие на регистрацию", - "consent_required" => "Согласие на регистрацию - обязательное поле.", - "csv_import_failed" => "Ошибка импорта CSV", - "csv_import_nodata_wrongformat" => "Загруженный файл не содержит данных или имеет неправильный формат.", - "csv_import_partially_failed" => "Импорт клиентов выполнен успешно, но с некоторыми ошибками:", - "csv_import_success" => "Импорт клиентов выполнен успешно.", - "customer" => "Клиент", - "date" => "Дата", - "discount" => "Скидка", - "discount_fixed" => "Фиксированная скидка", - "discount_percent" => "Скидка в процентах", - "discount_type" => "Тип скидки", - "email_duplicate" => "Адрес электронной почты уже существует в базе данных.", - "employee" => "Сотрудник", - "error_adding_updating" => "Ошибка при добавлении/обновлении клиента.", - "import_items_csv" => "Импорт клиентов из CSV", - "mailchimp_activity_click" => "Переход в электронное письмо", - "mailchimp_activity_lastopen" => "Последнее открытое письмо", - "mailchimp_activity_open" => "Электронное письмо открыто", - "mailchimp_activity_total" => "Электронное письмо отправлено", - "mailchimp_activity_unopen" => "Электронное письмо не открыто", - "mailchimp_email_client" => "Почтовый клиент", - "mailchimp_info" => "MailChimp", - "mailchimp_member_rating" => "Рейтинг", - "mailchimp_status" => "Статус", - "mailchimp_vip" => "VIP", - "max" => "Макс. расходы", - "min" => "Мин. расходы", - "new" => "Новый клиент", - "none_selected" => "Вы не выбрали клиента(ов) для удаления.", - "one_or_multiple" => "Клиент(ы)", - "quantity" => "Количество", - "stats_info" => "Статистика", - "successful_adding" => "Вы успешно добавили клиента", - "successful_deleted" => "Успешно удалено", - "successful_updating" => "Информация о клиенте успешно обновлена", - "tax_code" => "Налоговый код", - "tax_id" => "№ налога", - "taxable" => "Облагается налогом", - "total" => "Всего потрачено", - "update" => "Обновление клиента", - "rewards_package" => "Пакет вознаграждения", + "account_number" => "№ клиента", + "account_number_duplicate" => "Номер клиента уже присутствует в базе данных.", + "available_points" => "Доступные баллы", + "available_points_value" => "", + "average" => "Средние траты", + "avg_discount" => "Средняя скидка", + "basic_information" => "Информация", + "cannot_be_deleted" => "Не удалось удалить выбранных клиентов, у одного или нескольких выбранных клиентов есть продажи.", + "company_name" => "Компания", + "confirm_delete" => "Вы уверены, что хотите удалить выбранных клиентов?", + "confirm_restore" => "Вы уверены, что хотите восстановить выбранных клиентов?", + "consent" => "Согласие на регистрацию", + "consent_required" => "Согласие на регистрацию - обязательное поле.", + "csv_import_failed" => "Ошибка импорта CSV", + "csv_import_nodata_wrongformat" => "Загруженный файл не содержит данных или имеет неправильный формат.", + "csv_import_partially_failed" => "Импорт клиентов выполнен успешно, но с некоторыми ошибками:", + "csv_import_success" => "Импорт клиентов выполнен успешно.", + "customer" => "Клиент", + "date" => "Дата", + "discount" => "Скидка", + "discount_fixed" => "Фиксированная скидка", + "discount_percent" => "Скидка в процентах", + "discount_type" => "Тип скидки", + "email_duplicate" => "Адрес электронной почты уже существует в базе данных.", + "employee" => "Сотрудник", + "error_adding_updating" => "Ошибка при добавлении/обновлении клиента.", + "import_items_csv" => "Импорт клиентов из CSV", + "mailchimp_activity_click" => "Переход в электронное письмо", + "mailchimp_activity_lastopen" => "Последнее открытое письмо", + "mailchimp_activity_open" => "Электронное письмо открыто", + "mailchimp_activity_total" => "Электронное письмо отправлено", + "mailchimp_activity_unopen" => "Электронное письмо не открыто", + "mailchimp_email_client" => "Почтовый клиент", + "mailchimp_info" => "MailChimp", + "mailchimp_member_rating" => "Рейтинг", + "mailchimp_status" => "Статус", + "mailchimp_vip" => "VIP", + "max" => "Макс. расходы", + "min" => "Мин. расходы", + "new" => "Новый клиент", + "none_selected" => "Вы не выбрали клиента(ов) для удаления.", + "one_or_multiple" => "Клиент(ы)", + "quantity" => "Количество", + "stats_info" => "Статистика", + "successful_adding" => "Вы успешно добавили клиента", + "successful_deleted" => "Успешно удалено", + "successful_updating" => "Информация о клиенте успешно обновлена", + "tax_code" => "Налоговый код", + "tax_id" => "№ налога", + "taxable" => "Облагается налогом", + "total" => "Всего потрачено", + "update" => "Обновление клиента", + "rewards_package" => "Пакет вознаграждения", ]; diff --git a/app/Language/ru/Datepicker.php b/app/Language/ru/Datepicker.php index 3d5473fd6..b75ba3b04 100644 --- a/app/Language/ru/Datepicker.php +++ b/app/Language/ru/Datepicker.php @@ -1,23 +1,23 @@ "За все время", - "apply" => "Применить", - "cancel" => "Отмена", - "custom" => "Пользовательское", - "from" => "От", - "last_30" => "Последние 30 дней", - "last_7" => "Последние 7 дней", - "last_financial_year" => "Последний финансовый год", - "last_month" => "Последний месяц", - "last_year" => "За последний год", - "same_month_last_year" => "Тот же месяц прошлого года", - "same_month_to_same_day_last_year" => "В том же месяце в тот же день в прошлом году", - "this_financial_year" => "Текущий финансовый год", - "this_month" => "В этом месяце", - "this_year" => "В этом году", - "to" => "Кому", - "today" => "Сегодня", - "today_last_year" => "Сегодняшний день в прошлом году", - "weekstart" => "0", - "yesterday" => "Вчера", + "all_time" => "За все время", + "apply" => "Применить", + "cancel" => "Отмена", + "custom" => "Пользовательское", + "from" => "От", + "last_30" => "Последние 30 дней", + "last_7" => "Последние 7 дней", + "last_financial_year" => "Последний финансовый год", + "last_month" => "Последний месяц", + "last_year" => "За последний год", + "same_month_last_year" => "Тот же месяц прошлого года", + "same_month_to_same_day_last_year" => "В том же месяце в тот же день в прошлом году", + "this_financial_year" => "Текущий финансовый год", + "this_month" => "В этом месяце", + "this_year" => "В этом году", + "to" => "Кому", + "today" => "Сегодня", + "today_last_year" => "Сегодняшний день в прошлом году", + "weekstart" => "0", + "yesterday" => "Вчера", ]; diff --git a/app/Language/ru/Employees.php b/app/Language/ru/Employees.php index 53efce711..cbc0d1b91 100644 --- a/app/Language/ru/Employees.php +++ b/app/Language/ru/Employees.php @@ -1,44 +1,44 @@ "", - "basic_information" => "Информация", - "cannot_be_deleted" => "Не удалось удалить выбранных сотрудников, один или несколько из них обработали продажи или вы пытаетесь удалить свою учетную запись.", - "change_employee" => "", - "change_password" => "Смена пароля", - "clerk" => "", - "commission" => "", - "confirm_delete" => "Вы уверены, что хотите удалить выбранных сотрудников?", - "confirm_restore" => "Вы уверены, что хотите восстановить выбранных сотрудников?", - "current_password" => "Текущий пароль", - "current_password_invalid" => "Текущий пароль введен неверно.", - "employee" => "Сотрудник", - "error_adding_updating" => "Ошибка при добавлении/обновлении сотрудника.", - "error_deleting_demo_admin" => "Вы не можете удалить демо-администратора.", - "error_updating_demo_admin" => "Вы не можете изменить демо-администратора.", - "language" => "Язык", - "login_info" => "Вход", - "manager" => "", - "new" => "Новый сотрудник", - "none_selected" => "Вы не выбрали ни одного сотрудника для удаления.", - "one_or_multiple" => "сотрудник(и)", - "password" => "Пароль", - "password_minlength" => "Пароль должен быть не менее 8 символов.", - "password_must_match" => "Пароли не совпадают.", - "password_not_must_match" => "Текущий пароль и новый пароль должны быть уникальными.", - "password_required" => "Ввод пароля - обязателен.", - "permission_desc" => "Отметьте флажками ниже, чтобы предоставить доступ к модулям.", - "permission_info" => "Права доступа", - "repeat_password" => "Повтор пароля", - "subpermission_required" => "Добавьте хотя бы одно разрешение для каждого модуля.", - "successful_adding" => "Сотрудник успешно создан.", - "successful_change_password" => "Смена пароля прошла успешно.", - "successful_deleted" => "Успешно удалено", - "successful_updating" => "Информация о сотруднике успешно обновлена", - "system_language" => "Язык системы", - "unsuccessful_change_password" => "Не удалось изменить пароль.", - "update" => "Обновление сотрудника", - "username" => "Имя пользователя", - "username_duplicate" => "Имя пользователя сотрудника уже используется. Пожалуйста, выберите другое.", - "username_minlength" => "Имя пользователя должно быть не менее 5 символов.", - "username_required" => "Имя пользователя - обязательное поле для заполнения.", + "administrator" => "", + "basic_information" => "Информация", + "cannot_be_deleted" => "Не удалось удалить выбранных сотрудников, один или несколько из них обработали продажи или вы пытаетесь удалить свою учетную запись.", + "change_employee" => "", + "change_password" => "Смена пароля", + "clerk" => "", + "commission" => "", + "confirm_delete" => "Вы уверены, что хотите удалить выбранных сотрудников?", + "confirm_restore" => "Вы уверены, что хотите восстановить выбранных сотрудников?", + "current_password" => "Текущий пароль", + "current_password_invalid" => "Текущий пароль введен неверно.", + "employee" => "Сотрудник", + "error_adding_updating" => "Ошибка при добавлении/обновлении сотрудника.", + "error_deleting_demo_admin" => "Вы не можете удалить демо-администратора.", + "error_updating_demo_admin" => "Вы не можете изменить демо-администратора.", + "language" => "Язык", + "login_info" => "Вход", + "manager" => "", + "new" => "Новый сотрудник", + "none_selected" => "Вы не выбрали ни одного сотрудника для удаления.", + "one_or_multiple" => "сотрудник(и)", + "password" => "Пароль", + "password_minlength" => "Пароль должен быть не менее 8 символов.", + "password_must_match" => "Пароли не совпадают.", + "password_not_must_match" => "Текущий пароль и новый пароль должны быть уникальными.", + "password_required" => "Ввод пароля - обязателен.", + "permission_desc" => "Отметьте флажками ниже, чтобы предоставить доступ к модулям.", + "permission_info" => "Права доступа", + "repeat_password" => "Повтор пароля", + "subpermission_required" => "Добавьте хотя бы одно разрешение для каждого модуля.", + "successful_adding" => "Сотрудник успешно создан.", + "successful_change_password" => "Смена пароля прошла успешно.", + "successful_deleted" => "Успешно удалено", + "successful_updating" => "Информация о сотруднике успешно обновлена", + "system_language" => "Язык системы", + "unsuccessful_change_password" => "Не удалось изменить пароль.", + "update" => "Обновление сотрудника", + "username" => "Имя пользователя", + "username_duplicate" => "Имя пользователя сотрудника уже используется. Пожалуйста, выберите другое.", + "username_minlength" => "Имя пользователя должно быть не менее 5 символов.", + "username_required" => "Имя пользователя - обязательное поле для заполнения.", ]; diff --git a/app/Language/ru/Enum.php b/app/Language/ru/Enum.php index ac5360029..1f4ce83eb 100644 --- a/app/Language/ru/Enum.php +++ b/app/Language/ru/Enum.php @@ -1,10 +1,10 @@ "", - "half_even" => "", - "half_five" => "", - "half_odd" => "", - "half_up" => "", - "round_down" => "Oкругление в меньшую", - "round_up" => "Oкругление в большую", + "half_down" => "", + "half_even" => "", + "half_five" => "", + "half_odd" => "", + "half_up" => "", + "round_down" => "Oкругление в меньшую", + "round_up" => "Oкругление в большую", ]; diff --git a/app/Language/ru/Error.php b/app/Language/ru/Error.php index 79cd8106d..abbd07816 100644 --- a/app/Language/ru/Error.php +++ b/app/Language/ru/Error.php @@ -1,5 +1,5 @@ "У вас нет разрешения на доступ к модулю", - "unknown" => "Неизвестная ошибка", + "no_permission_module" => "У вас нет разрешения на доступ к модулю", + "unknown" => "Неизвестная ошибка", ]; diff --git a/app/Language/ru/Expenses.php b/app/Language/ru/Expenses.php index 7f820a02a..7d1a757b6 100644 --- a/app/Language/ru/Expenses.php +++ b/app/Language/ru/Expenses.php @@ -1,50 +1,50 @@ "Добавить расходы", - "amount" => "Сумма", - "amount_number" => "Сумма должна быть числом", - "amount_required" => "Сумма расходов - обязательное поле", - "by_category" => "Категория", - "cannot_be_deleted" => "Не удалось удалить категорию расходов", - "cash" => "Наличные", - "cash_filter" => "Наличные", - "categories_name" => "Категория", - "category_required" => "Выбор категории - обязателен", - "check" => "Банковский чек", - "check_filter" => "Фильтр расходов", - "confirm_delete" => "Вы уверены, что хотите удалить выбранные расходы?", - "confirm_restore" => "Вы уверены, что хотите восстановить выбранные расходы?", - "credit" => "Кредитная карта", - "credit_filter" => "Кредитная карта", - "date" => "Дата", - "date_number" => "Дата должна быть числом", - "date_required" => "Дата - обязательно для заполнения", - "debit" => "Дебетовая карта", - "debit_filter" => "Дебетовая карта", - "description" => "Описание", - "due" => "Задолженность", - "due_filter" => "Задолженность", - "employee" => "Создано", - "error_adding_updating" => "Ошибка добавления / обновления расходов", - "expense_id" => "№", - "expenses_employee" => "Сотрудник", - "info" => "Информация о расходах", - "ip_address" => "", - "is_deleted" => "Удалено", - "name_required" => "Назавние расходов - обязательно для заполнения", - "new" => "Новый расход", - "new_supplier" => "", - "no_expenses_to_display" => "Нет расходов для отображения", - "none_selected" => "Вы не выбрали ни одного расхода", - "one_or_multiple" => "Расходы", - "payment" => "Тип оплаты", - "start_typing_supplier_name" => "Начните вводить имя поставщика...", - "successful_adding" => "Расходы успешно добавлены", - "successful_deleted" => "Расходы успешно удалены", - "successful_updating" => "Расходы успешно обновлены", - "supplier_name" => "Поставщик", - "supplier_tax_code" => "Налоговый код", - "tax_amount" => "Налог", - "tax_amount_number" => "", - "update" => "Обновление расходов", + "add_item" => "Добавить расходы", + "amount" => "Сумма", + "amount_number" => "Сумма должна быть числом", + "amount_required" => "Сумма расходов - обязательное поле", + "by_category" => "Категория", + "cannot_be_deleted" => "Не удалось удалить категорию расходов", + "cash" => "Наличные", + "cash_filter" => "Наличные", + "categories_name" => "Категория", + "category_required" => "Выбор категории - обязателен", + "check" => "Банковский чек", + "check_filter" => "Фильтр расходов", + "confirm_delete" => "Вы уверены, что хотите удалить выбранные расходы?", + "confirm_restore" => "Вы уверены, что хотите восстановить выбранные расходы?", + "credit" => "Кредитная карта", + "credit_filter" => "Кредитная карта", + "date" => "Дата", + "date_number" => "Дата должна быть числом", + "date_required" => "Дата - обязательно для заполнения", + "debit" => "Дебетовая карта", + "debit_filter" => "Дебетовая карта", + "description" => "Описание", + "due" => "Задолженность", + "due_filter" => "Задолженность", + "employee" => "Создано", + "error_adding_updating" => "Ошибка добавления / обновления расходов", + "expense_id" => "№", + "expenses_employee" => "Сотрудник", + "info" => "Информация о расходах", + "ip_address" => "", + "is_deleted" => "Удалено", + "name_required" => "Назавние расходов - обязательно для заполнения", + "new" => "Новый расход", + "new_supplier" => "", + "no_expenses_to_display" => "Нет расходов для отображения", + "none_selected" => "Вы не выбрали ни одного расхода", + "one_or_multiple" => "Расходы", + "payment" => "Тип оплаты", + "start_typing_supplier_name" => "Начните вводить имя поставщика...", + "successful_adding" => "Расходы успешно добавлены", + "successful_deleted" => "Расходы успешно удалены", + "successful_updating" => "Расходы успешно обновлены", + "supplier_name" => "Поставщик", + "supplier_tax_code" => "Налоговый код", + "tax_amount" => "Налог", + "tax_amount_number" => "", + "update" => "Обновление расходов", ]; diff --git a/app/Language/ru/Expenses_categories.php b/app/Language/ru/Expenses_categories.php index da78cd53c..70fe57a29 100644 --- a/app/Language/ru/Expenses_categories.php +++ b/app/Language/ru/Expenses_categories.php @@ -1,22 +1,22 @@ "Название категории расходов - обязательно для заполнения", - "add_item" => "Добавить категорию", - "cannot_be_deleted" => "Не удалось удалить категорию расходов", - "category_id" => "№", - "confirm_delete" => "Вы уверены, что хотите удалить выбранную категорию расходов?", - "confirm_restore" => "Вы уверены, что хотите восстановить выбранную категорию расходов?", - "description" => "Описание категории", - "error_adding_updating" => "Ошибка добавления / обновления категории расходов", - "info" => "Информация о категории расходов", - "name" => "Название категории", - "new" => "Новая категория", - "no_expenses_categories_to_display" => "Нет категории для отображения", - "none_selected" => "Вы не выбрали ни одной категории расходов", - "one_or_multiple" => "Категория расходов", - "quantity" => "Количество", - "successful_adding" => "Категория расходов добавлена успешно", - "successful_deleted" => "Категория расходов успешно удалена", - "successful_updating" => "Категория расходов успешно обновлена", - "update" => "Обновить категорию", + "category_name_required" => "Название категории расходов - обязательно для заполнения", + "add_item" => "Добавить категорию", + "cannot_be_deleted" => "Не удалось удалить категорию расходов", + "category_id" => "№", + "confirm_delete" => "Вы уверены, что хотите удалить выбранную категорию расходов?", + "confirm_restore" => "Вы уверены, что хотите восстановить выбранную категорию расходов?", + "description" => "Описание категории", + "error_adding_updating" => "Ошибка добавления / обновления категории расходов", + "info" => "Информация о категории расходов", + "name" => "Название категории", + "new" => "Новая категория", + "no_expenses_categories_to_display" => "Нет категории для отображения", + "none_selected" => "Вы не выбрали ни одной категории расходов", + "one_or_multiple" => "Категория расходов", + "quantity" => "Количество", + "successful_adding" => "Категория расходов добавлена успешно", + "successful_deleted" => "Категория расходов успешно удалена", + "successful_updating" => "Категория расходов успешно обновлена", + "update" => "Обновить категорию", ]; diff --git a/app/Language/ru/Giftcards.php b/app/Language/ru/Giftcards.php index 08518000d..9993a481b 100644 --- a/app/Language/ru/Giftcards.php +++ b/app/Language/ru/Giftcards.php @@ -1,71 +1,71 @@ "Запасы (добавление/вычитание).", - "allow_alt_description" => "Разрешить альтернативное описание", - "bulk_edit" => "Массовое редактирование", - "cannot_be_deleted" => "Не удалось удалить выбранные подарочные карты, одна или несколько выбранных подарочных карт проданы.", - "cannot_find_giftcard" => "Подарочная карта не найдена.", - "cannot_use" => "Подарочная карта {0} не может быть использована для этой продажи: неверный клиент.", - "card_value" => "Стоимость", - "category" => "Категория", - "change_all_to_allow_alt_desc" => "Разрешить альтернативное описание для всех.", - "change_all_to_not_allow_allow_desc" => "Не разрешать альтернативное описание для всех.", - "change_all_to_serialized" => "Снять выделение со всех", - "change_all_to_unserialized" => "Выделить все", - "confirm_bulk_edit" => "Вы уверены, что хотите изменить выбранные подарочные карты?", - "confirm_delete" => "Вы уверены, что хотите удалить выбранные подарочные карты?", - "confirm_restore" => "Вы уверены, что хотите восстановить выбранные подарочные карты?", - "cost_price" => "Оптовая цена", - "count" => "Обновление запасов", - "csv_import_failed" => "Ошибка импорта CSV.", - "current_quantity" => "Текущее количество", - "description" => "Описание", - "details_count" => "Сведения о кол-ве запасов", - "do_nothing" => "Ничего не делать", - "edit_fields_you_want_to_update" => "Редактирование нужных полей для выбранных подарочных карт.", - "edit_multiple_giftcards" => "Редактирование нескольких подарочных карт.", - "error_adding_updating" => "Ошибка при добавлении/обновлении подарочной карты.", - "error_updating_multiple" => "Ошибка обновления подарочной карты.", - "generate_barcodes" => "Создание штрих-кодов", - "giftcard" => "Подарочная карта", - "giftcard_number" => "Номер подарочной карты", - "info_provided_by" => "Информация предоставлена", - "inventory_comments" => "Комментарии", - "is_serialized" => "Подарочная карта имеет серийный номер", - "low_inventory_giftcards" => "Подарочные карты с низким кол-вом", - "manually_editing_of_quantity" => "Ручное редактирование количества", - "must_select_giftcard_for_barcode" => "Вы должны выбрать хотя бы одну (1) подарочную карту для создания штрих-кодов.", - "new" => "Новая подарочная карта", - "no_description_giftcards" => "Нет описания подарочной карты", - "no_giftcards_to_display" => "Нет подарочных карт для отображения.", - "none" => "Нет", - "none_selected" => "Вы не выбрали ни одной подарочной карты для редактирования.", - "number" => "Номер подарочной карты должен быть числом.", - "number_information" => "Номер подарочной карты", - "number_required" => "Номер подарочной карты - обязательно для заполнения.", - "one_or_multiple" => "Подарочная карта(ы)", - "person_id" => "Клиент", - "quantity" => "Количество", - "quantity_required" => "Количество является обязательным полем. Пожалуйста, закройте (X), чтобы отменить.", - "remaining_balance" => "Оставшаяся стоимость подарочной карты {0} составляет {1}!", - "reorder_level" => "Уровень повторного заказа", - "retrive_giftcard_info" => "Получить информацию о подарочной карте", - "sales_tax_1" => "Налог с продаж", - "sales_tax_2" => "Налог с продаж 2", - "serialized_giftcards" => "Выбранные подарочные карты", - "successful_adding" => "Вы успешно добавили подарочную карту", - "successful_bulk_edit" => "Вы успешно обновили выбранные подарочные карты", - "successful_deleted" => "Успешно удалено", - "successful_updating" => "Вы успешно обновили подарочную карту", - "supplier" => "Поставщик", - "tax_1" => "Налог 1", - "tax_2" => "Налог 2", - "tax_percent" => "Процент налога", - "tax_percents" => "Процент налога(ов)", - "unit_price" => "Розничная цена", - "upc_database" => "База данных штрих-кодов", - "update" => "Обновить подарочную карту", - "use_inventory_menu" => "Использовать меню запасов", - "value" => "Стоимость подарочной карты должна быть числом.", - "value_required" => "Стоимость подарочной карты обязательна для заполнения.", + "add_minus" => "Запасы (добавление/вычитание).", + "allow_alt_description" => "Разрешить альтернативное описание", + "bulk_edit" => "Массовое редактирование", + "cannot_be_deleted" => "Не удалось удалить выбранные подарочные карты, одна или несколько выбранных подарочных карт проданы.", + "cannot_find_giftcard" => "Подарочная карта не найдена.", + "cannot_use" => "Подарочная карта {0} не может быть использована для этой продажи: неверный клиент.", + "card_value" => "Стоимость", + "category" => "Категория", + "change_all_to_allow_alt_desc" => "Разрешить альтернативное описание для всех.", + "change_all_to_not_allow_allow_desc" => "Не разрешать альтернативное описание для всех.", + "change_all_to_serialized" => "Снять выделение со всех", + "change_all_to_unserialized" => "Выделить все", + "confirm_bulk_edit" => "Вы уверены, что хотите изменить выбранные подарочные карты?", + "confirm_delete" => "Вы уверены, что хотите удалить выбранные подарочные карты?", + "confirm_restore" => "Вы уверены, что хотите восстановить выбранные подарочные карты?", + "cost_price" => "Оптовая цена", + "count" => "Обновление запасов", + "csv_import_failed" => "Ошибка импорта CSV.", + "current_quantity" => "Текущее количество", + "description" => "Описание", + "details_count" => "Сведения о кол-ве запасов", + "do_nothing" => "Ничего не делать", + "edit_fields_you_want_to_update" => "Редактирование нужных полей для выбранных подарочных карт.", + "edit_multiple_giftcards" => "Редактирование нескольких подарочных карт.", + "error_adding_updating" => "Ошибка при добавлении/обновлении подарочной карты.", + "error_updating_multiple" => "Ошибка обновления подарочной карты.", + "generate_barcodes" => "Создание штрих-кодов", + "giftcard" => "Подарочная карта", + "giftcard_number" => "Номер подарочной карты", + "info_provided_by" => "Информация предоставлена", + "inventory_comments" => "Комментарии", + "is_serialized" => "Подарочная карта имеет серийный номер", + "low_inventory_giftcards" => "Подарочные карты с низким кол-вом", + "manually_editing_of_quantity" => "Ручное редактирование количества", + "must_select_giftcard_for_barcode" => "Вы должны выбрать хотя бы одну (1) подарочную карту для создания штрих-кодов.", + "new" => "Новая подарочная карта", + "no_description_giftcards" => "Нет описания подарочной карты", + "no_giftcards_to_display" => "Нет подарочных карт для отображения.", + "none" => "Нет", + "none_selected" => "Вы не выбрали ни одной подарочной карты для редактирования.", + "number" => "Номер подарочной карты должен быть числом.", + "number_information" => "Номер подарочной карты", + "number_required" => "Номер подарочной карты - обязательно для заполнения.", + "one_or_multiple" => "Подарочная карта(ы)", + "person_id" => "Клиент", + "quantity" => "Количество", + "quantity_required" => "Количество является обязательным полем. Пожалуйста, закройте (X), чтобы отменить.", + "remaining_balance" => "Оставшаяся стоимость подарочной карты {0} составляет {1}!", + "reorder_level" => "Уровень повторного заказа", + "retrive_giftcard_info" => "Получить информацию о подарочной карте", + "sales_tax_1" => "Налог с продаж", + "sales_tax_2" => "Налог с продаж 2", + "serialized_giftcards" => "Выбранные подарочные карты", + "successful_adding" => "Вы успешно добавили подарочную карту", + "successful_bulk_edit" => "Вы успешно обновили выбранные подарочные карты", + "successful_deleted" => "Успешно удалено", + "successful_updating" => "Вы успешно обновили подарочную карту", + "supplier" => "Поставщик", + "tax_1" => "Налог 1", + "tax_2" => "Налог 2", + "tax_percent" => "Процент налога", + "tax_percents" => "Процент налога(ов)", + "unit_price" => "Розничная цена", + "upc_database" => "База данных штрих-кодов", + "update" => "Обновить подарочную карту", + "use_inventory_menu" => "Использовать меню запасов", + "value" => "Стоимость подарочной карты должна быть числом.", + "value_required" => "Стоимость подарочной карты обязательна для заполнения.", ]; diff --git a/app/Language/ru/Item_kits.php b/app/Language/ru/Item_kits.php index 9449dd7d6..17c4625e8 100644 --- a/app/Language/ru/Item_kits.php +++ b/app/Language/ru/Item_kits.php @@ -1,41 +1,41 @@ "Добавить комплект", - "all" => "Все", - "cannot_be_deleted" => "Не удалось удалить комплект(ы) товаров.", - "confirm_delete" => "Вы уверены, что хотите удалить выбранные комплекты товаров?", - "confirm_restore" => "Вы уверены, что хотите восстановить выбранные комплекты товаров?", - "description" => "Описание комплекта товаров", - "discount" => "Скидка", - "discount_fixed" => "Фиксированная скидка", - "discount_percent" => "Скидка в процентах", - "discount_type" => "Тип скидки", - "error_adding_updating" => "Ошибка при добавлении/обновлении комплекта товаров.", - "find_kit_item" => "Элемент комплекта", - "info" => "Информация о комплекте товаров", - "item" => "Товар", - "item_kit_number" => "Штрихкод", - "item_kit_number_duplicate" => "Номер комплекта товаров уже присутствует в базе данных.", - "item_number" => "", - "item_number_duplicate" => "", - "items" => "Товары", - "kit" => "№ комплекта", - "kit_and_components" => "Комплект и компоненты", - "kit_and_stock" => "Комплект и запасы", - "kit_only" => "Только комплект", - "name" => "Название комплекта товаров", - "new" => "Новый комплект товаров", - "no_item_kits_to_display" => "Нет комплектов товаров для отображения.", - "none_selected" => "Вы не выбрали ни одного компекта товаров.", - "one_or_multiple" => "Комплект(ы) товаров", - "price_option" => "Вариант цены", - "priced_only" => "Только по цене", - "print_option" => "Вариант печати", - "quantity" => "Количество", - "sequence" => "Последовательность", - "successful_adding" => "Вы успешно добавили комплект товаров", - "successful_deleted" => "Успешно удалено", - "successful_updating" => "Вы успешно обновили комплект товаров", - "unit_price" => "", - "update" => "Обновление комплекта товаров", + "add_item" => "Добавить комплект", + "all" => "Все", + "cannot_be_deleted" => "Не удалось удалить комплект(ы) товаров.", + "confirm_delete" => "Вы уверены, что хотите удалить выбранные комплекты товаров?", + "confirm_restore" => "Вы уверены, что хотите восстановить выбранные комплекты товаров?", + "description" => "Описание комплекта товаров", + "discount" => "Скидка", + "discount_fixed" => "Фиксированная скидка", + "discount_percent" => "Скидка в процентах", + "discount_type" => "Тип скидки", + "error_adding_updating" => "Ошибка при добавлении/обновлении комплекта товаров.", + "find_kit_item" => "Элемент комплекта", + "info" => "Информация о комплекте товаров", + "item" => "Товар", + "item_kit_number" => "Штрихкод", + "item_kit_number_duplicate" => "Номер комплекта товаров уже присутствует в базе данных.", + "item_number" => "", + "item_number_duplicate" => "", + "items" => "Товары", + "kit" => "№ комплекта", + "kit_and_components" => "Комплект и компоненты", + "kit_and_stock" => "Комплект и запасы", + "kit_only" => "Только комплект", + "name" => "Название комплекта товаров", + "new" => "Новый комплект товаров", + "no_item_kits_to_display" => "Нет комплектов товаров для отображения.", + "none_selected" => "Вы не выбрали ни одного компекта товаров.", + "one_or_multiple" => "Комплект(ы) товаров", + "price_option" => "Вариант цены", + "priced_only" => "Только по цене", + "print_option" => "Вариант печати", + "quantity" => "Количество", + "sequence" => "Последовательность", + "successful_adding" => "Вы успешно добавили комплект товаров", + "successful_deleted" => "Успешно удалено", + "successful_updating" => "Вы успешно обновили комплект товаров", + "unit_price" => "", + "update" => "Обновление комплекта товаров", ]; diff --git a/app/Language/ru/Items.php b/app/Language/ru/Items.php index 3272dd858..74ac78fb6 100644 --- a/app/Language/ru/Items.php +++ b/app/Language/ru/Items.php @@ -1,120 +1,120 @@ "Добавить/убрать товар.", - "allow_alt_description" => "Разрешить альтернативные описания", - "amount_entry" => "Ввод количества", - "bulk_edit" => "Массовое редактирование", - "buy_price_required" => "Цена покупки - обязательное поле.", - "cannot_be_deleted" => "Не удалось удалить выбраннй(ые) товар(ы), так как у одного или нескольких выбранных товаров есть продажи.", - "cannot_find_item" => "Товар не найден.", - "categories" => "", - "category" => "Категория", - "category_new" => "", - "category_required" => "Категория - обязательное поле.", - "change_all_to_allow_alt_desc" => "Разрешить альтернативное описание для всех.", - "change_all_to_not_allow_allow_desc" => "Не разрешать альтернативные описания для всех.", - "change_all_to_serialized" => "Выбрать все", - "change_all_to_unserialized" => "Снять выделение со всех", - "change_image" => "Изменить изображение", - "confirm_bulk_edit" => "Вы уверены, что хотите редактировать выбранные товары?", - "confirm_bulk_edit_wipe_taxes" => "Вся информация о налогах на товар будет изменена.", - "confirm_delete" => "Вы уверены, что хотите удалить выбранные товары?", - "confirm_restore" => "Вы уверены, что хотите восстановить выбранные товары?", - "cost_price" => "Оптовая цена", - "cost_price_number" => "Оптовая цена должна быть числом.", - "cost_price_required" => "Оптовая цена - обязательное поле.", - "count" => "Обновление запасов", - "csv_import_failed" => "Ошибка импорта CSV", - "csv_import_nodata_wrongformat" => "Загруженный файл CSV не содержит данных или имеет неправильный формат.", - "csv_import_partially_failed" => "В строке (строках) произошло {0} ошибок импорта: {1}. Ничего не было импортировано.", - "csv_import_success" => "Товар успешно импортирован из CSV.", - "current_quantity" => "Текущее количество", - "default_pack_name" => "Каждый", - "description" => "Описание", - "details_count" => "Сведения о запасах", - "do_nothing" => "Ничего не делать", - "edit" => "", - "edit_fields_you_want_to_update" => "Отредактируйте нужные поля у выбранных товаров.", - "edit_multiple_items" => "Редактирование нескольких товаров", - "empty_upc_items" => "Штрих-код товара(ов) пуст", - "error_adding_updating" => "Ошибка при добавлении/обновлении товара", - "error_updating_multiple" => "Ошибка при обновлении товаров", - "generate_barcodes" => "Генерация штрих-кодов", - "hsn_code" => "Согласованная система номенклатуры", - "image" => "Изображение", - "import_items_csv" => "Импорт товаров из CSV", - "info_provided_by" => "Информация предоставлена", - "inventory" => "Запасы", - "inventory_CSV_import_quantity" => "Импортированое количество из CSV", - "inventory_comments" => "Комментарии", - "inventory_data_tracking" => "Отслеживание запасов", - "inventory_date" => "Дата", - "inventory_employee" => "Сотрудник", - "inventory_in_out_quantity" => "Количество (Приход / Уход)", - "inventory_remarks" => "Пометки", - "is_deleted" => "Удаленный", - "is_printed" => "", - "is_serialized" => "Товар имеет серийный номер", - "item" => "Товар", - "item_id" => "", - "item_number" => "Штрих-код", - "item_number_duplicate" => "Товар с таким номером уже присутствует в базе данных.", - "kit" => "Комплект", - "location" => "Расположение", - "low_inventory_items" => "Товары не в наличии", - "low_sell_item" => "Товар с низким уровнем продаж", - "manually_editing_of_quantity" => "Ручное редактирование количества", - "markup" => "", - "name" => "Название товара", - "name_required" => "Название товара - обязательно для заполнения.", - "new" => "Новый товар", - "no_description_items" => "Нет описания товаров", - "no_items_to_display" => "Нет товаров для отображения.", - "none" => "Нет", - "none_selected" => "Вы не выбрали ни одного товара для редактирования", - "nonstock" => "Нет в наличии", - "number_information" => "Номер товара", - "number_required" => "Штрихкод - обязательное поле для заполнения.", - "one_or_multiple" => "товар(ов)", - "pack_name" => "Название упаковки", - "qty_per_pack" => "Количество в упаковке", - "quantity" => "Количество", - "quantity_number" => "Количество должно быть числом.", - "quantity_required" => "Количество - обязательное поле для заполнения.", - "receiving_quantity" => "Количество закупок", - "remove_image" => "Удалить изображение", - "reorder_level" => "Уровень повторного заказа", - "reorder_level_number" => "Уровень повторного заказа должно быть числом.", - "reorder_level_required" => "Уровень повторного заказа - обязательное поле для заполнения.", - "retrive_item_info" => "Информация о получении товара", - "sales_tax_1" => "Налог на продажу", - "sales_tax_2" => "Налог на продажу 2", - "search_attributes" => "Поиск атрибутов", - "select_image" => "Выбрать изображение", - "serialized_items" => "Выбранные товары", - "standard" => "Стандарт", - "stock" => "В наличии", - "stock_location" => "Расположение запасов", - "stock_type" => "Наличие", - "successful_adding" => "Вы успешно добавили товар", - "successful_bulk_edit" => "Вы успешно обновили выбранный товар(ы)", - "successful_deleted" => "Успешно удалено", - "successful_updating" => "Товар успешно обновлен", - "supplier" => "Поставщик", - "tax_1" => "Налог 1", - "tax_2" => "Налог 2", - "tax_3" => "", - "tax_category" => "Категория налога", - "tax_percent" => "процент налога", - "tax_percent_number" => "Налоговый процент должен быть числом", - "tax_percent_required" => "Налоговый процент - обязательно для заполнения.", - "tax_percents" => "Налоговый процент", - "temp" => "Временный", - "type" => "Тип товара", - "unit_price" => "Розничная цена", - "unit_price_number" => "Розничная цена должна быть числом.", - "unit_price_required" => "Розничная цена - обязательное поле для заполнения.", - "upc_database" => "База данных штрих-кодов", - "update" => "Обновление товара", - "use_inventory_menu" => "Использовать меню запасов", + "add_minus" => "Добавить/убрать товар.", + "allow_alt_description" => "Разрешить альтернативные описания", + "amount_entry" => "Ввод количества", + "bulk_edit" => "Массовое редактирование", + "buy_price_required" => "Цена покупки - обязательное поле.", + "cannot_be_deleted" => "Не удалось удалить выбраннй(ые) товар(ы), так как у одного или нескольких выбранных товаров есть продажи.", + "cannot_find_item" => "Товар не найден.", + "categories" => "", + "category" => "Категория", + "category_new" => "", + "category_required" => "Категория - обязательное поле.", + "change_all_to_allow_alt_desc" => "Разрешить альтернативное описание для всех.", + "change_all_to_not_allow_allow_desc" => "Не разрешать альтернативные описания для всех.", + "change_all_to_serialized" => "Выбрать все", + "change_all_to_unserialized" => "Снять выделение со всех", + "change_image" => "Изменить изображение", + "confirm_bulk_edit" => "Вы уверены, что хотите редактировать выбранные товары?", + "confirm_bulk_edit_wipe_taxes" => "Вся информация о налогах на товар будет изменена.", + "confirm_delete" => "Вы уверены, что хотите удалить выбранные товары?", + "confirm_restore" => "Вы уверены, что хотите восстановить выбранные товары?", + "cost_price" => "Оптовая цена", + "cost_price_number" => "Оптовая цена должна быть числом.", + "cost_price_required" => "Оптовая цена - обязательное поле.", + "count" => "Обновление запасов", + "csv_import_failed" => "Ошибка импорта CSV", + "csv_import_nodata_wrongformat" => "Загруженный файл CSV не содержит данных или имеет неправильный формат.", + "csv_import_partially_failed" => "В строке (строках) произошло {0} ошибок импорта: {1}. Ничего не было импортировано.", + "csv_import_success" => "Товар успешно импортирован из CSV.", + "current_quantity" => "Текущее количество", + "default_pack_name" => "Каждый", + "description" => "Описание", + "details_count" => "Сведения о запасах", + "do_nothing" => "Ничего не делать", + "edit" => "", + "edit_fields_you_want_to_update" => "Отредактируйте нужные поля у выбранных товаров.", + "edit_multiple_items" => "Редактирование нескольких товаров", + "empty_upc_items" => "Штрих-код товара(ов) пуст", + "error_adding_updating" => "Ошибка при добавлении/обновлении товара", + "error_updating_multiple" => "Ошибка при обновлении товаров", + "generate_barcodes" => "Генерация штрих-кодов", + "hsn_code" => "Согласованная система номенклатуры", + "image" => "Изображение", + "import_items_csv" => "Импорт товаров из CSV", + "info_provided_by" => "Информация предоставлена", + "inventory" => "Запасы", + "inventory_CSV_import_quantity" => "Импортированое количество из CSV", + "inventory_comments" => "Комментарии", + "inventory_data_tracking" => "Отслеживание запасов", + "inventory_date" => "Дата", + "inventory_employee" => "Сотрудник", + "inventory_in_out_quantity" => "Количество (Приход / Уход)", + "inventory_remarks" => "Пометки", + "is_deleted" => "Удаленный", + "is_printed" => "", + "is_serialized" => "Товар имеет серийный номер", + "item" => "Товар", + "item_id" => "", + "item_number" => "Штрих-код", + "item_number_duplicate" => "Товар с таким номером уже присутствует в базе данных.", + "kit" => "Комплект", + "location" => "Расположение", + "low_inventory_items" => "Товары не в наличии", + "low_sell_item" => "Товар с низким уровнем продаж", + "manually_editing_of_quantity" => "Ручное редактирование количества", + "markup" => "", + "name" => "Название товара", + "name_required" => "Название товара - обязательно для заполнения.", + "new" => "Новый товар", + "no_description_items" => "Нет описания товаров", + "no_items_to_display" => "Нет товаров для отображения.", + "none" => "Нет", + "none_selected" => "Вы не выбрали ни одного товара для редактирования", + "nonstock" => "Нет в наличии", + "number_information" => "Номер товара", + "number_required" => "Штрихкод - обязательное поле для заполнения.", + "one_or_multiple" => "товар(ов)", + "pack_name" => "Название упаковки", + "qty_per_pack" => "Количество в упаковке", + "quantity" => "Количество", + "quantity_number" => "Количество должно быть числом.", + "quantity_required" => "Количество - обязательное поле для заполнения.", + "receiving_quantity" => "Количество закупок", + "remove_image" => "Удалить изображение", + "reorder_level" => "Уровень повторного заказа", + "reorder_level_number" => "Уровень повторного заказа должно быть числом.", + "reorder_level_required" => "Уровень повторного заказа - обязательное поле для заполнения.", + "retrive_item_info" => "Информация о получении товара", + "sales_tax_1" => "Налог на продажу", + "sales_tax_2" => "Налог на продажу 2", + "search_attributes" => "Поиск атрибутов", + "select_image" => "Выбрать изображение", + "serialized_items" => "Выбранные товары", + "standard" => "Стандарт", + "stock" => "В наличии", + "stock_location" => "Расположение запасов", + "stock_type" => "Наличие", + "successful_adding" => "Вы успешно добавили товар", + "successful_bulk_edit" => "Вы успешно обновили выбранный товар(ы)", + "successful_deleted" => "Успешно удалено", + "successful_updating" => "Товар успешно обновлен", + "supplier" => "Поставщик", + "tax_1" => "Налог 1", + "tax_2" => "Налог 2", + "tax_3" => "", + "tax_category" => "Категория налога", + "tax_percent" => "процент налога", + "tax_percent_number" => "Налоговый процент должен быть числом", + "tax_percent_required" => "Налоговый процент - обязательно для заполнения.", + "tax_percents" => "Налоговый процент", + "temp" => "Временный", + "type" => "Тип товара", + "unit_price" => "Розничная цена", + "unit_price_number" => "Розничная цена должна быть числом.", + "unit_price_required" => "Розничная цена - обязательное поле для заполнения.", + "upc_database" => "База данных штрих-кодов", + "update" => "Обновление товара", + "use_inventory_menu" => "Использовать меню запасов", ]; diff --git a/app/Language/ru/Login.php b/app/Language/ru/Login.php index f3656de0e..577aa1095 100644 --- a/app/Language/ru/Login.php +++ b/app/Language/ru/Login.php @@ -1,15 +1,15 @@ "Я не робот.", - "go" => "Войти", - "invalid_gcaptcha" => "Пожалуйста, подтвердите, что вы не робот.", - "invalid_installation" => "Ошибка установки, проверьте файл php.ini.", - "invalid_username_and_password" => "Неверное имя пользователя или пароль.", - "login" => "Вход", - "logout" => "Выход", - "migration_needed" => "Миграция базы данных в {0} начнется после входа в систему.", - "password" => "Пароль", - "required_username" => "", - "username" => "Имя пользователя", - "welcome" => "Панель управления", + "gcaptcha" => "Я не робот.", + "go" => "Войти", + "invalid_gcaptcha" => "Пожалуйста, подтвердите, что вы не робот.", + "invalid_installation" => "Ошибка установки, проверьте файл php.ini.", + "invalid_username_and_password" => "Неверное имя пользователя или пароль.", + "login" => "Вход", + "logout" => "Выход", + "migration_needed" => "Миграция базы данных в {0} начнется после входа в систему.", + "password" => "Пароль", + "required_username" => "", + "username" => "Имя пользователя", + "welcome" => "Панель управления", ]; diff --git a/app/Language/ru/Messages.php b/app/Language/ru/Messages.php index 64d397d82..ffa1bbc10 100644 --- a/app/Language/ru/Messages.php +++ b/app/Language/ru/Messages.php @@ -1,15 +1,15 @@ "Имя", - "last_name" => "Фамилия", - "message" => "Сообщение", - "message_placeholder" => "Введите сообщение...", - "message_required" => "Сообщенние - обязательно для заполнения", - "multiple_phones" => "(В случае нескольких получателей укажите номера мобильных телефонов через запятую)", - "phone" => "Номер телефона", - "phone_number_required" => "Номер телефона обязателен для заполнения", - "phone_placeholder" => "Введите номер мобильного телефона...", - "sms_send" => "Отправить SMS", - "successfully_sent" => "Сообщение успешно отправлено: ", - "unsuccessfully_sent" => "Сообщение не отправлено: ", + "first_name" => "Имя", + "last_name" => "Фамилия", + "message" => "Сообщение", + "message_placeholder" => "Введите сообщение...", + "message_required" => "Сообщенние - обязательно для заполнения", + "multiple_phones" => "(В случае нескольких получателей укажите номера мобильных телефонов через запятую)", + "phone" => "Номер телефона", + "phone_number_required" => "Номер телефона обязателен для заполнения", + "phone_placeholder" => "Введите номер мобильного телефона...", + "sms_send" => "Отправить SMS", + "successfully_sent" => "Сообщение успешно отправлено: ", + "unsuccessfully_sent" => "Сообщение не отправлено: ", ]; diff --git a/app/Language/ru/Module.php b/app/Language/ru/Module.php index 77ea4fe11..ac839d1d1 100644 --- a/app/Language/ru/Module.php +++ b/app/Language/ru/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "Атрибуты", - "attributes_desc" => "Добавление, обновление, удаление и поиск атрибутов.", - "both" => "Оба", - "cashups" => "", - "cashups_desc" => "", - "config" => "Конфигурация", - "config_desc" => "Настройка конфигурации OSPOS.", - "customers" => "Клиенты", - "customers_desc" => "Добавление, обновление, удаление и поиск клиентов.", - "employees" => "Сотрудники", - "employees_desc" => "Добавление, обновление, удаление и поиск сотрудников.", - "expenses" => "Расходы", - "expenses_categories" => "Категории расходов", - "expenses_categories_desc" => "Добавление, обновление и удаление категорий расходов.", - "expenses_desc" => "Добавление, обновление, удаление и поиск расходов.", - "giftcards" => "Подарочные карты", - "giftcards_desc" => "Добавление, обновление, удаление и поиск подарочных карт.", - "home" => "Главная", - "home_desc" => "Список модулей главного меню.", - "item_kits" => "Комплекты товаров", - "item_kits_desc" => "Добавление, обновление, удаление и поиск комплектов товаров.", - "items" => "Товары", - "items_desc" => "Добавление, обновление, удаление и поиск товаров.", - "messages" => "Сообщения", - "messages_desc" => "Отправка сообщений клиентам, поставщикам и сотрудникам.", - "migrate" => "Миграция", - "migrate_desc" => "Обновите базу данных OSPOS.", - "office" => "Офис", - "office_desc" => "Список модулей офисного меню.", - "receivings" => "Закупки", - "receivings_desc" => "Обработка заказов на покупку.", - "reports" => "Отчеты", - "reports_desc" => "Просмотр и создание отчетов.", - "sales" => "Продажи", - "sales_desc" => "Процесс продажи и возвртов.", - "suppliers" => "Поставщики", - "suppliers_desc" => "Добавление, обновление, удаление и поиск поставщиков.", - "taxes" => "Налоги", - "taxes_desc" => "Настройка налогов с продаж.", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "Атрибуты", + "attributes_desc" => "Добавление, обновление, удаление и поиск атрибутов.", + "both" => "Оба", + "cashups" => "", + "cashups_desc" => "", + "config" => "Конфигурация", + "config_desc" => "Настройка конфигурации OSPOS.", + "customers" => "Клиенты", + "customers_desc" => "Добавление, обновление, удаление и поиск клиентов.", + "employees" => "Сотрудники", + "employees_desc" => "Добавление, обновление, удаление и поиск сотрудников.", + "expenses" => "Расходы", + "expenses_categories" => "Категории расходов", + "expenses_categories_desc" => "Добавление, обновление и удаление категорий расходов.", + "expenses_desc" => "Добавление, обновление, удаление и поиск расходов.", + "giftcards" => "Подарочные карты", + "giftcards_desc" => "Добавление, обновление, удаление и поиск подарочных карт.", + "home" => "Главная", + "home_desc" => "Список модулей главного меню.", + "item_kits" => "Комплекты товаров", + "item_kits_desc" => "Добавление, обновление, удаление и поиск комплектов товаров.", + "items" => "Товары", + "items_desc" => "Добавление, обновление, удаление и поиск товаров.", + "messages" => "Сообщения", + "messages_desc" => "Отправка сообщений клиентам, поставщикам и сотрудникам.", + "migrate" => "Миграция", + "migrate_desc" => "Обновите базу данных OSPOS.", + "office" => "Офис", + "office_desc" => "Список модулей офисного меню.", + "receivings" => "Закупки", + "receivings_desc" => "Обработка заказов на покупку.", + "reports" => "Отчеты", + "reports_desc" => "Просмотр и создание отчетов.", + "sales" => "Продажи", + "sales_desc" => "Процесс продажи и возвртов.", + "suppliers" => "Поставщики", + "suppliers_desc" => "Добавление, обновление, удаление и поиск поставщиков.", + "taxes" => "Налоги", + "taxes_desc" => "Настройка налогов с продаж.", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/ru/Receivings.php b/app/Language/ru/Receivings.php index 538b89ff8..4ce3f449c 100644 --- a/app/Language/ru/Receivings.php +++ b/app/Language/ru/Receivings.php @@ -1,58 +1,58 @@ "", - "cancel_receiving" => "Отменить", - "cannot_be_deleted" => "Не удалось удалить закупку(и).", - "comments" => "Комментарии", - "complete_receiving" => "Завершить", - "confirm_cancel_receiving" => "Вы уверены, что хотите удалить эту закупку? Все товары будут очищены.", - "confirm_delete" => "Вы уверены, что хотите удалить эту закупку? Это действие нельзя отменить.", - "confirm_finish_receiving" => "Вы уверены, что хотите отправить эту закупку? Это действие нельзя отменить.", - "confirm_restore" => "", - "cost" => "Расходы", - "daily" => "", - "date" => "Дата закупки", - "date_required" => "Необходимо ввести правильную дату.", - "date_type" => "Дата - обязательное поле для заполнения.", - "delete_entire_sale" => "Удалить все продажи", - "discount" => "Скидка", - "edit" => "Правка", - "edit_sale" => "Изменить закупку", - "employee" => "Сотрудник", - "error_editing_item" => "Ошибка при редактировании.", - "error_requisition" => "Невозможно переместить запасы в одно и то же расположение.", - "find_or_scan_item" => "Найти/Сканировать товар", - "find_or_scan_item_or_receipt" => "Найти/Сканировать товар или чек", - "id" => "№ закупки", - "item_name" => "Название товара", - "mode" => "Режим закупок", - "new_supplier" => "Новый поставщик", - "one_or_multiple" => "закупка(и)", - "print_after_sale" => "Распечатать после продажи", - "quantity" => "Кол-во.", - "receipt" => "Квитанция о закупке", - "receipt_number" => "Закупка #", - "receiving" => "Получение", - "reference" => "Артикул", - "register" => "Закупка товаров", - "requisition" => "Заявка", - "return" => "Возврат", - "select_supplier" => "Выбор поставщика (необязательно)", - "ship_pack" => "Транспортная упаковка", - "start_typing_supplier_name" => "Начните вводить название поставщика...", - "stock" => "Запасы", - "stock_destination" => "Назначение запасов", - "stock_locaiton" => "Расположение запасов", - "stock_source" => "Источник запасов", - "successfully_deleted" => "Успешно удалено", - "successfully_updated" => "Закупка успешно обновлена", - "supplier" => "Поставщик", - "supplier_address" => "Адрес", - "supplier_email" => "Эл. адрес", - "supplier_location" => "Расположение", - "total" => "Итог", - "transaction_failed" => "Ошибка транзакции закупки.", - "unable_to_add_item" => "Невозможно добавить товар в закупку.", - "unsuccessfully_updated" => "Ошибка при обновлении закупки.", - "update" => "Обновить", + "amount_due" => "", + "cancel_receiving" => "Отменить", + "cannot_be_deleted" => "Не удалось удалить закупку(и).", + "comments" => "Комментарии", + "complete_receiving" => "Завершить", + "confirm_cancel_receiving" => "Вы уверены, что хотите удалить эту закупку? Все товары будут очищены.", + "confirm_delete" => "Вы уверены, что хотите удалить эту закупку? Это действие нельзя отменить.", + "confirm_finish_receiving" => "Вы уверены, что хотите отправить эту закупку? Это действие нельзя отменить.", + "confirm_restore" => "", + "cost" => "Расходы", + "daily" => "", + "date" => "Дата закупки", + "date_required" => "Необходимо ввести правильную дату.", + "date_type" => "Дата - обязательное поле для заполнения.", + "delete_entire_sale" => "Удалить все продажи", + "discount" => "Скидка", + "edit" => "Правка", + "edit_sale" => "Изменить закупку", + "employee" => "Сотрудник", + "error_editing_item" => "Ошибка при редактировании.", + "error_requisition" => "Невозможно переместить запасы в одно и то же расположение.", + "find_or_scan_item" => "Найти/Сканировать товар", + "find_or_scan_item_or_receipt" => "Найти/Сканировать товар или чек", + "id" => "№ закупки", + "item_name" => "Название товара", + "mode" => "Режим закупок", + "new_supplier" => "Новый поставщик", + "one_or_multiple" => "закупка(и)", + "print_after_sale" => "Распечатать после продажи", + "quantity" => "Кол-во.", + "receipt" => "Квитанция о закупке", + "receipt_number" => "Закупка #", + "receiving" => "Получение", + "reference" => "Артикул", + "register" => "Закупка товаров", + "requisition" => "Заявка", + "return" => "Возврат", + "select_supplier" => "Выбор поставщика (необязательно)", + "ship_pack" => "Транспортная упаковка", + "start_typing_supplier_name" => "Начните вводить название поставщика...", + "stock" => "Запасы", + "stock_destination" => "Назначение запасов", + "stock_locaiton" => "Расположение запасов", + "stock_source" => "Источник запасов", + "successfully_deleted" => "Успешно удалено", + "successfully_updated" => "Закупка успешно обновлена", + "supplier" => "Поставщик", + "supplier_address" => "Адрес", + "supplier_email" => "Эл. адрес", + "supplier_location" => "Расположение", + "total" => "Итог", + "transaction_failed" => "Ошибка транзакции закупки.", + "unable_to_add_item" => "Невозможно добавить товар в закупку.", + "unsuccessfully_updated" => "Ошибка при обновлении закупки.", + "update" => "Обновить", ]; diff --git a/app/Language/ru/Reports.php b/app/Language/ru/Reports.php index bcd53a5dd..b51d455ea 100644 --- a/app/Language/ru/Reports.php +++ b/app/Language/ru/Reports.php @@ -1,148 +1,148 @@ "Все", - "authority" => "Полномочия", - "canceled" => "Отменено", - "categories" => "Категории", - "categories_summary_report" => "Сводный отчет по категориям", - "category" => "Категория", - "code_canceled" => "ОТМ", - "code_invoice" => "НАКЛ.", - "code_pos" => "МАГ", - "code_quote" => "ПРЕДЛ.", - "code_return" => "ВОЗВР.", - "code_type" => "Тип", - "code_work_order" => "Р/З", - "comments" => "Комментарии", - "commission" => "", - "complete" => "Завершенные продажи и возвраты", - "completed_sales" => "Завершенные продажи", - "confirm_delete" => "Вы уверены, что хотите удалить выбранные записи?", - "confirm_restore" => "Вы уверены, что хотите восстановить выбранные записи?", - "cost" => "Опт", - "cost_price" => "Оптовая цена", - "count" => "Количество", - "customer" => "Клиент", - "customers" => "Клиенты", - "customers_summary_report" => "Сводный отчет о клиентах", - "date" => "Дата", - "date_range" => "Диапазон дат", - "description" => "Описание", - "detailed_receivings_report" => "Детальный отчет о закупках", - "detailed_receivings_report_input" => "", - "detailed_reports" => "Подробные отчеты", - "detailed_requisition_report" => "", - "detailed_sales_report" => "Подробный отчет о транзакциях", - "discount" => "Скидка", - "discount_fixed" => "Фиксированная скидка", - "discount_percent" => "Скидка в процентах", - "discount_type" => "Тип скидки", - "discounts" => "Скидки", - "discounts_summary_report" => "Сводный отчет о скидках", - "earned" => "Заработанные очки", - "employee" => "Сотрудник", - "employees" => "Сотрудники", - "employees_summary_report" => "Сводный отчет о сотрудниках", - "expenses" => "Расходы", - "expenses_amount" => "Сумма", - "expenses_categories" => "Расходы", - "expenses_categories_summary_report" => "Сводный отчет по категориям расходов", - "expenses_category" => "Категория", - "expenses_payment_amount" => "", - "expenses_tax_amount" => "Налог", - "expenses_total_amount" => "Общая сумма", - "expenses_total_tax_amount" => "Общая сумма налога", - "graphical_reports" => "Графические отчеты", - "inventory" => "Инвентаризация", - "inventory_low" => "Низкое кол-во запасов", - "inventory_low_report" => "Отчет о низком уровне запасов", - "inventory_reports" => "Отчеты о запасах", - "inventory_summary" => "Сумма запасов", - "inventory_summary_report" => "Отчет о суммах запасов", - "item" => "Товар", - "item_count" => "Кол-во элементов фильтра", - "item_name" => "Название товара", - "item_number" => "Штрих-код", - "items" => "Товары", - "items_purchased" => "Купленные товары", - "items_received" => "Полученные товары", - "items_summary_report" => "Сводный отчет по товарам", - "jurisdiction" => "Юрисдикция", - "low_inventory" => "", - "low_inventory_report" => "", - "low_sell_quantity" => "Низкое количество продаж", - "more_than_zero" => "Больше нуля", - "name" => "Название", - "no_reports_to_display" => "Нет товаров для отображения.", - "payment_type" => "Тип оплаты", - "payments" => "Оплата", - "payments_summary_report" => "Сводный отчет о платежах", - "profit" => "Прибыль", - "quantity" => "Количество", - "quantity_purchased" => "Количество покупок", - "quotes" => "Предложения", - "received_by" => "Получено", - "receiving_id" => "№ закупки", - "receiving_type" => "Тип закупки", - "receivings" => "Закупки", - "reorder_level" => "Уровень повторного заказа", - "report" => "Отчет", - "report_input" => "Ввод отчета", - "reports" => "Отчеты", - "requisition" => "", - "requisition_by" => "", - "requisition_id" => "", - "requisition_item" => "", - "requisition_item_quantity" => "", - "requisition_related_item" => "", - "requisition_related_item_total_quantity" => "", - "requisition_related_item_unit_quantity" => "", - "requisitions" => "Заявки", - "returns" => "Возвраты", - "revenue" => "Доход", - "sale_id" => "№ продажи", - "sale_type" => "Тип продажи", - "sales" => "Продажи", - "sales_amount" => "Сумма продаж", - "sales_summary_report" => "Сводный отчет о транзакциях", - "sales_taxes" => "Налоги с продаж", - "sales_taxes_summary_report" => "Сводный отчет о налогах с продаж", - "serial_number" => "Серийный номер", - "service_charge" => "", - "sold_by" => "Продано", - "sold_items" => "", - "sold_to" => "Продано", - "stock_location" => "Расположение склада", - "sub_total_value" => "Промежуточный итог", - "subtotal" => "Промежуточная сумма", - "summary_reports" => "Сводные отчеты", - "supplied_by" => "Поставщик", - "supplier" => "Поставщик", - "suppliers" => "Поставщики", - "suppliers_summary_report" => "Сводный отчет по поставщикам", - "tax" => "Налог", - "tax_category" => "Налоговая категория", - "tax_name" => "Название налога", - "tax_percent" => "Процент налога", - "tax_rate" => "Ставка налога", - "taxes" => "Налоги", - "taxes_summary_report" => "Сводный отчет о налогах", - "total" => "Сумма", - "total_inventory_value" => "Общая стоимость запасов", - "total_low_sell_quantity" => "Общее кол-во товаров с малым кол-вом продаж", - "total_quantity" => "Общее количество", - "total_retail" => "Общая розничная стоимость запасов", - "trans_amount" => "Сумма продажи", - "trans_due" => "Долг", - "trans_group" => "Группа транзакций", - "trans_nopay_sales" => "Продажи без оплаты", - "trans_payments" => "Платежи", - "trans_refunded" => "Возмещено", - "trans_sales" => "Продажи", - "trans_type" => "Тип транзакции", - "type" => "Тип", - "unit_price" => "Розничная цена", - "used" => "Использованные баллы", - "work_orders" => "Рабочие заказы", - "zero_and_less" => "Ноль и меньше", + "all" => "Все", + "authority" => "Полномочия", + "canceled" => "Отменено", + "categories" => "Категории", + "categories_summary_report" => "Сводный отчет по категориям", + "category" => "Категория", + "code_canceled" => "ОТМ", + "code_invoice" => "НАКЛ.", + "code_pos" => "МАГ", + "code_quote" => "ПРЕДЛ.", + "code_return" => "ВОЗВР.", + "code_type" => "Тип", + "code_work_order" => "Р/З", + "comments" => "Комментарии", + "commission" => "", + "complete" => "Завершенные продажи и возвраты", + "completed_sales" => "Завершенные продажи", + "confirm_delete" => "Вы уверены, что хотите удалить выбранные записи?", + "confirm_restore" => "Вы уверены, что хотите восстановить выбранные записи?", + "cost" => "Опт", + "cost_price" => "Оптовая цена", + "count" => "Количество", + "customer" => "Клиент", + "customers" => "Клиенты", + "customers_summary_report" => "Сводный отчет о клиентах", + "date" => "Дата", + "date_range" => "Диапазон дат", + "description" => "Описание", + "detailed_receivings_report" => "Детальный отчет о закупках", + "detailed_receivings_report_input" => "", + "detailed_reports" => "Подробные отчеты", + "detailed_requisition_report" => "", + "detailed_sales_report" => "Подробный отчет о транзакциях", + "discount" => "Скидка", + "discount_fixed" => "Фиксированная скидка", + "discount_percent" => "Скидка в процентах", + "discount_type" => "Тип скидки", + "discounts" => "Скидки", + "discounts_summary_report" => "Сводный отчет о скидках", + "earned" => "Заработанные очки", + "employee" => "Сотрудник", + "employees" => "Сотрудники", + "employees_summary_report" => "Сводный отчет о сотрудниках", + "expenses" => "Расходы", + "expenses_amount" => "Сумма", + "expenses_categories" => "Расходы", + "expenses_categories_summary_report" => "Сводный отчет по категориям расходов", + "expenses_category" => "Категория", + "expenses_payment_amount" => "", + "expenses_tax_amount" => "Налог", + "expenses_total_amount" => "Общая сумма", + "expenses_total_tax_amount" => "Общая сумма налога", + "graphical_reports" => "Графические отчеты", + "inventory" => "Инвентаризация", + "inventory_low" => "Низкое кол-во запасов", + "inventory_low_report" => "Отчет о низком уровне запасов", + "inventory_reports" => "Отчеты о запасах", + "inventory_summary" => "Сумма запасов", + "inventory_summary_report" => "Отчет о суммах запасов", + "item" => "Товар", + "item_count" => "Кол-во элементов фильтра", + "item_name" => "Название товара", + "item_number" => "Штрих-код", + "items" => "Товары", + "items_purchased" => "Купленные товары", + "items_received" => "Полученные товары", + "items_summary_report" => "Сводный отчет по товарам", + "jurisdiction" => "Юрисдикция", + "low_inventory" => "", + "low_inventory_report" => "", + "low_sell_quantity" => "Низкое количество продаж", + "more_than_zero" => "Больше нуля", + "name" => "Название", + "no_reports_to_display" => "Нет товаров для отображения.", + "payment_type" => "Тип оплаты", + "payments" => "Оплата", + "payments_summary_report" => "Сводный отчет о платежах", + "profit" => "Прибыль", + "quantity" => "Количество", + "quantity_purchased" => "Количество покупок", + "quotes" => "Предложения", + "received_by" => "Получено", + "receiving_id" => "№ закупки", + "receiving_type" => "Тип закупки", + "receivings" => "Закупки", + "reorder_level" => "Уровень повторного заказа", + "report" => "Отчет", + "report_input" => "Ввод отчета", + "reports" => "Отчеты", + "requisition" => "", + "requisition_by" => "", + "requisition_id" => "", + "requisition_item" => "", + "requisition_item_quantity" => "", + "requisition_related_item" => "", + "requisition_related_item_total_quantity" => "", + "requisition_related_item_unit_quantity" => "", + "requisitions" => "Заявки", + "returns" => "Возвраты", + "revenue" => "Доход", + "sale_id" => "№ продажи", + "sale_type" => "Тип продажи", + "sales" => "Продажи", + "sales_amount" => "Сумма продаж", + "sales_summary_report" => "Сводный отчет о транзакциях", + "sales_taxes" => "Налоги с продаж", + "sales_taxes_summary_report" => "Сводный отчет о налогах с продаж", + "serial_number" => "Серийный номер", + "service_charge" => "", + "sold_by" => "Продано", + "sold_items" => "", + "sold_to" => "Продано", + "stock_location" => "Расположение склада", + "sub_total_value" => "Промежуточный итог", + "subtotal" => "Промежуточная сумма", + "summary_reports" => "Сводные отчеты", + "supplied_by" => "Поставщик", + "supplier" => "Поставщик", + "suppliers" => "Поставщики", + "suppliers_summary_report" => "Сводный отчет по поставщикам", + "tax" => "Налог", + "tax_category" => "Налоговая категория", + "tax_name" => "Название налога", + "tax_percent" => "Процент налога", + "tax_rate" => "Ставка налога", + "taxes" => "Налоги", + "taxes_summary_report" => "Сводный отчет о налогах", + "total" => "Сумма", + "total_inventory_value" => "Общая стоимость запасов", + "total_low_sell_quantity" => "Общее кол-во товаров с малым кол-вом продаж", + "total_quantity" => "Общее количество", + "total_retail" => "Общая розничная стоимость запасов", + "trans_amount" => "Сумма продажи", + "trans_due" => "Долг", + "trans_group" => "Группа транзакций", + "trans_nopay_sales" => "Продажи без оплаты", + "trans_payments" => "Платежи", + "trans_refunded" => "Возмещено", + "trans_sales" => "Продажи", + "trans_type" => "Тип транзакции", + "type" => "Тип", + "unit_price" => "Розничная цена", + "used" => "Использованные баллы", + "work_orders" => "Рабочие заказы", + "zero_and_less" => "Ноль и меньше", ]; diff --git a/app/Language/ru/Sales.php b/app/Language/ru/Sales.php index 1365cb10a..182186c9a 100644 --- a/app/Language/ru/Sales.php +++ b/app/Language/ru/Sales.php @@ -1,224 +1,224 @@ "Доступные баллы", - "rewards_package" => "Награды", - "rewards_remaining_balance" => "Остаток бонусных баллов составляет ", - "account_number" => "Счет #", - "add_payment" => "Добавить оплату", - "amount_due" => "Сумма задолженности", - "amount_tendered" => "Предложенная сумма", - "authorized_signature" => "Подпись уполномоченного лица", - "cancel_sale" => "Отменить продажу", - "cash" => "Наличные", - "cash_1" => "", - "cash_2" => "", - "cash_3" => "", - "cash_4" => "", - "cash_adjustment" => "Денежная корректировка", - "cash_deposit" => "Наличный депозит", - "cash_filter" => "Наличные", - "change_due" => "Изменение задолженности", - "change_price" => "Изменить цену продажи", - "check" => "Банковский чек", - "check_balance" => "Проверка остатка", - "check_filter" => "Банковский чек", - "close" => "", - "comment" => "Комментарий", - "comments" => "Комментарии", - "company_name" => "", - "complete" => "", - "complete_sale" => "Завершить продажу", - "confirm_cancel_sale" => "Вы уверены, что хотите удалить эту продажу? Все товары будут очищены.", - "confirm_delete" => "Вы уверены, что хотите удалить выбранные продажи?", - "confirm_restore" => "Вы уверены, что хотите восстановить выбранные продажи?", - "credit" => "Кредитная карта", - "credit_deposit" => "Кредитный депозит", - "credit_filter" => "Кредитная карта", - "current_table" => "", - "customer" => "Клиент", - "customer_address" => "Адрес", - "customer_discount" => "Скидка", - "customer_email" => "Эл. почта", - "customer_location" => "Расположение", - "customer_mailchimp_status" => "Статус Mailchimp", - "customer_optional" => "(Требуется для своевременной оплаты)", - "customer_required" => "(Необходимо)", - "customer_total" => "Итог", - "customer_total_spent" => "", - "daily_sales" => "", - "date" => "Дата продажи", - "date_range" => "Диапазон дат", - "date_required" => "Необходимо ввести правильную дату.", - "date_type" => "Дата - обязательное поле для заполнения.", - "debit" => "Дебетовая карта", - "debit_filter" => "", - "delete" => "Разрешить удаление", - "delete_confirmation" => "Вы уверены, что хотите удалить эту продажу? Это действие не может быть отменено.", - "delete_entire_sale" => "Удалить все продажи", - "delete_successful" => "Успешно удалено.", - "delete_unsuccessful" => "Ошибка при удалении продажи.", - "description_abbrv" => "Опис.", - "discard" => "Брак", - "discard_quote" => "", - "discount" => "Скидка", - "discount_included" => "% скидки", - "discount_short" => "%", - "due" => "Долг", - "due_filter" => "Долг", - "edit" => "Правка", - "edit_item" => "Редактировать товар", - "edit_sale" => "Редактировать продажу", - "email_receipt" => "Послать квитанцию по эл. почте", - "employee" => "Сотрудник", - "entry" => "Запись", - "error_editing_item" => "Ошибка при редактировании товара", - "find_or_scan_item" => "Найти/Сканировать товар", - "find_or_scan_item_or_receipt" => "Найти/Сканировать товара или квитанцию", - "giftcard" => "Подарочная карта", - "giftcard_balance" => "Баланс подарочной карты", - "giftcard_filter" => "", - "giftcard_number" => "Номер подарочной карты", - "group_by_category" => "Сгруппировать по категориям", - "group_by_type" => "Сгруппировать по типу", - "hsn" => "", - "id" => "№ продажи", - "include_prices" => "Включить цены?", - "invoice" => "Накладная", - "invoice_confirm" => "Эта накладная будет отправлена", - "invoice_enable" => "Номер накладной", - "invoice_filter" => "Накладные", - "invoice_no_email" => "У этого клиента нет действующего адреса электронной почты.", - "invoice_number" => "Накладная #", - "invoice_number_duplicate" => "Номер накладной {0} должен быть уникальным.", - "invoice_sent" => "Накладная отправлена", - "invoice_total" => "Общая сумма накладной", - "invoice_type_custom_invoice" => "Пользовательская накладная (custom_invoice.php)", - "invoice_type_custom_tax_invoice" => "Пользовательская налоговая накладная (custom_tax_invoice.php)", - "invoice_type_invoice" => "Накладная (invoice.php)", - "invoice_type_tax_invoice" => "Налоговая накладная (tax_invoice.php)", - "invoice_unsent" => "Не удалось отправить накладную", - "invoice_update" => "Пересчет", - "item_insufficient_of_stock" => "Недостаточно товара в наличии.", - "item_name" => "Название товара", - "item_number" => "№ товара", - "item_out_of_stock" => "Этот товар отсутствует в наличии.", - "key_browser" => "Сочетания клавиш", - "key_cancel" => "Отмена текущих предложений/накладных/продаж", - "key_customer_search" => "Поиск клиента", - "key_finish_quote" => "Закрыть предложение/накладную без оплаты", - "key_finish_sale" => "Добавить платеж и заполнить накладную/продажу", - "key_full" => "Открыть в полноэкранном режиме", - "key_function" => "Назначение", - "key_help" => "Сочетания клавиш", - "key_help_modal" => "Показать сочетания клавиш", - "key_in" => "Увеличить", - "key_item_search" => "Поиск товара", - "key_out" => "Отдалить", - "key_payment" => "Добавить оплату", - "key_print" => "Распечатать текущую страницу", - "key_restore" => "Восстановить исходное отображение/увеличение", - "key_search" => "Поиск таблиц отчетов", - "key_suspend" => "Приостановить текущую продажу", - "key_suspended" => "Показать приостановленные продажи", - "key_system" => "Системные горячие клавиши", - "key_tendered" => "Изменить предложенную сумму", - "key_title" => "Сочетания клавиш для продаж", - "mc" => "", - "mode" => "Режим журнала", - "must_enter_numeric" => "Предложенная сумма должна быть числом.", - "must_enter_numeric_giftcard" => "Номер подарочной карты должен быть числом.", - "new_customer" => "Новый клиент", - "new_item" => "Новый товар", - "no_description" => "Нет описания", - "no_filter" => "Все", - "no_items_in_cart" => "Нет товаров в корзине.", - "no_sales_to_display" => "Нет продаж для отображения.", - "none_selected" => "Вы не выбрали ни одной продажи для удаления.", - "nontaxed_ind" => "", - "not_authorized" => "Это действие не разрешено.", - "one_or_multiple" => "Продажа(ы)", - "payment" => "Тип оплаты", - "payment_amount" => "Сумма", - "payment_not_cover_total" => "Сумма оплаты должна быть больше или равна общей сумме.", - "payment_type" => "Тип", - "payments" => "", - "payments_total" => "Всего оплат", - "price" => "Цена", - "print_after_sale" => "Распечатать после продажи", - "quantity" => "Кол-во", - "quantity_less_than_reorder_level" => "Внимание: желаемое количество ниже уровня повторного заказа для этого товара.", - "quantity_less_than_zero" => "Предупреждение: Желаемое количество недостаточно. Вы по-прежнему можете оформить продажу, но проверьте свои запасы.", - "quantity_of_items" => "Кол-во товара {0}", - "quote" => "Предложение", - "quote_number" => "№ предложения", - "quote_number_duplicate" => "Номер предложения должен быть уникальным.", - "quote_sent" => "Предложение отправлено", - "quote_unsent" => "Предложение не было отправлено", - "receipt" => "Товарный чек", - "receipt_no_email" => "У этого клиента нет действующего адреса электронной почты.", - "receipt_number" => "Продажа #", - "receipt_sent" => "Чек отправлен", - "receipt_unsent" => "Чек не отправлен", - "refund" => "Тип возврата", - "register" => "Журнал продаж", - "remove_customer" => "Удалить клиента", - "remove_discount" => "", - "return" => "Возврат", - "rewards" => "Бонусные баллы", - "rewards_balance" => "Баланс бонусных баллов", - "sale" => "Продажа", - "sale_by_invoice" => "Продажа по накладной", - "sale_for_customer" => "Клиент:", - "sale_time" => "Время", - "sales_tax" => "Налог с продаж", - "sales_total" => "", - "select_customer" => "Выберите клиента", - "send_invoice" => "Отправить накладную", - "send_quote" => "Отправить предложение", - "send_receipt" => "Отправить чек", - "send_work_order" => "Отправить рабочий заказ", - "serial" => "Серийный номер", - "service_charge" => "", - "show_due" => "", - "show_invoice" => "Показать накладную", - "show_receipt" => "Показать чек", - "start_typing_customer_name" => "Начните печатать имя клиента...", - "start_typing_item_name" => "Сосканируйте штрих-код или начните печатать название товара...", - "stock" => "Запасы", - "stock_location" => "Расположение склада", - "sub_total" => "Промежуточный итог", - "successfully_deleted" => "Успешно удалено", - "successfully_restored" => "Успешно восстановлено", - "successfully_suspended_sale" => "Продажа успешно приостановлена.", - "successfully_updated" => "Продажа успешно обновлена.", - "suspend_sale" => "Приостановка продажи", - "suspended_doc_id" => "Документ", - "suspended_sale_id" => "№", - "suspended_sales" => "Приостановлено", - "table" => "Таблица", - "takings" => "Ежедневные продажи", - "tax" => "Налог", - "tax_id" => "№ налога", - "tax_invoice" => "Налоговая накладная", - "tax_percent" => "Налоговые %", - "taxed_ind" => "Н", - "total" => "Итог", - "total_tax_exclusive" => "Без налога", - "transaction_failed" => "Ошибка транзакции продажи.", - "unable_to_add_item" => "Не удалось добавить товар в продажу", - "unsuccessfully_deleted" => "Продажу(и) удалить не удалось.", - "unsuccessfully_restored" => "Не удалось восстановить продажу(и).", - "unsuccessfully_suspended_sale" => "Не удалось приостановить продажу.", - "unsuccessfully_updated" => "Не удалось обновить продажу.", - "unsuspend" => "Возобновить", - "unsuspend_and_delete" => "Действие", - "update" => "Обновить", - "upi" => "", - "visa" => "", - "wholesale" => "", - "work_order" => "Рабочий заказ", - "work_order_number" => "Номер рабочего заказа", - "work_order_number_duplicate" => "Номер рабочего заказа должен быть уникальным.", - "work_order_sent" => "Рабочий заказ отправлен", - "work_order_unsent" => "Не удалось отправить рабочий заказ", + "customers_available_points" => "Доступные баллы", + "rewards_package" => "Награды", + "rewards_remaining_balance" => "Остаток бонусных баллов составляет ", + "account_number" => "Счет #", + "add_payment" => "Добавить оплату", + "amount_due" => "Сумма задолженности", + "amount_tendered" => "Предложенная сумма", + "authorized_signature" => "Подпись уполномоченного лица", + "cancel_sale" => "Отменить продажу", + "cash" => "Наличные", + "cash_1" => "", + "cash_2" => "", + "cash_3" => "", + "cash_4" => "", + "cash_adjustment" => "Денежная корректировка", + "cash_deposit" => "Наличный депозит", + "cash_filter" => "Наличные", + "change_due" => "Изменение задолженности", + "change_price" => "Изменить цену продажи", + "check" => "Банковский чек", + "check_balance" => "Проверка остатка", + "check_filter" => "Банковский чек", + "close" => "", + "comment" => "Комментарий", + "comments" => "Комментарии", + "company_name" => "", + "complete" => "", + "complete_sale" => "Завершить продажу", + "confirm_cancel_sale" => "Вы уверены, что хотите удалить эту продажу? Все товары будут очищены.", + "confirm_delete" => "Вы уверены, что хотите удалить выбранные продажи?", + "confirm_restore" => "Вы уверены, что хотите восстановить выбранные продажи?", + "credit" => "Кредитная карта", + "credit_deposit" => "Кредитный депозит", + "credit_filter" => "Кредитная карта", + "current_table" => "", + "customer" => "Клиент", + "customer_address" => "Адрес", + "customer_discount" => "Скидка", + "customer_email" => "Эл. почта", + "customer_location" => "Расположение", + "customer_mailchimp_status" => "Статус Mailchimp", + "customer_optional" => "(Требуется для своевременной оплаты)", + "customer_required" => "(Необходимо)", + "customer_total" => "Итог", + "customer_total_spent" => "", + "daily_sales" => "", + "date" => "Дата продажи", + "date_range" => "Диапазон дат", + "date_required" => "Необходимо ввести правильную дату.", + "date_type" => "Дата - обязательное поле для заполнения.", + "debit" => "Дебетовая карта", + "debit_filter" => "", + "delete" => "Разрешить удаление", + "delete_confirmation" => "Вы уверены, что хотите удалить эту продажу? Это действие не может быть отменено.", + "delete_entire_sale" => "Удалить все продажи", + "delete_successful" => "Успешно удалено.", + "delete_unsuccessful" => "Ошибка при удалении продажи.", + "description_abbrv" => "Опис.", + "discard" => "Брак", + "discard_quote" => "", + "discount" => "Скидка", + "discount_included" => "% скидки", + "discount_short" => "%", + "due" => "Долг", + "due_filter" => "Долг", + "edit" => "Правка", + "edit_item" => "Редактировать товар", + "edit_sale" => "Редактировать продажу", + "email_receipt" => "Послать квитанцию по эл. почте", + "employee" => "Сотрудник", + "entry" => "Запись", + "error_editing_item" => "Ошибка при редактировании товара", + "find_or_scan_item" => "Найти/Сканировать товар", + "find_or_scan_item_or_receipt" => "Найти/Сканировать товара или квитанцию", + "giftcard" => "Подарочная карта", + "giftcard_balance" => "Баланс подарочной карты", + "giftcard_filter" => "", + "giftcard_number" => "Номер подарочной карты", + "group_by_category" => "Сгруппировать по категориям", + "group_by_type" => "Сгруппировать по типу", + "hsn" => "", + "id" => "№ продажи", + "include_prices" => "Включить цены?", + "invoice" => "Накладная", + "invoice_confirm" => "Эта накладная будет отправлена", + "invoice_enable" => "Номер накладной", + "invoice_filter" => "Накладные", + "invoice_no_email" => "У этого клиента нет действующего адреса электронной почты.", + "invoice_number" => "Накладная #", + "invoice_number_duplicate" => "Номер накладной {0} должен быть уникальным.", + "invoice_sent" => "Накладная отправлена", + "invoice_total" => "Общая сумма накладной", + "invoice_type_custom_invoice" => "Пользовательская накладная (custom_invoice.php)", + "invoice_type_custom_tax_invoice" => "Пользовательская налоговая накладная (custom_tax_invoice.php)", + "invoice_type_invoice" => "Накладная (invoice.php)", + "invoice_type_tax_invoice" => "Налоговая накладная (tax_invoice.php)", + "invoice_unsent" => "Не удалось отправить накладную", + "invoice_update" => "Пересчет", + "item_insufficient_of_stock" => "Недостаточно товара в наличии.", + "item_name" => "Название товара", + "item_number" => "№ товара", + "item_out_of_stock" => "Этот товар отсутствует в наличии.", + "key_browser" => "Сочетания клавиш", + "key_cancel" => "Отмена текущих предложений/накладных/продаж", + "key_customer_search" => "Поиск клиента", + "key_finish_quote" => "Закрыть предложение/накладную без оплаты", + "key_finish_sale" => "Добавить платеж и заполнить накладную/продажу", + "key_full" => "Открыть в полноэкранном режиме", + "key_function" => "Назначение", + "key_help" => "Сочетания клавиш", + "key_help_modal" => "Показать сочетания клавиш", + "key_in" => "Увеличить", + "key_item_search" => "Поиск товара", + "key_out" => "Отдалить", + "key_payment" => "Добавить оплату", + "key_print" => "Распечатать текущую страницу", + "key_restore" => "Восстановить исходное отображение/увеличение", + "key_search" => "Поиск таблиц отчетов", + "key_suspend" => "Приостановить текущую продажу", + "key_suspended" => "Показать приостановленные продажи", + "key_system" => "Системные горячие клавиши", + "key_tendered" => "Изменить предложенную сумму", + "key_title" => "Сочетания клавиш для продаж", + "mc" => "", + "mode" => "Режим журнала", + "must_enter_numeric" => "Предложенная сумма должна быть числом.", + "must_enter_numeric_giftcard" => "Номер подарочной карты должен быть числом.", + "new_customer" => "Новый клиент", + "new_item" => "Новый товар", + "no_description" => "Нет описания", + "no_filter" => "Все", + "no_items_in_cart" => "Нет товаров в корзине.", + "no_sales_to_display" => "Нет продаж для отображения.", + "none_selected" => "Вы не выбрали ни одной продажи для удаления.", + "nontaxed_ind" => "", + "not_authorized" => "Это действие не разрешено.", + "one_or_multiple" => "Продажа(ы)", + "payment" => "Тип оплаты", + "payment_amount" => "Сумма", + "payment_not_cover_total" => "Сумма оплаты должна быть больше или равна общей сумме.", + "payment_type" => "Тип", + "payments" => "", + "payments_total" => "Всего оплат", + "price" => "Цена", + "print_after_sale" => "Распечатать после продажи", + "quantity" => "Кол-во", + "quantity_less_than_reorder_level" => "Внимание: желаемое количество ниже уровня повторного заказа для этого товара.", + "quantity_less_than_zero" => "Предупреждение: Желаемое количество недостаточно. Вы по-прежнему можете оформить продажу, но проверьте свои запасы.", + "quantity_of_items" => "Кол-во товара {0}", + "quote" => "Предложение", + "quote_number" => "№ предложения", + "quote_number_duplicate" => "Номер предложения должен быть уникальным.", + "quote_sent" => "Предложение отправлено", + "quote_unsent" => "Предложение не было отправлено", + "receipt" => "Товарный чек", + "receipt_no_email" => "У этого клиента нет действующего адреса электронной почты.", + "receipt_number" => "Продажа #", + "receipt_sent" => "Чек отправлен", + "receipt_unsent" => "Чек не отправлен", + "refund" => "Тип возврата", + "register" => "Журнал продаж", + "remove_customer" => "Удалить клиента", + "remove_discount" => "", + "return" => "Возврат", + "rewards" => "Бонусные баллы", + "rewards_balance" => "Баланс бонусных баллов", + "sale" => "Продажа", + "sale_by_invoice" => "Продажа по накладной", + "sale_for_customer" => "Клиент:", + "sale_time" => "Время", + "sales_tax" => "Налог с продаж", + "sales_total" => "", + "select_customer" => "Выберите клиента", + "send_invoice" => "Отправить накладную", + "send_quote" => "Отправить предложение", + "send_receipt" => "Отправить чек", + "send_work_order" => "Отправить рабочий заказ", + "serial" => "Серийный номер", + "service_charge" => "", + "show_due" => "", + "show_invoice" => "Показать накладную", + "show_receipt" => "Показать чек", + "start_typing_customer_name" => "Начните печатать имя клиента...", + "start_typing_item_name" => "Сосканируйте штрих-код или начните печатать название товара...", + "stock" => "Запасы", + "stock_location" => "Расположение склада", + "sub_total" => "Промежуточный итог", + "successfully_deleted" => "Успешно удалено", + "successfully_restored" => "Успешно восстановлено", + "successfully_suspended_sale" => "Продажа успешно приостановлена.", + "successfully_updated" => "Продажа успешно обновлена.", + "suspend_sale" => "Приостановка продажи", + "suspended_doc_id" => "Документ", + "suspended_sale_id" => "№", + "suspended_sales" => "Приостановлено", + "table" => "Таблица", + "takings" => "Ежедневные продажи", + "tax" => "Налог", + "tax_id" => "№ налога", + "tax_invoice" => "Налоговая накладная", + "tax_percent" => "Налоговые %", + "taxed_ind" => "Н", + "total" => "Итог", + "total_tax_exclusive" => "Без налога", + "transaction_failed" => "Ошибка транзакции продажи.", + "unable_to_add_item" => "Не удалось добавить товар в продажу", + "unsuccessfully_deleted" => "Продажу(и) удалить не удалось.", + "unsuccessfully_restored" => "Не удалось восстановить продажу(и).", + "unsuccessfully_suspended_sale" => "Не удалось приостановить продажу.", + "unsuccessfully_updated" => "Не удалось обновить продажу.", + "unsuspend" => "Возобновить", + "unsuspend_and_delete" => "Действие", + "update" => "Обновить", + "upi" => "", + "visa" => "", + "wholesale" => "", + "work_order" => "Рабочий заказ", + "work_order_number" => "Номер рабочего заказа", + "work_order_number_duplicate" => "Номер рабочего заказа должен быть уникальным.", + "work_order_sent" => "Рабочий заказ отправлен", + "work_order_unsent" => "Не удалось отправить рабочий заказ", ]; diff --git a/app/Language/ru/Suppliers.php b/app/Language/ru/Suppliers.php index 62721dab6..75cd10d8f 100644 --- a/app/Language/ru/Suppliers.php +++ b/app/Language/ru/Suppliers.php @@ -1,24 +1,24 @@ "Номер счета", - "agency_name" => "Название агентства", - "cannot_be_deleted" => "Не удалось удалить выбранных поставщиков. У одного или нескольких из них есть продажи.", - "category" => "Категория", - "company_name" => "Название компании", - "company_name_required" => "Название компании - обязательное поле для заполнения.", - "confirm_delete" => "Вы уверены, что хотите удалить выбранных поставщиков?", - "confirm_restore" => "Вы уверены, что хотите восстановить выбранных поставщиков?", - "cost" => "Расходы поставщика", - "error_adding_updating" => "Ошибка при добавлении/обновлении поставщика.", - "goods" => "Поставщик товаров", - "new" => "Новый поставщик", - "none_selected" => "Вы не выбрали поставщиков для удаления.", - "one_or_multiple" => "Поставщик(и)", - "successful_adding" => "Поставщик был успешно добавлен", - "successful_deleted" => "Успешно удалено", - "successful_updating" => "Поставщик успешно обновлен", - "supplier" => "Поставщик", - "supplier_id" => "№", - "tax_id" => "№ налога", - "update" => "Обновить поставщика", + "account_number" => "Номер счета", + "agency_name" => "Название агентства", + "cannot_be_deleted" => "Не удалось удалить выбранных поставщиков. У одного или нескольких из них есть продажи.", + "category" => "Категория", + "company_name" => "Название компании", + "company_name_required" => "Название компании - обязательное поле для заполнения.", + "confirm_delete" => "Вы уверены, что хотите удалить выбранных поставщиков?", + "confirm_restore" => "Вы уверены, что хотите восстановить выбранных поставщиков?", + "cost" => "Расходы поставщика", + "error_adding_updating" => "Ошибка при добавлении/обновлении поставщика.", + "goods" => "Поставщик товаров", + "new" => "Новый поставщик", + "none_selected" => "Вы не выбрали поставщиков для удаления.", + "one_or_multiple" => "Поставщик(и)", + "successful_adding" => "Поставщик был успешно добавлен", + "successful_deleted" => "Успешно удалено", + "successful_updating" => "Поставщик успешно обновлен", + "supplier" => "Поставщик", + "supplier_id" => "№", + "tax_id" => "№ налога", + "update" => "Обновить поставщика", ]; diff --git a/app/Language/ru/Taxes.php b/app/Language/ru/Taxes.php index f1427f1bf..c5b446bae 100644 --- a/app/Language/ru/Taxes.php +++ b/app/Language/ru/Taxes.php @@ -1,82 +1,82 @@ "Добавить исключение", - "cascade" => "Каскадный налог", - "cascade_sequence" => "Каскадная последовательность", - "city" => "Город", - "code" => "Код", - "confirm_delete" => "Вы действительно хотите удалить этот налоговый код? Это действие не может быть отменено", - "confirm_restore" => "Вы действительно хотите восстановить выбранный(е) налоговый код(ы)?", - "default_tax_category" => "Категория налога по умолчанию", - "default_tax_rate" => "Налоговая ставка по умолчанию", - "error_adding_updating" => "Не удалось добавить или обновить налоговый код", - "group_seq" => "Групповая последовательность", - "jurisdiction_name" => "Название юрисдикции", - "name" => "Название", - "new" => "Новый налоговый код", - "no_taxes" => "", - "no_taxes_to_display" => "Нет налогового кода для отображения", - "reporting_authority" => "Отчетный орган", - "round_half_down" => "", - "round_half_even" => "", - "round_half_odd" => "", - "round_half_up" => "", - "rounding_code" => "Код округления", - "sales_tax" => "Налог с продаж", - "sales_tax_by_invoice" => "Налог с продаж по накладной", - "sequence" => "Послед.", - "state" => "Статус", - "successful_deleted" => "Успешно удалено", - "tax_categories" => "Налоговые категории", - "tax_categories_configuration" => "Параметры налоговых категорий", - "tax_categories_saved_successfully" => "Изменения налоговых категорий сохранены", - "tax_categories_saved_unsuccessfully" => "Изменения налоговых категорий не сохранены", - "tax_category" => "Налоговая категория", - "tax_category_code" => "Код налоговой категории", - "tax_category_duplicate" => "Дубликат налоговой категории", - "tax_category_invalid_chars" => "Недопустимые символы в названии налоговой категории", - "tax_category_name" => "Название налоговой категории", - "tax_category_new" => "Новая налоговая категория", - "tax_category_required" => "Налоговая категория - обязательно для заполнения", - "tax_code" => "Налоговый код", - "tax_code_cannot_be_deleted" => "Ошибка при удалении налогового кода", - "tax_code_duplicate" => "Дубликат налогового кода", - "tax_code_invalid_chars" => "Недопустимые символы в налоговом коде", - "tax_code_name" => "Название налогового кода", - "tax_code_required" => "Налоговый код - обязательно для заполнения.", - "tax_code_successful_deleted" => "Налоговый код успешно удален", - "tax_code_successful_updated" => "Обновление прошло успешно", - "tax_code_successful_updating" => "Налоговый код обновлен успешно", - "tax_code_successfully_added" => "Добавление прошло успешно", - "tax_code_type" => "Тип налогового кода", - "tax_codes" => "Налоговые коды", - "tax_codes_configuration" => "Параметры налоговых кодов", - "tax_codes_saved_successfully" => "Изменения налогового кода сохранены", - "tax_codes_saved_unsuccessfully" => "Изменения налогового кода не сохранены", - "tax_excluded" => "Без налога", - "tax_group" => "Налоговая группа", - "tax_group_not_unique" => "Налоговая группа {0} не уникальна", - "tax_group_sequence" => "Последовательность налоговой группы", - "tax_included" => "Вкл. налог", - "tax_jurisdiction" => "Налоговая юрисдикция", - "tax_jurisdiction_duplicate" => "Дубликат налоговой юрисдикции", - "tax_jurisdiction_invalid_chars" => "Недопустимые символы в названии юрисдикции", - "tax_jurisdiction_required" => "Налоговая юрисдикция - обязательно для заполнения", - "tax_jurisdictions" => "Налоговые юрисдикции", - "tax_jurisdictions_configuration" => "Параметры налоговых юрисдикций", - "tax_jurisdictions_saved_successfully" => "Изменения налоговой юрисдикции сохранены", - "tax_jurisdictions_saved_unsuccessfully" => "Изменения налоговой юрисдикции не сохранены", - "tax_rate" => "Ставка налога", - "tax_rate_configuration" => "Параметры ставки налога", - "tax_rate_error_adding_updating" => "Не удалось добавить или обновить налоговую ставку", - "tax_rate_numeric" => "Налоговая ставка должна быть числом", - "tax_rate_required" => "Налоговая ставка - обязательное поле для заполнения", - "tax_rate_successful_updated" => "Успешно обновлено", - "tax_rate_successfully_added" => "Успешно добавлено", - "tax_rates" => "Налоговые ставки", - "tax_rates_configuration" => "Параметры налоговых ставок", - "tax_rounding" => "Округление налога", - "tax_type" => "Тип налога", - "update" => "Обновить налоговую ставку", - "vat_tax" => "НДС", + "add_exception" => "Добавить исключение", + "cascade" => "Каскадный налог", + "cascade_sequence" => "Каскадная последовательность", + "city" => "Город", + "code" => "Код", + "confirm_delete" => "Вы действительно хотите удалить этот налоговый код? Это действие не может быть отменено", + "confirm_restore" => "Вы действительно хотите восстановить выбранный(е) налоговый код(ы)?", + "default_tax_category" => "Категория налога по умолчанию", + "default_tax_rate" => "Налоговая ставка по умолчанию", + "error_adding_updating" => "Не удалось добавить или обновить налоговый код", + "group_seq" => "Групповая последовательность", + "jurisdiction_name" => "Название юрисдикции", + "name" => "Название", + "new" => "Новый налоговый код", + "no_taxes" => "", + "no_taxes_to_display" => "Нет налогового кода для отображения", + "reporting_authority" => "Отчетный орган", + "round_half_down" => "", + "round_half_even" => "", + "round_half_odd" => "", + "round_half_up" => "", + "rounding_code" => "Код округления", + "sales_tax" => "Налог с продаж", + "sales_tax_by_invoice" => "Налог с продаж по накладной", + "sequence" => "Послед.", + "state" => "Статус", + "successful_deleted" => "Успешно удалено", + "tax_categories" => "Налоговые категории", + "tax_categories_configuration" => "Параметры налоговых категорий", + "tax_categories_saved_successfully" => "Изменения налоговых категорий сохранены", + "tax_categories_saved_unsuccessfully" => "Изменения налоговых категорий не сохранены", + "tax_category" => "Налоговая категория", + "tax_category_code" => "Код налоговой категории", + "tax_category_duplicate" => "Дубликат налоговой категории", + "tax_category_invalid_chars" => "Недопустимые символы в названии налоговой категории", + "tax_category_name" => "Название налоговой категории", + "tax_category_new" => "Новая налоговая категория", + "tax_category_required" => "Налоговая категория - обязательно для заполнения", + "tax_code" => "Налоговый код", + "tax_code_cannot_be_deleted" => "Ошибка при удалении налогового кода", + "tax_code_duplicate" => "Дубликат налогового кода", + "tax_code_invalid_chars" => "Недопустимые символы в налоговом коде", + "tax_code_name" => "Название налогового кода", + "tax_code_required" => "Налоговый код - обязательно для заполнения.", + "tax_code_successful_deleted" => "Налоговый код успешно удален", + "tax_code_successful_updated" => "Обновление прошло успешно", + "tax_code_successful_updating" => "Налоговый код обновлен успешно", + "tax_code_successfully_added" => "Добавление прошло успешно", + "tax_code_type" => "Тип налогового кода", + "tax_codes" => "Налоговые коды", + "tax_codes_configuration" => "Параметры налоговых кодов", + "tax_codes_saved_successfully" => "Изменения налогового кода сохранены", + "tax_codes_saved_unsuccessfully" => "Изменения налогового кода не сохранены", + "tax_excluded" => "Без налога", + "tax_group" => "Налоговая группа", + "tax_group_not_unique" => "Налоговая группа {0} не уникальна", + "tax_group_sequence" => "Последовательность налоговой группы", + "tax_included" => "Вкл. налог", + "tax_jurisdiction" => "Налоговая юрисдикция", + "tax_jurisdiction_duplicate" => "Дубликат налоговой юрисдикции", + "tax_jurisdiction_invalid_chars" => "Недопустимые символы в названии юрисдикции", + "tax_jurisdiction_required" => "Налоговая юрисдикция - обязательно для заполнения", + "tax_jurisdictions" => "Налоговые юрисдикции", + "tax_jurisdictions_configuration" => "Параметры налоговых юрисдикций", + "tax_jurisdictions_saved_successfully" => "Изменения налоговой юрисдикции сохранены", + "tax_jurisdictions_saved_unsuccessfully" => "Изменения налоговой юрисдикции не сохранены", + "tax_rate" => "Ставка налога", + "tax_rate_configuration" => "Параметры ставки налога", + "tax_rate_error_adding_updating" => "Не удалось добавить или обновить налоговую ставку", + "tax_rate_numeric" => "Налоговая ставка должна быть числом", + "tax_rate_required" => "Налоговая ставка - обязательное поле для заполнения", + "tax_rate_successful_updated" => "Успешно обновлено", + "tax_rate_successfully_added" => "Успешно добавлено", + "tax_rates" => "Налоговые ставки", + "tax_rates_configuration" => "Параметры налоговых ставок", + "tax_rounding" => "Округление налога", + "tax_type" => "Тип налога", + "update" => "Обновить налоговую ставку", + "vat_tax" => "НДС", ]; diff --git a/app/Language/ru/index.html b/app/Language/ru/index.html index 0dcbf067f..cf9ee13e8 100644 --- a/app/Language/ru/index.html +++ b/app/Language/ru/index.html @@ -1,11 +1,11 @@ - 403 Forbidden + 403 Forbidden

    Directory access is forbidden.

    - + diff --git a/app/Language/sv/Attributes.php b/app/Language/sv/Attributes.php index 176e778b8..cba3cbdff 100644 --- a/app/Language/sv/Attributes.php +++ b/app/Language/sv/Attributes.php @@ -1,32 +1,32 @@ "Attributvärdet får inte innehålla '_' eller '|'", - "confirm_delete" => "Är du säker på att du vill ta bort de valda attributen?", - "confirm_restore" => "Är du säker på att du vill återställa de valda attributen?", - "definition_cannot_be_deleted" => "Det gick inte att ta bort valda attribut", - "definition_error_adding_updating" => "Attribut{0} kunde inte läggas till eller uppdateras. Kontrollera felloggen.", - "definition_flags" => "Attribut synlighet", - "definition_group" => "Grupp", - "definition_id" => "Id", - "definition_name" => "Lägg till attribut", - "definition_name_required" => "Attributnamn är ett obligatoriskt fält", - "definition_one_or_multiple" => "attribut", - "definition_successful_adding" => "Du har lagt till artikeln", - "definition_successful_deleted" => "Du har tagit bort", - "definition_successful_updating" => "Du har uppdaterat attributet", - "definition_type" => "Attributtyp", - "definition_type_required" => "Attributtyp är ett obligatoriskt fält", - "definition_unit" => "Måttenhet", - "definition_values" => "Attributvärden", - "new" => "Nytt attribut", - "no_attributes_to_display" => "Inga artiklar att visa", - "receipt_visibility" => "Kvitto", - "show_in_items" => "Visa i artiklar", - "show_in_items_visibility" => "Artiklar", - "show_in_receipt" => "Visa i kvitto", - "show_in_receivings" => "Visa i mottagande", - "show_in_receivings_visibility" => "Inleveranser", - "show_in_sales" => "Visa i försäljning", - "show_in_sales_visibility" => "Försäljning", - "update" => "Uppdatera attribut", + "attribute_value_invalid_chars" => "Attributvärdet får inte innehålla '_' eller '|'", + "confirm_delete" => "Är du säker på att du vill ta bort de valda attributen?", + "confirm_restore" => "Är du säker på att du vill återställa de valda attributen?", + "definition_cannot_be_deleted" => "Det gick inte att ta bort valda attribut", + "definition_error_adding_updating" => "Attribut{0} kunde inte läggas till eller uppdateras. Kontrollera felloggen.", + "definition_flags" => "Attribut synlighet", + "definition_group" => "Grupp", + "definition_id" => "Id", + "definition_name" => "Lägg till attribut", + "definition_name_required" => "Attributnamn är ett obligatoriskt fält", + "definition_one_or_multiple" => "attribut", + "definition_successful_adding" => "Du har lagt till artikeln", + "definition_successful_deleted" => "Du har tagit bort", + "definition_successful_updating" => "Du har uppdaterat attributet", + "definition_type" => "Attributtyp", + "definition_type_required" => "Attributtyp är ett obligatoriskt fält", + "definition_unit" => "Måttenhet", + "definition_values" => "Attributvärden", + "new" => "Nytt attribut", + "no_attributes_to_display" => "Inga artiklar att visa", + "receipt_visibility" => "Kvitto", + "show_in_items" => "Visa i artiklar", + "show_in_items_visibility" => "Artiklar", + "show_in_receipt" => "Visa i kvitto", + "show_in_receivings" => "Visa i mottagande", + "show_in_receivings_visibility" => "Inleveranser", + "show_in_sales" => "Visa i försäljning", + "show_in_sales_visibility" => "Försäljning", + "update" => "Uppdatera attribut", ]; diff --git a/app/Language/sv/Calendar.php b/app/Language/sv/Calendar.php index 34e58a11a..79af7a8a5 100644 --- a/app/Language/sv/Calendar.php +++ b/app/Language/sv/Calendar.php @@ -1,48 +1,48 @@ "sö", - "mo" => "må", - "tu" => "ti", - "we" => "on", - "th" => "to", - "fr" => "fr", - "sa" => "lö", - "sun" => "sön", - "mon" => "mån", - "tue" => "tis", - "wed" => "ons", - "thu" => "tor", - "fri" => "fre", - "sat" => "lör", - "sunday" => "söndag", - "monday" => "måndag", - "tuesday" => "tisdag", - "wednesday" => "onsdag", - "thursday" => "torsdag", - "friday" => "fredag", - "saturday" => "lördag", - "jan" => "jan", - "feb" => "feb", - "mar" => "mar", - "apr" => "apr", - "may" => "maj", - "jun" => "jun", - "jul" => "jul", - "aug" => "aug", - "sep" => "sep", - "oct" => "okt", - "nov" => "nov", - "dec" => "dec", - "january" => "januari", - "february" => "februari", - "march" => "mars", - "april" => "april", - "mayl" => "maj", - "june" => "juni", - "july" => "juli", - "august" => "augusti", - "september" => "september", - "october" => "oktober", - "november" => "november", - "december" => "december", + "su" => "sö", + "mo" => "må", + "tu" => "ti", + "we" => "on", + "th" => "to", + "fr" => "fr", + "sa" => "lö", + "sun" => "sön", + "mon" => "mån", + "tue" => "tis", + "wed" => "ons", + "thu" => "tor", + "fri" => "fre", + "sat" => "lör", + "sunday" => "söndag", + "monday" => "måndag", + "tuesday" => "tisdag", + "wednesday" => "onsdag", + "thursday" => "torsdag", + "friday" => "fredag", + "saturday" => "lördag", + "jan" => "jan", + "feb" => "feb", + "mar" => "mar", + "apr" => "apr", + "may" => "maj", + "jun" => "jun", + "jul" => "jul", + "aug" => "aug", + "sep" => "sep", + "oct" => "okt", + "nov" => "nov", + "dec" => "dec", + "january" => "januari", + "february" => "februari", + "march" => "mars", + "april" => "april", + "mayl" => "maj", + "june" => "juni", + "july" => "juli", + "august" => "augusti", + "september" => "september", + "october" => "oktober", + "november" => "november", + "december" => "december", ]; diff --git a/app/Language/sv/Enum.php b/app/Language/sv/Enum.php index 051cfbdf8..b9e5c73c5 100644 --- a/app/Language/sv/Enum.php +++ b/app/Language/sv/Enum.php @@ -1,10 +1,10 @@ "Halv ner", - "half_even" => "Halv ojämn", - "half_five" => "Halv fem", - "half_odd" => "Halv ojämn", - "half_up" => "Halv upp", - "round_down" => "Avrunda ner", - "round_up" => "Avrunda upp", + "half_down" => "Halv ner", + "half_even" => "Halv ojämn", + "half_five" => "Halv fem", + "half_odd" => "Halv ojämn", + "half_up" => "Halv upp", + "round_down" => "Avrunda ner", + "round_up" => "Avrunda upp", ]; diff --git a/app/Language/sv/Error.php b/app/Language/sv/Error.php index 416460fbf..f8bd9b41d 100644 --- a/app/Language/sv/Error.php +++ b/app/Language/sv/Error.php @@ -1,5 +1,5 @@ "Du har inte rättigheter till modulen", - "unknown" => "Oväntat fel", + "no_permission_module" => "Du har inte rättigheter till modulen", + "unknown" => "Oväntat fel", ]; diff --git a/app/Language/sv/Expenses_categories.php b/app/Language/sv/Expenses_categories.php index 013af797d..ac0569466 100644 --- a/app/Language/sv/Expenses_categories.php +++ b/app/Language/sv/Expenses_categories.php @@ -1,22 +1,22 @@ "Expense Kategori namn krävs", - "add_item" => "Lägg till Kategori", - "cannot_be_deleted" => "Kunde inte ta bort kategorikostnad", - "category_id" => "Id", - "confirm_delete" => "Är du säker på att du vill radera den valda utgiftskategorin?", - "confirm_restore" => "Är du säker på att du vill återställa den valda utgiftskategorin?", - "description" => "Kategori Beskrivning", - "error_adding_updating" => "Det gick inte att lägga till / uppdatera kostnadskategorin", - "info" => "Information kostnadskategori", - "name" => "Kategorinamn", - "new" => "Ny kategori", - "no_expenses_categories_to_display" => "Ingen kategori att visa", - "none_selected" => "Du har inte valt någon kategoriskostnad", - "one_or_multiple" => "Kategori Kostnad", - "quantity" => "Kvantitet", - "successful_adding" => "Kostnadskategori lades till", - "successful_deleted" => "Kostnadskategori togs bort", - "successful_updating" => "Kostnads kategori uppdaterad", - "update" => "Uppdatera kategori", + "category_name_required" => "Expense Kategori namn krävs", + "add_item" => "Lägg till Kategori", + "cannot_be_deleted" => "Kunde inte ta bort kategorikostnad", + "category_id" => "Id", + "confirm_delete" => "Är du säker på att du vill radera den valda utgiftskategorin?", + "confirm_restore" => "Är du säker på att du vill återställa den valda utgiftskategorin?", + "description" => "Kategori Beskrivning", + "error_adding_updating" => "Det gick inte att lägga till / uppdatera kostnadskategorin", + "info" => "Information kostnadskategori", + "name" => "Kategorinamn", + "new" => "Ny kategori", + "no_expenses_categories_to_display" => "Ingen kategori att visa", + "none_selected" => "Du har inte valt någon kategoriskostnad", + "one_or_multiple" => "Kategori Kostnad", + "quantity" => "Kvantitet", + "successful_adding" => "Kostnadskategori lades till", + "successful_deleted" => "Kostnadskategori togs bort", + "successful_updating" => "Kostnads kategori uppdaterad", + "update" => "Uppdatera kategori", ]; diff --git a/app/Language/sv/Taxes.php b/app/Language/sv/Taxes.php index 5b2ac796e..5d9ed8dbb 100644 --- a/app/Language/sv/Taxes.php +++ b/app/Language/sv/Taxes.php @@ -1,82 +1,82 @@ "Lägg till undantag", - "cascade" => "Kaskad", - "cascade_sequence" => "Kaskadesekvens", - "city" => "Stad", - "code" => "Kod", - "confirm_delete" => "Är du säker på att du vill ta bort denna skattekod? Den här åtgärden kan inte ångras", - "confirm_restore" => "Är du säker på att du vill återställa valda skattekod (er)?", - "default_tax_category" => "Standardskattskategori", - "default_tax_rate" => "Standard skattesats", - "error_adding_updating" => "Skattekodens tillägg eller uppdatering misslyckades", - "group_seq" => "Grupp Seq", - "jurisdiction_name" => "Jurisdiktionsnamn", - "name" => "Namn", - "new" => "Ny skattsatts", - "no_taxes" => "", - "no_taxes_to_display" => "Ingen skattesats tillgänglig för visning", - "reporting_authority" => "Rapporteringsmyndighet", - "round_half_down" => "Halv ner", - "round_half_even" => "Halv ojämn", - "round_half_odd" => "Halv ojämn", - "round_half_up" => "Halv upp", - "rounding_code" => "Avrundningskod", - "sales_tax" => "Moms", - "sales_tax_by_invoice" => "Moms per faktura", - "sequence" => "Seq.", - "state" => "Län", - "successful_deleted" => "Du har tagit bort", - "tax_categories" => "Skattekategorier", - "tax_categories_configuration" => "Konfiguration av skattekategorier", - "tax_categories_saved_successfully" => "Ändringar av skattekategorier sparade", - "tax_categories_saved_unsuccessfully" => "Ändringar av skattekategorier sparades inte", - "tax_category" => "Skattekategori", - "tax_category_code" => "Skattkategorikod", - "tax_category_duplicate" => "Dubblett skattekategori", - "tax_category_invalid_chars" => "Ogiltiga tecken i skattekategorinamnet", - "tax_category_name" => "Skattekategorinamn", - "tax_category_new" => "Ny skattekategori", - "tax_category_required" => "Skattekategori krävs", - "tax_code" => "Skattesats", - "tax_code_cannot_be_deleted" => "Skattkods radering misslyckades.", - "tax_code_duplicate" => "Kopiera skattekoden", - "tax_code_invalid_chars" => "Ogiltiga tecken i skattekod", - "tax_code_name" => "Skattkodsnamn", - "tax_code_required" => "Skattekoden är ett obligatoriskt fält.", - "tax_code_successful_deleted" => "Du har raderat Skattekoden", - "tax_code_successful_updated" => "Du har uppdaterat", - "tax_code_successful_updating" => "Du har uppdaterat Skattekoden", - "tax_code_successfully_added" => "Du har lagt till", - "tax_code_type" => "Skattkodstyp", - "tax_codes" => "Skattekoder", - "tax_codes_configuration" => "Skattkodskonfiguration", - "tax_codes_saved_successfully" => "Skattkodsändringar sparade", - "tax_codes_saved_unsuccessfully" => "Skattkodsändringar sparades inte", - "tax_excluded" => "Skatt exkluderad", - "tax_group" => "Skattegrupp", - "tax_group_not_unique" => "Skattegrupp{0} är inte unik", - "tax_group_sequence" => "Skattgruppsekvens", - "tax_included" => "Skatt ingår", - "tax_jurisdiction" => "Skattejurisdiktion", - "tax_jurisdiction_duplicate" => "Dubblett skattejurisdiktion", - "tax_jurisdiction_invalid_chars" => "Ogiltiga tecken i jurisdiktionsnamn", - "tax_jurisdiction_required" => "Skattejurisdiktion krävs", - "tax_jurisdictions" => "Skattejurisdiktioner", - "tax_jurisdictions_configuration" => "Konfiguration av skattejurisdiktioner", - "tax_jurisdictions_saved_successfully" => "Ändringar i skattejurisdiktionen sparades", - "tax_jurisdictions_saved_unsuccessfully" => "Ändringar av skattejurisdiktion sparades inte", - "tax_rate" => "Skattenivå", - "tax_rate_configuration" => "Skattesats konfiguration", - "tax_rate_error_adding_updating" => "Tillägg eller uppdatering av skattesats misslyckades", - "tax_rate_numeric" => "Skattesats måste vara ett nummer.", - "tax_rate_required" => "Skattesats är ett obligatoriskt fält.", - "tax_rate_successful_updated" => "Du har uppdaterat", - "tax_rate_successfully_added" => "Du har lagt till", - "tax_rates" => "Skattesatser", - "tax_rates_configuration" => "Skattesats konfiguration", - "tax_rounding" => "Skattavrundning", - "tax_type" => "Skattyp", - "update" => "Uppdatera försäljningskategoribeskattning", - "vat_tax" => "Momsskatt", + "add_exception" => "Lägg till undantag", + "cascade" => "Kaskad", + "cascade_sequence" => "Kaskadesekvens", + "city" => "Stad", + "code" => "Kod", + "confirm_delete" => "Är du säker på att du vill ta bort denna skattekod? Den här åtgärden kan inte ångras", + "confirm_restore" => "Är du säker på att du vill återställa valda skattekod (er)?", + "default_tax_category" => "Standardskattskategori", + "default_tax_rate" => "Standard skattesats", + "error_adding_updating" => "Skattekodens tillägg eller uppdatering misslyckades", + "group_seq" => "Grupp Seq", + "jurisdiction_name" => "Jurisdiktionsnamn", + "name" => "Namn", + "new" => "Ny skattsatts", + "no_taxes" => "", + "no_taxes_to_display" => "Ingen skattesats tillgänglig för visning", + "reporting_authority" => "Rapporteringsmyndighet", + "round_half_down" => "Halv ner", + "round_half_even" => "Halv ojämn", + "round_half_odd" => "Halv ojämn", + "round_half_up" => "Halv upp", + "rounding_code" => "Avrundningskod", + "sales_tax" => "Moms", + "sales_tax_by_invoice" => "Moms per faktura", + "sequence" => "Seq.", + "state" => "Län", + "successful_deleted" => "Du har tagit bort", + "tax_categories" => "Skattekategorier", + "tax_categories_configuration" => "Konfiguration av skattekategorier", + "tax_categories_saved_successfully" => "Ändringar av skattekategorier sparade", + "tax_categories_saved_unsuccessfully" => "Ändringar av skattekategorier sparades inte", + "tax_category" => "Skattekategori", + "tax_category_code" => "Skattkategorikod", + "tax_category_duplicate" => "Dubblett skattekategori", + "tax_category_invalid_chars" => "Ogiltiga tecken i skattekategorinamnet", + "tax_category_name" => "Skattekategorinamn", + "tax_category_new" => "Ny skattekategori", + "tax_category_required" => "Skattekategori krävs", + "tax_code" => "Skattesats", + "tax_code_cannot_be_deleted" => "Skattkods radering misslyckades.", + "tax_code_duplicate" => "Kopiera skattekoden", + "tax_code_invalid_chars" => "Ogiltiga tecken i skattekod", + "tax_code_name" => "Skattkodsnamn", + "tax_code_required" => "Skattekoden är ett obligatoriskt fält.", + "tax_code_successful_deleted" => "Du har raderat Skattekoden", + "tax_code_successful_updated" => "Du har uppdaterat", + "tax_code_successful_updating" => "Du har uppdaterat Skattekoden", + "tax_code_successfully_added" => "Du har lagt till", + "tax_code_type" => "Skattkodstyp", + "tax_codes" => "Skattekoder", + "tax_codes_configuration" => "Skattkodskonfiguration", + "tax_codes_saved_successfully" => "Skattkodsändringar sparade", + "tax_codes_saved_unsuccessfully" => "Skattkodsändringar sparades inte", + "tax_excluded" => "Skatt exkluderad", + "tax_group" => "Skattegrupp", + "tax_group_not_unique" => "Skattegrupp{0} är inte unik", + "tax_group_sequence" => "Skattgruppsekvens", + "tax_included" => "Skatt ingår", + "tax_jurisdiction" => "Skattejurisdiktion", + "tax_jurisdiction_duplicate" => "Dubblett skattejurisdiktion", + "tax_jurisdiction_invalid_chars" => "Ogiltiga tecken i jurisdiktionsnamn", + "tax_jurisdiction_required" => "Skattejurisdiktion krävs", + "tax_jurisdictions" => "Skattejurisdiktioner", + "tax_jurisdictions_configuration" => "Konfiguration av skattejurisdiktioner", + "tax_jurisdictions_saved_successfully" => "Ändringar i skattejurisdiktionen sparades", + "tax_jurisdictions_saved_unsuccessfully" => "Ändringar av skattejurisdiktion sparades inte", + "tax_rate" => "Skattenivå", + "tax_rate_configuration" => "Skattesats konfiguration", + "tax_rate_error_adding_updating" => "Tillägg eller uppdatering av skattesats misslyckades", + "tax_rate_numeric" => "Skattesats måste vara ett nummer.", + "tax_rate_required" => "Skattesats är ett obligatoriskt fält.", + "tax_rate_successful_updated" => "Du har uppdaterat", + "tax_rate_successfully_added" => "Du har lagt till", + "tax_rates" => "Skattesatser", + "tax_rates_configuration" => "Skattesats konfiguration", + "tax_rounding" => "Skattavrundning", + "tax_type" => "Skattyp", + "update" => "Uppdatera försäljningskategoribeskattning", + "vat_tax" => "Momsskatt", ]; diff --git a/app/Language/sv/index.html b/app/Language/sv/index.html index b702fbc39..69df4e1df 100644 --- a/app/Language/sv/index.html +++ b/app/Language/sv/index.html @@ -1,7 +1,7 @@ - 403 Forbidden + 403 Forbidden diff --git a/app/Language/ta/Attributes.php b/app/Language/ta/Attributes.php index 2bc46940f..a0e38205b 100644 --- a/app/Language/ta/Attributes.php +++ b/app/Language/ta/Attributes.php @@ -1,32 +1,32 @@ "பண்புக்கூறு மதிப்பு '_' அல்லது '|' கொண்டிருக்கக்கூடாது", - "confirm_delete" => "தேர்ந்தெடுக்கப்பட்ட பண்புக்கூறு (களை) நீக்க விரும்புகிறீர்களா?", - "confirm_restore" => "தேர்ந்தெடுக்கப்பட்ட பண்புக்கூறுகளை (களை) மீட்டெடுக்க விரும்புகிறீர்களா?", - "definition_cannot_be_deleted" => "Could not delete selected attribute(s)", - "definition_error_adding_updating" => "Attribute {0} could not be added or updated. Please check the error log.", - "definition_flags" => "Attribute Visibility", - "definition_group" => "Group", - "definition_id" => "Id", - "definition_name" => "Add Attribute", - "definition_name_required" => "Attribute name is a required field", - "definition_one_or_multiple" => "attribute(s)", - "definition_successful_adding" => "You have successfully added item", - "definition_successful_deleted" => "You have successfully deleted", - "definition_successful_updating" => "You have successfully updated attribute", - "definition_type" => "Attribute Type", - "definition_type_required" => "Attribute type is a required field", - "definition_unit" => "Measurement Unit", - "definition_values" => "Attribute Values", - "new" => "New Attribute", - "no_attributes_to_display" => "No Items to display", - "receipt_visibility" => "Receipt", - "show_in_items" => "Show in items", - "show_in_items_visibility" => "Items", - "show_in_receipt" => "Show in receipt", - "show_in_receivings" => "Show in receivings", - "show_in_receivings_visibility" => "Receivings", - "show_in_sales" => "Show in sales", - "show_in_sales_visibility" => "Sales", - "update" => "Update Attribute", + "attribute_value_invalid_chars" => "பண்புக்கூறு மதிப்பு '_' அல்லது '|' கொண்டிருக்கக்கூடாது", + "confirm_delete" => "தேர்ந்தெடுக்கப்பட்ட பண்புக்கூறு (களை) நீக்க விரும்புகிறீர்களா?", + "confirm_restore" => "தேர்ந்தெடுக்கப்பட்ட பண்புக்கூறுகளை (களை) மீட்டெடுக்க விரும்புகிறீர்களா?", + "definition_cannot_be_deleted" => "Could not delete selected attribute(s)", + "definition_error_adding_updating" => "Attribute {0} could not be added or updated. Please check the error log.", + "definition_flags" => "Attribute Visibility", + "definition_group" => "Group", + "definition_id" => "Id", + "definition_name" => "Add Attribute", + "definition_name_required" => "Attribute name is a required field", + "definition_one_or_multiple" => "attribute(s)", + "definition_successful_adding" => "You have successfully added item", + "definition_successful_deleted" => "You have successfully deleted", + "definition_successful_updating" => "You have successfully updated attribute", + "definition_type" => "Attribute Type", + "definition_type_required" => "Attribute type is a required field", + "definition_unit" => "Measurement Unit", + "definition_values" => "Attribute Values", + "new" => "New Attribute", + "no_attributes_to_display" => "No Items to display", + "receipt_visibility" => "Receipt", + "show_in_items" => "Show in items", + "show_in_items_visibility" => "Items", + "show_in_receipt" => "Show in receipt", + "show_in_receivings" => "Show in receivings", + "show_in_receivings_visibility" => "Receivings", + "show_in_sales" => "Show in sales", + "show_in_sales_visibility" => "Sales", + "update" => "Update Attribute", ]; diff --git a/app/Language/ta/Bootstrap_tables.php b/app/Language/ta/Bootstrap_tables.php index 43994d25c..83f09ca11 100644 --- a/app/Language/ta/Bootstrap_tables.php +++ b/app/Language/ta/Bootstrap_tables.php @@ -1,11 +1,11 @@ "அனைத்தும்", - "columns" => "நெடுவரிசை", - "hide_show_pagination" => "பக்கமாக்கலை காண்பி / மறை", - "loading" => "பதிவேறுகிறது, காத்திருக்கவும்...", - "page_from_to" => "{2} வரிசைகளில் {0} முதல் {1} வரை காட்டுகிறது", - "refresh" => "புதுப்பிக்கவும்", - "rows_per_page" => "ஒரு பக்கத்திற்கு {0} வரிசைகள்", - "toggle" => "நிலைமாற்று", + "all" => "அனைத்தும்", + "columns" => "நெடுவரிசை", + "hide_show_pagination" => "பக்கமாக்கலை காண்பி / மறை", + "loading" => "பதிவேறுகிறது, காத்திருக்கவும்...", + "page_from_to" => "{2} வரிசைகளில் {0} முதல் {1} வரை காட்டுகிறது", + "refresh" => "புதுப்பிக்கவும்", + "rows_per_page" => "ஒரு பக்கத்திற்கு {0} வரிசைகள்", + "toggle" => "நிலைமாற்று", ]; diff --git a/app/Language/ta/Calendar.php b/app/Language/ta/Calendar.php index b10d5a8a4..fceb47a48 100644 --- a/app/Language/ta/Calendar.php +++ b/app/Language/ta/Calendar.php @@ -1,48 +1,48 @@ "ஞா", - "mo" => "தி", - "tu" => "செ", - "we" => "பு", - "th" => "வி", - "fr" => "வெ", - "sa" => "ச", - "sun" => "ஞாயி", - "mon" => "திங்", - "tue" => "செவ்", - "wed" => "புத", - "thu" => "வியா", - "fri" => "வெள்", - "sat" => "சனி", - "sunday" => "ஞாயிறு", - "monday" => "திங்கள்", - "tuesday" => "செவ்வாய்", - "wednesday" => "புதன்", - "thursday" => "வியாழன்", - "friday" => "வெள்ளி", - "saturday" => "சனி", - "jan" => "ஜன", - "feb" => "பிப்", - "mar" => "மார்", - "apr" => "ஏப்", - "may" => "மே", - "jun" => "ஜூன்", - "jul" => "ஜூலை", - "aug" => "ஆக", - "sep" => "செப்", - "oct" => "அக்ட்", - "nov" => "நவ", - "dec" => "டிச", - "january" => "ஜனவரி", - "february" => "பிப்ரவரி", - "march" => "மார்ச்", - "april" => "ஏப்ரல்", - "mayl" => "மே", - "june" => "ஜூன்", - "july" => "ஜூலை", - "august" => "ஆகஸ்ட்", - "september" => "செப்டம்பர்", - "october" => "அக்டோபர்", - "november" => "நவம்பர்", - "december" => "டிசம்பர்", + "su" => "ஞா", + "mo" => "தி", + "tu" => "செ", + "we" => "பு", + "th" => "வி", + "fr" => "வெ", + "sa" => "ச", + "sun" => "ஞாயி", + "mon" => "திங்", + "tue" => "செவ்", + "wed" => "புத", + "thu" => "வியா", + "fri" => "வெள்", + "sat" => "சனி", + "sunday" => "ஞாயிறு", + "monday" => "திங்கள்", + "tuesday" => "செவ்வாய்", + "wednesday" => "புதன்", + "thursday" => "வியாழன்", + "friday" => "வெள்ளி", + "saturday" => "சனி", + "jan" => "ஜன", + "feb" => "பிப்", + "mar" => "மார்", + "apr" => "ஏப்", + "may" => "மே", + "jun" => "ஜூன்", + "jul" => "ஜூலை", + "aug" => "ஆக", + "sep" => "செப்", + "oct" => "அக்ட்", + "nov" => "நவ", + "dec" => "டிச", + "january" => "ஜனவரி", + "february" => "பிப்ரவரி", + "march" => "மார்ச்", + "april" => "ஏப்ரல்", + "mayl" => "மே", + "june" => "ஜூன்", + "july" => "ஜூலை", + "august" => "ஆகஸ்ட்", + "september" => "செப்டம்பர்", + "october" => "அக்டோபர்", + "november" => "நவம்பர்", + "december" => "டிசம்பர்", ]; diff --git a/app/Language/ta/Cashups.php b/app/Language/ta/Cashups.php index 7b0ada2d8..736c88065 100644 --- a/app/Language/ta/Cashups.php +++ b/app/Language/ta/Cashups.php @@ -1,49 +1,49 @@ "Amount", - "amount_number" => "Amount must be a number", - "amount_required" => "Amount is a Required Field.", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "Cashup cannot be deleted", - "cash_difference" => "", - "close_date" => "Close Date", - "close_employee" => "Closed By", - "closed_amount_card" => "Cards", - "closed_amount_cash" => "Closed Cash", - "closed_amount_check" => "Checks", - "closed_amount_due" => "Dues", - "closed_amount_giftcard" => "", - "closed_amount_total" => "Total", - "closed_date" => "Closed Date", - "confirm_delete" => "Are you sure you want to delete the selected Cashup?", - "confirm_restore" => "Are you sure you want to restore selected Cashup(s)?", - "confirm_submit" => "", - "date_number" => "Date must be a number", - "date_required" => "Date is a required field", - "description" => "Description", - "enable_expected" => "", - "error_adding_updating" => "Error adding/updating Cashup", - "giftcard" => "", - "id" => "Id", - "info" => "Cashups Info", - "info_employee" => "", - "is_deleted" => "Deleted", - "new" => "New Cashup", - "no_cashups_to_display" => "There are no Cashups to display", - "none_selected" => "You have not selected any Cashups", - "note" => "Notes", - "one_or_multiple" => "Cashups(s)", - "open_amount_cash" => "Open Cash", - "open_date" => "Open Date", - "open_employee" => "Opened By", - "opened_date" => "Opened Date", - "successful_adding" => "Cashup add successful", - "successful_deleted" => "Cashup delete successful", - "successful_updating" => "Cashup update successful", - "total" => "Total", - "transfer_amount_cash" => "In/Out Cash", - "transfer_amount_cash_minus" => "", - "update" => "Update Cashup", - "warning" => "", + "amount" => "Amount", + "amount_number" => "Amount must be a number", + "amount_required" => "Amount is a Required Field.", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "Cashup cannot be deleted", + "cash_difference" => "", + "close_date" => "Close Date", + "close_employee" => "Closed By", + "closed_amount_card" => "Cards", + "closed_amount_cash" => "Closed Cash", + "closed_amount_check" => "Checks", + "closed_amount_due" => "Dues", + "closed_amount_giftcard" => "", + "closed_amount_total" => "Total", + "closed_date" => "Closed Date", + "confirm_delete" => "Are you sure you want to delete the selected Cashup?", + "confirm_restore" => "Are you sure you want to restore selected Cashup(s)?", + "confirm_submit" => "", + "date_number" => "Date must be a number", + "date_required" => "Date is a required field", + "description" => "Description", + "enable_expected" => "", + "error_adding_updating" => "Error adding/updating Cashup", + "giftcard" => "", + "id" => "Id", + "info" => "Cashups Info", + "info_employee" => "", + "is_deleted" => "Deleted", + "new" => "New Cashup", + "no_cashups_to_display" => "There are no Cashups to display", + "none_selected" => "You have not selected any Cashups", + "note" => "Notes", + "one_or_multiple" => "Cashups(s)", + "open_amount_cash" => "Open Cash", + "open_date" => "Open Date", + "open_employee" => "Opened By", + "opened_date" => "Opened Date", + "successful_adding" => "Cashup add successful", + "successful_deleted" => "Cashup delete successful", + "successful_updating" => "Cashup update successful", + "total" => "Total", + "transfer_amount_cash" => "In/Out Cash", + "transfer_amount_cash_minus" => "", + "update" => "Update Cashup", + "warning" => "", ]; diff --git a/app/Language/ta/Common.php b/app/Language/ta/Common.php index 04d6fca7a..00f6696e3 100644 --- a/app/Language/ta/Common.php +++ b/app/Language/ta/Common.php @@ -1,88 +1,88 @@ "முகவரி 1", - "address_2" => "முகவரி 2", - "admin" => "", - "city" => "நகரம்", - "clerk" => "", - "close" => "மூடவும்", - "color" => "", - "comments" => "குறிப்பு", - "common" => "பொது", - "confirm_search" => "நீங்கள் ஒன்று அல்லது அதற்கு மேற்பட்ட வரிசைகளைத் தேர்ந்தெடுத்துள்ளீர்கள், இவை உங்கள் தேடலுக்குப் பிறகு தேர்ந்தெடுக்கப்படாது. இந்த தேடலை நீங்கள் சமர்ப்பிக்க விரும்புகிறீர்களா?", - "copyrights" => "© 2010 - {0}", - "correct_errors" => "சேமிப்பதற்கு முன் அடையாளம் காணப்பட்ட பிழைகளை சரிசெய்யவும்", - "country" => "நாடு", - "dashboard" => "", - "date" => "தேதி", - "delete" => "நீக்கு", - "det" => "விவரங்கள்", - "download_import_template" => "CSV மாதிரியை இறக்குமதி செய்க (CSV)", - "edit" => "திருத்து", - "email" => "மின்னஞ்சல்", - "email_invalid_format" => "மின்னஞ்சல் முகவரி சரியான வடிவத்தில் இல்லை.", - "export_csv" => "CSV முறையில் வெளியீடு", - "export_csv_no" => "இல்லை", - "export_csv_yes" => "ஆம்", - "fields_required_message" => "சிவப்பு நிறத்திலுள்ள தரவுகள் அத்தியாவிசயம்", - "fields_required_message_unique" => "", - "first_name" => "முதற்பெயர்", - "first_name_required" => "முதற்பெயர் அத்தியாவசிய தரவு.", - "first_page" => "முதல்", - "gender" => "பாலினம்", - "gender_female" => "பெண்", - "gender_male" => "ஆண்", - "gender_undefined" => "", - "icon" => "உருவம்", - "id" => "அடையாளம்", - "import" => "தரவேற்று", - "import_change_file" => "மாற்று", - "import_csv" => "CSV தரவிறக்கு", - "import_full_path" => "CSV கோப்பிற்கான முழு பாதை தேவை", - "import_remove_file" => "அகற்று", - "import_select_file" => "கோப்பைத் தேர்ந்தெடுக்கவும்", - "inv" => "அழைப்பிதழ்", - "last_name" => "குடும்ப பெயர்", - "last_name_required" => "குடும்ப பெயர் அத்தியாவசியம்.", - "last_page" => "கடை", - "learn_about_project" => "திட்டத்தைப் பற்றிய சமீபத்திய தகவல்களை அறிய.", - "list_of" => "பட்டியல்", - "logo" => "முத்திரை", - "logo_mark" => "குறி", - "logout" => "வெளியேறு", - "manager" => "", - "migration_needed" => "{0} க்கு தரவுத்தள மாற்றம் உள்நுழைந்த பிறகு தொடங்கும்.", - "new" => "புதியது", - "no" => "", - "no_persons_to_display" => "காண்பிக்க நபர்கள் இல்லை.", - "none_selected_text" => "[தேர்ந்தெடு]", - "or" => "அல்லது", - "people" => "", - "phone_number" => "தொலைபேசி எண்", - "phone_number_required" => "", - "please_visit_my" => "தயவுசெய்து பார்வையிடவும்", - "position" => "", - "powered_by" => "மூலம் இயக்கப்படுகிறது", - "price" => "விலை", - "print" => "அச்சிடுக", - "remove" => "அகற்று", - "required" => "தேவை", - "restore" => "மீட்டமை", - "return_policy" => "திரும்ப பெரும் கொள்கை", - "search" => "தேடல்", - "search_options" => "தேடல் விருப்பங்கள்", - "searched_for" => "தேடியது", - "software_short" => "OSPOS", - "software_title" => "Open Source Point of Sale", - "state" => "மாநிலம்", - "submit" => "சமர்ப்பிக்கவும்", - "total_spent" => "மொத்த செலவு", - "unknown" => "தெரியவில்லை", - "view_recent_sales" => "சமீபத்திய விற்பனையைக் காண்க", - "website" => "opensourcepos.org வலைத்தளம்", - "welcome" => "வரவேற்கிறோம்", - "welcome_message" => "OSPOS க்கு வருக, தொடங்குவதற்கு கீழே உள்ள ஒரு தொகுதியைக் கிளிக் செய்க.", - "yes" => "", - "you_are_using_ospos" => "", - "zip" => "அஞ்சல் குறியீடு", + "address_1" => "முகவரி 1", + "address_2" => "முகவரி 2", + "admin" => "", + "city" => "நகரம்", + "clerk" => "", + "close" => "மூடவும்", + "color" => "", + "comments" => "குறிப்பு", + "common" => "பொது", + "confirm_search" => "நீங்கள் ஒன்று அல்லது அதற்கு மேற்பட்ட வரிசைகளைத் தேர்ந்தெடுத்துள்ளீர்கள், இவை உங்கள் தேடலுக்குப் பிறகு தேர்ந்தெடுக்கப்படாது. இந்த தேடலை நீங்கள் சமர்ப்பிக்க விரும்புகிறீர்களா?", + "copyrights" => "© 2010 - {0}", + "correct_errors" => "சேமிப்பதற்கு முன் அடையாளம் காணப்பட்ட பிழைகளை சரிசெய்யவும்", + "country" => "நாடு", + "dashboard" => "", + "date" => "தேதி", + "delete" => "நீக்கு", + "det" => "விவரங்கள்", + "download_import_template" => "CSV மாதிரியை இறக்குமதி செய்க (CSV)", + "edit" => "திருத்து", + "email" => "மின்னஞ்சல்", + "email_invalid_format" => "மின்னஞ்சல் முகவரி சரியான வடிவத்தில் இல்லை.", + "export_csv" => "CSV முறையில் வெளியீடு", + "export_csv_no" => "இல்லை", + "export_csv_yes" => "ஆம்", + "fields_required_message" => "சிவப்பு நிறத்திலுள்ள தரவுகள் அத்தியாவிசயம்", + "fields_required_message_unique" => "", + "first_name" => "முதற்பெயர்", + "first_name_required" => "முதற்பெயர் அத்தியாவசிய தரவு.", + "first_page" => "முதல்", + "gender" => "பாலினம்", + "gender_female" => "பெண்", + "gender_male" => "ஆண்", + "gender_undefined" => "", + "icon" => "உருவம்", + "id" => "அடையாளம்", + "import" => "தரவேற்று", + "import_change_file" => "மாற்று", + "import_csv" => "CSV தரவிறக்கு", + "import_full_path" => "CSV கோப்பிற்கான முழு பாதை தேவை", + "import_remove_file" => "அகற்று", + "import_select_file" => "கோப்பைத் தேர்ந்தெடுக்கவும்", + "inv" => "அழைப்பிதழ்", + "last_name" => "குடும்ப பெயர்", + "last_name_required" => "குடும்ப பெயர் அத்தியாவசியம்.", + "last_page" => "கடை", + "learn_about_project" => "திட்டத்தைப் பற்றிய சமீபத்திய தகவல்களை அறிய.", + "list_of" => "பட்டியல்", + "logo" => "முத்திரை", + "logo_mark" => "குறி", + "logout" => "வெளியேறு", + "manager" => "", + "migration_needed" => "{0} க்கு தரவுத்தள மாற்றம் உள்நுழைந்த பிறகு தொடங்கும்.", + "new" => "புதியது", + "no" => "", + "no_persons_to_display" => "காண்பிக்க நபர்கள் இல்லை.", + "none_selected_text" => "[தேர்ந்தெடு]", + "or" => "அல்லது", + "people" => "", + "phone_number" => "தொலைபேசி எண்", + "phone_number_required" => "", + "please_visit_my" => "தயவுசெய்து பார்வையிடவும்", + "position" => "", + "powered_by" => "மூலம் இயக்கப்படுகிறது", + "price" => "விலை", + "print" => "அச்சிடுக", + "remove" => "அகற்று", + "required" => "தேவை", + "restore" => "மீட்டமை", + "return_policy" => "திரும்ப பெரும் கொள்கை", + "search" => "தேடல்", + "search_options" => "தேடல் விருப்பங்கள்", + "searched_for" => "தேடியது", + "software_short" => "OSPOS", + "software_title" => "Open Source Point of Sale", + "state" => "மாநிலம்", + "submit" => "சமர்ப்பிக்கவும்", + "total_spent" => "மொத்த செலவு", + "unknown" => "தெரியவில்லை", + "view_recent_sales" => "சமீபத்திய விற்பனையைக் காண்க", + "website" => "opensourcepos.org வலைத்தளம்", + "welcome" => "வரவேற்கிறோம்", + "welcome_message" => "OSPOS க்கு வருக, தொடங்குவதற்கு கீழே உள்ள ஒரு தொகுதியைக் கிளிக் செய்க.", + "yes" => "", + "you_are_using_ospos" => "", + "zip" => "அஞ்சல் குறியீடு", ]; diff --git a/app/Language/ta/Config.php b/app/Language/ta/Config.php index 2acb3cbdb..3b2b2c681 100644 --- a/app/Language/ta/Config.php +++ b/app/Language/ta/Config.php @@ -1,330 +1,330 @@ "Company Address", - "address_required" => "Company address is a required field.", - "all_set" => "All file permissions are set correctly!", - "allow_duplicate_barcodes" => "Allow Duplicate Barcodes", - "apostrophe" => "apostrophe", - "backup_button" => "Backup", - "backup_database" => "Backup Database", - "barcode" => "Barcode", - "barcode_company" => "Company Name", - "barcode_configuration" => "Barcode Configuration", - "barcode_content" => "Barcode Content", - "barcode_first_row" => "Row 1", - "barcode_font" => "Font", - "barcode_formats" => "Input Formats", - "barcode_generate_if_empty" => "Generate if empty.", - "barcode_height" => "Height (px)", - "barcode_id" => "Item Id/Name", - "barcode_info" => "Barcode Configuration Information", - "barcode_layout" => "Barcode Layout", - "barcode_name" => "Name", - "barcode_number" => "Barcode", - "barcode_number_in_row" => "Number in row", - "barcode_page_cellspacing" => "Display page cellspacing.", - "barcode_page_width" => "Display page width", - "barcode_price" => "Price", - "barcode_second_row" => "Row 2", - "barcode_third_row" => "Row 3", - "barcode_tooltip" => "எச்சரிக்கை: இந்த அம்சம் நகல் உருப்படிகளை இறக்குமதி செய்ய அல்லது உருவாக்க காரணமாக இருக்கலாம். நீங்கள் நகல் பட்டைக்குறியீடுகளை விரும்பவில்லை என்றால் பயன்படுத்த வேண்டாம்.", - "barcode_type" => "Barcode Type", - "barcode_width" => "Width (px)", - "bottom" => "Bottom", - "cash_button" => "", - "cash_button_1" => "", - "cash_button_2" => "", - "cash_button_3" => "", - "cash_button_4" => "", - "cash_button_5" => "", - "cash_button_6" => "", - "cash_decimals" => "Cash Decimals", - "cash_decimals_tooltip" => "If Cash Decimals and Currency Decimals are the same then no cash triggered rounding will take place, unless Cash Rounding is set to Half Five.", - "cash_rounding" => "Cash Rounding", - "category_dropdown" => "Show Category as a dropdown", - "center" => "Center", - "change_apperance_tooltip" => "", - "comma" => "comma", - "company" => "Company Name", - "company_avatar" => "", - "company_change_image" => "Change Image", - "company_logo" => "Company Logo", - "company_remove_image" => "Remove Image", - "company_required" => "Company name is a required field", - "company_select_image" => "Select Image", - "company_website_url" => "Company website is not a valid URL (http://...).", - "country_codes" => "Country Codes", - "country_codes_tooltip" => "Comma separated list of country codes for nominatim address lookup.", - "currency_code" => "Currency Code", - "currency_decimals" => "Currency Decimals", - "currency_symbol" => "Currency Symbol", - "current_employee_only" => "", - "customer_reward" => "Reward", - "customer_reward_duplicate" => "Reward must be unique.", - "customer_reward_enable" => "Enable Customer Rewards", - "customer_reward_invalid_chars" => "Reward can not contain '_'", - "customer_reward_required" => "Reward is a required field", - "customer_sales_tax_support" => "", - "date_or_time_format" => "Date and Time Filter", - "datetimeformat" => "Date and Time Format", - "decimal_point" => "Decimal Point", - "default_barcode_font_size_number" => "Default Barcode Font Size must be a number.", - "default_barcode_font_size_required" => "Default Barcode Font Size is a required field.", - "default_barcode_height_number" => "Default Barcode Height must be a number.", - "default_barcode_height_required" => "Default Barcode Height is a required field.", - "default_barcode_num_in_row_number" => "Default Barcode Number in Row must be a number.", - "default_barcode_num_in_row_required" => "Default Barcode Number in Row is a required field.", - "default_barcode_page_cellspacing_number" => "Default Barcode Page Cellspacing must be a number.", - "default_barcode_page_cellspacing_required" => "Default Barcode Page Cellspacing is a required field.", - "default_barcode_page_width_number" => "Default Barcode Page Width must be a number.", - "default_barcode_page_width_required" => "Default Barcode Page Width is a required field.", - "default_barcode_width_number" => "Default Barcode Width must be a number.", - "default_barcode_width_required" => "Default Barcode Width is a required field.", - "default_item_columns" => "Default Visible Item Columns", - "default_origin_tax_code" => "Default Origin Tax Code", - "default_receivings_discount" => "Default Receivings Discount", - "default_receivings_discount_number" => "Default Receivings Discount must be a number.", - "default_receivings_discount_required" => "Default Receivings Discount is a required field.", - "default_sales_discount" => "Default Sales Discount", - "default_sales_discount_number" => "Default Sales Discount must be a number.", - "default_sales_discount_required" => "Default Sales Discount is a required field.", - "default_tax_category" => "Default Tax Category", - "default_tax_code" => "Default Tax Code", - "default_tax_jurisdiction" => "Default Tax Jurisdiction", - "default_tax_name_number" => "Default Tax Name must be a string.", - "default_tax_name_required" => "Default Tax Name is a required field.", - "default_tax_rate" => "Default Tax Rate %", - "default_tax_rate_1" => "Tax 1 Rate", - "default_tax_rate_2" => "Tax 2 Rate", - "default_tax_rate_3" => "", - "default_tax_rate_number" => "Default Tax Rate must be a number.", - "default_tax_rate_required" => "Default Tax Rate is a required field.", - "derive_sale_quantity" => "Allow Derived Sale Quantity", - "derive_sale_quantity_tooltip" => "If checked then a new item type will provided for items ordered by extended amount", - "dinner_table" => "Table", - "dinner_table_duplicate" => "Table must be unique.", - "dinner_table_enable" => "Enable Dinner Tables", - "dinner_table_invalid_chars" => "Table Name can not contain '_'.", - "dinner_table_required" => "Table is a required field.", - "dot" => "dot", - "email" => "Email", - "email_configuration" => "Email Configuration", - "email_mailpath" => "Path to Sendmail", - "email_protocol" => "Protocol", - "email_receipt_check_behaviour" => "Email Receipt checkbox", - "email_receipt_check_behaviour_always" => "Always checked", - "email_receipt_check_behaviour_last" => "Remember last selection", - "email_receipt_check_behaviour_never" => "Always unchecked", - "email_smtp_crypto" => "SMTP Encryption", - "email_smtp_host" => "SMTP Server", - "email_smtp_pass" => "SMTP Password", - "email_smtp_port" => "SMTP Port", - "email_smtp_timeout" => "SMTP Timeout (s)", - "email_smtp_user" => "SMTP Username", - "enable_avatar" => "", - "enable_avatar_tooltip" => "", - "enable_dropdown_tooltip" => "", - "enable_new_look" => "", - "enable_right_bar" => "", - "enable_right_bar_tooltip" => "", - "enforce_privacy" => "Enforce privacy", - "enforce_privacy_tooltip" => "Protect Customers privacy enforcing data scrambling in case of their data being deleted", - "fax" => "Fax", - "file_perm" => "There are problems with file permissions please fix and reload this page.", - "financial_year" => "Fiscal Year Start", - "financial_year_apr" => "1st of April", - "financial_year_aug" => "1st of August", - "financial_year_dec" => "1st of December", - "financial_year_feb" => "1st of February", - "financial_year_jan" => "1st of January", - "financial_year_jul" => "1st of July", - "financial_year_jun" => "1st of June", - "financial_year_mar" => "1st of March", - "financial_year_may" => "1st of May", - "financial_year_nov" => "1st of November", - "financial_year_oct" => "1st of October", - "financial_year_sep" => "1st of September", - "floating_labels" => "", - "gcaptcha_enable" => "Login Page reCAPTCHA", - "gcaptcha_secret_key" => "reCAPTCHA Secret Key", - "gcaptcha_secret_key_required" => "reCAPTCHA Secret Key is a required field", - "gcaptcha_site_key" => "reCAPTCHA Site Key", - "gcaptcha_site_key_required" => "reCAPTCHA Site Key is a required field", - "gcaptcha_tooltip" => "Protect the Login page with Google reCAPTCHA, click the icon for an API key pair.", - "general" => "General", - "general_configuration" => "General Configuration", - "giftcard_number" => "Gift Card Number", - "giftcard_random" => "Generate Random", - "giftcard_series" => "Generate in Series", - "image_allowed_file_types" => "Allowed file types", - "image_max_height_tooltip" => "Maximum allowed height of image uploads in pixels (px).", - "image_max_size_tooltip" => "Maximum allowed file size of image uploads in kilobytes (kb).", - "image_max_width_tooltip" => "Maximum allowed width of image uploads in pixels (px).", - "image_restrictions" => "Image Upload Restrictions", - "include_hsn" => "Include Support for HSN Codes", - "info" => "Information", - "info_configuration" => "Store Information", - "input_groups" => "", - "integrations" => "Integrations", - "integrations_configuration" => "Third Party Integrations", - "invoice" => "Invoice", - "invoice_configuration" => "Invoice Print Settings", - "invoice_default_comments" => "Default Invoice Comments", - "invoice_email_message" => "Invoice Email Template", - "invoice_enable" => "Enable Invoicing", - "invoice_printer" => "Invoice Printer", - "invoice_type" => "Invoice Type", - "is_readable" => "is readable, but the permissions are incorrectly set. Please set it to 640 or 660 and refresh.", - "is_writable" => "is writable, but the permissions are incorrectly set. Please set it to 750 and refresh.", - "item_markup" => "", - "jsprintsetup_required" => "Warning: This functionality will only work if you have the FireFox jsPrintSetup addon installed. Save anyway?", - "language" => "Language", - "last_used_invoice_number" => "Last used Invoice Number", - "last_used_quote_number" => "Last used Quote Number", - "last_used_work_order_number" => "Last used W/O Number", - "left" => "Left", - "license" => "License", - "license_configuration" => "License Statement", - "line_sequence" => "Line Sequence", - "lines_per_page" => "Lines per Page", - "lines_per_page_number" => "Lines per Page must be a number.", - "lines_per_page_required" => "Lines per Page is a required field.", - "locale" => "Localization", - "locale_configuration" => "Localization Configuration", - "locale_info" => "Localization Configuration Information", - "location" => "Stock", - "location_configuration" => "Stock Locations", - "location_info" => "Location Configuration Information", - "login_form" => "", - "logout" => "Do you want to make a backup before logging out? Click [OK] to backup or [Cancel] to logout.", - "mailchimp" => "மெயில்சிம்ப்", - "mailchimp_api_key" => "மெயில்சிம்ப் API விசை", - "mailchimp_configuration" => "மெயில்சிம்ப் அமைப்பு", - "mailchimp_key_successfully" => "API Key is valid.", - "mailchimp_key_unsuccessfully" => "API Key is invalid.", - "mailchimp_lists" => "மெயில்சிம்ப் பட்டியல்(கள்)", - "mailchimp_tooltip" => "Click the icon for an API Key.", - "message" => "Message", - "message_configuration" => "Message Configuration", - "msg_msg" => "Saved Text Message", - "msg_msg_placeholder" => "If you wish to use a SMS template save your message here, otherwise leave the box blank.", - "msg_pwd" => "SMS-API Password", - "msg_pwd_required" => "SMS-API Password is a required field", - "msg_src" => "SMS-API Sender ID", - "msg_src_required" => "SMS-API Sender ID is a required field", - "msg_uid" => "SMS-API Username", - "msg_uid_required" => "SMS-API Username is a required field", - "multi_pack_enabled" => "Multiple Packages per Item", - "no_risk" => "No security/vulnerability risks.", - "none" => "none", - "notify_alignment" => "Notification Popup Position", - "number_format" => "Number Format", - "number_locale" => "Localization", - "number_locale_invalid" => "The entered locale is invalid. Check the link in the tooltip to find a valid locale.", - "number_locale_required" => "Number Locale is a required field.", - "number_locale_tooltip" => "Find a suitable locale through this link.", - "os_timezone" => "OSPOS Timezone:", - "ospos_info" => "OSPOS Installation Info", - "payment_options_order" => "Payment Options Order", - "perm_risk" => "Incorrect permissions leaves this software at risk.", - "phone" => "Company Phone", - "phone_required" => "Company Phone is a required field.", - "print_bottom_margin" => "Margin Bottom", - "print_bottom_margin_number" => "Margin Bottom must be a number.", - "print_bottom_margin_required" => "Margin Bottom is a required field.", - "print_delay_autoreturn" => "Autoreturn to Sale delay", - "print_delay_autoreturn_number" => "Autoreturn to Sale delay is a required field.", - "print_delay_autoreturn_required" => "Autoreturn to Sale delay must be a number.", - "print_footer" => "Print Browser Footer", - "print_header" => "Print Browser Header", - "print_left_margin" => "Margin Left", - "print_left_margin_number" => "Margin Left must be a number.", - "print_left_margin_required" => "Margin Left is a required field.", - "print_receipt_check_behaviour" => "Print Receipt checkbox", - "print_receipt_check_behaviour_always" => "Always checked", - "print_receipt_check_behaviour_last" => "Remember last selection", - "print_receipt_check_behaviour_never" => "Always unchecked", - "print_right_margin" => "Margin Right", - "print_right_margin_number" => "Margin Right must be a number.", - "print_right_margin_required" => "Margin Right is a required field.", - "print_silently" => "Show Print Dialog", - "print_top_margin" => "Margin Top", - "print_top_margin_number" => "Margin Top must be a number.", - "print_top_margin_required" => "Margin Top is a required field.", - "quantity_decimals" => "Quantity Decimals", - "quick_cash_enable" => "", - "quote_default_comments" => "Default Quote Comments", - "receipt" => "Receipt", - "receipt_category" => "", - "receipt_configuration" => "Receipt Print Settings", - "receipt_default" => "Default", - "receipt_font_size" => "Font Size", - "receipt_font_size_number" => "Font Size must be a number.", - "receipt_font_size_required" => "Font Size is a required field.", - "receipt_info" => "Receipt Configuration Information", - "receipt_printer" => "Ticket Printer", - "receipt_short" => "Short", - "receipt_show_company_name" => "Show Company Name", - "receipt_show_description" => "Show Description", - "receipt_show_serialnumber" => "Show Serial Number", - "receipt_show_tax_ind" => "Show Tax Indicator", - "receipt_show_taxes" => "Show Taxes", - "receipt_show_total_discount" => "Show Total Discount", - "receipt_template" => "Receipt Template", - "receiving_calculate_average_price" => "Calc avg. Price (Receiving)", - "recv_invoice_format" => "Receivings Invoice Format", - "register_mode_default" => "Default Register Mode", - "report_an_issue" => "Report an issue", - "return_policy_required" => "Return policy is a required field.", - "reward" => "Reward", - "reward_configuration" => "Reward Configuration", - "right" => "Right", - "sales_invoice_format" => "Sales Invoice Format", - "sales_quote_format" => "Sales Quote Format", - "saved_successfully" => "Configuration save successful.", - "saved_unsuccessfully" => "Configuration save failed.", - "security_issue" => "Security Vulnerability Warning", - "server_notice" => "Please use the below info for issue reporting.", - "service_charge" => "", - "show_due_enable" => "", - "show_office_group" => "Show office icon", - "statistics" => "Send Statistics", - "statistics_tooltip" => "Send statistics for development and feature improvement purposes.", - "stock_location" => "Stock location", - "stock_location_duplicate" => "Stock Location must be unique.", - "stock_location_invalid_chars" => "Stock Location can not contain '_'.", - "stock_location_required" => "Stock location is a required field.", - "suggestions_fifth_column" => "", - "suggestions_first_column" => "Column 1", - "suggestions_fourth_column" => "", - "suggestions_layout" => "Search Suggestions Layout", - "suggestions_second_column" => "Column 2", - "suggestions_third_column" => "Column 3", - "system_conf" => "Setup & Conf", - "system_info" => "System Info", - "table" => "Table", - "table_configuration" => "Table Configuration", - "takings_printer" => "Receipt Printer", - "tax" => "Tax", - "tax_category" => "Tax Category", - "tax_category_duplicate" => "The entered tax category already exists.", - "tax_category_invalid_chars" => "The entered tax category is invalid.", - "tax_category_required" => "The tax category is required.", - "tax_category_used" => "Tax category cannot be deleted because it is being used.", - "tax_configuration" => "Tax Configuration", - "tax_decimals" => "Tax Decimals", - "tax_id" => "Tax Id", - "tax_included" => "Tax Included", - "theme" => "Theme", - "theme_preview" => "", - "thousands_separator" => "Thousands Separator", - "timezone" => "Timezone", - "timezone_error" => "OSPOS Timezone is Different from your Local Timezone.", - "top" => "Top", - "use_destination_based_tax" => "Use Destination Based Tax", - "user_timezone" => "Local Timezone:", - "website" => "Website", - "wholesale_markup" => "", - "work_order_enable" => "Work Order Support", - "work_order_format" => "Work Order Format", + "address" => "Company Address", + "address_required" => "Company address is a required field.", + "all_set" => "All file permissions are set correctly!", + "allow_duplicate_barcodes" => "Allow Duplicate Barcodes", + "apostrophe" => "apostrophe", + "backup_button" => "Backup", + "backup_database" => "Backup Database", + "barcode" => "Barcode", + "barcode_company" => "Company Name", + "barcode_configuration" => "Barcode Configuration", + "barcode_content" => "Barcode Content", + "barcode_first_row" => "Row 1", + "barcode_font" => "Font", + "barcode_formats" => "Input Formats", + "barcode_generate_if_empty" => "Generate if empty.", + "barcode_height" => "Height (px)", + "barcode_id" => "Item Id/Name", + "barcode_info" => "Barcode Configuration Information", + "barcode_layout" => "Barcode Layout", + "barcode_name" => "Name", + "barcode_number" => "Barcode", + "barcode_number_in_row" => "Number in row", + "barcode_page_cellspacing" => "Display page cellspacing.", + "barcode_page_width" => "Display page width", + "barcode_price" => "Price", + "barcode_second_row" => "Row 2", + "barcode_third_row" => "Row 3", + "barcode_tooltip" => "எச்சரிக்கை: இந்த அம்சம் நகல் உருப்படிகளை இறக்குமதி செய்ய அல்லது உருவாக்க காரணமாக இருக்கலாம். நீங்கள் நகல் பட்டைக்குறியீடுகளை விரும்பவில்லை என்றால் பயன்படுத்த வேண்டாம்.", + "barcode_type" => "Barcode Type", + "barcode_width" => "Width (px)", + "bottom" => "Bottom", + "cash_button" => "", + "cash_button_1" => "", + "cash_button_2" => "", + "cash_button_3" => "", + "cash_button_4" => "", + "cash_button_5" => "", + "cash_button_6" => "", + "cash_decimals" => "Cash Decimals", + "cash_decimals_tooltip" => "If Cash Decimals and Currency Decimals are the same then no cash triggered rounding will take place, unless Cash Rounding is set to Half Five.", + "cash_rounding" => "Cash Rounding", + "category_dropdown" => "Show Category as a dropdown", + "center" => "Center", + "change_apperance_tooltip" => "", + "comma" => "comma", + "company" => "Company Name", + "company_avatar" => "", + "company_change_image" => "Change Image", + "company_logo" => "Company Logo", + "company_remove_image" => "Remove Image", + "company_required" => "Company name is a required field", + "company_select_image" => "Select Image", + "company_website_url" => "Company website is not a valid URL (http://...).", + "country_codes" => "Country Codes", + "country_codes_tooltip" => "Comma separated list of country codes for nominatim address lookup.", + "currency_code" => "Currency Code", + "currency_decimals" => "Currency Decimals", + "currency_symbol" => "Currency Symbol", + "current_employee_only" => "", + "customer_reward" => "Reward", + "customer_reward_duplicate" => "Reward must be unique.", + "customer_reward_enable" => "Enable Customer Rewards", + "customer_reward_invalid_chars" => "Reward can not contain '_'", + "customer_reward_required" => "Reward is a required field", + "customer_sales_tax_support" => "", + "date_or_time_format" => "Date and Time Filter", + "datetimeformat" => "Date and Time Format", + "decimal_point" => "Decimal Point", + "default_barcode_font_size_number" => "Default Barcode Font Size must be a number.", + "default_barcode_font_size_required" => "Default Barcode Font Size is a required field.", + "default_barcode_height_number" => "Default Barcode Height must be a number.", + "default_barcode_height_required" => "Default Barcode Height is a required field.", + "default_barcode_num_in_row_number" => "Default Barcode Number in Row must be a number.", + "default_barcode_num_in_row_required" => "Default Barcode Number in Row is a required field.", + "default_barcode_page_cellspacing_number" => "Default Barcode Page Cellspacing must be a number.", + "default_barcode_page_cellspacing_required" => "Default Barcode Page Cellspacing is a required field.", + "default_barcode_page_width_number" => "Default Barcode Page Width must be a number.", + "default_barcode_page_width_required" => "Default Barcode Page Width is a required field.", + "default_barcode_width_number" => "Default Barcode Width must be a number.", + "default_barcode_width_required" => "Default Barcode Width is a required field.", + "default_item_columns" => "Default Visible Item Columns", + "default_origin_tax_code" => "Default Origin Tax Code", + "default_receivings_discount" => "Default Receivings Discount", + "default_receivings_discount_number" => "Default Receivings Discount must be a number.", + "default_receivings_discount_required" => "Default Receivings Discount is a required field.", + "default_sales_discount" => "Default Sales Discount", + "default_sales_discount_number" => "Default Sales Discount must be a number.", + "default_sales_discount_required" => "Default Sales Discount is a required field.", + "default_tax_category" => "Default Tax Category", + "default_tax_code" => "Default Tax Code", + "default_tax_jurisdiction" => "Default Tax Jurisdiction", + "default_tax_name_number" => "Default Tax Name must be a string.", + "default_tax_name_required" => "Default Tax Name is a required field.", + "default_tax_rate" => "Default Tax Rate %", + "default_tax_rate_1" => "Tax 1 Rate", + "default_tax_rate_2" => "Tax 2 Rate", + "default_tax_rate_3" => "", + "default_tax_rate_number" => "Default Tax Rate must be a number.", + "default_tax_rate_required" => "Default Tax Rate is a required field.", + "derive_sale_quantity" => "Allow Derived Sale Quantity", + "derive_sale_quantity_tooltip" => "If checked then a new item type will provided for items ordered by extended amount", + "dinner_table" => "Table", + "dinner_table_duplicate" => "Table must be unique.", + "dinner_table_enable" => "Enable Dinner Tables", + "dinner_table_invalid_chars" => "Table Name can not contain '_'.", + "dinner_table_required" => "Table is a required field.", + "dot" => "dot", + "email" => "Email", + "email_configuration" => "Email Configuration", + "email_mailpath" => "Path to Sendmail", + "email_protocol" => "Protocol", + "email_receipt_check_behaviour" => "Email Receipt checkbox", + "email_receipt_check_behaviour_always" => "Always checked", + "email_receipt_check_behaviour_last" => "Remember last selection", + "email_receipt_check_behaviour_never" => "Always unchecked", + "email_smtp_crypto" => "SMTP Encryption", + "email_smtp_host" => "SMTP Server", + "email_smtp_pass" => "SMTP Password", + "email_smtp_port" => "SMTP Port", + "email_smtp_timeout" => "SMTP Timeout (s)", + "email_smtp_user" => "SMTP Username", + "enable_avatar" => "", + "enable_avatar_tooltip" => "", + "enable_dropdown_tooltip" => "", + "enable_new_look" => "", + "enable_right_bar" => "", + "enable_right_bar_tooltip" => "", + "enforce_privacy" => "Enforce privacy", + "enforce_privacy_tooltip" => "Protect Customers privacy enforcing data scrambling in case of their data being deleted", + "fax" => "Fax", + "file_perm" => "There are problems with file permissions please fix and reload this page.", + "financial_year" => "Fiscal Year Start", + "financial_year_apr" => "1st of April", + "financial_year_aug" => "1st of August", + "financial_year_dec" => "1st of December", + "financial_year_feb" => "1st of February", + "financial_year_jan" => "1st of January", + "financial_year_jul" => "1st of July", + "financial_year_jun" => "1st of June", + "financial_year_mar" => "1st of March", + "financial_year_may" => "1st of May", + "financial_year_nov" => "1st of November", + "financial_year_oct" => "1st of October", + "financial_year_sep" => "1st of September", + "floating_labels" => "", + "gcaptcha_enable" => "Login Page reCAPTCHA", + "gcaptcha_secret_key" => "reCAPTCHA Secret Key", + "gcaptcha_secret_key_required" => "reCAPTCHA Secret Key is a required field", + "gcaptcha_site_key" => "reCAPTCHA Site Key", + "gcaptcha_site_key_required" => "reCAPTCHA Site Key is a required field", + "gcaptcha_tooltip" => "Protect the Login page with Google reCAPTCHA, click the icon for an API key pair.", + "general" => "General", + "general_configuration" => "General Configuration", + "giftcard_number" => "Gift Card Number", + "giftcard_random" => "Generate Random", + "giftcard_series" => "Generate in Series", + "image_allowed_file_types" => "Allowed file types", + "image_max_height_tooltip" => "Maximum allowed height of image uploads in pixels (px).", + "image_max_size_tooltip" => "Maximum allowed file size of image uploads in kilobytes (kb).", + "image_max_width_tooltip" => "Maximum allowed width of image uploads in pixels (px).", + "image_restrictions" => "Image Upload Restrictions", + "include_hsn" => "Include Support for HSN Codes", + "info" => "Information", + "info_configuration" => "Store Information", + "input_groups" => "", + "integrations" => "Integrations", + "integrations_configuration" => "Third Party Integrations", + "invoice" => "Invoice", + "invoice_configuration" => "Invoice Print Settings", + "invoice_default_comments" => "Default Invoice Comments", + "invoice_email_message" => "Invoice Email Template", + "invoice_enable" => "Enable Invoicing", + "invoice_printer" => "Invoice Printer", + "invoice_type" => "Invoice Type", + "is_readable" => "is readable, but the permissions are incorrectly set. Please set it to 640 or 660 and refresh.", + "is_writable" => "is writable, but the permissions are incorrectly set. Please set it to 750 and refresh.", + "item_markup" => "", + "jsprintsetup_required" => "Warning: This functionality will only work if you have the FireFox jsPrintSetup addon installed. Save anyway?", + "language" => "Language", + "last_used_invoice_number" => "Last used Invoice Number", + "last_used_quote_number" => "Last used Quote Number", + "last_used_work_order_number" => "Last used W/O Number", + "left" => "Left", + "license" => "License", + "license_configuration" => "License Statement", + "line_sequence" => "Line Sequence", + "lines_per_page" => "Lines per Page", + "lines_per_page_number" => "Lines per Page must be a number.", + "lines_per_page_required" => "Lines per Page is a required field.", + "locale" => "Localization", + "locale_configuration" => "Localization Configuration", + "locale_info" => "Localization Configuration Information", + "location" => "Stock", + "location_configuration" => "Stock Locations", + "location_info" => "Location Configuration Information", + "login_form" => "", + "logout" => "Do you want to make a backup before logging out? Click [OK] to backup or [Cancel] to logout.", + "mailchimp" => "மெயில்சிம்ப்", + "mailchimp_api_key" => "மெயில்சிம்ப் API விசை", + "mailchimp_configuration" => "மெயில்சிம்ப் அமைப்பு", + "mailchimp_key_successfully" => "API Key is valid.", + "mailchimp_key_unsuccessfully" => "API Key is invalid.", + "mailchimp_lists" => "மெயில்சிம்ப் பட்டியல்(கள்)", + "mailchimp_tooltip" => "Click the icon for an API Key.", + "message" => "Message", + "message_configuration" => "Message Configuration", + "msg_msg" => "Saved Text Message", + "msg_msg_placeholder" => "If you wish to use a SMS template save your message here, otherwise leave the box blank.", + "msg_pwd" => "SMS-API Password", + "msg_pwd_required" => "SMS-API Password is a required field", + "msg_src" => "SMS-API Sender ID", + "msg_src_required" => "SMS-API Sender ID is a required field", + "msg_uid" => "SMS-API Username", + "msg_uid_required" => "SMS-API Username is a required field", + "multi_pack_enabled" => "Multiple Packages per Item", + "no_risk" => "No security/vulnerability risks.", + "none" => "none", + "notify_alignment" => "Notification Popup Position", + "number_format" => "Number Format", + "number_locale" => "Localization", + "number_locale_invalid" => "The entered locale is invalid. Check the link in the tooltip to find a valid locale.", + "number_locale_required" => "Number Locale is a required field.", + "number_locale_tooltip" => "Find a suitable locale through this link.", + "os_timezone" => "OSPOS Timezone:", + "ospos_info" => "OSPOS Installation Info", + "payment_options_order" => "Payment Options Order", + "perm_risk" => "Incorrect permissions leaves this software at risk.", + "phone" => "Company Phone", + "phone_required" => "Company Phone is a required field.", + "print_bottom_margin" => "Margin Bottom", + "print_bottom_margin_number" => "Margin Bottom must be a number.", + "print_bottom_margin_required" => "Margin Bottom is a required field.", + "print_delay_autoreturn" => "Autoreturn to Sale delay", + "print_delay_autoreturn_number" => "Autoreturn to Sale delay is a required field.", + "print_delay_autoreturn_required" => "Autoreturn to Sale delay must be a number.", + "print_footer" => "Print Browser Footer", + "print_header" => "Print Browser Header", + "print_left_margin" => "Margin Left", + "print_left_margin_number" => "Margin Left must be a number.", + "print_left_margin_required" => "Margin Left is a required field.", + "print_receipt_check_behaviour" => "Print Receipt checkbox", + "print_receipt_check_behaviour_always" => "Always checked", + "print_receipt_check_behaviour_last" => "Remember last selection", + "print_receipt_check_behaviour_never" => "Always unchecked", + "print_right_margin" => "Margin Right", + "print_right_margin_number" => "Margin Right must be a number.", + "print_right_margin_required" => "Margin Right is a required field.", + "print_silently" => "Show Print Dialog", + "print_top_margin" => "Margin Top", + "print_top_margin_number" => "Margin Top must be a number.", + "print_top_margin_required" => "Margin Top is a required field.", + "quantity_decimals" => "Quantity Decimals", + "quick_cash_enable" => "", + "quote_default_comments" => "Default Quote Comments", + "receipt" => "Receipt", + "receipt_category" => "", + "receipt_configuration" => "Receipt Print Settings", + "receipt_default" => "Default", + "receipt_font_size" => "Font Size", + "receipt_font_size_number" => "Font Size must be a number.", + "receipt_font_size_required" => "Font Size is a required field.", + "receipt_info" => "Receipt Configuration Information", + "receipt_printer" => "Ticket Printer", + "receipt_short" => "Short", + "receipt_show_company_name" => "Show Company Name", + "receipt_show_description" => "Show Description", + "receipt_show_serialnumber" => "Show Serial Number", + "receipt_show_tax_ind" => "Show Tax Indicator", + "receipt_show_taxes" => "Show Taxes", + "receipt_show_total_discount" => "Show Total Discount", + "receipt_template" => "Receipt Template", + "receiving_calculate_average_price" => "Calc avg. Price (Receiving)", + "recv_invoice_format" => "Receivings Invoice Format", + "register_mode_default" => "Default Register Mode", + "report_an_issue" => "Report an issue", + "return_policy_required" => "Return policy is a required field.", + "reward" => "Reward", + "reward_configuration" => "Reward Configuration", + "right" => "Right", + "sales_invoice_format" => "Sales Invoice Format", + "sales_quote_format" => "Sales Quote Format", + "saved_successfully" => "Configuration save successful.", + "saved_unsuccessfully" => "Configuration save failed.", + "security_issue" => "Security Vulnerability Warning", + "server_notice" => "Please use the below info for issue reporting.", + "service_charge" => "", + "show_due_enable" => "", + "show_office_group" => "Show office icon", + "statistics" => "Send Statistics", + "statistics_tooltip" => "Send statistics for development and feature improvement purposes.", + "stock_location" => "Stock location", + "stock_location_duplicate" => "Stock Location must be unique.", + "stock_location_invalid_chars" => "Stock Location can not contain '_'.", + "stock_location_required" => "Stock location is a required field.", + "suggestions_fifth_column" => "", + "suggestions_first_column" => "Column 1", + "suggestions_fourth_column" => "", + "suggestions_layout" => "Search Suggestions Layout", + "suggestions_second_column" => "Column 2", + "suggestions_third_column" => "Column 3", + "system_conf" => "Setup & Conf", + "system_info" => "System Info", + "table" => "Table", + "table_configuration" => "Table Configuration", + "takings_printer" => "Receipt Printer", + "tax" => "Tax", + "tax_category" => "Tax Category", + "tax_category_duplicate" => "The entered tax category already exists.", + "tax_category_invalid_chars" => "The entered tax category is invalid.", + "tax_category_required" => "The tax category is required.", + "tax_category_used" => "Tax category cannot be deleted because it is being used.", + "tax_configuration" => "Tax Configuration", + "tax_decimals" => "Tax Decimals", + "tax_id" => "Tax Id", + "tax_included" => "Tax Included", + "theme" => "Theme", + "theme_preview" => "", + "thousands_separator" => "Thousands Separator", + "timezone" => "Timezone", + "timezone_error" => "OSPOS Timezone is Different from your Local Timezone.", + "top" => "Top", + "use_destination_based_tax" => "Use Destination Based Tax", + "user_timezone" => "Local Timezone:", + "website" => "Website", + "wholesale_markup" => "", + "work_order_enable" => "Work Order Support", + "work_order_format" => "Work Order Format", ]; diff --git a/app/Language/ta/Customers.php b/app/Language/ta/Customers.php index 9c4251882..94b6de61e 100644 --- a/app/Language/ta/Customers.php +++ b/app/Language/ta/Customers.php @@ -1,56 +1,56 @@ "கணக்கு #", - "account_number_duplicate" => "இன்த கணக்கு எண் முன்பே டேய்ட்டாபேய்ஸ்இல் உள்ளது", - "available_points" => "இருப்பு புள்ளிகள்", - "available_points_value" => "", - "average" => "சராசரி செலவிடபட்டது", - "avg_discount" => "சராசரி தள்ளுபடி", - "basic_information" => "தகவல்", - "cannot_be_deleted" => "தேர்ந்தெடுக்கப்பட்ட வாடிக்கையாளர்களை நீக்க முடியவில்லை, தேர்ந்தெடுக்கப்பட்ட ஒன்று அல்லது அதற்கு மேற்பட்ட வாடிக்கையாளர்களுக்கு விற்பனை உள்ளது..", - "company_name" => "நிறுவனம்", - "confirm_delete" => "தேர்ந்தெடுக்கப்பட்ட வாடிக்கையாளர் (களை) நீக்க விரும்புகிறீர்களா?", - "confirm_restore" => "தேர்ந்தெடுக்கப்பட்ட வாடிக்கையாளர்களை (களை) மீட்டெடுக்க விரும்புகிறீர்களா?", - "consent" => "பதிவு ஒப்புதல்", - "consent_required" => "பதிவு ஒப்புதல் என்பது தேவையான தரவு.", - "csv_import_failed" => "CSV இறக்குமதி தோல்வியுற்றது", - "csv_import_nodata_wrongformat" => "பதிவேற்றிய கோப்பில் தரவு இல்லை அல்லது தவறாக வடிவமைக்கப்பட்டுள்ளது.", - "csv_import_partially_failed" => "Customer import successful with some failures:", - "csv_import_success" => "வாடிக்கையாளரின் இறக்குமதி வெற்றிகரமாக முடிந்தது.", - "customer" => "வாடிக்கையாளர்", - "date" => "தேதி", - "discount" => "தள்ளுபடி", - "discount_fixed" => "நிலையான தள்ளுபடி", - "discount_percent" => "சதவீத தள்ளுபடி", - "discount_type" => "தள்ளுபடி வகை", - "email_duplicate" => "மின்னஞ்சல் முகவரி ஏற்கனவே தரவுத்தளத்தில் உள்ளது.", - "employee" => "ஊழியர்", - "error_adding_updating" => "வாடிக்கையாளர் சேர்க்க அல்லது புதுப்பித்தல் தோல்வியுற்றது.", - "import_items_csv" => "CSV இலிருந்து வாடிக்கையாளரின் இறக்குமதி", - "mailchimp_activity_click" => "மின்னஞ்சல் கிளிக்", - "mailchimp_activity_lastopen" => "கடைசியாக திறந்த மின்னஞ்சல்", - "mailchimp_activity_open" => "மின்னஞ்சல் திறக்கப்பட்டுள்ளது", - "mailchimp_activity_total" => "மின்னஞ்சல் அனுப்பப்பட்டது", - "mailchimp_activity_unopen" => "மின்னஞ்சல் திறக்கப்படவில்லை", - "mailchimp_email_client" => "மின்னஞ்சல் வாடிக்கையாளர்", - "mailchimp_info" => "மெயில்சிம்ப்", - "mailchimp_member_rating" => "மதிப்பீடு", - "mailchimp_status" => "நிலை", - "mailchimp_vip" => "வி.ஐ.பி.", - "max" => "அதிகபட்சம். செலவிட்டார்", - "min" => "குறைந்தபட்சம்.செலவிட்டார்", - "new" => "புது வாடிக்கையாளர்", - "none_selected" => "நீக்க எந்த வாடிக்கையாளரையும் நீங்கள் தேர்ந்தெடுக்கவில்லை.", - "one_or_multiple" => "வாடிக்கையாளர் (கள்)", - "quantity" => "அளவு", - "stats_info" => "புள்ளிவிவரங்கள்", - "successful_adding" => "நீங்கள் வெற்றிகரமாக வாடிக்கையாளரைச் சேர்த்துள்ளீர்கள்", - "successful_deleted" => "நீங்கள் வெற்றிகரமாக நீக்கிவிட்டீர்கள்", - "successful_updating" => "வாடிக்கையாளரை வெற்றிகரமாக புதுப்பித்துள்ளீர்கள்", - "tax_code" => "வரி குறியீடு", - "tax_id" => "வரி எண்", - "taxable" => "வரி விதிக்கப்படக்கூடியது", - "total" => "மொத்தம் செலவிடப்பட்டது", - "update" => "வாடிக்கையாளரைப் புதுப்பிக்கவும்", - "rewards_package" => "வெகுமதி தொகுப்பு", + "account_number" => "கணக்கு #", + "account_number_duplicate" => "இன்த கணக்கு எண் முன்பே டேய்ட்டாபேய்ஸ்இல் உள்ளது", + "available_points" => "இருப்பு புள்ளிகள்", + "available_points_value" => "", + "average" => "சராசரி செலவிடபட்டது", + "avg_discount" => "சராசரி தள்ளுபடி", + "basic_information" => "தகவல்", + "cannot_be_deleted" => "தேர்ந்தெடுக்கப்பட்ட வாடிக்கையாளர்களை நீக்க முடியவில்லை, தேர்ந்தெடுக்கப்பட்ட ஒன்று அல்லது அதற்கு மேற்பட்ட வாடிக்கையாளர்களுக்கு விற்பனை உள்ளது..", + "company_name" => "நிறுவனம்", + "confirm_delete" => "தேர்ந்தெடுக்கப்பட்ட வாடிக்கையாளர் (களை) நீக்க விரும்புகிறீர்களா?", + "confirm_restore" => "தேர்ந்தெடுக்கப்பட்ட வாடிக்கையாளர்களை (களை) மீட்டெடுக்க விரும்புகிறீர்களா?", + "consent" => "பதிவு ஒப்புதல்", + "consent_required" => "பதிவு ஒப்புதல் என்பது தேவையான தரவு.", + "csv_import_failed" => "CSV இறக்குமதி தோல்வியுற்றது", + "csv_import_nodata_wrongformat" => "பதிவேற்றிய கோப்பில் தரவு இல்லை அல்லது தவறாக வடிவமைக்கப்பட்டுள்ளது.", + "csv_import_partially_failed" => "Customer import successful with some failures:", + "csv_import_success" => "வாடிக்கையாளரின் இறக்குமதி வெற்றிகரமாக முடிந்தது.", + "customer" => "வாடிக்கையாளர்", + "date" => "தேதி", + "discount" => "தள்ளுபடி", + "discount_fixed" => "நிலையான தள்ளுபடி", + "discount_percent" => "சதவீத தள்ளுபடி", + "discount_type" => "தள்ளுபடி வகை", + "email_duplicate" => "மின்னஞ்சல் முகவரி ஏற்கனவே தரவுத்தளத்தில் உள்ளது.", + "employee" => "ஊழியர்", + "error_adding_updating" => "வாடிக்கையாளர் சேர்க்க அல்லது புதுப்பித்தல் தோல்வியுற்றது.", + "import_items_csv" => "CSV இலிருந்து வாடிக்கையாளரின் இறக்குமதி", + "mailchimp_activity_click" => "மின்னஞ்சல் கிளிக்", + "mailchimp_activity_lastopen" => "கடைசியாக திறந்த மின்னஞ்சல்", + "mailchimp_activity_open" => "மின்னஞ்சல் திறக்கப்பட்டுள்ளது", + "mailchimp_activity_total" => "மின்னஞ்சல் அனுப்பப்பட்டது", + "mailchimp_activity_unopen" => "மின்னஞ்சல் திறக்கப்படவில்லை", + "mailchimp_email_client" => "மின்னஞ்சல் வாடிக்கையாளர்", + "mailchimp_info" => "மெயில்சிம்ப்", + "mailchimp_member_rating" => "மதிப்பீடு", + "mailchimp_status" => "நிலை", + "mailchimp_vip" => "வி.ஐ.பி.", + "max" => "அதிகபட்சம். செலவிட்டார்", + "min" => "குறைந்தபட்சம்.செலவிட்டார்", + "new" => "புது வாடிக்கையாளர்", + "none_selected" => "நீக்க எந்த வாடிக்கையாளரையும் நீங்கள் தேர்ந்தெடுக்கவில்லை.", + "one_or_multiple" => "வாடிக்கையாளர் (கள்)", + "quantity" => "அளவு", + "stats_info" => "புள்ளிவிவரங்கள்", + "successful_adding" => "நீங்கள் வெற்றிகரமாக வாடிக்கையாளரைச் சேர்த்துள்ளீர்கள்", + "successful_deleted" => "நீங்கள் வெற்றிகரமாக நீக்கிவிட்டீர்கள்", + "successful_updating" => "வாடிக்கையாளரை வெற்றிகரமாக புதுப்பித்துள்ளீர்கள்", + "tax_code" => "வரி குறியீடு", + "tax_id" => "வரி எண்", + "taxable" => "வரி விதிக்கப்படக்கூடியது", + "total" => "மொத்தம் செலவிடப்பட்டது", + "update" => "வாடிக்கையாளரைப் புதுப்பிக்கவும்", + "rewards_package" => "வெகுமதி தொகுப்பு", ]; diff --git a/app/Language/ta/Datepicker.php b/app/Language/ta/Datepicker.php index 3ae7ec45a..72d41c053 100644 --- a/app/Language/ta/Datepicker.php +++ b/app/Language/ta/Datepicker.php @@ -1,23 +1,23 @@ "ஆதி முதல்", - "apply" => "உபயோகி", - "cancel" => "ரத்துசெய்", - "custom" => "நான் தேர்ந்தெடுக்கிறேன்", - "from" => "இருந்து", - "last_30" => "கடந்த 30 நாட்கள்", - "last_7" => "கடைசி 7 நாட்கள்", - "last_financial_year" => "கடந்த நிதியாண்டு", - "last_month" => "கடந்த மாதம்", - "last_year" => "கடந்த ஆண்டு", - "same_month_last_year" => "கடந்த ஆண்டு இதே மாதம்", - "same_month_to_same_day_last_year" => "கடந்த ஆண்டு அதே நாளில் அதே மாதம்", - "this_financial_year" => "நடப்பு நிதியாண்டு", - "this_month" => "நடப்பு மாதம்", - "this_year" => "இந்த வருடம்", - "to" => "வரை", - "today" => "இன்று", - "today_last_year" => "கடந்த ஆண்டு இன்று", - "weekstart" => "0", - "yesterday" => "நேற்று", + "all_time" => "ஆதி முதல்", + "apply" => "உபயோகி", + "cancel" => "ரத்துசெய்", + "custom" => "நான் தேர்ந்தெடுக்கிறேன்", + "from" => "இருந்து", + "last_30" => "கடந்த 30 நாட்கள்", + "last_7" => "கடைசி 7 நாட்கள்", + "last_financial_year" => "கடந்த நிதியாண்டு", + "last_month" => "கடந்த மாதம்", + "last_year" => "கடந்த ஆண்டு", + "same_month_last_year" => "கடந்த ஆண்டு இதே மாதம்", + "same_month_to_same_day_last_year" => "கடந்த ஆண்டு அதே நாளில் அதே மாதம்", + "this_financial_year" => "நடப்பு நிதியாண்டு", + "this_month" => "நடப்பு மாதம்", + "this_year" => "இந்த வருடம்", + "to" => "வரை", + "today" => "இன்று", + "today_last_year" => "கடந்த ஆண்டு இன்று", + "weekstart" => "0", + "yesterday" => "நேற்று", ]; diff --git a/app/Language/ta/Employees.php b/app/Language/ta/Employees.php index 01ca9ccb1..fa4adc378 100644 --- a/app/Language/ta/Employees.php +++ b/app/Language/ta/Employees.php @@ -1,44 +1,44 @@ "", - "basic_information" => "Information", - "cannot_be_deleted" => "Unable to delete selected employee(s), one or more of the has processed sales or you are trying to delete your account.", - "change_employee" => "", - "change_password" => "Change Password", - "clerk" => "", - "commission" => "", - "confirm_delete" => "Are you sure you want to delete the selected employee(s)?", - "confirm_restore" => "Are you sure you want to restore selected employee(s)?", - "current_password" => "Current Password", - "current_password_invalid" => "Current Password is invalid.", - "employee" => "Employee", - "error_adding_updating" => "Employee add or update failed.", - "error_deleting_demo_admin" => "You can not delete the demo admin user.", - "error_updating_demo_admin" => "You can not change the demo admin user.", - "language" => "Language", - "login_info" => "Login", - "manager" => "", - "new" => "New Employee", - "none_selected" => "You have not selected any employee(s) to delete.", - "one_or_multiple" => "employee(s)", - "password" => "Password", - "password_minlength" => "Password must be at least 8 characters in length.", - "password_must_match" => "Passwords do not match.", - "password_not_must_match" => "Current password and new password must be unique.", - "password_required" => "Password is required.", - "permission_desc" => "Check the boxes below to grant access to modules.", - "permission_info" => "Permissions", - "repeat_password" => "Password Again", - "subpermission_required" => "Add at least one grant for each module.", - "successful_adding" => "Employee add successful.", - "successful_change_password" => "Password change successful.", - "successful_deleted" => "You have successfully deleted", - "successful_updating" => "You have successfully updated employee", - "system_language" => "System Language", - "unsuccessful_change_password" => "Password change failed.", - "update" => "Update Employee", - "username" => "Username", - "username_duplicate" => "", - "username_minlength" => "Username must be at least 5 characters in length.", - "username_required" => "Username is a required field.", + "administrator" => "", + "basic_information" => "Information", + "cannot_be_deleted" => "Unable to delete selected employee(s), one or more of the has processed sales or you are trying to delete your account.", + "change_employee" => "", + "change_password" => "Change Password", + "clerk" => "", + "commission" => "", + "confirm_delete" => "Are you sure you want to delete the selected employee(s)?", + "confirm_restore" => "Are you sure you want to restore selected employee(s)?", + "current_password" => "Current Password", + "current_password_invalid" => "Current Password is invalid.", + "employee" => "Employee", + "error_adding_updating" => "Employee add or update failed.", + "error_deleting_demo_admin" => "You can not delete the demo admin user.", + "error_updating_demo_admin" => "You can not change the demo admin user.", + "language" => "Language", + "login_info" => "Login", + "manager" => "", + "new" => "New Employee", + "none_selected" => "You have not selected any employee(s) to delete.", + "one_or_multiple" => "employee(s)", + "password" => "Password", + "password_minlength" => "Password must be at least 8 characters in length.", + "password_must_match" => "Passwords do not match.", + "password_not_must_match" => "Current password and new password must be unique.", + "password_required" => "Password is required.", + "permission_desc" => "Check the boxes below to grant access to modules.", + "permission_info" => "Permissions", + "repeat_password" => "Password Again", + "subpermission_required" => "Add at least one grant for each module.", + "successful_adding" => "Employee add successful.", + "successful_change_password" => "Password change successful.", + "successful_deleted" => "You have successfully deleted", + "successful_updating" => "You have successfully updated employee", + "system_language" => "System Language", + "unsuccessful_change_password" => "Password change failed.", + "update" => "Update Employee", + "username" => "Username", + "username_duplicate" => "", + "username_minlength" => "Username must be at least 5 characters in length.", + "username_required" => "Username is a required field.", ]; diff --git a/app/Language/ta/Enum.php b/app/Language/ta/Enum.php index e4f1b6e8c..e01f7093b 100644 --- a/app/Language/ta/Enum.php +++ b/app/Language/ta/Enum.php @@ -1,10 +1,10 @@ "பாதி வரை குறைத்து தோரயமாக்கு", - "half_even" => "பாதியை இரட்டைப்படை நோக்கி தோரயமாக்கு", - "half_five" => "ஐந்தை நோக்கி தோரயமாக்கு", - "half_odd" => "பாதியை ஒற்றை படை நோக்கி தோராயமாக்கு", - "half_up" => "பாதி முதல் முழுமையாக்கு", - "round_down" => "முந்தய முழு எண்", - "round_up" => "அடுத்த முழு எண்", + "half_down" => "பாதி வரை குறைத்து தோரயமாக்கு", + "half_even" => "பாதியை இரட்டைப்படை நோக்கி தோரயமாக்கு", + "half_five" => "ஐந்தை நோக்கி தோரயமாக்கு", + "half_odd" => "பாதியை ஒற்றை படை நோக்கி தோராயமாக்கு", + "half_up" => "பாதி முதல் முழுமையாக்கு", + "round_down" => "முந்தய முழு எண்", + "round_up" => "அடுத்த முழு எண்", ]; diff --git a/app/Language/ta/Error.php b/app/Language/ta/Error.php index ae235cf68..3e2dac55d 100644 --- a/app/Language/ta/Error.php +++ b/app/Language/ta/Error.php @@ -1,5 +1,5 @@ "பெயரிடப்பட்ட தொகுதியை பயன்படுத்த உங்களுக்கு அனுமதி இல்லை", - "unknown" => "எதிர்பாராத பிழை", + "no_permission_module" => "பெயரிடப்பட்ட தொகுதியை பயன்படுத்த உங்களுக்கு அனுமதி இல்லை", + "unknown" => "எதிர்பாராத பிழை", ]; diff --git a/app/Language/ta/Expenses.php b/app/Language/ta/Expenses.php index 6eb066ebf..f207f99df 100644 --- a/app/Language/ta/Expenses.php +++ b/app/Language/ta/Expenses.php @@ -1,50 +1,50 @@ "செலவை சேர்க்கவும்", - "amount" => "தொகை", - "amount_number" => "தொகை ஒரு எண்ணாக இருக்க வேண்டும்", - "amount_required" => "செலவுத் தொகை தேவை", - "by_category" => "வகை", - "cannot_be_deleted" => "செலவு(களு)க்கான வகையை நீக்க முடியவில்லை", - "cash" => "பணம்", - "cash_filter" => "பணம்", - "categories_name" => "வகை", - "category_required" => "வகை என்பது தேவையான புலம்", - "check" => "சரிபார்", - "check_filter" => "சரிபார்", - "confirm_delete" => "தேர்ந்தெடுக்கப்பட்ட செலவு(களை) நீக்க விரும்புகிறீர்களா?", - "confirm_restore" => "தேர்ந்தெடுக்கப்பட்ட செலவு(களை) மீட்டெடுக்க விரும்புகிறீர்களா?", - "credit" => "கடன் அட்டை", - "credit_filter" => "கடன் அட்டை", - "date" => "தேதி", - "date_number" => "தேதி ஒரு எண்ணாக இருக்க வேண்டும்", - "date_required" => "தேதி என்பது ஒரு தேவையான புலம்", - "debit" => "பற்று அட்டை", - "debit_filter" => "பற்று அட்டை", - "description" => "விளக்கம்", - "due" => "கொடுக்க வேண்டிய", - "due_filter" => "கொடுக்க வேண்டிய", - "employee" => "உருவாக்கியவர்", - "error_adding_updating" => "செலவைச் சேர்ப்பதில் / புதுப்பிப்பதில் பிழை", - "expense_id" => "அடையாளம்", - "expenses_employee" => "பணியாளர்", - "info" => "செலவு தகவல்", - "ip_address" => "", - "is_deleted" => "நீக்கப்பட்டது", - "name_required" => "செலவுக்கான பெயர் தேவை", - "new" => "புதிய செலவு", - "new_supplier" => "", - "no_expenses_to_display" => "காண்பிக்க செலவுகள் எதுவும் இல்லை", - "none_selected" => "நீங்கள் எந்த செலவையும் தேர்ந்தெடுக்கவில்லை", - "one_or_multiple" => "செலவு(கள்)", - "payment" => "கட்டண வகை", - "start_typing_supplier_name" => "வழங்குபவரின் பெயரைத் தட்டச்சு செய்யத் தொடங்குங்கள் ...", - "successful_adding" => "செலவு வெற்றிகரமாக சேர்க்கிறது", - "successful_deleted" => "செலவு வெற்றிகரமாக நீக்கப்பட்டது", - "successful_updating" => "செலவு வெற்றிகரமாக புதுப்பிக்கப்படுகிறது", - "supplier_name" => "வழங்குபவர்", - "supplier_tax_code" => "வரி குறியீடு", - "tax_amount" => "வரி", - "tax_amount_number" => "", - "update" => "செலவுகள் புதுப்பிப்பு", + "add_item" => "செலவை சேர்க்கவும்", + "amount" => "தொகை", + "amount_number" => "தொகை ஒரு எண்ணாக இருக்க வேண்டும்", + "amount_required" => "செலவுத் தொகை தேவை", + "by_category" => "வகை", + "cannot_be_deleted" => "செலவு(களு)க்கான வகையை நீக்க முடியவில்லை", + "cash" => "பணம்", + "cash_filter" => "பணம்", + "categories_name" => "வகை", + "category_required" => "வகை என்பது தேவையான புலம்", + "check" => "சரிபார்", + "check_filter" => "சரிபார்", + "confirm_delete" => "தேர்ந்தெடுக்கப்பட்ட செலவு(களை) நீக்க விரும்புகிறீர்களா?", + "confirm_restore" => "தேர்ந்தெடுக்கப்பட்ட செலவு(களை) மீட்டெடுக்க விரும்புகிறீர்களா?", + "credit" => "கடன் அட்டை", + "credit_filter" => "கடன் அட்டை", + "date" => "தேதி", + "date_number" => "தேதி ஒரு எண்ணாக இருக்க வேண்டும்", + "date_required" => "தேதி என்பது ஒரு தேவையான புலம்", + "debit" => "பற்று அட்டை", + "debit_filter" => "பற்று அட்டை", + "description" => "விளக்கம்", + "due" => "கொடுக்க வேண்டிய", + "due_filter" => "கொடுக்க வேண்டிய", + "employee" => "உருவாக்கியவர்", + "error_adding_updating" => "செலவைச் சேர்ப்பதில் / புதுப்பிப்பதில் பிழை", + "expense_id" => "அடையாளம்", + "expenses_employee" => "பணியாளர்", + "info" => "செலவு தகவல்", + "ip_address" => "", + "is_deleted" => "நீக்கப்பட்டது", + "name_required" => "செலவுக்கான பெயர் தேவை", + "new" => "புதிய செலவு", + "new_supplier" => "", + "no_expenses_to_display" => "காண்பிக்க செலவுகள் எதுவும் இல்லை", + "none_selected" => "நீங்கள் எந்த செலவையும் தேர்ந்தெடுக்கவில்லை", + "one_or_multiple" => "செலவு(கள்)", + "payment" => "கட்டண வகை", + "start_typing_supplier_name" => "வழங்குபவரின் பெயரைத் தட்டச்சு செய்யத் தொடங்குங்கள் ...", + "successful_adding" => "செலவு வெற்றிகரமாக சேர்க்கிறது", + "successful_deleted" => "செலவு வெற்றிகரமாக நீக்கப்பட்டது", + "successful_updating" => "செலவு வெற்றிகரமாக புதுப்பிக்கப்படுகிறது", + "supplier_name" => "வழங்குபவர்", + "supplier_tax_code" => "வரி குறியீடு", + "tax_amount" => "வரி", + "tax_amount_number" => "", + "update" => "செலவுகள் புதுப்பிப்பு", ]; diff --git a/app/Language/ta/Expenses_categories.php b/app/Language/ta/Expenses_categories.php index 7e1f40570..c87629a51 100644 --- a/app/Language/ta/Expenses_categories.php +++ b/app/Language/ta/Expenses_categories.php @@ -1,22 +1,22 @@ "Expense Category name required", - "add_item" => "Add Category", - "cannot_be_deleted" => "Could not delete Category Expense(s)", - "category_id" => "Id", - "confirm_delete" => "Are you sure you want to delete the selected Expense Category?", - "confirm_restore" => "Are you sure you want to restore the selected Expense Category?", - "description" => "Category Description", - "error_adding_updating" => "Error adding/updating Expense Category", - "info" => "Category Expense Info", - "name" => "Category Name", - "new" => "New Category", - "no_expenses_categories_to_display" => "No Category to display", - "none_selected" => "You have not selected any Category Expense", - "one_or_multiple" => "Category Expense", - "quantity" => "Quantity", - "successful_adding" => "Expense Category add successful", - "successful_deleted" => "Expense Category delete successful", - "successful_updating" => "Expense Category update successful", - "update" => "Update Category", + "category_name_required" => "Expense Category name required", + "add_item" => "Add Category", + "cannot_be_deleted" => "Could not delete Category Expense(s)", + "category_id" => "Id", + "confirm_delete" => "Are you sure you want to delete the selected Expense Category?", + "confirm_restore" => "Are you sure you want to restore the selected Expense Category?", + "description" => "Category Description", + "error_adding_updating" => "Error adding/updating Expense Category", + "info" => "Category Expense Info", + "name" => "Category Name", + "new" => "New Category", + "no_expenses_categories_to_display" => "No Category to display", + "none_selected" => "You have not selected any Category Expense", + "one_or_multiple" => "Category Expense", + "quantity" => "Quantity", + "successful_adding" => "Expense Category add successful", + "successful_deleted" => "Expense Category delete successful", + "successful_updating" => "Expense Category update successful", + "update" => "Update Category", ]; diff --git a/app/Language/ta/Giftcards.php b/app/Language/ta/Giftcards.php index 78398b03a..af8999ce0 100644 --- a/app/Language/ta/Giftcards.php +++ b/app/Language/ta/Giftcards.php @@ -1,71 +1,71 @@ "Inventory to add or subtract.", - "allow_alt_description" => "Allow Alternate Description", - "bulk_edit" => "Bulk Edit", - "cannot_be_deleted" => "Could not delete selected Gift Card(s), one or more of the selected Gift Cards has sales.", - "cannot_find_giftcard" => "Gift Card not found.", - "cannot_use" => "Gift Card {0} cannot be used for this sale: invalid Customer.", - "card_value" => "Value", - "category" => "Category", - "change_all_to_allow_alt_desc" => "Allow alternate description for all.", - "change_all_to_not_allow_allow_desc" => "Do not allow alternate description for all.", - "change_all_to_serialized" => "Change All To Serialized", - "change_all_to_unserialized" => "Change All To Unserialized", - "confirm_bulk_edit" => "Are you sure you want to edit the selected Gift Card(s)?", - "confirm_delete" => "Are you sure you want to delete the selected Gift Card(s)?", - "confirm_restore" => "Are you sure you want to restore selected Gift Card(s)?", - "cost_price" => "Wholesale Price", - "count" => "Update Inventory", - "csv_import_failed" => "CSV import failed.", - "current_quantity" => "Current Quantity", - "description" => "Description", - "details_count" => "Inventory Count Details", - "do_nothing" => "Do Nothing", - "edit_fields_you_want_to_update" => "Edit desired fields for selected Gift Card(s).", - "edit_multiple_giftcards" => "Edit Multiple Gift Cards.", - "error_adding_updating" => "Gift Card add or update failed.", - "error_updating_multiple" => "Gift Card(s) update failed.", - "generate_barcodes" => "Generate Barcodes", - "giftcard" => "Gift Card", - "giftcard_number" => "Gift Card Number", - "info_provided_by" => "Info provided by", - "inventory_comments" => "Comments", - "is_serialized" => "Gift Card has Serial Number", - "low_inventory_giftcards" => "Low Inventory Gift Cards", - "manually_editing_of_quantity" => "Manual Edit of Quantity", - "must_select_giftcard_for_barcode" => "You must select at least one (1) Gift Card to generate barcodes.", - "new" => "New Gift Card", - "no_description_giftcards" => "No Description Gift Cards", - "no_giftcards_to_display" => "No Gift Cards to display.", - "none" => "None", - "none_selected" => "No Gift Card(s) selected to edit.", - "number" => "Gift Card Number must be a number.", - "number_information" => "Gift Card Number", - "number_required" => "Gift Card Number is a required field.", - "one_or_multiple" => "Gift Card(s)", - "person_id" => "Customer", - "quantity" => "Quantity", - "quantity_required" => "Quantity is a required field. Please close (X) to cancel.", - "remaining_balance" => "Gift Card {0} remaining value is {1}!", - "reorder_level" => "Reorder Level", - "retrive_giftcard_info" => "Retrieve Gift Card Info", - "sales_tax_1" => "Sales Tax", - "sales_tax_2" => "Sales Tax 2", - "serialized_giftcards" => "Serialized Gift Cards", - "successful_adding" => "You have successfully added Gift Card", - "successful_bulk_edit" => "You have successfully updated the selected Gift Card(s)", - "successful_deleted" => "You have successfully deleted", - "successful_updating" => "You have successfully updated Gift Card", - "supplier" => "Supplier", - "tax_1" => "Tax 1", - "tax_2" => "Tax 2", - "tax_percent" => "Tax Percent", - "tax_percents" => "Tax Percent(s)", - "unit_price" => "Retail Value", - "upc_database" => "Barcode Database", - "update" => "Update Gift Card", - "use_inventory_menu" => "Use Inventory Menu", - "value" => "Gift Card Value must be a number.", - "value_required" => "Gift Card Value is a required field.", + "add_minus" => "Inventory to add or subtract.", + "allow_alt_description" => "Allow Alternate Description", + "bulk_edit" => "Bulk Edit", + "cannot_be_deleted" => "Could not delete selected Gift Card(s), one or more of the selected Gift Cards has sales.", + "cannot_find_giftcard" => "Gift Card not found.", + "cannot_use" => "Gift Card {0} cannot be used for this sale: invalid Customer.", + "card_value" => "Value", + "category" => "Category", + "change_all_to_allow_alt_desc" => "Allow alternate description for all.", + "change_all_to_not_allow_allow_desc" => "Do not allow alternate description for all.", + "change_all_to_serialized" => "Change All To Serialized", + "change_all_to_unserialized" => "Change All To Unserialized", + "confirm_bulk_edit" => "Are you sure you want to edit the selected Gift Card(s)?", + "confirm_delete" => "Are you sure you want to delete the selected Gift Card(s)?", + "confirm_restore" => "Are you sure you want to restore selected Gift Card(s)?", + "cost_price" => "Wholesale Price", + "count" => "Update Inventory", + "csv_import_failed" => "CSV import failed.", + "current_quantity" => "Current Quantity", + "description" => "Description", + "details_count" => "Inventory Count Details", + "do_nothing" => "Do Nothing", + "edit_fields_you_want_to_update" => "Edit desired fields for selected Gift Card(s).", + "edit_multiple_giftcards" => "Edit Multiple Gift Cards.", + "error_adding_updating" => "Gift Card add or update failed.", + "error_updating_multiple" => "Gift Card(s) update failed.", + "generate_barcodes" => "Generate Barcodes", + "giftcard" => "Gift Card", + "giftcard_number" => "Gift Card Number", + "info_provided_by" => "Info provided by", + "inventory_comments" => "Comments", + "is_serialized" => "Gift Card has Serial Number", + "low_inventory_giftcards" => "Low Inventory Gift Cards", + "manually_editing_of_quantity" => "Manual Edit of Quantity", + "must_select_giftcard_for_barcode" => "You must select at least one (1) Gift Card to generate barcodes.", + "new" => "New Gift Card", + "no_description_giftcards" => "No Description Gift Cards", + "no_giftcards_to_display" => "No Gift Cards to display.", + "none" => "None", + "none_selected" => "No Gift Card(s) selected to edit.", + "number" => "Gift Card Number must be a number.", + "number_information" => "Gift Card Number", + "number_required" => "Gift Card Number is a required field.", + "one_or_multiple" => "Gift Card(s)", + "person_id" => "Customer", + "quantity" => "Quantity", + "quantity_required" => "Quantity is a required field. Please close (X) to cancel.", + "remaining_balance" => "Gift Card {0} remaining value is {1}!", + "reorder_level" => "Reorder Level", + "retrive_giftcard_info" => "Retrieve Gift Card Info", + "sales_tax_1" => "Sales Tax", + "sales_tax_2" => "Sales Tax 2", + "serialized_giftcards" => "Serialized Gift Cards", + "successful_adding" => "You have successfully added Gift Card", + "successful_bulk_edit" => "You have successfully updated the selected Gift Card(s)", + "successful_deleted" => "You have successfully deleted", + "successful_updating" => "You have successfully updated Gift Card", + "supplier" => "Supplier", + "tax_1" => "Tax 1", + "tax_2" => "Tax 2", + "tax_percent" => "Tax Percent", + "tax_percents" => "Tax Percent(s)", + "unit_price" => "Retail Value", + "upc_database" => "Barcode Database", + "update" => "Update Gift Card", + "use_inventory_menu" => "Use Inventory Menu", + "value" => "Gift Card Value must be a number.", + "value_required" => "Gift Card Value is a required field.", ]; diff --git a/app/Language/ta/Item_kits.php b/app/Language/ta/Item_kits.php index 6cad076e5..10f41b804 100644 --- a/app/Language/ta/Item_kits.php +++ b/app/Language/ta/Item_kits.php @@ -1,41 +1,41 @@ "Add Item", - "all" => "All", - "cannot_be_deleted" => "Item Kit(s) delete failed.", - "confirm_delete" => "Are you sure you want to delete the selected Item Kit(s)?", - "confirm_restore" => "Are you sure you want to restore selected Item Kit(s)?", - "description" => "Item Kit Description", - "discount" => "Discount", - "discount_fixed" => "Fixed Discount", - "discount_percent" => "Discount Percent", - "discount_type" => "Discount Type", - "error_adding_updating" => "Item Kit add or update failed.", - "find_kit_item" => "Kit Item", - "info" => "Item Kit Info", - "item" => "Item", - "item_kit_number" => "Barcode", - "item_kit_number_duplicate" => "Item Kit Number is already present in the database.", - "item_number" => "", - "item_number_duplicate" => "", - "items" => "Items", - "kit" => "Kit ID", - "kit_and_components" => "Kit and Components", - "kit_and_stock" => "Kit and Stock", - "kit_only" => "Kit Only", - "name" => "Item Kit Name", - "new" => "New Item Kit", - "no_item_kits_to_display" => "No Item Kits to display.", - "none_selected" => "You have not selected any Item Kits.", - "one_or_multiple" => "Item Kit(s)", - "price_option" => "Price Option", - "priced_only" => "Priced Only", - "print_option" => "Print Option", - "quantity" => "Quantity", - "sequence" => "Sequence", - "successful_adding" => "You have successfully added Item Kit", - "successful_deleted" => "You have successfully deleted", - "successful_updating" => "You have successfully updated Item Kit", - "unit_price" => "", - "update" => "Update Item Kit", + "add_item" => "Add Item", + "all" => "All", + "cannot_be_deleted" => "Item Kit(s) delete failed.", + "confirm_delete" => "Are you sure you want to delete the selected Item Kit(s)?", + "confirm_restore" => "Are you sure you want to restore selected Item Kit(s)?", + "description" => "Item Kit Description", + "discount" => "Discount", + "discount_fixed" => "Fixed Discount", + "discount_percent" => "Discount Percent", + "discount_type" => "Discount Type", + "error_adding_updating" => "Item Kit add or update failed.", + "find_kit_item" => "Kit Item", + "info" => "Item Kit Info", + "item" => "Item", + "item_kit_number" => "Barcode", + "item_kit_number_duplicate" => "Item Kit Number is already present in the database.", + "item_number" => "", + "item_number_duplicate" => "", + "items" => "Items", + "kit" => "Kit ID", + "kit_and_components" => "Kit and Components", + "kit_and_stock" => "Kit and Stock", + "kit_only" => "Kit Only", + "name" => "Item Kit Name", + "new" => "New Item Kit", + "no_item_kits_to_display" => "No Item Kits to display.", + "none_selected" => "You have not selected any Item Kits.", + "one_or_multiple" => "Item Kit(s)", + "price_option" => "Price Option", + "priced_only" => "Priced Only", + "print_option" => "Print Option", + "quantity" => "Quantity", + "sequence" => "Sequence", + "successful_adding" => "You have successfully added Item Kit", + "successful_deleted" => "You have successfully deleted", + "successful_updating" => "You have successfully updated Item Kit", + "unit_price" => "", + "update" => "Update Item Kit", ]; diff --git a/app/Language/ta/Items.php b/app/Language/ta/Items.php index 7d54695cf..c0db578dc 100644 --- a/app/Language/ta/Items.php +++ b/app/Language/ta/Items.php @@ -1,120 +1,120 @@ "கையிருப்பு பொருட்களை கூட்டு அல்லது கழி", - "allow_alt_description" => "மாற்று விளக்கத்தை அனுமதி", - "amount_entry" => "தொகை உள்ளிடு", - "bulk_edit" => "மொத்த திருத்தம்", - "buy_price_required" => "கொள்முதல் விலை அவசியம்.", - "cannot_be_deleted" => "தேர்ந்தெடுக்கப்பட்ட உருப்படி (களை) நீக்க முடியவில்லை, தேர்ந்தெடுக்கப்பட்ட ஒன்று அல்லது அதற்கு மேற்பட்ட உருப்படிகள் விற்பனையைக் கொண்டுள்ளன.", - "cannot_find_item" => "பொருள் கிடைக்கவில்லை.", - "categories" => "", - "category" => "வகை", - "category_new" => "", - "category_required" => "வகை என்பது தேவையான புலம்.", - "change_all_to_allow_alt_desc" => "அனைவரும் மாற்று விளக்கத்தை அனுமதிக்கவும்.", - "change_all_to_not_allow_allow_desc" => "அனைவருக்கும் மாற்று விளக்கத்தை அனுமதிக்க வேண்டாம்.", - "change_all_to_serialized" => "அனைத்தையும் தொடர்களாக மாற்றவும்", - "change_all_to_unserialized" => "அனைத்தையும் தொடர்களாக மாற்றவும்", - "change_image" => "படத்தை மாற்று", - "confirm_bulk_edit" => "Are you sure you want to edit selected Item(s)?", - "confirm_bulk_edit_wipe_taxes" => "All Item Tax information will be replaced.", - "confirm_delete" => "Are you sure you want to delete selected item(s)?", - "confirm_restore" => "Are you sure you want to restore selected item(s)?", - "cost_price" => "Wholesale Price", - "cost_price_number" => "Wholesale Price must be a number.", - "cost_price_required" => "Wholesale Price is a required field.", - "count" => "Update Inventory", - "csv_import_failed" => "CSV import failed", - "csv_import_nodata_wrongformat" => "The uploaded CSV file has no data or is formatted incorrectly.", - "csv_import_partially_failed" => "There were {0} item import failure(s) on line(s): {1}. No rows were imported.", - "csv_import_success" => "Item CSV import successful.", - "current_quantity" => "Current Quantity", - "default_pack_name" => "Each", - "description" => "Description", - "details_count" => "Inventory Count Details", - "do_nothing" => "Do Nothing", - "edit" => "", - "edit_fields_you_want_to_update" => "Edit the desired fields for selected item(s).", - "edit_multiple_items" => "Editing Multiple Items", - "empty_upc_items" => "Empty Barcode Items", - "error_adding_updating" => "Error adding/updating item", - "error_updating_multiple" => "Error updating items", - "generate_barcodes" => "Generate Barcodes", - "hsn_code" => "Harmonized System Nomenclature", - "image" => "Avatar", - "import_items_csv" => "Item Import from CSV", - "info_provided_by" => "Information provided by", - "inventory" => "Inventory", - "inventory_CSV_import_quantity" => "Quantity Imported from CSV", - "inventory_comments" => "Comments", - "inventory_data_tracking" => "Inventory Data Tracking", - "inventory_date" => "Date", - "inventory_employee" => "Employee", - "inventory_in_out_quantity" => "In/Out Quantity", - "inventory_remarks" => "Remarks", - "is_deleted" => "Deleted", - "is_printed" => "", - "is_serialized" => "Item has Serial Number", - "item" => "Item", - "item_id" => "", - "item_number" => "Barcode", - "item_number_duplicate" => "Item Number is already present in the database.", - "kit" => "Kit", - "location" => "Location", - "low_inventory_items" => "Out Of Stock Items", - "low_sell_item" => "Low sell item", - "manually_editing_of_quantity" => "Manual Edit of Quantity", - "markup" => "", - "name" => "Item Name", - "name_required" => "Item Name is a required field.", - "new" => "New Item", - "no_description_items" => "No Description Items", - "no_items_to_display" => "No Items to display.", - "none" => "None", - "none_selected" => "You have not selected any Item(s) to edit", - "nonstock" => "Non-stocked", - "number_information" => "Item Number", - "number_required" => "Barcode is a required field.", - "one_or_multiple" => "item(s)", - "pack_name" => "Pack Name", - "qty_per_pack" => "Quantity per pack", - "quantity" => "Quantity", - "quantity_number" => "Quantity must be a number.", - "quantity_required" => "Quantity is a required field.", - "receiving_quantity" => "Receiving Quantity", - "remove_image" => "Remove Image", - "reorder_level" => "Reorder Level", - "reorder_level_number" => "Reorder Level must be a number.", - "reorder_level_required" => "Reorder Level is a required field.", - "retrive_item_info" => "உருப்படி தகவலை மீட்டெடுக்கவும்", - "sales_tax_1" => "Sales Tax", - "sales_tax_2" => "Sales Tax 2", - "search_attributes" => "Search Attributes", - "select_image" => "Select Image", - "serialized_items" => "Serialized Items", - "standard" => "Standard", - "stock" => "Stock", - "stock_location" => "Stock location", - "stock_type" => "Stock Type", - "successful_adding" => "You have successfully added item", - "successful_bulk_edit" => "You have successfully updated the selected item(s)", - "successful_deleted" => "You have successfully deleted", - "successful_updating" => "You have successfully updated item", - "supplier" => "Supplier", - "tax_1" => "Tax 1", - "tax_2" => "Tax 2", - "tax_3" => "", - "tax_category" => "Tax Category", - "tax_percent" => "", - "tax_percent_number" => "Tax Percent must be a numeric value", - "tax_percent_required" => "Tax Percent is a required field.", - "tax_percents" => "Tax Percent(s)", - "temp" => "Temporary", - "type" => "Item Type", - "unit_price" => "Retail Price", - "unit_price_number" => "Unit price must be a number.", - "unit_price_required" => "Retail Price is a required field.", - "upc_database" => "Barcode Database", - "update" => "Update Item", - "use_inventory_menu" => "Use Inventory Menu", + "add_minus" => "கையிருப்பு பொருட்களை கூட்டு அல்லது கழி", + "allow_alt_description" => "மாற்று விளக்கத்தை அனுமதி", + "amount_entry" => "தொகை உள்ளிடு", + "bulk_edit" => "மொத்த திருத்தம்", + "buy_price_required" => "கொள்முதல் விலை அவசியம்.", + "cannot_be_deleted" => "தேர்ந்தெடுக்கப்பட்ட உருப்படி (களை) நீக்க முடியவில்லை, தேர்ந்தெடுக்கப்பட்ட ஒன்று அல்லது அதற்கு மேற்பட்ட உருப்படிகள் விற்பனையைக் கொண்டுள்ளன.", + "cannot_find_item" => "பொருள் கிடைக்கவில்லை.", + "categories" => "", + "category" => "வகை", + "category_new" => "", + "category_required" => "வகை என்பது தேவையான புலம்.", + "change_all_to_allow_alt_desc" => "அனைவரும் மாற்று விளக்கத்தை அனுமதிக்கவும்.", + "change_all_to_not_allow_allow_desc" => "அனைவருக்கும் மாற்று விளக்கத்தை அனுமதிக்க வேண்டாம்.", + "change_all_to_serialized" => "அனைத்தையும் தொடர்களாக மாற்றவும்", + "change_all_to_unserialized" => "அனைத்தையும் தொடர்களாக மாற்றவும்", + "change_image" => "படத்தை மாற்று", + "confirm_bulk_edit" => "Are you sure you want to edit selected Item(s)?", + "confirm_bulk_edit_wipe_taxes" => "All Item Tax information will be replaced.", + "confirm_delete" => "Are you sure you want to delete selected item(s)?", + "confirm_restore" => "Are you sure you want to restore selected item(s)?", + "cost_price" => "Wholesale Price", + "cost_price_number" => "Wholesale Price must be a number.", + "cost_price_required" => "Wholesale Price is a required field.", + "count" => "Update Inventory", + "csv_import_failed" => "CSV import failed", + "csv_import_nodata_wrongformat" => "The uploaded CSV file has no data or is formatted incorrectly.", + "csv_import_partially_failed" => "There were {0} item import failure(s) on line(s): {1}. No rows were imported.", + "csv_import_success" => "Item CSV import successful.", + "current_quantity" => "Current Quantity", + "default_pack_name" => "Each", + "description" => "Description", + "details_count" => "Inventory Count Details", + "do_nothing" => "Do Nothing", + "edit" => "", + "edit_fields_you_want_to_update" => "Edit the desired fields for selected item(s).", + "edit_multiple_items" => "Editing Multiple Items", + "empty_upc_items" => "Empty Barcode Items", + "error_adding_updating" => "Error adding/updating item", + "error_updating_multiple" => "Error updating items", + "generate_barcodes" => "Generate Barcodes", + "hsn_code" => "Harmonized System Nomenclature", + "image" => "Avatar", + "import_items_csv" => "Item Import from CSV", + "info_provided_by" => "Information provided by", + "inventory" => "Inventory", + "inventory_CSV_import_quantity" => "Quantity Imported from CSV", + "inventory_comments" => "Comments", + "inventory_data_tracking" => "Inventory Data Tracking", + "inventory_date" => "Date", + "inventory_employee" => "Employee", + "inventory_in_out_quantity" => "In/Out Quantity", + "inventory_remarks" => "Remarks", + "is_deleted" => "Deleted", + "is_printed" => "", + "is_serialized" => "Item has Serial Number", + "item" => "Item", + "item_id" => "", + "item_number" => "Barcode", + "item_number_duplicate" => "Item Number is already present in the database.", + "kit" => "Kit", + "location" => "Location", + "low_inventory_items" => "Out Of Stock Items", + "low_sell_item" => "Low sell item", + "manually_editing_of_quantity" => "Manual Edit of Quantity", + "markup" => "", + "name" => "Item Name", + "name_required" => "Item Name is a required field.", + "new" => "New Item", + "no_description_items" => "No Description Items", + "no_items_to_display" => "No Items to display.", + "none" => "None", + "none_selected" => "You have not selected any Item(s) to edit", + "nonstock" => "Non-stocked", + "number_information" => "Item Number", + "number_required" => "Barcode is a required field.", + "one_or_multiple" => "item(s)", + "pack_name" => "Pack Name", + "qty_per_pack" => "Quantity per pack", + "quantity" => "Quantity", + "quantity_number" => "Quantity must be a number.", + "quantity_required" => "Quantity is a required field.", + "receiving_quantity" => "Receiving Quantity", + "remove_image" => "Remove Image", + "reorder_level" => "Reorder Level", + "reorder_level_number" => "Reorder Level must be a number.", + "reorder_level_required" => "Reorder Level is a required field.", + "retrive_item_info" => "உருப்படி தகவலை மீட்டெடுக்கவும்", + "sales_tax_1" => "Sales Tax", + "sales_tax_2" => "Sales Tax 2", + "search_attributes" => "Search Attributes", + "select_image" => "Select Image", + "serialized_items" => "Serialized Items", + "standard" => "Standard", + "stock" => "Stock", + "stock_location" => "Stock location", + "stock_type" => "Stock Type", + "successful_adding" => "You have successfully added item", + "successful_bulk_edit" => "You have successfully updated the selected item(s)", + "successful_deleted" => "You have successfully deleted", + "successful_updating" => "You have successfully updated item", + "supplier" => "Supplier", + "tax_1" => "Tax 1", + "tax_2" => "Tax 2", + "tax_3" => "", + "tax_category" => "Tax Category", + "tax_percent" => "", + "tax_percent_number" => "Tax Percent must be a numeric value", + "tax_percent_required" => "Tax Percent is a required field.", + "tax_percents" => "Tax Percent(s)", + "temp" => "Temporary", + "type" => "Item Type", + "unit_price" => "Retail Price", + "unit_price_number" => "Unit price must be a number.", + "unit_price_required" => "Retail Price is a required field.", + "upc_database" => "Barcode Database", + "update" => "Update Item", + "use_inventory_menu" => "Use Inventory Menu", ]; diff --git a/app/Language/ta/Login.php b/app/Language/ta/Login.php index abb0cb112..7d97899d7 100644 --- a/app/Language/ta/Login.php +++ b/app/Language/ta/Login.php @@ -1,15 +1,15 @@ "ரோபோ ஸ்கிரிப்ட்கள் அல்ல.", - "go" => "செல்", - "invalid_gcaptcha" => "நீங்கள் தானியங்கி அல்ல என்பதை உறுதி செய்யவும்.", - "invalid_installation" => "நிறுவியத்தில் தவறு , php.ini கோப்பை சரி பார்க்கவும் .", - "invalid_username_and_password" => "பயனர்பெயர் அல்லது கடவுச்சொல் தவறு.", - "login" => "உள்நுழைய", - "logout" => "விடுபதிகை", - "migration_needed" => "{0} க்கு தரவுத்தள இடம்பெயர்வு உள்நுழைந்த பிறகு தொடங்கும்.", - "password" => "கடவுச்சொல்", - "required_username" => "", - "username" => "பயனர்பெயர்", - "welcome" => "{0} க்கு வருக!", + "gcaptcha" => "ரோபோ ஸ்கிரிப்ட்கள் அல்ல.", + "go" => "செல்", + "invalid_gcaptcha" => "நீங்கள் தானியங்கி அல்ல என்பதை உறுதி செய்யவும்.", + "invalid_installation" => "நிறுவியத்தில் தவறு , php.ini கோப்பை சரி பார்க்கவும் .", + "invalid_username_and_password" => "பயனர்பெயர் அல்லது கடவுச்சொல் தவறு.", + "login" => "உள்நுழைய", + "logout" => "விடுபதிகை", + "migration_needed" => "{0} க்கு தரவுத்தள இடம்பெயர்வு உள்நுழைந்த பிறகு தொடங்கும்.", + "password" => "கடவுச்சொல்", + "required_username" => "", + "username" => "பயனர்பெயர்", + "welcome" => "{0} க்கு வருக!", ]; diff --git a/app/Language/ta/Messages.php b/app/Language/ta/Messages.php index dabf5733c..eb254d6dd 100644 --- a/app/Language/ta/Messages.php +++ b/app/Language/ta/Messages.php @@ -1,15 +1,15 @@ "First name", - "last_name" => "Last name", - "message" => "Message", - "message_placeholder" => "Your Message here...", - "message_required" => "Message required", - "multiple_phones" => "(In case of multiple recipients, enter mobile numbers separated by commas)", - "phone" => "Phone number", - "phone_number_required" => "Phone number required", - "phone_placeholder" => "Mobile Number(s) here...", - "sms_send" => "Send SMS", - "successfully_sent" => "Message successfully sent to: ", - "unsuccessfully_sent" => "Message unsuccessfully sent to: ", + "first_name" => "First name", + "last_name" => "Last name", + "message" => "Message", + "message_placeholder" => "Your Message here...", + "message_required" => "Message required", + "multiple_phones" => "(In case of multiple recipients, enter mobile numbers separated by commas)", + "phone" => "Phone number", + "phone_number_required" => "Phone number required", + "phone_placeholder" => "Mobile Number(s) here...", + "sms_send" => "Send SMS", + "successfully_sent" => "Message successfully sent to: ", + "unsuccessfully_sent" => "Message unsuccessfully sent to: ", ]; diff --git a/app/Language/ta/Module.php b/app/Language/ta/Module.php index c7c002dee..fb7d07a30 100644 --- a/app/Language/ta/Module.php +++ b/app/Language/ta/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "Attributes", - "attributes_desc" => "Add, Update, Delete, and Search attributes.", - "both" => "Both", - "cashups" => "Cashups", - "cashups_desc" => "Add, Update, Delete, and Search Cashups.", - "config" => "Configuration", - "config_desc" => "Change OSPOS's Configuration.", - "customers" => "Customers", - "customers_desc" => "Add, Update, Delete, and Search Customers.", - "employees" => "Employees", - "employees_desc" => "Add, Update, Delete, and Search Employees.", - "expenses" => "Expenses", - "expenses_categories" => "Expenses Categories", - "expenses_categories_desc" => "Add, Update, and Delete Expenses Categories.", - "expenses_desc" => "Add, Update, Delete, and Search Expenses.", - "giftcards" => "Gift Cards", - "giftcards_desc" => "Add, Update, Delete and Search Gift Cards.", - "home" => "Home", - "home_desc" => "List home menu modules.", - "item_kits" => "Item Kits", - "item_kits_desc" => "Add, Update, Delete and Search Item Kits.", - "items" => "Items", - "items_desc" => "Add, Update, Delete, and Search Items.", - "messages" => "Messages", - "messages_desc" => "Send Messages to Customers, Suppliers and Employees.", - "migrate" => "Migrate", - "migrate_desc" => "Update the OSPOS Database.", - "office" => "Office", - "office_desc" => "List office menu modules.", - "receivings" => "Receivings", - "receivings_desc" => "Process Purchase Orders.", - "reports" => "Reports", - "reports_desc" => "View and generate Reports.", - "sales" => "Sales", - "sales_desc" => "Process Sales and Returns.", - "suppliers" => "Suppliers", - "suppliers_desc" => "Add, Update, Delete, and Search Suppliers.", - "taxes" => "Taxes", - "taxes_desc" => "Configure Sales Taxes.", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "Attributes", + "attributes_desc" => "Add, Update, Delete, and Search attributes.", + "both" => "Both", + "cashups" => "Cashups", + "cashups_desc" => "Add, Update, Delete, and Search Cashups.", + "config" => "Configuration", + "config_desc" => "Change OSPOS's Configuration.", + "customers" => "Customers", + "customers_desc" => "Add, Update, Delete, and Search Customers.", + "employees" => "Employees", + "employees_desc" => "Add, Update, Delete, and Search Employees.", + "expenses" => "Expenses", + "expenses_categories" => "Expenses Categories", + "expenses_categories_desc" => "Add, Update, and Delete Expenses Categories.", + "expenses_desc" => "Add, Update, Delete, and Search Expenses.", + "giftcards" => "Gift Cards", + "giftcards_desc" => "Add, Update, Delete and Search Gift Cards.", + "home" => "Home", + "home_desc" => "List home menu modules.", + "item_kits" => "Item Kits", + "item_kits_desc" => "Add, Update, Delete and Search Item Kits.", + "items" => "Items", + "items_desc" => "Add, Update, Delete, and Search Items.", + "messages" => "Messages", + "messages_desc" => "Send Messages to Customers, Suppliers and Employees.", + "migrate" => "Migrate", + "migrate_desc" => "Update the OSPOS Database.", + "office" => "Office", + "office_desc" => "List office menu modules.", + "receivings" => "Receivings", + "receivings_desc" => "Process Purchase Orders.", + "reports" => "Reports", + "reports_desc" => "View and generate Reports.", + "sales" => "Sales", + "sales_desc" => "Process Sales and Returns.", + "suppliers" => "Suppliers", + "suppliers_desc" => "Add, Update, Delete, and Search Suppliers.", + "taxes" => "Taxes", + "taxes_desc" => "Configure Sales Taxes.", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/ta/Receivings.php b/app/Language/ta/Receivings.php index 0d8d12682..f85987380 100644 --- a/app/Language/ta/Receivings.php +++ b/app/Language/ta/Receivings.php @@ -1,58 +1,58 @@ "", - "cancel_receiving" => "ரத்து செய்", - "cannot_be_deleted" => "Receiving(s) delete failed.", - "comments" => "Comments", - "complete_receiving" => "Finish", - "confirm_cancel_receiving" => "Are you sure you want to clear this receiving? All items will cleared.", - "confirm_delete" => "Are you sure you want to delete this receiving? This action cannot be undone.", - "confirm_finish_receiving" => "Are you sure you want to submit this receiving? This cannot be undone.", - "confirm_restore" => "", - "cost" => "Cost", - "daily" => "", - "date" => "Receiving Date", - "date_required" => "A correct date must be entered.", - "date_type" => "Date is a required field.", - "delete_entire_sale" => "Delete Entire Sale", - "discount" => "Discount", - "edit" => "Edit", - "edit_sale" => "Edit Receiving", - "employee" => "Employee", - "error_editing_item" => "Item edit failed.", - "error_requisition" => "Unable to move Inventory from or to the same Stock Location.", - "find_or_scan_item" => "Find or Scan Item", - "find_or_scan_item_or_receipt" => "Find or Scan Item or Receipt", - "id" => "Receiving ID", - "item_name" => "Item Name", - "mode" => "Receiving Mode", - "new_supplier" => "New Supplier", - "one_or_multiple" => "receiving(s)", - "print_after_sale" => "Print After Sale", - "quantity" => "Qty.", - "receipt" => "Receivings Receipt", - "receipt_number" => "Receiving #", - "receiving" => "Receive", - "reference" => "Reference", - "register" => "Items Receiving", - "requisition" => "Requisition", - "return" => "Return", - "select_supplier" => "Select Supplier (Optional)", - "ship_pack" => "Ship Pack", - "start_typing_supplier_name" => "Start Typing Supplier's name...", - "stock" => "Stock", - "stock_destination" => "Stock Destination", - "stock_locaiton" => "Stock Location", - "stock_source" => "Stock Source", - "successfully_deleted" => "You have successfully deleted", - "successfully_updated" => "Receiving successfully updated", - "supplier" => "Supplier", - "supplier_address" => "Address", - "supplier_email" => "Email", - "supplier_location" => "Location", - "total" => "Total", - "transaction_failed" => "Receivings transaction(s) failed.", - "unable_to_add_item" => "Item add to Receiving failed.", - "unsuccessfully_updated" => "Receiving update failed.", - "update" => "Update", + "amount_due" => "", + "cancel_receiving" => "ரத்து செய்", + "cannot_be_deleted" => "Receiving(s) delete failed.", + "comments" => "Comments", + "complete_receiving" => "Finish", + "confirm_cancel_receiving" => "Are you sure you want to clear this receiving? All items will cleared.", + "confirm_delete" => "Are you sure you want to delete this receiving? This action cannot be undone.", + "confirm_finish_receiving" => "Are you sure you want to submit this receiving? This cannot be undone.", + "confirm_restore" => "", + "cost" => "Cost", + "daily" => "", + "date" => "Receiving Date", + "date_required" => "A correct date must be entered.", + "date_type" => "Date is a required field.", + "delete_entire_sale" => "Delete Entire Sale", + "discount" => "Discount", + "edit" => "Edit", + "edit_sale" => "Edit Receiving", + "employee" => "Employee", + "error_editing_item" => "Item edit failed.", + "error_requisition" => "Unable to move Inventory from or to the same Stock Location.", + "find_or_scan_item" => "Find or Scan Item", + "find_or_scan_item_or_receipt" => "Find or Scan Item or Receipt", + "id" => "Receiving ID", + "item_name" => "Item Name", + "mode" => "Receiving Mode", + "new_supplier" => "New Supplier", + "one_or_multiple" => "receiving(s)", + "print_after_sale" => "Print After Sale", + "quantity" => "Qty.", + "receipt" => "Receivings Receipt", + "receipt_number" => "Receiving #", + "receiving" => "Receive", + "reference" => "Reference", + "register" => "Items Receiving", + "requisition" => "Requisition", + "return" => "Return", + "select_supplier" => "Select Supplier (Optional)", + "ship_pack" => "Ship Pack", + "start_typing_supplier_name" => "Start Typing Supplier's name...", + "stock" => "Stock", + "stock_destination" => "Stock Destination", + "stock_locaiton" => "Stock Location", + "stock_source" => "Stock Source", + "successfully_deleted" => "You have successfully deleted", + "successfully_updated" => "Receiving successfully updated", + "supplier" => "Supplier", + "supplier_address" => "Address", + "supplier_email" => "Email", + "supplier_location" => "Location", + "total" => "Total", + "transaction_failed" => "Receivings transaction(s) failed.", + "unable_to_add_item" => "Item add to Receiving failed.", + "unsuccessfully_updated" => "Receiving update failed.", + "update" => "Update", ]; diff --git a/app/Language/ta/Reports.php b/app/Language/ta/Reports.php index beb95c2b0..320448e44 100644 --- a/app/Language/ta/Reports.php +++ b/app/Language/ta/Reports.php @@ -1,148 +1,148 @@ "அனைத்தும்", - "authority" => "அதிகாரம்", - "canceled" => "ரத்து செய்யப்பட்டது", - "categories" => "வகைகள்", - "categories_summary_report" => "வகைகளின் சுருக்க அறிக்கை", - "category" => "வகை", - "code_canceled" => "CNL", - "code_invoice" => "INV", - "code_pos" => "POS", - "code_quote" => "Q", - "code_return" => "RET", - "code_type" => "Type", - "code_work_order" => "W/O", - "comments" => "கருத்துரைகள்", - "commission" => "", - "complete" => "Completed Sales and Returns", - "completed_sales" => "முடிந்த விற்பனைகள்", - "confirm_delete" => "தேர்ந்தெடுக்கப்பட்ட நுழைவு(களை) நீக்க விரும்புகிறீர்களா?", - "confirm_restore" => "தேர்ந்தெடுக்கப்பட்ட நுழைவு(களை) மீட்டமைக்க விரும்புகிறீர்களா?", - "cost" => "மொத்த விற்பனை", - "cost_price" => "மொத்த விற்பனை விலை", - "count" => "எண்ணிக்கை", - "customer" => "வாடிக்கையாளர்", - "customers" => "வாடிக்கையாளர்கள்", - "customers_summary_report" => "வாடிக்கையாளர்களின் சுருக்க அறிக்கை", - "date" => "Date", - "date_range" => "தேதி வரம்பு", - "description" => "Description", - "detailed_receivings_report" => "விரிவான பெறுதல் அறிக்கை", - "detailed_receivings_report_input" => "", - "detailed_reports" => "விரிவான அறிக்கைகள்", - "detailed_requisition_report" => "", - "detailed_sales_report" => "விரிவான பரிவர்த்தனை அறிக்கை", - "discount" => "தள்ளுபடி", - "discount_fixed" => "நிலையான தள்ளுபடி", - "discount_percent" => "தள்ளுபடி சதவீதம்", - "discount_type" => "தள்ளுபடி வகை", - "discounts" => "தள்ளுபடிகள்", - "discounts_summary_report" => "தள்ளுபடிகளுக்கான சுருக்கமான அறிக்கை", - "earned" => "சம்பாதித்த புள்ளிகள்", - "employee" => "ஊழியர்", - "employees" => "ஊழியர்கள்", - "employees_summary_report" => "ஊழியர்களின் சுருக்க அறிக்கை", - "expenses" => "செலவுகள்", - "expenses_amount" => "தொகை", - "expenses_categories" => "செலவுகள்", - "expenses_categories_summary_report" => "செலவு வகைகளின் சுருக்க அறிக்கை", - "expenses_category" => "வகை", - "expenses_payment_amount" => "", - "expenses_tax_amount" => "வரி", - "expenses_total_amount" => "மொத்த தொகை", - "expenses_total_tax_amount" => "மொத்த வரி", - "graphical_reports" => "வரைகலை அறிக்கைகள்", - "inventory" => "சரக்கு", - "inventory_low" => "குறைந்த சரக்கு", - "inventory_low_report" => "குறைந்த சரக்கு அறிக்கை", - "inventory_reports" => "சரக்கு அறிக்கைகள்", - "inventory_summary" => "சரக்கு சுருக்கம்", - "inventory_summary_report" => "சரக்கு சுருக்க அறிக்கை", - "item" => "Item", - "item_count" => "உருப்படி எண்ணிக்கையை வடிகட்டவும்", - "item_name" => "Item Name", - "item_number" => "அடையாளக் குறியீடு", - "items" => "Items", - "items_purchased" => "வாங்கிய பொருட்கள்", - "items_received" => "பெறப்பட்ட பொருட்கள்", - "items_summary_report" => "உருப்படிகளின் சுருக்க அறிக்கை", - "jurisdiction" => "அதிகார எல்லை", - "low_inventory" => "", - "low_inventory_report" => "", - "low_sell_quantity" => "குறைந்த விற்பனை அளவு", - "more_than_zero" => "சுழியத்தைவிட அதிகம்", - "name" => "Name", - "no_reports_to_display" => "காண்பிக்க உருப்படிகள் இல்லை.", - "payment_type" => "கட்டண வகை", - "payments" => "கட்டணங்கள்", - "payments_summary_report" => "Payments Summary Report", - "profit" => "Profit", - "quantity" => "Quantity", - "quantity_purchased" => "Quantity Purchased", - "quotes" => "Quotes", - "received_by" => "Received By", - "receiving_id" => "Receiving ID", - "receiving_type" => "Receiving Type", - "receivings" => "Receivings", - "reorder_level" => "Reorder Level", - "report" => "Report", - "report_input" => "Report Input", - "reports" => "Reports", - "requisition" => "", - "requisition_by" => "", - "requisition_id" => "", - "requisition_item" => "", - "requisition_item_quantity" => "", - "requisition_related_item" => "", - "requisition_related_item_total_quantity" => "", - "requisition_related_item_unit_quantity" => "", - "requisitions" => "Requisitions", - "returns" => "Returns", - "revenue" => "Revenue", - "sale_id" => "Trans. ID", - "sale_type" => "Transaction Type", - "sales" => "Transactions", - "sales_amount" => "Transactions amount", - "sales_summary_report" => "Transactions Summary Report", - "sales_taxes" => "Sales Taxes", - "sales_taxes_summary_report" => "Sales Taxes Summary Report", - "serial_number" => "Serial Number", - "service_charge" => "", - "sold_by" => "Sold By", - "sold_items" => "", - "sold_to" => "Sold To", - "stock_location" => "Stock Location", - "sub_total_value" => "Subtotal", - "subtotal" => "Subtotal", - "summary_reports" => "Summary Reports", - "supplied_by" => "Supplied by", - "supplier" => "Supplier", - "suppliers" => "Suppliers", - "suppliers_summary_report" => "Suppliers Summary Report", - "tax" => "Tax", - "tax_category" => "Tax Category", - "tax_name" => "", - "tax_percent" => "Tax Percent", - "tax_rate" => "Tax Rate", - "taxes" => "Taxes", - "taxes_summary_report" => "Taxes Summary Report", - "total" => "Total", - "total_inventory_value" => "Total Inventory Value", - "total_low_sell_quantity" => "Total Low Sell Quantity", - "total_quantity" => "Total Quantity", - "total_retail" => "Total Inv. Retail Value", - "trans_amount" => "Transaction Amount", - "trans_due" => "Due", - "trans_group" => "Transaction Group", - "trans_nopay_sales" => "Sales with no payment", - "trans_payments" => "Payments", - "trans_refunded" => "Refunded", - "trans_sales" => "Sales", - "trans_type" => "Transaction Type", - "type" => "Type", - "unit_price" => "Retail Price", - "used" => "Points Used", - "work_orders" => "Work Orders", - "zero_and_less" => "Zero and less", + "all" => "அனைத்தும்", + "authority" => "அதிகாரம்", + "canceled" => "ரத்து செய்யப்பட்டது", + "categories" => "வகைகள்", + "categories_summary_report" => "வகைகளின் சுருக்க அறிக்கை", + "category" => "வகை", + "code_canceled" => "CNL", + "code_invoice" => "INV", + "code_pos" => "POS", + "code_quote" => "Q", + "code_return" => "RET", + "code_type" => "Type", + "code_work_order" => "W/O", + "comments" => "கருத்துரைகள்", + "commission" => "", + "complete" => "Completed Sales and Returns", + "completed_sales" => "முடிந்த விற்பனைகள்", + "confirm_delete" => "தேர்ந்தெடுக்கப்பட்ட நுழைவு(களை) நீக்க விரும்புகிறீர்களா?", + "confirm_restore" => "தேர்ந்தெடுக்கப்பட்ட நுழைவு(களை) மீட்டமைக்க விரும்புகிறீர்களா?", + "cost" => "மொத்த விற்பனை", + "cost_price" => "மொத்த விற்பனை விலை", + "count" => "எண்ணிக்கை", + "customer" => "வாடிக்கையாளர்", + "customers" => "வாடிக்கையாளர்கள்", + "customers_summary_report" => "வாடிக்கையாளர்களின் சுருக்க அறிக்கை", + "date" => "Date", + "date_range" => "தேதி வரம்பு", + "description" => "Description", + "detailed_receivings_report" => "விரிவான பெறுதல் அறிக்கை", + "detailed_receivings_report_input" => "", + "detailed_reports" => "விரிவான அறிக்கைகள்", + "detailed_requisition_report" => "", + "detailed_sales_report" => "விரிவான பரிவர்த்தனை அறிக்கை", + "discount" => "தள்ளுபடி", + "discount_fixed" => "நிலையான தள்ளுபடி", + "discount_percent" => "தள்ளுபடி சதவீதம்", + "discount_type" => "தள்ளுபடி வகை", + "discounts" => "தள்ளுபடிகள்", + "discounts_summary_report" => "தள்ளுபடிகளுக்கான சுருக்கமான அறிக்கை", + "earned" => "சம்பாதித்த புள்ளிகள்", + "employee" => "ஊழியர்", + "employees" => "ஊழியர்கள்", + "employees_summary_report" => "ஊழியர்களின் சுருக்க அறிக்கை", + "expenses" => "செலவுகள்", + "expenses_amount" => "தொகை", + "expenses_categories" => "செலவுகள்", + "expenses_categories_summary_report" => "செலவு வகைகளின் சுருக்க அறிக்கை", + "expenses_category" => "வகை", + "expenses_payment_amount" => "", + "expenses_tax_amount" => "வரி", + "expenses_total_amount" => "மொத்த தொகை", + "expenses_total_tax_amount" => "மொத்த வரி", + "graphical_reports" => "வரைகலை அறிக்கைகள்", + "inventory" => "சரக்கு", + "inventory_low" => "குறைந்த சரக்கு", + "inventory_low_report" => "குறைந்த சரக்கு அறிக்கை", + "inventory_reports" => "சரக்கு அறிக்கைகள்", + "inventory_summary" => "சரக்கு சுருக்கம்", + "inventory_summary_report" => "சரக்கு சுருக்க அறிக்கை", + "item" => "Item", + "item_count" => "உருப்படி எண்ணிக்கையை வடிகட்டவும்", + "item_name" => "Item Name", + "item_number" => "அடையாளக் குறியீடு", + "items" => "Items", + "items_purchased" => "வாங்கிய பொருட்கள்", + "items_received" => "பெறப்பட்ட பொருட்கள்", + "items_summary_report" => "உருப்படிகளின் சுருக்க அறிக்கை", + "jurisdiction" => "அதிகார எல்லை", + "low_inventory" => "", + "low_inventory_report" => "", + "low_sell_quantity" => "குறைந்த விற்பனை அளவு", + "more_than_zero" => "சுழியத்தைவிட அதிகம்", + "name" => "Name", + "no_reports_to_display" => "காண்பிக்க உருப்படிகள் இல்லை.", + "payment_type" => "கட்டண வகை", + "payments" => "கட்டணங்கள்", + "payments_summary_report" => "Payments Summary Report", + "profit" => "Profit", + "quantity" => "Quantity", + "quantity_purchased" => "Quantity Purchased", + "quotes" => "Quotes", + "received_by" => "Received By", + "receiving_id" => "Receiving ID", + "receiving_type" => "Receiving Type", + "receivings" => "Receivings", + "reorder_level" => "Reorder Level", + "report" => "Report", + "report_input" => "Report Input", + "reports" => "Reports", + "requisition" => "", + "requisition_by" => "", + "requisition_id" => "", + "requisition_item" => "", + "requisition_item_quantity" => "", + "requisition_related_item" => "", + "requisition_related_item_total_quantity" => "", + "requisition_related_item_unit_quantity" => "", + "requisitions" => "Requisitions", + "returns" => "Returns", + "revenue" => "Revenue", + "sale_id" => "Trans. ID", + "sale_type" => "Transaction Type", + "sales" => "Transactions", + "sales_amount" => "Transactions amount", + "sales_summary_report" => "Transactions Summary Report", + "sales_taxes" => "Sales Taxes", + "sales_taxes_summary_report" => "Sales Taxes Summary Report", + "serial_number" => "Serial Number", + "service_charge" => "", + "sold_by" => "Sold By", + "sold_items" => "", + "sold_to" => "Sold To", + "stock_location" => "Stock Location", + "sub_total_value" => "Subtotal", + "subtotal" => "Subtotal", + "summary_reports" => "Summary Reports", + "supplied_by" => "Supplied by", + "supplier" => "Supplier", + "suppliers" => "Suppliers", + "suppliers_summary_report" => "Suppliers Summary Report", + "tax" => "Tax", + "tax_category" => "Tax Category", + "tax_name" => "", + "tax_percent" => "Tax Percent", + "tax_rate" => "Tax Rate", + "taxes" => "Taxes", + "taxes_summary_report" => "Taxes Summary Report", + "total" => "Total", + "total_inventory_value" => "Total Inventory Value", + "total_low_sell_quantity" => "Total Low Sell Quantity", + "total_quantity" => "Total Quantity", + "total_retail" => "Total Inv. Retail Value", + "trans_amount" => "Transaction Amount", + "trans_due" => "Due", + "trans_group" => "Transaction Group", + "trans_nopay_sales" => "Sales with no payment", + "trans_payments" => "Payments", + "trans_refunded" => "Refunded", + "trans_sales" => "Sales", + "trans_type" => "Transaction Type", + "type" => "Type", + "unit_price" => "Retail Price", + "used" => "Points Used", + "work_orders" => "Work Orders", + "zero_and_less" => "Zero and less", ]; diff --git a/app/Language/ta/Sales.php b/app/Language/ta/Sales.php index 51e381384..5739a56eb 100644 --- a/app/Language/ta/Sales.php +++ b/app/Language/ta/Sales.php @@ -1,224 +1,224 @@ "இருப்பு புள்ளிகள்", - "rewards_package" => "வெகுமதிகள்", - "rewards_remaining_balance" => "வெகுமதி புள்ளிகள் மீதமுள்ள மதிப்பு ", - "account_number" => "கணக்கு #", - "add_payment" => "கட்டணத்தைச் சேர்க்கவும்", - "amount_due" => "செலுத்த வேண்டிய தொகை", - "amount_tendered" => "கொடுத்த தொகை", - "authorized_signature" => "அங்கீகரிக்கப்பட்ட கையெழுத்து", - "cancel_sale" => "ரத்துசெய்", - "cash" => "பணம்", - "cash_1" => "", - "cash_2" => "", - "cash_3" => "", - "cash_4" => "", - "cash_adjustment" => "பண சரிசெய்தல்", - "cash_deposit" => "பண வைப்பு", - "cash_filter" => "பணம்", - "change_due" => "நிலுவை", - "change_price" => "விற்பனை விலையை மாற்றவும்", - "check" => "சோதி", - "check_balance" => "மீதமுள்ளதை சோதி", - "check_filter" => "சோதி", - "close" => "", - "comment" => "குறிப்புரை", - "comments" => "குறிப்புரைகள்", - "company_name" => "", - "complete" => "", - "complete_sale" => "நிறைவுறு", - "confirm_cancel_sale" => "இந்த விற்பனையை அழிக்க விரும்புகிறீர்களா? அனைத்து பொருட்களும் அழிக்கப்படும்.", - "confirm_delete" => "தேர்ந்தெடுக்கப்பட்ட விற்பனை (களை) நீக்க விரும்புகிறீர்களா?", - "confirm_restore" => "தேர்ந்தெடுக்கப்பட்ட விற்பனை (களை) மீட்டமைக்க விரும்புகிறீர்களா?", - "credit" => "கடன் அட்டை", - "credit_deposit" => "கடன் வைப்பு", - "credit_filter" => "கடன் அட்டை", - "current_table" => "", - "customer" => "வாடிக்கையாளர்", - "customer_address" => "முகவரி", - "customer_discount" => "தள்ளுபடி", - "customer_email" => "மின்னஞ்சல்", - "customer_location" => "இடம்", - "customer_mailchimp_status" => "மெயில்சிம்ப் நிலை", - "customer_optional" => "(நிலுவை தொகை வைக்க அவசியம்)", - "customer_required" => "(தேவை)", - "customer_total" => "மொத்தம்", - "customer_total_spent" => "", - "daily_sales" => "", - "date" => "விற்பனை தேதி", - "date_range" => "தேதி வரம்பு", - "date_required" => "சரியான தேதியை உள்ளிட வேண்டும்.", - "date_type" => "தேதி தேவையான உள்ளீடு.", - "debit" => "பற்று அட்டை", - "debit_filter" => "", - "delete" => "நீக்க அனுமதிக்கவும்", - "delete_confirmation" => "இந்த விற்பனையை நீக்க விரும்புகிறீர்களா? இந்த செயலை திரும்ப பெற முடியாது.", - "delete_entire_sale" => "முழு விற்பனையையும் நீக்கு", - "delete_successful" => "விற்பனை நீக்கப்பட்டது.", - "delete_unsuccessful" => "விற்பனை நீக்கப்படவில்லை.", - "description_abbrv" => "பொருள்.", - "discard" => "கைவிடு", - "discard_quote" => "", - "discount" => "தள்ளு", - "discount_included" => "% தள்ளுபடி", - "discount_short" => "%", - "due" => "நிலுவை", - "due_filter" => "நிலுவை", - "edit" => "திருத்து", - "edit_item" => "பொருளை திருத்து", - "edit_sale" => "விற்பனையை திருத்து", - "email_receipt" => "மின்னஞ்சல் ரசீது", - "employee" => "ஊழியர்", - "entry" => "உள்ளீடு", - "error_editing_item" => "பொருளை திருத்துவதில் பிழை", - "find_or_scan_item" => "பொருளைக் தேடு அல்லது ஸ்கேன் செய்யுங்கள்", - "find_or_scan_item_or_receipt" => "தேடு அல்லது பொருளை வருடு அல்லது ரசீது", - "giftcard" => "பரிசு அட்டை", - "giftcard_balance" => "பரிசு அட்டை இருப்பு", - "giftcard_filter" => "", - "giftcard_number" => "பரிசு அட்டை எண்", - "group_by_category" => "வகை வாரியாக", - "group_by_type" => "வகை வாரியாக", - "hsn" => "HSN", - "id" => "விற்பனை எண்", - "include_prices" => "விலைகளைச் சேர்க்கவா?", - "invoice" => "விற்பனைச்சிட்டை", - "invoice_confirm" => "இந்த விற்பனைச்சிட்டை அனுப்பப்படும்", - "invoice_enable" => "விற்பனைச்சிட்டை எண்", - "invoice_filter" => "விற்பனைச்சிட்டைகள்", - "invoice_no_email" => "இந்த வாடிக்கையாளருக்கு சரியான மின்னஞ்சல் முகவரி இல்லை.", - "invoice_number" => "விற்பனைச்சிட்டை #", - "invoice_number_duplicate" => "விற்பனைச்சிட்டை எண் {0} தனித்துவமாக இருக்க வேண்டும்.", - "invoice_sent" => "விற்பனைச்சிட்டை அனுப்பப்பட்டது", - "invoice_total" => "விற்பனைச்சிட்டை மொத்தம்", - "invoice_type_custom_invoice" => "தனிப்பயன் விலைப்பட்டியல் (custom_invoice.php)", - "invoice_type_custom_tax_invoice" => "தனிப்பயன் வரி விலைப்பட்டியல் (custom_tax_invoice.php)", - "invoice_type_invoice" => "விலைப்பட்டியல் (விலைப்பட்டியல். Php)", - "invoice_type_tax_invoice" => "வரி விலைப்பட்டியல் (tax_invoice.php)", - "invoice_unsent" => "விற்பனைச்சிட்டை அனுப்பப்படவில்லை", - "invoice_update" => "மறுபரிசீலனை", - "item_insufficient_of_stock" => "உருப்படிக்கு போதுமான பங்கு இல்லை.", - "item_name" => "பொருளின் பெயர்", - "item_number" => "பொருள் #", - "item_out_of_stock" => "பொருள் கையிருப்பில் இல்லை.", - "key_browser" => "", - "key_cancel" => "Cancels Current Quote/Invoice/Sale", - "key_customer_search" => "Customer Search", - "key_finish_quote" => "Finish Quote/Invoice witdout payment", - "key_finish_sale" => "Add Payment and Complete Invoice/Sale", - "key_full" => "", - "key_function" => "Function", - "key_help" => "Shortcuts", - "key_help_modal" => "Open Shortcuts Window", - "key_in" => "", - "key_item_search" => "Item Search", - "key_out" => "", - "key_payment" => "Add Payment", - "key_print" => "", - "key_restore" => "", - "key_search" => "", - "key_suspend" => "Suspend Current Sale", - "key_suspended" => "Show Suspended Sales", - "key_system" => "", - "key_tendered" => "Edit Amount Tendered", - "key_title" => "Sales Keyboard Shortcuts", - "mc" => "", - "mode" => "சில்லரை வணிகம்", - "must_enter_numeric" => "தொகை ஒரு எண்ணாக இருக்க வேண்டும்.", - "must_enter_numeric_giftcard" => "பரிசு அட்டை எண் ஒரு எண்ணாக இருக்க வேண்டும்.", - "new_customer" => "புது வாடிக்கையாளர்", - "new_item" => "புதிய பொருள்", - "no_description" => "No description", - "no_filter" => "அனைத்தும்", - "no_items_in_cart" => "வண்டியில் எந்த பொருட்களும் இல்லை.", - "no_sales_to_display" => "காண்பிக்க எந்த விற்பனையும் இல்லை.", - "none_selected" => "விற்பனை(களை) நீக்க நீங்கள் எந்தப் பொருட்களையும் தேர்ந்தெடுக்கவில்லை.", - "nontaxed_ind" => " ", - "not_authorized" => "இந்த செயலுக்கு அங்கீகாரம் இல்லை.", - "one_or_multiple" => "விற்பனை(கள்)", - "payment" => "கட்டண வகை", - "payment_amount" => "தொகை", - "payment_not_cover_total" => "கட்டண தொகை மொத்தத்தை விட அதிகமாகவோ அல்லது சமமாகவோ இருக்க வேண்டும்.", - "payment_type" => "Type", - "payments" => "", - "payments_total" => "மொத்தக் கட்டணம்", - "price" => "விலை", - "print_after_sale" => "விற்பனைக்குப் பிறகு அச்சிடு", - "quantity" => "அளவு", - "quantity_less_than_reorder_level" => "எச்சரிக்கை: விரும்பிய அளவு அந்த உருப்படிக்கான மறுவரிசை நிலைக்கு கீழே உள்ளது.", - "quantity_less_than_zero" => "எச்சரிக்கை: விரும்பிய அளவு போதுமானதாக இல்லை. இருப்பினும் நீங்கள் விற்பனையைச் செயல்படுத்தலாம், ஆனால் உங்கள் சரக்குகளைத் தணிக்கை செய்யுங்கள்.", - "quantity_of_items" => "{0} பொருட்களின் அளவு", - "quote" => "விலைப்புள்ளி", - "quote_number" => "விலைப்புள்ளி எண்", - "quote_number_duplicate" => "விலைப்புள்ளி எண் தனித்துவமாக இருக்க வேண்டும்.", - "quote_sent" => "விலைப்புள்ளி அனுப்பப்பட்டது", - "quote_unsent" => "விலைப்புள்ளியை அனுப்ப இயலவில்லை", - "receipt" => "விற்பனை ரசீது", - "receipt_no_email" => "இந்த வாடிக்கையாளருக்கு சரியான மின்னஞ்சல் முகவரி இல்லை.", - "receipt_number" => "விற்பனை #", - "receipt_sent" => "ரசீது அனுப்பப்பட்டது", - "receipt_unsent" => "ரசீதை அனுப்ப இயலவில்லை", - "refund" => "பணத்தைத் திரும்பப்பெறுதல் வகை", - "register" => "விற்பனை பதிவு", - "remove_customer" => "வாடிக்கையாளரை அகற்று", - "remove_discount" => "", - "return" => "Return", - "rewards" => "வெகுமதி புள்ளிகள்", - "rewards_balance" => "வெகுமதி புள்ளிகள் இருப்பு", - "sale" => "விற்பனை", - "sale_by_invoice" => "விலைப்பட்டியல் மூலம் விற்பனை", - "sale_for_customer" => "வாடிக்கையாளர்:", - "sale_time" => "நேரம்", - "sales_tax" => "விற்பனை வரி", - "sales_total" => "", - "select_customer" => "வாடிக்கையாளரைத் தேர்ந்தெடு", - "send_invoice" => "விலைப்பட்டியல் அனுப்பு", - "send_quote" => "விலைப்புள்ளியை அனுப்பு", - "send_receipt" => "ரசீதை அனுப்பு", - "send_work_order" => "பணி ஆணையை அனுப்பவும்", - "serial" => "வரிசை", - "service_charge" => "", - "show_due" => "", - "show_invoice" => "விலைப்பட்டியலைக் காட்டு", - "show_receipt" => "ரசீதைக் காட்டு", - "start_typing_customer_name" => "வாடிக்கையாளர் விவரங்களைத் தட்டச்சு செய்யத் தொடங்கு...", - "start_typing_item_name" => "Start typing Item Name or scan Barcode...", - "stock" => "Stock", - "stock_location" => "Stock Location", - "sub_total" => "Subtotal", - "successfully_deleted" => "You have successfully deleted", - "successfully_restored" => "You have successfully restored", - "successfully_suspended_sale" => "Sale suspend successful.", - "successfully_updated" => "Sale update successful.", - "suspend_sale" => "Suspend", - "suspended_doc_id" => "Document", - "suspended_sale_id" => "ID", - "suspended_sales" => "Suspended", - "table" => "Table", - "takings" => "Daily Sales", - "tax" => "Tax", - "tax_id" => "Tax Id", - "tax_invoice" => "Tax Invoice", - "tax_percent" => "Tax %", - "taxed_ind" => "வ", - "total" => "Total", - "total_tax_exclusive" => "Tax excluded", - "transaction_failed" => "Sales Transaction failed.", - "unable_to_add_item" => "Item add to Sale failed", - "unsuccessfully_deleted" => "Sale(s) delete failed.", - "unsuccessfully_restored" => "Sale(s) restore failed.", - "unsuccessfully_suspended_sale" => "Sale suspend failed.", - "unsuccessfully_updated" => "Sale update failed.", - "unsuspend" => "Unsuspend", - "unsuspend_and_delete" => "Action", - "update" => "Update", - "upi" => "UPI", - "visa" => "", - "wholesale" => "", - "work_order" => "Work Order", - "work_order_number" => "Work Order Number", - "work_order_number_duplicate" => "Work Order Number must be unique.", - "work_order_sent" => "Work Order sent to", - "work_order_unsent" => "Work Order failed to be sent to", + "customers_available_points" => "இருப்பு புள்ளிகள்", + "rewards_package" => "வெகுமதிகள்", + "rewards_remaining_balance" => "வெகுமதி புள்ளிகள் மீதமுள்ள மதிப்பு ", + "account_number" => "கணக்கு #", + "add_payment" => "கட்டணத்தைச் சேர்க்கவும்", + "amount_due" => "செலுத்த வேண்டிய தொகை", + "amount_tendered" => "கொடுத்த தொகை", + "authorized_signature" => "அங்கீகரிக்கப்பட்ட கையெழுத்து", + "cancel_sale" => "ரத்துசெய்", + "cash" => "பணம்", + "cash_1" => "", + "cash_2" => "", + "cash_3" => "", + "cash_4" => "", + "cash_adjustment" => "பண சரிசெய்தல்", + "cash_deposit" => "பண வைப்பு", + "cash_filter" => "பணம்", + "change_due" => "நிலுவை", + "change_price" => "விற்பனை விலையை மாற்றவும்", + "check" => "சோதி", + "check_balance" => "மீதமுள்ளதை சோதி", + "check_filter" => "சோதி", + "close" => "", + "comment" => "குறிப்புரை", + "comments" => "குறிப்புரைகள்", + "company_name" => "", + "complete" => "", + "complete_sale" => "நிறைவுறு", + "confirm_cancel_sale" => "இந்த விற்பனையை அழிக்க விரும்புகிறீர்களா? அனைத்து பொருட்களும் அழிக்கப்படும்.", + "confirm_delete" => "தேர்ந்தெடுக்கப்பட்ட விற்பனை (களை) நீக்க விரும்புகிறீர்களா?", + "confirm_restore" => "தேர்ந்தெடுக்கப்பட்ட விற்பனை (களை) மீட்டமைக்க விரும்புகிறீர்களா?", + "credit" => "கடன் அட்டை", + "credit_deposit" => "கடன் வைப்பு", + "credit_filter" => "கடன் அட்டை", + "current_table" => "", + "customer" => "வாடிக்கையாளர்", + "customer_address" => "முகவரி", + "customer_discount" => "தள்ளுபடி", + "customer_email" => "மின்னஞ்சல்", + "customer_location" => "இடம்", + "customer_mailchimp_status" => "மெயில்சிம்ப் நிலை", + "customer_optional" => "(நிலுவை தொகை வைக்க அவசியம்)", + "customer_required" => "(தேவை)", + "customer_total" => "மொத்தம்", + "customer_total_spent" => "", + "daily_sales" => "", + "date" => "விற்பனை தேதி", + "date_range" => "தேதி வரம்பு", + "date_required" => "சரியான தேதியை உள்ளிட வேண்டும்.", + "date_type" => "தேதி தேவையான உள்ளீடு.", + "debit" => "பற்று அட்டை", + "debit_filter" => "", + "delete" => "நீக்க அனுமதிக்கவும்", + "delete_confirmation" => "இந்த விற்பனையை நீக்க விரும்புகிறீர்களா? இந்த செயலை திரும்ப பெற முடியாது.", + "delete_entire_sale" => "முழு விற்பனையையும் நீக்கு", + "delete_successful" => "விற்பனை நீக்கப்பட்டது.", + "delete_unsuccessful" => "விற்பனை நீக்கப்படவில்லை.", + "description_abbrv" => "பொருள்.", + "discard" => "கைவிடு", + "discard_quote" => "", + "discount" => "தள்ளு", + "discount_included" => "% தள்ளுபடி", + "discount_short" => "%", + "due" => "நிலுவை", + "due_filter" => "நிலுவை", + "edit" => "திருத்து", + "edit_item" => "பொருளை திருத்து", + "edit_sale" => "விற்பனையை திருத்து", + "email_receipt" => "மின்னஞ்சல் ரசீது", + "employee" => "ஊழியர்", + "entry" => "உள்ளீடு", + "error_editing_item" => "பொருளை திருத்துவதில் பிழை", + "find_or_scan_item" => "பொருளைக் தேடு அல்லது ஸ்கேன் செய்யுங்கள்", + "find_or_scan_item_or_receipt" => "தேடு அல்லது பொருளை வருடு அல்லது ரசீது", + "giftcard" => "பரிசு அட்டை", + "giftcard_balance" => "பரிசு அட்டை இருப்பு", + "giftcard_filter" => "", + "giftcard_number" => "பரிசு அட்டை எண்", + "group_by_category" => "வகை வாரியாக", + "group_by_type" => "வகை வாரியாக", + "hsn" => "HSN", + "id" => "விற்பனை எண்", + "include_prices" => "விலைகளைச் சேர்க்கவா?", + "invoice" => "விற்பனைச்சிட்டை", + "invoice_confirm" => "இந்த விற்பனைச்சிட்டை அனுப்பப்படும்", + "invoice_enable" => "விற்பனைச்சிட்டை எண்", + "invoice_filter" => "விற்பனைச்சிட்டைகள்", + "invoice_no_email" => "இந்த வாடிக்கையாளருக்கு சரியான மின்னஞ்சல் முகவரி இல்லை.", + "invoice_number" => "விற்பனைச்சிட்டை #", + "invoice_number_duplicate" => "விற்பனைச்சிட்டை எண் {0} தனித்துவமாக இருக்க வேண்டும்.", + "invoice_sent" => "விற்பனைச்சிட்டை அனுப்பப்பட்டது", + "invoice_total" => "விற்பனைச்சிட்டை மொத்தம்", + "invoice_type_custom_invoice" => "தனிப்பயன் விலைப்பட்டியல் (custom_invoice.php)", + "invoice_type_custom_tax_invoice" => "தனிப்பயன் வரி விலைப்பட்டியல் (custom_tax_invoice.php)", + "invoice_type_invoice" => "விலைப்பட்டியல் (விலைப்பட்டியல். Php)", + "invoice_type_tax_invoice" => "வரி விலைப்பட்டியல் (tax_invoice.php)", + "invoice_unsent" => "விற்பனைச்சிட்டை அனுப்பப்படவில்லை", + "invoice_update" => "மறுபரிசீலனை", + "item_insufficient_of_stock" => "உருப்படிக்கு போதுமான பங்கு இல்லை.", + "item_name" => "பொருளின் பெயர்", + "item_number" => "பொருள் #", + "item_out_of_stock" => "பொருள் கையிருப்பில் இல்லை.", + "key_browser" => "", + "key_cancel" => "Cancels Current Quote/Invoice/Sale", + "key_customer_search" => "Customer Search", + "key_finish_quote" => "Finish Quote/Invoice witdout payment", + "key_finish_sale" => "Add Payment and Complete Invoice/Sale", + "key_full" => "", + "key_function" => "Function", + "key_help" => "Shortcuts", + "key_help_modal" => "Open Shortcuts Window", + "key_in" => "", + "key_item_search" => "Item Search", + "key_out" => "", + "key_payment" => "Add Payment", + "key_print" => "", + "key_restore" => "", + "key_search" => "", + "key_suspend" => "Suspend Current Sale", + "key_suspended" => "Show Suspended Sales", + "key_system" => "", + "key_tendered" => "Edit Amount Tendered", + "key_title" => "Sales Keyboard Shortcuts", + "mc" => "", + "mode" => "சில்லரை வணிகம்", + "must_enter_numeric" => "தொகை ஒரு எண்ணாக இருக்க வேண்டும்.", + "must_enter_numeric_giftcard" => "பரிசு அட்டை எண் ஒரு எண்ணாக இருக்க வேண்டும்.", + "new_customer" => "புது வாடிக்கையாளர்", + "new_item" => "புதிய பொருள்", + "no_description" => "No description", + "no_filter" => "அனைத்தும்", + "no_items_in_cart" => "வண்டியில் எந்த பொருட்களும் இல்லை.", + "no_sales_to_display" => "காண்பிக்க எந்த விற்பனையும் இல்லை.", + "none_selected" => "விற்பனை(களை) நீக்க நீங்கள் எந்தப் பொருட்களையும் தேர்ந்தெடுக்கவில்லை.", + "nontaxed_ind" => " ", + "not_authorized" => "இந்த செயலுக்கு அங்கீகாரம் இல்லை.", + "one_or_multiple" => "விற்பனை(கள்)", + "payment" => "கட்டண வகை", + "payment_amount" => "தொகை", + "payment_not_cover_total" => "கட்டண தொகை மொத்தத்தை விட அதிகமாகவோ அல்லது சமமாகவோ இருக்க வேண்டும்.", + "payment_type" => "Type", + "payments" => "", + "payments_total" => "மொத்தக் கட்டணம்", + "price" => "விலை", + "print_after_sale" => "விற்பனைக்குப் பிறகு அச்சிடு", + "quantity" => "அளவு", + "quantity_less_than_reorder_level" => "எச்சரிக்கை: விரும்பிய அளவு அந்த உருப்படிக்கான மறுவரிசை நிலைக்கு கீழே உள்ளது.", + "quantity_less_than_zero" => "எச்சரிக்கை: விரும்பிய அளவு போதுமானதாக இல்லை. இருப்பினும் நீங்கள் விற்பனையைச் செயல்படுத்தலாம், ஆனால் உங்கள் சரக்குகளைத் தணிக்கை செய்யுங்கள்.", + "quantity_of_items" => "{0} பொருட்களின் அளவு", + "quote" => "விலைப்புள்ளி", + "quote_number" => "விலைப்புள்ளி எண்", + "quote_number_duplicate" => "விலைப்புள்ளி எண் தனித்துவமாக இருக்க வேண்டும்.", + "quote_sent" => "விலைப்புள்ளி அனுப்பப்பட்டது", + "quote_unsent" => "விலைப்புள்ளியை அனுப்ப இயலவில்லை", + "receipt" => "விற்பனை ரசீது", + "receipt_no_email" => "இந்த வாடிக்கையாளருக்கு சரியான மின்னஞ்சல் முகவரி இல்லை.", + "receipt_number" => "விற்பனை #", + "receipt_sent" => "ரசீது அனுப்பப்பட்டது", + "receipt_unsent" => "ரசீதை அனுப்ப இயலவில்லை", + "refund" => "பணத்தைத் திரும்பப்பெறுதல் வகை", + "register" => "விற்பனை பதிவு", + "remove_customer" => "வாடிக்கையாளரை அகற்று", + "remove_discount" => "", + "return" => "Return", + "rewards" => "வெகுமதி புள்ளிகள்", + "rewards_balance" => "வெகுமதி புள்ளிகள் இருப்பு", + "sale" => "விற்பனை", + "sale_by_invoice" => "விலைப்பட்டியல் மூலம் விற்பனை", + "sale_for_customer" => "வாடிக்கையாளர்:", + "sale_time" => "நேரம்", + "sales_tax" => "விற்பனை வரி", + "sales_total" => "", + "select_customer" => "வாடிக்கையாளரைத் தேர்ந்தெடு", + "send_invoice" => "விலைப்பட்டியல் அனுப்பு", + "send_quote" => "விலைப்புள்ளியை அனுப்பு", + "send_receipt" => "ரசீதை அனுப்பு", + "send_work_order" => "பணி ஆணையை அனுப்பவும்", + "serial" => "வரிசை", + "service_charge" => "", + "show_due" => "", + "show_invoice" => "விலைப்பட்டியலைக் காட்டு", + "show_receipt" => "ரசீதைக் காட்டு", + "start_typing_customer_name" => "வாடிக்கையாளர் விவரங்களைத் தட்டச்சு செய்யத் தொடங்கு...", + "start_typing_item_name" => "Start typing Item Name or scan Barcode...", + "stock" => "Stock", + "stock_location" => "Stock Location", + "sub_total" => "Subtotal", + "successfully_deleted" => "You have successfully deleted", + "successfully_restored" => "You have successfully restored", + "successfully_suspended_sale" => "Sale suspend successful.", + "successfully_updated" => "Sale update successful.", + "suspend_sale" => "Suspend", + "suspended_doc_id" => "Document", + "suspended_sale_id" => "ID", + "suspended_sales" => "Suspended", + "table" => "Table", + "takings" => "Daily Sales", + "tax" => "Tax", + "tax_id" => "Tax Id", + "tax_invoice" => "Tax Invoice", + "tax_percent" => "Tax %", + "taxed_ind" => "வ", + "total" => "Total", + "total_tax_exclusive" => "Tax excluded", + "transaction_failed" => "Sales Transaction failed.", + "unable_to_add_item" => "Item add to Sale failed", + "unsuccessfully_deleted" => "Sale(s) delete failed.", + "unsuccessfully_restored" => "Sale(s) restore failed.", + "unsuccessfully_suspended_sale" => "Sale suspend failed.", + "unsuccessfully_updated" => "Sale update failed.", + "unsuspend" => "Unsuspend", + "unsuspend_and_delete" => "Action", + "update" => "Update", + "upi" => "UPI", + "visa" => "", + "wholesale" => "", + "work_order" => "Work Order", + "work_order_number" => "Work Order Number", + "work_order_number_duplicate" => "Work Order Number must be unique.", + "work_order_sent" => "Work Order sent to", + "work_order_unsent" => "Work Order failed to be sent to", ]; diff --git a/app/Language/ta/Suppliers.php b/app/Language/ta/Suppliers.php index 2a8abd6c8..8c5844976 100644 --- a/app/Language/ta/Suppliers.php +++ b/app/Language/ta/Suppliers.php @@ -1,24 +1,24 @@ "Account Number", - "agency_name" => "Agency Name", - "cannot_be_deleted" => "Could not delete selected Supplier(s). One or more have Sales.", - "category" => "Category", - "company_name" => "Company Name", - "company_name_required" => "Company Name is a required field.", - "confirm_delete" => "Are you sure you want to delete the selected Supplier(s)?", - "confirm_restore" => "Are you sure you want to restore selected Supplier(s)?", - "cost" => "Cost Supplier", - "error_adding_updating" => "Supplier update or add failed.", - "goods" => "Goods Supplier", - "new" => "New Supplier", - "none_selected" => "You have not selected Supplier(s) to delete.", - "one_or_multiple" => "Supplier(s)", - "successful_adding" => "You have successfully added Supplier", - "successful_deleted" => "You have successfully deleted", - "successful_updating" => "You have successfully updated Supplier", - "supplier" => "Supplier", - "supplier_id" => "Id", - "tax_id" => "Tax Id", - "update" => "Update Supplier", + "account_number" => "Account Number", + "agency_name" => "Agency Name", + "cannot_be_deleted" => "Could not delete selected Supplier(s). One or more have Sales.", + "category" => "Category", + "company_name" => "Company Name", + "company_name_required" => "Company Name is a required field.", + "confirm_delete" => "Are you sure you want to delete the selected Supplier(s)?", + "confirm_restore" => "Are you sure you want to restore selected Supplier(s)?", + "cost" => "Cost Supplier", + "error_adding_updating" => "Supplier update or add failed.", + "goods" => "Goods Supplier", + "new" => "New Supplier", + "none_selected" => "You have not selected Supplier(s) to delete.", + "one_or_multiple" => "Supplier(s)", + "successful_adding" => "You have successfully added Supplier", + "successful_deleted" => "You have successfully deleted", + "successful_updating" => "You have successfully updated Supplier", + "supplier" => "Supplier", + "supplier_id" => "Id", + "tax_id" => "Tax Id", + "update" => "Update Supplier", ]; diff --git a/app/Language/ta/Taxes.php b/app/Language/ta/Taxes.php index 2c851785a..6aedb5b1d 100644 --- a/app/Language/ta/Taxes.php +++ b/app/Language/ta/Taxes.php @@ -1,82 +1,82 @@ "விதிவிலக்கு சேர்க்கவும்", - "cascade" => "(பல்நிலை) தொடர்பெருக்கி", - "cascade_sequence" => "(பல்நிலை) தொடர்பெருக்கி வரிசை", - "city" => "நகரம்", - "code" => "குறியீடு", - "confirm_delete" => "இந்த வரிக் குறியீட்டை நீக்க விரும்புகிறீர்களா? இந்த செயலை திரும்ப பெற முடியாது", - "confirm_restore" => "தேர்ந்தெடுக்கப்பட்ட வரிக் குறியீட்டை (களை) மீட்டெடுக்க விரும்புகிறீர்களா?", - "default_tax_category" => "இயல்புநிலை வரி வகை", - "default_tax_rate" => "இயல்புநிலை வரி விகிதம்", - "error_adding_updating" => "வரிக் குறியீடு சேர்க்க அல்லது புதுப்பித்தல் தோல்வியுற்றது", - "group_seq" => "குழு வரிசை", - "jurisdiction_name" => "அதிகார வரம்பு பெயர்", - "name" => "பெயர்", - "new" => "புதிய வரி", - "no_taxes" => "", - "no_taxes_to_display" => "காண்பிக்க வரிக் குறியீடு இல்லை", - "reporting_authority" => "அறிக்கை ஆணையம்", - "round_half_down" => "பாதி வரை குறைத்து தோரயமாக்கு", - "round_half_even" => "பாதியை இரட்டைப்படை நோக்கி தோரயமாக்கு", - "round_half_odd" => "பாதியை ஒற்றை படை நோக்கி தோராயமாக்கு", - "round_half_up" => "பாதி முதல் முழுமையாக்கு", - "rounding_code" => "தோராயமாக்கல் குறியீடு", - "sales_tax" => "விற்பனை வரி", - "sales_tax_by_invoice" => "விலைப்பட்டியல் மூலம் விற்பனை வரி", - "sequence" => "வரிசை.", - "state" => "மாநிலம்", - "successful_deleted" => "நீங்கள் வெற்றிகரமாக நீக்கிவிட்டீர்கள்", - "tax_categories" => "வரி வகைகள்", - "tax_categories_configuration" => "Tax Categories Configuration", - "tax_categories_saved_successfully" => "Tax Categories changes saved", - "tax_categories_saved_unsuccessfully" => "Tax Categories changes not saved", - "tax_category" => "Tax Category", - "tax_category_code" => "Tax Category Code", - "tax_category_duplicate" => "Duplicate tax category", - "tax_category_invalid_chars" => "Invalid characters in tax category name", - "tax_category_name" => "Tax Category Name", - "tax_category_new" => "New Tax Category", - "tax_category_required" => "Tax category is required", - "tax_code" => "Tax Code", - "tax_code_cannot_be_deleted" => "Tax Code delete failed", - "tax_code_duplicate" => "Duplicate tax code", - "tax_code_invalid_chars" => "Invalid characters in tax code", - "tax_code_name" => "Tax Code Name", - "tax_code_required" => "Tax Code is a required field", - "tax_code_successful_deleted" => "You have successfully deleted Tax Code", - "tax_code_successful_updated" => "You have successfully updated", - "tax_code_successful_updating" => "You have successfully updated Tax Code", - "tax_code_successfully_added" => "You have successfully added", - "tax_code_type" => "Tax Code Type", - "tax_codes" => "Tax Codes", - "tax_codes_configuration" => "Tax Codes Configuration", - "tax_codes_saved_successfully" => "Tax Code changes saved", - "tax_codes_saved_unsuccessfully" => "Tax Code changes not saved", - "tax_excluded" => "Tax excluded", - "tax_group" => "Tax Group", - "tax_group_not_unique" => "Tax Group {0} is not unique", - "tax_group_sequence" => "Tax Group Sequence", - "tax_included" => "Tax included", - "tax_jurisdiction" => "Tax Jurisdiction", - "tax_jurisdiction_duplicate" => "Duplicate tax jurisdiction", - "tax_jurisdiction_invalid_chars" => "Invalid characters in jurisdiction name", - "tax_jurisdiction_required" => "Tax jurisdiction is required", - "tax_jurisdictions" => "Tax Jurisdictions", - "tax_jurisdictions_configuration" => "Tax Jurisdictions Configuration", - "tax_jurisdictions_saved_successfully" => "Tax Jurisdiction changes saved", - "tax_jurisdictions_saved_unsuccessfully" => "Tax Jurisdiction changes not saved", - "tax_rate" => "Tax Rate", - "tax_rate_configuration" => "Tax Rate Configuration", - "tax_rate_error_adding_updating" => "Tax Rate add or update failed", - "tax_rate_numeric" => "Tax Rate must be a number", - "tax_rate_required" => "Tax Rate is a required field", - "tax_rate_successful_updated" => "You have successfully updated", - "tax_rate_successfully_added" => "You have successfully added", - "tax_rates" => "Tax Rates", - "tax_rates_configuration" => "Tax Rates Configuration", - "tax_rounding" => "Tax Rounding", - "tax_type" => "Tax Type", - "update" => "Update Tax Rate", - "vat_tax" => "VAT Tax", + "add_exception" => "விதிவிலக்கு சேர்க்கவும்", + "cascade" => "(பல்நிலை) தொடர்பெருக்கி", + "cascade_sequence" => "(பல்நிலை) தொடர்பெருக்கி வரிசை", + "city" => "நகரம்", + "code" => "குறியீடு", + "confirm_delete" => "இந்த வரிக் குறியீட்டை நீக்க விரும்புகிறீர்களா? இந்த செயலை திரும்ப பெற முடியாது", + "confirm_restore" => "தேர்ந்தெடுக்கப்பட்ட வரிக் குறியீட்டை (களை) மீட்டெடுக்க விரும்புகிறீர்களா?", + "default_tax_category" => "இயல்புநிலை வரி வகை", + "default_tax_rate" => "இயல்புநிலை வரி விகிதம்", + "error_adding_updating" => "வரிக் குறியீடு சேர்க்க அல்லது புதுப்பித்தல் தோல்வியுற்றது", + "group_seq" => "குழு வரிசை", + "jurisdiction_name" => "அதிகார வரம்பு பெயர்", + "name" => "பெயர்", + "new" => "புதிய வரி", + "no_taxes" => "", + "no_taxes_to_display" => "காண்பிக்க வரிக் குறியீடு இல்லை", + "reporting_authority" => "அறிக்கை ஆணையம்", + "round_half_down" => "பாதி வரை குறைத்து தோரயமாக்கு", + "round_half_even" => "பாதியை இரட்டைப்படை நோக்கி தோரயமாக்கு", + "round_half_odd" => "பாதியை ஒற்றை படை நோக்கி தோராயமாக்கு", + "round_half_up" => "பாதி முதல் முழுமையாக்கு", + "rounding_code" => "தோராயமாக்கல் குறியீடு", + "sales_tax" => "விற்பனை வரி", + "sales_tax_by_invoice" => "விலைப்பட்டியல் மூலம் விற்பனை வரி", + "sequence" => "வரிசை.", + "state" => "மாநிலம்", + "successful_deleted" => "நீங்கள் வெற்றிகரமாக நீக்கிவிட்டீர்கள்", + "tax_categories" => "வரி வகைகள்", + "tax_categories_configuration" => "Tax Categories Configuration", + "tax_categories_saved_successfully" => "Tax Categories changes saved", + "tax_categories_saved_unsuccessfully" => "Tax Categories changes not saved", + "tax_category" => "Tax Category", + "tax_category_code" => "Tax Category Code", + "tax_category_duplicate" => "Duplicate tax category", + "tax_category_invalid_chars" => "Invalid characters in tax category name", + "tax_category_name" => "Tax Category Name", + "tax_category_new" => "New Tax Category", + "tax_category_required" => "Tax category is required", + "tax_code" => "Tax Code", + "tax_code_cannot_be_deleted" => "Tax Code delete failed", + "tax_code_duplicate" => "Duplicate tax code", + "tax_code_invalid_chars" => "Invalid characters in tax code", + "tax_code_name" => "Tax Code Name", + "tax_code_required" => "Tax Code is a required field", + "tax_code_successful_deleted" => "You have successfully deleted Tax Code", + "tax_code_successful_updated" => "You have successfully updated", + "tax_code_successful_updating" => "You have successfully updated Tax Code", + "tax_code_successfully_added" => "You have successfully added", + "tax_code_type" => "Tax Code Type", + "tax_codes" => "Tax Codes", + "tax_codes_configuration" => "Tax Codes Configuration", + "tax_codes_saved_successfully" => "Tax Code changes saved", + "tax_codes_saved_unsuccessfully" => "Tax Code changes not saved", + "tax_excluded" => "Tax excluded", + "tax_group" => "Tax Group", + "tax_group_not_unique" => "Tax Group {0} is not unique", + "tax_group_sequence" => "Tax Group Sequence", + "tax_included" => "Tax included", + "tax_jurisdiction" => "Tax Jurisdiction", + "tax_jurisdiction_duplicate" => "Duplicate tax jurisdiction", + "tax_jurisdiction_invalid_chars" => "Invalid characters in jurisdiction name", + "tax_jurisdiction_required" => "Tax jurisdiction is required", + "tax_jurisdictions" => "Tax Jurisdictions", + "tax_jurisdictions_configuration" => "Tax Jurisdictions Configuration", + "tax_jurisdictions_saved_successfully" => "Tax Jurisdiction changes saved", + "tax_jurisdictions_saved_unsuccessfully" => "Tax Jurisdiction changes not saved", + "tax_rate" => "Tax Rate", + "tax_rate_configuration" => "Tax Rate Configuration", + "tax_rate_error_adding_updating" => "Tax Rate add or update failed", + "tax_rate_numeric" => "Tax Rate must be a number", + "tax_rate_required" => "Tax Rate is a required field", + "tax_rate_successful_updated" => "You have successfully updated", + "tax_rate_successfully_added" => "You have successfully added", + "tax_rates" => "Tax Rates", + "tax_rates_configuration" => "Tax Rates Configuration", + "tax_rounding" => "Tax Rounding", + "tax_type" => "Tax Type", + "update" => "Update Tax Rate", + "vat_tax" => "VAT Tax", ]; diff --git a/app/Language/ta/index.html b/app/Language/ta/index.html index b702fbc39..69df4e1df 100644 --- a/app/Language/ta/index.html +++ b/app/Language/ta/index.html @@ -1,7 +1,7 @@ - 403 Forbidden + 403 Forbidden diff --git a/app/Language/th/Attributes.php b/app/Language/th/Attributes.php index 8c10a0cbd..bb6543ab4 100644 --- a/app/Language/th/Attributes.php +++ b/app/Language/th/Attributes.php @@ -1,32 +1,32 @@ "คุณลักษณะไม่สามารถมีเครื่องหมาย ':' หรือเครื่องหมาย '|' ได้", - "confirm_delete" => "ต้องการลบคุณลักษณะที่เลือกหรือไม่ ?", - "confirm_restore" => "ต้องการคืนค่าคุณลักษณะที่เลือกหรือไม่ ?", - "definition_cannot_be_deleted" => "ไม่สามารถลบคุณลักษณะที่เลือก", - "definition_error_adding_updating" => "ไม่สามารถเพิ่มหรือแก้ไขคุณลักษณะ {0}, โปรดตรวจสอบความผิดพลาดในบันทึก", - "definition_flags" => "การมองเห็นคุณลักษณะ", - "definition_group" => "กลุ่ม", - "definition_id" => "ID", - "definition_name" => "เพิ่มแอตทริบิวต์", - "definition_name_required" => "ชื่อแอตทริบิวต์ จำเป็นต้องป้อน", - "definition_one_or_multiple" => "แอตทริบิวต์", - "definition_successful_adding" => "เพิ่มรายการสำเร็จแล้ว", - "definition_successful_deleted" => "ลบรายการสำเร็จแล้ว", - "definition_successful_updating" => "อัปเดตแอตทริบิวต์สำเร็จแล้ว", - "definition_type" => "ประเภทแอตทริบิวต์", - "definition_type_required" => "ประเภทแอตทริบิวต์ จำเป็นต้องป้อน", - "definition_unit" => "หน่วยวัด", - "definition_values" => "ค่าแอตทริบิวต์", - "new" => "สร้าง แอตทริบิวต์", - "no_attributes_to_display" => "ไม่มีรายการที่จะแสดง", - "receipt_visibility" => "ใบเสร็จ", - "show_in_items" => "แสดงใน รายการสินค้า", - "show_in_items_visibility" => "รายการสินค้า", - "show_in_receipt" => "แสดงใน ใบเสร็จ", - "show_in_receivings" => "แสดงใน สินค้าขาเข้า", - "show_in_receivings_visibility" => "สินค้าขาเข้า", - "show_in_sales" => "แสดงใน การขาย", - "show_in_sales_visibility" => "การขาย", - "update" => "ปรับปรุงแอตทริบิวต์", + "attribute_value_invalid_chars" => "คุณลักษณะไม่สามารถมีเครื่องหมาย ':' หรือเครื่องหมาย '|' ได้", + "confirm_delete" => "ต้องการลบคุณลักษณะที่เลือกหรือไม่ ?", + "confirm_restore" => "ต้องการคืนค่าคุณลักษณะที่เลือกหรือไม่ ?", + "definition_cannot_be_deleted" => "ไม่สามารถลบคุณลักษณะที่เลือก", + "definition_error_adding_updating" => "ไม่สามารถเพิ่มหรือแก้ไขคุณลักษณะ {0}, โปรดตรวจสอบความผิดพลาดในบันทึก", + "definition_flags" => "การมองเห็นคุณลักษณะ", + "definition_group" => "กลุ่ม", + "definition_id" => "ID", + "definition_name" => "เพิ่มแอตทริบิวต์", + "definition_name_required" => "ชื่อแอตทริบิวต์ จำเป็นต้องป้อน", + "definition_one_or_multiple" => "แอตทริบิวต์", + "definition_successful_adding" => "เพิ่มรายการสำเร็จแล้ว", + "definition_successful_deleted" => "ลบรายการสำเร็จแล้ว", + "definition_successful_updating" => "อัปเดตแอตทริบิวต์สำเร็จแล้ว", + "definition_type" => "ประเภทแอตทริบิวต์", + "definition_type_required" => "ประเภทแอตทริบิวต์ จำเป็นต้องป้อน", + "definition_unit" => "หน่วยวัด", + "definition_values" => "ค่าแอตทริบิวต์", + "new" => "สร้าง แอตทริบิวต์", + "no_attributes_to_display" => "ไม่มีรายการที่จะแสดง", + "receipt_visibility" => "ใบเสร็จ", + "show_in_items" => "แสดงใน รายการสินค้า", + "show_in_items_visibility" => "รายการสินค้า", + "show_in_receipt" => "แสดงใน ใบเสร็จ", + "show_in_receivings" => "แสดงใน สินค้าขาเข้า", + "show_in_receivings_visibility" => "สินค้าขาเข้า", + "show_in_sales" => "แสดงใน การขาย", + "show_in_sales_visibility" => "การขาย", + "update" => "ปรับปรุงแอตทริบิวต์", ]; diff --git a/app/Language/th/Bootstrap_tables.php b/app/Language/th/Bootstrap_tables.php index 380aeb9d8..9f4674f64 100644 --- a/app/Language/th/Bootstrap_tables.php +++ b/app/Language/th/Bootstrap_tables.php @@ -1,11 +1,11 @@ "ทั้งหมด", - "columns" => "คอลัมน์", - "hide_show_pagination" => "ซ่อน/แสดง รายการหน้า", - "loading" => "กำลังดำเนินการ รอสักครู่", - "page_from_to" => "แสดง {0} ถึง {1} จาก {2} รายการ", - "refresh" => "Refresh ข้อมูล", - "rows_per_page" => "{0} รายการ/หน้า", - "toggle" => "ซ่อน/แสดง", + "all" => "ทั้งหมด", + "columns" => "คอลัมน์", + "hide_show_pagination" => "ซ่อน/แสดง รายการหน้า", + "loading" => "กำลังดำเนินการ รอสักครู่", + "page_from_to" => "แสดง {0} ถึง {1} จาก {2} รายการ", + "refresh" => "Refresh ข้อมูล", + "rows_per_page" => "{0} รายการ/หน้า", + "toggle" => "ซ่อน/แสดง", ]; diff --git a/app/Language/th/Calendar.php b/app/Language/th/Calendar.php index 70719869a..102f5041a 100644 --- a/app/Language/th/Calendar.php +++ b/app/Language/th/Calendar.php @@ -1,48 +1,48 @@ "อา.", - "mo" => "จ.", - "tu" => "อ.", - "we" => "พ.", - "th" => "พฤ.", - "fr" => "ศ.", - "sa" => "ส.", - "sun" => "อา.", - "mon" => "จ.", - "tue" => "อ.", - "wed" => "พ.", - "thu" => "พฤ.", - "fri" => "ศ.", - "sat" => "ส.", - "sunday" => "อาทิตย์", - "monday" => "จันทร์", - "tuesday" => "อังคาร", - "wednesday" => "พุธ", - "thursday" => "พฤหัสบดี", - "friday" => "ศุกร์", - "saturday" => "เสาร์", - "jan" => "ม.ค.", - "feb" => "ก.พ.", - "mar" => "มี.ค.", - "apr" => "เม.ย.", - "may" => "พ.ค.", - "jun" => "มิ.ย.", - "jul" => "ก.ค.", - "aug" => "ส.ค.", - "sep" => "ก.ย.", - "oct" => "ต.ค.", - "nov" => "พ.ย.", - "dec" => "ธ.ค.", - "january" => "มกราคม", - "february" => "กุมภาพันธ์", - "march" => "มีนาคม", - "april" => "เมษายน", - "mayl" => "พฤษภาคม", - "june" => "มิถุนายน", - "july" => "กรกฎาคม", - "august" => "สิงหาคม", - "september" => "กันยายน", - "october" => "ตุลาคม", - "november" => "พฤศจิกายน", - "december" => "ธันวาคม", + "su" => "อา.", + "mo" => "จ.", + "tu" => "อ.", + "we" => "พ.", + "th" => "พฤ.", + "fr" => "ศ.", + "sa" => "ส.", + "sun" => "อา.", + "mon" => "จ.", + "tue" => "อ.", + "wed" => "พ.", + "thu" => "พฤ.", + "fri" => "ศ.", + "sat" => "ส.", + "sunday" => "อาทิตย์", + "monday" => "จันทร์", + "tuesday" => "อังคาร", + "wednesday" => "พุธ", + "thursday" => "พฤหัสบดี", + "friday" => "ศุกร์", + "saturday" => "เสาร์", + "jan" => "ม.ค.", + "feb" => "ก.พ.", + "mar" => "มี.ค.", + "apr" => "เม.ย.", + "may" => "พ.ค.", + "jun" => "มิ.ย.", + "jul" => "ก.ค.", + "aug" => "ส.ค.", + "sep" => "ก.ย.", + "oct" => "ต.ค.", + "nov" => "พ.ย.", + "dec" => "ธ.ค.", + "january" => "มกราคม", + "february" => "กุมภาพันธ์", + "march" => "มีนาคม", + "april" => "เมษายน", + "mayl" => "พฤษภาคม", + "june" => "มิถุนายน", + "july" => "กรกฎาคม", + "august" => "สิงหาคม", + "september" => "กันยายน", + "october" => "ตุลาคม", + "november" => "พฤศจิกายน", + "december" => "ธันวาคม", ]; diff --git a/app/Language/th/Cashups.php b/app/Language/th/Cashups.php index 26356c2b4..e1cfa4fe1 100644 --- a/app/Language/th/Cashups.php +++ b/app/Language/th/Cashups.php @@ -1,49 +1,49 @@ "ยอดรวม", - "amount_number" => "ยอดรวม ต้องเป็นตัวเลข", - "amount_required" => "ยอดรวม จำเป็นต้องป้อน", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "ไม่สามารถลบ ยอดรับเงินสด", - "cash_difference" => "", - "close_date" => "วันที่ปิดยอด", - "close_employee" => "ปิดยอดโดย", - "closed_amount_card" => "ชำระด้วยบัตร", - "closed_amount_cash" => "ยอดเงินสด", - "closed_amount_check" => "ชำระด้วยเช็ค", - "closed_amount_due" => "ยอดค้างชำระ", - "closed_amount_giftcard" => "", - "closed_amount_total" => "รวม", - "closed_date" => "วันที่ปิดยอด", - "confirm_delete" => "ต้องการลบ ยอดรับเงินสด ที่เลือกหรือไม่ ?", - "confirm_restore" => "ต้องการเรียกคืน ยอดรับเงินสด ที่เลือกหรือไม่ ?", - "confirm_submit" => "", - "date_number" => "วันที่ ต้องเป็นตัวเลข", - "date_required" => "วันที่ จำเป็นต้องป้อน", - "description" => "รายละเอียด", - "enable_expected" => "", - "error_adding_updating" => "เกิดข้อผิดพลาด การเพิ่ม/ปรับปรุง ยอดรับเงินสด", - "giftcard" => "", - "id" => "ID", - "info" => "ข้อมูล ยอดรับเงินสด", - "info_employee" => "", - "is_deleted" => "ลบ", - "new" => "สร้าง ยอดรับเงินสด", - "no_cashups_to_display" => "ไม่มี ยอดรับเงินสด ที่จะแสดง", - "none_selected" => "ยังไม่ได้เลือกรายการ ยอดรับเงินสด", - "note" => "หมายเหตุ", - "one_or_multiple" => "รายการ ยอดรับเงินสด", - "open_amount_cash" => "ยอดที่เปิด", - "open_date" => "วันที่เปิดยอด", - "open_employee" => "เปิดยอดโดย", - "opened_date" => "วันที่เปิดยอด", - "successful_adding" => "เพิ่ม ยอดรับเงินสด สำเร็จแล้ว", - "successful_deleted" => "ลบ ยอดรับเงินสด เรียบร้อยแล้ว", - "successful_updating" => "ปรับปรุง ยอดรับเงินสด เรียบร้อยแล้ว", - "total" => "รวม", - "transfer_amount_cash" => "เงินสด เข้า/ออก", - "transfer_amount_cash_minus" => "", - "update" => "ปรับปรุง ยอดรับเงินสด", - "warning" => "", + "amount" => "ยอดรวม", + "amount_number" => "ยอดรวม ต้องเป็นตัวเลข", + "amount_required" => "ยอดรวม จำเป็นต้องป้อน", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "ไม่สามารถลบ ยอดรับเงินสด", + "cash_difference" => "", + "close_date" => "วันที่ปิดยอด", + "close_employee" => "ปิดยอดโดย", + "closed_amount_card" => "ชำระด้วยบัตร", + "closed_amount_cash" => "ยอดเงินสด", + "closed_amount_check" => "ชำระด้วยเช็ค", + "closed_amount_due" => "ยอดค้างชำระ", + "closed_amount_giftcard" => "", + "closed_amount_total" => "รวม", + "closed_date" => "วันที่ปิดยอด", + "confirm_delete" => "ต้องการลบ ยอดรับเงินสด ที่เลือกหรือไม่ ?", + "confirm_restore" => "ต้องการเรียกคืน ยอดรับเงินสด ที่เลือกหรือไม่ ?", + "confirm_submit" => "", + "date_number" => "วันที่ ต้องเป็นตัวเลข", + "date_required" => "วันที่ จำเป็นต้องป้อน", + "description" => "รายละเอียด", + "enable_expected" => "", + "error_adding_updating" => "เกิดข้อผิดพลาด การเพิ่ม/ปรับปรุง ยอดรับเงินสด", + "giftcard" => "", + "id" => "ID", + "info" => "ข้อมูล ยอดรับเงินสด", + "info_employee" => "", + "is_deleted" => "ลบ", + "new" => "สร้าง ยอดรับเงินสด", + "no_cashups_to_display" => "ไม่มี ยอดรับเงินสด ที่จะแสดง", + "none_selected" => "ยังไม่ได้เลือกรายการ ยอดรับเงินสด", + "note" => "หมายเหตุ", + "one_or_multiple" => "รายการ ยอดรับเงินสด", + "open_amount_cash" => "ยอดที่เปิด", + "open_date" => "วันที่เปิดยอด", + "open_employee" => "เปิดยอดโดย", + "opened_date" => "วันที่เปิดยอด", + "successful_adding" => "เพิ่ม ยอดรับเงินสด สำเร็จแล้ว", + "successful_deleted" => "ลบ ยอดรับเงินสด เรียบร้อยแล้ว", + "successful_updating" => "ปรับปรุง ยอดรับเงินสด เรียบร้อยแล้ว", + "total" => "รวม", + "transfer_amount_cash" => "เงินสด เข้า/ออก", + "transfer_amount_cash_minus" => "", + "update" => "ปรับปรุง ยอดรับเงินสด", + "warning" => "", ]; diff --git a/app/Language/th/Config.php b/app/Language/th/Config.php index 294578f32..a991a31ab 100644 --- a/app/Language/th/Config.php +++ b/app/Language/th/Config.php @@ -1,330 +1,330 @@ "ที่อยู่", - "address_required" => "ที่อยู่ต้องกรอก", - "all_set" => "การตั้งค่าอนุญาตไฟล์ทั้งหมดถูกต้อง!", - "allow_duplicate_barcodes" => "อนุญาตบาร์โค้ดที่ซ้ำกัน", - "apostrophe" => "อัญประกาศเดี่ยว '", - "backup_button" => "สำรองข้อมูล", - "backup_database" => "สำรองฐานข้อมูล", - "barcode" => "ตั้งค่าระบบบาร์โค้ด", - "barcode_company" => "ชื่อร้านค้า", - "barcode_configuration" => "ตั้งค่าระบบบาร์โค้ด", - "barcode_content" => "รหัสที่พิมพ์", - "barcode_first_row" => "แถว 1", - "barcode_font" => "แบบอักษร", - "barcode_formats" => "รูปแบบอินพุต", - "barcode_generate_if_empty" => "Generate if empty", - "barcode_height" => "สูง (px)", - "barcode_id" => "รหัสสินค้า/ชื่อสินค้า", - "barcode_info" => "ตั้งค่าบาร์โค้ด", - "barcode_layout" => "โครงร่างการพิมพ์", - "barcode_name" => "สินค้า", - "barcode_number" => "UPC/EAN/ISBN", - "barcode_number_in_row" => "จำนวนดวงใน 1 แถว", - "barcode_page_cellspacing" => "ระยะห่างต่อดวง", - "barcode_page_width" => "ความกว้างในหน้า", - "barcode_price" => "ราคา", - "barcode_second_row" => "แถว 2", - "barcode_third_row" => "แถว 3", - "barcode_tooltip" => "คำเตือน: คุณสมบัตินี้สามารถทำให้เกิดรายการที่ซ้ำกันที่จะนำเข้าหรือสร้าง ห้ามใช้หากคุณไม่ต้องการบาร์โค้ดที่ซ้ำกัน", - "barcode_type" => "ประเภทบาร์โค้ด", - "barcode_width" => "กว้าง (px)", - "bottom" => "ด้านล่าง", - "cash_button" => "", - "cash_button_1" => "", - "cash_button_2" => "", - "cash_button_3" => "", - "cash_button_4" => "", - "cash_button_5" => "", - "cash_button_6" => "", - "cash_decimals" => "ทศนิยมแบบการเงินสด", - "cash_decimals_tooltip" => "ถ้าทศนิยมแบบเงินสดและทศนิยมแบบสกุลเงินเหมือนกันจะไม่มีการปัดเศษเงินสด", - "cash_rounding" => "การปัดเศษทางการเงิน", - "category_dropdown" => "แสดงกลุ่มเป็นแบบดรอปดาวน์", - "center" => "กึ่งกลาง", - "change_apperance_tooltip" => "", - "comma" => "จุลภาค", - "company" => "ชื่อร้านค้า", - "company_avatar" => "", - "company_change_image" => "เปลี่ยนรูป", - "company_logo" => "ภาพโลโก้", - "company_remove_image" => "ลบรูป", - "company_required" => "ชื่อร้านค้าต้องกรอก", - "company_select_image" => "เลือกรูป", - "company_website_url" => "ที่อยู่เว็บไซต์ร้านค้าไม่ถูกต้อง (เช่น http://...)", - "country_codes" => "รหัสประเทศ", - "country_codes_tooltip" => "รายการรหัสประเทศที่คั่นด้วยคอมม่าสำหรับการค้นหาโดยชื่อที่อยู่", - "currency_code" => "รหัสสกุลเงิน", - "currency_decimals" => "ทศนิยมแบบการเงิน", - "currency_symbol" => "สัญลักษณ์ค่าเงิน", - "current_employee_only" => "", - "customer_reward" => "รางวัล", - "customer_reward_duplicate" => "รางวัลต้องไม่ซ้ำกัน", - "customer_reward_enable" => "เปิดใช้งานรางวัลของลูกค้า", - "customer_reward_invalid_chars" => "รางวัลไม่สามารถมี '_' ได้", - "customer_reward_required" => "รางวัลเป็นฟิลด์บังคับ", - "customer_sales_tax_support" => "", - "date_or_time_format" => "ตัวกรองวันที่และเวลา", - "datetimeformat" => "รูปแบบวันและเวลา", - "decimal_point" => "จุดทศนิยม", - "default_barcode_font_size_number" => "ค่าบาร์โค้ดจะต้องเป็นตัวเลข", - "default_barcode_font_size_required" => "ต้องระบุขนาดตัวบาร์โค้ดเริ่มต้น", - "default_barcode_height_number" => "ความสูงของบาร์โค้ดต้องเป็นตัวเลข", - "default_barcode_height_required" => "ต้องระบุความสูงของบาร์โค้ด", - "default_barcode_num_in_row_number" => "บาร์โค้ดในแถวจะต้องเป็นตัวเลข", - "default_barcode_num_in_row_required" => "ต้องระบุค่าบาร์โค้ด", - "default_barcode_page_cellspacing_number" => "The default barcode page cellspacing must be a number", - "default_barcode_page_cellspacing_required" => "The default barcode page cellspacing is a required field", - "default_barcode_page_width_number" => "The default barcode page width must be a number", - "default_barcode_page_width_required" => "The default barcode page width is a required field", - "default_barcode_width_number" => "The default barcode width must be a number", - "default_barcode_width_required" => "The default barcode width is a required field", - "default_item_columns" => "คอลัมน์รายการที่แสดงเป็นค่าเริ่มต้น", - "default_origin_tax_code" => "รหัสภาษีที่เป็นค่าเริ่มต้น", - "default_receivings_discount" => "ส่วนลดที่เป็นค่าเริ่มต้นที่จะได้รับ", - "default_receivings_discount_number" => "การรับส่วนลดที่เป็นค่าเริ่มต้นต้องเป็นตัวเลข", - "default_receivings_discount_required" => "การรับส่วนลดที่เป็นค่าเริ่มต้นจำเป็นต้องระบุ", - "default_sales_discount" => "ส่วนลดการขายที่เป็นค่าเริ่มต้น", - "default_sales_discount_number" => "ส่วนลดการขายเริ่มต้นจะต้องเป็นตัวเลข", - "default_sales_discount_required" => "ส่วนลดการขายเริ่มต้นเป็นจำเป็นต้องมีข้อมูล", - "default_tax_category" => "หมวดหมู่ภาษีที่เป็นค่าเริ่มต้น", - "default_tax_code" => "รหัสภาษีที่เป็นค่าเริ่มต้น", - "default_tax_jurisdiction" => "เขตพื้นที่กฎหมายภาษีที่เป็นค่าเริ่มต้น", - "default_tax_name_number" => "ชื่อภาษีที่เป็นค่าเริ่มต้นจะต้องเป็นตัวอักษร", - "default_tax_name_required" => "ชื่อภาษีเริ่มต้นจำเป็นต้องมีข้อมูล", - "default_tax_rate" => "อัตราภาษีเริ่มต้น %", - "default_tax_rate_1" => "อัตราภาษีลำดับที่ 1", - "default_tax_rate_2" => "อัตราภาษีลำดับที่ 2", - "default_tax_rate_3" => "", - "default_tax_rate_number" => "อัตราภาษีเริ่มต้นต้องเป็นตัวเลข", - "default_tax_rate_required" => "อัตราภาษีเริ่มต้นต้องกรอก", - "derive_sale_quantity" => "จำนวนปริมาณการขายที่ได้รับ", - "derive_sale_quantity_tooltip" => "หากทำเครื่องหมาย ระบบจะระบุประเภทรายการใหม่สำหรับรายการตามจำนวนที่เพิ่มขึ้น", - "dinner_table" => "โต๊ะ", - "dinner_table_duplicate" => "โต๊ะจะต้องไม่ซ้ำกัน", - "dinner_table_enable" => "เปิดใช้งานบริการโต๊ะนั่งทาน", - "dinner_table_invalid_chars" => "ชื่อโต๊ะจะต้องไม่มีเครื่องหมาย '_' อยู่", - "dinner_table_required" => "โต๊ะจำเป็นต้องระบุค่า", - "dot" => "จุด", - "email" => "อีเมล์", - "email_configuration" => "ตั้งค่าอีเมล์", - "email_mailpath" => "ที่อยู่ส่งเมล์", - "email_protocol" => "โปรโตคอล", - "email_receipt_check_behaviour" => "ทำเครื่องหมายรับอีเมล", - "email_receipt_check_behaviour_always" => "ตรวจสอบอยู่เสมอ", - "email_receipt_check_behaviour_last" => "จำการเลือกสุดท้าย", - "email_receipt_check_behaviour_never" => "ไม่ถูกตรวจสอบเสมอ", - "email_smtp_crypto" => "การเข้ารหัสของเอสเอ็มทีพี", - "email_smtp_host" => "เซอร์เวอร์เอสเอ็มทีพี", - "email_smtp_pass" => "รหัสผ่านเอสเอ็มทีพี", - "email_smtp_port" => "เอสเอ็มทีพีพอร์ต", - "email_smtp_timeout" => "ระยะเวลารอคอยของเอสเอ็มทีพี", - "email_smtp_user" => "ชื่อผู้ใช้งานของเอสเอ็มทีพี", - "enable_avatar" => "", - "enable_avatar_tooltip" => "", - "enable_dropdown_tooltip" => "", - "enable_new_look" => "", - "enable_right_bar" => "", - "enable_right_bar_tooltip" => "", - "enforce_privacy" => "บังคับความเป็นส่วนตัว", - "enforce_privacy_tooltip" => "ปกป้องความเป็นส่วนตัวของลูกค้าที่บังคับใช้การตรวจข้อมูลในกรณีที่ข้อมูลถูกลบ", - "fax" => "แฟ็กซ์", - "file_perm" => "มีปัญหาเกี่ยวกับการอนุญาตของไฟล์ โปรดแก้ไขและโหลดหน้านี้ใหม่อีกครั้ง", - "financial_year" => "เริ่มปีงบประมาณ", - "financial_year_apr" => "วันที่ 1 เมษายน", - "financial_year_aug" => "วันที่ 1 สิงหาคม", - "financial_year_dec" => "วันที่ 1 ธันวาคม", - "financial_year_feb" => "วันที่ 1 กุมภาพันธ์", - "financial_year_jan" => "วันที่ 1 มกราคม", - "financial_year_jul" => "วันที่ 1 กรกฏาคม", - "financial_year_jun" => "วันที่ 1 มิถุนายน", - "financial_year_mar" => "วันที่ 1 มีนาคม", - "financial_year_may" => "วันที่ 1 พฤษภาคม", - "financial_year_nov" => "วันที่ 1 พฤศจิกายน", - "financial_year_oct" => "วันที่ 1 ตุลาคม", - "financial_year_sep" => "วันที่ 1 กันยายน", - "floating_labels" => "แสดงตัวเลข", - "gcaptcha_enable" => "ขอรหัสยืนยันใหม่ เพื่อเข้าระบบ", - "gcaptcha_secret_key" => "รหัสลับ สำหรับรหัสยืนยัน", - "gcaptcha_secret_key_required" => "จำเป็นต้องระบุ รหัสลับ สำหรับรหัสยืนยัน", - "gcaptcha_site_key" => "รหัสของเว็บเพจ สำหรับรหัสยืนยัน", - "gcaptcha_site_key_required" => "จำเป็นต้องระบุ รหัสของเว็บเพจ สำหรับรหัสยืนยัน", - "gcaptcha_tooltip" => "ปกป้องการเข้าสู่ระบบด้วย reCAPTCHA โปรดคลิกที่ไอคอนเพื่อรับ API key pair", - "general" => "การตั้งค่า", - "general_configuration" => "ตั้งค่าทั่วไป", - "giftcard_number" => "เลขที่บัตรของขวัญ", - "giftcard_random" => "สร้างหมายเลขแบบสุ่ม", - "giftcard_series" => "สร้างหมายเลขตามลำดับ", - "image_allowed_file_types" => "ประเภทไฟล์ที่ยอมรับ", - "image_max_height_tooltip" => "ค่าพิกเซลความสูงของรูปที่ยอมให้แนบไฟล์ได้", - "image_max_size_tooltip" => "ขนาดของไฟล์รูปที่ยอมให้แนบไฟล์ได้ในขนาดกิโลไบต์(kb.)", - "image_max_width_tooltip" => "ค่าพิกเซลความยาวของรูปที่ยอมให้แนบไฟล์ได้", - "image_restrictions" => "ข้อจำกัดของไฟล์รูปที่แนบ", - "include_hsn" => "เพิ่มการรองรับ HSN Codes", - "info" => "ข้อมูลร้านค้า", - "info_configuration" => "ข้อมูลร้านค้า", - "input_groups" => "นำเข้าแบบกลุ่ม", - "integrations" => "การเข้าร่วม", - "integrations_configuration" => "การเข้าร่วมกับบุคคลภายนอก", - "invoice" => "ใบแจ้งหนี้", - "invoice_configuration" => "ตั้งค่าการพิมพ์ใบแจ้งหนี้", - "invoice_default_comments" => "ค่าเริ่มต้นหมายเหตุในใบแจ้งหนี้", - "invoice_email_message" => "ต้นแบบใบแจ้งหนี้ (Email)", - "invoice_enable" => "เปิดการออกใบแจ้งหนี้", - "invoice_printer" => "เครื่องพิมพ์สำหรับการออกใบแจ้งหนี้", - "invoice_type" => "ชนิดของใบแจ้งหนี้", - "is_readable" => "สามารถอ่านได้ แต่สิทธิ์ไม่ถูกต้อง กรุณาตั้งค่าเป็น 640 หรือ 660 แล้วโหลดใหม่อีกครั้ง", - "is_writable" => "สามารถเขียนข้อมูลได้ แต่สิทธิ์ไม่ถูกต้อง ต้องสูงกว่าค่า 750 กรุณาตั้งค่าเป็น 750 แล้วโหลดใหม่อีกครั้ง", - "item_markup" => "", - "jsprintsetup_required" => "คำเตือน! ฟังก์ชันการทำงานที่ถูกปิดอยู่ จะสามารถใช้งานได้เมื่อติดตั้ง FireFox jsPrintSetup แล้วเท่านั้น, จะบันทึกข้อมูลหรือไม่?", - "language" => "ภาษา", - "last_used_invoice_number" => "หมายเลขใบแจ้งหนี้ฉบับล่าสุด", - "last_used_quote_number" => "หมายเลขใบเสนอราคาฉบับล่าสุด", - "last_used_work_order_number" => "หมายเลข W/O ฉบับล่าสุด", - "left" => "ซ้าย", - "license" => "ใบอนุญาต", - "license_configuration" => "รายละเอียดใบอนุญาต", - "line_sequence" => "เลขที่บรรทัด", - "lines_per_page" => "จำนวนบรรทัด/หน้า", - "lines_per_page_number" => "จำนวนบรรทัด/หน้า จะต้องเป็นตัวเลข", - "lines_per_page_required" => "จำเป็นต้องป้อน จำนวนบรรทัด/หน้า", - "locale" => "เขตพื้นที่", - "locale_configuration" => "ตั้งค่าเขตพื้นที่", - "locale_info" => "ข้อมูลเขตพื้นที่", - "location" => "สินค้าคงคลัง", - "location_configuration" => "ตำแหน่งสินค้าคงคลัง", - "location_info" => "ข้อมูลตำแหน่งสินค้าคงคลัง", - "login_form" => "รูปแบบแบบฟอร์มการเข้าระบบ", - "logout" => "ต้องการสำรองข้อมูลก่อนออกจากระบบหรือไม่? [OK] สำรองข้อมูล / [Cancel] ออกจากระบบ", - "mailchimp" => "ระบบส่งอีเมล์เมล์ชิม", - "mailchimp_api_key" => "API Key สำหรับระบบส่งอีเมล์เมล์ชิม", - "mailchimp_configuration" => "ตั้งค่าระบบส่งอีเมล์เมล์ชิม", - "mailchimp_key_successfully" => "API Key ถูกต้อง", - "mailchimp_key_unsuccessfully" => "API Key ไม่ถูกต้อง", - "mailchimp_lists" => "รายการระบบส่งอีเมล์เมล์ชิม", - "mailchimp_tooltip" => "คลิกที่ไอคอนเพื่อรับ API Key", - "message" => "ข้อความ", - "message_configuration" => "ตั้งค่าข้อความ", - "msg_msg" => "ข้อความที่ถูกบักทึกไว้", - "msg_msg_placeholder" => "สร้างข้อความ SMS template ที่นี่", - "msg_pwd" => "รหัสผ่านของ SMS-API", - "msg_pwd_required" => "จำเป็นต้องป้อน รหัสผ่านของ SMS-API", - "msg_src" => "ID ผู้ส่ง (SMS-API)", - "msg_src_required" => "จำเป็นต้องป้อน ID ผู้ส่ง", - "msg_uid" => "ชื่อผู้ใช้งานระบบ SMS-API", - "msg_uid_required" => "จำเป็นต้องป้อน ชื่อผู้ใช้งานระบบ SMS-API", - "multi_pack_enabled" => "หนึ่งรายการมีหลายชิ้น", - "no_risk" => "ไม่มีความเสี่ยงด้านความปลอดภัย / ความเสี่ยง", - "none" => "none", - "notify_alignment" => "แจ้งตำแหน่งแสดงการแจ้งเตือน", - "number_format" => "รูปแบบตัวเลข", - "number_locale" => "Localisation", - "number_locale_invalid" => "The entered locale is invalid. Check the link in the tooltip to find a sensible value", - "number_locale_required" => "Number Locale is a required field", - "number_locale_tooltip" => "Find a suitable locale through this link", - "os_timezone" => "เขตเวลาของระบบ OSPOS:", - "ospos_info" => "ข้อมูลการติดตั้งระบบ OSPOS", - "payment_options_order" => "ตัวเลือกการชำระเงิน", - "perm_risk" => "การอนุญาตที่ไม่ถูกต้องทำให้ซอฟต์แวร์นี้ตกอยู่ในความเสี่ยง", - "phone" => "เบอร์โทรศัพท์", - "phone_required" => "เบอร์โทรต้องกรอก", - "print_bottom_margin" => "ขอบล่าง", - "print_bottom_margin_number" => "The default bottom margin must be a number", - "print_bottom_margin_required" => "The default bottom margin is a required field", - "print_delay_autoreturn" => "การส่งกลับอัตโนมัติของการขายที่ล่าช้า", - "print_delay_autoreturn_number" => "การส่งกลับอัตโนมัติของการขายที่ล่าช้าจำเป็นต้องระบุ", - "print_delay_autoreturn_required" => "การส่งกลับอัตโนมัติของการขายที่ล่าช้าต้องระบุเป็นตัวเลข", - "print_footer" => "พิมพ์ส่วนท้ายของเบราว์เซอร์", - "print_header" => "พิมพ์ส่วนหัวของเบราว์เซอร์", - "print_left_margin" => "ขอบด้านซ้าย", - "print_left_margin_number" => "ขอบด้านซ้ายค่าเริ่มต้นต้องเป็นตัวเลข", - "print_left_margin_required" => "จำเป็นต้องระบุขอบด้านซ้าย", - "print_receipt_check_behaviour" => "กล่องพิมพ์ใบเสร็จรับเงิน", - "print_receipt_check_behaviour_always" => "เลือกไว้ตลอด", - "print_receipt_check_behaviour_last" => "จดจำการเลือกสุดท้ายไว้", - "print_receipt_check_behaviour_never" => "ไม่เลือกไว้ตลอด", - "print_right_margin" => "ขอบด้านขวา", - "print_right_margin_number" => "ขอบด้านขวาค่าเริ่มต้นต้องเป็นตัวเลข", - "print_right_margin_required" => "ต้องระบุขอบด้านขวา", - "print_silently" => "แสดงกล่องโต้ตอบการพิมพ์", - "print_top_margin" => "ขอบด้านบน", - "print_top_margin_number" => "ขอบด้านบนค่าเริ่มต้นจะต้องเป็นตัวเลข", - "print_top_margin_required" => "ต้องระบุขอบด้านบน", - "quantity_decimals" => "ทศนิยมจำนวน", - "quick_cash_enable" => "", - "quote_default_comments" => "ค่าปริยายของความคิดเห็น", - "receipt" => "ใบเสร็จ", - "receipt_category" => "", - "receipt_configuration" => "ตั้งค่าใบเสร็จ", - "receipt_default" => "ค่าเริ่มต้น", - "receipt_font_size" => "ขนาดของตัวอักษร", - "receipt_font_size_number" => "ขนาดตัวอักษรต้องเป็นตัวเลข", - "receipt_font_size_required" => "จำเป็นต้องระบุขนาดตัวอักษร", - "receipt_info" => "ข้อมูลการตั้งค่าใบเสร็จ", - "receipt_printer" => "เครื่องพิมพ์ตั๋ว", - "receipt_short" => "สั้น", - "receipt_show_company_name" => "แสดงชื่อบริษัท", - "receipt_show_description" => "แสดงรายละเอียด", - "receipt_show_serialnumber" => "แสดงหมายเลขซีเรียล", - "receipt_show_tax_ind" => "แสดงอัตราภาษี", - "receipt_show_taxes" => "แสดงภาษี", - "receipt_show_total_discount" => "แสดงส่วนลดทั้งหมด", - "receipt_template" => "ต้นแบบใบเสร็จ", - "receiving_calculate_average_price" => "คำนวณราคาเฉลี่ย (ได้รับมา)", - "recv_invoice_format" => "ใบส่งของ", - "register_mode_default" => "ค่าปริยายรูปแบบการลงทะเบียน", - "report_an_issue" => "รายงานปัญหา", - "return_policy_required" => "ต้องกรอกเงื่อนไขการคืนสินค้า", - "reward" => "คะแนนสะสม", - "reward_configuration" => "การตั้งค่าคะแนนสะสม", - "right" => "ถูกต้อง", - "sales_invoice_format" => "รหัสใบเสร็จ", - "sales_quote_format" => "รูปแบบใบเสนอราคาขาย", - "saved_successfully" => "บันทึกข้อมูลร้านค้าเรียบร้อยแล้ว", - "saved_unsuccessfully" => "บันทึกข้อมูลร้านค้าไม่สำเร็จ", - "security_issue" => "คำเตือนช่องโหว่ด้านความปลอดภัย", - "server_notice" => "โปรดใช้ข้อมูลด้านล่างสำหรับการรายงานปัญหา", - "service_charge" => "", - "show_due_enable" => "", - "show_office_group" => "แสดงไอคอนสำนักงาน", - "statistics" => "ส่งยอดสถิติ", - "statistics_tooltip" => "ส่งข้อมูลสถิติเพื่อการพัฒนาและปรับปรุงความสามารถ", - "stock_location" => "สถานที่เก็บ", - "stock_location_duplicate" => "ที่ตั้งคลังสินค้าต้องไม่ซ้ำกัน", - "stock_location_invalid_chars" => "ชื่อสต๊อกสถานที่เก็บสินค้าต้องไม่มีอักษรพิเศษ '_'", - "stock_location_required" => "จำเป็นต้องระบุสถานที่เก็บ", - "suggestions_fifth_column" => "", - "suggestions_first_column" => "คอลัมน์ 1", - "suggestions_fourth_column" => "", - "suggestions_layout" => "รูปแบบข้อแนะนำในการค้นหา", - "suggestions_second_column" => "คอลัมน์ 2", - "suggestions_third_column" => "คอลัมน์ 3", - "system_conf" => "การตั้งค่าและกำหนดค่า", - "system_info" => "System Info", - "table" => "โต๊ะนั่งทาน", - "table_configuration" => "ตั้งค่าโต๊ะนั่งทาน", - "takings_printer" => "เลือกเครื่องพิมพ์", - "tax" => "ภาษี", - "tax_category" => "หมวดหมู่ภาษี", - "tax_category_duplicate" => "หมวดหมู่ภาษีที่ป้อน ซ้ำกับข้อมูลที่มีอยู่", - "tax_category_invalid_chars" => "หมวดหมู่ภาษีที่ป้อน ไม่ถูกต้อง", - "tax_category_required" => "หมวดหมู่ภาษี จำเป็นต้องป้อน", - "tax_category_used" => "ไม่สามารถลบ หมวดหมู่ภาษี ที่กำลังมีการใช้งานอยู่", - "tax_configuration" => "ตั้งค่าระบบภาษี", - "tax_decimals" => "จำนวนทศนิยมภาษี", - "tax_id" => "เลขประจำตัวผู้เสียภาษี", - "tax_included" => "รวมภาษีแล้ว", - "theme" => "Theme", - "theme_preview" => "ดูตัวอย่างธีม:", - "thousands_separator" => "ตัวคั่นหลักพัน", - "timezone" => "โซนเวลา", - "timezone_error" => "เขตเวลาของระบบ OSPOS แตกต่างกับเขตเวลาปัจจุบันของคุณ", - "top" => "ด้านบน", - "use_destination_based_tax" => "เปิดใช้ Destination-Based Tax", - "user_timezone" => "เขตเวลาปัจจุบัน:", - "website" => "เว็บไซต์", - "wholesale_markup" => "", - "work_order_enable" => "เปิดใช้ ใบสั่งงาน (WO)", - "work_order_format" => "รูปแบบ ใบสั่งงาน (WO)", + "address" => "ที่อยู่", + "address_required" => "ที่อยู่ต้องกรอก", + "all_set" => "การตั้งค่าอนุญาตไฟล์ทั้งหมดถูกต้อง!", + "allow_duplicate_barcodes" => "อนุญาตบาร์โค้ดที่ซ้ำกัน", + "apostrophe" => "อัญประกาศเดี่ยว '", + "backup_button" => "สำรองข้อมูล", + "backup_database" => "สำรองฐานข้อมูล", + "barcode" => "ตั้งค่าระบบบาร์โค้ด", + "barcode_company" => "ชื่อร้านค้า", + "barcode_configuration" => "ตั้งค่าระบบบาร์โค้ด", + "barcode_content" => "รหัสที่พิมพ์", + "barcode_first_row" => "แถว 1", + "barcode_font" => "แบบอักษร", + "barcode_formats" => "รูปแบบอินพุต", + "barcode_generate_if_empty" => "Generate if empty", + "barcode_height" => "สูง (px)", + "barcode_id" => "รหัสสินค้า/ชื่อสินค้า", + "barcode_info" => "ตั้งค่าบาร์โค้ด", + "barcode_layout" => "โครงร่างการพิมพ์", + "barcode_name" => "สินค้า", + "barcode_number" => "UPC/EAN/ISBN", + "barcode_number_in_row" => "จำนวนดวงใน 1 แถว", + "barcode_page_cellspacing" => "ระยะห่างต่อดวง", + "barcode_page_width" => "ความกว้างในหน้า", + "barcode_price" => "ราคา", + "barcode_second_row" => "แถว 2", + "barcode_third_row" => "แถว 3", + "barcode_tooltip" => "คำเตือน: คุณสมบัตินี้สามารถทำให้เกิดรายการที่ซ้ำกันที่จะนำเข้าหรือสร้าง ห้ามใช้หากคุณไม่ต้องการบาร์โค้ดที่ซ้ำกัน", + "barcode_type" => "ประเภทบาร์โค้ด", + "barcode_width" => "กว้าง (px)", + "bottom" => "ด้านล่าง", + "cash_button" => "", + "cash_button_1" => "", + "cash_button_2" => "", + "cash_button_3" => "", + "cash_button_4" => "", + "cash_button_5" => "", + "cash_button_6" => "", + "cash_decimals" => "ทศนิยมแบบการเงินสด", + "cash_decimals_tooltip" => "ถ้าทศนิยมแบบเงินสดและทศนิยมแบบสกุลเงินเหมือนกันจะไม่มีการปัดเศษเงินสด", + "cash_rounding" => "การปัดเศษทางการเงิน", + "category_dropdown" => "แสดงกลุ่มเป็นแบบดรอปดาวน์", + "center" => "กึ่งกลาง", + "change_apperance_tooltip" => "", + "comma" => "จุลภาค", + "company" => "ชื่อร้านค้า", + "company_avatar" => "", + "company_change_image" => "เปลี่ยนรูป", + "company_logo" => "ภาพโลโก้", + "company_remove_image" => "ลบรูป", + "company_required" => "ชื่อร้านค้าต้องกรอก", + "company_select_image" => "เลือกรูป", + "company_website_url" => "ที่อยู่เว็บไซต์ร้านค้าไม่ถูกต้อง (เช่น http://...)", + "country_codes" => "รหัสประเทศ", + "country_codes_tooltip" => "รายการรหัสประเทศที่คั่นด้วยคอมม่าสำหรับการค้นหาโดยชื่อที่อยู่", + "currency_code" => "รหัสสกุลเงิน", + "currency_decimals" => "ทศนิยมแบบการเงิน", + "currency_symbol" => "สัญลักษณ์ค่าเงิน", + "current_employee_only" => "", + "customer_reward" => "รางวัล", + "customer_reward_duplicate" => "รางวัลต้องไม่ซ้ำกัน", + "customer_reward_enable" => "เปิดใช้งานรางวัลของลูกค้า", + "customer_reward_invalid_chars" => "รางวัลไม่สามารถมี '_' ได้", + "customer_reward_required" => "รางวัลเป็นฟิลด์บังคับ", + "customer_sales_tax_support" => "", + "date_or_time_format" => "ตัวกรองวันที่และเวลา", + "datetimeformat" => "รูปแบบวันและเวลา", + "decimal_point" => "จุดทศนิยม", + "default_barcode_font_size_number" => "ค่าบาร์โค้ดจะต้องเป็นตัวเลข", + "default_barcode_font_size_required" => "ต้องระบุขนาดตัวบาร์โค้ดเริ่มต้น", + "default_barcode_height_number" => "ความสูงของบาร์โค้ดต้องเป็นตัวเลข", + "default_barcode_height_required" => "ต้องระบุความสูงของบาร์โค้ด", + "default_barcode_num_in_row_number" => "บาร์โค้ดในแถวจะต้องเป็นตัวเลข", + "default_barcode_num_in_row_required" => "ต้องระบุค่าบาร์โค้ด", + "default_barcode_page_cellspacing_number" => "The default barcode page cellspacing must be a number", + "default_barcode_page_cellspacing_required" => "The default barcode page cellspacing is a required field", + "default_barcode_page_width_number" => "The default barcode page width must be a number", + "default_barcode_page_width_required" => "The default barcode page width is a required field", + "default_barcode_width_number" => "The default barcode width must be a number", + "default_barcode_width_required" => "The default barcode width is a required field", + "default_item_columns" => "คอลัมน์รายการที่แสดงเป็นค่าเริ่มต้น", + "default_origin_tax_code" => "รหัสภาษีที่เป็นค่าเริ่มต้น", + "default_receivings_discount" => "ส่วนลดที่เป็นค่าเริ่มต้นที่จะได้รับ", + "default_receivings_discount_number" => "การรับส่วนลดที่เป็นค่าเริ่มต้นต้องเป็นตัวเลข", + "default_receivings_discount_required" => "การรับส่วนลดที่เป็นค่าเริ่มต้นจำเป็นต้องระบุ", + "default_sales_discount" => "ส่วนลดการขายที่เป็นค่าเริ่มต้น", + "default_sales_discount_number" => "ส่วนลดการขายเริ่มต้นจะต้องเป็นตัวเลข", + "default_sales_discount_required" => "ส่วนลดการขายเริ่มต้นเป็นจำเป็นต้องมีข้อมูล", + "default_tax_category" => "หมวดหมู่ภาษีที่เป็นค่าเริ่มต้น", + "default_tax_code" => "รหัสภาษีที่เป็นค่าเริ่มต้น", + "default_tax_jurisdiction" => "เขตพื้นที่กฎหมายภาษีที่เป็นค่าเริ่มต้น", + "default_tax_name_number" => "ชื่อภาษีที่เป็นค่าเริ่มต้นจะต้องเป็นตัวอักษร", + "default_tax_name_required" => "ชื่อภาษีเริ่มต้นจำเป็นต้องมีข้อมูล", + "default_tax_rate" => "อัตราภาษีเริ่มต้น %", + "default_tax_rate_1" => "อัตราภาษีลำดับที่ 1", + "default_tax_rate_2" => "อัตราภาษีลำดับที่ 2", + "default_tax_rate_3" => "", + "default_tax_rate_number" => "อัตราภาษีเริ่มต้นต้องเป็นตัวเลข", + "default_tax_rate_required" => "อัตราภาษีเริ่มต้นต้องกรอก", + "derive_sale_quantity" => "จำนวนปริมาณการขายที่ได้รับ", + "derive_sale_quantity_tooltip" => "หากทำเครื่องหมาย ระบบจะระบุประเภทรายการใหม่สำหรับรายการตามจำนวนที่เพิ่มขึ้น", + "dinner_table" => "โต๊ะ", + "dinner_table_duplicate" => "โต๊ะจะต้องไม่ซ้ำกัน", + "dinner_table_enable" => "เปิดใช้งานบริการโต๊ะนั่งทาน", + "dinner_table_invalid_chars" => "ชื่อโต๊ะจะต้องไม่มีเครื่องหมาย '_' อยู่", + "dinner_table_required" => "โต๊ะจำเป็นต้องระบุค่า", + "dot" => "จุด", + "email" => "อีเมล์", + "email_configuration" => "ตั้งค่าอีเมล์", + "email_mailpath" => "ที่อยู่ส่งเมล์", + "email_protocol" => "โปรโตคอล", + "email_receipt_check_behaviour" => "ทำเครื่องหมายรับอีเมล", + "email_receipt_check_behaviour_always" => "ตรวจสอบอยู่เสมอ", + "email_receipt_check_behaviour_last" => "จำการเลือกสุดท้าย", + "email_receipt_check_behaviour_never" => "ไม่ถูกตรวจสอบเสมอ", + "email_smtp_crypto" => "การเข้ารหัสของเอสเอ็มทีพี", + "email_smtp_host" => "เซอร์เวอร์เอสเอ็มทีพี", + "email_smtp_pass" => "รหัสผ่านเอสเอ็มทีพี", + "email_smtp_port" => "เอสเอ็มทีพีพอร์ต", + "email_smtp_timeout" => "ระยะเวลารอคอยของเอสเอ็มทีพี", + "email_smtp_user" => "ชื่อผู้ใช้งานของเอสเอ็มทีพี", + "enable_avatar" => "", + "enable_avatar_tooltip" => "", + "enable_dropdown_tooltip" => "", + "enable_new_look" => "", + "enable_right_bar" => "", + "enable_right_bar_tooltip" => "", + "enforce_privacy" => "บังคับความเป็นส่วนตัว", + "enforce_privacy_tooltip" => "ปกป้องความเป็นส่วนตัวของลูกค้าที่บังคับใช้การตรวจข้อมูลในกรณีที่ข้อมูลถูกลบ", + "fax" => "แฟ็กซ์", + "file_perm" => "มีปัญหาเกี่ยวกับการอนุญาตของไฟล์ โปรดแก้ไขและโหลดหน้านี้ใหม่อีกครั้ง", + "financial_year" => "เริ่มปีงบประมาณ", + "financial_year_apr" => "วันที่ 1 เมษายน", + "financial_year_aug" => "วันที่ 1 สิงหาคม", + "financial_year_dec" => "วันที่ 1 ธันวาคม", + "financial_year_feb" => "วันที่ 1 กุมภาพันธ์", + "financial_year_jan" => "วันที่ 1 มกราคม", + "financial_year_jul" => "วันที่ 1 กรกฏาคม", + "financial_year_jun" => "วันที่ 1 มิถุนายน", + "financial_year_mar" => "วันที่ 1 มีนาคม", + "financial_year_may" => "วันที่ 1 พฤษภาคม", + "financial_year_nov" => "วันที่ 1 พฤศจิกายน", + "financial_year_oct" => "วันที่ 1 ตุลาคม", + "financial_year_sep" => "วันที่ 1 กันยายน", + "floating_labels" => "แสดงตัวเลข", + "gcaptcha_enable" => "ขอรหัสยืนยันใหม่ เพื่อเข้าระบบ", + "gcaptcha_secret_key" => "รหัสลับ สำหรับรหัสยืนยัน", + "gcaptcha_secret_key_required" => "จำเป็นต้องระบุ รหัสลับ สำหรับรหัสยืนยัน", + "gcaptcha_site_key" => "รหัสของเว็บเพจ สำหรับรหัสยืนยัน", + "gcaptcha_site_key_required" => "จำเป็นต้องระบุ รหัสของเว็บเพจ สำหรับรหัสยืนยัน", + "gcaptcha_tooltip" => "ปกป้องการเข้าสู่ระบบด้วย reCAPTCHA โปรดคลิกที่ไอคอนเพื่อรับ API key pair", + "general" => "การตั้งค่า", + "general_configuration" => "ตั้งค่าทั่วไป", + "giftcard_number" => "เลขที่บัตรของขวัญ", + "giftcard_random" => "สร้างหมายเลขแบบสุ่ม", + "giftcard_series" => "สร้างหมายเลขตามลำดับ", + "image_allowed_file_types" => "ประเภทไฟล์ที่ยอมรับ", + "image_max_height_tooltip" => "ค่าพิกเซลความสูงของรูปที่ยอมให้แนบไฟล์ได้", + "image_max_size_tooltip" => "ขนาดของไฟล์รูปที่ยอมให้แนบไฟล์ได้ในขนาดกิโลไบต์(kb.)", + "image_max_width_tooltip" => "ค่าพิกเซลความยาวของรูปที่ยอมให้แนบไฟล์ได้", + "image_restrictions" => "ข้อจำกัดของไฟล์รูปที่แนบ", + "include_hsn" => "เพิ่มการรองรับ HSN Codes", + "info" => "ข้อมูลร้านค้า", + "info_configuration" => "ข้อมูลร้านค้า", + "input_groups" => "นำเข้าแบบกลุ่ม", + "integrations" => "การเข้าร่วม", + "integrations_configuration" => "การเข้าร่วมกับบุคคลภายนอก", + "invoice" => "ใบแจ้งหนี้", + "invoice_configuration" => "ตั้งค่าการพิมพ์ใบแจ้งหนี้", + "invoice_default_comments" => "ค่าเริ่มต้นหมายเหตุในใบแจ้งหนี้", + "invoice_email_message" => "ต้นแบบใบแจ้งหนี้ (Email)", + "invoice_enable" => "เปิดการออกใบแจ้งหนี้", + "invoice_printer" => "เครื่องพิมพ์สำหรับการออกใบแจ้งหนี้", + "invoice_type" => "ชนิดของใบแจ้งหนี้", + "is_readable" => "สามารถอ่านได้ แต่สิทธิ์ไม่ถูกต้อง กรุณาตั้งค่าเป็น 640 หรือ 660 แล้วโหลดใหม่อีกครั้ง", + "is_writable" => "สามารถเขียนข้อมูลได้ แต่สิทธิ์ไม่ถูกต้อง ต้องสูงกว่าค่า 750 กรุณาตั้งค่าเป็น 750 แล้วโหลดใหม่อีกครั้ง", + "item_markup" => "", + "jsprintsetup_required" => "คำเตือน! ฟังก์ชันการทำงานที่ถูกปิดอยู่ จะสามารถใช้งานได้เมื่อติดตั้ง FireFox jsPrintSetup แล้วเท่านั้น, จะบันทึกข้อมูลหรือไม่?", + "language" => "ภาษา", + "last_used_invoice_number" => "หมายเลขใบแจ้งหนี้ฉบับล่าสุด", + "last_used_quote_number" => "หมายเลขใบเสนอราคาฉบับล่าสุด", + "last_used_work_order_number" => "หมายเลข W/O ฉบับล่าสุด", + "left" => "ซ้าย", + "license" => "ใบอนุญาต", + "license_configuration" => "รายละเอียดใบอนุญาต", + "line_sequence" => "เลขที่บรรทัด", + "lines_per_page" => "จำนวนบรรทัด/หน้า", + "lines_per_page_number" => "จำนวนบรรทัด/หน้า จะต้องเป็นตัวเลข", + "lines_per_page_required" => "จำเป็นต้องป้อน จำนวนบรรทัด/หน้า", + "locale" => "เขตพื้นที่", + "locale_configuration" => "ตั้งค่าเขตพื้นที่", + "locale_info" => "ข้อมูลเขตพื้นที่", + "location" => "สินค้าคงคลัง", + "location_configuration" => "ตำแหน่งสินค้าคงคลัง", + "location_info" => "ข้อมูลตำแหน่งสินค้าคงคลัง", + "login_form" => "รูปแบบแบบฟอร์มการเข้าระบบ", + "logout" => "ต้องการสำรองข้อมูลก่อนออกจากระบบหรือไม่? [OK] สำรองข้อมูล / [Cancel] ออกจากระบบ", + "mailchimp" => "ระบบส่งอีเมล์เมล์ชิม", + "mailchimp_api_key" => "API Key สำหรับระบบส่งอีเมล์เมล์ชิม", + "mailchimp_configuration" => "ตั้งค่าระบบส่งอีเมล์เมล์ชิม", + "mailchimp_key_successfully" => "API Key ถูกต้อง", + "mailchimp_key_unsuccessfully" => "API Key ไม่ถูกต้อง", + "mailchimp_lists" => "รายการระบบส่งอีเมล์เมล์ชิม", + "mailchimp_tooltip" => "คลิกที่ไอคอนเพื่อรับ API Key", + "message" => "ข้อความ", + "message_configuration" => "ตั้งค่าข้อความ", + "msg_msg" => "ข้อความที่ถูกบักทึกไว้", + "msg_msg_placeholder" => "สร้างข้อความ SMS template ที่นี่", + "msg_pwd" => "รหัสผ่านของ SMS-API", + "msg_pwd_required" => "จำเป็นต้องป้อน รหัสผ่านของ SMS-API", + "msg_src" => "ID ผู้ส่ง (SMS-API)", + "msg_src_required" => "จำเป็นต้องป้อน ID ผู้ส่ง", + "msg_uid" => "ชื่อผู้ใช้งานระบบ SMS-API", + "msg_uid_required" => "จำเป็นต้องป้อน ชื่อผู้ใช้งานระบบ SMS-API", + "multi_pack_enabled" => "หนึ่งรายการมีหลายชิ้น", + "no_risk" => "ไม่มีความเสี่ยงด้านความปลอดภัย / ความเสี่ยง", + "none" => "none", + "notify_alignment" => "แจ้งตำแหน่งแสดงการแจ้งเตือน", + "number_format" => "รูปแบบตัวเลข", + "number_locale" => "Localisation", + "number_locale_invalid" => "The entered locale is invalid. Check the link in the tooltip to find a sensible value", + "number_locale_required" => "Number Locale is a required field", + "number_locale_tooltip" => "Find a suitable locale through this link", + "os_timezone" => "เขตเวลาของระบบ OSPOS:", + "ospos_info" => "ข้อมูลการติดตั้งระบบ OSPOS", + "payment_options_order" => "ตัวเลือกการชำระเงิน", + "perm_risk" => "การอนุญาตที่ไม่ถูกต้องทำให้ซอฟต์แวร์นี้ตกอยู่ในความเสี่ยง", + "phone" => "เบอร์โทรศัพท์", + "phone_required" => "เบอร์โทรต้องกรอก", + "print_bottom_margin" => "ขอบล่าง", + "print_bottom_margin_number" => "The default bottom margin must be a number", + "print_bottom_margin_required" => "The default bottom margin is a required field", + "print_delay_autoreturn" => "การส่งกลับอัตโนมัติของการขายที่ล่าช้า", + "print_delay_autoreturn_number" => "การส่งกลับอัตโนมัติของการขายที่ล่าช้าจำเป็นต้องระบุ", + "print_delay_autoreturn_required" => "การส่งกลับอัตโนมัติของการขายที่ล่าช้าต้องระบุเป็นตัวเลข", + "print_footer" => "พิมพ์ส่วนท้ายของเบราว์เซอร์", + "print_header" => "พิมพ์ส่วนหัวของเบราว์เซอร์", + "print_left_margin" => "ขอบด้านซ้าย", + "print_left_margin_number" => "ขอบด้านซ้ายค่าเริ่มต้นต้องเป็นตัวเลข", + "print_left_margin_required" => "จำเป็นต้องระบุขอบด้านซ้าย", + "print_receipt_check_behaviour" => "กล่องพิมพ์ใบเสร็จรับเงิน", + "print_receipt_check_behaviour_always" => "เลือกไว้ตลอด", + "print_receipt_check_behaviour_last" => "จดจำการเลือกสุดท้ายไว้", + "print_receipt_check_behaviour_never" => "ไม่เลือกไว้ตลอด", + "print_right_margin" => "ขอบด้านขวา", + "print_right_margin_number" => "ขอบด้านขวาค่าเริ่มต้นต้องเป็นตัวเลข", + "print_right_margin_required" => "ต้องระบุขอบด้านขวา", + "print_silently" => "แสดงกล่องโต้ตอบการพิมพ์", + "print_top_margin" => "ขอบด้านบน", + "print_top_margin_number" => "ขอบด้านบนค่าเริ่มต้นจะต้องเป็นตัวเลข", + "print_top_margin_required" => "ต้องระบุขอบด้านบน", + "quantity_decimals" => "ทศนิยมจำนวน", + "quick_cash_enable" => "", + "quote_default_comments" => "ค่าปริยายของความคิดเห็น", + "receipt" => "ใบเสร็จ", + "receipt_category" => "", + "receipt_configuration" => "ตั้งค่าใบเสร็จ", + "receipt_default" => "ค่าเริ่มต้น", + "receipt_font_size" => "ขนาดของตัวอักษร", + "receipt_font_size_number" => "ขนาดตัวอักษรต้องเป็นตัวเลข", + "receipt_font_size_required" => "จำเป็นต้องระบุขนาดตัวอักษร", + "receipt_info" => "ข้อมูลการตั้งค่าใบเสร็จ", + "receipt_printer" => "เครื่องพิมพ์ตั๋ว", + "receipt_short" => "สั้น", + "receipt_show_company_name" => "แสดงชื่อบริษัท", + "receipt_show_description" => "แสดงรายละเอียด", + "receipt_show_serialnumber" => "แสดงหมายเลขซีเรียล", + "receipt_show_tax_ind" => "แสดงอัตราภาษี", + "receipt_show_taxes" => "แสดงภาษี", + "receipt_show_total_discount" => "แสดงส่วนลดทั้งหมด", + "receipt_template" => "ต้นแบบใบเสร็จ", + "receiving_calculate_average_price" => "คำนวณราคาเฉลี่ย (ได้รับมา)", + "recv_invoice_format" => "ใบส่งของ", + "register_mode_default" => "ค่าปริยายรูปแบบการลงทะเบียน", + "report_an_issue" => "รายงานปัญหา", + "return_policy_required" => "ต้องกรอกเงื่อนไขการคืนสินค้า", + "reward" => "คะแนนสะสม", + "reward_configuration" => "การตั้งค่าคะแนนสะสม", + "right" => "ถูกต้อง", + "sales_invoice_format" => "รหัสใบเสร็จ", + "sales_quote_format" => "รูปแบบใบเสนอราคาขาย", + "saved_successfully" => "บันทึกข้อมูลร้านค้าเรียบร้อยแล้ว", + "saved_unsuccessfully" => "บันทึกข้อมูลร้านค้าไม่สำเร็จ", + "security_issue" => "คำเตือนช่องโหว่ด้านความปลอดภัย", + "server_notice" => "โปรดใช้ข้อมูลด้านล่างสำหรับการรายงานปัญหา", + "service_charge" => "", + "show_due_enable" => "", + "show_office_group" => "แสดงไอคอนสำนักงาน", + "statistics" => "ส่งยอดสถิติ", + "statistics_tooltip" => "ส่งข้อมูลสถิติเพื่อการพัฒนาและปรับปรุงความสามารถ", + "stock_location" => "สถานที่เก็บ", + "stock_location_duplicate" => "ที่ตั้งคลังสินค้าต้องไม่ซ้ำกัน", + "stock_location_invalid_chars" => "ชื่อสต๊อกสถานที่เก็บสินค้าต้องไม่มีอักษรพิเศษ '_'", + "stock_location_required" => "จำเป็นต้องระบุสถานที่เก็บ", + "suggestions_fifth_column" => "", + "suggestions_first_column" => "คอลัมน์ 1", + "suggestions_fourth_column" => "", + "suggestions_layout" => "รูปแบบข้อแนะนำในการค้นหา", + "suggestions_second_column" => "คอลัมน์ 2", + "suggestions_third_column" => "คอลัมน์ 3", + "system_conf" => "การตั้งค่าและกำหนดค่า", + "system_info" => "System Info", + "table" => "โต๊ะนั่งทาน", + "table_configuration" => "ตั้งค่าโต๊ะนั่งทาน", + "takings_printer" => "เลือกเครื่องพิมพ์", + "tax" => "ภาษี", + "tax_category" => "หมวดหมู่ภาษี", + "tax_category_duplicate" => "หมวดหมู่ภาษีที่ป้อน ซ้ำกับข้อมูลที่มีอยู่", + "tax_category_invalid_chars" => "หมวดหมู่ภาษีที่ป้อน ไม่ถูกต้อง", + "tax_category_required" => "หมวดหมู่ภาษี จำเป็นต้องป้อน", + "tax_category_used" => "ไม่สามารถลบ หมวดหมู่ภาษี ที่กำลังมีการใช้งานอยู่", + "tax_configuration" => "ตั้งค่าระบบภาษี", + "tax_decimals" => "จำนวนทศนิยมภาษี", + "tax_id" => "เลขประจำตัวผู้เสียภาษี", + "tax_included" => "รวมภาษีแล้ว", + "theme" => "Theme", + "theme_preview" => "ดูตัวอย่างธีม:", + "thousands_separator" => "ตัวคั่นหลักพัน", + "timezone" => "โซนเวลา", + "timezone_error" => "เขตเวลาของระบบ OSPOS แตกต่างกับเขตเวลาปัจจุบันของคุณ", + "top" => "ด้านบน", + "use_destination_based_tax" => "เปิดใช้ Destination-Based Tax", + "user_timezone" => "เขตเวลาปัจจุบัน:", + "website" => "เว็บไซต์", + "wholesale_markup" => "", + "work_order_enable" => "เปิดใช้ ใบสั่งงาน (WO)", + "work_order_format" => "รูปแบบ ใบสั่งงาน (WO)", ]; diff --git a/app/Language/th/Customers.php b/app/Language/th/Customers.php index 2241394cf..d731e8206 100644 --- a/app/Language/th/Customers.php +++ b/app/Language/th/Customers.php @@ -1,56 +1,56 @@ "บัญชี #", - "account_number_duplicate" => "This account number is already present in the database", - "available_points" => "คะแนนที่มี", - "available_points_value" => "", - "average" => "ใช้จ่ายเฉลี่ย", - "avg_discount" => "ส่วนลดเฉลี่ย", - "basic_information" => "ข้อมูล", - "cannot_be_deleted" => "ไม่สามารลบลูกค้าที่ถูกเลือก, ลูกค้าที่ถูกเลือกถูขายไปแล้ว.", - "company_name" => "บริษัท", - "confirm_delete" => "ยืนยันลบข้อมูลลูกค้า?", - "confirm_restore" => "คุณแน่ใจใช่ไหมว่าต้องการกู้คืนลูกค้าที่เลือก ?", - "consent" => "ความยินยอมในการลงทะเบียน", - "consent_required" => "ความยินยอมในการลงทะเบียนต้องระบุข้อมูล", - "csv_import_failed" => "นำเข้าข้อมูล CSV ล้มเหลว", - "csv_import_nodata_wrongformat" => "Your uploaded file has no data or wrong format", - "csv_import_partially_failed" => "นำเข้าลูกค้าประสบความสำเร็จแต่มีข้อผิดพลาดบางอย่าง :", - "csv_import_success" => "Import of Customers successful", - "customer" => "ลูกค้า", - "date" => "วันที่", - "discount" => "ส่วนลด", - "discount_fixed" => "ส่วนลดคงที่", - "discount_percent" => "ส่วนลดแบบร้อยละ", - "discount_type" => "ประเภทส่วนลด", - "email_duplicate" => "มีที่อยู่อีเมลนี้ในฐานข้อมูลแล้ว", - "employee" => "พนักงาน", - "error_adding_updating" => "แก้ไขข้อมูลลูกค้าผิดพลาด", - "import_items_csv" => "Import customers from CSV sheet", - "mailchimp_activity_click" => "คลิ๊กอีเมล", - "mailchimp_activity_lastopen" => "อีเมลที่เปิดล่าสุด", - "mailchimp_activity_open" => "เปิดอีเมล", - "mailchimp_activity_total" => "ส่งอีเมล", - "mailchimp_activity_unopen" => "ไม่เปิดอีเมล", - "mailchimp_email_client" => "โปรแกรมรับส่งเมล", - "mailchimp_info" => "ระบบส่งอีเมล์ชิม", - "mailchimp_member_rating" => "ระดับ", - "mailchimp_status" => "สถานะ", - "mailchimp_vip" => "วีไอพี", - "max" => "การใช้จ่ายสูงสุด", - "min" => "การใช้จ่ายน้อยที่สุด", - "new" => "ลูกค้าใหม่", - "none_selected" => "คุณยังไม่ได้ทำการเลือกลูกค้า", - "one_or_multiple" => "ลูกค้า", - "quantity" => "ปริมาณ", - "stats_info" => "สถิติ", - "successful_adding" => "คุณได้ทำการเพิ่มลูกค้าเรียบร้อยแล้ว", - "successful_deleted" => "คุณได้ทำการลบข้อมูลเรียบร้อยแล้ว", - "successful_updating" => "คุณได้ทำการแก้ไขข้อมูลลูกค้าเรียบร้อยแล้ว", - "tax_code" => "รหัสภาษี", - "tax_id" => "ไอดีภาษี", - "taxable" => "ต้องเสียภาษี", - "total" => "Total", - "update" => "แก้ไขข้อมูลลูกค้า", - "rewards_package" => "แพคเกจรางวัล", + "account_number" => "บัญชี #", + "account_number_duplicate" => "This account number is already present in the database", + "available_points" => "คะแนนที่มี", + "available_points_value" => "", + "average" => "ใช้จ่ายเฉลี่ย", + "avg_discount" => "ส่วนลดเฉลี่ย", + "basic_information" => "ข้อมูล", + "cannot_be_deleted" => "ไม่สามารลบลูกค้าที่ถูกเลือก, ลูกค้าที่ถูกเลือกถูขายไปแล้ว.", + "company_name" => "บริษัท", + "confirm_delete" => "ยืนยันลบข้อมูลลูกค้า?", + "confirm_restore" => "คุณแน่ใจใช่ไหมว่าต้องการกู้คืนลูกค้าที่เลือก ?", + "consent" => "ความยินยอมในการลงทะเบียน", + "consent_required" => "ความยินยอมในการลงทะเบียนต้องระบุข้อมูล", + "csv_import_failed" => "นำเข้าข้อมูล CSV ล้มเหลว", + "csv_import_nodata_wrongformat" => "Your uploaded file has no data or wrong format", + "csv_import_partially_failed" => "นำเข้าลูกค้าประสบความสำเร็จแต่มีข้อผิดพลาดบางอย่าง :", + "csv_import_success" => "Import of Customers successful", + "customer" => "ลูกค้า", + "date" => "วันที่", + "discount" => "ส่วนลด", + "discount_fixed" => "ส่วนลดคงที่", + "discount_percent" => "ส่วนลดแบบร้อยละ", + "discount_type" => "ประเภทส่วนลด", + "email_duplicate" => "มีที่อยู่อีเมลนี้ในฐานข้อมูลแล้ว", + "employee" => "พนักงาน", + "error_adding_updating" => "แก้ไขข้อมูลลูกค้าผิดพลาด", + "import_items_csv" => "Import customers from CSV sheet", + "mailchimp_activity_click" => "คลิ๊กอีเมล", + "mailchimp_activity_lastopen" => "อีเมลที่เปิดล่าสุด", + "mailchimp_activity_open" => "เปิดอีเมล", + "mailchimp_activity_total" => "ส่งอีเมล", + "mailchimp_activity_unopen" => "ไม่เปิดอีเมล", + "mailchimp_email_client" => "โปรแกรมรับส่งเมล", + "mailchimp_info" => "ระบบส่งอีเมล์ชิม", + "mailchimp_member_rating" => "ระดับ", + "mailchimp_status" => "สถานะ", + "mailchimp_vip" => "วีไอพี", + "max" => "การใช้จ่ายสูงสุด", + "min" => "การใช้จ่ายน้อยที่สุด", + "new" => "ลูกค้าใหม่", + "none_selected" => "คุณยังไม่ได้ทำการเลือกลูกค้า", + "one_or_multiple" => "ลูกค้า", + "quantity" => "ปริมาณ", + "stats_info" => "สถิติ", + "successful_adding" => "คุณได้ทำการเพิ่มลูกค้าเรียบร้อยแล้ว", + "successful_deleted" => "คุณได้ทำการลบข้อมูลเรียบร้อยแล้ว", + "successful_updating" => "คุณได้ทำการแก้ไขข้อมูลลูกค้าเรียบร้อยแล้ว", + "tax_code" => "รหัสภาษี", + "tax_id" => "ไอดีภาษี", + "taxable" => "ต้องเสียภาษี", + "total" => "Total", + "update" => "แก้ไขข้อมูลลูกค้า", + "rewards_package" => "แพคเกจรางวัล", ]; diff --git a/app/Language/th/Datepicker.php b/app/Language/th/Datepicker.php index 89a8ace9b..865f77557 100644 --- a/app/Language/th/Datepicker.php +++ b/app/Language/th/Datepicker.php @@ -1,23 +1,23 @@ "เวลาทั้งหมด", - "apply" => "นำไปใช้", - "cancel" => "ยกเลิก", - "custom" => "กำหนดเอง", - "from" => "จาก", - "last_30" => "30 วันสุดท้าย", - "last_7" => "7 วันสุดท้าย", - "last_financial_year" => "ปีบัญชีที่ผ่านมา", - "last_month" => "เดือนที่แล้ว", - "last_year" => "ปีที่แล้ว", - "same_month_last_year" => "เดือนเดียวกันของปีที่แล้ว", - "same_month_to_same_day_last_year" => "เดือนเดียวกันกับวันเดียวกันของปีที่แล้ว", - "this_financial_year" => "ปีบัญชีปัจจุบัน", - "this_month" => "เดือนนี้", - "this_year" => "ปีนี้", - "to" => "ถึง", - "today" => "วันนี้", - "today_last_year" => "วันนี้ปีที่แล้ว", - "weekstart" => "0", - "yesterday" => "เมื่อวานนี้", + "all_time" => "เวลาทั้งหมด", + "apply" => "นำไปใช้", + "cancel" => "ยกเลิก", + "custom" => "กำหนดเอง", + "from" => "จาก", + "last_30" => "30 วันสุดท้าย", + "last_7" => "7 วันสุดท้าย", + "last_financial_year" => "ปีบัญชีที่ผ่านมา", + "last_month" => "เดือนที่แล้ว", + "last_year" => "ปีที่แล้ว", + "same_month_last_year" => "เดือนเดียวกันของปีที่แล้ว", + "same_month_to_same_day_last_year" => "เดือนเดียวกันกับวันเดียวกันของปีที่แล้ว", + "this_financial_year" => "ปีบัญชีปัจจุบัน", + "this_month" => "เดือนนี้", + "this_year" => "ปีนี้", + "to" => "ถึง", + "today" => "วันนี้", + "today_last_year" => "วันนี้ปีที่แล้ว", + "weekstart" => "0", + "yesterday" => "เมื่อวานนี้", ]; diff --git a/app/Language/th/Employees.php b/app/Language/th/Employees.php index 78eeb5ab0..10f0a8a1d 100644 --- a/app/Language/th/Employees.php +++ b/app/Language/th/Employees.php @@ -1,44 +1,44 @@ "", - "basic_information" => "ข้อมูลพื้นฐานของพนักงาน", - "cannot_be_deleted" => "ไม่สามารถลบพนักงานที่เลือกไว้ได้ เนื่องจากมีการทำรายการขายหรือคุณกำลังพยายามที่จะลบบัญชีของคุณเอง", - "change_employee" => "", - "change_password" => "เปลี่ยนรหัสผ่าน", - "clerk" => "", - "commission" => "", - "confirm_delete" => "คุณยืนยันการลบข้อมูลพนักงานที่เลือกไว้?", - "confirm_restore" => "คุณแน่ใจหรือไม่ว่าต้องการกู้คืนพนักงานที่เลือกไว้?", - "current_password" => "รหัสผ่านปัจจุบัน", - "current_password_invalid" => "รหัสผ่านปัจจุบันไม่ถูกต้อง", - "employee" => "พนักงาน", - "error_adding_updating" => "การเพิ่มหรือปรับปรุงข้อมูลพนักงานผิดพลาด", - "error_deleting_demo_admin" => "คุณไม่สามารถลบผู้ใช้งานสำหรับการเดโม้ได้", - "error_updating_demo_admin" => "คุณไม่สามารถทำการเปลี่ยนข้อมูลผู้ใช้งานเดโม้ได้", - "language" => "ภาษา", - "login_info" => "รหัสเข้าระบบ", - "manager" => "", - "new" => "เพิ่มพนักงาน", - "none_selected" => "โปรดเลือกพนักงานที่จะลบ", - "one_or_multiple" => "พนักงาน", - "password" => "รหัสผ่าน", - "password_minlength" => "รหัสผ่านต้องยาวอย่างน้อย 8 อักษร", - "password_must_match" => "รหัสผ่านไม่ตรงกัน", - "password_not_must_match" => "รหัสผ่านปัจจุบันและรหัสผ่านใหม่จะต้องไม่ซ้ำกัน", - "password_required" => "ต้องระบุรหัสผ่าน", - "permission_desc" => "ทำเครื่องหมายในช่องด้านล่างเพื่อให้สิทธิ์การเข้าถึงโมดูลต่างๆ", - "permission_info" => "สิทธิ์", - "repeat_password" => "ระบุรหัสผ่านอีกครั้ง", - "subpermission_required" => "เพิ่มการอนุญาตอย่างน้อยหนึ่งรายการสำหรับแต่ละโมดูล", - "successful_adding" => "เพิ่มข้อมูลพนักงานเรียบร้อยแล้ว", - "successful_change_password" => "ทำการเปลี่ยนรหัสผ่านเรียบร้อยแล้ว", - "successful_deleted" => "ลบข้อมูลสำเร็จ", - "successful_updating" => "ปรับปรุงข้อมูลพนักงานเรียบร้อยแล้ว", - "system_language" => "ภาษาของระบบ", - "unsuccessful_change_password" => "เปลี่ยนรหัสผ่านไม่สำเร็จ", - "update" => "แก้ไขข้อมูลพนักงาน", - "username" => "ชื่อผู้ใช้งาน", - "username_duplicate" => "ชื่อผู้ใช้งานพนักงานถูกใช้งานแล้ว กรุณาเลือกใช้งานชื่ออื่น", - "username_minlength" => "ชื่อผู้ใช้งานต้องยาวอย่างน้อย 5 อักษร", - "username_required" => "จำเป็นต้องระบุชื่อผู้ใช้งาน", + "administrator" => "", + "basic_information" => "ข้อมูลพื้นฐานของพนักงาน", + "cannot_be_deleted" => "ไม่สามารถลบพนักงานที่เลือกไว้ได้ เนื่องจากมีการทำรายการขายหรือคุณกำลังพยายามที่จะลบบัญชีของคุณเอง", + "change_employee" => "", + "change_password" => "เปลี่ยนรหัสผ่าน", + "clerk" => "", + "commission" => "", + "confirm_delete" => "คุณยืนยันการลบข้อมูลพนักงานที่เลือกไว้?", + "confirm_restore" => "คุณแน่ใจหรือไม่ว่าต้องการกู้คืนพนักงานที่เลือกไว้?", + "current_password" => "รหัสผ่านปัจจุบัน", + "current_password_invalid" => "รหัสผ่านปัจจุบันไม่ถูกต้อง", + "employee" => "พนักงาน", + "error_adding_updating" => "การเพิ่มหรือปรับปรุงข้อมูลพนักงานผิดพลาด", + "error_deleting_demo_admin" => "คุณไม่สามารถลบผู้ใช้งานสำหรับการเดโม้ได้", + "error_updating_demo_admin" => "คุณไม่สามารถทำการเปลี่ยนข้อมูลผู้ใช้งานเดโม้ได้", + "language" => "ภาษา", + "login_info" => "รหัสเข้าระบบ", + "manager" => "", + "new" => "เพิ่มพนักงาน", + "none_selected" => "โปรดเลือกพนักงานที่จะลบ", + "one_or_multiple" => "พนักงาน", + "password" => "รหัสผ่าน", + "password_minlength" => "รหัสผ่านต้องยาวอย่างน้อย 8 อักษร", + "password_must_match" => "รหัสผ่านไม่ตรงกัน", + "password_not_must_match" => "รหัสผ่านปัจจุบันและรหัสผ่านใหม่จะต้องไม่ซ้ำกัน", + "password_required" => "ต้องระบุรหัสผ่าน", + "permission_desc" => "ทำเครื่องหมายในช่องด้านล่างเพื่อให้สิทธิ์การเข้าถึงโมดูลต่างๆ", + "permission_info" => "สิทธิ์", + "repeat_password" => "ระบุรหัสผ่านอีกครั้ง", + "subpermission_required" => "เพิ่มการอนุญาตอย่างน้อยหนึ่งรายการสำหรับแต่ละโมดูล", + "successful_adding" => "เพิ่มข้อมูลพนักงานเรียบร้อยแล้ว", + "successful_change_password" => "ทำการเปลี่ยนรหัสผ่านเรียบร้อยแล้ว", + "successful_deleted" => "ลบข้อมูลสำเร็จ", + "successful_updating" => "ปรับปรุงข้อมูลพนักงานเรียบร้อยแล้ว", + "system_language" => "ภาษาของระบบ", + "unsuccessful_change_password" => "เปลี่ยนรหัสผ่านไม่สำเร็จ", + "update" => "แก้ไขข้อมูลพนักงาน", + "username" => "ชื่อผู้ใช้งาน", + "username_duplicate" => "ชื่อผู้ใช้งานพนักงานถูกใช้งานแล้ว กรุณาเลือกใช้งานชื่ออื่น", + "username_minlength" => "ชื่อผู้ใช้งานต้องยาวอย่างน้อย 5 อักษร", + "username_required" => "จำเป็นต้องระบุชื่อผู้ใช้งาน", ]; diff --git a/app/Language/th/Enum.php b/app/Language/th/Enum.php index c75734397..beee73dd0 100644 --- a/app/Language/th/Enum.php +++ b/app/Language/th/Enum.php @@ -1,10 +1,10 @@ "ครึ่งล่าง", - "half_even" => "ครึ่งคู่", - "half_five" => "ครึ่งห้า", - "half_odd" => "ครึ่งคี่", - "half_up" => "ครึ่งบน", - "round_down" => "ปัดเศษลง", - "round_up" => "ปัดเศษขึน", + "half_down" => "ครึ่งล่าง", + "half_even" => "ครึ่งคู่", + "half_five" => "ครึ่งห้า", + "half_odd" => "ครึ่งคี่", + "half_up" => "ครึ่งบน", + "round_down" => "ปัดเศษลง", + "round_up" => "ปัดเศษขึน", ]; diff --git a/app/Language/th/Error.php b/app/Language/th/Error.php index 71e253d11..ded1cd23a 100644 --- a/app/Language/th/Error.php +++ b/app/Language/th/Error.php @@ -1,5 +1,5 @@ "คุณไม่ได้รับสิทธิ์การเข้าถึงข้อมูลในส่วนนี้", - "unknown" => "ไม่ทราบ", + "no_permission_module" => "คุณไม่ได้รับสิทธิ์การเข้าถึงข้อมูลในส่วนนี้", + "unknown" => "ไม่ทราบ", ]; diff --git a/app/Language/th/Expenses.php b/app/Language/th/Expenses.php index a1f3c90e7..022c18f00 100644 --- a/app/Language/th/Expenses.php +++ b/app/Language/th/Expenses.php @@ -1,50 +1,50 @@ "เพิ่มรายจ่าย", - "amount" => "จำนวน", - "amount_number" => "ยอดจำนวนต้องเป็นตัวเลข", - "amount_required" => "จำเป็นต้องระบุยอดค่าใช้จ่าย", - "by_category" => "หมวดหมู่", - "cannot_be_deleted" => "ไม่สามารถลบหมวดหมู่ค่าใช้จ่าย", - "cash" => "เงินสด", - "cash_filter" => "เงินสด", - "categories_name" => "หมวดหมู่", - "category_required" => "จำเป็นต้องระบุหมวดหมู่", - "check" => "ตรวจสอบ", - "check_filter" => "เช็ค", - "confirm_delete" => "คุณแน่ใจหรือว่าต้องการลบค่าใช้จ่ายที่เลือกทั้งหมด?", - "confirm_restore" => "คุณแน่ใจหรือไม่ว่าต้องการคืนค่าใช้จ่ายที่เลือกทั้งหมด?", - "credit" => "บัตรเครดิต", - "credit_filter" => "บัตรเครติด", - "date" => "วันที่", - "date_number" => "วันที่ต้องเป็นตัวเลข", - "date_required" => "จำเป็นต้องระบุวันที่", - "debit" => "บัตรเดบิต", - "debit_filter" => "บัตรเดบิต", - "description" => "คำอธิบาย", - "due" => "ครบกำหนด", - "due_filter" => "ครบกำหนด", - "employee" => "สร้างโดย", - "error_adding_updating" => "ผิดพลาดขณะเพิ่ม/ปรับปรุงค่าใช้จ่าย", - "expense_id" => "รหัส", - "expenses_employee" => "ลูกจ้าง", - "info" => "ข้อมูลค่าใช้จ่าย", - "ip_address" => "", - "is_deleted" => "ถูกลบ", - "name_required" => "ต้องระบุชื่อรายจ่าย", - "new" => "เพิ่มรายจ่าย", - "new_supplier" => "", - "no_expenses_to_display" => "ไม่มีรายจ่ายต้องแสดง", - "none_selected" => "ท่านยังไม่ได้เลือกรายจ่าย", - "one_or_multiple" => "รายจ่าย", - "payment" => "ประเภทการชำระ", - "start_typing_supplier_name" => "เริ่มต้นพิมพ์ชื่อผู้ผลิต...", - "successful_adding" => "เพิ่มรายจ่ายสำเร็จ", - "successful_deleted" => "ลบรายจ่ายสำเร็จ", - "successful_updating" => "ปรับปรุงรายจ่ายสำเร็จ", - "supplier_name" => "ผู้ผลิต", - "supplier_tax_code" => "รหัสภาษี", - "tax_amount" => "ภาษี", - "tax_amount_number" => "", - "update" => "ปรับปรุงค่าใช้จ่าย", + "add_item" => "เพิ่มรายจ่าย", + "amount" => "จำนวน", + "amount_number" => "ยอดจำนวนต้องเป็นตัวเลข", + "amount_required" => "จำเป็นต้องระบุยอดค่าใช้จ่าย", + "by_category" => "หมวดหมู่", + "cannot_be_deleted" => "ไม่สามารถลบหมวดหมู่ค่าใช้จ่าย", + "cash" => "เงินสด", + "cash_filter" => "เงินสด", + "categories_name" => "หมวดหมู่", + "category_required" => "จำเป็นต้องระบุหมวดหมู่", + "check" => "ตรวจสอบ", + "check_filter" => "เช็ค", + "confirm_delete" => "คุณแน่ใจหรือว่าต้องการลบค่าใช้จ่ายที่เลือกทั้งหมด?", + "confirm_restore" => "คุณแน่ใจหรือไม่ว่าต้องการคืนค่าใช้จ่ายที่เลือกทั้งหมด?", + "credit" => "บัตรเครดิต", + "credit_filter" => "บัตรเครติด", + "date" => "วันที่", + "date_number" => "วันที่ต้องเป็นตัวเลข", + "date_required" => "จำเป็นต้องระบุวันที่", + "debit" => "บัตรเดบิต", + "debit_filter" => "บัตรเดบิต", + "description" => "คำอธิบาย", + "due" => "ครบกำหนด", + "due_filter" => "ครบกำหนด", + "employee" => "สร้างโดย", + "error_adding_updating" => "ผิดพลาดขณะเพิ่ม/ปรับปรุงค่าใช้จ่าย", + "expense_id" => "รหัส", + "expenses_employee" => "ลูกจ้าง", + "info" => "ข้อมูลค่าใช้จ่าย", + "ip_address" => "", + "is_deleted" => "ถูกลบ", + "name_required" => "ต้องระบุชื่อรายจ่าย", + "new" => "เพิ่มรายจ่าย", + "new_supplier" => "", + "no_expenses_to_display" => "ไม่มีรายจ่ายต้องแสดง", + "none_selected" => "ท่านยังไม่ได้เลือกรายจ่าย", + "one_or_multiple" => "รายจ่าย", + "payment" => "ประเภทการชำระ", + "start_typing_supplier_name" => "เริ่มต้นพิมพ์ชื่อผู้ผลิต...", + "successful_adding" => "เพิ่มรายจ่ายสำเร็จ", + "successful_deleted" => "ลบรายจ่ายสำเร็จ", + "successful_updating" => "ปรับปรุงรายจ่ายสำเร็จ", + "supplier_name" => "ผู้ผลิต", + "supplier_tax_code" => "รหัสภาษี", + "tax_amount" => "ภาษี", + "tax_amount_number" => "", + "update" => "ปรับปรุงค่าใช้จ่าย", ]; diff --git a/app/Language/th/Expenses_categories.php b/app/Language/th/Expenses_categories.php index c25b1ed61..078425e98 100644 --- a/app/Language/th/Expenses_categories.php +++ b/app/Language/th/Expenses_categories.php @@ -1,22 +1,22 @@ "จำเป็นต้องระบุชื่อหมวดค่าใช้จ่าย", - "add_item" => "เพิ่มหมวดหมู่", - "cannot_be_deleted" => "ไม่สามารถลบหมวดหมู่ค่าใช้จ่าย", - "category_id" => "รหัส", - "confirm_delete" => "คุณแน่ใจหรือว่าต้องการลบหมวดหมู่ค่าใช้จ่ายที่เลือก?", - "confirm_restore" => "คุณแน่ใจหรือไม่ว่าต้องการกู้คืนหมวดหมู่ค่าใช้จ่ายที่เลือก?", - "description" => "คำอธิบายหมวดหมู่", - "error_adding_updating" => "เกิดข้อผิดพลาดในการเพิ่ม / ปรับปรุงหมวดหมู่ค่าใช้จ่าย", - "info" => "ข้อมูลหมวดหมู่ค่าใช้จ่าย", - "name" => "ชื่อหมวดหมู่", - "new" => "หมวดหมู่ใหม่", - "no_expenses_categories_to_display" => "ไม่มีหมวดหมู่แสดง", - "none_selected" => "คุณยังไม่ได้เลือกหมวดหมู่ค่าใช้จ่าย", - "one_or_multiple" => "หมวดหมู่ค่าใช้จ่าย", - "quantity" => "จำนวน", - "successful_adding" => "เพิ่มหมวดหมู่ค่าใช้จ่ายสำเร็จ", - "successful_deleted" => "ลบหมวดหมู่ค่าใช้จ่ายสำเร็จ", - "successful_updating" => "ปรับปรุงข้อมูลหมวดหมู่ค่าใช้จ่ายสำเร็จ", - "update" => "ปรับปรุงหมวดหมู่", + "category_name_required" => "จำเป็นต้องระบุชื่อหมวดค่าใช้จ่าย", + "add_item" => "เพิ่มหมวดหมู่", + "cannot_be_deleted" => "ไม่สามารถลบหมวดหมู่ค่าใช้จ่าย", + "category_id" => "รหัส", + "confirm_delete" => "คุณแน่ใจหรือว่าต้องการลบหมวดหมู่ค่าใช้จ่ายที่เลือก?", + "confirm_restore" => "คุณแน่ใจหรือไม่ว่าต้องการกู้คืนหมวดหมู่ค่าใช้จ่ายที่เลือก?", + "description" => "คำอธิบายหมวดหมู่", + "error_adding_updating" => "เกิดข้อผิดพลาดในการเพิ่ม / ปรับปรุงหมวดหมู่ค่าใช้จ่าย", + "info" => "ข้อมูลหมวดหมู่ค่าใช้จ่าย", + "name" => "ชื่อหมวดหมู่", + "new" => "หมวดหมู่ใหม่", + "no_expenses_categories_to_display" => "ไม่มีหมวดหมู่แสดง", + "none_selected" => "คุณยังไม่ได้เลือกหมวดหมู่ค่าใช้จ่าย", + "one_or_multiple" => "หมวดหมู่ค่าใช้จ่าย", + "quantity" => "จำนวน", + "successful_adding" => "เพิ่มหมวดหมู่ค่าใช้จ่ายสำเร็จ", + "successful_deleted" => "ลบหมวดหมู่ค่าใช้จ่ายสำเร็จ", + "successful_updating" => "ปรับปรุงข้อมูลหมวดหมู่ค่าใช้จ่ายสำเร็จ", + "update" => "ปรับปรุงหมวดหมู่", ]; diff --git a/app/Language/th/Giftcards.php b/app/Language/th/Giftcards.php index 00f373de3..c69c4731c 100644 --- a/app/Language/th/Giftcards.php +++ b/app/Language/th/Giftcards.php @@ -1,71 +1,71 @@ "สินค้าคงคลัง เพิ่ม/ลด", - "allow_alt_description" => "คำอธิบายสำรอง", - "bulk_edit" => "แก้ไขเป็นกลุ่ม", - "cannot_be_deleted" => "ไม่สามารถลบข้อมูลบัตรของขวัญที่เลือก, หรือบัตรของขวัญได้มีการใช้ไปแล้ว", - "cannot_find_giftcard" => "ไม่พบข้อมูลเกี่ยวกับบัตรของขวัญนี้", - "cannot_use" => "บัตรของขวัญ {0} ไม่สามารถใช้งานกับรายการขายนี้ได้ เนื่องจากรายการลูกค้าไม่ถูกต้อง", - "card_value" => "มูลค่า", - "category" => "ประเภท", - "change_all_to_allow_alt_desc" => "คำอธิบายสำรองสำหรับทั้งหมด", - "change_all_to_not_allow_allow_desc" => "ไม่อนุญาตให้เปลี่ยนคำอธิบายทั้งหมด", - "change_all_to_serialized" => "เปลี่ยนแปลงทั้งหมด", - "change_all_to_unserialized" => "เปลี่ยนทั้งหมดเป็นแบบไม่ต่อเนื่องกัน", - "confirm_bulk_edit" => "คุณแน่ใจหรือไม่ว่าต้องการแก้ไขบัตรของขวัญที่เลือก?", - "confirm_delete" => "คุณแน่ใจหรือไม่ว่าต้องการลบบัตรของขวัญที่เลือก?", - "confirm_restore" => "คุณแน่ใจหรือไม่ว่าต้องการยกเลิกบัตรของขวัญที่เลือก?", - "cost_price" => "ต้นทุน", - "count" => "ปรับปรุงสินค้าคงคลัง", - "csv_import_failed" => "การส่งออกในรูปแบบไฟล์เอ็กเซล ไม่สำเร็จ", - "current_quantity" => "จำนวน ณ. ปัจจุบัน", - "description" => "รายละเอียด", - "details_count" => "รายละเอียดการตรวจนับในสินค้าคงคลัง", - "do_nothing" => "ไม่ทำอะไร", - "edit_fields_you_want_to_update" => "แก้ไขฟิลด์ที่ต้องการสำหรับบัตรของขวัญที่เลือก", - "edit_multiple_giftcards" => "แก้ไขบัตรกำนัลหลายใบ", - "error_adding_updating" => "มีข้อผิดพลาดในการ เพิ่ม/ปรับปรุง บัตรกำนัล", - "error_updating_multiple" => "มีข้อผิดพลาดในการปรับปรุง บัตรกำนัล", - "generate_barcodes" => "สร้างบาร์โค้ด", - "giftcard" => "บัตรกำนัล", - "giftcard_number" => "เลขบัตรกำนัล", - "info_provided_by" => "ข้อมูลที่จัดทำโดย", - "inventory_comments" => "คำแนะนำ", - "is_serialized" => "Giftcard has Serial Number", - "low_inventory_giftcards" => "Low Inventory Giftcards", - "manually_editing_of_quantity" => "แก้ไขจำนวนปริมาณเอง", - "must_select_giftcard_for_barcode" => "กรุณาเลือกบัตรกำนัลอย่างน้อย 1 รายการ เพื่อสร้างบาร์โค๊ด", - "new" => "เพิ่มบัตรกำนัล", - "no_description_giftcards" => "No Description Giftcards", - "no_giftcards_to_display" => "No Giftcards to display", - "none" => "ไม่มี", - "none_selected" => "กรุณาเลือกบัตรกำนัลที่ต้องการแก้ไข", - "number" => "เลขบัตรกำนัลต้องเป็นตัวเลขเท่านั้น", - "number_information" => "หมายเลขบัตรของขวัญ", - "number_required" => "ต้องกรอกเลขบัตรกำนัล", - "one_or_multiple" => "giftcard(s)", - "person_id" => "เจ้าของบัตร", - "quantity" => "ปริมาณ", - "quantity_required" => "ช่องข้อมูลปริมาณ จำเป็นต้องกรอก. คลิกที่เครื่องหมาย ( X ) เพื่อยกเลิก", - "remaining_balance" => "บัตรของขวัญ {0} มีมูลค่า {1}!", - "reorder_level" => "ยอดขั้นต่ำ", - "retrive_giftcard_info" => "Retrieve Giftcard Info", - "sales_tax_1" => "ภาษีการขาย", - "sales_tax_2" => "ภาษีขาย 2", - "serialized_giftcards" => "Serialized Giftcards", - "successful_adding" => "You have successfully added giftcard", - "successful_bulk_edit" => "You have successfully updated the selected giftcards", - "successful_deleted" => "คุณทำการลบสำเร็จแล้ว", - "successful_updating" => "You have successfully updated giftcard", - "supplier" => "ผู้ผลิต", - "tax_1" => "ภาษี 1", - "tax_2" => "ภาษี 2", - "tax_percent" => "เปอร์เซ็นต์ภาษี", - "tax_percents" => "อัตราภาษีแบบเปอร์เซ็นต์", - "unit_price" => "ราคาปลีก", - "upc_database" => "ฐานข้อมุลบาร์โค๊ด", - "update" => "ปรับข้อมูลบัตรกำนัล", - "use_inventory_menu" => "ใช้เมนูสินค้าคงคลัง", - "value" => "มูลค่าบัตรกำนัลต้องเป็นตัวเลขเท่านั้น", - "value_required" => "ต้องกรอกมูลค่าบัตรกำนัล", + "add_minus" => "สินค้าคงคลัง เพิ่ม/ลด", + "allow_alt_description" => "คำอธิบายสำรอง", + "bulk_edit" => "แก้ไขเป็นกลุ่ม", + "cannot_be_deleted" => "ไม่สามารถลบข้อมูลบัตรของขวัญที่เลือก, หรือบัตรของขวัญได้มีการใช้ไปแล้ว", + "cannot_find_giftcard" => "ไม่พบข้อมูลเกี่ยวกับบัตรของขวัญนี้", + "cannot_use" => "บัตรของขวัญ {0} ไม่สามารถใช้งานกับรายการขายนี้ได้ เนื่องจากรายการลูกค้าไม่ถูกต้อง", + "card_value" => "มูลค่า", + "category" => "ประเภท", + "change_all_to_allow_alt_desc" => "คำอธิบายสำรองสำหรับทั้งหมด", + "change_all_to_not_allow_allow_desc" => "ไม่อนุญาตให้เปลี่ยนคำอธิบายทั้งหมด", + "change_all_to_serialized" => "เปลี่ยนแปลงทั้งหมด", + "change_all_to_unserialized" => "เปลี่ยนทั้งหมดเป็นแบบไม่ต่อเนื่องกัน", + "confirm_bulk_edit" => "คุณแน่ใจหรือไม่ว่าต้องการแก้ไขบัตรของขวัญที่เลือก?", + "confirm_delete" => "คุณแน่ใจหรือไม่ว่าต้องการลบบัตรของขวัญที่เลือก?", + "confirm_restore" => "คุณแน่ใจหรือไม่ว่าต้องการยกเลิกบัตรของขวัญที่เลือก?", + "cost_price" => "ต้นทุน", + "count" => "ปรับปรุงสินค้าคงคลัง", + "csv_import_failed" => "การส่งออกในรูปแบบไฟล์เอ็กเซล ไม่สำเร็จ", + "current_quantity" => "จำนวน ณ. ปัจจุบัน", + "description" => "รายละเอียด", + "details_count" => "รายละเอียดการตรวจนับในสินค้าคงคลัง", + "do_nothing" => "ไม่ทำอะไร", + "edit_fields_you_want_to_update" => "แก้ไขฟิลด์ที่ต้องการสำหรับบัตรของขวัญที่เลือก", + "edit_multiple_giftcards" => "แก้ไขบัตรกำนัลหลายใบ", + "error_adding_updating" => "มีข้อผิดพลาดในการ เพิ่ม/ปรับปรุง บัตรกำนัล", + "error_updating_multiple" => "มีข้อผิดพลาดในการปรับปรุง บัตรกำนัล", + "generate_barcodes" => "สร้างบาร์โค้ด", + "giftcard" => "บัตรกำนัล", + "giftcard_number" => "เลขบัตรกำนัล", + "info_provided_by" => "ข้อมูลที่จัดทำโดย", + "inventory_comments" => "คำแนะนำ", + "is_serialized" => "Giftcard has Serial Number", + "low_inventory_giftcards" => "Low Inventory Giftcards", + "manually_editing_of_quantity" => "แก้ไขจำนวนปริมาณเอง", + "must_select_giftcard_for_barcode" => "กรุณาเลือกบัตรกำนัลอย่างน้อย 1 รายการ เพื่อสร้างบาร์โค๊ด", + "new" => "เพิ่มบัตรกำนัล", + "no_description_giftcards" => "No Description Giftcards", + "no_giftcards_to_display" => "No Giftcards to display", + "none" => "ไม่มี", + "none_selected" => "กรุณาเลือกบัตรกำนัลที่ต้องการแก้ไข", + "number" => "เลขบัตรกำนัลต้องเป็นตัวเลขเท่านั้น", + "number_information" => "หมายเลขบัตรของขวัญ", + "number_required" => "ต้องกรอกเลขบัตรกำนัล", + "one_or_multiple" => "giftcard(s)", + "person_id" => "เจ้าของบัตร", + "quantity" => "ปริมาณ", + "quantity_required" => "ช่องข้อมูลปริมาณ จำเป็นต้องกรอก. คลิกที่เครื่องหมาย ( X ) เพื่อยกเลิก", + "remaining_balance" => "บัตรของขวัญ {0} มีมูลค่า {1}!", + "reorder_level" => "ยอดขั้นต่ำ", + "retrive_giftcard_info" => "Retrieve Giftcard Info", + "sales_tax_1" => "ภาษีการขาย", + "sales_tax_2" => "ภาษีขาย 2", + "serialized_giftcards" => "Serialized Giftcards", + "successful_adding" => "You have successfully added giftcard", + "successful_bulk_edit" => "You have successfully updated the selected giftcards", + "successful_deleted" => "คุณทำการลบสำเร็จแล้ว", + "successful_updating" => "You have successfully updated giftcard", + "supplier" => "ผู้ผลิต", + "tax_1" => "ภาษี 1", + "tax_2" => "ภาษี 2", + "tax_percent" => "เปอร์เซ็นต์ภาษี", + "tax_percents" => "อัตราภาษีแบบเปอร์เซ็นต์", + "unit_price" => "ราคาปลีก", + "upc_database" => "ฐานข้อมุลบาร์โค๊ด", + "update" => "ปรับข้อมูลบัตรกำนัล", + "use_inventory_menu" => "ใช้เมนูสินค้าคงคลัง", + "value" => "มูลค่าบัตรกำนัลต้องเป็นตัวเลขเท่านั้น", + "value_required" => "ต้องกรอกมูลค่าบัตรกำนัล", ]; diff --git a/app/Language/th/Item_kits.php b/app/Language/th/Item_kits.php index 9e84e72ef..f9314ac3b 100644 --- a/app/Language/th/Item_kits.php +++ b/app/Language/th/Item_kits.php @@ -1,41 +1,41 @@ "เพิ่มสินคัา", - "all" => "ทั้งหมด", - "cannot_be_deleted" => "ไม่สามารถลบได้", - "confirm_delete" => "แน่ใจหรือไม่ที่จะลบสินค้าหมู่ที่ถูกเลือก?", - "confirm_restore" => "คุณแน่ใจหรือไม่ว่าต้องการคืนค่าชุดรายการที่เลือก?", - "description" => "แนะนำสินค้าหมู่", - "discount" => "ส่วนลด", - "discount_fixed" => "ส่วนลดคงที่", - "discount_percent" => "ส่วนลดร้อยละ", - "discount_type" => "ประเภทส่วนลด", - "error_adding_updating" => "เพิ่ม/ปรับปรุงสินค้าหมู่ล้มเหลว", - "find_kit_item" => "ชุดรายการ", - "info" => "ข้อมูลสินค้าหมู่", - "item" => "สินค้า", - "item_kit_number" => "บาร์โค๊ด", - "item_kit_number_duplicate" => "หมายเลขนี้มีอยู่แล้วในฐานข้อมูล", - "item_number" => "", - "item_number_duplicate" => "", - "items" => "สินค้า", - "kit" => "Kit Id", - "kit_and_components" => "ชุดและส่วนประกอบ", - "kit_and_stock" => "ชุดและสต็อก", - "kit_only" => "ชุดอย่างเดี่ยว", - "name" => "ชื่อสินค้าหมู่", - "new" => "สร้างสินค้าหมู่", - "no_item_kits_to_display" => "ไม่มีสินค้าแสดง", - "none_selected" => "คุณยังไม่ใด้เลือกสินค้าหมู่", - "one_or_multiple" => "สินค้าหมู่", - "price_option" => "ตัวเลือกราคา", - "priced_only" => "ราคาอย่างเดี่ยว", - "print_option" => "ตัวเลือกการพิมพ์", - "quantity" => "จำนวน", - "sequence" => "ลำดับ", - "successful_adding" => "เพิ่มสินค้าหมู่สำเร็จ", - "successful_deleted" => "ลบสำเร็จ", - "successful_updating" => "ปรับปรุงสินค้าหมู่สำเร็จ", - "unit_price" => "", - "update" => "ปรับปรุงสินค้าหมู่", + "add_item" => "เพิ่มสินคัา", + "all" => "ทั้งหมด", + "cannot_be_deleted" => "ไม่สามารถลบได้", + "confirm_delete" => "แน่ใจหรือไม่ที่จะลบสินค้าหมู่ที่ถูกเลือก?", + "confirm_restore" => "คุณแน่ใจหรือไม่ว่าต้องการคืนค่าชุดรายการที่เลือก?", + "description" => "แนะนำสินค้าหมู่", + "discount" => "ส่วนลด", + "discount_fixed" => "ส่วนลดคงที่", + "discount_percent" => "ส่วนลดร้อยละ", + "discount_type" => "ประเภทส่วนลด", + "error_adding_updating" => "เพิ่ม/ปรับปรุงสินค้าหมู่ล้มเหลว", + "find_kit_item" => "ชุดรายการ", + "info" => "ข้อมูลสินค้าหมู่", + "item" => "สินค้า", + "item_kit_number" => "บาร์โค๊ด", + "item_kit_number_duplicate" => "หมายเลขนี้มีอยู่แล้วในฐานข้อมูล", + "item_number" => "", + "item_number_duplicate" => "", + "items" => "สินค้า", + "kit" => "Kit Id", + "kit_and_components" => "ชุดและส่วนประกอบ", + "kit_and_stock" => "ชุดและสต็อก", + "kit_only" => "ชุดอย่างเดี่ยว", + "name" => "ชื่อสินค้าหมู่", + "new" => "สร้างสินค้าหมู่", + "no_item_kits_to_display" => "ไม่มีสินค้าแสดง", + "none_selected" => "คุณยังไม่ใด้เลือกสินค้าหมู่", + "one_or_multiple" => "สินค้าหมู่", + "price_option" => "ตัวเลือกราคา", + "priced_only" => "ราคาอย่างเดี่ยว", + "print_option" => "ตัวเลือกการพิมพ์", + "quantity" => "จำนวน", + "sequence" => "ลำดับ", + "successful_adding" => "เพิ่มสินค้าหมู่สำเร็จ", + "successful_deleted" => "ลบสำเร็จ", + "successful_updating" => "ปรับปรุงสินค้าหมู่สำเร็จ", + "unit_price" => "", + "update" => "ปรับปรุงสินค้าหมู่", ]; diff --git a/app/Language/th/Items.php b/app/Language/th/Items.php index 80a1a220b..f4506f5e8 100644 --- a/app/Language/th/Items.php +++ b/app/Language/th/Items.php @@ -1,120 +1,120 @@ "เพิ่ม/ลบ จำนวนสินค้าคงคลัง", - "allow_alt_description" => "แสดงข้อมูลเพิ่มเติม", - "amount_entry" => "จำนวนเงิน", - "bulk_edit" => "แก้ไขความจุ", - "buy_price_required" => "ราคาซื้อขายต้องกรอก", - "cannot_be_deleted" => "ไม่สามารถลบสินค้าที่เลือก, สินค้าที่เลือกถูกขายไปแล้ว.", - "cannot_find_item" => "ไม่พบข้อมูลของสินค้า", - "categories" => "", - "category" => "หมวดหมู่", - "category_new" => "", - "category_required" => "หมวดหมู่สินค้าต้องกรอก", - "change_all_to_allow_alt_desc" => "อนุญาตให้รายละเอียดสำรองทั้งหมด", - "change_all_to_not_allow_allow_desc" => "ไม่อนุญาตให้จัดเรียงลำดับ", - "change_all_to_serialized" => "เปลี่ยนแปลงรหัสสินค้าทั้งหมด", - "change_all_to_unserialized" => "ลบรหัสสินค้าทั้งหมด", - "change_image" => "เปลี่ยนรูปภาพ", - "confirm_bulk_edit" => "แน่ใจหรือไม่ที่จะแก้ใขสินค้าทั้งหมดที่คุณเลือก?", - "confirm_bulk_edit_wipe_taxes" => "ข้อมูลภาษีทั้งหมดจะถูกแทนที่", - "confirm_delete" => "โปรดยืนยันการลบสินค้าที่ถูกเลือก?", - "confirm_restore" => "คุณแน่ใจหรือไม่ว่าต้องการกู้คืนรายการที่เลือก?", - "cost_price" => "ราคาขายส่ง", - "cost_price_number" => "ราคาขายส่งต้องเป็นตัวเลข", - "cost_price_required" => "ต้องกรอกราคาขายส่ง", - "count" => "แก้ไขจำนวนสินค้าคงคลัง", - "csv_import_failed" => "นำเข้าข้อมูล CSV ล้มเหลว", - "csv_import_nodata_wrongformat" => "Your uploaded file has no data or wrong format", - "csv_import_partially_failed" => "มีรายการ {0} รายการที่นำเข้าล้มเหลว : {1} รายการที่ยังไม่ได้นำเข้า", - "csv_import_success" => "Import of Items successful", - "current_quantity" => "ปริมาณสินค้าคงคลัง", - "default_pack_name" => "ชิ้นละ", - "description" => "รายละเอียด", - "details_count" => "รายละเอียดจำนวนสินค้าคงคลัง", - "do_nothing" => "ไม่ต้องทำอะไร", - "edit" => "", - "edit_fields_you_want_to_update" => "แก้ไขสินค้าทุกชนิดที่คุณเลือก", - "edit_multiple_items" => "แก้ใขสินค้าต่างๆ", - "empty_upc_items" => "Empty UPC Items", - "error_adding_updating" => "เพิ่ม/ปรับแต่ง สินค้าล้มเหลว", - "error_updating_multiple" => "ปรับแต่งสินค้าล้มเหลว", - "generate_barcodes" => "พิมพ์บาร์โค๊ด", - "hsn_code" => "ระบบการตั้งชื่อที่กลมกลืนกัน", - "image" => "รูป", - "import_items_csv" => "รายการที่นำเข้าจาก CSV", - "info_provided_by" => "จัดเตรียมข้อมูลโดย", - "inventory" => "สินค้าคงเหลือ", - "inventory_CSV_import_quantity" => "จำนวนที่นำเข้าจาก CSV", - "inventory_comments" => "คำอธิบาย", - "inventory_data_tracking" => "การติดตามข้อมูลสินค้าคงคลัง", - "inventory_date" => "วันที่", - "inventory_employee" => "พนักงาน", - "inventory_in_out_quantity" => "ปริมาณเข้า / ออก", - "inventory_remarks" => "หมายเหตุ", - "is_deleted" => "ถูกลบแล้ว", - "is_printed" => "", - "is_serialized" => "สินค้ามีซีเรียลนัมเบอร์", - "item" => "สินค้า", - "item_id" => "", - "item_number" => "โค๊ด", - "item_number_duplicate" => "The item number is already present in the database", - "kit" => "ชุด", - "location" => "ที่ตั้ง", - "low_inventory_items" => "สินค้าคงเหลือน้อย", - "low_sell_item" => "รายการขายต่ำ", - "manually_editing_of_quantity" => "แก้ไขจำนวน", - "markup" => "", - "name" => "ชื่อสินค้า", - "name_required" => "ชื่อสินค้าต้องกรอก", - "new" => "เพิ่มรายการสินค้า", - "no_description_items" => "สินค้าที่ไม่มีคำอธิบายหรือวิธีการใช้", - "no_items_to_display" => "ไม่มีสินค้าแสดง", - "none" => "ว่างเปล่า", - "none_selected" => "กรุณาเลือสินค้าที่ต้องการแก้ไข", - "nonstock" => "ไม่นับสต็อก", - "number_information" => "หมายเลขสินค้า", - "number_required" => "จำเป็นต้องระบุบาร์โค้ด", - "one_or_multiple" => "สินค้า(s)", - "pack_name" => "ชื่อแพ็ค", - "qty_per_pack" => "ปริมาณต่อแพ็ค", - "quantity" => "จำนวน", - "quantity_number" => "จำนวนต้องเป็นตัวเลข", - "quantity_required" => "จำนวนต้องกรอก", - "receiving_quantity" => "ยอดรับมา", - "remove_image" => "นำภาพออก", - "reorder_level" => "ระดับการสั่งใหม่", - "reorder_level_number" => "ระดับการสั่งใหม่ต้องเป็นตัวเลข", - "reorder_level_required" => "ระดับการสั่งไหม่ต้องกรอก", - "retrive_item_info" => "ดึงข้อมูลรายการ", - "sales_tax_1" => "ถาษีขาย", - "sales_tax_2" => "ภาษีขาย 2", - "search_attributes" => "ค้นหาตามคุณสมบัติ", - "select_image" => "เลือกรูปภาพ", - "serialized_items" => "รหัสสินค้า", - "standard" => "มาตรฐาน", - "stock" => "คลังสินค้า", - "stock_location" => "ที่เก็บ", - "stock_type" => "ประเภทคลัง", - "successful_adding" => "เพิ่มสินค้าสำเร็จ", - "successful_bulk_edit" => "ปรับแต่งสินค้าสำเร็จ", - "successful_deleted" => "ลบสินค้าสำเร็จ", - "successful_updating" => "ปรับแต่งสินค้าสำเร็จ", - "supplier" => "ผู้ผลิต", - "tax_1" => "ภาษี 1", - "tax_2" => "ภาษี 2", - "tax_3" => "", - "tax_category" => "ประเภทภาษี", - "tax_percent" => "ภาษี(%)", - "tax_percent_number" => "เปอร์เซ็นต์ภาษีต้องเป็นค่าตัวเลข", - "tax_percent_required" => "เปอร์เซ็นต์ต้องกรอก", - "tax_percents" => "ภาษี(%)", - "temp" => "ชั่วคราว", - "type" => "ประเภทรายการ", - "unit_price" => "ราคาขาย", - "unit_price_number" => "ราคาต่อหน่วยต้องเป็นตัวเลข", - "unit_price_required" => "ราคาต่อหน่วยต้องกรอก", - "upc_database" => "UPC ฐานข้อมูล", - "update" => "ปรับแต่งสินค้า", - "use_inventory_menu" => "ใช้เมนูสินค้าคงเหลือ", + "add_minus" => "เพิ่ม/ลบ จำนวนสินค้าคงคลัง", + "allow_alt_description" => "แสดงข้อมูลเพิ่มเติม", + "amount_entry" => "จำนวนเงิน", + "bulk_edit" => "แก้ไขความจุ", + "buy_price_required" => "ราคาซื้อขายต้องกรอก", + "cannot_be_deleted" => "ไม่สามารถลบสินค้าที่เลือก, สินค้าที่เลือกถูกขายไปแล้ว.", + "cannot_find_item" => "ไม่พบข้อมูลของสินค้า", + "categories" => "", + "category" => "หมวดหมู่", + "category_new" => "", + "category_required" => "หมวดหมู่สินค้าต้องกรอก", + "change_all_to_allow_alt_desc" => "อนุญาตให้รายละเอียดสำรองทั้งหมด", + "change_all_to_not_allow_allow_desc" => "ไม่อนุญาตให้จัดเรียงลำดับ", + "change_all_to_serialized" => "เปลี่ยนแปลงรหัสสินค้าทั้งหมด", + "change_all_to_unserialized" => "ลบรหัสสินค้าทั้งหมด", + "change_image" => "เปลี่ยนรูปภาพ", + "confirm_bulk_edit" => "แน่ใจหรือไม่ที่จะแก้ใขสินค้าทั้งหมดที่คุณเลือก?", + "confirm_bulk_edit_wipe_taxes" => "ข้อมูลภาษีทั้งหมดจะถูกแทนที่", + "confirm_delete" => "โปรดยืนยันการลบสินค้าที่ถูกเลือก?", + "confirm_restore" => "คุณแน่ใจหรือไม่ว่าต้องการกู้คืนรายการที่เลือก?", + "cost_price" => "ราคาขายส่ง", + "cost_price_number" => "ราคาขายส่งต้องเป็นตัวเลข", + "cost_price_required" => "ต้องกรอกราคาขายส่ง", + "count" => "แก้ไขจำนวนสินค้าคงคลัง", + "csv_import_failed" => "นำเข้าข้อมูล CSV ล้มเหลว", + "csv_import_nodata_wrongformat" => "Your uploaded file has no data or wrong format", + "csv_import_partially_failed" => "มีรายการ {0} รายการที่นำเข้าล้มเหลว : {1} รายการที่ยังไม่ได้นำเข้า", + "csv_import_success" => "Import of Items successful", + "current_quantity" => "ปริมาณสินค้าคงคลัง", + "default_pack_name" => "ชิ้นละ", + "description" => "รายละเอียด", + "details_count" => "รายละเอียดจำนวนสินค้าคงคลัง", + "do_nothing" => "ไม่ต้องทำอะไร", + "edit" => "", + "edit_fields_you_want_to_update" => "แก้ไขสินค้าทุกชนิดที่คุณเลือก", + "edit_multiple_items" => "แก้ใขสินค้าต่างๆ", + "empty_upc_items" => "Empty UPC Items", + "error_adding_updating" => "เพิ่ม/ปรับแต่ง สินค้าล้มเหลว", + "error_updating_multiple" => "ปรับแต่งสินค้าล้มเหลว", + "generate_barcodes" => "พิมพ์บาร์โค๊ด", + "hsn_code" => "ระบบการตั้งชื่อที่กลมกลืนกัน", + "image" => "รูป", + "import_items_csv" => "รายการที่นำเข้าจาก CSV", + "info_provided_by" => "จัดเตรียมข้อมูลโดย", + "inventory" => "สินค้าคงเหลือ", + "inventory_CSV_import_quantity" => "จำนวนที่นำเข้าจาก CSV", + "inventory_comments" => "คำอธิบาย", + "inventory_data_tracking" => "การติดตามข้อมูลสินค้าคงคลัง", + "inventory_date" => "วันที่", + "inventory_employee" => "พนักงาน", + "inventory_in_out_quantity" => "ปริมาณเข้า / ออก", + "inventory_remarks" => "หมายเหตุ", + "is_deleted" => "ถูกลบแล้ว", + "is_printed" => "", + "is_serialized" => "สินค้ามีซีเรียลนัมเบอร์", + "item" => "สินค้า", + "item_id" => "", + "item_number" => "โค๊ด", + "item_number_duplicate" => "The item number is already present in the database", + "kit" => "ชุด", + "location" => "ที่ตั้ง", + "low_inventory_items" => "สินค้าคงเหลือน้อย", + "low_sell_item" => "รายการขายต่ำ", + "manually_editing_of_quantity" => "แก้ไขจำนวน", + "markup" => "", + "name" => "ชื่อสินค้า", + "name_required" => "ชื่อสินค้าต้องกรอก", + "new" => "เพิ่มรายการสินค้า", + "no_description_items" => "สินค้าที่ไม่มีคำอธิบายหรือวิธีการใช้", + "no_items_to_display" => "ไม่มีสินค้าแสดง", + "none" => "ว่างเปล่า", + "none_selected" => "กรุณาเลือสินค้าที่ต้องการแก้ไข", + "nonstock" => "ไม่นับสต็อก", + "number_information" => "หมายเลขสินค้า", + "number_required" => "จำเป็นต้องระบุบาร์โค้ด", + "one_or_multiple" => "สินค้า(s)", + "pack_name" => "ชื่อแพ็ค", + "qty_per_pack" => "ปริมาณต่อแพ็ค", + "quantity" => "จำนวน", + "quantity_number" => "จำนวนต้องเป็นตัวเลข", + "quantity_required" => "จำนวนต้องกรอก", + "receiving_quantity" => "ยอดรับมา", + "remove_image" => "นำภาพออก", + "reorder_level" => "ระดับการสั่งใหม่", + "reorder_level_number" => "ระดับการสั่งใหม่ต้องเป็นตัวเลข", + "reorder_level_required" => "ระดับการสั่งไหม่ต้องกรอก", + "retrive_item_info" => "ดึงข้อมูลรายการ", + "sales_tax_1" => "ถาษีขาย", + "sales_tax_2" => "ภาษีขาย 2", + "search_attributes" => "ค้นหาตามคุณสมบัติ", + "select_image" => "เลือกรูปภาพ", + "serialized_items" => "รหัสสินค้า", + "standard" => "มาตรฐาน", + "stock" => "คลังสินค้า", + "stock_location" => "ที่เก็บ", + "stock_type" => "ประเภทคลัง", + "successful_adding" => "เพิ่มสินค้าสำเร็จ", + "successful_bulk_edit" => "ปรับแต่งสินค้าสำเร็จ", + "successful_deleted" => "ลบสินค้าสำเร็จ", + "successful_updating" => "ปรับแต่งสินค้าสำเร็จ", + "supplier" => "ผู้ผลิต", + "tax_1" => "ภาษี 1", + "tax_2" => "ภาษี 2", + "tax_3" => "", + "tax_category" => "ประเภทภาษี", + "tax_percent" => "ภาษี(%)", + "tax_percent_number" => "เปอร์เซ็นต์ภาษีต้องเป็นค่าตัวเลข", + "tax_percent_required" => "เปอร์เซ็นต์ต้องกรอก", + "tax_percents" => "ภาษี(%)", + "temp" => "ชั่วคราว", + "type" => "ประเภทรายการ", + "unit_price" => "ราคาขาย", + "unit_price_number" => "ราคาต่อหน่วยต้องเป็นตัวเลข", + "unit_price_required" => "ราคาต่อหน่วยต้องกรอก", + "upc_database" => "UPC ฐานข้อมูล", + "update" => "ปรับแต่งสินค้า", + "use_inventory_menu" => "ใช้เมนูสินค้าคงเหลือ", ]; diff --git a/app/Language/th/Messages.php b/app/Language/th/Messages.php index 805a5f9ed..6d5e59aef 100644 --- a/app/Language/th/Messages.php +++ b/app/Language/th/Messages.php @@ -1,15 +1,15 @@ "ชื่อ", - "last_name" => "นามสกุล", - "message" => "ข้อความ", - "message_placeholder" => "ข้อความของคุณ ...", - "message_required" => "ต้องระบุข้อความ", - "multiple_phones" => "(ในกรณีที่มีผู้รับหลายคนให้ป้อนหมายเลขโทรศัพท์มือถือคั่นด้วยเครื่องหมายจุลภาค)", - "phone" => "หมายเลขโทรศัพท์", - "phone_number_required" => "จำเป็นต้องระบุหมายเลขโทรศัพท์", - "phone_placeholder" => "ระบุหมายเลขโทรศัพท์มือถือ", - "sms_send" => "ส่งข้อความ SMS", - "successfully_sent" => "ส่งข้อความสำเร็จแล้วถึง: ", - "unsuccessfully_sent" => "ส่งข้อความไม่สำเร็จถึง: ", + "first_name" => "ชื่อ", + "last_name" => "นามสกุล", + "message" => "ข้อความ", + "message_placeholder" => "ข้อความของคุณ ...", + "message_required" => "ต้องระบุข้อความ", + "multiple_phones" => "(ในกรณีที่มีผู้รับหลายคนให้ป้อนหมายเลขโทรศัพท์มือถือคั่นด้วยเครื่องหมายจุลภาค)", + "phone" => "หมายเลขโทรศัพท์", + "phone_number_required" => "จำเป็นต้องระบุหมายเลขโทรศัพท์", + "phone_placeholder" => "ระบุหมายเลขโทรศัพท์มือถือ", + "sms_send" => "ส่งข้อความ SMS", + "successfully_sent" => "ส่งข้อความสำเร็จแล้วถึง: ", + "unsuccessfully_sent" => "ส่งข้อความไม่สำเร็จถึง: ", ]; diff --git a/app/Language/th/Module.php b/app/Language/th/Module.php index 86cb13b74..b144a1811 100644 --- a/app/Language/th/Module.php +++ b/app/Language/th/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "คุณลักษณะ", - "attributes_desc" => "เพิ่ม, ปรับปรุง, ลบ และการค้นหา คุณลักษณะ", - "both" => "ทั้งคู่", - "cashups" => "ยอดรับเงินสด", - "cashups_desc" => "เพิ่ม, ปรับปรุง, ลบ, และค้นหายอดรับเงินสด", - "config" => "ตั้งค่า", - "config_desc" => "ปรับแต่งร้านค้า", - "customers" => "ลูกค้า", - "customers_desc" => "เพิ่ม, อัพเดท, ลบ, และค้นหา ลูกค้า", - "employees" => "พนักงาน", - "employees_desc" => "เพิ่ม, อัพเดท, ลบ, และค้นหา พนักงาน", - "expenses" => "ค่าใช้จ่าย", - "expenses_categories" => "หมวดค่าใช้จ่าย", - "expenses_categories_desc" => "เพิ่ม, ปรับปรุง, และลบหมวดค่าใช้จ่าย", - "expenses_desc" => "เพิ่ม, ปรับปรุง, ลบ และค้นหาค่าใช้จ่าย", - "giftcards" => "บัตรกำนัล", - "giftcards_desc" => "เพิ่ม, อัพเดท, ลบ, และค้นหา บัตรกำนัล", - "home" => "หน้าหลัก", - "home_desc" => "แสดงรายการเมนูหลักของโมดูล", - "item_kits" => "สินค้าหมู่", - "item_kits_desc" => "เพิ่ม, อัพเดท, ลบ, และค้นหา สินค้าหมู่", - "items" => "สินค้า", - "items_desc" => "เพิ่ม, อัพเดท, ลบ, และค้นหา สินค้า", - "messages" => "Messages", - "messages_desc" => "ส่งข้อความถึง ลูกค้า, คู่ค้า และพนักงาน", - "migrate" => "โยกย้าย", - "migrate_desc" => "ปรับปรุงฐานข้อมูล OSPOS", - "office" => "สำนักงาน", - "office_desc" => "แสดงรายการเมนูโมดูลสำนักงาน", - "receivings" => "สินค้าเข้า", - "receivings_desc" => "สินค้าเข้า", - "reports" => "รายงาน", - "reports_desc" => "สร้างและตรวจสอบรายงาน", - "sales" => "งานขาย", - "sales_desc" => "งานขาย และ รับคืน", - "suppliers" => "ผู้ผลิต", - "suppliers_desc" => "เพิ่ม, อัพเดท, ลบ, และค้นหา ผู้ผลิต", - "taxes" => "ภาษี", - "taxes_desc" => "กำหนดค่าภาษีขาย", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "คุณลักษณะ", + "attributes_desc" => "เพิ่ม, ปรับปรุง, ลบ และการค้นหา คุณลักษณะ", + "both" => "ทั้งคู่", + "cashups" => "ยอดรับเงินสด", + "cashups_desc" => "เพิ่ม, ปรับปรุง, ลบ, และค้นหายอดรับเงินสด", + "config" => "ตั้งค่า", + "config_desc" => "ปรับแต่งร้านค้า", + "customers" => "ลูกค้า", + "customers_desc" => "เพิ่ม, อัพเดท, ลบ, และค้นหา ลูกค้า", + "employees" => "พนักงาน", + "employees_desc" => "เพิ่ม, อัพเดท, ลบ, และค้นหา พนักงาน", + "expenses" => "ค่าใช้จ่าย", + "expenses_categories" => "หมวดค่าใช้จ่าย", + "expenses_categories_desc" => "เพิ่ม, ปรับปรุง, และลบหมวดค่าใช้จ่าย", + "expenses_desc" => "เพิ่ม, ปรับปรุง, ลบ และค้นหาค่าใช้จ่าย", + "giftcards" => "บัตรกำนัล", + "giftcards_desc" => "เพิ่ม, อัพเดท, ลบ, และค้นหา บัตรกำนัล", + "home" => "หน้าหลัก", + "home_desc" => "แสดงรายการเมนูหลักของโมดูล", + "item_kits" => "สินค้าหมู่", + "item_kits_desc" => "เพิ่ม, อัพเดท, ลบ, และค้นหา สินค้าหมู่", + "items" => "สินค้า", + "items_desc" => "เพิ่ม, อัพเดท, ลบ, และค้นหา สินค้า", + "messages" => "Messages", + "messages_desc" => "ส่งข้อความถึง ลูกค้า, คู่ค้า และพนักงาน", + "migrate" => "โยกย้าย", + "migrate_desc" => "ปรับปรุงฐานข้อมูล OSPOS", + "office" => "สำนักงาน", + "office_desc" => "แสดงรายการเมนูโมดูลสำนักงาน", + "receivings" => "สินค้าเข้า", + "receivings_desc" => "สินค้าเข้า", + "reports" => "รายงาน", + "reports_desc" => "สร้างและตรวจสอบรายงาน", + "sales" => "งานขาย", + "sales_desc" => "งานขาย และ รับคืน", + "suppliers" => "ผู้ผลิต", + "suppliers_desc" => "เพิ่ม, อัพเดท, ลบ, และค้นหา ผู้ผลิต", + "taxes" => "ภาษี", + "taxes_desc" => "กำหนดค่าภาษีขาย", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/th/Reports.php b/app/Language/th/Reports.php index 75e27fe31..34665803f 100644 --- a/app/Language/th/Reports.php +++ b/app/Language/th/Reports.php @@ -1,148 +1,148 @@ "ทั้งหมด", - "authority" => "ผู้ได้รับอนุญาติ", - "canceled" => "ถูกยกเลิก", - "categories" => "หมวดหมู่", - "categories_summary_report" => "รายงานสรุปหมวดหมู่", - "category" => "หมวดหมู่", - "code_canceled" => "รหัสยกเลิก", - "code_invoice" => "รหัสใบแจ้งหนี้", - "code_pos" => "รหัส POS", - "code_quote" => "อ้างอิง", - "code_return" => "รหัสส่งคืน", - "code_type" => "ประเภท", - "code_work_order" => "รหัสสั่งงาน", - "comments" => "หมายเหตุ", - "commission" => "", - "complete" => "การขายและรับคืนที่สมบูรณ์", - "completed_sales" => "การขายที่สมบูรณ์", - "confirm_delete" => "คุณแน่ใจหรือว่าต้องการลบรายการที่เลือก ?", - "confirm_restore" => "คุณแน่ใจหรือไม่ว่าต้องการกู้คืนรายการที่เลือก?", - "cost" => "ราคาขายส่ง", - "cost_price" => "ราคาขายส่ง", - "count" => "นับ", - "customer" => "ลูกค้า", - "customers" => "ลูกค้า", - "customers_summary_report" => "รายงานสรุปลูกค้า", - "date" => "วันที่", - "date_range" => "ระหว่างวันที่", - "description" => "คำอธิบาย", - "detailed_receivings_report" => "รายงานรายละเอียกการรับของ", - "detailed_receivings_report_input" => "", - "detailed_reports" => "รายละเอียดรายงาน", - "detailed_requisition_report" => "รายงานรายละเอียดการเบิกของ", - "detailed_sales_report" => "รายงายงานขาย", - "discount" => "ส่วนลด", - "discount_fixed" => "ส่วนลดคงที่", - "discount_percent" => "เปอร์เซ็นต์ส่วนลด", - "discount_type" => "ประเภทส่วนลด", - "discounts" => "ส่วนลด", - "discounts_summary_report" => "รายงานสรุปส่วนลด", - "earned" => "คะแนนที่ได้รับ", - "employee" => "พนักงาน", - "employees" => "พนักงาน", - "employees_summary_report" => "รายงานสรุปพนักงาน", - "expenses" => "รายจ่าย", - "expenses_amount" => "ยอดรวม", - "expenses_categories" => "สรุปค่าใช้จ่าย", - "expenses_categories_summary_report" => "รายงานสรุปหมวดหมู่ค่าใช้จ่าย", - "expenses_category" => "หมวดหมู่", - "expenses_payment_amount" => "", - "expenses_tax_amount" => "ภาษี", - "expenses_total_amount" => "ยอดรวมทั้งหมด", - "expenses_total_tax_amount" => "ภาษีทั้งหมด", - "graphical_reports" => "รายงายแบบกราฟ", - "inventory" => "สินค้าคงคลัง", - "inventory_low" => "สินค้าเหลือน้อย", - "inventory_low_report" => "รายงานสินค้าที่เหลือน้อย", - "inventory_reports" => "รายงานสินค้าคงเหลือ", - "inventory_summary" => "รายงานสินค้าคงเหลือ", - "inventory_summary_report" => "รายงานสรุปสินค้าคงเหลือ", - "item" => "สินค้า", - "item_count" => "ตัวกรองรายการตามการนับ", - "item_name" => "ชื่อสินค้า", - "item_number" => "เลขสินค้า", - "items" => "สินค้า", - "items_purchased" => "สินค้าที่ถูกซื้อ", - "items_received" => "สินค้าเข้า", - "items_summary_report" => "รายงานสรุปสินค้า", - "jurisdiction" => "การควบคุม", - "low_inventory" => "", - "low_inventory_report" => "", - "low_sell_quantity" => "จำนวนขายน้อย", - "more_than_zero" => "มากกว่าศูนย์", - "name" => "ชื่อ", - "no_reports_to_display" => "ไม่มีสินค้าแสดง", - "payment_type" => "ชนิดของการจ่าย", - "payments" => "รายจ่าย", - "payments_summary_report" => "รายงานสรุปการจ่าย", - "profit" => "กำไร", - "quantity" => "จำนวน", - "quantity_purchased" => "จำนวนการช์้อ", - "quotes" => "อ้างอิง", - "received_by" => "รับโดย", - "receiving_id" => "เลขที่การรับ", - "receiving_type" => "รูปแบบการรับสินค้า", - "receivings" => "รับสินค้า", - "reorder_level" => "ระดับการสั่งใหม่", - "report" => "รายงาน", - "report_input" => "ข้อมูลรายงาน", - "reports" => "รายงาน", - "requisition" => "เบิกสินค้า", - "requisition_by" => "ผู้เบิกสินค้า", - "requisition_id" => "IDเบิกสินค้า", - "requisition_item" => "ชื่อสินค้า", - "requisition_item_quantity" => "จำนวนเบิก", - "requisition_related_item" => "สินค้าย่อย", - "requisition_related_item_total_quantity" => "จำนวนรวมสินค้าย่อย", - "requisition_related_item_unit_quantity" => "จำนวนสินค้าย่ิอย", - "requisitions" => "ใบเบิกของ", - "returns" => "คืน", - "revenue" => "รายรับ", - "sale_id" => "เลขที่รายการ", - "sale_type" => "ชนิดของการขาย", - "sales" => "ขาย", - "sales_amount" => "จำนวนขาย", - "sales_summary_report" => "รายงานสรุปการขาย", - "sales_taxes" => "ภาษีขาย", - "sales_taxes_summary_report" => "รายงานสรุปภาษีขาย", - "serial_number" => "หมายเลขซีเรียล", - "service_charge" => "", - "sold_by" => "ขายโดย", - "sold_items" => "", - "sold_to" => "ขายไปที่", - "stock_location" => "ที่ตั้งคลังสินค้า", - "sub_total_value" => "ยอดรวมหักภาษี", - "subtotal" => "ยอดรวมรอง", - "summary_reports" => "สรุปรายงาน", - "supplied_by" => "ผบิตโดย", - "supplier" => "ผู้ผลิต", - "suppliers" => "ผู้ผลิต", - "suppliers_summary_report" => "รายงานสรุปผู้ผลิต", - "tax" => "ภาษี", - "tax_category" => "หมวดหมู่ภาษี", - "tax_name" => "ชื่อผู้เสียภาษี", - "tax_percent" => "เปอร์เซ็นภาษี", - "tax_rate" => "อัตราภาษี", - "taxes" => "ภาษี", - "taxes_summary_report" => "รายงานสรุปภาษี", - "total" => "ยอดรวม", - "total_inventory_value" => "มูลค่าสินค้าคงคลังรวม", - "total_low_sell_quantity" => "จำนวนการขายต่ำ", - "total_quantity" => "ปริมาณรวม", - "total_retail" => "มูลค่ารวมใบแจ้งหนี้ค้าปลีก", - "trans_amount" => "จำนวนรายการ", - "trans_due" => "วันนัดหมาย", - "trans_group" => "กลุ่มธุรกรรม", - "trans_nopay_sales" => "การขายโดยไม่มีการชำระเงิน", - "trans_payments" => "การชำระเงิน", - "trans_refunded" => "คืนเงิน", - "trans_sales" => "การขาย", - "trans_type" => "ประเภทธุรกรรม", - "type" => "ชนิด", - "unit_price" => "ราคาขาย", - "used" => "คะแนนที่ใช้", - "work_orders" => "การสั่งงาน", - "zero_and_less" => "เท่ากับศูนย์และน้อยกว่า", + "all" => "ทั้งหมด", + "authority" => "ผู้ได้รับอนุญาติ", + "canceled" => "ถูกยกเลิก", + "categories" => "หมวดหมู่", + "categories_summary_report" => "รายงานสรุปหมวดหมู่", + "category" => "หมวดหมู่", + "code_canceled" => "รหัสยกเลิก", + "code_invoice" => "รหัสใบแจ้งหนี้", + "code_pos" => "รหัส POS", + "code_quote" => "อ้างอิง", + "code_return" => "รหัสส่งคืน", + "code_type" => "ประเภท", + "code_work_order" => "รหัสสั่งงาน", + "comments" => "หมายเหตุ", + "commission" => "", + "complete" => "การขายและรับคืนที่สมบูรณ์", + "completed_sales" => "การขายที่สมบูรณ์", + "confirm_delete" => "คุณแน่ใจหรือว่าต้องการลบรายการที่เลือก ?", + "confirm_restore" => "คุณแน่ใจหรือไม่ว่าต้องการกู้คืนรายการที่เลือก?", + "cost" => "ราคาขายส่ง", + "cost_price" => "ราคาขายส่ง", + "count" => "นับ", + "customer" => "ลูกค้า", + "customers" => "ลูกค้า", + "customers_summary_report" => "รายงานสรุปลูกค้า", + "date" => "วันที่", + "date_range" => "ระหว่างวันที่", + "description" => "คำอธิบาย", + "detailed_receivings_report" => "รายงานรายละเอียกการรับของ", + "detailed_receivings_report_input" => "", + "detailed_reports" => "รายละเอียดรายงาน", + "detailed_requisition_report" => "รายงานรายละเอียดการเบิกของ", + "detailed_sales_report" => "รายงายงานขาย", + "discount" => "ส่วนลด", + "discount_fixed" => "ส่วนลดคงที่", + "discount_percent" => "เปอร์เซ็นต์ส่วนลด", + "discount_type" => "ประเภทส่วนลด", + "discounts" => "ส่วนลด", + "discounts_summary_report" => "รายงานสรุปส่วนลด", + "earned" => "คะแนนที่ได้รับ", + "employee" => "พนักงาน", + "employees" => "พนักงาน", + "employees_summary_report" => "รายงานสรุปพนักงาน", + "expenses" => "รายจ่าย", + "expenses_amount" => "ยอดรวม", + "expenses_categories" => "สรุปค่าใช้จ่าย", + "expenses_categories_summary_report" => "รายงานสรุปหมวดหมู่ค่าใช้จ่าย", + "expenses_category" => "หมวดหมู่", + "expenses_payment_amount" => "", + "expenses_tax_amount" => "ภาษี", + "expenses_total_amount" => "ยอดรวมทั้งหมด", + "expenses_total_tax_amount" => "ภาษีทั้งหมด", + "graphical_reports" => "รายงายแบบกราฟ", + "inventory" => "สินค้าคงคลัง", + "inventory_low" => "สินค้าเหลือน้อย", + "inventory_low_report" => "รายงานสินค้าที่เหลือน้อย", + "inventory_reports" => "รายงานสินค้าคงเหลือ", + "inventory_summary" => "รายงานสินค้าคงเหลือ", + "inventory_summary_report" => "รายงานสรุปสินค้าคงเหลือ", + "item" => "สินค้า", + "item_count" => "ตัวกรองรายการตามการนับ", + "item_name" => "ชื่อสินค้า", + "item_number" => "เลขสินค้า", + "items" => "สินค้า", + "items_purchased" => "สินค้าที่ถูกซื้อ", + "items_received" => "สินค้าเข้า", + "items_summary_report" => "รายงานสรุปสินค้า", + "jurisdiction" => "การควบคุม", + "low_inventory" => "", + "low_inventory_report" => "", + "low_sell_quantity" => "จำนวนขายน้อย", + "more_than_zero" => "มากกว่าศูนย์", + "name" => "ชื่อ", + "no_reports_to_display" => "ไม่มีสินค้าแสดง", + "payment_type" => "ชนิดของการจ่าย", + "payments" => "รายจ่าย", + "payments_summary_report" => "รายงานสรุปการจ่าย", + "profit" => "กำไร", + "quantity" => "จำนวน", + "quantity_purchased" => "จำนวนการช์้อ", + "quotes" => "อ้างอิง", + "received_by" => "รับโดย", + "receiving_id" => "เลขที่การรับ", + "receiving_type" => "รูปแบบการรับสินค้า", + "receivings" => "รับสินค้า", + "reorder_level" => "ระดับการสั่งใหม่", + "report" => "รายงาน", + "report_input" => "ข้อมูลรายงาน", + "reports" => "รายงาน", + "requisition" => "เบิกสินค้า", + "requisition_by" => "ผู้เบิกสินค้า", + "requisition_id" => "IDเบิกสินค้า", + "requisition_item" => "ชื่อสินค้า", + "requisition_item_quantity" => "จำนวนเบิก", + "requisition_related_item" => "สินค้าย่อย", + "requisition_related_item_total_quantity" => "จำนวนรวมสินค้าย่อย", + "requisition_related_item_unit_quantity" => "จำนวนสินค้าย่ิอย", + "requisitions" => "ใบเบิกของ", + "returns" => "คืน", + "revenue" => "รายรับ", + "sale_id" => "เลขที่รายการ", + "sale_type" => "ชนิดของการขาย", + "sales" => "ขาย", + "sales_amount" => "จำนวนขาย", + "sales_summary_report" => "รายงานสรุปการขาย", + "sales_taxes" => "ภาษีขาย", + "sales_taxes_summary_report" => "รายงานสรุปภาษีขาย", + "serial_number" => "หมายเลขซีเรียล", + "service_charge" => "", + "sold_by" => "ขายโดย", + "sold_items" => "", + "sold_to" => "ขายไปที่", + "stock_location" => "ที่ตั้งคลังสินค้า", + "sub_total_value" => "ยอดรวมหักภาษี", + "subtotal" => "ยอดรวมรอง", + "summary_reports" => "สรุปรายงาน", + "supplied_by" => "ผบิตโดย", + "supplier" => "ผู้ผลิต", + "suppliers" => "ผู้ผลิต", + "suppliers_summary_report" => "รายงานสรุปผู้ผลิต", + "tax" => "ภาษี", + "tax_category" => "หมวดหมู่ภาษี", + "tax_name" => "ชื่อผู้เสียภาษี", + "tax_percent" => "เปอร์เซ็นภาษี", + "tax_rate" => "อัตราภาษี", + "taxes" => "ภาษี", + "taxes_summary_report" => "รายงานสรุปภาษี", + "total" => "ยอดรวม", + "total_inventory_value" => "มูลค่าสินค้าคงคลังรวม", + "total_low_sell_quantity" => "จำนวนการขายต่ำ", + "total_quantity" => "ปริมาณรวม", + "total_retail" => "มูลค่ารวมใบแจ้งหนี้ค้าปลีก", + "trans_amount" => "จำนวนรายการ", + "trans_due" => "วันนัดหมาย", + "trans_group" => "กลุ่มธุรกรรม", + "trans_nopay_sales" => "การขายโดยไม่มีการชำระเงิน", + "trans_payments" => "การชำระเงิน", + "trans_refunded" => "คืนเงิน", + "trans_sales" => "การขาย", + "trans_type" => "ประเภทธุรกรรม", + "type" => "ชนิด", + "unit_price" => "ราคาขาย", + "used" => "คะแนนที่ใช้", + "work_orders" => "การสั่งงาน", + "zero_and_less" => "เท่ากับศูนย์และน้อยกว่า", ]; diff --git a/app/Language/th/Suppliers.php b/app/Language/th/Suppliers.php index 7869fe4cd..8f6f52e11 100644 --- a/app/Language/th/Suppliers.php +++ b/app/Language/th/Suppliers.php @@ -1,24 +1,24 @@ "เลขที่บัญชี", - "agency_name" => "ชื่อตัวแทน", - "cannot_be_deleted" => "ลบผู้ผลิตที่ถูกเลือกไม่ได้, ผู้ผลิตบางรายยังคงมีการขายสินค้า", - "category" => "ประเภท", - "company_name" => "ชื่อบริษัท", - "company_name_required" => "ชื่อบริษัทต้องกรอก", - "confirm_delete" => "แน่ใจหรือไม่ที่จะลบชื่อผู้ผลิตที่เลือกไว้?", - "confirm_restore" => "แน่ใจหรือไม่ที่จะเรียกคืนชื่อผู้ผลิตที่เลือกไว้?", - "cost" => "ราคาผู้ผลิต", - "error_adding_updating" => "เพิ่ม/แก้ไข ผู้ผลิต ล้มเหลว", - "goods" => "ผู้ผลิตสินค้า", - "new" => "ผู้ผลิตรายใหม่", - "none_selected" => "คุณยังไม่ได้เลือกผู้ผลิตที่ต้องการลบ", - "one_or_multiple" => "ผู้ผลิต", - "successful_adding" => "เพิ่มผู้ผลิตสำเร็จ", - "successful_deleted" => "ลบสำเร็จ", - "successful_updating" => "ปรับปรุงผู้ผลิตสำเร็จ", - "supplier" => "ผู้ผลิต", - "supplier_id" => "Id", - "tax_id" => "เลขที่ผู้เสียภาษี", - "update" => "แก้ไขข้อมูลผู้ผลิต", + "account_number" => "เลขที่บัญชี", + "agency_name" => "ชื่อตัวแทน", + "cannot_be_deleted" => "ลบผู้ผลิตที่ถูกเลือกไม่ได้, ผู้ผลิตบางรายยังคงมีการขายสินค้า", + "category" => "ประเภท", + "company_name" => "ชื่อบริษัท", + "company_name_required" => "ชื่อบริษัทต้องกรอก", + "confirm_delete" => "แน่ใจหรือไม่ที่จะลบชื่อผู้ผลิตที่เลือกไว้?", + "confirm_restore" => "แน่ใจหรือไม่ที่จะเรียกคืนชื่อผู้ผลิตที่เลือกไว้?", + "cost" => "ราคาผู้ผลิต", + "error_adding_updating" => "เพิ่ม/แก้ไข ผู้ผลิต ล้มเหลว", + "goods" => "ผู้ผลิตสินค้า", + "new" => "ผู้ผลิตรายใหม่", + "none_selected" => "คุณยังไม่ได้เลือกผู้ผลิตที่ต้องการลบ", + "one_or_multiple" => "ผู้ผลิต", + "successful_adding" => "เพิ่มผู้ผลิตสำเร็จ", + "successful_deleted" => "ลบสำเร็จ", + "successful_updating" => "ปรับปรุงผู้ผลิตสำเร็จ", + "supplier" => "ผู้ผลิต", + "supplier_id" => "Id", + "tax_id" => "เลขที่ผู้เสียภาษี", + "update" => "แก้ไขข้อมูลผู้ผลิต", ]; diff --git a/app/Language/th/Taxes.php b/app/Language/th/Taxes.php index 7668feae6..a1d677356 100644 --- a/app/Language/th/Taxes.php +++ b/app/Language/th/Taxes.php @@ -1,82 +1,82 @@ "เพิ่มข้อยกเว้น", - "cascade" => "ภาษีแบบซ้ำซ้อน", - "cascade_sequence" => "ลำดับภาษีแบบซ้ำซ้อน", - "city" => "เมือง", - "code" => "รหัสภาษี", - "confirm_delete" => "คุณแน่ใจหรือว่าต้องการลบรหัสภาษีนี้? การกระทำนี้ไม่สามารถยกเลิกได้", - "confirm_restore" => "คุณแน่ใจหรือไม่ว่าต้องการกู้คืนรหัสภาษีที่เลือก?", - "default_tax_category" => "ค่าเริ่มต้นกลุ่มภาษี", - "default_tax_rate" => "อัตราภาษีเริ่มต้น", - "error_adding_updating" => "การเพิ่มหรืออัปเดตรหัสภาษีล้มเหลว", - "group_seq" => "ลำดับกลุ่ม", - "jurisdiction_name" => "ชื่อหน่วยเขตภาษี", - "name" => "ชื่อภาษี", - "new" => "ภาษีใหม่", - "no_taxes" => "", - "no_taxes_to_display" => "ไม่มีรหัสภาษีที่จะแสดงได้", - "reporting_authority" => "ผู้มีอำนาจรายงาน", - "round_half_down" => "ปัดหน่วยลง", - "round_half_even" => "ปัดเป็นคู่", - "round_half_odd" => "ปัดเป็นคี่", - "round_half_up" => "ปัดขึ้น", - "rounding_code" => "รหัสปัดเศษ", - "sales_tax" => "ภาษีการขาย", - "sales_tax_by_invoice" => "ภาษีขายตามใบแจ้งหนี้", - "sequence" => "ลำดับ", - "state" => "ภาษีรัฐ", - "successful_deleted" => "คุณลบรายการสำเร็จแล้ว", - "tax_categories" => "หมวดหมู่ภาษี", - "tax_categories_configuration" => "ตั้งค่าหมวดหมู่ภาษี", - "tax_categories_saved_successfully" => "บันทึกการเปลี่ยนแปลงหมวดหมู่ภาษีแล้ว", - "tax_categories_saved_unsuccessfully" => "ไม่สามารถบันทึกการเปลี่ยนแปลงหมวดภาษี", - "tax_category" => "ประเภทภาษี", - "tax_category_code" => "รหัสประเภทภาษี", - "tax_category_duplicate" => "หมวดหมู่ภาษีซ้ำ", - "tax_category_invalid_chars" => "ระบุบค่าไม่ถูกต้องในชื่อหมวดหมู่ภาษี", - "tax_category_name" => "ชื่อหมวดหมู่ภาษี", - "tax_category_new" => "หมวดหมู่ภาษีใหม่", - "tax_category_required" => "ต้องระบุหมวดภาษี", - "tax_code" => "รหัสภาษี", - "tax_code_cannot_be_deleted" => "การลบรหัสภาษีล้มเหลว", - "tax_code_duplicate" => "รหัสภาษีซ้ำ", - "tax_code_invalid_chars" => "ระบุค่าไม่ถูกต้องในรหัสภาษี", - "tax_code_name" => "ชื่อรหัสภาษี", - "tax_code_required" => "จำเป็นต้องระบุรหัสภาษี", - "tax_code_successful_deleted" => "คุณได้ลบรหัสภาษีเรียบร้อยแล้ว", - "tax_code_successful_updated" => "คุณปรับปรุงข้อมูลเรียบร้อยแล้ว", - "tax_code_successful_updating" => "คุณปรับปรุงข้อมูลรหัสภาษีเรียบร้อยแล้ว", - "tax_code_successfully_added" => "คุณได้เพิ่มข้อมูลเรียบร้อยแล้ว", - "tax_code_type" => "ประเภทรหัสภาษี", - "tax_codes" => "รหัสภาษี", - "tax_codes_configuration" => "ตั้งค่ารหัสภาษี", - "tax_codes_saved_successfully" => "บันทึกการเปลี่ยนแปลงรหัสภาษีแล้ว", - "tax_codes_saved_unsuccessfully" => "ไม่สามารถบันทึกการเปลี่ยนแปลงรหัสภาษีได้", - "tax_excluded" => "ไม่รวมภาษี", - "tax_group" => "กลุ่มภาษี", - "tax_group_not_unique" => "กลุ่มภาษี {0} ต้องไม่ซ้ำกัน", - "tax_group_sequence" => "ลำดับกลุ่มภาษี", - "tax_included" => "รวมภาษี", - "tax_jurisdiction" => "เขตอำนาจศาลภาษี", - "tax_jurisdiction_duplicate" => "เขตอำนาจศาลภาษีซ้ำกัน", - "tax_jurisdiction_invalid_chars" => "ระบุตัวอักษรไม่ถูกต้องในชื่อเขตอำนาจศาล", - "tax_jurisdiction_required" => "จำเป็นต้องระบุเขตอำนาจศาลภาษี", - "tax_jurisdictions" => "เขตอำนาจศาลภาษี", - "tax_jurisdictions_configuration" => "ตั้งค่าเขตอำนาจศาลภาษี", - "tax_jurisdictions_saved_successfully" => "บันทึกการเปลี่ยนแปลงเขตอำนาจศาลภาษีแล้ว", - "tax_jurisdictions_saved_unsuccessfully" => "การเปลี่ยนแปลงเขตอำนาจศาลภาษีไม่ได้รับการบันทึก", - "tax_rate" => "อัตราภาษี", - "tax_rate_configuration" => "ตั้งค่าอัตราภาษี", - "tax_rate_error_adding_updating" => "การเพิ่มหรืออัปเดตอัตราภาษีล้มเหลว", - "tax_rate_numeric" => "อัตราภาษีต้องเป็นตัวเลข", - "tax_rate_required" => "จำเป็นต้องระบุอัตราภาษี", - "tax_rate_successful_updated" => "คุณปรับปรุงข้อมูลเรียบร้อยแล้ว", - "tax_rate_successfully_added" => "คุณได้เพิ่มเรียบร้อยแล้ว", - "tax_rates" => "อัตราภาษี", - "tax_rates_configuration" => "ตั้งค่าอัตราภาษี", - "tax_rounding" => "การปัดเศษภาษี", - "tax_type" => "ประเภทภาษี", - "update" => "ปรับปรุงอัตราภาษี", - "vat_tax" => "ภาษีมูลค่าเพิ่ม", + "add_exception" => "เพิ่มข้อยกเว้น", + "cascade" => "ภาษีแบบซ้ำซ้อน", + "cascade_sequence" => "ลำดับภาษีแบบซ้ำซ้อน", + "city" => "เมือง", + "code" => "รหัสภาษี", + "confirm_delete" => "คุณแน่ใจหรือว่าต้องการลบรหัสภาษีนี้? การกระทำนี้ไม่สามารถยกเลิกได้", + "confirm_restore" => "คุณแน่ใจหรือไม่ว่าต้องการกู้คืนรหัสภาษีที่เลือก?", + "default_tax_category" => "ค่าเริ่มต้นกลุ่มภาษี", + "default_tax_rate" => "อัตราภาษีเริ่มต้น", + "error_adding_updating" => "การเพิ่มหรืออัปเดตรหัสภาษีล้มเหลว", + "group_seq" => "ลำดับกลุ่ม", + "jurisdiction_name" => "ชื่อหน่วยเขตภาษี", + "name" => "ชื่อภาษี", + "new" => "ภาษีใหม่", + "no_taxes" => "", + "no_taxes_to_display" => "ไม่มีรหัสภาษีที่จะแสดงได้", + "reporting_authority" => "ผู้มีอำนาจรายงาน", + "round_half_down" => "ปัดหน่วยลง", + "round_half_even" => "ปัดเป็นคู่", + "round_half_odd" => "ปัดเป็นคี่", + "round_half_up" => "ปัดขึ้น", + "rounding_code" => "รหัสปัดเศษ", + "sales_tax" => "ภาษีการขาย", + "sales_tax_by_invoice" => "ภาษีขายตามใบแจ้งหนี้", + "sequence" => "ลำดับ", + "state" => "ภาษีรัฐ", + "successful_deleted" => "คุณลบรายการสำเร็จแล้ว", + "tax_categories" => "หมวดหมู่ภาษี", + "tax_categories_configuration" => "ตั้งค่าหมวดหมู่ภาษี", + "tax_categories_saved_successfully" => "บันทึกการเปลี่ยนแปลงหมวดหมู่ภาษีแล้ว", + "tax_categories_saved_unsuccessfully" => "ไม่สามารถบันทึกการเปลี่ยนแปลงหมวดภาษี", + "tax_category" => "ประเภทภาษี", + "tax_category_code" => "รหัสประเภทภาษี", + "tax_category_duplicate" => "หมวดหมู่ภาษีซ้ำ", + "tax_category_invalid_chars" => "ระบุบค่าไม่ถูกต้องในชื่อหมวดหมู่ภาษี", + "tax_category_name" => "ชื่อหมวดหมู่ภาษี", + "tax_category_new" => "หมวดหมู่ภาษีใหม่", + "tax_category_required" => "ต้องระบุหมวดภาษี", + "tax_code" => "รหัสภาษี", + "tax_code_cannot_be_deleted" => "การลบรหัสภาษีล้มเหลว", + "tax_code_duplicate" => "รหัสภาษีซ้ำ", + "tax_code_invalid_chars" => "ระบุค่าไม่ถูกต้องในรหัสภาษี", + "tax_code_name" => "ชื่อรหัสภาษี", + "tax_code_required" => "จำเป็นต้องระบุรหัสภาษี", + "tax_code_successful_deleted" => "คุณได้ลบรหัสภาษีเรียบร้อยแล้ว", + "tax_code_successful_updated" => "คุณปรับปรุงข้อมูลเรียบร้อยแล้ว", + "tax_code_successful_updating" => "คุณปรับปรุงข้อมูลรหัสภาษีเรียบร้อยแล้ว", + "tax_code_successfully_added" => "คุณได้เพิ่มข้อมูลเรียบร้อยแล้ว", + "tax_code_type" => "ประเภทรหัสภาษี", + "tax_codes" => "รหัสภาษี", + "tax_codes_configuration" => "ตั้งค่ารหัสภาษี", + "tax_codes_saved_successfully" => "บันทึกการเปลี่ยนแปลงรหัสภาษีแล้ว", + "tax_codes_saved_unsuccessfully" => "ไม่สามารถบันทึกการเปลี่ยนแปลงรหัสภาษีได้", + "tax_excluded" => "ไม่รวมภาษี", + "tax_group" => "กลุ่มภาษี", + "tax_group_not_unique" => "กลุ่มภาษี {0} ต้องไม่ซ้ำกัน", + "tax_group_sequence" => "ลำดับกลุ่มภาษี", + "tax_included" => "รวมภาษี", + "tax_jurisdiction" => "เขตอำนาจศาลภาษี", + "tax_jurisdiction_duplicate" => "เขตอำนาจศาลภาษีซ้ำกัน", + "tax_jurisdiction_invalid_chars" => "ระบุตัวอักษรไม่ถูกต้องในชื่อเขตอำนาจศาล", + "tax_jurisdiction_required" => "จำเป็นต้องระบุเขตอำนาจศาลภาษี", + "tax_jurisdictions" => "เขตอำนาจศาลภาษี", + "tax_jurisdictions_configuration" => "ตั้งค่าเขตอำนาจศาลภาษี", + "tax_jurisdictions_saved_successfully" => "บันทึกการเปลี่ยนแปลงเขตอำนาจศาลภาษีแล้ว", + "tax_jurisdictions_saved_unsuccessfully" => "การเปลี่ยนแปลงเขตอำนาจศาลภาษีไม่ได้รับการบันทึก", + "tax_rate" => "อัตราภาษี", + "tax_rate_configuration" => "ตั้งค่าอัตราภาษี", + "tax_rate_error_adding_updating" => "การเพิ่มหรืออัปเดตอัตราภาษีล้มเหลว", + "tax_rate_numeric" => "อัตราภาษีต้องเป็นตัวเลข", + "tax_rate_required" => "จำเป็นต้องระบุอัตราภาษี", + "tax_rate_successful_updated" => "คุณปรับปรุงข้อมูลเรียบร้อยแล้ว", + "tax_rate_successfully_added" => "คุณได้เพิ่มเรียบร้อยแล้ว", + "tax_rates" => "อัตราภาษี", + "tax_rates_configuration" => "ตั้งค่าอัตราภาษี", + "tax_rounding" => "การปัดเศษภาษี", + "tax_type" => "ประเภทภาษี", + "update" => "ปรับปรุงอัตราภาษี", + "vat_tax" => "ภาษีมูลค่าเพิ่ม", ]; diff --git a/app/Language/th/index.html b/app/Language/th/index.html index c6dd14e29..69df4e1df 100644 --- a/app/Language/th/index.html +++ b/app/Language/th/index.html @@ -1,7 +1,7 @@ - 403 Forbidden + 403 Forbidden @@ -9,4 +9,3 @@ - diff --git a/app/Language/tl/Attributes.php b/app/Language/tl/Attributes.php index 82d14dc45..aa77521c8 100644 --- a/app/Language/tl/Attributes.php +++ b/app/Language/tl/Attributes.php @@ -1,32 +1,32 @@ "Attribute value cannot contain ':' or '|'", - "confirm_delete" => "Are you sure you want to restore the selected attribute(s)?", - "confirm_restore" => "Are you sure you want to delete the selected attribute(s)?", - "definition_cannot_be_deleted" => "Could not delete selected attribute(s)", - "definition_error_adding_updating" => "Attribute {0} could not be added or updated. Please check the error log.", - "definition_flags" => "Attribute Visibility", - "definition_group" => "Group", - "definition_id" => "Id", - "definition_name" => "Add Attribute", - "definition_name_required" => "Attribute type is a required field", - "definition_one_or_multiple" => "attribute(s)", - "definition_successful_adding" => "You have successfully added item", - "definition_successful_deleted" => "You have successfully deleted", - "definition_successful_updating" => "You have successfully updated Item Kit", - "definition_type" => "Attribute Type", - "definition_type_required" => "Attribute name is a required field", - "definition_unit" => "Measurement Unit", - "definition_values" => "Attribute Values", - "new" => "New Attribute", - "no_attributes_to_display" => "No Items to display.", - "receipt_visibility" => "Receipt", - "show_in_items" => "Show in items", - "show_in_items_visibility" => "Items", - "show_in_receipt" => "Show in receipt", - "show_in_receivings" => "Show in receivings", - "show_in_receivings_visibility" => "Receivings", - "show_in_sales" => "Show in sales", - "show_in_sales_visibility" => "Sales", - "update" => "Update Attribute", + "attribute_value_invalid_chars" => "Attribute value cannot contain ':' or '|'", + "confirm_delete" => "Are you sure you want to restore the selected attribute(s)?", + "confirm_restore" => "Are you sure you want to delete the selected attribute(s)?", + "definition_cannot_be_deleted" => "Could not delete selected attribute(s)", + "definition_error_adding_updating" => "Attribute {0} could not be added or updated. Please check the error log.", + "definition_flags" => "Attribute Visibility", + "definition_group" => "Group", + "definition_id" => "Id", + "definition_name" => "Add Attribute", + "definition_name_required" => "Attribute type is a required field", + "definition_one_or_multiple" => "attribute(s)", + "definition_successful_adding" => "You have successfully added item", + "definition_successful_deleted" => "You have successfully deleted", + "definition_successful_updating" => "You have successfully updated Item Kit", + "definition_type" => "Attribute Type", + "definition_type_required" => "Attribute name is a required field", + "definition_unit" => "Measurement Unit", + "definition_values" => "Attribute Values", + "new" => "New Attribute", + "no_attributes_to_display" => "No Items to display.", + "receipt_visibility" => "Receipt", + "show_in_items" => "Show in items", + "show_in_items_visibility" => "Items", + "show_in_receipt" => "Show in receipt", + "show_in_receivings" => "Show in receivings", + "show_in_receivings_visibility" => "Receivings", + "show_in_sales" => "Show in sales", + "show_in_sales_visibility" => "Sales", + "update" => "Update Attribute", ]; diff --git a/app/Language/tl/Bootstrap_tables.php b/app/Language/tl/Bootstrap_tables.php index c817e92f5..86d7a24cf 100644 --- a/app/Language/tl/Bootstrap_tables.php +++ b/app/Language/tl/Bootstrap_tables.php @@ -1,11 +1,11 @@ "All", - "columns" => "Columns", - "hide_show_pagination" => "Hide/Show pagination", - "loading" => "Loading, please wait...", - "page_from_to" => "Showing {0} to {1} of {2} rows", - "refresh" => "Refresh", - "rows_per_page" => "{0} rows per page", - "toggle" => "Toggle", + "all" => "All", + "columns" => "Columns", + "hide_show_pagination" => "Hide/Show pagination", + "loading" => "Loading, please wait...", + "page_from_to" => "Showing {0} to {1} of {2} rows", + "refresh" => "Refresh", + "rows_per_page" => "{0} rows per page", + "toggle" => "Toggle", ]; diff --git a/app/Language/tl/Cashups.php b/app/Language/tl/Cashups.php index 9d31110a2..a333df8a1 100644 --- a/app/Language/tl/Cashups.php +++ b/app/Language/tl/Cashups.php @@ -1,49 +1,49 @@ "Amount", - "amount_number" => "Amount must be a number", - "amount_required" => "Amount is a Required Field.", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "Cashup cannot be deleted", - "cash_difference" => "", - "close_date" => "Close Date", - "close_employee" => "Closed By", - "closed_amount_card" => "Cards", - "closed_amount_cash" => "Closed Cash", - "closed_amount_check" => "Checks", - "closed_amount_due" => "Dues", - "closed_amount_giftcard" => "", - "closed_amount_total" => "Total", - "closed_date" => "Closed Date", - "confirm_delete" => "Are you sure you want to delete the selected Expense?", - "confirm_restore" => "Are you sure you want to restore selected entry(s)?", - "confirm_submit" => "", - "date_number" => "date must be a number", - "date_required" => "date is a required field", - "description" => "Description", - "enable_expected" => "", - "error_adding_updating" => "Error adding/updating Cashup", - "giftcard" => "", - "id" => "Id", - "info" => "Cashups Info", - "info_employee" => "", - "is_deleted" => "Deleted", - "new" => "New Cashup", - "no_cashups_to_display" => "There are no Cashups to display", - "none_selected" => "You have not selected any Cashups", - "note" => "Notes", - "one_or_multiple" => "Cashups(s)", - "open_amount_cash" => "Open Cash", - "open_date" => "Open Date", - "open_employee" => "Opened By", - "opened_date" => "Opened Date", - "successful_adding" => "Cashup add successful", - "successful_deleted" => "Cashup update successful", - "successful_updating" => "Cashup delete successful", - "total" => "Total", - "transfer_amount_cash" => "In/Out Cash", - "transfer_amount_cash_minus" => "", - "update" => "Update Cashup", - "warning" => "", + "amount" => "Amount", + "amount_number" => "Amount must be a number", + "amount_required" => "Amount is a Required Field.", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "Cashup cannot be deleted", + "cash_difference" => "", + "close_date" => "Close Date", + "close_employee" => "Closed By", + "closed_amount_card" => "Cards", + "closed_amount_cash" => "Closed Cash", + "closed_amount_check" => "Checks", + "closed_amount_due" => "Dues", + "closed_amount_giftcard" => "", + "closed_amount_total" => "Total", + "closed_date" => "Closed Date", + "confirm_delete" => "Are you sure you want to delete the selected Expense?", + "confirm_restore" => "Are you sure you want to restore selected entry(s)?", + "confirm_submit" => "", + "date_number" => "date must be a number", + "date_required" => "date is a required field", + "description" => "Description", + "enable_expected" => "", + "error_adding_updating" => "Error adding/updating Cashup", + "giftcard" => "", + "id" => "Id", + "info" => "Cashups Info", + "info_employee" => "", + "is_deleted" => "Deleted", + "new" => "New Cashup", + "no_cashups_to_display" => "There are no Cashups to display", + "none_selected" => "You have not selected any Cashups", + "note" => "Notes", + "one_or_multiple" => "Cashups(s)", + "open_amount_cash" => "Open Cash", + "open_date" => "Open Date", + "open_employee" => "Opened By", + "opened_date" => "Opened Date", + "successful_adding" => "Cashup add successful", + "successful_deleted" => "Cashup update successful", + "successful_updating" => "Cashup delete successful", + "total" => "Total", + "transfer_amount_cash" => "In/Out Cash", + "transfer_amount_cash_minus" => "", + "update" => "Update Cashup", + "warning" => "", ]; diff --git a/app/Language/tl/Common.php b/app/Language/tl/Common.php index c1f21e9ae..fd9979de0 100644 --- a/app/Language/tl/Common.php +++ b/app/Language/tl/Common.php @@ -1,88 +1,88 @@ "Address 2", - "address_2" => "Address 1", - "admin" => "", - "city" => "City", - "clerk" => "", - "close" => "Close", - "color" => "", - "comments" => "Comments", - "common" => "common", - "confirm_search" => "You have selected one or more rows, these will no longer be selected after your search. Are you sure you want to submit this search?", - "copyrights" => "© 2010 - {0}", - "correct_errors" => "Please correct identified errors before saving", - "country" => "Country", - "dashboard" => "", - "date" => "Date", - "delete" => "Delete", - "det" => "details", - "download_import_template" => "Download Import CSV Template (CSV)", - "edit" => "edit", - "email" => "Email", - "email_invalid_format" => "The email address is not in the correct format.", - "export_csv" => "CSV Export", - "export_csv_no" => "No", - "export_csv_yes" => "Yes", - "fields_required_message" => "Fields in red are required", - "fields_required_message_unique" => "", - "first_name" => "First name", - "first_name_required" => "Last Name is a required field.", - "first_page" => "First", - "gender" => "Gender", - "gender_female" => "F", - "gender_male" => "M", - "gender_undefined" => "", - "icon" => "", - "id" => "Id", - "import" => "Import", - "import_change_file" => "Change", - "import_csv" => "CSV Export", - "import_full_path" => "Full path to csv file required", - "import_remove_file" => "Remove", - "import_select_file" => "Select file", - "inv" => "inv", - "last_name" => "Last name", - "last_name_required" => "First Name is a required field.", - "last_page" => "Last", - "learn_about_project" => "to learn the latest information about the project.", - "list_of" => "List of", - "logo" => "", - "logo_mark" => "", - "logout" => "Logout", - "manager" => "", - "migration_needed" => "A database migration to {0} will start after login.", - "new" => "New", - "no" => "", - "no_persons_to_display" => "There are no people to display.", - "none_selected_text" => "[Select]", - "or" => "OR", - "people" => "", - "phone_number" => "Phone number", - "phone_number_required" => "", - "please_visit_my" => "Please visit the", - "position" => "", - "powered_by" => "Powered by", - "price" => "Price", - "print" => "Print", - "remove" => "Remove", - "required" => "Required", - "restore" => "Restore", - "return_policy" => "Return Policy", - "search" => "Search", - "search_options" => "Search options", - "searched_for" => "Searched for", - "software_short" => "", - "software_title" => "", - "state" => "State", - "submit" => "Submit", - "total_spent" => "Total spent", - "unknown" => "Unknown", - "view_recent_sales" => "View Recent Sales", - "website" => "Website", - "welcome" => "Welcome", - "welcome_message" => "Welcome to OSPOS, click a module below to get started.", - "yes" => "", - "you_are_using_ospos" => "You are using Open Source Point Of Sale version", - "zip" => "Postal Code", + "address_1" => "Address 2", + "address_2" => "Address 1", + "admin" => "", + "city" => "City", + "clerk" => "", + "close" => "Close", + "color" => "", + "comments" => "Comments", + "common" => "common", + "confirm_search" => "You have selected one or more rows, these will no longer be selected after your search. Are you sure you want to submit this search?", + "copyrights" => "© 2010 - {0}", + "correct_errors" => "Please correct identified errors before saving", + "country" => "Country", + "dashboard" => "", + "date" => "Date", + "delete" => "Delete", + "det" => "details", + "download_import_template" => "Download Import CSV Template (CSV)", + "edit" => "edit", + "email" => "Email", + "email_invalid_format" => "The email address is not in the correct format.", + "export_csv" => "CSV Export", + "export_csv_no" => "No", + "export_csv_yes" => "Yes", + "fields_required_message" => "Fields in red are required", + "fields_required_message_unique" => "", + "first_name" => "First name", + "first_name_required" => "Last Name is a required field.", + "first_page" => "First", + "gender" => "Gender", + "gender_female" => "F", + "gender_male" => "M", + "gender_undefined" => "", + "icon" => "", + "id" => "Id", + "import" => "Import", + "import_change_file" => "Change", + "import_csv" => "CSV Export", + "import_full_path" => "Full path to csv file required", + "import_remove_file" => "Remove", + "import_select_file" => "Select file", + "inv" => "inv", + "last_name" => "Last name", + "last_name_required" => "First Name is a required field.", + "last_page" => "Last", + "learn_about_project" => "to learn the latest information about the project.", + "list_of" => "List of", + "logo" => "", + "logo_mark" => "", + "logout" => "Logout", + "manager" => "", + "migration_needed" => "A database migration to {0} will start after login.", + "new" => "New", + "no" => "", + "no_persons_to_display" => "There are no people to display.", + "none_selected_text" => "[Select]", + "or" => "OR", + "people" => "", + "phone_number" => "Phone number", + "phone_number_required" => "", + "please_visit_my" => "Please visit the", + "position" => "", + "powered_by" => "Powered by", + "price" => "Price", + "print" => "Print", + "remove" => "Remove", + "required" => "Required", + "restore" => "Restore", + "return_policy" => "Return Policy", + "search" => "Search", + "search_options" => "Search options", + "searched_for" => "Searched for", + "software_short" => "", + "software_title" => "", + "state" => "State", + "submit" => "Submit", + "total_spent" => "Total spent", + "unknown" => "Unknown", + "view_recent_sales" => "View Recent Sales", + "website" => "Website", + "welcome" => "Welcome", + "welcome_message" => "Welcome to OSPOS, click a module below to get started.", + "yes" => "", + "you_are_using_ospos" => "You are using Open Source Point Of Sale version", + "zip" => "Postal Code", ]; diff --git a/app/Language/tl/Config.php b/app/Language/tl/Config.php index 1521eac1d..5611ed5b4 100644 --- a/app/Language/tl/Config.php +++ b/app/Language/tl/Config.php @@ -1,330 +1,330 @@ "Company Address", - "address_required" => "Company Phone is a required field.", - "all_set" => "All file permissions are set correctly!", - "allow_duplicate_barcodes" => "Allow Duplicate Barcodes", - "apostrophe" => "apostrophe", - "backup_button" => "Backup", - "backup_database" => "Backup Database", - "barcode" => "Barcode", - "barcode_company" => "Company Name", - "barcode_configuration" => "Barcode Configuration", - "barcode_content" => "Barcode Content", - "barcode_first_row" => "Row 3", - "barcode_font" => "Font", - "barcode_formats" => "Input Formats", - "barcode_generate_if_empty" => "Generate if empty.", - "barcode_height" => "Height (px)", - "barcode_id" => "Item Id/Name", - "barcode_info" => "Barcode Configuration Information", - "barcode_layout" => "Barcode Layout", - "barcode_name" => "Name", - "barcode_number" => "Barcode", - "barcode_number_in_row" => "Number in row", - "barcode_page_cellspacing" => "Display page cellspacing.", - "barcode_page_width" => "Display page width", - "barcode_price" => "Price", - "barcode_second_row" => "Row 3", - "barcode_third_row" => "Row 2", - "barcode_tooltip" => "Warning: This feature can cause duplicate items to be imported or created. Do not use if you do not want duplicate barcodes.", - "barcode_type" => "Barcode Type", - "barcode_width" => "Width (px)", - "bottom" => "Bottom", - "cash_button" => "", - "cash_button_1" => "", - "cash_button_2" => "", - "cash_button_3" => "", - "cash_button_4" => "", - "cash_button_5" => "", - "cash_button_6" => "", - "cash_decimals" => "Cash Decimals", - "cash_decimals_tooltip" => "If Cash Decimals and Currency Decimals are the same then no cash rounding will take place.", - "cash_rounding" => "Cash Rounding", - "category_dropdown" => "", - "center" => "Center", - "change_apperance_tooltip" => "", - "comma" => "comma", - "company" => "Company Name", - "company_avatar" => "", - "company_change_image" => "Change Image", - "company_logo" => "Company Logo", - "company_remove_image" => "Remove Image", - "company_required" => "Company Name is a required field.", - "company_select_image" => "Select Image", - "company_website_url" => "Company website is not a valid URL (http://...).", - "country_codes" => "Country Codes", - "country_codes_tooltip" => "Comma separated list of country codes for nominatim address lookup.", - "currency_code" => "Currency Code", - "currency_decimals" => "Currency Decimals", - "currency_symbol" => "Currency Symbol", - "current_employee_only" => "", - "customer_reward" => "Reward", - "customer_reward_duplicate" => "Reward must be unique.", - "customer_reward_enable" => "Enable Customer Rewards", - "customer_reward_invalid_chars" => "Reward can not contain '_'", - "customer_reward_required" => "Reward is a required field", - "customer_sales_tax_support" => "", - "date_or_time_format" => "Date and Time Filter", - "datetimeformat" => "Date and Time Format", - "decimal_point" => "Decimal Point", - "default_barcode_font_size_number" => "Default Barcode Width must be a number.", - "default_barcode_font_size_required" => "Default Barcode Width is a required field.", - "default_barcode_height_number" => "Default Barcode Width must be a number.", - "default_barcode_height_required" => "Default Barcode Width is a required field.", - "default_barcode_num_in_row_number" => "Default Barcode Number in Row must be a number.", - "default_barcode_num_in_row_required" => "Default Barcode Number in Row is a required field.", - "default_barcode_page_cellspacing_number" => "Default Barcode Page Cellspacing must be a number.", - "default_barcode_page_cellspacing_required" => "Default Barcode Page Cellspacing is a required field.", - "default_barcode_page_width_number" => "Default Barcode Width must be a number.", - "default_barcode_page_width_required" => "Default Barcode Width is a required field.", - "default_barcode_width_number" => "Default Barcode Height must be a number.", - "default_barcode_width_required" => "Default Barcode Height is a required field.", - "default_item_columns" => "Default Visible Item Columns", - "default_origin_tax_code" => "Default Origin Tax Code", - "default_receivings_discount" => "Default Receivings Discount", - "default_receivings_discount_number" => "Default Sales Discount must be a number.", - "default_receivings_discount_required" => "Default Sales Discount is a required field.", - "default_sales_discount" => "Default Sales Discount", - "default_sales_discount_number" => "Default Receivings Discount must be a number.", - "default_sales_discount_required" => "Default Receivings Discount is a required field.", - "default_tax_category" => "Default Tax Category", - "default_tax_code" => "Default Tax Rate", - "default_tax_jurisdiction" => "Default Tax Jurisdiction", - "default_tax_name_number" => "Default Tax Name must be a string.", - "default_tax_name_required" => "Default Tax Rate is a required field.", - "default_tax_rate" => "Default Tax Rate", - "default_tax_rate_1" => "Tax 2 Rate", - "default_tax_rate_2" => "Tax 1 Rate", - "default_tax_rate_3" => "", - "default_tax_rate_number" => "Default Tax Rate must be a number.", - "default_tax_rate_required" => "Default Tax Name is a required field.", - "derive_sale_quantity" => "Allow Derived Sale Quantity", - "derive_sale_quantity_tooltip" => "If checked then a new item type will provided for items ordered by extended amount", - "dinner_table" => "Table", - "dinner_table_duplicate" => "Table must be unique.", - "dinner_table_enable" => "Enable Dinner Tables", - "dinner_table_invalid_chars" => "Table Name can not contain '_'.", - "dinner_table_required" => "Table is a required field.", - "dot" => "dot", - "email" => "Email", - "email_configuration" => "Email Configuration", - "email_mailpath" => "Path to Sendmail", - "email_protocol" => "Protocol", - "email_receipt_check_behaviour" => "Email Receipt checkbox", - "email_receipt_check_behaviour_always" => "Always checked", - "email_receipt_check_behaviour_last" => "Remember last selection", - "email_receipt_check_behaviour_never" => "Always unchecked", - "email_smtp_crypto" => "SMTP Encryption", - "email_smtp_host" => "SMTP Server", - "email_smtp_pass" => "SMTP Password", - "email_smtp_port" => "SMTP Port", - "email_smtp_timeout" => "SMTP Timeout (s)", - "email_smtp_user" => "SMTP Username", - "enable_avatar" => "", - "enable_avatar_tooltip" => "", - "enable_dropdown_tooltip" => "", - "enable_new_look" => "", - "enable_right_bar" => "", - "enable_right_bar_tooltip" => "", - "enforce_privacy" => "Enforce privacy", - "enforce_privacy_tooltip" => "Protect Customers privacy enforcing data scrambling in case of their data being deleted", - "fax" => "Fax", - "file_perm" => "There are problems with file permissions please fix and reload this page.", - "financial_year" => "Fiscal Year Start", - "financial_year_apr" => "1st of April", - "financial_year_aug" => "1st of August", - "financial_year_dec" => "1st of December", - "financial_year_feb" => "1st of February", - "financial_year_jan" => "1st of January", - "financial_year_jul" => "1st of July", - "financial_year_jun" => "1st of June", - "financial_year_mar" => "1st of March", - "financial_year_may" => "1st of May", - "financial_year_nov" => "1st of November", - "financial_year_oct" => "1st of October", - "financial_year_sep" => "1st of September", - "floating_labels" => "", - "gcaptcha_enable" => "Login Page reCAPTCHA", - "gcaptcha_secret_key" => "reCAPTCHA Site Key", - "gcaptcha_secret_key_required" => "reCAPTCHA Site Key is a required field", - "gcaptcha_site_key" => "reCAPTCHA Secret Key", - "gcaptcha_site_key_required" => "reCAPTCHA Secret Key is a required field", - "gcaptcha_tooltip" => "Protect the Login page with Google reCAPTCHA, click the icon for an API key pair.", - "general" => "General", - "general_configuration" => "General Configuration", - "giftcard_number" => "Gift Card Number", - "giftcard_random" => "Generate Random", - "giftcard_series" => "Generate in Series", - "image_allowed_file_types" => "", - "image_max_height_tooltip" => "", - "image_max_size_tooltip" => "", - "image_max_width_tooltip" => "", - "image_restrictions" => "", - "include_hsn" => "Include Support for HSN Codes", - "info" => "Information", - "info_configuration" => "Store Information", - "input_groups" => "", - "integrations" => "Integrations", - "integrations_configuration" => "Third Party Integrations", - "invoice" => "Invoice", - "invoice_configuration" => "Invoice Print Settings", - "invoice_default_comments" => "Default Invoice Comments", - "invoice_email_message" => "Invoice Email Template", - "invoice_enable" => "Enable Invoicing", - "invoice_printer" => "Invoice Printer", - "invoice_type" => "Invoice Type", - "is_readable" => "", - "is_writable" => "is writable, but the permissions are higher than 750.", - "item_markup" => "", - "jsprintsetup_required" => "Warning: This functionality will only work if you have the FireFox jsPrintSetup addon installed. Save anyway?", - "language" => "Language", - "last_used_invoice_number" => "Last used Invoice Number", - "last_used_quote_number" => "Last used Quote Number", - "last_used_work_order_number" => "Last used W/O Number", - "left" => "Left", - "license" => "License", - "license_configuration" => "License Statement", - "line_sequence" => "Line Sequence", - "lines_per_page" => "Lines per Page", - "lines_per_page_number" => "Lines per Page must be a number.", - "lines_per_page_required" => "Lines per Page is a required field.", - "locale" => "Localization", - "locale_configuration" => "Localization Configuration", - "locale_info" => "Location Configuration Information", - "location" => "Stock", - "location_configuration" => "Stock Locations", - "location_info" => "Localization Configuration Information", - "login_form" => "", - "logout" => "Do you want to make a backup before logging out? Click [OK] to backup or [Cancel] to logout.", - "mailchimp" => "Mailchimp", - "mailchimp_api_key" => "Mailchimp API Key", - "mailchimp_configuration" => "Mailchimp Configuration", - "mailchimp_key_successfully" => "API Key is invalid.", - "mailchimp_key_unsuccessfully" => "API Key is valid.", - "mailchimp_lists" => "Mailchimp List(s)", - "mailchimp_tooltip" => "Click the icon for an API Key.", - "message" => "Message", - "message_configuration" => "Message Configuration", - "msg_msg" => "Saved Text Message", - "msg_msg_placeholder" => "If you wish to use a SMS template save your message here, otherwise leave the box blank.", - "msg_pwd" => "SMS-API Password", - "msg_pwd_required" => "SMS-API Password is a required field", - "msg_src" => "SMS-API Sender ID", - "msg_src_required" => "SMS-API Sender ID is a required field", - "msg_uid" => "SMS-API Username", - "msg_uid_required" => "SMS-API Username is a required field", - "multi_pack_enabled" => "Multiple Packages per Item", - "no_risk" => "No security/vulnerability risks.", - "none" => "none", - "notify_alignment" => "Notification Popup Position", - "number_format" => "Number Format", - "number_locale" => "Localization", - "number_locale_invalid" => "The entered locale is invalid. Check the link in the tooltip to find a valid locale.", - "number_locale_required" => "Number Locale is a required field.", - "number_locale_tooltip" => "Find a suitable locale through this link.", - "os_timezone" => "", - "ospos_info" => "OSPOS Installation Info", - "payment_options_order" => "Payment Options Order", - "perm_risk" => "Permissions higher than 750 leaves this software at risk.", - "phone" => "Company Phone", - "phone_required" => "Company Name is a required field.", - "print_bottom_margin" => "Margin Bottom", - "print_bottom_margin_number" => "Margin Left must be a number.", - "print_bottom_margin_required" => "Margin Left is a required field.", - "print_delay_autoreturn" => "Autoreturn to Sale delay", - "print_delay_autoreturn_number" => "Autoreturn to Sale delay is a required field.", - "print_delay_autoreturn_required" => "Autoreturn to Sale delay must be a number.", - "print_footer" => "Print Browser Header", - "print_header" => "Print Browser Footer", - "print_left_margin" => "Margin Left", - "print_left_margin_number" => "Margin Top must be a number.", - "print_left_margin_required" => "Margin Right is a required field.", - "print_receipt_check_behaviour" => "Print Receipt checkbox", - "print_receipt_check_behaviour_always" => "Always checked", - "print_receipt_check_behaviour_last" => "Remember last selection", - "print_receipt_check_behaviour_never" => "Always unchecked", - "print_right_margin" => "Margin Right", - "print_right_margin_number" => "Margin Left must be a number.", - "print_right_margin_required" => "Margin Left is a required field.", - "print_silently" => "Show Print Dialog", - "print_top_margin" => "Margin Top", - "print_top_margin_number" => "Margin Left must be a number.", - "print_top_margin_required" => "Margin Left is a required field.", - "quantity_decimals" => "Quantity Decimals", - "quick_cash_enable" => "", - "quote_default_comments" => "Default Quote Comments", - "receipt" => "Receipt", - "receipt_category" => "", - "receipt_configuration" => "Receipt Print Settings", - "receipt_default" => "Default", - "receipt_font_size" => "Font Size", - "receipt_font_size_number" => "Font Size must be a number.", - "receipt_font_size_required" => "Font Size is a required field.", - "receipt_info" => "Location Configuration Information", - "receipt_printer" => "Ticket Printer", - "receipt_short" => "Short", - "receipt_show_company_name" => "Show Company Name", - "receipt_show_description" => "Show Description", - "receipt_show_serialnumber" => "Show Serial Number", - "receipt_show_tax_ind" => "", - "receipt_show_taxes" => "Show Taxes", - "receipt_show_total_discount" => "Show Total Discount", - "receipt_template" => "Receipt Template", - "receiving_calculate_average_price" => "Calc avg. Price (Receiving)", - "recv_invoice_format" => "Receivings Invoice Format", - "register_mode_default" => "Default Register Mode", - "report_an_issue" => "", - "return_policy_required" => "Return policy is a required field.", - "reward" => "Reward", - "reward_configuration" => "Reward Configuration", - "right" => "Right", - "sales_invoice_format" => "Sales Invoice Format", - "sales_quote_format" => "Sales Quote Format", - "saved_successfully" => "Configuration save successful.", - "saved_unsuccessfully" => "Configuration save failed.", - "security_issue" => "Security Vulnerability Warning", - "server_notice" => "Please use the below info for issue reporting.", - "service_charge" => "", - "show_due_enable" => "", - "show_office_group" => "Show office icon", - "statistics" => "Send Statistics", - "statistics_tooltip" => "Send statistics for development and feature improvement purposes.", - "stock_location" => "Stock location", - "stock_location_duplicate" => "Stock Location must be unique.", - "stock_location_invalid_chars" => "Stock Location can not contain '_'.", - "stock_location_required" => "Stock location is a required field.", - "suggestions_fifth_column" => "", - "suggestions_first_column" => "Column 3", - "suggestions_fourth_column" => "", - "suggestions_layout" => "Search Suggestions Layout", - "suggestions_second_column" => "Column 1", - "suggestions_third_column" => "Column 1", - "system_conf" => "Setup & Conf", - "system_info" => "System Info", - "table" => "Table", - "table_configuration" => "Table Configuration", - "takings_printer" => "Receipt Printer", - "tax" => "Tax", - "tax_category" => "Tax Category", - "tax_category_duplicate" => "The entered tax category already exists.", - "tax_category_invalid_chars" => "The entered tax category is invalid.", - "tax_category_required" => "Tax category is required", - "tax_category_used" => "Tax category cannot be deleted because it is being used.", - "tax_configuration" => "Table Configuration", - "tax_decimals" => "Tax Decimals", - "tax_id" => "Tax Id", - "tax_included" => "Tax included", - "theme" => "Theme", - "theme_preview" => "", - "thousands_separator" => "Thousands Separator", - "timezone" => "Timezone", - "timezone_error" => "", - "top" => "Top", - "use_destination_based_tax" => "Use Destination Based Tax", - "user_timezone" => "", - "website" => "Website", - "wholesale_markup" => "", - "work_order_enable" => "Work Order Support", - "work_order_format" => "Work Order Format", + "address" => "Company Address", + "address_required" => "Company Phone is a required field.", + "all_set" => "All file permissions are set correctly!", + "allow_duplicate_barcodes" => "Allow Duplicate Barcodes", + "apostrophe" => "apostrophe", + "backup_button" => "Backup", + "backup_database" => "Backup Database", + "barcode" => "Barcode", + "barcode_company" => "Company Name", + "barcode_configuration" => "Barcode Configuration", + "barcode_content" => "Barcode Content", + "barcode_first_row" => "Row 3", + "barcode_font" => "Font", + "barcode_formats" => "Input Formats", + "barcode_generate_if_empty" => "Generate if empty.", + "barcode_height" => "Height (px)", + "barcode_id" => "Item Id/Name", + "barcode_info" => "Barcode Configuration Information", + "barcode_layout" => "Barcode Layout", + "barcode_name" => "Name", + "barcode_number" => "Barcode", + "barcode_number_in_row" => "Number in row", + "barcode_page_cellspacing" => "Display page cellspacing.", + "barcode_page_width" => "Display page width", + "barcode_price" => "Price", + "barcode_second_row" => "Row 3", + "barcode_third_row" => "Row 2", + "barcode_tooltip" => "Warning: This feature can cause duplicate items to be imported or created. Do not use if you do not want duplicate barcodes.", + "barcode_type" => "Barcode Type", + "barcode_width" => "Width (px)", + "bottom" => "Bottom", + "cash_button" => "", + "cash_button_1" => "", + "cash_button_2" => "", + "cash_button_3" => "", + "cash_button_4" => "", + "cash_button_5" => "", + "cash_button_6" => "", + "cash_decimals" => "Cash Decimals", + "cash_decimals_tooltip" => "If Cash Decimals and Currency Decimals are the same then no cash rounding will take place.", + "cash_rounding" => "Cash Rounding", + "category_dropdown" => "", + "center" => "Center", + "change_apperance_tooltip" => "", + "comma" => "comma", + "company" => "Company Name", + "company_avatar" => "", + "company_change_image" => "Change Image", + "company_logo" => "Company Logo", + "company_remove_image" => "Remove Image", + "company_required" => "Company Name is a required field.", + "company_select_image" => "Select Image", + "company_website_url" => "Company website is not a valid URL (http://...).", + "country_codes" => "Country Codes", + "country_codes_tooltip" => "Comma separated list of country codes for nominatim address lookup.", + "currency_code" => "Currency Code", + "currency_decimals" => "Currency Decimals", + "currency_symbol" => "Currency Symbol", + "current_employee_only" => "", + "customer_reward" => "Reward", + "customer_reward_duplicate" => "Reward must be unique.", + "customer_reward_enable" => "Enable Customer Rewards", + "customer_reward_invalid_chars" => "Reward can not contain '_'", + "customer_reward_required" => "Reward is a required field", + "customer_sales_tax_support" => "", + "date_or_time_format" => "Date and Time Filter", + "datetimeformat" => "Date and Time Format", + "decimal_point" => "Decimal Point", + "default_barcode_font_size_number" => "Default Barcode Width must be a number.", + "default_barcode_font_size_required" => "Default Barcode Width is a required field.", + "default_barcode_height_number" => "Default Barcode Width must be a number.", + "default_barcode_height_required" => "Default Barcode Width is a required field.", + "default_barcode_num_in_row_number" => "Default Barcode Number in Row must be a number.", + "default_barcode_num_in_row_required" => "Default Barcode Number in Row is a required field.", + "default_barcode_page_cellspacing_number" => "Default Barcode Page Cellspacing must be a number.", + "default_barcode_page_cellspacing_required" => "Default Barcode Page Cellspacing is a required field.", + "default_barcode_page_width_number" => "Default Barcode Width must be a number.", + "default_barcode_page_width_required" => "Default Barcode Width is a required field.", + "default_barcode_width_number" => "Default Barcode Height must be a number.", + "default_barcode_width_required" => "Default Barcode Height is a required field.", + "default_item_columns" => "Default Visible Item Columns", + "default_origin_tax_code" => "Default Origin Tax Code", + "default_receivings_discount" => "Default Receivings Discount", + "default_receivings_discount_number" => "Default Sales Discount must be a number.", + "default_receivings_discount_required" => "Default Sales Discount is a required field.", + "default_sales_discount" => "Default Sales Discount", + "default_sales_discount_number" => "Default Receivings Discount must be a number.", + "default_sales_discount_required" => "Default Receivings Discount is a required field.", + "default_tax_category" => "Default Tax Category", + "default_tax_code" => "Default Tax Rate", + "default_tax_jurisdiction" => "Default Tax Jurisdiction", + "default_tax_name_number" => "Default Tax Name must be a string.", + "default_tax_name_required" => "Default Tax Rate is a required field.", + "default_tax_rate" => "Default Tax Rate", + "default_tax_rate_1" => "Tax 2 Rate", + "default_tax_rate_2" => "Tax 1 Rate", + "default_tax_rate_3" => "", + "default_tax_rate_number" => "Default Tax Rate must be a number.", + "default_tax_rate_required" => "Default Tax Name is a required field.", + "derive_sale_quantity" => "Allow Derived Sale Quantity", + "derive_sale_quantity_tooltip" => "If checked then a new item type will provided for items ordered by extended amount", + "dinner_table" => "Table", + "dinner_table_duplicate" => "Table must be unique.", + "dinner_table_enable" => "Enable Dinner Tables", + "dinner_table_invalid_chars" => "Table Name can not contain '_'.", + "dinner_table_required" => "Table is a required field.", + "dot" => "dot", + "email" => "Email", + "email_configuration" => "Email Configuration", + "email_mailpath" => "Path to Sendmail", + "email_protocol" => "Protocol", + "email_receipt_check_behaviour" => "Email Receipt checkbox", + "email_receipt_check_behaviour_always" => "Always checked", + "email_receipt_check_behaviour_last" => "Remember last selection", + "email_receipt_check_behaviour_never" => "Always unchecked", + "email_smtp_crypto" => "SMTP Encryption", + "email_smtp_host" => "SMTP Server", + "email_smtp_pass" => "SMTP Password", + "email_smtp_port" => "SMTP Port", + "email_smtp_timeout" => "SMTP Timeout (s)", + "email_smtp_user" => "SMTP Username", + "enable_avatar" => "", + "enable_avatar_tooltip" => "", + "enable_dropdown_tooltip" => "", + "enable_new_look" => "", + "enable_right_bar" => "", + "enable_right_bar_tooltip" => "", + "enforce_privacy" => "Enforce privacy", + "enforce_privacy_tooltip" => "Protect Customers privacy enforcing data scrambling in case of their data being deleted", + "fax" => "Fax", + "file_perm" => "There are problems with file permissions please fix and reload this page.", + "financial_year" => "Fiscal Year Start", + "financial_year_apr" => "1st of April", + "financial_year_aug" => "1st of August", + "financial_year_dec" => "1st of December", + "financial_year_feb" => "1st of February", + "financial_year_jan" => "1st of January", + "financial_year_jul" => "1st of July", + "financial_year_jun" => "1st of June", + "financial_year_mar" => "1st of March", + "financial_year_may" => "1st of May", + "financial_year_nov" => "1st of November", + "financial_year_oct" => "1st of October", + "financial_year_sep" => "1st of September", + "floating_labels" => "", + "gcaptcha_enable" => "Login Page reCAPTCHA", + "gcaptcha_secret_key" => "reCAPTCHA Site Key", + "gcaptcha_secret_key_required" => "reCAPTCHA Site Key is a required field", + "gcaptcha_site_key" => "reCAPTCHA Secret Key", + "gcaptcha_site_key_required" => "reCAPTCHA Secret Key is a required field", + "gcaptcha_tooltip" => "Protect the Login page with Google reCAPTCHA, click the icon for an API key pair.", + "general" => "General", + "general_configuration" => "General Configuration", + "giftcard_number" => "Gift Card Number", + "giftcard_random" => "Generate Random", + "giftcard_series" => "Generate in Series", + "image_allowed_file_types" => "", + "image_max_height_tooltip" => "", + "image_max_size_tooltip" => "", + "image_max_width_tooltip" => "", + "image_restrictions" => "", + "include_hsn" => "Include Support for HSN Codes", + "info" => "Information", + "info_configuration" => "Store Information", + "input_groups" => "", + "integrations" => "Integrations", + "integrations_configuration" => "Third Party Integrations", + "invoice" => "Invoice", + "invoice_configuration" => "Invoice Print Settings", + "invoice_default_comments" => "Default Invoice Comments", + "invoice_email_message" => "Invoice Email Template", + "invoice_enable" => "Enable Invoicing", + "invoice_printer" => "Invoice Printer", + "invoice_type" => "Invoice Type", + "is_readable" => "", + "is_writable" => "is writable, but the permissions are higher than 750.", + "item_markup" => "", + "jsprintsetup_required" => "Warning: This functionality will only work if you have the FireFox jsPrintSetup addon installed. Save anyway?", + "language" => "Language", + "last_used_invoice_number" => "Last used Invoice Number", + "last_used_quote_number" => "Last used Quote Number", + "last_used_work_order_number" => "Last used W/O Number", + "left" => "Left", + "license" => "License", + "license_configuration" => "License Statement", + "line_sequence" => "Line Sequence", + "lines_per_page" => "Lines per Page", + "lines_per_page_number" => "Lines per Page must be a number.", + "lines_per_page_required" => "Lines per Page is a required field.", + "locale" => "Localization", + "locale_configuration" => "Localization Configuration", + "locale_info" => "Location Configuration Information", + "location" => "Stock", + "location_configuration" => "Stock Locations", + "location_info" => "Localization Configuration Information", + "login_form" => "", + "logout" => "Do you want to make a backup before logging out? Click [OK] to backup or [Cancel] to logout.", + "mailchimp" => "Mailchimp", + "mailchimp_api_key" => "Mailchimp API Key", + "mailchimp_configuration" => "Mailchimp Configuration", + "mailchimp_key_successfully" => "API Key is invalid.", + "mailchimp_key_unsuccessfully" => "API Key is valid.", + "mailchimp_lists" => "Mailchimp List(s)", + "mailchimp_tooltip" => "Click the icon for an API Key.", + "message" => "Message", + "message_configuration" => "Message Configuration", + "msg_msg" => "Saved Text Message", + "msg_msg_placeholder" => "If you wish to use a SMS template save your message here, otherwise leave the box blank.", + "msg_pwd" => "SMS-API Password", + "msg_pwd_required" => "SMS-API Password is a required field", + "msg_src" => "SMS-API Sender ID", + "msg_src_required" => "SMS-API Sender ID is a required field", + "msg_uid" => "SMS-API Username", + "msg_uid_required" => "SMS-API Username is a required field", + "multi_pack_enabled" => "Multiple Packages per Item", + "no_risk" => "No security/vulnerability risks.", + "none" => "none", + "notify_alignment" => "Notification Popup Position", + "number_format" => "Number Format", + "number_locale" => "Localization", + "number_locale_invalid" => "The entered locale is invalid. Check the link in the tooltip to find a valid locale.", + "number_locale_required" => "Number Locale is a required field.", + "number_locale_tooltip" => "Find a suitable locale through this link.", + "os_timezone" => "", + "ospos_info" => "OSPOS Installation Info", + "payment_options_order" => "Payment Options Order", + "perm_risk" => "Permissions higher than 750 leaves this software at risk.", + "phone" => "Company Phone", + "phone_required" => "Company Name is a required field.", + "print_bottom_margin" => "Margin Bottom", + "print_bottom_margin_number" => "Margin Left must be a number.", + "print_bottom_margin_required" => "Margin Left is a required field.", + "print_delay_autoreturn" => "Autoreturn to Sale delay", + "print_delay_autoreturn_number" => "Autoreturn to Sale delay is a required field.", + "print_delay_autoreturn_required" => "Autoreturn to Sale delay must be a number.", + "print_footer" => "Print Browser Header", + "print_header" => "Print Browser Footer", + "print_left_margin" => "Margin Left", + "print_left_margin_number" => "Margin Top must be a number.", + "print_left_margin_required" => "Margin Right is a required field.", + "print_receipt_check_behaviour" => "Print Receipt checkbox", + "print_receipt_check_behaviour_always" => "Always checked", + "print_receipt_check_behaviour_last" => "Remember last selection", + "print_receipt_check_behaviour_never" => "Always unchecked", + "print_right_margin" => "Margin Right", + "print_right_margin_number" => "Margin Left must be a number.", + "print_right_margin_required" => "Margin Left is a required field.", + "print_silently" => "Show Print Dialog", + "print_top_margin" => "Margin Top", + "print_top_margin_number" => "Margin Left must be a number.", + "print_top_margin_required" => "Margin Left is a required field.", + "quantity_decimals" => "Quantity Decimals", + "quick_cash_enable" => "", + "quote_default_comments" => "Default Quote Comments", + "receipt" => "Receipt", + "receipt_category" => "", + "receipt_configuration" => "Receipt Print Settings", + "receipt_default" => "Default", + "receipt_font_size" => "Font Size", + "receipt_font_size_number" => "Font Size must be a number.", + "receipt_font_size_required" => "Font Size is a required field.", + "receipt_info" => "Location Configuration Information", + "receipt_printer" => "Ticket Printer", + "receipt_short" => "Short", + "receipt_show_company_name" => "Show Company Name", + "receipt_show_description" => "Show Description", + "receipt_show_serialnumber" => "Show Serial Number", + "receipt_show_tax_ind" => "", + "receipt_show_taxes" => "Show Taxes", + "receipt_show_total_discount" => "Show Total Discount", + "receipt_template" => "Receipt Template", + "receiving_calculate_average_price" => "Calc avg. Price (Receiving)", + "recv_invoice_format" => "Receivings Invoice Format", + "register_mode_default" => "Default Register Mode", + "report_an_issue" => "", + "return_policy_required" => "Return policy is a required field.", + "reward" => "Reward", + "reward_configuration" => "Reward Configuration", + "right" => "Right", + "sales_invoice_format" => "Sales Invoice Format", + "sales_quote_format" => "Sales Quote Format", + "saved_successfully" => "Configuration save successful.", + "saved_unsuccessfully" => "Configuration save failed.", + "security_issue" => "Security Vulnerability Warning", + "server_notice" => "Please use the below info for issue reporting.", + "service_charge" => "", + "show_due_enable" => "", + "show_office_group" => "Show office icon", + "statistics" => "Send Statistics", + "statistics_tooltip" => "Send statistics for development and feature improvement purposes.", + "stock_location" => "Stock location", + "stock_location_duplicate" => "Stock Location must be unique.", + "stock_location_invalid_chars" => "Stock Location can not contain '_'.", + "stock_location_required" => "Stock location is a required field.", + "suggestions_fifth_column" => "", + "suggestions_first_column" => "Column 3", + "suggestions_fourth_column" => "", + "suggestions_layout" => "Search Suggestions Layout", + "suggestions_second_column" => "Column 1", + "suggestions_third_column" => "Column 1", + "system_conf" => "Setup & Conf", + "system_info" => "System Info", + "table" => "Table", + "table_configuration" => "Table Configuration", + "takings_printer" => "Receipt Printer", + "tax" => "Tax", + "tax_category" => "Tax Category", + "tax_category_duplicate" => "The entered tax category already exists.", + "tax_category_invalid_chars" => "The entered tax category is invalid.", + "tax_category_required" => "Tax category is required", + "tax_category_used" => "Tax category cannot be deleted because it is being used.", + "tax_configuration" => "Table Configuration", + "tax_decimals" => "Tax Decimals", + "tax_id" => "Tax Id", + "tax_included" => "Tax included", + "theme" => "Theme", + "theme_preview" => "", + "thousands_separator" => "Thousands Separator", + "timezone" => "Timezone", + "timezone_error" => "", + "top" => "Top", + "use_destination_based_tax" => "Use Destination Based Tax", + "user_timezone" => "", + "website" => "Website", + "wholesale_markup" => "", + "work_order_enable" => "Work Order Support", + "work_order_format" => "Work Order Format", ]; diff --git a/app/Language/tl/Customers.php b/app/Language/tl/Customers.php index 66b034b57..046fde795 100644 --- a/app/Language/tl/Customers.php +++ b/app/Language/tl/Customers.php @@ -1,56 +1,56 @@ "Account #", - "account_number_duplicate" => "Account Number is already present in the database.", - "available_points" => "Available Points", - "available_points_value" => "", - "average" => "Average spent", - "avg_discount" => "Average discount", - "basic_information" => "Information", - "cannot_be_deleted" => "Could not delete selected customers, one or more of the selected customers has sales.", - "company_name" => "Company", - "confirm_delete" => "Are you sure you want to delete the selected Supplier(s)?", - "confirm_restore" => "Are you sure you want to restore selected Supplier(s)?", - "consent" => "Registration consent", - "consent_required" => "Registration consent is a required field.", - "csv_import_failed" => "CSV import failed", - "csv_import_nodata_wrongformat" => "The uploaded file has no data or is incorrectly formatted.", - "csv_import_partially_failed" => "Customer import successful with some failures:", - "csv_import_success" => "Customer import successful.", - "customer" => "Customer", - "date" => "Date", - "discount" => "Discount", - "discount_fixed" => "Fixed Discount", - "discount_percent" => "Percentage Discount", - "discount_type" => "Discount Type", - "email_duplicate" => "Email Address is already present in the database.", - "employee" => "Employee", - "error_adding_updating" => "Employee add or update failed.", - "import_items_csv" => "Customer Import from CSV", - "mailchimp_activity_click" => "Email click", - "mailchimp_activity_lastopen" => "Last open email", - "mailchimp_activity_open" => "Email open", - "mailchimp_activity_total" => "Email sent", - "mailchimp_activity_unopen" => "Email unopen", - "mailchimp_email_client" => "Email client", - "mailchimp_info" => "Mailchimp", - "mailchimp_member_rating" => "Rating", - "mailchimp_status" => "Status", - "mailchimp_vip" => "VIP", - "max" => "Max. spent", - "min" => "Min. spent", - "new" => "New Customer", - "none_selected" => "You have not selected any employee(s) to delete.", - "one_or_multiple" => "customer(s)", - "quantity" => "Quantity", - "stats_info" => "Stats", - "successful_adding" => "You have successfully updated customer", - "successful_deleted" => "You have successfully deleted", - "successful_updating" => "You have successfully added customer", - "tax_code" => "Tax Code", - "tax_id" => "Tax Id", - "taxable" => "Taxable", - "total" => "Total spent", - "update" => "Update Customer", - "rewards_package" => "Rewards Package", + "account_number" => "Account #", + "account_number_duplicate" => "Account Number is already present in the database.", + "available_points" => "Available Points", + "available_points_value" => "", + "average" => "Average spent", + "avg_discount" => "Average discount", + "basic_information" => "Information", + "cannot_be_deleted" => "Could not delete selected customers, one or more of the selected customers has sales.", + "company_name" => "Company", + "confirm_delete" => "Are you sure you want to delete the selected Supplier(s)?", + "confirm_restore" => "Are you sure you want to restore selected Supplier(s)?", + "consent" => "Registration consent", + "consent_required" => "Registration consent is a required field.", + "csv_import_failed" => "CSV import failed", + "csv_import_nodata_wrongformat" => "The uploaded file has no data or is incorrectly formatted.", + "csv_import_partially_failed" => "Customer import successful with some failures:", + "csv_import_success" => "Customer import successful.", + "customer" => "Customer", + "date" => "Date", + "discount" => "Discount", + "discount_fixed" => "Fixed Discount", + "discount_percent" => "Percentage Discount", + "discount_type" => "Discount Type", + "email_duplicate" => "Email Address is already present in the database.", + "employee" => "Employee", + "error_adding_updating" => "Employee add or update failed.", + "import_items_csv" => "Customer Import from CSV", + "mailchimp_activity_click" => "Email click", + "mailchimp_activity_lastopen" => "Last open email", + "mailchimp_activity_open" => "Email open", + "mailchimp_activity_total" => "Email sent", + "mailchimp_activity_unopen" => "Email unopen", + "mailchimp_email_client" => "Email client", + "mailchimp_info" => "Mailchimp", + "mailchimp_member_rating" => "Rating", + "mailchimp_status" => "Status", + "mailchimp_vip" => "VIP", + "max" => "Max. spent", + "min" => "Min. spent", + "new" => "New Customer", + "none_selected" => "You have not selected any employee(s) to delete.", + "one_or_multiple" => "customer(s)", + "quantity" => "Quantity", + "stats_info" => "Stats", + "successful_adding" => "You have successfully updated customer", + "successful_deleted" => "You have successfully deleted", + "successful_updating" => "You have successfully added customer", + "tax_code" => "Tax Code", + "tax_id" => "Tax Id", + "taxable" => "Taxable", + "total" => "Total spent", + "update" => "Update Customer", + "rewards_package" => "Rewards Package", ]; diff --git a/app/Language/tl/Datepicker.php b/app/Language/tl/Datepicker.php index 5c64ae666..a3b4e0eaa 100644 --- a/app/Language/tl/Datepicker.php +++ b/app/Language/tl/Datepicker.php @@ -1,23 +1,23 @@ "All Time", - "apply" => "Apply", - "cancel" => "Cancel", - "custom" => "Custom", - "from" => "From", - "last_30" => "Last 7 Days", - "last_7" => "Last 30 Days", - "last_financial_year" => "Last Fiscal Year", - "last_month" => "Last Month", - "last_year" => "Last Year", - "same_month_last_year" => "Same Month Last Year", - "same_month_to_same_day_last_year" => "Same Month To Same Day Last Year", - "this_financial_year" => "Current Fiscal Year", - "this_month" => "Current Month", - "this_year" => "Current Year", - "to" => "To", - "today" => "Today", - "today_last_year" => "Today Last Year", - "weekstart" => "0", - "yesterday" => "Yesterday", + "all_time" => "All Time", + "apply" => "Apply", + "cancel" => "Cancel", + "custom" => "Custom", + "from" => "From", + "last_30" => "Last 7 Days", + "last_7" => "Last 30 Days", + "last_financial_year" => "Last Fiscal Year", + "last_month" => "Last Month", + "last_year" => "Last Year", + "same_month_last_year" => "Same Month Last Year", + "same_month_to_same_day_last_year" => "Same Month To Same Day Last Year", + "this_financial_year" => "Current Fiscal Year", + "this_month" => "Current Month", + "this_year" => "Current Year", + "to" => "To", + "today" => "Today", + "today_last_year" => "Today Last Year", + "weekstart" => "0", + "yesterday" => "Yesterday", ]; diff --git a/app/Language/tl/Employees.php b/app/Language/tl/Employees.php index 4117538bf..f3694b540 100644 --- a/app/Language/tl/Employees.php +++ b/app/Language/tl/Employees.php @@ -1,44 +1,44 @@ "", - "basic_information" => "Information", - "cannot_be_deleted" => "Unable to delete selected employee(s), one or more of the has processed sales or you are trying to delete your account.", - "change_employee" => "", - "change_password" => "Change Password", - "clerk" => "", - "commission" => "", - "confirm_delete" => "Are you sure you want to delete the selected Supplier(s)?", - "confirm_restore" => "Are you sure you want to restore selected entry(s)?", - "current_password" => "Current Password", - "current_password_invalid" => "Current Password is invalid.", - "employee" => "Employee", - "error_adding_updating" => "Employee add or update failed.", - "error_deleting_demo_admin" => "You can not change the demo admin user.", - "error_updating_demo_admin" => "You can not delete the demo admin user.", - "language" => "Language", - "login_info" => "Login", - "manager" => "", - "new" => "New Employee", - "none_selected" => "You have not selected any employee(s) to delete.", - "one_or_multiple" => "employee(s)", - "password" => "Password", - "password_minlength" => "Username must be at least 5 characters in length.", - "password_must_match" => "Passwords do not match.", - "password_not_must_match" => "Current password and new password must be unique.", - "password_required" => "Password is required.", - "permission_desc" => "Check the boxes below to grant access to modules.", - "permission_info" => "Permissions", - "repeat_password" => "Password Again", - "subpermission_required" => "Add at least one grant for each module.", - "successful_adding" => "Employee add successful.", - "successful_change_password" => "Password change successful.", - "successful_deleted" => "You have successfully deleted", - "successful_updating" => "You have successfully added customer", - "system_language" => "System Language", - "unsuccessful_change_password" => "Password change failed.", - "update" => "Update Employee", - "username" => "Username", - "username_duplicate" => "", - "username_minlength" => "Password must be at least 8 characters in length.", - "username_required" => "Username is a required field.", + "administrator" => "", + "basic_information" => "Information", + "cannot_be_deleted" => "Unable to delete selected employee(s), one or more of the has processed sales or you are trying to delete your account.", + "change_employee" => "", + "change_password" => "Change Password", + "clerk" => "", + "commission" => "", + "confirm_delete" => "Are you sure you want to delete the selected Supplier(s)?", + "confirm_restore" => "Are you sure you want to restore selected entry(s)?", + "current_password" => "Current Password", + "current_password_invalid" => "Current Password is invalid.", + "employee" => "Employee", + "error_adding_updating" => "Employee add or update failed.", + "error_deleting_demo_admin" => "You can not change the demo admin user.", + "error_updating_demo_admin" => "You can not delete the demo admin user.", + "language" => "Language", + "login_info" => "Login", + "manager" => "", + "new" => "New Employee", + "none_selected" => "You have not selected any employee(s) to delete.", + "one_or_multiple" => "employee(s)", + "password" => "Password", + "password_minlength" => "Username must be at least 5 characters in length.", + "password_must_match" => "Passwords do not match.", + "password_not_must_match" => "Current password and new password must be unique.", + "password_required" => "Password is required.", + "permission_desc" => "Check the boxes below to grant access to modules.", + "permission_info" => "Permissions", + "repeat_password" => "Password Again", + "subpermission_required" => "Add at least one grant for each module.", + "successful_adding" => "Employee add successful.", + "successful_change_password" => "Password change successful.", + "successful_deleted" => "You have successfully deleted", + "successful_updating" => "You have successfully added customer", + "system_language" => "System Language", + "unsuccessful_change_password" => "Password change failed.", + "update" => "Update Employee", + "username" => "Username", + "username_duplicate" => "", + "username_minlength" => "Password must be at least 8 characters in length.", + "username_required" => "Username is a required field.", ]; diff --git a/app/Language/tl/Enum.php b/app/Language/tl/Enum.php index 6189977b6..5068622a4 100644 --- a/app/Language/tl/Enum.php +++ b/app/Language/tl/Enum.php @@ -1,10 +1,10 @@ "Half Down", - "half_even" => "Half Even", - "half_five" => "Half Five", - "half_odd" => "Half Odd", - "half_up" => "Half Up", - "round_down" => "Round Down", - "round_up" => "Round Up", + "half_down" => "Half Down", + "half_even" => "Half Even", + "half_five" => "Half Five", + "half_odd" => "Half Odd", + "half_up" => "Half Up", + "round_down" => "Round Down", + "round_up" => "Round Up", ]; diff --git a/app/Language/tl/Error.php b/app/Language/tl/Error.php index ea2c39425..26a6f58b2 100644 --- a/app/Language/tl/Error.php +++ b/app/Language/tl/Error.php @@ -1,5 +1,5 @@ "You do not have permission to access the module named", - "unknown" => "Unexpected error", + "no_permission_module" => "You do not have permission to access the module named", + "unknown" => "Unexpected error", ]; diff --git a/app/Language/tl/Expenses.php b/app/Language/tl/Expenses.php index 4db72d7f1..f809b81aa 100644 --- a/app/Language/tl/Expenses.php +++ b/app/Language/tl/Expenses.php @@ -1,50 +1,50 @@ "Add Expense", - "amount" => "Amount", - "amount_number" => "Amount must be a number", - "amount_required" => "Expense Amount required", - "by_category" => "Category", - "cannot_be_deleted" => "Could not delete Category Expense(s)", - "cash" => "Cash", - "cash_filter" => "Cash", - "categories_name" => "Category", - "category_required" => "category is a required field", - "check" => "Check", - "check_filter" => "Check", - "confirm_delete" => "Are you sure you want to delete the selected Expense?", - "confirm_restore" => "Are you sure you want to restore the selected Expense Category?", - "credit" => "Credit Card", - "credit_filter" => "Credit Card", - "date" => "Date", - "date_number" => "date must be a number", - "date_required" => "date is a required field", - "debit" => "Debit Card", - "debit_filter" => "Debit Card", - "description" => "Description", - "due" => "Due", - "due_filter" => "Due", - "employee" => "Created By", - "error_adding_updating" => "Error adding/updating Expense", - "expense_id" => "Id", - "expenses_employee" => "Employee", - "info" => "Expense Info", - "ip_address" => "", - "is_deleted" => "Deleted", - "name_required" => "Expense Name required", - "new" => "New Expense", - "new_supplier" => "", - "no_expenses_to_display" => "There are no Expenses to display", - "none_selected" => "You have not selected any Expense", - "one_or_multiple" => "Expense(s)", - "payment" => "Payment Type", - "start_typing_supplier_name" => "Start Typing Supplier's name...", - "successful_adding" => "Expense update successful", - "successful_deleted" => "Expense update successful", - "successful_updating" => "Expense delete successful", - "supplier_name" => "Supplier", - "supplier_tax_code" => "Tax Code", - "tax_amount" => "Tax", - "tax_amount_number" => "", - "update" => "Update Expense", + "add_item" => "Add Expense", + "amount" => "Amount", + "amount_number" => "Amount must be a number", + "amount_required" => "Expense Amount required", + "by_category" => "Category", + "cannot_be_deleted" => "Could not delete Category Expense(s)", + "cash" => "Cash", + "cash_filter" => "Cash", + "categories_name" => "Category", + "category_required" => "category is a required field", + "check" => "Check", + "check_filter" => "Check", + "confirm_delete" => "Are you sure you want to delete the selected Expense?", + "confirm_restore" => "Are you sure you want to restore the selected Expense Category?", + "credit" => "Credit Card", + "credit_filter" => "Credit Card", + "date" => "Date", + "date_number" => "date must be a number", + "date_required" => "date is a required field", + "debit" => "Debit Card", + "debit_filter" => "Debit Card", + "description" => "Description", + "due" => "Due", + "due_filter" => "Due", + "employee" => "Created By", + "error_adding_updating" => "Error adding/updating Expense", + "expense_id" => "Id", + "expenses_employee" => "Employee", + "info" => "Expense Info", + "ip_address" => "", + "is_deleted" => "Deleted", + "name_required" => "Expense Name required", + "new" => "New Expense", + "new_supplier" => "", + "no_expenses_to_display" => "There are no Expenses to display", + "none_selected" => "You have not selected any Expense", + "one_or_multiple" => "Expense(s)", + "payment" => "Payment Type", + "start_typing_supplier_name" => "Start Typing Supplier's name...", + "successful_adding" => "Expense update successful", + "successful_deleted" => "Expense update successful", + "successful_updating" => "Expense delete successful", + "supplier_name" => "Supplier", + "supplier_tax_code" => "Tax Code", + "tax_amount" => "Tax", + "tax_amount_number" => "", + "update" => "Update Expense", ]; diff --git a/app/Language/tl/Expenses_categories.php b/app/Language/tl/Expenses_categories.php index 271a528af..38f03ad15 100644 --- a/app/Language/tl/Expenses_categories.php +++ b/app/Language/tl/Expenses_categories.php @@ -1,22 +1,22 @@ "Expense Category name required", - "add_item" => "Add Category", - "cannot_be_deleted" => "Could not delete Category Expense(s)", - "category_id" => "Id", - "confirm_delete" => "Are you sure you want to restore the selected Expense Category?", - "confirm_restore" => "Are you sure you want to delete the selected Expense Category?", - "description" => "Category Description", - "error_adding_updating" => "Error adding/updating Expense Category", - "info" => "Category Expense Info", - "name" => "Category Name", - "new" => "New Category", - "no_expenses_categories_to_display" => "No Category to display", - "none_selected" => "You have not selected any Category Expense", - "one_or_multiple" => "Category Expense", - "quantity" => "Quantity", - "successful_adding" => "Expense Category update successful", - "successful_deleted" => "Expense Category update successful", - "successful_updating" => "Expense Category delete successful", - "update" => "Update Category", + "category_name_required" => "Expense Category name required", + "add_item" => "Add Category", + "cannot_be_deleted" => "Could not delete Category Expense(s)", + "category_id" => "Id", + "confirm_delete" => "Are you sure you want to restore the selected Expense Category?", + "confirm_restore" => "Are you sure you want to delete the selected Expense Category?", + "description" => "Category Description", + "error_adding_updating" => "Error adding/updating Expense Category", + "info" => "Category Expense Info", + "name" => "Category Name", + "new" => "New Category", + "no_expenses_categories_to_display" => "No Category to display", + "none_selected" => "You have not selected any Category Expense", + "one_or_multiple" => "Category Expense", + "quantity" => "Quantity", + "successful_adding" => "Expense Category update successful", + "successful_deleted" => "Expense Category update successful", + "successful_updating" => "Expense Category delete successful", + "update" => "Update Category", ]; diff --git a/app/Language/tl/Giftcards.php b/app/Language/tl/Giftcards.php index c68c8cef3..c43c40ed9 100644 --- a/app/Language/tl/Giftcards.php +++ b/app/Language/tl/Giftcards.php @@ -1,71 +1,71 @@ "Inventory to add or subtract.", - "allow_alt_description" => "Allow Alternate Description", - "bulk_edit" => "Bulk Edit", - "cannot_be_deleted" => "Could not delete selected customers, one or more of the selected customers has sales.", - "cannot_find_giftcard" => "Gift Card not found.", - "cannot_use" => "Gift Card {0} cannot be used for this sale: invalid Customer.", - "card_value" => "Value", - "category" => "Category", - "change_all_to_allow_alt_desc" => "Allow alternate description for all.", - "change_all_to_not_allow_allow_desc" => "Do not allow alternate description for all.", - "change_all_to_serialized" => "Change All To Serialized", - "change_all_to_unserialized" => "Change All To Unserialized", - "confirm_bulk_edit" => "Are you sure you want to edit the selected Gift Card(s)?", - "confirm_delete" => "Are you sure you want to delete the selected Gift Card(s)?", - "confirm_restore" => "Are you sure you want to delete the selected Gift Card(s)?", - "cost_price" => "Wholesale Price", - "count" => "Update Inventory", - "csv_import_failed" => "CSV import failed", - "current_quantity" => "Current Quantity", - "description" => "Description", - "details_count" => "Inventory Count Details", - "do_nothing" => "Do Nothing", - "edit_fields_you_want_to_update" => "Edit desired fields for selected Gift Card(s).", - "edit_multiple_giftcards" => "Edit Multiple Gift Cards.", - "error_adding_updating" => "Gift Card add or update failed.", - "error_updating_multiple" => "Gift Card(s) update failed.", - "generate_barcodes" => "Generate Barcodes", - "giftcard" => "Gift Card", - "giftcard_number" => "Gift Card Number", - "info_provided_by" => "Info provided by", - "inventory_comments" => "Comments", - "is_serialized" => "Gift Card has Serial Number", - "low_inventory_giftcards" => "Low Inventory Gift Cards", - "manually_editing_of_quantity" => "Manual Edit of Quantity", - "must_select_giftcard_for_barcode" => "You must select at least one (1) Gift Card to generate barcodes.", - "new" => "New Gift Card", - "no_description_giftcards" => "No Description Gift Cards", - "no_giftcards_to_display" => "No Gift Cards to display.", - "none" => "None", - "none_selected" => "No Gift Card(s) selected to edit.", - "number" => "Gift Card Number must be a number.", - "number_information" => "Gift Card Number", - "number_required" => "Gift Card Number is a required field.", - "one_or_multiple" => "Gift Card(s)", - "person_id" => "Customer", - "quantity" => "Quantity", - "quantity_required" => "Quantity is a required field. Please close (X) to cancel.", - "remaining_balance" => "Gift Card {0} remaining value is {1}!", - "reorder_level" => "Reorder Level", - "retrive_giftcard_info" => "Retrieve Gift Card Info", - "sales_tax_1" => "Sales Tax", - "sales_tax_2" => "Sales Tax 2", - "serialized_giftcards" => "Serialized Gift Cards", - "successful_adding" => "You have successfully added Gift Card", - "successful_bulk_edit" => "You have successfully updated the selected Gift Card(s)", - "successful_deleted" => "You have successfully deleted", - "successful_updating" => "You have successfully updated Gift Card", - "supplier" => "Supplier", - "tax_1" => "Tax 1", - "tax_2" => "Tax 2", - "tax_percent" => "Tax Percent", - "tax_percents" => "Tax Percent(s)", - "unit_price" => "Retail Value", - "upc_database" => "Barcode Database", - "update" => "Update Gift Card", - "use_inventory_menu" => "Use Inventory Menu", - "value" => "Gift Card Value must be a number.", - "value_required" => "Gift Card Value is a required field.", + "add_minus" => "Inventory to add or subtract.", + "allow_alt_description" => "Allow Alternate Description", + "bulk_edit" => "Bulk Edit", + "cannot_be_deleted" => "Could not delete selected customers, one or more of the selected customers has sales.", + "cannot_find_giftcard" => "Gift Card not found.", + "cannot_use" => "Gift Card {0} cannot be used for this sale: invalid Customer.", + "card_value" => "Value", + "category" => "Category", + "change_all_to_allow_alt_desc" => "Allow alternate description for all.", + "change_all_to_not_allow_allow_desc" => "Do not allow alternate description for all.", + "change_all_to_serialized" => "Change All To Serialized", + "change_all_to_unserialized" => "Change All To Unserialized", + "confirm_bulk_edit" => "Are you sure you want to edit the selected Gift Card(s)?", + "confirm_delete" => "Are you sure you want to delete the selected Gift Card(s)?", + "confirm_restore" => "Are you sure you want to delete the selected Gift Card(s)?", + "cost_price" => "Wholesale Price", + "count" => "Update Inventory", + "csv_import_failed" => "CSV import failed", + "current_quantity" => "Current Quantity", + "description" => "Description", + "details_count" => "Inventory Count Details", + "do_nothing" => "Do Nothing", + "edit_fields_you_want_to_update" => "Edit desired fields for selected Gift Card(s).", + "edit_multiple_giftcards" => "Edit Multiple Gift Cards.", + "error_adding_updating" => "Gift Card add or update failed.", + "error_updating_multiple" => "Gift Card(s) update failed.", + "generate_barcodes" => "Generate Barcodes", + "giftcard" => "Gift Card", + "giftcard_number" => "Gift Card Number", + "info_provided_by" => "Info provided by", + "inventory_comments" => "Comments", + "is_serialized" => "Gift Card has Serial Number", + "low_inventory_giftcards" => "Low Inventory Gift Cards", + "manually_editing_of_quantity" => "Manual Edit of Quantity", + "must_select_giftcard_for_barcode" => "You must select at least one (1) Gift Card to generate barcodes.", + "new" => "New Gift Card", + "no_description_giftcards" => "No Description Gift Cards", + "no_giftcards_to_display" => "No Gift Cards to display.", + "none" => "None", + "none_selected" => "No Gift Card(s) selected to edit.", + "number" => "Gift Card Number must be a number.", + "number_information" => "Gift Card Number", + "number_required" => "Gift Card Number is a required field.", + "one_or_multiple" => "Gift Card(s)", + "person_id" => "Customer", + "quantity" => "Quantity", + "quantity_required" => "Quantity is a required field. Please close (X) to cancel.", + "remaining_balance" => "Gift Card {0} remaining value is {1}!", + "reorder_level" => "Reorder Level", + "retrive_giftcard_info" => "Retrieve Gift Card Info", + "sales_tax_1" => "Sales Tax", + "sales_tax_2" => "Sales Tax 2", + "serialized_giftcards" => "Serialized Gift Cards", + "successful_adding" => "You have successfully added Gift Card", + "successful_bulk_edit" => "You have successfully updated the selected Gift Card(s)", + "successful_deleted" => "You have successfully deleted", + "successful_updating" => "You have successfully updated Gift Card", + "supplier" => "Supplier", + "tax_1" => "Tax 1", + "tax_2" => "Tax 2", + "tax_percent" => "Tax Percent", + "tax_percents" => "Tax Percent(s)", + "unit_price" => "Retail Value", + "upc_database" => "Barcode Database", + "update" => "Update Gift Card", + "use_inventory_menu" => "Use Inventory Menu", + "value" => "Gift Card Value must be a number.", + "value_required" => "Gift Card Value is a required field.", ]; diff --git a/app/Language/tl/Item_kits.php b/app/Language/tl/Item_kits.php index 4c33691c4..ca0901763 100644 --- a/app/Language/tl/Item_kits.php +++ b/app/Language/tl/Item_kits.php @@ -1,41 +1,41 @@ "Add Item", - "all" => "All", - "cannot_be_deleted" => "Item Kit(s) delete failed.", - "confirm_delete" => "Are you sure you want to restore the selected attribute(s)?", - "confirm_restore" => "Are you sure you want to restore selected entry(s)?", - "description" => "Item Kit Description", - "discount" => "Discount", - "discount_fixed" => "Fixed Discount", - "discount_percent" => "Discount Percent", - "discount_type" => "Discount Type", - "error_adding_updating" => "Item Kit add or update failed.", - "find_kit_item" => "Kit Item", - "info" => "Item Kit Info", - "item" => "Item", - "item_kit_number" => "", - "item_kit_number_duplicate" => "", - "item_number" => "", - "item_number_duplicate" => "", - "items" => "Items", - "kit" => "Kit ID", - "kit_and_components" => "Kit and Components", - "kit_and_stock" => "Kit and Stock", - "kit_only" => "Kit Only", - "name" => "Item Kit Name", - "new" => "New Item Kit", - "no_item_kits_to_display" => "No Items to display.", - "none_selected" => "You have not selected any Item Kits.", - "one_or_multiple" => "Item Kit(s)", - "price_option" => "Print Option", - "priced_only" => "Priced Only", - "print_option" => "Price Option", - "quantity" => "Quantity", - "sequence" => "Sequence", - "successful_adding" => "You have successfully updated Item Kit", - "successful_deleted" => "You have successfully deleted", - "successful_updating" => "You have successfully added Item Kit", - "unit_price" => "", - "update" => "Update Item Kit", + "add_item" => "Add Item", + "all" => "All", + "cannot_be_deleted" => "Item Kit(s) delete failed.", + "confirm_delete" => "Are you sure you want to restore the selected attribute(s)?", + "confirm_restore" => "Are you sure you want to restore selected entry(s)?", + "description" => "Item Kit Description", + "discount" => "Discount", + "discount_fixed" => "Fixed Discount", + "discount_percent" => "Discount Percent", + "discount_type" => "Discount Type", + "error_adding_updating" => "Item Kit add or update failed.", + "find_kit_item" => "Kit Item", + "info" => "Item Kit Info", + "item" => "Item", + "item_kit_number" => "", + "item_kit_number_duplicate" => "", + "item_number" => "", + "item_number_duplicate" => "", + "items" => "Items", + "kit" => "Kit ID", + "kit_and_components" => "Kit and Components", + "kit_and_stock" => "Kit and Stock", + "kit_only" => "Kit Only", + "name" => "Item Kit Name", + "new" => "New Item Kit", + "no_item_kits_to_display" => "No Items to display.", + "none_selected" => "You have not selected any Item Kits.", + "one_or_multiple" => "Item Kit(s)", + "price_option" => "Print Option", + "priced_only" => "Priced Only", + "print_option" => "Price Option", + "quantity" => "Quantity", + "sequence" => "Sequence", + "successful_adding" => "You have successfully updated Item Kit", + "successful_deleted" => "You have successfully deleted", + "successful_updating" => "You have successfully added Item Kit", + "unit_price" => "", + "update" => "Update Item Kit", ]; diff --git a/app/Language/tl/Items.php b/app/Language/tl/Items.php index 62161b1d5..b40541d1b 100644 --- a/app/Language/tl/Items.php +++ b/app/Language/tl/Items.php @@ -1,120 +1,120 @@ "Inventory to add or subtract.", - "allow_alt_description" => "Allow Alternate Description", - "amount_entry" => "Amount Entry", - "bulk_edit" => "Bulk Edit", - "buy_price_required" => "Purchase Price is a required field.", - "cannot_be_deleted" => "Could not delete selected customers, one or more of the selected customers has sales.", - "cannot_find_item" => "Item not found.", - "categories" => "", - "category" => "Category", - "category_new" => "", - "category_required" => "category is a required field", - "change_all_to_allow_alt_desc" => "Allow alternate description for all.", - "change_all_to_not_allow_allow_desc" => "Do not allow alternate description for all.", - "change_all_to_serialized" => "Change All To Serialized", - "change_all_to_unserialized" => "Change All To Unserialized", - "change_image" => "Change Image", - "confirm_bulk_edit" => "Are you sure you want to delete selected entry(s)?", - "confirm_bulk_edit_wipe_taxes" => "All Item Tax information will be replaced.", - "confirm_delete" => "Are you sure you want to delete selected entry(s)?", - "confirm_restore" => "Are you sure you want to restore selected entry(s)?", - "cost_price" => "Wholesale Price", - "cost_price_number" => "Wholesale Price must be a number.", - "cost_price_required" => "Purchase Price is a required field.", - "count" => "Update Inventory", - "csv_import_failed" => "CSV import failed", - "csv_import_nodata_wrongformat" => "The uploaded file has no data or is formatted incorrectly.", - "csv_import_partially_failed" => "Customer import successful with some failures:", - "csv_import_success" => "Item import successful.", - "current_quantity" => "Current Quantity", - "default_pack_name" => "Each", - "description" => "Description", - "details_count" => "Inventory Count Details", - "do_nothing" => "Do Nothing", - "edit" => "", - "edit_fields_you_want_to_update" => "Edit the desired fields for selected item(s).", - "edit_multiple_items" => "Editing Multiple Items", - "empty_upc_items" => "Empty Barcode Items", - "error_adding_updating" => "Error adding/updating item", - "error_updating_multiple" => "Error updating items", - "generate_barcodes" => "Generate Barcodes", - "hsn_code" => "Harmonized System Nomenclature", - "image" => "Avatar", - "import_items_csv" => "Item Import from CSV", - "info_provided_by" => "Information provided by", - "inventory" => "Inventory", - "inventory_CSV_import_quantity" => "", - "inventory_comments" => "Comments", - "inventory_data_tracking" => "Inventory Data Tracking", - "inventory_date" => "Date", - "inventory_employee" => "Employee", - "inventory_in_out_quantity" => "In/Out Quantity", - "inventory_remarks" => "Remarks", - "is_deleted" => "Deleted", - "is_printed" => "", - "is_serialized" => "Item has Serial Number", - "item" => "Item", - "item_id" => "", - "item_number" => "Barcode", - "item_number_duplicate" => "Account Number is already present in the database.", - "kit" => "Kit", - "location" => "Location", - "low_inventory_items" => "Out Of Stock Items", - "low_sell_item" => "Low sell item", - "manually_editing_of_quantity" => "Manual Edit of Quantity", - "markup" => "", - "name" => "Item Name", - "name_required" => "First Name is a required field.", - "new" => "New Item", - "no_description_items" => "No Description Items", - "no_items_to_display" => "No Items to display.", - "none" => "None", - "none_selected" => "You have not selected any Item(s) to edit", - "nonstock" => "Non-stocked", - "number_information" => "Item Number", - "number_required" => "Table is a required field.", - "one_or_multiple" => "item(s)", - "pack_name" => "Pack Name", - "qty_per_pack" => "Quantity per pack", - "quantity" => "Quantity", - "quantity_number" => "Quantity must be a number.", - "quantity_required" => "Quantity is a required field.", - "receiving_quantity" => "Receiving Quantity", - "remove_image" => "Remove Image", - "reorder_level" => "Reorder Level", - "reorder_level_number" => "Reorder Level must be a number.", - "reorder_level_required" => "Reorder Level is a required field.", - "retrive_item_info" => "Retrive Item Info", - "sales_tax_1" => "Sales Tax", - "sales_tax_2" => "Sales Tax 2", - "search_attributes" => "Search Attributes", - "select_image" => "Select Image", - "serialized_items" => "Serialized Items", - "standard" => "Standard", - "stock" => "Stock", - "stock_location" => "Stock location", - "stock_type" => "Stock Type", - "successful_adding" => "You have successfully added item", - "successful_bulk_edit" => "You have successfully updated the selected Gift Card(s)", - "successful_deleted" => "You have successfully deleted", - "successful_updating" => "You have successfully added item", - "supplier" => "Supplier", - "tax_1" => "Tax 1", - "tax_2" => "Tax 2", - "tax_3" => "", - "tax_category" => "Tax Category", - "tax_percent" => "", - "tax_percent_number" => "Tax Percent must be a numeric value", - "tax_percent_required" => "Tax Percent is a required field.", - "tax_percents" => "Tax Percent(s)", - "temp" => "Temporary", - "type" => "Item Type", - "unit_price" => "Retail Price", - "unit_price_number" => "Unit price must be a number.", - "unit_price_required" => "Purchase Price is a required field.", - "upc_database" => "Barcode Database", - "update" => "Update Item", - "use_inventory_menu" => "Use Inventory Menu", + "add_minus" => "Inventory to add or subtract.", + "allow_alt_description" => "Allow Alternate Description", + "amount_entry" => "Amount Entry", + "bulk_edit" => "Bulk Edit", + "buy_price_required" => "Purchase Price is a required field.", + "cannot_be_deleted" => "Could not delete selected customers, one or more of the selected customers has sales.", + "cannot_find_item" => "Item not found.", + "categories" => "", + "category" => "Category", + "category_new" => "", + "category_required" => "category is a required field", + "change_all_to_allow_alt_desc" => "Allow alternate description for all.", + "change_all_to_not_allow_allow_desc" => "Do not allow alternate description for all.", + "change_all_to_serialized" => "Change All To Serialized", + "change_all_to_unserialized" => "Change All To Unserialized", + "change_image" => "Change Image", + "confirm_bulk_edit" => "Are you sure you want to delete selected entry(s)?", + "confirm_bulk_edit_wipe_taxes" => "All Item Tax information will be replaced.", + "confirm_delete" => "Are you sure you want to delete selected entry(s)?", + "confirm_restore" => "Are you sure you want to restore selected entry(s)?", + "cost_price" => "Wholesale Price", + "cost_price_number" => "Wholesale Price must be a number.", + "cost_price_required" => "Purchase Price is a required field.", + "count" => "Update Inventory", + "csv_import_failed" => "CSV import failed", + "csv_import_nodata_wrongformat" => "The uploaded file has no data or is formatted incorrectly.", + "csv_import_partially_failed" => "Customer import successful with some failures:", + "csv_import_success" => "Item import successful.", + "current_quantity" => "Current Quantity", + "default_pack_name" => "Each", + "description" => "Description", + "details_count" => "Inventory Count Details", + "do_nothing" => "Do Nothing", + "edit" => "", + "edit_fields_you_want_to_update" => "Edit the desired fields for selected item(s).", + "edit_multiple_items" => "Editing Multiple Items", + "empty_upc_items" => "Empty Barcode Items", + "error_adding_updating" => "Error adding/updating item", + "error_updating_multiple" => "Error updating items", + "generate_barcodes" => "Generate Barcodes", + "hsn_code" => "Harmonized System Nomenclature", + "image" => "Avatar", + "import_items_csv" => "Item Import from CSV", + "info_provided_by" => "Information provided by", + "inventory" => "Inventory", + "inventory_CSV_import_quantity" => "", + "inventory_comments" => "Comments", + "inventory_data_tracking" => "Inventory Data Tracking", + "inventory_date" => "Date", + "inventory_employee" => "Employee", + "inventory_in_out_quantity" => "In/Out Quantity", + "inventory_remarks" => "Remarks", + "is_deleted" => "Deleted", + "is_printed" => "", + "is_serialized" => "Item has Serial Number", + "item" => "Item", + "item_id" => "", + "item_number" => "Barcode", + "item_number_duplicate" => "Account Number is already present in the database.", + "kit" => "Kit", + "location" => "Location", + "low_inventory_items" => "Out Of Stock Items", + "low_sell_item" => "Low sell item", + "manually_editing_of_quantity" => "Manual Edit of Quantity", + "markup" => "", + "name" => "Item Name", + "name_required" => "First Name is a required field.", + "new" => "New Item", + "no_description_items" => "No Description Items", + "no_items_to_display" => "No Items to display.", + "none" => "None", + "none_selected" => "You have not selected any Item(s) to edit", + "nonstock" => "Non-stocked", + "number_information" => "Item Number", + "number_required" => "Table is a required field.", + "one_or_multiple" => "item(s)", + "pack_name" => "Pack Name", + "qty_per_pack" => "Quantity per pack", + "quantity" => "Quantity", + "quantity_number" => "Quantity must be a number.", + "quantity_required" => "Quantity is a required field.", + "receiving_quantity" => "Receiving Quantity", + "remove_image" => "Remove Image", + "reorder_level" => "Reorder Level", + "reorder_level_number" => "Reorder Level must be a number.", + "reorder_level_required" => "Reorder Level is a required field.", + "retrive_item_info" => "Retrive Item Info", + "sales_tax_1" => "Sales Tax", + "sales_tax_2" => "Sales Tax 2", + "search_attributes" => "Search Attributes", + "select_image" => "Select Image", + "serialized_items" => "Serialized Items", + "standard" => "Standard", + "stock" => "Stock", + "stock_location" => "Stock location", + "stock_type" => "Stock Type", + "successful_adding" => "You have successfully added item", + "successful_bulk_edit" => "You have successfully updated the selected Gift Card(s)", + "successful_deleted" => "You have successfully deleted", + "successful_updating" => "You have successfully added item", + "supplier" => "Supplier", + "tax_1" => "Tax 1", + "tax_2" => "Tax 2", + "tax_3" => "", + "tax_category" => "Tax Category", + "tax_percent" => "", + "tax_percent_number" => "Tax Percent must be a numeric value", + "tax_percent_required" => "Tax Percent is a required field.", + "tax_percents" => "Tax Percent(s)", + "temp" => "Temporary", + "type" => "Item Type", + "unit_price" => "Retail Price", + "unit_price_number" => "Unit price must be a number.", + "unit_price_required" => "Purchase Price is a required field.", + "upc_database" => "Barcode Database", + "update" => "Update Item", + "use_inventory_menu" => "Use Inventory Menu", ]; diff --git a/app/Language/tl/Login.php b/app/Language/tl/Login.php index ea041a1a2..6bebee55d 100644 --- a/app/Language/tl/Login.php +++ b/app/Language/tl/Login.php @@ -1,15 +1,15 @@ "I'm not a robot.", - "go" => "Go", - "invalid_gcaptcha" => "Invalid I'm not a robot.", - "invalid_installation" => "The installation is not correct, check your php.ini file.", - "invalid_username_and_password" => "Invalid Username or Password.", - "login" => "Login", - "logout" => "", - "migration_needed" => "", - "password" => "Password", - "required_username" => "", - "username" => "Username", - "welcome" => "", + "gcaptcha" => "I'm not a robot.", + "go" => "Go", + "invalid_gcaptcha" => "Invalid I'm not a robot.", + "invalid_installation" => "The installation is not correct, check your php.ini file.", + "invalid_username_and_password" => "Invalid Username or Password.", + "login" => "Login", + "logout" => "", + "migration_needed" => "", + "password" => "Password", + "required_username" => "", + "username" => "Username", + "welcome" => "", ]; diff --git a/app/Language/tl/Messages.php b/app/Language/tl/Messages.php index b3d9fa998..fa9e2c973 100644 --- a/app/Language/tl/Messages.php +++ b/app/Language/tl/Messages.php @@ -1,15 +1,15 @@ "First name", - "last_name" => "Last name", - "message" => "Message", - "message_placeholder" => "Your Message here...", - "message_required" => "Message required", - "multiple_phones" => "(In case of multiple recipients, enter mobile numbers separated by commas)", - "phone" => "Phone number", - "phone_number_required" => "Phone number required", - "phone_placeholder" => "Mobile Number(s) here...", - "sms_send" => "Send SMS", - "successfully_sent" => "Message unsuccessfully sent to: ", - "unsuccessfully_sent" => "Message successfully sent to: ", + "first_name" => "First name", + "last_name" => "Last name", + "message" => "Message", + "message_placeholder" => "Your Message here...", + "message_required" => "Message required", + "multiple_phones" => "(In case of multiple recipients, enter mobile numbers separated by commas)", + "phone" => "Phone number", + "phone_number_required" => "Phone number required", + "phone_placeholder" => "Mobile Number(s) here...", + "sms_send" => "Send SMS", + "successfully_sent" => "Message unsuccessfully sent to: ", + "unsuccessfully_sent" => "Message successfully sent to: ", ]; diff --git a/app/Language/tl/Module.php b/app/Language/tl/Module.php index c401c7a33..e14a4de7f 100644 --- a/app/Language/tl/Module.php +++ b/app/Language/tl/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "Attributes", - "attributes_desc" => "Add, Update, Delete, and Search Cashups.", - "both" => "Both", - "cashups" => "Cashups", - "cashups_desc" => "Add, Update, Delete, and Search Items.", - "config" => "Configuration", - "config_desc" => "Change OSPOS's Configuration.", - "customers" => "Customers", - "customers_desc" => "Add, Update, Delete, and Search Suppliers.", - "employees" => "Employees", - "employees_desc" => "Add, Update, Delete, and Search Expenses.", - "expenses" => "Expenses", - "expenses_categories" => "Expenses Categories", - "expenses_categories_desc" => "Add, Update, and Delete Expenses Categories.", - "expenses_desc" => "Add, Update, Delete, and Search Employees.", - "giftcards" => "Gift Cards", - "giftcards_desc" => "Add, Update, Delete, and Search Customers.", - "home" => "Home", - "home_desc" => "List office menu modules.", - "item_kits" => "Item Kits", - "item_kits_desc" => "Add, Update, Delete, and Search Items.", - "items" => "Items", - "items_desc" => "Add, Update, Delete and Search Item Kits.", - "messages" => "Messages", - "messages_desc" => "Send Messages to Customers, Suppliers and Employees.", - "migrate" => "Migrate", - "migrate_desc" => "Update the OSPOS Database.", - "office" => "Office", - "office_desc" => "List home menu modules.", - "receivings" => "Receivings", - "receivings_desc" => "Process Purchase Orders.", - "reports" => "Reports", - "reports_desc" => "View and generate Reports.", - "sales" => "Sales", - "sales_desc" => "Process Sales and Returns.", - "suppliers" => "Suppliers", - "suppliers_desc" => "Add, Update, Delete, and Search Customers.", - "taxes" => "Taxes", - "taxes_desc" => "Configure Sales Taxes.", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "Attributes", + "attributes_desc" => "Add, Update, Delete, and Search Cashups.", + "both" => "Both", + "cashups" => "Cashups", + "cashups_desc" => "Add, Update, Delete, and Search Items.", + "config" => "Configuration", + "config_desc" => "Change OSPOS's Configuration.", + "customers" => "Customers", + "customers_desc" => "Add, Update, Delete, and Search Suppliers.", + "employees" => "Employees", + "employees_desc" => "Add, Update, Delete, and Search Expenses.", + "expenses" => "Expenses", + "expenses_categories" => "Expenses Categories", + "expenses_categories_desc" => "Add, Update, and Delete Expenses Categories.", + "expenses_desc" => "Add, Update, Delete, and Search Employees.", + "giftcards" => "Gift Cards", + "giftcards_desc" => "Add, Update, Delete, and Search Customers.", + "home" => "Home", + "home_desc" => "List office menu modules.", + "item_kits" => "Item Kits", + "item_kits_desc" => "Add, Update, Delete, and Search Items.", + "items" => "Items", + "items_desc" => "Add, Update, Delete and Search Item Kits.", + "messages" => "Messages", + "messages_desc" => "Send Messages to Customers, Suppliers and Employees.", + "migrate" => "Migrate", + "migrate_desc" => "Update the OSPOS Database.", + "office" => "Office", + "office_desc" => "List home menu modules.", + "receivings" => "Receivings", + "receivings_desc" => "Process Purchase Orders.", + "reports" => "Reports", + "reports_desc" => "View and generate Reports.", + "sales" => "Sales", + "sales_desc" => "Process Sales and Returns.", + "suppliers" => "Suppliers", + "suppliers_desc" => "Add, Update, Delete, and Search Customers.", + "taxes" => "Taxes", + "taxes_desc" => "Configure Sales Taxes.", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/tl/Receivings.php b/app/Language/tl/Receivings.php index f6d1acc3a..f151ee95e 100644 --- a/app/Language/tl/Receivings.php +++ b/app/Language/tl/Receivings.php @@ -1,58 +1,58 @@ "", - "cancel_receiving" => "Cancel", - "cannot_be_deleted" => "Receiving(s) delete failed.", - "comments" => "Comments", - "complete_receiving" => "Finish", - "confirm_cancel_receiving" => "Are you sure you want to clear this receiving? All items will cleared.", - "confirm_delete" => "Are you sure you want to delete this receiving? This action cannot be undone.", - "confirm_finish_receiving" => "Are you sure you want to submit this receiving? This cannot be undone.", - "confirm_restore" => "", - "cost" => "Cost", - "daily" => "", - "date" => "Receiving Date", - "date_required" => "A correct date must be entered.", - "date_type" => "Date is a required field.", - "delete_entire_sale" => "Delete Entire Sale", - "discount" => "Discount", - "edit" => "Edit", - "edit_sale" => "Edit Receiving", - "employee" => "Employee", - "error_editing_item" => "Item edit failed.", - "error_requisition" => "Unable to move Inventory from or to the same Stock Location.", - "find_or_scan_item" => "Find or Scan Item", - "find_or_scan_item_or_receipt" => "Find or Scan Item or Receipt", - "id" => "Receiving ID", - "item_name" => "Item Name", - "mode" => "Receiving Mode", - "new_supplier" => "New Supplier", - "one_or_multiple" => "receiving(s)", - "print_after_sale" => "Print After Sale", - "quantity" => "Qty.", - "receipt" => "Receivings Receipt", - "receipt_number" => "Receiving #", - "receiving" => "Receive", - "reference" => "Reference", - "register" => "Items Receiving", - "requisition" => "Requisition", - "return" => "Return", - "select_supplier" => "Select Supplier (Optional)", - "ship_pack" => "Ship Pack", - "start_typing_supplier_name" => "Start Typing Supplier's name...", - "stock" => "Stock", - "stock_destination" => "Stock Destination", - "stock_locaiton" => "Stock Location", - "stock_source" => "Stock Source", - "successfully_deleted" => "You have successfully deleted", - "successfully_updated" => "Receiving successfully updated", - "supplier" => "Supplier", - "supplier_address" => "Address", - "supplier_email" => "Email", - "supplier_location" => "Location", - "total" => "Total", - "transaction_failed" => "Receivings transaction(s) failed.", - "unable_to_add_item" => "Item add to Receiving failed.", - "unsuccessfully_updated" => "Receiving update failed.", - "update" => "Update", + "amount_due" => "", + "cancel_receiving" => "Cancel", + "cannot_be_deleted" => "Receiving(s) delete failed.", + "comments" => "Comments", + "complete_receiving" => "Finish", + "confirm_cancel_receiving" => "Are you sure you want to clear this receiving? All items will cleared.", + "confirm_delete" => "Are you sure you want to delete this receiving? This action cannot be undone.", + "confirm_finish_receiving" => "Are you sure you want to submit this receiving? This cannot be undone.", + "confirm_restore" => "", + "cost" => "Cost", + "daily" => "", + "date" => "Receiving Date", + "date_required" => "A correct date must be entered.", + "date_type" => "Date is a required field.", + "delete_entire_sale" => "Delete Entire Sale", + "discount" => "Discount", + "edit" => "Edit", + "edit_sale" => "Edit Receiving", + "employee" => "Employee", + "error_editing_item" => "Item edit failed.", + "error_requisition" => "Unable to move Inventory from or to the same Stock Location.", + "find_or_scan_item" => "Find or Scan Item", + "find_or_scan_item_or_receipt" => "Find or Scan Item or Receipt", + "id" => "Receiving ID", + "item_name" => "Item Name", + "mode" => "Receiving Mode", + "new_supplier" => "New Supplier", + "one_or_multiple" => "receiving(s)", + "print_after_sale" => "Print After Sale", + "quantity" => "Qty.", + "receipt" => "Receivings Receipt", + "receipt_number" => "Receiving #", + "receiving" => "Receive", + "reference" => "Reference", + "register" => "Items Receiving", + "requisition" => "Requisition", + "return" => "Return", + "select_supplier" => "Select Supplier (Optional)", + "ship_pack" => "Ship Pack", + "start_typing_supplier_name" => "Start Typing Supplier's name...", + "stock" => "Stock", + "stock_destination" => "Stock Destination", + "stock_locaiton" => "Stock Location", + "stock_source" => "Stock Source", + "successfully_deleted" => "You have successfully deleted", + "successfully_updated" => "Receiving successfully updated", + "supplier" => "Supplier", + "supplier_address" => "Address", + "supplier_email" => "Email", + "supplier_location" => "Location", + "total" => "Total", + "transaction_failed" => "Receivings transaction(s) failed.", + "unable_to_add_item" => "Item add to Receiving failed.", + "unsuccessfully_updated" => "Receiving update failed.", + "update" => "Update", ]; diff --git a/app/Language/tl/Reports.php b/app/Language/tl/Reports.php index f7c4e1c98..a19bded0c 100644 --- a/app/Language/tl/Reports.php +++ b/app/Language/tl/Reports.php @@ -1,148 +1,148 @@ "All", - "authority" => "Authority", - "canceled" => "Canceled", - "categories" => "Categories", - "categories_summary_report" => "Categories Summary Report", - "category" => "Category", - "code_canceled" => "CNL", - "code_invoice" => "INV", - "code_pos" => "POS", - "code_quote" => "Q", - "code_return" => "RET", - "code_type" => "Type", - "code_work_order" => "W/O", - "comments" => "Comments", - "commission" => "", - "complete" => "Completed Sales and Returns", - "completed_sales" => "Completed Sales", - "confirm_delete" => "Are you sure you want to delete selected entry(s)?", - "confirm_restore" => "Are you sure you want to restore selected entry(s)?", - "cost" => "Wholesale", - "cost_price" => "Wholesale Price", - "count" => "Count", - "customer" => "Customer", - "customers" => "Customers", - "customers_summary_report" => "Customers Summary Report", - "date" => "Date", - "date_range" => "Date Range", - "description" => "Description", - "detailed_receivings_report" => "Detailed Receivings Report", - "detailed_receivings_report_input" => "", - "detailed_reports" => "Detailed Reports", - "detailed_requisition_report" => "", - "detailed_sales_report" => "Detailed Transactions Report", - "discount" => "Discount", - "discount_fixed" => "Fixed Discount", - "discount_percent" => "Discount Percent", - "discount_type" => "Discount Type", - "discounts" => "Discounts", - "discounts_summary_report" => "Discounts Summary Report", - "earned" => "Points Earned", - "employee" => "Employee", - "employees" => "Employees", - "employees_summary_report" => "Employees Summary Report", - "expenses" => "Expenses", - "expenses_amount" => "Amount", - "expenses_categories" => "Expenses", - "expenses_categories_summary_report" => "Expense Categories Summary Report", - "expenses_category" => "Category", - "expenses_payment_amount" => "", - "expenses_tax_amount" => "Tax", - "expenses_total_amount" => "Total Amount", - "expenses_total_tax_amount" => "Total Tax", - "graphical_reports" => "Graphical Reports", - "inventory" => "Inventory", - "inventory_low" => "Low Inventory", - "inventory_low_report" => "Low Inventory Report", - "inventory_reports" => "Inventory Reports", - "inventory_summary" => "Inventory Summary", - "inventory_summary_report" => "Inventory Summary Report", - "item" => "Item", - "item_count" => "Filter Item Count", - "item_name" => "Item Name", - "item_number" => "Barcode", - "items" => "Items", - "items_purchased" => "Items Purchased", - "items_received" => "Items Received", - "items_summary_report" => "Items Summary Report", - "jurisdiction" => "Jurisdiction", - "low_inventory" => "", - "low_inventory_report" => "", - "low_sell_quantity" => "Low Sell Qty", - "more_than_zero" => "More than zero", - "name" => "Name", - "no_reports_to_display" => "No Items to display.", - "payment_type" => "Payment Type", - "payments" => "Payments", - "payments_summary_report" => "Payments Summary Report", - "profit" => "Profit", - "quantity" => "Quantity", - "quantity_purchased" => "Quantity Purchased", - "quotes" => "Quotes", - "received_by" => "Received By", - "receiving_id" => "Receiving ID", - "receiving_type" => "Receiving Type", - "receivings" => "Receivings", - "reorder_level" => "Reorder Level", - "report" => "Report", - "report_input" => "Report Input", - "reports" => "Reports", - "requisition" => "", - "requisition_by" => "", - "requisition_id" => "", - "requisition_item" => "", - "requisition_item_quantity" => "", - "requisition_related_item" => "", - "requisition_related_item_total_quantity" => "", - "requisition_related_item_unit_quantity" => "", - "requisitions" => "Requisitions", - "returns" => "Returns", - "revenue" => "Revenue", - "sale_id" => "Trans. ID", - "sale_type" => "Transaction Type", - "sales" => "Transactions", - "sales_amount" => "Transactions amount", - "sales_summary_report" => "Transactions Summary Report", - "sales_taxes" => "Sales Taxes", - "sales_taxes_summary_report" => "Sales Taxes Summary Report", - "serial_number" => "Serial Number", - "service_charge" => "", - "sold_by" => "Sold By", - "sold_items" => "", - "sold_to" => "Sold To", - "stock_location" => "Stock Location", - "sub_total_value" => "Subtotal", - "subtotal" => "Subtotal", - "summary_reports" => "Summary Reports", - "supplied_by" => "Supplied by", - "supplier" => "Supplier", - "suppliers" => "Suppliers", - "suppliers_summary_report" => "Suppliers Summary Report", - "tax" => "Tax", - "tax_category" => "Tax Category", - "tax_name" => "", - "tax_percent" => "Tax Percent", - "tax_rate" => "Tax Rate", - "taxes" => "Taxes", - "taxes_summary_report" => "Taxes Summary Report", - "total" => "Total", - "total_inventory_value" => "Total Inventory Value", - "total_low_sell_quantity" => "Total Low Sell Quantity", - "total_quantity" => "Total Quantity", - "total_retail" => "Total Inv. Retail Value", - "trans_amount" => "Transaction Amount", - "trans_due" => "Due", - "trans_group" => "Transaction Group", - "trans_nopay_sales" => "Sales with no payment", - "trans_payments" => "Payments", - "trans_refunded" => "Refunded", - "trans_sales" => "Sales", - "trans_type" => "Transaction Type", - "type" => "Type", - "unit_price" => "Retail Price", - "used" => "Points Used", - "work_orders" => "Work Orders", - "zero_and_less" => "Zero and less", + "all" => "All", + "authority" => "Authority", + "canceled" => "Canceled", + "categories" => "Categories", + "categories_summary_report" => "Categories Summary Report", + "category" => "Category", + "code_canceled" => "CNL", + "code_invoice" => "INV", + "code_pos" => "POS", + "code_quote" => "Q", + "code_return" => "RET", + "code_type" => "Type", + "code_work_order" => "W/O", + "comments" => "Comments", + "commission" => "", + "complete" => "Completed Sales and Returns", + "completed_sales" => "Completed Sales", + "confirm_delete" => "Are you sure you want to delete selected entry(s)?", + "confirm_restore" => "Are you sure you want to restore selected entry(s)?", + "cost" => "Wholesale", + "cost_price" => "Wholesale Price", + "count" => "Count", + "customer" => "Customer", + "customers" => "Customers", + "customers_summary_report" => "Customers Summary Report", + "date" => "Date", + "date_range" => "Date Range", + "description" => "Description", + "detailed_receivings_report" => "Detailed Receivings Report", + "detailed_receivings_report_input" => "", + "detailed_reports" => "Detailed Reports", + "detailed_requisition_report" => "", + "detailed_sales_report" => "Detailed Transactions Report", + "discount" => "Discount", + "discount_fixed" => "Fixed Discount", + "discount_percent" => "Discount Percent", + "discount_type" => "Discount Type", + "discounts" => "Discounts", + "discounts_summary_report" => "Discounts Summary Report", + "earned" => "Points Earned", + "employee" => "Employee", + "employees" => "Employees", + "employees_summary_report" => "Employees Summary Report", + "expenses" => "Expenses", + "expenses_amount" => "Amount", + "expenses_categories" => "Expenses", + "expenses_categories_summary_report" => "Expense Categories Summary Report", + "expenses_category" => "Category", + "expenses_payment_amount" => "", + "expenses_tax_amount" => "Tax", + "expenses_total_amount" => "Total Amount", + "expenses_total_tax_amount" => "Total Tax", + "graphical_reports" => "Graphical Reports", + "inventory" => "Inventory", + "inventory_low" => "Low Inventory", + "inventory_low_report" => "Low Inventory Report", + "inventory_reports" => "Inventory Reports", + "inventory_summary" => "Inventory Summary", + "inventory_summary_report" => "Inventory Summary Report", + "item" => "Item", + "item_count" => "Filter Item Count", + "item_name" => "Item Name", + "item_number" => "Barcode", + "items" => "Items", + "items_purchased" => "Items Purchased", + "items_received" => "Items Received", + "items_summary_report" => "Items Summary Report", + "jurisdiction" => "Jurisdiction", + "low_inventory" => "", + "low_inventory_report" => "", + "low_sell_quantity" => "Low Sell Qty", + "more_than_zero" => "More than zero", + "name" => "Name", + "no_reports_to_display" => "No Items to display.", + "payment_type" => "Payment Type", + "payments" => "Payments", + "payments_summary_report" => "Payments Summary Report", + "profit" => "Profit", + "quantity" => "Quantity", + "quantity_purchased" => "Quantity Purchased", + "quotes" => "Quotes", + "received_by" => "Received By", + "receiving_id" => "Receiving ID", + "receiving_type" => "Receiving Type", + "receivings" => "Receivings", + "reorder_level" => "Reorder Level", + "report" => "Report", + "report_input" => "Report Input", + "reports" => "Reports", + "requisition" => "", + "requisition_by" => "", + "requisition_id" => "", + "requisition_item" => "", + "requisition_item_quantity" => "", + "requisition_related_item" => "", + "requisition_related_item_total_quantity" => "", + "requisition_related_item_unit_quantity" => "", + "requisitions" => "Requisitions", + "returns" => "Returns", + "revenue" => "Revenue", + "sale_id" => "Trans. ID", + "sale_type" => "Transaction Type", + "sales" => "Transactions", + "sales_amount" => "Transactions amount", + "sales_summary_report" => "Transactions Summary Report", + "sales_taxes" => "Sales Taxes", + "sales_taxes_summary_report" => "Sales Taxes Summary Report", + "serial_number" => "Serial Number", + "service_charge" => "", + "sold_by" => "Sold By", + "sold_items" => "", + "sold_to" => "Sold To", + "stock_location" => "Stock Location", + "sub_total_value" => "Subtotal", + "subtotal" => "Subtotal", + "summary_reports" => "Summary Reports", + "supplied_by" => "Supplied by", + "supplier" => "Supplier", + "suppliers" => "Suppliers", + "suppliers_summary_report" => "Suppliers Summary Report", + "tax" => "Tax", + "tax_category" => "Tax Category", + "tax_name" => "", + "tax_percent" => "Tax Percent", + "tax_rate" => "Tax Rate", + "taxes" => "Taxes", + "taxes_summary_report" => "Taxes Summary Report", + "total" => "Total", + "total_inventory_value" => "Total Inventory Value", + "total_low_sell_quantity" => "Total Low Sell Quantity", + "total_quantity" => "Total Quantity", + "total_retail" => "Total Inv. Retail Value", + "trans_amount" => "Transaction Amount", + "trans_due" => "Due", + "trans_group" => "Transaction Group", + "trans_nopay_sales" => "Sales with no payment", + "trans_payments" => "Payments", + "trans_refunded" => "Refunded", + "trans_sales" => "Sales", + "trans_type" => "Transaction Type", + "type" => "Type", + "unit_price" => "Retail Price", + "used" => "Points Used", + "work_orders" => "Work Orders", + "zero_and_less" => "Zero and less", ]; diff --git a/app/Language/tl/Sales.php b/app/Language/tl/Sales.php index 97518d8eb..d90691ca0 100644 --- a/app/Language/tl/Sales.php +++ b/app/Language/tl/Sales.php @@ -1,224 +1,224 @@ "Available Points", - "rewards_package" => "Rewards", - "rewards_remaining_balance" => "Reward Points remaining value is ", - "account_number" => "Account #", - "add_payment" => "Add Payment", - "amount_due" => "Amount Due", - "amount_tendered" => "Amount Tendered", - "authorized_signature" => "Authorized Signature", - "cancel_sale" => "Cancel", - "cash" => "Cash", - "cash_1" => "", - "cash_2" => "", - "cash_3" => "", - "cash_4" => "", - "cash_adjustment" => "", - "cash_deposit" => "Cash Deposit", - "cash_filter" => "Cash", - "change_due" => "Change Due", - "change_price" => "", - "check" => "Check", - "check_balance" => "Check remainder", - "check_filter" => "Check", - "close" => "", - "comment" => "Comment", - "comments" => "Comments", - "company_name" => "", - "complete" => "", - "complete_sale" => "Complete", - "confirm_cancel_sale" => "Are you sure you want to clear this sale? All items will cleared.", - "confirm_delete" => "Are you sure you want to delete the selected Sale(s)?", - "confirm_restore" => "Are you sure you want to restore the selected Sale(s)?", - "credit" => "Credit Card", - "credit_deposit" => "Credit Deposit", - "credit_filter" => "", - "current_table" => "", - "customer" => "Name", - "customer_address" => "Address", - "customer_discount" => "Discount", - "customer_email" => "Email", - "customer_location" => "Location", - "customer_mailchimp_status" => "Mailchimp status", - "customer_optional" => "(Required for Due Payments)", - "customer_required" => "(Required)", - "customer_total" => "Total", - "customer_total_spent" => "", - "daily_sales" => "", - "date" => "Sale Date", - "date_range" => "Date Range", - "date_required" => "A correct date must be entered.", - "date_type" => "Date is a required field.", - "debit" => "Debit Card", - "debit_filter" => "", - "delete" => "Allow Delete", - "delete_confirmation" => "Are you sure you want to delete this sale? This action cannot be undone.", - "delete_entire_sale" => "Delete Entire Sale", - "delete_successful" => "Sale delete successful.", - "delete_unsuccessful" => "Sale delete failed.", - "description_abbrv" => "Desc.", - "discard" => "Discard", - "discard_quote" => "", - "discount" => "Disc", - "discount_included" => "% Discount", - "discount_short" => "%", - "due" => "Due", - "due_filter" => "Due", - "edit" => "Edit", - "edit_item" => "Edit Item", - "edit_sale" => "Edit Sale", - "email_receipt" => "Email Receipt", - "employee" => "Employee", - "entry" => "Entry", - "error_editing_item" => "Error editing item", - "find_or_scan_item" => "Find or Scan Item", - "find_or_scan_item_or_receipt" => "Find or Scan Item or Receipt", - "giftcard" => "Gift Card", - "giftcard_balance" => "Gift Card Balance", - "giftcard_filter" => "", - "giftcard_number" => "Gift Card Number", - "group_by_category" => "Group by Category", - "group_by_type" => "Group by Type", - "hsn" => "HSN", - "id" => "Sale ID", - "include_prices" => "Include Prices?", - "invoice" => "Invoice", - "invoice_confirm" => "This invoice will be sent to", - "invoice_enable" => "Create Invoice", - "invoice_filter" => "Invoices", - "invoice_no_email" => "This customer does not have a valid email address.", - "invoice_number" => "Invoice #", - "invoice_number_duplicate" => "Invoice Number must be unique.", - "invoice_sent" => "Invoice sent to", - "invoice_total" => "Invoice Total", - "invoice_type_custom_invoice" => "Custom Invoice (custom_invoice.php)", - "invoice_type_custom_tax_invoice" => "Custom Tax Invoice (custom_tax_invoice.php)", - "invoice_type_invoice" => "Invoice (invoice.php)", - "invoice_type_tax_invoice" => "Tax Invoice (tax_invoice.php)", - "invoice_unsent" => "Invoice failed to be sent to", - "invoice_update" => "Recount", - "item_insufficient_of_stock" => "Item has insufficient stock.", - "item_name" => "Item Name", - "item_number" => "Item #", - "item_out_of_stock" => "Item is out of stock.", - "key_browser" => "", - "key_cancel" => "Cancels Current Quote/Invoice/Sale", - "key_customer_search" => "Customer Search", - "key_finish_quote" => "Finish Quote/Invoice witdout payment", - "key_finish_sale" => "Add Payment and Complete Invoice/Sale", - "key_full" => "", - "key_function" => "Function", - "key_help" => "Shortcuts", - "key_help_modal" => "Open Shortcuts Window", - "key_in" => "", - "key_item_search" => "Item Search", - "key_out" => "", - "key_payment" => "Add Payment", - "key_print" => "", - "key_restore" => "", - "key_search" => "", - "key_suspend" => "Suspend Current Sale", - "key_suspended" => "Show Suspended Sales", - "key_system" => "", - "key_tendered" => "Edit Amount Tendered", - "key_title" => "Sales Keyboard Shortcuts", - "mc" => "", - "mode" => "Register Mode", - "must_enter_numeric" => "Amount Tendered must be a number.", - "must_enter_numeric_giftcard" => "Gift Card Number must be a number.", - "new_customer" => "New Customer", - "new_item" => "New Item", - "no_description" => "No description", - "no_filter" => "All", - "no_items_in_cart" => "There are no Items in the cart.", - "no_sales_to_display" => "No Sales to display.", - "none_selected" => "You have not selected any Sale(s) to delete.", - "nontaxed_ind" => "", - "not_authorized" => "This action is not authorized.", - "one_or_multiple" => "Sale(s)", - "payment" => "Payment Type", - "payment_amount" => "Amount", - "payment_not_cover_total" => "Payment Amount must be greater than or equal to Total.", - "payment_type" => "Type", - "payments" => "", - "payments_total" => "Payments Total", - "price" => "Price", - "print_after_sale" => "Print after Sale", - "quantity" => "Quantity", - "quantity_less_than_reorder_level" => "Warning: Desired Quantity is below Reorder Level for that Item.", - "quantity_less_than_zero" => "Warning: Desired Quantity is insufficient. You can still process the sale, but audit your inventory.", - "quantity_of_items" => "Quantity of {0} Items", - "quote" => "Quote", - "quote_number" => "Quote Number", - "quote_number_duplicate" => "Quote Number must be unique.", - "quote_sent" => "Quote sent to", - "quote_unsent" => "Quote failed to be sent to", - "receipt" => "Sales Receipt", - "receipt_no_email" => "This customer does not have a valid email address.", - "receipt_number" => "Sale #", - "receipt_sent" => "Receipt sent to", - "receipt_unsent" => "Receipt failed to be sent to", - "refund" => "", - "register" => "Sales Register", - "remove_customer" => "Remove Customer", - "remove_discount" => "", - "return" => "Return", - "rewards" => "Reward Points", - "rewards_balance" => "Reward Points Balance", - "sale" => "Sale", - "sale_by_invoice" => "Sale by Invoice", - "sale_for_customer" => "Customer:", - "sale_time" => "Time", - "sales_tax" => "Sales Tax", - "sales_total" => "", - "select_customer" => "Select Customer", - "send_invoice" => "Send Invoice", - "send_quote" => "Send Quote", - "send_receipt" => "Send Receipt", - "send_work_order" => "Send Work Order", - "serial" => "Serial", - "service_charge" => "", - "show_due" => "", - "show_invoice" => "Show Invoice", - "show_receipt" => "Show Receipt", - "start_typing_customer_name" => "Start typing customer details...", - "start_typing_item_name" => "Start typing Item Name or scan Barcode...", - "stock" => "Stock", - "stock_location" => "Stock Location", - "sub_total" => "Subtotal", - "successfully_deleted" => "You have successfully deleted", - "successfully_restored" => "You have successfully restored", - "successfully_suspended_sale" => "Sale suspend successful.", - "successfully_updated" => "Sale update successful.", - "suspend_sale" => "Suspend", - "suspended_doc_id" => "Document", - "suspended_sale_id" => "ID", - "suspended_sales" => "Suspended", - "table" => "Table", - "takings" => "Daily Sales", - "tax" => "Tax", - "tax_id" => "Tax Id", - "tax_invoice" => "Tax Invoice", - "tax_percent" => "Tax %", - "taxed_ind" => "", - "total" => "Total", - "total_tax_exclusive" => "Tax excluded", - "transaction_failed" => "Sales Transaction failed.", - "unable_to_add_item" => "Item add to Sale failed", - "unsuccessfully_deleted" => "Sale(s) delete failed.", - "unsuccessfully_restored" => "Sale(s) restore failed.", - "unsuccessfully_suspended_sale" => "Sale suspend failed.", - "unsuccessfully_updated" => "Sale update failed.", - "unsuspend" => "Unsuspend", - "unsuspend_and_delete" => "Action", - "update" => "Update", - "upi" => "UPI", - "visa" => "", - "wholesale" => "", - "work_order" => "Work Order", - "work_order_number" => "Work Order Number", - "work_order_number_duplicate" => "Work Order Number must be unique.", - "work_order_sent" => "Work Order sent to", - "work_order_unsent" => "Work Order failed to be sent to", + "customers_available_points" => "Available Points", + "rewards_package" => "Rewards", + "rewards_remaining_balance" => "Reward Points remaining value is ", + "account_number" => "Account #", + "add_payment" => "Add Payment", + "amount_due" => "Amount Due", + "amount_tendered" => "Amount Tendered", + "authorized_signature" => "Authorized Signature", + "cancel_sale" => "Cancel", + "cash" => "Cash", + "cash_1" => "", + "cash_2" => "", + "cash_3" => "", + "cash_4" => "", + "cash_adjustment" => "", + "cash_deposit" => "Cash Deposit", + "cash_filter" => "Cash", + "change_due" => "Change Due", + "change_price" => "", + "check" => "Check", + "check_balance" => "Check remainder", + "check_filter" => "Check", + "close" => "", + "comment" => "Comment", + "comments" => "Comments", + "company_name" => "", + "complete" => "", + "complete_sale" => "Complete", + "confirm_cancel_sale" => "Are you sure you want to clear this sale? All items will cleared.", + "confirm_delete" => "Are you sure you want to delete the selected Sale(s)?", + "confirm_restore" => "Are you sure you want to restore the selected Sale(s)?", + "credit" => "Credit Card", + "credit_deposit" => "Credit Deposit", + "credit_filter" => "", + "current_table" => "", + "customer" => "Name", + "customer_address" => "Address", + "customer_discount" => "Discount", + "customer_email" => "Email", + "customer_location" => "Location", + "customer_mailchimp_status" => "Mailchimp status", + "customer_optional" => "(Required for Due Payments)", + "customer_required" => "(Required)", + "customer_total" => "Total", + "customer_total_spent" => "", + "daily_sales" => "", + "date" => "Sale Date", + "date_range" => "Date Range", + "date_required" => "A correct date must be entered.", + "date_type" => "Date is a required field.", + "debit" => "Debit Card", + "debit_filter" => "", + "delete" => "Allow Delete", + "delete_confirmation" => "Are you sure you want to delete this sale? This action cannot be undone.", + "delete_entire_sale" => "Delete Entire Sale", + "delete_successful" => "Sale delete successful.", + "delete_unsuccessful" => "Sale delete failed.", + "description_abbrv" => "Desc.", + "discard" => "Discard", + "discard_quote" => "", + "discount" => "Disc", + "discount_included" => "% Discount", + "discount_short" => "%", + "due" => "Due", + "due_filter" => "Due", + "edit" => "Edit", + "edit_item" => "Edit Item", + "edit_sale" => "Edit Sale", + "email_receipt" => "Email Receipt", + "employee" => "Employee", + "entry" => "Entry", + "error_editing_item" => "Error editing item", + "find_or_scan_item" => "Find or Scan Item", + "find_or_scan_item_or_receipt" => "Find or Scan Item or Receipt", + "giftcard" => "Gift Card", + "giftcard_balance" => "Gift Card Balance", + "giftcard_filter" => "", + "giftcard_number" => "Gift Card Number", + "group_by_category" => "Group by Category", + "group_by_type" => "Group by Type", + "hsn" => "HSN", + "id" => "Sale ID", + "include_prices" => "Include Prices?", + "invoice" => "Invoice", + "invoice_confirm" => "This invoice will be sent to", + "invoice_enable" => "Create Invoice", + "invoice_filter" => "Invoices", + "invoice_no_email" => "This customer does not have a valid email address.", + "invoice_number" => "Invoice #", + "invoice_number_duplicate" => "Invoice Number must be unique.", + "invoice_sent" => "Invoice sent to", + "invoice_total" => "Invoice Total", + "invoice_type_custom_invoice" => "Custom Invoice (custom_invoice.php)", + "invoice_type_custom_tax_invoice" => "Custom Tax Invoice (custom_tax_invoice.php)", + "invoice_type_invoice" => "Invoice (invoice.php)", + "invoice_type_tax_invoice" => "Tax Invoice (tax_invoice.php)", + "invoice_unsent" => "Invoice failed to be sent to", + "invoice_update" => "Recount", + "item_insufficient_of_stock" => "Item has insufficient stock.", + "item_name" => "Item Name", + "item_number" => "Item #", + "item_out_of_stock" => "Item is out of stock.", + "key_browser" => "", + "key_cancel" => "Cancels Current Quote/Invoice/Sale", + "key_customer_search" => "Customer Search", + "key_finish_quote" => "Finish Quote/Invoice witdout payment", + "key_finish_sale" => "Add Payment and Complete Invoice/Sale", + "key_full" => "", + "key_function" => "Function", + "key_help" => "Shortcuts", + "key_help_modal" => "Open Shortcuts Window", + "key_in" => "", + "key_item_search" => "Item Search", + "key_out" => "", + "key_payment" => "Add Payment", + "key_print" => "", + "key_restore" => "", + "key_search" => "", + "key_suspend" => "Suspend Current Sale", + "key_suspended" => "Show Suspended Sales", + "key_system" => "", + "key_tendered" => "Edit Amount Tendered", + "key_title" => "Sales Keyboard Shortcuts", + "mc" => "", + "mode" => "Register Mode", + "must_enter_numeric" => "Amount Tendered must be a number.", + "must_enter_numeric_giftcard" => "Gift Card Number must be a number.", + "new_customer" => "New Customer", + "new_item" => "New Item", + "no_description" => "No description", + "no_filter" => "All", + "no_items_in_cart" => "There are no Items in the cart.", + "no_sales_to_display" => "No Sales to display.", + "none_selected" => "You have not selected any Sale(s) to delete.", + "nontaxed_ind" => "", + "not_authorized" => "This action is not authorized.", + "one_or_multiple" => "Sale(s)", + "payment" => "Payment Type", + "payment_amount" => "Amount", + "payment_not_cover_total" => "Payment Amount must be greater than or equal to Total.", + "payment_type" => "Type", + "payments" => "", + "payments_total" => "Payments Total", + "price" => "Price", + "print_after_sale" => "Print after Sale", + "quantity" => "Quantity", + "quantity_less_than_reorder_level" => "Warning: Desired Quantity is below Reorder Level for that Item.", + "quantity_less_than_zero" => "Warning: Desired Quantity is insufficient. You can still process the sale, but audit your inventory.", + "quantity_of_items" => "Quantity of {0} Items", + "quote" => "Quote", + "quote_number" => "Quote Number", + "quote_number_duplicate" => "Quote Number must be unique.", + "quote_sent" => "Quote sent to", + "quote_unsent" => "Quote failed to be sent to", + "receipt" => "Sales Receipt", + "receipt_no_email" => "This customer does not have a valid email address.", + "receipt_number" => "Sale #", + "receipt_sent" => "Receipt sent to", + "receipt_unsent" => "Receipt failed to be sent to", + "refund" => "", + "register" => "Sales Register", + "remove_customer" => "Remove Customer", + "remove_discount" => "", + "return" => "Return", + "rewards" => "Reward Points", + "rewards_balance" => "Reward Points Balance", + "sale" => "Sale", + "sale_by_invoice" => "Sale by Invoice", + "sale_for_customer" => "Customer:", + "sale_time" => "Time", + "sales_tax" => "Sales Tax", + "sales_total" => "", + "select_customer" => "Select Customer", + "send_invoice" => "Send Invoice", + "send_quote" => "Send Quote", + "send_receipt" => "Send Receipt", + "send_work_order" => "Send Work Order", + "serial" => "Serial", + "service_charge" => "", + "show_due" => "", + "show_invoice" => "Show Invoice", + "show_receipt" => "Show Receipt", + "start_typing_customer_name" => "Start typing customer details...", + "start_typing_item_name" => "Start typing Item Name or scan Barcode...", + "stock" => "Stock", + "stock_location" => "Stock Location", + "sub_total" => "Subtotal", + "successfully_deleted" => "You have successfully deleted", + "successfully_restored" => "You have successfully restored", + "successfully_suspended_sale" => "Sale suspend successful.", + "successfully_updated" => "Sale update successful.", + "suspend_sale" => "Suspend", + "suspended_doc_id" => "Document", + "suspended_sale_id" => "ID", + "suspended_sales" => "Suspended", + "table" => "Table", + "takings" => "Daily Sales", + "tax" => "Tax", + "tax_id" => "Tax Id", + "tax_invoice" => "Tax Invoice", + "tax_percent" => "Tax %", + "taxed_ind" => "", + "total" => "Total", + "total_tax_exclusive" => "Tax excluded", + "transaction_failed" => "Sales Transaction failed.", + "unable_to_add_item" => "Item add to Sale failed", + "unsuccessfully_deleted" => "Sale(s) delete failed.", + "unsuccessfully_restored" => "Sale(s) restore failed.", + "unsuccessfully_suspended_sale" => "Sale suspend failed.", + "unsuccessfully_updated" => "Sale update failed.", + "unsuspend" => "Unsuspend", + "unsuspend_and_delete" => "Action", + "update" => "Update", + "upi" => "UPI", + "visa" => "", + "wholesale" => "", + "work_order" => "Work Order", + "work_order_number" => "Work Order Number", + "work_order_number_duplicate" => "Work Order Number must be unique.", + "work_order_sent" => "Work Order sent to", + "work_order_unsent" => "Work Order failed to be sent to", ]; diff --git a/app/Language/tl/Suppliers.php b/app/Language/tl/Suppliers.php index 5a90d19a8..a7e0d1f4e 100644 --- a/app/Language/tl/Suppliers.php +++ b/app/Language/tl/Suppliers.php @@ -1,24 +1,24 @@ "Account Number", - "agency_name" => "Agency Name", - "cannot_be_deleted" => "Could not delete selected Supplier(s). One or more have Sales.", - "category" => "Category", - "company_name" => "Company Name", - "company_name_required" => "Company Name is a required field.", - "confirm_delete" => "Are you sure you want to delete the selected Supplier(s)?", - "confirm_restore" => "Are you sure you want to restore selected Supplier(s)?", - "cost" => "Cost Supplier", - "error_adding_updating" => "Supplier update or add failed.", - "goods" => "Goods Supplier", - "new" => "New Supplier", - "none_selected" => "You have not selected any employee(s) to delete.", - "one_or_multiple" => "Supplier(s)", - "successful_adding" => "You have successfully updated Supplier", - "successful_deleted" => "You have successfully deleted", - "successful_updating" => "You have successfully added Supplier", - "supplier" => "Supplier", - "supplier_id" => "Id", - "tax_id" => "Tax Id", - "update" => "Update Supplier", + "account_number" => "Account Number", + "agency_name" => "Agency Name", + "cannot_be_deleted" => "Could not delete selected Supplier(s). One or more have Sales.", + "category" => "Category", + "company_name" => "Company Name", + "company_name_required" => "Company Name is a required field.", + "confirm_delete" => "Are you sure you want to delete the selected Supplier(s)?", + "confirm_restore" => "Are you sure you want to restore selected Supplier(s)?", + "cost" => "Cost Supplier", + "error_adding_updating" => "Supplier update or add failed.", + "goods" => "Goods Supplier", + "new" => "New Supplier", + "none_selected" => "You have not selected any employee(s) to delete.", + "one_or_multiple" => "Supplier(s)", + "successful_adding" => "You have successfully updated Supplier", + "successful_deleted" => "You have successfully deleted", + "successful_updating" => "You have successfully added Supplier", + "supplier" => "Supplier", + "supplier_id" => "Id", + "tax_id" => "Tax Id", + "update" => "Update Supplier", ]; diff --git a/app/Language/tl/Taxes.php b/app/Language/tl/Taxes.php index a50d77b0b..8a7555fb1 100644 --- a/app/Language/tl/Taxes.php +++ b/app/Language/tl/Taxes.php @@ -1,82 +1,82 @@ "Add Exception", - "cascade" => "Cascade", - "cascade_sequence" => "Cascade Sequence", - "city" => "City", - "code" => "Code", - "confirm_delete" => "Are you sure you want to delete this Tax Code? This action cannot be undone", - "confirm_restore" => "Are you sure you want to delete the selected Gift Card(s)?", - "default_tax_category" => "Default Tax Category", - "default_tax_rate" => "Default Tax Rate", - "error_adding_updating" => "Tax Rate add or update failed", - "group_seq" => "Group Seq", - "jurisdiction_name" => "Jurisdiction Name", - "name" => "Name", - "new" => "New Tax", - "no_taxes" => "", - "no_taxes_to_display" => "No Taxes Code available to display", - "reporting_authority" => "Reporting Authority", - "round_half_down" => "Half Down", - "round_half_even" => "Half Even", - "round_half_odd" => "Half Odd", - "round_half_up" => "Half Up", - "rounding_code" => "Rounding Code", - "sales_tax" => "Sales Tax", - "sales_tax_by_invoice" => "Sales Tax by Invoice", - "sequence" => "Seq.", - "state" => "State", - "successful_deleted" => "You have successfully deleted", - "tax_categories" => "Tax Categories", - "tax_categories_configuration" => "Tax Categories Configuration", - "tax_categories_saved_successfully" => "Tax Categories changes not saved", - "tax_categories_saved_unsuccessfully" => "Tax Categories changes saved", - "tax_category" => "Tax Category", - "tax_category_code" => "Tax Category Name", - "tax_category_duplicate" => "Duplicate tax category", - "tax_category_invalid_chars" => "Invalid characters in tax category name", - "tax_category_name" => "Tax Category Code", - "tax_category_new" => "New Tax Category", - "tax_category_required" => "Tax category is required", - "tax_code" => "Tax Code", - "tax_code_cannot_be_deleted" => "Tax Code delete failed", - "tax_code_duplicate" => "Duplicate tax code", - "tax_code_invalid_chars" => "Invalid characters in tax code", - "tax_code_name" => "Tax Code Name", - "tax_code_required" => "Tax Rate is a required field", - "tax_code_successful_deleted" => "You have successfully updated Tax Code", - "tax_code_successful_updated" => "You have successfully updated", - "tax_code_successful_updating" => "You have successfully deleted Tax Code", - "tax_code_successfully_added" => "You have successfully added", - "tax_code_type" => "Tax Code Type", - "tax_codes" => "Tax Codes", - "tax_codes_configuration" => "Tax Codes Configuration", - "tax_codes_saved_successfully" => "Tax Code changes not saved", - "tax_codes_saved_unsuccessfully" => "Tax Code changes saved", - "tax_excluded" => "Tax excluded", - "tax_group" => "Tax Group", - "tax_group_not_unique" => "", - "tax_group_sequence" => "Tax Group Sequence", - "tax_included" => "Tax included", - "tax_jurisdiction" => "Tax Jurisdiction", - "tax_jurisdiction_duplicate" => "Duplicate tax jurisdiction", - "tax_jurisdiction_invalid_chars" => "Invalid characters in jurisdiction name", - "tax_jurisdiction_required" => "Tax jurisdiction is required", - "tax_jurisdictions" => "Tax Jurisdictions", - "tax_jurisdictions_configuration" => "Tax Jurisdictions Configuration", - "tax_jurisdictions_saved_successfully" => "Tax Jurisdiction changes not saved", - "tax_jurisdictions_saved_unsuccessfully" => "Tax Jurisdiction changes saved", - "tax_rate" => "Tax Rate", - "tax_rate_configuration" => "Tax Rates Configuration", - "tax_rate_error_adding_updating" => "Tax Code add or update failed", - "tax_rate_numeric" => "date must be a number", - "tax_rate_required" => "Tax Code is a required field", - "tax_rate_successful_updated" => "You have successfully updated", - "tax_rate_successfully_added" => "You have successfully added", - "tax_rates" => "Tax Rates", - "tax_rates_configuration" => "Tax Rates Configuration", - "tax_rounding" => "Tax Rounding", - "tax_type" => "Tax Type", - "update" => "Update Tax Rate", - "vat_tax" => "VAT Tax", + "add_exception" => "Add Exception", + "cascade" => "Cascade", + "cascade_sequence" => "Cascade Sequence", + "city" => "City", + "code" => "Code", + "confirm_delete" => "Are you sure you want to delete this Tax Code? This action cannot be undone", + "confirm_restore" => "Are you sure you want to delete the selected Gift Card(s)?", + "default_tax_category" => "Default Tax Category", + "default_tax_rate" => "Default Tax Rate", + "error_adding_updating" => "Tax Rate add or update failed", + "group_seq" => "Group Seq", + "jurisdiction_name" => "Jurisdiction Name", + "name" => "Name", + "new" => "New Tax", + "no_taxes" => "", + "no_taxes_to_display" => "No Taxes Code available to display", + "reporting_authority" => "Reporting Authority", + "round_half_down" => "Half Down", + "round_half_even" => "Half Even", + "round_half_odd" => "Half Odd", + "round_half_up" => "Half Up", + "rounding_code" => "Rounding Code", + "sales_tax" => "Sales Tax", + "sales_tax_by_invoice" => "Sales Tax by Invoice", + "sequence" => "Seq.", + "state" => "State", + "successful_deleted" => "You have successfully deleted", + "tax_categories" => "Tax Categories", + "tax_categories_configuration" => "Tax Categories Configuration", + "tax_categories_saved_successfully" => "Tax Categories changes not saved", + "tax_categories_saved_unsuccessfully" => "Tax Categories changes saved", + "tax_category" => "Tax Category", + "tax_category_code" => "Tax Category Name", + "tax_category_duplicate" => "Duplicate tax category", + "tax_category_invalid_chars" => "Invalid characters in tax category name", + "tax_category_name" => "Tax Category Code", + "tax_category_new" => "New Tax Category", + "tax_category_required" => "Tax category is required", + "tax_code" => "Tax Code", + "tax_code_cannot_be_deleted" => "Tax Code delete failed", + "tax_code_duplicate" => "Duplicate tax code", + "tax_code_invalid_chars" => "Invalid characters in tax code", + "tax_code_name" => "Tax Code Name", + "tax_code_required" => "Tax Rate is a required field", + "tax_code_successful_deleted" => "You have successfully updated Tax Code", + "tax_code_successful_updated" => "You have successfully updated", + "tax_code_successful_updating" => "You have successfully deleted Tax Code", + "tax_code_successfully_added" => "You have successfully added", + "tax_code_type" => "Tax Code Type", + "tax_codes" => "Tax Codes", + "tax_codes_configuration" => "Tax Codes Configuration", + "tax_codes_saved_successfully" => "Tax Code changes not saved", + "tax_codes_saved_unsuccessfully" => "Tax Code changes saved", + "tax_excluded" => "Tax excluded", + "tax_group" => "Tax Group", + "tax_group_not_unique" => "", + "tax_group_sequence" => "Tax Group Sequence", + "tax_included" => "Tax included", + "tax_jurisdiction" => "Tax Jurisdiction", + "tax_jurisdiction_duplicate" => "Duplicate tax jurisdiction", + "tax_jurisdiction_invalid_chars" => "Invalid characters in jurisdiction name", + "tax_jurisdiction_required" => "Tax jurisdiction is required", + "tax_jurisdictions" => "Tax Jurisdictions", + "tax_jurisdictions_configuration" => "Tax Jurisdictions Configuration", + "tax_jurisdictions_saved_successfully" => "Tax Jurisdiction changes not saved", + "tax_jurisdictions_saved_unsuccessfully" => "Tax Jurisdiction changes saved", + "tax_rate" => "Tax Rate", + "tax_rate_configuration" => "Tax Rates Configuration", + "tax_rate_error_adding_updating" => "Tax Code add or update failed", + "tax_rate_numeric" => "date must be a number", + "tax_rate_required" => "Tax Code is a required field", + "tax_rate_successful_updated" => "You have successfully updated", + "tax_rate_successfully_added" => "You have successfully added", + "tax_rates" => "Tax Rates", + "tax_rates_configuration" => "Tax Rates Configuration", + "tax_rounding" => "Tax Rounding", + "tax_type" => "Tax Type", + "update" => "Update Tax Rate", + "vat_tax" => "VAT Tax", ]; diff --git a/app/Language/tr/Attributes.php b/app/Language/tr/Attributes.php index e46dc467f..bd35b1ce1 100644 --- a/app/Language/tr/Attributes.php +++ b/app/Language/tr/Attributes.php @@ -1,32 +1,32 @@ "Nitelik değeri ':' ve ya '|' karakterlerini bulunduramaz", - "confirm_delete" => "Seçili niteliği ya da nitelikleri silmek istediğinize emin misiniz?", - "confirm_restore" => "Seçili nitelik ya da nitelikleri kurtarmak istediğinize emin misiniz?", - "definition_cannot_be_deleted" => "Seçili nitelik ya da nitelikler silinemedi", - "definition_error_adding_updating" => "Nitelik {0} eklenemedi ya da güncellenemedi. Lütfen hata kaydını gözden geçirin.", - "definition_flags" => "Nitelik Görünebilirliği", - "definition_group" => "Küme", - "definition_id" => "Kimlik", - "definition_name" => "Nitelik Ekle", - "definition_name_required" => "Nitelik adı girilmesi gerekli alandır", - "definition_one_or_multiple" => "Nitelik/Nitelikler", - "definition_successful_adding" => "Başarıyla öge eklediniz", - "definition_successful_deleted" => "Başarıyla sildiniz", - "definition_successful_updating" => "Başarılı biçimde niteliği güncellediniz", - "definition_type" => "Nitelik Türü", - "definition_type_required" => "Nitelik türü alanı gereklidir", - "definition_unit" => "Ölçü Birimi", - "definition_values" => "Nitelik Değerleri", - "new" => "Yeni Nitelik", - "no_attributes_to_display" => "Gösterecek ürün yok", - "receipt_visibility" => "Fiş", - "show_in_items" => "Ürünlerde göster", - "show_in_items_visibility" => "Ürünler", - "show_in_receipt" => "Fişlerde göster", - "show_in_receivings" => "Alacaklarda göster", - "show_in_receivings_visibility" => "Alacaklar", - "show_in_sales" => "Satışlarda göster", - "show_in_sales_visibility" => "Satışlar", - "update" => "Nitelik Güncelle", + "attribute_value_invalid_chars" => "Nitelik değeri ':' ve ya '|' karakterlerini bulunduramaz", + "confirm_delete" => "Seçili niteliği ya da nitelikleri silmek istediğinize emin misiniz?", + "confirm_restore" => "Seçili nitelik ya da nitelikleri kurtarmak istediğinize emin misiniz?", + "definition_cannot_be_deleted" => "Seçili nitelik ya da nitelikler silinemedi", + "definition_error_adding_updating" => "Nitelik {0} eklenemedi ya da güncellenemedi. Lütfen hata kaydını gözden geçirin.", + "definition_flags" => "Nitelik Görünebilirliği", + "definition_group" => "Küme", + "definition_id" => "Kimlik", + "definition_name" => "Nitelik Ekle", + "definition_name_required" => "Nitelik adı girilmesi gerekli alandır", + "definition_one_or_multiple" => "Nitelik/Nitelikler", + "definition_successful_adding" => "Başarıyla öge eklediniz", + "definition_successful_deleted" => "Başarıyla sildiniz", + "definition_successful_updating" => "Başarılı biçimde niteliği güncellediniz", + "definition_type" => "Nitelik Türü", + "definition_type_required" => "Nitelik türü alanı gereklidir", + "definition_unit" => "Ölçü Birimi", + "definition_values" => "Nitelik Değerleri", + "new" => "Yeni Nitelik", + "no_attributes_to_display" => "Gösterecek ürün yok", + "receipt_visibility" => "Fiş", + "show_in_items" => "Ürünlerde göster", + "show_in_items_visibility" => "Ürünler", + "show_in_receipt" => "Fişlerde göster", + "show_in_receivings" => "Alacaklarda göster", + "show_in_receivings_visibility" => "Alacaklar", + "show_in_sales" => "Satışlarda göster", + "show_in_sales_visibility" => "Satışlar", + "update" => "Nitelik Güncelle", ]; diff --git a/app/Language/tr/Bootstrap_tables.php b/app/Language/tr/Bootstrap_tables.php index 78f467555..a14008d97 100644 --- a/app/Language/tr/Bootstrap_tables.php +++ b/app/Language/tr/Bootstrap_tables.php @@ -1,11 +1,11 @@ "tüm", - "columns" => "Sütun", - "hide_show_pagination" => "Sayfalandırmayı Gizle/Göster", - "loading" => "Yükleniyor, lütfen bekleyin...", - "page_from_to" => "{2} kayıttan {0} - {1} görüntüleniyor", - "refresh" => "Yenile", - "rows_per_page" => "Sayfa başına {0} satır", - "toggle" => "Değiştir", + "all" => "tüm", + "columns" => "Sütun", + "hide_show_pagination" => "Sayfalandırmayı Gizle/Göster", + "loading" => "Yükleniyor, lütfen bekleyin...", + "page_from_to" => "{2} kayıttan {0} - {1} görüntüleniyor", + "refresh" => "Yenile", + "rows_per_page" => "Sayfa başına {0} satır", + "toggle" => "Değiştir", ]; diff --git a/app/Language/tr/Calendar.php b/app/Language/tr/Calendar.php index 57aaef7ae..5975853ec 100644 --- a/app/Language/tr/Calendar.php +++ b/app/Language/tr/Calendar.php @@ -1,48 +1,48 @@ "Pa", - "mo" => "Pt", - "tu" => "Sa", - "we" => "Ça", - "th" => "Pe", - "fr" => "Cu", - "sa" => "Ct", - "sun" => "Paz", - "mon" => "Pzt", - "tue" => "Sal", - "wed" => "Çar", - "thu" => "Per", - "fri" => "Cum", - "sat" => "Cmt", - "sunday" => "Pazar", - "monday" => "Pazartesi", - "tuesday" => "Salı", - "wednesday" => "Çarşamba", - "thursday" => "Perşembe", - "friday" => "Cuma", - "saturday" => "Cumartesi", - "jan" => "Oca", - "feb" => "Şub", - "mar" => "Mar", - "apr" => "Nis", - "may" => "May", - "jun" => "Haz", - "jul" => "Tem", - "aug" => "Ağu", - "sep" => "Eyl", - "oct" => "Eki", - "nov" => "Kas", - "dec" => "Ara", - "january" => "Ocak", - "february" => "Şubat", - "march" => "Mart", - "april" => "Nisan", - "mayl" => "Mayıs", - "june" => "Haziran", - "july" => "Temmuz", - "august" => "Ağustos", - "september" => "Eylül", - "october" => "Ekim", - "november" => "Kasım", - "december" => "Aralık", + "su" => "Pa", + "mo" => "Pt", + "tu" => "Sa", + "we" => "Ça", + "th" => "Pe", + "fr" => "Cu", + "sa" => "Ct", + "sun" => "Paz", + "mon" => "Pzt", + "tue" => "Sal", + "wed" => "Çar", + "thu" => "Per", + "fri" => "Cum", + "sat" => "Cmt", + "sunday" => "Pazar", + "monday" => "Pazartesi", + "tuesday" => "Salı", + "wednesday" => "Çarşamba", + "thursday" => "Perşembe", + "friday" => "Cuma", + "saturday" => "Cumartesi", + "jan" => "Oca", + "feb" => "Şub", + "mar" => "Mar", + "apr" => "Nis", + "may" => "May", + "jun" => "Haz", + "jul" => "Tem", + "aug" => "Ağu", + "sep" => "Eyl", + "oct" => "Eki", + "nov" => "Kas", + "dec" => "Ara", + "january" => "Ocak", + "february" => "Şubat", + "march" => "Mart", + "april" => "Nisan", + "mayl" => "Mayıs", + "june" => "Haziran", + "july" => "Temmuz", + "august" => "Ağustos", + "september" => "Eylül", + "october" => "Ekim", + "november" => "Kasım", + "december" => "Aralık", ]; diff --git a/app/Language/tr/Cashups.php b/app/Language/tr/Cashups.php index 089ed02e2..9902b3504 100644 --- a/app/Language/tr/Cashups.php +++ b/app/Language/tr/Cashups.php @@ -1,49 +1,49 @@ "Miktar", - "amount_number" => "Tutar bir sayı olmalıdır", - "amount_required" => "Tutar, Zorunlu Bir Alandır.", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "Nakit ödeme silinemez", - "cash_difference" => "", - "close_date" => "Yakın tarih", - "close_employee" => "Tarafından kapatıldı", - "closed_amount_card" => "Kartlar", - "closed_amount_cash" => "Kapalı Nakit", - "closed_amount_check" => "Çekler", - "closed_amount_due" => "Aidat", - "closed_amount_giftcard" => "", - "closed_amount_total" => "Toplam", - "closed_date" => "Kapanış Tarihi", - "confirm_delete" => "Seçili Satışı Silmek istediğinizden emin misiniz?", - "confirm_restore" => "Seçili Cash Up'ları geri yüklemek istediğinizden emin misiniz?", - "confirm_submit" => "", - "date_number" => "Tarih bir sayı olmalı", - "date_required" => "Tarih zorunlu bir alandır", - "description" => "Açıklama", - "enable_expected" => "", - "error_adding_updating" => "Nakit ekleme / güncelleme hatası", - "giftcard" => "", - "id" => "Id", - "info" => "Nakit Bilgi", - "info_employee" => "", - "is_deleted" => "Silindi", - "new" => "Yeni Kasa", - "no_cashups_to_display" => "Gösterilecek kasa yok", - "none_selected" => "Hiçbir Kasa seçmediniz", - "note" => "Notlar", - "one_or_multiple" => "Cashups (lar)", - "open_amount_cash" => "Nakit açık", - "open_date" => "Açık tarih", - "open_employee" => "Tarafından açılan", - "opened_date" => "Açılış Tarihi", - "successful_adding" => "Kasa ekleme başarılı", - "successful_deleted" => "Kasa silme işlemi başarıyla tamamlandı", - "successful_updating" => "Nakit güncelleme başarılı", - "total" => "Toplam", - "transfer_amount_cash" => "Nakit Giriş / Çıkış", - "transfer_amount_cash_minus" => "", - "update" => "Nakit Güncelleme", - "warning" => "", + "amount" => "Miktar", + "amount_number" => "Tutar bir sayı olmalıdır", + "amount_required" => "Tutar, Zorunlu Bir Alandır.", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "Nakit ödeme silinemez", + "cash_difference" => "", + "close_date" => "Yakın tarih", + "close_employee" => "Tarafından kapatıldı", + "closed_amount_card" => "Kartlar", + "closed_amount_cash" => "Kapalı Nakit", + "closed_amount_check" => "Çekler", + "closed_amount_due" => "Aidat", + "closed_amount_giftcard" => "", + "closed_amount_total" => "Toplam", + "closed_date" => "Kapanış Tarihi", + "confirm_delete" => "Seçili Satışı Silmek istediğinizden emin misiniz?", + "confirm_restore" => "Seçili Cash Up'ları geri yüklemek istediğinizden emin misiniz?", + "confirm_submit" => "", + "date_number" => "Tarih bir sayı olmalı", + "date_required" => "Tarih zorunlu bir alandır", + "description" => "Açıklama", + "enable_expected" => "", + "error_adding_updating" => "Nakit ekleme / güncelleme hatası", + "giftcard" => "", + "id" => "Id", + "info" => "Nakit Bilgi", + "info_employee" => "", + "is_deleted" => "Silindi", + "new" => "Yeni Kasa", + "no_cashups_to_display" => "Gösterilecek kasa yok", + "none_selected" => "Hiçbir Kasa seçmediniz", + "note" => "Notlar", + "one_or_multiple" => "Cashups (lar)", + "open_amount_cash" => "Nakit açık", + "open_date" => "Açık tarih", + "open_employee" => "Tarafından açılan", + "opened_date" => "Açılış Tarihi", + "successful_adding" => "Kasa ekleme başarılı", + "successful_deleted" => "Kasa silme işlemi başarıyla tamamlandı", + "successful_updating" => "Nakit güncelleme başarılı", + "total" => "Toplam", + "transfer_amount_cash" => "Nakit Giriş / Çıkış", + "transfer_amount_cash_minus" => "", + "update" => "Nakit Güncelleme", + "warning" => "", ]; diff --git a/app/Language/tr/Common.php b/app/Language/tr/Common.php index 82d9cbee5..586e5ebe5 100644 --- a/app/Language/tr/Common.php +++ b/app/Language/tr/Common.php @@ -1,88 +1,88 @@ "Adres 1", - "address_2" => "Adres 2", - "admin" => "", - "city" => "Şehir", - "clerk" => "", - "close" => "Kapat", - "color" => "", - "comments" => "Yorumlar", - "common" => "genel", - "confirm_search" => "Birden çok satır seçtiniz, arama yaptığınızda seçiminiz kaybolacak. Arama yapmak istediğinize emin misiniz?", - "copyrights" => "© 2010 - {0}", - "correct_errors" => "Lütfen kaydetmeden önce tanımlanmış hataları düzeltin", - "country" => "Ülke", - "dashboard" => "", - "date" => "Tarih", - "delete" => "Sil", - "det" => "ayrıntılar", - "download_import_template" => "CSV Şablonunu İçe Aktar (CSV) uygulamasını indirin", - "edit" => "düzenle", - "email" => "E-Posta", - "email_invalid_format" => "E-posta adresi doğru biçimde değil.", - "export_csv" => "CSV Dışa Aktarımı", - "export_csv_no" => "Hayır", - "export_csv_yes" => "Evet", - "fields_required_message" => "Kırmızı alanlar zorunludur", - "fields_required_message_unique" => "", - "first_name" => "Ad", - "first_name_required" => "Ad zorunlu alandır.", - "first_page" => "İlk", - "gender" => "Cinsiyet", - "gender_female" => "K", - "gender_male" => "E", - "gender_undefined" => "", - "icon" => "Simge", - "id" => "Kimlik", - "import" => "Aktar", - "import_change_file" => "Değiştir", - "import_csv" => "CSV İçe Aktarım", - "import_full_path" => "CSV dosyasının tam yolu gerekli", - "import_remove_file" => "Kaldır", - "import_select_file" => "Dosya seç", - "inv" => "Stok", - "last_name" => "Soyad", - "last_name_required" => "Soyad zorunlu alandır.", - "last_page" => "Son", - "learn_about_project" => "Proje hakkında en son bilgileri öğren.", - "list_of" => "Liste", - "logo" => "Logo", - "logo_mark" => "İm", - "logout" => "Çıkış", - "manager" => "", - "migration_needed" => "Giriş yapılınca {0} veritabanına geçiş başlar.", - "new" => "Yeni", - "no" => "", - "no_persons_to_display" => "Gösterecek kişi yok.", - "none_selected_text" => "[Seç]", - "or" => "VEYA", - "people" => "", - "phone_number" => "Telefon", - "phone_number_required" => "", - "please_visit_my" => "Şurayı ziyaret edin:", - "position" => "", - "powered_by" => "Destekleyen", - "price" => "Fiyat", - "print" => "Yazdır", - "remove" => "Kaldır", - "required" => "Zorunlu", - "restore" => "Onar", - "return_policy" => "İade Politikası", - "search" => "Arama", - "search_options" => "Arama seçenekleri", - "searched_for" => "Şu arandı:", - "software_short" => "OSPOS", - "software_title" => "Açık Kaynaklı Satış Noktası", - "state" => "Bölge", - "submit" => "Onayla", - "total_spent" => "Toplam Harcama", - "unknown" => "Bilinmeyen", - "view_recent_sales" => "Yeni satışları göster", - "website" => "opensourcepos.org", - "welcome" => "Hoş Geldiniz", - "welcome_message" => "OSPOS'a hoş geldiniz, başlamak için modüle tıklayın.", - "yes" => "", - "you_are_using_ospos" => "Kullandığınız Open Source Point Of Sale sürümü", - "zip" => "Şehir Kodu", + "address_1" => "Adres 1", + "address_2" => "Adres 2", + "admin" => "", + "city" => "Şehir", + "clerk" => "", + "close" => "Kapat", + "color" => "", + "comments" => "Yorumlar", + "common" => "genel", + "confirm_search" => "Birden çok satır seçtiniz, arama yaptığınızda seçiminiz kaybolacak. Arama yapmak istediğinize emin misiniz?", + "copyrights" => "© 2010 - {0}", + "correct_errors" => "Lütfen kaydetmeden önce tanımlanmış hataları düzeltin", + "country" => "Ülke", + "dashboard" => "", + "date" => "Tarih", + "delete" => "Sil", + "det" => "ayrıntılar", + "download_import_template" => "CSV Şablonunu İçe Aktar (CSV) uygulamasını indirin", + "edit" => "düzenle", + "email" => "E-Posta", + "email_invalid_format" => "E-posta adresi doğru biçimde değil.", + "export_csv" => "CSV Dışa Aktarımı", + "export_csv_no" => "Hayır", + "export_csv_yes" => "Evet", + "fields_required_message" => "Kırmızı alanlar zorunludur", + "fields_required_message_unique" => "", + "first_name" => "Ad", + "first_name_required" => "Ad zorunlu alandır.", + "first_page" => "İlk", + "gender" => "Cinsiyet", + "gender_female" => "K", + "gender_male" => "E", + "gender_undefined" => "", + "icon" => "Simge", + "id" => "Kimlik", + "import" => "Aktar", + "import_change_file" => "Değiştir", + "import_csv" => "CSV İçe Aktarım", + "import_full_path" => "CSV dosyasının tam yolu gerekli", + "import_remove_file" => "Kaldır", + "import_select_file" => "Dosya seç", + "inv" => "Stok", + "last_name" => "Soyad", + "last_name_required" => "Soyad zorunlu alandır.", + "last_page" => "Son", + "learn_about_project" => "Proje hakkında en son bilgileri öğren.", + "list_of" => "Liste", + "logo" => "Logo", + "logo_mark" => "İm", + "logout" => "Çıkış", + "manager" => "", + "migration_needed" => "Giriş yapılınca {0} veritabanına geçiş başlar.", + "new" => "Yeni", + "no" => "", + "no_persons_to_display" => "Gösterecek kişi yok.", + "none_selected_text" => "[Seç]", + "or" => "VEYA", + "people" => "", + "phone_number" => "Telefon", + "phone_number_required" => "", + "please_visit_my" => "Şurayı ziyaret edin:", + "position" => "", + "powered_by" => "Destekleyen", + "price" => "Fiyat", + "print" => "Yazdır", + "remove" => "Kaldır", + "required" => "Zorunlu", + "restore" => "Onar", + "return_policy" => "İade Politikası", + "search" => "Arama", + "search_options" => "Arama seçenekleri", + "searched_for" => "Şu arandı:", + "software_short" => "OSPOS", + "software_title" => "Açık Kaynaklı Satış Noktası", + "state" => "Bölge", + "submit" => "Onayla", + "total_spent" => "Toplam Harcama", + "unknown" => "Bilinmeyen", + "view_recent_sales" => "Yeni satışları göster", + "website" => "opensourcepos.org", + "welcome" => "Hoş Geldiniz", + "welcome_message" => "OSPOS'a hoş geldiniz, başlamak için modüle tıklayın.", + "yes" => "", + "you_are_using_ospos" => "Kullandığınız Open Source Point Of Sale sürümü", + "zip" => "Şehir Kodu", ]; diff --git a/app/Language/tr/Config.php b/app/Language/tr/Config.php index 254315ca4..f455e4260 100644 --- a/app/Language/tr/Config.php +++ b/app/Language/tr/Config.php @@ -1,330 +1,330 @@ "Şirket Adresi", - "address_required" => "Şirket Adresi zorunlu alandır.", - "all_set" => "Tüm dosya izinleri düzgün belirlendi!", - "allow_duplicate_barcodes" => "Aynı barkod numarasının birden fazla kaydedilmesine izin ver", - "apostrophe" => "kesme imi", - "backup_button" => "Yedekle", - "backup_database" => "Veri Tabanını Yedekle", - "barcode" => "Barkod", - "barcode_company" => "Şirket Adı", - "barcode_configuration" => "Barkod Yapılandırması", - "barcode_content" => "Barkod İçeriği", - "barcode_first_row" => "Satır 1", - "barcode_font" => "Yazı Tipi", - "barcode_formats" => "Giriş Biçimleri", - "barcode_generate_if_empty" => "Boş ise oluştur.", - "barcode_height" => "Yükseklik (pk)", - "barcode_id" => "Ürün Id/Adı", - "barcode_info" => "Barkod Yapılandırma Bilgisi", - "barcode_layout" => "Barkod Yerleşimi", - "barcode_name" => "Ad", - "barcode_number" => "UPC/EAN/ISBN", - "barcode_number_in_row" => "Satırdaki sayı", - "barcode_page_cellspacing" => "Sayfadaki hücre boşluğunu göster.", - "barcode_page_width" => "Sayfa genişliğini göster", - "barcode_price" => "Fiyat", - "barcode_second_row" => "Satır 2", - "barcode_third_row" => "Satır 3", - "barcode_tooltip" => "Uyarı: Bu özellik, yinelenen ögelerin içe aktarılmasına veya oluşturulmasına neden olabilir. Yinelenen barkod istemiyorsanız kullanmayın.", - "barcode_type" => "Barkod Türü", - "barcode_width" => "Genişlik (pk)", - "bottom" => "Alt", - "cash_button" => "", - "cash_button_1" => "", - "cash_button_2" => "", - "cash_button_3" => "", - "cash_button_4" => "", - "cash_button_5" => "", - "cash_button_6" => "", - "cash_decimals" => "Nakit Ondalık", - "cash_decimals_tooltip" => "Nakit Ondalık ve Para Birimi Ondaması aynıysa, nakit yuvarlama yapılmayacaktır.", - "cash_rounding" => "Nakit Yuvarlama", - "category_dropdown" => "Kategoriyi açılır liste olarak göster", - "center" => "Orta", - "change_apperance_tooltip" => "", - "comma" => "virgül", - "company" => "Şirket Adı", - "company_avatar" => "", - "company_change_image" => "Görüntüyü Değiştir", - "company_logo" => "Şirket Logosu", - "company_remove_image" => "Görüntüyü Kaldır", - "company_required" => "Şirket Adı zorunlu alandır", - "company_select_image" => "Görüntü Seç", - "company_website_url" => "Şirket web sitesi geçerli bir URL değil (http: // ...).", - "country_codes" => "Ülke Kodları", - "country_codes_tooltip" => "Nominatim adres araması için ülke kodlarının virgülle ayrılmış listesi.", - "currency_code" => "Para Birimi Kodu", - "currency_decimals" => "Para Birimi Ondalık", - "currency_symbol" => "Para Birimi", - "current_employee_only" => "", - "customer_reward" => "Ödül", - "customer_reward_duplicate" => "Ödül eşsiz olmalı.", - "customer_reward_enable" => "Müşteri Ödüllerini etkinleştir", - "customer_reward_invalid_chars" => "Ödül '_' içeremez", - "customer_reward_required" => "Ödül gerekli bir alandır", - "customer_sales_tax_support" => "Müşteri Satış Vergisi Desteği", - "date_or_time_format" => "Tarih ve Saat Filtresi", - "datetimeformat" => "Tarih ve Zaman biçimi", - "decimal_point" => "Ondalık nokta", - "default_barcode_font_size_number" => "Öntanımlı Barkod Yazı Tipi Boyutu bir sayı olmalıdır.", - "default_barcode_font_size_required" => "Ön tanımlı barkod yazı tipi boyutu alanı gereklidir.", - "default_barcode_height_number" => "Ön tanımlı barkod yüksekliği bir sayı olmalıdır.", - "default_barcode_height_required" => "Ön tanımlı barkod yüksekliği zorunlu bir alandır.", - "default_barcode_num_in_row_number" => "Satırdaki Öntanımlı Barkod Numarası bir sayı olmalıdır.", - "default_barcode_num_in_row_required" => "Standart Barkod Numarası gerekli bir alandır.", - "default_barcode_page_cellspacing_number" => "Standart Barkod Sayfa cellspacing bir sayı olmalıdır.", - "default_barcode_page_cellspacing_required" => "Standart Barkod Sayfa cellspacing gerekli bir alandır.", - "default_barcode_page_width_number" => "Ön tanımlı barkod sayfası genişliği bir sayı olmalıdır.", - "default_barcode_page_width_required" => "Ön tanımlı barkod sayfası genişliği zorunlu bir alandır.", - "default_barcode_width_number" => "Ön tanımlı barkod genişliği bir sayı olmalıdır.", - "default_barcode_width_required" => "Ön tanımlı barkod genişliği zorunlu bir alandır.", - "default_item_columns" => "Öntanımlı Görünür Öge Sütunları", - "default_origin_tax_code" => "Ön Tanımlı Vergi Kodu", - "default_receivings_discount" => "Öntanımlı Alım İndirimi", - "default_receivings_discount_number" => "Öntanımlı Alım İndirimi sayı olmalıdır.", - "default_receivings_discount_required" => "Öntanımlı Alım İndirimi zorunlu bir alandır.", - "default_sales_discount" => "Ön Tanımlı Satış İskontosu %", - "default_sales_discount_number" => "Ön tanımlı satış iskontosu bir sayı olmalıdır.", - "default_sales_discount_required" => "Ön tanımlı satış iskontosu zorunlu bir alandır.", - "default_tax_category" => "Öntanımlı Vergi Kategorisi", - "default_tax_code" => "Öntanımlı Vergi Kodu", - "default_tax_jurisdiction" => "Öntanımlı Vergi Yargı Mercii", - "default_tax_name_number" => "Ön Tanımlı Vergi Adı bir dize olmalıdır.", - "default_tax_name_required" => "Ön tanımlı vergi adı zorunlu bir alandır.", - "default_tax_rate" => "Öntanımlı Vergi Oranı %", - "default_tax_rate_1" => "Vergi Oranı 1", - "default_tax_rate_2" => "Vergi Oranı 2", - "default_tax_rate_3" => "", - "default_tax_rate_number" => "Öntanımlı Vergi Oranı sayı olmalıdır.", - "default_tax_rate_required" => "Öntanımlı Vergi Oranı zorunlu alandır.", - "derive_sale_quantity" => "Otomatik Satış Sayısı oluşturmasına izin ver", - "derive_sale_quantity_tooltip" => "Seçili ise sipariş edilen ürünler için arttırılan miktarda yeni ürün türü sağlanacak", - "dinner_table" => "Masa", - "dinner_table_duplicate" => "Aynı masa ikinci kez tanımlanamaz.", - "dinner_table_enable" => "Masalarını etkinleştir", - "dinner_table_invalid_chars" => "Masa Adı '_' içeremez.", - "dinner_table_required" => "Masa gerekli bir alandır.", - "dot" => "nokta", - "email" => "E-posta", - "email_configuration" => "E-posta Yapılandırması", - "email_mailpath" => "Sendmail yolu", - "email_protocol" => "İletişim Kuralı", - "email_receipt_check_behaviour" => "Fişi E-postala denetim kutusu", - "email_receipt_check_behaviour_always" => "Her zaman işaretli", - "email_receipt_check_behaviour_last" => "Son seçimimi hatırla", - "email_receipt_check_behaviour_never" => "Her zaman işaretsiz", - "email_smtp_crypto" => "SMTP Şifreleme", - "email_smtp_host" => "SMTP Sunucusu", - "email_smtp_pass" => "SMTP Parola", - "email_smtp_port" => "SMTP Bağlantı Noktası", - "email_smtp_timeout" => "SMTP Zaman Aşım(lar)ı", - "email_smtp_user" => "SMTP Kullanıcı Adı", - "enable_avatar" => "", - "enable_avatar_tooltip" => "", - "enable_dropdown_tooltip" => "", - "enable_new_look" => "", - "enable_right_bar" => "", - "enable_right_bar_tooltip" => "", - "enforce_privacy" => "Gizlilik uygula", - "enforce_privacy_tooltip" => "Müşteriler bilgilerini gizliliğini korunur", - "fax" => "Faks", - "file_perm" => "Dosya izinleriyle ilgili sorunlar var, lütfen giderin ve bu sayfayı yeniden yükleyin.", - "financial_year" => "Mali Yıl Başlat", - "financial_year_apr" => "1 Nisan", - "financial_year_aug" => "1 Ağustos", - "financial_year_dec" => "1 Aralık", - "financial_year_feb" => "1 Şubat", - "financial_year_jan" => "1 Ocak", - "financial_year_jul" => "1 Temmuz", - "financial_year_jun" => "1 Haziran", - "financial_year_mar" => "1 Mart", - "financial_year_may" => "1 Mayıs", - "financial_year_nov" => "1 Kasım", - "financial_year_oct" => "1 Ekim", - "financial_year_sep" => "1 Eylül", - "floating_labels" => "Yüzen Etiketler", - "gcaptcha_enable" => "Giriş Sayfası reCAPTCHA", - "gcaptcha_secret_key" => "ReCAPTCHA Gizli Anahtar", - "gcaptcha_secret_key_required" => "ReCAPTCHA Gizli Anahtar zorunlu bir alandır", - "gcaptcha_site_key" => "ReCAPTCHA Site Anahtarı", - "gcaptcha_site_key_required" => "ReCAPTCHA Site Anahtarı zorunlu bir alandır", - "gcaptcha_tooltip" => "Giriş sayfasını Google reCAPTCHA ile koruyun, API anahtar çifti için simgeye tıklayın.", - "general" => "Genel", - "general_configuration" => "Genel Yapılandırma", - "giftcard_number" => "Hediye Kartı Numarası", - "giftcard_random" => "Rastgele Oluştur", - "giftcard_series" => "Seri Oluştur", - "image_allowed_file_types" => "İzin verilen dosya türleri", - "image_max_height_tooltip" => "Görüntü yüklemelerinde piksel (px) türünde izin verilen azami yükseklik.", - "image_max_size_tooltip" => "Görüntü yüklemelerinde kilobayt (kb) türünde izin verilen azami dosya boyutu.", - "image_max_width_tooltip" => "Görüntü yüklemelerinde piksel (px) türünde izin verilen azami genişlik.", - "image_restrictions" => "Görsel Yükleme Kısıtları", - "include_hsn" => "HSN Kodları Desteğini İçer", - "info" => "Bilgi", - "info_configuration" => "Mağaza Bilgisi", - "input_groups" => "Girdi Kümeleri", - "integrations" => "Tümleşimler", - "integrations_configuration" => "Üçüncü Taraf Tümleşimler", - "invoice" => "Fatura", - "invoice_configuration" => "Fatura Yazdırma Ayarları", - "invoice_default_comments" => "Ön Tanımlı Fatura Yorumları", - "invoice_email_message" => "Fatura E-Posta Şablonu", - "invoice_enable" => "Faturalandırmayı Etkinleştir", - "invoice_printer" => "Fatura Yazıcısı", - "invoice_type" => "Fatura Türü", - "is_readable" => "okunabilirdir ama izinleri yanlış belirlenmiştir. Lütfen 640'a veya 660'a ayarlayın ve tazeleyin.", - "is_writable" => "yazılabilirdir ama izinleri yanlış belirlenmiştir. Lütfen 750'ye ayarlayın ve tazeleyin.", - "item_markup" => "", - "jsprintsetup_required" => "Uyarı: Bu işlev yalnızca FireFox jsPrintSetup eklentisi kuruluysa çalışacaktır. Yine de kaydedilsin mi?", - "language" => "Dil", - "last_used_invoice_number" => "Son kullanılan Fatura Numarası", - "last_used_quote_number" => "Son kullanılan Teknif Numarası", - "last_used_work_order_number" => "Son kullanılan İş Emri Numarası", - "left" => "Sol", - "license" => "Lisans", - "license_configuration" => "Lisans Beyanı", - "line_sequence" => "Satır Sırası", - "lines_per_page" => "Sayfa Başı Satır", - "lines_per_page_number" => "The lines per page must be a number.", - "lines_per_page_required" => "Sayfa başı satır zorunlu bir alandır.", - "locale" => "Yerelleştirme", - "locale_configuration" => "Yerelleştirme Yapılandırması", - "locale_info" => "Yerelleştirme Yapılandırması Bilgisi", - "location" => "Stok", - "location_configuration" => "Stok Konumları", - "location_info" => "Konum Yapılandırma Bilgisi", - "login_form" => "Giriş Form Biçimi", - "logout" => "Çıkış yapmadan önce bir yedekleme yapmak ister misiniz? Yedeklemek için [Tamam] 'a veya oturumu kapatmak için [İptal]' e tıklayın.", - "mailchimp" => "MailChimp", - "mailchimp_api_key" => "MailChimp API Anahtarı", - "mailchimp_configuration" => "MailChimp Yapılandırması", - "mailchimp_key_successfully" => "API Anahtarı geçerlidir.", - "mailchimp_key_unsuccessfully" => "API Anahtarı geçersiz.", - "mailchimp_lists" => "MailChimp Listeleri", - "mailchimp_tooltip" => "API Anahtarı için simgeye tıklayın.", - "message" => "Mesaj", - "message_configuration" => "İleti Yapılandırması", - "msg_msg" => "Kaydedilen Metin İletisi", - "msg_msg_placeholder" => "Eğer bir SMS şablonu kullanmak isterseniz iletinizi buraya kaydediniz. Ya da kutuyu boş bırakınız.", - "msg_pwd" => "SMS-API Parolası", - "msg_pwd_required" => "SMS-API Parola zorunlu bir alandır", - "msg_src" => "SMS-API Gönderici Kimliği", - "msg_src_required" => "SMS-API Gönderici Kimliği zorunlu bir alandır", - "msg_uid" => "SMS-API Kullanıcı Adı", - "msg_uid_required" => "SMS-API Kullanıcı Adı zorunlu bir alandır", - "multi_pack_enabled" => "Öğe Başına Birden Çok Paket", - "no_risk" => "Güvenlik/arıklık riski yok.", - "none" => "Hiçbiri", - "notify_alignment" => "Bildirim Balonu Konumu", - "number_format" => "Numara Biçimi", - "number_locale" => "Yerelleştirme", - "number_locale_invalid" => "Girilen yerel ayar geçersiz. Geçerli bir yerel ayar bulmak için araç ipucundaki bağlantıyı denetleyin.", - "number_locale_required" => "Numara Yerel Ayarı gerekli bir alandır.", - "number_locale_tooltip" => "Bu bağlantı üzerinden yerel ayar kodunu bul.", - "os_timezone" => "OSPOS Saat Dilimi:", - "ospos_info" => "OSPOS Kurulum Bilgisi", - "payment_options_order" => "Ödeme Seçenekleri Sırası", - "perm_risk" => "Doğru olmayan izinler bu yazılımı riske atar.", - "phone" => "Şirket Telefonu", - "phone_required" => "Şirket Telefonu zorunlu alandır.", - "print_bottom_margin" => "Alt Kenar", - "print_bottom_margin_number" => "Alt Kenar bir sayı olmalıdır.", - "print_bottom_margin_required" => "Alt Kenar gerekli bir alandır.", - "print_delay_autoreturn" => "Otomatik Cevap için Satış Gecikmesi", - "print_delay_autoreturn_number" => "Otomatik Cevap için Satış Gecikmesi gerekli bir alandır.", - "print_delay_autoreturn_required" => "Otomatik Cevap için Satış Gecikmesi bir sayı olmalıdır..", - "print_footer" => "Sayfa Altbilgisini Yazdır", - "print_header" => "Sayfa Başlığını Yazdır", - "print_left_margin" => "Sol Kenar", - "print_left_margin_number" => "Sol Kenar bir sayı olmalıdır.", - "print_left_margin_required" => "Sol Kenar gerekli bir alandır.", - "print_receipt_check_behaviour" => "Fiş Yazdır denetim kutusu", - "print_receipt_check_behaviour_always" => "Her zaman işaretle", - "print_receipt_check_behaviour_last" => "Son seçimimi hatırla", - "print_receipt_check_behaviour_never" => "Her zaman işaretleme", - "print_right_margin" => "Sağ Kenar", - "print_right_margin_number" => "Sağ Kenar bir sayı olmalıdır.", - "print_right_margin_required" => "Sağ Kenar gerekli bir alandır.", - "print_silently" => "Yazdırma Diyaloğunu Göster", - "print_top_margin" => "Üst Kenar", - "print_top_margin_number" => "Üst Kenar bir sayı olmalıdır.", - "print_top_margin_required" => "Üst Kenar gerekli bir alandır.", - "quantity_decimals" => "Ondalık Basamak Sayısı", - "quick_cash_enable" => "", - "quote_default_comments" => "Standart Teklif Yorumları", - "receipt" => "Fiş", - "receipt_category" => "", - "receipt_configuration" => "Fiş Yazdırma Ayarları", - "receipt_default" => "Öntanımlı", - "receipt_font_size" => "Yazı Boyutu", - "receipt_font_size_number" => "Yazı Tipi Boyutu bir sayı olmalıdır.", - "receipt_font_size_required" => "Yazı Tipi Boyutu gerekli bir alandır.", - "receipt_info" => "Fiş Yapılandırma Bilgisi", - "receipt_printer" => "Fiş Yazıcısı", - "receipt_short" => "Kısa", - "receipt_show_company_name" => "Şirket Adını Göster", - "receipt_show_description" => "Açıklamayı Göster", - "receipt_show_serialnumber" => "Seri Numarasını Göster", - "receipt_show_tax_ind" => "Vergi Belirtecini Göster", - "receipt_show_taxes" => "Vergileri Göster", - "receipt_show_total_discount" => "Toplam İskontoyu Göster", - "receipt_template" => "Fiş Şablonu", - "receiving_calculate_average_price" => "Ortalama Fiyatı Hesapla (Alım)", - "recv_invoice_format" => "Alım Fatura Biçimi", - "register_mode_default" => "Standart Kayıt Modu", - "report_an_issue" => "Sorun bildir", - "return_policy_required" => "İade Politikası zorunlu alandır.", - "reward" => "Ödül", - "reward_configuration" => "Ödül Ayarları", - "right" => "Sağ", - "sales_invoice_format" => "Satış Fatura Biçimi", - "sales_quote_format" => "Satış Teklif Biçimi", - "saved_successfully" => "Yapılandırma kaydedildi.", - "saved_unsuccessfully" => "Yapılandırma kaydedilemedi.", - "security_issue" => "Güvenlik Arıklığı Uyarısı", - "server_notice" => "Lütfen sorun bildirme için aşağıdaki bilgileri kullanın.", - "service_charge" => "", - "show_due_enable" => "", - "show_office_group" => "Ofis simgesini göster", - "statistics" => "İstatistik gönder", - "statistics_tooltip" => "Geliştirme ve özellik iyileştirme amaçları için istatistik gönder.", - "stock_location" => "Mağaza Yeri", - "stock_location_duplicate" => "Lütfen benzersiz bir yer adı kullan.", - "stock_location_invalid_chars" => "Mağaza yeri adı '_' içeremez.", - "stock_location_required" => "Mağaza Yeri numarası zorunlu alandır.", - "suggestions_fifth_column" => "", - "suggestions_first_column" => "Sütun 1", - "suggestions_fourth_column" => "", - "suggestions_layout" => "Önerilerde Ara", - "suggestions_second_column" => "Sütun 2", - "suggestions_third_column" => "Sütun 3", - "system_conf" => "Kurulum ve Yapı", - "system_info" => "System Info", - "table" => "Masa", - "table_configuration" => "Masa Ayarı", - "takings_printer" => "Fiş Yazıcısı", - "tax" => "Vergi", - "tax_category" => "Vergi Kategorisi", - "tax_category_duplicate" => "Girilen vergi kategorisi zaten var.", - "tax_category_invalid_chars" => "Girilen vergi kategorisi geçersiz.", - "tax_category_required" => "Vergi kategori gereklidir.", - "tax_category_used" => "Vergi kategorisi silinemez. Kullanılmaktadır.", - "tax_configuration" => "Vergi Ayarları", - "tax_decimals" => "Vergi Ondalık", - "tax_id" => "Vergi numarası", - "tax_included" => "Vergi Dahil", - "theme" => "Gövde", - "theme_preview" => "Temayı Ön İzle:", - "thousands_separator" => "Binlik Ayırıcı", - "timezone" => "Saat Dilimi", - "timezone_error" => "OSPOS Saat Dilimi, yerel Saat Diliminizden farklı.", - "top" => "Üst", - "use_destination_based_tax" => "Hedef Bazlı Vergiyi Kullan", - "user_timezone" => "Yerel Saat Dilimi:", - "website" => "Web site", - "wholesale_markup" => "", - "work_order_enable" => "İş Emri Aktif", - "work_order_format" => "İş Emri Biçimi", + "address" => "Şirket Adresi", + "address_required" => "Şirket Adresi zorunlu alandır.", + "all_set" => "Tüm dosya izinleri düzgün belirlendi!", + "allow_duplicate_barcodes" => "Aynı barkod numarasının birden fazla kaydedilmesine izin ver", + "apostrophe" => "kesme imi", + "backup_button" => "Yedekle", + "backup_database" => "Veri Tabanını Yedekle", + "barcode" => "Barkod", + "barcode_company" => "Şirket Adı", + "barcode_configuration" => "Barkod Yapılandırması", + "barcode_content" => "Barkod İçeriği", + "barcode_first_row" => "Satır 1", + "barcode_font" => "Yazı Tipi", + "barcode_formats" => "Giriş Biçimleri", + "barcode_generate_if_empty" => "Boş ise oluştur.", + "barcode_height" => "Yükseklik (pk)", + "barcode_id" => "Ürün Id/Adı", + "barcode_info" => "Barkod Yapılandırma Bilgisi", + "barcode_layout" => "Barkod Yerleşimi", + "barcode_name" => "Ad", + "barcode_number" => "UPC/EAN/ISBN", + "barcode_number_in_row" => "Satırdaki sayı", + "barcode_page_cellspacing" => "Sayfadaki hücre boşluğunu göster.", + "barcode_page_width" => "Sayfa genişliğini göster", + "barcode_price" => "Fiyat", + "barcode_second_row" => "Satır 2", + "barcode_third_row" => "Satır 3", + "barcode_tooltip" => "Uyarı: Bu özellik, yinelenen ögelerin içe aktarılmasına veya oluşturulmasına neden olabilir. Yinelenen barkod istemiyorsanız kullanmayın.", + "barcode_type" => "Barkod Türü", + "barcode_width" => "Genişlik (pk)", + "bottom" => "Alt", + "cash_button" => "", + "cash_button_1" => "", + "cash_button_2" => "", + "cash_button_3" => "", + "cash_button_4" => "", + "cash_button_5" => "", + "cash_button_6" => "", + "cash_decimals" => "Nakit Ondalık", + "cash_decimals_tooltip" => "Nakit Ondalık ve Para Birimi Ondaması aynıysa, nakit yuvarlama yapılmayacaktır.", + "cash_rounding" => "Nakit Yuvarlama", + "category_dropdown" => "Kategoriyi açılır liste olarak göster", + "center" => "Orta", + "change_apperance_tooltip" => "", + "comma" => "virgül", + "company" => "Şirket Adı", + "company_avatar" => "", + "company_change_image" => "Görüntüyü Değiştir", + "company_logo" => "Şirket Logosu", + "company_remove_image" => "Görüntüyü Kaldır", + "company_required" => "Şirket Adı zorunlu alandır", + "company_select_image" => "Görüntü Seç", + "company_website_url" => "Şirket web sitesi geçerli bir URL değil (http: // ...).", + "country_codes" => "Ülke Kodları", + "country_codes_tooltip" => "Nominatim adres araması için ülke kodlarının virgülle ayrılmış listesi.", + "currency_code" => "Para Birimi Kodu", + "currency_decimals" => "Para Birimi Ondalık", + "currency_symbol" => "Para Birimi", + "current_employee_only" => "", + "customer_reward" => "Ödül", + "customer_reward_duplicate" => "Ödül eşsiz olmalı.", + "customer_reward_enable" => "Müşteri Ödüllerini etkinleştir", + "customer_reward_invalid_chars" => "Ödül '_' içeremez", + "customer_reward_required" => "Ödül gerekli bir alandır", + "customer_sales_tax_support" => "Müşteri Satış Vergisi Desteği", + "date_or_time_format" => "Tarih ve Saat Filtresi", + "datetimeformat" => "Tarih ve Zaman biçimi", + "decimal_point" => "Ondalık nokta", + "default_barcode_font_size_number" => "Öntanımlı Barkod Yazı Tipi Boyutu bir sayı olmalıdır.", + "default_barcode_font_size_required" => "Ön tanımlı barkod yazı tipi boyutu alanı gereklidir.", + "default_barcode_height_number" => "Ön tanımlı barkod yüksekliği bir sayı olmalıdır.", + "default_barcode_height_required" => "Ön tanımlı barkod yüksekliği zorunlu bir alandır.", + "default_barcode_num_in_row_number" => "Satırdaki Öntanımlı Barkod Numarası bir sayı olmalıdır.", + "default_barcode_num_in_row_required" => "Standart Barkod Numarası gerekli bir alandır.", + "default_barcode_page_cellspacing_number" => "Standart Barkod Sayfa cellspacing bir sayı olmalıdır.", + "default_barcode_page_cellspacing_required" => "Standart Barkod Sayfa cellspacing gerekli bir alandır.", + "default_barcode_page_width_number" => "Ön tanımlı barkod sayfası genişliği bir sayı olmalıdır.", + "default_barcode_page_width_required" => "Ön tanımlı barkod sayfası genişliği zorunlu bir alandır.", + "default_barcode_width_number" => "Ön tanımlı barkod genişliği bir sayı olmalıdır.", + "default_barcode_width_required" => "Ön tanımlı barkod genişliği zorunlu bir alandır.", + "default_item_columns" => "Öntanımlı Görünür Öge Sütunları", + "default_origin_tax_code" => "Ön Tanımlı Vergi Kodu", + "default_receivings_discount" => "Öntanımlı Alım İndirimi", + "default_receivings_discount_number" => "Öntanımlı Alım İndirimi sayı olmalıdır.", + "default_receivings_discount_required" => "Öntanımlı Alım İndirimi zorunlu bir alandır.", + "default_sales_discount" => "Ön Tanımlı Satış İskontosu %", + "default_sales_discount_number" => "Ön tanımlı satış iskontosu bir sayı olmalıdır.", + "default_sales_discount_required" => "Ön tanımlı satış iskontosu zorunlu bir alandır.", + "default_tax_category" => "Öntanımlı Vergi Kategorisi", + "default_tax_code" => "Öntanımlı Vergi Kodu", + "default_tax_jurisdiction" => "Öntanımlı Vergi Yargı Mercii", + "default_tax_name_number" => "Ön Tanımlı Vergi Adı bir dize olmalıdır.", + "default_tax_name_required" => "Ön tanımlı vergi adı zorunlu bir alandır.", + "default_tax_rate" => "Öntanımlı Vergi Oranı %", + "default_tax_rate_1" => "Vergi Oranı 1", + "default_tax_rate_2" => "Vergi Oranı 2", + "default_tax_rate_3" => "", + "default_tax_rate_number" => "Öntanımlı Vergi Oranı sayı olmalıdır.", + "default_tax_rate_required" => "Öntanımlı Vergi Oranı zorunlu alandır.", + "derive_sale_quantity" => "Otomatik Satış Sayısı oluşturmasına izin ver", + "derive_sale_quantity_tooltip" => "Seçili ise sipariş edilen ürünler için arttırılan miktarda yeni ürün türü sağlanacak", + "dinner_table" => "Masa", + "dinner_table_duplicate" => "Aynı masa ikinci kez tanımlanamaz.", + "dinner_table_enable" => "Masalarını etkinleştir", + "dinner_table_invalid_chars" => "Masa Adı '_' içeremez.", + "dinner_table_required" => "Masa gerekli bir alandır.", + "dot" => "nokta", + "email" => "E-posta", + "email_configuration" => "E-posta Yapılandırması", + "email_mailpath" => "Sendmail yolu", + "email_protocol" => "İletişim Kuralı", + "email_receipt_check_behaviour" => "Fişi E-postala denetim kutusu", + "email_receipt_check_behaviour_always" => "Her zaman işaretli", + "email_receipt_check_behaviour_last" => "Son seçimimi hatırla", + "email_receipt_check_behaviour_never" => "Her zaman işaretsiz", + "email_smtp_crypto" => "SMTP Şifreleme", + "email_smtp_host" => "SMTP Sunucusu", + "email_smtp_pass" => "SMTP Parola", + "email_smtp_port" => "SMTP Bağlantı Noktası", + "email_smtp_timeout" => "SMTP Zaman Aşım(lar)ı", + "email_smtp_user" => "SMTP Kullanıcı Adı", + "enable_avatar" => "", + "enable_avatar_tooltip" => "", + "enable_dropdown_tooltip" => "", + "enable_new_look" => "", + "enable_right_bar" => "", + "enable_right_bar_tooltip" => "", + "enforce_privacy" => "Gizlilik uygula", + "enforce_privacy_tooltip" => "Müşteriler bilgilerini gizliliğini korunur", + "fax" => "Faks", + "file_perm" => "Dosya izinleriyle ilgili sorunlar var, lütfen giderin ve bu sayfayı yeniden yükleyin.", + "financial_year" => "Mali Yıl Başlat", + "financial_year_apr" => "1 Nisan", + "financial_year_aug" => "1 Ağustos", + "financial_year_dec" => "1 Aralık", + "financial_year_feb" => "1 Şubat", + "financial_year_jan" => "1 Ocak", + "financial_year_jul" => "1 Temmuz", + "financial_year_jun" => "1 Haziran", + "financial_year_mar" => "1 Mart", + "financial_year_may" => "1 Mayıs", + "financial_year_nov" => "1 Kasım", + "financial_year_oct" => "1 Ekim", + "financial_year_sep" => "1 Eylül", + "floating_labels" => "Yüzen Etiketler", + "gcaptcha_enable" => "Giriş Sayfası reCAPTCHA", + "gcaptcha_secret_key" => "ReCAPTCHA Gizli Anahtar", + "gcaptcha_secret_key_required" => "ReCAPTCHA Gizli Anahtar zorunlu bir alandır", + "gcaptcha_site_key" => "ReCAPTCHA Site Anahtarı", + "gcaptcha_site_key_required" => "ReCAPTCHA Site Anahtarı zorunlu bir alandır", + "gcaptcha_tooltip" => "Giriş sayfasını Google reCAPTCHA ile koruyun, API anahtar çifti için simgeye tıklayın.", + "general" => "Genel", + "general_configuration" => "Genel Yapılandırma", + "giftcard_number" => "Hediye Kartı Numarası", + "giftcard_random" => "Rastgele Oluştur", + "giftcard_series" => "Seri Oluştur", + "image_allowed_file_types" => "İzin verilen dosya türleri", + "image_max_height_tooltip" => "Görüntü yüklemelerinde piksel (px) türünde izin verilen azami yükseklik.", + "image_max_size_tooltip" => "Görüntü yüklemelerinde kilobayt (kb) türünde izin verilen azami dosya boyutu.", + "image_max_width_tooltip" => "Görüntü yüklemelerinde piksel (px) türünde izin verilen azami genişlik.", + "image_restrictions" => "Görsel Yükleme Kısıtları", + "include_hsn" => "HSN Kodları Desteğini İçer", + "info" => "Bilgi", + "info_configuration" => "Mağaza Bilgisi", + "input_groups" => "Girdi Kümeleri", + "integrations" => "Tümleşimler", + "integrations_configuration" => "Üçüncü Taraf Tümleşimler", + "invoice" => "Fatura", + "invoice_configuration" => "Fatura Yazdırma Ayarları", + "invoice_default_comments" => "Ön Tanımlı Fatura Yorumları", + "invoice_email_message" => "Fatura E-Posta Şablonu", + "invoice_enable" => "Faturalandırmayı Etkinleştir", + "invoice_printer" => "Fatura Yazıcısı", + "invoice_type" => "Fatura Türü", + "is_readable" => "okunabilirdir ama izinleri yanlış belirlenmiştir. Lütfen 640'a veya 660'a ayarlayın ve tazeleyin.", + "is_writable" => "yazılabilirdir ama izinleri yanlış belirlenmiştir. Lütfen 750'ye ayarlayın ve tazeleyin.", + "item_markup" => "", + "jsprintsetup_required" => "Uyarı: Bu işlev yalnızca FireFox jsPrintSetup eklentisi kuruluysa çalışacaktır. Yine de kaydedilsin mi?", + "language" => "Dil", + "last_used_invoice_number" => "Son kullanılan Fatura Numarası", + "last_used_quote_number" => "Son kullanılan Teknif Numarası", + "last_used_work_order_number" => "Son kullanılan İş Emri Numarası", + "left" => "Sol", + "license" => "Lisans", + "license_configuration" => "Lisans Beyanı", + "line_sequence" => "Satır Sırası", + "lines_per_page" => "Sayfa Başı Satır", + "lines_per_page_number" => "The lines per page must be a number.", + "lines_per_page_required" => "Sayfa başı satır zorunlu bir alandır.", + "locale" => "Yerelleştirme", + "locale_configuration" => "Yerelleştirme Yapılandırması", + "locale_info" => "Yerelleştirme Yapılandırması Bilgisi", + "location" => "Stok", + "location_configuration" => "Stok Konumları", + "location_info" => "Konum Yapılandırma Bilgisi", + "login_form" => "Giriş Form Biçimi", + "logout" => "Çıkış yapmadan önce bir yedekleme yapmak ister misiniz? Yedeklemek için [Tamam] 'a veya oturumu kapatmak için [İptal]' e tıklayın.", + "mailchimp" => "MailChimp", + "mailchimp_api_key" => "MailChimp API Anahtarı", + "mailchimp_configuration" => "MailChimp Yapılandırması", + "mailchimp_key_successfully" => "API Anahtarı geçerlidir.", + "mailchimp_key_unsuccessfully" => "API Anahtarı geçersiz.", + "mailchimp_lists" => "MailChimp Listeleri", + "mailchimp_tooltip" => "API Anahtarı için simgeye tıklayın.", + "message" => "Mesaj", + "message_configuration" => "İleti Yapılandırması", + "msg_msg" => "Kaydedilen Metin İletisi", + "msg_msg_placeholder" => "Eğer bir SMS şablonu kullanmak isterseniz iletinizi buraya kaydediniz. Ya da kutuyu boş bırakınız.", + "msg_pwd" => "SMS-API Parolası", + "msg_pwd_required" => "SMS-API Parola zorunlu bir alandır", + "msg_src" => "SMS-API Gönderici Kimliği", + "msg_src_required" => "SMS-API Gönderici Kimliği zorunlu bir alandır", + "msg_uid" => "SMS-API Kullanıcı Adı", + "msg_uid_required" => "SMS-API Kullanıcı Adı zorunlu bir alandır", + "multi_pack_enabled" => "Öğe Başına Birden Çok Paket", + "no_risk" => "Güvenlik/arıklık riski yok.", + "none" => "Hiçbiri", + "notify_alignment" => "Bildirim Balonu Konumu", + "number_format" => "Numara Biçimi", + "number_locale" => "Yerelleştirme", + "number_locale_invalid" => "Girilen yerel ayar geçersiz. Geçerli bir yerel ayar bulmak için araç ipucundaki bağlantıyı denetleyin.", + "number_locale_required" => "Numara Yerel Ayarı gerekli bir alandır.", + "number_locale_tooltip" => "Bu bağlantı üzerinden yerel ayar kodunu bul.", + "os_timezone" => "OSPOS Saat Dilimi:", + "ospos_info" => "OSPOS Kurulum Bilgisi", + "payment_options_order" => "Ödeme Seçenekleri Sırası", + "perm_risk" => "Doğru olmayan izinler bu yazılımı riske atar.", + "phone" => "Şirket Telefonu", + "phone_required" => "Şirket Telefonu zorunlu alandır.", + "print_bottom_margin" => "Alt Kenar", + "print_bottom_margin_number" => "Alt Kenar bir sayı olmalıdır.", + "print_bottom_margin_required" => "Alt Kenar gerekli bir alandır.", + "print_delay_autoreturn" => "Otomatik Cevap için Satış Gecikmesi", + "print_delay_autoreturn_number" => "Otomatik Cevap için Satış Gecikmesi gerekli bir alandır.", + "print_delay_autoreturn_required" => "Otomatik Cevap için Satış Gecikmesi bir sayı olmalıdır..", + "print_footer" => "Sayfa Altbilgisini Yazdır", + "print_header" => "Sayfa Başlığını Yazdır", + "print_left_margin" => "Sol Kenar", + "print_left_margin_number" => "Sol Kenar bir sayı olmalıdır.", + "print_left_margin_required" => "Sol Kenar gerekli bir alandır.", + "print_receipt_check_behaviour" => "Fiş Yazdır denetim kutusu", + "print_receipt_check_behaviour_always" => "Her zaman işaretle", + "print_receipt_check_behaviour_last" => "Son seçimimi hatırla", + "print_receipt_check_behaviour_never" => "Her zaman işaretleme", + "print_right_margin" => "Sağ Kenar", + "print_right_margin_number" => "Sağ Kenar bir sayı olmalıdır.", + "print_right_margin_required" => "Sağ Kenar gerekli bir alandır.", + "print_silently" => "Yazdırma Diyaloğunu Göster", + "print_top_margin" => "Üst Kenar", + "print_top_margin_number" => "Üst Kenar bir sayı olmalıdır.", + "print_top_margin_required" => "Üst Kenar gerekli bir alandır.", + "quantity_decimals" => "Ondalık Basamak Sayısı", + "quick_cash_enable" => "", + "quote_default_comments" => "Standart Teklif Yorumları", + "receipt" => "Fiş", + "receipt_category" => "", + "receipt_configuration" => "Fiş Yazdırma Ayarları", + "receipt_default" => "Öntanımlı", + "receipt_font_size" => "Yazı Boyutu", + "receipt_font_size_number" => "Yazı Tipi Boyutu bir sayı olmalıdır.", + "receipt_font_size_required" => "Yazı Tipi Boyutu gerekli bir alandır.", + "receipt_info" => "Fiş Yapılandırma Bilgisi", + "receipt_printer" => "Fiş Yazıcısı", + "receipt_short" => "Kısa", + "receipt_show_company_name" => "Şirket Adını Göster", + "receipt_show_description" => "Açıklamayı Göster", + "receipt_show_serialnumber" => "Seri Numarasını Göster", + "receipt_show_tax_ind" => "Vergi Belirtecini Göster", + "receipt_show_taxes" => "Vergileri Göster", + "receipt_show_total_discount" => "Toplam İskontoyu Göster", + "receipt_template" => "Fiş Şablonu", + "receiving_calculate_average_price" => "Ortalama Fiyatı Hesapla (Alım)", + "recv_invoice_format" => "Alım Fatura Biçimi", + "register_mode_default" => "Standart Kayıt Modu", + "report_an_issue" => "Sorun bildir", + "return_policy_required" => "İade Politikası zorunlu alandır.", + "reward" => "Ödül", + "reward_configuration" => "Ödül Ayarları", + "right" => "Sağ", + "sales_invoice_format" => "Satış Fatura Biçimi", + "sales_quote_format" => "Satış Teklif Biçimi", + "saved_successfully" => "Yapılandırma kaydedildi.", + "saved_unsuccessfully" => "Yapılandırma kaydedilemedi.", + "security_issue" => "Güvenlik Arıklığı Uyarısı", + "server_notice" => "Lütfen sorun bildirme için aşağıdaki bilgileri kullanın.", + "service_charge" => "", + "show_due_enable" => "", + "show_office_group" => "Ofis simgesini göster", + "statistics" => "İstatistik gönder", + "statistics_tooltip" => "Geliştirme ve özellik iyileştirme amaçları için istatistik gönder.", + "stock_location" => "Mağaza Yeri", + "stock_location_duplicate" => "Lütfen benzersiz bir yer adı kullan.", + "stock_location_invalid_chars" => "Mağaza yeri adı '_' içeremez.", + "stock_location_required" => "Mağaza Yeri numarası zorunlu alandır.", + "suggestions_fifth_column" => "", + "suggestions_first_column" => "Sütun 1", + "suggestions_fourth_column" => "", + "suggestions_layout" => "Önerilerde Ara", + "suggestions_second_column" => "Sütun 2", + "suggestions_third_column" => "Sütun 3", + "system_conf" => "Kurulum ve Yapı", + "system_info" => "System Info", + "table" => "Masa", + "table_configuration" => "Masa Ayarı", + "takings_printer" => "Fiş Yazıcısı", + "tax" => "Vergi", + "tax_category" => "Vergi Kategorisi", + "tax_category_duplicate" => "Girilen vergi kategorisi zaten var.", + "tax_category_invalid_chars" => "Girilen vergi kategorisi geçersiz.", + "tax_category_required" => "Vergi kategori gereklidir.", + "tax_category_used" => "Vergi kategorisi silinemez. Kullanılmaktadır.", + "tax_configuration" => "Vergi Ayarları", + "tax_decimals" => "Vergi Ondalık", + "tax_id" => "Vergi numarası", + "tax_included" => "Vergi Dahil", + "theme" => "Gövde", + "theme_preview" => "Temayı Ön İzle:", + "thousands_separator" => "Binlik Ayırıcı", + "timezone" => "Saat Dilimi", + "timezone_error" => "OSPOS Saat Dilimi, yerel Saat Diliminizden farklı.", + "top" => "Üst", + "use_destination_based_tax" => "Hedef Bazlı Vergiyi Kullan", + "user_timezone" => "Yerel Saat Dilimi:", + "website" => "Web site", + "wholesale_markup" => "", + "work_order_enable" => "İş Emri Aktif", + "work_order_format" => "İş Emri Biçimi", ]; diff --git a/app/Language/tr/Customers.php b/app/Language/tr/Customers.php index 9dd7b7ee1..f638fff4e 100644 --- a/app/Language/tr/Customers.php +++ b/app/Language/tr/Customers.php @@ -1,56 +1,56 @@ "Hesap No", - "account_number_duplicate" => "Bu hesap numarası zaten var.", - "available_points" => "Var Olan Puanlar", - "available_points_value" => "", - "average" => "Harcanan ortalama", - "avg_discount" => "Ortalama indirim", - "basic_information" => "Bilgi", - "cannot_be_deleted" => "Seçili müşteriler silinemedi, müşterilerin satışları var.", - "company_name" => "Şirket", - "confirm_delete" => "Seçili müşteriyi silmek istediğinize emin misiniz?", - "confirm_restore" => "Seçilen müşteri(leri) geri yüklemek istediğinize emin misiniz?", - "consent" => "Kayıt izni", - "consent_required" => "Kayıt izni zorunlu bir alandır.", - "csv_import_failed" => "CSV aktarım hatası", - "csv_import_nodata_wrongformat" => "Yüklenen dosya herhangi bir veri içermiyor veya hatalı formatta.", - "csv_import_partially_failed" => "Birçok Müşteri içe aktarıldı. Ama bazıları değil, listesi burada:", - "csv_import_success" => "Müşteri aktarımı başarılı.", - "customer" => "Müşteri", - "date" => "Tarih", - "discount" => "İndirim", - "discount_fixed" => "Sabit İndirim", - "discount_percent" => "Yüzde İndirim", - "discount_type" => "İndirim Türü", - "email_duplicate" => "E-posta Adresi zaten veri tabanında var.", - "employee" => "Personel", - "error_adding_updating" => "Müşteri ekleme/güncelleme hatası.", - "import_items_csv" => "Müşterileri CSV sayfasından aktar", - "mailchimp_activity_click" => "E-posta tıklaması", - "mailchimp_activity_lastopen" => "Son açılan e-posta", - "mailchimp_activity_open" => "E-posta aç", - "mailchimp_activity_total" => "E-posta gönder", - "mailchimp_activity_unopen" => "E-posta açılmadı", - "mailchimp_email_client" => "E-posta istemcisi", - "mailchimp_info" => "MailChimp", - "mailchimp_member_rating" => "Değerlendirme", - "mailchimp_status" => "Durum", - "mailchimp_vip" => "VİP", - "max" => "Maks. harcanmış", - "min" => "Min. harcanmış", - "new" => "Yeni Müşteri", - "none_selected" => "Silmek için müşteri seçmediniz.", - "one_or_multiple" => "müşteri", - "quantity" => "Miktar", - "stats_info" => "İstatistikler", - "successful_adding" => "Müşteri eklendi", - "successful_deleted" => "Silme başarılı", - "successful_updating" => "Müşteri güncellendi", - "tax_code" => "Vergi kodu", - "tax_id" => "Vergi numarası", - "taxable" => "Vergilendirilebilir", - "total" => "Toplam", - "update" => "Müşteri Güncelle", - "rewards_package" => "Ödül Paketi", + "account_number" => "Hesap No", + "account_number_duplicate" => "Bu hesap numarası zaten var.", + "available_points" => "Var Olan Puanlar", + "available_points_value" => "", + "average" => "Harcanan ortalama", + "avg_discount" => "Ortalama indirim", + "basic_information" => "Bilgi", + "cannot_be_deleted" => "Seçili müşteriler silinemedi, müşterilerin satışları var.", + "company_name" => "Şirket", + "confirm_delete" => "Seçili müşteriyi silmek istediğinize emin misiniz?", + "confirm_restore" => "Seçilen müşteri(leri) geri yüklemek istediğinize emin misiniz?", + "consent" => "Kayıt izni", + "consent_required" => "Kayıt izni zorunlu bir alandır.", + "csv_import_failed" => "CSV aktarım hatası", + "csv_import_nodata_wrongformat" => "Yüklenen dosya herhangi bir veri içermiyor veya hatalı formatta.", + "csv_import_partially_failed" => "Birçok Müşteri içe aktarıldı. Ama bazıları değil, listesi burada:", + "csv_import_success" => "Müşteri aktarımı başarılı.", + "customer" => "Müşteri", + "date" => "Tarih", + "discount" => "İndirim", + "discount_fixed" => "Sabit İndirim", + "discount_percent" => "Yüzde İndirim", + "discount_type" => "İndirim Türü", + "email_duplicate" => "E-posta Adresi zaten veri tabanında var.", + "employee" => "Personel", + "error_adding_updating" => "Müşteri ekleme/güncelleme hatası.", + "import_items_csv" => "Müşterileri CSV sayfasından aktar", + "mailchimp_activity_click" => "E-posta tıklaması", + "mailchimp_activity_lastopen" => "Son açılan e-posta", + "mailchimp_activity_open" => "E-posta aç", + "mailchimp_activity_total" => "E-posta gönder", + "mailchimp_activity_unopen" => "E-posta açılmadı", + "mailchimp_email_client" => "E-posta istemcisi", + "mailchimp_info" => "MailChimp", + "mailchimp_member_rating" => "Değerlendirme", + "mailchimp_status" => "Durum", + "mailchimp_vip" => "VİP", + "max" => "Maks. harcanmış", + "min" => "Min. harcanmış", + "new" => "Yeni Müşteri", + "none_selected" => "Silmek için müşteri seçmediniz.", + "one_or_multiple" => "müşteri", + "quantity" => "Miktar", + "stats_info" => "İstatistikler", + "successful_adding" => "Müşteri eklendi", + "successful_deleted" => "Silme başarılı", + "successful_updating" => "Müşteri güncellendi", + "tax_code" => "Vergi kodu", + "tax_id" => "Vergi numarası", + "taxable" => "Vergilendirilebilir", + "total" => "Toplam", + "update" => "Müşteri Güncelle", + "rewards_package" => "Ödül Paketi", ]; diff --git a/app/Language/tr/Datepicker.php b/app/Language/tr/Datepicker.php index 28790fdf5..d6f6084ad 100644 --- a/app/Language/tr/Datepicker.php +++ b/app/Language/tr/Datepicker.php @@ -1,23 +1,23 @@ "Tüm Zamanlar", - "apply" => "Uygula", - "cancel" => "İptal Et", - "custom" => "Özel", - "from" => "Şundan", - "last_30" => "Son 30 Gün", - "last_7" => "Son 7 Gün", - "last_financial_year" => "Son Mali Yıl", - "last_month" => "Geçen Ay", - "last_year" => "Geçen Yıl", - "same_month_last_year" => "Geçen Yıl Aynı Ay", - "same_month_to_same_day_last_year" => "Geçen Yıl Aynı Aydan Aynı Güne", - "this_financial_year" => "Cari Mali Yıl", - "this_month" => "Bu Ay", - "this_year" => "Bu Yıl", - "to" => "Şuna", - "today" => "Bugün", - "today_last_year" => "Geçen Yıl Bugün", - "weekstart" => "0", - "yesterday" => "Dün", + "all_time" => "Tüm Zamanlar", + "apply" => "Uygula", + "cancel" => "İptal Et", + "custom" => "Özel", + "from" => "Şundan", + "last_30" => "Son 30 Gün", + "last_7" => "Son 7 Gün", + "last_financial_year" => "Son Mali Yıl", + "last_month" => "Geçen Ay", + "last_year" => "Geçen Yıl", + "same_month_last_year" => "Geçen Yıl Aynı Ay", + "same_month_to_same_day_last_year" => "Geçen Yıl Aynı Aydan Aynı Güne", + "this_financial_year" => "Cari Mali Yıl", + "this_month" => "Bu Ay", + "this_year" => "Bu Yıl", + "to" => "Şuna", + "today" => "Bugün", + "today_last_year" => "Geçen Yıl Bugün", + "weekstart" => "0", + "yesterday" => "Dün", ]; diff --git a/app/Language/tr/Employees.php b/app/Language/tr/Employees.php index 34d410353..124fc55a5 100644 --- a/app/Language/tr/Employees.php +++ b/app/Language/tr/Employees.php @@ -1,44 +1,44 @@ "", - "basic_information" => "Personel Temel Bilgileri", - "cannot_be_deleted" => "Seçili personel silinemedi, personellerin satışları var yada kendinizi silmeye çalışıyorsunuz.", - "change_employee" => "", - "change_password" => "Parolayı Değiştir", - "clerk" => "", - "commission" => "", - "confirm_delete" => "Seçili personelleri silmek istediğinize emin misiniz?", - "confirm_restore" => "Seçili çalışanları geri yüklemek istediğinizden emin misiniz?", - "current_password" => "Var Olan Parola", - "current_password_invalid" => "Var Olan Parola geçersiz.", - "employee" => "Personel", - "error_adding_updating" => "Personel ekleme/güncelleme hatası.", - "error_deleting_demo_admin" => "Admin güncellenemez.", - "error_updating_demo_admin" => "Admin silinemez.", - "language" => "Dil", - "login_info" => "Personel Giriş Bilgileri", - "manager" => "", - "new" => "Yeni Personel", - "none_selected" => "Silmek için çalışan seçmediniz.", - "one_or_multiple" => "personel", - "password" => "Parola", - "password_minlength" => "Parola en az 8 karakter olmalıdır.", - "password_must_match" => "Parolalar uyuşmuyor.", - "password_not_must_match" => "Geçerli parola ve yeni parola benzersiz olmalıdır.", - "password_required" => "Parola zorunludur.", - "permission_desc" => "Modül yetkisi vermek için kutuları işaretleyin.", - "permission_info" => "Personel İzin ve Yetkileri", - "repeat_password" => "Parola Yeniden", - "subpermission_required" => "Her bir birim için en az bir izin ekle.", - "successful_adding" => "Personel eklendi.", - "successful_change_password" => "Parola değişikliği başarılı.", - "successful_deleted" => "Silme başarılı", - "successful_updating" => "Personel güncellendi", - "system_language" => "Sistem dili", - "unsuccessful_change_password" => "Parola değişikliği başarısız oldu.", - "update" => "Personeli Güncelle", - "username" => "Kullandı Adı", - "username_duplicate" => "", - "username_minlength" => "Kullanıcı Adı en az 5 karakter olmalıdır.", - "username_required" => "Kullanıcı Adı zorunlu alandır.", + "administrator" => "", + "basic_information" => "Personel Temel Bilgileri", + "cannot_be_deleted" => "Seçili personel silinemedi, personellerin satışları var yada kendinizi silmeye çalışıyorsunuz.", + "change_employee" => "", + "change_password" => "Parolayı Değiştir", + "clerk" => "", + "commission" => "", + "confirm_delete" => "Seçili personelleri silmek istediğinize emin misiniz?", + "confirm_restore" => "Seçili çalışanları geri yüklemek istediğinizden emin misiniz?", + "current_password" => "Var Olan Parola", + "current_password_invalid" => "Var Olan Parola geçersiz.", + "employee" => "Personel", + "error_adding_updating" => "Personel ekleme/güncelleme hatası.", + "error_deleting_demo_admin" => "Admin güncellenemez.", + "error_updating_demo_admin" => "Admin silinemez.", + "language" => "Dil", + "login_info" => "Personel Giriş Bilgileri", + "manager" => "", + "new" => "Yeni Personel", + "none_selected" => "Silmek için çalışan seçmediniz.", + "one_or_multiple" => "personel", + "password" => "Parola", + "password_minlength" => "Parola en az 8 karakter olmalıdır.", + "password_must_match" => "Parolalar uyuşmuyor.", + "password_not_must_match" => "Geçerli parola ve yeni parola benzersiz olmalıdır.", + "password_required" => "Parola zorunludur.", + "permission_desc" => "Modül yetkisi vermek için kutuları işaretleyin.", + "permission_info" => "Personel İzin ve Yetkileri", + "repeat_password" => "Parola Yeniden", + "subpermission_required" => "Her bir birim için en az bir izin ekle.", + "successful_adding" => "Personel eklendi.", + "successful_change_password" => "Parola değişikliği başarılı.", + "successful_deleted" => "Silme başarılı", + "successful_updating" => "Personel güncellendi", + "system_language" => "Sistem dili", + "unsuccessful_change_password" => "Parola değişikliği başarısız oldu.", + "update" => "Personeli Güncelle", + "username" => "Kullandı Adı", + "username_duplicate" => "", + "username_minlength" => "Kullanıcı Adı en az 5 karakter olmalıdır.", + "username_required" => "Kullanıcı Adı zorunlu alandır.", ]; diff --git a/app/Language/tr/Enum.php b/app/Language/tr/Enum.php index 41e7df40a..68de2e2d3 100644 --- a/app/Language/tr/Enum.php +++ b/app/Language/tr/Enum.php @@ -1,10 +1,10 @@ "Yarım Aşağı", - "half_even" => "Yarım Çift", - "half_five" => "Beş Buçuk", - "half_odd" => "Yarım Tek", - "half_up" => "Yarım Yukarı", - "round_down" => "Aşağı Yuvarla", - "round_up" => "Yukarı Yuvarla", + "half_down" => "Yarım Aşağı", + "half_even" => "Yarım Çift", + "half_five" => "Beş Buçuk", + "half_odd" => "Yarım Tek", + "half_up" => "Yarım Yukarı", + "round_down" => "Aşağı Yuvarla", + "round_up" => "Yukarı Yuvarla", ]; diff --git a/app/Language/tr/Error.php b/app/Language/tr/Error.php index b9379942e..d29e307e1 100644 --- a/app/Language/tr/Error.php +++ b/app/Language/tr/Error.php @@ -1,5 +1,5 @@ "Bu modüle erişim yetkiniz yok", - "unknown" => "bilinmeyen", + "no_permission_module" => "Bu modüle erişim yetkiniz yok", + "unknown" => "bilinmeyen", ]; diff --git a/app/Language/tr/Expenses.php b/app/Language/tr/Expenses.php index 8ffadae90..d831ce068 100644 --- a/app/Language/tr/Expenses.php +++ b/app/Language/tr/Expenses.php @@ -1,50 +1,50 @@ "Gider ekle", - "amount" => "Miktar", - "amount_number" => "Miktar değeri sayı olmalı", - "amount_required" => "Gider Miktarı gerekli", - "by_category" => "Kategori", - "cannot_be_deleted" => "Gider Kategorisi silinemez", - "cash" => "Nakit", - "cash_filter" => "Nakit", - "categories_name" => "Kategori", - "category_required" => "Kaetgori gerekli bir alandır", - "check" => "Çek", - "check_filter" => "Çek", - "confirm_delete" => "Seçilen Gider(ler)i silmek istediğinizden emin misiniz?", - "confirm_restore" => "Seçilen Gider(ler)i onarmak istediğinizden emin misiniz?", - "credit" => "Kredi Kartı", - "credit_filter" => "Kredi Kartı", - "date" => "Tarih", - "date_number" => "Tarih değeri sayı olmalı", - "date_required" => "Tarih bilgisi gereklidir", - "debit" => "Debit Kart", - "debit_filter" => "Debit Kart", - "description" => "Tanım", - "due" => "Zamanı Dolmuş", - "due_filter" => "Zamanı Dolmuş", - "employee" => "Oluşturan", - "error_adding_updating" => "Gider ekleme/güncelleme hatası", - "expense_id" => "No", - "expenses_employee" => "Personel", - "info" => "Gider Bilgisi", - "ip_address" => "", - "is_deleted" => "Silinmiş", - "name_required" => "Gider Adı gereklidir", - "new" => "Yeni Gider", - "new_supplier" => "", - "no_expenses_to_display" => "Gösterilecek Gider Bilgisi yoktur", - "none_selected" => "Seçili Gider yok", - "one_or_multiple" => "Gider(ler)", - "payment" => "Ödeme Tipi", - "start_typing_supplier_name" => "Tedarikçinin adını yazmaya başlayın ...", - "successful_adding" => "Gider eklendi", - "successful_deleted" => "Gider silindi", - "successful_updating" => "Gider güncellendi", - "supplier_name" => "Sağlayıcı", - "supplier_tax_code" => "Vergi Kodu", - "tax_amount" => "Vergi", - "tax_amount_number" => "", - "update" => "Gider Güncelle", + "add_item" => "Gider ekle", + "amount" => "Miktar", + "amount_number" => "Miktar değeri sayı olmalı", + "amount_required" => "Gider Miktarı gerekli", + "by_category" => "Kategori", + "cannot_be_deleted" => "Gider Kategorisi silinemez", + "cash" => "Nakit", + "cash_filter" => "Nakit", + "categories_name" => "Kategori", + "category_required" => "Kaetgori gerekli bir alandır", + "check" => "Çek", + "check_filter" => "Çek", + "confirm_delete" => "Seçilen Gider(ler)i silmek istediğinizden emin misiniz?", + "confirm_restore" => "Seçilen Gider(ler)i onarmak istediğinizden emin misiniz?", + "credit" => "Kredi Kartı", + "credit_filter" => "Kredi Kartı", + "date" => "Tarih", + "date_number" => "Tarih değeri sayı olmalı", + "date_required" => "Tarih bilgisi gereklidir", + "debit" => "Debit Kart", + "debit_filter" => "Debit Kart", + "description" => "Tanım", + "due" => "Zamanı Dolmuş", + "due_filter" => "Zamanı Dolmuş", + "employee" => "Oluşturan", + "error_adding_updating" => "Gider ekleme/güncelleme hatası", + "expense_id" => "No", + "expenses_employee" => "Personel", + "info" => "Gider Bilgisi", + "ip_address" => "", + "is_deleted" => "Silinmiş", + "name_required" => "Gider Adı gereklidir", + "new" => "Yeni Gider", + "new_supplier" => "", + "no_expenses_to_display" => "Gösterilecek Gider Bilgisi yoktur", + "none_selected" => "Seçili Gider yok", + "one_or_multiple" => "Gider(ler)", + "payment" => "Ödeme Tipi", + "start_typing_supplier_name" => "Tedarikçinin adını yazmaya başlayın ...", + "successful_adding" => "Gider eklendi", + "successful_deleted" => "Gider silindi", + "successful_updating" => "Gider güncellendi", + "supplier_name" => "Sağlayıcı", + "supplier_tax_code" => "Vergi Kodu", + "tax_amount" => "Vergi", + "tax_amount_number" => "", + "update" => "Gider Güncelle", ]; diff --git a/app/Language/tr/Expenses_categories.php b/app/Language/tr/Expenses_categories.php index bc6775699..df4d66e66 100644 --- a/app/Language/tr/Expenses_categories.php +++ b/app/Language/tr/Expenses_categories.php @@ -1,22 +1,22 @@ "Gider Kategorisi adı gerekli", - "add_item" => "Kategori ekleyin", - "cannot_be_deleted" => "Gider kategorisi silinemez", - "category_id" => "No", - "confirm_delete" => "Seçili Gider Kategorisini silmek istediğinizden emin misiniz?", - "confirm_restore" => "Seçili Gider Kategorisini geri yüklemek istediğinize emin misiniz?", - "description" => "Kategori Tanımı", - "error_adding_updating" => "Gider Kategorisi ekleme/güncelleme hatası", - "info" => "Giderler Kategorisi Bilgisi", - "name" => "Kategori Adı", - "new" => "Yeni Kategori", - "no_expenses_categories_to_display" => "Görüntülenecek Kategori yok", - "none_selected" => "Seçili Gider Kategorisi yok", - "one_or_multiple" => "Gider Kategorisi", - "quantity" => "Sayı", - "successful_adding" => "Gider Kategorisi eklendi", - "successful_deleted" => "Gider Kategorisi silindi", - "successful_updating" => "Gider Kategorisi güncellendi", - "update" => "Gider Kategorisini güncelle", + "category_name_required" => "Gider Kategorisi adı gerekli", + "add_item" => "Kategori ekleyin", + "cannot_be_deleted" => "Gider kategorisi silinemez", + "category_id" => "No", + "confirm_delete" => "Seçili Gider Kategorisini silmek istediğinizden emin misiniz?", + "confirm_restore" => "Seçili Gider Kategorisini geri yüklemek istediğinize emin misiniz?", + "description" => "Kategori Tanımı", + "error_adding_updating" => "Gider Kategorisi ekleme/güncelleme hatası", + "info" => "Giderler Kategorisi Bilgisi", + "name" => "Kategori Adı", + "new" => "Yeni Kategori", + "no_expenses_categories_to_display" => "Görüntülenecek Kategori yok", + "none_selected" => "Seçili Gider Kategorisi yok", + "one_or_multiple" => "Gider Kategorisi", + "quantity" => "Sayı", + "successful_adding" => "Gider Kategorisi eklendi", + "successful_deleted" => "Gider Kategorisi silindi", + "successful_updating" => "Gider Kategorisi güncellendi", + "update" => "Gider Kategorisini güncelle", ]; diff --git a/app/Language/tr/Giftcards.php b/app/Language/tr/Giftcards.php index daddf12b0..afd439c4c 100644 --- a/app/Language/tr/Giftcards.php +++ b/app/Language/tr/Giftcards.php @@ -1,71 +1,71 @@ "Eklenen/Çıkarılan Adet.", - "allow_alt_description" => "Dip Nota izin ver", - "bulk_edit" => "Çoklu Düzenleme", - "cannot_be_deleted" => "Seçili Hediye Çekleri silinemedi, bir veya fazla Hediye Çekinde satış bulunmaktadır.", - "cannot_find_giftcard" => "Hediye Çeki bulunamadı.", - "cannot_use" => "{0} Hediye Kartı bu satış için kullanılamaz: geçersiz Müşteri.", - "card_value" => "Değer", - "category" => "Kategori", - "change_all_to_allow_alt_desc" => "Herkes için alternatif açıklamaya izin ver.", - "change_all_to_not_allow_allow_desc" => "Herkes için alternatif açıklamaya izin verme.", - "change_all_to_serialized" => "Tümünü Seri Olarak Değiştir", - "change_all_to_unserialized" => "Tümünü Sıralanmamış Olarak Değiştir", - "confirm_bulk_edit" => "Seçili Hediye Çeklerini düzeltmek istiyor musunuz?", - "confirm_delete" => "Seçili Hediye Çeklerini silmek istediğinizden emin misiniz?", - "confirm_restore" => "Seçili Hediye Çeklerini onarmak istediğinizden emin misiniz?", - "cost_price" => "Maliyet Fiyatı", - "count" => "Stoğu Güncelle", - "csv_import_failed" => "CSV içe aktarma başarısız.", - "current_quantity" => "Var Olan Miktar", - "description" => "Açıklama", - "details_count" => "Stok Sayım Ayrıntıları", - "do_nothing" => "Bir Şey Yapma", - "edit_fields_you_want_to_update" => "TÜM seçili hediye çekleri için düzenlemek istediğiniz alanları düzenleyin.", - "edit_multiple_giftcards" => "Çoklu Hediye Çeki Düzenleme.", - "error_adding_updating" => "Hediye çeki ekleme/güncelleme hatası.", - "error_updating_multiple" => "Hediye çeki güncellemesinde hata.", - "generate_barcodes" => "Barkod Oluştur", - "giftcard" => "Hediye Çeki", - "giftcard_number" => "Hediye Çeki Numarası", - "info_provided_by" => "Bilgi sağlayan", - "inventory_comments" => "Yorumlar", - "is_serialized" => "Hediye Çekinin Seri Numarası var", - "low_inventory_giftcards" => "Düşük Envanter Hediye Kartları", - "manually_editing_of_quantity" => "Elle Adet Düzeltme", - "must_select_giftcard_for_barcode" => "Barkod oluşturmak için en az 1 hediye çeki seçmelisiniz.", - "new" => "Yeni Hediye Çeki", - "no_description_giftcards" => "Hediye Çeki tanımı yok", - "no_giftcards_to_display" => "Gösterilecek Hediye Çeki yok.", - "none" => "Hiçbiri", - "none_selected" => "Düzenlemek için herhangi bir hediye çeki seçmediniz.", - "number" => "Hediye Çekşi Numarası bir numara olmalıdır.", - "number_information" => "Hediye Çeki Numarası", - "number_required" => "Hediye Çeki Numarası zorunlu bir alandır.", - "one_or_multiple" => "Hediye Çek(ler)i", - "person_id" => "Müşteri", - "quantity" => "Adet", - "quantity_required" => "Miktar zorunlu alandır. İptal etmek için Kapat'a ( X ) bas.", - "remaining_balance" => "Hediye Çeki {0} kalan miktar {1}!", - "reorder_level" => "Yeniden sipariş seviyesi", - "retrive_giftcard_info" => "Hediye Kartı Bilgisini Al", - "sales_tax_1" => "Satış Vergisi", - "sales_tax_2" => "Satış Vergisi 2", - "serialized_giftcards" => "Seri Hediye Kartları", - "successful_adding" => "Hediye çekini başarıyla eklediniz", - "successful_bulk_edit" => "Seçili hediye çeklerini başarıyla güncellediniz", - "successful_deleted" => "Başarıyla sildiniz", - "successful_updating" => "Hediye çekini başarıyla güncellediniz", - "supplier" => "Tedarikçi", - "tax_1" => "Vergi 1", - "tax_2" => "Vergi 2", - "tax_percent" => "Vergi Yüzdesi", - "tax_percents" => "Vergi Yüzdesi", - "unit_price" => "Perakende Değeri", - "upc_database" => "UPC Veri tabanı", - "update" => "Hediye Çeki Güncelle", - "use_inventory_menu" => "Stok Menüsünü Kullan", - "value" => "Hediye Çeki Değeri rakam olmalıdır.", - "value_required" => "Hediye Çeki Değeri zorunlu bir alandır.", + "add_minus" => "Eklenen/Çıkarılan Adet.", + "allow_alt_description" => "Dip Nota izin ver", + "bulk_edit" => "Çoklu Düzenleme", + "cannot_be_deleted" => "Seçili Hediye Çekleri silinemedi, bir veya fazla Hediye Çekinde satış bulunmaktadır.", + "cannot_find_giftcard" => "Hediye Çeki bulunamadı.", + "cannot_use" => "{0} Hediye Kartı bu satış için kullanılamaz: geçersiz Müşteri.", + "card_value" => "Değer", + "category" => "Kategori", + "change_all_to_allow_alt_desc" => "Herkes için alternatif açıklamaya izin ver.", + "change_all_to_not_allow_allow_desc" => "Herkes için alternatif açıklamaya izin verme.", + "change_all_to_serialized" => "Tümünü Seri Olarak Değiştir", + "change_all_to_unserialized" => "Tümünü Sıralanmamış Olarak Değiştir", + "confirm_bulk_edit" => "Seçili Hediye Çeklerini düzeltmek istiyor musunuz?", + "confirm_delete" => "Seçili Hediye Çeklerini silmek istediğinizden emin misiniz?", + "confirm_restore" => "Seçili Hediye Çeklerini onarmak istediğinizden emin misiniz?", + "cost_price" => "Maliyet Fiyatı", + "count" => "Stoğu Güncelle", + "csv_import_failed" => "CSV içe aktarma başarısız.", + "current_quantity" => "Var Olan Miktar", + "description" => "Açıklama", + "details_count" => "Stok Sayım Ayrıntıları", + "do_nothing" => "Bir Şey Yapma", + "edit_fields_you_want_to_update" => "TÜM seçili hediye çekleri için düzenlemek istediğiniz alanları düzenleyin.", + "edit_multiple_giftcards" => "Çoklu Hediye Çeki Düzenleme.", + "error_adding_updating" => "Hediye çeki ekleme/güncelleme hatası.", + "error_updating_multiple" => "Hediye çeki güncellemesinde hata.", + "generate_barcodes" => "Barkod Oluştur", + "giftcard" => "Hediye Çeki", + "giftcard_number" => "Hediye Çeki Numarası", + "info_provided_by" => "Bilgi sağlayan", + "inventory_comments" => "Yorumlar", + "is_serialized" => "Hediye Çekinin Seri Numarası var", + "low_inventory_giftcards" => "Düşük Envanter Hediye Kartları", + "manually_editing_of_quantity" => "Elle Adet Düzeltme", + "must_select_giftcard_for_barcode" => "Barkod oluşturmak için en az 1 hediye çeki seçmelisiniz.", + "new" => "Yeni Hediye Çeki", + "no_description_giftcards" => "Hediye Çeki tanımı yok", + "no_giftcards_to_display" => "Gösterilecek Hediye Çeki yok.", + "none" => "Hiçbiri", + "none_selected" => "Düzenlemek için herhangi bir hediye çeki seçmediniz.", + "number" => "Hediye Çekşi Numarası bir numara olmalıdır.", + "number_information" => "Hediye Çeki Numarası", + "number_required" => "Hediye Çeki Numarası zorunlu bir alandır.", + "one_or_multiple" => "Hediye Çek(ler)i", + "person_id" => "Müşteri", + "quantity" => "Adet", + "quantity_required" => "Miktar zorunlu alandır. İptal etmek için Kapat'a ( X ) bas.", + "remaining_balance" => "Hediye Çeki {0} kalan miktar {1}!", + "reorder_level" => "Yeniden sipariş seviyesi", + "retrive_giftcard_info" => "Hediye Kartı Bilgisini Al", + "sales_tax_1" => "Satış Vergisi", + "sales_tax_2" => "Satış Vergisi 2", + "serialized_giftcards" => "Seri Hediye Kartları", + "successful_adding" => "Hediye çekini başarıyla eklediniz", + "successful_bulk_edit" => "Seçili hediye çeklerini başarıyla güncellediniz", + "successful_deleted" => "Başarıyla sildiniz", + "successful_updating" => "Hediye çekini başarıyla güncellediniz", + "supplier" => "Tedarikçi", + "tax_1" => "Vergi 1", + "tax_2" => "Vergi 2", + "tax_percent" => "Vergi Yüzdesi", + "tax_percents" => "Vergi Yüzdesi", + "unit_price" => "Perakende Değeri", + "upc_database" => "UPC Veri tabanı", + "update" => "Hediye Çeki Güncelle", + "use_inventory_menu" => "Stok Menüsünü Kullan", + "value" => "Hediye Çeki Değeri rakam olmalıdır.", + "value_required" => "Hediye Çeki Değeri zorunlu bir alandır.", ]; diff --git a/app/Language/tr/Item_kits.php b/app/Language/tr/Item_kits.php index 6e5002f23..2c144f8ab 100644 --- a/app/Language/tr/Item_kits.php +++ b/app/Language/tr/Item_kits.php @@ -1,41 +1,41 @@ "Ürün Ekle", - "all" => "Tümü", - "cannot_be_deleted" => "Ürün Takım(lar)ı silinemedi.", - "confirm_delete" => "Seçili Ürün Takım(lar)ını silmek istediğinize emin misiniz?", - "confirm_restore" => "Seçilen Ürün Takım(lar)ını geri yüklemek istediğinizden emin misiniz?", - "description" => "Ürün Takımı Tanımı", - "discount" => "İndirim", - "discount_fixed" => "Sabit İndirim", - "discount_percent" => "İndirim Yüzdesi", - "discount_type" => "İndirim Türü", - "error_adding_updating" => "Ürün Takımı ekleme/güncelleme hatası.", - "find_kit_item" => "Takım Ürünü", - "info" => "Ürün Takımı Bilgisi", - "item" => "Ürün", - "item_kit_number" => "Barkod", - "item_kit_number_duplicate" => "Ürün Takımı Numarası veri tabanında zaten var.", - "item_number" => "", - "item_number_duplicate" => "", - "items" => "Ürünler", - "kit" => "Takım Kimliği", - "kit_and_components" => "Takım ve Bileşenler", - "kit_and_stock" => "Ürün Takımı ve Stok", - "kit_only" => "Yalnızca Ürün Takımı", - "name" => "Ürün Takımı Adı", - "new" => "Yeni Ürün Takımı", - "no_item_kits_to_display" => "Gösterecek Ürün Takımı yok.", - "none_selected" => "Ürün Takımı seçmediniz.", - "one_or_multiple" => "Ürün Takım(lar)ı", - "price_option" => "Fiyat Seçeneği", - "priced_only" => "Yalnızca Fiyatlandırılmış", - "print_option" => "Yazdırma Seçeneği", - "quantity" => "Adet", - "sequence" => "Sıra", - "successful_adding" => "Ürün Takımını başarıyla eklediniz", - "successful_deleted" => "Başarıyla sildiniz", - "successful_updating" => "Ürün Takımını başarıyla güncellediniz", - "unit_price" => "", - "update" => "Ürün Takımını Güncelle", + "add_item" => "Ürün Ekle", + "all" => "Tümü", + "cannot_be_deleted" => "Ürün Takım(lar)ı silinemedi.", + "confirm_delete" => "Seçili Ürün Takım(lar)ını silmek istediğinize emin misiniz?", + "confirm_restore" => "Seçilen Ürün Takım(lar)ını geri yüklemek istediğinizden emin misiniz?", + "description" => "Ürün Takımı Tanımı", + "discount" => "İndirim", + "discount_fixed" => "Sabit İndirim", + "discount_percent" => "İndirim Yüzdesi", + "discount_type" => "İndirim Türü", + "error_adding_updating" => "Ürün Takımı ekleme/güncelleme hatası.", + "find_kit_item" => "Takım Ürünü", + "info" => "Ürün Takımı Bilgisi", + "item" => "Ürün", + "item_kit_number" => "Barkod", + "item_kit_number_duplicate" => "Ürün Takımı Numarası veri tabanında zaten var.", + "item_number" => "", + "item_number_duplicate" => "", + "items" => "Ürünler", + "kit" => "Takım Kimliği", + "kit_and_components" => "Takım ve Bileşenler", + "kit_and_stock" => "Ürün Takımı ve Stok", + "kit_only" => "Yalnızca Ürün Takımı", + "name" => "Ürün Takımı Adı", + "new" => "Yeni Ürün Takımı", + "no_item_kits_to_display" => "Gösterecek Ürün Takımı yok.", + "none_selected" => "Ürün Takımı seçmediniz.", + "one_or_multiple" => "Ürün Takım(lar)ı", + "price_option" => "Fiyat Seçeneği", + "priced_only" => "Yalnızca Fiyatlandırılmış", + "print_option" => "Yazdırma Seçeneği", + "quantity" => "Adet", + "sequence" => "Sıra", + "successful_adding" => "Ürün Takımını başarıyla eklediniz", + "successful_deleted" => "Başarıyla sildiniz", + "successful_updating" => "Ürün Takımını başarıyla güncellediniz", + "unit_price" => "", + "update" => "Ürün Takımını Güncelle", ]; diff --git a/app/Language/tr/Items.php b/app/Language/tr/Items.php index 1ce62dd88..81a31678b 100644 --- a/app/Language/tr/Items.php +++ b/app/Language/tr/Items.php @@ -1,120 +1,120 @@ "Eklenen/Çıkarılan Adet.", - "allow_alt_description" => "Dip Nota izin ver", - "amount_entry" => "Miktar Girişi", - "bulk_edit" => "Toplu Düzenleme", - "buy_price_required" => "Alış Fiyatı zorunlu alandır.", - "cannot_be_deleted" => "Seçili ürünler silinemedi, bazı ürünlerin satışı var.", - "cannot_find_item" => "Ürün bilgisi bulunamadı.", - "categories" => "", - "category" => "Kategori", - "category_new" => "", - "category_required" => "Kategori zorunlu alandır.", - "change_all_to_allow_alt_desc" => "Tümünde dip nota izin ver.", - "change_all_to_not_allow_allow_desc" => "Tümünde dip nota izin verme.", - "change_all_to_serialized" => "Tümünü seri numaralı yap", - "change_all_to_unserialized" => "Tümünü seri numarasız yap", - "change_image" => "Resmi değiştir", - "confirm_bulk_edit" => "Seçili tüm ürünleri düzenlemek istediğinize emin misiniz?", - "confirm_bulk_edit_wipe_taxes" => "Tüm ürün vergi bilgileri değiştirilecektir.", - "confirm_delete" => "Seçili ürünleri silmek istediğinize emin misiniz?", - "confirm_restore" => "Seçili ürünleri onarmak istediğinize emin misiniz?", - "cost_price" => "Toptan Fiyatı", - "cost_price_number" => "Toptan Fiyatı sayı olmalıdır.", - "cost_price_required" => "Toptan Fiyatı zorunlu alandır.", - "count" => "Stoğu Güncelle", - "csv_import_failed" => "CSV aktarım hatası", - "csv_import_nodata_wrongformat" => "Yüklenen dosya herhangi bir veri içermiyor veya hatalı formatta.", - "csv_import_partially_failed" => "Bazı ürünler aktarılamadı. Aktarılamayanlar listesi.", - "csv_import_success" => "Ürün aktarımı başarılı.", - "current_quantity" => "Var Olan Adet", - "default_pack_name" => "Her biri", - "description" => "Tanım", - "details_count" => "Stok Hareket Detayları", - "do_nothing" => "Değiştirme", - "edit" => "", - "edit_fields_you_want_to_update" => "Seçili TÜM ürünler için düzenlemek istediğiniz alanları girin.", - "edit_multiple_items" => "Çoklu Ürün Güncelleme", - "empty_upc_items" => "Ürün kodu olmayan ürünler", - "error_adding_updating" => "Ürün ekleme/düzenleme hatası", - "error_updating_multiple" => "Ürün düzenleme hatası", - "generate_barcodes" => "Barkod Üret", - "hsn_code" => "Harmonize Sistem İsimlendirme", - "image" => "Avatar", - "import_items_csv" => "CSV dosyasından ürün aktar", - "info_provided_by" => "Bilgi sağlayan", - "inventory" => "Stok", - "inventory_CSV_import_quantity" => "CSV'den Alınan Miktar", - "inventory_comments" => "Yorumlar", - "inventory_data_tracking" => "Stok Takibi", - "inventory_date" => "Tarih", - "inventory_employee" => "Personel", - "inventory_in_out_quantity" => "Giriş/Çıkış Sayısı", - "inventory_remarks" => "Notlar", - "is_deleted" => "Silinmiş", - "is_printed" => "", - "is_serialized" => "Seri Numaralı Ürün", - "item" => "Ürün", - "item_id" => "", - "item_number" => "UPC/EAN/ISBN", - "item_number_duplicate" => "Ürün numarası veritabanında zaten var.", - "kit" => "Set", - "location" => "Yer", - "low_inventory_items" => "Stokta Olmayan Ürünler", - "low_sell_item" => "Düşük satış fiyatı", - "manually_editing_of_quantity" => "Elle adet düzeltme", - "markup" => "", - "name" => "Ürün Adı", - "name_required" => "Ürün Adı zorunlu alandır.", - "new" => "Yeni Ürün", - "no_description_items" => "Tanımı olmayan ürünler", - "no_items_to_display" => "Gösterecek Ürün Yok.", - "none" => "Hiçbiri", - "none_selected" => "Düzenlemek için ürün seçmediniz", - "nonstock" => "Stokta Olmayan", - "number_information" => "Ürün No", - "number_required" => "Barkod alanı zorunludur.", - "one_or_multiple" => "ürün", - "pack_name" => "Paket adı", - "qty_per_pack" => "Paket başına miktar", - "quantity" => "Adet", - "quantity_number" => "Adet sayı olmalıdır.", - "quantity_required" => "Adet zorunlu alandır.", - "receiving_quantity" => "Alım miktarı", - "remove_image" => "Resmi kaldır", - "reorder_level" => "Düşük Stok", - "reorder_level_number" => "Düşük stok sayı olmalıdır.", - "reorder_level_required" => "Düşük Stok zorunlu alandır.", - "retrive_item_info" => "Ürün Bilgisi Getir", - "sales_tax_1" => "Satış Vergisi", - "sales_tax_2" => "Satış Vergisi 2", - "search_attributes" => "Özellikleri Ara", - "select_image" => "Resim Seç", - "serialized_items" => "Seri Numaralı Ürünler", - "standard" => "Standart", - "stock" => "Stok", - "stock_location" => "Mağaza Yeri", - "stock_type" => "Stok Tipi", - "successful_adding" => "Ürün ekleme başarılı", - "successful_bulk_edit" => "Seçili ürün düzenlendi", - "successful_deleted" => "Silme başarılı", - "successful_updating" => "Ürün düzenleme başarılı", - "supplier" => "Sağlayıcı", - "tax_1" => "Vergi 1", - "tax_2" => "Vergi 2", - "tax_3" => "", - "tax_category" => "Vergi Kategorisi", - "tax_percent" => "Vergi Yüzdesi", - "tax_percent_number" => "Vergi Yüzdesi ondalıklı sayı olmalı", - "tax_percent_required" => "Vergi Oranı zorunlu alandır.", - "tax_percents" => "Vergi Yüzdesi", - "temp" => "Geçici", - "type" => "Ürün Tipi", - "unit_price" => "Satış Fiyatı", - "unit_price_number" => "Fiyat sayı olmalıdır (9.90).", - "unit_price_required" => "Satış Fiyatı zorunlu alandır.", - "upc_database" => "UPC Veritabanı", - "update" => "Ürün Güncelle", - "use_inventory_menu" => "Stok Menüsünü Kullan", + "add_minus" => "Eklenen/Çıkarılan Adet.", + "allow_alt_description" => "Dip Nota izin ver", + "amount_entry" => "Miktar Girişi", + "bulk_edit" => "Toplu Düzenleme", + "buy_price_required" => "Alış Fiyatı zorunlu alandır.", + "cannot_be_deleted" => "Seçili ürünler silinemedi, bazı ürünlerin satışı var.", + "cannot_find_item" => "Ürün bilgisi bulunamadı.", + "categories" => "", + "category" => "Kategori", + "category_new" => "", + "category_required" => "Kategori zorunlu alandır.", + "change_all_to_allow_alt_desc" => "Tümünde dip nota izin ver.", + "change_all_to_not_allow_allow_desc" => "Tümünde dip nota izin verme.", + "change_all_to_serialized" => "Tümünü seri numaralı yap", + "change_all_to_unserialized" => "Tümünü seri numarasız yap", + "change_image" => "Resmi değiştir", + "confirm_bulk_edit" => "Seçili tüm ürünleri düzenlemek istediğinize emin misiniz?", + "confirm_bulk_edit_wipe_taxes" => "Tüm ürün vergi bilgileri değiştirilecektir.", + "confirm_delete" => "Seçili ürünleri silmek istediğinize emin misiniz?", + "confirm_restore" => "Seçili ürünleri onarmak istediğinize emin misiniz?", + "cost_price" => "Toptan Fiyatı", + "cost_price_number" => "Toptan Fiyatı sayı olmalıdır.", + "cost_price_required" => "Toptan Fiyatı zorunlu alandır.", + "count" => "Stoğu Güncelle", + "csv_import_failed" => "CSV aktarım hatası", + "csv_import_nodata_wrongformat" => "Yüklenen dosya herhangi bir veri içermiyor veya hatalı formatta.", + "csv_import_partially_failed" => "Bazı ürünler aktarılamadı. Aktarılamayanlar listesi.", + "csv_import_success" => "Ürün aktarımı başarılı.", + "current_quantity" => "Var Olan Adet", + "default_pack_name" => "Her biri", + "description" => "Tanım", + "details_count" => "Stok Hareket Detayları", + "do_nothing" => "Değiştirme", + "edit" => "", + "edit_fields_you_want_to_update" => "Seçili TÜM ürünler için düzenlemek istediğiniz alanları girin.", + "edit_multiple_items" => "Çoklu Ürün Güncelleme", + "empty_upc_items" => "Ürün kodu olmayan ürünler", + "error_adding_updating" => "Ürün ekleme/düzenleme hatası", + "error_updating_multiple" => "Ürün düzenleme hatası", + "generate_barcodes" => "Barkod Üret", + "hsn_code" => "Harmonize Sistem İsimlendirme", + "image" => "Avatar", + "import_items_csv" => "CSV dosyasından ürün aktar", + "info_provided_by" => "Bilgi sağlayan", + "inventory" => "Stok", + "inventory_CSV_import_quantity" => "CSV'den Alınan Miktar", + "inventory_comments" => "Yorumlar", + "inventory_data_tracking" => "Stok Takibi", + "inventory_date" => "Tarih", + "inventory_employee" => "Personel", + "inventory_in_out_quantity" => "Giriş/Çıkış Sayısı", + "inventory_remarks" => "Notlar", + "is_deleted" => "Silinmiş", + "is_printed" => "", + "is_serialized" => "Seri Numaralı Ürün", + "item" => "Ürün", + "item_id" => "", + "item_number" => "UPC/EAN/ISBN", + "item_number_duplicate" => "Ürün numarası veritabanında zaten var.", + "kit" => "Set", + "location" => "Yer", + "low_inventory_items" => "Stokta Olmayan Ürünler", + "low_sell_item" => "Düşük satış fiyatı", + "manually_editing_of_quantity" => "Elle adet düzeltme", + "markup" => "", + "name" => "Ürün Adı", + "name_required" => "Ürün Adı zorunlu alandır.", + "new" => "Yeni Ürün", + "no_description_items" => "Tanımı olmayan ürünler", + "no_items_to_display" => "Gösterecek Ürün Yok.", + "none" => "Hiçbiri", + "none_selected" => "Düzenlemek için ürün seçmediniz", + "nonstock" => "Stokta Olmayan", + "number_information" => "Ürün No", + "number_required" => "Barkod alanı zorunludur.", + "one_or_multiple" => "ürün", + "pack_name" => "Paket adı", + "qty_per_pack" => "Paket başına miktar", + "quantity" => "Adet", + "quantity_number" => "Adet sayı olmalıdır.", + "quantity_required" => "Adet zorunlu alandır.", + "receiving_quantity" => "Alım miktarı", + "remove_image" => "Resmi kaldır", + "reorder_level" => "Düşük Stok", + "reorder_level_number" => "Düşük stok sayı olmalıdır.", + "reorder_level_required" => "Düşük Stok zorunlu alandır.", + "retrive_item_info" => "Ürün Bilgisi Getir", + "sales_tax_1" => "Satış Vergisi", + "sales_tax_2" => "Satış Vergisi 2", + "search_attributes" => "Özellikleri Ara", + "select_image" => "Resim Seç", + "serialized_items" => "Seri Numaralı Ürünler", + "standard" => "Standart", + "stock" => "Stok", + "stock_location" => "Mağaza Yeri", + "stock_type" => "Stok Tipi", + "successful_adding" => "Ürün ekleme başarılı", + "successful_bulk_edit" => "Seçili ürün düzenlendi", + "successful_deleted" => "Silme başarılı", + "successful_updating" => "Ürün düzenleme başarılı", + "supplier" => "Sağlayıcı", + "tax_1" => "Vergi 1", + "tax_2" => "Vergi 2", + "tax_3" => "", + "tax_category" => "Vergi Kategorisi", + "tax_percent" => "Vergi Yüzdesi", + "tax_percent_number" => "Vergi Yüzdesi ondalıklı sayı olmalı", + "tax_percent_required" => "Vergi Oranı zorunlu alandır.", + "tax_percents" => "Vergi Yüzdesi", + "temp" => "Geçici", + "type" => "Ürün Tipi", + "unit_price" => "Satış Fiyatı", + "unit_price_number" => "Fiyat sayı olmalıdır (9.90).", + "unit_price_required" => "Satış Fiyatı zorunlu alandır.", + "upc_database" => "UPC Veritabanı", + "update" => "Ürün Güncelle", + "use_inventory_menu" => "Stok Menüsünü Kullan", ]; diff --git a/app/Language/tr/Login.php b/app/Language/tr/Login.php index 7b4beb75c..069f50f54 100644 --- a/app/Language/tr/Login.php +++ b/app/Language/tr/Login.php @@ -1,15 +1,15 @@ "Ben robot değilim.", - "go" => "Giriş", - "invalid_gcaptcha" => "Robot olmadığınızı kanıtlayınız.", - "invalid_installation" => "Yükleme doğru değil, php.ini dosyanızı gözden geçirin.", - "invalid_username_and_password" => "Geçersiz kullanıcı adı ve/veya parola.", - "login" => "Giriş", - "logout" => "Çıkış", - "migration_needed" => "Girişten sonra {0} veri tabanına göç başlayacak.", - "password" => "Parola", - "required_username" => "", - "username" => "Kullanıcı Adı", - "welcome" => "{0}'e Hoş Geldiniz!", + "gcaptcha" => "Ben robot değilim.", + "go" => "Giriş", + "invalid_gcaptcha" => "Robot olmadığınızı kanıtlayınız.", + "invalid_installation" => "Yükleme doğru değil, php.ini dosyanızı gözden geçirin.", + "invalid_username_and_password" => "Geçersiz kullanıcı adı ve/veya parola.", + "login" => "Giriş", + "logout" => "Çıkış", + "migration_needed" => "Girişten sonra {0} veri tabanına göç başlayacak.", + "password" => "Parola", + "required_username" => "", + "username" => "Kullanıcı Adı", + "welcome" => "{0}'e Hoş Geldiniz!", ]; diff --git a/app/Language/tr/Messages.php b/app/Language/tr/Messages.php index b867e4e64..15a21425b 100644 --- a/app/Language/tr/Messages.php +++ b/app/Language/tr/Messages.php @@ -1,15 +1,15 @@ "İsim", - "last_name" => "Soyisim", - "message" => "Mesaj", - "message_placeholder" => "Mesajınız...", - "message_required" => "Mesaj giriniz", - "multiple_phones" => "(Birden fazla alıcı için telefon numaralarını virgül ile ayırınız)", - "phone" => "Telefon Numarası", - "phone_number_required" => "Telefon numarası giriniz", - "phone_placeholder" => "Mobil numaralar...", - "sms_send" => "SMS Gönder", - "successfully_sent" => "Mesaj başarıyla gönderildi : ", - "unsuccessfully_sent" => "Mesaj gönderilemedi. Alıcı : ", + "first_name" => "İsim", + "last_name" => "Soyisim", + "message" => "Mesaj", + "message_placeholder" => "Mesajınız...", + "message_required" => "Mesaj giriniz", + "multiple_phones" => "(Birden fazla alıcı için telefon numaralarını virgül ile ayırınız)", + "phone" => "Telefon Numarası", + "phone_number_required" => "Telefon numarası giriniz", + "phone_placeholder" => "Mobil numaralar...", + "sms_send" => "SMS Gönder", + "successfully_sent" => "Mesaj başarıyla gönderildi : ", + "unsuccessfully_sent" => "Mesaj gönderilemedi. Alıcı : ", ]; diff --git a/app/Language/tr/Module.php b/app/Language/tr/Module.php index 04ce8d2b3..eab02a689 100644 --- a/app/Language/tr/Module.php +++ b/app/Language/tr/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "Öznitelikler", - "attributes_desc" => "Ekleme, Güncelleme, Silme ve Arama özellikleri.", - "both" => "Her ikisi de", - "cashups" => "Cash ups", - "cashups_desc" => "Cashups, Güncelleme, Silme ve Arama.", - "config" => "Yapılandırma", - "config_desc" => "Yapılandırma bilgisi görme ve düzenleme.", - "customers" => "Müşteriler", - "customers_desc" => "Ekleme, değiştirme, silme ve arama.", - "employees" => "Personeller", - "employees_desc" => "Ekleme, değiştirme, silme ve arama.", - "expenses" => "Giderler", - "expenses_categories" => "Gider Kategorisi", - "expenses_categories_desc" => "Ekleme, değiştirme, silme.", - "expenses_desc" => "Ekleme, değiştirme, silme ve arama.", - "giftcards" => "Hediye Çekleri", - "giftcards_desc" => "Ekleme, değiştirme, silme ve arama.", - "home" => "Giriş", - "home_desc" => "Menü listesi.", - "item_kits" => "Ürün Setleri", - "item_kits_desc" => "Ekleme, değiştirme, silme ve arama.", - "items" => "Ürünler", - "items_desc" => "Ekleme, değiştirme, silme ve arama.", - "messages" => "Messages", - "messages_desc" => "Send Messages to Customers, Suppliers, Employees et al.", - "migrate" => "Göç", - "migrate_desc" => "Database güncelleme.", - "office" => "Yönetim", - "office_desc" => "Yönetim modülleri.", - "receivings" => "Alımlar", - "receivings_desc" => "Alım işlemleri.", - "reports" => "Raporlar", - "reports_desc" => "Raporları görme.", - "sales" => "Satış", - "sales_desc" => "Satış ve iade.", - "suppliers" => "Sağlayıcılar", - "suppliers_desc" => "Ekleme, değiştirme, silme ve arama.", - "taxes" => "Vergiler", - "taxes_desc" => "Vergileri düzenle.", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "Öznitelikler", + "attributes_desc" => "Ekleme, Güncelleme, Silme ve Arama özellikleri.", + "both" => "Her ikisi de", + "cashups" => "Cash ups", + "cashups_desc" => "Cashups, Güncelleme, Silme ve Arama.", + "config" => "Yapılandırma", + "config_desc" => "Yapılandırma bilgisi görme ve düzenleme.", + "customers" => "Müşteriler", + "customers_desc" => "Ekleme, değiştirme, silme ve arama.", + "employees" => "Personeller", + "employees_desc" => "Ekleme, değiştirme, silme ve arama.", + "expenses" => "Giderler", + "expenses_categories" => "Gider Kategorisi", + "expenses_categories_desc" => "Ekleme, değiştirme, silme.", + "expenses_desc" => "Ekleme, değiştirme, silme ve arama.", + "giftcards" => "Hediye Çekleri", + "giftcards_desc" => "Ekleme, değiştirme, silme ve arama.", + "home" => "Giriş", + "home_desc" => "Menü listesi.", + "item_kits" => "Ürün Setleri", + "item_kits_desc" => "Ekleme, değiştirme, silme ve arama.", + "items" => "Ürünler", + "items_desc" => "Ekleme, değiştirme, silme ve arama.", + "messages" => "Messages", + "messages_desc" => "Send Messages to Customers, Suppliers, Employees et al.", + "migrate" => "Göç", + "migrate_desc" => "Database güncelleme.", + "office" => "Yönetim", + "office_desc" => "Yönetim modülleri.", + "receivings" => "Alımlar", + "receivings_desc" => "Alım işlemleri.", + "reports" => "Raporlar", + "reports_desc" => "Raporları görme.", + "sales" => "Satış", + "sales_desc" => "Satış ve iade.", + "suppliers" => "Sağlayıcılar", + "suppliers_desc" => "Ekleme, değiştirme, silme ve arama.", + "taxes" => "Vergiler", + "taxes_desc" => "Vergileri düzenle.", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/tr/Receivings.php b/app/Language/tr/Receivings.php index f30efae2b..f266e655a 100644 --- a/app/Language/tr/Receivings.php +++ b/app/Language/tr/Receivings.php @@ -1,58 +1,58 @@ "", - "cancel_receiving" => "İptal", - "cannot_be_deleted" => "Alma (lar) silinemedi.", - "comments" => "Yorumlar", - "complete_receiving" => "Tamamla", - "confirm_cancel_receiving" => "Bu alımı iptal etmek istiyor musunuz? Tüm ürünler çıkarılacak.", - "confirm_delete" => "Bu alıcıyı silmek istediğinize emin misiniz? Bu işlem geri alınamaz.", - "confirm_finish_receiving" => "Alımı tamamlamak istediğinize emin misiniz? İşlem geri alınamaz.", - "confirm_restore" => "", - "cost" => "Ücret", - "daily" => "", - "date" => "Alma tarihi", - "date_required" => "Doğru bir tarih girilmelidir.", - "date_type" => "Tarih zorunlu bir alandır.", - "delete_entire_sale" => "Satışın tamamını sil", - "discount" => "İndirim %", - "edit" => "Düzenle", - "edit_sale" => "Alımı Düzenle", - "employee" => "Personel", - "error_editing_item" => "Ürün düzenleme hatası.", - "error_requisition" => "Ürün aynı yere taşınamaz.", - "find_or_scan_item" => "Ürün Bul/Oku", - "find_or_scan_item_or_receipt" => "Ürün yada Fiş Bul/Oku", - "id" => "Alım No", - "item_name" => "Ürün Adı", - "mode" => "Alım Türü", - "new_supplier" => "Yeni Sağlayıcı", - "one_or_multiple" => "alıcı (lar)", - "print_after_sale" => "Satıştan sonra yazdır", - "quantity" => "Adet", - "receipt" => "Alım Fişi", - "receipt_number" => "Kabul, alma #", - "receiving" => "Alım", - "reference" => "Referans", - "register" => "Ürün Alımları", - "requisition" => "Talepler", - "return" => "İade", - "select_supplier" => "Sağlayıcı Seç (İsteğe Bağlı)", - "ship_pack" => "Kargo paketi", - "start_typing_supplier_name" => "Sağlayıcı Adı...", - "stock" => "Stok", - "stock_destination" => "Stok hedefi", - "stock_locaiton" => "Stok yeri", - "stock_source" => "Stok kaynağı", - "successfully_deleted" => "Başarıyla sildiniz", - "successfully_updated" => "Alım başarıyla güncellendi", - "supplier" => "Sağlayıcı", - "supplier_address" => "Adres", - "supplier_email" => "E-posta", - "supplier_location" => "Yer", - "total" => "Toplam", - "transaction_failed" => "Alım İşlemi Hatası.", - "unable_to_add_item" => "Ürünler alıma eklenemedi.", - "unsuccessfully_updated" => "Alım güncellenemedi.", - "update" => "Düzenle", + "amount_due" => "", + "cancel_receiving" => "İptal", + "cannot_be_deleted" => "Alma (lar) silinemedi.", + "comments" => "Yorumlar", + "complete_receiving" => "Tamamla", + "confirm_cancel_receiving" => "Bu alımı iptal etmek istiyor musunuz? Tüm ürünler çıkarılacak.", + "confirm_delete" => "Bu alıcıyı silmek istediğinize emin misiniz? Bu işlem geri alınamaz.", + "confirm_finish_receiving" => "Alımı tamamlamak istediğinize emin misiniz? İşlem geri alınamaz.", + "confirm_restore" => "", + "cost" => "Ücret", + "daily" => "", + "date" => "Alma tarihi", + "date_required" => "Doğru bir tarih girilmelidir.", + "date_type" => "Tarih zorunlu bir alandır.", + "delete_entire_sale" => "Satışın tamamını sil", + "discount" => "İndirim %", + "edit" => "Düzenle", + "edit_sale" => "Alımı Düzenle", + "employee" => "Personel", + "error_editing_item" => "Ürün düzenleme hatası.", + "error_requisition" => "Ürün aynı yere taşınamaz.", + "find_or_scan_item" => "Ürün Bul/Oku", + "find_or_scan_item_or_receipt" => "Ürün yada Fiş Bul/Oku", + "id" => "Alım No", + "item_name" => "Ürün Adı", + "mode" => "Alım Türü", + "new_supplier" => "Yeni Sağlayıcı", + "one_or_multiple" => "alıcı (lar)", + "print_after_sale" => "Satıştan sonra yazdır", + "quantity" => "Adet", + "receipt" => "Alım Fişi", + "receipt_number" => "Kabul, alma #", + "receiving" => "Alım", + "reference" => "Referans", + "register" => "Ürün Alımları", + "requisition" => "Talepler", + "return" => "İade", + "select_supplier" => "Sağlayıcı Seç (İsteğe Bağlı)", + "ship_pack" => "Kargo paketi", + "start_typing_supplier_name" => "Sağlayıcı Adı...", + "stock" => "Stok", + "stock_destination" => "Stok hedefi", + "stock_locaiton" => "Stok yeri", + "stock_source" => "Stok kaynağı", + "successfully_deleted" => "Başarıyla sildiniz", + "successfully_updated" => "Alım başarıyla güncellendi", + "supplier" => "Sağlayıcı", + "supplier_address" => "Adres", + "supplier_email" => "E-posta", + "supplier_location" => "Yer", + "total" => "Toplam", + "transaction_failed" => "Alım İşlemi Hatası.", + "unable_to_add_item" => "Ürünler alıma eklenemedi.", + "unsuccessfully_updated" => "Alım güncellenemedi.", + "update" => "Düzenle", ]; diff --git a/app/Language/tr/Reports.php b/app/Language/tr/Reports.php index 18d216650..91baad9ba 100644 --- a/app/Language/tr/Reports.php +++ b/app/Language/tr/Reports.php @@ -1,148 +1,148 @@ "Tümü", - "authority" => "Yetki", - "canceled" => "İptal edildi", - "categories" => "Kategoriler", - "categories_summary_report" => "Kategori Özet Raporu", - "category" => "Kategori", - "code_canceled" => "İptal", - "code_invoice" => "Fatura", - "code_pos" => "POS", - "code_quote" => "Fiyat", - "code_return" => "Geri", - "code_type" => "Tip", - "code_work_order" => "İş Emri", - "comments" => "Yorumlar", - "commission" => "", - "complete" => "Tamamlanan satışlar", - "completed_sales" => "Satış tamamlandı", - "confirm_delete" => "Seçili kayıtları silmek istediğinizden emin misiniz?", - "confirm_restore" => "Seçili kayıtları onarmak istediğinizden emin misiniz?", - "cost" => "Maliyet", - "cost_price" => "Maliyet Fiyatı", - "count" => "Sayı", - "customer" => "Müşteri", - "customers" => "Müşteriler", - "customers_summary_report" => "Müşteri Özet Raporu", - "date" => "Tarih", - "date_range" => "Tarih Aralığı", - "description" => "Tanım", - "detailed_receivings_report" => "Detaylı Alım Raporu", - "detailed_receivings_report_input" => "", - "detailed_reports" => "Detaylı Raporlar", - "detailed_requisition_report" => "", - "detailed_sales_report" => "Detaylı Satış Raporu", - "discount" => "İndirim", - "discount_fixed" => "Sabit İndirim", - "discount_percent" => "İndirim Yüzdesi", - "discount_type" => "İndirim türü", - "discounts" => "İndirimler", - "discounts_summary_report" => "İndirim Özet Raporu", - "earned" => "Kazanılan Puanlar", - "employee" => "Personel", - "employees" => "Personeller", - "employees_summary_report" => "Personel Özet Raporu", - "expenses" => "Giderler", - "expenses_amount" => "Miktar", - "expenses_categories" => "Giderler", - "expenses_categories_summary_report" => "Giderler Kategorisi Özet Raporu", - "expenses_category" => "Kategorisi", - "expenses_payment_amount" => "", - "expenses_tax_amount" => "Vergi", - "expenses_total_amount" => "Toplam Sayı", - "expenses_total_tax_amount" => "Toplam Vergi", - "graphical_reports" => "Grafik Raporlar", - "inventory" => "Stok", - "inventory_low" => "Azalan Stoklar", - "inventory_low_report" => "Azalan Stok Raporu", - "inventory_reports" => "Stok Raporları", - "inventory_summary" => "Stok Özeti", - "inventory_summary_report" => "Stok Özet Raporu", - "item" => "Ürün", - "item_count" => "Filter Stok Habis/Belum Habis/Minus", - "item_name" => "Ürün Adı", - "item_number" => "Ürün Kodu", - "items" => "Ürünler", - "items_purchased" => "Satın Alınan Ürünler", - "items_received" => "Alınan Ürünler", - "items_summary_report" => "Ürün Özet Raporu", - "jurisdiction" => "Yargı", - "low_inventory" => "Düşük Stok", - "low_inventory_report" => "Düşük Stok Raporu", - "low_sell_quantity" => "Düşük satış adet", - "more_than_zero" => "Sıfırdan fazla", - "name" => "İsim", - "no_reports_to_display" => "Gösterecek Ürün Yok.", - "payment_type" => "Ödeme Türü", - "payments" => "Ödemeler", - "payments_summary_report" => "Ödeme Özet Raporu", - "profit" => "Kâr", - "quantity" => "Adet", - "quantity_purchased" => "Satın Alınan Adet", - "quotes" => "Alıntı", - "received_by" => "Alım Yapan", - "receiving_id" => "Alım No", - "receiving_type" => "Alım Türü", - "receivings" => "Alımlar", - "reorder_level" => "Düşük Stok", - "report" => "Rapor", - "report_input" => "Rapor Girdisi", - "reports" => "Raporlar", - "requisition" => "", - "requisition_by" => "", - "requisition_id" => "", - "requisition_item" => "", - "requisition_item_quantity" => "", - "requisition_related_item" => "", - "requisition_related_item_total_quantity" => "", - "requisition_related_item_unit_quantity" => "", - "requisitions" => "Talepler", - "returns" => "İadeler", - "revenue" => "Kazanç", - "sale_id" => "Satış No", - "sale_type" => "Satış Türü", - "sales" => "Satış", - "sales_amount" => "Satış tutarı", - "sales_summary_report" => "Satış Özet Raporu", - "sales_taxes" => "Satış vergileri", - "sales_taxes_summary_report" => "Satış Vergileri Özet Raporu", - "serial_number" => "Seri No", - "service_charge" => "", - "sold_by" => "Satışı Yapan", - "sold_items" => "", - "sold_to" => "Satış Yapılan", - "stock_location" => "Stok Yeri", - "sub_total_value" => "Ara Toplam", - "subtotal" => "Ara Toplam", - "summary_reports" => "Özet Raporları", - "supplied_by" => "Sağlayıcı", - "supplier" => "Sağlayıcı", - "suppliers" => "Sağlayıcılar", - "suppliers_summary_report" => "Sağlayıcı Özet Raporu", - "tax" => "Vergi", - "tax_category" => "Vergi Kategorisi", - "tax_name" => "", - "tax_percent" => "Vergi Oranı", - "tax_rate" => "Vergi oranı", - "taxes" => "Vergiler", - "taxes_summary_report" => "Vergi Özet Raporu", - "total" => "Toplam", - "total_inventory_value" => "Toplam Stok Değeri", - "total_low_sell_quantity" => "Toplam Düşük Satış Miktarı", - "total_quantity" => "Toplam miktar", - "total_retail" => "Toplam Fatura Perakende Değeri", - "trans_amount" => "İşlem tutarı", - "trans_due" => "Bakiye", - "trans_group" => "İşlem Grubu", - "trans_nopay_sales" => "Ödemesiz satış", - "trans_payments" => "Ödemeler", - "trans_refunded" => "Geri Ödendi", - "trans_sales" => "Satışlar", - "trans_type" => "Satış Türü", - "type" => "Tür", - "unit_price" => "Satış Fiyatı", - "used" => "Kullanılan Puanlar", - "work_orders" => "İş emirleri", - "zero_and_less" => "Sıfır ve sıfırdan az", + "all" => "Tümü", + "authority" => "Yetki", + "canceled" => "İptal edildi", + "categories" => "Kategoriler", + "categories_summary_report" => "Kategori Özet Raporu", + "category" => "Kategori", + "code_canceled" => "İptal", + "code_invoice" => "Fatura", + "code_pos" => "POS", + "code_quote" => "Fiyat", + "code_return" => "Geri", + "code_type" => "Tip", + "code_work_order" => "İş Emri", + "comments" => "Yorumlar", + "commission" => "", + "complete" => "Tamamlanan satışlar", + "completed_sales" => "Satış tamamlandı", + "confirm_delete" => "Seçili kayıtları silmek istediğinizden emin misiniz?", + "confirm_restore" => "Seçili kayıtları onarmak istediğinizden emin misiniz?", + "cost" => "Maliyet", + "cost_price" => "Maliyet Fiyatı", + "count" => "Sayı", + "customer" => "Müşteri", + "customers" => "Müşteriler", + "customers_summary_report" => "Müşteri Özet Raporu", + "date" => "Tarih", + "date_range" => "Tarih Aralığı", + "description" => "Tanım", + "detailed_receivings_report" => "Detaylı Alım Raporu", + "detailed_receivings_report_input" => "", + "detailed_reports" => "Detaylı Raporlar", + "detailed_requisition_report" => "", + "detailed_sales_report" => "Detaylı Satış Raporu", + "discount" => "İndirim", + "discount_fixed" => "Sabit İndirim", + "discount_percent" => "İndirim Yüzdesi", + "discount_type" => "İndirim türü", + "discounts" => "İndirimler", + "discounts_summary_report" => "İndirim Özet Raporu", + "earned" => "Kazanılan Puanlar", + "employee" => "Personel", + "employees" => "Personeller", + "employees_summary_report" => "Personel Özet Raporu", + "expenses" => "Giderler", + "expenses_amount" => "Miktar", + "expenses_categories" => "Giderler", + "expenses_categories_summary_report" => "Giderler Kategorisi Özet Raporu", + "expenses_category" => "Kategorisi", + "expenses_payment_amount" => "", + "expenses_tax_amount" => "Vergi", + "expenses_total_amount" => "Toplam Sayı", + "expenses_total_tax_amount" => "Toplam Vergi", + "graphical_reports" => "Grafik Raporlar", + "inventory" => "Stok", + "inventory_low" => "Azalan Stoklar", + "inventory_low_report" => "Azalan Stok Raporu", + "inventory_reports" => "Stok Raporları", + "inventory_summary" => "Stok Özeti", + "inventory_summary_report" => "Stok Özet Raporu", + "item" => "Ürün", + "item_count" => "Filter Stok Habis/Belum Habis/Minus", + "item_name" => "Ürün Adı", + "item_number" => "Ürün Kodu", + "items" => "Ürünler", + "items_purchased" => "Satın Alınan Ürünler", + "items_received" => "Alınan Ürünler", + "items_summary_report" => "Ürün Özet Raporu", + "jurisdiction" => "Yargı", + "low_inventory" => "Düşük Stok", + "low_inventory_report" => "Düşük Stok Raporu", + "low_sell_quantity" => "Düşük satış adet", + "more_than_zero" => "Sıfırdan fazla", + "name" => "İsim", + "no_reports_to_display" => "Gösterecek Ürün Yok.", + "payment_type" => "Ödeme Türü", + "payments" => "Ödemeler", + "payments_summary_report" => "Ödeme Özet Raporu", + "profit" => "Kâr", + "quantity" => "Adet", + "quantity_purchased" => "Satın Alınan Adet", + "quotes" => "Alıntı", + "received_by" => "Alım Yapan", + "receiving_id" => "Alım No", + "receiving_type" => "Alım Türü", + "receivings" => "Alımlar", + "reorder_level" => "Düşük Stok", + "report" => "Rapor", + "report_input" => "Rapor Girdisi", + "reports" => "Raporlar", + "requisition" => "", + "requisition_by" => "", + "requisition_id" => "", + "requisition_item" => "", + "requisition_item_quantity" => "", + "requisition_related_item" => "", + "requisition_related_item_total_quantity" => "", + "requisition_related_item_unit_quantity" => "", + "requisitions" => "Talepler", + "returns" => "İadeler", + "revenue" => "Kazanç", + "sale_id" => "Satış No", + "sale_type" => "Satış Türü", + "sales" => "Satış", + "sales_amount" => "Satış tutarı", + "sales_summary_report" => "Satış Özet Raporu", + "sales_taxes" => "Satış vergileri", + "sales_taxes_summary_report" => "Satış Vergileri Özet Raporu", + "serial_number" => "Seri No", + "service_charge" => "", + "sold_by" => "Satışı Yapan", + "sold_items" => "", + "sold_to" => "Satış Yapılan", + "stock_location" => "Stok Yeri", + "sub_total_value" => "Ara Toplam", + "subtotal" => "Ara Toplam", + "summary_reports" => "Özet Raporları", + "supplied_by" => "Sağlayıcı", + "supplier" => "Sağlayıcı", + "suppliers" => "Sağlayıcılar", + "suppliers_summary_report" => "Sağlayıcı Özet Raporu", + "tax" => "Vergi", + "tax_category" => "Vergi Kategorisi", + "tax_name" => "", + "tax_percent" => "Vergi Oranı", + "tax_rate" => "Vergi oranı", + "taxes" => "Vergiler", + "taxes_summary_report" => "Vergi Özet Raporu", + "total" => "Toplam", + "total_inventory_value" => "Toplam Stok Değeri", + "total_low_sell_quantity" => "Toplam Düşük Satış Miktarı", + "total_quantity" => "Toplam miktar", + "total_retail" => "Toplam Fatura Perakende Değeri", + "trans_amount" => "İşlem tutarı", + "trans_due" => "Bakiye", + "trans_group" => "İşlem Grubu", + "trans_nopay_sales" => "Ödemesiz satış", + "trans_payments" => "Ödemeler", + "trans_refunded" => "Geri Ödendi", + "trans_sales" => "Satışlar", + "trans_type" => "Satış Türü", + "type" => "Tür", + "unit_price" => "Satış Fiyatı", + "used" => "Kullanılan Puanlar", + "work_orders" => "İş emirleri", + "zero_and_less" => "Sıfır ve sıfırdan az", ]; diff --git a/app/Language/tr/Sales.php b/app/Language/tr/Sales.php index 1d5d2856c..ee1e6e2c7 100644 --- a/app/Language/tr/Sales.php +++ b/app/Language/tr/Sales.php @@ -1,224 +1,224 @@ "Var Olan Puanlar", - "rewards_package" => "Ödüller", - "rewards_remaining_balance" => "Ödül Puanı kalan değeri ", - "account_number" => "Hesap Numarası", - "add_payment" => "Ödeme Ekle", - "amount_due" => "Kalan Ödeme", - "amount_tendered" => "Ödenen Tutar", - "authorized_signature" => "Yetkili İmza", - "cancel_sale" => "İptal Et", - "cash" => "Nakit", - "cash_1" => "", - "cash_2" => "", - "cash_3" => "", - "cash_4" => "", - "cash_adjustment" => "Nakit Düzeltimi", - "cash_deposit" => "Nakit Depozito", - "cash_filter" => "Nakit", - "change_due" => "Para Üstü", - "change_price" => "Satış Fiyatını Değiştir", - "check" => "Çek", - "check_balance" => "Çek bakiyesi", - "check_filter" => "Çek", - "close" => "", - "comment" => "Yorum", - "comments" => "Yorumlar", - "company_name" => "", - "complete" => "", - "complete_sale" => "Satışı Tamamla", - "confirm_cancel_sale" => "Bu satışı temizlemek istiyor musunuz? Tüm ürünler temizlenecek.", - "confirm_delete" => "Seçilen satışları silmek istediğinize emin misiniz?", - "confirm_restore" => "Seçilen satışları kurtarmak istediğinize emin misiniz?", - "credit" => "Kredi Kartı", - "credit_deposit" => "Kredi Depozito", - "credit_filter" => "Kredi Kartı", - "current_table" => "", - "customer" => "Müşteri", - "customer_address" => "Customer Address", - "customer_discount" => "İskonto", - "customer_email" => "E-Posta", - "customer_location" => "Konum", - "customer_mailchimp_status" => "MailChimp durumu", - "customer_optional" => "(Geciken Ödemeler İçin Gerekli)", - "customer_required" => "(Gerekli)", - "customer_total" => "Total", - "customer_total_spent" => "", - "daily_sales" => "", - "date" => "Satış Tarihi", - "date_range" => "Tarih Aralığı", - "date_required" => "Doğru tarih girilmelidir.", - "date_type" => "Tarih alanı zorunludur.", - "debit" => "Banka Kartı", - "debit_filter" => "", - "delete" => "Silmeye izin ver", - "delete_confirmation" => "Satışı silmek istediğinize emin misiniz, bu işlem geri alınamaz.", - "delete_entire_sale" => "Satışın tamamını sil", - "delete_successful" => "Satışı sildiniz.", - "delete_unsuccessful" => "Satışı silemediniz.", - "description_abbrv" => "Tanım.", - "discard" => "İptal et", - "discard_quote" => "", - "discount" => "İsko", - "discount_included" => "% İskonto", - "discount_short" => "%", - "due" => "Vade", - "due_filter" => "Vade", - "edit" => "Düzenle", - "edit_item" => "Düzenle", - "edit_sale" => "Satışı Düzenle", - "email_receipt" => "Fişi E-Postala", - "employee" => "Personel", - "entry" => "Girdi", - "error_editing_item" => "Ürün düzenleme hatası", - "find_or_scan_item" => "Ürün Bul/Oku", - "find_or_scan_item_or_receipt" => "Ürün yada Fiş Bul/Oku", - "giftcard" => "Hediye Çeki", - "giftcard_balance" => "Hediye Çeki Bakiyesi", - "giftcard_filter" => "", - "giftcard_number" => "Hediye Çeki No", - "group_by_category" => "Kategoriye göre gurupla", - "group_by_type" => "Tipe göre gurupla", - "hsn" => "HSN", - "id" => "Satış No", - "include_prices" => "Fiyat Dahil?", - "invoice" => "Fatura", - "invoice_confirm" => "Bu fatura şuna gönderilecek", - "invoice_enable" => "Fatura Numarası", - "invoice_filter" => "Faturalar", - "invoice_no_email" => "Bu müşterinin geçerli e-posta adresi yok.", - "invoice_number" => "Fatura #", - "invoice_number_duplicate" => "Fatura Numarası {0} eşsiz olmalıdır.", - "invoice_sent" => "Fatura gönderildi:", - "invoice_total" => "Fatura Toplamı", - "invoice_type_custom_invoice" => "Özel Fatura (custom_invoice.php)", - "invoice_type_custom_tax_invoice" => "Özel Vergi Fatura (custom_tax_invoice.php)", - "invoice_type_invoice" => "Fatura (invoice.php)", - "invoice_type_tax_invoice" => "Vergi Faturası (tax_invoice.php)", - "invoice_unsent" => "Fatura gönderilemedi", - "invoice_update" => "Yeniden Say", - "item_insufficient_of_stock" => "Ürün Stoğu Yetersiz.", - "item_name" => "Ürün Adı", - "item_number" => "Ürün No", - "item_out_of_stock" => "Ürün stokta yok.", - "key_browser" => "", - "key_cancel" => "Cancels Current Quote/Invoice/Sale", - "key_customer_search" => "Customer Search", - "key_finish_quote" => "Finish Quote/Invoice witdout payment", - "key_finish_sale" => "Add Payment and Complete Invoice/Sale", - "key_full" => "", - "key_function" => "Function", - "key_help" => "Shortcuts", - "key_help_modal" => "Open Shortcuts Window", - "key_in" => "", - "key_item_search" => "Item Search", - "key_out" => "", - "key_payment" => "Add Payment", - "key_print" => "", - "key_restore" => "", - "key_search" => "", - "key_suspend" => "Suspend Current Sale", - "key_suspended" => "Show Suspended Sales", - "key_system" => "", - "key_tendered" => "Edit Amount Tendered", - "key_title" => "Sales Keyboard Shortcuts", - "mc" => "", - "mode" => "Kayıt Kipi", - "must_enter_numeric" => "Ödenen Tutar sayı olmalıdır.", - "must_enter_numeric_giftcard" => "Hediye Çeki Numarası sayı olmalıdır.", - "new_customer" => "Yeni Müşteri", - "new_item" => "Yeni Ürün", - "no_description" => "Açıklama yok", - "no_filter" => "Tümü", - "no_items_in_cart" => "Sepette ürün yok.", - "no_sales_to_display" => "Gösterilecek satış yok.", - "none_selected" => "Silinecek satış seçmediniz.", - "nontaxed_ind" => " ", - "not_authorized" => "Bu işlem için yetkisiz.", - "one_or_multiple" => "Satış(lar)", - "payment" => "Ödeme Türü", - "payment_amount" => "Tutar", - "payment_not_cover_total" => "Ödemeler toplam tutarı karşılamıyor.", - "payment_type" => "Tür", - "payments" => "", - "payments_total" => "Ödemeler Toplamı", - "price" => "Fiyat", - "print_after_sale" => "Satıştan sonra yazdır", - "quantity" => "Adet", - "quantity_less_than_reorder_level" => "Dikkat: İlgili Öge için İstenen Stok, Yeniden Düzenleme Düzeyinin altında.", - "quantity_less_than_zero" => "Dikkat: İstenen Stok yetersiz. Satışı sürdürebilirsiniz ama stoğunuzu gözden geçirin.", - "quantity_of_items" => "{0} Ögenin Miktarı", - "quote" => "Teklif", - "quote_number" => "Teklif Sayısı", - "quote_number_duplicate" => "Teklif Sayısı eşsiz olmalıdır.", - "quote_sent" => "Teklif şuna gönderildi:", - "quote_unsent" => "Teklif şuna gönderilemedi:", - "receipt" => "Satış Fişi", - "receipt_no_email" => "Müşteriye ait geçerli e-posta adresi yok.", - "receipt_number" => "Fiş #", - "receipt_sent" => "Fiş gönderildi:", - "receipt_unsent" => "Fiş gönderilemedi:", - "refund" => "Geri Ödeme Türü", - "register" => "Satış Kaydı", - "remove_customer" => "Müşteriyi Kaldır", - "remove_discount" => "", - "return" => "İade", - "rewards" => "Ödül Puanları", - "rewards_balance" => "Ödül Puanı Bakiyesi", - "sale" => "Satış", - "sale_by_invoice" => "Faturalı Satış", - "sale_for_customer" => "Müşteri:", - "sale_time" => "Saat", - "sales_tax" => "Satış Vergisi", - "sales_total" => "", - "select_customer" => "Müşteri Seç", - "send_invoice" => "Fatura Gönder", - "send_quote" => "Teklif Gönder", - "send_receipt" => "Fiş Gönder", - "send_work_order" => "İş Emri Gönder", - "serial" => "Seri", - "service_charge" => "", - "show_due" => "", - "show_invoice" => "Faturayı Göster", - "show_receipt" => "Fişi Göster", - "start_typing_customer_name" => "Müşteri ayrıntılarını yazın...", - "start_typing_item_name" => "Ürün adı yazın veya barkod taratın...", - "stock" => "Stok", - "stock_location" => "Stok yeri", - "sub_total" => "Ara Toplam", - "successfully_deleted" => "Satış başarıyla silindi", - "successfully_restored" => "Satış başarıyla kurtarıldı", - "successfully_suspended_sale" => "Satış başarıyla askıya alındı.", - "successfully_updated" => "Satış başarıyla güncellendi.", - "suspend_sale" => "Askıya Al", - "suspended_doc_id" => "Belge", - "suspended_sale_id" => "Kimlik", - "suspended_sales" => "Askıdaki Satışlar", - "table" => "Masa", - "takings" => "Günlük Satış", - "tax" => "Vergi", - "tax_id" => "Vergi Numarası", - "tax_invoice" => "Vergi Faturası", - "tax_percent" => "Vergi %", - "taxed_ind" => "V", - "total" => "Toplam", - "total_tax_exclusive" => "Vergi hariç", - "transaction_failed" => "Satış işlemi hatası.", - "unable_to_add_item" => "Ürün satışa eklenemedi", - "unsuccessfully_deleted" => "Satış silinemedi.", - "unsuccessfully_restored" => "Satış onarılamadı.", - "unsuccessfully_suspended_sale" => "Satış askıya alınamadı.", - "unsuccessfully_updated" => "Satış düzenlenemedi.", - "unsuspend" => "Satışa Al", - "unsuspend_and_delete" => "Eylem", - "update" => "Güncelle", - "upi" => "UPI", - "visa" => "", - "wholesale" => "", - "work_order" => "İş Emri", - "work_order_number" => "İş Emri Numarası", - "work_order_number_duplicate" => "İş Emri Numarası diğerinden farklı olmalı.", - "work_order_sent" => "İş Emri gönderildi:", - "work_order_unsent" => "İş Emri gönderilemedi:", + "customers_available_points" => "Var Olan Puanlar", + "rewards_package" => "Ödüller", + "rewards_remaining_balance" => "Ödül Puanı kalan değeri ", + "account_number" => "Hesap Numarası", + "add_payment" => "Ödeme Ekle", + "amount_due" => "Kalan Ödeme", + "amount_tendered" => "Ödenen Tutar", + "authorized_signature" => "Yetkili İmza", + "cancel_sale" => "İptal Et", + "cash" => "Nakit", + "cash_1" => "", + "cash_2" => "", + "cash_3" => "", + "cash_4" => "", + "cash_adjustment" => "Nakit Düzeltimi", + "cash_deposit" => "Nakit Depozito", + "cash_filter" => "Nakit", + "change_due" => "Para Üstü", + "change_price" => "Satış Fiyatını Değiştir", + "check" => "Çek", + "check_balance" => "Çek bakiyesi", + "check_filter" => "Çek", + "close" => "", + "comment" => "Yorum", + "comments" => "Yorumlar", + "company_name" => "", + "complete" => "", + "complete_sale" => "Satışı Tamamla", + "confirm_cancel_sale" => "Bu satışı temizlemek istiyor musunuz? Tüm ürünler temizlenecek.", + "confirm_delete" => "Seçilen satışları silmek istediğinize emin misiniz?", + "confirm_restore" => "Seçilen satışları kurtarmak istediğinize emin misiniz?", + "credit" => "Kredi Kartı", + "credit_deposit" => "Kredi Depozito", + "credit_filter" => "Kredi Kartı", + "current_table" => "", + "customer" => "Müşteri", + "customer_address" => "Customer Address", + "customer_discount" => "İskonto", + "customer_email" => "E-Posta", + "customer_location" => "Konum", + "customer_mailchimp_status" => "MailChimp durumu", + "customer_optional" => "(Geciken Ödemeler İçin Gerekli)", + "customer_required" => "(Gerekli)", + "customer_total" => "Total", + "customer_total_spent" => "", + "daily_sales" => "", + "date" => "Satış Tarihi", + "date_range" => "Tarih Aralığı", + "date_required" => "Doğru tarih girilmelidir.", + "date_type" => "Tarih alanı zorunludur.", + "debit" => "Banka Kartı", + "debit_filter" => "", + "delete" => "Silmeye izin ver", + "delete_confirmation" => "Satışı silmek istediğinize emin misiniz, bu işlem geri alınamaz.", + "delete_entire_sale" => "Satışın tamamını sil", + "delete_successful" => "Satışı sildiniz.", + "delete_unsuccessful" => "Satışı silemediniz.", + "description_abbrv" => "Tanım.", + "discard" => "İptal et", + "discard_quote" => "", + "discount" => "İsko", + "discount_included" => "% İskonto", + "discount_short" => "%", + "due" => "Vade", + "due_filter" => "Vade", + "edit" => "Düzenle", + "edit_item" => "Düzenle", + "edit_sale" => "Satışı Düzenle", + "email_receipt" => "Fişi E-Postala", + "employee" => "Personel", + "entry" => "Girdi", + "error_editing_item" => "Ürün düzenleme hatası", + "find_or_scan_item" => "Ürün Bul/Oku", + "find_or_scan_item_or_receipt" => "Ürün yada Fiş Bul/Oku", + "giftcard" => "Hediye Çeki", + "giftcard_balance" => "Hediye Çeki Bakiyesi", + "giftcard_filter" => "", + "giftcard_number" => "Hediye Çeki No", + "group_by_category" => "Kategoriye göre gurupla", + "group_by_type" => "Tipe göre gurupla", + "hsn" => "HSN", + "id" => "Satış No", + "include_prices" => "Fiyat Dahil?", + "invoice" => "Fatura", + "invoice_confirm" => "Bu fatura şuna gönderilecek", + "invoice_enable" => "Fatura Numarası", + "invoice_filter" => "Faturalar", + "invoice_no_email" => "Bu müşterinin geçerli e-posta adresi yok.", + "invoice_number" => "Fatura #", + "invoice_number_duplicate" => "Fatura Numarası {0} eşsiz olmalıdır.", + "invoice_sent" => "Fatura gönderildi:", + "invoice_total" => "Fatura Toplamı", + "invoice_type_custom_invoice" => "Özel Fatura (custom_invoice.php)", + "invoice_type_custom_tax_invoice" => "Özel Vergi Fatura (custom_tax_invoice.php)", + "invoice_type_invoice" => "Fatura (invoice.php)", + "invoice_type_tax_invoice" => "Vergi Faturası (tax_invoice.php)", + "invoice_unsent" => "Fatura gönderilemedi", + "invoice_update" => "Yeniden Say", + "item_insufficient_of_stock" => "Ürün Stoğu Yetersiz.", + "item_name" => "Ürün Adı", + "item_number" => "Ürün No", + "item_out_of_stock" => "Ürün stokta yok.", + "key_browser" => "", + "key_cancel" => "Cancels Current Quote/Invoice/Sale", + "key_customer_search" => "Customer Search", + "key_finish_quote" => "Finish Quote/Invoice witdout payment", + "key_finish_sale" => "Add Payment and Complete Invoice/Sale", + "key_full" => "", + "key_function" => "Function", + "key_help" => "Shortcuts", + "key_help_modal" => "Open Shortcuts Window", + "key_in" => "", + "key_item_search" => "Item Search", + "key_out" => "", + "key_payment" => "Add Payment", + "key_print" => "", + "key_restore" => "", + "key_search" => "", + "key_suspend" => "Suspend Current Sale", + "key_suspended" => "Show Suspended Sales", + "key_system" => "", + "key_tendered" => "Edit Amount Tendered", + "key_title" => "Sales Keyboard Shortcuts", + "mc" => "", + "mode" => "Kayıt Kipi", + "must_enter_numeric" => "Ödenen Tutar sayı olmalıdır.", + "must_enter_numeric_giftcard" => "Hediye Çeki Numarası sayı olmalıdır.", + "new_customer" => "Yeni Müşteri", + "new_item" => "Yeni Ürün", + "no_description" => "Açıklama yok", + "no_filter" => "Tümü", + "no_items_in_cart" => "Sepette ürün yok.", + "no_sales_to_display" => "Gösterilecek satış yok.", + "none_selected" => "Silinecek satış seçmediniz.", + "nontaxed_ind" => " ", + "not_authorized" => "Bu işlem için yetkisiz.", + "one_or_multiple" => "Satış(lar)", + "payment" => "Ödeme Türü", + "payment_amount" => "Tutar", + "payment_not_cover_total" => "Ödemeler toplam tutarı karşılamıyor.", + "payment_type" => "Tür", + "payments" => "", + "payments_total" => "Ödemeler Toplamı", + "price" => "Fiyat", + "print_after_sale" => "Satıştan sonra yazdır", + "quantity" => "Adet", + "quantity_less_than_reorder_level" => "Dikkat: İlgili Öge için İstenen Stok, Yeniden Düzenleme Düzeyinin altında.", + "quantity_less_than_zero" => "Dikkat: İstenen Stok yetersiz. Satışı sürdürebilirsiniz ama stoğunuzu gözden geçirin.", + "quantity_of_items" => "{0} Ögenin Miktarı", + "quote" => "Teklif", + "quote_number" => "Teklif Sayısı", + "quote_number_duplicate" => "Teklif Sayısı eşsiz olmalıdır.", + "quote_sent" => "Teklif şuna gönderildi:", + "quote_unsent" => "Teklif şuna gönderilemedi:", + "receipt" => "Satış Fişi", + "receipt_no_email" => "Müşteriye ait geçerli e-posta adresi yok.", + "receipt_number" => "Fiş #", + "receipt_sent" => "Fiş gönderildi:", + "receipt_unsent" => "Fiş gönderilemedi:", + "refund" => "Geri Ödeme Türü", + "register" => "Satış Kaydı", + "remove_customer" => "Müşteriyi Kaldır", + "remove_discount" => "", + "return" => "İade", + "rewards" => "Ödül Puanları", + "rewards_balance" => "Ödül Puanı Bakiyesi", + "sale" => "Satış", + "sale_by_invoice" => "Faturalı Satış", + "sale_for_customer" => "Müşteri:", + "sale_time" => "Saat", + "sales_tax" => "Satış Vergisi", + "sales_total" => "", + "select_customer" => "Müşteri Seç", + "send_invoice" => "Fatura Gönder", + "send_quote" => "Teklif Gönder", + "send_receipt" => "Fiş Gönder", + "send_work_order" => "İş Emri Gönder", + "serial" => "Seri", + "service_charge" => "", + "show_due" => "", + "show_invoice" => "Faturayı Göster", + "show_receipt" => "Fişi Göster", + "start_typing_customer_name" => "Müşteri ayrıntılarını yazın...", + "start_typing_item_name" => "Ürün adı yazın veya barkod taratın...", + "stock" => "Stok", + "stock_location" => "Stok yeri", + "sub_total" => "Ara Toplam", + "successfully_deleted" => "Satış başarıyla silindi", + "successfully_restored" => "Satış başarıyla kurtarıldı", + "successfully_suspended_sale" => "Satış başarıyla askıya alındı.", + "successfully_updated" => "Satış başarıyla güncellendi.", + "suspend_sale" => "Askıya Al", + "suspended_doc_id" => "Belge", + "suspended_sale_id" => "Kimlik", + "suspended_sales" => "Askıdaki Satışlar", + "table" => "Masa", + "takings" => "Günlük Satış", + "tax" => "Vergi", + "tax_id" => "Vergi Numarası", + "tax_invoice" => "Vergi Faturası", + "tax_percent" => "Vergi %", + "taxed_ind" => "V", + "total" => "Toplam", + "total_tax_exclusive" => "Vergi hariç", + "transaction_failed" => "Satış işlemi hatası.", + "unable_to_add_item" => "Ürün satışa eklenemedi", + "unsuccessfully_deleted" => "Satış silinemedi.", + "unsuccessfully_restored" => "Satış onarılamadı.", + "unsuccessfully_suspended_sale" => "Satış askıya alınamadı.", + "unsuccessfully_updated" => "Satış düzenlenemedi.", + "unsuspend" => "Satışa Al", + "unsuspend_and_delete" => "Eylem", + "update" => "Güncelle", + "upi" => "UPI", + "visa" => "", + "wholesale" => "", + "work_order" => "İş Emri", + "work_order_number" => "İş Emri Numarası", + "work_order_number_duplicate" => "İş Emri Numarası diğerinden farklı olmalı.", + "work_order_sent" => "İş Emri gönderildi:", + "work_order_unsent" => "İş Emri gönderilemedi:", ]; diff --git a/app/Language/tr/Suppliers.php b/app/Language/tr/Suppliers.php index d1e951f31..a8e4586f3 100644 --- a/app/Language/tr/Suppliers.php +++ b/app/Language/tr/Suppliers.php @@ -1,24 +1,24 @@ "Hesap No", - "agency_name" => "Ajans Adı", - "cannot_be_deleted" => "Sağlayıcı silinemedi, bazı sağlayıcıların satışı var.", - "category" => "Kategori", - "company_name" => "Şirket Adı", - "company_name_required" => "Şirket Adı zorunlu alandır.", - "confirm_delete" => "Seçili sağlayıcıları silmek istiyor musunuz?", - "confirm_restore" => "Seçili sağlayıcıları onarmak istiyor musunuz?", - "cost" => "Maliyet Tedarikçisi", - "error_adding_updating" => "Sağlayıcı ekleme/düzenleme hatası.", - "goods" => "Mal Tedarikçisi", - "new" => "Yeni Sağlayıcı", - "none_selected" => "Silmek için sağlayıcı seçmediniz.", - "one_or_multiple" => "sağlayıcılar", - "successful_adding" => "Sağlayıcı eklendi", - "successful_deleted" => "Sağlayıcı silindi", - "successful_updating" => "Sağlayıcı güncellendi", - "supplier" => "Sağlayıcı", - "supplier_id" => "Kimlik", - "tax_id" => "Vergi numarası", - "update" => "Sağlayıcıyı Düzenle", + "account_number" => "Hesap No", + "agency_name" => "Ajans Adı", + "cannot_be_deleted" => "Sağlayıcı silinemedi, bazı sağlayıcıların satışı var.", + "category" => "Kategori", + "company_name" => "Şirket Adı", + "company_name_required" => "Şirket Adı zorunlu alandır.", + "confirm_delete" => "Seçili sağlayıcıları silmek istiyor musunuz?", + "confirm_restore" => "Seçili sağlayıcıları onarmak istiyor musunuz?", + "cost" => "Maliyet Tedarikçisi", + "error_adding_updating" => "Sağlayıcı ekleme/düzenleme hatası.", + "goods" => "Mal Tedarikçisi", + "new" => "Yeni Sağlayıcı", + "none_selected" => "Silmek için sağlayıcı seçmediniz.", + "one_or_multiple" => "sağlayıcılar", + "successful_adding" => "Sağlayıcı eklendi", + "successful_deleted" => "Sağlayıcı silindi", + "successful_updating" => "Sağlayıcı güncellendi", + "supplier" => "Sağlayıcı", + "supplier_id" => "Kimlik", + "tax_id" => "Vergi numarası", + "update" => "Sağlayıcıyı Düzenle", ]; diff --git a/app/Language/tr/Taxes.php b/app/Language/tr/Taxes.php index 125797ddd..3a3ef7432 100644 --- a/app/Language/tr/Taxes.php +++ b/app/Language/tr/Taxes.php @@ -1,82 +1,82 @@ "İstisna Ekle", - "cascade" => "Kademeli", - "cascade_sequence" => "Kademeli Sıra", - "city" => "Şehir", - "code" => "Kod", - "confirm_delete" => "Bu Vergi Kodunu silmek istediğinize emin misiniz? Bu eylem geri alınamaz", - "confirm_restore" => "Seçili Vergi Kodlarını geri yüklemek istediğinizden emin misiniz?", - "default_tax_category" => "Öntanımlı Vergi Kategorisi", - "default_tax_rate" => "Öntanımlı Vergi Oranı", - "error_adding_updating" => "Vergi Kodu ekleme ya da güncelleme başarısız oldu", - "group_seq" => "Küme Sırası", - "jurisdiction_name" => "Yetki Adı", - "name" => "Ad", - "new" => "Yeni Vergi Kodu", - "no_taxes" => "", - "no_taxes_to_display" => "Görüntülenecek Vergi Kodu Yok", - "reporting_authority" => "Rapor Makamı", - "round_half_down" => "Yarım Aşağı", - "round_half_even" => "Yarım Çift", - "round_half_odd" => "Yarım Tek", - "round_half_up" => "Yarım Yukarı", - "rounding_code" => "Yuvarlama Kodu", - "sales_tax" => "Satış Vergisi", - "sales_tax_by_invoice" => "Fatura ile Satış Vergisi", - "sequence" => "Sıra", - "state" => "Eyalet", - "successful_deleted" => "Başarıyla sildiniz", - "tax_categories" => "Vergi Kategorileri", - "tax_categories_configuration" => "Vergi Kategorileri Yapılandırması", - "tax_categories_saved_successfully" => "Vergi Kategorileri değişiklikleri kaydedildi", - "tax_categories_saved_unsuccessfully" => "Vergi Kategorileri değişiklikleri kaydedilmedi", - "tax_category" => "Vergi Kategorisi", - "tax_category_code" => "Vergi Kategori Kodu", - "tax_category_duplicate" => "Yinelenen vergi kategorisi", - "tax_category_invalid_chars" => "Vergi kategorisi adında geçersiz karakterler", - "tax_category_name" => "Vergi Kategorisi Adı", - "tax_category_new" => "Yeni Vergi Kategorisi", - "tax_category_required" => "Vergi kategorisi gerekli", - "tax_code" => "Vergi Kodu", - "tax_code_cannot_be_deleted" => "Vergi Kodu silme işlemi başarısız oldu", - "tax_code_duplicate" => "Yinelenen vergi kodu", - "tax_code_invalid_chars" => "Vergi kodunda geçersiz karakterler", - "tax_code_name" => "Vergi Kodu Adı", - "tax_code_required" => "Vergi Kodu zorunlu bir alandır", - "tax_code_successful_deleted" => "Vergi Kodunu başarıyla sildiniz", - "tax_code_successful_updated" => "Başarıyla güncellediniz", - "tax_code_successful_updating" => "Vergi Kodunu başarıyla güncellediniz", - "tax_code_successfully_added" => "Başarıyla eklediniz", - "tax_code_type" => "Vergi Kodu Türü", - "tax_codes" => "Vergi Kodları", - "tax_codes_configuration" => "Vergi Kodları Yapılandırması", - "tax_codes_saved_successfully" => "Vergi Kodu değişiklikleri kaydedildi", - "tax_codes_saved_unsuccessfully" => "Vergi Kodu değişiklikleri kaydedilmedi", - "tax_excluded" => "Vergi hariç", - "tax_group" => "Vergi Kümesi", - "tax_group_not_unique" => "{0} Vergi Kümesi eşsiz değil", - "tax_group_sequence" => "Vergi Kümesi Sırası", - "tax_included" => "Vergi dahil", - "tax_jurisdiction" => "Vergi Yargı Yetkisi", - "tax_jurisdiction_duplicate" => "Yinelenen vergi yetkisi", - "tax_jurisdiction_invalid_chars" => "Yetki adında geçersiz karakterler", - "tax_jurisdiction_required" => "Vergi yargı yetkisi gerekiyor", - "tax_jurisdictions" => "Vergi Yargı Yetkisi", - "tax_jurisdictions_configuration" => "Vergi Yargı Yetkisi Yapılandırması", - "tax_jurisdictions_saved_successfully" => "Vergi Yargı yetkisi değişiklikleri kaydedildi", - "tax_jurisdictions_saved_unsuccessfully" => "Vergi Yargı yetkisi değişiklikleri kaydedilmedi", - "tax_rate" => "Vergi Oranı", - "tax_rate_configuration" => "Vergi Oranı Yapılandırması", - "tax_rate_error_adding_updating" => "Vergi Oranı ekleme veya güncelleme işlemi başarısız oldu", - "tax_rate_numeric" => "Vergi Oranı bir sayı olmalıdır", - "tax_rate_required" => "Vergi Oranı zorunlu bir alandır", - "tax_rate_successful_updated" => "Başarıyla güncellendi", - "tax_rate_successfully_added" => "Başarıyla ekledi", - "tax_rates" => "Vergi Oranları", - "tax_rates_configuration" => "Vergi Oranları Yapılandırması", - "tax_rounding" => "Vergi Yuvarlama", - "tax_type" => "Tür", - "update" => "Vergi Oranını Güncelle", - "vat_tax" => "KDV Vergisi", + "add_exception" => "İstisna Ekle", + "cascade" => "Kademeli", + "cascade_sequence" => "Kademeli Sıra", + "city" => "Şehir", + "code" => "Kod", + "confirm_delete" => "Bu Vergi Kodunu silmek istediğinize emin misiniz? Bu eylem geri alınamaz", + "confirm_restore" => "Seçili Vergi Kodlarını geri yüklemek istediğinizden emin misiniz?", + "default_tax_category" => "Öntanımlı Vergi Kategorisi", + "default_tax_rate" => "Öntanımlı Vergi Oranı", + "error_adding_updating" => "Vergi Kodu ekleme ya da güncelleme başarısız oldu", + "group_seq" => "Küme Sırası", + "jurisdiction_name" => "Yetki Adı", + "name" => "Ad", + "new" => "Yeni Vergi Kodu", + "no_taxes" => "", + "no_taxes_to_display" => "Görüntülenecek Vergi Kodu Yok", + "reporting_authority" => "Rapor Makamı", + "round_half_down" => "Yarım Aşağı", + "round_half_even" => "Yarım Çift", + "round_half_odd" => "Yarım Tek", + "round_half_up" => "Yarım Yukarı", + "rounding_code" => "Yuvarlama Kodu", + "sales_tax" => "Satış Vergisi", + "sales_tax_by_invoice" => "Fatura ile Satış Vergisi", + "sequence" => "Sıra", + "state" => "Eyalet", + "successful_deleted" => "Başarıyla sildiniz", + "tax_categories" => "Vergi Kategorileri", + "tax_categories_configuration" => "Vergi Kategorileri Yapılandırması", + "tax_categories_saved_successfully" => "Vergi Kategorileri değişiklikleri kaydedildi", + "tax_categories_saved_unsuccessfully" => "Vergi Kategorileri değişiklikleri kaydedilmedi", + "tax_category" => "Vergi Kategorisi", + "tax_category_code" => "Vergi Kategori Kodu", + "tax_category_duplicate" => "Yinelenen vergi kategorisi", + "tax_category_invalid_chars" => "Vergi kategorisi adında geçersiz karakterler", + "tax_category_name" => "Vergi Kategorisi Adı", + "tax_category_new" => "Yeni Vergi Kategorisi", + "tax_category_required" => "Vergi kategorisi gerekli", + "tax_code" => "Vergi Kodu", + "tax_code_cannot_be_deleted" => "Vergi Kodu silme işlemi başarısız oldu", + "tax_code_duplicate" => "Yinelenen vergi kodu", + "tax_code_invalid_chars" => "Vergi kodunda geçersiz karakterler", + "tax_code_name" => "Vergi Kodu Adı", + "tax_code_required" => "Vergi Kodu zorunlu bir alandır", + "tax_code_successful_deleted" => "Vergi Kodunu başarıyla sildiniz", + "tax_code_successful_updated" => "Başarıyla güncellediniz", + "tax_code_successful_updating" => "Vergi Kodunu başarıyla güncellediniz", + "tax_code_successfully_added" => "Başarıyla eklediniz", + "tax_code_type" => "Vergi Kodu Türü", + "tax_codes" => "Vergi Kodları", + "tax_codes_configuration" => "Vergi Kodları Yapılandırması", + "tax_codes_saved_successfully" => "Vergi Kodu değişiklikleri kaydedildi", + "tax_codes_saved_unsuccessfully" => "Vergi Kodu değişiklikleri kaydedilmedi", + "tax_excluded" => "Vergi hariç", + "tax_group" => "Vergi Kümesi", + "tax_group_not_unique" => "{0} Vergi Kümesi eşsiz değil", + "tax_group_sequence" => "Vergi Kümesi Sırası", + "tax_included" => "Vergi dahil", + "tax_jurisdiction" => "Vergi Yargı Yetkisi", + "tax_jurisdiction_duplicate" => "Yinelenen vergi yetkisi", + "tax_jurisdiction_invalid_chars" => "Yetki adında geçersiz karakterler", + "tax_jurisdiction_required" => "Vergi yargı yetkisi gerekiyor", + "tax_jurisdictions" => "Vergi Yargı Yetkisi", + "tax_jurisdictions_configuration" => "Vergi Yargı Yetkisi Yapılandırması", + "tax_jurisdictions_saved_successfully" => "Vergi Yargı yetkisi değişiklikleri kaydedildi", + "tax_jurisdictions_saved_unsuccessfully" => "Vergi Yargı yetkisi değişiklikleri kaydedilmedi", + "tax_rate" => "Vergi Oranı", + "tax_rate_configuration" => "Vergi Oranı Yapılandırması", + "tax_rate_error_adding_updating" => "Vergi Oranı ekleme veya güncelleme işlemi başarısız oldu", + "tax_rate_numeric" => "Vergi Oranı bir sayı olmalıdır", + "tax_rate_required" => "Vergi Oranı zorunlu bir alandır", + "tax_rate_successful_updated" => "Başarıyla güncellendi", + "tax_rate_successfully_added" => "Başarıyla ekledi", + "tax_rates" => "Vergi Oranları", + "tax_rates_configuration" => "Vergi Oranları Yapılandırması", + "tax_rounding" => "Vergi Yuvarlama", + "tax_type" => "Tür", + "update" => "Vergi Oranını Güncelle", + "vat_tax" => "KDV Vergisi", ]; diff --git a/app/Language/tr/index.html b/app/Language/tr/index.html index 8bbf860af..53a01fe10 100644 --- a/app/Language/tr/index.html +++ b/app/Language/tr/index.html @@ -1,7 +1,7 @@ - 403 Yasaklı + 403 Yasaklı diff --git a/app/Language/uk/Attributes.php b/app/Language/uk/Attributes.php index 50b3de703..15e1cf4f6 100644 --- a/app/Language/uk/Attributes.php +++ b/app/Language/uk/Attributes.php @@ -1,32 +1,32 @@ "Значення атрибуту не може містити ':' або'|'", - "confirm_delete" => "Ви впевнені, що хочете видалити вибрані атрибут(и)?", - "confirm_restore" => "Ви впевнені, що хочете відновити вибрані атрибут(и)?", - "definition_cannot_be_deleted" => "Не вдалося видалити вибрані атрибут(и)", - "definition_error_adding_updating" => "Атрибут {0} не може бути доданий або оновлений. Будь ласка, перевірте журнал помилок.", - "definition_flags" => "Видимість атрибуту", - "definition_group" => "Група", - "definition_id" => "№", - "definition_name" => "Додати атрибут", - "definition_name_required" => "Назва атрибуту - обов'язкове поле", - "definition_one_or_multiple" => "Атрибут(и)", - "definition_successful_adding" => "Ви успішно додали товар", - "definition_successful_deleted" => "Успішно видалено", - "definition_successful_updating" => "Оновлено успішно", - "definition_type" => "Тип атрибуту", - "definition_type_required" => "Назва атрибуту - обов'язкове поле", - "definition_unit" => "Одиниця виміру", - "definition_values" => "Значення атрибуту", - "new" => "Новий атрибут", - "no_attributes_to_display" => "Немає об'єктів для відображення", - "receipt_visibility" => "Чек", - "show_in_items" => "Показати в товарах", - "show_in_items_visibility" => "Товари", - "show_in_receipt" => "Показати в квитанції", - "show_in_receivings" => "Показати в надходженнях", - "show_in_receivings_visibility" => "Надходження", - "show_in_sales" => "Показати в продажах", - "show_in_sales_visibility" => "Продажі", - "update" => "Оновити атрибут", + "attribute_value_invalid_chars" => "Значення атрибуту не може містити ':' або'|'", + "confirm_delete" => "Ви впевнені, що хочете видалити вибрані атрибут(и)?", + "confirm_restore" => "Ви впевнені, що хочете відновити вибрані атрибут(и)?", + "definition_cannot_be_deleted" => "Не вдалося видалити вибрані атрибут(и)", + "definition_error_adding_updating" => "Атрибут {0} не може бути доданий або оновлений. Будь ласка, перевірте журнал помилок.", + "definition_flags" => "Видимість атрибуту", + "definition_group" => "Група", + "definition_id" => "№", + "definition_name" => "Додати атрибут", + "definition_name_required" => "Назва атрибуту - обов'язкове поле", + "definition_one_or_multiple" => "Атрибут(и)", + "definition_successful_adding" => "Ви успішно додали товар", + "definition_successful_deleted" => "Успішно видалено", + "definition_successful_updating" => "Оновлено успішно", + "definition_type" => "Тип атрибуту", + "definition_type_required" => "Назва атрибуту - обов'язкове поле", + "definition_unit" => "Одиниця виміру", + "definition_values" => "Значення атрибуту", + "new" => "Новий атрибут", + "no_attributes_to_display" => "Немає об'єктів для відображення", + "receipt_visibility" => "Чек", + "show_in_items" => "Показати в товарах", + "show_in_items_visibility" => "Товари", + "show_in_receipt" => "Показати в квитанції", + "show_in_receivings" => "Показати в надходженнях", + "show_in_receivings_visibility" => "Надходження", + "show_in_sales" => "Показати в продажах", + "show_in_sales_visibility" => "Продажі", + "update" => "Оновити атрибут", ]; diff --git a/app/Language/uk/Bootstrap_tables.php b/app/Language/uk/Bootstrap_tables.php index 0c89d7c71..8eff64ae7 100644 --- a/app/Language/uk/Bootstrap_tables.php +++ b/app/Language/uk/Bootstrap_tables.php @@ -1,11 +1,11 @@ "Все", - "columns" => "Розділи", - "hide_show_pagination" => "Приховати/Показати нумерацію", - "loading" => "Завантаження, будь ласка, зачекайте...", - "page_from_to" => "Відображено {0} до {1} з {2} рядків", - "refresh" => "Оновити", - "rows_per_page" => "{0} рядків на сторінці", - "toggle" => "Переключити", + "all" => "Все", + "columns" => "Розділи", + "hide_show_pagination" => "Приховати/Показати нумерацію", + "loading" => "Завантаження, будь ласка, зачекайте...", + "page_from_to" => "Відображено {0} до {1} з {2} рядків", + "refresh" => "Оновити", + "rows_per_page" => "{0} рядків на сторінці", + "toggle" => "Переключити", ]; diff --git a/app/Language/uk/Calendar.php b/app/Language/uk/Calendar.php index ff3c0d6c1..8dc5524da 100644 --- a/app/Language/uk/Calendar.php +++ b/app/Language/uk/Calendar.php @@ -1,48 +1,48 @@ "Нд", - "mo" => "Пн", - "tu" => "Вт", - "we" => "Ср", - "th" => "Чт", - "fr" => "Пт", - "sa" => "Сб", - "sun" => "Нед", - "mon" => "Пон", - "tue" => "Вів", - "wed" => "Сер", - "thu" => "Чтв", - "fri" => "Птн", - "sat" => "Суб", - "sunday" => "Неділя", - "monday" => "Понеділок", - "tuesday" => "Вівторок", - "wednesday" => "Середа", - "thursday" => "Четвер", - "friday" => "П’ятниця", - "saturday" => "Субота", - "jan" => "Січ", - "feb" => "Лют", - "mar" => "Бер", - "apr" => "Кві", - "may" => "Тра", - "jun" => "Чер", - "jul" => "Лип", - "aug" => "Сер", - "sep" => "Вер", - "oct" => "Жов", - "nov" => "Лис", - "dec" => "Гру", - "january" => "Січень", - "february" => "Лютий", - "march" => "Березень", - "april" => "Квітень", - "mayl" => "Травень", - "june" => "Червень", - "july" => "Липень", - "august" => "Серпень", - "september" => "Вересень", - "october" => "Жовтень", - "november" => "Листопад", - "december" => "Грудень", + "su" => "Нд", + "mo" => "Пн", + "tu" => "Вт", + "we" => "Ср", + "th" => "Чт", + "fr" => "Пт", + "sa" => "Сб", + "sun" => "Нед", + "mon" => "Пон", + "tue" => "Вів", + "wed" => "Сер", + "thu" => "Чтв", + "fri" => "Птн", + "sat" => "Суб", + "sunday" => "Неділя", + "monday" => "Понеділок", + "tuesday" => "Вівторок", + "wednesday" => "Середа", + "thursday" => "Четвер", + "friday" => "П’ятниця", + "saturday" => "Субота", + "jan" => "Січ", + "feb" => "Лют", + "mar" => "Бер", + "apr" => "Кві", + "may" => "Тра", + "jun" => "Чер", + "jul" => "Лип", + "aug" => "Сер", + "sep" => "Вер", + "oct" => "Жов", + "nov" => "Лис", + "dec" => "Гру", + "january" => "Січень", + "february" => "Лютий", + "march" => "Березень", + "april" => "Квітень", + "mayl" => "Травень", + "june" => "Червень", + "july" => "Липень", + "august" => "Серпень", + "september" => "Вересень", + "october" => "Жовтень", + "november" => "Листопад", + "december" => "Грудень", ]; diff --git a/app/Language/uk/Cashups.php b/app/Language/uk/Cashups.php index dfa342abe..d66d52f5a 100644 --- a/app/Language/uk/Cashups.php +++ b/app/Language/uk/Cashups.php @@ -1,49 +1,49 @@ "Сума", - "amount_number" => "Сума повинна бути числом", - "amount_required" => "Сума - обов'язкове поле.", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "Суму неможливо видалити", - "cash_difference" => "", - "close_date" => "Дата", - "close_employee" => "Каса закрита працівником", - "closed_amount_card" => "Картки", - "closed_amount_cash" => "Закриті готівкові кошти", - "closed_amount_check" => "Чеки", - "closed_amount_due" => "Внески", - "closed_amount_giftcard" => "", - "closed_amount_total" => "Всього", - "closed_date" => "Дата закриття", - "confirm_delete" => "Ви впевнені, що хочете видалити вибрану суму?", - "confirm_restore" => "Ви впевнені, що хочете відновити вибрану суму?", - "confirm_submit" => "", - "date_number" => "Дата повинна бути числом", - "date_required" => "Дата - обов'язкове поле", - "description" => "Опис", - "enable_expected" => "", - "error_adding_updating" => "Помилка додавання/оновлення суми", - "giftcard" => "", - "id" => "Код", - "info" => "Інформація про готівку", - "info_employee" => "", - "is_deleted" => "Видалено", - "new" => "Нова готівка", - "no_cashups_to_display" => "Немає суми для відображення", - "none_selected" => "Ви не обрали жодної суми", - "note" => "Примітки", - "one_or_multiple" => "Готівка", - "open_amount_cash" => "Відкрити касу", - "open_date" => "Дата", - "open_employee" => "Каса відкрита працівником", - "opened_date" => "Дата відкриття", - "successful_adding" => "Сума успішно додана", - "successful_deleted" => "Сума успішно видалена", - "successful_updating" => "Сума успішно оновлена", - "total" => "Загальна сума", - "transfer_amount_cash" => "Отримана/видана готівка", - "transfer_amount_cash_minus" => "", - "update" => "Оновлена сума", - "warning" => "", + "amount" => "Сума", + "amount_number" => "Сума повинна бути числом", + "amount_required" => "Сума - обов'язкове поле.", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "Суму неможливо видалити", + "cash_difference" => "", + "close_date" => "Дата", + "close_employee" => "Каса закрита працівником", + "closed_amount_card" => "Картки", + "closed_amount_cash" => "Закриті готівкові кошти", + "closed_amount_check" => "Чеки", + "closed_amount_due" => "Внески", + "closed_amount_giftcard" => "", + "closed_amount_total" => "Всього", + "closed_date" => "Дата закриття", + "confirm_delete" => "Ви впевнені, що хочете видалити вибрану суму?", + "confirm_restore" => "Ви впевнені, що хочете відновити вибрану суму?", + "confirm_submit" => "", + "date_number" => "Дата повинна бути числом", + "date_required" => "Дата - обов'язкове поле", + "description" => "Опис", + "enable_expected" => "", + "error_adding_updating" => "Помилка додавання/оновлення суми", + "giftcard" => "", + "id" => "Код", + "info" => "Інформація про готівку", + "info_employee" => "", + "is_deleted" => "Видалено", + "new" => "Нова готівка", + "no_cashups_to_display" => "Немає суми для відображення", + "none_selected" => "Ви не обрали жодної суми", + "note" => "Примітки", + "one_or_multiple" => "Готівка", + "open_amount_cash" => "Відкрити касу", + "open_date" => "Дата", + "open_employee" => "Каса відкрита працівником", + "opened_date" => "Дата відкриття", + "successful_adding" => "Сума успішно додана", + "successful_deleted" => "Сума успішно видалена", + "successful_updating" => "Сума успішно оновлена", + "total" => "Загальна сума", + "transfer_amount_cash" => "Отримана/видана готівка", + "transfer_amount_cash_minus" => "", + "update" => "Оновлена сума", + "warning" => "", ]; diff --git a/app/Language/uk/Common.php b/app/Language/uk/Common.php index cdf3985c4..13f78ebb4 100644 --- a/app/Language/uk/Common.php +++ b/app/Language/uk/Common.php @@ -1,88 +1,88 @@ "Адреса 1", - "address_2" => "Адреса 2", - "admin" => "", - "city" => "Місто", - "clerk" => "", - "close" => "Закрити", - "color" => "", - "comments" => "Коментарі", - "common" => "Загальний", - "confirm_search" => "Ви обрали один або декілька рядків, вони більше не будуть обрані після пошуку. Ви впевнені, що хочете надіслати цей запит?", - "copyrights" => "© 2010 - {0}", - "correct_errors" => "Будь ласка, виправте помилки перед збереженням", - "country" => "Країна", - "dashboard" => "", - "date" => "Дата", - "delete" => "Видалити", - "det" => "Деталі", - "download_import_template" => "Завантажити імпорт шаблону CSV(CSV)", - "edit" => "Редагувати", - "email" => "Електронна пошта", - "email_invalid_format" => "Невірний формат адреси електронної пошти.", - "export_csv" => "Експорт CSV", - "export_csv_no" => "Ні", - "export_csv_yes" => "Так", - "fields_required_message" => "Поля червоного кольору обов'язкові для заповнення", - "fields_required_message_unique" => "", - "first_name" => "Ім'я", - "first_name_required" => "Ім'я - обов'язкове поле.", - "first_page" => "Перша сторінка", - "gender" => "Стать", - "gender_female" => "Ж", - "gender_male" => "Ч", - "gender_undefined" => "", - "icon" => "", - "id" => "Ідентифікація", - "import" => "Імпорт", - "import_change_file" => "Змінити", - "import_csv" => "Імпорт CSV", - "import_full_path" => "Потрібний повний шлях до файлу CSV", - "import_remove_file" => "Видалити", - "import_select_file" => "Оберіть файл", - "inv" => "inv (фактура)", - "last_name" => "Прізвище", - "last_name_required" => "Прізвище - обов'язкове поле.", - "last_page" => "Остання сторінка", - "learn_about_project" => ", щоб дізнатися останню інформацію про проект.", - "list_of" => "Список", - "logo" => "", - "logo_mark" => "", - "logout" => "Вихід", - "manager" => "", - "migration_needed" => "Перенесення бази даних до {0} розпочнеться після входу.", - "new" => "Новий", - "no" => "", - "no_persons_to_display" => "Немає осіб для відображення.", - "none_selected_text" => "Виберіть", - "or" => "АБО", - "people" => "", - "phone_number" => "Номер телефону", - "phone_number_required" => "Номер телефону - обов'язкове поле.", - "please_visit_my" => "Будь ласка, перейдіть", - "position" => "", - "powered_by" => "Працює на", - "price" => "Ціна", - "print" => "Друк", - "remove" => "Видалити", - "required" => "Необхідне", - "restore" => "Відновити", - "return_policy" => "Правила повернення", - "search" => "Пошук", - "search_options" => "Параметри пошуку", - "searched_for" => "Знайдено", - "software_short" => "", - "software_title" => "", - "state" => "Розташування", - "submit" => "Підтвердити", - "total_spent" => "Всього витрачено", - "unknown" => "Невідомий", - "view_recent_sales" => "Переглянути нещодавні продажі", - "website" => "Веб-сайт", - "welcome" => "Ласкаво просимо", - "welcome_message" => "Ласкаво просимо в OSPOS, натисніть нижче щоб розпочати.", - "yes" => "", - "you_are_using_ospos" => "Ви використовуєте Open Source Point Of Sale", - "zip" => "Поштовий індекс", + "address_1" => "Адреса 1", + "address_2" => "Адреса 2", + "admin" => "", + "city" => "Місто", + "clerk" => "", + "close" => "Закрити", + "color" => "", + "comments" => "Коментарі", + "common" => "Загальний", + "confirm_search" => "Ви обрали один або декілька рядків, вони більше не будуть обрані після пошуку. Ви впевнені, що хочете надіслати цей запит?", + "copyrights" => "© 2010 - {0}", + "correct_errors" => "Будь ласка, виправте помилки перед збереженням", + "country" => "Країна", + "dashboard" => "", + "date" => "Дата", + "delete" => "Видалити", + "det" => "Деталі", + "download_import_template" => "Завантажити імпорт шаблону CSV(CSV)", + "edit" => "Редагувати", + "email" => "Електронна пошта", + "email_invalid_format" => "Невірний формат адреси електронної пошти.", + "export_csv" => "Експорт CSV", + "export_csv_no" => "Ні", + "export_csv_yes" => "Так", + "fields_required_message" => "Поля червоного кольору обов'язкові для заповнення", + "fields_required_message_unique" => "", + "first_name" => "Ім'я", + "first_name_required" => "Ім'я - обов'язкове поле.", + "first_page" => "Перша сторінка", + "gender" => "Стать", + "gender_female" => "Ж", + "gender_male" => "Ч", + "gender_undefined" => "", + "icon" => "", + "id" => "Ідентифікація", + "import" => "Імпорт", + "import_change_file" => "Змінити", + "import_csv" => "Імпорт CSV", + "import_full_path" => "Потрібний повний шлях до файлу CSV", + "import_remove_file" => "Видалити", + "import_select_file" => "Оберіть файл", + "inv" => "inv (фактура)", + "last_name" => "Прізвище", + "last_name_required" => "Прізвище - обов'язкове поле.", + "last_page" => "Остання сторінка", + "learn_about_project" => ", щоб дізнатися останню інформацію про проект.", + "list_of" => "Список", + "logo" => "", + "logo_mark" => "", + "logout" => "Вихід", + "manager" => "", + "migration_needed" => "Перенесення бази даних до {0} розпочнеться після входу.", + "new" => "Новий", + "no" => "", + "no_persons_to_display" => "Немає осіб для відображення.", + "none_selected_text" => "Виберіть", + "or" => "АБО", + "people" => "", + "phone_number" => "Номер телефону", + "phone_number_required" => "Номер телефону - обов'язкове поле.", + "please_visit_my" => "Будь ласка, перейдіть", + "position" => "", + "powered_by" => "Працює на", + "price" => "Ціна", + "print" => "Друк", + "remove" => "Видалити", + "required" => "Необхідне", + "restore" => "Відновити", + "return_policy" => "Правила повернення", + "search" => "Пошук", + "search_options" => "Параметри пошуку", + "searched_for" => "Знайдено", + "software_short" => "", + "software_title" => "", + "state" => "Розташування", + "submit" => "Підтвердити", + "total_spent" => "Всього витрачено", + "unknown" => "Невідомий", + "view_recent_sales" => "Переглянути нещодавні продажі", + "website" => "Веб-сайт", + "welcome" => "Ласкаво просимо", + "welcome_message" => "Ласкаво просимо в OSPOS, натисніть нижче щоб розпочати.", + "yes" => "", + "you_are_using_ospos" => "Ви використовуєте Open Source Point Of Sale", + "zip" => "Поштовий індекс", ]; diff --git a/app/Language/uk/Config.php b/app/Language/uk/Config.php index 55b817914..2434bedf2 100644 --- a/app/Language/uk/Config.php +++ b/app/Language/uk/Config.php @@ -1,330 +1,330 @@ "Адреса організації", - "address_required" => "Адреса організації - обов'язкове поле.", - "all_set" => "Усі дозволи на файли встановлені правильно!", - "allow_duplicate_barcodes" => "Дозволити дублювати штрих-коди", - "apostrophe" => "Апостроф", - "backup_button" => "Резервна копія", - "backup_database" => "База даних резервного копіювання", - "barcode" => "Штрих-код", - "barcode_company" => "Назва організації", - "barcode_configuration" => "Конфігурація штрих-коду", - "barcode_content" => "Вміст штрих-коду", - "barcode_first_row" => "Рядок 1", - "barcode_font" => "Шрифт", - "barcode_formats" => "Формат введення", - "barcode_generate_if_empty" => "Створити, якщо порожньо.", - "barcode_height" => "Висота (px)", - "barcode_id" => "Ідентифікатор елементу/Ім'я", - "barcode_info" => "Інформація про конфігурацію штрих-коду", - "barcode_layout" => "Макет штрих-коду", - "barcode_name" => "Ім'я", - "barcode_number" => "Штрих-код", - "barcode_number_in_row" => "Номер у рядку", - "barcode_page_cellspacing" => "Відображення інтервалу клітинок на сторінці.", - "barcode_page_width" => "Показати ширину сторінки", - "barcode_price" => "Ціна", - "barcode_second_row" => "Рядок 2", - "barcode_third_row" => "Рядок 3", - "barcode_tooltip" => "Увага! Ця функція може спричинити дублюваня елементів, імпортування або створення . Не використовуйте, якщо не хочете дублювати штрих-коди", - "barcode_type" => "Тип штрих-коду", - "barcode_width" => "Ширина", - "bottom" => "Кінець", - "cash_button" => "", - "cash_button_1" => "", - "cash_button_2" => "", - "cash_button_3" => "", - "cash_button_4" => "", - "cash_button_5" => "", - "cash_button_6" => "", - "cash_decimals" => "Десяткові суми готівки", - "cash_decimals_tooltip" => "Якщо грошові знаки та десяткові знаки валюти однакові, то округлення готівки не відбудеться", - "cash_rounding" => "Округлення готівки", - "category_dropdown" => "Показати категорію як випадаюче меню", - "center" => "Центр", - "change_apperance_tooltip" => "", - "comma" => "Кома", - "company" => "Назва організації", - "company_avatar" => "", - "company_change_image" => "Змінити зображення", - "company_logo" => "Логотип компанії", - "company_remove_image" => "Видалити зображення", - "company_required" => "Назва організації - обов'язкове поле", - "company_select_image" => "Вибрати зображення", - "company_website_url" => "Веб-сайт організації не є дійсною URL-адресою (http: // ...)", - "country_codes" => "Коди країн", - "country_codes_tooltip" => "Список кодів, відокремлених комами, для пошуку номінальної адреси", - "currency_code" => "Валютний код", - "currency_decimals" => "Десяткові суми валюти", - "currency_symbol" => "Символ валюти", - "current_employee_only" => "", - "customer_reward" => "Нагорода клієнта", - "customer_reward_duplicate" => "Нагорода з такою назвою уже існує", - "customer_reward_enable" => "Увімкнути нагороди клієнта", - "customer_reward_invalid_chars" => "Винагорода не може містити '_'", - "customer_reward_required" => "Нагорода - обов'язкове поле.", - "customer_sales_tax_support" => "Податкова підтримка з продажу", - "date_or_time_format" => "Формат дати та часу", - "datetimeformat" => "Формат дати та часу", - "decimal_point" => "Десяткова мітка", - "default_barcode_font_size_number" => "Розмір шрифту штрих-коду за замовчуванням повинен бути числом", - "default_barcode_font_size_required" => "Розмір шрифту штрих-коду за замовчуванням - обов'язкове поле", - "default_barcode_height_number" => "Висота штрих-коду за замовчуванням повинна бути числом", - "default_barcode_height_required" => "Стандартна висота штрих-коду - обов'язкове поле", - "default_barcode_num_in_row_number" => "Номер штрих-коду за умовчанням у рядку повинен бути числом", - "default_barcode_num_in_row_required" => "Носер штрих-коду за замовчуванням у рядку - це обов'язкове поле", - "default_barcode_page_cellspacing_number" => "Інтервал клітинок штрих-коду за замовчуванням повинен бути числом", - "default_barcode_page_cellspacing_required" => "Інтервал клітинок штрих-коду за замовчуванням - це обов'язкове поле", - "default_barcode_page_width_number" => "Ширина сторінки штрих-коду за замовчуванням повинна бути числом", - "default_barcode_page_width_required" => "Ширина сторінки штрих-коду за замовчуванням - це обов'язкове поле", - "default_barcode_width_number" => "Ширина штрих-коду за замовчуванням повинна бути числом", - "default_barcode_width_required" => "Ширина штрих-коду за замовчуванням - це обов'язкове поле", - "default_item_columns" => "Стовпці видимих елементів за замовчуванням", - "default_origin_tax_code" => "Податковий код за замовчуванням", - "default_receivings_discount" => "Знижка на надходження за замовчуванням", - "default_receivings_discount_number" => "Знижка надходжень за замовчуванням повинна бути числом", - "default_receivings_discount_required" => "Знижка надходжень за замовчуванням - це обов'язкове поле", - "default_sales_discount" => "Знижка на продаж за замовчуванням", - "default_sales_discount_number" => "Знижка на продаж за замовчуванням повинна бути номером", - "default_sales_discount_required" => "Знижка з продаж за замовчуванням - обов'язкове поле для заповнення", - "default_tax_category" => "Податкова категорія за замовчуванням", - "default_tax_code" => "Податковий кодекс за замовчуванням", - "default_tax_jurisdiction" => "Податкова юрисдикція за замовчуванням", - "default_tax_name_number" => "Назва Податку за Замовчуванням повинно бути рядком", - "default_tax_name_required" => "Назва податку за замовчуванням - це обов'язкове поле", - "default_tax_rate" => "Ставка податку за замовчуванням %", - "default_tax_rate_1" => "Ставка податку 1", - "default_tax_rate_2" => "Ставка податку 2", - "default_tax_rate_3" => "", - "default_tax_rate_number" => "Ставка податку за замовчуванням повинна бути числом", - "default_tax_rate_required" => "Ставка податку за замовчуванням - це обов'язкове поле", - "derive_sale_quantity" => "Дозволити похідну кількість продажів", - "derive_sale_quantity_tooltip" => "Якщо прапорець встановлений, то відносно товарів, замовлених на основі розширеної суми, буде передбачено новий тип товару", - "dinner_table" => "Обідня перерва", - "dinner_table_duplicate" => "Така назва уже існує", - "dinner_table_enable" => "Увімкнути обідні перерви", - "dinner_table_invalid_chars" => "Назва не може містити '_'", - "dinner_table_required" => "Це поле мусить бути заповнене", - "dot" => "Крапка", - "email" => "Електронна пошта", - "email_configuration" => "Конфігурація Електронної Пошти", - "email_mailpath" => "Доступ до електронної пошта", - "email_protocol" => "Протокол", - "email_receipt_check_behaviour" => "Селектор «Отримати по пошті»", - "email_receipt_check_behaviour_always" => "Завжди активний", - "email_receipt_check_behaviour_last" => "Запам'ятати останній вибір", - "email_receipt_check_behaviour_never" => "Завжди деактивовано", - "email_smtp_crypto" => "Шифрування SMTP", - "email_smtp_host" => "SMTP Сервер", - "email_smtp_pass" => "SMTP Пароль", - "email_smtp_port" => "Порт SMTP", - "email_smtp_timeout" => "Час очікування SMTP", - "email_smtp_user" => "Ім'я користувача SMTP", - "enable_avatar" => "", - "enable_avatar_tooltip" => "", - "enable_dropdown_tooltip" => "", - "enable_new_look" => "", - "enable_right_bar" => "", - "enable_right_bar_tooltip" => "", - "enforce_privacy" => "Забезпечення конфіденційності", - "enforce_privacy_tooltip" => "Захист конфіденційності даних клієнта в разі видалення даних", - "fax" => "Факс", - "file_perm" => "Виникають проблеми з дозволами файлів, виправте та перезавантажте сторінку.", - "financial_year" => "Початок фінансового року", - "financial_year_apr" => "1 - е Квітня", - "financial_year_aug" => "1 - е Серпня", - "financial_year_dec" => "1 - е Грудня", - "financial_year_feb" => "1 - е Лютого", - "financial_year_jan" => "1 - е Січня", - "financial_year_jul" => "1 - е Липня", - "financial_year_jun" => "1 - е Червня", - "financial_year_mar" => "1 - е Березня", - "financial_year_may" => "1 - е Травня", - "financial_year_nov" => "1 - е Листопада", - "financial_year_oct" => "1 - е Жовтня", - "financial_year_sep" => "1 - е Вересня", - "floating_labels" => "", - "gcaptcha_enable" => "Сторінка входу reCAPTCHA", - "gcaptcha_secret_key" => "reCAPTCHA секретний ключ", - "gcaptcha_secret_key_required" => "reCAPTCHA секретний ключ - це обов'язкове поле", - "gcaptcha_site_key" => "ключ сайту reCAPTCHA", - "gcaptcha_site_key_required" => "Ключ сайту reCAPTCHA - це обов'язкове поле", - "gcaptcha_tooltip" => "Захистіть сторінку входу за допомогою Google reCAPTCHA, натисніть на піктограму для пари ключів API", - "general" => "Загальне", - "general_configuration" => "Загальна Конфігурація", - "giftcard_number" => "Номер Подарункової Карти", - "giftcard_random" => "Генерувати випадкові", - "giftcard_series" => "Генерувати в серії", - "image_allowed_file_types" => "Дозволені типи файлів", - "image_max_height_tooltip" => "Максимально дозволена висота завантажуваних зображень у пікселях (px).", - "image_max_size_tooltip" => "Максимально дозволений розмір файлу для завантаження зображень у кілобайтах.", - "image_max_width_tooltip" => "Максимально дозволена ширина завантажуваних зображень у пікселях (px).", - "image_restrictions" => "Обмеження на завантаження зображень", - "include_hsn" => "Включіть підтримку кодів HSN", - "info" => "Інформація", - "info_configuration" => "Інформація про Магазин", - "input_groups" => "", - "integrations" => "Інтеграції", - "integrations_configuration" => "Інтеграція сторонніх організацій", - "invoice" => "Рахунок-фактура", - "invoice_configuration" => "Налаштування друку рахунків-фактур", - "invoice_default_comments" => "Коментарі до рахунків за замовчуванням", - "invoice_email_message" => "Шаблони рахунків-фактур на електронну пошту", - "invoice_enable" => "Увімкнути виставлення рахунків", - "invoice_printer" => "Друк разунку-фактура", - "invoice_type" => "Тип рахунку-фактури", - "is_readable" => "Читається, але дозволи встановлені неправильно. Будь ласка, встановіть доступ до файлу 640 або 660 та оновіть сторінку.", - "is_writable" => "Можна записати, але дозволи встановлені неправильно. Будь ласка, встановіть доступ до файлу 750 та оновіть сторінку.", - "item_markup" => "", - "jsprintsetup_required" => "Увага! Ця функція працюватиме лише у тому випадку, якщо у вас встановлений додаток FireFox jsPrintSetup. Зберегти все одно?", - "language" => "Мова", - "last_used_invoice_number" => "Останній використаний номер рахунку-фактури", - "last_used_quote_number" => "Останній використаний номер котирування", - "last_used_work_order_number" => "Останній використаний номер без виводу", - "left" => "Залишок", - "license" => "Ліцензія", - "license_configuration" => "Відомості про ліцензію", - "line_sequence" => "Послідовність рядків", - "lines_per_page" => "Рядків на сторінці", - "lines_per_page_number" => "Рядки на сторінці повинні бути числом", - "lines_per_page_required" => "Рядки на сторінці - обов'язкове поле", - "locale" => "Визначення місцезнаходження", - "locale_configuration" => "Місце знаходження Конфігурації", - "locale_info" => "Інформація про Місцезнаходження Конфігурації", - "location" => "Склад", - "location_configuration" => "Розташування складу", - "location_info" => "Інформація про розташування конфігурації", - "login_form" => "", - "logout" => "Ви хочете зробити резервну копію перед виходом із системи? Натисніть [OK] для резервного копіювання або [Скасувати], щоб вийти?", - "mailchimp" => "MailСhimp", - "mailchimp_api_key" => "Ключ API від Mailchimp", - "mailchimp_configuration" => "Конфігурація Mailchimp", - "mailchimp_key_successfully" => "Ключ API недійсний", - "mailchimp_key_unsuccessfully" => "Ключ API невірний", - "mailchimp_lists" => "Список(и) Mailchimp", - "mailchimp_tooltip" => "Натисніть на піктограму для ключа API", - "message" => "Повідомлення", - "message_configuration" => "Конфігурація повідомлень", - "msg_msg" => "Збережене текстове повідомлення", - "msg_msg_placeholder" => "Якщо ви хочете використовувати шаблон SMS, збережіть своє повідомлення тут або залиште поле порожнім", - "msg_pwd" => "Пароль SMS-API", - "msg_pwd_required" => "Пароль SMS-API - обов'язкове поле", - "msg_src" => "Ідентифікатор відправника SMS-API", - "msg_src_required" => "Ідентифікатор відправника SMS-API - обов'язкове поле", - "msg_uid" => "Ім'я користувача SMS-API", - "msg_uid_required" => "Ім'я користувача SMS-API - обов'язкове поле", - "multi_pack_enabled" => "Декілька упаковок товару", - "no_risk" => "Немає ризиків безпеки/вразливості.", - "none" => "Жоден", - "notify_alignment" => "Спливаюче повідомлення", - "number_format" => "Формат номера", - "number_locale" => "Місцезнаходження", - "number_locale_invalid" => "Введене місцезнаходження є недійсним. Перевірте посилання в підказці, щоб знайти правильне місцезнаходження", - "number_locale_required" => "Номер місцезнаходження - обов'язкове поле", - "number_locale_tooltip" => "Знайдіть відповідне місцезнаходження за цим посиланням", - "os_timezone" => "Часова зона OSPOS:", - "ospos_info" => "Інформація про встановлення OSPOS", - "payment_options_order" => "Варіанти оплати замовлення", - "perm_risk" => "Неправильні дозволи роблять OSPOS вразливим.", - "phone" => "Телефон організації", - "phone_required" => "Телефон організації - обов'язкове полею", - "print_bottom_margin" => "Верхнє поле", - "print_bottom_margin_number" => "Верхнє поле за замовчуванням повинно бути числом", - "print_bottom_margin_required" => "Верхнє поле за замовчуванням - обов'язкове поле", - "print_delay_autoreturn" => "Затримка автоматичного повернення до продажу", - "print_delay_autoreturn_number" => "Затримка автоматичного повернення до продажу - обов'язкове поле", - "print_delay_autoreturn_required" => "Затримка автоматичного повернення до продажу повинна бути числом", - "print_footer" => "Друк веб-переглядача", - "print_header" => "Друк заголовка браузера", - "print_left_margin" => "Ліве поле", - "print_left_margin_number" => "Ліве поле замовчуванням повинен бути числом", - "print_left_margin_required" => "Ліве поле за замовчуванням - обов'язкове поле", - "print_receipt_check_behaviour" => "Друк квитанції, яка позначена прапорцем", - "print_receipt_check_behaviour_always" => "Завжди перевіряється", - "print_receipt_check_behaviour_last" => "Запам’ятати останній вибір", - "print_receipt_check_behaviour_never" => "Ніколи не запам'товувати", - "print_right_margin" => "Праве поле", - "print_right_margin_number" => "Праве поле замовчуванням за замовчуванням повинно бути числом", - "print_right_margin_required" => "Праве поле за замовчуванням - обов'язкове поле", - "print_silently" => "Показати діалогове вікно друку", - "print_top_margin" => "Верхнє поле", - "print_top_margin_number" => "Верхнє поле за замовчуванням повинно бути числом", - "print_top_margin_required" => "Верхнє поле за замовчуванням - обов'язкове поле для заповнення", - "quantity_decimals" => "Кількість десятків", - "quick_cash_enable" => "", - "quote_default_comments" => "Кількість десятків за замовчуванням", - "receipt" => "Квитанція", - "receipt_category" => "", - "receipt_configuration" => "Налаштування друку квитанції", - "receipt_default" => "За замовчуванням", - "receipt_font_size" => "Розмір шрифту", - "receipt_font_size_number" => "Розмір шрифту повинен бути числом", - "receipt_font_size_required" => "Розмір шрифту - обов'язкове поле", - "receipt_info" => "Отримання інформації про конфігурацію", - "receipt_printer" => "Принтер для квитків", - "receipt_short" => "Короткий зміст", - "receipt_show_company_name" => "Показати назву організації", - "receipt_show_description" => "Показати опис", - "receipt_show_serialnumber" => "Показати серійний номер", - "receipt_show_tax_ind" => "Показати показник податку", - "receipt_show_taxes" => "Показати податковий показник", - "receipt_show_total_discount" => "Показати загальну знижку", - "receipt_template" => "Шаблон квитанції", - "receiving_calculate_average_price" => "Сер. Ціна (отримання)", - "recv_invoice_format" => "Формат отримання рахунків-фактур", - "register_mode_default" => "Режим реєстрації за замовчуванням", - "report_an_issue" => "Повідомити про проблему", - "return_policy_required" => "Політика повернення - обов'язкове поле", - "reward" => "Нагорода", - "reward_configuration" => "Налаштування Нагороди", - "right" => "Право", - "sales_invoice_format" => "Формат рахунків-фактур продажів", - "sales_quote_format" => "Формат котирування продажів", - "saved_successfully" => "Конфігурація успішно збережена", - "saved_unsuccessfully" => "Помилка збереження конфігурації", - "security_issue" => "Попередження про вразливість системи безпеки", - "server_notice" => "Будь ласка, використовуйте інформацію подану нижче для звіту про проблеми", - "service_charge" => "", - "show_due_enable" => "", - "show_office_group" => "Показати значок офісу", - "statistics" => "Надіслати статистику", - "statistics_tooltip" => "Надсилайте статистику для розробки та вдосконалення функцій", - "stock_location" => "Місцезнаходження складу", - "stock_location_duplicate" => "Склад з таким місцезнаходженням вже існує. Будь ласка, використайте інше", - "stock_location_invalid_chars" => "Місцезнаходження не може містити спецсимволів", - "stock_location_required" => "Місцезнаходження - обов'язкове поле", - "suggestions_fifth_column" => "", - "suggestions_first_column" => "Колонка 1", - "suggestions_fourth_column" => "", - "suggestions_layout" => "Формат пошукових пропозицій", - "suggestions_second_column" => "Колонка 2", - "suggestions_third_column" => "Колонка 3", - "system_conf" => "Налаштування", - "system_info" => "Інформація про систему", - "table" => "Таблиця", - "table_configuration" => "Налаштування таблиці", - "takings_printer" => "Підключення принтера", - "tax" => "Податок", - "tax_category" => "Категорія податку", - "tax_category_duplicate" => "Введена податкова категорія вже існує", - "tax_category_invalid_chars" => "Введена категорія податку недійсна", - "tax_category_required" => "Податкова категорія - обов'язкове поле", - "tax_category_used" => "Податкову категорію не можливо видалити, оскільки вона використовується", - "tax_configuration" => "Налаштування податку.", - "tax_decimals" => "Податкові десятки", - "tax_id" => "Податковий номер", - "tax_included" => "Податок включений", - "theme" => "Тема", - "theme_preview" => "", - "thousands_separator" => "Роздільник тисячних розрядів", - "timezone" => "Часовой пояс", - "timezone_error" => "Часовий пояс OSPOS відрізняється від вашого місцевого часового поясу.", - "top" => "Головний", - "use_destination_based_tax" => "Використовуйте податок на основі призначення", - "user_timezone" => "Місцевий часовий пояс:", - "website" => "Веб-сайт", - "wholesale_markup" => "", - "work_order_enable" => "Підтримка робочого замовлення", - "work_order_format" => "Формат робочого замовлення", + "address" => "Адреса організації", + "address_required" => "Адреса організації - обов'язкове поле.", + "all_set" => "Усі дозволи на файли встановлені правильно!", + "allow_duplicate_barcodes" => "Дозволити дублювати штрих-коди", + "apostrophe" => "Апостроф", + "backup_button" => "Резервна копія", + "backup_database" => "База даних резервного копіювання", + "barcode" => "Штрих-код", + "barcode_company" => "Назва організації", + "barcode_configuration" => "Конфігурація штрих-коду", + "barcode_content" => "Вміст штрих-коду", + "barcode_first_row" => "Рядок 1", + "barcode_font" => "Шрифт", + "barcode_formats" => "Формат введення", + "barcode_generate_if_empty" => "Створити, якщо порожньо.", + "barcode_height" => "Висота (px)", + "barcode_id" => "Ідентифікатор елементу/Ім'я", + "barcode_info" => "Інформація про конфігурацію штрих-коду", + "barcode_layout" => "Макет штрих-коду", + "barcode_name" => "Ім'я", + "barcode_number" => "Штрих-код", + "barcode_number_in_row" => "Номер у рядку", + "barcode_page_cellspacing" => "Відображення інтервалу клітинок на сторінці.", + "barcode_page_width" => "Показати ширину сторінки", + "barcode_price" => "Ціна", + "barcode_second_row" => "Рядок 2", + "barcode_third_row" => "Рядок 3", + "barcode_tooltip" => "Увага! Ця функція може спричинити дублюваня елементів, імпортування або створення . Не використовуйте, якщо не хочете дублювати штрих-коди", + "barcode_type" => "Тип штрих-коду", + "barcode_width" => "Ширина", + "bottom" => "Кінець", + "cash_button" => "", + "cash_button_1" => "", + "cash_button_2" => "", + "cash_button_3" => "", + "cash_button_4" => "", + "cash_button_5" => "", + "cash_button_6" => "", + "cash_decimals" => "Десяткові суми готівки", + "cash_decimals_tooltip" => "Якщо грошові знаки та десяткові знаки валюти однакові, то округлення готівки не відбудеться", + "cash_rounding" => "Округлення готівки", + "category_dropdown" => "Показати категорію як випадаюче меню", + "center" => "Центр", + "change_apperance_tooltip" => "", + "comma" => "Кома", + "company" => "Назва організації", + "company_avatar" => "", + "company_change_image" => "Змінити зображення", + "company_logo" => "Логотип компанії", + "company_remove_image" => "Видалити зображення", + "company_required" => "Назва організації - обов'язкове поле", + "company_select_image" => "Вибрати зображення", + "company_website_url" => "Веб-сайт організації не є дійсною URL-адресою (http: // ...)", + "country_codes" => "Коди країн", + "country_codes_tooltip" => "Список кодів, відокремлених комами, для пошуку номінальної адреси", + "currency_code" => "Валютний код", + "currency_decimals" => "Десяткові суми валюти", + "currency_symbol" => "Символ валюти", + "current_employee_only" => "", + "customer_reward" => "Нагорода клієнта", + "customer_reward_duplicate" => "Нагорода з такою назвою уже існує", + "customer_reward_enable" => "Увімкнути нагороди клієнта", + "customer_reward_invalid_chars" => "Винагорода не може містити '_'", + "customer_reward_required" => "Нагорода - обов'язкове поле.", + "customer_sales_tax_support" => "Податкова підтримка з продажу", + "date_or_time_format" => "Формат дати та часу", + "datetimeformat" => "Формат дати та часу", + "decimal_point" => "Десяткова мітка", + "default_barcode_font_size_number" => "Розмір шрифту штрих-коду за замовчуванням повинен бути числом", + "default_barcode_font_size_required" => "Розмір шрифту штрих-коду за замовчуванням - обов'язкове поле", + "default_barcode_height_number" => "Висота штрих-коду за замовчуванням повинна бути числом", + "default_barcode_height_required" => "Стандартна висота штрих-коду - обов'язкове поле", + "default_barcode_num_in_row_number" => "Номер штрих-коду за умовчанням у рядку повинен бути числом", + "default_barcode_num_in_row_required" => "Носер штрих-коду за замовчуванням у рядку - це обов'язкове поле", + "default_barcode_page_cellspacing_number" => "Інтервал клітинок штрих-коду за замовчуванням повинен бути числом", + "default_barcode_page_cellspacing_required" => "Інтервал клітинок штрих-коду за замовчуванням - це обов'язкове поле", + "default_barcode_page_width_number" => "Ширина сторінки штрих-коду за замовчуванням повинна бути числом", + "default_barcode_page_width_required" => "Ширина сторінки штрих-коду за замовчуванням - це обов'язкове поле", + "default_barcode_width_number" => "Ширина штрих-коду за замовчуванням повинна бути числом", + "default_barcode_width_required" => "Ширина штрих-коду за замовчуванням - це обов'язкове поле", + "default_item_columns" => "Стовпці видимих елементів за замовчуванням", + "default_origin_tax_code" => "Податковий код за замовчуванням", + "default_receivings_discount" => "Знижка на надходження за замовчуванням", + "default_receivings_discount_number" => "Знижка надходжень за замовчуванням повинна бути числом", + "default_receivings_discount_required" => "Знижка надходжень за замовчуванням - це обов'язкове поле", + "default_sales_discount" => "Знижка на продаж за замовчуванням", + "default_sales_discount_number" => "Знижка на продаж за замовчуванням повинна бути номером", + "default_sales_discount_required" => "Знижка з продаж за замовчуванням - обов'язкове поле для заповнення", + "default_tax_category" => "Податкова категорія за замовчуванням", + "default_tax_code" => "Податковий кодекс за замовчуванням", + "default_tax_jurisdiction" => "Податкова юрисдикція за замовчуванням", + "default_tax_name_number" => "Назва Податку за Замовчуванням повинно бути рядком", + "default_tax_name_required" => "Назва податку за замовчуванням - це обов'язкове поле", + "default_tax_rate" => "Ставка податку за замовчуванням %", + "default_tax_rate_1" => "Ставка податку 1", + "default_tax_rate_2" => "Ставка податку 2", + "default_tax_rate_3" => "", + "default_tax_rate_number" => "Ставка податку за замовчуванням повинна бути числом", + "default_tax_rate_required" => "Ставка податку за замовчуванням - це обов'язкове поле", + "derive_sale_quantity" => "Дозволити похідну кількість продажів", + "derive_sale_quantity_tooltip" => "Якщо прапорець встановлений, то відносно товарів, замовлених на основі розширеної суми, буде передбачено новий тип товару", + "dinner_table" => "Обідня перерва", + "dinner_table_duplicate" => "Така назва уже існує", + "dinner_table_enable" => "Увімкнути обідні перерви", + "dinner_table_invalid_chars" => "Назва не може містити '_'", + "dinner_table_required" => "Це поле мусить бути заповнене", + "dot" => "Крапка", + "email" => "Електронна пошта", + "email_configuration" => "Конфігурація Електронної Пошти", + "email_mailpath" => "Доступ до електронної пошта", + "email_protocol" => "Протокол", + "email_receipt_check_behaviour" => "Селектор «Отримати по пошті»", + "email_receipt_check_behaviour_always" => "Завжди активний", + "email_receipt_check_behaviour_last" => "Запам'ятати останній вибір", + "email_receipt_check_behaviour_never" => "Завжди деактивовано", + "email_smtp_crypto" => "Шифрування SMTP", + "email_smtp_host" => "SMTP Сервер", + "email_smtp_pass" => "SMTP Пароль", + "email_smtp_port" => "Порт SMTP", + "email_smtp_timeout" => "Час очікування SMTP", + "email_smtp_user" => "Ім'я користувача SMTP", + "enable_avatar" => "", + "enable_avatar_tooltip" => "", + "enable_dropdown_tooltip" => "", + "enable_new_look" => "", + "enable_right_bar" => "", + "enable_right_bar_tooltip" => "", + "enforce_privacy" => "Забезпечення конфіденційності", + "enforce_privacy_tooltip" => "Захист конфіденційності даних клієнта в разі видалення даних", + "fax" => "Факс", + "file_perm" => "Виникають проблеми з дозволами файлів, виправте та перезавантажте сторінку.", + "financial_year" => "Початок фінансового року", + "financial_year_apr" => "1 - е Квітня", + "financial_year_aug" => "1 - е Серпня", + "financial_year_dec" => "1 - е Грудня", + "financial_year_feb" => "1 - е Лютого", + "financial_year_jan" => "1 - е Січня", + "financial_year_jul" => "1 - е Липня", + "financial_year_jun" => "1 - е Червня", + "financial_year_mar" => "1 - е Березня", + "financial_year_may" => "1 - е Травня", + "financial_year_nov" => "1 - е Листопада", + "financial_year_oct" => "1 - е Жовтня", + "financial_year_sep" => "1 - е Вересня", + "floating_labels" => "", + "gcaptcha_enable" => "Сторінка входу reCAPTCHA", + "gcaptcha_secret_key" => "reCAPTCHA секретний ключ", + "gcaptcha_secret_key_required" => "reCAPTCHA секретний ключ - це обов'язкове поле", + "gcaptcha_site_key" => "ключ сайту reCAPTCHA", + "gcaptcha_site_key_required" => "Ключ сайту reCAPTCHA - це обов'язкове поле", + "gcaptcha_tooltip" => "Захистіть сторінку входу за допомогою Google reCAPTCHA, натисніть на піктограму для пари ключів API", + "general" => "Загальне", + "general_configuration" => "Загальна Конфігурація", + "giftcard_number" => "Номер Подарункової Карти", + "giftcard_random" => "Генерувати випадкові", + "giftcard_series" => "Генерувати в серії", + "image_allowed_file_types" => "Дозволені типи файлів", + "image_max_height_tooltip" => "Максимально дозволена висота завантажуваних зображень у пікселях (px).", + "image_max_size_tooltip" => "Максимально дозволений розмір файлу для завантаження зображень у кілобайтах.", + "image_max_width_tooltip" => "Максимально дозволена ширина завантажуваних зображень у пікселях (px).", + "image_restrictions" => "Обмеження на завантаження зображень", + "include_hsn" => "Включіть підтримку кодів HSN", + "info" => "Інформація", + "info_configuration" => "Інформація про Магазин", + "input_groups" => "", + "integrations" => "Інтеграції", + "integrations_configuration" => "Інтеграція сторонніх організацій", + "invoice" => "Рахунок-фактура", + "invoice_configuration" => "Налаштування друку рахунків-фактур", + "invoice_default_comments" => "Коментарі до рахунків за замовчуванням", + "invoice_email_message" => "Шаблони рахунків-фактур на електронну пошту", + "invoice_enable" => "Увімкнути виставлення рахунків", + "invoice_printer" => "Друк разунку-фактура", + "invoice_type" => "Тип рахунку-фактури", + "is_readable" => "Читається, але дозволи встановлені неправильно. Будь ласка, встановіть доступ до файлу 640 або 660 та оновіть сторінку.", + "is_writable" => "Можна записати, але дозволи встановлені неправильно. Будь ласка, встановіть доступ до файлу 750 та оновіть сторінку.", + "item_markup" => "", + "jsprintsetup_required" => "Увага! Ця функція працюватиме лише у тому випадку, якщо у вас встановлений додаток FireFox jsPrintSetup. Зберегти все одно?", + "language" => "Мова", + "last_used_invoice_number" => "Останній використаний номер рахунку-фактури", + "last_used_quote_number" => "Останній використаний номер котирування", + "last_used_work_order_number" => "Останній використаний номер без виводу", + "left" => "Залишок", + "license" => "Ліцензія", + "license_configuration" => "Відомості про ліцензію", + "line_sequence" => "Послідовність рядків", + "lines_per_page" => "Рядків на сторінці", + "lines_per_page_number" => "Рядки на сторінці повинні бути числом", + "lines_per_page_required" => "Рядки на сторінці - обов'язкове поле", + "locale" => "Визначення місцезнаходження", + "locale_configuration" => "Місце знаходження Конфігурації", + "locale_info" => "Інформація про Місцезнаходження Конфігурації", + "location" => "Склад", + "location_configuration" => "Розташування складу", + "location_info" => "Інформація про розташування конфігурації", + "login_form" => "", + "logout" => "Ви хочете зробити резервну копію перед виходом із системи? Натисніть [OK] для резервного копіювання або [Скасувати], щоб вийти?", + "mailchimp" => "MailСhimp", + "mailchimp_api_key" => "Ключ API від Mailchimp", + "mailchimp_configuration" => "Конфігурація Mailchimp", + "mailchimp_key_successfully" => "Ключ API недійсний", + "mailchimp_key_unsuccessfully" => "Ключ API невірний", + "mailchimp_lists" => "Список(и) Mailchimp", + "mailchimp_tooltip" => "Натисніть на піктограму для ключа API", + "message" => "Повідомлення", + "message_configuration" => "Конфігурація повідомлень", + "msg_msg" => "Збережене текстове повідомлення", + "msg_msg_placeholder" => "Якщо ви хочете використовувати шаблон SMS, збережіть своє повідомлення тут або залиште поле порожнім", + "msg_pwd" => "Пароль SMS-API", + "msg_pwd_required" => "Пароль SMS-API - обов'язкове поле", + "msg_src" => "Ідентифікатор відправника SMS-API", + "msg_src_required" => "Ідентифікатор відправника SMS-API - обов'язкове поле", + "msg_uid" => "Ім'я користувача SMS-API", + "msg_uid_required" => "Ім'я користувача SMS-API - обов'язкове поле", + "multi_pack_enabled" => "Декілька упаковок товару", + "no_risk" => "Немає ризиків безпеки/вразливості.", + "none" => "Жоден", + "notify_alignment" => "Спливаюче повідомлення", + "number_format" => "Формат номера", + "number_locale" => "Місцезнаходження", + "number_locale_invalid" => "Введене місцезнаходження є недійсним. Перевірте посилання в підказці, щоб знайти правильне місцезнаходження", + "number_locale_required" => "Номер місцезнаходження - обов'язкове поле", + "number_locale_tooltip" => "Знайдіть відповідне місцезнаходження за цим посиланням", + "os_timezone" => "Часова зона OSPOS:", + "ospos_info" => "Інформація про встановлення OSPOS", + "payment_options_order" => "Варіанти оплати замовлення", + "perm_risk" => "Неправильні дозволи роблять OSPOS вразливим.", + "phone" => "Телефон організації", + "phone_required" => "Телефон організації - обов'язкове полею", + "print_bottom_margin" => "Верхнє поле", + "print_bottom_margin_number" => "Верхнє поле за замовчуванням повинно бути числом", + "print_bottom_margin_required" => "Верхнє поле за замовчуванням - обов'язкове поле", + "print_delay_autoreturn" => "Затримка автоматичного повернення до продажу", + "print_delay_autoreturn_number" => "Затримка автоматичного повернення до продажу - обов'язкове поле", + "print_delay_autoreturn_required" => "Затримка автоматичного повернення до продажу повинна бути числом", + "print_footer" => "Друк веб-переглядача", + "print_header" => "Друк заголовка браузера", + "print_left_margin" => "Ліве поле", + "print_left_margin_number" => "Ліве поле замовчуванням повинен бути числом", + "print_left_margin_required" => "Ліве поле за замовчуванням - обов'язкове поле", + "print_receipt_check_behaviour" => "Друк квитанції, яка позначена прапорцем", + "print_receipt_check_behaviour_always" => "Завжди перевіряється", + "print_receipt_check_behaviour_last" => "Запам’ятати останній вибір", + "print_receipt_check_behaviour_never" => "Ніколи не запам'товувати", + "print_right_margin" => "Праве поле", + "print_right_margin_number" => "Праве поле замовчуванням за замовчуванням повинно бути числом", + "print_right_margin_required" => "Праве поле за замовчуванням - обов'язкове поле", + "print_silently" => "Показати діалогове вікно друку", + "print_top_margin" => "Верхнє поле", + "print_top_margin_number" => "Верхнє поле за замовчуванням повинно бути числом", + "print_top_margin_required" => "Верхнє поле за замовчуванням - обов'язкове поле для заповнення", + "quantity_decimals" => "Кількість десятків", + "quick_cash_enable" => "", + "quote_default_comments" => "Кількість десятків за замовчуванням", + "receipt" => "Квитанція", + "receipt_category" => "", + "receipt_configuration" => "Налаштування друку квитанції", + "receipt_default" => "За замовчуванням", + "receipt_font_size" => "Розмір шрифту", + "receipt_font_size_number" => "Розмір шрифту повинен бути числом", + "receipt_font_size_required" => "Розмір шрифту - обов'язкове поле", + "receipt_info" => "Отримання інформації про конфігурацію", + "receipt_printer" => "Принтер для квитків", + "receipt_short" => "Короткий зміст", + "receipt_show_company_name" => "Показати назву організації", + "receipt_show_description" => "Показати опис", + "receipt_show_serialnumber" => "Показати серійний номер", + "receipt_show_tax_ind" => "Показати показник податку", + "receipt_show_taxes" => "Показати податковий показник", + "receipt_show_total_discount" => "Показати загальну знижку", + "receipt_template" => "Шаблон квитанції", + "receiving_calculate_average_price" => "Сер. Ціна (отримання)", + "recv_invoice_format" => "Формат отримання рахунків-фактур", + "register_mode_default" => "Режим реєстрації за замовчуванням", + "report_an_issue" => "Повідомити про проблему", + "return_policy_required" => "Політика повернення - обов'язкове поле", + "reward" => "Нагорода", + "reward_configuration" => "Налаштування Нагороди", + "right" => "Право", + "sales_invoice_format" => "Формат рахунків-фактур продажів", + "sales_quote_format" => "Формат котирування продажів", + "saved_successfully" => "Конфігурація успішно збережена", + "saved_unsuccessfully" => "Помилка збереження конфігурації", + "security_issue" => "Попередження про вразливість системи безпеки", + "server_notice" => "Будь ласка, використовуйте інформацію подану нижче для звіту про проблеми", + "service_charge" => "", + "show_due_enable" => "", + "show_office_group" => "Показати значок офісу", + "statistics" => "Надіслати статистику", + "statistics_tooltip" => "Надсилайте статистику для розробки та вдосконалення функцій", + "stock_location" => "Місцезнаходження складу", + "stock_location_duplicate" => "Склад з таким місцезнаходженням вже існує. Будь ласка, використайте інше", + "stock_location_invalid_chars" => "Місцезнаходження не може містити спецсимволів", + "stock_location_required" => "Місцезнаходження - обов'язкове поле", + "suggestions_fifth_column" => "", + "suggestions_first_column" => "Колонка 1", + "suggestions_fourth_column" => "", + "suggestions_layout" => "Формат пошукових пропозицій", + "suggestions_second_column" => "Колонка 2", + "suggestions_third_column" => "Колонка 3", + "system_conf" => "Налаштування", + "system_info" => "Інформація про систему", + "table" => "Таблиця", + "table_configuration" => "Налаштування таблиці", + "takings_printer" => "Підключення принтера", + "tax" => "Податок", + "tax_category" => "Категорія податку", + "tax_category_duplicate" => "Введена податкова категорія вже існує", + "tax_category_invalid_chars" => "Введена категорія податку недійсна", + "tax_category_required" => "Податкова категорія - обов'язкове поле", + "tax_category_used" => "Податкову категорію не можливо видалити, оскільки вона використовується", + "tax_configuration" => "Налаштування податку.", + "tax_decimals" => "Податкові десятки", + "tax_id" => "Податковий номер", + "tax_included" => "Податок включений", + "theme" => "Тема", + "theme_preview" => "", + "thousands_separator" => "Роздільник тисячних розрядів", + "timezone" => "Часовой пояс", + "timezone_error" => "Часовий пояс OSPOS відрізняється від вашого місцевого часового поясу.", + "top" => "Головний", + "use_destination_based_tax" => "Використовуйте податок на основі призначення", + "user_timezone" => "Місцевий часовий пояс:", + "website" => "Веб-сайт", + "wholesale_markup" => "", + "work_order_enable" => "Підтримка робочого замовлення", + "work_order_format" => "Формат робочого замовлення", ]; diff --git a/app/Language/uk/Customers.php b/app/Language/uk/Customers.php index c7287c086..a35973a5d 100644 --- a/app/Language/uk/Customers.php +++ b/app/Language/uk/Customers.php @@ -1,56 +1,56 @@ "Номер рахунку", - "account_number_duplicate" => "Такий номер рахунку вже є в базі данних.", - "available_points" => "Доступні бали", - "available_points_value" => "", - "average" => "Середнє витрачене", - "avg_discount" => "Середня знижка", - "basic_information" => "Інформація", - "cannot_be_deleted" => "Неможливо видалити вибраних клієнтів, один або кілька вибраних клієнтів мають продажі.", - "company_name" => "Назва організації", - "confirm_delete" => "Ви впевнені, що хочете видалити вибраних клієнтів?", - "confirm_restore" => "Ви впевнені,що хочете відновити вибраних клієнтів?", - "consent" => "Згода на реєстрацію", - "consent_required" => "Згода на реєстрацію - обов'язкове поле.", - "csv_import_failed" => "Помилка імпорту CSV", - "csv_import_nodata_wrongformat" => "Завантажений файл не містить даних або неправильно відформатований.", - "csv_import_partially_failed" => "Імпорт клієнта пройшов успішно, але з деякими збоями:", - "csv_import_success" => "Імпорт клієнта вдалий.", - "customer" => "Клієнт", - "date" => "Дата", - "discount" => "Знижка", - "discount_fixed" => "Фіксована знижка", - "discount_percent" => "Відсоткова знижка", - "discount_type" => "Тип знижки", - "email_duplicate" => "Така адреса електронної пошти вже існує в базі данних.", - "employee" => "Працівник", - "error_adding_updating" => "Помилка при додаванні/оновленні клієнта.", - "import_items_csv" => "Імпорт клієнта з CSV", - "mailchimp_activity_click" => "Кнопка електронної пошти", - "mailchimp_activity_lastopen" => "Останній відкритий лист", - "mailchimp_activity_open" => "Лист прочитано", - "mailchimp_activity_total" => "Відправлено електронною поштою", - "mailchimp_activity_unopen" => "Лист непрочитано", - "mailchimp_email_client" => "Поштовий клієнт", - "mailchimp_info" => "MailChimp", - "mailchimp_member_rating" => "Рейтинг", - "mailchimp_status" => "Статус", - "mailchimp_vip" => "VIP", - "max" => "Макс. витрачено", - "min" => "Мін. витрачено", - "new" => "Новий клієнт", - "none_selected" => "Ви не обрали клієнтів для видалення.", - "one_or_multiple" => "Клієнт(и)", - "quantity" => "Кількість", - "stats_info" => "Статистика", - "successful_adding" => "Ви успішно додали клієнтів", - "successful_deleted" => "Ви успішно видалили клієнтів", - "successful_updating" => "Ви успішно оновили клієнтів", - "tax_code" => "Податковий код", - "tax_id" => "Податковий ІН", - "taxable" => "Оподатковуваний", - "total" => "Загальна витрачена сума", - "update" => "Онвити клієнта", - "rewards_package" => "Пакет нагород", + "account_number" => "Номер рахунку", + "account_number_duplicate" => "Такий номер рахунку вже є в базі данних.", + "available_points" => "Доступні бали", + "available_points_value" => "", + "average" => "Середнє витрачене", + "avg_discount" => "Середня знижка", + "basic_information" => "Інформація", + "cannot_be_deleted" => "Неможливо видалити вибраних клієнтів, один або кілька вибраних клієнтів мають продажі.", + "company_name" => "Назва організації", + "confirm_delete" => "Ви впевнені, що хочете видалити вибраних клієнтів?", + "confirm_restore" => "Ви впевнені,що хочете відновити вибраних клієнтів?", + "consent" => "Згода на реєстрацію", + "consent_required" => "Згода на реєстрацію - обов'язкове поле.", + "csv_import_failed" => "Помилка імпорту CSV", + "csv_import_nodata_wrongformat" => "Завантажений файл не містить даних або неправильно відформатований.", + "csv_import_partially_failed" => "Імпорт клієнта пройшов успішно, але з деякими збоями:", + "csv_import_success" => "Імпорт клієнта вдалий.", + "customer" => "Клієнт", + "date" => "Дата", + "discount" => "Знижка", + "discount_fixed" => "Фіксована знижка", + "discount_percent" => "Відсоткова знижка", + "discount_type" => "Тип знижки", + "email_duplicate" => "Така адреса електронної пошти вже існує в базі данних.", + "employee" => "Працівник", + "error_adding_updating" => "Помилка при додаванні/оновленні клієнта.", + "import_items_csv" => "Імпорт клієнта з CSV", + "mailchimp_activity_click" => "Кнопка електронної пошти", + "mailchimp_activity_lastopen" => "Останній відкритий лист", + "mailchimp_activity_open" => "Лист прочитано", + "mailchimp_activity_total" => "Відправлено електронною поштою", + "mailchimp_activity_unopen" => "Лист непрочитано", + "mailchimp_email_client" => "Поштовий клієнт", + "mailchimp_info" => "MailChimp", + "mailchimp_member_rating" => "Рейтинг", + "mailchimp_status" => "Статус", + "mailchimp_vip" => "VIP", + "max" => "Макс. витрачено", + "min" => "Мін. витрачено", + "new" => "Новий клієнт", + "none_selected" => "Ви не обрали клієнтів для видалення.", + "one_or_multiple" => "Клієнт(и)", + "quantity" => "Кількість", + "stats_info" => "Статистика", + "successful_adding" => "Ви успішно додали клієнтів", + "successful_deleted" => "Ви успішно видалили клієнтів", + "successful_updating" => "Ви успішно оновили клієнтів", + "tax_code" => "Податковий код", + "tax_id" => "Податковий ІН", + "taxable" => "Оподатковуваний", + "total" => "Загальна витрачена сума", + "update" => "Онвити клієнта", + "rewards_package" => "Пакет нагород", ]; diff --git a/app/Language/uk/Datepicker.php b/app/Language/uk/Datepicker.php index 1bf833419..ffd5e3d3d 100644 --- a/app/Language/uk/Datepicker.php +++ b/app/Language/uk/Datepicker.php @@ -1,23 +1,23 @@ "За весь час", - "apply" => "Застосувати", - "cancel" => "Скасувати", - "custom" => "Покупці", - "from" => "З", - "last_30" => "Останні 30 днів", - "last_7" => "Останні 7 днів", - "last_financial_year" => "Останній фінансовий рік", - "last_month" => "Минулий місяць", - "last_year" => "Минулий рік", - "same_month_last_year" => "Цей місяць минулого року", - "same_month_to_same_day_last_year" => "Цей день цього місяця минулого року", - "this_financial_year" => "Поточний фінансовий рік", - "this_month" => "Цього місяця", - "this_year" => "Цього року", - "to" => "До", - "today" => "Сьогодні", - "today_last_year" => "Сьогодні минулого року", - "weekstart" => "0", - "yesterday" => "Вчора", + "all_time" => "За весь час", + "apply" => "Застосувати", + "cancel" => "Скасувати", + "custom" => "Покупці", + "from" => "З", + "last_30" => "Останні 30 днів", + "last_7" => "Останні 7 днів", + "last_financial_year" => "Останній фінансовий рік", + "last_month" => "Минулий місяць", + "last_year" => "Минулий рік", + "same_month_last_year" => "Цей місяць минулого року", + "same_month_to_same_day_last_year" => "Цей день цього місяця минулого року", + "this_financial_year" => "Поточний фінансовий рік", + "this_month" => "Цього місяця", + "this_year" => "Цього року", + "to" => "До", + "today" => "Сьогодні", + "today_last_year" => "Сьогодні минулого року", + "weekstart" => "0", + "yesterday" => "Вчора", ]; diff --git a/app/Language/uk/Employees.php b/app/Language/uk/Employees.php index 217f9c01d..f51953221 100644 --- a/app/Language/uk/Employees.php +++ b/app/Language/uk/Employees.php @@ -1,44 +1,44 @@ "", - "basic_information" => "Інформація про працівників", - "cannot_be_deleted" => "Неможливо видалити вибраних працівника(ів), які вже здійснили продажі або ви намагаєтесь видалити свій обліковий запис.", - "change_employee" => "", - "change_password" => "Змінити пароль", - "clerk" => "", - "commission" => "", - "confirm_delete" => "Ви впевнені, що хочете видалити обраного(их) працівника(ів)?", - "confirm_restore" => "Ви впевнені, що хочете відновити обраного(их) працівника(ів)?", - "current_password" => "Поточний пароль", - "current_password_invalid" => "Поточний пароль невірний.", - "employee" => "Працівник", - "error_adding_updating" => "Помилка при додаванні/оновлені працівника.", - "error_deleting_demo_admin" => "Ви не можете видалити аккаунт користувача.", - "error_updating_demo_admin" => "Ви не можете змінити аккаунт користувача.", - "language" => "Мова", - "login_info" => "Вхід", - "manager" => "", - "new" => "Новий працівник", - "none_selected" => "Ви не вибрали працівника(ів) для видалення.", - "one_or_multiple" => "Працівник(и)", - "password" => "Пароль", - "password_minlength" => "Пароль повинен містити не менше 8 символів.", - "password_must_match" => "Паролі не співпадають.", - "password_not_must_match" => "Поточний пароль та новий пароль не повинні співпадати.", - "password_required" => "Пароль - обов'язкове поле.", - "permission_desc" => "Поставте прапорці нижче, щоб надати доступ до модулів.", - "permission_info" => "Дозволи", - "repeat_password" => "Повторіть пароль", - "subpermission_required" => "Додайте принаймні один грант для кожного модуля.", - "successful_adding" => "Ви успішно додали працівника.", - "successful_change_password" => "Пароль успішно змінено.", - "successful_deleted" => "Працівника успішно видалено", - "successful_updating" => "Працівника успішно оновлено", - "system_language" => "Мова системи", - "unsuccessful_change_password" => "Не вдалось змінити пароль.", - "update" => "Оновити працівника", - "username" => "Ім'я користувача", - "username_duplicate" => "", - "username_minlength" => "Ім'я користувача повинно бути не менше 5 символів.", - "username_required" => "Ім'я користувача - обов'язкове поле.", + "administrator" => "", + "basic_information" => "Інформація про працівників", + "cannot_be_deleted" => "Неможливо видалити вибраних працівника(ів), які вже здійснили продажі або ви намагаєтесь видалити свій обліковий запис.", + "change_employee" => "", + "change_password" => "Змінити пароль", + "clerk" => "", + "commission" => "", + "confirm_delete" => "Ви впевнені, що хочете видалити обраного(их) працівника(ів)?", + "confirm_restore" => "Ви впевнені, що хочете відновити обраного(их) працівника(ів)?", + "current_password" => "Поточний пароль", + "current_password_invalid" => "Поточний пароль невірний.", + "employee" => "Працівник", + "error_adding_updating" => "Помилка при додаванні/оновлені працівника.", + "error_deleting_demo_admin" => "Ви не можете видалити аккаунт користувача.", + "error_updating_demo_admin" => "Ви не можете змінити аккаунт користувача.", + "language" => "Мова", + "login_info" => "Вхід", + "manager" => "", + "new" => "Новий працівник", + "none_selected" => "Ви не вибрали працівника(ів) для видалення.", + "one_or_multiple" => "Працівник(и)", + "password" => "Пароль", + "password_minlength" => "Пароль повинен містити не менше 8 символів.", + "password_must_match" => "Паролі не співпадають.", + "password_not_must_match" => "Поточний пароль та новий пароль не повинні співпадати.", + "password_required" => "Пароль - обов'язкове поле.", + "permission_desc" => "Поставте прапорці нижче, щоб надати доступ до модулів.", + "permission_info" => "Дозволи", + "repeat_password" => "Повторіть пароль", + "subpermission_required" => "Додайте принаймні один грант для кожного модуля.", + "successful_adding" => "Ви успішно додали працівника.", + "successful_change_password" => "Пароль успішно змінено.", + "successful_deleted" => "Працівника успішно видалено", + "successful_updating" => "Працівника успішно оновлено", + "system_language" => "Мова системи", + "unsuccessful_change_password" => "Не вдалось змінити пароль.", + "update" => "Оновити працівника", + "username" => "Ім'я користувача", + "username_duplicate" => "", + "username_minlength" => "Ім'я користувача повинно бути не менше 5 символів.", + "username_required" => "Ім'я користувача - обов'язкове поле.", ]; diff --git a/app/Language/uk/Enum.php b/app/Language/uk/Enum.php index 37817b2b1..2340023de 100644 --- a/app/Language/uk/Enum.php +++ b/app/Language/uk/Enum.php @@ -1,10 +1,10 @@ "Половина вниз", - "half_even" => "Половина", - "half_five" => "Половина п'яти", - "half_odd" => "Половина непарного", - "half_up" => "Половина вгору", - "round_down" => "Заокруглити", - "round_up" => "Об'єднати", + "half_down" => "Половина вниз", + "half_even" => "Половина", + "half_five" => "Половина п'яти", + "half_odd" => "Половина непарного", + "half_up" => "Половина вгору", + "round_down" => "Заокруглити", + "round_up" => "Об'єднати", ]; diff --git a/app/Language/uk/Error.php b/app/Language/uk/Error.php index 2e55bac78..2496da714 100644 --- a/app/Language/uk/Error.php +++ b/app/Language/uk/Error.php @@ -1,5 +1,5 @@ "У вас немає дозволу на доступ до модуля", - "unknown" => "Невідомий", + "no_permission_module" => "У вас немає дозволу на доступ до модуля", + "unknown" => "Невідомий", ]; diff --git a/app/Language/uk/Expenses.php b/app/Language/uk/Expenses.php index 7acee8494..686503558 100644 --- a/app/Language/uk/Expenses.php +++ b/app/Language/uk/Expenses.php @@ -1,50 +1,50 @@ "Додати витрати", - "amount" => "Сума", - "amount_number" => "Сума повинна бути числом", - "amount_required" => "Сума витрат - обов'язкове поле", - "by_category" => "Категорія", - "cannot_be_deleted" => "Не вдалось видалити категорію витрат", - "cash" => "Готівка", - "cash_filter" => "Готівка", - "categories_name" => "Категорія", - "category_required" => "Категорія - обов'язкове поле", - "check" => "Чек", - "check_filter" => "Чек", - "confirm_delete" => "Ви впевнені, що хочете видалити вибрані витрати?", - "confirm_restore" => "Ви впевнені, що хочете відновити вибрані витрати?", - "credit" => "Кредитна карта", - "credit_filter" => "Кредитна карта", - "date" => "Дата", - "date_number" => "Дата повинна бути числом", - "date_required" => "Дата - - обов'язкове поле", - "debit" => "Дебетна карта", - "debit_filter" => "Дебетна карта", - "description" => "Опис", - "due" => "Кредиторська заборгованість", - "due_filter" => "Кредиторська заборгованість", - "employee" => "Створено", - "error_adding_updating" => "Помилка додавання/оновлення витрат", - "expense_id" => "ІН", - "expenses_employee" => "Працівник", - "info" => "Інформація про Витрати", - "ip_address" => "", - "is_deleted" => "Видалено", - "name_required" => "Потрібен опис витрат", - "new" => "Нові витрати", - "new_supplier" => "", - "no_expenses_to_display" => "Немає жодних витрат для відображення", - "none_selected" => "Ви не обрали жодних витрат", - "one_or_multiple" => "Витрати", - "payment" => "Тип оплати", - "start_typing_supplier_name" => "Введіть ім’я постачальника...", - "successful_adding" => "Витрати успішно додано", - "successful_deleted" => "Витрати успішно видалено", - "successful_updating" => "Витрати успішно оновлено", - "supplier_name" => "Постачальник", - "supplier_tax_code" => "Податковий код", - "tax_amount" => "Податок", - "tax_amount_number" => "", - "update" => "Оновити витрати", + "add_item" => "Додати витрати", + "amount" => "Сума", + "amount_number" => "Сума повинна бути числом", + "amount_required" => "Сума витрат - обов'язкове поле", + "by_category" => "Категорія", + "cannot_be_deleted" => "Не вдалось видалити категорію витрат", + "cash" => "Готівка", + "cash_filter" => "Готівка", + "categories_name" => "Категорія", + "category_required" => "Категорія - обов'язкове поле", + "check" => "Чек", + "check_filter" => "Чек", + "confirm_delete" => "Ви впевнені, що хочете видалити вибрані витрати?", + "confirm_restore" => "Ви впевнені, що хочете відновити вибрані витрати?", + "credit" => "Кредитна карта", + "credit_filter" => "Кредитна карта", + "date" => "Дата", + "date_number" => "Дата повинна бути числом", + "date_required" => "Дата - - обов'язкове поле", + "debit" => "Дебетна карта", + "debit_filter" => "Дебетна карта", + "description" => "Опис", + "due" => "Кредиторська заборгованість", + "due_filter" => "Кредиторська заборгованість", + "employee" => "Створено", + "error_adding_updating" => "Помилка додавання/оновлення витрат", + "expense_id" => "ІН", + "expenses_employee" => "Працівник", + "info" => "Інформація про Витрати", + "ip_address" => "", + "is_deleted" => "Видалено", + "name_required" => "Потрібен опис витрат", + "new" => "Нові витрати", + "new_supplier" => "", + "no_expenses_to_display" => "Немає жодних витрат для відображення", + "none_selected" => "Ви не обрали жодних витрат", + "one_or_multiple" => "Витрати", + "payment" => "Тип оплати", + "start_typing_supplier_name" => "Введіть ім’я постачальника...", + "successful_adding" => "Витрати успішно додано", + "successful_deleted" => "Витрати успішно видалено", + "successful_updating" => "Витрати успішно оновлено", + "supplier_name" => "Постачальник", + "supplier_tax_code" => "Податковий код", + "tax_amount" => "Податок", + "tax_amount_number" => "", + "update" => "Оновити витрати", ]; diff --git a/app/Language/uk/Expenses_categories.php b/app/Language/uk/Expenses_categories.php index db70ad806..09bc32f79 100644 --- a/app/Language/uk/Expenses_categories.php +++ b/app/Language/uk/Expenses_categories.php @@ -1,22 +1,22 @@ "Оберіть назву для категорії витрат", - "add_item" => "Додати категорію", - "cannot_be_deleted" => "Не вдалось видалити категорію витрат", - "category_id" => "ІН", - "confirm_delete" => "Ви впевнені, що хочете видалити вибрану категорію витрат?", - "confirm_restore" => "Ви впевнені, що хочете відновити вибрану категорію витрат?", - "description" => "Опис категорії", - "error_adding_updating" => "Помилка додавання/оновлення категорії витрат", - "info" => "Інформація про категорію витрат", - "name" => "Назва категорії", - "new" => "Нова категорія", - "no_expenses_categories_to_display" => "Немає категорій для відображення", - "none_selected" => "Ви не обрали жодної категорії витрат", - "one_or_multiple" => "Категорія витрат", - "quantity" => "Кількість", - "successful_adding" => "Категорію витрат успішно додано", - "successful_deleted" => "Категорію витрат успішно видалено", - "successful_updating" => "Категорію витрат успішно оновлено", - "update" => "Оновити категорію", + "category_name_required" => "Оберіть назву для категорії витрат", + "add_item" => "Додати категорію", + "cannot_be_deleted" => "Не вдалось видалити категорію витрат", + "category_id" => "ІН", + "confirm_delete" => "Ви впевнені, що хочете видалити вибрану категорію витрат?", + "confirm_restore" => "Ви впевнені, що хочете відновити вибрану категорію витрат?", + "description" => "Опис категорії", + "error_adding_updating" => "Помилка додавання/оновлення категорії витрат", + "info" => "Інформація про категорію витрат", + "name" => "Назва категорії", + "new" => "Нова категорія", + "no_expenses_categories_to_display" => "Немає категорій для відображення", + "none_selected" => "Ви не обрали жодної категорії витрат", + "one_or_multiple" => "Категорія витрат", + "quantity" => "Кількість", + "successful_adding" => "Категорію витрат успішно додано", + "successful_deleted" => "Категорію витрат успішно видалено", + "successful_updating" => "Категорію витрат успішно оновлено", + "update" => "Оновити категорію", ]; diff --git a/app/Language/uk/Giftcards.php b/app/Language/uk/Giftcards.php index 107325ef3..f3edd209c 100644 --- a/app/Language/uk/Giftcards.php +++ b/app/Language/uk/Giftcards.php @@ -1,71 +1,71 @@ "Інвентар для додавання або віднімання.", - "allow_alt_description" => "Дозволити альтернативний опис", - "bulk_edit" => "Масове редагування", - "cannot_be_deleted" => "Не вдалося видалити вибрані подарункові картки, одна чи кілька вибраних подарункових карток мають продажі.", - "cannot_find_giftcard" => "Подарункова карта не знайдена.", - "cannot_use" => "Подарункова карта {0} не може бути використана для цієї покупки: недійсний клієнт.", - "card_value" => "Вартість", - "category" => "Категорія", - "change_all_to_allow_alt_desc" => "Дозволити альтернативний опис для всіх.", - "change_all_to_not_allow_allow_desc" => "Не дозволяти альтернативний опис для всіх.", - "change_all_to_serialized" => "Змінити все на серіалізовані", - "change_all_to_unserialized" => "Змінити все на несеріалізовані", - "confirm_bulk_edit" => "Ви впевнені, що хочете редагувати всі вибрані подарункові карти?", - "confirm_delete" => "Ви впевнені, що хочете видалити вибрані подарункові карти?", - "confirm_restore" => "Ви впевнені, що хочете відновити вибрані подарункові карти?", - "cost_price" => "Оптова ціна", - "count" => "Оновлення переліку (інвентаря)", - "csv_import_failed" => "Помилка імпорту CSV.", - "current_quantity" => "Кількість", - "description" => "Опис", - "details_count" => "Детальна інвентаризація", - "do_nothing" => "Нічого не робити", - "edit_fields_you_want_to_update" => "Відредагуйте потрібні поля для вибраних подарункових карт.", - "edit_multiple_giftcards" => "Редагування декількох подарунковиїх карт.", - "error_adding_updating" => "Помилка при додаванні/оновленні подарункової карти.", - "error_updating_multiple" => "Помилка при оновлені подарункових карт.", - "generate_barcodes" => "Створення штрих-кодів", - "giftcard" => "Подарункова карта", - "giftcard_number" => "Номер подарункової карти", - "info_provided_by" => "Інформація надана (ким)", - "inventory_comments" => "Коментарі", - "is_serialized" => "Подарункова карта має серійний номер", - "low_inventory_giftcards" => "Подарункові карти з низьким рівнем товарно-матеріальних запасів", - "manually_editing_of_quantity" => "Ручне редагування кількості", - "must_select_giftcard_for_barcode" => "Ви повинні вибрати хоча б 1 подарункову карту для створення штрих-кодів.", - "new" => "Нова подарункова карта", - "no_description_giftcards" => "Немає опису подарункової карти", - "no_giftcards_to_display" => "Немає подарункових карт для відображення.", - "none" => "Жоден", - "none_selected" => "Ви не вибрали подарункової карти для редагування.", - "number" => "Номер подарункової карти має бути числом.", - "number_information" => "Номер Подарункової карти", - "number_required" => "Номер подарункової карти - обов'язкове поле.", - "one_or_multiple" => "Подарункова карта(и)", - "person_id" => "Клієнт", - "quantity" => "Кількість", - "quantity_required" => "Кількість - це обов'язкове поле. Закрийте (X), щоб скасувати.", - "remaining_balance" => "Подарункові карти від {0} до {1}!", - "reorder_level" => "Об'єм перезамовлення", - "retrive_giftcard_info" => "Отримати інформацію про подарункову карту", - "sales_tax_1" => "Податок з продажу", - "sales_tax_2" => "Податок з продажу 2", - "serialized_giftcards" => "Сериалізовані подарункові карти", - "successful_adding" => "Подарункову карту успішно додано", - "successful_bulk_edit" => "Обрану подарункову карту(и) успішно оновлено", - "successful_deleted" => "Подарункову карту успішно втдалено", - "successful_updating" => "Подарункову карту успішно оновлено", - "supplier" => "Постачальник", - "tax_1" => "Податок 1", - "tax_2" => "Податок 2", - "tax_percent" => "Відсоток податку", - "tax_percents" => "Податкові відсотки", - "unit_price" => "Роздрібна ціна", - "upc_database" => "UPC база даних", - "update" => "Оновити подарункові карти", - "use_inventory_menu" => "Використовуйте меню інвентарю", - "value" => "Вартість подарункової карти має бути числом.", - "value_required" => "Вартість подарункової карти - обов'язкове поле.", + "add_minus" => "Інвентар для додавання або віднімання.", + "allow_alt_description" => "Дозволити альтернативний опис", + "bulk_edit" => "Масове редагування", + "cannot_be_deleted" => "Не вдалося видалити вибрані подарункові картки, одна чи кілька вибраних подарункових карток мають продажі.", + "cannot_find_giftcard" => "Подарункова карта не знайдена.", + "cannot_use" => "Подарункова карта {0} не може бути використана для цієї покупки: недійсний клієнт.", + "card_value" => "Вартість", + "category" => "Категорія", + "change_all_to_allow_alt_desc" => "Дозволити альтернативний опис для всіх.", + "change_all_to_not_allow_allow_desc" => "Не дозволяти альтернативний опис для всіх.", + "change_all_to_serialized" => "Змінити все на серіалізовані", + "change_all_to_unserialized" => "Змінити все на несеріалізовані", + "confirm_bulk_edit" => "Ви впевнені, що хочете редагувати всі вибрані подарункові карти?", + "confirm_delete" => "Ви впевнені, що хочете видалити вибрані подарункові карти?", + "confirm_restore" => "Ви впевнені, що хочете відновити вибрані подарункові карти?", + "cost_price" => "Оптова ціна", + "count" => "Оновлення переліку (інвентаря)", + "csv_import_failed" => "Помилка імпорту CSV.", + "current_quantity" => "Кількість", + "description" => "Опис", + "details_count" => "Детальна інвентаризація", + "do_nothing" => "Нічого не робити", + "edit_fields_you_want_to_update" => "Відредагуйте потрібні поля для вибраних подарункових карт.", + "edit_multiple_giftcards" => "Редагування декількох подарунковиїх карт.", + "error_adding_updating" => "Помилка при додаванні/оновленні подарункової карти.", + "error_updating_multiple" => "Помилка при оновлені подарункових карт.", + "generate_barcodes" => "Створення штрих-кодів", + "giftcard" => "Подарункова карта", + "giftcard_number" => "Номер подарункової карти", + "info_provided_by" => "Інформація надана (ким)", + "inventory_comments" => "Коментарі", + "is_serialized" => "Подарункова карта має серійний номер", + "low_inventory_giftcards" => "Подарункові карти з низьким рівнем товарно-матеріальних запасів", + "manually_editing_of_quantity" => "Ручне редагування кількості", + "must_select_giftcard_for_barcode" => "Ви повинні вибрати хоча б 1 подарункову карту для створення штрих-кодів.", + "new" => "Нова подарункова карта", + "no_description_giftcards" => "Немає опису подарункової карти", + "no_giftcards_to_display" => "Немає подарункових карт для відображення.", + "none" => "Жоден", + "none_selected" => "Ви не вибрали подарункової карти для редагування.", + "number" => "Номер подарункової карти має бути числом.", + "number_information" => "Номер Подарункової карти", + "number_required" => "Номер подарункової карти - обов'язкове поле.", + "one_or_multiple" => "Подарункова карта(и)", + "person_id" => "Клієнт", + "quantity" => "Кількість", + "quantity_required" => "Кількість - це обов'язкове поле. Закрийте (X), щоб скасувати.", + "remaining_balance" => "Подарункові карти від {0} до {1}!", + "reorder_level" => "Об'єм перезамовлення", + "retrive_giftcard_info" => "Отримати інформацію про подарункову карту", + "sales_tax_1" => "Податок з продажу", + "sales_tax_2" => "Податок з продажу 2", + "serialized_giftcards" => "Сериалізовані подарункові карти", + "successful_adding" => "Подарункову карту успішно додано", + "successful_bulk_edit" => "Обрану подарункову карту(и) успішно оновлено", + "successful_deleted" => "Подарункову карту успішно втдалено", + "successful_updating" => "Подарункову карту успішно оновлено", + "supplier" => "Постачальник", + "tax_1" => "Податок 1", + "tax_2" => "Податок 2", + "tax_percent" => "Відсоток податку", + "tax_percents" => "Податкові відсотки", + "unit_price" => "Роздрібна ціна", + "upc_database" => "UPC база даних", + "update" => "Оновити подарункові карти", + "use_inventory_menu" => "Використовуйте меню інвентарю", + "value" => "Вартість подарункової карти має бути числом.", + "value_required" => "Вартість подарункової карти - обов'язкове поле.", ]; diff --git a/app/Language/uk/Item_kits.php b/app/Language/uk/Item_kits.php index 79c3c9939..7c719f658 100644 --- a/app/Language/uk/Item_kits.php +++ b/app/Language/uk/Item_kits.php @@ -1,41 +1,41 @@ "Додати товар", - "all" => "Все", - "cannot_be_deleted" => "Не можливо видалити товар(и).", - "confirm_delete" => "Ви впевнені, що хочете видалити вибрані набори товарів?", - "confirm_restore" => "Ви впевнені, що хочете відновити вибрані набори товарів?", - "description" => "Опис комплекту товарів", - "discount" => "Знижка", - "discount_fixed" => "Фіксована знижка", - "discount_percent" => "Відсоткова знижки", - "discount_type" => "Тип знижки", - "error_adding_updating" => "При додаванні/оновленні комплекту товарів виникла помилка.", - "find_kit_item" => "Комплект товару", - "info" => "Інформація про комплект товару", - "item" => "Товар", - "item_kit_number" => "Штрихкод", - "item_kit_number_duplicate" => "Товарний комплект вже присутній у базі.", - "item_number" => "", - "item_number_duplicate" => "", - "items" => "Товари", - "kit" => "ІН комплекту", - "kit_and_components" => "Комплект та комплектуючі", - "kit_and_stock" => "Комплект та запас(склад)", - "kit_only" => "Тільки комплект", - "name" => "Найменування комплекту товару", - "new" => "Новий комплект товару", - "no_item_kits_to_display" => "Немає товару для відображення.", - "none_selected" => "Ви не обрали жодного товару.", - "one_or_multiple" => "Комплект товару(ів)", - "price_option" => "Варіант ціни", - "priced_only" => "Тільки за ціною", - "print_option" => "Параметр друку", - "quantity" => "Кількість", - "sequence" => "Послідовність", - "successful_adding" => "Комплект товару успішно додано", - "successful_deleted" => "Комплект товару успішно видалено", - "successful_updating" => "Комплект товару успішно оновлено", - "unit_price" => "", - "update" => "Оновити комплект товару", + "add_item" => "Додати товар", + "all" => "Все", + "cannot_be_deleted" => "Не можливо видалити товар(и).", + "confirm_delete" => "Ви впевнені, що хочете видалити вибрані набори товарів?", + "confirm_restore" => "Ви впевнені, що хочете відновити вибрані набори товарів?", + "description" => "Опис комплекту товарів", + "discount" => "Знижка", + "discount_fixed" => "Фіксована знижка", + "discount_percent" => "Відсоткова знижки", + "discount_type" => "Тип знижки", + "error_adding_updating" => "При додаванні/оновленні комплекту товарів виникла помилка.", + "find_kit_item" => "Комплект товару", + "info" => "Інформація про комплект товару", + "item" => "Товар", + "item_kit_number" => "Штрихкод", + "item_kit_number_duplicate" => "Товарний комплект вже присутній у базі.", + "item_number" => "", + "item_number_duplicate" => "", + "items" => "Товари", + "kit" => "ІН комплекту", + "kit_and_components" => "Комплект та комплектуючі", + "kit_and_stock" => "Комплект та запас(склад)", + "kit_only" => "Тільки комплект", + "name" => "Найменування комплекту товару", + "new" => "Новий комплект товару", + "no_item_kits_to_display" => "Немає товару для відображення.", + "none_selected" => "Ви не обрали жодного товару.", + "one_or_multiple" => "Комплект товару(ів)", + "price_option" => "Варіант ціни", + "priced_only" => "Тільки за ціною", + "print_option" => "Параметр друку", + "quantity" => "Кількість", + "sequence" => "Послідовність", + "successful_adding" => "Комплект товару успішно додано", + "successful_deleted" => "Комплект товару успішно видалено", + "successful_updating" => "Комплект товару успішно оновлено", + "unit_price" => "", + "update" => "Оновити комплект товару", ]; diff --git a/app/Language/uk/Items.php b/app/Language/uk/Items.php index 9d3e7b4ff..7c0b677d8 100644 --- a/app/Language/uk/Items.php +++ b/app/Language/uk/Items.php @@ -1,120 +1,120 @@ "Додати/видалити товар.", - "allow_alt_description" => "Дозволити альтернативний опис", - "amount_entry" => "Введення кількості", - "bulk_edit" => "Масове редагування", - "buy_price_required" => "Ціна закупівлі - обов'язкове поле.", - "cannot_be_deleted" => "Неможливо видалити вибраний товар(и), так як відбувається його (їх) продаж.", - "cannot_find_item" => "Товар не знайдено.", - "categories" => "", - "category" => "Категорія", - "category_new" => "", - "category_required" => "Категорія - обов'язкове поле.", - "change_all_to_allow_alt_desc" => "Дозволити альтернативний опис для всіх товарів.", - "change_all_to_not_allow_allow_desc" => "Не дозволяти альтернативний опис для всіх товарів.", - "change_all_to_serialized" => "Змінити все в серіалізоване", - "change_all_to_unserialized" => "Змінити все в несеріалізоване", - "change_image" => "Змінити зображення", - "confirm_bulk_edit" => "Ви впевнені, що хочете редагувати вибрані товари?", - "confirm_bulk_edit_wipe_taxes" => "Вся податкова інформація про товари буде змінена.", - "confirm_delete" => "Ви впевнені, що хочете видалити вибрані товари?", - "confirm_restore" => "Ви впевнені, що хочете відновити вибрані товари?", - "cost_price" => "Оптова ціна", - "cost_price_number" => "Оптова ціна повинна бути числом.", - "cost_price_required" => "Оптова ціна - обов'язкове поле.", - "count" => "Оновити інвентар", - "csv_import_failed" => "Помилка імпорту CSV", - "csv_import_nodata_wrongformat" => "Завандажений файл порожній або відформатований неправильно.", - "csv_import_partially_failed" => "У рядках виявлено {0} помилки імпортування елементів: {1}. Не було імпортовано жодних рядків.", - "csv_import_success" => "Імпорт товару CSV успішний.", - "current_quantity" => "Поточна кількість", - "default_pack_name" => "Кожен", - "description" => "Опис", - "details_count" => "Детальна інвентаризація", - "do_nothing" => "Нічого не робити", - "edit" => "", - "edit_fields_you_want_to_update" => "Відредагуйте потрібні поля вибраних товарів.", - "edit_multiple_items" => "Редагування декількох товарів", - "empty_upc_items" => "Відсутній штрих-код товарів", - "error_adding_updating" => "Помилка при додаванні/оновленні товару", - "error_updating_multiple" => "Помилка при оновленні товарів", - "generate_barcodes" => "Згенерувати штрих-коди", - "hsn_code" => "Узгоджена номенклатура системи", - "image" => "Зображення", - "import_items_csv" => "Імпорт товару з CSV", - "info_provided_by" => "Інформація надана (ким)", - "inventory" => "Інвентаризація", - "inventory_CSV_import_quantity" => "Кількість, імпортована з CSV", - "inventory_comments" => "Коментарі", - "inventory_data_tracking" => "Відстеження даних інвентаря", - "inventory_date" => "Дата", - "inventory_employee" => "Працівник", - "inventory_in_out_quantity" => "Кількість Входів/Виходів", - "inventory_remarks" => "Нотатки", - "is_deleted" => "Видалений", - "is_printed" => "", - "is_serialized" => "Товар має серійний номер", - "item" => "Товар", - "item_id" => "", - "item_number" => "Штрих-код", - "item_number_duplicate" => "Такий номер товару вже існує в базі даних.", - "kit" => "Комплект", - "location" => "Місцерозташування", - "low_inventory_items" => "Товарів немає в наявності", - "low_sell_item" => "Товар з низьким продажем", - "manually_editing_of_quantity" => "Редагувати кількість вручну", - "markup" => "", - "name" => "Назва товару", - "name_required" => "Назва товару - обов’язкове поле.", - "new" => "Новий товар", - "no_description_items" => "Товари без опису", - "no_items_to_display" => "Немає товарів для відображення.", - "none" => "Нічого", - "none_selected" => "Ви не обрали жодного товару для редагування", - "nonstock" => "Немає в наявності", - "number_information" => "Номер товару", - "number_required" => "Штрих-код - обов'язкове поле.", - "one_or_multiple" => "Товар(и)", - "pack_name" => "Назва пакування", - "qty_per_pack" => "Кількість в упаковці", - "quantity" => "Кількість", - "quantity_number" => "Кількість має бути числом.", - "quantity_required" => "Кількість - обов’язкове поле.", - "receiving_quantity" => "Отримана кількість", - "remove_image" => "Видалити зображення", - "reorder_level" => "Обсяг перезамовлення", - "reorder_level_number" => "Обсяг перезамовлення має бути число.", - "reorder_level_required" => "Рівень упорядкування - обов'язкове поле.", - "retrive_item_info" => "Отримати інформацію про товар", - "sales_tax_1" => "Податок з продажів", - "sales_tax_2" => "ППодаток з продажів 2", - "search_attributes" => "Пошук атрибутів", - "select_image" => "Виберіть зображення", - "serialized_items" => "Серіалізовані товари", - "standard" => "Стандартний", - "stock" => "Склад", - "stock_location" => "Розташування складу", - "stock_type" => "Тип складу", - "successful_adding" => "Товар успішно додано", - "successful_bulk_edit" => "Вибрані товари успішно оновлено", - "successful_deleted" => "Вибрані товари успішно видалено", - "successful_updating" => "Товар успішно оновлено", - "supplier" => "Постачальник", - "tax_1" => "Податок 1", - "tax_2" => "Податок 2", - "tax_3" => "", - "tax_category" => "Тип податку", - "tax_percent" => "Податковий відсоток", - "tax_percent_number" => "Податковий відсоток має бути числом", - "tax_percent_required" => "Податковий відсоток - обов'язкове поле.", - "tax_percents" => "Податкові відсотки", - "temp" => "Тимчасовий", - "type" => "Тип товару", - "unit_price" => "Роздрібна ціна", - "unit_price_number" => "Роздрібна ціна має бути числом.", - "unit_price_required" => "Роздрібна ціна - обов'язкове поле.", - "upc_database" => "UPC база данх", - "update" => "Оновити Товар", - "use_inventory_menu" => "Використайте меню інвентаря", + "add_minus" => "Додати/видалити товар.", + "allow_alt_description" => "Дозволити альтернативний опис", + "amount_entry" => "Введення кількості", + "bulk_edit" => "Масове редагування", + "buy_price_required" => "Ціна закупівлі - обов'язкове поле.", + "cannot_be_deleted" => "Неможливо видалити вибраний товар(и), так як відбувається його (їх) продаж.", + "cannot_find_item" => "Товар не знайдено.", + "categories" => "", + "category" => "Категорія", + "category_new" => "", + "category_required" => "Категорія - обов'язкове поле.", + "change_all_to_allow_alt_desc" => "Дозволити альтернативний опис для всіх товарів.", + "change_all_to_not_allow_allow_desc" => "Не дозволяти альтернативний опис для всіх товарів.", + "change_all_to_serialized" => "Змінити все в серіалізоване", + "change_all_to_unserialized" => "Змінити все в несеріалізоване", + "change_image" => "Змінити зображення", + "confirm_bulk_edit" => "Ви впевнені, що хочете редагувати вибрані товари?", + "confirm_bulk_edit_wipe_taxes" => "Вся податкова інформація про товари буде змінена.", + "confirm_delete" => "Ви впевнені, що хочете видалити вибрані товари?", + "confirm_restore" => "Ви впевнені, що хочете відновити вибрані товари?", + "cost_price" => "Оптова ціна", + "cost_price_number" => "Оптова ціна повинна бути числом.", + "cost_price_required" => "Оптова ціна - обов'язкове поле.", + "count" => "Оновити інвентар", + "csv_import_failed" => "Помилка імпорту CSV", + "csv_import_nodata_wrongformat" => "Завандажений файл порожній або відформатований неправильно.", + "csv_import_partially_failed" => "У рядках виявлено {0} помилки імпортування елементів: {1}. Не було імпортовано жодних рядків.", + "csv_import_success" => "Імпорт товару CSV успішний.", + "current_quantity" => "Поточна кількість", + "default_pack_name" => "Кожен", + "description" => "Опис", + "details_count" => "Детальна інвентаризація", + "do_nothing" => "Нічого не робити", + "edit" => "", + "edit_fields_you_want_to_update" => "Відредагуйте потрібні поля вибраних товарів.", + "edit_multiple_items" => "Редагування декількох товарів", + "empty_upc_items" => "Відсутній штрих-код товарів", + "error_adding_updating" => "Помилка при додаванні/оновленні товару", + "error_updating_multiple" => "Помилка при оновленні товарів", + "generate_barcodes" => "Згенерувати штрих-коди", + "hsn_code" => "Узгоджена номенклатура системи", + "image" => "Зображення", + "import_items_csv" => "Імпорт товару з CSV", + "info_provided_by" => "Інформація надана (ким)", + "inventory" => "Інвентаризація", + "inventory_CSV_import_quantity" => "Кількість, імпортована з CSV", + "inventory_comments" => "Коментарі", + "inventory_data_tracking" => "Відстеження даних інвентаря", + "inventory_date" => "Дата", + "inventory_employee" => "Працівник", + "inventory_in_out_quantity" => "Кількість Входів/Виходів", + "inventory_remarks" => "Нотатки", + "is_deleted" => "Видалений", + "is_printed" => "", + "is_serialized" => "Товар має серійний номер", + "item" => "Товар", + "item_id" => "", + "item_number" => "Штрих-код", + "item_number_duplicate" => "Такий номер товару вже існує в базі даних.", + "kit" => "Комплект", + "location" => "Місцерозташування", + "low_inventory_items" => "Товарів немає в наявності", + "low_sell_item" => "Товар з низьким продажем", + "manually_editing_of_quantity" => "Редагувати кількість вручну", + "markup" => "", + "name" => "Назва товару", + "name_required" => "Назва товару - обов’язкове поле.", + "new" => "Новий товар", + "no_description_items" => "Товари без опису", + "no_items_to_display" => "Немає товарів для відображення.", + "none" => "Нічого", + "none_selected" => "Ви не обрали жодного товару для редагування", + "nonstock" => "Немає в наявності", + "number_information" => "Номер товару", + "number_required" => "Штрих-код - обов'язкове поле.", + "one_or_multiple" => "Товар(и)", + "pack_name" => "Назва пакування", + "qty_per_pack" => "Кількість в упаковці", + "quantity" => "Кількість", + "quantity_number" => "Кількість має бути числом.", + "quantity_required" => "Кількість - обов’язкове поле.", + "receiving_quantity" => "Отримана кількість", + "remove_image" => "Видалити зображення", + "reorder_level" => "Обсяг перезамовлення", + "reorder_level_number" => "Обсяг перезамовлення має бути число.", + "reorder_level_required" => "Рівень упорядкування - обов'язкове поле.", + "retrive_item_info" => "Отримати інформацію про товар", + "sales_tax_1" => "Податок з продажів", + "sales_tax_2" => "ППодаток з продажів 2", + "search_attributes" => "Пошук атрибутів", + "select_image" => "Виберіть зображення", + "serialized_items" => "Серіалізовані товари", + "standard" => "Стандартний", + "stock" => "Склад", + "stock_location" => "Розташування складу", + "stock_type" => "Тип складу", + "successful_adding" => "Товар успішно додано", + "successful_bulk_edit" => "Вибрані товари успішно оновлено", + "successful_deleted" => "Вибрані товари успішно видалено", + "successful_updating" => "Товар успішно оновлено", + "supplier" => "Постачальник", + "tax_1" => "Податок 1", + "tax_2" => "Податок 2", + "tax_3" => "", + "tax_category" => "Тип податку", + "tax_percent" => "Податковий відсоток", + "tax_percent_number" => "Податковий відсоток має бути числом", + "tax_percent_required" => "Податковий відсоток - обов'язкове поле.", + "tax_percents" => "Податкові відсотки", + "temp" => "Тимчасовий", + "type" => "Тип товару", + "unit_price" => "Роздрібна ціна", + "unit_price_number" => "Роздрібна ціна має бути числом.", + "unit_price_required" => "Роздрібна ціна - обов'язкове поле.", + "upc_database" => "UPC база данх", + "update" => "Оновити Товар", + "use_inventory_menu" => "Використайте меню інвентаря", ]; diff --git a/app/Language/uk/Login.php b/app/Language/uk/Login.php index 31fa2036f..a8b1db1c4 100644 --- a/app/Language/uk/Login.php +++ b/app/Language/uk/Login.php @@ -1,15 +1,15 @@ "Я не робот.", - "go" => "Увійти", - "invalid_gcaptcha" => "Підтвердіть, що ви не робот.", - "invalid_installation" => "Налаштування невірні, перевірте php.ini.", - "invalid_username_and_password" => "Невірний логін або пароль.", - "login" => "Логін", - "logout" => "", - "migration_needed" => "", - "password" => "Пароль", - "required_username" => "", - "username" => "Ім'я користувача", - "welcome" => "", + "gcaptcha" => "Я не робот.", + "go" => "Увійти", + "invalid_gcaptcha" => "Підтвердіть, що ви не робот.", + "invalid_installation" => "Налаштування невірні, перевірте php.ini.", + "invalid_username_and_password" => "Невірний логін або пароль.", + "login" => "Логін", + "logout" => "", + "migration_needed" => "", + "password" => "Пароль", + "required_username" => "", + "username" => "Ім'я користувача", + "welcome" => "", ]; diff --git a/app/Language/uk/Messages.php b/app/Language/uk/Messages.php index f01174c5a..fc0773bd5 100644 --- a/app/Language/uk/Messages.php +++ b/app/Language/uk/Messages.php @@ -1,15 +1,15 @@ "Ім'я", - "last_name" => "Прізвище", - "message" => "Повідомлення", - "message_placeholder" => "Напишіть тут ваше повідомленя.", - "message_required" => "Заповніть текст повідомлення", - "multiple_phones" => "(Якщо декілька одержувачів, введіть номери мобільних телефонів, розділені комами)", - "phone" => "Номер телефону", - "phone_number_required" => "Необхідний номер телефону", - "phone_placeholder" => "Мобільний номер (и) тут ...", - "sms_send" => "Надіслати SMS", - "successfully_sent" => "Повідомлення успішно надіслано: ", - "unsuccessfully_sent" => "Повідомлення невдало надіслано: ", + "first_name" => "Ім'я", + "last_name" => "Прізвище", + "message" => "Повідомлення", + "message_placeholder" => "Напишіть тут ваше повідомленя.", + "message_required" => "Заповніть текст повідомлення", + "multiple_phones" => "(Якщо декілька одержувачів, введіть номери мобільних телефонів, розділені комами)", + "phone" => "Номер телефону", + "phone_number_required" => "Необхідний номер телефону", + "phone_placeholder" => "Мобільний номер (и) тут ...", + "sms_send" => "Надіслати SMS", + "successfully_sent" => "Повідомлення успішно надіслано: ", + "unsuccessfully_sent" => "Повідомлення невдало надіслано: ", ]; diff --git a/app/Language/uk/Module.php b/app/Language/uk/Module.php index 19c0f31ce..1bcaa9e8f 100644 --- a/app/Language/uk/Module.php +++ b/app/Language/uk/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "Атрибути", - "attributes_desc" => "Додавання/оновлення, видалення та пошук атрибутів.", - "both" => "І те й інше", - "cashups" => "Готівка", - "cashups_desc" => "Додавання, оновлення, видалення та пошук готівки.", - "config" => "Конфігурація", - "config_desc" => "Змініть конфігуряцію OSPOS.", - "customers" => "Клієнти", - "customers_desc" => "Додавання, оновлення, видалення та пошук клієнтів.", - "employees" => "Працівники", - "employees_desc" => "Додавання, оновлення, видалення та пошук працівників.", - "expenses" => "Витрати", - "expenses_categories" => "Категорії витрат", - "expenses_categories_desc" => "Додавання, оновлення та видалення категорій витрат.", - "expenses_desc" => "Додавання, оновлення, видалення та пошук витрат.", - "giftcards" => "Подарункові карти", - "giftcards_desc" => "Додавання, оновлення, видалення та пошук подарункових карт.", - "home" => "Головна", - "home_desc" => "Список модулів головного меню.", - "item_kits" => "Комплекти товарів", - "item_kits_desc" => "Додавання, оновлення, видалення та пошук комплектів товарів.", - "items" => "Товари", - "items_desc" => "Додавання, оновлення, видалення та пошук товарів.", - "messages" => "Повідомлення", - "messages_desc" => "Надіслати повідомлення клієнтам, постачальникам та працівникам.", - "migrate" => "Перенесення", - "migrate_desc" => "Оновіть базу даних OSPOS.", - "office" => "Управління", - "office_desc" => "Список модулів меню управління.", - "receivings" => "Надходження", - "receivings_desc" => "Обробка замовлень на закупівлю.", - "reports" => "Звіти", - "reports_desc" => "Перегляд та створення звітів.", - "sales" => "Продажі", - "sales_desc" => "Процес продажу та повернення.", - "suppliers" => "Постачальники", - "suppliers_desc" => "Додавання, оновлення, видалення та пошук постачальників.", - "taxes" => "Податки", - "taxes_desc" => "Налаштування податків з продажу.", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "Атрибути", + "attributes_desc" => "Додавання/оновлення, видалення та пошук атрибутів.", + "both" => "І те й інше", + "cashups" => "Готівка", + "cashups_desc" => "Додавання, оновлення, видалення та пошук готівки.", + "config" => "Конфігурація", + "config_desc" => "Змініть конфігуряцію OSPOS.", + "customers" => "Клієнти", + "customers_desc" => "Додавання, оновлення, видалення та пошук клієнтів.", + "employees" => "Працівники", + "employees_desc" => "Додавання, оновлення, видалення та пошук працівників.", + "expenses" => "Витрати", + "expenses_categories" => "Категорії витрат", + "expenses_categories_desc" => "Додавання, оновлення та видалення категорій витрат.", + "expenses_desc" => "Додавання, оновлення, видалення та пошук витрат.", + "giftcards" => "Подарункові карти", + "giftcards_desc" => "Додавання, оновлення, видалення та пошук подарункових карт.", + "home" => "Головна", + "home_desc" => "Список модулів головного меню.", + "item_kits" => "Комплекти товарів", + "item_kits_desc" => "Додавання, оновлення, видалення та пошук комплектів товарів.", + "items" => "Товари", + "items_desc" => "Додавання, оновлення, видалення та пошук товарів.", + "messages" => "Повідомлення", + "messages_desc" => "Надіслати повідомлення клієнтам, постачальникам та працівникам.", + "migrate" => "Перенесення", + "migrate_desc" => "Оновіть базу даних OSPOS.", + "office" => "Управління", + "office_desc" => "Список модулів меню управління.", + "receivings" => "Надходження", + "receivings_desc" => "Обробка замовлень на закупівлю.", + "reports" => "Звіти", + "reports_desc" => "Перегляд та створення звітів.", + "sales" => "Продажі", + "sales_desc" => "Процес продажу та повернення.", + "suppliers" => "Постачальники", + "suppliers_desc" => "Додавання, оновлення, видалення та пошук постачальників.", + "taxes" => "Податки", + "taxes_desc" => "Налаштування податків з продажу.", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/uk/Receivings.php b/app/Language/uk/Receivings.php index 97af8458c..be9b1e176 100644 --- a/app/Language/uk/Receivings.php +++ b/app/Language/uk/Receivings.php @@ -1,58 +1,58 @@ "", - "cancel_receiving" => "Скасувати", - "cannot_be_deleted" => "Не вдалося видалити надходження.", - "comments" => "Примітки", - "complete_receiving" => "Завершити", - "confirm_cancel_receiving" => "Ви впевнені, що хочете очистити це надходження? Усі елементи будуть очищені.", - "confirm_delete" => "Ви впевнені, що хочете видалити це надходження? Цю дію неможливо скасувати.", - "confirm_finish_receiving" => "Ви впевнені, що хочете надіслати цей розписку? Це не може бути скасовано.", - "confirm_restore" => "", - "cost" => "Вартість", - "daily" => "", - "date" => "Дата надходження", - "date_required" => "Необхідно ввести правильну дату.", - "date_type" => "Дата - обов'язкове поле.", - "delete_entire_sale" => "Видалити всі продажі", - "discount" => "Знижка %", - "edit" => "Редагувати", - "edit_sale" => "Редагувати надходження", - "employee" => "Працівник", - "error_editing_item" => "Помилка редагування товару.", - "error_requisition" => "Неможливо перемістити товар з того чи іншого складу.", - "find_or_scan_item" => "Знайти/Сканувати товар", - "find_or_scan_item_or_receipt" => "Знайти/Сканувати товар або квитанцію", - "id" => "Надходження ІН", - "item_name" => "Назва товару", - "mode" => "Спосіб отримання", - "new_supplier" => "Новий постачальник", - "one_or_multiple" => "надходження", - "print_after_sale" => "Роздрукувати після продажу", - "quantity" => "Кількість", - "receipt" => "Квитанція про отримання", - "receipt_number" => "№ надходження", - "receiving" => "Отримати", - "reference" => "Посилання", - "register" => "Товари надходження", - "requisition" => "Реквізиція", - "return" => "Повернути", - "select_supplier" => "Виберіть постачальника (необов'зково)", - "ship_pack" => "Вантажний пакет", - "start_typing_supplier_name" => "Почніть вводити назву постачальника ...", - "stock" => "Склад", - "stock_destination" => "Пункт призначення", - "stock_locaiton" => "Розташування складу", - "stock_source" => "Походження складу", - "successfully_deleted" => "Успішно видалено", - "successfully_updated" => "Надходження успішно оновлено", - "supplier" => "Постачальник", - "supplier_address" => "Адреса", - "supplier_email" => "Електронна пошта клієнта", - "supplier_location" => "Розташування", - "total" => "Сума", - "transaction_failed" => "Помилка отримання транзакції.", - "unable_to_add_item" => "Неможливо додати товар на отримання.", - "unsuccessfully_updated" => "Помилка отримання оновлення.", - "update" => "Редагувати", + "amount_due" => "", + "cancel_receiving" => "Скасувати", + "cannot_be_deleted" => "Не вдалося видалити надходження.", + "comments" => "Примітки", + "complete_receiving" => "Завершити", + "confirm_cancel_receiving" => "Ви впевнені, що хочете очистити це надходження? Усі елементи будуть очищені.", + "confirm_delete" => "Ви впевнені, що хочете видалити це надходження? Цю дію неможливо скасувати.", + "confirm_finish_receiving" => "Ви впевнені, що хочете надіслати цей розписку? Це не може бути скасовано.", + "confirm_restore" => "", + "cost" => "Вартість", + "daily" => "", + "date" => "Дата надходження", + "date_required" => "Необхідно ввести правильну дату.", + "date_type" => "Дата - обов'язкове поле.", + "delete_entire_sale" => "Видалити всі продажі", + "discount" => "Знижка %", + "edit" => "Редагувати", + "edit_sale" => "Редагувати надходження", + "employee" => "Працівник", + "error_editing_item" => "Помилка редагування товару.", + "error_requisition" => "Неможливо перемістити товар з того чи іншого складу.", + "find_or_scan_item" => "Знайти/Сканувати товар", + "find_or_scan_item_or_receipt" => "Знайти/Сканувати товар або квитанцію", + "id" => "Надходження ІН", + "item_name" => "Назва товару", + "mode" => "Спосіб отримання", + "new_supplier" => "Новий постачальник", + "one_or_multiple" => "надходження", + "print_after_sale" => "Роздрукувати після продажу", + "quantity" => "Кількість", + "receipt" => "Квитанція про отримання", + "receipt_number" => "№ надходження", + "receiving" => "Отримати", + "reference" => "Посилання", + "register" => "Товари надходження", + "requisition" => "Реквізиція", + "return" => "Повернути", + "select_supplier" => "Виберіть постачальника (необов'зково)", + "ship_pack" => "Вантажний пакет", + "start_typing_supplier_name" => "Почніть вводити назву постачальника ...", + "stock" => "Склад", + "stock_destination" => "Пункт призначення", + "stock_locaiton" => "Розташування складу", + "stock_source" => "Походження складу", + "successfully_deleted" => "Успішно видалено", + "successfully_updated" => "Надходження успішно оновлено", + "supplier" => "Постачальник", + "supplier_address" => "Адреса", + "supplier_email" => "Електронна пошта клієнта", + "supplier_location" => "Розташування", + "total" => "Сума", + "transaction_failed" => "Помилка отримання транзакції.", + "unable_to_add_item" => "Неможливо додати товар на отримання.", + "unsuccessfully_updated" => "Помилка отримання оновлення.", + "update" => "Редагувати", ]; diff --git a/app/Language/uk/Reports.php b/app/Language/uk/Reports.php index 961f19c20..2b1a710db 100644 --- a/app/Language/uk/Reports.php +++ b/app/Language/uk/Reports.php @@ -1,148 +1,148 @@ "Все", - "authority" => "Управління", - "canceled" => "Скасовано", - "categories" => "Категорії", - "categories_summary_report" => "Звіт категорій", - "category" => "Категорія", - "code_canceled" => "Сказовано", - "code_invoice" => "Рахунок-фактура", - "code_pos" => "(положення)", - "code_quote" => "Котирування", - "code_return" => "Повернення", - "code_type" => "Тип", - "code_work_order" => "Наряд на роботу", - "comments" => "Коментарі", - "commission" => "", - "complete" => "Завершені продажі та повернення", - "completed_sales" => "Завершені продажі", - "confirm_delete" => "Ви впевнені, що хочете видалити вибрані записи?", - "confirm_restore" => "Ви впевнені, що хочете відновити вибрані записии?", - "cost" => "Вартість", - "cost_price" => "Оптова ціна", - "count" => "Підрахунок", - "customer" => "Клієнт", - "customers" => "Клиієнти", - "customers_summary_report" => "Звіт про клієнтів", - "date" => "Дата", - "date_range" => "Проміжок часу", - "description" => "Опис", - "detailed_receivings_report" => "Детальний звіт про надходження", - "detailed_receivings_report_input" => "", - "detailed_reports" => "Детальні звіти", - "detailed_requisition_report" => "Детальний звіт про реквізити", - "detailed_sales_report" => "Докладний звіт про продажі", - "discount" => "Знижка", - "discount_fixed" => "Фіксована знижка", - "discount_percent" => "Відсоткова знижки", - "discount_type" => "Тип знижки", - "discounts" => "Знижки", - "discounts_summary_report" => "Підсумковий звіт про знижки", - "earned" => "Зароблені бали", - "employee" => "Працівник", - "employees" => "Працівники", - "employees_summary_report" => "Підсумковий звіт про працівників", - "expenses" => "Витрати", - "expenses_amount" => "Сума", - "expenses_categories" => "Категорії витрат", - "expenses_categories_summary_report" => "Підсумковий звіт про категорії витрат", - "expenses_category" => "Категорія", - "expenses_payment_amount" => "", - "expenses_tax_amount" => "Податок", - "expenses_total_amount" => "Загальна сума", - "expenses_total_tax_amount" => "Загальна сума податку", - "graphical_reports" => "Графічні звіти", - "inventory" => "Інвентаризація", - "inventory_low" => "Низька інвентаризація", - "inventory_low_report" => "Звіт про низьку інвентаризацію", - "inventory_reports" => "Звіти про інвентаризацію", - "inventory_summary" => "Підсумок інвентаризації", - "inventory_summary_report" => "Підсумковий звіт про інвентаризацію", - "item" => "Товар", - "item_count" => "Кількість товарів", - "item_name" => "Назва товару", - "item_number" => "Штрих-код", - "items" => "Товари", - "items_purchased" => "Куплені товари", - "items_received" => "Отримані товари", - "items_summary_report" => "Підсумковий звіт", - "jurisdiction" => "Юрисдикція", - "low_inventory" => "Низька інвентаризація", - "low_inventory_report" => "Звіт про низьку інвентаризацію", - "low_sell_quantity" => "Низька кількість продажу", - "more_than_zero" => "Більше нуля", - "name" => "Назва", - "no_reports_to_display" => "Немає товарів для відображення.", - "payment_type" => "Вид розрахунку", - "payments" => "Розрахунок", - "payments_summary_report" => "Підсумковий звіт про платежі", - "profit" => "Прибуток", - "quantity" => "Кількість", - "quantity_purchased" => "Кількість придбаного", - "quotes" => "Котирування", - "received_by" => "Отриманно (ким)", - "receiving_id" => "Надходження ІН", - "receiving_type" => "Тип надходження", - "receivings" => "Надходження", - "reorder_level" => "Рівень перезамовлення", - "report" => "Звіт", - "report_input" => "Вхідний звіт", - "reports" => "Звіти", - "requisition" => "Реквізиції", - "requisition_by" => "Реквізовано (ким)", - "requisition_id" => "ІН реквізиції", - "requisition_item" => "Реквізиції товару", - "requisition_item_quantity" => "Кількість реквізицій товару", - "requisition_related_item" => "Реквізиції пов'язані з товарами", - "requisition_related_item_total_quantity" => "Загальна кількість товарів, що стосується реквізицій", - "requisition_related_item_unit_quantity" => "Загальна кількість товарів, що не стосується реквізицій", - "requisitions" => "Реквізиції", - "returns" => "Повернення", - "revenue" => "Дохід", - "sale_id" => "IН Продажу", - "sale_type" => "Вид продажу", - "sales" => "Продаж", - "sales_amount" => "Сума продажів", - "sales_summary_report" => "Підсумковий звіт з продажів", - "sales_taxes" => "Податки з продажів", - "sales_taxes_summary_report" => "Зведений звіт про податки з продажів", - "serial_number" => "Серійний номер", - "service_charge" => "", - "sold_by" => "Продано (ким)", - "sold_items" => "", - "sold_to" => "Продано (кому)", - "stock_location" => "Розташування складу", - "sub_total_value" => "Підсумкове значення", - "subtotal" => "Проміжна сума", - "summary_reports" => "Підсумкові звіти", - "supplied_by" => "Постачається (ким)", - "supplier" => "Постачальник", - "suppliers" => "Постачальники", - "suppliers_summary_report" => "Підсумковий звіт про постачальників", - "tax" => "Податок", - "tax_category" => "Податкова категорія", - "tax_name" => "", - "tax_percent" => "Відсоток податку", - "tax_rate" => "Ставка податку", - "taxes" => "Податки", - "taxes_summary_report" => "Підсумковий звіт про податки", - "total" => "Сума", - "total_inventory_value" => "Загальна вартість товарів", - "total_low_sell_quantity" => "Загальна кількість низького рівня продажу", - "total_quantity" => "Загальна кількість", - "total_retail" => "Загальний роздріб", - "trans_amount" => "Сума транзакції", - "trans_due" => "Очікусвана транзакція", - "trans_group" => "Група транзакцій", - "trans_nopay_sales" => "Продажі без оплати", - "trans_payments" => "Платежі", - "trans_refunded" => "Повернено коштів (Відшкодовано)", - "trans_sales" => "Продажі", - "trans_type" => "Тип транзакції", - "type" => "Тип", - "unit_price" => "Роздрібна ціна", - "used" => "Вкористані бали", - "work_orders" => "Робочі замовлення (наряди на роботу)", - "zero_and_less" => "Нуль і менше", + "all" => "Все", + "authority" => "Управління", + "canceled" => "Скасовано", + "categories" => "Категорії", + "categories_summary_report" => "Звіт категорій", + "category" => "Категорія", + "code_canceled" => "Сказовано", + "code_invoice" => "Рахунок-фактура", + "code_pos" => "(положення)", + "code_quote" => "Котирування", + "code_return" => "Повернення", + "code_type" => "Тип", + "code_work_order" => "Наряд на роботу", + "comments" => "Коментарі", + "commission" => "", + "complete" => "Завершені продажі та повернення", + "completed_sales" => "Завершені продажі", + "confirm_delete" => "Ви впевнені, що хочете видалити вибрані записи?", + "confirm_restore" => "Ви впевнені, що хочете відновити вибрані записии?", + "cost" => "Вартість", + "cost_price" => "Оптова ціна", + "count" => "Підрахунок", + "customer" => "Клієнт", + "customers" => "Клиієнти", + "customers_summary_report" => "Звіт про клієнтів", + "date" => "Дата", + "date_range" => "Проміжок часу", + "description" => "Опис", + "detailed_receivings_report" => "Детальний звіт про надходження", + "detailed_receivings_report_input" => "", + "detailed_reports" => "Детальні звіти", + "detailed_requisition_report" => "Детальний звіт про реквізити", + "detailed_sales_report" => "Докладний звіт про продажі", + "discount" => "Знижка", + "discount_fixed" => "Фіксована знижка", + "discount_percent" => "Відсоткова знижки", + "discount_type" => "Тип знижки", + "discounts" => "Знижки", + "discounts_summary_report" => "Підсумковий звіт про знижки", + "earned" => "Зароблені бали", + "employee" => "Працівник", + "employees" => "Працівники", + "employees_summary_report" => "Підсумковий звіт про працівників", + "expenses" => "Витрати", + "expenses_amount" => "Сума", + "expenses_categories" => "Категорії витрат", + "expenses_categories_summary_report" => "Підсумковий звіт про категорії витрат", + "expenses_category" => "Категорія", + "expenses_payment_amount" => "", + "expenses_tax_amount" => "Податок", + "expenses_total_amount" => "Загальна сума", + "expenses_total_tax_amount" => "Загальна сума податку", + "graphical_reports" => "Графічні звіти", + "inventory" => "Інвентаризація", + "inventory_low" => "Низька інвентаризація", + "inventory_low_report" => "Звіт про низьку інвентаризацію", + "inventory_reports" => "Звіти про інвентаризацію", + "inventory_summary" => "Підсумок інвентаризації", + "inventory_summary_report" => "Підсумковий звіт про інвентаризацію", + "item" => "Товар", + "item_count" => "Кількість товарів", + "item_name" => "Назва товару", + "item_number" => "Штрих-код", + "items" => "Товари", + "items_purchased" => "Куплені товари", + "items_received" => "Отримані товари", + "items_summary_report" => "Підсумковий звіт", + "jurisdiction" => "Юрисдикція", + "low_inventory" => "Низька інвентаризація", + "low_inventory_report" => "Звіт про низьку інвентаризацію", + "low_sell_quantity" => "Низька кількість продажу", + "more_than_zero" => "Більше нуля", + "name" => "Назва", + "no_reports_to_display" => "Немає товарів для відображення.", + "payment_type" => "Вид розрахунку", + "payments" => "Розрахунок", + "payments_summary_report" => "Підсумковий звіт про платежі", + "profit" => "Прибуток", + "quantity" => "Кількість", + "quantity_purchased" => "Кількість придбаного", + "quotes" => "Котирування", + "received_by" => "Отриманно (ким)", + "receiving_id" => "Надходження ІН", + "receiving_type" => "Тип надходження", + "receivings" => "Надходження", + "reorder_level" => "Рівень перезамовлення", + "report" => "Звіт", + "report_input" => "Вхідний звіт", + "reports" => "Звіти", + "requisition" => "Реквізиції", + "requisition_by" => "Реквізовано (ким)", + "requisition_id" => "ІН реквізиції", + "requisition_item" => "Реквізиції товару", + "requisition_item_quantity" => "Кількість реквізицій товару", + "requisition_related_item" => "Реквізиції пов'язані з товарами", + "requisition_related_item_total_quantity" => "Загальна кількість товарів, що стосується реквізицій", + "requisition_related_item_unit_quantity" => "Загальна кількість товарів, що не стосується реквізицій", + "requisitions" => "Реквізиції", + "returns" => "Повернення", + "revenue" => "Дохід", + "sale_id" => "IН Продажу", + "sale_type" => "Вид продажу", + "sales" => "Продаж", + "sales_amount" => "Сума продажів", + "sales_summary_report" => "Підсумковий звіт з продажів", + "sales_taxes" => "Податки з продажів", + "sales_taxes_summary_report" => "Зведений звіт про податки з продажів", + "serial_number" => "Серійний номер", + "service_charge" => "", + "sold_by" => "Продано (ким)", + "sold_items" => "", + "sold_to" => "Продано (кому)", + "stock_location" => "Розташування складу", + "sub_total_value" => "Підсумкове значення", + "subtotal" => "Проміжна сума", + "summary_reports" => "Підсумкові звіти", + "supplied_by" => "Постачається (ким)", + "supplier" => "Постачальник", + "suppliers" => "Постачальники", + "suppliers_summary_report" => "Підсумковий звіт про постачальників", + "tax" => "Податок", + "tax_category" => "Податкова категорія", + "tax_name" => "", + "tax_percent" => "Відсоток податку", + "tax_rate" => "Ставка податку", + "taxes" => "Податки", + "taxes_summary_report" => "Підсумковий звіт про податки", + "total" => "Сума", + "total_inventory_value" => "Загальна вартість товарів", + "total_low_sell_quantity" => "Загальна кількість низького рівня продажу", + "total_quantity" => "Загальна кількість", + "total_retail" => "Загальний роздріб", + "trans_amount" => "Сума транзакції", + "trans_due" => "Очікусвана транзакція", + "trans_group" => "Група транзакцій", + "trans_nopay_sales" => "Продажі без оплати", + "trans_payments" => "Платежі", + "trans_refunded" => "Повернено коштів (Відшкодовано)", + "trans_sales" => "Продажі", + "trans_type" => "Тип транзакції", + "type" => "Тип", + "unit_price" => "Роздрібна ціна", + "used" => "Вкористані бали", + "work_orders" => "Робочі замовлення (наряди на роботу)", + "zero_and_less" => "Нуль і менше", ]; diff --git a/app/Language/uk/Sales.php b/app/Language/uk/Sales.php index 1b860ed72..8b7f2eaff 100644 --- a/app/Language/uk/Sales.php +++ b/app/Language/uk/Sales.php @@ -1,224 +1,224 @@ "Доступні бали", - "rewards_package" => "Винагороди", - "rewards_remaining_balance" => "Залишкова цінність бонусних балів становить ", - "account_number" => "Номер рахунку", - "add_payment" => "Додати платіж", - "amount_due" => "Сума заборгованості", - "amount_tendered" => "Запропонована сума", - "authorized_signature" => "Підпис уповноваженої особи", - "cancel_sale" => "Відмінити", - "cash" => "Готівка", - "cash_1" => "", - "cash_2" => "", - "cash_3" => "", - "cash_4" => "", - "cash_adjustment" => "Корегування готівки", - "cash_deposit" => "Готівковий депозит", - "cash_filter" => "Готівка", - "change_due" => "Змінити належне(борг)", - "change_price" => "Змінити ціну продажу", - "check" => "Перевірити", - "check_balance" => "Перевірити залишок", - "check_filter" => "Перевірити", - "close" => "", - "comment" => "Коментувати", - "comments" => "Коментарі", - "company_name" => "", - "complete" => "", - "complete_sale" => "Завершити продаж", - "confirm_cancel_sale" => "Ви впевнені, що хочете скасувати цей продаж? Всі товари буде видалено.", - "confirm_delete" => "Ви впевнені, що хочете видалити вибрані продажі?", - "confirm_restore" => "Ви впевнені, що хочете відновити вибрані продажі?", - "credit" => "Кредитна карта", - "credit_deposit" => "Кредитний депозит", - "credit_filter" => "Кредитна картка", - "current_table" => "", - "customer" => "Клієнт", - "customer_address" => "Адреса клієнта", - "customer_discount" => "Знижка", - "customer_email" => "Електронна пошта клієнта", - "customer_location" => "Місцезнаходження клієнта", - "customer_mailchimp_status" => "Статус клієнта mailchimp", - "customer_optional" => "(Потрібно для належних платежів)", - "customer_required" => "(Обов'язково)", - "customer_total" => "Всього", - "customer_total_spent" => "", - "daily_sales" => "", - "date" => "Дата продажу", - "date_range" => "Проміжок часу", - "date_required" => "Необхідно ввести правильну дату.", - "date_type" => "Дата мусить бути заповнена.", - "debit" => "Дебетова карта", - "debit_filter" => "", - "delete" => "Дозволити видалення", - "delete_confirmation" => "Ви впевнені, що хочете видалити цей продаж, цю дію не можливо скасувати.", - "delete_entire_sale" => "Видалити всі продажі", - "delete_successful" => "Продаж успішно видалено.", - "delete_unsuccessful" => "Не вдалося видалити продаж.", - "description_abbrv" => "Опис абревіатурою.", - "discard" => "Скинути", - "discard_quote" => "Скинути ціну", - "discount" => "Знижка %", - "discount_included" => "% Знижка включена", - "discount_short" => "% Мала знижка", - "due" => "Борг", - "due_filter" => "Борг", - "edit" => "Редагувати", - "edit_item" => "Редагувати товар", - "edit_sale" => "Редагувати продажі", - "email_receipt" => "Відправити квитанції електронною поштою", - "employee" => "Працівник", - "entry" => "Вхід", - "error_editing_item" => "Помилка редагування товару", - "find_or_scan_item" => "Знайти/Сканувати товар", - "find_or_scan_item_or_receipt" => "Знайти/Сканувати товар або квитанцію", - "giftcard" => "Подарункова карта", - "giftcard_balance" => "Баланс подарункової картки", - "giftcard_filter" => "", - "giftcard_number" => "Номер подарункової карти", - "group_by_category" => "Група за категорією", - "group_by_type" => "Група за типом", - "hsn" => "HSN", - "id" => "Номер продажі", - "include_prices" => "Включити ціни?", - "invoice" => "Рахунок-фактура", - "invoice_confirm" => "Цей рахунок на оплату буде відправленo", - "invoice_enable" => "Створити рахунок-фактуру", - "invoice_filter" => "Фільтер рахунку-фактури", - "invoice_no_email" => "У цього клієнта немає дійсної адреси електронної пошти.", - "invoice_number" => "Рахунок-фактура #", - "invoice_number_duplicate" => "Рахунок-фактура з таким номером уже існує.", - "invoice_sent" => "Рахунок-фактуру надіслано", - "invoice_total" => "Сума рахунків-фактур", - "invoice_type_custom_invoice" => "Рахунок-фактура для клієнта", - "invoice_type_custom_tax_invoice" => "Податковий рахунок-фактура для клієнта", - "invoice_type_invoice" => "Тип рахунку-фактури (invoice.php)", - "invoice_type_tax_invoice" => "Податковий рахунок-фактура", - "invoice_unsent" => "Не вдалося надіслати рахунок-фактуру", - "invoice_update" => "Перерахунок", - "item_insufficient_of_stock" => "Недостатньо товару на складі.", - "item_name" => "Назва товару", - "item_number" => "Номер товару", - "item_out_of_stock" => "Товар відсутній на складі.", - "key_browser" => "", - "key_cancel" => "Cancels Current Quote/Invoice/Sale", - "key_customer_search" => "Customer Search", - "key_finish_quote" => "Finish Quote/Invoice witdout payment", - "key_finish_sale" => "Add Payment and Complete Invoice/Sale", - "key_full" => "", - "key_function" => "Function", - "key_help" => "Shortcuts", - "key_help_modal" => "Open Shortcuts Window", - "key_in" => "", - "key_item_search" => "Item Search", - "key_out" => "", - "key_payment" => "Add Payment", - "key_print" => "", - "key_restore" => "", - "key_search" => "", - "key_suspend" => "Suspend Current Sale", - "key_suspended" => "Show Suspended Sales", - "key_system" => "", - "key_tendered" => "Edit Amount Tendered", - "key_title" => "Sales Keyboard Shortcuts", - "mc" => "", - "mode" => "Режим журналу", - "must_enter_numeric" => "Введена сума повинна бути числом.", - "must_enter_numeric_giftcard" => "Номер подарункової картки повинен бути цифровим.", - "new_customer" => "Новий клієнт", - "new_item" => "Новий товар", - "no_description" => "Без опису", - "no_filter" => "Все", - "no_items_in_cart" => "В кошику немає товарів.", - "no_sales_to_display" => "Немає продаж для відображення.", - "none_selected" => "Ви не обрали продажі для видалення.", - "nontaxed_ind" => " Неоподатковуваний ІД ", - "not_authorized" => "Ця дія не дозволена.", - "one_or_multiple" => "Продаж(і)", - "payment" => "Вид оплати", - "payment_amount" => "Кількість", - "payment_not_cover_total" => "Оплата не покриває загальну суму.", - "payment_type" => "Тип", - "payments" => "", - "payments_total" => "Суми платежів", - "price" => "Ціна", - "print_after_sale" => "Роздрукувати після продажу", - "quantity" => "Кількість", - "quantity_less_than_reorder_level" => "Увага! Бажана кількість нижче рівня замовлення для цього товару.", - "quantity_less_than_zero" => "Увага! Бажана кількість є недоступною. Ви все ще можете обробляти продажі, але перевірте товар.", - "quantity_of_items" => "Кількість {0} товарів", - "quote" => "Котирування", - "quote_number" => "Номер котирування", - "quote_number_duplicate" => "Номер котирування повинен бути унікальним.", - "quote_sent" => "Котирування відправлено", - "quote_unsent" => "Не вдалося надіслати котирування", - "receipt" => "Квитанція", - "receipt_no_email" => "Цей клієнт не має дійсної електронної адреси.", - "receipt_number" => "Номер квитанції", - "receipt_sent" => "Квитанція відправлена", - "receipt_unsent" => "Не вдалося надіслати квитанцію", - "refund" => "Тип відшкодування", - "register" => "Журнал продажів", - "remove_customer" => "Видалити клієнта", - "remove_discount" => "", - "return" => "Повернути", - "rewards" => "Бонусні бали", - "rewards_balance" => "Баланс бонусних балів", - "sale" => "Продаж", - "sale_by_invoice" => "Продаж за рахунком", - "sale_for_customer" => "Клієнт:", - "sale_time" => "Час продажу", - "sales_tax" => "Податок з продажів", - "sales_total" => "", - "select_customer" => "Оберіть клієнта", - "send_invoice" => "Відправити рахунок-фактуру", - "send_quote" => "Надіслати котирвання продажів", - "send_receipt" => "Відправити квитанцію", - "send_work_order" => "Надіслати робочий наказ", - "serial" => "Серійний номер", - "service_charge" => "", - "show_due" => "", - "show_invoice" => "Показати рахунок-фактуру", - "show_receipt" => "Показати квитанцію", - "start_typing_customer_name" => "Почніть вводити ім’я клієнта...", - "start_typing_item_name" => "Почніть вводити назву товару або скористайтесь штрих-кодом ...", - "stock" => "Склад", - "stock_location" => "склад", - "sub_total" => "Проміжний підсумок", - "successfully_deleted" => "Продажі успішно видалено", - "successfully_restored" => "Продажі успішно відновлено", - "successfully_suspended_sale" => "Продажі успішно призупинені.", - "successfully_updated" => "Продажі успішно оновлено.", - "suspend_sale" => "Призупинені продажі", - "suspended_doc_id" => "Документ", - "suspended_sale_id" => "ІН", - "suspended_sales" => "Призупинені", - "table" => "Таблиця", - "takings" => "Денний оборот", - "tax" => "Податок", - "tax_id" => "ІПН", - "tax_invoice" => "Податкова накладна", - "tax_percent" => "Податковий відсоток", - "taxed_ind" => "П", - "total" => "Сума", - "total_tax_exclusive" => "Без податку", - "transaction_failed" => "Не вдалося здійснити продажну транзакцію.", - "unable_to_add_item" => "Помилка додавання товару до продажу", - "unsuccessfully_deleted" => "Продажі невдало видалено.", - "unsuccessfully_restored" => "Не вдалось відновити продажі.", - "unsuccessfully_suspended_sale" => "Не вдалося призупинити продаж.", - "unsuccessfully_updated" => "Помилка оновлення продажу.", - "unsuspend" => "Невитрачені", - "unsuspend_and_delete" => "Вперед", - "update" => "Редагувати", - "upi" => "UPI", - "visa" => "", - "wholesale" => "", - "work_order" => "Робоче замовлення (наряд на роботу)", - "work_order_number" => "Номер робочого замовлення", - "work_order_number_duplicate" => "Такий номер робочого замовлення уже існує.", - "work_order_sent" => "Замовлення відправлено", - "work_order_unsent" => "Не вдалось отримати робоче замовлення", + "customers_available_points" => "Доступні бали", + "rewards_package" => "Винагороди", + "rewards_remaining_balance" => "Залишкова цінність бонусних балів становить ", + "account_number" => "Номер рахунку", + "add_payment" => "Додати платіж", + "amount_due" => "Сума заборгованості", + "amount_tendered" => "Запропонована сума", + "authorized_signature" => "Підпис уповноваженої особи", + "cancel_sale" => "Відмінити", + "cash" => "Готівка", + "cash_1" => "", + "cash_2" => "", + "cash_3" => "", + "cash_4" => "", + "cash_adjustment" => "Корегування готівки", + "cash_deposit" => "Готівковий депозит", + "cash_filter" => "Готівка", + "change_due" => "Змінити належне(борг)", + "change_price" => "Змінити ціну продажу", + "check" => "Перевірити", + "check_balance" => "Перевірити залишок", + "check_filter" => "Перевірити", + "close" => "", + "comment" => "Коментувати", + "comments" => "Коментарі", + "company_name" => "", + "complete" => "", + "complete_sale" => "Завершити продаж", + "confirm_cancel_sale" => "Ви впевнені, що хочете скасувати цей продаж? Всі товари буде видалено.", + "confirm_delete" => "Ви впевнені, що хочете видалити вибрані продажі?", + "confirm_restore" => "Ви впевнені, що хочете відновити вибрані продажі?", + "credit" => "Кредитна карта", + "credit_deposit" => "Кредитний депозит", + "credit_filter" => "Кредитна картка", + "current_table" => "", + "customer" => "Клієнт", + "customer_address" => "Адреса клієнта", + "customer_discount" => "Знижка", + "customer_email" => "Електронна пошта клієнта", + "customer_location" => "Місцезнаходження клієнта", + "customer_mailchimp_status" => "Статус клієнта mailchimp", + "customer_optional" => "(Потрібно для належних платежів)", + "customer_required" => "(Обов'язково)", + "customer_total" => "Всього", + "customer_total_spent" => "", + "daily_sales" => "", + "date" => "Дата продажу", + "date_range" => "Проміжок часу", + "date_required" => "Необхідно ввести правильну дату.", + "date_type" => "Дата мусить бути заповнена.", + "debit" => "Дебетова карта", + "debit_filter" => "", + "delete" => "Дозволити видалення", + "delete_confirmation" => "Ви впевнені, що хочете видалити цей продаж, цю дію не можливо скасувати.", + "delete_entire_sale" => "Видалити всі продажі", + "delete_successful" => "Продаж успішно видалено.", + "delete_unsuccessful" => "Не вдалося видалити продаж.", + "description_abbrv" => "Опис абревіатурою.", + "discard" => "Скинути", + "discard_quote" => "Скинути ціну", + "discount" => "Знижка %", + "discount_included" => "% Знижка включена", + "discount_short" => "% Мала знижка", + "due" => "Борг", + "due_filter" => "Борг", + "edit" => "Редагувати", + "edit_item" => "Редагувати товар", + "edit_sale" => "Редагувати продажі", + "email_receipt" => "Відправити квитанції електронною поштою", + "employee" => "Працівник", + "entry" => "Вхід", + "error_editing_item" => "Помилка редагування товару", + "find_or_scan_item" => "Знайти/Сканувати товар", + "find_or_scan_item_or_receipt" => "Знайти/Сканувати товар або квитанцію", + "giftcard" => "Подарункова карта", + "giftcard_balance" => "Баланс подарункової картки", + "giftcard_filter" => "", + "giftcard_number" => "Номер подарункової карти", + "group_by_category" => "Група за категорією", + "group_by_type" => "Група за типом", + "hsn" => "HSN", + "id" => "Номер продажі", + "include_prices" => "Включити ціни?", + "invoice" => "Рахунок-фактура", + "invoice_confirm" => "Цей рахунок на оплату буде відправленo", + "invoice_enable" => "Створити рахунок-фактуру", + "invoice_filter" => "Фільтер рахунку-фактури", + "invoice_no_email" => "У цього клієнта немає дійсної адреси електронної пошти.", + "invoice_number" => "Рахунок-фактура #", + "invoice_number_duplicate" => "Рахунок-фактура з таким номером уже існує.", + "invoice_sent" => "Рахунок-фактуру надіслано", + "invoice_total" => "Сума рахунків-фактур", + "invoice_type_custom_invoice" => "Рахунок-фактура для клієнта", + "invoice_type_custom_tax_invoice" => "Податковий рахунок-фактура для клієнта", + "invoice_type_invoice" => "Тип рахунку-фактури (invoice.php)", + "invoice_type_tax_invoice" => "Податковий рахунок-фактура", + "invoice_unsent" => "Не вдалося надіслати рахунок-фактуру", + "invoice_update" => "Перерахунок", + "item_insufficient_of_stock" => "Недостатньо товару на складі.", + "item_name" => "Назва товару", + "item_number" => "Номер товару", + "item_out_of_stock" => "Товар відсутній на складі.", + "key_browser" => "", + "key_cancel" => "Cancels Current Quote/Invoice/Sale", + "key_customer_search" => "Customer Search", + "key_finish_quote" => "Finish Quote/Invoice witdout payment", + "key_finish_sale" => "Add Payment and Complete Invoice/Sale", + "key_full" => "", + "key_function" => "Function", + "key_help" => "Shortcuts", + "key_help_modal" => "Open Shortcuts Window", + "key_in" => "", + "key_item_search" => "Item Search", + "key_out" => "", + "key_payment" => "Add Payment", + "key_print" => "", + "key_restore" => "", + "key_search" => "", + "key_suspend" => "Suspend Current Sale", + "key_suspended" => "Show Suspended Sales", + "key_system" => "", + "key_tendered" => "Edit Amount Tendered", + "key_title" => "Sales Keyboard Shortcuts", + "mc" => "", + "mode" => "Режим журналу", + "must_enter_numeric" => "Введена сума повинна бути числом.", + "must_enter_numeric_giftcard" => "Номер подарункової картки повинен бути цифровим.", + "new_customer" => "Новий клієнт", + "new_item" => "Новий товар", + "no_description" => "Без опису", + "no_filter" => "Все", + "no_items_in_cart" => "В кошику немає товарів.", + "no_sales_to_display" => "Немає продаж для відображення.", + "none_selected" => "Ви не обрали продажі для видалення.", + "nontaxed_ind" => " Неоподатковуваний ІД ", + "not_authorized" => "Ця дія не дозволена.", + "one_or_multiple" => "Продаж(і)", + "payment" => "Вид оплати", + "payment_amount" => "Кількість", + "payment_not_cover_total" => "Оплата не покриває загальну суму.", + "payment_type" => "Тип", + "payments" => "", + "payments_total" => "Суми платежів", + "price" => "Ціна", + "print_after_sale" => "Роздрукувати після продажу", + "quantity" => "Кількість", + "quantity_less_than_reorder_level" => "Увага! Бажана кількість нижче рівня замовлення для цього товару.", + "quantity_less_than_zero" => "Увага! Бажана кількість є недоступною. Ви все ще можете обробляти продажі, але перевірте товар.", + "quantity_of_items" => "Кількість {0} товарів", + "quote" => "Котирування", + "quote_number" => "Номер котирування", + "quote_number_duplicate" => "Номер котирування повинен бути унікальним.", + "quote_sent" => "Котирування відправлено", + "quote_unsent" => "Не вдалося надіслати котирування", + "receipt" => "Квитанція", + "receipt_no_email" => "Цей клієнт не має дійсної електронної адреси.", + "receipt_number" => "Номер квитанції", + "receipt_sent" => "Квитанція відправлена", + "receipt_unsent" => "Не вдалося надіслати квитанцію", + "refund" => "Тип відшкодування", + "register" => "Журнал продажів", + "remove_customer" => "Видалити клієнта", + "remove_discount" => "", + "return" => "Повернути", + "rewards" => "Бонусні бали", + "rewards_balance" => "Баланс бонусних балів", + "sale" => "Продаж", + "sale_by_invoice" => "Продаж за рахунком", + "sale_for_customer" => "Клієнт:", + "sale_time" => "Час продажу", + "sales_tax" => "Податок з продажів", + "sales_total" => "", + "select_customer" => "Оберіть клієнта", + "send_invoice" => "Відправити рахунок-фактуру", + "send_quote" => "Надіслати котирвання продажів", + "send_receipt" => "Відправити квитанцію", + "send_work_order" => "Надіслати робочий наказ", + "serial" => "Серійний номер", + "service_charge" => "", + "show_due" => "", + "show_invoice" => "Показати рахунок-фактуру", + "show_receipt" => "Показати квитанцію", + "start_typing_customer_name" => "Почніть вводити ім’я клієнта...", + "start_typing_item_name" => "Почніть вводити назву товару або скористайтесь штрих-кодом ...", + "stock" => "Склад", + "stock_location" => "склад", + "sub_total" => "Проміжний підсумок", + "successfully_deleted" => "Продажі успішно видалено", + "successfully_restored" => "Продажі успішно відновлено", + "successfully_suspended_sale" => "Продажі успішно призупинені.", + "successfully_updated" => "Продажі успішно оновлено.", + "suspend_sale" => "Призупинені продажі", + "suspended_doc_id" => "Документ", + "suspended_sale_id" => "ІН", + "suspended_sales" => "Призупинені", + "table" => "Таблиця", + "takings" => "Денний оборот", + "tax" => "Податок", + "tax_id" => "ІПН", + "tax_invoice" => "Податкова накладна", + "tax_percent" => "Податковий відсоток", + "taxed_ind" => "П", + "total" => "Сума", + "total_tax_exclusive" => "Без податку", + "transaction_failed" => "Не вдалося здійснити продажну транзакцію.", + "unable_to_add_item" => "Помилка додавання товару до продажу", + "unsuccessfully_deleted" => "Продажі невдало видалено.", + "unsuccessfully_restored" => "Не вдалось відновити продажі.", + "unsuccessfully_suspended_sale" => "Не вдалося призупинити продаж.", + "unsuccessfully_updated" => "Помилка оновлення продажу.", + "unsuspend" => "Невитрачені", + "unsuspend_and_delete" => "Вперед", + "update" => "Редагувати", + "upi" => "UPI", + "visa" => "", + "wholesale" => "", + "work_order" => "Робоче замовлення (наряд на роботу)", + "work_order_number" => "Номер робочого замовлення", + "work_order_number_duplicate" => "Такий номер робочого замовлення уже існує.", + "work_order_sent" => "Замовлення відправлено", + "work_order_unsent" => "Не вдалось отримати робоче замовлення", ]; diff --git a/app/Language/uk/Suppliers.php b/app/Language/uk/Suppliers.php index 17bc9e3c5..cf207d571 100644 --- a/app/Language/uk/Suppliers.php +++ b/app/Language/uk/Suppliers.php @@ -1,24 +1,24 @@ "Номер рахунку", - "agency_name" => "Назва агентства", - "cannot_be_deleted" => "Не вдалось видалити вибраних постачальників, один або більше з них має активні продажі.", - "category" => "Категорія", - "company_name" => "Назва організації", - "company_name_required" => "Назва організації - обов'язкове поле.", - "confirm_delete" => "Ви впевнені, що хочете видалити вибраних постачальників?", - "confirm_restore" => "Ви впевнені, що хочете відновити вибраних постачальників?", - "cost" => "Витрати постачальника", - "error_adding_updating" => "Помилка при додаванні/оновленні постачальників.", - "goods" => "Товари постачальників", - "new" => "Новий постачальник", - "none_selected" => "Ви не обрали ні одного постачальника для видалення.", - "one_or_multiple" => "Постачальник(и)", - "successful_adding" => "Ви успішно додали постачальника", - "successful_deleted" => "Ви успішно видалили постачальника", - "successful_updating" => "Ви успішно оновили постачальника", - "supplier" => "Постачальник", - "supplier_id" => "ІН", - "tax_id" => "Податковий ІН", - "update" => "Оновити постачальника", + "account_number" => "Номер рахунку", + "agency_name" => "Назва агентства", + "cannot_be_deleted" => "Не вдалось видалити вибраних постачальників, один або більше з них має активні продажі.", + "category" => "Категорія", + "company_name" => "Назва організації", + "company_name_required" => "Назва організації - обов'язкове поле.", + "confirm_delete" => "Ви впевнені, що хочете видалити вибраних постачальників?", + "confirm_restore" => "Ви впевнені, що хочете відновити вибраних постачальників?", + "cost" => "Витрати постачальника", + "error_adding_updating" => "Помилка при додаванні/оновленні постачальників.", + "goods" => "Товари постачальників", + "new" => "Новий постачальник", + "none_selected" => "Ви не обрали ні одного постачальника для видалення.", + "one_or_multiple" => "Постачальник(и)", + "successful_adding" => "Ви успішно додали постачальника", + "successful_deleted" => "Ви успішно видалили постачальника", + "successful_updating" => "Ви успішно оновили постачальника", + "supplier" => "Постачальник", + "supplier_id" => "ІН", + "tax_id" => "Податковий ІН", + "update" => "Оновити постачальника", ]; diff --git a/app/Language/uk/Taxes.php b/app/Language/uk/Taxes.php index 3e1af6fdd..bf49f2bd3 100644 --- a/app/Language/uk/Taxes.php +++ b/app/Language/uk/Taxes.php @@ -1,82 +1,82 @@ "Додати виняток", - "cascade" => "Каскад", - "cascade_sequence" => "Послідовність каскаду", - "city" => "Місто", - "code" => "Код", - "confirm_delete" => "Ви дійсно хочете видалити цей податковий код? Цю дію неможливо скасувати.", - "confirm_restore" => "Ви впевнені, що хочете відновити вибрані податкові коди?", - "default_tax_category" => "Категорія податку за замовченням", - "default_tax_rate" => "Ставка податку за замовчуванням", - "error_adding_updating" => "Не вдалось додати або оновити податковий код.", - "group_seq" => "Група послідовностей", - "jurisdiction_name" => "Назва юрисдикції", - "name" => "Назва", - "new" => "Новий податковий код", - "no_taxes" => "", - "no_taxes_to_display" => "Немає податкового коду для відображення.", - "reporting_authority" => "Звітний орган", - "round_half_down" => "Наполовину вниз", - "round_half_even" => "Тільки наполовину", - "round_half_odd" => "Наполовину непарного", - "round_half_up" => "Наполовину догори", - "rounding_code" => "Код округлення", - "sales_tax" => "Податок з продажу", - "sales_tax_by_invoice" => "Податок з продажу за рахунком", - "sequence" => "Послідовність", - "state" => "Державні податки", - "successful_deleted" => "Видалення пройшло успішно", - "tax_categories" => "Податкові категорії", - "tax_categories_configuration" => "Форма категорій податків", - "tax_categories_saved_successfully" => "Податкові категорії успішно збережено", - "tax_categories_saved_unsuccessfully" => "Податкові категорії збережено невдало", - "tax_category" => "Податкова категорія", - "tax_category_code" => "Код податкової категорії", - "tax_category_duplicate" => "Дублікат податкової категорії", - "tax_category_invalid_chars" => "Податкова категорія містить недійсні символи", - "tax_category_name" => "Назва податкової категорії", - "tax_category_new" => "Нова податкова категорія", - "tax_category_required" => "Необхідна податкова категорія", - "tax_code" => "Податковий код", - "tax_code_cannot_be_deleted" => "Збій у видаленні податкового коду.", - "tax_code_duplicate" => "Дублікат податкового коду", - "tax_code_invalid_chars" => "У податковому коді недійсні символи", - "tax_code_name" => "Ім'я податкового коду", - "tax_code_required" => "Податковий код - обов'язкове поле.", - "tax_code_successful_deleted" => "Податковий код успішно видалено", - "tax_code_successful_updated" => "Податковий код успішно оновлено", - "tax_code_successful_updating" => "Успішно оновлено. ", - "tax_code_successfully_added" => "Податковий код успішно додано. ", - "tax_code_type" => "Тип податкового коду", - "tax_codes" => "Податкові коди", - "tax_codes_configuration" => "Форма податкових кодів", - "tax_codes_saved_successfully" => "Податкові коди успішно збережено", - "tax_codes_saved_unsuccessfully" => "Не вдалося зберегти податковий код.", - "tax_excluded" => "Без податку", - "tax_group" => "Податкова група", - "tax_group_not_unique" => "Податкова група {0} не є унікальною", - "tax_group_sequence" => "Послідовність податкової групи", - "tax_included" => "Податок включений", - "tax_jurisdiction" => "Податкова юрисдикція", - "tax_jurisdiction_duplicate" => "Дублікат податкової юрисдикції", - "tax_jurisdiction_invalid_chars" => "Податкова юрисдикція містить недійсні символи", - "tax_jurisdiction_required" => "Необхідна податкова юрисдикція", - "tax_jurisdictions" => "Податкові юрисдикції", - "tax_jurisdictions_configuration" => "Форма податкових юрисдикції", - "tax_jurisdictions_saved_successfully" => "Податкові юрисдикції успішно збережені", - "tax_jurisdictions_saved_unsuccessfully" => "Податкові юрисдикції невдало збережені", - "tax_rate" => "Курс податку", - "tax_rate_configuration" => "Форма ставки податку", - "tax_rate_error_adding_updating" => "Помилка ставки податку при додаванні оновлення", - "tax_rate_numeric" => "Курс податку повинен бути позначений числом.", - "tax_rate_required" => "Курс податку мусить бути заповнений.", - "tax_rate_successful_updated" => "Успішне оновлення податкової ставки", - "tax_rate_successfully_added" => "Податкова ставка успішно додана", - "tax_rates" => "Ставки податку", - "tax_rates_configuration" => "Форма ставок податку", - "tax_rounding" => "Податкове округлення", - "tax_type" => "Вид податку", - "update" => "Оновіть категорію податку з продаж", - "vat_tax" => "НДС податок", + "add_exception" => "Додати виняток", + "cascade" => "Каскад", + "cascade_sequence" => "Послідовність каскаду", + "city" => "Місто", + "code" => "Код", + "confirm_delete" => "Ви дійсно хочете видалити цей податковий код? Цю дію неможливо скасувати.", + "confirm_restore" => "Ви впевнені, що хочете відновити вибрані податкові коди?", + "default_tax_category" => "Категорія податку за замовченням", + "default_tax_rate" => "Ставка податку за замовчуванням", + "error_adding_updating" => "Не вдалось додати або оновити податковий код.", + "group_seq" => "Група послідовностей", + "jurisdiction_name" => "Назва юрисдикції", + "name" => "Назва", + "new" => "Новий податковий код", + "no_taxes" => "", + "no_taxes_to_display" => "Немає податкового коду для відображення.", + "reporting_authority" => "Звітний орган", + "round_half_down" => "Наполовину вниз", + "round_half_even" => "Тільки наполовину", + "round_half_odd" => "Наполовину непарного", + "round_half_up" => "Наполовину догори", + "rounding_code" => "Код округлення", + "sales_tax" => "Податок з продажу", + "sales_tax_by_invoice" => "Податок з продажу за рахунком", + "sequence" => "Послідовність", + "state" => "Державні податки", + "successful_deleted" => "Видалення пройшло успішно", + "tax_categories" => "Податкові категорії", + "tax_categories_configuration" => "Форма категорій податків", + "tax_categories_saved_successfully" => "Податкові категорії успішно збережено", + "tax_categories_saved_unsuccessfully" => "Податкові категорії збережено невдало", + "tax_category" => "Податкова категорія", + "tax_category_code" => "Код податкової категорії", + "tax_category_duplicate" => "Дублікат податкової категорії", + "tax_category_invalid_chars" => "Податкова категорія містить недійсні символи", + "tax_category_name" => "Назва податкової категорії", + "tax_category_new" => "Нова податкова категорія", + "tax_category_required" => "Необхідна податкова категорія", + "tax_code" => "Податковий код", + "tax_code_cannot_be_deleted" => "Збій у видаленні податкового коду.", + "tax_code_duplicate" => "Дублікат податкового коду", + "tax_code_invalid_chars" => "У податковому коді недійсні символи", + "tax_code_name" => "Ім'я податкового коду", + "tax_code_required" => "Податковий код - обов'язкове поле.", + "tax_code_successful_deleted" => "Податковий код успішно видалено", + "tax_code_successful_updated" => "Податковий код успішно оновлено", + "tax_code_successful_updating" => "Успішно оновлено. ", + "tax_code_successfully_added" => "Податковий код успішно додано. ", + "tax_code_type" => "Тип податкового коду", + "tax_codes" => "Податкові коди", + "tax_codes_configuration" => "Форма податкових кодів", + "tax_codes_saved_successfully" => "Податкові коди успішно збережено", + "tax_codes_saved_unsuccessfully" => "Не вдалося зберегти податковий код.", + "tax_excluded" => "Без податку", + "tax_group" => "Податкова група", + "tax_group_not_unique" => "Податкова група {0} не є унікальною", + "tax_group_sequence" => "Послідовність податкової групи", + "tax_included" => "Податок включений", + "tax_jurisdiction" => "Податкова юрисдикція", + "tax_jurisdiction_duplicate" => "Дублікат податкової юрисдикції", + "tax_jurisdiction_invalid_chars" => "Податкова юрисдикція містить недійсні символи", + "tax_jurisdiction_required" => "Необхідна податкова юрисдикція", + "tax_jurisdictions" => "Податкові юрисдикції", + "tax_jurisdictions_configuration" => "Форма податкових юрисдикції", + "tax_jurisdictions_saved_successfully" => "Податкові юрисдикції успішно збережені", + "tax_jurisdictions_saved_unsuccessfully" => "Податкові юрисдикції невдало збережені", + "tax_rate" => "Курс податку", + "tax_rate_configuration" => "Форма ставки податку", + "tax_rate_error_adding_updating" => "Помилка ставки податку при додаванні оновлення", + "tax_rate_numeric" => "Курс податку повинен бути позначений числом.", + "tax_rate_required" => "Курс податку мусить бути заповнений.", + "tax_rate_successful_updated" => "Успішне оновлення податкової ставки", + "tax_rate_successfully_added" => "Податкова ставка успішно додана", + "tax_rates" => "Ставки податку", + "tax_rates_configuration" => "Форма ставок податку", + "tax_rounding" => "Податкове округлення", + "tax_type" => "Вид податку", + "update" => "Оновіть категорію податку з продаж", + "vat_tax" => "НДС податок", ]; diff --git a/app/Language/uk/index.html b/app/Language/uk/index.html index b702fbc39..69df4e1df 100644 --- a/app/Language/uk/index.html +++ b/app/Language/uk/index.html @@ -1,7 +1,7 @@ - 403 Forbidden + 403 Forbidden diff --git a/app/Language/ur/Attributes.php b/app/Language/ur/Attributes.php index baf40ac62..14f2950cf 100644 --- a/app/Language/ur/Attributes.php +++ b/app/Language/ur/Attributes.php @@ -1,32 +1,32 @@ "وصف کے اندراج میں ':' یا '|' ممنوع ہیں", - "confirm_delete" => "کیا آپ منتخب شدہ کو حذف کرنا چاہتے ہیں ؟", - "confirm_restore" => "کیا آپ منتخب شدہ کو بحال کرنا چاہتے ہیں ؟", - "definition_cannot_be_deleted" => "منتخب شدہ کو حذف نہیں کیا جا سکتا", - "definition_error_adding_updating" => "Attribute {0} could not be added or updated. Please check the error log.", - "definition_flags" => "Attribute Visibility", - "definition_group" => "Group", - "definition_id" => "Id", - "definition_name" => "Add Attribute", - "definition_name_required" => "Attribute name is a required field", - "definition_one_or_multiple" => "attribute(s)", - "definition_successful_adding" => "You have successfully added item", - "definition_successful_deleted" => "You have successfully deleted", - "definition_successful_updating" => "You have successfully updated attribute", - "definition_type" => "Attribute Type", - "definition_type_required" => "Attribute type is a required field", - "definition_unit" => "Measurement Unit", - "definition_values" => "Attribute Values", - "new" => "New Attribute", - "no_attributes_to_display" => "No Items to display", - "receipt_visibility" => "Receipt", - "show_in_items" => "Show in items", - "show_in_items_visibility" => "Items", - "show_in_receipt" => "Show in receipt", - "show_in_receivings" => "Show in receivings", - "show_in_receivings_visibility" => "Receivings", - "show_in_sales" => "Show in sales", - "show_in_sales_visibility" => "Sales", - "update" => "Update Attribute", + "attribute_value_invalid_chars" => "وصف کے اندراج میں ':' یا '|' ممنوع ہیں", + "confirm_delete" => "کیا آپ منتخب شدہ کو حذف کرنا چاہتے ہیں ؟", + "confirm_restore" => "کیا آپ منتخب شدہ کو بحال کرنا چاہتے ہیں ؟", + "definition_cannot_be_deleted" => "منتخب شدہ کو حذف نہیں کیا جا سکتا", + "definition_error_adding_updating" => "Attribute {0} could not be added or updated. Please check the error log.", + "definition_flags" => "Attribute Visibility", + "definition_group" => "Group", + "definition_id" => "Id", + "definition_name" => "Add Attribute", + "definition_name_required" => "Attribute name is a required field", + "definition_one_or_multiple" => "attribute(s)", + "definition_successful_adding" => "You have successfully added item", + "definition_successful_deleted" => "You have successfully deleted", + "definition_successful_updating" => "You have successfully updated attribute", + "definition_type" => "Attribute Type", + "definition_type_required" => "Attribute type is a required field", + "definition_unit" => "Measurement Unit", + "definition_values" => "Attribute Values", + "new" => "New Attribute", + "no_attributes_to_display" => "No Items to display", + "receipt_visibility" => "Receipt", + "show_in_items" => "Show in items", + "show_in_items_visibility" => "Items", + "show_in_receipt" => "Show in receipt", + "show_in_receivings" => "Show in receivings", + "show_in_receivings_visibility" => "Receivings", + "show_in_sales" => "Show in sales", + "show_in_sales_visibility" => "Sales", + "update" => "Update Attribute", ]; diff --git a/app/Language/ur/Config.php b/app/Language/ur/Config.php index c4fe5db1b..9dbd65ae2 100644 --- a/app/Language/ur/Config.php +++ b/app/Language/ur/Config.php @@ -1,330 +1,330 @@ "", - "address_required" => "", - "all_set" => "All file permissions are set correctly!", - "allow_duplicate_barcodes" => "", - "apostrophe" => "", - "backup_button" => "", - "backup_database" => "", - "barcode" => "", - "barcode_company" => "", - "barcode_configuration" => "", - "barcode_content" => "", - "barcode_first_row" => "", - "barcode_font" => "", - "barcode_formats" => "", - "barcode_generate_if_empty" => "", - "barcode_height" => "", - "barcode_id" => "", - "barcode_info" => "", - "barcode_layout" => "", - "barcode_name" => "", - "barcode_number" => "", - "barcode_number_in_row" => "", - "barcode_page_cellspacing" => "", - "barcode_page_width" => "", - "barcode_price" => "", - "barcode_second_row" => "", - "barcode_third_row" => "", - "barcode_tooltip" => "", - "barcode_type" => "", - "barcode_width" => "", - "bottom" => "", - "cash_button" => "", - "cash_button_1" => "", - "cash_button_2" => "", - "cash_button_3" => "", - "cash_button_4" => "", - "cash_button_5" => "", - "cash_button_6" => "", - "cash_decimals" => "", - "cash_decimals_tooltip" => "", - "cash_rounding" => "", - "category_dropdown" => "", - "center" => "", - "change_apperance_tooltip" => "", - "comma" => "", - "company" => "", - "company_avatar" => "", - "company_change_image" => "", - "company_logo" => "", - "company_remove_image" => "", - "company_required" => "", - "company_select_image" => "", - "company_website_url" => "", - "country_codes" => "", - "country_codes_tooltip" => "", - "currency_code" => "", - "currency_decimals" => "", - "currency_symbol" => "", - "current_employee_only" => "", - "customer_reward" => "", - "customer_reward_duplicate" => "", - "customer_reward_enable" => "", - "customer_reward_invalid_chars" => "", - "customer_reward_required" => "", - "customer_sales_tax_support" => "", - "date_or_time_format" => "", - "datetimeformat" => "", - "decimal_point" => "", - "default_barcode_font_size_number" => "", - "default_barcode_font_size_required" => "", - "default_barcode_height_number" => "", - "default_barcode_height_required" => "", - "default_barcode_num_in_row_number" => "", - "default_barcode_num_in_row_required" => "", - "default_barcode_page_cellspacing_number" => "", - "default_barcode_page_cellspacing_required" => "", - "default_barcode_page_width_number" => "", - "default_barcode_page_width_required" => "", - "default_barcode_width_number" => "", - "default_barcode_width_required" => "", - "default_item_columns" => "", - "default_origin_tax_code" => "", - "default_receivings_discount" => "", - "default_receivings_discount_number" => "", - "default_receivings_discount_required" => "", - "default_sales_discount" => "", - "default_sales_discount_number" => "", - "default_sales_discount_required" => "", - "default_tax_category" => "", - "default_tax_code" => "", - "default_tax_jurisdiction" => "", - "default_tax_name_number" => "", - "default_tax_name_required" => "", - "default_tax_rate" => "", - "default_tax_rate_1" => "", - "default_tax_rate_2" => "", - "default_tax_rate_3" => "", - "default_tax_rate_number" => "", - "default_tax_rate_required" => "", - "derive_sale_quantity" => "", - "derive_sale_quantity_tooltip" => "", - "dinner_table" => "", - "dinner_table_duplicate" => "", - "dinner_table_enable" => "", - "dinner_table_invalid_chars" => "", - "dinner_table_required" => "", - "dot" => "", - "email" => "", - "email_configuration" => "", - "email_mailpath" => "", - "email_protocol" => "", - "email_receipt_check_behaviour" => "", - "email_receipt_check_behaviour_always" => "", - "email_receipt_check_behaviour_last" => "", - "email_receipt_check_behaviour_never" => "", - "email_smtp_crypto" => "", - "email_smtp_host" => "", - "email_smtp_pass" => "", - "email_smtp_port" => "", - "email_smtp_timeout" => "", - "email_smtp_user" => "", - "enable_avatar" => "", - "enable_avatar_tooltip" => "", - "enable_dropdown_tooltip" => "", - "enable_new_look" => "", - "enable_right_bar" => "", - "enable_right_bar_tooltip" => "", - "enforce_privacy" => "", - "enforce_privacy_tooltip" => "", - "fax" => "", - "file_perm" => "There are problems with file permissions please fix and reload this page.", - "financial_year" => "", - "financial_year_apr" => "", - "financial_year_aug" => "", - "financial_year_dec" => "", - "financial_year_feb" => "", - "financial_year_jan" => "", - "financial_year_jul" => "", - "financial_year_jun" => "", - "financial_year_mar" => "", - "financial_year_may" => "", - "financial_year_nov" => "", - "financial_year_oct" => "", - "financial_year_sep" => "", - "floating_labels" => "", - "gcaptcha_enable" => "", - "gcaptcha_secret_key" => "", - "gcaptcha_secret_key_required" => "", - "gcaptcha_site_key" => "", - "gcaptcha_site_key_required" => "", - "gcaptcha_tooltip" => "", - "general" => "", - "general_configuration" => "", - "giftcard_number" => "", - "giftcard_random" => "", - "giftcard_series" => "", - "image_allowed_file_types" => "", - "image_max_height_tooltip" => "", - "image_max_size_tooltip" => "", - "image_max_width_tooltip" => "", - "image_restrictions" => "", - "include_hsn" => "", - "info" => "", - "info_configuration" => "", - "input_groups" => "", - "integrations" => "", - "integrations_configuration" => "", - "invoice" => "", - "invoice_configuration" => "", - "invoice_default_comments" => "", - "invoice_email_message" => "", - "invoice_enable" => "", - "invoice_printer" => "", - "invoice_type" => "", - "is_readable" => "", - "is_writable" => "is writable, but the permissions are higher than 750.", - "item_markup" => "", - "jsprintsetup_required" => "", - "language" => "", - "last_used_invoice_number" => "", - "last_used_quote_number" => "", - "last_used_work_order_number" => "", - "left" => "", - "license" => "", - "license_configuration" => "", - "line_sequence" => "", - "lines_per_page" => "", - "lines_per_page_number" => "", - "lines_per_page_required" => "", - "locale" => "", - "locale_configuration" => "", - "locale_info" => "", - "location" => "", - "location_configuration" => "", - "location_info" => "", - "login_form" => "", - "logout" => "", - "mailchimp" => "", - "mailchimp_api_key" => "", - "mailchimp_configuration" => "", - "mailchimp_key_successfully" => "", - "mailchimp_key_unsuccessfully" => "", - "mailchimp_lists" => "", - "mailchimp_tooltip" => "", - "message" => "", - "message_configuration" => "", - "msg_msg" => "", - "msg_msg_placeholder" => "", - "msg_pwd" => "", - "msg_pwd_required" => "", - "msg_src" => "", - "msg_src_required" => "", - "msg_uid" => "", - "msg_uid_required" => "", - "multi_pack_enabled" => "", - "no_risk" => "No security/vulnerability risks.", - "none" => "", - "notify_alignment" => "", - "number_format" => "", - "number_locale" => "", - "number_locale_invalid" => "", - "number_locale_required" => "", - "number_locale_tooltip" => "", - "os_timezone" => "", - "ospos_info" => "", - "payment_options_order" => "", - "perm_risk" => "Permissions higher than 750 leaves this software at risk.", - "phone" => "", - "phone_required" => "", - "print_bottom_margin" => "", - "print_bottom_margin_number" => "", - "print_bottom_margin_required" => "", - "print_delay_autoreturn" => "", - "print_delay_autoreturn_number" => "", - "print_delay_autoreturn_required" => "", - "print_footer" => "", - "print_header" => "", - "print_left_margin" => "", - "print_left_margin_number" => "", - "print_left_margin_required" => "", - "print_receipt_check_behaviour" => "", - "print_receipt_check_behaviour_always" => "", - "print_receipt_check_behaviour_last" => "", - "print_receipt_check_behaviour_never" => "", - "print_right_margin" => "", - "print_right_margin_number" => "", - "print_right_margin_required" => "", - "print_silently" => "", - "print_top_margin" => "", - "print_top_margin_number" => "", - "print_top_margin_required" => "", - "quantity_decimals" => "", - "quick_cash_enable" => "", - "quote_default_comments" => "", - "receipt" => "", - "receipt_category" => "", - "receipt_configuration" => "", - "receipt_default" => "", - "receipt_font_size" => "", - "receipt_font_size_number" => "", - "receipt_font_size_required" => "", - "receipt_info" => "", - "receipt_printer" => "", - "receipt_short" => "", - "receipt_show_company_name" => "", - "receipt_show_description" => "", - "receipt_show_serialnumber" => "", - "receipt_show_tax_ind" => "", - "receipt_show_taxes" => "", - "receipt_show_total_discount" => "", - "receipt_template" => "", - "receiving_calculate_average_price" => "", - "recv_invoice_format" => "", - "register_mode_default" => "", - "report_an_issue" => "", - "return_policy_required" => "", - "reward" => "", - "reward_configuration" => "", - "right" => "", - "sales_invoice_format" => "", - "sales_quote_format" => "", - "saved_successfully" => "", - "saved_unsuccessfully" => "", - "security_issue" => "Security Vulnerability Warning", - "server_notice" => "", - "service_charge" => "", - "show_due_enable" => "", - "show_office_group" => "", - "statistics" => "", - "statistics_tooltip" => "", - "stock_location" => "", - "stock_location_duplicate" => "", - "stock_location_invalid_chars" => "", - "stock_location_required" => "", - "suggestions_fifth_column" => "", - "suggestions_first_column" => "", - "suggestions_fourth_column" => "", - "suggestions_layout" => "", - "suggestions_second_column" => "", - "suggestions_third_column" => "", - "system_conf" => "Setup & Conf", - "system_info" => "", - "table" => "", - "table_configuration" => "", - "takings_printer" => "", - "tax" => "", - "tax_category" => "", - "tax_category_duplicate" => "", - "tax_category_invalid_chars" => "", - "tax_category_required" => "", - "tax_category_used" => "", - "tax_configuration" => "", - "tax_decimals" => "", - "tax_id" => "", - "tax_included" => "", - "theme" => "", - "theme_preview" => "", - "thousands_separator" => "", - "timezone" => "", - "timezone_error" => "", - "top" => "", - "use_destination_based_tax" => "", - "user_timezone" => "", - "website" => "", - "wholesale_markup" => "", - "work_order_enable" => "", - "work_order_format" => "", + "address" => "", + "address_required" => "", + "all_set" => "All file permissions are set correctly!", + "allow_duplicate_barcodes" => "", + "apostrophe" => "", + "backup_button" => "", + "backup_database" => "", + "barcode" => "", + "barcode_company" => "", + "barcode_configuration" => "", + "barcode_content" => "", + "barcode_first_row" => "", + "barcode_font" => "", + "barcode_formats" => "", + "barcode_generate_if_empty" => "", + "barcode_height" => "", + "barcode_id" => "", + "barcode_info" => "", + "barcode_layout" => "", + "barcode_name" => "", + "barcode_number" => "", + "barcode_number_in_row" => "", + "barcode_page_cellspacing" => "", + "barcode_page_width" => "", + "barcode_price" => "", + "barcode_second_row" => "", + "barcode_third_row" => "", + "barcode_tooltip" => "", + "barcode_type" => "", + "barcode_width" => "", + "bottom" => "", + "cash_button" => "", + "cash_button_1" => "", + "cash_button_2" => "", + "cash_button_3" => "", + "cash_button_4" => "", + "cash_button_5" => "", + "cash_button_6" => "", + "cash_decimals" => "", + "cash_decimals_tooltip" => "", + "cash_rounding" => "", + "category_dropdown" => "", + "center" => "", + "change_apperance_tooltip" => "", + "comma" => "", + "company" => "", + "company_avatar" => "", + "company_change_image" => "", + "company_logo" => "", + "company_remove_image" => "", + "company_required" => "", + "company_select_image" => "", + "company_website_url" => "", + "country_codes" => "", + "country_codes_tooltip" => "", + "currency_code" => "", + "currency_decimals" => "", + "currency_symbol" => "", + "current_employee_only" => "", + "customer_reward" => "", + "customer_reward_duplicate" => "", + "customer_reward_enable" => "", + "customer_reward_invalid_chars" => "", + "customer_reward_required" => "", + "customer_sales_tax_support" => "", + "date_or_time_format" => "", + "datetimeformat" => "", + "decimal_point" => "", + "default_barcode_font_size_number" => "", + "default_barcode_font_size_required" => "", + "default_barcode_height_number" => "", + "default_barcode_height_required" => "", + "default_barcode_num_in_row_number" => "", + "default_barcode_num_in_row_required" => "", + "default_barcode_page_cellspacing_number" => "", + "default_barcode_page_cellspacing_required" => "", + "default_barcode_page_width_number" => "", + "default_barcode_page_width_required" => "", + "default_barcode_width_number" => "", + "default_barcode_width_required" => "", + "default_item_columns" => "", + "default_origin_tax_code" => "", + "default_receivings_discount" => "", + "default_receivings_discount_number" => "", + "default_receivings_discount_required" => "", + "default_sales_discount" => "", + "default_sales_discount_number" => "", + "default_sales_discount_required" => "", + "default_tax_category" => "", + "default_tax_code" => "", + "default_tax_jurisdiction" => "", + "default_tax_name_number" => "", + "default_tax_name_required" => "", + "default_tax_rate" => "", + "default_tax_rate_1" => "", + "default_tax_rate_2" => "", + "default_tax_rate_3" => "", + "default_tax_rate_number" => "", + "default_tax_rate_required" => "", + "derive_sale_quantity" => "", + "derive_sale_quantity_tooltip" => "", + "dinner_table" => "", + "dinner_table_duplicate" => "", + "dinner_table_enable" => "", + "dinner_table_invalid_chars" => "", + "dinner_table_required" => "", + "dot" => "", + "email" => "", + "email_configuration" => "", + "email_mailpath" => "", + "email_protocol" => "", + "email_receipt_check_behaviour" => "", + "email_receipt_check_behaviour_always" => "", + "email_receipt_check_behaviour_last" => "", + "email_receipt_check_behaviour_never" => "", + "email_smtp_crypto" => "", + "email_smtp_host" => "", + "email_smtp_pass" => "", + "email_smtp_port" => "", + "email_smtp_timeout" => "", + "email_smtp_user" => "", + "enable_avatar" => "", + "enable_avatar_tooltip" => "", + "enable_dropdown_tooltip" => "", + "enable_new_look" => "", + "enable_right_bar" => "", + "enable_right_bar_tooltip" => "", + "enforce_privacy" => "", + "enforce_privacy_tooltip" => "", + "fax" => "", + "file_perm" => "There are problems with file permissions please fix and reload this page.", + "financial_year" => "", + "financial_year_apr" => "", + "financial_year_aug" => "", + "financial_year_dec" => "", + "financial_year_feb" => "", + "financial_year_jan" => "", + "financial_year_jul" => "", + "financial_year_jun" => "", + "financial_year_mar" => "", + "financial_year_may" => "", + "financial_year_nov" => "", + "financial_year_oct" => "", + "financial_year_sep" => "", + "floating_labels" => "", + "gcaptcha_enable" => "", + "gcaptcha_secret_key" => "", + "gcaptcha_secret_key_required" => "", + "gcaptcha_site_key" => "", + "gcaptcha_site_key_required" => "", + "gcaptcha_tooltip" => "", + "general" => "", + "general_configuration" => "", + "giftcard_number" => "", + "giftcard_random" => "", + "giftcard_series" => "", + "image_allowed_file_types" => "", + "image_max_height_tooltip" => "", + "image_max_size_tooltip" => "", + "image_max_width_tooltip" => "", + "image_restrictions" => "", + "include_hsn" => "", + "info" => "", + "info_configuration" => "", + "input_groups" => "", + "integrations" => "", + "integrations_configuration" => "", + "invoice" => "", + "invoice_configuration" => "", + "invoice_default_comments" => "", + "invoice_email_message" => "", + "invoice_enable" => "", + "invoice_printer" => "", + "invoice_type" => "", + "is_readable" => "", + "is_writable" => "is writable, but the permissions are higher than 750.", + "item_markup" => "", + "jsprintsetup_required" => "", + "language" => "", + "last_used_invoice_number" => "", + "last_used_quote_number" => "", + "last_used_work_order_number" => "", + "left" => "", + "license" => "", + "license_configuration" => "", + "line_sequence" => "", + "lines_per_page" => "", + "lines_per_page_number" => "", + "lines_per_page_required" => "", + "locale" => "", + "locale_configuration" => "", + "locale_info" => "", + "location" => "", + "location_configuration" => "", + "location_info" => "", + "login_form" => "", + "logout" => "", + "mailchimp" => "", + "mailchimp_api_key" => "", + "mailchimp_configuration" => "", + "mailchimp_key_successfully" => "", + "mailchimp_key_unsuccessfully" => "", + "mailchimp_lists" => "", + "mailchimp_tooltip" => "", + "message" => "", + "message_configuration" => "", + "msg_msg" => "", + "msg_msg_placeholder" => "", + "msg_pwd" => "", + "msg_pwd_required" => "", + "msg_src" => "", + "msg_src_required" => "", + "msg_uid" => "", + "msg_uid_required" => "", + "multi_pack_enabled" => "", + "no_risk" => "No security/vulnerability risks.", + "none" => "", + "notify_alignment" => "", + "number_format" => "", + "number_locale" => "", + "number_locale_invalid" => "", + "number_locale_required" => "", + "number_locale_tooltip" => "", + "os_timezone" => "", + "ospos_info" => "", + "payment_options_order" => "", + "perm_risk" => "Permissions higher than 750 leaves this software at risk.", + "phone" => "", + "phone_required" => "", + "print_bottom_margin" => "", + "print_bottom_margin_number" => "", + "print_bottom_margin_required" => "", + "print_delay_autoreturn" => "", + "print_delay_autoreturn_number" => "", + "print_delay_autoreturn_required" => "", + "print_footer" => "", + "print_header" => "", + "print_left_margin" => "", + "print_left_margin_number" => "", + "print_left_margin_required" => "", + "print_receipt_check_behaviour" => "", + "print_receipt_check_behaviour_always" => "", + "print_receipt_check_behaviour_last" => "", + "print_receipt_check_behaviour_never" => "", + "print_right_margin" => "", + "print_right_margin_number" => "", + "print_right_margin_required" => "", + "print_silently" => "", + "print_top_margin" => "", + "print_top_margin_number" => "", + "print_top_margin_required" => "", + "quantity_decimals" => "", + "quick_cash_enable" => "", + "quote_default_comments" => "", + "receipt" => "", + "receipt_category" => "", + "receipt_configuration" => "", + "receipt_default" => "", + "receipt_font_size" => "", + "receipt_font_size_number" => "", + "receipt_font_size_required" => "", + "receipt_info" => "", + "receipt_printer" => "", + "receipt_short" => "", + "receipt_show_company_name" => "", + "receipt_show_description" => "", + "receipt_show_serialnumber" => "", + "receipt_show_tax_ind" => "", + "receipt_show_taxes" => "", + "receipt_show_total_discount" => "", + "receipt_template" => "", + "receiving_calculate_average_price" => "", + "recv_invoice_format" => "", + "register_mode_default" => "", + "report_an_issue" => "", + "return_policy_required" => "", + "reward" => "", + "reward_configuration" => "", + "right" => "", + "sales_invoice_format" => "", + "sales_quote_format" => "", + "saved_successfully" => "", + "saved_unsuccessfully" => "", + "security_issue" => "Security Vulnerability Warning", + "server_notice" => "", + "service_charge" => "", + "show_due_enable" => "", + "show_office_group" => "", + "statistics" => "", + "statistics_tooltip" => "", + "stock_location" => "", + "stock_location_duplicate" => "", + "stock_location_invalid_chars" => "", + "stock_location_required" => "", + "suggestions_fifth_column" => "", + "suggestions_first_column" => "", + "suggestions_fourth_column" => "", + "suggestions_layout" => "", + "suggestions_second_column" => "", + "suggestions_third_column" => "", + "system_conf" => "Setup & Conf", + "system_info" => "", + "table" => "", + "table_configuration" => "", + "takings_printer" => "", + "tax" => "", + "tax_category" => "", + "tax_category_duplicate" => "", + "tax_category_invalid_chars" => "", + "tax_category_required" => "", + "tax_category_used" => "", + "tax_configuration" => "", + "tax_decimals" => "", + "tax_id" => "", + "tax_included" => "", + "theme" => "", + "theme_preview" => "", + "thousands_separator" => "", + "timezone" => "", + "timezone_error" => "", + "top" => "", + "use_destination_based_tax" => "", + "user_timezone" => "", + "website" => "", + "wholesale_markup" => "", + "work_order_enable" => "", + "work_order_format" => "", ]; diff --git a/app/Language/ur/Employees.php b/app/Language/ur/Employees.php index 6f597ab5b..5aa444ff4 100644 --- a/app/Language/ur/Employees.php +++ b/app/Language/ur/Employees.php @@ -1,44 +1,44 @@ "", - "basic_information" => "", - "cannot_be_deleted" => "", - "change_employee" => "", - "change_password" => "", - "clerk" => "", - "commission" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "current_password" => "", - "current_password_invalid" => "", - "employee" => "", - "error_adding_updating" => "", - "error_deleting_demo_admin" => "", - "error_updating_demo_admin" => "", - "language" => "", - "login_info" => "", - "manager" => "", - "new" => "", - "none_selected" => "", - "one_or_multiple" => "", - "password" => "", - "password_minlength" => "", - "password_must_match" => "", - "password_not_must_match" => "", - "password_required" => "", - "permission_desc" => "", - "permission_info" => "", - "repeat_password" => "", - "subpermission_required" => "", - "successful_adding" => "", - "successful_change_password" => "", - "successful_deleted" => "", - "successful_updating" => "", - "system_language" => "", - "unsuccessful_change_password" => "", - "update" => "", - "username" => "", - "username_duplicate" => "", - "username_minlength" => "", - "username_required" => "", + "administrator" => "", + "basic_information" => "", + "cannot_be_deleted" => "", + "change_employee" => "", + "change_password" => "", + "clerk" => "", + "commission" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "current_password" => "", + "current_password_invalid" => "", + "employee" => "", + "error_adding_updating" => "", + "error_deleting_demo_admin" => "", + "error_updating_demo_admin" => "", + "language" => "", + "login_info" => "", + "manager" => "", + "new" => "", + "none_selected" => "", + "one_or_multiple" => "", + "password" => "", + "password_minlength" => "", + "password_must_match" => "", + "password_not_must_match" => "", + "password_required" => "", + "permission_desc" => "", + "permission_info" => "", + "repeat_password" => "", + "subpermission_required" => "", + "successful_adding" => "", + "successful_change_password" => "", + "successful_deleted" => "", + "successful_updating" => "", + "system_language" => "", + "unsuccessful_change_password" => "", + "update" => "", + "username" => "", + "username_duplicate" => "", + "username_minlength" => "", + "username_required" => "", ]; diff --git a/app/Language/ur/Enum.php b/app/Language/ur/Enum.php index c39655c3b..1ed7e9313 100644 --- a/app/Language/ur/Enum.php +++ b/app/Language/ur/Enum.php @@ -1,10 +1,10 @@ "", - "half_even" => "", - "half_five" => "", - "half_odd" => "", - "half_up" => "", - "round_down" => "", - "round_up" => "", + "half_down" => "", + "half_even" => "", + "half_five" => "", + "half_odd" => "", + "half_up" => "", + "round_down" => "", + "round_up" => "", ]; diff --git a/app/Language/ur/Giftcards.php b/app/Language/ur/Giftcards.php index f1b1bd322..00d291498 100644 --- a/app/Language/ur/Giftcards.php +++ b/app/Language/ur/Giftcards.php @@ -1,71 +1,71 @@ "", - "allow_alt_description" => "", - "bulk_edit" => "", - "cannot_be_deleted" => "", - "cannot_find_giftcard" => "", - "cannot_use" => "", - "card_value" => "", - "category" => "", - "change_all_to_allow_alt_desc" => "", - "change_all_to_not_allow_allow_desc" => "", - "change_all_to_serialized" => "", - "change_all_to_unserialized" => "", - "confirm_bulk_edit" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "cost_price" => "", - "count" => "", - "csv_import_failed" => "", - "current_quantity" => "", - "description" => "", - "details_count" => "", - "do_nothing" => "", - "edit_fields_you_want_to_update" => "", - "edit_multiple_giftcards" => "", - "error_adding_updating" => "", - "error_updating_multiple" => "", - "generate_barcodes" => "", - "giftcard" => "", - "giftcard_number" => "", - "info_provided_by" => "", - "inventory_comments" => "", - "is_serialized" => "", - "low_inventory_giftcards" => "", - "manually_editing_of_quantity" => "", - "must_select_giftcard_for_barcode" => "", - "new" => "", - "no_description_giftcards" => "", - "no_giftcards_to_display" => "", - "none" => "", - "none_selected" => "", - "number" => "", - "number_information" => "", - "number_required" => "", - "one_or_multiple" => "", - "person_id" => "", - "quantity" => "", - "quantity_required" => "", - "remaining_balance" => "", - "reorder_level" => "", - "retrive_giftcard_info" => "", - "sales_tax_1" => "", - "sales_tax_2" => "", - "serialized_giftcards" => "", - "successful_adding" => "", - "successful_bulk_edit" => "", - "successful_deleted" => "", - "successful_updating" => "", - "supplier" => "", - "tax_1" => "", - "tax_2" => "", - "tax_percent" => "", - "tax_percents" => "", - "unit_price" => "", - "upc_database" => "", - "update" => "", - "use_inventory_menu" => "", - "value" => "", - "value_required" => "", + "add_minus" => "", + "allow_alt_description" => "", + "bulk_edit" => "", + "cannot_be_deleted" => "", + "cannot_find_giftcard" => "", + "cannot_use" => "", + "card_value" => "", + "category" => "", + "change_all_to_allow_alt_desc" => "", + "change_all_to_not_allow_allow_desc" => "", + "change_all_to_serialized" => "", + "change_all_to_unserialized" => "", + "confirm_bulk_edit" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "cost_price" => "", + "count" => "", + "csv_import_failed" => "", + "current_quantity" => "", + "description" => "", + "details_count" => "", + "do_nothing" => "", + "edit_fields_you_want_to_update" => "", + "edit_multiple_giftcards" => "", + "error_adding_updating" => "", + "error_updating_multiple" => "", + "generate_barcodes" => "", + "giftcard" => "", + "giftcard_number" => "", + "info_provided_by" => "", + "inventory_comments" => "", + "is_serialized" => "", + "low_inventory_giftcards" => "", + "manually_editing_of_quantity" => "", + "must_select_giftcard_for_barcode" => "", + "new" => "", + "no_description_giftcards" => "", + "no_giftcards_to_display" => "", + "none" => "", + "none_selected" => "", + "number" => "", + "number_information" => "", + "number_required" => "", + "one_or_multiple" => "", + "person_id" => "", + "quantity" => "", + "quantity_required" => "", + "remaining_balance" => "", + "reorder_level" => "", + "retrive_giftcard_info" => "", + "sales_tax_1" => "", + "sales_tax_2" => "", + "serialized_giftcards" => "", + "successful_adding" => "", + "successful_bulk_edit" => "", + "successful_deleted" => "", + "successful_updating" => "", + "supplier" => "", + "tax_1" => "", + "tax_2" => "", + "tax_percent" => "", + "tax_percents" => "", + "unit_price" => "", + "upc_database" => "", + "update" => "", + "use_inventory_menu" => "", + "value" => "", + "value_required" => "", ]; diff --git a/app/Language/ur/Item_kits.php b/app/Language/ur/Item_kits.php index 2f21a4963..370929649 100644 --- a/app/Language/ur/Item_kits.php +++ b/app/Language/ur/Item_kits.php @@ -1,41 +1,41 @@ "", - "all" => "", - "cannot_be_deleted" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "description" => "", - "discount" => "", - "discount_fixed" => "", - "discount_percent" => "", - "discount_type" => "", - "error_adding_updating" => "", - "find_kit_item" => "", - "info" => "", - "item" => "", - "item_kit_number" => "", - "item_kit_number_duplicate" => "", - "item_number" => "", - "item_number_duplicate" => "", - "items" => "", - "kit" => "", - "kit_and_components" => "", - "kit_and_stock" => "", - "kit_only" => "", - "name" => "", - "new" => "", - "no_item_kits_to_display" => "", - "none_selected" => "", - "one_or_multiple" => "", - "price_option" => "", - "priced_only" => "", - "print_option" => "", - "quantity" => "", - "sequence" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "unit_price" => "", - "update" => "", + "add_item" => "", + "all" => "", + "cannot_be_deleted" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "description" => "", + "discount" => "", + "discount_fixed" => "", + "discount_percent" => "", + "discount_type" => "", + "error_adding_updating" => "", + "find_kit_item" => "", + "info" => "", + "item" => "", + "item_kit_number" => "", + "item_kit_number_duplicate" => "", + "item_number" => "", + "item_number_duplicate" => "", + "items" => "", + "kit" => "", + "kit_and_components" => "", + "kit_and_stock" => "", + "kit_only" => "", + "name" => "", + "new" => "", + "no_item_kits_to_display" => "", + "none_selected" => "", + "one_or_multiple" => "", + "price_option" => "", + "priced_only" => "", + "print_option" => "", + "quantity" => "", + "sequence" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "unit_price" => "", + "update" => "", ]; diff --git a/app/Language/ur/Items.php b/app/Language/ur/Items.php index 9718385d0..25c0395e0 100644 --- a/app/Language/ur/Items.php +++ b/app/Language/ur/Items.php @@ -1,120 +1,120 @@ "", - "allow_alt_description" => "", - "amount_entry" => "", - "bulk_edit" => "", - "buy_price_required" => "", - "cannot_be_deleted" => "", - "cannot_find_item" => "", - "categories" => "", - "category" => "", - "category_new" => "", - "category_required" => "", - "change_all_to_allow_alt_desc" => "", - "change_all_to_not_allow_allow_desc" => "", - "change_all_to_serialized" => "", - "change_all_to_unserialized" => "", - "change_image" => "", - "confirm_bulk_edit" => "", - "confirm_bulk_edit_wipe_taxes" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "cost_price" => "", - "cost_price_number" => "", - "cost_price_required" => "", - "count" => "", - "csv_import_failed" => "", - "csv_import_nodata_wrongformat" => "", - "csv_import_partially_failed" => "", - "csv_import_success" => "", - "current_quantity" => "", - "default_pack_name" => "", - "description" => "", - "details_count" => "", - "do_nothing" => "", - "edit" => "", - "edit_fields_you_want_to_update" => "", - "edit_multiple_items" => "", - "empty_upc_items" => "", - "error_adding_updating" => "", - "error_updating_multiple" => "", - "generate_barcodes" => "", - "hsn_code" => "", - "image" => "", - "import_items_csv" => "", - "info_provided_by" => "", - "inventory" => "", - "inventory_CSV_import_quantity" => "", - "inventory_comments" => "", - "inventory_data_tracking" => "", - "inventory_date" => "", - "inventory_employee" => "", - "inventory_in_out_quantity" => "", - "inventory_remarks" => "", - "is_deleted" => "", - "is_printed" => "", - "is_serialized" => "", - "item" => "", - "item_id" => "", - "item_number" => "", - "item_number_duplicate" => "", - "kit" => "", - "location" => "", - "low_inventory_items" => "", - "low_sell_item" => "", - "manually_editing_of_quantity" => "", - "markup" => "", - "name" => "", - "name_required" => "", - "new" => "", - "no_description_items" => "", - "no_items_to_display" => "", - "none" => "", - "none_selected" => "", - "nonstock" => "", - "number_information" => "", - "number_required" => "", - "one_or_multiple" => "", - "pack_name" => "", - "qty_per_pack" => "", - "quantity" => "", - "quantity_number" => "", - "quantity_required" => "", - "receiving_quantity" => "", - "remove_image" => "", - "reorder_level" => "", - "reorder_level_number" => "", - "reorder_level_required" => "", - "retrive_item_info" => "", - "sales_tax_1" => "", - "sales_tax_2" => "", - "search_attributes" => "", - "select_image" => "", - "serialized_items" => "", - "standard" => "", - "stock" => "", - "stock_location" => "", - "stock_type" => "", - "successful_adding" => "", - "successful_bulk_edit" => "", - "successful_deleted" => "", - "successful_updating" => "", - "supplier" => "", - "tax_1" => "", - "tax_2" => "", - "tax_3" => "", - "tax_category" => "", - "tax_percent" => "", - "tax_percent_number" => "", - "tax_percent_required" => "", - "tax_percents" => "", - "temp" => "", - "type" => "", - "unit_price" => "", - "unit_price_number" => "", - "unit_price_required" => "", - "upc_database" => "", - "update" => "", - "use_inventory_menu" => "", + "add_minus" => "", + "allow_alt_description" => "", + "amount_entry" => "", + "bulk_edit" => "", + "buy_price_required" => "", + "cannot_be_deleted" => "", + "cannot_find_item" => "", + "categories" => "", + "category" => "", + "category_new" => "", + "category_required" => "", + "change_all_to_allow_alt_desc" => "", + "change_all_to_not_allow_allow_desc" => "", + "change_all_to_serialized" => "", + "change_all_to_unserialized" => "", + "change_image" => "", + "confirm_bulk_edit" => "", + "confirm_bulk_edit_wipe_taxes" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "cost_price" => "", + "cost_price_number" => "", + "cost_price_required" => "", + "count" => "", + "csv_import_failed" => "", + "csv_import_nodata_wrongformat" => "", + "csv_import_partially_failed" => "", + "csv_import_success" => "", + "current_quantity" => "", + "default_pack_name" => "", + "description" => "", + "details_count" => "", + "do_nothing" => "", + "edit" => "", + "edit_fields_you_want_to_update" => "", + "edit_multiple_items" => "", + "empty_upc_items" => "", + "error_adding_updating" => "", + "error_updating_multiple" => "", + "generate_barcodes" => "", + "hsn_code" => "", + "image" => "", + "import_items_csv" => "", + "info_provided_by" => "", + "inventory" => "", + "inventory_CSV_import_quantity" => "", + "inventory_comments" => "", + "inventory_data_tracking" => "", + "inventory_date" => "", + "inventory_employee" => "", + "inventory_in_out_quantity" => "", + "inventory_remarks" => "", + "is_deleted" => "", + "is_printed" => "", + "is_serialized" => "", + "item" => "", + "item_id" => "", + "item_number" => "", + "item_number_duplicate" => "", + "kit" => "", + "location" => "", + "low_inventory_items" => "", + "low_sell_item" => "", + "manually_editing_of_quantity" => "", + "markup" => "", + "name" => "", + "name_required" => "", + "new" => "", + "no_description_items" => "", + "no_items_to_display" => "", + "none" => "", + "none_selected" => "", + "nonstock" => "", + "number_information" => "", + "number_required" => "", + "one_or_multiple" => "", + "pack_name" => "", + "qty_per_pack" => "", + "quantity" => "", + "quantity_number" => "", + "quantity_required" => "", + "receiving_quantity" => "", + "remove_image" => "", + "reorder_level" => "", + "reorder_level_number" => "", + "reorder_level_required" => "", + "retrive_item_info" => "", + "sales_tax_1" => "", + "sales_tax_2" => "", + "search_attributes" => "", + "select_image" => "", + "serialized_items" => "", + "standard" => "", + "stock" => "", + "stock_location" => "", + "stock_type" => "", + "successful_adding" => "", + "successful_bulk_edit" => "", + "successful_deleted" => "", + "successful_updating" => "", + "supplier" => "", + "tax_1" => "", + "tax_2" => "", + "tax_3" => "", + "tax_category" => "", + "tax_percent" => "", + "tax_percent_number" => "", + "tax_percent_required" => "", + "tax_percents" => "", + "temp" => "", + "type" => "", + "unit_price" => "", + "unit_price_number" => "", + "unit_price_required" => "", + "upc_database" => "", + "update" => "", + "use_inventory_menu" => "", ]; diff --git a/app/Language/ur/Login.php b/app/Language/ur/Login.php index 4a73810c7..2a18ca41d 100644 --- a/app/Language/ur/Login.php +++ b/app/Language/ur/Login.php @@ -1,15 +1,15 @@ "", - "go" => "", - "invalid_gcaptcha" => "", - "invalid_installation" => "", - "invalid_username_and_password" => "", - "login" => "", - "logout" => "", - "migration_needed" => "", - "password" => "", - "required_username" => "", - "username" => "", - "welcome" => "", + "gcaptcha" => "", + "go" => "", + "invalid_gcaptcha" => "", + "invalid_installation" => "", + "invalid_username_and_password" => "", + "login" => "", + "logout" => "", + "migration_needed" => "", + "password" => "", + "required_username" => "", + "username" => "", + "welcome" => "", ]; diff --git a/app/Language/ur/Messages.php b/app/Language/ur/Messages.php index ce3a2e233..3079da504 100644 --- a/app/Language/ur/Messages.php +++ b/app/Language/ur/Messages.php @@ -1,15 +1,15 @@ "", - "last_name" => "", - "message" => "", - "message_placeholder" => "", - "message_required" => "", - "multiple_phones" => "", - "phone" => "", - "phone_number_required" => "", - "phone_placeholder" => "", - "sms_send" => "", - "successfully_sent" => "", - "unsuccessfully_sent" => "", + "first_name" => "", + "last_name" => "", + "message" => "", + "message_placeholder" => "", + "message_required" => "", + "multiple_phones" => "", + "phone" => "", + "phone_number_required" => "", + "phone_placeholder" => "", + "sms_send" => "", + "successfully_sent" => "", + "unsuccessfully_sent" => "", ]; diff --git a/app/Language/ur/Module.php b/app/Language/ur/Module.php index f2ad04586..fb277bc95 100644 --- a/app/Language/ur/Module.php +++ b/app/Language/ur/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "", - "attributes_desc" => "", - "both" => "", - "cashups" => "", - "cashups_desc" => "", - "config" => "", - "config_desc" => "", - "customers" => "", - "customers_desc" => "", - "employees" => "", - "employees_desc" => "", - "expenses" => "", - "expenses_categories" => "", - "expenses_categories_desc" => "", - "expenses_desc" => "", - "giftcards" => "", - "giftcards_desc" => "", - "home" => "", - "home_desc" => "", - "item_kits" => "", - "item_kits_desc" => "", - "items" => "", - "items_desc" => "", - "messages" => "", - "messages_desc" => "", - "migrate" => "", - "migrate_desc" => "", - "office" => "", - "office_desc" => "", - "receivings" => "", - "receivings_desc" => "", - "reports" => "", - "reports_desc" => "", - "sales" => "", - "sales_desc" => "", - "suppliers" => "", - "suppliers_desc" => "", - "taxes" => "", - "taxes_desc" => "", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "", + "attributes_desc" => "", + "both" => "", + "cashups" => "", + "cashups_desc" => "", + "config" => "", + "config_desc" => "", + "customers" => "", + "customers_desc" => "", + "employees" => "", + "employees_desc" => "", + "expenses" => "", + "expenses_categories" => "", + "expenses_categories_desc" => "", + "expenses_desc" => "", + "giftcards" => "", + "giftcards_desc" => "", + "home" => "", + "home_desc" => "", + "item_kits" => "", + "item_kits_desc" => "", + "items" => "", + "items_desc" => "", + "messages" => "", + "messages_desc" => "", + "migrate" => "", + "migrate_desc" => "", + "office" => "", + "office_desc" => "", + "receivings" => "", + "receivings_desc" => "", + "reports" => "", + "reports_desc" => "", + "sales" => "", + "sales_desc" => "", + "suppliers" => "", + "suppliers_desc" => "", + "taxes" => "", + "taxes_desc" => "", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/ur/Receivings.php b/app/Language/ur/Receivings.php index 4ffca4df7..0936f4851 100644 --- a/app/Language/ur/Receivings.php +++ b/app/Language/ur/Receivings.php @@ -1,58 +1,58 @@ "", - "cancel_receiving" => "", - "cannot_be_deleted" => "", - "comments" => "", - "complete_receiving" => "", - "confirm_cancel_receiving" => "", - "confirm_delete" => "", - "confirm_finish_receiving" => "", - "confirm_restore" => "", - "cost" => "", - "daily" => "", - "date" => "", - "date_required" => "", - "date_type" => "", - "delete_entire_sale" => "", - "discount" => "", - "edit" => "", - "edit_sale" => "", - "employee" => "", - "error_editing_item" => "", - "error_requisition" => "", - "find_or_scan_item" => "", - "find_or_scan_item_or_receipt" => "", - "id" => "", - "item_name" => "", - "mode" => "", - "new_supplier" => "", - "one_or_multiple" => "", - "print_after_sale" => "", - "quantity" => "", - "receipt" => "", - "receipt_number" => "", - "receiving" => "", - "reference" => "", - "register" => "", - "requisition" => "", - "return" => "", - "select_supplier" => "", - "ship_pack" => "", - "start_typing_supplier_name" => "", - "stock" => "", - "stock_destination" => "", - "stock_locaiton" => "", - "stock_source" => "", - "successfully_deleted" => "", - "successfully_updated" => "", - "supplier" => "", - "supplier_address" => "", - "supplier_email" => "", - "supplier_location" => "", - "total" => "", - "transaction_failed" => "", - "unable_to_add_item" => "", - "unsuccessfully_updated" => "", - "update" => "", + "amount_due" => "", + "cancel_receiving" => "", + "cannot_be_deleted" => "", + "comments" => "", + "complete_receiving" => "", + "confirm_cancel_receiving" => "", + "confirm_delete" => "", + "confirm_finish_receiving" => "", + "confirm_restore" => "", + "cost" => "", + "daily" => "", + "date" => "", + "date_required" => "", + "date_type" => "", + "delete_entire_sale" => "", + "discount" => "", + "edit" => "", + "edit_sale" => "", + "employee" => "", + "error_editing_item" => "", + "error_requisition" => "", + "find_or_scan_item" => "", + "find_or_scan_item_or_receipt" => "", + "id" => "", + "item_name" => "", + "mode" => "", + "new_supplier" => "", + "one_or_multiple" => "", + "print_after_sale" => "", + "quantity" => "", + "receipt" => "", + "receipt_number" => "", + "receiving" => "", + "reference" => "", + "register" => "", + "requisition" => "", + "return" => "", + "select_supplier" => "", + "ship_pack" => "", + "start_typing_supplier_name" => "", + "stock" => "", + "stock_destination" => "", + "stock_locaiton" => "", + "stock_source" => "", + "successfully_deleted" => "", + "successfully_updated" => "", + "supplier" => "", + "supplier_address" => "", + "supplier_email" => "", + "supplier_location" => "", + "total" => "", + "transaction_failed" => "", + "unable_to_add_item" => "", + "unsuccessfully_updated" => "", + "update" => "", ]; diff --git a/app/Language/ur/Reports.php b/app/Language/ur/Reports.php index c8f0dcce9..cde8daff6 100644 --- a/app/Language/ur/Reports.php +++ b/app/Language/ur/Reports.php @@ -1,148 +1,148 @@ "", - "authority" => "", - "canceled" => "", - "categories" => "", - "categories_summary_report" => "", - "category" => "", - "code_canceled" => "", - "code_invoice" => "", - "code_pos" => "", - "code_quote" => "", - "code_return" => "", - "code_type" => "", - "code_work_order" => "", - "comments" => "", - "commission" => "", - "complete" => "", - "completed_sales" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "cost" => "", - "cost_price" => "", - "count" => "", - "customer" => "", - "customers" => "", - "customers_summary_report" => "", - "date" => "", - "date_range" => "", - "description" => "", - "detailed_receivings_report" => "", - "detailed_receivings_report_input" => "", - "detailed_reports" => "", - "detailed_requisition_report" => "", - "detailed_sales_report" => "", - "discount" => "", - "discount_fixed" => "", - "discount_percent" => "", - "discount_type" => "", - "discounts" => "", - "discounts_summary_report" => "", - "earned" => "", - "employee" => "", - "employees" => "", - "employees_summary_report" => "", - "expenses" => "", - "expenses_amount" => "", - "expenses_categories" => "", - "expenses_categories_summary_report" => "", - "expenses_category" => "", - "expenses_payment_amount" => "", - "expenses_tax_amount" => "", - "expenses_total_amount" => "", - "expenses_total_tax_amount" => "", - "graphical_reports" => "", - "inventory" => "", - "inventory_low" => "", - "inventory_low_report" => "", - "inventory_reports" => "", - "inventory_summary" => "", - "inventory_summary_report" => "", - "item" => "", - "item_count" => "", - "item_name" => "", - "item_number" => "", - "items" => "", - "items_purchased" => "", - "items_received" => "", - "items_summary_report" => "", - "jurisdiction" => "", - "low_inventory" => "", - "low_inventory_report" => "", - "low_sell_quantity" => "", - "more_than_zero" => "", - "name" => "", - "no_reports_to_display" => "", - "payment_type" => "", - "payments" => "", - "payments_summary_report" => "", - "profit" => "", - "quantity" => "", - "quantity_purchased" => "", - "quotes" => "", - "received_by" => "", - "receiving_id" => "", - "receiving_type" => "", - "receivings" => "", - "reorder_level" => "", - "report" => "", - "report_input" => "", - "reports" => "", - "requisition" => "", - "requisition_by" => "", - "requisition_id" => "", - "requisition_item" => "", - "requisition_item_quantity" => "", - "requisition_related_item" => "", - "requisition_related_item_total_quantity" => "", - "requisition_related_item_unit_quantity" => "", - "requisitions" => "", - "returns" => "", - "revenue" => "", - "sale_id" => "", - "sale_type" => "", - "sales" => "", - "sales_amount" => "", - "sales_summary_report" => "", - "sales_taxes" => "", - "sales_taxes_summary_report" => "", - "serial_number" => "", - "service_charge" => "", - "sold_by" => "", - "sold_items" => "", - "sold_to" => "", - "stock_location" => "", - "sub_total_value" => "", - "subtotal" => "", - "summary_reports" => "", - "supplied_by" => "", - "supplier" => "", - "suppliers" => "", - "suppliers_summary_report" => "", - "tax" => "", - "tax_category" => "", - "tax_name" => "", - "tax_percent" => "", - "tax_rate" => "", - "taxes" => "", - "taxes_summary_report" => "", - "total" => "", - "total_inventory_value" => "", - "total_low_sell_quantity" => "", - "total_quantity" => "", - "total_retail" => "", - "trans_amount" => "", - "trans_due" => "", - "trans_group" => "", - "trans_nopay_sales" => "", - "trans_payments" => "", - "trans_refunded" => "", - "trans_sales" => "", - "trans_type" => "", - "type" => "", - "unit_price" => "", - "used" => "", - "work_orders" => "", - "zero_and_less" => "", + "all" => "", + "authority" => "", + "canceled" => "", + "categories" => "", + "categories_summary_report" => "", + "category" => "", + "code_canceled" => "", + "code_invoice" => "", + "code_pos" => "", + "code_quote" => "", + "code_return" => "", + "code_type" => "", + "code_work_order" => "", + "comments" => "", + "commission" => "", + "complete" => "", + "completed_sales" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "cost" => "", + "cost_price" => "", + "count" => "", + "customer" => "", + "customers" => "", + "customers_summary_report" => "", + "date" => "", + "date_range" => "", + "description" => "", + "detailed_receivings_report" => "", + "detailed_receivings_report_input" => "", + "detailed_reports" => "", + "detailed_requisition_report" => "", + "detailed_sales_report" => "", + "discount" => "", + "discount_fixed" => "", + "discount_percent" => "", + "discount_type" => "", + "discounts" => "", + "discounts_summary_report" => "", + "earned" => "", + "employee" => "", + "employees" => "", + "employees_summary_report" => "", + "expenses" => "", + "expenses_amount" => "", + "expenses_categories" => "", + "expenses_categories_summary_report" => "", + "expenses_category" => "", + "expenses_payment_amount" => "", + "expenses_tax_amount" => "", + "expenses_total_amount" => "", + "expenses_total_tax_amount" => "", + "graphical_reports" => "", + "inventory" => "", + "inventory_low" => "", + "inventory_low_report" => "", + "inventory_reports" => "", + "inventory_summary" => "", + "inventory_summary_report" => "", + "item" => "", + "item_count" => "", + "item_name" => "", + "item_number" => "", + "items" => "", + "items_purchased" => "", + "items_received" => "", + "items_summary_report" => "", + "jurisdiction" => "", + "low_inventory" => "", + "low_inventory_report" => "", + "low_sell_quantity" => "", + "more_than_zero" => "", + "name" => "", + "no_reports_to_display" => "", + "payment_type" => "", + "payments" => "", + "payments_summary_report" => "", + "profit" => "", + "quantity" => "", + "quantity_purchased" => "", + "quotes" => "", + "received_by" => "", + "receiving_id" => "", + "receiving_type" => "", + "receivings" => "", + "reorder_level" => "", + "report" => "", + "report_input" => "", + "reports" => "", + "requisition" => "", + "requisition_by" => "", + "requisition_id" => "", + "requisition_item" => "", + "requisition_item_quantity" => "", + "requisition_related_item" => "", + "requisition_related_item_total_quantity" => "", + "requisition_related_item_unit_quantity" => "", + "requisitions" => "", + "returns" => "", + "revenue" => "", + "sale_id" => "", + "sale_type" => "", + "sales" => "", + "sales_amount" => "", + "sales_summary_report" => "", + "sales_taxes" => "", + "sales_taxes_summary_report" => "", + "serial_number" => "", + "service_charge" => "", + "sold_by" => "", + "sold_items" => "", + "sold_to" => "", + "stock_location" => "", + "sub_total_value" => "", + "subtotal" => "", + "summary_reports" => "", + "supplied_by" => "", + "supplier" => "", + "suppliers" => "", + "suppliers_summary_report" => "", + "tax" => "", + "tax_category" => "", + "tax_name" => "", + "tax_percent" => "", + "tax_rate" => "", + "taxes" => "", + "taxes_summary_report" => "", + "total" => "", + "total_inventory_value" => "", + "total_low_sell_quantity" => "", + "total_quantity" => "", + "total_retail" => "", + "trans_amount" => "", + "trans_due" => "", + "trans_group" => "", + "trans_nopay_sales" => "", + "trans_payments" => "", + "trans_refunded" => "", + "trans_sales" => "", + "trans_type" => "", + "type" => "", + "unit_price" => "", + "used" => "", + "work_orders" => "", + "zero_and_less" => "", ]; diff --git a/app/Language/ur/Suppliers.php b/app/Language/ur/Suppliers.php index f26bc2195..3a9fa4cac 100644 --- a/app/Language/ur/Suppliers.php +++ b/app/Language/ur/Suppliers.php @@ -1,24 +1,24 @@ "", - "agency_name" => "", - "cannot_be_deleted" => "", - "category" => "", - "company_name" => "", - "company_name_required" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "cost" => "", - "error_adding_updating" => "", - "goods" => "", - "new" => "", - "none_selected" => "", - "one_or_multiple" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "supplier" => "", - "supplier_id" => "", - "tax_id" => "", - "update" => "", + "account_number" => "", + "agency_name" => "", + "cannot_be_deleted" => "", + "category" => "", + "company_name" => "", + "company_name_required" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "cost" => "", + "error_adding_updating" => "", + "goods" => "", + "new" => "", + "none_selected" => "", + "one_or_multiple" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "supplier" => "", + "supplier_id" => "", + "tax_id" => "", + "update" => "", ]; diff --git a/app/Language/ur/Taxes.php b/app/Language/ur/Taxes.php index 6ae3d5b76..691ff9bb3 100644 --- a/app/Language/ur/Taxes.php +++ b/app/Language/ur/Taxes.php @@ -1,82 +1,82 @@ "", - "cascade" => "", - "cascade_sequence" => "", - "city" => "", - "code" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "default_tax_category" => "", - "default_tax_rate" => "", - "error_adding_updating" => "", - "group_seq" => "", - "jurisdiction_name" => "", - "name" => "", - "new" => "", - "no_taxes" => "", - "no_taxes_to_display" => "", - "reporting_authority" => "", - "round_half_down" => "", - "round_half_even" => "", - "round_half_odd" => "", - "round_half_up" => "", - "rounding_code" => "", - "sales_tax" => "", - "sales_tax_by_invoice" => "", - "sequence" => "", - "state" => "", - "successful_deleted" => "", - "tax_categories" => "", - "tax_categories_configuration" => "", - "tax_categories_saved_successfully" => "", - "tax_categories_saved_unsuccessfully" => "", - "tax_category" => "", - "tax_category_code" => "", - "tax_category_duplicate" => "", - "tax_category_invalid_chars" => "", - "tax_category_name" => "", - "tax_category_new" => "", - "tax_category_required" => "", - "tax_code" => "", - "tax_code_cannot_be_deleted" => "", - "tax_code_duplicate" => "", - "tax_code_invalid_chars" => "", - "tax_code_name" => "", - "tax_code_required" => "", - "tax_code_successful_deleted" => "", - "tax_code_successful_updated" => "", - "tax_code_successful_updating" => "", - "tax_code_successfully_added" => "", - "tax_code_type" => "", - "tax_codes" => "", - "tax_codes_configuration" => "", - "tax_codes_saved_successfully" => "", - "tax_codes_saved_unsuccessfully" => "", - "tax_excluded" => "", - "tax_group" => "", - "tax_group_not_unique" => "", - "tax_group_sequence" => "", - "tax_included" => "", - "tax_jurisdiction" => "", - "tax_jurisdiction_duplicate" => "", - "tax_jurisdiction_invalid_chars" => "", - "tax_jurisdiction_required" => "", - "tax_jurisdictions" => "", - "tax_jurisdictions_configuration" => "", - "tax_jurisdictions_saved_successfully" => "", - "tax_jurisdictions_saved_unsuccessfully" => "", - "tax_rate" => "", - "tax_rate_configuration" => "", - "tax_rate_error_adding_updating" => "", - "tax_rate_numeric" => "", - "tax_rate_required" => "", - "tax_rate_successful_updated" => "", - "tax_rate_successfully_added" => "", - "tax_rates" => "", - "tax_rates_configuration" => "", - "tax_rounding" => "", - "tax_type" => "", - "update" => "", - "vat_tax" => "", + "add_exception" => "", + "cascade" => "", + "cascade_sequence" => "", + "city" => "", + "code" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "default_tax_category" => "", + "default_tax_rate" => "", + "error_adding_updating" => "", + "group_seq" => "", + "jurisdiction_name" => "", + "name" => "", + "new" => "", + "no_taxes" => "", + "no_taxes_to_display" => "", + "reporting_authority" => "", + "round_half_down" => "", + "round_half_even" => "", + "round_half_odd" => "", + "round_half_up" => "", + "rounding_code" => "", + "sales_tax" => "", + "sales_tax_by_invoice" => "", + "sequence" => "", + "state" => "", + "successful_deleted" => "", + "tax_categories" => "", + "tax_categories_configuration" => "", + "tax_categories_saved_successfully" => "", + "tax_categories_saved_unsuccessfully" => "", + "tax_category" => "", + "tax_category_code" => "", + "tax_category_duplicate" => "", + "tax_category_invalid_chars" => "", + "tax_category_name" => "", + "tax_category_new" => "", + "tax_category_required" => "", + "tax_code" => "", + "tax_code_cannot_be_deleted" => "", + "tax_code_duplicate" => "", + "tax_code_invalid_chars" => "", + "tax_code_name" => "", + "tax_code_required" => "", + "tax_code_successful_deleted" => "", + "tax_code_successful_updated" => "", + "tax_code_successful_updating" => "", + "tax_code_successfully_added" => "", + "tax_code_type" => "", + "tax_codes" => "", + "tax_codes_configuration" => "", + "tax_codes_saved_successfully" => "", + "tax_codes_saved_unsuccessfully" => "", + "tax_excluded" => "", + "tax_group" => "", + "tax_group_not_unique" => "", + "tax_group_sequence" => "", + "tax_included" => "", + "tax_jurisdiction" => "", + "tax_jurisdiction_duplicate" => "", + "tax_jurisdiction_invalid_chars" => "", + "tax_jurisdiction_required" => "", + "tax_jurisdictions" => "", + "tax_jurisdictions_configuration" => "", + "tax_jurisdictions_saved_successfully" => "", + "tax_jurisdictions_saved_unsuccessfully" => "", + "tax_rate" => "", + "tax_rate_configuration" => "", + "tax_rate_error_adding_updating" => "", + "tax_rate_numeric" => "", + "tax_rate_required" => "", + "tax_rate_successful_updated" => "", + "tax_rate_successfully_added" => "", + "tax_rates" => "", + "tax_rates_configuration" => "", + "tax_rounding" => "", + "tax_type" => "", + "update" => "", + "vat_tax" => "", ]; diff --git a/app/Language/vi/Attributes.php b/app/Language/vi/Attributes.php index 844e62e5a..f31dcc14d 100644 --- a/app/Language/vi/Attributes.php +++ b/app/Language/vi/Attributes.php @@ -1,32 +1,32 @@ "Giá trị thuộc tính không thể chứa ':' hay '|'", - "confirm_delete" => "Bạn có chắc chắn muốn xóa (các) thuộc tính đã chọn không?", - "confirm_restore" => "Bạn có chắc chắn muốn khôi phục (các) thuộc tính đã chọn không?", - "definition_cannot_be_deleted" => "Không thể xóa (các) thuộc tính được chọn", - "definition_error_adding_updating" => "Thuộc tính {0} không thể thêm hoặc cập nhật. Vui lòng kiểm tra nhật ký lỗi.", - "definition_flags" => "Hiển thị thuộc tính", - "definition_group" => "Nhóm", - "definition_id" => "Mã số", - "definition_name" => "Thêm thuộc tính", - "definition_name_required" => "Tên thuộc tính là trường bắt buộc", - "definition_one_or_multiple" => "thuộc tính", - "definition_successful_adding" => "Bạn vừa mới thêm mục tin thành công", - "definition_successful_deleted" => "Bạn đã xóa thành công", - "definition_successful_updating" => "Bạn đã cập nhật thành công thuộc tính", - "definition_type" => "Loại thuộc tính", - "definition_type_required" => "Loại thuộc tính là trường bắt buộc", - "definition_unit" => "Đơn vị đo lường", - "definition_values" => "Giá trị thuộc tính", - "new" => "Thêm thuộc tính mới", - "no_attributes_to_display" => "Không có mặt hàng nào để hiển thị", - "receipt_visibility" => "Biên lai", - "show_in_items" => "Hiển thị trong các mặt hàng", - "show_in_items_visibility" => "Hàng hóa", - "show_in_receipt" => "Hiển thị trong biên lai", - "show_in_receivings" => "Hiển thị trong nhập hàng", - "show_in_receivings_visibility" => "Nhập hàng", - "show_in_sales" => "Hiển thị trong bán hàng", - "show_in_sales_visibility" => "Bán hàng", - "update" => "Cập nhật thuộc tính", + "attribute_value_invalid_chars" => "Giá trị thuộc tính không thể chứa ':' hay '|'", + "confirm_delete" => "Bạn có chắc chắn muốn xóa (các) thuộc tính đã chọn không?", + "confirm_restore" => "Bạn có chắc chắn muốn khôi phục (các) thuộc tính đã chọn không?", + "definition_cannot_be_deleted" => "Không thể xóa (các) thuộc tính được chọn", + "definition_error_adding_updating" => "Thuộc tính {0} không thể thêm hoặc cập nhật. Vui lòng kiểm tra nhật ký lỗi.", + "definition_flags" => "Hiển thị thuộc tính", + "definition_group" => "Nhóm", + "definition_id" => "Mã số", + "definition_name" => "Thêm thuộc tính", + "definition_name_required" => "Tên thuộc tính là trường bắt buộc", + "definition_one_or_multiple" => "thuộc tính", + "definition_successful_adding" => "Bạn vừa mới thêm mục tin thành công", + "definition_successful_deleted" => "Bạn đã xóa thành công", + "definition_successful_updating" => "Bạn đã cập nhật thành công thuộc tính", + "definition_type" => "Loại thuộc tính", + "definition_type_required" => "Loại thuộc tính là trường bắt buộc", + "definition_unit" => "Đơn vị đo lường", + "definition_values" => "Giá trị thuộc tính", + "new" => "Thêm thuộc tính mới", + "no_attributes_to_display" => "Không có mặt hàng nào để hiển thị", + "receipt_visibility" => "Biên lai", + "show_in_items" => "Hiển thị trong các mặt hàng", + "show_in_items_visibility" => "Hàng hóa", + "show_in_receipt" => "Hiển thị trong biên lai", + "show_in_receivings" => "Hiển thị trong nhập hàng", + "show_in_receivings_visibility" => "Nhập hàng", + "show_in_sales" => "Hiển thị trong bán hàng", + "show_in_sales_visibility" => "Bán hàng", + "update" => "Cập nhật thuộc tính", ]; diff --git a/app/Language/vi/Bootstrap_tables.php b/app/Language/vi/Bootstrap_tables.php index 3837d8385..575b0bd1c 100644 --- a/app/Language/vi/Bootstrap_tables.php +++ b/app/Language/vi/Bootstrap_tables.php @@ -1,11 +1,11 @@ "Tất cả", - "columns" => "Các cột", - "hide_show_pagination" => "Ẩn/hiện phân trang", - "loading" => "Đang tải, vui lòng đợi...", - "page_from_to" => "Đang hiển thị {0} đến {1} trên {2} dòng", - "refresh" => "Làm mới lại", - "rows_per_page" => "{0} dòng mỗi trang", - "toggle" => "Bật/Tắt", + "all" => "Tất cả", + "columns" => "Các cột", + "hide_show_pagination" => "Ẩn/hiện phân trang", + "loading" => "Đang tải, vui lòng đợi...", + "page_from_to" => "Đang hiển thị {0} đến {1} trên {2} dòng", + "refresh" => "Làm mới lại", + "rows_per_page" => "{0} dòng mỗi trang", + "toggle" => "Bật/Tắt", ]; diff --git a/app/Language/vi/Calendar.php b/app/Language/vi/Calendar.php index d68f3123b..d8e992444 100644 --- a/app/Language/vi/Calendar.php +++ b/app/Language/vi/Calendar.php @@ -1,48 +1,48 @@ "Chủ nhật", - "mo" => "Thứ 2", - "tu" => "Thứ 3", - "we" => "Thứ 4", - "th" => "Thứ 5", - "fr" => "Thứ 6", - "sa" => "Thứ 7", - "sun" => "Chủ nhật", - "mon" => "Thứ hai", - "tue" => "Thứ ba", - "wed" => "Thứ tư", - "thu" => "Thứ năm", - "fri" => "Thứ sáu", - "sat" => "Thứ bảy", - "sunday" => "Chủ nhật", - "monday" => "Thứ hai", - "tuesday" => "Thứ ba", - "wednesday" => "Thứ tư", - "thursday" => "Thứ năm", - "friday" => "Thứ sáu", - "saturday" => "Thứ bảy", - "jan" => "Tháng 1", - "feb" => "Tháng 2", - "mar" => "Tháng 3", - "apr" => "Tháng 4", - "may" => "Tháng 5", - "jun" => "Tháng 6", - "jul" => "Tháng 7", - "aug" => "Tháng 8", - "sep" => "Tháng 9", - "oct" => "Tháng 10", - "nov" => "Tháng 11", - "dec" => "Tháng 12", - "january" => "Tháng một", - "february" => "Tháng hai", - "march" => "Tháng ba", - "april" => "Tháng tư", - "mayl" => "Tháng năm", - "june" => "Tháng sáu", - "july" => "Tháng bảy", - "august" => "Tháng tám", - "september" => "Tháng chín", - "october" => "Tháng mười", - "november" => "Tháng mười một", - "december" => "Tháng mười hai", + "su" => "Chủ nhật", + "mo" => "Thứ 2", + "tu" => "Thứ 3", + "we" => "Thứ 4", + "th" => "Thứ 5", + "fr" => "Thứ 6", + "sa" => "Thứ 7", + "sun" => "Chủ nhật", + "mon" => "Thứ hai", + "tue" => "Thứ ba", + "wed" => "Thứ tư", + "thu" => "Thứ năm", + "fri" => "Thứ sáu", + "sat" => "Thứ bảy", + "sunday" => "Chủ nhật", + "monday" => "Thứ hai", + "tuesday" => "Thứ ba", + "wednesday" => "Thứ tư", + "thursday" => "Thứ năm", + "friday" => "Thứ sáu", + "saturday" => "Thứ bảy", + "jan" => "Tháng 1", + "feb" => "Tháng 2", + "mar" => "Tháng 3", + "apr" => "Tháng 4", + "may" => "Tháng 5", + "jun" => "Tháng 6", + "jul" => "Tháng 7", + "aug" => "Tháng 8", + "sep" => "Tháng 9", + "oct" => "Tháng 10", + "nov" => "Tháng 11", + "dec" => "Tháng 12", + "january" => "Tháng một", + "february" => "Tháng hai", + "march" => "Tháng ba", + "april" => "Tháng tư", + "mayl" => "Tháng năm", + "june" => "Tháng sáu", + "july" => "Tháng bảy", + "august" => "Tháng tám", + "september" => "Tháng chín", + "october" => "Tháng mười", + "november" => "Tháng mười một", + "december" => "Tháng mười hai", ]; diff --git a/app/Language/vi/Cashups.php b/app/Language/vi/Cashups.php index 74c11c21d..a1afd13e1 100644 --- a/app/Language/vi/Cashups.php +++ b/app/Language/vi/Cashups.php @@ -1,49 +1,49 @@ "Tổng số", - "amount_number" => "Tổng số phải là dạng số", - "amount_required" => "Tổng số là trường bắt buộc.", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "Không thể xóa doanh số ngày", - "cash_difference" => "", - "close_date" => "Đóng ngày", - "close_employee" => "Đóng bởi", - "closed_amount_card" => "", - "closed_amount_cash" => "", - "closed_amount_check" => "", - "closed_amount_due" => "", - "closed_amount_giftcard" => "", - "closed_amount_total" => "", - "closed_date" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "confirm_submit" => "", - "date_number" => "", - "date_required" => "", - "description" => "", - "enable_expected" => "", - "error_adding_updating" => "", - "giftcard" => "", - "id" => "", - "info" => "", - "info_employee" => "", - "is_deleted" => "", - "new" => "", - "no_cashups_to_display" => "", - "none_selected" => "", - "note" => "", - "one_or_multiple" => "", - "open_amount_cash" => "", - "open_date" => "", - "open_employee" => "", - "opened_date" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "total" => "", - "transfer_amount_cash" => "", - "transfer_amount_cash_minus" => "", - "update" => "", - "warning" => "", + "amount" => "Tổng số", + "amount_number" => "Tổng số phải là dạng số", + "amount_required" => "Tổng số là trường bắt buộc.", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "Không thể xóa doanh số ngày", + "cash_difference" => "", + "close_date" => "Đóng ngày", + "close_employee" => "Đóng bởi", + "closed_amount_card" => "", + "closed_amount_cash" => "", + "closed_amount_check" => "", + "closed_amount_due" => "", + "closed_amount_giftcard" => "", + "closed_amount_total" => "", + "closed_date" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "confirm_submit" => "", + "date_number" => "", + "date_required" => "", + "description" => "", + "enable_expected" => "", + "error_adding_updating" => "", + "giftcard" => "", + "id" => "", + "info" => "", + "info_employee" => "", + "is_deleted" => "", + "new" => "", + "no_cashups_to_display" => "", + "none_selected" => "", + "note" => "", + "one_or_multiple" => "", + "open_amount_cash" => "", + "open_date" => "", + "open_employee" => "", + "opened_date" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "total" => "", + "transfer_amount_cash" => "", + "transfer_amount_cash_minus" => "", + "update" => "", + "warning" => "", ]; diff --git a/app/Language/vi/Common.php b/app/Language/vi/Common.php index 57e717d2e..4a8c57b27 100644 --- a/app/Language/vi/Common.php +++ b/app/Language/vi/Common.php @@ -1,88 +1,88 @@ "Địa chỉ 1", - "address_2" => "Địa chỉ 2", - "admin" => "", - "city" => "Thành phố", - "clerk" => "", - "close" => "Đóng", - "color" => "", - "comments" => "Chú thích", - "common" => "chung", - "confirm_search" => "Bạn đã chọn một hay nhiều dòng, ở nơi đây sẽ không còn gì để chọn sau khi tìm kiếm. Bạn có chắc muốn gửi yêu cầu tìm kiếm này?", - "copyrights" => "© 2010 - {0}", - "correct_errors" => "Vui lòng sửa các lỗi trước khi lưu", - "country" => "Quốc gia", - "dashboard" => "", - "date" => "Ngày", - "delete" => "Xóa", - "det" => "chi tiết", - "download_import_template" => "Tải về Mẫu Nhập dạng CSV (CSV)", - "edit" => "sửa", - "email" => "Thư điện tử", - "email_invalid_format" => "Địa chỉ thư điện tử có định dạng không đúng.", - "export_csv" => "Xuất dạng CSV", - "export_csv_no" => "Không", - "export_csv_yes" => "Có", - "fields_required_message" => "Những trường có màu đỏ là bắt buộc", - "fields_required_message_unique" => "", - "first_name" => "Tên", - "first_name_required" => "Trường tên là bắt buộc.", - "first_page" => "Đầu", - "gender" => "Giới tính", - "gender_female" => "Nữ", - "gender_male" => "Nam", - "gender_undefined" => "", - "icon" => "Biểu tượng", - "id" => "Mã số", - "import" => "Nhập", - "import_change_file" => "Thay đổi", - "import_csv" => "Nhập từ CSV", - "import_full_path" => "Cần đường dẫn dạng đầy đủ đến tập tin csv", - "import_remove_file" => "Gỡ bỏ", - "import_select_file" => "Chọn tập tin", - "inv" => "inv", - "last_name" => "Họ", - "last_name_required" => "Trường Họ là bắt buộc.", - "last_page" => "Cuối", - "learn_about_project" => "để biết thông tin mới nhất về dự án.", - "list_of" => "Danh sách của", - "logo" => "", - "logo_mark" => "", - "logout" => "Đăng xuất", - "manager" => "", - "migration_needed" => "Nâng cấp cơ sở dữ liệu lên {0} sẽ bắt đầu sau khi đăng nhập.", - "new" => "Mới", - "no" => "", - "no_persons_to_display" => "Không có nội dung hiển thị.", - "none_selected_text" => "[Chọn]", - "or" => "HOẶC", - "people" => "", - "phone_number" => "Số điện thoại", - "phone_number_required" => "", - "please_visit_my" => "Ghé thăm", - "position" => "", - "powered_by" => "Cung cấp bởi", - "price" => "Giá", - "print" => "In", - "remove" => "Xóa bỏ", - "required" => "Yêu cầu", - "restore" => "Khôi phục", - "return_policy" => "Chính sách hoàn trả", - "search" => "Tìm kiếm", - "search_options" => "Tùy chọn tìm kiếm", - "searched_for" => "Tìm kiếm bằng", - "software_short" => "", - "software_title" => "", - "state" => "Tỉnh", - "submit" => "Gửi", - "total_spent" => "Trả tổng cộng", - "unknown" => "Chưa biết", - "view_recent_sales" => "Hiển thị danh sách bán hàng gần đây", - "website" => "Trang chủ", - "welcome" => "Chào mừng", - "welcome_message" => "Chọn 1 trong những tính năng dưới đây để bắt đầu.", - "yes" => "", - "you_are_using_ospos" => "Bạn đang sử dụng Open Source Point Of Sale phiên bản", - "zip" => "Mã bưu điện", + "address_1" => "Địa chỉ 1", + "address_2" => "Địa chỉ 2", + "admin" => "", + "city" => "Thành phố", + "clerk" => "", + "close" => "Đóng", + "color" => "", + "comments" => "Chú thích", + "common" => "chung", + "confirm_search" => "Bạn đã chọn một hay nhiều dòng, ở nơi đây sẽ không còn gì để chọn sau khi tìm kiếm. Bạn có chắc muốn gửi yêu cầu tìm kiếm này?", + "copyrights" => "© 2010 - {0}", + "correct_errors" => "Vui lòng sửa các lỗi trước khi lưu", + "country" => "Quốc gia", + "dashboard" => "", + "date" => "Ngày", + "delete" => "Xóa", + "det" => "chi tiết", + "download_import_template" => "Tải về Mẫu Nhập dạng CSV (CSV)", + "edit" => "sửa", + "email" => "Thư điện tử", + "email_invalid_format" => "Địa chỉ thư điện tử có định dạng không đúng.", + "export_csv" => "Xuất dạng CSV", + "export_csv_no" => "Không", + "export_csv_yes" => "Có", + "fields_required_message" => "Những trường có màu đỏ là bắt buộc", + "fields_required_message_unique" => "", + "first_name" => "Tên", + "first_name_required" => "Trường tên là bắt buộc.", + "first_page" => "Đầu", + "gender" => "Giới tính", + "gender_female" => "Nữ", + "gender_male" => "Nam", + "gender_undefined" => "", + "icon" => "Biểu tượng", + "id" => "Mã số", + "import" => "Nhập", + "import_change_file" => "Thay đổi", + "import_csv" => "Nhập từ CSV", + "import_full_path" => "Cần đường dẫn dạng đầy đủ đến tập tin csv", + "import_remove_file" => "Gỡ bỏ", + "import_select_file" => "Chọn tập tin", + "inv" => "inv", + "last_name" => "Họ", + "last_name_required" => "Trường Họ là bắt buộc.", + "last_page" => "Cuối", + "learn_about_project" => "để biết thông tin mới nhất về dự án.", + "list_of" => "Danh sách của", + "logo" => "", + "logo_mark" => "", + "logout" => "Đăng xuất", + "manager" => "", + "migration_needed" => "Nâng cấp cơ sở dữ liệu lên {0} sẽ bắt đầu sau khi đăng nhập.", + "new" => "Mới", + "no" => "", + "no_persons_to_display" => "Không có nội dung hiển thị.", + "none_selected_text" => "[Chọn]", + "or" => "HOẶC", + "people" => "", + "phone_number" => "Số điện thoại", + "phone_number_required" => "", + "please_visit_my" => "Ghé thăm", + "position" => "", + "powered_by" => "Cung cấp bởi", + "price" => "Giá", + "print" => "In", + "remove" => "Xóa bỏ", + "required" => "Yêu cầu", + "restore" => "Khôi phục", + "return_policy" => "Chính sách hoàn trả", + "search" => "Tìm kiếm", + "search_options" => "Tùy chọn tìm kiếm", + "searched_for" => "Tìm kiếm bằng", + "software_short" => "", + "software_title" => "", + "state" => "Tỉnh", + "submit" => "Gửi", + "total_spent" => "Trả tổng cộng", + "unknown" => "Chưa biết", + "view_recent_sales" => "Hiển thị danh sách bán hàng gần đây", + "website" => "Trang chủ", + "welcome" => "Chào mừng", + "welcome_message" => "Chọn 1 trong những tính năng dưới đây để bắt đầu.", + "yes" => "", + "you_are_using_ospos" => "Bạn đang sử dụng Open Source Point Of Sale phiên bản", + "zip" => "Mã bưu điện", ]; diff --git a/app/Language/vi/Config.php b/app/Language/vi/Config.php index a73c1280d..af59ab1ce 100644 --- a/app/Language/vi/Config.php +++ b/app/Language/vi/Config.php @@ -1,330 +1,330 @@ "Địa chỉ công ty", - "address_required" => "Trường địa chỉ công ty là bắt buộc.", - "all_set" => "Mọi quyền đều được đặt chính xác!", - "allow_duplicate_barcodes" => "Cho phép trùng Mã vạch", - "apostrophe" => "dấu nháy đơn", - "backup_button" => "Sao lưu", - "backup_database" => "Sao lưu cơ sở dữ liệu", - "barcode" => "Mã vạch", - "barcode_company" => "Tên công ty", - "barcode_configuration" => "Cấu hình Mã vạch", - "barcode_content" => "Nội dung Mã vạch", - "barcode_first_row" => "Dòng 1", - "barcode_font" => "Phông chữ", - "barcode_formats" => "Định dạng đầu vào", - "barcode_generate_if_empty" => "Tự tạo mới nếu để trống.", - "barcode_height" => "Cao (px)", - "barcode_id" => "Tên/Mã hàng hóa", - "barcode_info" => "Thông tin cấu hình Mã vạch", - "barcode_layout" => "Bố cục Mã vạch", - "barcode_name" => "Tên", - "barcode_number" => "Mã vạch", - "barcode_number_in_row" => "Số ở dòng", - "barcode_page_cellspacing" => "Khoảng cách ô trang hiển thị.", - "barcode_page_width" => "Chiều rộng trang hiển thị", - "barcode_price" => "Giá", - "barcode_second_row" => "Dòng 2", - "barcode_third_row" => "Dòng 3", - "barcode_tooltip" => "Cảnh báo: Tính năng này có thể là nguyên nhân làm trùng lặp hàng hóa khi nhập hay tạo. Đừng dùng nếu bạn không muốn trùng mã vạch.", - "barcode_type" => "Kiểu Mã vạch", - "barcode_width" => "Rộng (px)", - "bottom" => "Đáy", - "cash_button" => "", - "cash_button_1" => "", - "cash_button_2" => "", - "cash_button_3" => "", - "cash_button_4" => "", - "cash_button_5" => "", - "cash_button_6" => "", - "cash_decimals" => "Số chứ số sau dấy phẩy", - "cash_decimals_tooltip" => "Nếu số lẻ thập phân của tiền mặt và tiền tệ là giống nhau thì sẽ không làm tròn.", - "cash_rounding" => "Làm tròn số tiền", - "category_dropdown" => "Hiển thị thể loại dạng hộp thả xuống", - "center" => "Giữa", - "change_apperance_tooltip" => "", - "comma" => "dấu phẩy", - "company" => "Tên công ty", - "company_avatar" => "", - "company_change_image" => "Đổi ảnh", - "company_logo" => "Logo công ty", - "company_remove_image" => "Gỡ bỏ ảnh", - "company_required" => "Tên công ty là bắt buộc", - "company_select_image" => "Chọn ảnh", - "company_website_url" => "Website của công ty không hợp lệ (http://...).", - "country_codes" => "Mã Nước", - "country_codes_tooltip" => "Danh sách ngăn cách bằng dấu phẩy mã các nước cho tìm kiếm địa chỉ đề cử.", - "currency_code" => "Mã tiền tệ", - "currency_decimals" => "Số chữ số sau dấy phẩy", - "currency_symbol" => "Ký hiệu tiền tệ", - "current_employee_only" => "", - "customer_reward" => "Điểm thưởng", - "customer_reward_duplicate" => "Điểm thưởng phải duy nhất.", - "customer_reward_enable" => "Cho phép thưởng cho khách hàng", - "customer_reward_invalid_chars" => "Điểm thưởng không thể chứa '_'", - "customer_reward_required" => "Điểm thưởng là trường bắt buộc", - "customer_sales_tax_support" => "Hỗ trợ thuế bán hàng Khách hàng", - "date_or_time_format" => "Bộ lọc ngày và giờ", - "datetimeformat" => "Định dạng ngày và giờ", - "decimal_point" => "Dấu thập phân", - "default_barcode_font_size_number" => "Cỡ phông chữ Mã vạch mặc định phải là dạng số.", - "default_barcode_font_size_required" => "Cỡ phông chữ Mã vạch mặc định là trường bắt buộc.", - "default_barcode_height_number" => "Chiều cao Mã vạch mặc định phải là dạng số.", - "default_barcode_height_required" => "Chiều cao Mã vạch mặc định là trường mặc định.", - "default_barcode_num_in_row_number" => "Số Mã vạch trên một Hàng mặc định phải là dạng số.", - "default_barcode_num_in_row_required" => "Số Mã vạch mặc định mỗi dòng tính bằng dòng là trường bắt buộc.", - "default_barcode_page_cellspacing_number" => "Khoảng cách ô trang Mã vạch mặc định phải là dạng số.", - "default_barcode_page_cellspacing_required" => "Khoảng cách ô trang Mã vạch mặc định là trường bắt buộc.", - "default_barcode_page_width_number" => "Chiều rộng trang Mã vạch mặc định phải là dạng số.", - "default_barcode_page_width_required" => "Chiều rộng trang Mã vạch mặc định là trường bắt buộc.", - "default_barcode_width_number" => "Chiều rộng Mã vạch mặc định phải là dạng số.", - "default_barcode_width_required" => "Chiều rộng Mã vạch mặc định là trường bắt buộc.", - "default_item_columns" => "Mục hiển thị mặc định", - "default_origin_tax_code" => "Mã thuế gốc mặc định", - "default_receivings_discount" => "Giảm giá mặc định", - "default_receivings_discount_number" => "Giảm giá mặc định phải là số.", - "default_receivings_discount_required" => "Giảm giá mặc định là trường bắt buộc.", - "default_sales_discount" => "Giảm giá bán hàng mặc định", - "default_sales_discount_number" => "Giảm giá bán hàng mặc định phải là dạng số.", - "default_sales_discount_required" => "Trường Giảm giá bán hàng mặc định là bắt buộc.", - "default_tax_category" => "Danh mục thuế mặc định", - "default_tax_code" => "Mã số thuế mặc định", - "default_tax_jurisdiction" => "Thẩm quyền thuế mặc định", - "default_tax_name_number" => "Tên Thuế mặc định phải ở dạng chuỗi văn bản.", - "default_tax_name_required" => "Trường tên Thuế mặc định là bắt buộc.", - "default_tax_rate" => "Tỷ lệ thuế mặc định %", - "default_tax_rate_1" => "Tỷ lệ thuế 1", - "default_tax_rate_2" => "Tỷ lệ thuế 2", - "default_tax_rate_3" => "", - "default_tax_rate_number" => "Tỷ lệ thuế mặc định phải là dạng số.", - "default_tax_rate_required" => "Trường Tỷ lệ thuế mặc định là bắt buộc.", - "derive_sale_quantity" => "Cho phép suy luận số lượng bán hàng", - "derive_sale_quantity_tooltip" => "Nếu chọn thì một kiểu hàng hóa mới sẽ được cung cấp cho đặt hàng hàng hóa theo tổng số mở rộng", - "dinner_table" => "Bàn ăn", - "dinner_table_duplicate" => "Bàn phải duy nhất.", - "dinner_table_enable" => "Sử dụng bàn ăn", - "dinner_table_invalid_chars" => "Tên bàn ăn không được chứa '_'.", - "dinner_table_required" => "Trường bàn ăn là bắt buộc.", - "dot" => "dấu chấm", - "email" => "Thư điện tử", - "email_configuration" => "Cấu hình Thư điện tử", - "email_mailpath" => "Đường dẫn đến Sendmail", - "email_protocol" => "Giao thức", - "email_receipt_check_behaviour" => "Dấu kiểm biên lai thư điện tử", - "email_receipt_check_behaviour_always" => "Luôn đánh dấu kiểm", - "email_receipt_check_behaviour_last" => "Nhớ lựa chọn cuối cùng", - "email_receipt_check_behaviour_never" => "Luôn không đánh dấu kiểm", - "email_smtp_crypto" => "Mã hóa SMTP", - "email_smtp_host" => "Máy phục vụ SMTP", - "email_smtp_pass" => "Mật khẩu SMTP", - "email_smtp_port" => "Cổng SMTP", - "email_smtp_timeout" => "Chờ tối đa SMTP", - "email_smtp_user" => "Tài khoản SMTP", - "enable_avatar" => "", - "enable_avatar_tooltip" => "", - "enable_dropdown_tooltip" => "", - "enable_new_look" => "", - "enable_right_bar" => "", - "enable_right_bar_tooltip" => "", - "enforce_privacy" => "Chính sách bắt buộc", - "enforce_privacy_tooltip" => "Bảo vệ riêng tư khách hàng bắt buộc xáo trộn dữ liệu trong trường hợp dữ liệu của họ đang bị xóa", - "fax" => "Fax", - "file_perm" => "Có một số vấn đề với phân quyền tập tin vui lòng sửa và tải lại trang này.", - "financial_year" => "Ngày đầu năm tài chính", - "financial_year_apr" => "1 tháng tư", - "financial_year_aug" => "1 tháng tám", - "financial_year_dec" => "1 tháng mười hai", - "financial_year_feb" => "1 tháng hai", - "financial_year_jan" => "1 tháng giêng", - "financial_year_jul" => "1 tháng bảy", - "financial_year_jun" => "1 tháng sáu", - "financial_year_mar" => "1 tháng ba", - "financial_year_may" => "1 tháng năm", - "financial_year_nov" => "1 tháng mười một", - "financial_year_oct" => "1 tháng mười", - "financial_year_sep" => "1 tháng chín", - "floating_labels" => "", - "gcaptcha_enable" => "reCAPTCHA cho trang đăng nhập", - "gcaptcha_secret_key" => "Khóa bí mật reCAPTCHA", - "gcaptcha_secret_key_required" => "Khóa bí mật reCAPTCHA là trường bắt buộc", - "gcaptcha_site_key" => "Khóa trang reCAPTCHA", - "gcaptcha_site_key_required" => "Khóa trang reCAPTCHA là trường bắt buộc", - "gcaptcha_tooltip" => "Bảo vệ trang đăng nhập bằng Google reCAPTCHA, bấm vào biểu tượng cho một cặp khóa API.", - "general" => "Chung", - "general_configuration" => "Thông tin chung", - "giftcard_number" => "Số Thẻ quà tặng", - "giftcard_random" => "Tạo ngẫu nhiên", - "giftcard_series" => "Tạo dạng nối tiếp nhau", - "image_allowed_file_types" => "Các kiểu tập tin được phép", - "image_max_height_tooltip" => "Chiều cao ảnh tải lên tối đa được phép tính bằng điểm ảnh (px).", - "image_max_size_tooltip" => "Kích cỡ tập tin ảnh tải lên tối đa được phép tính bằng kilobytes (kb).", - "image_max_width_tooltip" => "Chiều rộng ảnh tải lên tối đa được phép tính bằng điểm ảnh (px).", - "image_restrictions" => "Hạn chế tải ảnh lên", - "include_hsn" => "Bao gồm hỗ trợ cho mã HSN", - "info" => "Thông tin", - "info_configuration" => "Thông tin cửa hàng", - "input_groups" => "", - "integrations" => "Tích hợp", - "integrations_configuration" => "Tích hợp bên thứ ba", - "invoice" => "Hóa đơn", - "invoice_configuration" => "Cài đặt in hóa đơn", - "invoice_default_comments" => "Ghi chú mặc định cho hóa đơn", - "invoice_email_message" => "Mẫu hóa đơn khi gửi thư", - "invoice_enable" => "Bật Hóa đơn", - "invoice_printer" => "Máy in hóa đơn", - "invoice_type" => "Loại hóa đơn", - "is_readable" => "là đọc được, nhưng quyền hạn được đặt chưa đúng. Vui lòng đặt nó thành 640 hoặc 660 sau đó tải lại.", - "is_writable" => "là ghi được, nhưng quyền hạn được đặt chưa đúng. Vui lòng đặt nó thành 750 sau đó tải lại.", - "item_markup" => "", - "jsprintsetup_required" => "Cảnh báo: Tính năng này chỉ làm việc nếu bạn đã cài đặt ứng dụng bổ xung jsPrintSetup cho FireFox. Cứ lưu chứ?", - "language" => "Ngôn ngữ", - "last_used_invoice_number" => "Số hóa đơn dùng lần cuối", - "last_used_quote_number" => "Số báo giá dùng lần cuối", - "last_used_work_order_number" => "Số W/O dùng lần cuối", - "left" => "Trái", - "license" => "Giấy phép", - "license_configuration" => "Điều khoản của giấy phép", - "line_sequence" => "Xếp dòng theo", - "lines_per_page" => "Dòng trên mỗi trang", - "lines_per_page_number" => "Dòng trên mỗi trang phải là dạng số.", - "lines_per_page_required" => "Dòng trên mỗi trang là trường bắt buộc.", - "locale" => "Định dạng", - "locale_configuration" => "Cấu hình Bản địa hóa", - "locale_info" => "Thông tin Cấu hình Bản địa hóa", - "location" => "Kho", - "location_configuration" => "Vị trí kho", - "location_info" => "Thông tin cấu hình vị trí", - "login_form" => "", - "logout" => "Bạn có muốn sao lưu dự phòng trước khi đăng xuất ra không? Bấm chuột vào [OK] để sao lưu hoặc [Cancel] để đăng xuất.", - "mailchimp" => "Mailchimp", - "mailchimp_api_key" => "Khóa API Mailchimp", - "mailchimp_configuration" => "Cấu hình Mailchimp", - "mailchimp_key_successfully" => "API Key hợp lệ.", - "mailchimp_key_unsuccessfully" => "API Key không hợp lệ.", - "mailchimp_lists" => "Bó thư Mailchimp", - "mailchimp_tooltip" => "Bấm vào biểu tượng để lấy khóa API.", - "message" => "Nhắn tin", - "message_configuration" => "Cấu hình nhắn tin", - "msg_msg" => "Tin nhắn văn bản đã lưu", - "msg_msg_placeholder" => "Nếu bạn muốn dùng một mẫu thì lưu lại các tin nhắn SMS ở đây, nếu không thì để trống.", - "msg_pwd" => "Mật khẩu SMS-API", - "msg_pwd_required" => "Mật khẩu SMS-API là trường bắt buộc", - "msg_src" => "Mã số bộ gửi SMS-API", - "msg_src_required" => "Mã số bộ gửi SMS-API là trường bắt buộc", - "msg_uid" => "Tài khoản SMS-API", - "msg_uid_required" => "Tài khoản SMS-API là trường bắt buộc", - "multi_pack_enabled" => "Nhiều gói cho mỗi mục", - "no_risk" => "Không tiềm ẩn rủi ro / bảo mật nào.", - "none" => "không", - "notify_alignment" => "Vị trí của thông báo nổi lên", - "number_format" => "Định dạng số", - "number_locale" => "Định dạng số", - "number_locale_invalid" => "Vị trí đã nhập không hợp lệ. Kiểm tra liên kết trong tooltip để tìm vị trí hợp lệ.", - "number_locale_required" => "Vị trí số là trường bắt buộc.", - "number_locale_tooltip" => "Tìm vị trí phù hợp thông qua liên kết này.", - "os_timezone" => "Múi giờ OSPOS:", - "ospos_info" => "Thông tin cài đặt OSPOS", - "payment_options_order" => "Thứ tự tùy chọn thanh toán", - "perm_risk" => "Phân quyền không đúng khiến phần mềm tiềm ẩn rủi ro.", - "phone" => "Điện thoại công ty", - "phone_required" => "Trường Điện thoại công ty là bắt buộc.", - "print_bottom_margin" => "Lề dưới", - "print_bottom_margin_number" => "Lề dưới phải là dạng số.", - "print_bottom_margin_required" => "Trường Lề dưới là bắt buộc.", - "print_delay_autoreturn" => "Tự động trả về trễ bán hàng", - "print_delay_autoreturn_number" => "Tự động trả về trễ bán hàng là trường bắt buộc.", - "print_delay_autoreturn_required" => "Tự động trả về trễ bán hàng phải là dạng số.", - "print_footer" => "In phần chân trình duyệt", - "print_header" => "In phần đầu trình duyệt", - "print_left_margin" => "Lề trái", - "print_left_margin_number" => "Lề trái phải ở dạng số.", - "print_left_margin_required" => "Trường Lề trái là bắt buộc.", - "print_receipt_check_behaviour" => "In dấu kiểm biên lai", - "print_receipt_check_behaviour_always" => "Luôn đánh dấu kiểm", - "print_receipt_check_behaviour_last" => "Nhớ lựa chọn cuối cùng", - "print_receipt_check_behaviour_never" => "Luôn không đánh dấu kiểm", - "print_right_margin" => "Lề phải", - "print_right_margin_number" => "Lề trên phải ở dạng số.", - "print_right_margin_required" => "Trường Lề trên là bắt buộc.", - "print_silently" => "Hiển thị hộp thoại In", - "print_top_margin" => "Lề trên", - "print_top_margin_number" => "Lề trên phải ở dạng số.", - "print_top_margin_required" => "Trường Lề trên là bắt buộc.", - "quantity_decimals" => "Số lượng dấu thập phân", - "quick_cash_enable" => "", - "quote_default_comments" => "Ghi chú báo giá mặc định", - "receipt" => "Biên lai", - "receipt_category" => "", - "receipt_configuration" => "Cài đặt in biên lai", - "receipt_default" => "Mặc định", - "receipt_font_size" => "Cỡ chữ", - "receipt_font_size_number" => "Cỡ chữ phải là dạng số.", - "receipt_font_size_required" => "Trường Cỡ chữ là bắt buộc.", - "receipt_info" => "Thông tin cấu hình Biên lai", - "receipt_printer" => "In vé", - "receipt_short" => "Ngắn", - "receipt_show_company_name" => "Hiển thị tên công ty", - "receipt_show_description" => "Hiện mô tả", - "receipt_show_serialnumber" => "Hiển thị số Sê-ri", - "receipt_show_tax_ind" => "Hiển thị chỉ thị thuế", - "receipt_show_taxes" => "Hiển thị Thuế", - "receipt_show_total_discount" => "Hiển thị Giảm giá tổng cộng", - "receipt_template" => "Mẫu biên lai", - "receiving_calculate_average_price" => "Tính giá tb (Nhập hàng)", - "recv_invoice_format" => "Định dạng hóa đơn nhận hàng", - "register_mode_default" => "Chế độ Đăng ký mặc định", - "report_an_issue" => "Báo cáo trục trặc", - "return_policy_required" => "Trường Chính sách trả hàng là bắt buộc.", - "reward" => "Điểm thưởng", - "reward_configuration" => "Cấu hình Điểm thưởng", - "right" => "Phải", - "sales_invoice_format" => "Định dạng Hóa đơn bán hàng", - "sales_quote_format" => "Định dạng Báo giá bán hàng", - "saved_successfully" => "Cấu hình được lưu thành công.", - "saved_unsuccessfully" => "Gặp lỗi khi lưu cấu hình.", - "security_issue" => "Cảnh báo về lỗ hổng bảo mật", - "server_notice" => "Vui lòng sử dụng các thông tin phía dưới để báo cáo lỗi.", - "service_charge" => "", - "show_due_enable" => "", - "show_office_group" => "Hiển thị biểu tượng Văn phòng", - "statistics" => "Gửi thống kê", - "statistics_tooltip" => "Gửi thống kê cho nhà phát triển và mục đích cải tiến tính năng.", - "stock_location" => "Vị trí kho", - "stock_location_duplicate" => "Vị trí kho phải là duy nhất.", - "stock_location_invalid_chars" => "Vị trí kho không được chứa '_'.", - "stock_location_required" => "Trường Vị trí kho là bắt buộc.", - "suggestions_fifth_column" => "", - "suggestions_first_column" => "Cột 1", - "suggestions_fourth_column" => "", - "suggestions_layout" => "Bố cục gợi ý tìm kiếm", - "suggestions_second_column" => "Cột 2", - "suggestions_third_column" => "Cột 3", - "system_conf" => "Cài đặt & Cấu hình", - "system_info" => "System Info", - "table" => "Bàn ăn", - "table_configuration" => "Cấu hình bàn ăn", - "takings_printer" => "In Biên lai", - "tax" => "Thuế", - "tax_category" => "Thể loại thuế", - "tax_category_duplicate" => "Thể loại thuế vừa nhập đã sẵn có.", - "tax_category_invalid_chars" => "Thể loại thuế vừa nhập không hợp lệ.", - "tax_category_required" => "Thể loại thuế là bắt buộc.", - "tax_category_used" => "Không thể xóa Thể loại thuế bởi vì nó đang được dùng.", - "tax_configuration" => "Cấu hình Thuế", - "tax_decimals" => "Phần thập phân Thế", - "tax_id" => "Mã số thuế", - "tax_included" => "Gồm thuế", - "theme" => "Giao diện", - "theme_preview" => "", - "thousands_separator" => "Dấu ngăn cách phần nghìn", - "timezone" => "Múi giờ", - "timezone_error" => "Múi giờ OSPOS khác với múi giờ trên máy của bạn.", - "top" => "Đỉnh", - "use_destination_based_tax" => "Sử dụng thuế dựa trên điểm đến", - "user_timezone" => "Múi giờ trên máy nội bộ:", - "website" => "Website", - "wholesale_markup" => "", - "work_order_enable" => "Hỗ trợ giao việc", - "work_order_format" => "Định dạng giấy giao việc", + "address" => "Địa chỉ công ty", + "address_required" => "Trường địa chỉ công ty là bắt buộc.", + "all_set" => "Mọi quyền đều được đặt chính xác!", + "allow_duplicate_barcodes" => "Cho phép trùng Mã vạch", + "apostrophe" => "dấu nháy đơn", + "backup_button" => "Sao lưu", + "backup_database" => "Sao lưu cơ sở dữ liệu", + "barcode" => "Mã vạch", + "barcode_company" => "Tên công ty", + "barcode_configuration" => "Cấu hình Mã vạch", + "barcode_content" => "Nội dung Mã vạch", + "barcode_first_row" => "Dòng 1", + "barcode_font" => "Phông chữ", + "barcode_formats" => "Định dạng đầu vào", + "barcode_generate_if_empty" => "Tự tạo mới nếu để trống.", + "barcode_height" => "Cao (px)", + "barcode_id" => "Tên/Mã hàng hóa", + "barcode_info" => "Thông tin cấu hình Mã vạch", + "barcode_layout" => "Bố cục Mã vạch", + "barcode_name" => "Tên", + "barcode_number" => "Mã vạch", + "barcode_number_in_row" => "Số ở dòng", + "barcode_page_cellspacing" => "Khoảng cách ô trang hiển thị.", + "barcode_page_width" => "Chiều rộng trang hiển thị", + "barcode_price" => "Giá", + "barcode_second_row" => "Dòng 2", + "barcode_third_row" => "Dòng 3", + "barcode_tooltip" => "Cảnh báo: Tính năng này có thể là nguyên nhân làm trùng lặp hàng hóa khi nhập hay tạo. Đừng dùng nếu bạn không muốn trùng mã vạch.", + "barcode_type" => "Kiểu Mã vạch", + "barcode_width" => "Rộng (px)", + "bottom" => "Đáy", + "cash_button" => "", + "cash_button_1" => "", + "cash_button_2" => "", + "cash_button_3" => "", + "cash_button_4" => "", + "cash_button_5" => "", + "cash_button_6" => "", + "cash_decimals" => "Số chứ số sau dấy phẩy", + "cash_decimals_tooltip" => "Nếu số lẻ thập phân của tiền mặt và tiền tệ là giống nhau thì sẽ không làm tròn.", + "cash_rounding" => "Làm tròn số tiền", + "category_dropdown" => "Hiển thị thể loại dạng hộp thả xuống", + "center" => "Giữa", + "change_apperance_tooltip" => "", + "comma" => "dấu phẩy", + "company" => "Tên công ty", + "company_avatar" => "", + "company_change_image" => "Đổi ảnh", + "company_logo" => "Logo công ty", + "company_remove_image" => "Gỡ bỏ ảnh", + "company_required" => "Tên công ty là bắt buộc", + "company_select_image" => "Chọn ảnh", + "company_website_url" => "Website của công ty không hợp lệ (http://...).", + "country_codes" => "Mã Nước", + "country_codes_tooltip" => "Danh sách ngăn cách bằng dấu phẩy mã các nước cho tìm kiếm địa chỉ đề cử.", + "currency_code" => "Mã tiền tệ", + "currency_decimals" => "Số chữ số sau dấy phẩy", + "currency_symbol" => "Ký hiệu tiền tệ", + "current_employee_only" => "", + "customer_reward" => "Điểm thưởng", + "customer_reward_duplicate" => "Điểm thưởng phải duy nhất.", + "customer_reward_enable" => "Cho phép thưởng cho khách hàng", + "customer_reward_invalid_chars" => "Điểm thưởng không thể chứa '_'", + "customer_reward_required" => "Điểm thưởng là trường bắt buộc", + "customer_sales_tax_support" => "Hỗ trợ thuế bán hàng Khách hàng", + "date_or_time_format" => "Bộ lọc ngày và giờ", + "datetimeformat" => "Định dạng ngày và giờ", + "decimal_point" => "Dấu thập phân", + "default_barcode_font_size_number" => "Cỡ phông chữ Mã vạch mặc định phải là dạng số.", + "default_barcode_font_size_required" => "Cỡ phông chữ Mã vạch mặc định là trường bắt buộc.", + "default_barcode_height_number" => "Chiều cao Mã vạch mặc định phải là dạng số.", + "default_barcode_height_required" => "Chiều cao Mã vạch mặc định là trường mặc định.", + "default_barcode_num_in_row_number" => "Số Mã vạch trên một Hàng mặc định phải là dạng số.", + "default_barcode_num_in_row_required" => "Số Mã vạch mặc định mỗi dòng tính bằng dòng là trường bắt buộc.", + "default_barcode_page_cellspacing_number" => "Khoảng cách ô trang Mã vạch mặc định phải là dạng số.", + "default_barcode_page_cellspacing_required" => "Khoảng cách ô trang Mã vạch mặc định là trường bắt buộc.", + "default_barcode_page_width_number" => "Chiều rộng trang Mã vạch mặc định phải là dạng số.", + "default_barcode_page_width_required" => "Chiều rộng trang Mã vạch mặc định là trường bắt buộc.", + "default_barcode_width_number" => "Chiều rộng Mã vạch mặc định phải là dạng số.", + "default_barcode_width_required" => "Chiều rộng Mã vạch mặc định là trường bắt buộc.", + "default_item_columns" => "Mục hiển thị mặc định", + "default_origin_tax_code" => "Mã thuế gốc mặc định", + "default_receivings_discount" => "Giảm giá mặc định", + "default_receivings_discount_number" => "Giảm giá mặc định phải là số.", + "default_receivings_discount_required" => "Giảm giá mặc định là trường bắt buộc.", + "default_sales_discount" => "Giảm giá bán hàng mặc định", + "default_sales_discount_number" => "Giảm giá bán hàng mặc định phải là dạng số.", + "default_sales_discount_required" => "Trường Giảm giá bán hàng mặc định là bắt buộc.", + "default_tax_category" => "Danh mục thuế mặc định", + "default_tax_code" => "Mã số thuế mặc định", + "default_tax_jurisdiction" => "Thẩm quyền thuế mặc định", + "default_tax_name_number" => "Tên Thuế mặc định phải ở dạng chuỗi văn bản.", + "default_tax_name_required" => "Trường tên Thuế mặc định là bắt buộc.", + "default_tax_rate" => "Tỷ lệ thuế mặc định %", + "default_tax_rate_1" => "Tỷ lệ thuế 1", + "default_tax_rate_2" => "Tỷ lệ thuế 2", + "default_tax_rate_3" => "", + "default_tax_rate_number" => "Tỷ lệ thuế mặc định phải là dạng số.", + "default_tax_rate_required" => "Trường Tỷ lệ thuế mặc định là bắt buộc.", + "derive_sale_quantity" => "Cho phép suy luận số lượng bán hàng", + "derive_sale_quantity_tooltip" => "Nếu chọn thì một kiểu hàng hóa mới sẽ được cung cấp cho đặt hàng hàng hóa theo tổng số mở rộng", + "dinner_table" => "Bàn ăn", + "dinner_table_duplicate" => "Bàn phải duy nhất.", + "dinner_table_enable" => "Sử dụng bàn ăn", + "dinner_table_invalid_chars" => "Tên bàn ăn không được chứa '_'.", + "dinner_table_required" => "Trường bàn ăn là bắt buộc.", + "dot" => "dấu chấm", + "email" => "Thư điện tử", + "email_configuration" => "Cấu hình Thư điện tử", + "email_mailpath" => "Đường dẫn đến Sendmail", + "email_protocol" => "Giao thức", + "email_receipt_check_behaviour" => "Dấu kiểm biên lai thư điện tử", + "email_receipt_check_behaviour_always" => "Luôn đánh dấu kiểm", + "email_receipt_check_behaviour_last" => "Nhớ lựa chọn cuối cùng", + "email_receipt_check_behaviour_never" => "Luôn không đánh dấu kiểm", + "email_smtp_crypto" => "Mã hóa SMTP", + "email_smtp_host" => "Máy phục vụ SMTP", + "email_smtp_pass" => "Mật khẩu SMTP", + "email_smtp_port" => "Cổng SMTP", + "email_smtp_timeout" => "Chờ tối đa SMTP", + "email_smtp_user" => "Tài khoản SMTP", + "enable_avatar" => "", + "enable_avatar_tooltip" => "", + "enable_dropdown_tooltip" => "", + "enable_new_look" => "", + "enable_right_bar" => "", + "enable_right_bar_tooltip" => "", + "enforce_privacy" => "Chính sách bắt buộc", + "enforce_privacy_tooltip" => "Bảo vệ riêng tư khách hàng bắt buộc xáo trộn dữ liệu trong trường hợp dữ liệu của họ đang bị xóa", + "fax" => "Fax", + "file_perm" => "Có một số vấn đề với phân quyền tập tin vui lòng sửa và tải lại trang này.", + "financial_year" => "Ngày đầu năm tài chính", + "financial_year_apr" => "1 tháng tư", + "financial_year_aug" => "1 tháng tám", + "financial_year_dec" => "1 tháng mười hai", + "financial_year_feb" => "1 tháng hai", + "financial_year_jan" => "1 tháng giêng", + "financial_year_jul" => "1 tháng bảy", + "financial_year_jun" => "1 tháng sáu", + "financial_year_mar" => "1 tháng ba", + "financial_year_may" => "1 tháng năm", + "financial_year_nov" => "1 tháng mười một", + "financial_year_oct" => "1 tháng mười", + "financial_year_sep" => "1 tháng chín", + "floating_labels" => "", + "gcaptcha_enable" => "reCAPTCHA cho trang đăng nhập", + "gcaptcha_secret_key" => "Khóa bí mật reCAPTCHA", + "gcaptcha_secret_key_required" => "Khóa bí mật reCAPTCHA là trường bắt buộc", + "gcaptcha_site_key" => "Khóa trang reCAPTCHA", + "gcaptcha_site_key_required" => "Khóa trang reCAPTCHA là trường bắt buộc", + "gcaptcha_tooltip" => "Bảo vệ trang đăng nhập bằng Google reCAPTCHA, bấm vào biểu tượng cho một cặp khóa API.", + "general" => "Chung", + "general_configuration" => "Thông tin chung", + "giftcard_number" => "Số Thẻ quà tặng", + "giftcard_random" => "Tạo ngẫu nhiên", + "giftcard_series" => "Tạo dạng nối tiếp nhau", + "image_allowed_file_types" => "Các kiểu tập tin được phép", + "image_max_height_tooltip" => "Chiều cao ảnh tải lên tối đa được phép tính bằng điểm ảnh (px).", + "image_max_size_tooltip" => "Kích cỡ tập tin ảnh tải lên tối đa được phép tính bằng kilobytes (kb).", + "image_max_width_tooltip" => "Chiều rộng ảnh tải lên tối đa được phép tính bằng điểm ảnh (px).", + "image_restrictions" => "Hạn chế tải ảnh lên", + "include_hsn" => "Bao gồm hỗ trợ cho mã HSN", + "info" => "Thông tin", + "info_configuration" => "Thông tin cửa hàng", + "input_groups" => "", + "integrations" => "Tích hợp", + "integrations_configuration" => "Tích hợp bên thứ ba", + "invoice" => "Hóa đơn", + "invoice_configuration" => "Cài đặt in hóa đơn", + "invoice_default_comments" => "Ghi chú mặc định cho hóa đơn", + "invoice_email_message" => "Mẫu hóa đơn khi gửi thư", + "invoice_enable" => "Bật Hóa đơn", + "invoice_printer" => "Máy in hóa đơn", + "invoice_type" => "Loại hóa đơn", + "is_readable" => "là đọc được, nhưng quyền hạn được đặt chưa đúng. Vui lòng đặt nó thành 640 hoặc 660 sau đó tải lại.", + "is_writable" => "là ghi được, nhưng quyền hạn được đặt chưa đúng. Vui lòng đặt nó thành 750 sau đó tải lại.", + "item_markup" => "", + "jsprintsetup_required" => "Cảnh báo: Tính năng này chỉ làm việc nếu bạn đã cài đặt ứng dụng bổ xung jsPrintSetup cho FireFox. Cứ lưu chứ?", + "language" => "Ngôn ngữ", + "last_used_invoice_number" => "Số hóa đơn dùng lần cuối", + "last_used_quote_number" => "Số báo giá dùng lần cuối", + "last_used_work_order_number" => "Số W/O dùng lần cuối", + "left" => "Trái", + "license" => "Giấy phép", + "license_configuration" => "Điều khoản của giấy phép", + "line_sequence" => "Xếp dòng theo", + "lines_per_page" => "Dòng trên mỗi trang", + "lines_per_page_number" => "Dòng trên mỗi trang phải là dạng số.", + "lines_per_page_required" => "Dòng trên mỗi trang là trường bắt buộc.", + "locale" => "Định dạng", + "locale_configuration" => "Cấu hình Bản địa hóa", + "locale_info" => "Thông tin Cấu hình Bản địa hóa", + "location" => "Kho", + "location_configuration" => "Vị trí kho", + "location_info" => "Thông tin cấu hình vị trí", + "login_form" => "", + "logout" => "Bạn có muốn sao lưu dự phòng trước khi đăng xuất ra không? Bấm chuột vào [OK] để sao lưu hoặc [Cancel] để đăng xuất.", + "mailchimp" => "Mailchimp", + "mailchimp_api_key" => "Khóa API Mailchimp", + "mailchimp_configuration" => "Cấu hình Mailchimp", + "mailchimp_key_successfully" => "API Key hợp lệ.", + "mailchimp_key_unsuccessfully" => "API Key không hợp lệ.", + "mailchimp_lists" => "Bó thư Mailchimp", + "mailchimp_tooltip" => "Bấm vào biểu tượng để lấy khóa API.", + "message" => "Nhắn tin", + "message_configuration" => "Cấu hình nhắn tin", + "msg_msg" => "Tin nhắn văn bản đã lưu", + "msg_msg_placeholder" => "Nếu bạn muốn dùng một mẫu thì lưu lại các tin nhắn SMS ở đây, nếu không thì để trống.", + "msg_pwd" => "Mật khẩu SMS-API", + "msg_pwd_required" => "Mật khẩu SMS-API là trường bắt buộc", + "msg_src" => "Mã số bộ gửi SMS-API", + "msg_src_required" => "Mã số bộ gửi SMS-API là trường bắt buộc", + "msg_uid" => "Tài khoản SMS-API", + "msg_uid_required" => "Tài khoản SMS-API là trường bắt buộc", + "multi_pack_enabled" => "Nhiều gói cho mỗi mục", + "no_risk" => "Không tiềm ẩn rủi ro / bảo mật nào.", + "none" => "không", + "notify_alignment" => "Vị trí của thông báo nổi lên", + "number_format" => "Định dạng số", + "number_locale" => "Định dạng số", + "number_locale_invalid" => "Vị trí đã nhập không hợp lệ. Kiểm tra liên kết trong tooltip để tìm vị trí hợp lệ.", + "number_locale_required" => "Vị trí số là trường bắt buộc.", + "number_locale_tooltip" => "Tìm vị trí phù hợp thông qua liên kết này.", + "os_timezone" => "Múi giờ OSPOS:", + "ospos_info" => "Thông tin cài đặt OSPOS", + "payment_options_order" => "Thứ tự tùy chọn thanh toán", + "perm_risk" => "Phân quyền không đúng khiến phần mềm tiềm ẩn rủi ro.", + "phone" => "Điện thoại công ty", + "phone_required" => "Trường Điện thoại công ty là bắt buộc.", + "print_bottom_margin" => "Lề dưới", + "print_bottom_margin_number" => "Lề dưới phải là dạng số.", + "print_bottom_margin_required" => "Trường Lề dưới là bắt buộc.", + "print_delay_autoreturn" => "Tự động trả về trễ bán hàng", + "print_delay_autoreturn_number" => "Tự động trả về trễ bán hàng là trường bắt buộc.", + "print_delay_autoreturn_required" => "Tự động trả về trễ bán hàng phải là dạng số.", + "print_footer" => "In phần chân trình duyệt", + "print_header" => "In phần đầu trình duyệt", + "print_left_margin" => "Lề trái", + "print_left_margin_number" => "Lề trái phải ở dạng số.", + "print_left_margin_required" => "Trường Lề trái là bắt buộc.", + "print_receipt_check_behaviour" => "In dấu kiểm biên lai", + "print_receipt_check_behaviour_always" => "Luôn đánh dấu kiểm", + "print_receipt_check_behaviour_last" => "Nhớ lựa chọn cuối cùng", + "print_receipt_check_behaviour_never" => "Luôn không đánh dấu kiểm", + "print_right_margin" => "Lề phải", + "print_right_margin_number" => "Lề trên phải ở dạng số.", + "print_right_margin_required" => "Trường Lề trên là bắt buộc.", + "print_silently" => "Hiển thị hộp thoại In", + "print_top_margin" => "Lề trên", + "print_top_margin_number" => "Lề trên phải ở dạng số.", + "print_top_margin_required" => "Trường Lề trên là bắt buộc.", + "quantity_decimals" => "Số lượng dấu thập phân", + "quick_cash_enable" => "", + "quote_default_comments" => "Ghi chú báo giá mặc định", + "receipt" => "Biên lai", + "receipt_category" => "", + "receipt_configuration" => "Cài đặt in biên lai", + "receipt_default" => "Mặc định", + "receipt_font_size" => "Cỡ chữ", + "receipt_font_size_number" => "Cỡ chữ phải là dạng số.", + "receipt_font_size_required" => "Trường Cỡ chữ là bắt buộc.", + "receipt_info" => "Thông tin cấu hình Biên lai", + "receipt_printer" => "In vé", + "receipt_short" => "Ngắn", + "receipt_show_company_name" => "Hiển thị tên công ty", + "receipt_show_description" => "Hiện mô tả", + "receipt_show_serialnumber" => "Hiển thị số Sê-ri", + "receipt_show_tax_ind" => "Hiển thị chỉ thị thuế", + "receipt_show_taxes" => "Hiển thị Thuế", + "receipt_show_total_discount" => "Hiển thị Giảm giá tổng cộng", + "receipt_template" => "Mẫu biên lai", + "receiving_calculate_average_price" => "Tính giá tb (Nhập hàng)", + "recv_invoice_format" => "Định dạng hóa đơn nhận hàng", + "register_mode_default" => "Chế độ Đăng ký mặc định", + "report_an_issue" => "Báo cáo trục trặc", + "return_policy_required" => "Trường Chính sách trả hàng là bắt buộc.", + "reward" => "Điểm thưởng", + "reward_configuration" => "Cấu hình Điểm thưởng", + "right" => "Phải", + "sales_invoice_format" => "Định dạng Hóa đơn bán hàng", + "sales_quote_format" => "Định dạng Báo giá bán hàng", + "saved_successfully" => "Cấu hình được lưu thành công.", + "saved_unsuccessfully" => "Gặp lỗi khi lưu cấu hình.", + "security_issue" => "Cảnh báo về lỗ hổng bảo mật", + "server_notice" => "Vui lòng sử dụng các thông tin phía dưới để báo cáo lỗi.", + "service_charge" => "", + "show_due_enable" => "", + "show_office_group" => "Hiển thị biểu tượng Văn phòng", + "statistics" => "Gửi thống kê", + "statistics_tooltip" => "Gửi thống kê cho nhà phát triển và mục đích cải tiến tính năng.", + "stock_location" => "Vị trí kho", + "stock_location_duplicate" => "Vị trí kho phải là duy nhất.", + "stock_location_invalid_chars" => "Vị trí kho không được chứa '_'.", + "stock_location_required" => "Trường Vị trí kho là bắt buộc.", + "suggestions_fifth_column" => "", + "suggestions_first_column" => "Cột 1", + "suggestions_fourth_column" => "", + "suggestions_layout" => "Bố cục gợi ý tìm kiếm", + "suggestions_second_column" => "Cột 2", + "suggestions_third_column" => "Cột 3", + "system_conf" => "Cài đặt & Cấu hình", + "system_info" => "System Info", + "table" => "Bàn ăn", + "table_configuration" => "Cấu hình bàn ăn", + "takings_printer" => "In Biên lai", + "tax" => "Thuế", + "tax_category" => "Thể loại thuế", + "tax_category_duplicate" => "Thể loại thuế vừa nhập đã sẵn có.", + "tax_category_invalid_chars" => "Thể loại thuế vừa nhập không hợp lệ.", + "tax_category_required" => "Thể loại thuế là bắt buộc.", + "tax_category_used" => "Không thể xóa Thể loại thuế bởi vì nó đang được dùng.", + "tax_configuration" => "Cấu hình Thuế", + "tax_decimals" => "Phần thập phân Thế", + "tax_id" => "Mã số thuế", + "tax_included" => "Gồm thuế", + "theme" => "Giao diện", + "theme_preview" => "", + "thousands_separator" => "Dấu ngăn cách phần nghìn", + "timezone" => "Múi giờ", + "timezone_error" => "Múi giờ OSPOS khác với múi giờ trên máy của bạn.", + "top" => "Đỉnh", + "use_destination_based_tax" => "Sử dụng thuế dựa trên điểm đến", + "user_timezone" => "Múi giờ trên máy nội bộ:", + "website" => "Website", + "wholesale_markup" => "", + "work_order_enable" => "Hỗ trợ giao việc", + "work_order_format" => "Định dạng giấy giao việc", ]; diff --git a/app/Language/vi/Customers.php b/app/Language/vi/Customers.php index 9b3ee4f1a..dbaa13636 100644 --- a/app/Language/vi/Customers.php +++ b/app/Language/vi/Customers.php @@ -1,56 +1,56 @@ "Tài khoản #", - "account_number_duplicate" => "Số tài khoản đã sẵn có trong cơ sở dữ liệu rồi.", - "available_points" => "Các điểm sẵn có", - "available_points_value" => "", - "average" => "Trả trung bình", - "avg_discount" => "Giảm giá trung bình", - "basic_information" => "Thông tin", - "cannot_be_deleted" => "Không thể xóa khách hàng đã chọn, một hay nhiều khách hàng đã chọn có lần bán hàng cho họ.", - "company_name" => "Công ty", - "confirm_delete" => "Bạn chắc chắn muốn xóa các khách hàng được chọn không?", - "confirm_restore" => "Bạn chắc chắn muốn hoàn lại các khách hàng được chọn không?", - "consent" => "Chấp nhận thỏa thuận", - "consent_required" => "Chấp nhận thỏa thuận là trường bắt buộc.", - "csv_import_failed" => "Gặp lỗi khi nhập từ CSV", - "csv_import_nodata_wrongformat" => "Tập tin tải lên không có dữ liệu hoặc là nó có định dạng không đúng.", - "csv_import_partially_failed" => "Nhập khách hàng thành công với một số lỗi:", - "csv_import_success" => "Nhập khách hàng thành công.", - "customer" => "Khách hàng", - "date" => "Ngày", - "discount" => "Giảm giá", - "discount_fixed" => "Giảm giá cố định", - "discount_percent" => "Phần trăm giảm giá", - "discount_type" => "Kiểu giảm giá", - "email_duplicate" => "Địa chỉ thư điện tử đã sẵn có trong cơ sở dữ liệu rồi.", - "employee" => "Nhân viên", - "error_adding_updating" => "Gặp lỗi khi cập nhật hay thêm khách hàng.", - "import_items_csv" => "Nhập khách hàng từ CSV", - "mailchimp_activity_click" => "Bấm thư", - "mailchimp_activity_lastopen" => "Thư mở cuối cùng", - "mailchimp_activity_open" => "Mở thư", - "mailchimp_activity_total" => "Gửi thư", - "mailchimp_activity_unopen" => "Không mở thư", - "mailchimp_email_client" => "Trình khách nhận thư", - "mailchimp_info" => "Mailchimp", - "mailchimp_member_rating" => "Đánh giá", - "mailchimp_status" => "Tình trạng", - "mailchimp_vip" => "VIP", - "max" => "Trả tối đa", - "min" => "Trả tối thiểu", - "new" => "Khách hàng mới", - "none_selected" => "Bạn chưa chọn bất kỳ một khách hàng nào để mà xóa.", - "one_or_multiple" => "khách hàng", - "quantity" => "Số lượng", - "stats_info" => "Thgkê", - "successful_adding" => "Bạn đã thêm khách hàng thành công", - "successful_deleted" => "Bạn đã xóa thành công", - "successful_updating" => "Bạn đã cập nhật khách hàng thành công", - "tax_code" => "Mã thuế", - "tax_id" => "Mã thuế", - "taxable" => "Phải đánh thuế", - "total" => "Trả tổng cộng", - "update" => "Cập nhật khách hàng", - "rewards_package" => "Gói tiền thưởng", + "account_number" => "Tài khoản #", + "account_number_duplicate" => "Số tài khoản đã sẵn có trong cơ sở dữ liệu rồi.", + "available_points" => "Các điểm sẵn có", + "available_points_value" => "", + "average" => "Trả trung bình", + "avg_discount" => "Giảm giá trung bình", + "basic_information" => "Thông tin", + "cannot_be_deleted" => "Không thể xóa khách hàng đã chọn, một hay nhiều khách hàng đã chọn có lần bán hàng cho họ.", + "company_name" => "Công ty", + "confirm_delete" => "Bạn chắc chắn muốn xóa các khách hàng được chọn không?", + "confirm_restore" => "Bạn chắc chắn muốn hoàn lại các khách hàng được chọn không?", + "consent" => "Chấp nhận thỏa thuận", + "consent_required" => "Chấp nhận thỏa thuận là trường bắt buộc.", + "csv_import_failed" => "Gặp lỗi khi nhập từ CSV", + "csv_import_nodata_wrongformat" => "Tập tin tải lên không có dữ liệu hoặc là nó có định dạng không đúng.", + "csv_import_partially_failed" => "Nhập khách hàng thành công với một số lỗi:", + "csv_import_success" => "Nhập khách hàng thành công.", + "customer" => "Khách hàng", + "date" => "Ngày", + "discount" => "Giảm giá", + "discount_fixed" => "Giảm giá cố định", + "discount_percent" => "Phần trăm giảm giá", + "discount_type" => "Kiểu giảm giá", + "email_duplicate" => "Địa chỉ thư điện tử đã sẵn có trong cơ sở dữ liệu rồi.", + "employee" => "Nhân viên", + "error_adding_updating" => "Gặp lỗi khi cập nhật hay thêm khách hàng.", + "import_items_csv" => "Nhập khách hàng từ CSV", + "mailchimp_activity_click" => "Bấm thư", + "mailchimp_activity_lastopen" => "Thư mở cuối cùng", + "mailchimp_activity_open" => "Mở thư", + "mailchimp_activity_total" => "Gửi thư", + "mailchimp_activity_unopen" => "Không mở thư", + "mailchimp_email_client" => "Trình khách nhận thư", + "mailchimp_info" => "Mailchimp", + "mailchimp_member_rating" => "Đánh giá", + "mailchimp_status" => "Tình trạng", + "mailchimp_vip" => "VIP", + "max" => "Trả tối đa", + "min" => "Trả tối thiểu", + "new" => "Khách hàng mới", + "none_selected" => "Bạn chưa chọn bất kỳ một khách hàng nào để mà xóa.", + "one_or_multiple" => "khách hàng", + "quantity" => "Số lượng", + "stats_info" => "Thgkê", + "successful_adding" => "Bạn đã thêm khách hàng thành công", + "successful_deleted" => "Bạn đã xóa thành công", + "successful_updating" => "Bạn đã cập nhật khách hàng thành công", + "tax_code" => "Mã thuế", + "tax_id" => "Mã thuế", + "taxable" => "Phải đánh thuế", + "total" => "Trả tổng cộng", + "update" => "Cập nhật khách hàng", + "rewards_package" => "Gói tiền thưởng", ]; diff --git a/app/Language/vi/Datepicker.php b/app/Language/vi/Datepicker.php index 0fbed2409..3b66eb5b1 100644 --- a/app/Language/vi/Datepicker.php +++ b/app/Language/vi/Datepicker.php @@ -1,23 +1,23 @@ "Toàn bộ thời gian", - "apply" => "Áp dụng", - "cancel" => "Thôi", - "custom" => "Tùy chọn", - "from" => "Từ", - "last_30" => "30 ngày gần đây", - "last_7" => "7 ngày gần đây", - "last_financial_year" => "Năm tài chính trước", - "last_month" => "Tháng trước", - "last_year" => "Năm ngoái", - "same_month_last_year" => "Cùng tháng năm ngoái", - "same_month_to_same_day_last_year" => "Cùng tháng cùng ngày năm ngoái", - "this_financial_year" => "Năm tài chính hiện tại", - "this_month" => "Tháng này", - "this_year" => "Năm nay", - "to" => "Đến", - "today" => "Hôm nay", - "today_last_year" => "Hôm nay của năm ngoái", - "weekstart" => "0", - "yesterday" => "Hôm qua", + "all_time" => "Toàn bộ thời gian", + "apply" => "Áp dụng", + "cancel" => "Thôi", + "custom" => "Tùy chọn", + "from" => "Từ", + "last_30" => "30 ngày gần đây", + "last_7" => "7 ngày gần đây", + "last_financial_year" => "Năm tài chính trước", + "last_month" => "Tháng trước", + "last_year" => "Năm ngoái", + "same_month_last_year" => "Cùng tháng năm ngoái", + "same_month_to_same_day_last_year" => "Cùng tháng cùng ngày năm ngoái", + "this_financial_year" => "Năm tài chính hiện tại", + "this_month" => "Tháng này", + "this_year" => "Năm nay", + "to" => "Đến", + "today" => "Hôm nay", + "today_last_year" => "Hôm nay của năm ngoái", + "weekstart" => "0", + "yesterday" => "Hôm qua", ]; diff --git a/app/Language/vi/Employees.php b/app/Language/vi/Employees.php index 4e6bf7db5..c287fcbbf 100644 --- a/app/Language/vi/Employees.php +++ b/app/Language/vi/Employees.php @@ -1,44 +1,44 @@ "", - "basic_information" => "Thông tin", - "cannot_be_deleted" => "Không thể xóa các nhân viên đã chọn, một hay nhiều nhân viên đã xử lý bán hàng hoặc bạn đang cố xóa tài khoản của mình.", - "change_employee" => "", - "change_password" => "Đổi mật khẩu", - "clerk" => "", - "commission" => "", - "confirm_delete" => "Bạn chắc chắn muốn xóa các nhân viên được chọn không?", - "confirm_restore" => "Bạn chắc chắn muốn hoàn lại các nhân viên được chọn không?", - "current_password" => "Mật khẩu hiện tại", - "current_password_invalid" => "Mật khẩu hiện tại không hợp lệ.", - "employee" => "Nhân viên", - "error_adding_updating" => "Gặp lỗi khi cập nhật hay thêm nhân viên.", - "error_deleting_demo_admin" => "Bạn không thể xóa người dùng demo admin.", - "error_updating_demo_admin" => "Bạn không thể thay đổi người dùng demo admin.", - "language" => "Ngôn ngữ", - "login_info" => "Đăng nhập", - "manager" => "", - "new" => "Nhân viên mới", - "none_selected" => "Bạn chưa chọn bất kỳ một nhân viên nào để mà xóa.", - "one_or_multiple" => "nhân viên", - "password" => "Mật khẩu", - "password_minlength" => "Mật khẩu phải dài ít nhất 8 ký tự.", - "password_must_match" => "Mật khẩu không khớp nhau.", - "password_not_must_match" => "Mật khẩu hiện tại và mới phải khác nhau.", - "password_required" => "Mật khẩu là bắt buộc.", - "permission_desc" => "Các hộp dấu kiểm phía dưới cấp quyền truy cập cho các mô đun.", - "permission_info" => "Quyền hạn", - "repeat_password" => "Gõ lại mật khẩu lần nữa", - "subpermission_required" => "Thêm ít nhất một quyền cho từng mô đun.", - "successful_adding" => "Đã thêm thành công nhân viên.", - "successful_change_password" => "Đổi mật khẩu thành công.", - "successful_deleted" => "Bạn đã xóa thành công", - "successful_updating" => "Bạn đã cập nhật nhân viên thành công", - "system_language" => "Ngôn ngữ hệ thống", - "unsuccessful_change_password" => "Gặp lỗi khi thay đổi mật khẩu.", - "update" => "Cập nhật Nhân viên", - "username" => "Tài khoản", - "username_duplicate" => "", - "username_minlength" => "Tài khoản phải dài ít nhất là 5 ký tự.", - "username_required" => "Trường tài khoản là bắt buộc.", + "administrator" => "", + "basic_information" => "Thông tin", + "cannot_be_deleted" => "Không thể xóa các nhân viên đã chọn, một hay nhiều nhân viên đã xử lý bán hàng hoặc bạn đang cố xóa tài khoản của mình.", + "change_employee" => "", + "change_password" => "Đổi mật khẩu", + "clerk" => "", + "commission" => "", + "confirm_delete" => "Bạn chắc chắn muốn xóa các nhân viên được chọn không?", + "confirm_restore" => "Bạn chắc chắn muốn hoàn lại các nhân viên được chọn không?", + "current_password" => "Mật khẩu hiện tại", + "current_password_invalid" => "Mật khẩu hiện tại không hợp lệ.", + "employee" => "Nhân viên", + "error_adding_updating" => "Gặp lỗi khi cập nhật hay thêm nhân viên.", + "error_deleting_demo_admin" => "Bạn không thể xóa người dùng demo admin.", + "error_updating_demo_admin" => "Bạn không thể thay đổi người dùng demo admin.", + "language" => "Ngôn ngữ", + "login_info" => "Đăng nhập", + "manager" => "", + "new" => "Nhân viên mới", + "none_selected" => "Bạn chưa chọn bất kỳ một nhân viên nào để mà xóa.", + "one_or_multiple" => "nhân viên", + "password" => "Mật khẩu", + "password_minlength" => "Mật khẩu phải dài ít nhất 8 ký tự.", + "password_must_match" => "Mật khẩu không khớp nhau.", + "password_not_must_match" => "Mật khẩu hiện tại và mới phải khác nhau.", + "password_required" => "Mật khẩu là bắt buộc.", + "permission_desc" => "Các hộp dấu kiểm phía dưới cấp quyền truy cập cho các mô đun.", + "permission_info" => "Quyền hạn", + "repeat_password" => "Gõ lại mật khẩu lần nữa", + "subpermission_required" => "Thêm ít nhất một quyền cho từng mô đun.", + "successful_adding" => "Đã thêm thành công nhân viên.", + "successful_change_password" => "Đổi mật khẩu thành công.", + "successful_deleted" => "Bạn đã xóa thành công", + "successful_updating" => "Bạn đã cập nhật nhân viên thành công", + "system_language" => "Ngôn ngữ hệ thống", + "unsuccessful_change_password" => "Gặp lỗi khi thay đổi mật khẩu.", + "update" => "Cập nhật Nhân viên", + "username" => "Tài khoản", + "username_duplicate" => "", + "username_minlength" => "Tài khoản phải dài ít nhất là 5 ký tự.", + "username_required" => "Trường tài khoản là bắt buộc.", ]; diff --git a/app/Language/vi/Enum.php b/app/Language/vi/Enum.php index 1274ffc08..aac4a05bb 100644 --- a/app/Language/vi/Enum.php +++ b/app/Language/vi/Enum.php @@ -1,10 +1,10 @@ "0,5 làm tròn xuống", - "half_even" => "0,5 dương làm tròn lên, âm xuống", - "half_five" => "Một phần tư", - "half_odd" => "0,5 cắt phần lẻ", - "half_up" => "0,5 làm tròn lên", - "round_down" => "Làm tròn xuống", - "round_up" => "Làm tròn lên", + "half_down" => "0,5 làm tròn xuống", + "half_even" => "0,5 dương làm tròn lên, âm xuống", + "half_five" => "Một phần tư", + "half_odd" => "0,5 cắt phần lẻ", + "half_up" => "0,5 làm tròn lên", + "round_down" => "Làm tròn xuống", + "round_up" => "Làm tròn lên", ]; diff --git a/app/Language/vi/Error.php b/app/Language/vi/Error.php index 26d2ac127..6ebf1b8bd 100644 --- a/app/Language/vi/Error.php +++ b/app/Language/vi/Error.php @@ -1,5 +1,5 @@ "Bạn không có thẩm quyền truy cập vào mô đun đó", - "unknown" => "Lỗi chưa biết", + "no_permission_module" => "Bạn không có thẩm quyền truy cập vào mô đun đó", + "unknown" => "Lỗi chưa biết", ]; diff --git a/app/Language/vi/Expenses.php b/app/Language/vi/Expenses.php index 4ed6c1bea..bc5030273 100644 --- a/app/Language/vi/Expenses.php +++ b/app/Language/vi/Expenses.php @@ -1,50 +1,50 @@ "Thên chi phí", - "amount" => "Tổng số", - "amount_number" => "Tổng số phải là dạng số", - "amount_required" => "Cần tổng số chi phí", - "by_category" => "Thể loại", - "cannot_be_deleted" => "Không thể xóa thể loại Chi phí", - "cash" => "Tiền mặt", - "cash_filter" => "Tiền mặt", - "categories_name" => "Thể loại", - "category_required" => "trường thể loại là bắt buộc", - "check" => "Séc", - "check_filter" => "Séc", - "confirm_delete" => "Bạn có chắc muốn xóa các Chi phí đã chọn?", - "confirm_restore" => "Bạn có chắc muốn hoàn lại các Chi phí đã chọn?", - "credit" => "Thẻ tín dụng", - "credit_filter" => "Thẻ tín dụng", - "date" => "Ngày", - "date_number" => "ngày tháng phải là dạng số", - "date_required" => "trường ngày tháng là bắt buộc", - "debit" => "Thẻ ghi nợ", - "debit_filter" => "Thẻ ghi nợ", - "description" => "Mô tả", - "due" => "Trả chậm", - "due_filter" => "Trả chậm", - "employee" => "Tạo bởi", - "error_adding_updating" => "Lỗi thêm/cập nhật Chi phí", - "expense_id" => "Mã số", - "expenses_employee" => "Nhân viên", - "info" => "Thông tin Chi phí", - "ip_address" => "", - "is_deleted" => "Đã xoá", - "name_required" => "Tên chi phí là bắt buộc", - "new" => "Chi phí mới", - "new_supplier" => "", - "no_expenses_to_display" => "Không có Chi phí nào để hiển thị", - "none_selected" => "Bạn chưa chọn Chi phí nào", - "one_or_multiple" => "Chi phí", - "payment" => "Kiểu thanh toán", - "start_typing_supplier_name" => "Bắt đầu gõ tên của nhà cung cấp...", - "successful_adding" => "Đã thêm thành công chi phí", - "successful_deleted" => "Đã xóa thành công chi phí", - "successful_updating" => "Đã cập nhật thành công chi phí", - "supplier_name" => "Nhà cung cấp", - "supplier_tax_code" => "Mã thuế", - "tax_amount" => "Thuế", - "tax_amount_number" => "", - "update" => "Cập nhật chi phí", + "add_item" => "Thên chi phí", + "amount" => "Tổng số", + "amount_number" => "Tổng số phải là dạng số", + "amount_required" => "Cần tổng số chi phí", + "by_category" => "Thể loại", + "cannot_be_deleted" => "Không thể xóa thể loại Chi phí", + "cash" => "Tiền mặt", + "cash_filter" => "Tiền mặt", + "categories_name" => "Thể loại", + "category_required" => "trường thể loại là bắt buộc", + "check" => "Séc", + "check_filter" => "Séc", + "confirm_delete" => "Bạn có chắc muốn xóa các Chi phí đã chọn?", + "confirm_restore" => "Bạn có chắc muốn hoàn lại các Chi phí đã chọn?", + "credit" => "Thẻ tín dụng", + "credit_filter" => "Thẻ tín dụng", + "date" => "Ngày", + "date_number" => "ngày tháng phải là dạng số", + "date_required" => "trường ngày tháng là bắt buộc", + "debit" => "Thẻ ghi nợ", + "debit_filter" => "Thẻ ghi nợ", + "description" => "Mô tả", + "due" => "Trả chậm", + "due_filter" => "Trả chậm", + "employee" => "Tạo bởi", + "error_adding_updating" => "Lỗi thêm/cập nhật Chi phí", + "expense_id" => "Mã số", + "expenses_employee" => "Nhân viên", + "info" => "Thông tin Chi phí", + "ip_address" => "", + "is_deleted" => "Đã xoá", + "name_required" => "Tên chi phí là bắt buộc", + "new" => "Chi phí mới", + "new_supplier" => "", + "no_expenses_to_display" => "Không có Chi phí nào để hiển thị", + "none_selected" => "Bạn chưa chọn Chi phí nào", + "one_or_multiple" => "Chi phí", + "payment" => "Kiểu thanh toán", + "start_typing_supplier_name" => "Bắt đầu gõ tên của nhà cung cấp...", + "successful_adding" => "Đã thêm thành công chi phí", + "successful_deleted" => "Đã xóa thành công chi phí", + "successful_updating" => "Đã cập nhật thành công chi phí", + "supplier_name" => "Nhà cung cấp", + "supplier_tax_code" => "Mã thuế", + "tax_amount" => "Thuế", + "tax_amount_number" => "", + "update" => "Cập nhật chi phí", ]; diff --git a/app/Language/vi/Expenses_categories.php b/app/Language/vi/Expenses_categories.php index 7ea1d3db3..c3b722020 100644 --- a/app/Language/vi/Expenses_categories.php +++ b/app/Language/vi/Expenses_categories.php @@ -1,22 +1,22 @@ "Trường tên Thể loại chi phí là bắt buộc", - "add_item" => "Thêm thể loại", - "cannot_be_deleted" => "Không thể xóa Thể loại Chi phí", - "category_id" => "Mã số", - "confirm_delete" => "Bạn chắc chắn muốn xóa các Thể loại chi phí được chọn không?", - "confirm_restore" => "Bạn có thực sự muốn hoàn nguyên lại thể loại phí đã chọn không?", - "description" => "Mô tả Thể loại", - "error_adding_updating" => "Lỗi khi thêm/cập nhật Thể loại chi phí", - "info" => "Thông tin Thể loại chi phí", - "name" => "Tên thể loại", - "new" => "Thể loại mới", - "no_expenses_categories_to_display" => "Không có thể loại nào để hiển thị", - "none_selected" => "Bạn chưa chọn bất kỳ một Thể loại chi phí nào để mà sửa", - "one_or_multiple" => "Thể loại chi phí", - "quantity" => "Số lượng", - "successful_adding" => "Thêm thành công Thể loại chi phí", - "successful_deleted" => "Xóa thành công Thể loại chi phí", - "successful_updating" => "Cập nhật thành công Thể loại chi phí", - "update" => "Cập nhật thể loại", + "category_name_required" => "Trường tên Thể loại chi phí là bắt buộc", + "add_item" => "Thêm thể loại", + "cannot_be_deleted" => "Không thể xóa Thể loại Chi phí", + "category_id" => "Mã số", + "confirm_delete" => "Bạn chắc chắn muốn xóa các Thể loại chi phí được chọn không?", + "confirm_restore" => "Bạn có thực sự muốn hoàn nguyên lại thể loại phí đã chọn không?", + "description" => "Mô tả Thể loại", + "error_adding_updating" => "Lỗi khi thêm/cập nhật Thể loại chi phí", + "info" => "Thông tin Thể loại chi phí", + "name" => "Tên thể loại", + "new" => "Thể loại mới", + "no_expenses_categories_to_display" => "Không có thể loại nào để hiển thị", + "none_selected" => "Bạn chưa chọn bất kỳ một Thể loại chi phí nào để mà sửa", + "one_or_multiple" => "Thể loại chi phí", + "quantity" => "Số lượng", + "successful_adding" => "Thêm thành công Thể loại chi phí", + "successful_deleted" => "Xóa thành công Thể loại chi phí", + "successful_updating" => "Cập nhật thành công Thể loại chi phí", + "update" => "Cập nhật thể loại", ]; diff --git a/app/Language/vi/Giftcards.php b/app/Language/vi/Giftcards.php index d2fd28e23..1444b9705 100644 --- a/app/Language/vi/Giftcards.php +++ b/app/Language/vi/Giftcards.php @@ -1,71 +1,71 @@ "Hàng tồn kho để thêm hay bớt.", - "allow_alt_description" => "Cho phép Mô tả thay thế", - "bulk_edit" => "Sửa hàng loạt", - "cannot_be_deleted" => "Không thể xóa các Thẻ quà tặng đã chọn, một hay nhiều Thẻ quà tặng đã chọn đã được bán.", - "cannot_find_giftcard" => "Không tìm thấy Thẻ quà tặng.", - "cannot_use" => "Thẻ quà tặng {0} không thể sử dụng cho lần bán hàng này: Khách hàng không hợp lệ.", - "card_value" => "Giá trị", - "category" => "Thể loại", - "change_all_to_allow_alt_desc" => "Cho phép mô tả thay thế cho tất cả.", - "change_all_to_not_allow_allow_desc" => "Không cho phép mô tả thay thế cho tất cả.", - "change_all_to_serialized" => "Đổi tất cả sang sêri hóa", - "change_all_to_unserialized" => "Đổi tất cả sang không sêri hóa", - "confirm_bulk_edit" => "Bạn có chắc muốn sửa Thẻ quà tặng đã chọn?", - "confirm_delete" => "Bạn có chắc muốn xóa Thẻ quà tặng đã chọn?", - "confirm_restore" => "Bạn có chắc muốn hoàn lại Thẻ quà tặng đã chọn?", - "cost_price" => "Giá bán buôn", - "count" => "Cập hàng tồn kho", - "csv_import_failed" => "Gặp lỗi khi nhập từ CSV.", - "current_quantity" => "Số lượng hiện tại", - "description" => "Mô tả", - "details_count" => "Chi tiết số lượng tồn kho", - "do_nothing" => "Không làm gì", - "edit_fields_you_want_to_update" => "Sửa các trường suy luận cho Thẻ quà tặng đã chọn.", - "edit_multiple_giftcards" => "Sửa nhiều Thẻ quà tặng.", - "error_adding_updating" => "Gặp lỗi khi thêm hay cập nhật Thẻ quà tặng.", - "error_updating_multiple" => "Gặp lỗi khi cập nhật Thẻ quà tặng.", - "generate_barcodes" => "Tạo mã vạch", - "giftcard" => "Thẻ quà tặng", - "giftcard_number" => "Số Thẻ quà tặng", - "info_provided_by" => "Thông tin được cung cấp bởi", - "inventory_comments" => "Ghi chú", - "is_serialized" => "Thẻ quà tặng có số sêri", - "low_inventory_giftcards" => "Tồn kho Thẻ quà tặng thấp", - "manually_editing_of_quantity" => "Sửa số lượng bằng tay", - "must_select_giftcard_for_barcode" => "Bạn phải chọn ít nhất (1) Thẻ quà tặng để mà tạo mã vạch.", - "new" => "Thẻ quà tặng mới", - "no_description_giftcards" => "Thẻ quà tặng Không có mô tả", - "no_giftcards_to_display" => "Không có Thẻ quà tặng để mà hiển thị.", - "none" => "Không", - "none_selected" => "Chưa chọn Thẻ quà tặng để sửa.", - "number" => "Số Thẻ quà tặng phải là dạng số.", - "number_information" => "Số Thẻ quà tặng", - "number_required" => "Số Thẻ quà tặng là trường bắt buộc.", - "one_or_multiple" => "Thẻ quà tặng", - "person_id" => "Khách hàng", - "quantity" => "Số lượng", - "quantity_required" => "Số lượng là trường bắt buộc. Vui lòng bấm vào (X) để thôi.", - "remaining_balance" => "Thẻ quà tặng {0} còn lại giá trị là {1}!", - "reorder_level" => "Mức đặt mua bổ xung", - "retrive_giftcard_info" => "Thông tin nhận Thẻ quà tặng", - "sales_tax_1" => "Thuế bán hàng", - "sales_tax_2" => "Thuế bán hàng 2", - "serialized_giftcards" => "Đổi sang sêri hóa Thẻ quà tặng", - "successful_adding" => "Bạn đã thêm Thẻ quà tặng thành công", - "successful_bulk_edit" => "Bạn đã cập nhật các Thẻ quà tặng đã chọn thành công", - "successful_deleted" => "Bạn đã xóa thành công", - "successful_updating" => "Bạn đã cập nhật Thẻ quà tặng thành công", - "supplier" => "Nhà cung cấp", - "tax_1" => "Thuế 1", - "tax_2" => "Thuế 2", - "tax_percent" => "Phần trăm Thuế", - "tax_percents" => "Phần trăm Thuế", - "unit_price" => "Giá trị bán lẻ", - "upc_database" => "Cơ sở dữ liệu mã vạch", - "update" => "Cập nhật Thẻ quà tặng", - "use_inventory_menu" => "Dùng trình đơn Tồn kho", - "value" => "Giá trị Thẻ quà tặng phải là dạng số.", - "value_required" => "Giá trị Thẻ quà tặng là trường bắt buộc.", + "add_minus" => "Hàng tồn kho để thêm hay bớt.", + "allow_alt_description" => "Cho phép Mô tả thay thế", + "bulk_edit" => "Sửa hàng loạt", + "cannot_be_deleted" => "Không thể xóa các Thẻ quà tặng đã chọn, một hay nhiều Thẻ quà tặng đã chọn đã được bán.", + "cannot_find_giftcard" => "Không tìm thấy Thẻ quà tặng.", + "cannot_use" => "Thẻ quà tặng {0} không thể sử dụng cho lần bán hàng này: Khách hàng không hợp lệ.", + "card_value" => "Giá trị", + "category" => "Thể loại", + "change_all_to_allow_alt_desc" => "Cho phép mô tả thay thế cho tất cả.", + "change_all_to_not_allow_allow_desc" => "Không cho phép mô tả thay thế cho tất cả.", + "change_all_to_serialized" => "Đổi tất cả sang sêri hóa", + "change_all_to_unserialized" => "Đổi tất cả sang không sêri hóa", + "confirm_bulk_edit" => "Bạn có chắc muốn sửa Thẻ quà tặng đã chọn?", + "confirm_delete" => "Bạn có chắc muốn xóa Thẻ quà tặng đã chọn?", + "confirm_restore" => "Bạn có chắc muốn hoàn lại Thẻ quà tặng đã chọn?", + "cost_price" => "Giá bán buôn", + "count" => "Cập hàng tồn kho", + "csv_import_failed" => "Gặp lỗi khi nhập từ CSV.", + "current_quantity" => "Số lượng hiện tại", + "description" => "Mô tả", + "details_count" => "Chi tiết số lượng tồn kho", + "do_nothing" => "Không làm gì", + "edit_fields_you_want_to_update" => "Sửa các trường suy luận cho Thẻ quà tặng đã chọn.", + "edit_multiple_giftcards" => "Sửa nhiều Thẻ quà tặng.", + "error_adding_updating" => "Gặp lỗi khi thêm hay cập nhật Thẻ quà tặng.", + "error_updating_multiple" => "Gặp lỗi khi cập nhật Thẻ quà tặng.", + "generate_barcodes" => "Tạo mã vạch", + "giftcard" => "Thẻ quà tặng", + "giftcard_number" => "Số Thẻ quà tặng", + "info_provided_by" => "Thông tin được cung cấp bởi", + "inventory_comments" => "Ghi chú", + "is_serialized" => "Thẻ quà tặng có số sêri", + "low_inventory_giftcards" => "Tồn kho Thẻ quà tặng thấp", + "manually_editing_of_quantity" => "Sửa số lượng bằng tay", + "must_select_giftcard_for_barcode" => "Bạn phải chọn ít nhất (1) Thẻ quà tặng để mà tạo mã vạch.", + "new" => "Thẻ quà tặng mới", + "no_description_giftcards" => "Thẻ quà tặng Không có mô tả", + "no_giftcards_to_display" => "Không có Thẻ quà tặng để mà hiển thị.", + "none" => "Không", + "none_selected" => "Chưa chọn Thẻ quà tặng để sửa.", + "number" => "Số Thẻ quà tặng phải là dạng số.", + "number_information" => "Số Thẻ quà tặng", + "number_required" => "Số Thẻ quà tặng là trường bắt buộc.", + "one_or_multiple" => "Thẻ quà tặng", + "person_id" => "Khách hàng", + "quantity" => "Số lượng", + "quantity_required" => "Số lượng là trường bắt buộc. Vui lòng bấm vào (X) để thôi.", + "remaining_balance" => "Thẻ quà tặng {0} còn lại giá trị là {1}!", + "reorder_level" => "Mức đặt mua bổ xung", + "retrive_giftcard_info" => "Thông tin nhận Thẻ quà tặng", + "sales_tax_1" => "Thuế bán hàng", + "sales_tax_2" => "Thuế bán hàng 2", + "serialized_giftcards" => "Đổi sang sêri hóa Thẻ quà tặng", + "successful_adding" => "Bạn đã thêm Thẻ quà tặng thành công", + "successful_bulk_edit" => "Bạn đã cập nhật các Thẻ quà tặng đã chọn thành công", + "successful_deleted" => "Bạn đã xóa thành công", + "successful_updating" => "Bạn đã cập nhật Thẻ quà tặng thành công", + "supplier" => "Nhà cung cấp", + "tax_1" => "Thuế 1", + "tax_2" => "Thuế 2", + "tax_percent" => "Phần trăm Thuế", + "tax_percents" => "Phần trăm Thuế", + "unit_price" => "Giá trị bán lẻ", + "upc_database" => "Cơ sở dữ liệu mã vạch", + "update" => "Cập nhật Thẻ quà tặng", + "use_inventory_menu" => "Dùng trình đơn Tồn kho", + "value" => "Giá trị Thẻ quà tặng phải là dạng số.", + "value_required" => "Giá trị Thẻ quà tặng là trường bắt buộc.", ]; diff --git a/app/Language/vi/Item_kits.php b/app/Language/vi/Item_kits.php index 3f54230f9..99ec558cc 100644 --- a/app/Language/vi/Item_kits.php +++ b/app/Language/vi/Item_kits.php @@ -1,41 +1,41 @@ "Thêm Hàng hóa", - "all" => "Tất cả", - "cannot_be_deleted" => "Gặp lỗi khi xóa Gói hàng hóa.", - "confirm_delete" => "Bạn có thực sự muốn xóa Gói hàng hóa đã chọn?", - "confirm_restore" => "Bạn có thực sự muốn hoàn lại Gói hàng hóa đã chọn?", - "description" => "Mô tả Gói hàng hóa", - "discount" => "Giảm giá", - "discount_fixed" => "Giảm giá cố định", - "discount_percent" => "Phần trăm giảm giá", - "discount_type" => "Kiểu giảm giá", - "error_adding_updating" => "Gặp lỗi khi thêm hay cập nhật Gói hàng hóa.", - "find_kit_item" => "Gói hàng hóa", - "info" => "Thông tin Gói hàng hóa", - "item" => "Hàng hóa", - "item_kit_number" => "Mã vạch", - "item_kit_number_duplicate" => "Số kít mục tin đã sẵn có trong cơ sở dữ liệu.", - "item_number" => "", - "item_number_duplicate" => "", - "items" => "Hàng hóa", - "kit" => "Mã gói", - "kit_and_components" => "Gói và Thành phần", - "kit_and_stock" => "Gói và Kho", - "kit_only" => "Chỉ gói", - "name" => "Tên Gói hàng hóa", - "new" => "Gói hàng hóa mới", - "no_item_kits_to_display" => "Không có Gói hàng hóa để mà hiển thị.", - "none_selected" => "Bạn chưa chọn bất kỳ một Gói hàng hóa nào.", - "one_or_multiple" => "Gói hàng hóa", - "price_option" => "Tùy chọn Giá", - "priced_only" => "Chỉ Giá", - "print_option" => "Tùy chọn In", - "quantity" => "Số lượng", - "sequence" => "Tuần tự", - "successful_adding" => "Bạn đã thêm Gói hàng hóa thành công", - "successful_deleted" => "Bạn đã xóa thành công", - "successful_updating" => "Bạn đã cập nhật các hàng hóa theo nhóm thành công", - "unit_price" => "", - "update" => "Cập nhật Gói hàng hóa", + "add_item" => "Thêm Hàng hóa", + "all" => "Tất cả", + "cannot_be_deleted" => "Gặp lỗi khi xóa Gói hàng hóa.", + "confirm_delete" => "Bạn có thực sự muốn xóa Gói hàng hóa đã chọn?", + "confirm_restore" => "Bạn có thực sự muốn hoàn lại Gói hàng hóa đã chọn?", + "description" => "Mô tả Gói hàng hóa", + "discount" => "Giảm giá", + "discount_fixed" => "Giảm giá cố định", + "discount_percent" => "Phần trăm giảm giá", + "discount_type" => "Kiểu giảm giá", + "error_adding_updating" => "Gặp lỗi khi thêm hay cập nhật Gói hàng hóa.", + "find_kit_item" => "Gói hàng hóa", + "info" => "Thông tin Gói hàng hóa", + "item" => "Hàng hóa", + "item_kit_number" => "Mã vạch", + "item_kit_number_duplicate" => "Số kít mục tin đã sẵn có trong cơ sở dữ liệu.", + "item_number" => "", + "item_number_duplicate" => "", + "items" => "Hàng hóa", + "kit" => "Mã gói", + "kit_and_components" => "Gói và Thành phần", + "kit_and_stock" => "Gói và Kho", + "kit_only" => "Chỉ gói", + "name" => "Tên Gói hàng hóa", + "new" => "Gói hàng hóa mới", + "no_item_kits_to_display" => "Không có Gói hàng hóa để mà hiển thị.", + "none_selected" => "Bạn chưa chọn bất kỳ một Gói hàng hóa nào.", + "one_or_multiple" => "Gói hàng hóa", + "price_option" => "Tùy chọn Giá", + "priced_only" => "Chỉ Giá", + "print_option" => "Tùy chọn In", + "quantity" => "Số lượng", + "sequence" => "Tuần tự", + "successful_adding" => "Bạn đã thêm Gói hàng hóa thành công", + "successful_deleted" => "Bạn đã xóa thành công", + "successful_updating" => "Bạn đã cập nhật các hàng hóa theo nhóm thành công", + "unit_price" => "", + "update" => "Cập nhật Gói hàng hóa", ]; diff --git a/app/Language/vi/Items.php b/app/Language/vi/Items.php index 4473d367b..90261d979 100644 --- a/app/Language/vi/Items.php +++ b/app/Language/vi/Items.php @@ -1,120 +1,120 @@ "Hàng tồn kho để thêm hay bớt.", - "allow_alt_description" => "Cho phép Mô tả thay thế", - "amount_entry" => "Đầu mục tổng số", - "bulk_edit" => "Sửa hàng loạt", - "buy_price_required" => "Trường Giá đặt mua là bắt buộc.", - "cannot_be_deleted" => "Không thể xóa các Hàng hóa đã chọn, một hay nhiều cái đã chọn đã từng được bán.", - "cannot_find_item" => "Không tìm thấy hàng hóa.", - "categories" => "", - "category" => "Thể loại", - "category_new" => "", - "category_required" => "Trường thể loại là bắt buộc.", - "change_all_to_allow_alt_desc" => "Cho phép Mô tả thay thế cho tất cả.", - "change_all_to_not_allow_allow_desc" => "Không cho phép Mô tả thay thế cho tất cả.", - "change_all_to_serialized" => "Đổi tất cả sang sêri hóa", - "change_all_to_unserialized" => "Đổi tất cả sang không sêri", - "change_image" => "Đổi ảnh", - "confirm_bulk_edit" => "Bạn chắc chắn muốn sửa lại các Hàng hóa được chọn không?", - "confirm_bulk_edit_wipe_taxes" => "Mọi thông tin Thuế Hàng hóa sẽ bị thay thế.", - "confirm_delete" => "Bạn chắc chắn muốn xóa các hàng hóa được chọn không?", - "confirm_restore" => "Bạn chắc chắn muốn hoàn lại các hàng hóa được chọn không?", - "cost_price" => "Giá bán buôn", - "cost_price_number" => "Giá bán buôn phải là dạng số.", - "cost_price_required" => "Trường Giá bán buôn là bắt buộc.", - "count" => "Cập hàng tồn kho", - "csv_import_failed" => "Gặp lỗi khi nhập từ CSV", - "csv_import_nodata_wrongformat" => "Tập tin tải lên không có dữ liệu hoặc là nó có định dạng không đúng.", - "csv_import_partially_failed" => "Có {0} mục tin gặp lỗi khi nhập trên dòng: {1}. Không có hàng nào được nhập vào.", - "csv_import_success" => "Nhập hàng hóa thành công.", - "current_quantity" => "Số lượng hiện tại", - "default_pack_name" => "Mỗi", - "description" => "Mô tả", - "details_count" => "Chi tiết số lượng tồn kho", - "do_nothing" => "Không làm gì", - "edit" => "", - "edit_fields_you_want_to_update" => "Sửa các trường mong muốn cho các hàng hóa được chọn.", - "edit_multiple_items" => "Sửa nhiều hàng hóa cùng lúc", - "empty_upc_items" => "Mã vạch hàng hóa để trống", - "error_adding_updating" => "Lỗi thêm/cập nhật hàng hóa", - "error_updating_multiple" => "Có lỗi khi cập nhật hàng hóa", - "generate_barcodes" => "Tạo mã vạch", - "hsn_code" => "Tuân theo hệ thống hài hòa", - "image" => "Avatar", - "import_items_csv" => "Nhập hàng hóa từ CSV", - "info_provided_by" => "Thông tin được cung cấp bởi", - "inventory" => "Tồn kho", - "inventory_CSV_import_quantity" => "Số lượng đã được nhập từ CSV", - "inventory_comments" => "Ghi chú", - "inventory_data_tracking" => "Theo dõi dữ liệu tồn kho", - "inventory_date" => "Ngày tháng", - "inventory_employee" => "Nhân viên", - "inventory_in_out_quantity" => "Số lượng Vào/Ra", - "inventory_remarks" => "Lưu ý", - "is_deleted" => "Đã xoá", - "is_printed" => "", - "is_serialized" => "Hàng hóa có số sêri", - "item" => "Hàng hóa", - "item_id" => "", - "item_number" => "Mã vạch", - "item_number_duplicate" => "Số hàng hóa đã sẵn có trong cơ sở dữ liệu rồi.", - "kit" => "Kít", - "location" => "Vị trí", - "low_inventory_items" => "Hàng hóa hết hàng trong kho", - "low_sell_item" => "Hàng hóa bán kém", - "manually_editing_of_quantity" => "Sửa số lượng bằng tay", - "markup" => "", - "name" => "Tên Hàng hóa", - "name_required" => "Trường Tên Hàng hóa là bắt buộc.", - "new" => "Hàng hóa mới", - "no_description_items" => "Hàng hóa không có mô tả", - "no_items_to_display" => "Không có hàng hóa để hiển thị.", - "none" => "Không", - "none_selected" => "Bạn chưa chọn bất kỳ một Hàng hóa nào để mà sửa", - "nonstock" => "Hết hàng", - "number_information" => "Số hàng hóa", - "number_required" => "Trường Mã vạch là bắt buộc.", - "one_or_multiple" => "hàng hóa", - "pack_name" => "Tên gói", - "qty_per_pack" => "Số lượng mỗi gói", - "quantity" => "Số lượng", - "quantity_number" => "Số lượng phải là dạng số.", - "quantity_required" => "Trường số lượng là bắt buộc.", - "receiving_quantity" => "Số lượng nhập hàng", - "remove_image" => "Gỡ bỏ ảnh", - "reorder_level" => "Mức đặt mua bổ xung", - "reorder_level_number" => "Mức đặt mua bổ xung phải là con số.", - "reorder_level_required" => "Trường Mức đặt mua bổ xung là bắt buộc.", - "retrive_item_info" => "Thông tin Nhập hàng", - "sales_tax_1" => "Thuế bán hàng", - "sales_tax_2" => "Thuế bán hàng 2", - "search_attributes" => "Tìm kiếm các thuộc tính", - "select_image" => "Chọn ảnh", - "serialized_items" => "Các hàng hóa có sêri", - "standard" => "Tiêu chuẩn", - "stock" => "Có hàng", - "stock_location" => "Vị trí kho", - "stock_type" => "Kiểu kho", - "successful_adding" => "Bạn đã thêm Hàng hóa thành công", - "successful_bulk_edit" => "Bạn đã cập nhật các hàng hóa đã chọn thành công", - "successful_deleted" => "Bạn đã xóa thành công", - "successful_updating" => "Bạn đã cập nhật hàng hóa thành công", - "supplier" => "Nhà cung cấp", - "tax_1" => "Thuế 1", - "tax_2" => "Thuế 2", - "tax_3" => "", - "tax_category" => "Thể loại thuế", - "tax_percent" => "Phần trăm Thuế", - "tax_percent_number" => "Phần trăm Thuế phải dạng số", - "tax_percent_required" => "Trường Phần trăm Thuế là bắt buộc.", - "tax_percents" => "Phần trăm Thuế", - "temp" => "Tạm thời", - "type" => "Kiểu Hàng hóa", - "unit_price" => "Giá bán lẻ", - "unit_price_number" => "Giá bán lẻ mỗi đơn vị phải là dạng số.", - "unit_price_required" => "Trường giá bán lẻ là bắt buộc.", - "upc_database" => "Cơ sở dữ liệu mã vạch", - "update" => "Cập nhật Hàng hóa", - "use_inventory_menu" => "Dùng trình đơn Tồn kho", + "add_minus" => "Hàng tồn kho để thêm hay bớt.", + "allow_alt_description" => "Cho phép Mô tả thay thế", + "amount_entry" => "Đầu mục tổng số", + "bulk_edit" => "Sửa hàng loạt", + "buy_price_required" => "Trường Giá đặt mua là bắt buộc.", + "cannot_be_deleted" => "Không thể xóa các Hàng hóa đã chọn, một hay nhiều cái đã chọn đã từng được bán.", + "cannot_find_item" => "Không tìm thấy hàng hóa.", + "categories" => "", + "category" => "Thể loại", + "category_new" => "", + "category_required" => "Trường thể loại là bắt buộc.", + "change_all_to_allow_alt_desc" => "Cho phép Mô tả thay thế cho tất cả.", + "change_all_to_not_allow_allow_desc" => "Không cho phép Mô tả thay thế cho tất cả.", + "change_all_to_serialized" => "Đổi tất cả sang sêri hóa", + "change_all_to_unserialized" => "Đổi tất cả sang không sêri", + "change_image" => "Đổi ảnh", + "confirm_bulk_edit" => "Bạn chắc chắn muốn sửa lại các Hàng hóa được chọn không?", + "confirm_bulk_edit_wipe_taxes" => "Mọi thông tin Thuế Hàng hóa sẽ bị thay thế.", + "confirm_delete" => "Bạn chắc chắn muốn xóa các hàng hóa được chọn không?", + "confirm_restore" => "Bạn chắc chắn muốn hoàn lại các hàng hóa được chọn không?", + "cost_price" => "Giá bán buôn", + "cost_price_number" => "Giá bán buôn phải là dạng số.", + "cost_price_required" => "Trường Giá bán buôn là bắt buộc.", + "count" => "Cập hàng tồn kho", + "csv_import_failed" => "Gặp lỗi khi nhập từ CSV", + "csv_import_nodata_wrongformat" => "Tập tin tải lên không có dữ liệu hoặc là nó có định dạng không đúng.", + "csv_import_partially_failed" => "Có {0} mục tin gặp lỗi khi nhập trên dòng: {1}. Không có hàng nào được nhập vào.", + "csv_import_success" => "Nhập hàng hóa thành công.", + "current_quantity" => "Số lượng hiện tại", + "default_pack_name" => "Mỗi", + "description" => "Mô tả", + "details_count" => "Chi tiết số lượng tồn kho", + "do_nothing" => "Không làm gì", + "edit" => "", + "edit_fields_you_want_to_update" => "Sửa các trường mong muốn cho các hàng hóa được chọn.", + "edit_multiple_items" => "Sửa nhiều hàng hóa cùng lúc", + "empty_upc_items" => "Mã vạch hàng hóa để trống", + "error_adding_updating" => "Lỗi thêm/cập nhật hàng hóa", + "error_updating_multiple" => "Có lỗi khi cập nhật hàng hóa", + "generate_barcodes" => "Tạo mã vạch", + "hsn_code" => "Tuân theo hệ thống hài hòa", + "image" => "Avatar", + "import_items_csv" => "Nhập hàng hóa từ CSV", + "info_provided_by" => "Thông tin được cung cấp bởi", + "inventory" => "Tồn kho", + "inventory_CSV_import_quantity" => "Số lượng đã được nhập từ CSV", + "inventory_comments" => "Ghi chú", + "inventory_data_tracking" => "Theo dõi dữ liệu tồn kho", + "inventory_date" => "Ngày tháng", + "inventory_employee" => "Nhân viên", + "inventory_in_out_quantity" => "Số lượng Vào/Ra", + "inventory_remarks" => "Lưu ý", + "is_deleted" => "Đã xoá", + "is_printed" => "", + "is_serialized" => "Hàng hóa có số sêri", + "item" => "Hàng hóa", + "item_id" => "", + "item_number" => "Mã vạch", + "item_number_duplicate" => "Số hàng hóa đã sẵn có trong cơ sở dữ liệu rồi.", + "kit" => "Kít", + "location" => "Vị trí", + "low_inventory_items" => "Hàng hóa hết hàng trong kho", + "low_sell_item" => "Hàng hóa bán kém", + "manually_editing_of_quantity" => "Sửa số lượng bằng tay", + "markup" => "", + "name" => "Tên Hàng hóa", + "name_required" => "Trường Tên Hàng hóa là bắt buộc.", + "new" => "Hàng hóa mới", + "no_description_items" => "Hàng hóa không có mô tả", + "no_items_to_display" => "Không có hàng hóa để hiển thị.", + "none" => "Không", + "none_selected" => "Bạn chưa chọn bất kỳ một Hàng hóa nào để mà sửa", + "nonstock" => "Hết hàng", + "number_information" => "Số hàng hóa", + "number_required" => "Trường Mã vạch là bắt buộc.", + "one_or_multiple" => "hàng hóa", + "pack_name" => "Tên gói", + "qty_per_pack" => "Số lượng mỗi gói", + "quantity" => "Số lượng", + "quantity_number" => "Số lượng phải là dạng số.", + "quantity_required" => "Trường số lượng là bắt buộc.", + "receiving_quantity" => "Số lượng nhập hàng", + "remove_image" => "Gỡ bỏ ảnh", + "reorder_level" => "Mức đặt mua bổ xung", + "reorder_level_number" => "Mức đặt mua bổ xung phải là con số.", + "reorder_level_required" => "Trường Mức đặt mua bổ xung là bắt buộc.", + "retrive_item_info" => "Thông tin Nhập hàng", + "sales_tax_1" => "Thuế bán hàng", + "sales_tax_2" => "Thuế bán hàng 2", + "search_attributes" => "Tìm kiếm các thuộc tính", + "select_image" => "Chọn ảnh", + "serialized_items" => "Các hàng hóa có sêri", + "standard" => "Tiêu chuẩn", + "stock" => "Có hàng", + "stock_location" => "Vị trí kho", + "stock_type" => "Kiểu kho", + "successful_adding" => "Bạn đã thêm Hàng hóa thành công", + "successful_bulk_edit" => "Bạn đã cập nhật các hàng hóa đã chọn thành công", + "successful_deleted" => "Bạn đã xóa thành công", + "successful_updating" => "Bạn đã cập nhật hàng hóa thành công", + "supplier" => "Nhà cung cấp", + "tax_1" => "Thuế 1", + "tax_2" => "Thuế 2", + "tax_3" => "", + "tax_category" => "Thể loại thuế", + "tax_percent" => "Phần trăm Thuế", + "tax_percent_number" => "Phần trăm Thuế phải dạng số", + "tax_percent_required" => "Trường Phần trăm Thuế là bắt buộc.", + "tax_percents" => "Phần trăm Thuế", + "temp" => "Tạm thời", + "type" => "Kiểu Hàng hóa", + "unit_price" => "Giá bán lẻ", + "unit_price_number" => "Giá bán lẻ mỗi đơn vị phải là dạng số.", + "unit_price_required" => "Trường giá bán lẻ là bắt buộc.", + "upc_database" => "Cơ sở dữ liệu mã vạch", + "update" => "Cập nhật Hàng hóa", + "use_inventory_menu" => "Dùng trình đơn Tồn kho", ]; diff --git a/app/Language/vi/Login.php b/app/Language/vi/Login.php index 01628a6b4..5099478cc 100644 --- a/app/Language/vi/Login.php +++ b/app/Language/vi/Login.php @@ -1,15 +1,15 @@ "Tôi không phải là robot.", - "go" => "Đăng nhập", - "invalid_gcaptcha" => "Xin vui lòng xác nhận bạn không phải là robot.", - "invalid_installation" => "Phần cài đặt chưa đúng, kiểm tra tập tin php.ini của bạn.", - "invalid_username_and_password" => "Tài khoản hoặc mật khẩu không hợp lệ.", - "login" => "Đăng nhập", - "logout" => "Đăng xuất", - "migration_needed" => "Di chuyển cơ sở dữ liệu sang {0} sẽ được bắt đầu sau khi đăng nhập.", - "password" => "Mật khẩu", - "required_username" => "", - "username" => "Tài khoản", - "welcome" => "Chào mừng đến với {0}!", + "gcaptcha" => "Tôi không phải là robot.", + "go" => "Đăng nhập", + "invalid_gcaptcha" => "Xin vui lòng xác nhận bạn không phải là robot.", + "invalid_installation" => "Phần cài đặt chưa đúng, kiểm tra tập tin php.ini của bạn.", + "invalid_username_and_password" => "Tài khoản hoặc mật khẩu không hợp lệ.", + "login" => "Đăng nhập", + "logout" => "Đăng xuất", + "migration_needed" => "Di chuyển cơ sở dữ liệu sang {0} sẽ được bắt đầu sau khi đăng nhập.", + "password" => "Mật khẩu", + "required_username" => "", + "username" => "Tài khoản", + "welcome" => "Chào mừng đến với {0}!", ]; diff --git a/app/Language/vi/Messages.php b/app/Language/vi/Messages.php index e3dc3a94c..79da631ea 100644 --- a/app/Language/vi/Messages.php +++ b/app/Language/vi/Messages.php @@ -1,15 +1,15 @@ "Tên", - "last_name" => "Họ", - "message" => "Tin nhắn", - "message_placeholder" => "Tin nhắn của bạn ở đây...", - "message_required" => "Cần tin nhắn", - "multiple_phones" => "(Trong trường hợp gửi cho nhiều người, nhập danh sách điện thoại ngăn cách nhau bởi dấu phẩy)", - "phone" => "Số điện thoại", - "phone_number_required" => "Cần số điện thoại", - "phone_placeholder" => "Các số di động ở đây...", - "sms_send" => "Gửi SMS", - "successfully_sent" => "Tin nhắn được gửi thành công cho: ", - "unsuccessfully_sent" => "Tin nhắn được gửi không thành công cho: ", + "first_name" => "Tên", + "last_name" => "Họ", + "message" => "Tin nhắn", + "message_placeholder" => "Tin nhắn của bạn ở đây...", + "message_required" => "Cần tin nhắn", + "multiple_phones" => "(Trong trường hợp gửi cho nhiều người, nhập danh sách điện thoại ngăn cách nhau bởi dấu phẩy)", + "phone" => "Số điện thoại", + "phone_number_required" => "Cần số điện thoại", + "phone_placeholder" => "Các số di động ở đây...", + "sms_send" => "Gửi SMS", + "successfully_sent" => "Tin nhắn được gửi thành công cho: ", + "unsuccessfully_sent" => "Tin nhắn được gửi không thành công cho: ", ]; diff --git a/app/Language/vi/Module.php b/app/Language/vi/Module.php index b4d9aa345..863e8b405 100644 --- a/app/Language/vi/Module.php +++ b/app/Language/vi/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "Thuộc tính", - "attributes_desc" => "Thêm, Cập nhật, Xóa và Tìm kiếm các thuộc tính.", - "both" => "Cả hai", - "cashups" => "Tiền mặt", - "cashups_desc" => "Thêm, cập nhật, xóa và tìm kiếm về tiền mặt.", - "config" => "Cấu hình", - "config_desc" => "Thay đổi cấu hình của OSPOS.", - "customers" => "Khách hàng", - "customers_desc" => "Thêm, Cập nhật, Xóa và Tìm kiếm Khách hàng.", - "employees" => "Nhân viên", - "employees_desc" => "Thêm, Cập nhật, Xóa và Tìm kiếm Nhân viên.", - "expenses" => "Chi phí", - "expenses_categories" => "Phân loại Chi phí", - "expenses_categories_desc" => "Thêm, Cập nhật, Xóa và Tìm kiếm các Thể loại Chi phí.", - "expenses_desc" => "Thêm, Cập nhật, Xóa và Tìm kiếm Chi phí.", - "giftcards" => "Thẻ quà tặng", - "giftcards_desc" => "Thêm, Cập nhật, Xóa và Tìm kiếm Thẻ quà tặng.", - "home" => "Trang chủ", - "home_desc" => "Liệt kê các mô đun chính.", - "item_kits" => "Gói hàng hóa", - "item_kits_desc" => "Thêm, Cập nhật, Xóa và Tìm kiếm Gói hàng hóa.", - "items" => "Hàng hóa", - "items_desc" => "Thêm, Cập nhật, Xóa và Tìm kiếm Hàng hóa.", - "messages" => "Nhắn tin", - "messages_desc" => "Gửi tin nhắn đến Khách hàng, Nhà cung cấp và Nhân viên.", - "migrate" => "Nâng cấp", - "migrate_desc" => "Cập nhật cơ sở dữ liệu OSPOS.", - "office" => "Văn phòng", - "office_desc" => "Liệt kê các mô đun văn phòng.", - "receivings" => "Nhập hàng", - "receivings_desc" => "Xử lý đặt hàng.", - "reports" => "Báo cáo", - "reports_desc" => "Xem và tạo Báo cáo.", - "sales" => "Bán hàng", - "sales_desc" => "Xử lý Bán và Trả hàng.", - "suppliers" => "Nhà cung cấp", - "suppliers_desc" => "Thêm, Cập nhật, Xóa và Tìm kiếm Nhà cung cấp.", - "taxes" => "Thuế", - "taxes_desc" => "Cấu hình Thuế bán hàng.", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "Thuộc tính", + "attributes_desc" => "Thêm, Cập nhật, Xóa và Tìm kiếm các thuộc tính.", + "both" => "Cả hai", + "cashups" => "Tiền mặt", + "cashups_desc" => "Thêm, cập nhật, xóa và tìm kiếm về tiền mặt.", + "config" => "Cấu hình", + "config_desc" => "Thay đổi cấu hình của OSPOS.", + "customers" => "Khách hàng", + "customers_desc" => "Thêm, Cập nhật, Xóa và Tìm kiếm Khách hàng.", + "employees" => "Nhân viên", + "employees_desc" => "Thêm, Cập nhật, Xóa và Tìm kiếm Nhân viên.", + "expenses" => "Chi phí", + "expenses_categories" => "Phân loại Chi phí", + "expenses_categories_desc" => "Thêm, Cập nhật, Xóa và Tìm kiếm các Thể loại Chi phí.", + "expenses_desc" => "Thêm, Cập nhật, Xóa và Tìm kiếm Chi phí.", + "giftcards" => "Thẻ quà tặng", + "giftcards_desc" => "Thêm, Cập nhật, Xóa và Tìm kiếm Thẻ quà tặng.", + "home" => "Trang chủ", + "home_desc" => "Liệt kê các mô đun chính.", + "item_kits" => "Gói hàng hóa", + "item_kits_desc" => "Thêm, Cập nhật, Xóa và Tìm kiếm Gói hàng hóa.", + "items" => "Hàng hóa", + "items_desc" => "Thêm, Cập nhật, Xóa và Tìm kiếm Hàng hóa.", + "messages" => "Nhắn tin", + "messages_desc" => "Gửi tin nhắn đến Khách hàng, Nhà cung cấp và Nhân viên.", + "migrate" => "Nâng cấp", + "migrate_desc" => "Cập nhật cơ sở dữ liệu OSPOS.", + "office" => "Văn phòng", + "office_desc" => "Liệt kê các mô đun văn phòng.", + "receivings" => "Nhập hàng", + "receivings_desc" => "Xử lý đặt hàng.", + "reports" => "Báo cáo", + "reports_desc" => "Xem và tạo Báo cáo.", + "sales" => "Bán hàng", + "sales_desc" => "Xử lý Bán và Trả hàng.", + "suppliers" => "Nhà cung cấp", + "suppliers_desc" => "Thêm, Cập nhật, Xóa và Tìm kiếm Nhà cung cấp.", + "taxes" => "Thuế", + "taxes_desc" => "Cấu hình Thuế bán hàng.", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/vi/Receivings.php b/app/Language/vi/Receivings.php index de91719ff..5d18fa80d 100644 --- a/app/Language/vi/Receivings.php +++ b/app/Language/vi/Receivings.php @@ -1,58 +1,58 @@ "", - "cancel_receiving" => "Hủy", - "cannot_be_deleted" => "Gặp lỗi khi xóa đơn nhập hàng.", - "comments" => "Ghi chú", - "complete_receiving" => "Kết thúc", - "confirm_cancel_receiving" => "Bạn có chắc chắn muốn làm trống đơn nhập hàng này? Mọi thông tin sẽ bị xóa.", - "confirm_delete" => "Bạn có chắc muốn xóa đơn nhập hàng này? Thao tác này không thể hoàn lại.", - "confirm_finish_receiving" => "Bạn có chắc muốn lưu đơn nhập hàng này? Thao tác này không thể hoàn lại.", - "confirm_restore" => "", - "cost" => "Chi phí", - "daily" => "", - "date" => "Ngày nhập hàng", - "date_required" => "Ngày phải được nhập theo định dạng.", - "date_type" => "Trường Ngày tháng là bắt buộc.", - "delete_entire_sale" => "Xóa toàn bộ lần bán hàng", - "discount" => "Giảm giá %", - "edit" => "Sửa", - "edit_sale" => "Sửa đơn nhập hàng", - "employee" => "Nhân viên", - "error_editing_item" => "Gặp lỗi khi sửa hàng hóa.", - "error_requisition" => "Không thể chuyển tồn kho từ hay đến một kho cùng địa điểm.", - "find_or_scan_item" => "Tìm hay quét Hàng hóa", - "find_or_scan_item_or_receipt" => "Tìm hay quét Hàng hóa hay Biên lai", - "id" => "Mã đơn nhập hàng", - "item_name" => "Tên Hàng hóa", - "mode" => "Chế độ nhập hàng", - "new_supplier" => "Nhà cung cấp mới", - "one_or_multiple" => "nhập hàng", - "print_after_sale" => "In sau khi Bán hàng", - "quantity" => "Số lượng", - "receipt" => "Biên lai nhập hàng", - "receipt_number" => "Đơn nhập hàng #", - "receiving" => "Nhập hàng", - "reference" => "Tham chiếu", - "register" => "Nhập hàng hóa", - "requisition" => "Yêu cầu", - "return" => "Trả hàng", - "select_supplier" => "Chọn nhà cung cấp (Tùy chọn)", - "ship_pack" => "Gói vận chuyển", - "start_typing_supplier_name" => "Bắt đầu bằng cách gõ tên của nhà cung cấp...", - "stock" => "Kho", - "stock_destination" => "Kho đích", - "stock_locaiton" => "Vị trí kho", - "stock_source" => "Kho nguồn", - "successfully_deleted" => "Bạn đã xóa thành công", - "successfully_updated" => "Bạn đã cập nhật Nhập hàng thành công", - "supplier" => "Nhà cung cấp", - "supplier_address" => "Địa chỉ", - "supplier_email" => "Thư điện tử", - "supplier_location" => "Vị trí", - "total" => "Tổng cộng", - "transaction_failed" => "Nhận các giao dịch gặp lỗi.", - "unable_to_add_item" => "Hàng hóa thêm vào Nhập hàng gặp lỗi.", - "unsuccessfully_updated" => "Gặp lỗi khi cập nhật nhập hàng.", - "update" => "Cập nhật", + "amount_due" => "", + "cancel_receiving" => "Hủy", + "cannot_be_deleted" => "Gặp lỗi khi xóa đơn nhập hàng.", + "comments" => "Ghi chú", + "complete_receiving" => "Kết thúc", + "confirm_cancel_receiving" => "Bạn có chắc chắn muốn làm trống đơn nhập hàng này? Mọi thông tin sẽ bị xóa.", + "confirm_delete" => "Bạn có chắc muốn xóa đơn nhập hàng này? Thao tác này không thể hoàn lại.", + "confirm_finish_receiving" => "Bạn có chắc muốn lưu đơn nhập hàng này? Thao tác này không thể hoàn lại.", + "confirm_restore" => "", + "cost" => "Chi phí", + "daily" => "", + "date" => "Ngày nhập hàng", + "date_required" => "Ngày phải được nhập theo định dạng.", + "date_type" => "Trường Ngày tháng là bắt buộc.", + "delete_entire_sale" => "Xóa toàn bộ lần bán hàng", + "discount" => "Giảm giá %", + "edit" => "Sửa", + "edit_sale" => "Sửa đơn nhập hàng", + "employee" => "Nhân viên", + "error_editing_item" => "Gặp lỗi khi sửa hàng hóa.", + "error_requisition" => "Không thể chuyển tồn kho từ hay đến một kho cùng địa điểm.", + "find_or_scan_item" => "Tìm hay quét Hàng hóa", + "find_or_scan_item_or_receipt" => "Tìm hay quét Hàng hóa hay Biên lai", + "id" => "Mã đơn nhập hàng", + "item_name" => "Tên Hàng hóa", + "mode" => "Chế độ nhập hàng", + "new_supplier" => "Nhà cung cấp mới", + "one_or_multiple" => "nhập hàng", + "print_after_sale" => "In sau khi Bán hàng", + "quantity" => "Số lượng", + "receipt" => "Biên lai nhập hàng", + "receipt_number" => "Đơn nhập hàng #", + "receiving" => "Nhập hàng", + "reference" => "Tham chiếu", + "register" => "Nhập hàng hóa", + "requisition" => "Yêu cầu", + "return" => "Trả hàng", + "select_supplier" => "Chọn nhà cung cấp (Tùy chọn)", + "ship_pack" => "Gói vận chuyển", + "start_typing_supplier_name" => "Bắt đầu bằng cách gõ tên của nhà cung cấp...", + "stock" => "Kho", + "stock_destination" => "Kho đích", + "stock_locaiton" => "Vị trí kho", + "stock_source" => "Kho nguồn", + "successfully_deleted" => "Bạn đã xóa thành công", + "successfully_updated" => "Bạn đã cập nhật Nhập hàng thành công", + "supplier" => "Nhà cung cấp", + "supplier_address" => "Địa chỉ", + "supplier_email" => "Thư điện tử", + "supplier_location" => "Vị trí", + "total" => "Tổng cộng", + "transaction_failed" => "Nhận các giao dịch gặp lỗi.", + "unable_to_add_item" => "Hàng hóa thêm vào Nhập hàng gặp lỗi.", + "unsuccessfully_updated" => "Gặp lỗi khi cập nhật nhập hàng.", + "update" => "Cập nhật", ]; diff --git a/app/Language/vi/Reports.php b/app/Language/vi/Reports.php index 82c9b212c..aed87fbe6 100644 --- a/app/Language/vi/Reports.php +++ b/app/Language/vi/Reports.php @@ -1,148 +1,148 @@ "Tất cả", - "authority" => "Thẩm quyền", - "canceled" => "Đã hủy", - "categories" => "Thể loại", - "categories_summary_report" => "Báo cáo tổng thể thể loại", - "category" => "Thể loại", - "code_canceled" => "CNL", - "code_invoice" => "INV", - "code_pos" => "POS", - "code_quote" => "Q", - "code_return" => "TrH", - "code_type" => "Kiểu", - "code_work_order" => "W/O", - "comments" => "Ghi chú", - "commission" => "", - "complete" => "Bán và Trả hoàn tất", - "completed_sales" => "Bán hoàn tất", - "confirm_delete" => "Bạn có thực sự muốn xóa các mục tin đã chọn?", - "confirm_restore" => "Bạn chắc chắn muốn hoàn lại các mục được chọn không?", - "cost" => "Bán buôn", - "cost_price" => "Giá bán buôn", - "count" => "Số lượng", - "customer" => "Khách hàng", - "customers" => "Khách hàng", - "customers_summary_report" => "Báo cáo tổng thể Khách hàng", - "date" => "Ngày tháng", - "date_range" => "Phạm vi Ngày", - "description" => "Mô tả", - "detailed_receivings_report" => "Báo cáo Nhập hàng chi tiết", - "detailed_receivings_report_input" => "", - "detailed_reports" => "Báo cáo chi tiết", - "detailed_requisition_report" => "", - "detailed_sales_report" => "Báo cáo Giao dịch chi tiết", - "discount" => "Giảm giá", - "discount_fixed" => "Giảm giá cố định", - "discount_percent" => "Phần trăm giảm giá", - "discount_type" => "Kiểu giảm giá", - "discounts" => "Giảm giá", - "discounts_summary_report" => "Báo cáo tổng thể Giảm giá", - "earned" => "Điểm tích lũy", - "employee" => "Nhân viên", - "employees" => "Nhân viên", - "employees_summary_report" => "Báo cáo tổng thể theo Nhân viên", - "expenses" => "Chi phí", - "expenses_amount" => "Tổng số", - "expenses_categories" => "Chi phí", - "expenses_categories_summary_report" => "Báo cáo tổng thể Thể loại chi phí", - "expenses_category" => "Thể loại", - "expenses_payment_amount" => "", - "expenses_tax_amount" => "Thuế", - "expenses_total_amount" => "Số tiền tổng cộng", - "expenses_total_tax_amount" => "Thuế tổng cộng", - "graphical_reports" => "Báo cáo bằng đồ thị", - "inventory" => "Tồn kho", - "inventory_low" => "Tồn kho thấp", - "inventory_low_report" => "Báo cáo tồn kho thấp", - "inventory_reports" => "Báo cáo tồn kho", - "inventory_summary" => "Tổng hợp tồn kho", - "inventory_summary_report" => "Báo cáo tổng thể Tồn kho", - "item" => "Hàng hóa", - "item_count" => "Lọc số lượng Hàng hóa", - "item_name" => "Tên Hàng hóa", - "item_number" => "Mã vạch", - "items" => "Hàng hóa", - "items_purchased" => "Hàng hóa đã đặt mua", - "items_received" => "Hàng hóa đã nhập", - "items_summary_report" => "Báo cáo tổng thể Hàng hóa", - "jurisdiction" => "Quyền lực pháp lý", - "low_inventory" => "", - "low_inventory_report" => "", - "low_sell_quantity" => "Slượng bán thấp", - "more_than_zero" => "Lớn hơn 0", - "name" => "Tên", - "no_reports_to_display" => "Không có hàng hóa để hiển thị.", - "payment_type" => "Kiểu thanh toán", - "payments" => "Thanh toán", - "payments_summary_report" => "Báo cáo tổng thể Thanh toán", - "profit" => "Lợi nhuận", - "quantity" => "Số lượng", - "quantity_purchased" => "Số lượng đã đặt mua", - "quotes" => "Báo giá", - "received_by" => "Nhập hàng bởi", - "receiving_id" => "Mã nhập hàng", - "receiving_type" => "Kiểu nhập hàng", - "receivings" => "Nhập hàng", - "reorder_level" => "Mức đặt mua bổ xung", - "report" => "Báo cáo", - "report_input" => "Đầu vào báo cáo", - "reports" => "Báo cáo", - "requisition" => "", - "requisition_by" => "", - "requisition_id" => "", - "requisition_item" => "", - "requisition_item_quantity" => "", - "requisition_related_item" => "", - "requisition_related_item_total_quantity" => "", - "requisition_related_item_unit_quantity" => "", - "requisitions" => "Yêu cầu", - "returns" => "Trả hàng", - "revenue" => "Doanh thu", - "sale_id" => "Mã Giao dịch", - "sale_type" => "Kiểu giao dịch", - "sales" => "Giao dịch", - "sales_amount" => "Tổng giao dịch", - "sales_summary_report" => "Báo cáo tổng thể Giao dịch", - "sales_taxes" => "Thuế bán hàng", - "sales_taxes_summary_report" => "Báo cáo tổng thể về thuế bán hàng", - "serial_number" => "Số sê-ri", - "service_charge" => "", - "sold_by" => "Bán bởi", - "sold_items" => "", - "sold_to" => "Bán cho", - "stock_location" => "Vị trí kho", - "sub_total_value" => "Tổng phụ", - "subtotal" => "Tổng phụ", - "summary_reports" => "Báo cáo tổng thể", - "supplied_by" => "Cung cấp bởi", - "supplier" => "Nhà cung cấp", - "suppliers" => "Nhà cung cấp", - "suppliers_summary_report" => "Báo cáo tổng thể Nhà cung cấp", - "tax" => "Thuế", - "tax_category" => "Thể loại thuế", - "tax_name" => "", - "tax_percent" => "Phần trăm Thuế", - "tax_rate" => "Tỷ suất thuế", - "taxes" => "Thuế", - "taxes_summary_report" => "Báo cáo tổng thể Thuế", - "total" => "Tổng cộng", - "total_inventory_value" => "Giá trị tồn kho tổng cộng", - "total_low_sell_quantity" => "Tổng số lượng hàng bán ít", - "total_quantity" => "Số lượng tổng cộng", - "total_retail" => "Giá trị bán lẻ Inv. tổng cộng", - "trans_amount" => "Tổng số giao dịch", - "trans_due" => "Trả chậm", - "trans_group" => "Nhóm giao dịch", - "trans_nopay_sales" => "Bán hàng không thanh toán", - "trans_payments" => "Thanh toán", - "trans_refunded" => "Trả lại", - "trans_sales" => "Bán hàng", - "trans_type" => "Kiểu giao dịch", - "type" => "Kiểu", - "unit_price" => "Giá bán lẻ", - "used" => "Các điểm bán hàng đã dùng", - "work_orders" => "Giấy giao việc", - "zero_and_less" => "Không hay nhỏ hơn", + "all" => "Tất cả", + "authority" => "Thẩm quyền", + "canceled" => "Đã hủy", + "categories" => "Thể loại", + "categories_summary_report" => "Báo cáo tổng thể thể loại", + "category" => "Thể loại", + "code_canceled" => "CNL", + "code_invoice" => "INV", + "code_pos" => "POS", + "code_quote" => "Q", + "code_return" => "TrH", + "code_type" => "Kiểu", + "code_work_order" => "W/O", + "comments" => "Ghi chú", + "commission" => "", + "complete" => "Bán và Trả hoàn tất", + "completed_sales" => "Bán hoàn tất", + "confirm_delete" => "Bạn có thực sự muốn xóa các mục tin đã chọn?", + "confirm_restore" => "Bạn chắc chắn muốn hoàn lại các mục được chọn không?", + "cost" => "Bán buôn", + "cost_price" => "Giá bán buôn", + "count" => "Số lượng", + "customer" => "Khách hàng", + "customers" => "Khách hàng", + "customers_summary_report" => "Báo cáo tổng thể Khách hàng", + "date" => "Ngày tháng", + "date_range" => "Phạm vi Ngày", + "description" => "Mô tả", + "detailed_receivings_report" => "Báo cáo Nhập hàng chi tiết", + "detailed_receivings_report_input" => "", + "detailed_reports" => "Báo cáo chi tiết", + "detailed_requisition_report" => "", + "detailed_sales_report" => "Báo cáo Giao dịch chi tiết", + "discount" => "Giảm giá", + "discount_fixed" => "Giảm giá cố định", + "discount_percent" => "Phần trăm giảm giá", + "discount_type" => "Kiểu giảm giá", + "discounts" => "Giảm giá", + "discounts_summary_report" => "Báo cáo tổng thể Giảm giá", + "earned" => "Điểm tích lũy", + "employee" => "Nhân viên", + "employees" => "Nhân viên", + "employees_summary_report" => "Báo cáo tổng thể theo Nhân viên", + "expenses" => "Chi phí", + "expenses_amount" => "Tổng số", + "expenses_categories" => "Chi phí", + "expenses_categories_summary_report" => "Báo cáo tổng thể Thể loại chi phí", + "expenses_category" => "Thể loại", + "expenses_payment_amount" => "", + "expenses_tax_amount" => "Thuế", + "expenses_total_amount" => "Số tiền tổng cộng", + "expenses_total_tax_amount" => "Thuế tổng cộng", + "graphical_reports" => "Báo cáo bằng đồ thị", + "inventory" => "Tồn kho", + "inventory_low" => "Tồn kho thấp", + "inventory_low_report" => "Báo cáo tồn kho thấp", + "inventory_reports" => "Báo cáo tồn kho", + "inventory_summary" => "Tổng hợp tồn kho", + "inventory_summary_report" => "Báo cáo tổng thể Tồn kho", + "item" => "Hàng hóa", + "item_count" => "Lọc số lượng Hàng hóa", + "item_name" => "Tên Hàng hóa", + "item_number" => "Mã vạch", + "items" => "Hàng hóa", + "items_purchased" => "Hàng hóa đã đặt mua", + "items_received" => "Hàng hóa đã nhập", + "items_summary_report" => "Báo cáo tổng thể Hàng hóa", + "jurisdiction" => "Quyền lực pháp lý", + "low_inventory" => "", + "low_inventory_report" => "", + "low_sell_quantity" => "Slượng bán thấp", + "more_than_zero" => "Lớn hơn 0", + "name" => "Tên", + "no_reports_to_display" => "Không có hàng hóa để hiển thị.", + "payment_type" => "Kiểu thanh toán", + "payments" => "Thanh toán", + "payments_summary_report" => "Báo cáo tổng thể Thanh toán", + "profit" => "Lợi nhuận", + "quantity" => "Số lượng", + "quantity_purchased" => "Số lượng đã đặt mua", + "quotes" => "Báo giá", + "received_by" => "Nhập hàng bởi", + "receiving_id" => "Mã nhập hàng", + "receiving_type" => "Kiểu nhập hàng", + "receivings" => "Nhập hàng", + "reorder_level" => "Mức đặt mua bổ xung", + "report" => "Báo cáo", + "report_input" => "Đầu vào báo cáo", + "reports" => "Báo cáo", + "requisition" => "", + "requisition_by" => "", + "requisition_id" => "", + "requisition_item" => "", + "requisition_item_quantity" => "", + "requisition_related_item" => "", + "requisition_related_item_total_quantity" => "", + "requisition_related_item_unit_quantity" => "", + "requisitions" => "Yêu cầu", + "returns" => "Trả hàng", + "revenue" => "Doanh thu", + "sale_id" => "Mã Giao dịch", + "sale_type" => "Kiểu giao dịch", + "sales" => "Giao dịch", + "sales_amount" => "Tổng giao dịch", + "sales_summary_report" => "Báo cáo tổng thể Giao dịch", + "sales_taxes" => "Thuế bán hàng", + "sales_taxes_summary_report" => "Báo cáo tổng thể về thuế bán hàng", + "serial_number" => "Số sê-ri", + "service_charge" => "", + "sold_by" => "Bán bởi", + "sold_items" => "", + "sold_to" => "Bán cho", + "stock_location" => "Vị trí kho", + "sub_total_value" => "Tổng phụ", + "subtotal" => "Tổng phụ", + "summary_reports" => "Báo cáo tổng thể", + "supplied_by" => "Cung cấp bởi", + "supplier" => "Nhà cung cấp", + "suppliers" => "Nhà cung cấp", + "suppliers_summary_report" => "Báo cáo tổng thể Nhà cung cấp", + "tax" => "Thuế", + "tax_category" => "Thể loại thuế", + "tax_name" => "", + "tax_percent" => "Phần trăm Thuế", + "tax_rate" => "Tỷ suất thuế", + "taxes" => "Thuế", + "taxes_summary_report" => "Báo cáo tổng thể Thuế", + "total" => "Tổng cộng", + "total_inventory_value" => "Giá trị tồn kho tổng cộng", + "total_low_sell_quantity" => "Tổng số lượng hàng bán ít", + "total_quantity" => "Số lượng tổng cộng", + "total_retail" => "Giá trị bán lẻ Inv. tổng cộng", + "trans_amount" => "Tổng số giao dịch", + "trans_due" => "Trả chậm", + "trans_group" => "Nhóm giao dịch", + "trans_nopay_sales" => "Bán hàng không thanh toán", + "trans_payments" => "Thanh toán", + "trans_refunded" => "Trả lại", + "trans_sales" => "Bán hàng", + "trans_type" => "Kiểu giao dịch", + "type" => "Kiểu", + "unit_price" => "Giá bán lẻ", + "used" => "Các điểm bán hàng đã dùng", + "work_orders" => "Giấy giao việc", + "zero_and_less" => "Không hay nhỏ hơn", ]; diff --git a/app/Language/vi/Sales.php b/app/Language/vi/Sales.php index d64cfce82..c2aa6ad4b 100644 --- a/app/Language/vi/Sales.php +++ b/app/Language/vi/Sales.php @@ -1,224 +1,224 @@ "Các điểm sẵn có", - "rewards_package" => "Điểm thưởng", - "rewards_remaining_balance" => "Giá trị còn lại của điểm thưởng là ", - "account_number" => "Tài khoản #", - "add_payment" => "Thêm thanh toán", - "amount_due" => "Số còn lại phải thanh toán", - "amount_tendered" => "Số tiền thanh toán", - "authorized_signature" => "Chữ ký ủy quyền", - "cancel_sale" => "Thôi", - "cash" => "Tiền mặt", - "cash_1" => "", - "cash_2" => "", - "cash_3" => "", - "cash_4" => "", - "cash_adjustment" => "Điều chỉnh tiền mặt", - "cash_deposit" => "Số dư tiền mặt", - "cash_filter" => "Tiền mặt", - "change_due" => "Tiền thối lại", - "change_price" => "Thay đổi giá bán", - "check" => "Séc", - "check_balance" => "Phần còn lại séc", - "check_filter" => "Séc", - "close" => "", - "comment" => "Ghi chú", - "comments" => "Ghi chú", - "company_name" => "", - "complete" => "", - "complete_sale" => "Hoàn thành", - "confirm_cancel_sale" => "Bạn có chắc muốn xóa trắng lần bán hàng này? Mọi hàng hóa sẽ bị xóa sạch.", - "confirm_delete" => "Bạn chắc chắn muốn xóa các lần bán hàng được chọn không?", - "confirm_restore" => "Bạn chắc chắn muốn hoàn lại các lần bán hàng được chọn không?", - "credit" => "Thẻ tín dụng", - "credit_deposit" => "Số dư tiền gửi", - "credit_filter" => "Thẻ tín dụng", - "current_table" => "", - "customer" => "Khách hàng", - "customer_address" => "Địa chỉ", - "customer_discount" => "Giảm giá", - "customer_email" => "Thư điện tử", - "customer_location" => "Vị trí", - "customer_mailchimp_status" => "Trạng thái tài khoản Mailchimp", - "customer_optional" => "(Tùy chọn)", - "customer_required" => "(Bắt buộc)", - "customer_total" => "Tổng cộng", - "customer_total_spent" => "", - "daily_sales" => "", - "date" => "Ngày bán", - "date_range" => "Phạm vi Ngày", - "date_required" => "Ngày phải được nhập theo định dạng.", - "date_type" => "Trường Ngày tháng là bắt buộc.", - "debit" => "Thẻ ghi nợ", - "debit_filter" => "", - "delete" => "Cho phép xóa", - "delete_confirmation" => "Bạn có chắc muốn xóa lần nhập bán hàng? Thao tác này không thể hoàn lại.", - "delete_entire_sale" => "Xóa toàn bộ đơn bán hàng", - "delete_successful" => "Đã xóa thành công lần bán hàng.", - "delete_unsuccessful" => "Gặp lỗi khi xóa đơn bán hàng.", - "description_abbrv" => "Ggiá.", - "discard" => "Hủy", - "discard_quote" => "", - "discount" => "Ggiá %", - "discount_included" => "% Giảm giá", - "discount_short" => "%", - "due" => "Trả chậm", - "due_filter" => "Trả chậm", - "edit" => "Sửa", - "edit_item" => "Sửa hàng hóa", - "edit_sale" => "Sửa bán hàng", - "email_receipt" => "Biên lai thư", - "employee" => "Nhân viên", - "entry" => "Mục nhập", - "error_editing_item" => "Lỗi sửa hàng hóa", - "find_or_scan_item" => "Tìm hay quét Hàng hóa", - "find_or_scan_item_or_receipt" => "Tìm hay quét Hàng hóa hay Biên lai", - "giftcard" => "Thẻ quà tặng", - "giftcard_balance" => "Số thẻ quà tặng còn lại", - "giftcard_filter" => "", - "giftcard_number" => "Số Thẻ quà tặng", - "group_by_category" => "Gộp theo Danh mục", - "group_by_type" => "Gộp theo kiểu", - "hsn" => "HSN", - "id" => "Mã bán hàng", - "include_prices" => "Bao gồm Giá?", - "invoice" => "Hóa đơn", - "invoice_confirm" => "Hóa đơn sẽ được gửi đến", - "invoice_enable" => "Tạo hóa dơn", - "invoice_filter" => "Hóa đơn", - "invoice_no_email" => "Khách hàng này không có địa chỉ thư điện tử hợp lệ.", - "invoice_number" => "Hóa đơn #", - "invoice_number_duplicate" => "Số Hóa đơn phải duy nhất.", - "invoice_sent" => "Gửi Hóa đơn đến", - "invoice_total" => "Tổng hóa đơn", - "invoice_type_custom_invoice" => "Hóa đơn tùy chọn (custom_invoice.php)", - "invoice_type_custom_tax_invoice" => "Hóa đơn thuế tự chọn (custom_tax_invoice.php)", - "invoice_type_invoice" => "Hóa đơn (invoice.php)", - "invoice_type_tax_invoice" => "Hóa đơn thuế (tax_invoice.php)", - "invoice_unsent" => "Gặp lỗi khi gửi Hóa đơn cho", - "invoice_update" => "Kiểm lại", - "item_insufficient_of_stock" => "Không đủ hàng tồn cho mặt hàng này.", - "item_name" => "Tên Hàng hóa", - "item_number" => "Hàng hóa #", - "item_out_of_stock" => "Hết hàng trong kho.", - "key_browser" => "Phím tắt hữu ích", - "key_cancel" => "Hủy báo giá/hóa đơn/bán hàng hiện tại", - "key_customer_search" => "Tìm khách hàng", - "key_finish_quote" => "Kết thúc báo giá/hóa đơn mà không cần thanh toán", - "key_finish_sale" => "Thanh toán và hoàn thành hóa đơn/bán hàng", - "key_full" => "Toàn màn hình", - "key_function" => "Function", - "key_help" => "Phím tắt", - "key_help_modal" => "Mở cửa sổ phím tắt", - "key_in" => "Phòng to", - "key_item_search" => "Tìm hàng hóa", - "key_out" => "Thu nhỏ", - "key_payment" => "Thêm thanh toán", - "key_print" => "In trang hiện tại", - "key_restore" => "Khôi phục mức thu/phóng mặc định", - "key_search" => "Tìm báo cáo", - "key_suspend" => "Tạm hoãn đơn hàng", - "key_suspended" => "Xem đơn hàng tạm hoãn", - "key_system" => "Phím tắt hệ thống", - "key_tendered" => "Edit Amount Tendered", - "key_title" => "Phím tắt bán hàng", - "mc" => "", - "mode" => "Chế độ đăng ký", - "must_enter_numeric" => "Số tiền thanh toán phải là dạng số.", - "must_enter_numeric_giftcard" => "Số Thẻ quà tặng phải là dạng số.", - "new_customer" => "Khách hàng mới", - "new_item" => "Hàng hóa mới", - "no_description" => "Không", - "no_filter" => "Tất cả", - "no_items_in_cart" => "Không có Hàng hóa trong rổ hàng.", - "no_sales_to_display" => "Không có lần bán hàng để hiển thị.", - "none_selected" => "Bạn chưa chọn bất kỳ một lần bán hàng nào để mà xóa.", - "nontaxed_ind" => "", - "not_authorized" => "Thao tác này không được phép.", - "one_or_multiple" => "Bán hàng", - "payment" => "Phương thức thanh toán", - "payment_amount" => "Tổng số", - "payment_not_cover_total" => "Chưa thanh toán đủ đơn hàng.", - "payment_type" => "Kiểu", - "payments" => "", - "payments_total" => "Đã thanh toán", - "price" => "Giá", - "print_after_sale" => "In sau khi Bán hàng", - "quantity" => "Số lượng", - "quantity_less_than_reorder_level" => "Cảnh báo: Số lượng mong muốn dưới Mức đặt mua bổ xung cho hàng hóa đó.", - "quantity_less_than_zero" => "Cảnh báo: Số lượng mong muốn không đủ. Bạn vẫn có thể xử lý đơn hàng, nhưng hãy kiểm toán tồn kho của bạn.", - "quantity_of_items" => "Số lượng của Hàng hóa {0}", - "quote" => "Báo giá", - "quote_number" => "Số Báo giá", - "quote_number_duplicate" => "Số Báo giá phải là duy nhất.", - "quote_sent" => "Báo giá gửi đến", - "quote_unsent" => "Gặp lỗi khi gửi báo giá đến", - "receipt" => "Biên lai các lần bán hàng", - "receipt_no_email" => "Khách hàng này có địa chỉ thư điện tử không hợp lệ.", - "receipt_number" => "Bán hàng #", - "receipt_sent" => "Biên lai gửi đến", - "receipt_unsent" => "Gặp lỗi khi gửi biên lai đến", - "refund" => "Phương thức hoàn tiền", - "register" => "Nhập đơn bán hàng", - "remove_customer" => "Xóa bỏ khách hàng", - "remove_discount" => "", - "return" => "Trả hàng", - "rewards" => "Điểm thưởng", - "rewards_balance" => "Số Điểm thưởng còn lại", - "sale" => "Bán hàng", - "sale_by_invoice" => "Bán bằng Hóa đơn", - "sale_for_customer" => "Khách hàng:", - "sale_time" => "Thời gian", - "sales_tax" => "Thuế các lần bán hàng", - "sales_total" => "", - "select_customer" => "Chọn Khách hàng", - "send_invoice" => "Gửi hóa đơn", - "send_quote" => "Gửi báo giá", - "send_receipt" => "Gửi biên lai", - "send_work_order" => "Gửi Giấy giao việc", - "serial" => "Số sê-ri", - "service_charge" => "", - "show_due" => "", - "show_invoice" => "Hiển thị hóa đơn", - "show_receipt" => "Hiển thị biên lai", - "start_typing_customer_name" => "Bắt đầu gõ chi tiết khách hàng...", - "start_typing_item_name" => "Bắt đầu gõ tên hàng hóa hoặc quét mã vạch...", - "stock" => "Kho", - "stock_location" => "Vị trí kho", - "sub_total" => "Tổng trước thuế", - "successfully_deleted" => "Bạn đã xóa thành công", - "successfully_restored" => "Bạn đã khôi phục lại đơn hàng", - "successfully_suspended_sale" => "Đã tạm hoãn thành công lần bán hàng.", - "successfully_updated" => "Đã cập nhật thành công lần bán hàng.", - "suspend_sale" => "Tạm hoãn", - "suspended_doc_id" => "Tài liệu", - "suspended_sale_id" => "MÃ SỐ", - "suspended_sales" => "Đơn hàng tạm hoãn", - "table" => "Bàn", - "takings" => "Đơn hàng trong ngày", - "tax" => "Thuế", - "tax_id" => "Mã số thuế", - "tax_invoice" => "Hóa đơn thuế", - "tax_percent" => "Thuế %", - "taxed_ind" => "T", - "total" => "Tổng", - "total_tax_exclusive" => "Gồm thuế", - "transaction_failed" => "Gặp lỗi khi giao dịch bán hàng.", - "unable_to_add_item" => "Gặp lỗi khi thêm hàng hóa vào đơn hàng", - "unsuccessfully_deleted" => "Gặp lỗi khi xóa các lần bán hàng.", - "unsuccessfully_restored" => "Gặp lỗi khi hoàn lại các lần bán hàng.", - "unsuccessfully_suspended_sale" => "Gặp lỗi khi tạm ngừng lần bán hàng.", - "unsuccessfully_updated" => "Gặp lỗi khi cập nhật lần bán hàng.", - "unsuspend" => "Hủy tạm hoãn", - "unsuspend_and_delete" => "Thao tác", - "update" => "Cập nhật", - "upi" => "UPI", - "visa" => "", - "wholesale" => "", - "work_order" => "Giấy giao việc", - "work_order_number" => "Số giấy giao việc", - "work_order_number_duplicate" => "Số giấy giao việc phải là duy nhất.", - "work_order_sent" => "Gửi Giấy giao việc cho", - "work_order_unsent" => "Gặp lỗi khi gửi Giấy giao việc cho", + "customers_available_points" => "Các điểm sẵn có", + "rewards_package" => "Điểm thưởng", + "rewards_remaining_balance" => "Giá trị còn lại của điểm thưởng là ", + "account_number" => "Tài khoản #", + "add_payment" => "Thêm thanh toán", + "amount_due" => "Số còn lại phải thanh toán", + "amount_tendered" => "Số tiền thanh toán", + "authorized_signature" => "Chữ ký ủy quyền", + "cancel_sale" => "Thôi", + "cash" => "Tiền mặt", + "cash_1" => "", + "cash_2" => "", + "cash_3" => "", + "cash_4" => "", + "cash_adjustment" => "Điều chỉnh tiền mặt", + "cash_deposit" => "Số dư tiền mặt", + "cash_filter" => "Tiền mặt", + "change_due" => "Tiền thối lại", + "change_price" => "Thay đổi giá bán", + "check" => "Séc", + "check_balance" => "Phần còn lại séc", + "check_filter" => "Séc", + "close" => "", + "comment" => "Ghi chú", + "comments" => "Ghi chú", + "company_name" => "", + "complete" => "", + "complete_sale" => "Hoàn thành", + "confirm_cancel_sale" => "Bạn có chắc muốn xóa trắng lần bán hàng này? Mọi hàng hóa sẽ bị xóa sạch.", + "confirm_delete" => "Bạn chắc chắn muốn xóa các lần bán hàng được chọn không?", + "confirm_restore" => "Bạn chắc chắn muốn hoàn lại các lần bán hàng được chọn không?", + "credit" => "Thẻ tín dụng", + "credit_deposit" => "Số dư tiền gửi", + "credit_filter" => "Thẻ tín dụng", + "current_table" => "", + "customer" => "Khách hàng", + "customer_address" => "Địa chỉ", + "customer_discount" => "Giảm giá", + "customer_email" => "Thư điện tử", + "customer_location" => "Vị trí", + "customer_mailchimp_status" => "Trạng thái tài khoản Mailchimp", + "customer_optional" => "(Tùy chọn)", + "customer_required" => "(Bắt buộc)", + "customer_total" => "Tổng cộng", + "customer_total_spent" => "", + "daily_sales" => "", + "date" => "Ngày bán", + "date_range" => "Phạm vi Ngày", + "date_required" => "Ngày phải được nhập theo định dạng.", + "date_type" => "Trường Ngày tháng là bắt buộc.", + "debit" => "Thẻ ghi nợ", + "debit_filter" => "", + "delete" => "Cho phép xóa", + "delete_confirmation" => "Bạn có chắc muốn xóa lần nhập bán hàng? Thao tác này không thể hoàn lại.", + "delete_entire_sale" => "Xóa toàn bộ đơn bán hàng", + "delete_successful" => "Đã xóa thành công lần bán hàng.", + "delete_unsuccessful" => "Gặp lỗi khi xóa đơn bán hàng.", + "description_abbrv" => "Ggiá.", + "discard" => "Hủy", + "discard_quote" => "", + "discount" => "Ggiá %", + "discount_included" => "% Giảm giá", + "discount_short" => "%", + "due" => "Trả chậm", + "due_filter" => "Trả chậm", + "edit" => "Sửa", + "edit_item" => "Sửa hàng hóa", + "edit_sale" => "Sửa bán hàng", + "email_receipt" => "Biên lai thư", + "employee" => "Nhân viên", + "entry" => "Mục nhập", + "error_editing_item" => "Lỗi sửa hàng hóa", + "find_or_scan_item" => "Tìm hay quét Hàng hóa", + "find_or_scan_item_or_receipt" => "Tìm hay quét Hàng hóa hay Biên lai", + "giftcard" => "Thẻ quà tặng", + "giftcard_balance" => "Số thẻ quà tặng còn lại", + "giftcard_filter" => "", + "giftcard_number" => "Số Thẻ quà tặng", + "group_by_category" => "Gộp theo Danh mục", + "group_by_type" => "Gộp theo kiểu", + "hsn" => "HSN", + "id" => "Mã bán hàng", + "include_prices" => "Bao gồm Giá?", + "invoice" => "Hóa đơn", + "invoice_confirm" => "Hóa đơn sẽ được gửi đến", + "invoice_enable" => "Tạo hóa dơn", + "invoice_filter" => "Hóa đơn", + "invoice_no_email" => "Khách hàng này không có địa chỉ thư điện tử hợp lệ.", + "invoice_number" => "Hóa đơn #", + "invoice_number_duplicate" => "Số Hóa đơn phải duy nhất.", + "invoice_sent" => "Gửi Hóa đơn đến", + "invoice_total" => "Tổng hóa đơn", + "invoice_type_custom_invoice" => "Hóa đơn tùy chọn (custom_invoice.php)", + "invoice_type_custom_tax_invoice" => "Hóa đơn thuế tự chọn (custom_tax_invoice.php)", + "invoice_type_invoice" => "Hóa đơn (invoice.php)", + "invoice_type_tax_invoice" => "Hóa đơn thuế (tax_invoice.php)", + "invoice_unsent" => "Gặp lỗi khi gửi Hóa đơn cho", + "invoice_update" => "Kiểm lại", + "item_insufficient_of_stock" => "Không đủ hàng tồn cho mặt hàng này.", + "item_name" => "Tên Hàng hóa", + "item_number" => "Hàng hóa #", + "item_out_of_stock" => "Hết hàng trong kho.", + "key_browser" => "Phím tắt hữu ích", + "key_cancel" => "Hủy báo giá/hóa đơn/bán hàng hiện tại", + "key_customer_search" => "Tìm khách hàng", + "key_finish_quote" => "Kết thúc báo giá/hóa đơn mà không cần thanh toán", + "key_finish_sale" => "Thanh toán và hoàn thành hóa đơn/bán hàng", + "key_full" => "Toàn màn hình", + "key_function" => "Function", + "key_help" => "Phím tắt", + "key_help_modal" => "Mở cửa sổ phím tắt", + "key_in" => "Phòng to", + "key_item_search" => "Tìm hàng hóa", + "key_out" => "Thu nhỏ", + "key_payment" => "Thêm thanh toán", + "key_print" => "In trang hiện tại", + "key_restore" => "Khôi phục mức thu/phóng mặc định", + "key_search" => "Tìm báo cáo", + "key_suspend" => "Tạm hoãn đơn hàng", + "key_suspended" => "Xem đơn hàng tạm hoãn", + "key_system" => "Phím tắt hệ thống", + "key_tendered" => "Edit Amount Tendered", + "key_title" => "Phím tắt bán hàng", + "mc" => "", + "mode" => "Chế độ đăng ký", + "must_enter_numeric" => "Số tiền thanh toán phải là dạng số.", + "must_enter_numeric_giftcard" => "Số Thẻ quà tặng phải là dạng số.", + "new_customer" => "Khách hàng mới", + "new_item" => "Hàng hóa mới", + "no_description" => "Không", + "no_filter" => "Tất cả", + "no_items_in_cart" => "Không có Hàng hóa trong rổ hàng.", + "no_sales_to_display" => "Không có lần bán hàng để hiển thị.", + "none_selected" => "Bạn chưa chọn bất kỳ một lần bán hàng nào để mà xóa.", + "nontaxed_ind" => "", + "not_authorized" => "Thao tác này không được phép.", + "one_or_multiple" => "Bán hàng", + "payment" => "Phương thức thanh toán", + "payment_amount" => "Tổng số", + "payment_not_cover_total" => "Chưa thanh toán đủ đơn hàng.", + "payment_type" => "Kiểu", + "payments" => "", + "payments_total" => "Đã thanh toán", + "price" => "Giá", + "print_after_sale" => "In sau khi Bán hàng", + "quantity" => "Số lượng", + "quantity_less_than_reorder_level" => "Cảnh báo: Số lượng mong muốn dưới Mức đặt mua bổ xung cho hàng hóa đó.", + "quantity_less_than_zero" => "Cảnh báo: Số lượng mong muốn không đủ. Bạn vẫn có thể xử lý đơn hàng, nhưng hãy kiểm toán tồn kho của bạn.", + "quantity_of_items" => "Số lượng của Hàng hóa {0}", + "quote" => "Báo giá", + "quote_number" => "Số Báo giá", + "quote_number_duplicate" => "Số Báo giá phải là duy nhất.", + "quote_sent" => "Báo giá gửi đến", + "quote_unsent" => "Gặp lỗi khi gửi báo giá đến", + "receipt" => "Biên lai các lần bán hàng", + "receipt_no_email" => "Khách hàng này có địa chỉ thư điện tử không hợp lệ.", + "receipt_number" => "Bán hàng #", + "receipt_sent" => "Biên lai gửi đến", + "receipt_unsent" => "Gặp lỗi khi gửi biên lai đến", + "refund" => "Phương thức hoàn tiền", + "register" => "Nhập đơn bán hàng", + "remove_customer" => "Xóa bỏ khách hàng", + "remove_discount" => "", + "return" => "Trả hàng", + "rewards" => "Điểm thưởng", + "rewards_balance" => "Số Điểm thưởng còn lại", + "sale" => "Bán hàng", + "sale_by_invoice" => "Bán bằng Hóa đơn", + "sale_for_customer" => "Khách hàng:", + "sale_time" => "Thời gian", + "sales_tax" => "Thuế các lần bán hàng", + "sales_total" => "", + "select_customer" => "Chọn Khách hàng", + "send_invoice" => "Gửi hóa đơn", + "send_quote" => "Gửi báo giá", + "send_receipt" => "Gửi biên lai", + "send_work_order" => "Gửi Giấy giao việc", + "serial" => "Số sê-ri", + "service_charge" => "", + "show_due" => "", + "show_invoice" => "Hiển thị hóa đơn", + "show_receipt" => "Hiển thị biên lai", + "start_typing_customer_name" => "Bắt đầu gõ chi tiết khách hàng...", + "start_typing_item_name" => "Bắt đầu gõ tên hàng hóa hoặc quét mã vạch...", + "stock" => "Kho", + "stock_location" => "Vị trí kho", + "sub_total" => "Tổng trước thuế", + "successfully_deleted" => "Bạn đã xóa thành công", + "successfully_restored" => "Bạn đã khôi phục lại đơn hàng", + "successfully_suspended_sale" => "Đã tạm hoãn thành công lần bán hàng.", + "successfully_updated" => "Đã cập nhật thành công lần bán hàng.", + "suspend_sale" => "Tạm hoãn", + "suspended_doc_id" => "Tài liệu", + "suspended_sale_id" => "MÃ SỐ", + "suspended_sales" => "Đơn hàng tạm hoãn", + "table" => "Bàn", + "takings" => "Đơn hàng trong ngày", + "tax" => "Thuế", + "tax_id" => "Mã số thuế", + "tax_invoice" => "Hóa đơn thuế", + "tax_percent" => "Thuế %", + "taxed_ind" => "T", + "total" => "Tổng", + "total_tax_exclusive" => "Gồm thuế", + "transaction_failed" => "Gặp lỗi khi giao dịch bán hàng.", + "unable_to_add_item" => "Gặp lỗi khi thêm hàng hóa vào đơn hàng", + "unsuccessfully_deleted" => "Gặp lỗi khi xóa các lần bán hàng.", + "unsuccessfully_restored" => "Gặp lỗi khi hoàn lại các lần bán hàng.", + "unsuccessfully_suspended_sale" => "Gặp lỗi khi tạm ngừng lần bán hàng.", + "unsuccessfully_updated" => "Gặp lỗi khi cập nhật lần bán hàng.", + "unsuspend" => "Hủy tạm hoãn", + "unsuspend_and_delete" => "Thao tác", + "update" => "Cập nhật", + "upi" => "UPI", + "visa" => "", + "wholesale" => "", + "work_order" => "Giấy giao việc", + "work_order_number" => "Số giấy giao việc", + "work_order_number_duplicate" => "Số giấy giao việc phải là duy nhất.", + "work_order_sent" => "Gửi Giấy giao việc cho", + "work_order_unsent" => "Gặp lỗi khi gửi Giấy giao việc cho", ]; diff --git a/app/Language/vi/Suppliers.php b/app/Language/vi/Suppliers.php index b8532063d..c64006103 100644 --- a/app/Language/vi/Suppliers.php +++ b/app/Language/vi/Suppliers.php @@ -1,24 +1,24 @@ "Số hiệu tài khoản", - "agency_name" => "Tên đại lý", - "cannot_be_deleted" => "Không thể xóa các Nhà cung cấp đã chọn. Một hay nhiều có Bán hàng.", - "category" => "Thể loại", - "company_name" => "Tên công ty", - "company_name_required" => "Trường tên công ty là bắt buộc.", - "confirm_delete" => "Bạn chắc chắn muốn xóa các Nhà cung cấp được chọn không?", - "confirm_restore" => "Bạn chắc chắn muốn hoàn lại các Nhà cung cấp được chọn không?", - "cost" => "Nhà cung ứng giá", - "error_adding_updating" => "Gặp lỗi khi cập nhật hay thêm Nhà cung cấp.", - "goods" => "Nhà cung ứng hàng hóa", - "new" => "Nhà cung cấp mới", - "none_selected" => "Bạn chưa chọn Nhà cung cấp để xóa.", - "one_or_multiple" => "Nhà cung cấp", - "successful_adding" => "Bạn đã thêm Nhà cung cấp thành công", - "successful_deleted" => "Bạn đã xóa thành công", - "successful_updating" => "Bạn đã cập nhật Nhà cung cấp thành công", - "supplier" => "Nhà cung cấp", - "supplier_id" => "Mã số", - "tax_id" => "Mã số thuế", - "update" => "Cập nhật Nhà cung cấp", + "account_number" => "Số hiệu tài khoản", + "agency_name" => "Tên đại lý", + "cannot_be_deleted" => "Không thể xóa các Nhà cung cấp đã chọn. Một hay nhiều có Bán hàng.", + "category" => "Thể loại", + "company_name" => "Tên công ty", + "company_name_required" => "Trường tên công ty là bắt buộc.", + "confirm_delete" => "Bạn chắc chắn muốn xóa các Nhà cung cấp được chọn không?", + "confirm_restore" => "Bạn chắc chắn muốn hoàn lại các Nhà cung cấp được chọn không?", + "cost" => "Nhà cung ứng giá", + "error_adding_updating" => "Gặp lỗi khi cập nhật hay thêm Nhà cung cấp.", + "goods" => "Nhà cung ứng hàng hóa", + "new" => "Nhà cung cấp mới", + "none_selected" => "Bạn chưa chọn Nhà cung cấp để xóa.", + "one_or_multiple" => "Nhà cung cấp", + "successful_adding" => "Bạn đã thêm Nhà cung cấp thành công", + "successful_deleted" => "Bạn đã xóa thành công", + "successful_updating" => "Bạn đã cập nhật Nhà cung cấp thành công", + "supplier" => "Nhà cung cấp", + "supplier_id" => "Mã số", + "tax_id" => "Mã số thuế", + "update" => "Cập nhật Nhà cung cấp", ]; diff --git a/app/Language/vi/Taxes.php b/app/Language/vi/Taxes.php index a8700bcc6..522d8316f 100644 --- a/app/Language/vi/Taxes.php +++ b/app/Language/vi/Taxes.php @@ -1,82 +1,82 @@ "Thêm ngoại lệ", - "cascade" => "", - "cascade_sequence" => "", - "city" => "Thành phố", - "code" => "Mã", - "confirm_delete" => "Bạn có thực sự muốn xóa Mã thuế này không? Hành động này không thể hoàn lại được", - "confirm_restore" => "Bạn có thực sự muốn hoàn lại Mã thuế đã chọn không?", - "default_tax_category" => "Thể loại mã thuế mặc định", - "default_tax_rate" => "Thuế suất mặc định", - "error_adding_updating" => "Gặp lỗi khi thêm hay cập nhật Mã thuế", - "group_seq" => "", - "jurisdiction_name" => "Tên quyền", - "name" => "Tên", - "new" => "Mã thuế mới", - "no_taxes" => "", - "no_taxes_to_display" => "Không sẵn có Mã thuế nào để mà hiển thị", - "reporting_authority" => "", - "round_half_down" => "0,5 làm tròn xuống", - "round_half_even" => "0,5 làm tròn lên", - "round_half_odd" => "0,5 làm tròn xuống", - "round_half_up" => "0,5 làm tròn lên", - "rounding_code" => "Mã làm tròn", - "sales_tax" => "Thuế bán hàng", - "sales_tax_by_invoice" => "Thuế bán hàng theo Hóa đơn", - "sequence" => "", - "state" => "Tỉnh", - "successful_deleted" => "Bạn đã xóa thành công", - "tax_categories" => "Thể loại thuế", - "tax_categories_configuration" => "Cấu hình thể loại thuế", - "tax_categories_saved_successfully" => "", - "tax_categories_saved_unsuccessfully" => "", - "tax_category" => "Thể loại thuế", - "tax_category_code" => "", - "tax_category_duplicate" => "", - "tax_category_invalid_chars" => "", - "tax_category_name" => "", - "tax_category_new" => "", - "tax_category_required" => "", - "tax_code" => "Mã thuế", - "tax_code_cannot_be_deleted" => "Gặp lỗi khi xóa Mã thuế.", - "tax_code_duplicate" => "", - "tax_code_invalid_chars" => "", - "tax_code_name" => "Tên Mã thuế", - "tax_code_required" => "Trường Mã thuế là bắt buộc.", - "tax_code_successful_deleted" => "Bạn đã xóa thành công Mã thuế", - "tax_code_successful_updated" => "Bạn đã cập nhật thành công", - "tax_code_successful_updating" => "Bạn đã cập nhật Mã thuế thành công", - "tax_code_successfully_added" => "Bạn đã thêm thành công", - "tax_code_type" => "Kiểu Mã thuế", - "tax_codes" => "", - "tax_codes_configuration" => "", - "tax_codes_saved_successfully" => "", - "tax_codes_saved_unsuccessfully" => "", - "tax_excluded" => "", - "tax_group" => "", - "tax_group_not_unique" => "", - "tax_group_sequence" => "", - "tax_included" => "", - "tax_jurisdiction" => "", - "tax_jurisdiction_duplicate" => "", - "tax_jurisdiction_invalid_chars" => "", - "tax_jurisdiction_required" => "", - "tax_jurisdictions" => "", - "tax_jurisdictions_configuration" => "", - "tax_jurisdictions_saved_successfully" => "", - "tax_jurisdictions_saved_unsuccessfully" => "", - "tax_rate" => "Tỷ suất thuế", - "tax_rate_configuration" => "", - "tax_rate_error_adding_updating" => "", - "tax_rate_numeric" => "Tỷ suất thuế phải là dạng số.", - "tax_rate_required" => "Trường Tỷ suất thuế là bắt buộc.", - "tax_rate_successful_updated" => "", - "tax_rate_successfully_added" => "", - "tax_rates" => "", - "tax_rates_configuration" => "", - "tax_rounding" => "", - "tax_type" => "", - "update" => "Cập nhật Thuế thể loại bán hàng", - "vat_tax" => "Thuế VAT", + "add_exception" => "Thêm ngoại lệ", + "cascade" => "", + "cascade_sequence" => "", + "city" => "Thành phố", + "code" => "Mã", + "confirm_delete" => "Bạn có thực sự muốn xóa Mã thuế này không? Hành động này không thể hoàn lại được", + "confirm_restore" => "Bạn có thực sự muốn hoàn lại Mã thuế đã chọn không?", + "default_tax_category" => "Thể loại mã thuế mặc định", + "default_tax_rate" => "Thuế suất mặc định", + "error_adding_updating" => "Gặp lỗi khi thêm hay cập nhật Mã thuế", + "group_seq" => "", + "jurisdiction_name" => "Tên quyền", + "name" => "Tên", + "new" => "Mã thuế mới", + "no_taxes" => "", + "no_taxes_to_display" => "Không sẵn có Mã thuế nào để mà hiển thị", + "reporting_authority" => "", + "round_half_down" => "0,5 làm tròn xuống", + "round_half_even" => "0,5 làm tròn lên", + "round_half_odd" => "0,5 làm tròn xuống", + "round_half_up" => "0,5 làm tròn lên", + "rounding_code" => "Mã làm tròn", + "sales_tax" => "Thuế bán hàng", + "sales_tax_by_invoice" => "Thuế bán hàng theo Hóa đơn", + "sequence" => "", + "state" => "Tỉnh", + "successful_deleted" => "Bạn đã xóa thành công", + "tax_categories" => "Thể loại thuế", + "tax_categories_configuration" => "Cấu hình thể loại thuế", + "tax_categories_saved_successfully" => "", + "tax_categories_saved_unsuccessfully" => "", + "tax_category" => "Thể loại thuế", + "tax_category_code" => "", + "tax_category_duplicate" => "", + "tax_category_invalid_chars" => "", + "tax_category_name" => "", + "tax_category_new" => "", + "tax_category_required" => "", + "tax_code" => "Mã thuế", + "tax_code_cannot_be_deleted" => "Gặp lỗi khi xóa Mã thuế.", + "tax_code_duplicate" => "", + "tax_code_invalid_chars" => "", + "tax_code_name" => "Tên Mã thuế", + "tax_code_required" => "Trường Mã thuế là bắt buộc.", + "tax_code_successful_deleted" => "Bạn đã xóa thành công Mã thuế", + "tax_code_successful_updated" => "Bạn đã cập nhật thành công", + "tax_code_successful_updating" => "Bạn đã cập nhật Mã thuế thành công", + "tax_code_successfully_added" => "Bạn đã thêm thành công", + "tax_code_type" => "Kiểu Mã thuế", + "tax_codes" => "", + "tax_codes_configuration" => "", + "tax_codes_saved_successfully" => "", + "tax_codes_saved_unsuccessfully" => "", + "tax_excluded" => "", + "tax_group" => "", + "tax_group_not_unique" => "", + "tax_group_sequence" => "", + "tax_included" => "", + "tax_jurisdiction" => "", + "tax_jurisdiction_duplicate" => "", + "tax_jurisdiction_invalid_chars" => "", + "tax_jurisdiction_required" => "", + "tax_jurisdictions" => "", + "tax_jurisdictions_configuration" => "", + "tax_jurisdictions_saved_successfully" => "", + "tax_jurisdictions_saved_unsuccessfully" => "", + "tax_rate" => "Tỷ suất thuế", + "tax_rate_configuration" => "", + "tax_rate_error_adding_updating" => "", + "tax_rate_numeric" => "Tỷ suất thuế phải là dạng số.", + "tax_rate_required" => "Trường Tỷ suất thuế là bắt buộc.", + "tax_rate_successful_updated" => "", + "tax_rate_successfully_added" => "", + "tax_rates" => "", + "tax_rates_configuration" => "", + "tax_rounding" => "", + "tax_type" => "", + "update" => "Cập nhật Thuế thể loại bán hàng", + "vat_tax" => "Thuế VAT", ]; diff --git a/app/Language/vi/index.html b/app/Language/vi/index.html index b702fbc39..69df4e1df 100644 --- a/app/Language/vi/index.html +++ b/app/Language/vi/index.html @@ -1,7 +1,7 @@ - 403 Forbidden + 403 Forbidden diff --git a/app/Language/zh-Hans/Attributes.php b/app/Language/zh-Hans/Attributes.php index 55cc6db17..5ab428c09 100644 --- a/app/Language/zh-Hans/Attributes.php +++ b/app/Language/zh-Hans/Attributes.php @@ -1,32 +1,32 @@ "属性特征不能包含':' or '|'", - "confirm_delete" => "确定要删除所选属性吗", - "confirm_restore" => "您确定要还原所选属性吗?", - "definition_cannot_be_deleted" => "不能删除该特征属性", - "definition_error_adding_updating" => "无法添加或更新属性{0}。 请检查错误日志。", - "definition_flags" => "属性可见性", - "definition_group" => "组", - "definition_id" => "ID卡", - "definition_name" => "添加特征属性", - "definition_name_required" => "属性必须填写", - "definition_one_or_multiple" => "属性特征", - "definition_successful_adding" => "你成功添加物品", - "definition_successful_deleted" => "已经成功删除", - "definition_successful_updating" => "更新属性成功", - "definition_type" => "属性类别", - "definition_type_required" => "属性必填", - "definition_unit" => "计量单位", - "definition_values" => "属性特征值", - "new" => "新属性", - "no_attributes_to_display" => "没有物品需要显示", - "receipt_visibility" => "小票", - "show_in_items" => "在项目中显示", - "show_in_items_visibility" => "物品", - "show_in_receipt" => "在收据中显示", - "show_in_receivings" => "在收据中显示", - "show_in_receivings_visibility" => "收据", - "show_in_sales" => "在销售中显示", - "show_in_sales_visibility" => "销售", - "update" => "更新属性", + "attribute_value_invalid_chars" => "属性特征不能包含':' or '|'", + "confirm_delete" => "确定要删除所选属性吗", + "confirm_restore" => "您确定要还原所选属性吗?", + "definition_cannot_be_deleted" => "不能删除该特征属性", + "definition_error_adding_updating" => "无法添加或更新属性{0}。 请检查错误日志。", + "definition_flags" => "属性可见性", + "definition_group" => "组", + "definition_id" => "ID卡", + "definition_name" => "添加特征属性", + "definition_name_required" => "属性必须填写", + "definition_one_or_multiple" => "属性特征", + "definition_successful_adding" => "你成功添加物品", + "definition_successful_deleted" => "已经成功删除", + "definition_successful_updating" => "更新属性成功", + "definition_type" => "属性类别", + "definition_type_required" => "属性必填", + "definition_unit" => "计量单位", + "definition_values" => "属性特征值", + "new" => "新属性", + "no_attributes_to_display" => "没有物品需要显示", + "receipt_visibility" => "小票", + "show_in_items" => "在项目中显示", + "show_in_items_visibility" => "物品", + "show_in_receipt" => "在收据中显示", + "show_in_receivings" => "在收据中显示", + "show_in_receivings_visibility" => "收据", + "show_in_sales" => "在销售中显示", + "show_in_sales_visibility" => "销售", + "update" => "更新属性", ]; diff --git a/app/Language/zh-Hans/Bootstrap_tables.php b/app/Language/zh-Hans/Bootstrap_tables.php index 4360052d8..97ed3b6fc 100644 --- a/app/Language/zh-Hans/Bootstrap_tables.php +++ b/app/Language/zh-Hans/Bootstrap_tables.php @@ -1,11 +1,11 @@ "所有", - "columns" => "列", - "hide_show_pagination" => "隐藏/显示分页", - "loading" => "正在努力地加载数据中,请稍候……", - "page_from_to" => "显示第 {0} 到第 {1} 条记录,总共 {2} 条记录", - "refresh" => "刷新", - "rows_per_page" => "每页显示 {0} 条记录", - "toggle" => "切换", + "all" => "所有", + "columns" => "列", + "hide_show_pagination" => "隐藏/显示分页", + "loading" => "正在努力地加载数据中,请稍候……", + "page_from_to" => "显示第 {0} 到第 {1} 条记录,总共 {2} 条记录", + "refresh" => "刷新", + "rows_per_page" => "每页显示 {0} 条记录", + "toggle" => "切换", ]; diff --git a/app/Language/zh-Hans/Calendar.php b/app/Language/zh-Hans/Calendar.php index 6bc6b8073..5efc347bc 100644 --- a/app/Language/zh-Hans/Calendar.php +++ b/app/Language/zh-Hans/Calendar.php @@ -1,48 +1,48 @@ "日", - "mo" => "一", - "tu" => "二", - "we" => "三", - "th" => "四", - "fr" => "五", - "sa" => "六", - "sun" => "周日", - "mon" => "周一", - "tue" => "周二", - "wed" => "周三", - "thu" => "周四", - "fri" => "周五", - "sat" => "周六", - "sunday" => "星期日", - "monday" => "星期一", - "tuesday" => "星期二", - "wednesday" => "星期三", - "thursday" => "星期四", - "friday" => "星期五", - "saturday" => "星期六", - "jan" => "1月", - "feb" => "2月", - "mar" => "3月", - "apr" => "4月", - "may" => "5月", - "jun" => "6月", - "jul" => "7月", - "aug" => "8月", - "sep" => "9月", - "oct" => "10月", - "nov" => "11月", - "dec" => "12月", - "january" => "一月", - "february" => "二月", - "march" => "三月", - "april" => "四月", - "mayl" => "五月", - "june" => "六月", - "july" => "七月", - "august" => "八月", - "september" => "九月", - "october" => "十月", - "november" => "十一月", - "december" => "十二月", + "su" => "日", + "mo" => "一", + "tu" => "二", + "we" => "三", + "th" => "四", + "fr" => "五", + "sa" => "六", + "sun" => "周日", + "mon" => "周一", + "tue" => "周二", + "wed" => "周三", + "thu" => "周四", + "fri" => "周五", + "sat" => "周六", + "sunday" => "星期日", + "monday" => "星期一", + "tuesday" => "星期二", + "wednesday" => "星期三", + "thursday" => "星期四", + "friday" => "星期五", + "saturday" => "星期六", + "jan" => "1月", + "feb" => "2月", + "mar" => "3月", + "apr" => "4月", + "may" => "5月", + "jun" => "6月", + "jul" => "7月", + "aug" => "8月", + "sep" => "9月", + "oct" => "10月", + "nov" => "11月", + "dec" => "12月", + "january" => "一月", + "february" => "二月", + "march" => "三月", + "april" => "四月", + "mayl" => "五月", + "june" => "六月", + "july" => "七月", + "august" => "八月", + "september" => "九月", + "october" => "十月", + "november" => "十一月", + "december" => "十二月", ]; diff --git a/app/Language/zh-Hans/Cashups.php b/app/Language/zh-Hans/Cashups.php index 2ffc8c593..04d19c94f 100644 --- a/app/Language/zh-Hans/Cashups.php +++ b/app/Language/zh-Hans/Cashups.php @@ -1,49 +1,49 @@ "", - "amount_number" => "", - "amount_required" => "", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "", - "cash_difference" => "", - "close_date" => "", - "close_employee" => "", - "closed_amount_card" => "", - "closed_amount_cash" => "", - "closed_amount_check" => "", - "closed_amount_due" => "", - "closed_amount_giftcard" => "", - "closed_amount_total" => "", - "closed_date" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "confirm_submit" => "", - "date_number" => "", - "date_required" => "", - "description" => "", - "enable_expected" => "", - "error_adding_updating" => "", - "giftcard" => "", - "id" => "", - "info" => "", - "info_employee" => "", - "is_deleted" => "", - "new" => "", - "no_cashups_to_display" => "", - "none_selected" => "", - "note" => "", - "one_or_multiple" => "", - "open_amount_cash" => "", - "open_date" => "", - "open_employee" => "", - "opened_date" => "", - "successful_adding" => "", - "successful_deleted" => "", - "successful_updating" => "", - "total" => "", - "transfer_amount_cash" => "", - "transfer_amount_cash_minus" => "", - "update" => "", - "warning" => "", + "amount" => "", + "amount_number" => "", + "amount_required" => "", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "", + "cash_difference" => "", + "close_date" => "", + "close_employee" => "", + "closed_amount_card" => "", + "closed_amount_cash" => "", + "closed_amount_check" => "", + "closed_amount_due" => "", + "closed_amount_giftcard" => "", + "closed_amount_total" => "", + "closed_date" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "confirm_submit" => "", + "date_number" => "", + "date_required" => "", + "description" => "", + "enable_expected" => "", + "error_adding_updating" => "", + "giftcard" => "", + "id" => "", + "info" => "", + "info_employee" => "", + "is_deleted" => "", + "new" => "", + "no_cashups_to_display" => "", + "none_selected" => "", + "note" => "", + "one_or_multiple" => "", + "open_amount_cash" => "", + "open_date" => "", + "open_employee" => "", + "opened_date" => "", + "successful_adding" => "", + "successful_deleted" => "", + "successful_updating" => "", + "total" => "", + "transfer_amount_cash" => "", + "transfer_amount_cash_minus" => "", + "update" => "", + "warning" => "", ]; diff --git a/app/Language/zh-Hans/Common.php b/app/Language/zh-Hans/Common.php index 72d5b3782..8afeee1ae 100644 --- a/app/Language/zh-Hans/Common.php +++ b/app/Language/zh-Hans/Common.php @@ -1,88 +1,88 @@ "地址 1", - "address_2" => "地址 2", - "admin" => "", - "city" => "城市", - "clerk" => "", - "close" => "关闭", - "color" => "", - "comments" => "备注", - "common" => "一般", - "confirm_search" => "你已经选择了 一行或多行,之后的搜索结果不再被选取。你确定要提交本次搜索吗?", - "copyrights" => "© 2010 - {0}", - "correct_errors" => "信息有误,请修正后保存", - "country" => "国家", - "dashboard" => "", - "date" => "日期", - "delete" => "刪除", - "det" => "更多", - "download_import_template" => "下载CSV模板(CSV)", - "edit" => "编辑", - "email" => "邮箱", - "email_invalid_format" => "Email格式错误。", - "export_csv" => "CSV 导出", - "export_csv_no" => "否", - "export_csv_yes" => "是", - "fields_required_message" => "红色栏位是必填项", - "fields_required_message_unique" => "", - "first_name" => "名", - "first_name_required" => "名为必填项。", - "first_page" => "首页", - "gender" => "性别", - "gender_female" => "女", - "gender_male" => "男", - "gender_undefined" => "", - "icon" => "", - "id" => "Id", - "import" => "Import", - "import_change_file" => "更改", - "import_csv" => "CSV 导入", - "import_full_path" => "需要CSV文件的完整路径", - "import_remove_file" => "删除", - "import_select_file" => "选择文件", - "inv" => "库存", - "last_name" => "姓", - "last_name_required" => "姓氏为必填项。", - "last_page" => "尾页", - "learn_about_project" => "了解项目最新进度。", - "list_of" => "列表", - "logo" => "", - "logo_mark" => "", - "logout" => "登出", - "manager" => "", - "migration_needed" => "登录后,数据库将会迁移到{0}。", - "new" => "新建", - "no" => "", - "no_persons_to_display" => "沒有使用者资料可以展示。", - "none_selected_text" => "【请选择】", - "or" => "或", - "people" => "", - "phone_number" => "电话号码", - "phone_number_required" => "", - "please_visit_my" => "请造访", - "position" => "", - "powered_by" => "供应", - "price" => "价格", - "print" => "打印", - "remove" => "移除", - "required" => "需要", - "restore" => "恢复", - "return_policy" => "退货政策", - "search" => "搜索", - "search_options" => "搜索选项", - "searched_for" => "查找", - "software_short" => "", - "software_title" => "", - "state" => "省", - "submit" => "提交", - "total_spent" => "总支出", - "unknown" => "未知", - "view_recent_sales" => "查看最近的销售情况", - "website" => "网站", - "welcome" => "欢迎", - "welcome_message" => "欢迎使用OSPOS,请点击下面的模块开始使用。", - "yes" => "", - "you_are_using_ospos" => "您正在使用 Open Source Point Of Sale 版本", - "zip" => "邮政编码", + "address_1" => "地址 1", + "address_2" => "地址 2", + "admin" => "", + "city" => "城市", + "clerk" => "", + "close" => "关闭", + "color" => "", + "comments" => "备注", + "common" => "一般", + "confirm_search" => "你已经选择了 一行或多行,之后的搜索结果不再被选取。你确定要提交本次搜索吗?", + "copyrights" => "© 2010 - {0}", + "correct_errors" => "信息有误,请修正后保存", + "country" => "国家", + "dashboard" => "", + "date" => "日期", + "delete" => "刪除", + "det" => "更多", + "download_import_template" => "下载CSV模板(CSV)", + "edit" => "编辑", + "email" => "邮箱", + "email_invalid_format" => "Email格式错误。", + "export_csv" => "CSV 导出", + "export_csv_no" => "否", + "export_csv_yes" => "是", + "fields_required_message" => "红色栏位是必填项", + "fields_required_message_unique" => "", + "first_name" => "名", + "first_name_required" => "名为必填项。", + "first_page" => "首页", + "gender" => "性别", + "gender_female" => "女", + "gender_male" => "男", + "gender_undefined" => "", + "icon" => "", + "id" => "Id", + "import" => "Import", + "import_change_file" => "更改", + "import_csv" => "CSV 导入", + "import_full_path" => "需要CSV文件的完整路径", + "import_remove_file" => "删除", + "import_select_file" => "选择文件", + "inv" => "库存", + "last_name" => "姓", + "last_name_required" => "姓氏为必填项。", + "last_page" => "尾页", + "learn_about_project" => "了解项目最新进度。", + "list_of" => "列表", + "logo" => "", + "logo_mark" => "", + "logout" => "登出", + "manager" => "", + "migration_needed" => "登录后,数据库将会迁移到{0}。", + "new" => "新建", + "no" => "", + "no_persons_to_display" => "沒有使用者资料可以展示。", + "none_selected_text" => "【请选择】", + "or" => "或", + "people" => "", + "phone_number" => "电话号码", + "phone_number_required" => "", + "please_visit_my" => "请造访", + "position" => "", + "powered_by" => "供应", + "price" => "价格", + "print" => "打印", + "remove" => "移除", + "required" => "需要", + "restore" => "恢复", + "return_policy" => "退货政策", + "search" => "搜索", + "search_options" => "搜索选项", + "searched_for" => "查找", + "software_short" => "", + "software_title" => "", + "state" => "省", + "submit" => "提交", + "total_spent" => "总支出", + "unknown" => "未知", + "view_recent_sales" => "查看最近的销售情况", + "website" => "网站", + "welcome" => "欢迎", + "welcome_message" => "欢迎使用OSPOS,请点击下面的模块开始使用。", + "yes" => "", + "you_are_using_ospos" => "您正在使用 Open Source Point Of Sale 版本", + "zip" => "邮政编码", ]; diff --git a/app/Language/zh-Hans/Config.php b/app/Language/zh-Hans/Config.php index f1fe4c271..43c67062c 100644 --- a/app/Language/zh-Hans/Config.php +++ b/app/Language/zh-Hans/Config.php @@ -1,330 +1,330 @@ "公司地址", - "address_required" => "公司地址为必填", - "all_set" => "All file permissions are set correctly!", - "allow_duplicate_barcodes" => "允许重复条形码", - "apostrophe" => "apostrophe", - "backup_button" => "Backup", - "backup_database" => "Backup Database", - "barcode" => "条形码", - "barcode_company" => "公司名称", - "barcode_configuration" => "设置条形码", - "barcode_content" => "条形码内容", - "barcode_first_row" => "条形码第一行", - "barcode_font" => "条形码字体", - "barcode_formats" => "输入格式", - "barcode_generate_if_empty" => "Generate if empty", - "barcode_height" => "条形码高度 (px)", - "barcode_id" => "商品 ID/名字", - "barcode_info" => "条形码设置信息", - "barcode_layout" => "条形码布局", - "barcode_name" => "条形码名字", - "barcode_number" => "UPC/EAN/ISBN", - "barcode_number_in_row" => "Number in row", - "barcode_page_cellspacing" => "Display page cellspacing", - "barcode_page_width" => "条形码显示宽度", - "barcode_price" => "金额", - "barcode_second_row" => "条形码第二行", - "barcode_third_row" => "条形码第三行", - "barcode_tooltip" => "警告:此功能可能导致重复项被导入或创建。 如果您不想重复的条形码,请不要使用。", - "barcode_type" => "条形码类型", - "barcode_width" => "条形码宽度 (px)", - "bottom" => "Bottom", - "cash_button" => "", - "cash_button_1" => "", - "cash_button_2" => "", - "cash_button_3" => "", - "cash_button_4" => "", - "cash_button_5" => "", - "cash_button_6" => "", - "cash_decimals" => "现金小数点", - "cash_decimals_tooltip" => "", - "cash_rounding" => "", - "category_dropdown" => "显示类别为下拉式菜单", - "center" => "Center", - "change_apperance_tooltip" => "", - "comma" => "comma", - "company" => "公司名称", - "company_avatar" => "", - "company_change_image" => "Change Image", - "company_logo" => "Company Logo", - "company_remove_image" => "Remove Image", - "company_required" => "公司名称为必填", - "company_select_image" => "选择公司图片", - "company_website_url" => "公司网址格式错误 (http://...)", - "country_codes" => "国家地区代码", - "country_codes_tooltip" => "Comma separated list of country codes for nominatim address lookup.", - "currency_code" => "", - "currency_decimals" => "Currency Decimals", - "currency_symbol" => "货币符号", - "current_employee_only" => "", - "customer_reward" => "", - "customer_reward_duplicate" => "", - "customer_reward_enable" => "", - "customer_reward_invalid_chars" => "", - "customer_reward_required" => "", - "customer_sales_tax_support" => "", - "date_or_time_format" => "", - "datetimeformat" => "Date and Time format", - "decimal_point" => "Decimal Point", - "default_barcode_font_size_number" => "默认条形码字体大小必须是数字", - "default_barcode_font_size_required" => "The default barcode font size is a required field", - "default_barcode_height_number" => "The default barcode height must be a number", - "default_barcode_height_required" => "The default barcode height is a required field", - "default_barcode_num_in_row_number" => "The default barcode num in row must be a number", - "default_barcode_num_in_row_required" => "The default barcode num in row is a required field", - "default_barcode_page_cellspacing_number" => "The default barcode page cellspacing must be a number", - "default_barcode_page_cellspacing_required" => "The default barcode page cellspacing is a required field", - "default_barcode_page_width_number" => "The default barcode page width must be a number", - "default_barcode_page_width_required" => "The default barcode page width is a required field", - "default_barcode_width_number" => "The default barcode width must be a number", - "default_barcode_width_required" => "The default barcode width is a required field", - "default_item_columns" => "", - "default_origin_tax_code" => "", - "default_receivings_discount" => "", - "default_receivings_discount_number" => "", - "default_receivings_discount_required" => "", - "default_sales_discount" => "Default Sales Discount %", - "default_sales_discount_number" => "The default sales discount must be a number", - "default_sales_discount_required" => "The default sales discount is a required field", - "default_tax_category" => "", - "default_tax_code" => "", - "default_tax_jurisdiction" => "", - "default_tax_name_number" => "", - "default_tax_name_required" => "The default tax name is a required field", - "default_tax_rate" => "預設稅率 %", - "default_tax_rate_1" => "稅率 1", - "default_tax_rate_2" => "稅率 2", - "default_tax_rate_3" => "", - "default_tax_rate_number" => "預設稅率必需為數字", - "default_tax_rate_required" => "預設稅率為必填", - "derive_sale_quantity" => "", - "derive_sale_quantity_tooltip" => "", - "dinner_table" => "", - "dinner_table_duplicate" => "", - "dinner_table_enable" => "", - "dinner_table_invalid_chars" => "", - "dinner_table_required" => "", - "dot" => "dot", - "email" => "郵箱", - "email_configuration" => "Email Configuration", - "email_mailpath" => "Path to Sendmail", - "email_protocol" => "Protocol", - "email_receipt_check_behaviour" => "", - "email_receipt_check_behaviour_always" => "", - "email_receipt_check_behaviour_last" => "", - "email_receipt_check_behaviour_never" => "", - "email_smtp_crypto" => "SMTP Encryption", - "email_smtp_host" => "SMTP Server", - "email_smtp_pass" => "SMTP Password", - "email_smtp_port" => "SMTP Port", - "email_smtp_timeout" => "SMTP Timeout (s)", - "email_smtp_user" => "SMTP Username", - "enable_avatar" => "", - "enable_avatar_tooltip" => "", - "enable_dropdown_tooltip" => "", - "enable_new_look" => "", - "enable_right_bar" => "", - "enable_right_bar_tooltip" => "", - "enforce_privacy" => "", - "enforce_privacy_tooltip" => "", - "fax" => "傳真", - "file_perm" => "There are problems with file permissions please fix and reload this page.", - "financial_year" => "", - "financial_year_apr" => "", - "financial_year_aug" => "", - "financial_year_dec" => "", - "financial_year_feb" => "", - "financial_year_jan" => "", - "financial_year_jul" => "", - "financial_year_jun" => "", - "financial_year_mar" => "", - "financial_year_may" => "", - "financial_year_nov" => "", - "financial_year_oct" => "", - "financial_year_sep" => "", - "floating_labels" => "", - "gcaptcha_enable" => "", - "gcaptcha_secret_key" => "", - "gcaptcha_secret_key_required" => "", - "gcaptcha_site_key" => "", - "gcaptcha_site_key_required" => "", - "gcaptcha_tooltip" => "", - "general" => "General", - "general_configuration" => "General Configuration", - "giftcard_number" => "", - "giftcard_random" => "", - "giftcard_series" => "", - "image_allowed_file_types" => "", - "image_max_height_tooltip" => "", - "image_max_size_tooltip" => "", - "image_max_width_tooltip" => "", - "image_restrictions" => "", - "include_hsn" => "", - "info" => "儲存組態", - "info_configuration" => "儲存組態", - "input_groups" => "", - "integrations" => "", - "integrations_configuration" => "", - "invoice" => "Invoice", - "invoice_configuration" => "Invoice Print Settings", - "invoice_default_comments" => "Default Invoice Comments", - "invoice_email_message" => "Invoice Email Template", - "invoice_enable" => "Enable Invoicing", - "invoice_printer" => "Invoice Printer", - "invoice_type" => "", - "is_readable" => "", - "is_writable" => "is writable, but the permissions are higher than 750.", - "item_markup" => "", - "jsprintsetup_required" => "Warning! This disabled functionality will only work if you have the FireFox jsPrintSetup addon installed. Save anyway?", - "language" => "語言", - "last_used_invoice_number" => "", - "last_used_quote_number" => "", - "last_used_work_order_number" => "", - "left" => "Left", - "license" => "License", - "license_configuration" => "License Statement", - "line_sequence" => "", - "lines_per_page" => "Lines Per Page", - "lines_per_page_number" => "The lines per page must be a number", - "lines_per_page_required" => "The lines per page is a required field", - "locale" => "Localisation", - "locale_configuration" => "Localisation Configuration", - "locale_info" => "Localisation Configuration Information", - "location" => "Stock", - "location_configuration" => "Stock Locations", - "location_info" => "Location Configuration Information", - "login_form" => "", - "logout" => "Don't you want to make a backup before logging out?", - "mailchimp" => "", - "mailchimp_api_key" => "", - "mailchimp_configuration" => "", - "mailchimp_key_successfully" => "", - "mailchimp_key_unsuccessfully" => "", - "mailchimp_lists" => "", - "mailchimp_tooltip" => "", - "message" => "Message", - "message_configuration" => "Message Configuration", - "msg_msg" => "Saved Text Message", - "msg_msg_placeholder" => "If you wish to use a SMS template save your message here. Otherwise leave the box blank.", - "msg_pwd" => "SMS-API Password", - "msg_pwd_required" => "SMS-API Password is a required field", - "msg_src" => "SMS-API Sender ID", - "msg_src_required" => "SMS-API Sender ID is a required field", - "msg_uid" => "SMS-API Username", - "msg_uid_required" => "SMS-API Username is a required field", - "multi_pack_enabled" => "", - "no_risk" => "No security/vulnerability risks.", - "none" => "none", - "notify_alignment" => "Notification Popup Position", - "number_format" => "Number Format", - "number_locale" => "Localisation", - "number_locale_invalid" => "The entered locale is invalid. Check the link in the tooltip to find a sensible value", - "number_locale_required" => "Number Locale is a required field", - "number_locale_tooltip" => "Find a suitable locale through this link", - "os_timezone" => "", - "ospos_info" => "", - "payment_options_order" => "Payment Options Order", - "perm_risk" => "Permissions higher than 750 leaves this software at risk.", - "phone" => "公司电话", - "phone_required" => "公司电话为必填", - "print_bottom_margin" => "Margin Bottom", - "print_bottom_margin_number" => "The default bottom margin must be a number", - "print_bottom_margin_required" => "The default bottom margin is a required field", - "print_delay_autoreturn" => "", - "print_delay_autoreturn_number" => "", - "print_delay_autoreturn_required" => "", - "print_footer" => "Print Browser Footer", - "print_header" => "Print Browser Header", - "print_left_margin" => "Margin Left", - "print_left_margin_number" => "The default left margin must be a number", - "print_left_margin_required" => "The default left margin is a required field", - "print_receipt_check_behaviour" => "", - "print_receipt_check_behaviour_always" => "", - "print_receipt_check_behaviour_last" => "", - "print_receipt_check_behaviour_never" => "", - "print_right_margin" => "Margin Right", - "print_right_margin_number" => "The default right margin must be a number", - "print_right_margin_required" => "The default right margin is a required field", - "print_silently" => "Show Print Dialog", - "print_top_margin" => "Margin Top", - "print_top_margin_number" => "The default top margin must be a number", - "print_top_margin_required" => "The default top margin is a required field", - "quantity_decimals" => "Quantity Decimals", - "quick_cash_enable" => "", - "quote_default_comments" => "", - "receipt" => "收据", - "receipt_category" => "", - "receipt_configuration" => "收据打印设置", - "receipt_default" => "默认", - "receipt_font_size" => "字体大小", - "receipt_font_size_number" => "字体大小必须是数字", - "receipt_font_size_required" => "字体大小是必填的", - "receipt_info" => "Receipt Configuration Information", - "receipt_printer" => "收据打印机", - "receipt_short" => "Short", - "receipt_show_company_name" => "显示公司名称", - "receipt_show_description" => "显示描述", - "receipt_show_serialnumber" => "显示序列号", - "receipt_show_tax_ind" => "", - "receipt_show_taxes" => "显示税", - "receipt_show_total_discount" => "Show Total Discount", - "receipt_template" => "收据模板", - "receiving_calculate_average_price" => "Calc avg. Price (Receiving)", - "recv_invoice_format" => "Receivings Invoice Format", - "register_mode_default" => "", - "report_an_issue" => "", - "return_policy_required" => "退换货政策为必填", - "reward" => "", - "reward_configuration" => "", - "right" => "Right", - "sales_invoice_format" => "Sales Invoice Format", - "sales_quote_format" => "", - "saved_successfully" => "組態設置儲存成功", - "saved_unsuccessfully" => "組態設置儲存失敗", - "security_issue" => "Security Vulnerability Warning", - "server_notice" => "Please use the below info for issue reporting.", - "service_charge" => "", - "show_due_enable" => "", - "show_office_group" => "", - "statistics" => "Send statistics", - "statistics_tooltip" => "Send statistics for development and feature improvement purposes", - "stock_location" => "仓库地址", - "stock_location_duplicate" => "仓库地址不可重复", - "stock_location_invalid_chars" => "The stock location name can not contain '_'", - "stock_location_required" => "Stock location number is a required field", - "suggestions_fifth_column" => "", - "suggestions_first_column" => "", - "suggestions_fourth_column" => "", - "suggestions_layout" => "", - "suggestions_second_column" => "", - "suggestions_third_column" => "", - "system_conf" => "Setup & Conf", - "system_info" => "System Info", - "table" => "", - "table_configuration" => "", - "takings_printer" => "Takings Printer", - "tax" => "税", - "tax_category" => "", - "tax_category_duplicate" => "", - "tax_category_invalid_chars" => "", - "tax_category_required" => "", - "tax_category_used" => "", - "tax_configuration" => "", - "tax_decimals" => "税的小数点", - "tax_id" => "税ID", - "tax_included" => "含税", - "theme" => "主题", - "theme_preview" => "", - "thousands_separator" => "千位分隔符", - "timezone" => "时区", - "timezone_error" => "", - "top" => "Top", - "use_destination_based_tax" => "", - "user_timezone" => "", - "website" => "网站", - "wholesale_markup" => "", - "work_order_enable" => "", - "work_order_format" => "", + "address" => "公司地址", + "address_required" => "公司地址为必填", + "all_set" => "All file permissions are set correctly!", + "allow_duplicate_barcodes" => "允许重复条形码", + "apostrophe" => "apostrophe", + "backup_button" => "Backup", + "backup_database" => "Backup Database", + "barcode" => "条形码", + "barcode_company" => "公司名称", + "barcode_configuration" => "设置条形码", + "barcode_content" => "条形码内容", + "barcode_first_row" => "条形码第一行", + "barcode_font" => "条形码字体", + "barcode_formats" => "输入格式", + "barcode_generate_if_empty" => "Generate if empty", + "barcode_height" => "条形码高度 (px)", + "barcode_id" => "商品 ID/名字", + "barcode_info" => "条形码设置信息", + "barcode_layout" => "条形码布局", + "barcode_name" => "条形码名字", + "barcode_number" => "UPC/EAN/ISBN", + "barcode_number_in_row" => "Number in row", + "barcode_page_cellspacing" => "Display page cellspacing", + "barcode_page_width" => "条形码显示宽度", + "barcode_price" => "金额", + "barcode_second_row" => "条形码第二行", + "barcode_third_row" => "条形码第三行", + "barcode_tooltip" => "警告:此功能可能导致重复项被导入或创建。 如果您不想重复的条形码,请不要使用。", + "barcode_type" => "条形码类型", + "barcode_width" => "条形码宽度 (px)", + "bottom" => "Bottom", + "cash_button" => "", + "cash_button_1" => "", + "cash_button_2" => "", + "cash_button_3" => "", + "cash_button_4" => "", + "cash_button_5" => "", + "cash_button_6" => "", + "cash_decimals" => "现金小数点", + "cash_decimals_tooltip" => "", + "cash_rounding" => "", + "category_dropdown" => "显示类别为下拉式菜单", + "center" => "Center", + "change_apperance_tooltip" => "", + "comma" => "comma", + "company" => "公司名称", + "company_avatar" => "", + "company_change_image" => "Change Image", + "company_logo" => "Company Logo", + "company_remove_image" => "Remove Image", + "company_required" => "公司名称为必填", + "company_select_image" => "选择公司图片", + "company_website_url" => "公司网址格式错误 (http://...)", + "country_codes" => "国家地区代码", + "country_codes_tooltip" => "Comma separated list of country codes for nominatim address lookup.", + "currency_code" => "", + "currency_decimals" => "Currency Decimals", + "currency_symbol" => "货币符号", + "current_employee_only" => "", + "customer_reward" => "", + "customer_reward_duplicate" => "", + "customer_reward_enable" => "", + "customer_reward_invalid_chars" => "", + "customer_reward_required" => "", + "customer_sales_tax_support" => "", + "date_or_time_format" => "", + "datetimeformat" => "Date and Time format", + "decimal_point" => "Decimal Point", + "default_barcode_font_size_number" => "默认条形码字体大小必须是数字", + "default_barcode_font_size_required" => "The default barcode font size is a required field", + "default_barcode_height_number" => "The default barcode height must be a number", + "default_barcode_height_required" => "The default barcode height is a required field", + "default_barcode_num_in_row_number" => "The default barcode num in row must be a number", + "default_barcode_num_in_row_required" => "The default barcode num in row is a required field", + "default_barcode_page_cellspacing_number" => "The default barcode page cellspacing must be a number", + "default_barcode_page_cellspacing_required" => "The default barcode page cellspacing is a required field", + "default_barcode_page_width_number" => "The default barcode page width must be a number", + "default_barcode_page_width_required" => "The default barcode page width is a required field", + "default_barcode_width_number" => "The default barcode width must be a number", + "default_barcode_width_required" => "The default barcode width is a required field", + "default_item_columns" => "", + "default_origin_tax_code" => "", + "default_receivings_discount" => "", + "default_receivings_discount_number" => "", + "default_receivings_discount_required" => "", + "default_sales_discount" => "Default Sales Discount %", + "default_sales_discount_number" => "The default sales discount must be a number", + "default_sales_discount_required" => "The default sales discount is a required field", + "default_tax_category" => "", + "default_tax_code" => "", + "default_tax_jurisdiction" => "", + "default_tax_name_number" => "", + "default_tax_name_required" => "The default tax name is a required field", + "default_tax_rate" => "預設稅率 %", + "default_tax_rate_1" => "稅率 1", + "default_tax_rate_2" => "稅率 2", + "default_tax_rate_3" => "", + "default_tax_rate_number" => "預設稅率必需為數字", + "default_tax_rate_required" => "預設稅率為必填", + "derive_sale_quantity" => "", + "derive_sale_quantity_tooltip" => "", + "dinner_table" => "", + "dinner_table_duplicate" => "", + "dinner_table_enable" => "", + "dinner_table_invalid_chars" => "", + "dinner_table_required" => "", + "dot" => "dot", + "email" => "郵箱", + "email_configuration" => "Email Configuration", + "email_mailpath" => "Path to Sendmail", + "email_protocol" => "Protocol", + "email_receipt_check_behaviour" => "", + "email_receipt_check_behaviour_always" => "", + "email_receipt_check_behaviour_last" => "", + "email_receipt_check_behaviour_never" => "", + "email_smtp_crypto" => "SMTP Encryption", + "email_smtp_host" => "SMTP Server", + "email_smtp_pass" => "SMTP Password", + "email_smtp_port" => "SMTP Port", + "email_smtp_timeout" => "SMTP Timeout (s)", + "email_smtp_user" => "SMTP Username", + "enable_avatar" => "", + "enable_avatar_tooltip" => "", + "enable_dropdown_tooltip" => "", + "enable_new_look" => "", + "enable_right_bar" => "", + "enable_right_bar_tooltip" => "", + "enforce_privacy" => "", + "enforce_privacy_tooltip" => "", + "fax" => "傳真", + "file_perm" => "There are problems with file permissions please fix and reload this page.", + "financial_year" => "", + "financial_year_apr" => "", + "financial_year_aug" => "", + "financial_year_dec" => "", + "financial_year_feb" => "", + "financial_year_jan" => "", + "financial_year_jul" => "", + "financial_year_jun" => "", + "financial_year_mar" => "", + "financial_year_may" => "", + "financial_year_nov" => "", + "financial_year_oct" => "", + "financial_year_sep" => "", + "floating_labels" => "", + "gcaptcha_enable" => "", + "gcaptcha_secret_key" => "", + "gcaptcha_secret_key_required" => "", + "gcaptcha_site_key" => "", + "gcaptcha_site_key_required" => "", + "gcaptcha_tooltip" => "", + "general" => "General", + "general_configuration" => "General Configuration", + "giftcard_number" => "", + "giftcard_random" => "", + "giftcard_series" => "", + "image_allowed_file_types" => "", + "image_max_height_tooltip" => "", + "image_max_size_tooltip" => "", + "image_max_width_tooltip" => "", + "image_restrictions" => "", + "include_hsn" => "", + "info" => "儲存組態", + "info_configuration" => "儲存組態", + "input_groups" => "", + "integrations" => "", + "integrations_configuration" => "", + "invoice" => "Invoice", + "invoice_configuration" => "Invoice Print Settings", + "invoice_default_comments" => "Default Invoice Comments", + "invoice_email_message" => "Invoice Email Template", + "invoice_enable" => "Enable Invoicing", + "invoice_printer" => "Invoice Printer", + "invoice_type" => "", + "is_readable" => "", + "is_writable" => "is writable, but the permissions are higher than 750.", + "item_markup" => "", + "jsprintsetup_required" => "Warning! This disabled functionality will only work if you have the FireFox jsPrintSetup addon installed. Save anyway?", + "language" => "語言", + "last_used_invoice_number" => "", + "last_used_quote_number" => "", + "last_used_work_order_number" => "", + "left" => "Left", + "license" => "License", + "license_configuration" => "License Statement", + "line_sequence" => "", + "lines_per_page" => "Lines Per Page", + "lines_per_page_number" => "The lines per page must be a number", + "lines_per_page_required" => "The lines per page is a required field", + "locale" => "Localisation", + "locale_configuration" => "Localisation Configuration", + "locale_info" => "Localisation Configuration Information", + "location" => "Stock", + "location_configuration" => "Stock Locations", + "location_info" => "Location Configuration Information", + "login_form" => "", + "logout" => "Don't you want to make a backup before logging out?", + "mailchimp" => "", + "mailchimp_api_key" => "", + "mailchimp_configuration" => "", + "mailchimp_key_successfully" => "", + "mailchimp_key_unsuccessfully" => "", + "mailchimp_lists" => "", + "mailchimp_tooltip" => "", + "message" => "Message", + "message_configuration" => "Message Configuration", + "msg_msg" => "Saved Text Message", + "msg_msg_placeholder" => "If you wish to use a SMS template save your message here. Otherwise leave the box blank.", + "msg_pwd" => "SMS-API Password", + "msg_pwd_required" => "SMS-API Password is a required field", + "msg_src" => "SMS-API Sender ID", + "msg_src_required" => "SMS-API Sender ID is a required field", + "msg_uid" => "SMS-API Username", + "msg_uid_required" => "SMS-API Username is a required field", + "multi_pack_enabled" => "", + "no_risk" => "No security/vulnerability risks.", + "none" => "none", + "notify_alignment" => "Notification Popup Position", + "number_format" => "Number Format", + "number_locale" => "Localisation", + "number_locale_invalid" => "The entered locale is invalid. Check the link in the tooltip to find a sensible value", + "number_locale_required" => "Number Locale is a required field", + "number_locale_tooltip" => "Find a suitable locale through this link", + "os_timezone" => "", + "ospos_info" => "", + "payment_options_order" => "Payment Options Order", + "perm_risk" => "Permissions higher than 750 leaves this software at risk.", + "phone" => "公司电话", + "phone_required" => "公司电话为必填", + "print_bottom_margin" => "Margin Bottom", + "print_bottom_margin_number" => "The default bottom margin must be a number", + "print_bottom_margin_required" => "The default bottom margin is a required field", + "print_delay_autoreturn" => "", + "print_delay_autoreturn_number" => "", + "print_delay_autoreturn_required" => "", + "print_footer" => "Print Browser Footer", + "print_header" => "Print Browser Header", + "print_left_margin" => "Margin Left", + "print_left_margin_number" => "The default left margin must be a number", + "print_left_margin_required" => "The default left margin is a required field", + "print_receipt_check_behaviour" => "", + "print_receipt_check_behaviour_always" => "", + "print_receipt_check_behaviour_last" => "", + "print_receipt_check_behaviour_never" => "", + "print_right_margin" => "Margin Right", + "print_right_margin_number" => "The default right margin must be a number", + "print_right_margin_required" => "The default right margin is a required field", + "print_silently" => "Show Print Dialog", + "print_top_margin" => "Margin Top", + "print_top_margin_number" => "The default top margin must be a number", + "print_top_margin_required" => "The default top margin is a required field", + "quantity_decimals" => "Quantity Decimals", + "quick_cash_enable" => "", + "quote_default_comments" => "", + "receipt" => "收据", + "receipt_category" => "", + "receipt_configuration" => "收据打印设置", + "receipt_default" => "默认", + "receipt_font_size" => "字体大小", + "receipt_font_size_number" => "字体大小必须是数字", + "receipt_font_size_required" => "字体大小是必填的", + "receipt_info" => "Receipt Configuration Information", + "receipt_printer" => "收据打印机", + "receipt_short" => "Short", + "receipt_show_company_name" => "显示公司名称", + "receipt_show_description" => "显示描述", + "receipt_show_serialnumber" => "显示序列号", + "receipt_show_tax_ind" => "", + "receipt_show_taxes" => "显示税", + "receipt_show_total_discount" => "Show Total Discount", + "receipt_template" => "收据模板", + "receiving_calculate_average_price" => "Calc avg. Price (Receiving)", + "recv_invoice_format" => "Receivings Invoice Format", + "register_mode_default" => "", + "report_an_issue" => "", + "return_policy_required" => "退换货政策为必填", + "reward" => "", + "reward_configuration" => "", + "right" => "Right", + "sales_invoice_format" => "Sales Invoice Format", + "sales_quote_format" => "", + "saved_successfully" => "組態設置儲存成功", + "saved_unsuccessfully" => "組態設置儲存失敗", + "security_issue" => "Security Vulnerability Warning", + "server_notice" => "Please use the below info for issue reporting.", + "service_charge" => "", + "show_due_enable" => "", + "show_office_group" => "", + "statistics" => "Send statistics", + "statistics_tooltip" => "Send statistics for development and feature improvement purposes", + "stock_location" => "仓库地址", + "stock_location_duplicate" => "仓库地址不可重复", + "stock_location_invalid_chars" => "The stock location name can not contain '_'", + "stock_location_required" => "Stock location number is a required field", + "suggestions_fifth_column" => "", + "suggestions_first_column" => "", + "suggestions_fourth_column" => "", + "suggestions_layout" => "", + "suggestions_second_column" => "", + "suggestions_third_column" => "", + "system_conf" => "Setup & Conf", + "system_info" => "System Info", + "table" => "", + "table_configuration" => "", + "takings_printer" => "Takings Printer", + "tax" => "税", + "tax_category" => "", + "tax_category_duplicate" => "", + "tax_category_invalid_chars" => "", + "tax_category_required" => "", + "tax_category_used" => "", + "tax_configuration" => "", + "tax_decimals" => "税的小数点", + "tax_id" => "税ID", + "tax_included" => "含税", + "theme" => "主题", + "theme_preview" => "", + "thousands_separator" => "千位分隔符", + "timezone" => "时区", + "timezone_error" => "", + "top" => "Top", + "use_destination_based_tax" => "", + "user_timezone" => "", + "website" => "网站", + "wholesale_markup" => "", + "work_order_enable" => "", + "work_order_format" => "", ]; diff --git a/app/Language/zh-Hans/Customers.php b/app/Language/zh-Hans/Customers.php index 3b9536556..c1bfa9d2e 100644 --- a/app/Language/zh-Hans/Customers.php +++ b/app/Language/zh-Hans/Customers.php @@ -1,56 +1,56 @@ "账号 #", - "account_number_duplicate" => "账号已存在", - "available_points" => "可用积分", - "available_points_value" => "", - "average" => "平均花费", - "avg_discount" => "", - "basic_information" => "个人信息", - "cannot_be_deleted" => "无法删除选定客户,选定的客户存有销售记录。", - "company_name" => "公司名字", - "confirm_delete" => "你确定要删除选定的客户?", - "confirm_restore" => "你确定要恢复选定的客户?", - "consent" => "", - "consent_required" => "", - "csv_import_failed" => "CSV导入失败", - "csv_import_nodata_wrongformat" => "上传文件没有数据或者格式不正确", - "csv_import_partially_failed" => "Most Customers imported. But some were not, here is the list", - "csv_import_success" => "成功导入客户", - "customer" => "客戶", - "date" => "日期", - "discount" => "折扣", - "discount_fixed" => "", - "discount_percent" => "折扣率", - "discount_type" => "优惠类型", - "email_duplicate" => "email地址已被使用", - "employee" => "员工", - "error_adding_updating" => "添加/更新客戶错误", - "import_items_csv" => "Import customers from CSV sheet", - "mailchimp_activity_click" => "", - "mailchimp_activity_lastopen" => "", - "mailchimp_activity_open" => "", - "mailchimp_activity_total" => "", - "mailchimp_activity_unopen" => "", - "mailchimp_email_client" => "", - "mailchimp_info" => "", - "mailchimp_member_rating" => "", - "mailchimp_status" => "", - "mailchimp_vip" => "", - "max" => "", - "min" => "", - "new" => "新客戶", - "none_selected" => "您还没有选择任何客户进行删除", - "one_or_multiple" => "客戶", - "quantity" => "", - "stats_info" => "", - "successful_adding" => "成功新增客户", - "successful_deleted" => "成功刪除", - "successful_updating" => "成功更新客户", - "tax_code" => "税代号", - "tax_id" => "税ID", - "taxable" => "應課稅", - "total" => "总支出", - "update" => "更新客戶", - "rewards_package" => "", + "account_number" => "账号 #", + "account_number_duplicate" => "账号已存在", + "available_points" => "可用积分", + "available_points_value" => "", + "average" => "平均花费", + "avg_discount" => "", + "basic_information" => "个人信息", + "cannot_be_deleted" => "无法删除选定客户,选定的客户存有销售记录。", + "company_name" => "公司名字", + "confirm_delete" => "你确定要删除选定的客户?", + "confirm_restore" => "你确定要恢复选定的客户?", + "consent" => "", + "consent_required" => "", + "csv_import_failed" => "CSV导入失败", + "csv_import_nodata_wrongformat" => "上传文件没有数据或者格式不正确", + "csv_import_partially_failed" => "Most Customers imported. But some were not, here is the list", + "csv_import_success" => "成功导入客户", + "customer" => "客戶", + "date" => "日期", + "discount" => "折扣", + "discount_fixed" => "", + "discount_percent" => "折扣率", + "discount_type" => "优惠类型", + "email_duplicate" => "email地址已被使用", + "employee" => "员工", + "error_adding_updating" => "添加/更新客戶错误", + "import_items_csv" => "Import customers from CSV sheet", + "mailchimp_activity_click" => "", + "mailchimp_activity_lastopen" => "", + "mailchimp_activity_open" => "", + "mailchimp_activity_total" => "", + "mailchimp_activity_unopen" => "", + "mailchimp_email_client" => "", + "mailchimp_info" => "", + "mailchimp_member_rating" => "", + "mailchimp_status" => "", + "mailchimp_vip" => "", + "max" => "", + "min" => "", + "new" => "新客戶", + "none_selected" => "您还没有选择任何客户进行删除", + "one_or_multiple" => "客戶", + "quantity" => "", + "stats_info" => "", + "successful_adding" => "成功新增客户", + "successful_deleted" => "成功刪除", + "successful_updating" => "成功更新客户", + "tax_code" => "税代号", + "tax_id" => "税ID", + "taxable" => "應課稅", + "total" => "总支出", + "update" => "更新客戶", + "rewards_package" => "", ]; diff --git a/app/Language/zh-Hans/Datepicker.php b/app/Language/zh-Hans/Datepicker.php index 60cf28d7a..dde00df76 100644 --- a/app/Language/zh-Hans/Datepicker.php +++ b/app/Language/zh-Hans/Datepicker.php @@ -1,23 +1,23 @@ "全部", - "apply" => "Apply", - "cancel" => "取消銷售", - "custom" => "Custom", - "from" => "From", - "last_30" => "過去七天", - "last_7" => "過去七天", - "last_financial_year" => "", - "last_month" => "上個月", - "last_year" => "去年", - "same_month_last_year" => "Same Month Last Year", - "same_month_to_same_day_last_year" => "Same Month To Same Day Last Year", - "this_financial_year" => "", - "this_month" => "這個月", - "this_year" => "今年", - "to" => "To", - "today" => "今天", - "today_last_year" => "Today Last Year", - "weekstart" => "0", - "yesterday" => "昨天", + "all_time" => "全部", + "apply" => "Apply", + "cancel" => "取消銷售", + "custom" => "Custom", + "from" => "From", + "last_30" => "過去七天", + "last_7" => "過去七天", + "last_financial_year" => "", + "last_month" => "上個月", + "last_year" => "去年", + "same_month_last_year" => "Same Month Last Year", + "same_month_to_same_day_last_year" => "Same Month To Same Day Last Year", + "this_financial_year" => "", + "this_month" => "這個月", + "this_year" => "今年", + "to" => "To", + "today" => "今天", + "today_last_year" => "Today Last Year", + "weekstart" => "0", + "yesterday" => "昨天", ]; diff --git a/app/Language/zh-Hans/Employees.php b/app/Language/zh-Hans/Employees.php index 9b407dd9a..5ec145653 100644 --- a/app/Language/zh-Hans/Employees.php +++ b/app/Language/zh-Hans/Employees.php @@ -1,44 +1,44 @@ "", - "basic_information" => "員工基本資料", - "cannot_be_deleted" => "無法刪除選定的僱員,選定的員工中已有銷售紀錄或你正在試圖刪除自己 :)", - "change_employee" => "", - "change_password" => "", - "clerk" => "", - "commission" => "", - "confirm_delete" => "你確定要刪除所選的員工嗎?", - "confirm_restore" => "", - "current_password" => "", - "current_password_invalid" => "", - "employee" => "員工", - "error_adding_updating" => "添加/更新員工錯誤", - "error_deleting_demo_admin" => "您不能刪除admin用戶", - "error_updating_demo_admin" => "您不能更改admin用戶", - "language" => "", - "login_info" => "員工登錄資料", - "manager" => "", - "new" => "新員工", - "none_selected" => "您還沒有選擇任何員工進行刪除", - "one_or_multiple" => "員工", - "password" => "密碼", - "password_minlength" => "密碼需為八個字元以上", - "password_must_match" => "密碼與確認密碼不一致", - "password_not_must_match" => "", - "password_required" => "請輸入密碼", - "permission_desc" => "勾選後授予使用該模組功能", - "permission_info" => "員工權限", - "repeat_password" => "確認密碼", - "subpermission_required" => "Add at least one grant for each module", - "successful_adding" => "新增員工資料成功", - "successful_change_password" => "", - "successful_deleted" => "成功刪除員工資料", - "successful_updating" => "成功更新員工資料", - "system_language" => "", - "unsuccessful_change_password" => "", - "update" => "更新員工", - "username" => "帳號", - "username_duplicate" => "", - "username_minlength" => "帳號必需為五個字元以上", - "username_required" => "帳號為必填", + "administrator" => "", + "basic_information" => "員工基本資料", + "cannot_be_deleted" => "無法刪除選定的僱員,選定的員工中已有銷售紀錄或你正在試圖刪除自己 :)", + "change_employee" => "", + "change_password" => "", + "clerk" => "", + "commission" => "", + "confirm_delete" => "你確定要刪除所選的員工嗎?", + "confirm_restore" => "", + "current_password" => "", + "current_password_invalid" => "", + "employee" => "員工", + "error_adding_updating" => "添加/更新員工錯誤", + "error_deleting_demo_admin" => "您不能刪除admin用戶", + "error_updating_demo_admin" => "您不能更改admin用戶", + "language" => "", + "login_info" => "員工登錄資料", + "manager" => "", + "new" => "新員工", + "none_selected" => "您還沒有選擇任何員工進行刪除", + "one_or_multiple" => "員工", + "password" => "密碼", + "password_minlength" => "密碼需為八個字元以上", + "password_must_match" => "密碼與確認密碼不一致", + "password_not_must_match" => "", + "password_required" => "請輸入密碼", + "permission_desc" => "勾選後授予使用該模組功能", + "permission_info" => "員工權限", + "repeat_password" => "確認密碼", + "subpermission_required" => "Add at least one grant for each module", + "successful_adding" => "新增員工資料成功", + "successful_change_password" => "", + "successful_deleted" => "成功刪除員工資料", + "successful_updating" => "成功更新員工資料", + "system_language" => "", + "unsuccessful_change_password" => "", + "update" => "更新員工", + "username" => "帳號", + "username_duplicate" => "", + "username_minlength" => "帳號必需為五個字元以上", + "username_required" => "帳號為必填", ]; diff --git a/app/Language/zh-Hans/Enum.php b/app/Language/zh-Hans/Enum.php index af48b2244..9f003be5d 100644 --- a/app/Language/zh-Hans/Enum.php +++ b/app/Language/zh-Hans/Enum.php @@ -1,10 +1,10 @@ "", - "half_even" => "", - "half_five" => "", - "half_odd" => "", - "half_up" => "", - "round_down" => "去尾法", - "round_up" => "进一法", + "half_down" => "", + "half_even" => "", + "half_five" => "", + "half_odd" => "", + "half_up" => "", + "round_down" => "去尾法", + "round_up" => "进一法", ]; diff --git a/app/Language/zh-Hans/Error.php b/app/Language/zh-Hans/Error.php index 5da4ca47b..74f909eef 100644 --- a/app/Language/zh-Hans/Error.php +++ b/app/Language/zh-Hans/Error.php @@ -1,5 +1,5 @@ "您沒有權限使用模組:", - "unknown" => "未知", + "no_permission_module" => "您沒有權限使用模組:", + "unknown" => "未知", ]; diff --git a/app/Language/zh-Hans/Expenses.php b/app/Language/zh-Hans/Expenses.php index b14848c51..d774819cf 100644 --- a/app/Language/zh-Hans/Expenses.php +++ b/app/Language/zh-Hans/Expenses.php @@ -1,50 +1,50 @@ "添加支出", - "amount" => "Amount", - "amount_number" => "Amount must be a number", - "amount_required" => "Expense Amount required", - "by_category" => "Category", - "cannot_be_deleted" => "Could not delete Category Expense(s)", - "cash" => "现金", - "cash_filter" => "Cash", - "categories_name" => "类别", - "category_required" => "类别是必填的", - "check" => "Check", - "check_filter" => "Check", - "confirm_delete" => "Are you sure you want to delete the selected Expense?", - "confirm_restore" => "", - "credit" => "信用卡", - "credit_filter" => "Credit Card", - "date" => "Date", - "date_number" => "日期必须是数字", - "date_required" => "日期是必填的", - "debit" => "借记卡", - "debit_filter" => "Debit Card", - "description" => "描述", - "due" => "Due", - "due_filter" => "Due", - "employee" => "Created By", - "error_adding_updating" => "Error adding/updating Expense", - "expense_id" => "Id", - "expenses_employee" => "Employee", - "info" => "Expense Info", - "ip_address" => "", - "is_deleted" => "Deleted", - "name_required" => "名称是必填的", - "new" => "新支出", - "new_supplier" => "", - "no_expenses_to_display" => "There are no Expenses to display", - "none_selected" => "You have not selected any Expense", - "one_or_multiple" => "Expense(s)", - "payment" => "Payment Type", - "start_typing_supplier_name" => "", - "successful_adding" => "支出添加成功", - "successful_deleted" => "支出删除成功", - "successful_updating" => "支出更新成功", - "supplier_name" => "供应商", - "supplier_tax_code" => "税代码", - "tax_amount" => "税", - "tax_amount_number" => "", - "update" => "更新支出", + "add_item" => "添加支出", + "amount" => "Amount", + "amount_number" => "Amount must be a number", + "amount_required" => "Expense Amount required", + "by_category" => "Category", + "cannot_be_deleted" => "Could not delete Category Expense(s)", + "cash" => "现金", + "cash_filter" => "Cash", + "categories_name" => "类别", + "category_required" => "类别是必填的", + "check" => "Check", + "check_filter" => "Check", + "confirm_delete" => "Are you sure you want to delete the selected Expense?", + "confirm_restore" => "", + "credit" => "信用卡", + "credit_filter" => "Credit Card", + "date" => "Date", + "date_number" => "日期必须是数字", + "date_required" => "日期是必填的", + "debit" => "借记卡", + "debit_filter" => "Debit Card", + "description" => "描述", + "due" => "Due", + "due_filter" => "Due", + "employee" => "Created By", + "error_adding_updating" => "Error adding/updating Expense", + "expense_id" => "Id", + "expenses_employee" => "Employee", + "info" => "Expense Info", + "ip_address" => "", + "is_deleted" => "Deleted", + "name_required" => "名称是必填的", + "new" => "新支出", + "new_supplier" => "", + "no_expenses_to_display" => "There are no Expenses to display", + "none_selected" => "You have not selected any Expense", + "one_or_multiple" => "Expense(s)", + "payment" => "Payment Type", + "start_typing_supplier_name" => "", + "successful_adding" => "支出添加成功", + "successful_deleted" => "支出删除成功", + "successful_updating" => "支出更新成功", + "supplier_name" => "供应商", + "supplier_tax_code" => "税代码", + "tax_amount" => "税", + "tax_amount_number" => "", + "update" => "更新支出", ]; diff --git a/app/Language/zh-Hans/Expenses_categories.php b/app/Language/zh-Hans/Expenses_categories.php index 87ec843ab..c4e9be902 100644 --- a/app/Language/zh-Hans/Expenses_categories.php +++ b/app/Language/zh-Hans/Expenses_categories.php @@ -1,22 +1,22 @@ "Expense Category name required", - "add_item" => "Add Category", - "cannot_be_deleted" => "Could not delete Category Expense(s)", - "category_id" => "Id", - "confirm_delete" => "Are you sure you want to delete the selected Expense Category?", - "confirm_restore" => "", - "description" => "Category Description", - "error_adding_updating" => "Error adding/updating Expense Category", - "info" => "Category Expense Info", - "name" => "Category Name", - "new" => "New Category", - "no_expenses_categories_to_display" => "No Category to display", - "none_selected" => "You have not selected any Category Expense", - "one_or_multiple" => "Category Expense", - "quantity" => "Quantity", - "successful_adding" => "Expense Category add successful", - "successful_deleted" => "Expense Category delete successful", - "successful_updating" => "Expense Category update successful", - "update" => "Update Category", + "category_name_required" => "Expense Category name required", + "add_item" => "Add Category", + "cannot_be_deleted" => "Could not delete Category Expense(s)", + "category_id" => "Id", + "confirm_delete" => "Are you sure you want to delete the selected Expense Category?", + "confirm_restore" => "", + "description" => "Category Description", + "error_adding_updating" => "Error adding/updating Expense Category", + "info" => "Category Expense Info", + "name" => "Category Name", + "new" => "New Category", + "no_expenses_categories_to_display" => "No Category to display", + "none_selected" => "You have not selected any Category Expense", + "one_or_multiple" => "Category Expense", + "quantity" => "Quantity", + "successful_adding" => "Expense Category add successful", + "successful_deleted" => "Expense Category delete successful", + "successful_updating" => "Expense Category update successful", + "update" => "Update Category", ]; diff --git a/app/Language/zh-Hans/Giftcards.php b/app/Language/zh-Hans/Giftcards.php index 6af5aa4d6..f2ba1df62 100644 --- a/app/Language/zh-Hans/Giftcards.php +++ b/app/Language/zh-Hans/Giftcards.php @@ -1,71 +1,71 @@ "加/減庫存", - "allow_alt_description" => "允許使用ALT描述", - "bulk_edit" => "批量編輯", - "cannot_be_deleted" => "無法刪除選定的禮金券,一個或多個所選擇的禮金券已經使用。", - "cannot_find_giftcard" => "找不到禮金券的訊息", - "cannot_use" => "Giftcard {0} cannot be used for this sale. Invalid Customer!", - "card_value" => "金額", - "category" => "類別", - "change_all_to_allow_alt_desc" => "充許全部ALT倒序", - "change_all_to_not_allow_allow_desc" => "不允許全部ALT倒序", - "change_all_to_serialized" => "全部更改序號至序列化", - "change_all_to_unserialized" => "全部更改序號至非序列化", - "confirm_bulk_edit" => "您確定您要編輯的所有選擇的禮金券嗎?", - "confirm_delete" => "你確定你要刪除選定的禮金券?", - "confirm_restore" => "", - "cost_price" => "成本價格", - "count" => "更新庫存", - "csv_import_failed" => "CSV匯入失敗", - "current_quantity" => "當前數量", - "description" => "描述", - "details_count" => "庫存盤點詳情", - "do_nothing" => "不做任何修改", - "edit_fields_you_want_to_update" => "編輯所有選定的禮金券中你想要編輯的資料", - "edit_multiple_giftcards" => "多重編輯", - "error_adding_updating" => "新增/更新禮金券錯誤", - "error_updating_multiple" => "禮金券更新錯誤", - "generate_barcodes" => "產生條碼", - "giftcard" => "禮金券", - "giftcard_number" => "禮金券編號", - "info_provided_by" => "提供信息的來源", - "inventory_comments" => "評論", - "is_serialized" => "禮金券序號", - "low_inventory_giftcards" => "禮金券庫存過低", - "manually_editing_of_quantity" => "手動編輯數量", - "must_select_giftcard_for_barcode" => "您必須選擇至少一個禮金券才能生成條形碼", - "new" => "新建禮金券", - "no_description_giftcards" => "沒有描述的禮金券", - "no_giftcards_to_display" => "沒有禮金券可以顯示", - "none" => "無", - "none_selected" => "您還沒有選擇任何禮金券進行編輯", - "number" => "禮金券編號需為數字", - "number_information" => "禮金券編號", - "number_required" => "請輸入禮金券編號", - "one_or_multiple" => "禮金券", - "person_id" => "Customer", - "quantity" => "數量", - "quantity_required" => "數量是必填字段。請按關閉(X)來取消", - "remaining_balance" => "Giftcard {0} remaining value is {1}!", - "reorder_level" => "補貨點", - "retrive_giftcard_info" => "檢索禮金券訊息", - "sales_tax_1" => "銷售稅額 1", - "sales_tax_2" => "銷售稅額 2", - "serialized_giftcards" => "排序禮金券", - "successful_adding" => "新增禮金券成功", - "successful_bulk_edit" => "您已成功更新選定的禮品卡", - "successful_deleted" => "成功刪除禮金券", - "successful_updating" => "成功更新禮金券", - "supplier" => "供應商", - "tax_1" => "稅額 1", - "tax_2" => "稅額 2", - "tax_percent" => "稅率", - "tax_percents" => "稅率 Percent(s)", - "unit_price" => "單位價格", - "upc_database" => "UPC Database", - "update" => "更新禮金券", - "use_inventory_menu" => "使用庫存清單", - "value" => "禮金券金額需為數字", - "value_required" => "請輸入禮金券金額", + "add_minus" => "加/減庫存", + "allow_alt_description" => "允許使用ALT描述", + "bulk_edit" => "批量編輯", + "cannot_be_deleted" => "無法刪除選定的禮金券,一個或多個所選擇的禮金券已經使用。", + "cannot_find_giftcard" => "找不到禮金券的訊息", + "cannot_use" => "Giftcard {0} cannot be used for this sale. Invalid Customer!", + "card_value" => "金額", + "category" => "類別", + "change_all_to_allow_alt_desc" => "充許全部ALT倒序", + "change_all_to_not_allow_allow_desc" => "不允許全部ALT倒序", + "change_all_to_serialized" => "全部更改序號至序列化", + "change_all_to_unserialized" => "全部更改序號至非序列化", + "confirm_bulk_edit" => "您確定您要編輯的所有選擇的禮金券嗎?", + "confirm_delete" => "你確定你要刪除選定的禮金券?", + "confirm_restore" => "", + "cost_price" => "成本價格", + "count" => "更新庫存", + "csv_import_failed" => "CSV匯入失敗", + "current_quantity" => "當前數量", + "description" => "描述", + "details_count" => "庫存盤點詳情", + "do_nothing" => "不做任何修改", + "edit_fields_you_want_to_update" => "編輯所有選定的禮金券中你想要編輯的資料", + "edit_multiple_giftcards" => "多重編輯", + "error_adding_updating" => "新增/更新禮金券錯誤", + "error_updating_multiple" => "禮金券更新錯誤", + "generate_barcodes" => "產生條碼", + "giftcard" => "禮金券", + "giftcard_number" => "禮金券編號", + "info_provided_by" => "提供信息的來源", + "inventory_comments" => "評論", + "is_serialized" => "禮金券序號", + "low_inventory_giftcards" => "禮金券庫存過低", + "manually_editing_of_quantity" => "手動編輯數量", + "must_select_giftcard_for_barcode" => "您必須選擇至少一個禮金券才能生成條形碼", + "new" => "新建禮金券", + "no_description_giftcards" => "沒有描述的禮金券", + "no_giftcards_to_display" => "沒有禮金券可以顯示", + "none" => "無", + "none_selected" => "您還沒有選擇任何禮金券進行編輯", + "number" => "禮金券編號需為數字", + "number_information" => "禮金券編號", + "number_required" => "請輸入禮金券編號", + "one_or_multiple" => "禮金券", + "person_id" => "Customer", + "quantity" => "數量", + "quantity_required" => "數量是必填字段。請按關閉(X)來取消", + "remaining_balance" => "Giftcard {0} remaining value is {1}!", + "reorder_level" => "補貨點", + "retrive_giftcard_info" => "檢索禮金券訊息", + "sales_tax_1" => "銷售稅額 1", + "sales_tax_2" => "銷售稅額 2", + "serialized_giftcards" => "排序禮金券", + "successful_adding" => "新增禮金券成功", + "successful_bulk_edit" => "您已成功更新選定的禮品卡", + "successful_deleted" => "成功刪除禮金券", + "successful_updating" => "成功更新禮金券", + "supplier" => "供應商", + "tax_1" => "稅額 1", + "tax_2" => "稅額 2", + "tax_percent" => "稅率", + "tax_percents" => "稅率 Percent(s)", + "unit_price" => "單位價格", + "upc_database" => "UPC Database", + "update" => "更新禮金券", + "use_inventory_menu" => "使用庫存清單", + "value" => "禮金券金額需為數字", + "value_required" => "請輸入禮金券金額", ]; diff --git a/app/Language/zh-Hans/Item_kits.php b/app/Language/zh-Hans/Item_kits.php index 00e4dc4ef..7e0f61e6b 100644 --- a/app/Language/zh-Hans/Item_kits.php +++ b/app/Language/zh-Hans/Item_kits.php @@ -1,41 +1,41 @@ "新增套件", - "all" => "", - "cannot_be_deleted" => "無法刪除產品套件", - "confirm_delete" => "你確定你要刪除選取的產品套件嗎?", - "confirm_restore" => "", - "description" => "產品套件描述", - "discount" => "", - "discount_fixed" => "", - "discount_percent" => "", - "discount_type" => "", - "error_adding_updating" => "新增/更新產品套件錯誤", - "find_kit_item" => "", - "info" => "產品套件資料", - "item" => "產品", - "item_kit_number" => "", - "item_kit_number_duplicate" => "", - "item_number" => "", - "item_number_duplicate" => "", - "items" => "產品", - "kit" => "Kit Id", - "kit_and_components" => "", - "kit_and_stock" => "", - "kit_only" => "", - "name" => "產品套件", - "new" => "新增產品套件", - "no_item_kits_to_display" => "沒有產品套件", - "none_selected" => "沒有選擇任何產品套件", - "one_or_multiple" => "產品套件", - "price_option" => "", - "priced_only" => "", - "print_option" => "", - "quantity" => "數量", - "sequence" => "", - "successful_adding" => "新增產品套件成功", - "successful_deleted" => "刪除成功", - "successful_updating" => "更新產品套件成功", - "unit_price" => "", - "update" => "更新產品套件", + "add_item" => "新增套件", + "all" => "", + "cannot_be_deleted" => "無法刪除產品套件", + "confirm_delete" => "你確定你要刪除選取的產品套件嗎?", + "confirm_restore" => "", + "description" => "產品套件描述", + "discount" => "", + "discount_fixed" => "", + "discount_percent" => "", + "discount_type" => "", + "error_adding_updating" => "新增/更新產品套件錯誤", + "find_kit_item" => "", + "info" => "產品套件資料", + "item" => "產品", + "item_kit_number" => "", + "item_kit_number_duplicate" => "", + "item_number" => "", + "item_number_duplicate" => "", + "items" => "產品", + "kit" => "Kit Id", + "kit_and_components" => "", + "kit_and_stock" => "", + "kit_only" => "", + "name" => "產品套件", + "new" => "新增產品套件", + "no_item_kits_to_display" => "沒有產品套件", + "none_selected" => "沒有選擇任何產品套件", + "one_or_multiple" => "產品套件", + "price_option" => "", + "priced_only" => "", + "print_option" => "", + "quantity" => "數量", + "sequence" => "", + "successful_adding" => "新增產品套件成功", + "successful_deleted" => "刪除成功", + "successful_updating" => "更新產品套件成功", + "unit_price" => "", + "update" => "更新產品套件", ]; diff --git a/app/Language/zh-Hans/Items.php b/app/Language/zh-Hans/Items.php index 00f1afa20..ab00627f7 100644 --- a/app/Language/zh-Hans/Items.php +++ b/app/Language/zh-Hans/Items.php @@ -1,120 +1,120 @@ "增/減庫存", - "allow_alt_description" => "允許ALT描述", - "amount_entry" => "", - "bulk_edit" => "批次編輯", - "buy_price_required" => "進貨價為必填欄位", - "cannot_be_deleted" => "無法刪除選定產品,所選產品中的一個或多個有銷售紀綠。", - "cannot_find_item" => "無法找到任何有關的產品", - "categories" => "", - "category" => "類別", - "category_new" => "", - "category_required" => "類別為必填欄位", - "change_all_to_allow_alt_desc" => " 充許全部ALT倒序", - "change_all_to_not_allow_allow_desc" => "不允許全部ALT倒序", - "change_all_to_serialized" => "全部更改序號至序列化", - "change_all_to_unserialized" => "全部更改序號至非序列化", - "change_image" => "Change Image", - "confirm_bulk_edit" => "您確定您要編輯的所有選定的產品嗎?", - "confirm_bulk_edit_wipe_taxes" => "All item tax information will be replaced!", - "confirm_delete" => "你確定你要刪除選定的產品嗎?", - "confirm_restore" => "", - "cost_price" => "成本價", - "cost_price_number" => "成本價必需是數值", - "cost_price_required" => "成本價為必填攔位", - "count" => "更新庫存", - "csv_import_failed" => "CSV匯入失敗", - "csv_import_nodata_wrongformat" => "Your uploaded file has no data or wrong format", - "csv_import_partially_failed" => "Most Items imported. But some were not, here is the list", - "csv_import_success" => "Import of Items successful", - "current_quantity" => "當前數量", - "default_pack_name" => "", - "description" => "描述", - "details_count" => "庫存盤點詳情", - "do_nothing" => "沒有執行任何修改", - "edit" => "", - "edit_fields_you_want_to_update" => "編輯您選定產品的所有欄位", - "edit_multiple_items" => "編輯多項產品", - "empty_upc_items" => "Empty UPC Items", - "error_adding_updating" => "新增/更新產品錯誤", - "error_updating_multiple" => "更新產品錯誤", - "generate_barcodes" => "產生條碼", - "hsn_code" => "", - "image" => "Avatar", - "import_items_csv" => "Import items from CSV sheet", - "info_provided_by" => "訊息提供者", - "inventory" => "庫存", - "inventory_CSV_import_quantity" => "", - "inventory_comments" => "評論", - "inventory_data_tracking" => "", - "inventory_date" => "", - "inventory_employee" => "", - "inventory_in_out_quantity" => "", - "inventory_remarks" => "", - "is_deleted" => "Deleted", - "is_printed" => "", - "is_serialized" => "產品有序號", - "item" => "產品", - "item_id" => "", - "item_number" => "UPC/EAN/ISBN", - "item_number_duplicate" => "The item number is already present in the database", - "kit" => "", - "location" => "位置", - "low_inventory_items" => "低庫存產品", - "low_sell_item" => "", - "manually_editing_of_quantity" => "手動編輯數量", - "markup" => "", - "name" => "產品名稱", - "name_required" => "產品名稱為必填", - "new" => "新增產品", - "no_description_items" => "產品沒有說明", - "no_items_to_display" => "沒有產品可以顯示", - "none" => "無", - "none_selected" => "您還沒有選擇任何產品進行編輯", - "nonstock" => "", - "number_information" => "產品編號", - "number_required" => "UPC/EAN/ISBN is a required field", - "one_or_multiple" => "產品", - "pack_name" => "", - "qty_per_pack" => "", - "quantity" => "數量", - "quantity_number" => "數量必需是數值", - "quantity_required" => "數量為必填欄位", - "receiving_quantity" => "Receiving quantity", - "remove_image" => "Remove Image", - "reorder_level" => "補貨點", - "reorder_level_number" => "補貨點必需是數值", - "reorder_level_required" => "補貨點為必填欄位", - "retrive_item_info" => "檢索產品訊息", - "sales_tax_1" => "營業稅", - "sales_tax_2" => "營業稅 2", - "search_attributes" => "Search Custom Fields", - "select_image" => "Select Image", - "serialized_items" => "序列化產品", - "standard" => "", - "stock" => "", - "stock_location" => "倉庫地址", - "stock_type" => "", - "successful_adding" => "已成功新增產品", - "successful_bulk_edit" => "您已成功更新所選產品", - "successful_deleted" => "刪除成功", - "successful_updating" => "已成功更新產品", - "supplier" => "供貨商", - "tax_1" => "稅額 1", - "tax_2" => "稅額 2", - "tax_3" => "", - "tax_category" => "", - "tax_percent" => "稅率", - "tax_percent_number" => "", - "tax_percent_required" => "稅率為必填欄位", - "tax_percents" => "稅率 %", - "temp" => "", - "type" => "", - "unit_price" => "單價", - "unit_price_number" => "單價必需是數值", - "unit_price_required" => "單價為必填欄位", - "upc_database" => "UPC Database", - "update" => "更新產品", - "use_inventory_menu" => "使用庫存清單", + "add_minus" => "增/減庫存", + "allow_alt_description" => "允許ALT描述", + "amount_entry" => "", + "bulk_edit" => "批次編輯", + "buy_price_required" => "進貨價為必填欄位", + "cannot_be_deleted" => "無法刪除選定產品,所選產品中的一個或多個有銷售紀綠。", + "cannot_find_item" => "無法找到任何有關的產品", + "categories" => "", + "category" => "類別", + "category_new" => "", + "category_required" => "類別為必填欄位", + "change_all_to_allow_alt_desc" => " 充許全部ALT倒序", + "change_all_to_not_allow_allow_desc" => "不允許全部ALT倒序", + "change_all_to_serialized" => "全部更改序號至序列化", + "change_all_to_unserialized" => "全部更改序號至非序列化", + "change_image" => "Change Image", + "confirm_bulk_edit" => "您確定您要編輯的所有選定的產品嗎?", + "confirm_bulk_edit_wipe_taxes" => "All item tax information will be replaced!", + "confirm_delete" => "你確定你要刪除選定的產品嗎?", + "confirm_restore" => "", + "cost_price" => "成本價", + "cost_price_number" => "成本價必需是數值", + "cost_price_required" => "成本價為必填攔位", + "count" => "更新庫存", + "csv_import_failed" => "CSV匯入失敗", + "csv_import_nodata_wrongformat" => "Your uploaded file has no data or wrong format", + "csv_import_partially_failed" => "Most Items imported. But some were not, here is the list", + "csv_import_success" => "Import of Items successful", + "current_quantity" => "當前數量", + "default_pack_name" => "", + "description" => "描述", + "details_count" => "庫存盤點詳情", + "do_nothing" => "沒有執行任何修改", + "edit" => "", + "edit_fields_you_want_to_update" => "編輯您選定產品的所有欄位", + "edit_multiple_items" => "編輯多項產品", + "empty_upc_items" => "Empty UPC Items", + "error_adding_updating" => "新增/更新產品錯誤", + "error_updating_multiple" => "更新產品錯誤", + "generate_barcodes" => "產生條碼", + "hsn_code" => "", + "image" => "Avatar", + "import_items_csv" => "Import items from CSV sheet", + "info_provided_by" => "訊息提供者", + "inventory" => "庫存", + "inventory_CSV_import_quantity" => "", + "inventory_comments" => "評論", + "inventory_data_tracking" => "", + "inventory_date" => "", + "inventory_employee" => "", + "inventory_in_out_quantity" => "", + "inventory_remarks" => "", + "is_deleted" => "Deleted", + "is_printed" => "", + "is_serialized" => "產品有序號", + "item" => "產品", + "item_id" => "", + "item_number" => "UPC/EAN/ISBN", + "item_number_duplicate" => "The item number is already present in the database", + "kit" => "", + "location" => "位置", + "low_inventory_items" => "低庫存產品", + "low_sell_item" => "", + "manually_editing_of_quantity" => "手動編輯數量", + "markup" => "", + "name" => "產品名稱", + "name_required" => "產品名稱為必填", + "new" => "新增產品", + "no_description_items" => "產品沒有說明", + "no_items_to_display" => "沒有產品可以顯示", + "none" => "無", + "none_selected" => "您還沒有選擇任何產品進行編輯", + "nonstock" => "", + "number_information" => "產品編號", + "number_required" => "UPC/EAN/ISBN is a required field", + "one_or_multiple" => "產品", + "pack_name" => "", + "qty_per_pack" => "", + "quantity" => "數量", + "quantity_number" => "數量必需是數值", + "quantity_required" => "數量為必填欄位", + "receiving_quantity" => "Receiving quantity", + "remove_image" => "Remove Image", + "reorder_level" => "補貨點", + "reorder_level_number" => "補貨點必需是數值", + "reorder_level_required" => "補貨點為必填欄位", + "retrive_item_info" => "檢索產品訊息", + "sales_tax_1" => "營業稅", + "sales_tax_2" => "營業稅 2", + "search_attributes" => "Search Custom Fields", + "select_image" => "Select Image", + "serialized_items" => "序列化產品", + "standard" => "", + "stock" => "", + "stock_location" => "倉庫地址", + "stock_type" => "", + "successful_adding" => "已成功新增產品", + "successful_bulk_edit" => "您已成功更新所選產品", + "successful_deleted" => "刪除成功", + "successful_updating" => "已成功更新產品", + "supplier" => "供貨商", + "tax_1" => "稅額 1", + "tax_2" => "稅額 2", + "tax_3" => "", + "tax_category" => "", + "tax_percent" => "稅率", + "tax_percent_number" => "", + "tax_percent_required" => "稅率為必填欄位", + "tax_percents" => "稅率 %", + "temp" => "", + "type" => "", + "unit_price" => "單價", + "unit_price_number" => "單價必需是數值", + "unit_price_required" => "單價為必填欄位", + "upc_database" => "UPC Database", + "update" => "更新產品", + "use_inventory_menu" => "使用庫存清單", ]; diff --git a/app/Language/zh-Hans/Login.php b/app/Language/zh-Hans/Login.php index 6adc63085..271fb9ee7 100644 --- a/app/Language/zh-Hans/Login.php +++ b/app/Language/zh-Hans/Login.php @@ -1,14 +1,14 @@ "我不是机器人。", - "go" => "登入", - "invalid_gcaptcha" => "无效,我不是机器人。", - "invalid_installation" => "安装不正确,请检查您的php.ini文件。", - "invalid_username_and_password" => "无效的用户名或密码。", - "login" => "登入", - "logout" => "退出", - "migration_needed" => "", - "password" => "密码", - "username" => "用户名", - "welcome" => "欢迎来到 {0}!", + "gcaptcha" => "我不是机器人。", + "go" => "登入", + "invalid_gcaptcha" => "无效,我不是机器人。", + "invalid_installation" => "安装不正确,请检查您的php.ini文件。", + "invalid_username_and_password" => "无效的用户名或密码。", + "login" => "登入", + "logout" => "退出", + "migration_needed" => "", + "password" => "密码", + "username" => "用户名", + "welcome" => "欢迎来到 {0}!", ]; diff --git a/app/Language/zh-Hans/Messages.php b/app/Language/zh-Hans/Messages.php index 528e62fa3..39ec8b50d 100644 --- a/app/Language/zh-Hans/Messages.php +++ b/app/Language/zh-Hans/Messages.php @@ -1,15 +1,15 @@ "名", - "last_name" => "姓", - "message" => "Message", - "message_placeholder" => "Your Message here...", - "message_required" => "Message required", - "multiple_phones" => "(In case of multiple recipients, enter mobile numbers separated by commas)", - "phone" => "电话号码", - "phone_number_required" => "电话号码是比填的", - "phone_placeholder" => "Mobile Number(s) here...", - "sms_send" => "Send SMS", - "successfully_sent" => "信息成功发送到 ", - "unsuccessfully_sent" => "Message unsuccessfully sent to: ", + "first_name" => "名", + "last_name" => "姓", + "message" => "Message", + "message_placeholder" => "Your Message here...", + "message_required" => "Message required", + "multiple_phones" => "(In case of multiple recipients, enter mobile numbers separated by commas)", + "phone" => "电话号码", + "phone_number_required" => "电话号码是比填的", + "phone_placeholder" => "Mobile Number(s) here...", + "sms_send" => "Send SMS", + "successfully_sent" => "信息成功发送到 ", + "unsuccessfully_sent" => "Message unsuccessfully sent to: ", ]; diff --git a/app/Language/zh-Hans/Module.php b/app/Language/zh-Hans/Module.php index be919af78..fd4f34aba 100644 --- a/app/Language/zh-Hans/Module.php +++ b/app/Language/zh-Hans/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "", - "attributes_desc" => "", - "both" => "", - "cashups" => "", - "cashups_desc" => "", - "config" => "系統配置", - "config_desc" => "修改系統配置", - "customers" => "客戶", - "customers_desc" => "添加,更新,刪除,搜索客戶", - "employees" => "員工", - "employees_desc" => "添加,更新,刪除,搜索員工", - "expenses" => "", - "expenses_categories" => "", - "expenses_categories_desc" => "", - "expenses_desc" => "", - "giftcards" => "禮金券", - "giftcards_desc" => "添加,更新,刪除,搜索禮金券", - "home" => "首頁", - "home_desc" => "", - "item_kits" => "產品套件", - "item_kits_desc" => "添加,更新,刪除,搜索產品套件", - "items" => "產品", - "items_desc" => "添加,更新,刪除,搜索產品", - "messages" => "Messages", - "messages_desc" => "Send Messages to Customers, Suppliers, Employees et al.", - "migrate" => "", - "migrate_desc" => "", - "office" => "", - "office_desc" => "", - "receivings" => "進貨", - "receivings_desc" => "採購訂單流程", - "reports" => "報表", - "reports_desc" => "檢視與產生報表", - "sales" => "出貨", - "sales_desc" => "出貨與退貨", - "suppliers" => "供應商", - "suppliers_desc" => "添加,更新,刪除,搜索供應商", - "taxes" => "", - "taxes_desc" => "", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "", + "attributes_desc" => "", + "both" => "", + "cashups" => "", + "cashups_desc" => "", + "config" => "系統配置", + "config_desc" => "修改系統配置", + "customers" => "客戶", + "customers_desc" => "添加,更新,刪除,搜索客戶", + "employees" => "員工", + "employees_desc" => "添加,更新,刪除,搜索員工", + "expenses" => "", + "expenses_categories" => "", + "expenses_categories_desc" => "", + "expenses_desc" => "", + "giftcards" => "禮金券", + "giftcards_desc" => "添加,更新,刪除,搜索禮金券", + "home" => "首頁", + "home_desc" => "", + "item_kits" => "產品套件", + "item_kits_desc" => "添加,更新,刪除,搜索產品套件", + "items" => "產品", + "items_desc" => "添加,更新,刪除,搜索產品", + "messages" => "Messages", + "messages_desc" => "Send Messages to Customers, Suppliers, Employees et al.", + "migrate" => "", + "migrate_desc" => "", + "office" => "", + "office_desc" => "", + "receivings" => "進貨", + "receivings_desc" => "採購訂單流程", + "reports" => "報表", + "reports_desc" => "檢視與產生報表", + "sales" => "出貨", + "sales_desc" => "出貨與退貨", + "suppliers" => "供應商", + "suppliers_desc" => "添加,更新,刪除,搜索供應商", + "taxes" => "", + "taxes_desc" => "", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/zh-Hans/Receivings.php b/app/Language/zh-Hans/Receivings.php index 78df4ce92..8ee9c79ea 100644 --- a/app/Language/zh-Hans/Receivings.php +++ b/app/Language/zh-Hans/Receivings.php @@ -1,58 +1,58 @@ "", - "cancel_receiving" => "取消", - "cannot_be_deleted" => "收获记录删除失败。", - "comments" => "备注", - "complete_receiving" => "完成", - "confirm_cancel_receiving" => "您確定要刪除此進貨資料嗎?本資料中所有的產品資料也將會被清空。", - "confirm_delete" => "你确定要删除这个收货记录吗?该操作不可恢复。", - "confirm_finish_receiving" => "您確定要提交此進貨資料嗎?一旦送出將不能撤消。", - "confirm_restore" => "", - "cost" => "成本", - "daily" => "", - "date" => "收货日期", - "date_required" => "请输入正确的日期。", - "date_type" => "日期是必填项。", - "delete_entire_sale" => "删除整个销售记录", - "discount" => "折扣", - "edit" => "编辑", - "edit_sale" => "编辑进货", - "employee" => "员工", - "error_editing_item" => "商品编辑错误。", - "error_requisition" => "无法在同一个仓库下移动库存。", - "find_or_scan_item" => "查找 / 扫面商品", - "find_or_scan_item_or_receipt" => "查找 / 扫描商品或收据", - "id" => "进货ID", - "item_name" => "产品名称", - "mode" => "进货方式", - "new_supplier" => "新建供应商", - "one_or_multiple" => "收货记录", - "print_after_sale" => "出貨時打印收據", - "quantity" => "數量.", - "receipt" => "收货凭证", - "receipt_number" => "收据单号", - "receiving" => "收貨", - "reference" => "进货参考", - "register" => "进货", - "requisition" => "收货单", - "return" => "退貨", - "select_supplier" => "選擇供應商 (Optional)", - "ship_pack" => "", - "start_typing_supplier_name" => "開始輸入供應商名稱...", - "stock" => "库存", - "stock_destination" => "Stock destination", - "stock_locaiton" => "倉庫地址", - "stock_source" => "Stock source", - "successfully_deleted" => "删除成功", - "successfully_updated" => "进货记录更新成功", - "supplier" => "供應商", - "supplier_address" => "地址", - "supplier_email" => "郵箱", - "supplier_location" => "地方", - "total" => "總數量", - "transaction_failed" => "进货交易失败。", - "unable_to_add_item" => "无法新增进货商品。", - "unsuccessfully_updated" => "进货记录更新失败。", - "update" => "編輯", + "amount_due" => "", + "cancel_receiving" => "取消", + "cannot_be_deleted" => "收获记录删除失败。", + "comments" => "备注", + "complete_receiving" => "完成", + "confirm_cancel_receiving" => "您確定要刪除此進貨資料嗎?本資料中所有的產品資料也將會被清空。", + "confirm_delete" => "你确定要删除这个收货记录吗?该操作不可恢复。", + "confirm_finish_receiving" => "您確定要提交此進貨資料嗎?一旦送出將不能撤消。", + "confirm_restore" => "", + "cost" => "成本", + "daily" => "", + "date" => "收货日期", + "date_required" => "请输入正确的日期。", + "date_type" => "日期是必填项。", + "delete_entire_sale" => "删除整个销售记录", + "discount" => "折扣", + "edit" => "编辑", + "edit_sale" => "编辑进货", + "employee" => "员工", + "error_editing_item" => "商品编辑错误。", + "error_requisition" => "无法在同一个仓库下移动库存。", + "find_or_scan_item" => "查找 / 扫面商品", + "find_or_scan_item_or_receipt" => "查找 / 扫描商品或收据", + "id" => "进货ID", + "item_name" => "产品名称", + "mode" => "进货方式", + "new_supplier" => "新建供应商", + "one_or_multiple" => "收货记录", + "print_after_sale" => "出貨時打印收據", + "quantity" => "數量.", + "receipt" => "收货凭证", + "receipt_number" => "收据单号", + "receiving" => "收貨", + "reference" => "进货参考", + "register" => "进货", + "requisition" => "收货单", + "return" => "退貨", + "select_supplier" => "選擇供應商 (Optional)", + "ship_pack" => "", + "start_typing_supplier_name" => "開始輸入供應商名稱...", + "stock" => "库存", + "stock_destination" => "Stock destination", + "stock_locaiton" => "倉庫地址", + "stock_source" => "Stock source", + "successfully_deleted" => "删除成功", + "successfully_updated" => "进货记录更新成功", + "supplier" => "供應商", + "supplier_address" => "地址", + "supplier_email" => "郵箱", + "supplier_location" => "地方", + "total" => "總數量", + "transaction_failed" => "进货交易失败。", + "unable_to_add_item" => "无法新增进货商品。", + "unsuccessfully_updated" => "进货记录更新失败。", + "update" => "編輯", ]; diff --git a/app/Language/zh-Hans/Reports.php b/app/Language/zh-Hans/Reports.php index 6c9766266..bef0f18a6 100644 --- a/app/Language/zh-Hans/Reports.php +++ b/app/Language/zh-Hans/Reports.php @@ -1,148 +1,148 @@ "全部", - "authority" => "", - "canceled" => "", - "categories" => "類別", - "categories_summary_report" => "分類摘要報告", - "category" => "類別", - "code_canceled" => "", - "code_invoice" => "", - "code_pos" => "", - "code_quote" => "", - "code_return" => "", - "code_type" => "", - "code_work_order" => "", - "comments" => "評論", - "commission" => "", - "complete" => "", - "completed_sales" => "", - "confirm_delete" => "", - "confirm_restore" => "", - "cost" => "Cost", - "cost_price" => "成本價", - "count" => "計", - "customer" => "客戶", - "customers" => "客戶", - "customers_summary_report" => "客戶摘要報告", - "date" => "日期", - "date_range" => "日期範圍", - "description" => "描述", - "detailed_receivings_report" => "詳細的進貨報告", - "detailed_receivings_report_input" => "", - "detailed_reports" => "詳細報表", - "detailed_requisition_report" => "", - "detailed_sales_report" => "詳細銷售報表", - "discount" => "折扣", - "discount_fixed" => "", - "discount_percent" => "折扣率", - "discount_type" => "", - "discounts" => "折扣", - "discounts_summary_report" => "折扣摘要報告", - "earned" => "", - "employee" => "員工", - "employees" => "員工", - "employees_summary_report" => "員工摘要報告", - "expenses" => "", - "expenses_amount" => "", - "expenses_categories" => "", - "expenses_categories_summary_report" => "", - "expenses_category" => "", - "expenses_payment_amount" => "", - "expenses_tax_amount" => "", - "expenses_total_amount" => "", - "expenses_total_tax_amount" => "", - "graphical_reports" => "圖表", - "inventory" => "", - "inventory_low" => "低庫存", - "inventory_low_report" => "低庫存報告", - "inventory_reports" => "庫存報告", - "inventory_summary" => "庫存摘要", - "inventory_summary_report" => "庫存報告摘要", - "item" => "產品", - "item_count" => "Filter Item Count", - "item_name" => "產品名稱", - "item_number" => "產品數量", - "items" => "產品", - "items_purchased" => "銷售產品", - "items_received" => "進貨產品", - "items_summary_report" => "產品摘要報告", - "jurisdiction" => "", - "low_inventory" => "", - "low_inventory_report" => "", - "low_sell_quantity" => "", - "more_than_zero" => "More than zero", - "name" => "名稱", - "no_reports_to_display" => "沒有產品可以顯示", - "payment_type" => "付款方式", - "payments" => "付款", - "payments_summary_report" => "收入報告摘要", - "profit" => "利潤", - "quantity" => "數量", - "quantity_purchased" => "銷售金額", - "quotes" => "", - "received_by" => "收款人", - "receiving_id" => "", - "receiving_type" => "", - "receivings" => "應付款", - "reorder_level" => "補貨點", - "report" => "報表", - "report_input" => "輸入報表", - "reports" => "報表", - "requisition" => "", - "requisition_by" => "", - "requisition_id" => "", - "requisition_item" => "", - "requisition_item_quantity" => "", - "requisition_related_item" => "", - "requisition_related_item_total_quantity" => "", - "requisition_related_item_unit_quantity" => "", - "requisitions" => "", - "returns" => "返回", - "revenue" => "收入", - "sale_id" => "銷售編號", - "sale_type" => "銷售類型", - "sales" => "銷售", - "sales_amount" => "總銷售額", - "sales_summary_report" => "銷售摘要報告", - "sales_taxes" => "", - "sales_taxes_summary_report" => "", - "serial_number" => "序號 #", - "service_charge" => "", - "sold_by" => "銷售人", - "sold_items" => "", - "sold_to" => "購買人", - "stock_location" => "", - "sub_total_value" => "小計", - "subtotal" => "小計", - "summary_reports" => "摘要報表", - "supplied_by" => "付款人", - "supplier" => "供應商", - "suppliers" => "供應商", - "suppliers_summary_report" => "供應商摘要報告", - "tax" => "稅額", - "tax_category" => "", - "tax_name" => "", - "tax_percent" => "稅率", - "tax_rate" => "", - "taxes" => "稅額", - "taxes_summary_report" => "稅金摘要報告", - "total" => "總計", - "total_inventory_value" => "Total Inventory Value", - "total_low_sell_quantity" => "", - "total_quantity" => "Total Quantity", - "total_retail" => "Total Inv. Retail Value", - "trans_amount" => "", - "trans_due" => "", - "trans_group" => "", - "trans_nopay_sales" => "", - "trans_payments" => "", - "trans_refunded" => "", - "trans_sales" => "", - "trans_type" => "", - "type" => "類型", - "unit_price" => "單價", - "used" => "", - "work_orders" => "", - "zero_and_less" => "Zero and less", + "all" => "全部", + "authority" => "", + "canceled" => "", + "categories" => "類別", + "categories_summary_report" => "分類摘要報告", + "category" => "類別", + "code_canceled" => "", + "code_invoice" => "", + "code_pos" => "", + "code_quote" => "", + "code_return" => "", + "code_type" => "", + "code_work_order" => "", + "comments" => "評論", + "commission" => "", + "complete" => "", + "completed_sales" => "", + "confirm_delete" => "", + "confirm_restore" => "", + "cost" => "Cost", + "cost_price" => "成本價", + "count" => "計", + "customer" => "客戶", + "customers" => "客戶", + "customers_summary_report" => "客戶摘要報告", + "date" => "日期", + "date_range" => "日期範圍", + "description" => "描述", + "detailed_receivings_report" => "詳細的進貨報告", + "detailed_receivings_report_input" => "", + "detailed_reports" => "詳細報表", + "detailed_requisition_report" => "", + "detailed_sales_report" => "詳細銷售報表", + "discount" => "折扣", + "discount_fixed" => "", + "discount_percent" => "折扣率", + "discount_type" => "", + "discounts" => "折扣", + "discounts_summary_report" => "折扣摘要報告", + "earned" => "", + "employee" => "員工", + "employees" => "員工", + "employees_summary_report" => "員工摘要報告", + "expenses" => "", + "expenses_amount" => "", + "expenses_categories" => "", + "expenses_categories_summary_report" => "", + "expenses_category" => "", + "expenses_payment_amount" => "", + "expenses_tax_amount" => "", + "expenses_total_amount" => "", + "expenses_total_tax_amount" => "", + "graphical_reports" => "圖表", + "inventory" => "", + "inventory_low" => "低庫存", + "inventory_low_report" => "低庫存報告", + "inventory_reports" => "庫存報告", + "inventory_summary" => "庫存摘要", + "inventory_summary_report" => "庫存報告摘要", + "item" => "產品", + "item_count" => "Filter Item Count", + "item_name" => "產品名稱", + "item_number" => "產品數量", + "items" => "產品", + "items_purchased" => "銷售產品", + "items_received" => "進貨產品", + "items_summary_report" => "產品摘要報告", + "jurisdiction" => "", + "low_inventory" => "", + "low_inventory_report" => "", + "low_sell_quantity" => "", + "more_than_zero" => "More than zero", + "name" => "名稱", + "no_reports_to_display" => "沒有產品可以顯示", + "payment_type" => "付款方式", + "payments" => "付款", + "payments_summary_report" => "收入報告摘要", + "profit" => "利潤", + "quantity" => "數量", + "quantity_purchased" => "銷售金額", + "quotes" => "", + "received_by" => "收款人", + "receiving_id" => "", + "receiving_type" => "", + "receivings" => "應付款", + "reorder_level" => "補貨點", + "report" => "報表", + "report_input" => "輸入報表", + "reports" => "報表", + "requisition" => "", + "requisition_by" => "", + "requisition_id" => "", + "requisition_item" => "", + "requisition_item_quantity" => "", + "requisition_related_item" => "", + "requisition_related_item_total_quantity" => "", + "requisition_related_item_unit_quantity" => "", + "requisitions" => "", + "returns" => "返回", + "revenue" => "收入", + "sale_id" => "銷售編號", + "sale_type" => "銷售類型", + "sales" => "銷售", + "sales_amount" => "總銷售額", + "sales_summary_report" => "銷售摘要報告", + "sales_taxes" => "", + "sales_taxes_summary_report" => "", + "serial_number" => "序號 #", + "service_charge" => "", + "sold_by" => "銷售人", + "sold_items" => "", + "sold_to" => "購買人", + "stock_location" => "", + "sub_total_value" => "小計", + "subtotal" => "小計", + "summary_reports" => "摘要報表", + "supplied_by" => "付款人", + "supplier" => "供應商", + "suppliers" => "供應商", + "suppliers_summary_report" => "供應商摘要報告", + "tax" => "稅額", + "tax_category" => "", + "tax_name" => "", + "tax_percent" => "稅率", + "tax_rate" => "", + "taxes" => "稅額", + "taxes_summary_report" => "稅金摘要報告", + "total" => "總計", + "total_inventory_value" => "Total Inventory Value", + "total_low_sell_quantity" => "", + "total_quantity" => "Total Quantity", + "total_retail" => "Total Inv. Retail Value", + "trans_amount" => "", + "trans_due" => "", + "trans_group" => "", + "trans_nopay_sales" => "", + "trans_payments" => "", + "trans_refunded" => "", + "trans_sales" => "", + "trans_type" => "", + "type" => "類型", + "unit_price" => "單價", + "used" => "", + "work_orders" => "", + "zero_and_less" => "Zero and less", ]; diff --git a/app/Language/zh-Hans/Sales.php b/app/Language/zh-Hans/Sales.php index 3c2fe2fa2..553ddd49d 100644 --- a/app/Language/zh-Hans/Sales.php +++ b/app/Language/zh-Hans/Sales.php @@ -1,224 +1,224 @@ "可用积分", - "rewards_package" => "", - "rewards_remaining_balance" => "", - "account_number" => "", - "add_payment" => "新增付款", - "amount_due" => "商品金額", - "amount_tendered" => "已收帳款", - "authorized_signature" => "", - "cancel_sale" => "取消銷售", - "cash" => "現金", - "cash_1" => "", - "cash_2" => "", - "cash_3" => "", - "cash_4" => "", - "cash_adjustment" => "", - "cash_deposit" => "", - "cash_filter" => "現金", - "change_due" => "更改到期日", - "change_price" => "", - "check" => "支票", - "check_balance" => "查看餘額", - "check_filter" => "", - "close" => "", - "comment" => "評論", - "comments" => "評論", - "company_name" => "", - "complete" => "", - "complete_sale" => "完成銷售", - "confirm_cancel_sale" => "你確定要清除此筆銷售單?本單內的所有產品將被清除。", - "confirm_delete" => "你確定要清除此銷售產品?", - "confirm_restore" => "", - "credit" => "信用卡", - "credit_deposit" => "", - "credit_filter" => "", - "current_table" => "", - "customer" => "客戶", - "customer_address" => "Customer Address", - "customer_discount" => "折扣", - "customer_email" => "Customer Email", - "customer_location" => "Customer Location", - "customer_mailchimp_status" => "", - "customer_optional" => "", - "customer_required" => "", - "customer_total" => "Total", - "customer_total_spent" => "", - "daily_sales" => "", - "date" => "日期", - "date_range" => "日期範圍", - "date_required" => "A correct date needs to be filled in", - "date_type" => "Date field is required", - "debit" => "簽帳卡", - "debit_filter" => "", - "delete" => "", - "delete_confirmation" => "你確定要刪除此銷售資料,這個動作不能撤消", - "delete_entire_sale" => "刪除全部銷售資料", - "delete_successful" => "您已成功刪除銷售資料", - "delete_unsuccessful" => "銷售資料刪除失敗", - "description_abbrv" => "倒序", - "discard" => "", - "discard_quote" => "", - "discount" => "折扣 %", - "discount_included" => "% Discount", - "discount_short" => "%", - "due" => "", - "due_filter" => "", - "edit" => "編輯", - "edit_item" => "編輯產品", - "edit_sale" => "編輯銷售資料", - "email_receipt" => "Email 銷售單", - "employee" => "員工", - "entry" => "", - "error_editing_item" => "編輯產品錯誤", - "find_or_scan_item" => "查找/掃描商品", - "find_or_scan_item_or_receipt" => "查找/掃描產品或收貨單", - "giftcard" => "禮金券", - "giftcard_balance" => "Giftcard Balance", - "giftcard_filter" => "", - "giftcard_number" => "禮金券編號", - "group_by_category" => "", - "group_by_type" => "", - "hsn" => "", - "id" => "銷售編號", - "include_prices" => "", - "invoice" => "Invoice", - "invoice_confirm" => "This invoice will be sent to", - "invoice_enable" => "Create Invoice", - "invoice_filter" => "Invoices", - "invoice_no_email" => "This customer does not have a valid email address", - "invoice_number" => "Invoice #", - "invoice_number_duplicate" => "Please enter an unique invoice number", - "invoice_sent" => "Invoice sent to", - "invoice_total" => "", - "invoice_type_custom_invoice" => "", - "invoice_type_custom_tax_invoice" => "", - "invoice_type_invoice" => "", - "invoice_type_tax_invoice" => "", - "invoice_unsent" => "Invoice failed to be sent to", - "invoice_update" => "Recount", - "item_insufficient_of_stock" => "產品庫存不足", - "item_name" => "產品名稱", - "item_number" => "產品 #", - "item_out_of_stock" => "產品缺貨", - "key_browser" => "", - "key_cancel" => "Cancels Current Quote/Invoice/Sale", - "key_customer_search" => "Customer Search", - "key_finish_quote" => "Finish Quote/Invoice witdout payment", - "key_finish_sale" => "Add Payment and Complete Invoice/Sale", - "key_full" => "", - "key_function" => "Function", - "key_help" => "Shortcuts", - "key_help_modal" => "Open Shortcuts Window", - "key_in" => "", - "key_item_search" => "Item Search", - "key_out" => "", - "key_payment" => "Add Payment", - "key_print" => "", - "key_restore" => "", - "key_search" => "", - "key_suspend" => "Suspend Current Sale", - "key_suspended" => "Show Suspended Sales", - "key_system" => "", - "key_tendered" => "Edit Amount Tendered", - "key_title" => "Sales Keyboard Shortcuts", - "mc" => "", - "mode" => "登記模式", - "must_enter_numeric" => "已收帳款必須輸入數值", - "must_enter_numeric_giftcard" => "禮金券編號必須輸入數值", - "new_customer" => "新客戶", - "new_item" => "新增產品", - "no_description" => "None", - "no_filter" => "All", - "no_items_in_cart" => "購物車中沒有任何產品", - "no_sales_to_display" => "No sales to display", - "none_selected" => "您還沒有選擇任何產品進行編輯", - "nontaxed_ind" => "", - "not_authorized" => "", - "one_or_multiple" => "", - "payment" => "付款方式", - "payment_amount" => "Amount", - "payment_not_cover_total" => "付款金額不足", - "payment_type" => "Type", - "payments" => "", - "payments_total" => "Payments Total", - "price" => "價格", - "print_after_sale" => "出貨時打印收據", - "quantity" => "數量.", - "quantity_less_than_reorder_level" => "警告!產品的庫存數量是不足的。您仍然可以處理銷售,但檢查您的庫存", - "quantity_less_than_zero" => "警告!產品的庫存數量是不足的。您仍然可以處理銷售,但檢查您的庫存", - "quantity_of_items" => "", - "quote" => "", - "quote_number" => "", - "quote_number_duplicate" => "", - "quote_sent" => "", - "quote_unsent" => "", - "receipt" => "銷貨單", - "receipt_no_email" => "", - "receipt_number" => "POS #", - "receipt_sent" => "Receipt sent to", - "receipt_unsent" => "Receipt failed to be sent to", - "refund" => "", - "register" => "銷售登記", - "remove_customer" => "移除客戶", - "remove_discount" => "", - "return" => "退貨", - "rewards" => "", - "rewards_balance" => "", - "sale" => "銷售", - "sale_by_invoice" => "", - "sale_for_customer" => "客戶:", - "sale_time" => "Time", - "sales_tax" => "", - "sales_total" => "", - "select_customer" => "選擇客戶 (Optional)", - "send_invoice" => "Send Invoice", - "send_quote" => "", - "send_receipt" => "Send Receipt", - "send_work_order" => "", - "serial" => "序號", - "service_charge" => "", - "show_due" => "", - "show_invoice" => "Show Invoice", - "show_receipt" => "Show Receipt", - "start_typing_customer_name" => "開始輸入客戶的名字", - "start_typing_item_name" => "開始輸入產品名或掃描條碼...", - "stock" => "", - "stock_location" => "", - "sub_total" => "小計", - "successfully_deleted" => "銷售資料成功刪除", - "successfully_restored" => "", - "successfully_suspended_sale" => "本銷售資料已經成功暫停", - "successfully_updated" => "銷售資料成功更新", - "suspend_sale" => "暫停銷售", - "suspended_doc_id" => "", - "suspended_sale_id" => "暫停銷售編號", - "suspended_sales" => "已暫停銷售", - "table" => "", - "takings" => "Takings", - "tax" => "稅額", - "tax_id" => "", - "tax_invoice" => "", - "tax_percent" => "稅率 %", - "taxed_ind" => "", - "total" => "總計", - "total_tax_exclusive" => "Tax excluded", - "transaction_failed" => "銷售交易失敗", - "unable_to_add_item" => "無法增加出售產品", - "unsuccessfully_deleted" => "銷售資料刪除失敗", - "unsuccessfully_restored" => "", - "unsuccessfully_suspended_sale" => "本銷售資料已經成功暫停", - "unsuccessfully_updated" => "銷售資料更新失敗", - "unsuspend" => "取消暫停銷售", - "unsuspend_and_delete" => "取消暫停銷售並刪除", - "update" => "編輯", - "upi" => "", - "visa" => "", - "wholesale" => "", - "work_order" => "", - "work_order_number" => "", - "work_order_number_duplicate" => "", - "work_order_sent" => "", - "work_order_unsent" => "", + "customers_available_points" => "可用积分", + "rewards_package" => "", + "rewards_remaining_balance" => "", + "account_number" => "", + "add_payment" => "新增付款", + "amount_due" => "商品金額", + "amount_tendered" => "已收帳款", + "authorized_signature" => "", + "cancel_sale" => "取消銷售", + "cash" => "現金", + "cash_1" => "", + "cash_2" => "", + "cash_3" => "", + "cash_4" => "", + "cash_adjustment" => "", + "cash_deposit" => "", + "cash_filter" => "現金", + "change_due" => "更改到期日", + "change_price" => "", + "check" => "支票", + "check_balance" => "查看餘額", + "check_filter" => "", + "close" => "", + "comment" => "評論", + "comments" => "評論", + "company_name" => "", + "complete" => "", + "complete_sale" => "完成銷售", + "confirm_cancel_sale" => "你確定要清除此筆銷售單?本單內的所有產品將被清除。", + "confirm_delete" => "你確定要清除此銷售產品?", + "confirm_restore" => "", + "credit" => "信用卡", + "credit_deposit" => "", + "credit_filter" => "", + "current_table" => "", + "customer" => "客戶", + "customer_address" => "Customer Address", + "customer_discount" => "折扣", + "customer_email" => "Customer Email", + "customer_location" => "Customer Location", + "customer_mailchimp_status" => "", + "customer_optional" => "", + "customer_required" => "", + "customer_total" => "Total", + "customer_total_spent" => "", + "daily_sales" => "", + "date" => "日期", + "date_range" => "日期範圍", + "date_required" => "A correct date needs to be filled in", + "date_type" => "Date field is required", + "debit" => "簽帳卡", + "debit_filter" => "", + "delete" => "", + "delete_confirmation" => "你確定要刪除此銷售資料,這個動作不能撤消", + "delete_entire_sale" => "刪除全部銷售資料", + "delete_successful" => "您已成功刪除銷售資料", + "delete_unsuccessful" => "銷售資料刪除失敗", + "description_abbrv" => "倒序", + "discard" => "", + "discard_quote" => "", + "discount" => "折扣 %", + "discount_included" => "% Discount", + "discount_short" => "%", + "due" => "", + "due_filter" => "", + "edit" => "編輯", + "edit_item" => "編輯產品", + "edit_sale" => "編輯銷售資料", + "email_receipt" => "Email 銷售單", + "employee" => "員工", + "entry" => "", + "error_editing_item" => "編輯產品錯誤", + "find_or_scan_item" => "查找/掃描商品", + "find_or_scan_item_or_receipt" => "查找/掃描產品或收貨單", + "giftcard" => "禮金券", + "giftcard_balance" => "Giftcard Balance", + "giftcard_filter" => "", + "giftcard_number" => "禮金券編號", + "group_by_category" => "", + "group_by_type" => "", + "hsn" => "", + "id" => "銷售編號", + "include_prices" => "", + "invoice" => "Invoice", + "invoice_confirm" => "This invoice will be sent to", + "invoice_enable" => "Create Invoice", + "invoice_filter" => "Invoices", + "invoice_no_email" => "This customer does not have a valid email address", + "invoice_number" => "Invoice #", + "invoice_number_duplicate" => "Please enter an unique invoice number", + "invoice_sent" => "Invoice sent to", + "invoice_total" => "", + "invoice_type_custom_invoice" => "", + "invoice_type_custom_tax_invoice" => "", + "invoice_type_invoice" => "", + "invoice_type_tax_invoice" => "", + "invoice_unsent" => "Invoice failed to be sent to", + "invoice_update" => "Recount", + "item_insufficient_of_stock" => "產品庫存不足", + "item_name" => "產品名稱", + "item_number" => "產品 #", + "item_out_of_stock" => "產品缺貨", + "key_browser" => "", + "key_cancel" => "Cancels Current Quote/Invoice/Sale", + "key_customer_search" => "Customer Search", + "key_finish_quote" => "Finish Quote/Invoice witdout payment", + "key_finish_sale" => "Add Payment and Complete Invoice/Sale", + "key_full" => "", + "key_function" => "Function", + "key_help" => "Shortcuts", + "key_help_modal" => "Open Shortcuts Window", + "key_in" => "", + "key_item_search" => "Item Search", + "key_out" => "", + "key_payment" => "Add Payment", + "key_print" => "", + "key_restore" => "", + "key_search" => "", + "key_suspend" => "Suspend Current Sale", + "key_suspended" => "Show Suspended Sales", + "key_system" => "", + "key_tendered" => "Edit Amount Tendered", + "key_title" => "Sales Keyboard Shortcuts", + "mc" => "", + "mode" => "登記模式", + "must_enter_numeric" => "已收帳款必須輸入數值", + "must_enter_numeric_giftcard" => "禮金券編號必須輸入數值", + "new_customer" => "新客戶", + "new_item" => "新增產品", + "no_description" => "None", + "no_filter" => "All", + "no_items_in_cart" => "購物車中沒有任何產品", + "no_sales_to_display" => "No sales to display", + "none_selected" => "您還沒有選擇任何產品進行編輯", + "nontaxed_ind" => "", + "not_authorized" => "", + "one_or_multiple" => "", + "payment" => "付款方式", + "payment_amount" => "Amount", + "payment_not_cover_total" => "付款金額不足", + "payment_type" => "Type", + "payments" => "", + "payments_total" => "Payments Total", + "price" => "價格", + "print_after_sale" => "出貨時打印收據", + "quantity" => "數量.", + "quantity_less_than_reorder_level" => "警告!產品的庫存數量是不足的。您仍然可以處理銷售,但檢查您的庫存", + "quantity_less_than_zero" => "警告!產品的庫存數量是不足的。您仍然可以處理銷售,但檢查您的庫存", + "quantity_of_items" => "", + "quote" => "", + "quote_number" => "", + "quote_number_duplicate" => "", + "quote_sent" => "", + "quote_unsent" => "", + "receipt" => "銷貨單", + "receipt_no_email" => "", + "receipt_number" => "POS #", + "receipt_sent" => "Receipt sent to", + "receipt_unsent" => "Receipt failed to be sent to", + "refund" => "", + "register" => "銷售登記", + "remove_customer" => "移除客戶", + "remove_discount" => "", + "return" => "退貨", + "rewards" => "", + "rewards_balance" => "", + "sale" => "銷售", + "sale_by_invoice" => "", + "sale_for_customer" => "客戶:", + "sale_time" => "Time", + "sales_tax" => "", + "sales_total" => "", + "select_customer" => "選擇客戶 (Optional)", + "send_invoice" => "Send Invoice", + "send_quote" => "", + "send_receipt" => "Send Receipt", + "send_work_order" => "", + "serial" => "序號", + "service_charge" => "", + "show_due" => "", + "show_invoice" => "Show Invoice", + "show_receipt" => "Show Receipt", + "start_typing_customer_name" => "開始輸入客戶的名字", + "start_typing_item_name" => "開始輸入產品名或掃描條碼...", + "stock" => "", + "stock_location" => "", + "sub_total" => "小計", + "successfully_deleted" => "銷售資料成功刪除", + "successfully_restored" => "", + "successfully_suspended_sale" => "本銷售資料已經成功暫停", + "successfully_updated" => "銷售資料成功更新", + "suspend_sale" => "暫停銷售", + "suspended_doc_id" => "", + "suspended_sale_id" => "暫停銷售編號", + "suspended_sales" => "已暫停銷售", + "table" => "", + "takings" => "Takings", + "tax" => "稅額", + "tax_id" => "", + "tax_invoice" => "", + "tax_percent" => "稅率 %", + "taxed_ind" => "", + "total" => "總計", + "total_tax_exclusive" => "Tax excluded", + "transaction_failed" => "銷售交易失敗", + "unable_to_add_item" => "無法增加出售產品", + "unsuccessfully_deleted" => "銷售資料刪除失敗", + "unsuccessfully_restored" => "", + "unsuccessfully_suspended_sale" => "本銷售資料已經成功暫停", + "unsuccessfully_updated" => "銷售資料更新失敗", + "unsuspend" => "取消暫停銷售", + "unsuspend_and_delete" => "取消暫停銷售並刪除", + "update" => "編輯", + "upi" => "", + "visa" => "", + "wholesale" => "", + "work_order" => "", + "work_order_number" => "", + "work_order_number_duplicate" => "", + "work_order_sent" => "", + "work_order_unsent" => "", ]; diff --git a/app/Language/zh-Hans/Suppliers.php b/app/Language/zh-Hans/Suppliers.php index b3055cead..ea798b665 100644 --- a/app/Language/zh-Hans/Suppliers.php +++ b/app/Language/zh-Hans/Suppliers.php @@ -1,24 +1,24 @@ "帳號 #", - "agency_name" => " ", - "cannot_be_deleted" => "無法刪除所選擇的供應商,選定的供應商中至少有一家已有銷售紀錄。", - "category" => "", - "company_name" => "公司名稱", - "company_name_required" => "公司名稱是必填欄位", - "confirm_delete" => "你確定要刪除選定的供應商嗎?", - "confirm_restore" => "", - "cost" => "", - "error_adding_updating" => "新增/更新供應商錯誤", - "goods" => "", - "new" => "新增供應商", - "none_selected" => "您還沒有選擇任何供應商進行刪除", - "one_or_multiple" => "供應商", - "successful_adding" => "您已成功新增供應商", - "successful_deleted" => "您已成功刪除供應商", - "successful_updating" => "您已成功更新供應商", - "supplier" => "供應商", - "supplier_id" => "Id", - "tax_id" => "", - "update" => "更新供應商", + "account_number" => "帳號 #", + "agency_name" => " ", + "cannot_be_deleted" => "無法刪除所選擇的供應商,選定的供應商中至少有一家已有銷售紀錄。", + "category" => "", + "company_name" => "公司名稱", + "company_name_required" => "公司名稱是必填欄位", + "confirm_delete" => "你確定要刪除選定的供應商嗎?", + "confirm_restore" => "", + "cost" => "", + "error_adding_updating" => "新增/更新供應商錯誤", + "goods" => "", + "new" => "新增供應商", + "none_selected" => "您還沒有選擇任何供應商進行刪除", + "one_or_multiple" => "供應商", + "successful_adding" => "您已成功新增供應商", + "successful_deleted" => "您已成功刪除供應商", + "successful_updating" => "您已成功更新供應商", + "supplier" => "供應商", + "supplier_id" => "Id", + "tax_id" => "", + "update" => "更新供應商", ]; diff --git a/app/Language/zh-Hans/Taxes.php b/app/Language/zh-Hans/Taxes.php index eb693daef..dcedaa4e7 100644 --- a/app/Language/zh-Hans/Taxes.php +++ b/app/Language/zh-Hans/Taxes.php @@ -1,82 +1,82 @@ "", - "cascade" => "", - "cascade_sequence" => "", - "city" => "", - "code" => "", - "confirm_delete" => "您确定要删除税码吗?这个操作不可撤销", - "confirm_restore" => "您确定要还原所选的税码吗?", - "default_tax_category" => "默认税种", - "default_tax_rate" => "预设税率", - "error_adding_updating" => "税码添加或更新失败", - "group_seq" => "", - "jurisdiction_name" => "税收管辖区名称", - "name" => "税费名称", - "new" => "新建税", - "no_taxes" => "", - "no_taxes_to_display" => "没有可显示的税码", - "reporting_authority" => "报告机关", - "round_half_down" => "", - "round_half_even" => "", - "round_half_odd" => "", - "round_half_up" => "", - "rounding_code" => "", - "sales_tax" => "", - "sales_tax_by_invoice" => "", - "sequence" => "", - "state" => "", - "successful_deleted" => "您已成功删除", - "tax_categories" => "税种", - "tax_categories_configuration" => "税种配置", - "tax_categories_saved_successfully" => "税种更改保存成功", - "tax_categories_saved_unsuccessfully" => "税种更改保存失败", - "tax_category" => "税种", - "tax_category_code" => "税种编码", - "tax_category_duplicate" => "重复税种", - "tax_category_invalid_chars" => "税种名称中存在无效字符", - "tax_category_name" => "税种名称", - "tax_category_new" => "新建税种", - "tax_category_required" => "税种为必填项", - "tax_code" => "税码", - "tax_code_cannot_be_deleted" => "税码删除失败", - "tax_code_duplicate" => "重复税码", - "tax_code_invalid_chars" => "税码中存在无效字符", - "tax_code_name" => "税码名称", - "tax_code_required" => "税码为必填项", - "tax_code_successful_deleted" => "您已经成功删除税码", - "tax_code_successful_updated" => "您已成功更新", - "tax_code_successful_updating" => "您已成功更新税码", - "tax_code_successfully_added" => "添加成功", - "tax_code_type" => "税码类型", - "tax_codes" => "", - "tax_codes_configuration" => "", - "tax_codes_saved_successfully" => "", - "tax_codes_saved_unsuccessfully" => "", - "tax_excluded" => "", - "tax_group" => "", - "tax_group_not_unique" => "", - "tax_group_sequence" => "", - "tax_included" => "", - "tax_jurisdiction" => "", - "tax_jurisdiction_duplicate" => "", - "tax_jurisdiction_invalid_chars" => "", - "tax_jurisdiction_required" => "", - "tax_jurisdictions" => "", - "tax_jurisdictions_configuration" => "", - "tax_jurisdictions_saved_successfully" => "", - "tax_jurisdictions_saved_unsuccessfully" => "", - "tax_rate" => "", - "tax_rate_configuration" => "", - "tax_rate_error_adding_updating" => "", - "tax_rate_numeric" => "", - "tax_rate_required" => "", - "tax_rate_successful_updated" => "", - "tax_rate_successfully_added" => "", - "tax_rates" => "", - "tax_rates_configuration" => "", - "tax_rounding" => "", - "tax_type" => "", - "update" => "", - "vat_tax" => "", + "add_exception" => "", + "cascade" => "", + "cascade_sequence" => "", + "city" => "", + "code" => "", + "confirm_delete" => "您确定要删除税码吗?这个操作不可撤销", + "confirm_restore" => "您确定要还原所选的税码吗?", + "default_tax_category" => "默认税种", + "default_tax_rate" => "预设税率", + "error_adding_updating" => "税码添加或更新失败", + "group_seq" => "", + "jurisdiction_name" => "税收管辖区名称", + "name" => "税费名称", + "new" => "新建税", + "no_taxes" => "", + "no_taxes_to_display" => "没有可显示的税码", + "reporting_authority" => "报告机关", + "round_half_down" => "", + "round_half_even" => "", + "round_half_odd" => "", + "round_half_up" => "", + "rounding_code" => "", + "sales_tax" => "", + "sales_tax_by_invoice" => "", + "sequence" => "", + "state" => "", + "successful_deleted" => "您已成功删除", + "tax_categories" => "税种", + "tax_categories_configuration" => "税种配置", + "tax_categories_saved_successfully" => "税种更改保存成功", + "tax_categories_saved_unsuccessfully" => "税种更改保存失败", + "tax_category" => "税种", + "tax_category_code" => "税种编码", + "tax_category_duplicate" => "重复税种", + "tax_category_invalid_chars" => "税种名称中存在无效字符", + "tax_category_name" => "税种名称", + "tax_category_new" => "新建税种", + "tax_category_required" => "税种为必填项", + "tax_code" => "税码", + "tax_code_cannot_be_deleted" => "税码删除失败", + "tax_code_duplicate" => "重复税码", + "tax_code_invalid_chars" => "税码中存在无效字符", + "tax_code_name" => "税码名称", + "tax_code_required" => "税码为必填项", + "tax_code_successful_deleted" => "您已经成功删除税码", + "tax_code_successful_updated" => "您已成功更新", + "tax_code_successful_updating" => "您已成功更新税码", + "tax_code_successfully_added" => "添加成功", + "tax_code_type" => "税码类型", + "tax_codes" => "", + "tax_codes_configuration" => "", + "tax_codes_saved_successfully" => "", + "tax_codes_saved_unsuccessfully" => "", + "tax_excluded" => "", + "tax_group" => "", + "tax_group_not_unique" => "", + "tax_group_sequence" => "", + "tax_included" => "", + "tax_jurisdiction" => "", + "tax_jurisdiction_duplicate" => "", + "tax_jurisdiction_invalid_chars" => "", + "tax_jurisdiction_required" => "", + "tax_jurisdictions" => "", + "tax_jurisdictions_configuration" => "", + "tax_jurisdictions_saved_successfully" => "", + "tax_jurisdictions_saved_unsuccessfully" => "", + "tax_rate" => "", + "tax_rate_configuration" => "", + "tax_rate_error_adding_updating" => "", + "tax_rate_numeric" => "", + "tax_rate_required" => "", + "tax_rate_successful_updated" => "", + "tax_rate_successfully_added" => "", + "tax_rates" => "", + "tax_rates_configuration" => "", + "tax_rounding" => "", + "tax_type" => "", + "update" => "", + "vat_tax" => "", ]; diff --git a/app/Language/zh-Hans/index.html b/app/Language/zh-Hans/index.html index b702fbc39..69df4e1df 100644 --- a/app/Language/zh-Hans/index.html +++ b/app/Language/zh-Hans/index.html @@ -1,7 +1,7 @@ - 403 Forbidden + 403 Forbidden diff --git a/app/Language/zh-Hant/Attributes.php b/app/Language/zh-Hant/Attributes.php index 6daf1ddee..3dad26433 100644 --- a/app/Language/zh-Hant/Attributes.php +++ b/app/Language/zh-Hant/Attributes.php @@ -1,32 +1,32 @@ "屬性設定值中不可含有「_」或「|」", - "confirm_delete" => "您確定要刪除此屬性?", - "confirm_restore" => "您確定要還原所選屬性嗎?", - "definition_cannot_be_deleted" => "無法刪除所選屬性", - "definition_error_adding_updating" => "無法添加或更新屬性 {0}。 請檢查錯誤日誌。", - "definition_flags" => "屬性可見性", - "definition_group" => "群組", - "definition_id" => "編號", - "definition_name" => "添加屬性", - "definition_name_required" => "屬性名稱必需填寫", - "definition_one_or_multiple" => "屬性", - "definition_successful_adding" => "您已成功添加項目", - "definition_successful_deleted" => "您已成功刪除", - "definition_successful_updating" => "您已成功更新屬性", - "definition_type" => "屬性類型", - "definition_type_required" => "屬性類型必需填寫", - "definition_unit" => "測量單位", - "definition_values" => "屬性值", - "new" => "新屬性", - "no_attributes_to_display" => "沒有項目可顯示", - "receipt_visibility" => "收據", - "show_in_items" => "在項目中顯示", - "show_in_items_visibility" => "物品", - "show_in_receipt" => "在收據中顯示", - "show_in_receivings" => "在收貨中顯示", - "show_in_receivings_visibility" => "收貨", - "show_in_sales" => "在銷售中顯示", - "show_in_sales_visibility" => "銷售", - "update" => "更新屬性", + "attribute_value_invalid_chars" => "屬性設定值中不可含有「_」或「|」", + "confirm_delete" => "您確定要刪除此屬性?", + "confirm_restore" => "您確定要還原所選屬性嗎?", + "definition_cannot_be_deleted" => "無法刪除所選屬性", + "definition_error_adding_updating" => "無法添加或更新屬性 {0}。 請檢查錯誤日誌。", + "definition_flags" => "屬性可見性", + "definition_group" => "群組", + "definition_id" => "編號", + "definition_name" => "添加屬性", + "definition_name_required" => "屬性名稱必需填寫", + "definition_one_or_multiple" => "屬性", + "definition_successful_adding" => "您已成功添加項目", + "definition_successful_deleted" => "您已成功刪除", + "definition_successful_updating" => "您已成功更新屬性", + "definition_type" => "屬性類型", + "definition_type_required" => "屬性類型必需填寫", + "definition_unit" => "測量單位", + "definition_values" => "屬性值", + "new" => "新屬性", + "no_attributes_to_display" => "沒有項目可顯示", + "receipt_visibility" => "收據", + "show_in_items" => "在項目中顯示", + "show_in_items_visibility" => "物品", + "show_in_receipt" => "在收據中顯示", + "show_in_receivings" => "在收貨中顯示", + "show_in_receivings_visibility" => "收貨", + "show_in_sales" => "在銷售中顯示", + "show_in_sales_visibility" => "銷售", + "update" => "更新屬性", ]; diff --git a/app/Language/zh-Hant/Bootstrap_tables.php b/app/Language/zh-Hant/Bootstrap_tables.php index 132d6787c..5493cf02c 100644 --- a/app/Language/zh-Hant/Bootstrap_tables.php +++ b/app/Language/zh-Hant/Bootstrap_tables.php @@ -1,11 +1,11 @@ "全部", - "columns" => "列", - "hide_show_pagination" => "隱藏/顯示分頁", - "loading" => "加載數據中,請稍候……", - "page_from_to" => "顯示第 {0} 至第 {1} 條記錄,總共 {2} 條記錄", - "refresh" => "重新", - "rows_per_page" => "每頁顯示 {0} 條記錄", - "toggle" => "切換", + "all" => "全部", + "columns" => "列", + "hide_show_pagination" => "隱藏/顯示分頁", + "loading" => "加載數據中,請稍候……", + "page_from_to" => "顯示第 {0} 至第 {1} 條記錄,總共 {2} 條記錄", + "refresh" => "重新", + "rows_per_page" => "每頁顯示 {0} 條記錄", + "toggle" => "切換", ]; diff --git a/app/Language/zh-Hant/Calendar.php b/app/Language/zh-Hant/Calendar.php index 9600612ce..15211f629 100644 --- a/app/Language/zh-Hant/Calendar.php +++ b/app/Language/zh-Hant/Calendar.php @@ -1,48 +1,48 @@ "日", - "mo" => "一", - "tu" => "二", - "we" => "三", - "th" => "四", - "fr" => "五", - "sa" => "六", - "sun" => "日", - "mon" => "一", - "tue" => "二", - "wed" => "三", - "thu" => "四", - "fri" => "五", - "sat" => "六", - "sunday" => "星期日", - "monday" => "星期一", - "tuesday" => "星期二", - "wednesday" => "星期三", - "thursday" => "星期四", - "friday" => "星期五", - "saturday" => "星期六", - "jan" => "一月", - "feb" => "二月", - "mar" => "三月", - "apr" => "四月", - "may" => "五月", - "jun" => "六月", - "jul" => "七月", - "aug" => "八月", - "sep" => "九月", - "oct" => "十月", - "nov" => "十一月", - "dec" => "十二月", - "january" => "一月", - "february" => "二月", - "march" => "三月", - "april" => "四月", - "mayl" => "五月", - "june" => "六月", - "july" => "七月", - "august" => "八月", - "september" => "九月", - "october" => "十月", - "november" => "十一月", - "december" => "十二月", + "su" => "日", + "mo" => "一", + "tu" => "二", + "we" => "三", + "th" => "四", + "fr" => "五", + "sa" => "六", + "sun" => "日", + "mon" => "一", + "tue" => "二", + "wed" => "三", + "thu" => "四", + "fri" => "五", + "sat" => "六", + "sunday" => "星期日", + "monday" => "星期一", + "tuesday" => "星期二", + "wednesday" => "星期三", + "thursday" => "星期四", + "friday" => "星期五", + "saturday" => "星期六", + "jan" => "一月", + "feb" => "二月", + "mar" => "三月", + "apr" => "四月", + "may" => "五月", + "jun" => "六月", + "jul" => "七月", + "aug" => "八月", + "sep" => "九月", + "oct" => "十月", + "nov" => "十一月", + "dec" => "十二月", + "january" => "一月", + "february" => "二月", + "march" => "三月", + "april" => "四月", + "mayl" => "五月", + "june" => "六月", + "july" => "七月", + "august" => "八月", + "september" => "九月", + "october" => "十月", + "november" => "十一月", + "december" => "十二月", ]; diff --git a/app/Language/zh-Hant/Cashups.php b/app/Language/zh-Hant/Cashups.php index 00e43cf5b..08c390635 100644 --- a/app/Language/zh-Hant/Cashups.php +++ b/app/Language/zh-Hant/Cashups.php @@ -1,49 +1,49 @@ "金額", - "amount_number" => "金額必須是數字", - "amount_required" => "金額必需填寫。", - "cancel_cashups" => "", - "cancel_cashups_enter" => "", - "cannot_be_deleted" => "提現不能刪除", - "cash_difference" => "", - "close_date" => "截止日期", - "close_employee" => "關閉時間", - "closed_amount_card" => "牌", - "closed_amount_cash" => "現金封閉", - "closed_amount_check" => "檢查", - "closed_amount_due" => "金額", - "closed_amount_giftcard" => "", - "closed_amount_total" => "總額", - "closed_date" => "關閉日期", - "confirm_delete" => "您確定要刪除選定的 Cashup 嗎?", - "confirm_restore" => "您確定要恢復選定的 Cashup(s) 嗎?", - "confirm_submit" => "", - "date_number" => "日期必須是數字", - "date_required" => "日期必須是數字", - "description" => "描述", - "enable_expected" => "", - "error_adding_updating" => "添加/更新 Cashup 時出錯", - "giftcard" => "", - "id" => "ID", - "info" => "提現信息", - "info_employee" => "", - "is_deleted" => "已刪除", - "new" => "新提現", - "no_cashups_to_display" => "沒有現金可以顯示", - "none_selected" => "您還沒有選擇任何兌現", - "note" => "筆記", - "one_or_multiple" => "提現", - "open_amount_cash" => "打開現金", - "open_date" => "開放日期", - "open_employee" => "打開者", - "opened_date" => "開業日期", - "successful_adding" => "提現添加成功", - "successful_deleted" => "充值刪除成功", - "successful_updating" => "提現更新成功", - "total" => "總額", - "transfer_amount_cash" => "進/出現金", - "transfer_amount_cash_minus" => "", - "update" => "更新提現", - "warning" => "", + "amount" => "金額", + "amount_number" => "金額必須是數字", + "amount_required" => "金額必需填寫。", + "cancel_cashups" => "", + "cancel_cashups_enter" => "", + "cannot_be_deleted" => "提現不能刪除", + "cash_difference" => "", + "close_date" => "截止日期", + "close_employee" => "關閉時間", + "closed_amount_card" => "牌", + "closed_amount_cash" => "現金封閉", + "closed_amount_check" => "檢查", + "closed_amount_due" => "金額", + "closed_amount_giftcard" => "", + "closed_amount_total" => "總額", + "closed_date" => "關閉日期", + "confirm_delete" => "您確定要刪除選定的 Cashup 嗎?", + "confirm_restore" => "您確定要恢復選定的 Cashup(s) 嗎?", + "confirm_submit" => "", + "date_number" => "日期必須是數字", + "date_required" => "日期必須是數字", + "description" => "描述", + "enable_expected" => "", + "error_adding_updating" => "添加/更新 Cashup 時出錯", + "giftcard" => "", + "id" => "ID", + "info" => "提現信息", + "info_employee" => "", + "is_deleted" => "已刪除", + "new" => "新提現", + "no_cashups_to_display" => "沒有現金可以顯示", + "none_selected" => "您還沒有選擇任何兌現", + "note" => "筆記", + "one_or_multiple" => "提現", + "open_amount_cash" => "打開現金", + "open_date" => "開放日期", + "open_employee" => "打開者", + "opened_date" => "開業日期", + "successful_adding" => "提現添加成功", + "successful_deleted" => "充值刪除成功", + "successful_updating" => "提現更新成功", + "total" => "總額", + "transfer_amount_cash" => "進/出現金", + "transfer_amount_cash_minus" => "", + "update" => "更新提現", + "warning" => "", ]; diff --git a/app/Language/zh-Hant/Common.php b/app/Language/zh-Hant/Common.php index a8c8d5b65..398af69fd 100644 --- a/app/Language/zh-Hant/Common.php +++ b/app/Language/zh-Hant/Common.php @@ -1,88 +1,88 @@ "地址 1", - "address_2" => "地址 2", - "admin" => "", - "city" => "城市", - "clerk" => "", - "close" => "關閉", - "color" => "", - "comments" => "評論", - "common" => "一般", - "confirm_search" => "您已經選擇一行或多行,在搜索後這些紀錄將不能再被選取。您確定要提交這個搜索?", - "copyrights" => "© 2010 - {0}", - "correct_errors" => "請在保存前,更正已識別的錯誤", - "country" => "國家", - "dashboard" => "", - "date" => "日期", - "delete" => "刪除", - "det" => "更多", - "download_import_template" => "下載匯入資料的範本 (CSV)", - "edit" => "編輯", - "email" => "郵箱", - "email_invalid_format" => "電郵格式錯誤。", - "export_csv" => "匯出至CSV", - "export_csv_no" => "否", - "export_csv_yes" => "是", - "fields_required_message" => "紅色欄位為必填", - "fields_required_message_unique" => "", - "first_name" => "名字", - "first_name_required" => "名字為必填。", - "first_page" => "第一頁", - "gender" => "性別", - "gender_female" => "女", - "gender_male" => "男", - "gender_undefined" => "", - "icon" => "圖標", - "id" => "ID", - "import" => "匯入", - "import_change_file" => "變更", - "import_csv" => "CSV匯入", - "import_full_path" => "需要 CSV 文件的完整路", - "import_remove_file" => "移除", - "import_select_file" => "選擇檔案", - "inv" => "庫存", - "last_name" => "姓氏", - "last_name_required" => "姓氏為必填。", - "last_page" => "最後一頁", - "learn_about_project" => "了解系統開展進度.", - "list_of" => "列表", - "logo" => "商標", - "logo_mark" => "標記", - "logout" => "登出", - "manager" => "", - "migration_needed" => "登錄後將啟動到%1的數據庫遷移.", - "new" => "新", - "no" => "", - "no_persons_to_display" => "沒有使用者資料可以顯示.", - "none_selected_text" => "[選擇]", - "or" => "或", - "people" => "", - "phone_number" => "電話號碼", - "phone_number_required" => "", - "please_visit_my" => "請造訪", - "position" => "", - "powered_by" => "提供者", - "price" => "價值", - "print" => "列印", - "remove" => "移除", - "required" => "必需", - "restore" => "回復", - "return_policy" => "退貨政策", - "search" => "搜尋", - "search_options" => "搜尋選項", - "searched_for" => "查找", - "software_short" => "開源銷售點", - "software_title" => "開源銷售點", - "state" => "州", - "submit" => "送出", - "total_spent" => "總花費", - "unknown" => "不明", - "view_recent_sales" => "最新的消售資訊", - "website" => "網站", - "welcome" => "歡迎", - "welcome_message" => "歡迎使用OSPOS,請點擊下面的模組以開始使用.", - "yes" => "", - "you_are_using_ospos" => "您正在使用 Open Source Point Of Sale 版本", - "zip" => "郵遞區號", + "address_1" => "地址 1", + "address_2" => "地址 2", + "admin" => "", + "city" => "城市", + "clerk" => "", + "close" => "關閉", + "color" => "", + "comments" => "評論", + "common" => "一般", + "confirm_search" => "您已經選擇一行或多行,在搜索後這些紀錄將不能再被選取。您確定要提交這個搜索?", + "copyrights" => "© 2010 - {0}", + "correct_errors" => "請在保存前,更正已識別的錯誤", + "country" => "國家", + "dashboard" => "", + "date" => "日期", + "delete" => "刪除", + "det" => "更多", + "download_import_template" => "下載匯入資料的範本 (CSV)", + "edit" => "編輯", + "email" => "郵箱", + "email_invalid_format" => "電郵格式錯誤。", + "export_csv" => "匯出至CSV", + "export_csv_no" => "否", + "export_csv_yes" => "是", + "fields_required_message" => "紅色欄位為必填", + "fields_required_message_unique" => "", + "first_name" => "名字", + "first_name_required" => "名字為必填。", + "first_page" => "第一頁", + "gender" => "性別", + "gender_female" => "女", + "gender_male" => "男", + "gender_undefined" => "", + "icon" => "圖標", + "id" => "ID", + "import" => "匯入", + "import_change_file" => "變更", + "import_csv" => "CSV匯入", + "import_full_path" => "需要 CSV 文件的完整路", + "import_remove_file" => "移除", + "import_select_file" => "選擇檔案", + "inv" => "庫存", + "last_name" => "姓氏", + "last_name_required" => "姓氏為必填。", + "last_page" => "最後一頁", + "learn_about_project" => "了解系統開展進度.", + "list_of" => "列表", + "logo" => "商標", + "logo_mark" => "標記", + "logout" => "登出", + "manager" => "", + "migration_needed" => "登錄後將啟動到%1的數據庫遷移.", + "new" => "新", + "no" => "", + "no_persons_to_display" => "沒有使用者資料可以顯示.", + "none_selected_text" => "[選擇]", + "or" => "或", + "people" => "", + "phone_number" => "電話號碼", + "phone_number_required" => "", + "please_visit_my" => "請造訪", + "position" => "", + "powered_by" => "提供者", + "price" => "價值", + "print" => "列印", + "remove" => "移除", + "required" => "必需", + "restore" => "回復", + "return_policy" => "退貨政策", + "search" => "搜尋", + "search_options" => "搜尋選項", + "searched_for" => "查找", + "software_short" => "開源銷售點", + "software_title" => "開源銷售點", + "state" => "州", + "submit" => "送出", + "total_spent" => "總花費", + "unknown" => "不明", + "view_recent_sales" => "最新的消售資訊", + "website" => "網站", + "welcome" => "歡迎", + "welcome_message" => "歡迎使用OSPOS,請點擊下面的模組以開始使用.", + "yes" => "", + "you_are_using_ospos" => "您正在使用 Open Source Point Of Sale 版本", + "zip" => "郵遞區號", ]; diff --git a/app/Language/zh-Hant/Config.php b/app/Language/zh-Hant/Config.php index 45ed076c6..b786c2f18 100644 --- a/app/Language/zh-Hant/Config.php +++ b/app/Language/zh-Hant/Config.php @@ -1,330 +1,330 @@ "公司地址", - "address_required" => "公司地址為必填.", - "all_set" => "所有文件權限設置正確!", - "allow_duplicate_barcodes" => "允許重複的條碼", - "apostrophe" => "撇號", - "backup_button" => "Backup", - "backup_database" => "Backup Database", - "barcode" => "條碼", - "barcode_company" => "公司名稱", - "barcode_configuration" => "條碼配置", - "barcode_content" => "條碼內容", - "barcode_first_row" => "第 1 行", - "barcode_font" => "Font", - "barcode_formats" => "輸入格式", - "barcode_generate_if_empty" => "為空時生成.", - "barcode_height" => "高度(像素)", - "barcode_id" => "Item Id/Name", - "barcode_info" => "條碼配置信息", - "barcode_layout" => "條碼佈局", - "barcode_name" => "客戶", - "barcode_number" => "UPC/EAN/ISBN", - "barcode_number_in_row" => "行數", - "barcode_page_cellspacing" => "顯示頁面單元格間距.", - "barcode_page_width" => "顯示頁面寬度", - "barcode_price" => "價格", - "barcode_second_row" => "Row 4", - "barcode_third_row" => "Row 5", - "barcode_tooltip" => "警告:此功能可能會導致導入或創建重複項。如果您不想要重複的條形碼,請不要使用。", - "barcode_type" => "條碼類型", - "barcode_width" => "寬度(像素)", - "bottom" => "底部", - "cash_button" => "", - "cash_button_1" => "", - "cash_button_2" => "", - "cash_button_3" => "", - "cash_button_4" => "", - "cash_button_5" => "", - "cash_button_6" => "", - "cash_decimals" => "現金小數", - "cash_decimals_tooltip" => "如果現金小數和貨幣小數相同,則不會發生現金觸發的四捨五入,除非現金四捨五入設置為五分之一。", - "cash_rounding" => "現金四捨五入", - "category_dropdown" => "下拉式顯示類別", - "center" => "中心", - "change_apperance_tooltip" => "", - "comma" => "逗號", - "company" => "公司名稱", - "company_avatar" => "", - "company_change_image" => "更改圖像", - "company_logo" => "公司標誌", - "company_remove_image" => "刪除圖像", - "company_required" => "公司名稱為必填", - "company_select_image" => "選擇圖像", - "company_website_url" => "公司網址格式錯誤 (http://...).", - "country_codes" => "國家代碼", - "country_codes_tooltip" => "以逗號分隔的國家/地區代碼列表,用於提名地址查找。", - "currency_code" => "幣別代碼", - "currency_decimals" => "貨幣小數", - "currency_symbol" => "貨幣符號", - "current_employee_only" => "", - "customer_reward" => "報酬", - "customer_reward_duplicate" => "獎勵必須是唯一的。", - "customer_reward_enable" => "啟用客戶獎勵", - "customer_reward_invalid_chars" => "獎勵不能包含“_”", - "customer_reward_required" => "獎勵是必填字段", - "customer_sales_tax_support" => "", - "date_or_time_format" => "日期和時間過濾器", - "datetimeformat" => "日期時間格式", - "decimal_point" => "小數點位數", - "default_barcode_font_size_number" => "默認條形碼字體大小必須是數字。", - "default_barcode_font_size_required" => "默認條碼字體大小是必填字段。", - "default_barcode_height_number" => "默認條碼高度必須是數字。", - "default_barcode_height_required" => "默認條碼高度是必填字段。", - "default_barcode_num_in_row_number" => "行中的默認條形碼編號必須是數字。", - "default_barcode_num_in_row_required" => "行中的默認條形碼編號是必填字段。", - "default_barcode_page_cellspacing_number" => "默認條碼頁 Cellspacing 必須是一個數字。", - "default_barcode_page_cellspacing_required" => "默認條碼頁單元格間距是必填字段。", - "default_barcode_page_width_number" => "默認條形碼頁面寬度必須是數字。", - "default_barcode_page_width_required" => "默認條碼頁面寬度為必填字段.", - "default_barcode_width_number" => "默認條碼寬度必須是數字。", - "default_barcode_width_required" => "默認條碼寬度是必填字段。", - "default_item_columns" => "默認可見項目列", - "default_origin_tax_code" => "默認原產地稅碼", - "default_receivings_discount" => "默認收款折扣", - "default_receivings_discount_number" => "默認收款折扣必須是一個數字。", - "default_receivings_discount_required" => "默認收款折扣是必填字段。", - "default_sales_discount" => "Default Sales Discount %", - "default_sales_discount_number" => "默認銷售折扣必須是數字。", - "default_sales_discount_required" => "默認銷售折扣是必填字段.", - "default_tax_category" => "默認稅種", - "default_tax_code" => "默認稅碼", - "default_tax_jurisdiction" => "默認稅收管轄權", - "default_tax_name_number" => "默認稅名必須是字符串。", - "default_tax_name_required" => "The default tax name is a required field.", - "default_tax_rate" => "預設稅率 %", - "default_tax_rate_1" => "稅率 1", - "default_tax_rate_2" => "稅率 2", - "default_tax_rate_3" => "", - "default_tax_rate_number" => "預設稅率必需為數字.", - "default_tax_rate_required" => "預設稅率為必填.", - "derive_sale_quantity" => "允許派生銷售數量", - "derive_sale_quantity_tooltip" => "如果選中,則將為按擴展金額訂購的商品提供新的商品類型", - "dinner_table" => "餐桌", - "dinner_table_duplicate" => "餐桌必須唯一.", - "dinner_table_enable" => "啟用餐桌", - "dinner_table_invalid_chars" => "餐桌名稱不能包含 '_'.", - "dinner_table_required" => "餐桌是必填欄位.", - "dot" => "點", - "email" => "郵箱", - "email_configuration" => "Email Configuration", - "email_mailpath" => "發送郵件的路徑", - "email_protocol" => "Protocol", - "email_receipt_check_behaviour" => "電子郵件收據複選框", - "email_receipt_check_behaviour_always" => "始終檢查", - "email_receipt_check_behaviour_last" => "記住上次選擇", - "email_receipt_check_behaviour_never" => "始終未選中", - "email_smtp_crypto" => "SMTP 加密", - "email_smtp_host" => "SMTP Server", - "email_smtp_pass" => "SMTP Password", - "email_smtp_port" => "SMTP Port", - "email_smtp_timeout" => "SMTP 逾時", - "email_smtp_user" => "SMTP 用戶名", - "enable_avatar" => "", - "enable_avatar_tooltip" => "", - "enable_dropdown_tooltip" => "", - "enable_new_look" => "", - "enable_right_bar" => "", - "enable_right_bar_tooltip" => "", - "enforce_privacy" => "保護隱私", - "enforce_privacy_tooltip" => "保護客戶隱私,在他們的數據被刪除的情況下強制執行數據擾亂", - "fax" => "傳真", - "file_perm" => "檔案權限有問題,請修正後重刷網頁.", - "financial_year" => "財務年起始", - "financial_year_apr" => "4月1日", - "financial_year_aug" => "8月1日", - "financial_year_dec" => "12月1日", - "financial_year_feb" => "2月1日", - "financial_year_jan" => "1月1日", - "financial_year_jul" => "7月1日", - "financial_year_jun" => "6月1日", - "financial_year_mar" => "3月1日", - "financial_year_may" => "5月1日", - "financial_year_nov" => "11月1日", - "financial_year_oct" => "10月1日", - "financial_year_sep" => "9月1日", - "floating_labels" => "浮動標籤", - "gcaptcha_enable" => "登入檢核碼(reCAPTCHA)", - "gcaptcha_secret_key" => "reCAPTCHA 密鑰", - "gcaptcha_secret_key_required" => "reCAPTCHA 密鑰是必填字段", - "gcaptcha_site_key" => "reCAPTCHA 站點密鑰", - "gcaptcha_site_key_required" => "reCAPTCHA 站點密鑰是必填字段", - "gcaptcha_tooltip" => "登入使用Google reCAPTCHA保護,點選圖標進行 API key 配對.", - "general" => "一般", - "general_configuration" => "一般設定", - "giftcard_number" => "禮物卡號碼", - "giftcard_random" => "亂數產生", - "giftcard_series" => "序列產生", - "image_allowed_file_types" => "允許圖檔類型", - "image_max_height_tooltip" => "上傳圖檔最大高度(px).", - "image_max_size_tooltip" => "上傳圖檔大小上限(kb).", - "image_max_width_tooltip" => "上傳圖檔最大寬度(px).", - "image_restrictions" => "上傳圖檔限制", - "include_hsn" => "包括對 HSN 代碼的支持", - "info" => "儲存組態", - "info_configuration" => "儲存組態", - "input_groups" => "輸入組", - "integrations" => "整合", - "integrations_configuration" => "第三方整合", - "invoice" => "發票", - "invoice_configuration" => "發票打印設置", - "invoice_default_comments" => "默認發票註釋", - "invoice_email_message" => "發票電子郵件模板", - "invoice_enable" => "啟用發票", - "invoice_printer" => "發票打印機", - "invoice_type" => "發票類型", - "is_readable" => "可讀取但權限不正確,請設定為 640 或 660 後重整.", - "is_writable" => "可寫,但權限設置不正確。請將其設置為 750 並刷新。", - "item_markup" => "", - "jsprintsetup_required" => "Warning! This disabled functionality will only work if you have the FireFox jsPrintSetup addon installed. Save anyway?", - "language" => "語言", - "last_used_invoice_number" => "上次使用的發票編號", - "last_used_quote_number" => "上次使用的報價編號", - "last_used_work_order_number" => "上次使用的 W / O 編號", - "left" => "剩下", - "license" => "許可証", - "license_configuration" => "許可聲明", - "line_sequence" => "行序", - "lines_per_page" => "Lines Per Page", - "lines_per_page_number" => "每頁行數必須是數字。", - "lines_per_page_required" => "每頁行數是必填字段。", - "locale" => "Localisation", - "locale_configuration" => "Localisation Configuration", - "locale_info" => "Localisation Configuration Information", - "location" => "庫存", - "location_configuration" => "庫存位置", - "location_info" => "位置配置信息", - "login_form" => "登錄表單樣式", - "logout" => "是否要在註銷前進行備份?點擊【確定】進行備份,點擊【取消】退出。", - "mailchimp" => "郵件黑猩猩", - "mailchimp_api_key" => "黑猩猩 API 密鑰", - "mailchimp_configuration" => "黑猩猩配置", - "mailchimp_key_successfully" => "API 密鑰有效。", - "mailchimp_key_unsuccessfully" => "無效的 API 密鑰.", - "mailchimp_lists" => "MailChimp 列表", - "mailchimp_tooltip" => "單擊 API 密鑰的圖標。", - "message" => "Message", - "message_configuration" => "Message Configuration", - "msg_msg" => "保存的短信", - "msg_msg_placeholder" => "If you wish to use a SMS template save your message here. Otherwise leave the box blank.", - "msg_pwd" => "SMS-API Password", - "msg_pwd_required" => "SMS-API 密碼是必填字段", - "msg_src" => "SMS-API 發件人 ID", - "msg_src_required" => "SMS-API 發件人 ID 是必填字段", - "msg_uid" => "SMS-API 用戶名", - "msg_uid_required" => "SMS-API 用戶名是必填字段", - "multi_pack_enabled" => "每件物品多個包裹", - "no_risk" => "沒有安全/漏洞風險。", - "none" => "none", - "notify_alignment" => "通知彈出位置", - "number_format" => "Number Format", - "number_locale" => "Localisation", - "number_locale_invalid" => "輸入的區域設置無效。檢查工具提示中的鏈接以查找有效的語言環境。", - "number_locale_required" => "數字語言是必填字段。", - "number_locale_tooltip" => "通過此鏈接找到合適的語言環境。", - "os_timezone" => "OSPOS 時區:", - "ospos_info" => "OSPOS 安裝信息", - "payment_options_order" => "付款選項訂單", - "perm_risk" => "不正確的權限使該軟件面臨風險。", - "phone" => "電話", - "phone_required" => "公司電話為必填.", - "print_bottom_margin" => "保證金底部", - "print_bottom_margin_number" => "底部邊距必須是數字。", - "print_bottom_margin_required" => "底部邊距是必填字段。", - "print_delay_autoreturn" => "自動返回銷售延遲", - "print_delay_autoreturn_number" => "自動返回銷售延遲是必填字段。", - "print_delay_autoreturn_required" => "自動返回銷售延遲必須是一個數字。", - "print_footer" => "打印瀏覽器頁腳", - "print_header" => "打印瀏覽器標題", - "print_left_margin" => "左邊界", - "print_left_margin_number" => "左邊距必須是一個數字。", - "print_left_margin_required" => "左邊距是必填字段。", - "print_receipt_check_behaviour" => "打印收據複選框", - "print_receipt_check_behaviour_always" => "始終檢查", - "print_receipt_check_behaviour_last" => "記住上次選擇", - "print_receipt_check_behaviour_never" => "始終未選中", - "print_right_margin" => "右邊界", - "print_right_margin_number" => "邊距右邊必須是一個數字。", - "print_right_margin_required" => "右邊距是必填字段。", - "print_silently" => "顯示打印對話框", - "print_top_margin" => "上邊界", - "print_top_margin_number" => "邊距頂部必須是一個數字。", - "print_top_margin_required" => "邊距頂部是必填字段。", - "quantity_decimals" => "數量小數", - "quick_cash_enable" => "", - "quote_default_comments" => "默認報價註釋", - "receipt" => "收據", - "receipt_category" => "", - "receipt_configuration" => "收據打印設置", - "receipt_default" => "Default", - "receipt_font_size" => "字體大小", - "receipt_font_size_number" => "字體大小必須是數字。", - "receipt_font_size_required" => "字體大小是必填字段。", - "receipt_info" => "收據配置信息", - "receipt_printer" => "票據打印機", - "receipt_short" => "簡短", - "receipt_show_company_name" => "顯示公司名稱", - "receipt_show_description" => "顯示說明", - "receipt_show_serialnumber" => "顯示序列號", - "receipt_show_tax_ind" => "顯示稅收指標", - "receipt_show_taxes" => "顯示稅金", - "receipt_show_total_discount" => "顯示總折扣", - "receipt_template" => "收據模板", - "receiving_calculate_average_price" => "計算平均值價格(收貨)", - "recv_invoice_format" => "收據發票格式", - "register_mode_default" => "默認註冊模式", - "report_an_issue" => "問題回報", - "return_policy_required" => "退換貨政策為必填.", - "reward" => "獎勵", - "reward_configuration" => "獎勵配置", - "right" => "Right", - "sales_invoice_format" => "銷售發票格式", - "sales_quote_format" => "銷售報價格式", - "saved_successfully" => "組態設置儲存成功.", - "saved_unsuccessfully" => "組態設置儲存失敗.", - "security_issue" => "安全漏洞警告", - "server_notice" => "請使用以下信息進行問題報告。", - "service_charge" => "", - "show_due_enable" => "", - "show_office_group" => "顯示辦公室圖標", - "statistics" => "Send statistics", - "statistics_tooltip" => "發送統計數據用於開發和功能改進目的。", - "stock_location" => "倉庫地址", - "stock_location_duplicate" => "庫存位置必須是唯一的。", - "stock_location_invalid_chars" => "庫存位置不能包含“_”。", - "stock_location_required" => "庫存位置是必填字段。", - "suggestions_fifth_column" => "", - "suggestions_first_column" => "第 1 欄", - "suggestions_fourth_column" => "", - "suggestions_layout" => "搜索建議佈局", - "suggestions_second_column" => "第 2 欄", - "suggestions_third_column" => "第 3 欄", - "system_conf" => "設置和配置", - "system_info" => "System Info", - "table" => "桌子", - "table_configuration" => "表配置", - "takings_printer" => "Takings Printer", - "tax" => "稅", - "tax_category" => "", - "tax_category_duplicate" => "", - "tax_category_invalid_chars" => "", - "tax_category_required" => "", - "tax_category_used" => "", - "tax_configuration" => "", - "tax_decimals" => "稅收小數", - "tax_id" => "", - "tax_included" => "含稅", - "theme" => "Theme", - "theme_preview" => "", - "thousands_separator" => "千位分隔符", - "timezone" => "時區", - "timezone_error" => "", - "top" => "Top", - "use_destination_based_tax" => "", - "user_timezone" => "本地時區:", - "website" => "網站", - "wholesale_markup" => "", - "work_order_enable" => "", - "work_order_format" => "", + "address" => "公司地址", + "address_required" => "公司地址為必填.", + "all_set" => "所有文件權限設置正確!", + "allow_duplicate_barcodes" => "允許重複的條碼", + "apostrophe" => "撇號", + "backup_button" => "Backup", + "backup_database" => "Backup Database", + "barcode" => "條碼", + "barcode_company" => "公司名稱", + "barcode_configuration" => "條碼配置", + "barcode_content" => "條碼內容", + "barcode_first_row" => "第 1 行", + "barcode_font" => "Font", + "barcode_formats" => "輸入格式", + "barcode_generate_if_empty" => "為空時生成.", + "barcode_height" => "高度(像素)", + "barcode_id" => "Item Id/Name", + "barcode_info" => "條碼配置信息", + "barcode_layout" => "條碼佈局", + "barcode_name" => "客戶", + "barcode_number" => "UPC/EAN/ISBN", + "barcode_number_in_row" => "行數", + "barcode_page_cellspacing" => "顯示頁面單元格間距.", + "barcode_page_width" => "顯示頁面寬度", + "barcode_price" => "價格", + "barcode_second_row" => "Row 4", + "barcode_third_row" => "Row 5", + "barcode_tooltip" => "警告:此功能可能會導致導入或創建重複項。如果您不想要重複的條形碼,請不要使用。", + "barcode_type" => "條碼類型", + "barcode_width" => "寬度(像素)", + "bottom" => "底部", + "cash_button" => "", + "cash_button_1" => "", + "cash_button_2" => "", + "cash_button_3" => "", + "cash_button_4" => "", + "cash_button_5" => "", + "cash_button_6" => "", + "cash_decimals" => "現金小數", + "cash_decimals_tooltip" => "如果現金小數和貨幣小數相同,則不會發生現金觸發的四捨五入,除非現金四捨五入設置為五分之一。", + "cash_rounding" => "現金四捨五入", + "category_dropdown" => "下拉式顯示類別", + "center" => "中心", + "change_apperance_tooltip" => "", + "comma" => "逗號", + "company" => "公司名稱", + "company_avatar" => "", + "company_change_image" => "更改圖像", + "company_logo" => "公司標誌", + "company_remove_image" => "刪除圖像", + "company_required" => "公司名稱為必填", + "company_select_image" => "選擇圖像", + "company_website_url" => "公司網址格式錯誤 (http://...).", + "country_codes" => "國家代碼", + "country_codes_tooltip" => "以逗號分隔的國家/地區代碼列表,用於提名地址查找。", + "currency_code" => "幣別代碼", + "currency_decimals" => "貨幣小數", + "currency_symbol" => "貨幣符號", + "current_employee_only" => "", + "customer_reward" => "報酬", + "customer_reward_duplicate" => "獎勵必須是唯一的。", + "customer_reward_enable" => "啟用客戶獎勵", + "customer_reward_invalid_chars" => "獎勵不能包含“_”", + "customer_reward_required" => "獎勵是必填字段", + "customer_sales_tax_support" => "", + "date_or_time_format" => "日期和時間過濾器", + "datetimeformat" => "日期時間格式", + "decimal_point" => "小數點位數", + "default_barcode_font_size_number" => "默認條形碼字體大小必須是數字。", + "default_barcode_font_size_required" => "默認條碼字體大小是必填字段。", + "default_barcode_height_number" => "默認條碼高度必須是數字。", + "default_barcode_height_required" => "默認條碼高度是必填字段。", + "default_barcode_num_in_row_number" => "行中的默認條形碼編號必須是數字。", + "default_barcode_num_in_row_required" => "行中的默認條形碼編號是必填字段。", + "default_barcode_page_cellspacing_number" => "默認條碼頁 Cellspacing 必須是一個數字。", + "default_barcode_page_cellspacing_required" => "默認條碼頁單元格間距是必填字段。", + "default_barcode_page_width_number" => "默認條形碼頁面寬度必須是數字。", + "default_barcode_page_width_required" => "默認條碼頁面寬度為必填字段.", + "default_barcode_width_number" => "默認條碼寬度必須是數字。", + "default_barcode_width_required" => "默認條碼寬度是必填字段。", + "default_item_columns" => "默認可見項目列", + "default_origin_tax_code" => "默認原產地稅碼", + "default_receivings_discount" => "默認收款折扣", + "default_receivings_discount_number" => "默認收款折扣必須是一個數字。", + "default_receivings_discount_required" => "默認收款折扣是必填字段。", + "default_sales_discount" => "Default Sales Discount %", + "default_sales_discount_number" => "默認銷售折扣必須是數字。", + "default_sales_discount_required" => "默認銷售折扣是必填字段.", + "default_tax_category" => "默認稅種", + "default_tax_code" => "默認稅碼", + "default_tax_jurisdiction" => "默認稅收管轄權", + "default_tax_name_number" => "默認稅名必須是字符串。", + "default_tax_name_required" => "The default tax name is a required field.", + "default_tax_rate" => "預設稅率 %", + "default_tax_rate_1" => "稅率 1", + "default_tax_rate_2" => "稅率 2", + "default_tax_rate_3" => "", + "default_tax_rate_number" => "預設稅率必需為數字.", + "default_tax_rate_required" => "預設稅率為必填.", + "derive_sale_quantity" => "允許派生銷售數量", + "derive_sale_quantity_tooltip" => "如果選中,則將為按擴展金額訂購的商品提供新的商品類型", + "dinner_table" => "餐桌", + "dinner_table_duplicate" => "餐桌必須唯一.", + "dinner_table_enable" => "啟用餐桌", + "dinner_table_invalid_chars" => "餐桌名稱不能包含 '_'.", + "dinner_table_required" => "餐桌是必填欄位.", + "dot" => "點", + "email" => "郵箱", + "email_configuration" => "Email Configuration", + "email_mailpath" => "發送郵件的路徑", + "email_protocol" => "Protocol", + "email_receipt_check_behaviour" => "電子郵件收據複選框", + "email_receipt_check_behaviour_always" => "始終檢查", + "email_receipt_check_behaviour_last" => "記住上次選擇", + "email_receipt_check_behaviour_never" => "始終未選中", + "email_smtp_crypto" => "SMTP 加密", + "email_smtp_host" => "SMTP Server", + "email_smtp_pass" => "SMTP Password", + "email_smtp_port" => "SMTP Port", + "email_smtp_timeout" => "SMTP 逾時", + "email_smtp_user" => "SMTP 用戶名", + "enable_avatar" => "", + "enable_avatar_tooltip" => "", + "enable_dropdown_tooltip" => "", + "enable_new_look" => "", + "enable_right_bar" => "", + "enable_right_bar_tooltip" => "", + "enforce_privacy" => "保護隱私", + "enforce_privacy_tooltip" => "保護客戶隱私,在他們的數據被刪除的情況下強制執行數據擾亂", + "fax" => "傳真", + "file_perm" => "檔案權限有問題,請修正後重刷網頁.", + "financial_year" => "財務年起始", + "financial_year_apr" => "4月1日", + "financial_year_aug" => "8月1日", + "financial_year_dec" => "12月1日", + "financial_year_feb" => "2月1日", + "financial_year_jan" => "1月1日", + "financial_year_jul" => "7月1日", + "financial_year_jun" => "6月1日", + "financial_year_mar" => "3月1日", + "financial_year_may" => "5月1日", + "financial_year_nov" => "11月1日", + "financial_year_oct" => "10月1日", + "financial_year_sep" => "9月1日", + "floating_labels" => "浮動標籤", + "gcaptcha_enable" => "登入檢核碼(reCAPTCHA)", + "gcaptcha_secret_key" => "reCAPTCHA 密鑰", + "gcaptcha_secret_key_required" => "reCAPTCHA 密鑰是必填字段", + "gcaptcha_site_key" => "reCAPTCHA 站點密鑰", + "gcaptcha_site_key_required" => "reCAPTCHA 站點密鑰是必填字段", + "gcaptcha_tooltip" => "登入使用Google reCAPTCHA保護,點選圖標進行 API key 配對.", + "general" => "一般", + "general_configuration" => "一般設定", + "giftcard_number" => "禮物卡號碼", + "giftcard_random" => "亂數產生", + "giftcard_series" => "序列產生", + "image_allowed_file_types" => "允許圖檔類型", + "image_max_height_tooltip" => "上傳圖檔最大高度(px).", + "image_max_size_tooltip" => "上傳圖檔大小上限(kb).", + "image_max_width_tooltip" => "上傳圖檔最大寬度(px).", + "image_restrictions" => "上傳圖檔限制", + "include_hsn" => "包括對 HSN 代碼的支持", + "info" => "儲存組態", + "info_configuration" => "儲存組態", + "input_groups" => "輸入組", + "integrations" => "整合", + "integrations_configuration" => "第三方整合", + "invoice" => "發票", + "invoice_configuration" => "發票打印設置", + "invoice_default_comments" => "默認發票註釋", + "invoice_email_message" => "發票電子郵件模板", + "invoice_enable" => "啟用發票", + "invoice_printer" => "發票打印機", + "invoice_type" => "發票類型", + "is_readable" => "可讀取但權限不正確,請設定為 640 或 660 後重整.", + "is_writable" => "可寫,但權限設置不正確。請將其設置為 750 並刷新。", + "item_markup" => "", + "jsprintsetup_required" => "Warning! This disabled functionality will only work if you have the FireFox jsPrintSetup addon installed. Save anyway?", + "language" => "語言", + "last_used_invoice_number" => "上次使用的發票編號", + "last_used_quote_number" => "上次使用的報價編號", + "last_used_work_order_number" => "上次使用的 W / O 編號", + "left" => "剩下", + "license" => "許可証", + "license_configuration" => "許可聲明", + "line_sequence" => "行序", + "lines_per_page" => "Lines Per Page", + "lines_per_page_number" => "每頁行數必須是數字。", + "lines_per_page_required" => "每頁行數是必填字段。", + "locale" => "Localisation", + "locale_configuration" => "Localisation Configuration", + "locale_info" => "Localisation Configuration Information", + "location" => "庫存", + "location_configuration" => "庫存位置", + "location_info" => "位置配置信息", + "login_form" => "登錄表單樣式", + "logout" => "是否要在註銷前進行備份?點擊【確定】進行備份,點擊【取消】退出。", + "mailchimp" => "郵件黑猩猩", + "mailchimp_api_key" => "黑猩猩 API 密鑰", + "mailchimp_configuration" => "黑猩猩配置", + "mailchimp_key_successfully" => "API 密鑰有效。", + "mailchimp_key_unsuccessfully" => "無效的 API 密鑰.", + "mailchimp_lists" => "MailChimp 列表", + "mailchimp_tooltip" => "單擊 API 密鑰的圖標。", + "message" => "Message", + "message_configuration" => "Message Configuration", + "msg_msg" => "保存的短信", + "msg_msg_placeholder" => "If you wish to use a SMS template save your message here. Otherwise leave the box blank.", + "msg_pwd" => "SMS-API Password", + "msg_pwd_required" => "SMS-API 密碼是必填字段", + "msg_src" => "SMS-API 發件人 ID", + "msg_src_required" => "SMS-API 發件人 ID 是必填字段", + "msg_uid" => "SMS-API 用戶名", + "msg_uid_required" => "SMS-API 用戶名是必填字段", + "multi_pack_enabled" => "每件物品多個包裹", + "no_risk" => "沒有安全/漏洞風險。", + "none" => "none", + "notify_alignment" => "通知彈出位置", + "number_format" => "Number Format", + "number_locale" => "Localisation", + "number_locale_invalid" => "輸入的區域設置無效。檢查工具提示中的鏈接以查找有效的語言環境。", + "number_locale_required" => "數字語言是必填字段。", + "number_locale_tooltip" => "通過此鏈接找到合適的語言環境。", + "os_timezone" => "OSPOS 時區:", + "ospos_info" => "OSPOS 安裝信息", + "payment_options_order" => "付款選項訂單", + "perm_risk" => "不正確的權限使該軟件面臨風險。", + "phone" => "電話", + "phone_required" => "公司電話為必填.", + "print_bottom_margin" => "保證金底部", + "print_bottom_margin_number" => "底部邊距必須是數字。", + "print_bottom_margin_required" => "底部邊距是必填字段。", + "print_delay_autoreturn" => "自動返回銷售延遲", + "print_delay_autoreturn_number" => "自動返回銷售延遲是必填字段。", + "print_delay_autoreturn_required" => "自動返回銷售延遲必須是一個數字。", + "print_footer" => "打印瀏覽器頁腳", + "print_header" => "打印瀏覽器標題", + "print_left_margin" => "左邊界", + "print_left_margin_number" => "左邊距必須是一個數字。", + "print_left_margin_required" => "左邊距是必填字段。", + "print_receipt_check_behaviour" => "打印收據複選框", + "print_receipt_check_behaviour_always" => "始終檢查", + "print_receipt_check_behaviour_last" => "記住上次選擇", + "print_receipt_check_behaviour_never" => "始終未選中", + "print_right_margin" => "右邊界", + "print_right_margin_number" => "邊距右邊必須是一個數字。", + "print_right_margin_required" => "右邊距是必填字段。", + "print_silently" => "顯示打印對話框", + "print_top_margin" => "上邊界", + "print_top_margin_number" => "邊距頂部必須是一個數字。", + "print_top_margin_required" => "邊距頂部是必填字段。", + "quantity_decimals" => "數量小數", + "quick_cash_enable" => "", + "quote_default_comments" => "默認報價註釋", + "receipt" => "收據", + "receipt_category" => "", + "receipt_configuration" => "收據打印設置", + "receipt_default" => "Default", + "receipt_font_size" => "字體大小", + "receipt_font_size_number" => "字體大小必須是數字。", + "receipt_font_size_required" => "字體大小是必填字段。", + "receipt_info" => "收據配置信息", + "receipt_printer" => "票據打印機", + "receipt_short" => "簡短", + "receipt_show_company_name" => "顯示公司名稱", + "receipt_show_description" => "顯示說明", + "receipt_show_serialnumber" => "顯示序列號", + "receipt_show_tax_ind" => "顯示稅收指標", + "receipt_show_taxes" => "顯示稅金", + "receipt_show_total_discount" => "顯示總折扣", + "receipt_template" => "收據模板", + "receiving_calculate_average_price" => "計算平均值價格(收貨)", + "recv_invoice_format" => "收據發票格式", + "register_mode_default" => "默認註冊模式", + "report_an_issue" => "問題回報", + "return_policy_required" => "退換貨政策為必填.", + "reward" => "獎勵", + "reward_configuration" => "獎勵配置", + "right" => "Right", + "sales_invoice_format" => "銷售發票格式", + "sales_quote_format" => "銷售報價格式", + "saved_successfully" => "組態設置儲存成功.", + "saved_unsuccessfully" => "組態設置儲存失敗.", + "security_issue" => "安全漏洞警告", + "server_notice" => "請使用以下信息進行問題報告。", + "service_charge" => "", + "show_due_enable" => "", + "show_office_group" => "顯示辦公室圖標", + "statistics" => "Send statistics", + "statistics_tooltip" => "發送統計數據用於開發和功能改進目的。", + "stock_location" => "倉庫地址", + "stock_location_duplicate" => "庫存位置必須是唯一的。", + "stock_location_invalid_chars" => "庫存位置不能包含“_”。", + "stock_location_required" => "庫存位置是必填字段。", + "suggestions_fifth_column" => "", + "suggestions_first_column" => "第 1 欄", + "suggestions_fourth_column" => "", + "suggestions_layout" => "搜索建議佈局", + "suggestions_second_column" => "第 2 欄", + "suggestions_third_column" => "第 3 欄", + "system_conf" => "設置和配置", + "system_info" => "System Info", + "table" => "桌子", + "table_configuration" => "表配置", + "takings_printer" => "Takings Printer", + "tax" => "稅", + "tax_category" => "", + "tax_category_duplicate" => "", + "tax_category_invalid_chars" => "", + "tax_category_required" => "", + "tax_category_used" => "", + "tax_configuration" => "", + "tax_decimals" => "稅收小數", + "tax_id" => "", + "tax_included" => "含稅", + "theme" => "Theme", + "theme_preview" => "", + "thousands_separator" => "千位分隔符", + "timezone" => "時區", + "timezone_error" => "", + "top" => "Top", + "use_destination_based_tax" => "", + "user_timezone" => "本地時區:", + "website" => "網站", + "wholesale_markup" => "", + "work_order_enable" => "", + "work_order_format" => "", ]; diff --git a/app/Language/zh-Hant/Customers.php b/app/Language/zh-Hant/Customers.php index 9136b0e7f..ae1e25555 100644 --- a/app/Language/zh-Hant/Customers.php +++ b/app/Language/zh-Hant/Customers.php @@ -1,56 +1,56 @@ "帳號 #", - "account_number_duplicate" => "帳號已存在於數據庫中。", - "available_points" => "現有積分", - "available_points_value" => "", - "average" => "平均花費", - "avg_discount" => "平均折扣", - "basic_information" => "基本資料", - "cannot_be_deleted" => "無法刪除選定的客戶,選定的客戶存有銷售紀錄。", - "company_name" => "公司", - "confirm_delete" => "你確定要刪除選定的客戶?", - "confirm_restore" => "您確定要還原所選客戶嗎?", - "consent" => "註冊同意", - "consent_required" => "註冊同意是必須的.", - "csv_import_failed" => "CSV匯入失敗", - "csv_import_nodata_wrongformat" => "上傳的文件沒有數據或格式不正確.", - "csv_import_partially_failed" => "大部份客戶導入成功但有些失敗:", - "csv_import_success" => "成功導入客戶.", - "customer" => "客戶", - "date" => "日期", - "discount" => "折扣", - "discount_fixed" => "固定折扣", - "discount_percent" => "折扣百分比", - "discount_type" => "折扣種類", - "email_duplicate" => "電子郵件地址重複.", - "employee" => "僱員", - "error_adding_updating" => "添加/更新客戶錯誤.", - "import_items_csv" => "Import customers from CSV sheet", - "mailchimp_activity_click" => "激活", - "mailchimp_activity_lastopen" => "最後打開", - "mailchimp_activity_open" => "閱讀電郵", - "mailchimp_activity_total" => "郵件已發送", - "mailchimp_activity_unopen" => "電郵未打開", - "mailchimp_email_client" => "電郵客戶端", - "mailchimp_info" => "邮件猩猩", - "mailchimp_member_rating" => "評分", - "mailchimp_status" => "狀況", - "mailchimp_vip" => "特選客戶", - "max" => "最大花費", - "min" => "最少花費", - "new" => "新客戶", - "none_selected" => "您還沒有選擇任何客戶進行刪除.", - "one_or_multiple" => "客戶", - "quantity" => "數量", - "stats_info" => "客戶統計信息", - "successful_adding" => "成功新增顧客", - "successful_deleted" => "成功刪除", - "successful_updating" => "成功更新顧客", - "tax_code" => "稅務號碼", - "tax_id" => "稅務編號", - "taxable" => "應課稅", - "total" => "Total", - "update" => "更新客戶", - "rewards_package" => "獎勵禮包", + "account_number" => "帳號 #", + "account_number_duplicate" => "帳號已存在於數據庫中。", + "available_points" => "現有積分", + "available_points_value" => "", + "average" => "平均花費", + "avg_discount" => "平均折扣", + "basic_information" => "基本資料", + "cannot_be_deleted" => "無法刪除選定的客戶,選定的客戶存有銷售紀錄。", + "company_name" => "公司", + "confirm_delete" => "你確定要刪除選定的客戶?", + "confirm_restore" => "您確定要還原所選客戶嗎?", + "consent" => "註冊同意", + "consent_required" => "註冊同意是必須的.", + "csv_import_failed" => "CSV匯入失敗", + "csv_import_nodata_wrongformat" => "上傳的文件沒有數據或格式不正確.", + "csv_import_partially_failed" => "大部份客戶導入成功但有些失敗:", + "csv_import_success" => "成功導入客戶.", + "customer" => "客戶", + "date" => "日期", + "discount" => "折扣", + "discount_fixed" => "固定折扣", + "discount_percent" => "折扣百分比", + "discount_type" => "折扣種類", + "email_duplicate" => "電子郵件地址重複.", + "employee" => "僱員", + "error_adding_updating" => "添加/更新客戶錯誤.", + "import_items_csv" => "Import customers from CSV sheet", + "mailchimp_activity_click" => "激活", + "mailchimp_activity_lastopen" => "最後打開", + "mailchimp_activity_open" => "閱讀電郵", + "mailchimp_activity_total" => "郵件已發送", + "mailchimp_activity_unopen" => "電郵未打開", + "mailchimp_email_client" => "電郵客戶端", + "mailchimp_info" => "邮件猩猩", + "mailchimp_member_rating" => "評分", + "mailchimp_status" => "狀況", + "mailchimp_vip" => "特選客戶", + "max" => "最大花費", + "min" => "最少花費", + "new" => "新客戶", + "none_selected" => "您還沒有選擇任何客戶進行刪除.", + "one_or_multiple" => "客戶", + "quantity" => "數量", + "stats_info" => "客戶統計信息", + "successful_adding" => "成功新增顧客", + "successful_deleted" => "成功刪除", + "successful_updating" => "成功更新顧客", + "tax_code" => "稅務號碼", + "tax_id" => "稅務編號", + "taxable" => "應課稅", + "total" => "Total", + "update" => "更新客戶", + "rewards_package" => "獎勵禮包", ]; diff --git a/app/Language/zh-Hant/Datepicker.php b/app/Language/zh-Hant/Datepicker.php index d908338bd..24e8cfe6d 100644 --- a/app/Language/zh-Hant/Datepicker.php +++ b/app/Language/zh-Hant/Datepicker.php @@ -1,23 +1,23 @@ "全部", - "apply" => "申請", - "cancel" => "取消銷售", - "custom" => "定制", - "from" => "從", - "last_30" => "過去七天", - "last_7" => "過去七天", - "last_financial_year" => "上一財政年度", - "last_month" => "上個月", - "last_year" => "去年", - "same_month_last_year" => "去年同月", - "same_month_to_same_day_last_year" => "去年同月同日", - "this_financial_year" => "當前財政年度", - "this_month" => "這個月", - "this_year" => "今年", - "to" => "To", - "today" => "今天", - "today_last_year" => "去年的今天", - "weekstart" => "0", - "yesterday" => "昨天", + "all_time" => "全部", + "apply" => "申請", + "cancel" => "取消銷售", + "custom" => "定制", + "from" => "從", + "last_30" => "過去七天", + "last_7" => "過去七天", + "last_financial_year" => "上一財政年度", + "last_month" => "上個月", + "last_year" => "去年", + "same_month_last_year" => "去年同月", + "same_month_to_same_day_last_year" => "去年同月同日", + "this_financial_year" => "當前財政年度", + "this_month" => "這個月", + "this_year" => "今年", + "to" => "To", + "today" => "今天", + "today_last_year" => "去年的今天", + "weekstart" => "0", + "yesterday" => "昨天", ]; diff --git a/app/Language/zh-Hant/Employees.php b/app/Language/zh-Hant/Employees.php index 43f2ff42a..69e3d19c5 100644 --- a/app/Language/zh-Hant/Employees.php +++ b/app/Language/zh-Hant/Employees.php @@ -1,44 +1,44 @@ "", - "basic_information" => "員工基本資料", - "cannot_be_deleted" => "無法刪除選定的僱員,選定的員工中已有銷售紀錄或你正在試圖刪除自己.", - "change_employee" => "", - "change_password" => "更改密碼", - "clerk" => "", - "commission" => "", - "confirm_delete" => "你確定要刪除所選的員工嗎?", - "confirm_restore" => "您確定要還原所選員工嗎?", - "current_password" => "當前密碼", - "current_password_invalid" => "當前密碼無效。", - "employee" => "員工", - "error_adding_updating" => "添加/更新員工錯誤.", - "error_deleting_demo_admin" => "您不能刪除admin用戶.", - "error_updating_demo_admin" => "您不能更改admin用戶.", - "language" => "語言", - "login_info" => "員工登錄資料", - "manager" => "", - "new" => "新員工", - "none_selected" => "您還沒有選擇任何員工進行刪除.", - "one_or_multiple" => "員工", - "password" => "密碼", - "password_minlength" => "密碼需為八個字元以上.", - "password_must_match" => "密碼與確認密碼不一致.", - "password_not_must_match" => "當前密碼和新密碼一致。", - "password_required" => "請輸入密碼.", - "permission_desc" => "勾選後授予使用該模組功能.", - "permission_info" => "員工權限", - "repeat_password" => "確認密碼", - "subpermission_required" => "為每個模塊添加至少一項撥款.", - "successful_adding" => "新增員工資料成功.", - "successful_change_password" => "密碼更改成功。", - "successful_deleted" => "成功刪除員工資料", - "successful_updating" => "成功更新員工資料", - "system_language" => "系統語言", - "unsuccessful_change_password" => "密碼更改失敗。", - "update" => "更新員工", - "username" => "帳號", - "username_duplicate" => "", - "username_minlength" => "帳號必需為五個字元以上.", - "username_required" => "帳號為必填.", + "administrator" => "", + "basic_information" => "員工基本資料", + "cannot_be_deleted" => "無法刪除選定的僱員,選定的員工中已有銷售紀錄或你正在試圖刪除自己.", + "change_employee" => "", + "change_password" => "更改密碼", + "clerk" => "", + "commission" => "", + "confirm_delete" => "你確定要刪除所選的員工嗎?", + "confirm_restore" => "您確定要還原所選員工嗎?", + "current_password" => "當前密碼", + "current_password_invalid" => "當前密碼無效。", + "employee" => "員工", + "error_adding_updating" => "添加/更新員工錯誤.", + "error_deleting_demo_admin" => "您不能刪除admin用戶.", + "error_updating_demo_admin" => "您不能更改admin用戶.", + "language" => "語言", + "login_info" => "員工登錄資料", + "manager" => "", + "new" => "新員工", + "none_selected" => "您還沒有選擇任何員工進行刪除.", + "one_or_multiple" => "員工", + "password" => "密碼", + "password_minlength" => "密碼需為八個字元以上.", + "password_must_match" => "密碼與確認密碼不一致.", + "password_not_must_match" => "當前密碼和新密碼一致。", + "password_required" => "請輸入密碼.", + "permission_desc" => "勾選後授予使用該模組功能.", + "permission_info" => "員工權限", + "repeat_password" => "確認密碼", + "subpermission_required" => "為每個模塊添加至少一項撥款.", + "successful_adding" => "新增員工資料成功.", + "successful_change_password" => "密碼更改成功。", + "successful_deleted" => "成功刪除員工資料", + "successful_updating" => "成功更新員工資料", + "system_language" => "系統語言", + "unsuccessful_change_password" => "密碼更改失敗。", + "update" => "更新員工", + "username" => "帳號", + "username_duplicate" => "", + "username_minlength" => "帳號必需為五個字元以上.", + "username_required" => "帳號為必填.", ]; diff --git a/app/Language/zh-Hant/Enum.php b/app/Language/zh-Hant/Enum.php index 873e3a1c3..cb275187b 100644 --- a/app/Language/zh-Hant/Enum.php +++ b/app/Language/zh-Hant/Enum.php @@ -1,10 +1,10 @@ "減半", - "half_even" => "半偶", - "half_five" => "半五", - "half_odd" => "半奇數", - "half_up" => "半升", - "round_down" => "無條件捨去", - "round_up" => "無條件進位", + "half_down" => "減半", + "half_even" => "半偶", + "half_five" => "半五", + "half_odd" => "半奇數", + "half_up" => "半升", + "round_down" => "無條件捨去", + "round_up" => "無條件進位", ]; diff --git a/app/Language/zh-Hant/Error.php b/app/Language/zh-Hant/Error.php index 66ae67bfc..3912f03c2 100644 --- a/app/Language/zh-Hant/Error.php +++ b/app/Language/zh-Hant/Error.php @@ -1,5 +1,5 @@ "您沒有權限使用模組", - "unknown" => "發生未知的錯誤", + "no_permission_module" => "您沒有權限使用模組", + "unknown" => "發生未知的錯誤", ]; diff --git a/app/Language/zh-Hant/Expenses.php b/app/Language/zh-Hant/Expenses.php index 995729e8e..a91aafea9 100644 --- a/app/Language/zh-Hant/Expenses.php +++ b/app/Language/zh-Hant/Expenses.php @@ -1,50 +1,50 @@ "添加費用", - "amount" => "數量", - "amount_number" => "金額必須是數字", - "amount_required" => "所需費用金額", - "by_category" => "類別", - "cannot_be_deleted" => "無法刪除類別費用", - "cash" => "現金", - "cash_filter" => "現金", - "categories_name" => "類別", - "category_required" => "類別是必填字段", - "check" => "查看", - "check_filter" => "查看", - "confirm_delete" => "你確定要刪除選擇的費用嗎?", - "confirm_restore" => "你確定要還原選擇的費用嗎?", - "credit" => "信用卡", - "credit_filter" => "信用卡", - "date" => "Date", - "date_number" => "日期必須是數字", - "date_required" => "日期是必填字段", - "debit" => "轉賬卡", - "debit_filter" => "借記卡", - "description" => "Description", - "due" => "到期的", - "due_filter" => "到期的", - "employee" => "由...製作", - "error_adding_updating" => "添加/更新費用時出錯", - "expense_id" => "Id", - "expenses_employee" => "員工", - "info" => "費用信息", - "ip_address" => "", - "is_deleted" => "已刪除", - "name_required" => "費用名稱必填", - "new" => "新費用", - "new_supplier" => "", - "no_expenses_to_display" => "沒有費用顯示", - "none_selected" => "您還沒有選擇任何費用", - "one_or_multiple" => "花費", - "payment" => "付款方式", - "start_typing_supplier_name" => "開始輸入供應商名稱...", - "successful_adding" => "費用添加成功", - "successful_deleted" => "費用刪除成功", - "successful_updating" => "費用更新成功", - "supplier_name" => "供應商", - "supplier_tax_code" => "稅法", - "tax_amount" => "稅", - "tax_amount_number" => "", - "update" => "更新費用", + "add_item" => "添加費用", + "amount" => "數量", + "amount_number" => "金額必須是數字", + "amount_required" => "所需費用金額", + "by_category" => "類別", + "cannot_be_deleted" => "無法刪除類別費用", + "cash" => "現金", + "cash_filter" => "現金", + "categories_name" => "類別", + "category_required" => "類別是必填字段", + "check" => "查看", + "check_filter" => "查看", + "confirm_delete" => "你確定要刪除選擇的費用嗎?", + "confirm_restore" => "你確定要還原選擇的費用嗎?", + "credit" => "信用卡", + "credit_filter" => "信用卡", + "date" => "Date", + "date_number" => "日期必須是數字", + "date_required" => "日期是必填字段", + "debit" => "轉賬卡", + "debit_filter" => "借記卡", + "description" => "Description", + "due" => "到期的", + "due_filter" => "到期的", + "employee" => "由...製作", + "error_adding_updating" => "添加/更新費用時出錯", + "expense_id" => "Id", + "expenses_employee" => "員工", + "info" => "費用信息", + "ip_address" => "", + "is_deleted" => "已刪除", + "name_required" => "費用名稱必填", + "new" => "新費用", + "new_supplier" => "", + "no_expenses_to_display" => "沒有費用顯示", + "none_selected" => "您還沒有選擇任何費用", + "one_or_multiple" => "花費", + "payment" => "付款方式", + "start_typing_supplier_name" => "開始輸入供應商名稱...", + "successful_adding" => "費用添加成功", + "successful_deleted" => "費用刪除成功", + "successful_updating" => "費用更新成功", + "supplier_name" => "供應商", + "supplier_tax_code" => "稅法", + "tax_amount" => "稅", + "tax_amount_number" => "", + "update" => "更新費用", ]; diff --git a/app/Language/zh-Hant/Expenses_categories.php b/app/Language/zh-Hant/Expenses_categories.php index b2893ff04..100cc94fd 100644 --- a/app/Language/zh-Hant/Expenses_categories.php +++ b/app/Language/zh-Hant/Expenses_categories.php @@ -1,22 +1,22 @@ "費用類別名稱為必填", - "add_item" => "新增類別", - "cannot_be_deleted" => "不可刪除費用類別", - "category_id" => "Id", - "confirm_delete" => "你確定要刪除選擇的費用類別嗎?", - "confirm_restore" => "你確定要還原選擇的費用類別嗎?", - "description" => "類別說明", - "error_adding_updating" => "新增或修改費用類別失敗", - "info" => "費用類別資訊", - "name" => "類別名稱", - "new" => "新增類別", - "no_expenses_categories_to_display" => "沒有可顯示的類別", - "none_selected" => "尚未選擇費用類別", - "one_or_multiple" => "費用類別", - "quantity" => "數量", - "successful_adding" => "新增費用類別成功", - "successful_deleted" => "刪除費用類別成功", - "successful_updating" => "修改費用類別成功", - "update" => "修改類別", + "category_name_required" => "費用類別名稱為必填", + "add_item" => "新增類別", + "cannot_be_deleted" => "不可刪除費用類別", + "category_id" => "Id", + "confirm_delete" => "你確定要刪除選擇的費用類別嗎?", + "confirm_restore" => "你確定要還原選擇的費用類別嗎?", + "description" => "類別說明", + "error_adding_updating" => "新增或修改費用類別失敗", + "info" => "費用類別資訊", + "name" => "類別名稱", + "new" => "新增類別", + "no_expenses_categories_to_display" => "沒有可顯示的類別", + "none_selected" => "尚未選擇費用類別", + "one_or_multiple" => "費用類別", + "quantity" => "數量", + "successful_adding" => "新增費用類別成功", + "successful_deleted" => "刪除費用類別成功", + "successful_updating" => "修改費用類別成功", + "update" => "修改類別", ]; diff --git a/app/Language/zh-Hant/Giftcards.php b/app/Language/zh-Hant/Giftcards.php index 022693b22..28734e609 100644 --- a/app/Language/zh-Hant/Giftcards.php +++ b/app/Language/zh-Hant/Giftcards.php @@ -1,71 +1,71 @@ "加/減庫存.", - "allow_alt_description" => "允許使用ALT描述", - "bulk_edit" => "批量編輯", - "cannot_be_deleted" => "無法刪除選定的禮金券,一個或多個所選擇的禮金券已經使用。", - "cannot_find_giftcard" => "找不到禮金券的訊息.", - "cannot_use" => "禮品卡 {0} 不能用於此銷售:無效客戶。", - "card_value" => "金額", - "category" => "類別", - "change_all_to_allow_alt_desc" => "充許全部ALT倒序.", - "change_all_to_not_allow_allow_desc" => "不允許全部ALT倒序.", - "change_all_to_serialized" => "全部更改序號至序列化", - "change_all_to_unserialized" => "全部更改序號至非序列化", - "confirm_bulk_edit" => "您確定您要編輯的所有選擇的禮金券嗎?", - "confirm_delete" => "你確定你要刪除選定的禮金券?", - "confirm_restore" => "您確定要恢復選定的禮品卡嗎?", - "cost_price" => "成本價格", - "count" => "更新庫存", - "csv_import_failed" => "CSV匯入失敗.", - "current_quantity" => "當前數量", - "description" => "描述", - "details_count" => "庫存盤點詳情", - "do_nothing" => "不做任何修改", - "edit_fields_you_want_to_update" => "編輯所有選定的禮金券中你想要編輯的資料.", - "edit_multiple_giftcards" => "編輯多張禮品卡。", - "error_adding_updating" => "新增/更新禮金券錯誤.", - "error_updating_multiple" => "禮金券更新錯誤.", - "generate_barcodes" => "產生條碼", - "giftcard" => "禮金券", - "giftcard_number" => "禮金券編號", - "info_provided_by" => "提供信息的來源", - "inventory_comments" => "評論", - "is_serialized" => "禮金券序號", - "low_inventory_giftcards" => "禮金券庫存過低", - "manually_editing_of_quantity" => "手動編輯數量", - "must_select_giftcard_for_barcode" => "您必須選擇至少一個禮金券才能生成條形碼.", - "new" => "新建禮金券", - "no_description_giftcards" => "沒有描述的禮金券", - "no_giftcards_to_display" => "沒有禮金券可以顯示.", - "none" => "無", - "none_selected" => "您還沒有選擇任何禮金券進行編輯.", - "number" => "禮金券編號需為數字.", - "number_information" => "禮金券編號", - "number_required" => "請輸入禮金券編號.", - "one_or_multiple" => "禮金券", - "person_id" => "顧客", - "quantity" => "數量", - "quantity_required" => "數量是必填字段。請按關閉(X)來取消.", - "remaining_balance" => "Giftcard {0} remaining value is {1}!", - "reorder_level" => "補貨點", - "retrive_giftcard_info" => "檢索禮金券訊息", - "sales_tax_1" => "銷售稅額 1", - "sales_tax_2" => "銷售稅額 2", - "serialized_giftcards" => "排序禮金券", - "successful_adding" => "新增禮金券成功", - "successful_bulk_edit" => "您已成功更新選定的禮品卡", - "successful_deleted" => "成功刪除禮金券", - "successful_updating" => "成功更新禮金券", - "supplier" => "供應商", - "tax_1" => "稅額 1", - "tax_2" => "稅額 2", - "tax_percent" => "稅率", - "tax_percents" => "稅率 Percent(s)", - "unit_price" => "單位價格", - "upc_database" => "UPC Database", - "update" => "更新禮金券", - "use_inventory_menu" => "使用庫存清單", - "value" => "禮金券金額需為數字.", - "value_required" => "請輸入禮金券金額.", + "add_minus" => "加/減庫存.", + "allow_alt_description" => "允許使用ALT描述", + "bulk_edit" => "批量編輯", + "cannot_be_deleted" => "無法刪除選定的禮金券,一個或多個所選擇的禮金券已經使用。", + "cannot_find_giftcard" => "找不到禮金券的訊息.", + "cannot_use" => "禮品卡 {0} 不能用於此銷售:無效客戶。", + "card_value" => "金額", + "category" => "類別", + "change_all_to_allow_alt_desc" => "充許全部ALT倒序.", + "change_all_to_not_allow_allow_desc" => "不允許全部ALT倒序.", + "change_all_to_serialized" => "全部更改序號至序列化", + "change_all_to_unserialized" => "全部更改序號至非序列化", + "confirm_bulk_edit" => "您確定您要編輯的所有選擇的禮金券嗎?", + "confirm_delete" => "你確定你要刪除選定的禮金券?", + "confirm_restore" => "您確定要恢復選定的禮品卡嗎?", + "cost_price" => "成本價格", + "count" => "更新庫存", + "csv_import_failed" => "CSV匯入失敗.", + "current_quantity" => "當前數量", + "description" => "描述", + "details_count" => "庫存盤點詳情", + "do_nothing" => "不做任何修改", + "edit_fields_you_want_to_update" => "編輯所有選定的禮金券中你想要編輯的資料.", + "edit_multiple_giftcards" => "編輯多張禮品卡。", + "error_adding_updating" => "新增/更新禮金券錯誤.", + "error_updating_multiple" => "禮金券更新錯誤.", + "generate_barcodes" => "產生條碼", + "giftcard" => "禮金券", + "giftcard_number" => "禮金券編號", + "info_provided_by" => "提供信息的來源", + "inventory_comments" => "評論", + "is_serialized" => "禮金券序號", + "low_inventory_giftcards" => "禮金券庫存過低", + "manually_editing_of_quantity" => "手動編輯數量", + "must_select_giftcard_for_barcode" => "您必須選擇至少一個禮金券才能生成條形碼.", + "new" => "新建禮金券", + "no_description_giftcards" => "沒有描述的禮金券", + "no_giftcards_to_display" => "沒有禮金券可以顯示.", + "none" => "無", + "none_selected" => "您還沒有選擇任何禮金券進行編輯.", + "number" => "禮金券編號需為數字.", + "number_information" => "禮金券編號", + "number_required" => "請輸入禮金券編號.", + "one_or_multiple" => "禮金券", + "person_id" => "顧客", + "quantity" => "數量", + "quantity_required" => "數量是必填字段。請按關閉(X)來取消.", + "remaining_balance" => "Giftcard {0} remaining value is {1}!", + "reorder_level" => "補貨點", + "retrive_giftcard_info" => "檢索禮金券訊息", + "sales_tax_1" => "銷售稅額 1", + "sales_tax_2" => "銷售稅額 2", + "serialized_giftcards" => "排序禮金券", + "successful_adding" => "新增禮金券成功", + "successful_bulk_edit" => "您已成功更新選定的禮品卡", + "successful_deleted" => "成功刪除禮金券", + "successful_updating" => "成功更新禮金券", + "supplier" => "供應商", + "tax_1" => "稅額 1", + "tax_2" => "稅額 2", + "tax_percent" => "稅率", + "tax_percents" => "稅率 Percent(s)", + "unit_price" => "單位價格", + "upc_database" => "UPC Database", + "update" => "更新禮金券", + "use_inventory_menu" => "使用庫存清單", + "value" => "禮金券金額需為數字.", + "value_required" => "請輸入禮金券金額.", ]; diff --git a/app/Language/zh-Hant/Item_kits.php b/app/Language/zh-Hant/Item_kits.php index 2a8a584b8..aee118bc8 100644 --- a/app/Language/zh-Hant/Item_kits.php +++ b/app/Language/zh-Hant/Item_kits.php @@ -1,41 +1,41 @@ "新增套件", - "all" => "全部", - "cannot_be_deleted" => "無法刪除產品套件.", - "confirm_delete" => "你確定你要刪除選取的產品套件嗎?", - "confirm_restore" => "您確定要恢復選定的物品套件嗎?", - "description" => "產品套件描述", - "discount" => "折扣", - "discount_fixed" => "固定折扣", - "discount_percent" => "折扣百分比", - "discount_type" => "折扣類型", - "error_adding_updating" => "新增/更新產品套件錯誤.", - "find_kit_item" => "套件項目", - "info" => "產品套件資料", - "item" => "產品", - "item_kit_number" => "條碼", - "item_kit_number_duplicate" => "項目套件編號已存在於數據庫中。", - "item_number" => "", - "item_number_duplicate" => "", - "items" => "產品", - "kit" => "Kit Id", - "kit_and_components" => "套件和組件", - "kit_and_stock" => "套件和組件", - "kit_only" => "僅套件", - "name" => "產品套件", - "new" => "新增產品套件", - "no_item_kits_to_display" => "沒有產品套件.", - "none_selected" => "沒有選擇任何產品套件.", - "one_or_multiple" => "產品套件", - "price_option" => "價格選項", - "priced_only" => "只定價", - "print_option" => "列印選項", - "quantity" => "數量", - "sequence" => "順序", - "successful_adding" => "新增產品套件成功", - "successful_deleted" => "刪除成功", - "successful_updating" => "更新產品套件成功", - "unit_price" => "", - "update" => "更新產品套件", + "add_item" => "新增套件", + "all" => "全部", + "cannot_be_deleted" => "無法刪除產品套件.", + "confirm_delete" => "你確定你要刪除選取的產品套件嗎?", + "confirm_restore" => "您確定要恢復選定的物品套件嗎?", + "description" => "產品套件描述", + "discount" => "折扣", + "discount_fixed" => "固定折扣", + "discount_percent" => "折扣百分比", + "discount_type" => "折扣類型", + "error_adding_updating" => "新增/更新產品套件錯誤.", + "find_kit_item" => "套件項目", + "info" => "產品套件資料", + "item" => "產品", + "item_kit_number" => "條碼", + "item_kit_number_duplicate" => "項目套件編號已存在於數據庫中。", + "item_number" => "", + "item_number_duplicate" => "", + "items" => "產品", + "kit" => "Kit Id", + "kit_and_components" => "套件和組件", + "kit_and_stock" => "套件和組件", + "kit_only" => "僅套件", + "name" => "產品套件", + "new" => "新增產品套件", + "no_item_kits_to_display" => "沒有產品套件.", + "none_selected" => "沒有選擇任何產品套件.", + "one_or_multiple" => "產品套件", + "price_option" => "價格選項", + "priced_only" => "只定價", + "print_option" => "列印選項", + "quantity" => "數量", + "sequence" => "順序", + "successful_adding" => "新增產品套件成功", + "successful_deleted" => "刪除成功", + "successful_updating" => "更新產品套件成功", + "unit_price" => "", + "update" => "更新產品套件", ]; diff --git a/app/Language/zh-Hant/Items.php b/app/Language/zh-Hant/Items.php index d0859a56e..3e780f7af 100644 --- a/app/Language/zh-Hant/Items.php +++ b/app/Language/zh-Hant/Items.php @@ -1,120 +1,120 @@ "增/減庫存.", - "allow_alt_description" => "允許ALT描述", - "amount_entry" => "金額輸入", - "bulk_edit" => "批次編輯", - "buy_price_required" => "進貨價為必填欄位.", - "cannot_be_deleted" => "無法刪除選定產品,所選產品中的一個或多個有銷售紀綠。", - "cannot_find_item" => "無法找到任何有關的產品.", - "categories" => "", - "category" => "類別", - "category_new" => "", - "category_required" => "類別為必填欄位.", - "change_all_to_allow_alt_desc" => "充許全部ALT倒序.", - "change_all_to_not_allow_allow_desc" => "不允許全部ALT倒序.", - "change_all_to_serialized" => "全部更改序號至序列化", - "change_all_to_unserialized" => "全部更改序號至非序列化", - "change_image" => "更改圖像", - "confirm_bulk_edit" => "您確定您要編輯的所有選定的產品嗎?", - "confirm_bulk_edit_wipe_taxes" => "所有項目稅信息將被替換。", - "confirm_delete" => "你確定你要刪除選定的產品嗎?", - "confirm_restore" => "您確定要恢復所選項目嗎?", - "cost_price" => "成本價", - "cost_price_number" => "成本價必需是數值.", - "cost_price_required" => "成本價為必填攔位.", - "count" => "更新庫存", - "csv_import_failed" => "CSV匯入失敗", - "csv_import_nodata_wrongformat" => "上傳的 CSV 文件沒有數據或格式不正確。", - "csv_import_partially_failed" => "線上有 {0} 個項目導入失敗:{1}。未導入任何行。", - "csv_import_success" => "項目 CSV 導入成功。", - "current_quantity" => "當前數量", - "default_pack_name" => "每個", - "description" => "描述", - "details_count" => "庫存盤點詳情", - "do_nothing" => "沒有執行任何修改", - "edit" => "", - "edit_fields_you_want_to_update" => "編輯您選定產品的所有欄位.", - "edit_multiple_items" => "編輯多項產品", - "empty_upc_items" => "Empty UPC Items", - "error_adding_updating" => "新增/更新產品錯誤", - "error_updating_multiple" => "更新產品錯誤", - "generate_barcodes" => "產生條碼", - "hsn_code" => "協調系統命名法", - "image" => "Avatar", - "import_items_csv" => "Import items from CSV sheet", - "info_provided_by" => "訊息提供者", - "inventory" => "庫存", - "inventory_CSV_import_quantity" => "從 CSV 導入的數量", - "inventory_comments" => "評論", - "inventory_data_tracking" => "庫存數據跟踪", - "inventory_date" => "日期", - "inventory_employee" => "員工", - "inventory_in_out_quantity" => "進/出數量", - "inventory_remarks" => "評論", - "is_deleted" => "已刪除", - "is_printed" => "", - "is_serialized" => "產品有序號", - "item" => "產品", - "item_id" => "", - "item_number" => "UPC/EAN/ISBN", - "item_number_duplicate" => "項目編號已存在於數據庫中。", - "kit" => "成套工具", - "location" => "位置", - "low_inventory_items" => "低庫存產品", - "low_sell_item" => "低價商品", - "manually_editing_of_quantity" => "手動編輯數量", - "markup" => "", - "name" => "產品名稱", - "name_required" => "產品名稱為必填.", - "new" => "新增產品", - "no_description_items" => "產品沒有說明", - "no_items_to_display" => "沒有產品可以顯示.", - "none" => "無", - "none_selected" => "您還沒有選擇任何產品進行編輯", - "nonstock" => "無庫存", - "number_information" => "產品編號", - "number_required" => "條形碼是必填字段。", - "one_or_multiple" => "產品", - "pack_name" => "包裝名稱", - "qty_per_pack" => "每包數量", - "quantity" => "數量", - "quantity_number" => "數量必需是數值.", - "quantity_required" => "數量為必填欄位.", - "receiving_quantity" => "Receiving quantity", - "remove_image" => "刪除圖像", - "reorder_level" => "補貨點", - "reorder_level_number" => "補貨點必需是數值.", - "reorder_level_required" => "補貨點為必填欄位.", - "retrive_item_info" => "檢索產品訊息", - "sales_tax_1" => "營業稅", - "sales_tax_2" => "營業稅 2", - "search_attributes" => "Search Custom Fields", - "select_image" => "選擇圖像", - "serialized_items" => "序列化產品", - "standard" => "標準", - "stock" => "庫存", - "stock_location" => "倉庫地址", - "stock_type" => "股票類型", - "successful_adding" => "已成功新增產品", - "successful_bulk_edit" => "您已成功更新所選產品", - "successful_deleted" => "刪除成功", - "successful_updating" => "已成功更新產品", - "supplier" => "供貨商", - "tax_1" => "稅額 1", - "tax_2" => "稅額 2", - "tax_3" => "", - "tax_category" => "稅種", - "tax_percent" => "稅率", - "tax_percent_number" => "稅收百分比必須是數值", - "tax_percent_required" => "稅率為必填欄位.", - "tax_percents" => "稅率 %", - "temp" => "臨時", - "type" => "物品種類", - "unit_price" => "單價", - "unit_price_number" => "單價必需是數值.", - "unit_price_required" => "單價為必填欄位.", - "upc_database" => "UPC Database", - "update" => "更新產品", - "use_inventory_menu" => "使用庫存清單", + "add_minus" => "增/減庫存.", + "allow_alt_description" => "允許ALT描述", + "amount_entry" => "金額輸入", + "bulk_edit" => "批次編輯", + "buy_price_required" => "進貨價為必填欄位.", + "cannot_be_deleted" => "無法刪除選定產品,所選產品中的一個或多個有銷售紀綠。", + "cannot_find_item" => "無法找到任何有關的產品.", + "categories" => "", + "category" => "類別", + "category_new" => "", + "category_required" => "類別為必填欄位.", + "change_all_to_allow_alt_desc" => "充許全部ALT倒序.", + "change_all_to_not_allow_allow_desc" => "不允許全部ALT倒序.", + "change_all_to_serialized" => "全部更改序號至序列化", + "change_all_to_unserialized" => "全部更改序號至非序列化", + "change_image" => "更改圖像", + "confirm_bulk_edit" => "您確定您要編輯的所有選定的產品嗎?", + "confirm_bulk_edit_wipe_taxes" => "所有項目稅信息將被替換。", + "confirm_delete" => "你確定你要刪除選定的產品嗎?", + "confirm_restore" => "您確定要恢復所選項目嗎?", + "cost_price" => "成本價", + "cost_price_number" => "成本價必需是數值.", + "cost_price_required" => "成本價為必填攔位.", + "count" => "更新庫存", + "csv_import_failed" => "CSV匯入失敗", + "csv_import_nodata_wrongformat" => "上傳的 CSV 文件沒有數據或格式不正確。", + "csv_import_partially_failed" => "線上有 {0} 個項目導入失敗:{1}。未導入任何行。", + "csv_import_success" => "項目 CSV 導入成功。", + "current_quantity" => "當前數量", + "default_pack_name" => "每個", + "description" => "描述", + "details_count" => "庫存盤點詳情", + "do_nothing" => "沒有執行任何修改", + "edit" => "", + "edit_fields_you_want_to_update" => "編輯您選定產品的所有欄位.", + "edit_multiple_items" => "編輯多項產品", + "empty_upc_items" => "Empty UPC Items", + "error_adding_updating" => "新增/更新產品錯誤", + "error_updating_multiple" => "更新產品錯誤", + "generate_barcodes" => "產生條碼", + "hsn_code" => "協調系統命名法", + "image" => "Avatar", + "import_items_csv" => "Import items from CSV sheet", + "info_provided_by" => "訊息提供者", + "inventory" => "庫存", + "inventory_CSV_import_quantity" => "從 CSV 導入的數量", + "inventory_comments" => "評論", + "inventory_data_tracking" => "庫存數據跟踪", + "inventory_date" => "日期", + "inventory_employee" => "員工", + "inventory_in_out_quantity" => "進/出數量", + "inventory_remarks" => "評論", + "is_deleted" => "已刪除", + "is_printed" => "", + "is_serialized" => "產品有序號", + "item" => "產品", + "item_id" => "", + "item_number" => "UPC/EAN/ISBN", + "item_number_duplicate" => "項目編號已存在於數據庫中。", + "kit" => "成套工具", + "location" => "位置", + "low_inventory_items" => "低庫存產品", + "low_sell_item" => "低價商品", + "manually_editing_of_quantity" => "手動編輯數量", + "markup" => "", + "name" => "產品名稱", + "name_required" => "產品名稱為必填.", + "new" => "新增產品", + "no_description_items" => "產品沒有說明", + "no_items_to_display" => "沒有產品可以顯示.", + "none" => "無", + "none_selected" => "您還沒有選擇任何產品進行編輯", + "nonstock" => "無庫存", + "number_information" => "產品編號", + "number_required" => "條形碼是必填字段。", + "one_or_multiple" => "產品", + "pack_name" => "包裝名稱", + "qty_per_pack" => "每包數量", + "quantity" => "數量", + "quantity_number" => "數量必需是數值.", + "quantity_required" => "數量為必填欄位.", + "receiving_quantity" => "Receiving quantity", + "remove_image" => "刪除圖像", + "reorder_level" => "補貨點", + "reorder_level_number" => "補貨點必需是數值.", + "reorder_level_required" => "補貨點為必填欄位.", + "retrive_item_info" => "檢索產品訊息", + "sales_tax_1" => "營業稅", + "sales_tax_2" => "營業稅 2", + "search_attributes" => "Search Custom Fields", + "select_image" => "選擇圖像", + "serialized_items" => "序列化產品", + "standard" => "標準", + "stock" => "庫存", + "stock_location" => "倉庫地址", + "stock_type" => "股票類型", + "successful_adding" => "已成功新增產品", + "successful_bulk_edit" => "您已成功更新所選產品", + "successful_deleted" => "刪除成功", + "successful_updating" => "已成功更新產品", + "supplier" => "供貨商", + "tax_1" => "稅額 1", + "tax_2" => "稅額 2", + "tax_3" => "", + "tax_category" => "稅種", + "tax_percent" => "稅率", + "tax_percent_number" => "稅收百分比必須是數值", + "tax_percent_required" => "稅率為必填欄位.", + "tax_percents" => "稅率 %", + "temp" => "臨時", + "type" => "物品種類", + "unit_price" => "單價", + "unit_price_number" => "單價必需是數值.", + "unit_price_required" => "單價為必填欄位.", + "upc_database" => "UPC Database", + "update" => "更新產品", + "use_inventory_menu" => "使用庫存清單", ]; diff --git a/app/Language/zh-Hant/Login.php b/app/Language/zh-Hant/Login.php index eeba51e63..8e0f9cbd8 100644 --- a/app/Language/zh-Hant/Login.php +++ b/app/Language/zh-Hant/Login.php @@ -1,15 +1,15 @@ "我不是機器人。", - "go" => "登入", - "invalid_gcaptcha" => "請確認您不是機器人。", - "invalid_installation" => "安裝不正確,請檢查您的php.ini文件。", - "invalid_username_and_password" => "帳號或密碼錯誤。", - "login" => "登入", - "logout" => "登出", - "migration_needed" => "登錄後將開始向 {0} 的數據庫遷移。", - "password" => "密碼", - "required_username" => "", - "username" => "帳號", - "welcome" => "歡迎來到 {0}!", + "gcaptcha" => "我不是機器人。", + "go" => "登入", + "invalid_gcaptcha" => "請確認您不是機器人。", + "invalid_installation" => "安裝不正確,請檢查您的php.ini文件。", + "invalid_username_and_password" => "帳號或密碼錯誤。", + "login" => "登入", + "logout" => "登出", + "migration_needed" => "登錄後將開始向 {0} 的數據庫遷移。", + "password" => "密碼", + "required_username" => "", + "username" => "帳號", + "welcome" => "歡迎來到 {0}!", ]; diff --git a/app/Language/zh-Hant/Messages.php b/app/Language/zh-Hant/Messages.php index d2b487af3..3f105e845 100644 --- a/app/Language/zh-Hant/Messages.php +++ b/app/Language/zh-Hant/Messages.php @@ -1,15 +1,15 @@ "名字", - "last_name" => "姓氏", - "message" => "Message", - "message_placeholder" => "你的訊息.....", - "message_required" => "訊息必須填寫", - "multiple_phones" => "(如果是多個收件人,請輸入以逗號分隔的手機號碼)", - "phone" => "電話號碼", - "phone_number_required" => "電話號碼是必須", - "phone_placeholder" => "手機號碼在這裡填寫......", - "sms_send" => "Send SMS", - "successfully_sent" => "消息已成功發送至: ", - "unsuccessfully_sent" => "消息未成功發送至: ", + "first_name" => "名字", + "last_name" => "姓氏", + "message" => "Message", + "message_placeholder" => "你的訊息.....", + "message_required" => "訊息必須填寫", + "multiple_phones" => "(如果是多個收件人,請輸入以逗號分隔的手機號碼)", + "phone" => "電話號碼", + "phone_number_required" => "電話號碼是必須", + "phone_placeholder" => "手機號碼在這裡填寫......", + "sms_send" => "Send SMS", + "successfully_sent" => "消息已成功發送至: ", + "unsuccessfully_sent" => "消息未成功發送至: ", ]; diff --git a/app/Language/zh-Hant/Module.php b/app/Language/zh-Hant/Module.php index 3ba3a0af6..a22c51946 100644 --- a/app/Language/zh-Hant/Module.php +++ b/app/Language/zh-Hant/Module.php @@ -1,48 +1,48 @@ "", - "admin_cashups_desc" => "", - "attributes" => "屬性", - "attributes_desc" => "新增、修改、刪除、搜尋 屬性.", - "both" => "兩者", - "cashups" => "提現", - "cashups_desc" => "添加,更新,刪除和搜索現金提現.", - "config" => "系統配置", - "config_desc" => "修改系統配置.", - "customers" => "客戶", - "customers_desc" => "添加,更新,刪除,搜索客戶.", - "employees" => "員工", - "employees_desc" => "添加,更新,刪除,搜索員工.", - "expenses" => "費用", - "expenses_categories" => "費用類別", - "expenses_categories_desc" => "新增、修改、刪除、搜尋 費用類別.", - "expenses_desc" => "新增、修改、刪除、搜尋 費用.", - "giftcards" => "禮金券", - "giftcards_desc" => "添加,更新,刪除,搜索禮金券.", - "home" => "首頁", - "home_desc" => "列出主菜單模塊.", - "item_kits" => "產品套件", - "item_kits_desc" => "添加,更新,刪除,搜索產品套件.", - "items" => "產品", - "items_desc" => "添加,更新,刪除,搜索產品.", - "messages" => "留言", - "messages_desc" => "向客戶、供應商、員工等發送消息。", - "migrate" => "遷移", - "migrate_desc" => "更新 OSPOS 數據庫。", - "office" => "辦公室", - "office_desc" => "列出辦公菜單模塊。", - "receivings" => "進貨", - "receivings_desc" => "採購訂單流程.", - "reports" => "報表", - "reports_desc" => "檢視與產生報表.", - "sales" => "出貨", - "sales_desc" => "出貨與退貨.", - "suppliers" => "供應商", - "suppliers_desc" => "添加,更新,刪除,搜索供應商.", - "taxes" => "稅收", - "taxes_desc" => "配置銷售稅。", - "timeclocks" => "", - "timeclocks_categories" => "", - "timeclocks_categories_desc" => "", - "timeclocks_desc" => "", + "admin_cashups" => "", + "admin_cashups_desc" => "", + "attributes" => "屬性", + "attributes_desc" => "新增、修改、刪除、搜尋 屬性.", + "both" => "兩者", + "cashups" => "提現", + "cashups_desc" => "添加,更新,刪除和搜索現金提現.", + "config" => "系統配置", + "config_desc" => "修改系統配置.", + "customers" => "客戶", + "customers_desc" => "添加,更新,刪除,搜索客戶.", + "employees" => "員工", + "employees_desc" => "添加,更新,刪除,搜索員工.", + "expenses" => "費用", + "expenses_categories" => "費用類別", + "expenses_categories_desc" => "新增、修改、刪除、搜尋 費用類別.", + "expenses_desc" => "新增、修改、刪除、搜尋 費用.", + "giftcards" => "禮金券", + "giftcards_desc" => "添加,更新,刪除,搜索禮金券.", + "home" => "首頁", + "home_desc" => "列出主菜單模塊.", + "item_kits" => "產品套件", + "item_kits_desc" => "添加,更新,刪除,搜索產品套件.", + "items" => "產品", + "items_desc" => "添加,更新,刪除,搜索產品.", + "messages" => "留言", + "messages_desc" => "向客戶、供應商、員工等發送消息。", + "migrate" => "遷移", + "migrate_desc" => "更新 OSPOS 數據庫。", + "office" => "辦公室", + "office_desc" => "列出辦公菜單模塊。", + "receivings" => "進貨", + "receivings_desc" => "採購訂單流程.", + "reports" => "報表", + "reports_desc" => "檢視與產生報表.", + "sales" => "出貨", + "sales_desc" => "出貨與退貨.", + "suppliers" => "供應商", + "suppliers_desc" => "添加,更新,刪除,搜索供應商.", + "taxes" => "稅收", + "taxes_desc" => "配置銷售稅。", + "timeclocks" => "", + "timeclocks_categories" => "", + "timeclocks_categories_desc" => "", + "timeclocks_desc" => "", ]; diff --git a/app/Language/zh-Hant/Receivings.php b/app/Language/zh-Hant/Receivings.php index 2b90b29f5..8891f1814 100644 --- a/app/Language/zh-Hant/Receivings.php +++ b/app/Language/zh-Hant/Receivings.php @@ -1,58 +1,58 @@ "", - "cancel_receiving" => "取消", - "cannot_be_deleted" => "進貨刪除失敗.", - "comments" => "備註", - "complete_receiving" => "完成", - "confirm_cancel_receiving" => "您確定要刪除此進貨資料嗎?本資料中所有的產品資料也將會被清空。", - "confirm_delete" => "您確定要刪除此進貨嗎? 此操作無法還原.", - "confirm_finish_receiving" => "您確定要提交此進貨資料嗎?一旦送出將不能撤消。", - "confirm_restore" => "", - "cost" => "成本", - "daily" => "", - "date" => "收貨日期", - "date_required" => "必須輸一個正確的日期.", - "date_type" => "日期必須填寫.", - "delete_entire_sale" => "刪除整個銷售", - "discount" => "折扣%", - "edit" => "編輯", - "edit_sale" => "編輯入庫", - "employee" => "僱員", - "error_editing_item" => "產品編輯錯誤.", - "error_requisition" => "庫存不能在相同地點轉移.", - "find_or_scan_item" => "查找 / 掃描產品", - "find_or_scan_item_or_receipt" => "查找 / 掃描產品或收據", - "id" => "進貨編號", - "item_name" => "產品名稱", - "mode" => "進貨模式", - "new_supplier" => "新供應商", - "one_or_multiple" => "進貨", - "print_after_sale" => "出貨時打印收據", - "quantity" => "數量.", - "receipt" => "收貨憑證", - "receipt_number" => "入庫 #", - "receiving" => "收貨", - "reference" => "參考", - "register" => "產品進貨", - "requisition" => "請求", - "return" => "退貨", - "select_supplier" => "選擇供應商 (Optional)", - "ship_pack" => "郵寄包裹", - "start_typing_supplier_name" => "開始輸入供應商的名稱...", - "stock" => "庫存", - "stock_destination" => "庫存目的地", - "stock_locaiton" => "倉庫地址", - "stock_source" => "庫存來源", - "successfully_deleted" => "己成功刪除", - "successfully_updated" => "入庫成功更新", - "supplier" => "供應商", - "supplier_address" => "地址", - "supplier_email" => "郵箱", - "supplier_location" => "地方", - "total" => "總數量", - "transaction_failed" => "進貨交易失敗.", - "unable_to_add_item" => "無法新增進貨資料.", - "unsuccessfully_updated" => "入庫更新失敗.", - "update" => "編輯", + "amount_due" => "", + "cancel_receiving" => "取消", + "cannot_be_deleted" => "進貨刪除失敗.", + "comments" => "備註", + "complete_receiving" => "完成", + "confirm_cancel_receiving" => "您確定要刪除此進貨資料嗎?本資料中所有的產品資料也將會被清空。", + "confirm_delete" => "您確定要刪除此進貨嗎? 此操作無法還原.", + "confirm_finish_receiving" => "您確定要提交此進貨資料嗎?一旦送出將不能撤消。", + "confirm_restore" => "", + "cost" => "成本", + "daily" => "", + "date" => "收貨日期", + "date_required" => "必須輸一個正確的日期.", + "date_type" => "日期必須填寫.", + "delete_entire_sale" => "刪除整個銷售", + "discount" => "折扣%", + "edit" => "編輯", + "edit_sale" => "編輯入庫", + "employee" => "僱員", + "error_editing_item" => "產品編輯錯誤.", + "error_requisition" => "庫存不能在相同地點轉移.", + "find_or_scan_item" => "查找 / 掃描產品", + "find_or_scan_item_or_receipt" => "查找 / 掃描產品或收據", + "id" => "進貨編號", + "item_name" => "產品名稱", + "mode" => "進貨模式", + "new_supplier" => "新供應商", + "one_or_multiple" => "進貨", + "print_after_sale" => "出貨時打印收據", + "quantity" => "數量.", + "receipt" => "收貨憑證", + "receipt_number" => "入庫 #", + "receiving" => "收貨", + "reference" => "參考", + "register" => "產品進貨", + "requisition" => "請求", + "return" => "退貨", + "select_supplier" => "選擇供應商 (Optional)", + "ship_pack" => "郵寄包裹", + "start_typing_supplier_name" => "開始輸入供應商的名稱...", + "stock" => "庫存", + "stock_destination" => "庫存目的地", + "stock_locaiton" => "倉庫地址", + "stock_source" => "庫存來源", + "successfully_deleted" => "己成功刪除", + "successfully_updated" => "入庫成功更新", + "supplier" => "供應商", + "supplier_address" => "地址", + "supplier_email" => "郵箱", + "supplier_location" => "地方", + "total" => "總數量", + "transaction_failed" => "進貨交易失敗.", + "unable_to_add_item" => "無法新增進貨資料.", + "unsuccessfully_updated" => "入庫更新失敗.", + "update" => "編輯", ]; diff --git a/app/Language/zh-Hant/Reports.php b/app/Language/zh-Hant/Reports.php index adb122a78..6cf36173b 100644 --- a/app/Language/zh-Hant/Reports.php +++ b/app/Language/zh-Hant/Reports.php @@ -1,148 +1,148 @@ "全部", - "authority" => "機關", - "canceled" => "取消", - "categories" => "類別", - "categories_summary_report" => "分類摘要報告", - "category" => "類別", - "code_canceled" => "取消了", - "code_invoice" => "發票", - "code_pos" => "銷售點", - "code_quote" => "報價", - "code_return" => "退還", - "code_type" => "類型", - "code_work_order" => "工作指示", - "comments" => "評論", - "commission" => "", - "complete" => "已完成的銷售和退貨", - "completed_sales" => "完成銷售", - "confirm_delete" => "您確定要刪除選定的條目嗎?", - "confirm_restore" => "您確定要恢復選定的條目嗎?", - "cost" => "Cost", - "cost_price" => "成本價", - "count" => "計", - "customer" => "客戶", - "customers" => "客戶", - "customers_summary_report" => "客戶摘要報告", - "date" => "日期", - "date_range" => "日期範圍", - "description" => "描述", - "detailed_receivings_report" => "詳細的進貨報告", - "detailed_receivings_report_input" => "", - "detailed_reports" => "詳細報表", - "detailed_requisition_report" => "", - "detailed_sales_report" => "詳細銷售報表", - "discount" => "折扣", - "discount_fixed" => "固定折扣", - "discount_percent" => "折扣率", - "discount_type" => "折扣類型", - "discounts" => "折扣", - "discounts_summary_report" => "折扣摘要報告", - "earned" => "獲得積分", - "employee" => "員工", - "employees" => "員工", - "employees_summary_report" => "員工摘要報告", - "expenses" => "花費", - "expenses_amount" => "數量", - "expenses_categories" => "支出", - "expenses_categories_summary_report" => "費用類別匯總報告", - "expenses_category" => "類別", - "expenses_payment_amount" => "", - "expenses_tax_amount" => "稅", - "expenses_total_amount" => "總金額", - "expenses_total_tax_amount" => "總稅款", - "graphical_reports" => "圖表", - "inventory" => "存貨", - "inventory_low" => "低庫存", - "inventory_low_report" => "低庫存報告", - "inventory_reports" => "庫存報告", - "inventory_summary" => "庫存摘要", - "inventory_summary_report" => "庫存報告摘要", - "item" => "產品", - "item_count" => "過濾項目計數", - "item_name" => "產品名稱", - "item_number" => "產品數量", - "items" => "產品", - "items_purchased" => "銷售產品", - "items_received" => "進貨產品", - "items_summary_report" => "產品摘要報告", - "jurisdiction" => "管轄權", - "low_inventory" => "", - "low_inventory_report" => "", - "low_sell_quantity" => "低銷售量", - "more_than_zero" => "大於零", - "name" => "名稱", - "no_reports_to_display" => "沒有產品可以顯示.", - "payment_type" => "付款方式", - "payments" => "付款", - "payments_summary_report" => "收入報告摘要", - "profit" => "利潤", - "quantity" => "數量", - "quantity_purchased" => "銷售金額", - "quotes" => "引號", - "received_by" => "收款人", - "receiving_id" => "接收ID", - "receiving_type" => "接收類型", - "receivings" => "應付款", - "reorder_level" => "補貨點", - "report" => "報表", - "report_input" => "輸入報表", - "reports" => "報表", - "requisition" => "", - "requisition_by" => "", - "requisition_id" => "", - "requisition_item" => "", - "requisition_item_quantity" => "", - "requisition_related_item" => "", - "requisition_related_item_total_quantity" => "", - "requisition_related_item_unit_quantity" => "", - "requisitions" => "請購單", - "returns" => "返回", - "revenue" => "收入", - "sale_id" => "銷售編號", - "sale_type" => "銷售類型", - "sales" => "銷售", - "sales_amount" => "總銷售額", - "sales_summary_report" => "銷售摘要報告", - "sales_taxes" => "銷售稅", - "sales_taxes_summary_report" => "銷售稅匯總報告", - "serial_number" => "序號 #", - "service_charge" => "", - "sold_by" => "銷售人", - "sold_items" => "", - "sold_to" => "購買人", - "stock_location" => "庫存位置", - "sub_total_value" => "小計", - "subtotal" => "小計", - "summary_reports" => "摘要報表", - "supplied_by" => "付款人", - "supplier" => "供應商", - "suppliers" => "供應商", - "suppliers_summary_report" => "供應商摘要報告", - "tax" => "稅額", - "tax_category" => "稅種", - "tax_name" => "", - "tax_percent" => "稅率", - "tax_rate" => "稅率", - "taxes" => "稅額", - "taxes_summary_report" => "稅金摘要報告", - "total" => "總計", - "total_inventory_value" => "總庫存價值", - "total_low_sell_quantity" => "總低銷售量", - "total_quantity" => "總數量", - "total_retail" => "總投資額零售價", - "trans_amount" => "交易金額", - "trans_due" => "到期", - "trans_group" => "交易組", - "trans_nopay_sales" => "沒有付款的銷售", - "trans_payments" => "付款", - "trans_refunded" => "已退款", - "trans_sales" => "銷售", - "trans_type" => "交易類型", - "type" => "類型", - "unit_price" => "單價", - "used" => "使用點數", - "work_orders" => "工作訂單", - "zero_and_less" => "零和更少", + "all" => "全部", + "authority" => "機關", + "canceled" => "取消", + "categories" => "類別", + "categories_summary_report" => "分類摘要報告", + "category" => "類別", + "code_canceled" => "取消了", + "code_invoice" => "發票", + "code_pos" => "銷售點", + "code_quote" => "報價", + "code_return" => "退還", + "code_type" => "類型", + "code_work_order" => "工作指示", + "comments" => "評論", + "commission" => "", + "complete" => "已完成的銷售和退貨", + "completed_sales" => "完成銷售", + "confirm_delete" => "您確定要刪除選定的條目嗎?", + "confirm_restore" => "您確定要恢復選定的條目嗎?", + "cost" => "Cost", + "cost_price" => "成本價", + "count" => "計", + "customer" => "客戶", + "customers" => "客戶", + "customers_summary_report" => "客戶摘要報告", + "date" => "日期", + "date_range" => "日期範圍", + "description" => "描述", + "detailed_receivings_report" => "詳細的進貨報告", + "detailed_receivings_report_input" => "", + "detailed_reports" => "詳細報表", + "detailed_requisition_report" => "", + "detailed_sales_report" => "詳細銷售報表", + "discount" => "折扣", + "discount_fixed" => "固定折扣", + "discount_percent" => "折扣率", + "discount_type" => "折扣類型", + "discounts" => "折扣", + "discounts_summary_report" => "折扣摘要報告", + "earned" => "獲得積分", + "employee" => "員工", + "employees" => "員工", + "employees_summary_report" => "員工摘要報告", + "expenses" => "花費", + "expenses_amount" => "數量", + "expenses_categories" => "支出", + "expenses_categories_summary_report" => "費用類別匯總報告", + "expenses_category" => "類別", + "expenses_payment_amount" => "", + "expenses_tax_amount" => "稅", + "expenses_total_amount" => "總金額", + "expenses_total_tax_amount" => "總稅款", + "graphical_reports" => "圖表", + "inventory" => "存貨", + "inventory_low" => "低庫存", + "inventory_low_report" => "低庫存報告", + "inventory_reports" => "庫存報告", + "inventory_summary" => "庫存摘要", + "inventory_summary_report" => "庫存報告摘要", + "item" => "產品", + "item_count" => "過濾項目計數", + "item_name" => "產品名稱", + "item_number" => "產品數量", + "items" => "產品", + "items_purchased" => "銷售產品", + "items_received" => "進貨產品", + "items_summary_report" => "產品摘要報告", + "jurisdiction" => "管轄權", + "low_inventory" => "", + "low_inventory_report" => "", + "low_sell_quantity" => "低銷售量", + "more_than_zero" => "大於零", + "name" => "名稱", + "no_reports_to_display" => "沒有產品可以顯示.", + "payment_type" => "付款方式", + "payments" => "付款", + "payments_summary_report" => "收入報告摘要", + "profit" => "利潤", + "quantity" => "數量", + "quantity_purchased" => "銷售金額", + "quotes" => "引號", + "received_by" => "收款人", + "receiving_id" => "接收ID", + "receiving_type" => "接收類型", + "receivings" => "應付款", + "reorder_level" => "補貨點", + "report" => "報表", + "report_input" => "輸入報表", + "reports" => "報表", + "requisition" => "", + "requisition_by" => "", + "requisition_id" => "", + "requisition_item" => "", + "requisition_item_quantity" => "", + "requisition_related_item" => "", + "requisition_related_item_total_quantity" => "", + "requisition_related_item_unit_quantity" => "", + "requisitions" => "請購單", + "returns" => "返回", + "revenue" => "收入", + "sale_id" => "銷售編號", + "sale_type" => "銷售類型", + "sales" => "銷售", + "sales_amount" => "總銷售額", + "sales_summary_report" => "銷售摘要報告", + "sales_taxes" => "銷售稅", + "sales_taxes_summary_report" => "銷售稅匯總報告", + "serial_number" => "序號 #", + "service_charge" => "", + "sold_by" => "銷售人", + "sold_items" => "", + "sold_to" => "購買人", + "stock_location" => "庫存位置", + "sub_total_value" => "小計", + "subtotal" => "小計", + "summary_reports" => "摘要報表", + "supplied_by" => "付款人", + "supplier" => "供應商", + "suppliers" => "供應商", + "suppliers_summary_report" => "供應商摘要報告", + "tax" => "稅額", + "tax_category" => "稅種", + "tax_name" => "", + "tax_percent" => "稅率", + "tax_rate" => "稅率", + "taxes" => "稅額", + "taxes_summary_report" => "稅金摘要報告", + "total" => "總計", + "total_inventory_value" => "總庫存價值", + "total_low_sell_quantity" => "總低銷售量", + "total_quantity" => "總數量", + "total_retail" => "總投資額零售價", + "trans_amount" => "交易金額", + "trans_due" => "到期", + "trans_group" => "交易組", + "trans_nopay_sales" => "沒有付款的銷售", + "trans_payments" => "付款", + "trans_refunded" => "已退款", + "trans_sales" => "銷售", + "trans_type" => "交易類型", + "type" => "類型", + "unit_price" => "單價", + "used" => "使用點數", + "work_orders" => "工作訂單", + "zero_and_less" => "零和更少", ]; diff --git a/app/Language/zh-Hant/Sales.php b/app/Language/zh-Hant/Sales.php index 97735ec44..35c804f8b 100644 --- a/app/Language/zh-Hant/Sales.php +++ b/app/Language/zh-Hant/Sales.php @@ -1,224 +1,224 @@ "現有積分", - "rewards_package" => "獎賞", - "rewards_remaining_balance" => "剩餘獎賞積分 ", - "account_number" => "帳戶 #", - "add_payment" => "新增付款", - "amount_due" => "商品金額", - "amount_tendered" => "已收帳款", - "authorized_signature" => "授權簽名", - "cancel_sale" => "取消銷售", - "cash" => "現金", - "cash_1" => "", - "cash_2" => "", - "cash_3" => "", - "cash_4" => "", - "cash_adjustment" => "現金調整", - "cash_deposit" => "已預付金額", - "cash_filter" => "現金", - "change_due" => "更改到期日", - "change_price" => "更改售價", - "check" => "支票", - "check_balance" => "查看餘額", - "check_filter" => "查看選項", - "close" => "", - "comment" => "評論", - "comments" => "評論", - "company_name" => "", - "complete" => "", - "complete_sale" => "完成銷售", - "confirm_cancel_sale" => "你確定要清除此筆銷售單?本單內的所有產品將被清除。", - "confirm_delete" => "你確定要清除此銷售產品?", - "confirm_restore" => "你確定要回復此銷售產品?", - "credit" => "信用卡", - "credit_deposit" => "預付卡", - "credit_filter" => "信用卡", - "current_table" => "", - "customer" => "客戶", - "customer_address" => "客戶地址", - "customer_discount" => "折扣", - "customer_email" => "客戶電郵地址", - "customer_location" => "客戶所在地", - "customer_mailchimp_status" => "MailChimp電子報行銷狀態", - "customer_optional" => "到期付款需要", - "customer_required" => "必需", - "customer_total" => "總數", - "customer_total_spent" => "", - "daily_sales" => "", - "date" => "日期", - "date_range" => "日期範圍", - "date_required" => "必需填上正確的日期.", - "date_type" => "必需填寫日期.", - "debit" => "簽帳卡", - "debit_filter" => "", - "delete" => "確認刪除", - "delete_confirmation" => "你確定要刪除此銷售資料,這個動作不能還原.", - "delete_entire_sale" => "刪除全部銷售資料", - "delete_successful" => "您已成功刪除銷售資料.", - "delete_unsuccessful" => "銷售資料刪除失敗.", - "description_abbrv" => "倒序.", - "discard" => "放棄", - "discard_quote" => "", - "discount" => "折扣 %", - "discount_included" => "% 折扣", - "discount_short" => "%", - "due" => "由", - "due_filter" => "由...選項", - "edit" => "編輯", - "edit_item" => "編輯產品", - "edit_sale" => "編輯銷售資料", - "email_receipt" => "Email 銷售單", - "employee" => "員工", - "entry" => "加入項目", - "error_editing_item" => "編輯產品錯誤", - "find_or_scan_item" => "查找/掃描商品", - "find_or_scan_item_or_receipt" => "查找/掃描產品或收貨單", - "giftcard" => "禮金券", - "giftcard_balance" => "䄠金劵餘額", - "giftcard_filter" => "", - "giftcard_number" => "禮金券編號", - "group_by_category" => "以類別分類", - "group_by_type" => "以類型分類", - "hsn" => "HSN", - "id" => "銷售編號", - "include_prices" => "包括價格?", - "invoice" => "發票", - "invoice_confirm" => "已傳送發票到", - "invoice_enable" => "建立發票", - "invoice_filter" => "發票選項", - "invoice_no_email" => "此客戶沒有正確的電郵地址.", - "invoice_number" => "發票編號#", - "invoice_number_duplicate" => "重覆的發票號碼.", - "invoice_sent" => "發票已發送到", - "invoice_total" => "帳單總額", - "invoice_type_custom_invoice" => "自定義發票", - "invoice_type_custom_tax_invoice" => "自定義稅務發票", - "invoice_type_invoice" => "發票", - "invoice_type_tax_invoice" => "稅務發票", - "invoice_unsent" => "發票傳送失敗", - "invoice_update" => "重新清點", - "item_insufficient_of_stock" => "產品庫存不足.", - "item_name" => "產品名稱", - "item_number" => "產品 #", - "item_out_of_stock" => "產品缺貨.", - "key_browser" => "", - "key_cancel" => "取消目前詢價/收據/銷售", - "key_customer_search" => "搜尋顧客", - "key_finish_quote" => "完成詢價/收據 尚未付款", - "key_finish_sale" => "增加付款及完成收據/販售", - "key_full" => "", - "key_function" => "功能", - "key_help" => "Shortcuts", - "key_help_modal" => "Open Shortcuts Window", - "key_in" => "", - "key_item_search" => "Item Search", - "key_out" => "", - "key_payment" => "Add Payment", - "key_print" => "", - "key_restore" => "", - "key_search" => "", - "key_suspend" => "Suspend Current Sale", - "key_suspended" => "Show Suspended Sales", - "key_system" => "", - "key_tendered" => "Edit Amount Tendered", - "key_title" => "Sales Keyboard Shortcuts", - "mc" => "", - "mode" => "登記模式", - "must_enter_numeric" => "已收帳款必須輸入數值.", - "must_enter_numeric_giftcard" => "禮金券編號必須輸入數值.", - "new_customer" => "新客戶", - "new_item" => "新增產品", - "no_description" => "沒有描述", - "no_filter" => "全部", - "no_items_in_cart" => "購物車中沒有任何產品.", - "no_sales_to_display" => "沒有任何紀錄.", - "none_selected" => "您還沒有選擇任何產品進行編輯.", - "nontaxed_ind" => " . ", - "not_authorized" => "此操作未經授權.", - "one_or_multiple" => "銷售", - "payment" => "付款方式", - "payment_amount" => "總額", - "payment_not_cover_total" => "付款金額不足.", - "payment_type" => "銷售付款類別", - "payments" => "", - "payments_total" => "付款總額", - "price" => "價格", - "print_after_sale" => "出貨時打印收據", - "quantity" => "數量", - "quantity_less_than_reorder_level" => "警告!產品的庫存數量是不足的。您仍然可以處理銷售,但檢查您的庫存.", - "quantity_less_than_zero" => "警告!產品的庫存數量是不足的。您仍然可以處理銷售,但檢查您的庫存.", - "quantity_of_items" => "貨品數量", - "quote" => "報價", - "quote_number" => "報價單編號", - "quote_number_duplicate" => "報價單編號必須獨有.", - "quote_sent" => "報價單寄給", - "quote_unsent" => "報價單發送敗失", - "receipt" => "銷貨單", - "receipt_no_email" => "此客戶沒有有效的電子郵件地址.", - "receipt_number" => "銷售收據編號", - "receipt_sent" => "發送收據", - "receipt_unsent" => "收據未能發送", - "refund" => "退款類型", - "register" => "銷售登記", - "remove_customer" => "移除客戶", - "remove_discount" => "", - "return" => "退貨", - "rewards" => "積分", - "rewards_balance" => "積分總數", - "sale" => "銷售", - "sale_by_invoice" => "發票銷售", - "sale_for_customer" => "客戶:", - "sale_time" => "時間", - "sales_tax" => "銷售稅", - "sales_total" => "", - "select_customer" => "選擇客戶 (Optional)", - "send_invoice" => "發送發票", - "send_quote" => "發送報價", - "send_receipt" => "發送收據", - "send_work_order" => "發送訂單", - "serial" => "序號", - "service_charge" => "", - "show_due" => "", - "show_invoice" => "顯示發票", - "show_receipt" => "顯示收據", - "start_typing_customer_name" => "開始輸入客戶的名字...", - "start_typing_item_name" => "開始輸入產品名或掃描條碼...", - "stock" => "庫存", - "stock_location" => "庫存地點", - "sub_total" => "小計", - "successfully_deleted" => "銷售資料成功刪除", - "successfully_restored" => "您已成功還原", - "successfully_suspended_sale" => "本銷售資料已經成功暫停.", - "successfully_updated" => "銷售資料成功更新.", - "suspend_sale" => "暫停銷售", - "suspended_doc_id" => "文件", - "suspended_sale_id" => "暫停銷售編號", - "suspended_sales" => "已暫停銷售", - "table" => "銷售表格", - "takings" => "銷售收入", - "tax" => "稅額", - "tax_id" => "稅務編號", - "tax_invoice" => "稅務發票", - "tax_percent" => "稅率 %", - "taxed_ind" => "t", - "total" => "總計", - "total_tax_exclusive" => "不含稅", - "transaction_failed" => "銷售交易失敗.", - "unable_to_add_item" => "無法增加出售產品", - "unsuccessfully_deleted" => "銷售資料刪除失敗.", - "unsuccessfully_restored" => "銷售還原失敗.", - "unsuccessfully_suspended_sale" => "本銷售資料已經成功暫停.", - "unsuccessfully_updated" => "銷售資料更新失敗.", - "unsuspend" => "取消暫停銷售", - "unsuspend_and_delete" => "取消暫停銷售並刪除", - "update" => "編輯", - "upi" => "UPI", - "visa" => "", - "wholesale" => "", - "work_order" => "工作指示", - "work_order_number" => "工作指示編號", - "work_order_number_duplicate" => "工作編號重複.", - "work_order_sent" => "發送工作指示", - "work_order_unsent" => "工作指示發送失敗", + "customers_available_points" => "現有積分", + "rewards_package" => "獎賞", + "rewards_remaining_balance" => "剩餘獎賞積分 ", + "account_number" => "帳戶 #", + "add_payment" => "新增付款", + "amount_due" => "商品金額", + "amount_tendered" => "已收帳款", + "authorized_signature" => "授權簽名", + "cancel_sale" => "取消銷售", + "cash" => "現金", + "cash_1" => "", + "cash_2" => "", + "cash_3" => "", + "cash_4" => "", + "cash_adjustment" => "現金調整", + "cash_deposit" => "已預付金額", + "cash_filter" => "現金", + "change_due" => "更改到期日", + "change_price" => "更改售價", + "check" => "支票", + "check_balance" => "查看餘額", + "check_filter" => "查看選項", + "close" => "", + "comment" => "評論", + "comments" => "評論", + "company_name" => "", + "complete" => "", + "complete_sale" => "完成銷售", + "confirm_cancel_sale" => "你確定要清除此筆銷售單?本單內的所有產品將被清除。", + "confirm_delete" => "你確定要清除此銷售產品?", + "confirm_restore" => "你確定要回復此銷售產品?", + "credit" => "信用卡", + "credit_deposit" => "預付卡", + "credit_filter" => "信用卡", + "current_table" => "", + "customer" => "客戶", + "customer_address" => "客戶地址", + "customer_discount" => "折扣", + "customer_email" => "客戶電郵地址", + "customer_location" => "客戶所在地", + "customer_mailchimp_status" => "MailChimp電子報行銷狀態", + "customer_optional" => "到期付款需要", + "customer_required" => "必需", + "customer_total" => "總數", + "customer_total_spent" => "", + "daily_sales" => "", + "date" => "日期", + "date_range" => "日期範圍", + "date_required" => "必需填上正確的日期.", + "date_type" => "必需填寫日期.", + "debit" => "簽帳卡", + "debit_filter" => "", + "delete" => "確認刪除", + "delete_confirmation" => "你確定要刪除此銷售資料,這個動作不能還原.", + "delete_entire_sale" => "刪除全部銷售資料", + "delete_successful" => "您已成功刪除銷售資料.", + "delete_unsuccessful" => "銷售資料刪除失敗.", + "description_abbrv" => "倒序.", + "discard" => "放棄", + "discard_quote" => "", + "discount" => "折扣 %", + "discount_included" => "% 折扣", + "discount_short" => "%", + "due" => "由", + "due_filter" => "由...選項", + "edit" => "編輯", + "edit_item" => "編輯產品", + "edit_sale" => "編輯銷售資料", + "email_receipt" => "Email 銷售單", + "employee" => "員工", + "entry" => "加入項目", + "error_editing_item" => "編輯產品錯誤", + "find_or_scan_item" => "查找/掃描商品", + "find_or_scan_item_or_receipt" => "查找/掃描產品或收貨單", + "giftcard" => "禮金券", + "giftcard_balance" => "䄠金劵餘額", + "giftcard_filter" => "", + "giftcard_number" => "禮金券編號", + "group_by_category" => "以類別分類", + "group_by_type" => "以類型分類", + "hsn" => "HSN", + "id" => "銷售編號", + "include_prices" => "包括價格?", + "invoice" => "發票", + "invoice_confirm" => "已傳送發票到", + "invoice_enable" => "建立發票", + "invoice_filter" => "發票選項", + "invoice_no_email" => "此客戶沒有正確的電郵地址.", + "invoice_number" => "發票編號#", + "invoice_number_duplicate" => "重覆的發票號碼.", + "invoice_sent" => "發票已發送到", + "invoice_total" => "帳單總額", + "invoice_type_custom_invoice" => "自定義發票", + "invoice_type_custom_tax_invoice" => "自定義稅務發票", + "invoice_type_invoice" => "發票", + "invoice_type_tax_invoice" => "稅務發票", + "invoice_unsent" => "發票傳送失敗", + "invoice_update" => "重新清點", + "item_insufficient_of_stock" => "產品庫存不足.", + "item_name" => "產品名稱", + "item_number" => "產品 #", + "item_out_of_stock" => "產品缺貨.", + "key_browser" => "", + "key_cancel" => "取消目前詢價/收據/銷售", + "key_customer_search" => "搜尋顧客", + "key_finish_quote" => "完成詢價/收據 尚未付款", + "key_finish_sale" => "增加付款及完成收據/販售", + "key_full" => "", + "key_function" => "功能", + "key_help" => "Shortcuts", + "key_help_modal" => "Open Shortcuts Window", + "key_in" => "", + "key_item_search" => "Item Search", + "key_out" => "", + "key_payment" => "Add Payment", + "key_print" => "", + "key_restore" => "", + "key_search" => "", + "key_suspend" => "Suspend Current Sale", + "key_suspended" => "Show Suspended Sales", + "key_system" => "", + "key_tendered" => "Edit Amount Tendered", + "key_title" => "Sales Keyboard Shortcuts", + "mc" => "", + "mode" => "登記模式", + "must_enter_numeric" => "已收帳款必須輸入數值.", + "must_enter_numeric_giftcard" => "禮金券編號必須輸入數值.", + "new_customer" => "新客戶", + "new_item" => "新增產品", + "no_description" => "沒有描述", + "no_filter" => "全部", + "no_items_in_cart" => "購物車中沒有任何產品.", + "no_sales_to_display" => "沒有任何紀錄.", + "none_selected" => "您還沒有選擇任何產品進行編輯.", + "nontaxed_ind" => " . ", + "not_authorized" => "此操作未經授權.", + "one_or_multiple" => "銷售", + "payment" => "付款方式", + "payment_amount" => "總額", + "payment_not_cover_total" => "付款金額不足.", + "payment_type" => "銷售付款類別", + "payments" => "", + "payments_total" => "付款總額", + "price" => "價格", + "print_after_sale" => "出貨時打印收據", + "quantity" => "數量", + "quantity_less_than_reorder_level" => "警告!產品的庫存數量是不足的。您仍然可以處理銷售,但檢查您的庫存.", + "quantity_less_than_zero" => "警告!產品的庫存數量是不足的。您仍然可以處理銷售,但檢查您的庫存.", + "quantity_of_items" => "貨品數量", + "quote" => "報價", + "quote_number" => "報價單編號", + "quote_number_duplicate" => "報價單編號必須獨有.", + "quote_sent" => "報價單寄給", + "quote_unsent" => "報價單發送敗失", + "receipt" => "銷貨單", + "receipt_no_email" => "此客戶沒有有效的電子郵件地址.", + "receipt_number" => "銷售收據編號", + "receipt_sent" => "發送收據", + "receipt_unsent" => "收據未能發送", + "refund" => "退款類型", + "register" => "銷售登記", + "remove_customer" => "移除客戶", + "remove_discount" => "", + "return" => "退貨", + "rewards" => "積分", + "rewards_balance" => "積分總數", + "sale" => "銷售", + "sale_by_invoice" => "發票銷售", + "sale_for_customer" => "客戶:", + "sale_time" => "時間", + "sales_tax" => "銷售稅", + "sales_total" => "", + "select_customer" => "選擇客戶 (Optional)", + "send_invoice" => "發送發票", + "send_quote" => "發送報價", + "send_receipt" => "發送收據", + "send_work_order" => "發送訂單", + "serial" => "序號", + "service_charge" => "", + "show_due" => "", + "show_invoice" => "顯示發票", + "show_receipt" => "顯示收據", + "start_typing_customer_name" => "開始輸入客戶的名字...", + "start_typing_item_name" => "開始輸入產品名或掃描條碼...", + "stock" => "庫存", + "stock_location" => "庫存地點", + "sub_total" => "小計", + "successfully_deleted" => "銷售資料成功刪除", + "successfully_restored" => "您已成功還原", + "successfully_suspended_sale" => "本銷售資料已經成功暫停.", + "successfully_updated" => "銷售資料成功更新.", + "suspend_sale" => "暫停銷售", + "suspended_doc_id" => "文件", + "suspended_sale_id" => "暫停銷售編號", + "suspended_sales" => "已暫停銷售", + "table" => "銷售表格", + "takings" => "銷售收入", + "tax" => "稅額", + "tax_id" => "稅務編號", + "tax_invoice" => "稅務發票", + "tax_percent" => "稅率 %", + "taxed_ind" => "t", + "total" => "總計", + "total_tax_exclusive" => "不含稅", + "transaction_failed" => "銷售交易失敗.", + "unable_to_add_item" => "無法增加出售產品", + "unsuccessfully_deleted" => "銷售資料刪除失敗.", + "unsuccessfully_restored" => "銷售還原失敗.", + "unsuccessfully_suspended_sale" => "本銷售資料已經成功暫停.", + "unsuccessfully_updated" => "銷售資料更新失敗.", + "unsuspend" => "取消暫停銷售", + "unsuspend_and_delete" => "取消暫停銷售並刪除", + "update" => "編輯", + "upi" => "UPI", + "visa" => "", + "wholesale" => "", + "work_order" => "工作指示", + "work_order_number" => "工作指示編號", + "work_order_number_duplicate" => "工作編號重複.", + "work_order_sent" => "發送工作指示", + "work_order_unsent" => "工作指示發送失敗", ]; diff --git a/app/Language/zh-Hant/Suppliers.php b/app/Language/zh-Hant/Suppliers.php index 3de0fb44d..2733d697c 100644 --- a/app/Language/zh-Hant/Suppliers.php +++ b/app/Language/zh-Hant/Suppliers.php @@ -1,24 +1,24 @@ "帳號 #", - "agency_name" => " ", - "cannot_be_deleted" => "無法刪除所選擇的供應商,選定的供應商中至少有一家已有銷售紀錄。", - "category" => "供應商類別", - "company_name" => "公司名稱", - "company_name_required" => "公司名稱是必填欄位.", - "confirm_delete" => "你確定要刪除選定的供應商嗎?", - "confirm_restore" => "您確定要還原選定的供應商嗎?", - "cost" => "供應商成本", - "error_adding_updating" => "新增/更新供應商錯誤.", - "goods" => "供應商商品", - "new" => "新增供應商", - "none_selected" => "您還沒有選擇任何供應商進行刪除.", - "one_or_multiple" => "供應商", - "successful_adding" => "您已成功新增供應商", - "successful_deleted" => "您已成功刪除供應商", - "successful_updating" => "您已成功更新供應商", - "supplier" => "供應商", - "supplier_id" => "Id", - "tax_id" => "稅務編號", - "update" => "更新供應商", + "account_number" => "帳號 #", + "agency_name" => " ", + "cannot_be_deleted" => "無法刪除所選擇的供應商,選定的供應商中至少有一家已有銷售紀錄。", + "category" => "供應商類別", + "company_name" => "公司名稱", + "company_name_required" => "公司名稱是必填欄位.", + "confirm_delete" => "你確定要刪除選定的供應商嗎?", + "confirm_restore" => "您確定要還原選定的供應商嗎?", + "cost" => "供應商成本", + "error_adding_updating" => "新增/更新供應商錯誤.", + "goods" => "供應商商品", + "new" => "新增供應商", + "none_selected" => "您還沒有選擇任何供應商進行刪除.", + "one_or_multiple" => "供應商", + "successful_adding" => "您已成功新增供應商", + "successful_deleted" => "您已成功刪除供應商", + "successful_updating" => "您已成功更新供應商", + "supplier" => "供應商", + "supplier_id" => "Id", + "tax_id" => "稅務編號", + "update" => "更新供應商", ]; diff --git a/app/Language/zh-Hant/Taxes.php b/app/Language/zh-Hant/Taxes.php index ab1db6287..608d2a675 100644 --- a/app/Language/zh-Hant/Taxes.php +++ b/app/Language/zh-Hant/Taxes.php @@ -1,82 +1,82 @@ "新增稅務例外", - "cascade" => "級聯", - "cascade_sequence" => "級聯序列", - "city" => "城巿", - "code" => "代碼", - "confirm_delete" => "你確定要刪除這個統編(Tax Code)嗎?此動作無法復原", - "confirm_restore" => "你確定要復原選取的統編(Tax Code)嗎?", - "default_tax_category" => "預設稅務類別", - "default_tax_rate" => "預設稅率", - "error_adding_updating" => "統編(Tax Code)新增或修改失敗", - "group_seq" => "組序列", - "jurisdiction_name" => "稅務裁決單位", - "name" => "姓名", - "new" => "新稅", - "no_taxes" => "", - "no_taxes_to_display" => "沒有相關稅務編號", - "reporting_authority" => "報告主管機關", - "round_half_down" => "減半", - "round_half_even" => "半偶", - "round_half_odd" => "半奇數", - "round_half_up" => "半升", - "rounding_code" => "舍入代碼", - "sales_tax" => "營業稅", - "sales_tax_by_invoice" => "發票營業稅", - "sequence" => "稅收順序", - "state" => "州", - "successful_deleted" => "已成功刪除", - "tax_categories" => "稅種", - "tax_categories_configuration" => "稅種設定", - "tax_categories_saved_successfully" => "稅種修改完成", - "tax_categories_saved_unsuccessfully" => "稅種修改未儲存", - "tax_category" => "稅種", - "tax_category_code" => "稅種代碼", - "tax_category_duplicate" => "複製稅種", - "tax_category_invalid_chars" => "稅種名稱含不合法字元", - "tax_category_name" => "稅種名稱", - "tax_category_new" => "新增稅種", - "tax_category_required" => "稅種為必填", - "tax_code" => "稅法", - "tax_code_cannot_be_deleted" => "統編(Tax Code)刪除失敗", - "tax_code_duplicate" => "複製統編(Tax Code)", - "tax_code_invalid_chars" => "統編(Tax Code)含無效字元", - "tax_code_name" => "稅號名稱", - "tax_code_required" => "統編(Tax Code)為必填欄位", - "tax_code_successful_deleted" => "刪除統編(Tax Code)成功", - "tax_code_successful_updated" => "修改成功", - "tax_code_successful_updating" => "統編(Tax Code)修改成功", - "tax_code_successfully_added" => "新增成功", - "tax_code_type" => "稅碼類型", - "tax_codes" => "統編(Tax Code)", - "tax_codes_configuration" => "統編(Tax Code)設定", - "tax_codes_saved_successfully" => "稅碼更改已保存", - "tax_codes_saved_unsuccessfully" => "稅碼更改未保存", - "tax_excluded" => "不含稅", - "tax_group" => "稅務集團", - "tax_group_not_unique" => "稅組 {0} 不是唯一的", - "tax_group_sequence" => "稅組序列", - "tax_included" => "含稅", - "tax_jurisdiction" => "稅收管轄權", - "tax_jurisdiction_duplicate" => "重複稅收管轄權", - "tax_jurisdiction_invalid_chars" => "轄區名稱中的無效字符", - "tax_jurisdiction_required" => "需要稅收管轄權", - "tax_jurisdictions" => "稅務管轄區", - "tax_jurisdictions_configuration" => "稅務管轄區配置", - "tax_jurisdictions_saved_successfully" => "稅務管轄區更改已保存", - "tax_jurisdictions_saved_unsuccessfully" => "稅務管轄區更改未保存", - "tax_rate" => "稅率", - "tax_rate_configuration" => "稅率設定", - "tax_rate_error_adding_updating" => "稅率新增或修改失敗", - "tax_rate_numeric" => "稅率必須是數字", - "tax_rate_required" => "稅率是必填欄位", - "tax_rate_successful_updated" => "修改完成", - "tax_rate_successfully_added" => "新增完成", - "tax_rates" => "稅率", - "tax_rates_configuration" => "稅率設定", - "tax_rounding" => "稅收四捨五入", - "tax_type" => "稅種", - "update" => "修改稅率", - "vat_tax" => "增值稅", + "add_exception" => "新增稅務例外", + "cascade" => "級聯", + "cascade_sequence" => "級聯序列", + "city" => "城巿", + "code" => "代碼", + "confirm_delete" => "你確定要刪除這個統編(Tax Code)嗎?此動作無法復原", + "confirm_restore" => "你確定要復原選取的統編(Tax Code)嗎?", + "default_tax_category" => "預設稅務類別", + "default_tax_rate" => "預設稅率", + "error_adding_updating" => "統編(Tax Code)新增或修改失敗", + "group_seq" => "組序列", + "jurisdiction_name" => "稅務裁決單位", + "name" => "姓名", + "new" => "新稅", + "no_taxes" => "", + "no_taxes_to_display" => "沒有相關稅務編號", + "reporting_authority" => "報告主管機關", + "round_half_down" => "減半", + "round_half_even" => "半偶", + "round_half_odd" => "半奇數", + "round_half_up" => "半升", + "rounding_code" => "舍入代碼", + "sales_tax" => "營業稅", + "sales_tax_by_invoice" => "發票營業稅", + "sequence" => "稅收順序", + "state" => "州", + "successful_deleted" => "已成功刪除", + "tax_categories" => "稅種", + "tax_categories_configuration" => "稅種設定", + "tax_categories_saved_successfully" => "稅種修改完成", + "tax_categories_saved_unsuccessfully" => "稅種修改未儲存", + "tax_category" => "稅種", + "tax_category_code" => "稅種代碼", + "tax_category_duplicate" => "複製稅種", + "tax_category_invalid_chars" => "稅種名稱含不合法字元", + "tax_category_name" => "稅種名稱", + "tax_category_new" => "新增稅種", + "tax_category_required" => "稅種為必填", + "tax_code" => "稅法", + "tax_code_cannot_be_deleted" => "統編(Tax Code)刪除失敗", + "tax_code_duplicate" => "複製統編(Tax Code)", + "tax_code_invalid_chars" => "統編(Tax Code)含無效字元", + "tax_code_name" => "稅號名稱", + "tax_code_required" => "統編(Tax Code)為必填欄位", + "tax_code_successful_deleted" => "刪除統編(Tax Code)成功", + "tax_code_successful_updated" => "修改成功", + "tax_code_successful_updating" => "統編(Tax Code)修改成功", + "tax_code_successfully_added" => "新增成功", + "tax_code_type" => "稅碼類型", + "tax_codes" => "統編(Tax Code)", + "tax_codes_configuration" => "統編(Tax Code)設定", + "tax_codes_saved_successfully" => "稅碼更改已保存", + "tax_codes_saved_unsuccessfully" => "稅碼更改未保存", + "tax_excluded" => "不含稅", + "tax_group" => "稅務集團", + "tax_group_not_unique" => "稅組 {0} 不是唯一的", + "tax_group_sequence" => "稅組序列", + "tax_included" => "含稅", + "tax_jurisdiction" => "稅收管轄權", + "tax_jurisdiction_duplicate" => "重複稅收管轄權", + "tax_jurisdiction_invalid_chars" => "轄區名稱中的無效字符", + "tax_jurisdiction_required" => "需要稅收管轄權", + "tax_jurisdictions" => "稅務管轄區", + "tax_jurisdictions_configuration" => "稅務管轄區配置", + "tax_jurisdictions_saved_successfully" => "稅務管轄區更改已保存", + "tax_jurisdictions_saved_unsuccessfully" => "稅務管轄區更改未保存", + "tax_rate" => "稅率", + "tax_rate_configuration" => "稅率設定", + "tax_rate_error_adding_updating" => "稅率新增或修改失敗", + "tax_rate_numeric" => "稅率必須是數字", + "tax_rate_required" => "稅率是必填欄位", + "tax_rate_successful_updated" => "修改完成", + "tax_rate_successfully_added" => "新增完成", + "tax_rates" => "稅率", + "tax_rates_configuration" => "稅率設定", + "tax_rounding" => "稅收四捨五入", + "tax_type" => "稅種", + "update" => "修改稅率", + "vat_tax" => "增值稅", ]; diff --git a/app/Language/zh-Hant/index.html b/app/Language/zh-Hant/index.html index b702fbc39..69df4e1df 100644 --- a/app/Language/zh-Hant/index.html +++ b/app/Language/zh-Hant/index.html @@ -1,7 +1,7 @@ - 403 Forbidden + 403 Forbidden diff --git a/app/Libraries/Barcode_lib.php b/app/Libraries/Barcode_lib.php index 7fd5b634c..dd20d2aa9 100644 --- a/app/Libraries/Barcode_lib.php +++ b/app/Libraries/Barcode_lib.php @@ -13,235 +13,235 @@ use Picqer\Barcode\BarcodeGeneratorSVG; */ class Barcode_lib { - /** - * @var array Values from Picqer\Barcode\BarcodeGenerator class. If that class changes, this array will need to be updated. - */ - private array $supported_barcodes = [ - 'C32' => 'Code 32', - 'C39' => 'Code 39', - 'C39+' => 'Code 39 Checksum', - 'C39E' => 'Code 39E', - 'C39E+' => 'Code 39E Checksum', - 'C93' => 'Code 93', - 'S25' => 'Standard 2 5', - 'S25+' => 'Standard 2 5 Checksum', - 'I25' => 'Interleaved 2 5', - 'I25+' => 'Interleaved 2 5 Checksum', - 'C128' => 'Code 128', - 'C128A' => 'Code 128 A', - 'C128B' => 'Code 128 B', - 'C128C' => 'Code 128 C', - 'EAN2' => 'EAN 2', - 'EAN5' => 'EAN 5', - 'EAN8' => 'EAN 8', - 'EAN13' => 'EAN 13', - 'ITF14' => 'ITF14', - 'UPCA' => 'UPC A', - 'UPCE' => 'UPC E', - 'MSI' => 'Msi', - 'MSI+' => 'MSI Checksum', - 'POSTNET' => 'Postnet', - 'PLANET' => 'Planet', - 'RMS4CC' => 'RMS4CC', - 'KIX' => 'KIX', - 'IMB' => 'IMB', - 'CODABAR' => 'Codabar', - 'CODE11' => 'Code 11', - 'PHARMA' => 'Pharma Code', - 'PHARMA2T' => 'Pharma Code Two Tracks', - ]; + /** + * @var array Values from Picqer\Barcode\BarcodeGenerator class. If that class changes, this array will need to be updated. + */ + private array $supported_barcodes = [ + 'C32' => 'Code 32', + 'C39' => 'Code 39', + 'C39+' => 'Code 39 Checksum', + 'C39E' => 'Code 39E', + 'C39E+' => 'Code 39E Checksum', + 'C93' => 'Code 93', + 'S25' => 'Standard 2 5', + 'S25+' => 'Standard 2 5 Checksum', + 'I25' => 'Interleaved 2 5', + 'I25+' => 'Interleaved 2 5 Checksum', + 'C128' => 'Code 128', + 'C128A' => 'Code 128 A', + 'C128B' => 'Code 128 B', + 'C128C' => 'Code 128 C', + 'EAN2' => 'EAN 2', + 'EAN5' => 'EAN 5', + 'EAN8' => 'EAN 8', + 'EAN13' => 'EAN 13', + 'ITF14' => 'ITF14', + 'UPCA' => 'UPC A', + 'UPCE' => 'UPC E', + 'MSI' => 'Msi', + 'MSI+' => 'MSI Checksum', + 'POSTNET' => 'Postnet', + 'PLANET' => 'Planet', + 'RMS4CC' => 'RMS4CC', + 'KIX' => 'KIX', + 'IMB' => 'IMB', + 'CODABAR' => 'Codabar', + 'CODE11' => 'Code 11', + 'PHARMA' => 'Pharma Code', + 'PHARMA2T' => 'Pharma Code Two Tracks', + ]; - /** - * @return array - */ - public function get_list_barcodes(): array - { - return $this->supported_barcodes; - } + /** + * @return array + */ + public function get_list_barcodes(): array + { + return $this->supported_barcodes; + } - /** - * @return array - */ - public function get_barcode_config(): array - { - $config = config(OSPOS::class)->settings; + /** + * @return array + */ + public function get_barcode_config(): array + { + $config = config(OSPOS::class)->settings; - $data['company'] = $config['company']; - $data['barcode_content'] = $config['barcode_content']; - $data['barcode_type'] = $config['barcode_type']; - $data['barcode_font'] = $config['barcode_font']; - $data['barcode_font_size'] = $config['barcode_font_size']; - $data['barcode_height'] = $config['barcode_height']; - $data['barcode_width'] = $config['barcode_width']; - $data['barcode_first_row'] = $config['barcode_first_row']; - $data['barcode_second_row'] = $config['barcode_second_row']; - $data['barcode_third_row'] = $config['barcode_third_row']; - $data['barcode_num_in_row'] = $config['barcode_num_in_row']; - $data['barcode_page_width'] = $config['barcode_page_width']; - $data['barcode_page_cellspacing'] = $config['barcode_page_cellspacing']; - $data['barcode_generate_if_empty'] = $config['barcode_generate_if_empty']; - $data['barcode_formats'] = $config['barcode_formats'] !== 'null'? $config['barcode_formats'] : []; + $data['company'] = $config['company']; + $data['barcode_content'] = $config['barcode_content']; + $data['barcode_type'] = $config['barcode_type']; + $data['barcode_font'] = $config['barcode_font']; + $data['barcode_font_size'] = $config['barcode_font_size']; + $data['barcode_height'] = $config['barcode_height']; + $data['barcode_width'] = $config['barcode_width']; + $data['barcode_first_row'] = $config['barcode_first_row']; + $data['barcode_second_row'] = $config['barcode_second_row']; + $data['barcode_third_row'] = $config['barcode_third_row']; + $data['barcode_num_in_row'] = $config['barcode_num_in_row']; + $data['barcode_page_width'] = $config['barcode_page_width']; + $data['barcode_page_cellspacing'] = $config['barcode_page_cellspacing']; + $data['barcode_generate_if_empty'] = $config['barcode_generate_if_empty']; + $data['barcode_formats'] = $config['barcode_formats'] !== 'null'? $config['barcode_formats'] : []; - return $data; - } + return $data; + } - /** - * Returns the value to be used in the barcode. - * - * @param array $item Contains item data - * @param array $barcode_config Contains barcode configuration - * @return string Barcode value - */ - private function get_barcode_value(array $item, array $barcode_config): string - { - return $barcode_config['barcode_content'] !== 'id' - ? ($item['item_number'] ?? $item['name']) - : $item['item_id']; - } + /** + * Returns the value to be used in the barcode. + * + * @param array $item Contains item data + * @param array $barcode_config Contains barcode configuration + * @return string Barcode value + */ + private function get_barcode_value(array $item, array $barcode_config): string + { + return $barcode_config['barcode_content'] !== 'id' + ? ($item['item_number'] ?? $item['name']) + : $item['item_id']; + } - /** - * @param array $item - * @param array $barcode_config - * @return string - */ - private function generate_barcode(array $item, array $barcode_config): string - { - try - { - $generator = new BarcodeGeneratorSVG(); - $barcode_value = $this->get_barcode_value($item, $barcode_config); + /** + * @param array $item + * @param array $barcode_config + * @return string + */ + private function generate_barcode(array $item, array $barcode_config): string + { + try + { + $generator = new BarcodeGeneratorSVG(); + $barcode_value = $this->get_barcode_value($item, $barcode_config); - return $generator->getBarcode($barcode_value, $barcode_config['barcode_type'], 2, $barcode_config['barcode_height']); - } - catch(Exception $e) - { - echo 'Caught exception: ', $e->getMessage(), "\n"; - echo 'Stack trace: ', $e->getTraceAsString(); + return $generator->getBarcode($barcode_value, $barcode_config['barcode_type'], 2, $barcode_config['barcode_height']); + } + catch(Exception $e) + { + echo 'Caught exception: ', $e->getMessage(), "\n"; + echo 'Stack trace: ', $e->getTraceAsString(); - return ''; - } - } + return ''; + } + } - /** - * @param $barcode_content - * @return string - */ - public function generate_receipt_barcode($barcode_content): string - { - try - { - $generator = new BarcodeGeneratorSVG(); - return $generator->getBarcode($barcode_content, $generator::TYPE_CODE_128); - } - catch(Exception $e) - { - echo 'Caught exception: ', $e->getMessage(), "\n"; - return ''; - } - } + /** + * @param $barcode_content + * @return string + */ + public function generate_receipt_barcode($barcode_content): string + { + try + { + $generator = new BarcodeGeneratorSVG(); + return $generator->getBarcode($barcode_content, $generator::TYPE_CODE_128); + } + catch(Exception $e) + { + echo 'Caught exception: ', $e->getMessage(), "\n"; + return ''; + } + } - /** - * Displays the barcode. Called in a View. - * - * @param array $item - * @param array $barcode_config - * @return string - */ - public function display_barcode(array $item, array $barcode_config): string - { - if((isset($item['item_number']) || isset($item['name'])) && isset($item['item_id'])) - { - $barcode = $this->generate_barcode($item, $barcode_config); - $display_table = ''; - $display_table .= ''; - $display_table .= ""; - $display_table .= ''; - $display_table .= ''; - $display_table .= '
    ' . $this->manage_display_layout($barcode_config['barcode_first_row'], $item, $barcode_config) . '
    $barcode
    ' . $this->manage_display_layout($barcode_config['barcode_second_row'], $item, $barcode_config) . '
    ' . $this->manage_display_layout($barcode_config['barcode_third_row'], $item, $barcode_config) . '
    '; + /** + * Displays the barcode. Called in a View. + * + * @param array $item + * @param array $barcode_config + * @return string + */ + public function display_barcode(array $item, array $barcode_config): string + { + if((isset($item['item_number']) || isset($item['name'])) && isset($item['item_id'])) + { + $barcode = $this->generate_barcode($item, $barcode_config); + $display_table = ''; + $display_table .= ''; + $display_table .= ""; + $display_table .= ''; + $display_table .= ''; + $display_table .= '
    ' . $this->manage_display_layout($barcode_config['barcode_first_row'], $item, $barcode_config) . '
    $barcode
    ' . $this->manage_display_layout($barcode_config['barcode_second_row'], $item, $barcode_config) . '
    ' . $this->manage_display_layout($barcode_config['barcode_third_row'], $item, $barcode_config) . '
    '; - return $display_table; - } + return $display_table; + } - return "Item number or Item ID not found in the item array."; //TODO: this needs to be run through the translation engine. - } + return "Item number or Item ID not found in the item array."; //TODO: this needs to be run through the translation engine. + } - /** - * @param $layout_type - * @param array $item - * @param array $barcode_config - * @return string - */ - private function manage_display_layout($layout_type, array $item, array $barcode_config): string - { - $result = ''; - helper('text'); + /** + * @param $layout_type + * @param array $item + * @param array $barcode_config + * @return string + */ + private function manage_display_layout($layout_type, array $item, array $barcode_config): string + { + $result = ''; + helper('text'); - if($layout_type == 'name') - { - $result = $item['name']; - } - elseif($layout_type == 'category' && isset($item['category'])) - { - $result = lang('Items.category') . " " . $item['category']; - } - elseif($layout_type == 'cost_price' && isset($item['cost_price'])) - { - $result = lang('Items.cost_price') . " " . to_currency($item['cost_price']); - } - elseif($layout_type == 'unit_price' && isset($item['unit_price'])) - { - $result = lang('Items.unit_price') . " " . to_currency($item['unit_price']); - } - elseif($layout_type == 'company_name') - { - $result = $barcode_config['company']; - } - elseif($layout_type == 'item_code') - { - $result = $barcode_config['barcode_content'] !== "id" && isset($item['item_number']) - ? $item['item_number'] - : $item['item_id']; - } + if($layout_type == 'name') + { + $result = $item['name']; + } + elseif($layout_type == 'category' && isset($item['category'])) + { + $result = lang('Items.category') . " " . $item['category']; + } + elseif($layout_type == 'cost_price' && isset($item['cost_price'])) + { + $result = lang('Items.cost_price') . " " . to_currency($item['cost_price']); + } + elseif($layout_type == 'unit_price' && isset($item['unit_price'])) + { + $result = lang('Items.unit_price') . " " . to_currency($item['unit_price']); + } + elseif($layout_type == 'company_name') + { + $result = $barcode_config['company']; + } + elseif($layout_type == 'item_code') + { + $result = $barcode_config['barcode_content'] !== "id" && isset($item['item_number']) + ? $item['item_number'] + : $item['item_id']; + } - return character_limiter($result, 40); - } + return character_limiter($result, 40); + } - /** - * Finds all acceptable fonts to be used. Called in a View. - * - * @param string $folder - * @return array - */ - public function listfonts(string $folder): array //TODO: This function does not follow naming conventions. - { - $array = []; //TODO: Naming of this variable should be changed. The variable should never be named the data type. $fonts would be a better name. + /** + * Finds all acceptable fonts to be used. Called in a View. + * + * @param string $folder + * @return array + */ + public function listfonts(string $folder): array //TODO: This function does not follow naming conventions. + { + $array = []; //TODO: Naming of this variable should be changed. The variable should never be named the data type. $fonts would be a better name. - if(($handle = opendir($folder)) !== false) - { - while(($file = readdir($handle)) !== false) - { - if(str_ends_with($file, '.ttf')) - { - $array[$file] = $file; - } - } - } + if(($handle = opendir($folder)) !== false) + { + while(($file = readdir($handle)) !== false) + { + if(str_ends_with($file, '.ttf')) + { + $array[$file] = $file; + } + } + } - closedir($handle); + closedir($handle); - array_unshift($array, lang('Config.none')); + array_unshift($array, lang('Config.none')); - return $array; - } + return $array; + } - /** - * Returns the name of the font from the file name. Called in a View. - * - * @param string $font_file_name - * @return string - */ - public function get_font_name(string $font_file_name): string - { - return substr($font_file_name, 0, -4); - } + /** + * Returns the name of the font from the file name. Called in a View. + * + * @param string $font_file_name + * @return string + */ + public function get_font_name(string $font_file_name): string + { + return substr($font_file_name, 0, -4); + } } diff --git a/app/Libraries/Email_lib.php b/app/Libraries/Email_lib.php index 99ac32932..05d10c988 100644 --- a/app/Libraries/Email_lib.php +++ b/app/Libraries/Email_lib.php @@ -17,63 +17,63 @@ use Config\Services; class Email_lib { - private Email $email; - private array $config; + private Email $email; + private array $config; - public function __construct() - { - $this->email = new Email(); - $this->config = config(OSPOS::class)->settings; + public function __construct() + { + $this->email = new Email(); + $this->config = config(OSPOS::class)->settings; - $encrypter = Services::encrypter(); - - $smtp_pass = $this->config['smtp_pass']; - if(!empty($smtp_pass)) - { - $smtp_pass = $encrypter->decrypt($smtp_pass); - } - - $email_config = [ - 'mailType' => 'html', - 'userAgent' => 'OSPOS', - 'validate' => true, - 'protocol' => $this->config['protocol'], - 'mailPath' => $this->config['mailpath'], - 'SMTPHost' => $this->config['smtp_host'], - 'SMTPUser' => $this->config['smtp_user'], - 'SMTPPass' => $smtp_pass, - 'SMTPPort' => (int)$this->config['smtp_port'], - 'SMTPTimeout' => (int)$this->config['smtp_timeout'], - 'SMTPCrypto' => $this->config['smtp_crypto'] - ]; - $this->email->initialize($email_config); - } + $encrypter = Services::encrypter(); + + $smtp_pass = $this->config['smtp_pass']; + if(!empty($smtp_pass)) + { + $smtp_pass = $encrypter->decrypt($smtp_pass); + } + + $email_config = [ + 'mailType' => 'html', + 'userAgent' => 'OSPOS', + 'validate' => true, + 'protocol' => $this->config['protocol'], + 'mailPath' => $this->config['mailpath'], + 'SMTPHost' => $this->config['smtp_host'], + 'SMTPUser' => $this->config['smtp_user'], + 'SMTPPass' => $smtp_pass, + 'SMTPPort' => (int)$this->config['smtp_port'], + 'SMTPTimeout' => (int)$this->config['smtp_timeout'], + 'SMTPCrypto' => $this->config['smtp_crypto'] + ]; + $this->email->initialize($email_config); + } - /** - * Email sending function - * Example of use: $response = sendEmail('john@doe.com', 'Hello', 'This is a message', $filename); - */ - public function sendEmail(string $to, string $subject, string $message, string $attachment = null): bool - { - $email = $this->email; + /** + * Email sending function + * Example of use: $response = sendEmail('john@doe.com', 'Hello', 'This is a message', $filename); + */ + public function sendEmail(string $to, string $subject, string $message, string $attachment = null): bool + { + $email = $this->email; - $email->setFrom($this->config['email'], $this->config['company']); - $email->setTo($to); - $email->setSubject($subject); - $email->setMessage($message); + $email->setFrom($this->config['email'], $this->config['company']); + $email->setTo($to); + $email->setSubject($subject); + $email->setMessage($message); - if(!empty($attachment)) - { - $email->attach($attachment); - } + if(!empty($attachment)) + { + $email->attach($attachment); + } - $result = $email->send(); + $result = $email->send(); - if(!$result) - { - error_log($email->printDebugger()); - } + if(!$result) + { + error_log($email->printDebugger()); + } - return $result; - } + return $result; + } } diff --git a/app/Libraries/Item_lib.php b/app/Libraries/Item_lib.php index fc31133bf..9d5f14d23 100644 --- a/app/Libraries/Item_lib.php +++ b/app/Libraries/Item_lib.php @@ -14,43 +14,43 @@ use App\Models\Stock_location; class Item_lib { - private Session $session; - private Stock_location $stock_location; + private Session $session; + private Stock_location $stock_location; - public function __construct() - { - $this->session = Session(); - $this->stock_location = model(Stock_location::class); - } + public function __construct() + { + $this->session = Session(); + $this->stock_location = model(Stock_location::class); + } - /** - * @return string - */ - public function get_item_location(): string - { - if(!$this->session->get('item_location')) - { - $location_id = $this->stock_location->get_default_location_id(); - $this->set_item_location($location_id); - } + /** + * @return string + */ + public function get_item_location(): string + { + if(!$this->session->get('item_location')) + { + $location_id = $this->stock_location->get_default_location_id(); + $this->set_item_location($location_id); + } - return $this->session->get('item_location'); - } + return $this->session->get('item_location'); + } - /** - * @param string|null $location - * @return void - */ - public function set_item_location(?string $location): void - { - $this->session->set('item_location',$location); - } + /** + * @param string|null $location + * @return void + */ + public function set_item_location(?string $location): void + { + $this->session->set('item_location',$location); + } - /** - * @return void - */ - public function clear_item_location(): void //TODO: This isn't called from anywhere in the code. - { - $this->session->remove('item_location'); - } + /** + * @return void + */ + public function clear_item_location(): void //TODO: This isn't called from anywhere in the code. + { + $this->session->remove('item_location'); + } } diff --git a/app/Libraries/MY_Email.php b/app/Libraries/MY_Email.php index 0dc6397ea..f93ed287a 100644 --- a/app/Libraries/MY_Email.php +++ b/app/Libraries/MY_Email.php @@ -5,46 +5,46 @@ use CodeIgniter\Email\Email; class MY_Email extends Email { - private string $default_cc_address = ''; - private string $default_email_address = ''; - private string $default_sender_name = ''; - private string $default_sender_address = ''; - private string $default_bounce_address = ''; + private string $default_cc_address = ''; + private string $default_email_address = ''; + private string $default_sender_name = ''; + private string $default_sender_address = ''; + private string $default_bounce_address = ''; - /** - * @param array $config - */ - public function __construct(array $config = []) - { - parent::__construct($config); - } + /** + * @param array $config + */ + public function __construct(array $config = []) + { + parent::__construct($config); + } - /** - * @param string $subject - * @param string $body - * @param string|null $to - * @param string|null $reply_name - * @param string|null $reply_mail - * @param string|null $attachment - * @return bool - */ - public function sendMail(string $subject, string $body, string $to = null, string $reply_name = null, string $reply_mail = null, string $attachment = null): bool - { - $this->setReplyTo($reply_mail, $reply_name); - $this->setFrom($this->default_sender_address, $this->default_sender_name, $this->default_bounce_address); - $this->setMailtype('html'); - $this->setSubject($subject); - $this->setMessage($body); - if($to == null) - { - $to = $this->default_email_address; - $this->setCc($this->default_cc_address); - } - if($attachment) - { - $this->attach($attachment); - } - $this->setTo($to); - return $this->send(); - } + /** + * @param string $subject + * @param string $body + * @param string|null $to + * @param string|null $reply_name + * @param string|null $reply_mail + * @param string|null $attachment + * @return bool + */ + public function sendMail(string $subject, string $body, string $to = null, string $reply_name = null, string $reply_mail = null, string $attachment = null): bool + { + $this->setReplyTo($reply_mail, $reply_name); + $this->setFrom($this->default_sender_address, $this->default_sender_name, $this->default_bounce_address); + $this->setMailtype('html'); + $this->setSubject($subject); + $this->setMessage($body); + if($to == null) + { + $to = $this->default_email_address; + $this->setCc($this->default_cc_address); + } + if($attachment) + { + $this->attach($attachment); + } + $this->setTo($to); + return $this->send(); + } } diff --git a/app/Libraries/MY_Language.php b/app/Libraries/MY_Language.php index 7124261c3..c5bc540d5 100644 --- a/app/Libraries/MY_Language.php +++ b/app/Libraries/MY_Language.php @@ -5,40 +5,40 @@ use CodeIgniter\Language\Language; class MY_Language extends Language { - public function getLine(string $line, array $args = []) - { + public function getLine(string $line, array $args = []) + { // if no file is given, just parse the line - if ( ! str_contains($line, '.')) - { - return $this->formatMessage($line, $args); - } + if ( ! str_contains($line, '.')) + { + return $this->formatMessage($line, $args); + } // Parse out the file name and the actual alias. // Will load the language file and strings. - [$file, $parsedLine] = $this->parseLine($line, $this->locale); + [$file, $parsedLine] = $this->parseLine($line, $this->locale); - $output = $this->getTranslationOutput($this->locale, $file, $parsedLine); + $output = $this->getTranslationOutput($this->locale, $file, $parsedLine); - if ($output === NULL && strpos($this->locale, '-')) - { - [$locale] = explode('-', $this->locale, 2); + if ($output === NULL && strpos($this->locale, '-')) + { + [$locale] = explode('-', $this->locale, 2); - [$file, $parsedLine] = $this->parseLine($line, $locale); + [$file, $parsedLine] = $this->parseLine($line, $locale); - $output = $this->getTranslationOutput($locale, $file, $parsedLine); - } + $output = $this->getTranslationOutput($locale, $file, $parsedLine); + } - // if still not found, try English - if ($output === NULL || $output === "") - { - [$file, $parsedLine] = $this->parseLine($line, 'en'); + // if still not found, try English + if ($output === NULL || $output === "") + { + [$file, $parsedLine] = $this->parseLine($line, 'en'); - $output = $this->getTranslationOutput('en', $file, $parsedLine); - } + $output = $this->getTranslationOutput('en', $file, $parsedLine); + } - $output ??= $line; + $output ??= $line; - return $this->formatMessage($output, $args); - } + return $this->formatMessage($output, $args); + } } diff --git a/app/Libraries/MY_Migration.php b/app/Libraries/MY_Migration.php index 52727ec0d..479652298 100644 --- a/app/Libraries/MY_Migration.php +++ b/app/Libraries/MY_Migration.php @@ -8,145 +8,145 @@ use stdClass; class MY_Migration extends MigrationRunner { - /** - * @return bool - */ - public function is_latest(): bool - { - $latest_version = $this->get_latest_migration(); - $current_version = $this->get_current_version(); + /** + * @return bool + */ + public function is_latest(): bool + { + $latest_version = $this->get_latest_migration(); + $current_version = $this->get_current_version(); - return $latest_version === $current_version; - } + return $latest_version === $current_version; + } - /** - * @return int - */ - public function get_latest_migration(): int - { - $migrations = $this->findMigrations(); - return basename(end($migrations)->version); - } + /** + * @return int + */ + public function get_latest_migration(): int + { + $migrations = $this->findMigrations(); + return basename(end($migrations)->version); + } - /** - * Gets the database version number - * - * @return int The version number of the last successfully run database migration. - */ - public static function get_current_version(): int - { - $db = Database::connect(); - if($db->tableExists('migrations')) - { - $builder = $db->table('migrations'); - $builder->select('version')->orderBy('version', 'DESC')->limit(1); - return $builder->get()->getRow()->version; - } + /** + * Gets the database version number + * + * @return int The version number of the last successfully run database migration. + */ + public static function get_current_version(): int + { + $db = Database::connect(); + if($db->tableExists('migrations')) + { + $builder = $db->table('migrations'); + $builder->select('version')->orderBy('version', 'DESC')->limit(1); + return $builder->get()->getRow()->version; + } - return 0; - } + return 0; + } - /** - * @return void - */ - public function migrate_to_ci4(): void - { - $ci3_migrations_version = $this->ci3_migrations_exists(); - if($ci3_migrations_version) - { - $this->migrate_table($ci3_migrations_version); - } - } + /** + * @return void + */ + public function migrate_to_ci4(): void + { + $ci3_migrations_version = $this->ci3_migrations_exists(); + if($ci3_migrations_version) + { + $this->migrate_table($ci3_migrations_version); + } + } - /** - * Checks to see if a ci3 version of the migrations table exists - * - * @return bool|string The version number of the last CI3 migration to run or false if the table is CI4 or doesn't exist - */ - private function ci3_migrations_exists(): bool|string - { - if($this->db->tableExists('migrations') && !$this->db->fieldExists('id','migrations')) - { - $builder = $this->db->table('migrations'); - $builder->select('version'); - return $builder->get()->getRow()->version; - } + /** + * Checks to see if a ci3 version of the migrations table exists + * + * @return bool|string The version number of the last CI3 migration to run or false if the table is CI4 or doesn't exist + */ + private function ci3_migrations_exists(): bool|string + { + if($this->db->tableExists('migrations') && !$this->db->fieldExists('id','migrations')) + { + $builder = $this->db->table('migrations'); + $builder->select('version'); + return $builder->get()->getRow()->version; + } - return false; - } + return false; + } - /** - * @param string $ci3_migrations_version - * @return void - */ - private function migrate_table(string $ci3_migrations_version): void - { - $this->convert_table(); + /** + * @param string $ci3_migrations_version + * @return void + */ + private function migrate_table(string $ci3_migrations_version): void + { + $this->convert_table(); - $available_migrations = $this->get_available_migrations(); + $available_migrations = $this->get_available_migrations(); - foreach($available_migrations as $version => $path) - { - if($version > (int)$ci3_migrations_version) - { - break; - } + foreach($available_migrations as $version => $path) + { + if($version > (int)$ci3_migrations_version) + { + break; + } - $migration = new stdClass(); - $migration->version = $version; - $migration->class = $path; - $migration->namespace = 'App'; + $migration = new stdClass(); + $migration->version = $version; + $migration->class = $path; + $migration->namespace = 'App'; - $this->addHistory($migration, 1); - } - } + $this->addHistory($migration, 1); + } + } - /** - * @return void - */ - public function up(): void - { - // TODO: Implement up() method. - } + /** + * @return void + */ + public function up(): void + { + // TODO: Implement up() method. + } - /** - * @return void - */ - public function down(): void - { - // TODO: Implement down() method. - } + /** + * @return void + */ + public function down(): void + { + // TODO: Implement down() method. + } - /** - * @return array - */ - private function get_available_migrations(): array - { - $migrations = $this->findMigrations(); - $exploded_migrations = []; + /** + * @return array + */ + private function get_available_migrations(): array + { + $migrations = $this->findMigrations(); + $exploded_migrations = []; - foreach($migrations as $migration) - { - $version = substr($migration->uid,0,14); - $path = substr($migration->uid, 14); + foreach($migrations as $migration) + { + $version = substr($migration->uid,0,14); + $path = substr($migration->uid, 14); - $exploded_migrations[$version] = $path; - } + $exploded_migrations[$version] = $path; + } - ksort($exploded_migrations); + ksort($exploded_migrations); - return $exploded_migrations; - } + return $exploded_migrations; + } - /** - * Converts the CI3 migrations database to CI4 - * @return void - */ - public function convert_table(): void - { - $forge = Database::forge(); - $forge->dropTable('migrations'); + /** + * Converts the CI3 migrations database to CI4 + * @return void + */ + public function convert_table(): void + { + $forge = Database::forge(); + $forge->dropTable('migrations'); - $this->ensureTable(); - } + $this->ensureTable(); + } } diff --git a/app/Libraries/Mailchimp_lib.php b/app/Libraries/Mailchimp_lib.php index d8d2b4949..fbbcaff6b 100644 --- a/app/Libraries/Mailchimp_lib.php +++ b/app/Libraries/Mailchimp_lib.php @@ -19,116 +19,116 @@ use Config\Services; */ class MailchimpConnector { - /** - * API Key - * - * @var string[] - */ - private $_api_key = ''; //TODO: Hungarian notation + /** + * API Key + * + * @var string[] + */ + private $_api_key = ''; //TODO: Hungarian notation - /** - * API Endpoint - * - * @var string[] - */ - private $_api_endpoint = 'https://.api.mailchimp.com/3.0/'; //TODO: Hungarian notation + /** + * API Endpoint + * + * @var string[] + */ + private $_api_endpoint = 'https://.api.mailchimp.com/3.0/'; //TODO: Hungarian notation - /** - * Constructor - */ - public function __construct(string $api_key = '') - { - $config = config(OSPOS::class)->settings; + /** + * Constructor + */ + public function __construct(string $api_key = '') + { + $config = config(OSPOS::class)->settings; - $encrypter = Services::encrypter(); + $encrypter = Services::encrypter(); - $mailchimp_api_key = (isset($this->config['mailchimp_api_key']) && !empty($this->config['mailchimp_api_key'])) - ? $this->config['mailchimp_api_key'] - : ''; + $mailchimp_api_key = (isset($this->config['mailchimp_api_key']) && !empty($this->config['mailchimp_api_key'])) + ? $this->config['mailchimp_api_key'] + : ''; - if(!empty($mailchimp_api_key)) - { - $this->_api_key = empty($api_key) - ? $encrypter->decrypt($mailchimp_api_key) //TODO: Hungarian notation - : $api_key; //TODO: Hungarian notation - } + if(!empty($mailchimp_api_key)) + { + $this->_api_key = empty($api_key) + ? $encrypter->decrypt($mailchimp_api_key) //TODO: Hungarian notation + : $api_key; //TODO: Hungarian notation + } - if(!empty($this->_api_key)) //TODO: Hungarian notation - { - // Replace with correct datacenter obtained from the last part of the api key - $strings = explode('-', $this->_api_key); //TODO: Hungarian notation - if(is_array($strings) && !empty($strings[1])) - { - $this->_api_endpoint = str_replace('', $strings[1], $this->_api_endpoint); //TODO: Hungarian notation - } - } - } + if(!empty($this->_api_key)) //TODO: Hungarian notation + { + // Replace with correct datacenter obtained from the last part of the api key + $strings = explode('-', $this->_api_key); //TODO: Hungarian notation + if(is_array($strings) && !empty($strings[1])) + { + $this->_api_endpoint = str_replace('', $strings[1], $this->_api_endpoint); //TODO: Hungarian notation + } + } + } - /** - * Call an API method. Every request needs the API key - * @param string $httpVerb The HTTP method to be used - * @param string $method The API method to call, e.g. 'lists/list' - * @param array $args An array of arguments to pass to the method. Will be json-encoded for you. - * @return array|bool Associative array of json decoded API response or false on error. - */ - public function call(string $method, string $httpVerb = 'POST', array $args = []): bool|array - { - if(!empty($this->_api_key)) //TODO: Hungarian notation - { - return $this->_request($httpVerb, $method, $args); //TODO: Hungarian notation - } + /** + * Call an API method. Every request needs the API key + * @param string $httpVerb The HTTP method to be used + * @param string $method The API method to call, e.g. 'lists/list' + * @param array $args An array of arguments to pass to the method. Will be json-encoded for you. + * @return array|bool Associative array of json decoded API response or false on error. + */ + public function call(string $method, string $httpVerb = 'POST', array $args = []): bool|array + { + if(!empty($this->_api_key)) //TODO: Hungarian notation + { + return $this->_request($httpVerb, $method, $args); //TODO: Hungarian notation + } - return false; - } + return false; + } - /** - * Builds the request URL based on request type - * @param string $httpVerb The HTTP method to be used - * @param string $method The API method to be called - * @param array $args Assoc array of parameters to be passed - * @return string Request URL - */ - private function _build_request_url(string $method, string $httpVerb = 'POST', array $args = []): string //TODO: Hungarian notation. - { - if($httpVerb == 'GET') - { - return $this->_api_endpoint . $method . '?' . http_build_query($args); //TODO: Hungarian notation - } + /** + * Builds the request URL based on request type + * @param string $httpVerb The HTTP method to be used + * @param string $method The API method to be called + * @param array $args Assoc array of parameters to be passed + * @return string Request URL + */ + private function _build_request_url(string $method, string $httpVerb = 'POST', array $args = []): string //TODO: Hungarian notation. + { + if($httpVerb == 'GET') + { + return $this->_api_endpoint . $method . '?' . http_build_query($args); //TODO: Hungarian notation + } - return $this->_api_endpoint . $method; //TODO: Hungarian notation - } + return $this->_api_endpoint . $method; //TODO: Hungarian notation + } - /** - * Performs the underlying HTTP request. - * @param string $httpVerb The HTTP method to be used - * @param string $method The API method to be called - * @param array $args Assoc array of parameters to be passed - * @return bool|array Assoc array of decoded result or False - */ - private function _request(string $httpVerb, string $method, array $args = []): bool|array //TODO: Hungarian notation - { - $result = false; + /** + * Performs the underlying HTTP request. + * @param string $httpVerb The HTTP method to be used + * @param string $method The API method to be called + * @param array $args Assoc array of parameters to be passed + * @return bool|array Assoc array of decoded result or False + */ + private function _request(string $httpVerb, string $method, array $args = []): bool|array //TODO: Hungarian notation + { + $result = false; - if(($ch = curl_init()) !== false) - { - curl_setopt($ch, CURLOPT_URL, $this->_build_request_url($method, $httpVerb, $args)); - curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']); - curl_setopt($ch, CURLOPT_USERPWD, "user:" . $this->_api_key); - curl_setopt($ch, CURLOPT_USERAGENT, 'PHP-MCAPI/3.0'); - curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); - curl_setopt($ch, CURLOPT_TIMEOUT, 10); - curl_setopt($ch, CURLOPT_POST, true); - curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, true); - curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($args)); - curl_setopt($ch, CURLOPT_CUSTOMREQUEST, $httpVerb); + if(($ch = curl_init()) !== false) + { + curl_setopt($ch, CURLOPT_URL, $this->_build_request_url($method, $httpVerb, $args)); + curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']); + curl_setopt($ch, CURLOPT_USERPWD, "user:" . $this->_api_key); + curl_setopt($ch, CURLOPT_USERAGENT, 'PHP-MCAPI/3.0'); + curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); + curl_setopt($ch, CURLOPT_TIMEOUT, 10); + curl_setopt($ch, CURLOPT_POST, true); + curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, true); + curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($args)); + curl_setopt($ch, CURLOPT_CUSTOMREQUEST, $httpVerb); - $result = curl_exec($ch); + $result = curl_exec($ch); - curl_close($ch); - } + curl_close($ch); + } - return $result ? json_decode($result, true) : false; - } + return $result ? json_decode($result, true) : false; + } } @@ -140,206 +140,206 @@ class MailchimpConnector * Inspired by the work of ThinkShout: https://github.com/thinkshout/mailchimp-api-php */ -class Mailchimp_lib //TODO: IMO We need to stick to the one class per file principle. +class Mailchimp_lib //TODO: IMO We need to stick to the one class per file principle. { - private $_connector; //TODO: Hungarian notation + private $_connector; //TODO: Hungarian notation - /** - * @param array $params - */ - public function __construct(array $params = []) - { - $api_key = (count($params) > 0 && !empty($params['api_key'])) ? $params['api_key'] : ''; - $this->_connector = new MailchimpConnector($api_key); - } + /** + * @param array $params + */ + public function __construct(array $params = []) + { + $api_key = (count($params) > 0 && !empty($params['api_key'])) ? $params['api_key'] : ''; + $this->_connector = new MailchimpConnector($api_key); + } - /** - * Gets information about all lists owned by the authenticated account. - * - * @param array $parameters - * Associative array of optional request parameters. - * By the default it places a simple query to list name & id and count of members & merge_fields - * NOTE: no space between , and next word is allowed. You will not get the filter to work in full but just the first tag - * @return array|bool - * @see http://developer.mailchimp.com/documentation/mailchimp/reference/lists/#read-get_lists - */ - public function getLists(array $parameters = ['fields' => 'lists.id,lists.name,lists.stats.member_count,lists.stats.merge_field_count']): bool|array - { - return $this->_connector->call('/lists', 'GET', $parameters); //TODO: Hungarian notation - } + /** + * Gets information about all lists owned by the authenticated account. + * + * @param array $parameters + * Associative array of optional request parameters. + * By the default it places a simple query to list name & id and count of members & merge_fields + * NOTE: no space between , and next word is allowed. You will not get the filter to work in full but just the first tag + * @return array|bool + * @see http://developer.mailchimp.com/documentation/mailchimp/reference/lists/#read-get_lists + */ + public function getLists(array $parameters = ['fields' => 'lists.id,lists.name,lists.stats.member_count,lists.stats.merge_field_count']): bool|array + { + return $this->_connector->call('/lists', 'GET', $parameters); //TODO: Hungarian notation + } - /** - * Gets a MailChimp list. - * - * @param string $list_id - * The ID of the list. - * @param array $parameters Associative array of optional request parameters. - * @return array|bool - * @see http://developer.mailchimp.com/documentation/mailchimp/reference/lists/#read-get_lists_list_id - */ - public function getList(string $list_id, array $parameters = ['fields' => 'id,name,stats.member_count,stats.merge_field_count']): bool|array - { - return $this->_connector->call("/lists/$list_id", 'GET', $parameters); //TODO: Hungarian notation - } + /** + * Gets a MailChimp list. + * + * @param string $list_id + * The ID of the list. + * @param array $parameters Associative array of optional request parameters. + * @return array|bool + * @see http://developer.mailchimp.com/documentation/mailchimp/reference/lists/#read-get_lists_list_id + */ + public function getList(string $list_id, array $parameters = ['fields' => 'id,name,stats.member_count,stats.merge_field_count']): bool|array + { + return $this->_connector->call("/lists/$list_id", 'GET', $parameters); //TODO: Hungarian notation + } - /** - * Gets information about all members of a MailChimp list. - * - * @param string $list_id - * The ID of the list. - * @param array $parameters - * Associative array of optional request parameters. - * @return array|bool - * @see http://developer.mailchimp.com/documentation/mailchimp/reference/lists/members/#read-get_lists_list_id_members - */ - public function getMembers(string $list_id, int $count, int $offset, array $parameters = ['fields' => 'members.id,members.email_address,members.unique_email_id,members.status,members.merge_fields']): bool|array - { - $parameters += [ - 'count' => $count, - 'offset' => $offset - ]; + /** + * Gets information about all members of a MailChimp list. + * + * @param string $list_id + * The ID of the list. + * @param array $parameters + * Associative array of optional request parameters. + * @return array|bool + * @see http://developer.mailchimp.com/documentation/mailchimp/reference/lists/members/#read-get_lists_list_id_members + */ + public function getMembers(string $list_id, int $count, int $offset, array $parameters = ['fields' => 'members.id,members.email_address,members.unique_email_id,members.status,members.merge_fields']): bool|array + { + $parameters += [ + 'count' => $count, + 'offset' => $offset + ]; - return $this->_connector->call("/lists/$list_id/members", 'GET', $parameters); //TODO: Hungarian notation - } + return $this->_connector->call("/lists/$list_id/members", 'GET', $parameters); //TODO: Hungarian notation + } - /** - * Gets information about a member of a MailChimp list. - * - * @param string $list_id - * The ID of the list. - * @param string $md5id - * The member's email address md5 hash which is the id. - * @param array $parameters - * Associative array of optional request parameters. - * @return array|bool - * @see http://developer.mailchimp.com/documentation/mailchimp/reference/lists/members/#read-get_lists_list_id_members_subscriber_hash - */ - public function getMemberInfoById(string $list_id, string $md5id, array $parameters = ['fields' => 'email_address,status,merge_fields']): bool|array - { - return $this->_connector->call("/lists/$list_id/members/$md5id", 'GET', $parameters); //TODO: Hungarian notation - } + /** + * Gets information about a member of a MailChimp list. + * + * @param string $list_id + * The ID of the list. + * @param string $md5id + * The member's email address md5 hash which is the id. + * @param array $parameters + * Associative array of optional request parameters. + * @return array|bool + * @see http://developer.mailchimp.com/documentation/mailchimp/reference/lists/members/#read-get_lists_list_id_members_subscriber_hash + */ + public function getMemberInfoById(string $list_id, string $md5id, array $parameters = ['fields' => 'email_address,status,merge_fields']): bool|array + { + return $this->_connector->call("/lists/$list_id/members/$md5id", 'GET', $parameters); //TODO: Hungarian notation + } - /** - * Gets information about a member of a MailChimp list. - * - * @param string $list_id - * The ID of the list. - * @param string $email - * The member's email address. - * @param array $parameters - * Associative array of optional request parameters. - * @return array|bool - * @see http://developer.mailchimp.com/documentation/mailchimp/reference/lists/members/#read-get_lists_list_id_members_subscriber_hash - */ - public function getMemberInfo(string $list_id, string $email, array $parameters = []): bool|array - { - return $this->_connector->call("/lists/$list_id/members/" . md5(strtolower($email)), 'GET', $parameters); - } + /** + * Gets information about a member of a MailChimp list. + * + * @param string $list_id + * The ID of the list. + * @param string $email + * The member's email address. + * @param array $parameters + * Associative array of optional request parameters. + * @return array|bool + * @see http://developer.mailchimp.com/documentation/mailchimp/reference/lists/members/#read-get_lists_list_id_members_subscriber_hash + */ + public function getMemberInfo(string $list_id, string $email, array $parameters = []): bool|array + { + return $this->_connector->call("/lists/$list_id/members/" . md5(strtolower($email)), 'GET', $parameters); + } - /** - * Gets activity related to a member of a MailChimp list. - * - * @param string $list_id The ID of the list. - * @param string $email The member's email address. - * @param array $parameters Associative array of optional request parameters. - * @return array|bool Associative array of results or false. - * @see http://developer.mailchimp.com/documentation/mailchimp/reference/lists/members/activity/#read-get_lists_list_id_members_subscriber_hash_activity - */ - public function getMemberActivity(string $list_id, string $email, array $parameters = []): bool|array - { - return $this->_connector->call("/lists/$list_id/members/" . md5(strtolower($email)) . '/activity', 'GET', $parameters); //TODO: Hungarian notation - } + /** + * Gets activity related to a member of a MailChimp list. + * + * @param string $list_id The ID of the list. + * @param string $email The member's email address. + * @param array $parameters Associative array of optional request parameters. + * @return array|bool Associative array of results or false. + * @see http://developer.mailchimp.com/documentation/mailchimp/reference/lists/members/activity/#read-get_lists_list_id_members_subscriber_hash_activity + */ + public function getMemberActivity(string $list_id, string $email, array $parameters = []): bool|array + { + return $this->_connector->call("/lists/$list_id/members/" . md5(strtolower($email)) . '/activity', 'GET', $parameters); //TODO: Hungarian notation + } - /** - * Adds a new member to a MailChimp list. - * - * @param string $list_id - * The ID of the list. - * @param string $email - * The email address to add. - * @param array $parameters - * Associative array of optional request parameters. - * @return array|bool - * @see http://developer.mailchimp.com/documentation/mailchimp/reference/lists/members/#create-post_lists_list_id_members - */ - public function addMember(string $list_id, string $email, string $first_name, string $last_name, array $parameters = []): bool|array - { - $parameters += [ - 'email_address' => $email, - 'status' => 'subscribed', - 'merge_fields' => [ - 'FNAME' => $first_name, - 'LNAME' => $last_name - ] - ]; + /** + * Adds a new member to a MailChimp list. + * + * @param string $list_id + * The ID of the list. + * @param string $email + * The email address to add. + * @param array $parameters + * Associative array of optional request parameters. + * @return array|bool + * @see http://developer.mailchimp.com/documentation/mailchimp/reference/lists/members/#create-post_lists_list_id_members + */ + public function addMember(string $list_id, string $email, string $first_name, string $last_name, array $parameters = []): bool|array + { + $parameters += [ + 'email_address' => $email, + 'status' => 'subscribed', + 'merge_fields' => [ + 'FNAME' => $first_name, + 'LNAME' => $last_name + ] + ]; - return $this->_connector->call("/lists/$list_id/members/", 'POST', $parameters); //TODO: Hungarian notation - } + return $this->_connector->call("/lists/$list_id/members/", 'POST', $parameters); //TODO: Hungarian notation + } - /** - * Removes a member from a MailChimp list. - * - * @param string $list_id - * The ID of the list. - * @param string $email - * The member's email address. - * @return array|bool - * @see http://developer.mailchimp.com/documentation/mailchimp/reference/lists/members/#delete-delete_lists_list_id_members_subscriber_hash - */ - public function removeMember(string $list_id, string $email): bool|array - { - return $this->_connector->call("/lists/$list_id/members/" . md5(strtolower($email)), 'DELETE'); //TODO: Hungarian notation - } + /** + * Removes a member from a MailChimp list. + * + * @param string $list_id + * The ID of the list. + * @param string $email + * The member's email address. + * @return array|bool + * @see http://developer.mailchimp.com/documentation/mailchimp/reference/lists/members/#delete-delete_lists_list_id_members_subscriber_hash + */ + public function removeMember(string $list_id, string $email): bool|array + { + return $this->_connector->call("/lists/$list_id/members/" . md5(strtolower($email)), 'DELETE'); //TODO: Hungarian notation + } - /** - * Updates a member of a MailChimp list. - * - * @param string $list_id - * The ID of the list. - * @param string $email - * The member's email address. - * @param array $parameters - * Associative array of optional request parameters. - * @return array|bool - * @see http://developer.mailchimp.com/documentation/mailchimp/reference/lists/members/#edit-patch_lists_list_id_members_subscriber_hash - */ - public function updateMember(string $list_id, string $email, string $first_name, string $last_name, array $parameters = []): bool|array - { - $parameters += [ - 'status' => 'subscribed', - 'merge_fields' => [ - 'FNAME' => $first_name, - 'LNAME' => $last_name - ] - ]; + /** + * Updates a member of a MailChimp list. + * + * @param string $list_id + * The ID of the list. + * @param string $email + * The member's email address. + * @param array $parameters + * Associative array of optional request parameters. + * @return array|bool + * @see http://developer.mailchimp.com/documentation/mailchimp/reference/lists/members/#edit-patch_lists_list_id_members_subscriber_hash + */ + public function updateMember(string $list_id, string $email, string $first_name, string $last_name, array $parameters = []): bool|array + { + $parameters += [ + 'status' => 'subscribed', + 'merge_fields' => [ + 'FNAME' => $first_name, + 'LNAME' => $last_name + ] + ]; - return $this->_connector->call("/lists/$list_id/members/" . md5(strtolower($email)), 'PATCH', $parameters); //TODO: Hungarian notation - } + return $this->_connector->call("/lists/$list_id/members/" . md5(strtolower($email)), 'PATCH', $parameters); //TODO: Hungarian notation + } - /** - * Adds a new or update an existing member of a MailChimp list. - * - * @param string $list_id - * The ID of the list. - * @param string $email - * The member's email address. - * @param array $parameters - * Associative array of optional request parameters. - * @return array|bool - * @see http://developer.mailchimp.com/documentation/mailchimp/reference/lists/members/#edit-put_lists_list_id_members_subscriber_hash - */ - public function addOrUpdateMember(string $list_id, string $email, string $first_name, string $last_name, string $status, array $parameters = []): bool|array - { - $parameters += [ - 'email_address' => $email, - 'status' => $status, - 'status_if_new' => 'subscribed', - 'merge_fields' => [ - 'FNAME' => $first_name, - 'LNAME' => $last_name - ] - ]; + /** + * Adds a new or update an existing member of a MailChimp list. + * + * @param string $list_id + * The ID of the list. + * @param string $email + * The member's email address. + * @param array $parameters + * Associative array of optional request parameters. + * @return array|bool + * @see http://developer.mailchimp.com/documentation/mailchimp/reference/lists/members/#edit-put_lists_list_id_members_subscriber_hash + */ + public function addOrUpdateMember(string $list_id, string $email, string $first_name, string $last_name, string $status, array $parameters = []): bool|array + { + $parameters += [ + 'email_address' => $email, + 'status' => $status, + 'status_if_new' => 'subscribed', + 'merge_fields' => [ + 'FNAME' => $first_name, + 'LNAME' => $last_name + ] + ]; - return $this->_connector->call("/lists/$list_id/members/" . md5(strtolower($email)), 'PUT', $parameters); //TODO: Hungarian notation - } + return $this->_connector->call("/lists/$list_id/members/" . md5(strtolower($email)), 'PUT', $parameters); //TODO: Hungarian notation + } } diff --git a/app/Libraries/Receiving_lib.php b/app/Libraries/Receiving_lib.php index 5a9b4b903..4d2e4f4fd 100644 --- a/app/Libraries/Receiving_lib.php +++ b/app/Libraries/Receiving_lib.php @@ -19,539 +19,539 @@ use Config\OSPOS; */ class Receiving_lib { - private Attribute $attribute; - private Item $item; - private Item_kit_items $item_kit_items; - private Item_quantity $item_quantity; - private Receiving $receiving; - private Stock_location $stock_location; - private Session $session; - - public function __construct() - { - $this->attribute = model(Attribute::class); - $this->item = model(Item::class); - $this->item_kit_items = model(Item_kit_items::class); - $this->item_quantity = model(Item_quantity::class); - $this->receiving = model(Receiving::class); - $this->stock_location = model(Stock_location::class); - - $this->session = session(); - } - - /** - * @return array - */ - public function get_cart(): array - { - if(!$this->session->get('recv_cart')) - { - $this->set_cart ([]); - } - - return $this->session->get('recv_cart'); - } - - /** - * @param array $cart_data - * @return void - */ - public function set_cart(array $cart_data): void - { - $this->session->set('recv_cart', $cart_data); - } - - /** - * @return void - */ - public function empty_cart(): void - { - $this->session->remove('recv_cart'); - } - - /** - * @return int - */ - public function get_supplier(): int - { - if(!$this->session->get('recv_supplier')) - { - $this->set_supplier(-1); //TODO: Replace -1 with a constant. - } - - return $this->session->get('recv_supplier'); - } - - /** - * @param int $supplier_id - * @return void - */ - public function set_supplier(int $supplier_id): void - { - $this->session->set('recv_supplier', $supplier_id); - } - - /** - * @return void - */ - public function remove_supplier(): void - { - $this->session->remove('recv_supplier'); - } - - /** - * @return string - */ - public function get_mode(): string - { - if(!$this->session->get('recv_mode')) - { - $this->set_mode('receive'); - } - - return $this->session->get('recv_mode'); - } - - /** - * @param string $mode - * @return void - */ - public function set_mode(string $mode): void - { - $this->session->set('recv_mode', $mode); - } - - /** - * @return void - */ - public function clear_mode(): void //TODO: This function verb is inconsistent from the others. Consider refactoring to remove_mode() - { - $this->session->remove('recv_mode'); - } - - /** - * @return int - */ - public function get_stock_source(): int - { - if(!$this->session->get('recv_stock_source')) - { - $this->set_stock_source($this->stock_location->get_default_location_id('receivings')); - } - - return $this->session->get('recv_stock_source'); - } - - /** - * @return string - */ - public function get_comment(): string - { - $comment = $this->session->get('recv_comment'); - - return empty($comment) ? '' : $comment; - } - - /** - * @param string $comment - * @return void - */ - public function set_comment(string $comment): void - { - $this->session->set('recv_comment', $comment); - } - - /** - * @return void - */ - public function clear_comment(): void //TODO: This function verb is inconsistent from the others. Consider refactoring to remove_comment() - { - $this->session->remove('recv_comment'); - } - - /** - * @return string - */ - public function get_reference(): string - { - return $this->session->get('recv_reference') ?? ''; - } - - /** - * @param string $reference - * @return void - */ - public function set_reference(string $reference): void - { - $this->session->set('recv_reference', $reference); - } - - /** - * @return void - */ - public function clear_reference(): void //TODO: This function verb is inconsistent from the others. Consider refactoring to remove_reference() - { - $this->session->remove('recv_reference'); - } - - /** - * @return bool - */ - public function is_print_after_sale(): bool - { - return $this->session->get('recv_print_after_sale') == 'true' - || $this->session->get('recv_print_after_sale') == '1'; - } - - /** - * @param bool $print_after_sale - * @return void - */ - public function set_print_after_sale(bool $print_after_sale): void - { - $this->session->set('recv_print_after_sale', $print_after_sale); - } - - /** - * @param int $stock_source - * @return void - */ - public function set_stock_source(int $stock_source): void - { - $this->session->set('recv_stock_source', $stock_source); - } - - /** - * @return void - */ - public function clear_stock_source(): void - { - $this->session->remove('recv_stock_source'); - } - - /** - * @return string - */ - public function get_stock_destination(): string - { - if(!$this->session->get('recv_stock_destination')) - { - $this->set_stock_destination($this->stock_location->get_default_location_id('receivings')); - } - - return $this->session->get('recv_stock_destination'); - } - - /** - * @param string $stock_destination - * @return void - */ - public function set_stock_destination(?string $stock_destination): void - { - $this->session->set('recv_stock_destination', $stock_destination); - } - - /** - * @return void - */ - public function clear_stock_destination(): void - { - $this->session->remove('recv_stock_destination'); - } - //TODO: This array signature needs to be reworked. It's way too long. Perhaps an object needs to be passed rather than these? - - /** - * @param int $item_id - * @param int $quantity - * @param int|null $item_location - * @param float $discount - * @param int $discount_type - * @param float|null $price - * @param string|null $description - * @param string|null $serialnumber - * @param float|null $receiving_quantity - * @param int|null $receiving_id - * @param bool $include_deleted - * @return bool - */ - public function add_item(int $item_id, int $quantity = 1, int $item_location = null, float $discount = 0, int $discount_type = 0, float $price = null, string $description = null, string $serialnumber = null, float $receiving_quantity = null, int $receiving_id = null, bool $include_deleted = false): bool - { - $config = config(OSPOS::class)->settings; - - //make sure item exists in database. - if(!$this->item->exists($item_id, $include_deleted)) - { - //try to get item id given an item_number - $item_id = $this->item->get_item_id($item_id, $include_deleted); - - if(!$item_id) - { - return false; - } - } - - //Get items in the receiving so far. - $items = $this->get_cart(); - - //We need to loop through all items in the cart. - //If the item is already there, get it's key($updatekey). - //We also need to get the next key that we are going to use in case we need to add the - //item to the list. Since items can be deleted, we can't use a count. we use the highest key + 1. - - $maxkey = 0; //Highest key so far - $itemalreadyinsale = false; //We did not find the item yet. - $updatekey = 0; //Key to use to update(quantity) - - foreach($items as $item) - { - //We primed the loop so maxkey is 0 the first time. - //Also, we have stored the key in the element itself, so we can compare. - //There is an array public function to get the associated key for an element, but I like it better - //like that! - - if($maxkey <= $item['line']) - { - $maxkey = $item['line']; - } - - if($item['item_id'] == $item_id && $item['item_location'] == $item_location) - { - $itemalreadyinsale = true; - $updatekey = $item['line']; - } - } - - $insertkey = $maxkey + 1; - $item_info = $this->item->get_info($item_id); - - //array records are identified by $insertkey and item_id is just another field. - $price = $price != null ? $price : $item_info->cost_price; - - if($config['multi_pack_enabled']) - { - $item_info->name .= NAME_SEPARATOR . $item_info->pack_name; - } - - if ($item_info->receiving_quantity == 0 || $item_info->receiving_quantity == 1) - { - $receiving_quantity_choices = [1 => 'x1']; - } - else - { - $receiving_quantity_choices = [ - to_quantity_decimals($item_info->receiving_quantity) => 'x' . to_quantity_decimals($item_info->receiving_quantity), - 1 => 'x1' - ]; - } - - if(is_null($receiving_quantity)) - { - $receiving_quantity = $item_info->receiving_quantity; - } - - $attribute_links = $this->attribute->get_link_values($item_id, 'receiving_id', $receiving_id, Attribute::SHOW_IN_RECEIVINGS)->getRowObject(); - - $item = [ - $insertkey => [ - 'item_id' => $item_id, - 'item_location' => $item_location, - 'item_number' => $item_info->item_number, - 'stock_name' => $this->stock_location->get_location_name($item_location), - 'line' => $insertkey, - 'name' => $item_info->name, - 'description' => $description != null ? $description: $item_info->description, - 'serialnumber' => $serialnumber != null ? $serialnumber: '', - 'attribute_values' => $attribute_links->attribute_values, - 'attribute_dtvalues' => $attribute_links->attribute_dtvalues, - 'allow_alt_description' => $item_info->allow_alt_description, - 'is_serialized' => $item_info->is_serialized, - 'quantity' => $quantity, - 'discount' => $discount, - 'discount_type' => $discount_type, - 'in_stock' => $this->item_quantity->get_item_quantity($item_id, $item_location)->quantity, - 'price' => $price, - 'receiving_quantity' => $receiving_quantity, - 'receiving_quantity_choices' => $receiving_quantity_choices, - 'total' => $this->get_item_total($quantity, $price, $discount, $discount_type, $receiving_quantity) - ] - ]; - - //Item already exists - if($itemalreadyinsale) //TODO: This variable does not adhere to naming conventions. - { - $items[$updatekey]['quantity'] += $quantity; - $items[$updatekey]['total'] = $this->get_item_total($items[$updatekey]['quantity'], $price, $discount, $discount_type, $items[$updatekey]['receiving_quantity']); - } - else - { - //add to existing array - $items += $item; - } - - $this->set_cart($items); - - return true; - } - - /** - * @param $line - * @param string $description - * @param string $serialnumber - * @param float $quantity - * @param float $discount - * @param int|null $discount_type - * @param float $price - * @param float $receiving_quantity - * @return bool - */ - public function edit_item($line, string $description, string $serialnumber, float $quantity, float $discount, ?int $discount_type, float $price, float $receiving_quantity): bool - { - $items = $this->get_cart(); - if(isset($items[$line])) - { - $line = &$items[$line]; - $line['description'] = $description; - $line['serialnumber'] = $serialnumber; - $line['quantity'] = $quantity; - $line['receiving_quantity'] = $receiving_quantity; - $line['discount'] = $discount; - - if(!is_null($discount_type)) - { - $line['discount_type'] = $discount_type; - } - - $line['price'] = $price; - $line['total'] = $this->get_item_total($quantity, $price, $discount, $discount_type, $receiving_quantity); - $this->set_cart($items); - } - - return false; //TODO: This function will always return false. - } - - /** - * @param $line int|string The item_number or item_id of the item to be removed from the receiving. - */ - public function delete_item($line): void - { - $items = $this->get_cart(); - unset($items[$line]); - $this->set_cart($items); - } - - /** - * @param int $receipt_receiving_id - * @return void - */ - public function return_entire_receiving(int $receipt_receiving_id): void - { - //RECV # - $pieces = explode(' ', $receipt_receiving_id); - - if(preg_match("/(RECV|KIT)/", $pieces[0])) //TODO: this needs to be converted to ternary notation. - { - $receiving_id = $pieces[1]; - } - else - { - $receiving_id = $this->receiving->get_receiving_by_reference($receipt_receiving_id)->getRow()->receiving_id; - } - - $this->empty_cart(); - $this->remove_supplier(); - $this->clear_comment(); - - foreach($this->receiving->get_receiving_items($receiving_id)->getResult() as $row) - { - $this->add_item($row->item_id, -$row->quantity_purchased, $row->item_location, $row->discount, $row->discount_type, $row->item_unit_price, $row->description, $row->serialnumber, $row->receiving_quantity, $receiving_id, true); - } - - $this->set_supplier($this->receiving->get_supplier($receiving_id)->person_id); - } - - /** - * @param string $external_item_kit_id - * @param int $item_location - * @param float $discount - * @param int $discount_type - * @return void - */ - public function add_item_kit(string $external_item_kit_id, int $item_location, float $discount, int $discount_type): void - { - //KIT # - $pieces = explode(' ',$external_item_kit_id); - $item_kit_id = count($pieces) > 1 ? $pieces[1] : $external_item_kit_id; - - foreach($this->item_kit_items->get_info($item_kit_id) as $item_kit_item) - { - $this->add_item($item_kit_item['item_id'], $item_kit_item['quantity'], $item_location, $discount, $discount_type); - } - } - - /** - * @param int $receiving_id - * @return void - */ - public function copy_entire_receiving(int $receiving_id): void - { - $this->empty_cart(); - $this->remove_supplier(); - - foreach($this->receiving->get_receiving_items($receiving_id)->getResult() as $row) - { - $this->add_item($row->item_id, $row->quantity_purchased, $row->item_location, $row->discount, $row->discount_type, $row->item_unit_price, $row->description, $row->serialnumber, $row->receiving_quantity, $receiving_id, true); - } - - $this->set_supplier((int) $this->receiving->get_supplier($receiving_id)->person_id); - //$this->set_reference($this->receiving->get_info($receiving_id)->getRow()->reference); //TODO: If this code won't be added back in, then let's delete it. - } - - /** - * @return void - */ - public function clear_all(): void - { - $this->clear_mode(); - $this->empty_cart(); - $this->remove_supplier(); - $this->clear_comment(); - $this->clear_reference(); - } - - /** - * @param float $quantity - * @param float $price - * @param float $discount - * @param int|null $discount_type - * @param float $receiving_quantity - * @return string - */ - public function get_item_total(float $quantity, float $price, float $discount, ?int $discount_type, float $receiving_quantity): string - { - $extended_quantity = bcmul($quantity, $receiving_quantity); - $total = bcmul($extended_quantity, $price); - $discount_amount = $discount; - - if($discount_type == PERCENT) //TODO: === ? - { - $discount_fraction = bcdiv($discount, 100); - $discount_amount = bcmul($total, $discount_fraction); - } - - return bcsub($total, $discount_amount); - } - - /** - * @return string - */ - public function get_total(): string - { - $total = 0; - foreach($this->get_cart() as $item) - { - $total = bcadd($total, $this->get_item_total(($item['quantity']), $item['price'], $item['discount'], $item['discount_type'], $item['receiving_quantity'])); - } - - return $total; - } + private Attribute $attribute; + private Item $item; + private Item_kit_items $item_kit_items; + private Item_quantity $item_quantity; + private Receiving $receiving; + private Stock_location $stock_location; + private Session $session; + + public function __construct() + { + $this->attribute = model(Attribute::class); + $this->item = model(Item::class); + $this->item_kit_items = model(Item_kit_items::class); + $this->item_quantity = model(Item_quantity::class); + $this->receiving = model(Receiving::class); + $this->stock_location = model(Stock_location::class); + + $this->session = session(); + } + + /** + * @return array + */ + public function get_cart(): array + { + if(!$this->session->get('recv_cart')) + { + $this->set_cart ([]); + } + + return $this->session->get('recv_cart'); + } + + /** + * @param array $cart_data + * @return void + */ + public function set_cart(array $cart_data): void + { + $this->session->set('recv_cart', $cart_data); + } + + /** + * @return void + */ + public function empty_cart(): void + { + $this->session->remove('recv_cart'); + } + + /** + * @return int + */ + public function get_supplier(): int + { + if(!$this->session->get('recv_supplier')) + { + $this->set_supplier(-1); //TODO: Replace -1 with a constant. + } + + return $this->session->get('recv_supplier'); + } + + /** + * @param int $supplier_id + * @return void + */ + public function set_supplier(int $supplier_id): void + { + $this->session->set('recv_supplier', $supplier_id); + } + + /** + * @return void + */ + public function remove_supplier(): void + { + $this->session->remove('recv_supplier'); + } + + /** + * @return string + */ + public function get_mode(): string + { + if(!$this->session->get('recv_mode')) + { + $this->set_mode('receive'); + } + + return $this->session->get('recv_mode'); + } + + /** + * @param string $mode + * @return void + */ + public function set_mode(string $mode): void + { + $this->session->set('recv_mode', $mode); + } + + /** + * @return void + */ + public function clear_mode(): void //TODO: This function verb is inconsistent from the others. Consider refactoring to remove_mode() + { + $this->session->remove('recv_mode'); + } + + /** + * @return int + */ + public function get_stock_source(): int + { + if(!$this->session->get('recv_stock_source')) + { + $this->set_stock_source($this->stock_location->get_default_location_id('receivings')); + } + + return $this->session->get('recv_stock_source'); + } + + /** + * @return string + */ + public function get_comment(): string + { + $comment = $this->session->get('recv_comment'); + + return empty($comment) ? '' : $comment; + } + + /** + * @param string $comment + * @return void + */ + public function set_comment(string $comment): void + { + $this->session->set('recv_comment', $comment); + } + + /** + * @return void + */ + public function clear_comment(): void //TODO: This function verb is inconsistent from the others. Consider refactoring to remove_comment() + { + $this->session->remove('recv_comment'); + } + + /** + * @return string + */ + public function get_reference(): string + { + return $this->session->get('recv_reference') ?? ''; + } + + /** + * @param string $reference + * @return void + */ + public function set_reference(string $reference): void + { + $this->session->set('recv_reference', $reference); + } + + /** + * @return void + */ + public function clear_reference(): void //TODO: This function verb is inconsistent from the others. Consider refactoring to remove_reference() + { + $this->session->remove('recv_reference'); + } + + /** + * @return bool + */ + public function is_print_after_sale(): bool + { + return $this->session->get('recv_print_after_sale') == 'true' + || $this->session->get('recv_print_after_sale') == '1'; + } + + /** + * @param bool $print_after_sale + * @return void + */ + public function set_print_after_sale(bool $print_after_sale): void + { + $this->session->set('recv_print_after_sale', $print_after_sale); + } + + /** + * @param int $stock_source + * @return void + */ + public function set_stock_source(int $stock_source): void + { + $this->session->set('recv_stock_source', $stock_source); + } + + /** + * @return void + */ + public function clear_stock_source(): void + { + $this->session->remove('recv_stock_source'); + } + + /** + * @return string + */ + public function get_stock_destination(): string + { + if(!$this->session->get('recv_stock_destination')) + { + $this->set_stock_destination($this->stock_location->get_default_location_id('receivings')); + } + + return $this->session->get('recv_stock_destination'); + } + + /** + * @param string $stock_destination + * @return void + */ + public function set_stock_destination(?string $stock_destination): void + { + $this->session->set('recv_stock_destination', $stock_destination); + } + + /** + * @return void + */ + public function clear_stock_destination(): void + { + $this->session->remove('recv_stock_destination'); + } + //TODO: This array signature needs to be reworked. It's way too long. Perhaps an object needs to be passed rather than these? + + /** + * @param int $item_id + * @param int $quantity + * @param int|null $item_location + * @param float $discount + * @param int $discount_type + * @param float|null $price + * @param string|null $description + * @param string|null $serialnumber + * @param float|null $receiving_quantity + * @param int|null $receiving_id + * @param bool $include_deleted + * @return bool + */ + public function add_item(int $item_id, int $quantity = 1, int $item_location = null, float $discount = 0, int $discount_type = 0, float $price = null, string $description = null, string $serialnumber = null, float $receiving_quantity = null, int $receiving_id = null, bool $include_deleted = false): bool + { + $config = config(OSPOS::class)->settings; + + //make sure item exists in database. + if(!$this->item->exists($item_id, $include_deleted)) + { + //try to get item id given an item_number + $item_id = $this->item->get_item_id($item_id, $include_deleted); + + if(!$item_id) + { + return false; + } + } + + //Get items in the receiving so far. + $items = $this->get_cart(); + + //We need to loop through all items in the cart. + //If the item is already there, get it's key($updatekey). + //We also need to get the next key that we are going to use in case we need to add the + //item to the list. Since items can be deleted, we can't use a count. we use the highest key + 1. + + $maxkey = 0; //Highest key so far + $itemalreadyinsale = false; //We did not find the item yet. + $updatekey = 0; //Key to use to update(quantity) + + foreach($items as $item) + { + //We primed the loop so maxkey is 0 the first time. + //Also, we have stored the key in the element itself, so we can compare. + //There is an array public function to get the associated key for an element, but I like it better + //like that! + + if($maxkey <= $item['line']) + { + $maxkey = $item['line']; + } + + if($item['item_id'] == $item_id && $item['item_location'] == $item_location) + { + $itemalreadyinsale = true; + $updatekey = $item['line']; + } + } + + $insertkey = $maxkey + 1; + $item_info = $this->item->get_info($item_id); + + //array records are identified by $insertkey and item_id is just another field. + $price = $price != null ? $price : $item_info->cost_price; + + if($config['multi_pack_enabled']) + { + $item_info->name .= NAME_SEPARATOR . $item_info->pack_name; + } + + if ($item_info->receiving_quantity == 0 || $item_info->receiving_quantity == 1) + { + $receiving_quantity_choices = [1 => 'x1']; + } + else + { + $receiving_quantity_choices = [ + to_quantity_decimals($item_info->receiving_quantity) => 'x' . to_quantity_decimals($item_info->receiving_quantity), + 1 => 'x1' + ]; + } + + if(is_null($receiving_quantity)) + { + $receiving_quantity = $item_info->receiving_quantity; + } + + $attribute_links = $this->attribute->get_link_values($item_id, 'receiving_id', $receiving_id, Attribute::SHOW_IN_RECEIVINGS)->getRowObject(); + + $item = [ + $insertkey => [ + 'item_id' => $item_id, + 'item_location' => $item_location, + 'item_number' => $item_info->item_number, + 'stock_name' => $this->stock_location->get_location_name($item_location), + 'line' => $insertkey, + 'name' => $item_info->name, + 'description' => $description != null ? $description: $item_info->description, + 'serialnumber' => $serialnumber != null ? $serialnumber: '', + 'attribute_values' => $attribute_links->attribute_values, + 'attribute_dtvalues' => $attribute_links->attribute_dtvalues, + 'allow_alt_description' => $item_info->allow_alt_description, + 'is_serialized' => $item_info->is_serialized, + 'quantity' => $quantity, + 'discount' => $discount, + 'discount_type' => $discount_type, + 'in_stock' => $this->item_quantity->get_item_quantity($item_id, $item_location)->quantity, + 'price' => $price, + 'receiving_quantity' => $receiving_quantity, + 'receiving_quantity_choices' => $receiving_quantity_choices, + 'total' => $this->get_item_total($quantity, $price, $discount, $discount_type, $receiving_quantity) + ] + ]; + + //Item already exists + if($itemalreadyinsale) //TODO: This variable does not adhere to naming conventions. + { + $items[$updatekey]['quantity'] += $quantity; + $items[$updatekey]['total'] = $this->get_item_total($items[$updatekey]['quantity'], $price, $discount, $discount_type, $items[$updatekey]['receiving_quantity']); + } + else + { + //add to existing array + $items += $item; + } + + $this->set_cart($items); + + return true; + } + + /** + * @param $line + * @param string $description + * @param string $serialnumber + * @param float $quantity + * @param float $discount + * @param int|null $discount_type + * @param float $price + * @param float $receiving_quantity + * @return bool + */ + public function edit_item($line, string $description, string $serialnumber, float $quantity, float $discount, ?int $discount_type, float $price, float $receiving_quantity): bool + { + $items = $this->get_cart(); + if(isset($items[$line])) + { + $line = &$items[$line]; + $line['description'] = $description; + $line['serialnumber'] = $serialnumber; + $line['quantity'] = $quantity; + $line['receiving_quantity'] = $receiving_quantity; + $line['discount'] = $discount; + + if(!is_null($discount_type)) + { + $line['discount_type'] = $discount_type; + } + + $line['price'] = $price; + $line['total'] = $this->get_item_total($quantity, $price, $discount, $discount_type, $receiving_quantity); + $this->set_cart($items); + } + + return false; //TODO: This function will always return false. + } + + /** + * @param $line int|string The item_number or item_id of the item to be removed from the receiving. + */ + public function delete_item($line): void + { + $items = $this->get_cart(); + unset($items[$line]); + $this->set_cart($items); + } + + /** + * @param int $receipt_receiving_id + * @return void + */ + public function return_entire_receiving(int $receipt_receiving_id): void + { + //RECV # + $pieces = explode(' ', $receipt_receiving_id); + + if(preg_match("/(RECV|KIT)/", $pieces[0])) //TODO: this needs to be converted to ternary notation. + { + $receiving_id = $pieces[1]; + } + else + { + $receiving_id = $this->receiving->get_receiving_by_reference($receipt_receiving_id)->getRow()->receiving_id; + } + + $this->empty_cart(); + $this->remove_supplier(); + $this->clear_comment(); + + foreach($this->receiving->get_receiving_items($receiving_id)->getResult() as $row) + { + $this->add_item($row->item_id, -$row->quantity_purchased, $row->item_location, $row->discount, $row->discount_type, $row->item_unit_price, $row->description, $row->serialnumber, $row->receiving_quantity, $receiving_id, true); + } + + $this->set_supplier($this->receiving->get_supplier($receiving_id)->person_id); + } + + /** + * @param string $external_item_kit_id + * @param int $item_location + * @param float $discount + * @param int $discount_type + * @return void + */ + public function add_item_kit(string $external_item_kit_id, int $item_location, float $discount, int $discount_type): void + { + //KIT # + $pieces = explode(' ',$external_item_kit_id); + $item_kit_id = count($pieces) > 1 ? $pieces[1] : $external_item_kit_id; + + foreach($this->item_kit_items->get_info($item_kit_id) as $item_kit_item) + { + $this->add_item($item_kit_item['item_id'], $item_kit_item['quantity'], $item_location, $discount, $discount_type); + } + } + + /** + * @param int $receiving_id + * @return void + */ + public function copy_entire_receiving(int $receiving_id): void + { + $this->empty_cart(); + $this->remove_supplier(); + + foreach($this->receiving->get_receiving_items($receiving_id)->getResult() as $row) + { + $this->add_item($row->item_id, $row->quantity_purchased, $row->item_location, $row->discount, $row->discount_type, $row->item_unit_price, $row->description, $row->serialnumber, $row->receiving_quantity, $receiving_id, true); + } + + $this->set_supplier((int) $this->receiving->get_supplier($receiving_id)->person_id); + //$this->set_reference($this->receiving->get_info($receiving_id)->getRow()->reference); //TODO: If this code won't be added back in, then let's delete it. + } + + /** + * @return void + */ + public function clear_all(): void + { + $this->clear_mode(); + $this->empty_cart(); + $this->remove_supplier(); + $this->clear_comment(); + $this->clear_reference(); + } + + /** + * @param float $quantity + * @param float $price + * @param float $discount + * @param int|null $discount_type + * @param float $receiving_quantity + * @return string + */ + public function get_item_total(float $quantity, float $price, float $discount, ?int $discount_type, float $receiving_quantity): string + { + $extended_quantity = bcmul($quantity, $receiving_quantity); + $total = bcmul($extended_quantity, $price); + $discount_amount = $discount; + + if($discount_type == PERCENT) //TODO: === ? + { + $discount_fraction = bcdiv($discount, 100); + $discount_amount = bcmul($total, $discount_fraction); + } + + return bcsub($total, $discount_amount); + } + + /** + * @return string + */ + public function get_total(): string + { + $total = 0; + foreach($this->get_cart() as $item) + { + $total = bcadd($total, $this->get_item_total(($item['quantity']), $item['price'], $item['discount'], $item['discount_type'], $item['receiving_quantity'])); + } + + return $total; + } } diff --git a/app/Libraries/Sale_lib.php b/app/Libraries/Sale_lib.php index 37fc64f09..ffca37795 100644 --- a/app/Libraries/Sale_lib.php +++ b/app/Libraries/Sale_lib.php @@ -23,1777 +23,1777 @@ use ReflectionException; */ class Sale_lib { - private Attribute $attribute; - private Customer $customer; - private Dinner_table $dinner_table; - private Item $item; - private Item_kit_items $item_kit_items; - private Item_quantity $item_quantity; - private Item_taxes $item_taxes; - private Sale $sale; - private Stock_location $stock_location; - private Session $session; - private array $config; - - public function __construct() - { - $this->session = session(); - - $this->attribute = model(Attribute::class); - $this->customer = model(Customer::class); - $this->dinner_table = model(Dinner_table::class); - $this->item = model(Item::class); - $this->item_kit_items = model(Item_kit_items::class); - $this->item_quantity = model(Item_quantity::class); - $this->item_taxes = model(Item_taxes::class); - $this->sale = model(Sale::class); - $this->stock_location = model(Stock_location::class); - $this->config = config(OSPOS::class)->settings; - } - - /** - * @return array - */ - public function get_line_sequence_options(): array - { - return [ - '0' => lang('Sales.entry'), - '1' => lang('Sales.group_by_type'), - '2' => lang('Sales.group_by_category') - ]; - } - - /** - * @return array - */ - public function get_register_mode_options(): array - { - $register_modes = []; - - if(!$this->config['invoice_enable']) - { - $register_modes['sale'] = lang('Sales.sale'); - } - else - { - $register_modes['sale'] = lang('Sales.receipt'); - $register_modes['sale_quote'] = lang('Sales.quote'); - - if($this->config['work_order_enable']) - { - $register_modes['sale_work_order'] = lang('Sales.work_order'); - } - - $register_modes['sale_invoice'] = lang('Sales.invoice'); - } - - $register_modes['return'] = lang('Sales.return'); - - return $register_modes; - } - - /** - * @return array - */ - public function get_invoice_type_options(): array - { - $invoice_types = []; - $invoice_types['invoice'] = lang('Sales.invoice_type_invoice'); - $invoice_types['tax_invoice'] = lang('Sales.invoice_type_tax_invoice'); - $invoice_types['custom_invoice'] = lang('Sales.invoice_type_custom_invoice'); - $invoice_types['custom_tax_invoice'] = lang('Sales.invoice_type_custom_tax_invoice'); - return $invoice_types; - } - - /** - * @return array - */ - public function get_cart(): array - { - if(!$this->session->get('sales_cart')) - { - $this->set_cart ([]); - } - - return $this->session->get('sales_cart'); - } - - /** - * @param array $cart - * @return array - */ - public function sort_and_filter_cart(array $cart): array - { - if(empty($cart)) - { - return $cart; - } - - $filtered_cart = []; - - foreach($cart as $k => $v) //TODO: We should not be using single-letter variable names for readability. Several of these foreach loops should be refactored. - { - if($v['print_option'] == PRINT_YES) - { - if($v['price'] == 0.0) - { - $v['discount'] = 0.0; - } - $filtered_cart[] = $v; - } - } - - //TODO: This set of if/elseif/else needs to be converted to a switch statement - // Entry sequence (this will render kits in the expected sequence) - if($this->config['line_sequence'] == '0') - { - $sort = []; - foreach($filtered_cart as $k => $v) - { - $sort['line'][$k] = $v['line']; - } - array_multisort($sort['line'], SORT_ASC, $filtered_cart); - } - // Group by Stock Type (nonstock first - type 1, stock next - type 0) - elseif($this->config['line_sequence'] == '1') //TODO: Need to change these to constants - { - $sort = []; - foreach($filtered_cart as $k => $v) - { - $sort['stock_type'][$k] = $v['stock_type']; - $sort['description'][$k] = $v['description']; - $sort['name'][$k] = $v['name']; - } - array_multisort($sort['stock_type'], SORT_DESC, $sort['description'], SORT_ASC, $sort['name'], SORT_ASC, $filtered_cart); - } - // Group by Item Category - elseif($this->config['line_sequence'] == '2') //TODO: Need to change these to constants - { - $sort = []; - foreach($filtered_cart as $k => $v) - { - $sort['category'][$k] = $v['stock_type']; - $sort['description'][$k] = $v['description']; - $sort['name'][$k] = $v['name']; - } - array_multisort($sort['category'], SORT_DESC, $sort['description'], SORT_ASC, $sort['name'], SORT_ASC, $filtered_cart); - } - // Group by entry sequence in descending sequence (the Standard) - else - { - $sort = []; - foreach($filtered_cart as $k => $v) - { - $sort['line'][$k] = $v['line']; - } - array_multisort($sort['line'], SORT_ASC, $filtered_cart); - } - - return $filtered_cart; - } - - /** - * @param array $cart_data - * @return void - */ - public function set_cart(array $cart_data): void - { - $this->session->set('sales_cart', $cart_data); - } - - /** - * @return void - */ - public function empty_cart(): void - { - $this->session->remove('sales_cart'); - } - - /** - * @return void - */ - public function remove_temp_items(): void - { - // Loop through the cart items and delete temporary items specific to this sale - $cart = $this->get_cart(); - foreach($cart as $line=>$item) - { - if($item['item_type'] == ITEM_TEMP) //TODO: === ? - { - $this->item->delete($item['item_id']); - } - } - } - - /** - * @return string - */ - public function get_comment(): string - { - // avoid returning a null that results in a 0 in the comment if nothing is set/available - $comment = $this->session->get('sales_comment'); - - return empty($comment) ? '' : $comment; - } - - /** - * @param string $comment - * @return void - */ - public function set_comment(string $comment): void - { - $this->session->set('sales_comment', $comment); - } - - /** - * @return void - */ - public function clear_comment(): void - { - $this->session->remove('sales_comment'); - } - - /** - * @return string|null - */ - public function get_invoice_number(): ?string - { - return $this->session->get('sales_invoice_number'); - } - - /** - * @return string|null - */ - public function get_quote_number(): ?string - { - return $this->session->get('sales_quote_number'); - } - - /** - * @return string|null - */ - public function get_work_order_number(): ?string - { - return $this->session->get('sales_work_order_number'); - } - - /** - * @return int|null - */ - public function get_sale_type(): ?int - { - return $this->session->get('sale_type', 0); - } - - /** - * @param int $invoice_number - * @param bool $keep_custom - * @return void - */ - public function set_invoice_number(int $invoice_number, bool $keep_custom = false): void - { - $current_invoice_number = $this->session->get('sales_invoice_number'); - - if(!$keep_custom || empty($current_invoice_number)) - { - $this->session->set('sales_invoice_number', $invoice_number); - } - } - - /** - * @param string|null $quote_number - * @param bool $keep_custom - * @return void - */ - public function set_quote_number(?string $quote_number, bool $keep_custom = false): void - { - $current_quote_number = $this->session->get('sales_quote_number'); - - if(!$keep_custom || empty($current_quote_number)) - { - $this->session->set('sales_quote_number', $quote_number); - } - } - - /** - * @param string|null $work_order_number - * @param bool $keep_custom - * @return void - */ - public function set_work_order_number(?string $work_order_number, bool $keep_custom = false): void - { - $current_work_order_number = $this->session->get('sales_work_order_number'); - - if(!$keep_custom || empty($current_work_order_number)) - { - $this->session->set('sales_work_order_number', $work_order_number); - } - } - - /** - * @param int $sale_type - * @param bool $keep_custom - * @return void - */ - public function set_sale_type(int $sale_type, bool $keep_custom = false): void - { - $current_sale_type = $this->session->get('sale_type'); - - if(!$keep_custom || empty($current_sale_type)) - { - $this->session->set('sale_type', $sale_type); - } - } - - /** - * @return void - */ - public function clear_invoice_number(): void - { - $this->session->remove('sales_invoice_number'); - } - - /** - * @return void - */ - public function clear_quote_number(): void - { - $this->session->remove('sales_quote_number'); - } - - /** - * @return void - */ - public function clear_work_order_number(): void - { - $this->session->remove('sales_work_order_number'); - } - - /** - * @return void - */ - public function clear_sale_type(): void - { - $this->session->remove('sale_type'); - } - - /** - * @param int $suspended_id - * @return void - */ - public function set_suspended_id(int $suspended_id): void - { - $this->session->set('suspended_id', $suspended_id); - } - - /** - * @return int - */ - public function get_suspended_id(): int - { - return $this->session->get('suspended_id'); - } - - /** - * @return bool - */ - public function is_invoice_mode(): bool - { - return ($this->session->get('sales_mode') == 'sale_invoice' && $this->config['invoice_enable']); - } - - /** - * @return bool - */ - public function is_sale_by_receipt_mode(): bool //TODO: This function is not called anywhere in the code. - { - return ($this->session->get('sales_mode') == 'sale'); //TODO: === ? - } - - /** - * @return bool - */ - public function is_quote_mode(): bool - { - return ($this->session->get('sales_mode') == 'sale_quote'); //TODO: === ? - } - - /** - * @return bool - */ - public function is_return_mode(): bool - { - return ($this->session->get('sales_mode') == 'return'); //TODO: === ? - } - - /** - * @return bool - */ - public function is_work_order_mode(): bool - { - return ($this->session->get('sales_mode') == 'sale_work_order'); //TODO: === ? - } - - /** - * @param string $price_work_orders - * @return void - */ - public function set_price_work_orders(string $price_work_orders): void - { - $this->session->set('sales_price_work_orders', $price_work_orders); - } - - /** - * @return bool - */ - public function is_price_work_orders(): bool - { - return ($this->session->get('sales_price_work_orders') == 'true' //TODO: === ? - || $this->session->get('sales_price_work_orders') == '1'); //TODO: === ? - } - - /** - * @param bool $print_after_sale - * @return void - */ - public function set_print_after_sale(bool $print_after_sale): void - { - $this->session->set('sales_print_after_sale', $print_after_sale); - } - - /** - * @return bool - */ - public function is_print_after_sale(): bool - {//TODO: this needs to be converted to a switch statement - if($this->config['print_receipt_check_behaviour'] == 'always') //TODO: 'behaviour' is the british spelling, but the rest of the code is in American English. Not a big deal, but noticed. Also === - { - return true; - } - elseif($this->config['print_receipt_check_behaviour'] == 'never') //TODO: === ? - { - return false; - } - else // remember last setting, session based though - { - return ($this->session->get('sales_print_after_sale') == 'true' //TODO: === ? - || $this->session->get('sales_print_after_sale') == '1'); //TODO: === ? - } - } - - /** - * @param string $email_receipt - * @return void - */ - public function set_email_receipt(string $email_receipt): void - { - $this->session->set('sales_email_receipt', $email_receipt); - } - - /** - * @return void - */ - public function clear_email_receipt(): void - { - $this->session->remove('sales_email_receipt'); - } - - /** - * @return bool - */ - public function is_email_receipt(): bool - {//TODO: this needs to be converted to a switch statement - if($this->config['email_receipt_check_behaviour'] == 'always') //TODO: 'behaviour' is the british spelling, but the rest of the code is in American English. Not a big deal, but noticed. Also === - { - return true; - } - elseif($this->config['email_receipt_check_behaviour'] == 'never') //TODO: === ? - { - return false; - } - else // remember last setting, session based though - { - return ($this->session->get('sales_email_receipt') == 'true' //TODO: === ? - || $this->session->get('sales_email_receipt') == '1'); //TODO: === ? - } - } - - /** - * Multiple Payments - */ - public function get_payments(): array - { - if(!$this->session->get('sales_payments')) - { - $this->set_payments ([]); - } - - return $this->session->get('sales_payments'); - } - - /** - * Multiple Payments - */ - public function set_payments(array $payments_data): void - { - $this->session->set('sales_payments', $payments_data); - } - - /** - * Adds a new payment to the payments array or updates an existing one. - * It will also disable cash_mode if a non-qualifying payment type is added. - * @param string $payment_id - * @param string $payment_amount - * @param int $cash_adjustment - */ - public function add_payment(string $payment_id, string $payment_amount, int $cash_adjustment = CASH_ADJUSTMENT_FALSE): void - { - $payments = $this->get_payments(); - if(isset($payments[$payment_id])) - { - //payment_method already exists, add to payment_amount - $payments[$payment_id]['payment_amount'] = bcadd($payments[$payment_id]['payment_amount'], $payment_amount); - } - else - { - //add to existing array - $payment = [ - $payment_id => [ - 'payment_type' => $payment_id, - 'payment_amount' => $payment_amount, - 'cash_refund' => 0, - 'cash_adjustment' => $cash_adjustment - ] - ]; - - $payments += $payment; - } - - if($this->session->get('cash_mode')) - { - if($this->session->get('cash_rounding') && $payment_id != lang('Sales.cash') && $payment_id != lang('Sales.cash_adjustment')) - { - $this->session->set('cash_mode', CASH_MODE_FALSE); - } - } - - $this->set_payments($payments); - } - - /** - * Multiple Payments - */ - public function edit_payment(string $payment_id, float $payment_amount): bool - { - $payments = $this->get_payments(); - if(isset($payments[$payment_id])) - { - $payments[$payment_id]['payment_type'] = $payment_id; - $payments[$payment_id]['payment_amount'] = $payment_amount; - $this->set_payments($payments); - - return true; - } - - return false; - } - - /** - * Delete the selected payment from the payment array and if cash rounding is enabled - * and the payment type is one of the cash types then automatically delete the other - * @param string $payment_id - */ - public function delete_payment(string $payment_id): void - { - $payments = $this->get_payments(); - $decoded_payment_id = urldecode($payment_id); - - unset($payments[$decoded_payment_id]); - - $cash_rounding = $this->reset_cash_rounding(); - - if($cash_rounding) - { - if($decoded_payment_id == lang('Sales.cash')) //TODO: === ? - { - unset($payments[lang('Sales.cash_adjustment')]); - } - - if($decoded_payment_id == lang('Sales.cash_adjustment')) //TODO: === ? - { - unset($payments[lang('Sales.cash')]); - } - } - $this->set_payments($payments); - } - - /** - * Multiple Payments - */ - public function empty_payments(): void //TODO: function verbs are very inconsistent in these libraries. - { - $this->session->remove('sales_payments'); - } - - /** - * Retrieve the total payments made, excluding any cash adjustments - * and establish if cash_mode is in play - */ - public function get_payments_total(): string - { - $subtotal = '0.0'; - $cash_mode_eligible = CASH_MODE_TRUE; - - foreach($this->get_payments() as $payments) - { - if(!$payments['cash_adjustment']) - { - $subtotal = bcadd($payments['payment_amount'], $subtotal); - } - if(lang('Sales.cash') != $payments['payment_type'] && lang('Sales.cash_adjustment') != $payments['payment_type']) - { - $cash_mode_eligible = CASH_MODE_FALSE; - } - } - - if($cash_mode_eligible && $this->session->get('cash_rounding')) //TODO: $cache_mode_eligible will always evaluate to true - { - $this->session->set('cash_mode', CASH_MODE_TRUE); - } - - return $subtotal; - } - - /** - * Returns 'subtotal', 'total', 'cash_total', 'payment_total', 'amount_due', 'cash_amount_due', 'paid_in_full' - * 'subtotal', 'discounted_subtotal', 'tax_exclusive_subtotal', 'item_count', 'total_units', 'cash_adjustment_amount' - */ - public function get_totals(array $taxes): array - { - $totals = []; - - $prediscount_subtotal = '0.0'; - $subtotal = '0.0'; - $total = '0.0'; - $total_discount = '0.0'; - $item_count = 0; - $total_units = 0.0; - - foreach($this->get_cart() as $item) - { - if($item['stock_type'] == HAS_STOCK) - { - $item_count++; - $total_units += $item['quantity']; - } - $discount_amount = $this->get_item_discount($item['quantity'], $item['price'], $item['discount'], $item['discount_type']); - $total_discount = bcadd($total_discount, $discount_amount); - - $extended_amount = $this->get_extended_amount($item['quantity'], $item['price']); - $extended_discounted_amount = $this->get_extended_amount($item['quantity'], $item['price'], $discount_amount); - $prediscount_subtotal = bcadd($prediscount_subtotal, $extended_amount); - $total = bcadd($total, $extended_discounted_amount); - - $subtotal = bcadd($subtotal, $extended_discounted_amount); - } - - $totals['prediscount_subtotal'] = $prediscount_subtotal; - $totals['total_discount'] = $total_discount; - $sales_tax = '0'; - - foreach($taxes as $tax) - { - if($tax['tax_type'] === Tax_lib::TAX_TYPE_EXCLUDED) - { - $total = bcadd($total, $tax['sale_tax_amount']); - $sales_tax = bcadd($sales_tax, $tax['sale_tax_amount']); - } - else - { - $subtotal = bcsub($subtotal, $tax['sale_tax_amount']); - } - } - - $totals['subtotal'] = $subtotal; - $totals['total'] = $total; - $totals['tax_total'] = $sales_tax; - - $payment_total = $this->get_payments_total(); - $totals['payment_total'] = $payment_total; - $cash_rounding = $this->session->get('cash_rounding'); - $cash_mode = $this->session->get('cash_mode'); - - if($cash_rounding) - { - $cash_total = $this->check_for_cash_rounding($total); - $totals['cash_total'] = $cash_total; - } - else - { - $cash_total = $total; - $totals['cash_total'] = $cash_total; - } - - $amount_due = bcsub($total, $payment_total); - $totals['amount_due'] = $amount_due; - - $cash_amount_due = bcsub($cash_total, $payment_total); - $totals['cash_amount_due'] = $cash_amount_due; - - if($cash_mode) //TODO: Convert to ternary notation - { - $current_due = $cash_amount_due; - } - else - { - $current_due = $amount_due; - } - - // 0 decimal -> 1 / 2 = 0.5, 1 decimals -> 0.1 / 2 = 0.05, 2 decimals -> 0.01 / 2 = 0.005 - $threshold = bcpow('10', (string)-totals_decimals()) / 2; - - if($this->get_mode() == 'return') //TODO: Convert to ternary notation. - { - $totals['payments_cover_total'] = $current_due > -$threshold; - } - else - { - $totals['payments_cover_total'] = $current_due < $threshold; - } - - $totals['item_count'] = $item_count; - $totals['total_units'] = $total_units; - $totals['cash_adjustment_amount'] = 0.0; - - if($totals['payments_cover_total']) - { - $totals['cash_adjustment_amount'] = round($cash_total - $totals['total'], totals_decimals(), PHP_ROUND_HALF_UP); - } - - $cash_mode = $this->session->get('cash_mode'); //TODO: This variable is never used. - - return $totals; - } - - /** - * Multiple Payments - */ - public function get_amount_due(): string - { - // Payment totals need to be identified first so that we know whether or not there is a non-cash payment involved - $payment_total = $this->get_payments_total(); - $sales_total = $this->get_total(); - $amount_due = bcsub($sales_total, $payment_total); - $precision = totals_decimals(); - $rounded_due = bccomp((string)round((float)$amount_due, $precision, PHP_ROUND_HALF_UP), '0', $precision); //TODO: Is round() currency safe? - - // take care of rounding error introduced by round tripping payment amount to the browser - return $rounded_due == 0 ? '0' : $amount_due; //TODO: === - } - - /** - * @return int - */ - public function get_customer(): int - { - if(!$this->session->get('sales_customer')) - { - $this->set_customer(-1); //TODO: Replace -1 with a constant - } - - return $this->session->get('sales_customer'); - } - - /** - * @param int $customer_id - * @return void - */ - public function set_customer(int $customer_id): void - { - $this->session->set('sales_customer', $customer_id); - } - - /** - * @return void - */ - public function remove_customer(): void - { - $this->session->remove('sales_customer'); - } - - /** - * @return int - */ - public function get_employee(): int - { - if(!$this->session->get('sales_employee')) - { - $this->set_employee(-1); //TODO: Replace -1 with a constant - } - - return $this->session->get('sales_employee'); - } - - /** - * @param int $employee_id - * @return void - */ - public function set_employee(int $employee_id): void - { - $this->session->set('sales_employee', $employee_id); - } - - /** - * @return void - */ - public function remove_employee(): void - { - $this->session->remove('sales_employee'); - } - - /** - * @return string - */ - public function get_mode(): string - { - if(!$this->session->get('sales_mode')) - { - $this->set_mode('sale'); - } - return $this->session->get('sales_mode'); - } - - /** - * @param string $mode - * @return void - */ - public function set_mode(string $mode): void - { - $this->session->set('sales_mode', $mode); - } - - /** - * @return void - */ - public function clear_mode(): void - { - $this->session->remove('sales_mode'); - } - - /** - * @return int|null - */ - public function get_dinner_table(): ?int - { - if(!$this->session->get('dinner_table')) - { - if($this->config['dinner_table_enable']) - { - $this->set_dinner_table(1); //TODO: Replace 1 with constant - } - } - - return $this->session->get('dinner_table'); - } - - /** - * @param int|null $dinner_table - * @return void - */ - public function set_dinner_table(?int $dinner_table): void - { - $this->session->set('dinner_table', $dinner_table); - } - - /** - * @return void - */ - public function clear_table(): void - { - $this->session->remove('dinner_table'); - } - - /** - * @return int - */ - public function get_sale_location(): int - { - if(!$this->session->get('sales_location')) - { - $this->set_sale_location($this->stock_location->get_default_location_id('sales')); - } - - return $this->session->get('sales_location'); - } - - /** - * @param int $location - * @return void - */ - public function set_sale_location(int $location): void - { - $this->session->set('sales_location', $location); - } - - /** - * @param string $payment_type - * @return void - */ - public function set_payment_type(string $payment_type): void - { - $this->session->set('payment_type', $payment_type); - } - - /** - * @return string|null - */ - public function get_payment_type(): ?string - { - return $this->session->get('payment_type'); - } - - /** - * @return void - */ - public function clear_sale_location(): void - { - $this->session->remove('sales_location'); - } - - /** - * @param string $value - * @return void - */ - public function set_giftcard_remainder(string $value): void - { - $this->session->set('sales_giftcard_remainder', $value); - } - - /** - * @return string|null - */ - public function get_giftcard_remainder(): ?string - { - return $this->session->get('sales_giftcard_remainder'); - } - - /** - * @return void - */ - public function clear_giftcard_remainder(): void - { - $this->session->remove('sales_giftcard_remainder'); - } - - /** - * @param string $value - * @return void - */ - public function set_rewards_remainder(string $value): void - { - $this->session->set('sales_rewards_remainder', $value); - } - - /** - * @return string|null - */ - public function get_rewards_remainder(): ?string - { - return $this->session->get('sales_rewards_remainder'); - } - - /** - * @return void - */ - public function clear_rewards_remainder(): void - { - $this->session->remove('sales_rewards_remainder'); - } - - //TODO: this function needs to be reworked... way too many parameters. Also, optional parameters must go after mandatory parameters. - - /** - * @param int $item_id - * @param int $item_location - * @param string $quantity - * @param string $discount - * @param int $discount_type - * @param int $price_mode - * @param int|null $kit_price_option - * @param int|null $kit_print_option - * @param string|null $price_override - * @param string|null $description - * @param string|null $serialnumber - * @param int|null $sale_id - * @param bool $include_deleted - * @param bool|null $print_option - * @param bool|null $line - * @return bool - */ - public function add_item(int &$item_id, int $item_location, string $quantity = '1', string &$discount = '0.0', int $discount_type = 0, int $price_mode = PRICE_MODE_STANDARD, int $kit_price_option = null, int $kit_print_option = null, string $price_override = null, string $description = null, string $serialnumber = null, int $sale_id = null, bool $include_deleted = false, bool $print_option = null, bool $line = null): bool - { - $item_info = $this->item->get_info_by_id_or_number($item_id, $include_deleted); - - //make sure item exists - if(empty($item_info)) - { - $item_id = NEW_ENTRY; - return false; - } - - $applied_discount = $discount; - $item_id = $item_info->item_id; - $item_type = $item_info->item_type; - $stock_type = $item_info->stock_type; - - $price = $item_info->unit_price; - $cost_price = $item_info->cost_price; - if($price_override != null) - { - $price = $price_override; - } - - if($price_mode == PRICE_MODE_KIT) - { - if(!($kit_price_option == PRICE_OPTION_ALL - || $kit_price_option == PRICE_OPTION_KIT && $item_type == ITEM_KIT - || $kit_price_option == PRICE_OPTION_KIT_STOCK && $stock_type == HAS_STOCK)) //TODO: === ? - { - $price = '0.00'; - $applied_discount = '0.00'; - } - - // If price is zero do not include a discount regardless of type - if($price == '0.00') //TODO: === ? - { - $applied_discount = '0.00'; - } - - // If fixed discount then apply no more than the item price - if($discount_type == FIXED) //TODO: === ? - { - if($applied_discount > $price) - { - $applied_discount = $price; - $discount -= $applied_discount; - } - else - { - $discount = 0; - } - } - } - - // Serialization and Description - - //Get all items in the cart so far... - $items = $this->get_cart(); - - //We need to loop through all items in the cart. - //If the item is already there, get it's key($updatekey). - //We also need to get the next key that we are going to use in case we need to add the - //item to the cart. Since items can be deleted, we can't use a count. we use the highest key + 1. - - $maxkey = 0; //Highest key so far - $itemalreadyinsale = false; //We did not find the item yet. //TODO: variable naming here does not match the convention - $insertkey = 0; //Key to use for new entry. //TODO: $insertkey is never used - $updatekey = 0; //Key to use to update(quantity) - - foreach($items as $item) - { - //We primed the loop so maxkey is 0 the first time. - //Also, we have stored the key in the element itself so we can compare. - - if($maxkey <= $item['line']) //TODO: variable naming here does not match the convention - { - $maxkey = $item['line']; - } - - if($item['item_id'] == $item_id && $item['item_location'] == $item_location) //TODO: === ? - { - $itemalreadyinsale = true; - $updatekey = $item['line']; - if(!$item_info->is_serialized) - { - $quantity = bcadd($quantity, $items[$updatekey]['quantity']); - } - } - } - - $insertkey = $maxkey + 1;//TODO Does not follow naming conventions. - //array/cart records are identified by $insertkey and item_id is just another field. - - if($price_mode == PRICE_MODE_KIT) //TODO: === ? - { - if($kit_print_option == PRINT_ALL) //TODO: === ? - { - $print_option_selected = PRINT_YES; - } - elseif($kit_print_option == PRINT_KIT && $item_type == ITEM_KIT) //TODO: === ? - { - $print_option_selected = PRINT_YES; - } - elseif($kit_print_option == PRINT_PRICED && $price > 0) //TODO: === ? - { - $print_option_selected = PRINT_YES; - } - else - { - $print_option_selected = PRINT_NO; - } - } - else - { //TODO: Convert this to ternary notation - if($print_option != null) //TODO: === ? - { - $print_option_selected = $print_option; - } - else - { - $print_option_selected = PRINT_YES; - } - } - - $total = $this->get_item_total($quantity, $price, $applied_discount, $discount_type); - $discounted_total = $this->get_item_total($quantity, $price, $applied_discount, $discount_type, true); - - if($this->config['multi_pack_enabled']) - { - $item_info->name .= NAME_SEPARATOR . $item_info->pack_name; - } - - $attribute_links = $this->attribute->get_link_values($item_id, 'sale_id', $sale_id, Attribute::SHOW_IN_SALES)->getRowObject(); - - //Item already exists and is not serialized, add to quantity - if(!$itemalreadyinsale || $item_info->is_serialized) - { - $item = [ - $insertkey => [ - 'item_id' => $item_id, - 'item_location' => $item_location, - 'stock_name' => $this->stock_location->get_location_name($item_location), - 'line' => $insertkey, - 'name' => $item_info->name, - 'item_number' => $item_info->item_number, - 'attribute_values' => $attribute_links->attribute_values, - 'attribute_dtvalues' => $attribute_links->attribute_dtvalues, - 'description' => $description != null ? $description : $item_info->description, - 'serialnumber' => $serialnumber != null ? $serialnumber : '', - 'allow_alt_description' => $item_info->allow_alt_description, - 'is_serialized' => $item_info->is_serialized, - 'quantity' => $quantity, - 'discount' => $applied_discount, - 'discount_type' => $discount_type, - 'in_stock' => $this->item_quantity->get_item_quantity($item_id, $item_location)->quantity, - 'price' => $price, - 'cost_price' => $cost_price, - 'total' => $total, - 'discounted_total' => $discounted_total, - 'print_option' => $print_option_selected, - 'stock_type' => $stock_type, - 'item_type' => $item_type, - 'hsn_code' => $item_info->hsn_code, - 'tax_category_id' => $item_info->tax_category_id - ] - ]; - - //add to existing array - $items += $item; - } - else - { - $line = &$items[$updatekey]; - $line['quantity'] = $quantity; - $line['total'] = $total; - $line['discounted_total'] = $discounted_total; - } - - $this->set_cart($items); - - return true; - } - - /** - * @param int $item_id - * @param int $item_location - * @return string - */ - public function out_of_stock(int $item_id, int $item_location): string - { - //make sure item exists - if($item_id != -1) //TODO: !== ?. Also Replace -1 with a constant - { - $item_info = $this->item->get_info_by_id_or_number($item_id); - - if($item_info->stock_type == HAS_STOCK) //TODO: === ? - { - $item_quantity = $this->item_quantity->get_item_quantity($item_id, $item_location)->quantity; - $quantity_added = $this->get_quantity_already_added($item_id, $item_location); - - if($item_quantity - $quantity_added < 0) - { - return lang('Sales.quantity_less_than_zero'); - } - elseif($item_quantity - $quantity_added < $item_info->reorder_level) - { - return lang('Sales.quantity_less_than_reorder_level'); - } - } - } - - return ''; - } - - /** - * @param int $item_id - * @param int $item_location - * @return string - */ - public function get_quantity_already_added(int $item_id, int $item_location): string - { - $items = $this->get_cart(); - $quantity_already_added = '0.0'; - foreach($items as $item) - { - if($item['item_id'] == $item_id && $item['item_location'] == $item_location) //TODO: === ? - { - $quantity_already_added += $item['quantity']; //TODO: for precision we likely need to use bcadd() since we are using that everywhere else for quantity - } - } - - return $quantity_already_added; - } - - /** - * @param string $line_to_get - * @return int - */ - public function get_item_id(string $line_to_get): int - { - $items = $this->get_cart(); - - foreach($items as $line => $item) - { - if($line == $line_to_get) - { - return $item['item_id']; - } - } - - return -1; //TODO: Replace -1 with constant - } - - /* @param string $line - * @param string $description - * @param string $serialnumber - * @param string $quantity - * @param string $discount - * @param string|null $discount_type - * @param string|null $price - * @param string|null $discounted_total - * @return bool - */ - public function edit_item(string $line, string $description, string $serialnumber, string $quantity, string $discount, ?string $discount_type, ?string $price, ?string $discounted_total = null): bool - { - $items = $this->get_cart(); - if(isset($items[$line])) - { - $line = &$items[$line]; - if($discounted_total != null && $discounted_total != $line['discounted_total']) - { - // Note when entered the "discounted_total" is expected to be entered without a discount - $quantity = $this->get_quantity_sold($discounted_total, $price); - } - $line['description'] = $description; - $line['serialnumber'] = $serialnumber; - $line['quantity'] = $quantity; - $line['discount'] = $discount; - - if($discount_type != null) - { - $line['discount_type'] = $discount_type; - } - - $line['price'] = $price; - $line['total'] = $this->get_item_total($quantity, $price, $discount, $line['discount_type']); - $line['discounted_total'] = $this->get_item_total($quantity, $price, $discount, $line['discount_type'], true); - $this->set_cart($items); - } - - return false; //TODO: This function will always return false. - } - - /** - * @param int $line - * @return void - */ - public function delete_item(int $line): void - { - $items = $this->get_cart(); - $item_type = $items[$line]['item_type']; - - if($item_type == ITEM_TEMP) - { - $item_id = $items[$line]['item_id']; - $this->item->delete($item_id); - } - - unset($items[$line]); - $this->set_cart($items); - } - - /** - * @param string $receipt_sale_id - * @return void - */ - public function return_entire_sale(string $receipt_sale_id): void - { - //POS # - $pieces = explode(' ', $receipt_sale_id); - $sale_id = $pieces[1]; - - $this->empty_cart(); - $this->remove_customer(); - - foreach($this->sale->get_sale_items_ordered($sale_id)->getResult() as $row) - { - $this->add_item($row->item_id, $row->item_location, -$row->quantity_purchased, $row->discount, $row->discount_type, PRICE_MODE_STANDARD, null, null, $row->item_unit_price, $row->description, $row->serialnumber, null, true); - } - - $this->set_customer($this->sale->get_customer($sale_id)->person_id); - } - - /** - * @param string $external_item_kit_id - * @param int $item_location - * @param float $discount - * @param string $discount_type - * @param bool $kit_price_option - * @param bool $kit_print_option - * @param string $stock_warning - * @return bool - */ - public function add_item_kit(string $external_item_kit_id, int $item_location, float $discount, string $discount_type, bool $kit_price_option, bool $kit_print_option, ?string &$stock_warning): bool - { - //KIT # - $pieces = explode(' ', $external_item_kit_id); - $item_kit_id = (count($pieces) > 1) ? $pieces[1] : $external_item_kit_id; - $result = true; - $applied_discount = $discount; - - foreach($this->item_kit_items->get_info($item_kit_id) as $item_kit_item) - { - $result &= $this->add_item($item_kit_item['item_id'], $item_location, $item_kit_item['quantity'], $discount, $discount_type, PRICE_MODE_KIT, $kit_price_option, $kit_print_option); - - if($stock_warning == null) - { - $stock_warning = $this->out_of_stock($item_kit_item['item_id'], $item_location); - } - } - - return $result; - } - - /** - * @param int $sale_id - * @return void - */ - public function copy_entire_sale(int $sale_id): void - { - $this->empty_cart(); - $this->remove_customer(); - - foreach($this->sale->get_sale_items_ordered($sale_id)->getResult() as $row) - { - $this->add_item($row->item_id, $row->item_location, $row->quantity_purchased, $row->discount, $row->discount_type, PRICE_MODE_STANDARD, null, null, $row->item_unit_price, $row->description, $row->serialnumber, $sale_id, true, $row->print_option); - } - - $this->session->set('cash_mode', CASH_MODE_FALSE); - - // Establish cash_mode for this sale by inspecting the payments - if($this->session->get('cash_rounding')) - { - $cash_types_only = true; - foreach($this->sale->get_sale_payments($sale_id)->getResult() as $row) - { - if($row->payment_type != lang('Sales.cash') && $row->payment_type != lang('Sales.cash_adjustment')) - { - $cash_types_only = false; - } - - } - //TODO: Consider converting to ternary notation. - //$cash_types_only - // ? $this->session->set('cash_mode', CASH_MODE_TRUE) - // : $this->session->set('cash_mode', CASH_MODE_FALSE); - if($cash_types_only) - { - $this->session->set('cash_mode', CASH_MODE_TRUE); - } - else - { - $this->session->set('cash_mode', CASH_MODE_FALSE); - } - } - - // Now load payments - foreach($this->sale->get_sale_payments($sale_id)->getResult() as $row) - { - $this->add_payment($row->payment_type, $row->payment_amount, $row->cash_adjustment); - } - - $this->set_customer($this->sale->get_customer($sale_id)->person_id); - $this->set_employee($this->sale->get_employee($sale_id)->person_id); - $this->set_quote_number($this->sale->get_quote_number($sale_id)); - $this->set_work_order_number($this->sale->get_work_order_number($sale_id)); - $this->set_sale_type($this->sale->get_sale_type($sale_id)); - $this->set_comment($this->sale->get_comment($sale_id)); - $this->set_dinner_table($this->sale->get_dinner_table($sale_id)); - $this->session->set('sale_id', $sale_id); - } - - /** - * @return int - */ - public function get_sale_id(): int - { - return $this->session->get('sale_id'); - } - - /** - * @return void - */ - public function clear_all(): void - { - $this->session->set('sale_id', -1); //TODO: Replace -1 with constant - $this->clear_mode(); - $this->clear_table(); - $this->empty_cart(); - $this->clear_comment(); - $this->clear_email_receipt(); - $this->clear_invoice_number(); - $this->clear_quote_number(); - $this->clear_work_order_number(); - $this->clear_sale_type(); - $this->clear_giftcard_remainder(); - $this->empty_payments(); - $this->remove_customer(); - $this->clear_cash_flags(); - } - - /** - * @return void - */ - public function clear_cash_flags(): void - { - $this->session->remove('cash_rounding'); - $this->session->remove('cash_mode'); - $this->session->remove('payment_type'); - } - - /** - * Determines if cash rounding should be a consideration for this site - * It also set resets the cash mode to disabled which will then be re-evaluated when - * retrieving payments. - */ - public function reset_cash_rounding(): int - { - $cash_rounding_code = $this->config['cash_rounding_code']; - - if(cash_decimals() < totals_decimals() || $cash_rounding_code == Rounding_mode::HALF_FIVE) //TODO: convert to ternary notation. - { - $cash_rounding = 1; //TODO: Replace with constant - } - else - { - $cash_rounding = 0; //TODO: Replace with constant - } - $this->session->set('cash_rounding', $cash_rounding); - $this->session->set('cash_mode', CASH_MODE_FALSE); - - return $cash_rounding; - } - - /** - * @return bool - */ - public function is_customer_taxable(): bool //TODO: This function is never called in the code - { - $customer_id = $this->get_customer(); - $customer = $this->customer->get_info($customer_id); - - //Do not charge sales tax if we have a customer that is not taxable - return $customer->taxable or $customer_id == -1; //TODO: Replace with constant. Also, I'm not sure we should be using the or operator instead of || here. $a || $b guarantees that the result of those two get returned. It's possible that return $a or $b could return just the result of $a since `or` has a lower precedence. - } - - /** - * @param string $discount - * @param int $discount_type - * @return void - */ - public function apply_customer_discount(string $discount, int $discount_type): void - { - // Get all items in the cart so far... - $items = $this->get_cart(); - - foreach($items as &$item) - { - $quantity = $item['quantity']; - $price = $item['price']; - - // set a new discount only if the current one is 0 - if($item['discount'] == 0.0) //TODO: === ? - { - $item['discount'] = $discount; - $item['total'] = $this->get_item_total($quantity, $price, $discount, $discount_type); - $item['discounted_total'] = $this->get_item_total($quantity, $price, $discount, $discount_type, true); - } - } - - $this->set_cart($items); - } - - /** - * @return string - */ - public function get_discount(): string - { - $discount = '0.0'; - foreach($this->get_cart() as $item) - { - if($item['discount'] > '0.0') - { - $item_discount = $this->get_item_discount($item['quantity'], $item['price'], $item['discount'], $item['discount_type']); - $discount = bcadd($discount, $item_discount); - } - } - - return $discount; - } - - /** - * @param bool $include_discount - * @param bool $exclude_tax - * @return string - */ - public function get_subtotal(bool $include_discount = false, bool $exclude_tax = false): string - { - return $this->calculate_subtotal($include_discount, $exclude_tax); - } - - /** - * @param int $item_id - * @param string $quantity - * @param string $price - * @param string $discount - * @param int $discount_type - * @param bool $include_discount - * @return string - */ - public function get_item_total_tax_exclusive(int $item_id, string $quantity, string $price, string $discount, int $discount_type, bool $include_discount = false): string - { - $tax_info = $this->item_taxes->get_info($item_id); - $item_total = $this->get_item_total($quantity, $price, $discount, $discount_type, $include_discount); - - // only additive tax here - foreach($tax_info as $tax) - { - $tax_percentage = $tax['percent']; - $item_total = bcsub($item_total, $this->get_item_tax($quantity, $price, $discount, $discount_type, $tax_percentage)); - } - - return $item_total; - } - - //TODO: This function doesn't seem to be called anywhere in the code. - - /** - * @param int $item_id - * @param string $discounted_extended_amount - * @param string $quantity - * @param string $price - * @param string $discount - * @param int $discount_type - * @return string - */ - public function get_extended_total_tax_exclusive(int $item_id, string $discounted_extended_amount, string $quantity, string $price, string $discount = '0.0', int $discount_type = 0): string - { - $tax_info = $this->item_taxes->get_info($item_id); - - // only additive tax here - foreach($tax_info as $tax) - { - $tax_percentage = $tax['percent']; - $discounted_extended_amount = bcsub($discounted_extended_amount, $this->get_item_tax($quantity, $price, $discount, $discount_type, $tax_percentage)); - } - - return $discounted_extended_amount; - } - - /** - * @param string $quantity - * @param string $price - * @param string $discount - * @param int $discount_type - * @param bool $include_discount - * @return string - */ - public function get_item_total(string $quantity, string $price, string $discount, int $discount_type, bool $include_discount = false): string - { - $total = bcmul($quantity, $price); - if($include_discount) - { - $discount_amount = $this->get_item_discount($quantity, $price, $discount, $discount_type); - - return bcsub($total, $discount_amount); - } - - return $total; - } - - /** - * Derive the quantity sold based on the new total entered, returning the quanitity rounded to the - * appropriate decimal positions. - * @param string $total - * @param string $price - * @return string - */ - public function get_quantity_sold(string $total, string $price): string - { - return bcdiv($total, $price, quantity_decimals()); - } - - /** - * @param string $quantity - * @param string $price - * @param string $discount_amount - * @return string - */ - public function get_extended_amount(string $quantity, string $price, string $discount_amount = '0.0'): string - { - $extended_amount = bcmul($quantity, $price); - - return bcsub($extended_amount, $discount_amount); - } - - /** - * @param string $quantity - * @param string $price - * @param string $discount - * @param int $discount_type - * @return string - */ - public function get_item_discount(string $quantity, string $price, string $discount, int $discount_type): string - { - $total = bcmul($quantity, $price); - if($discount_type == PERCENT) //TODO: === ?. Also, ternary notation - { - $discount = bcmul($total, bcdiv($discount, '100')); - } - else - { - $discount = bcmul($quantity, $discount); - } - - return (string)round((float)$discount, totals_decimals(), PHP_ROUND_HALF_UP); //TODO: is this safe with monetary amounts? - } - - /** - * @param string $quantity - * @param string $price - * @param string $discount - * @param int $discount_type - * @param string $tax_percentage - * @return string - */ - public function get_item_tax(string $quantity, string $price, string $discount, int $discount_type, string $tax_percentage): string - { - $item_total = $this->get_item_total($quantity, $price, $discount, $discount_type, true); - - if($this->config['tax_included']) - { - $tax_fraction = bcdiv(bcadd('100', $tax_percentage), '100'); - $price_tax_excl = bcdiv($item_total, $tax_fraction); - - return bcsub($item_total, $price_tax_excl); - } - - $tax_fraction = bcdiv($tax_percentage, '100'); - - return bcmul($item_total, $tax_fraction); - } - - /** - * @param bool $include_discount - * @param bool $exclude_tax - * @return string - */ - public function calculate_subtotal(bool $include_discount = false, bool $exclude_tax = false): string - { - $subtotal = '0.0'; - foreach($this->get_cart() as $item) - { - if($exclude_tax && $this->config['tax_included']) - { - $subtotal = bcadd($subtotal, $this->get_item_total_tax_exclusive($item['item_id'], $item['quantity'], $item['price'], $item['discount'], $item['discount_type'], $include_discount)); - } - else - { - $subtotal = bcadd($subtotal, $this->get_item_total($item['quantity'], $item['price'], $item['discount'], $item['discount_type'], $include_discount)); - } - } - - return $subtotal; - } - - /** - * Calculates the total sales amount with the default option to include cash rounding - * @param bool $include_cash_rounding - * @return string - */ - public function get_total(bool $include_cash_rounding = true): string - { - $total = $this->calculate_subtotal(true); - - $cash_mode = $this->session->get('cash_mode'); - - if(!$this->config['tax_included']) - { - $cart = $this->get_cart(); - $tax_lib = new Tax_lib(); - - foreach($tax_lib->get_taxes($cart)[0] as $tax) - { - $total = bcadd($total, $tax['sale_tax_amount']); - } - } - - if($include_cash_rounding && $cash_mode) - { - $total = $this->check_for_cash_rounding($total); - } - - return $total; - } - - /** - * @param int|null $current_dinner_table_id - * @return array - */ - public function get_empty_tables(?int $current_dinner_table_id): array - { - return $this->dinner_table->get_empty_tables($current_dinner_table_id); - } - - /** - * @param string $total - * @return string - */ - public function check_for_cash_rounding(string $total): string - { - $cash_decimals = cash_decimals(); - $cash_rounding_code = $this->config['cash_rounding_code']; - - return Rounding_mode::round_number($cash_rounding_code, (float)$total, $cash_decimals); - } + private Attribute $attribute; + private Customer $customer; + private Dinner_table $dinner_table; + private Item $item; + private Item_kit_items $item_kit_items; + private Item_quantity $item_quantity; + private Item_taxes $item_taxes; + private Sale $sale; + private Stock_location $stock_location; + private Session $session; + private array $config; + + public function __construct() + { + $this->session = session(); + + $this->attribute = model(Attribute::class); + $this->customer = model(Customer::class); + $this->dinner_table = model(Dinner_table::class); + $this->item = model(Item::class); + $this->item_kit_items = model(Item_kit_items::class); + $this->item_quantity = model(Item_quantity::class); + $this->item_taxes = model(Item_taxes::class); + $this->sale = model(Sale::class); + $this->stock_location = model(Stock_location::class); + $this->config = config(OSPOS::class)->settings; + } + + /** + * @return array + */ + public function get_line_sequence_options(): array + { + return [ + '0' => lang('Sales.entry'), + '1' => lang('Sales.group_by_type'), + '2' => lang('Sales.group_by_category') + ]; + } + + /** + * @return array + */ + public function get_register_mode_options(): array + { + $register_modes = []; + + if(!$this->config['invoice_enable']) + { + $register_modes['sale'] = lang('Sales.sale'); + } + else + { + $register_modes['sale'] = lang('Sales.receipt'); + $register_modes['sale_quote'] = lang('Sales.quote'); + + if($this->config['work_order_enable']) + { + $register_modes['sale_work_order'] = lang('Sales.work_order'); + } + + $register_modes['sale_invoice'] = lang('Sales.invoice'); + } + + $register_modes['return'] = lang('Sales.return'); + + return $register_modes; + } + + /** + * @return array + */ + public function get_invoice_type_options(): array + { + $invoice_types = []; + $invoice_types['invoice'] = lang('Sales.invoice_type_invoice'); + $invoice_types['tax_invoice'] = lang('Sales.invoice_type_tax_invoice'); + $invoice_types['custom_invoice'] = lang('Sales.invoice_type_custom_invoice'); + $invoice_types['custom_tax_invoice'] = lang('Sales.invoice_type_custom_tax_invoice'); + return $invoice_types; + } + + /** + * @return array + */ + public function get_cart(): array + { + if(!$this->session->get('sales_cart')) + { + $this->set_cart ([]); + } + + return $this->session->get('sales_cart'); + } + + /** + * @param array $cart + * @return array + */ + public function sort_and_filter_cart(array $cart): array + { + if(empty($cart)) + { + return $cart; + } + + $filtered_cart = []; + + foreach($cart as $k => $v) //TODO: We should not be using single-letter variable names for readability. Several of these foreach loops should be refactored. + { + if($v['print_option'] == PRINT_YES) + { + if($v['price'] == 0.0) + { + $v['discount'] = 0.0; + } + $filtered_cart[] = $v; + } + } + + //TODO: This set of if/elseif/else needs to be converted to a switch statement + // Entry sequence (this will render kits in the expected sequence) + if($this->config['line_sequence'] == '0') + { + $sort = []; + foreach($filtered_cart as $k => $v) + { + $sort['line'][$k] = $v['line']; + } + array_multisort($sort['line'], SORT_ASC, $filtered_cart); + } + // Group by Stock Type (nonstock first - type 1, stock next - type 0) + elseif($this->config['line_sequence'] == '1') //TODO: Need to change these to constants + { + $sort = []; + foreach($filtered_cart as $k => $v) + { + $sort['stock_type'][$k] = $v['stock_type']; + $sort['description'][$k] = $v['description']; + $sort['name'][$k] = $v['name']; + } + array_multisort($sort['stock_type'], SORT_DESC, $sort['description'], SORT_ASC, $sort['name'], SORT_ASC, $filtered_cart); + } + // Group by Item Category + elseif($this->config['line_sequence'] == '2') //TODO: Need to change these to constants + { + $sort = []; + foreach($filtered_cart as $k => $v) + { + $sort['category'][$k] = $v['stock_type']; + $sort['description'][$k] = $v['description']; + $sort['name'][$k] = $v['name']; + } + array_multisort($sort['category'], SORT_DESC, $sort['description'], SORT_ASC, $sort['name'], SORT_ASC, $filtered_cart); + } + // Group by entry sequence in descending sequence (the Standard) + else + { + $sort = []; + foreach($filtered_cart as $k => $v) + { + $sort['line'][$k] = $v['line']; + } + array_multisort($sort['line'], SORT_ASC, $filtered_cart); + } + + return $filtered_cart; + } + + /** + * @param array $cart_data + * @return void + */ + public function set_cart(array $cart_data): void + { + $this->session->set('sales_cart', $cart_data); + } + + /** + * @return void + */ + public function empty_cart(): void + { + $this->session->remove('sales_cart'); + } + + /** + * @return void + */ + public function remove_temp_items(): void + { + // Loop through the cart items and delete temporary items specific to this sale + $cart = $this->get_cart(); + foreach($cart as $line=>$item) + { + if($item['item_type'] == ITEM_TEMP) //TODO: === ? + { + $this->item->delete($item['item_id']); + } + } + } + + /** + * @return string + */ + public function get_comment(): string + { + // avoid returning a null that results in a 0 in the comment if nothing is set/available + $comment = $this->session->get('sales_comment'); + + return empty($comment) ? '' : $comment; + } + + /** + * @param string $comment + * @return void + */ + public function set_comment(string $comment): void + { + $this->session->set('sales_comment', $comment); + } + + /** + * @return void + */ + public function clear_comment(): void + { + $this->session->remove('sales_comment'); + } + + /** + * @return string|null + */ + public function get_invoice_number(): ?string + { + return $this->session->get('sales_invoice_number'); + } + + /** + * @return string|null + */ + public function get_quote_number(): ?string + { + return $this->session->get('sales_quote_number'); + } + + /** + * @return string|null + */ + public function get_work_order_number(): ?string + { + return $this->session->get('sales_work_order_number'); + } + + /** + * @return int|null + */ + public function get_sale_type(): ?int + { + return $this->session->get('sale_type', 0); + } + + /** + * @param int $invoice_number + * @param bool $keep_custom + * @return void + */ + public function set_invoice_number(int $invoice_number, bool $keep_custom = false): void + { + $current_invoice_number = $this->session->get('sales_invoice_number'); + + if(!$keep_custom || empty($current_invoice_number)) + { + $this->session->set('sales_invoice_number', $invoice_number); + } + } + + /** + * @param string|null $quote_number + * @param bool $keep_custom + * @return void + */ + public function set_quote_number(?string $quote_number, bool $keep_custom = false): void + { + $current_quote_number = $this->session->get('sales_quote_number'); + + if(!$keep_custom || empty($current_quote_number)) + { + $this->session->set('sales_quote_number', $quote_number); + } + } + + /** + * @param string|null $work_order_number + * @param bool $keep_custom + * @return void + */ + public function set_work_order_number(?string $work_order_number, bool $keep_custom = false): void + { + $current_work_order_number = $this->session->get('sales_work_order_number'); + + if(!$keep_custom || empty($current_work_order_number)) + { + $this->session->set('sales_work_order_number', $work_order_number); + } + } + + /** + * @param int $sale_type + * @param bool $keep_custom + * @return void + */ + public function set_sale_type(int $sale_type, bool $keep_custom = false): void + { + $current_sale_type = $this->session->get('sale_type'); + + if(!$keep_custom || empty($current_sale_type)) + { + $this->session->set('sale_type', $sale_type); + } + } + + /** + * @return void + */ + public function clear_invoice_number(): void + { + $this->session->remove('sales_invoice_number'); + } + + /** + * @return void + */ + public function clear_quote_number(): void + { + $this->session->remove('sales_quote_number'); + } + + /** + * @return void + */ + public function clear_work_order_number(): void + { + $this->session->remove('sales_work_order_number'); + } + + /** + * @return void + */ + public function clear_sale_type(): void + { + $this->session->remove('sale_type'); + } + + /** + * @param int $suspended_id + * @return void + */ + public function set_suspended_id(int $suspended_id): void + { + $this->session->set('suspended_id', $suspended_id); + } + + /** + * @return int + */ + public function get_suspended_id(): int + { + return $this->session->get('suspended_id'); + } + + /** + * @return bool + */ + public function is_invoice_mode(): bool + { + return ($this->session->get('sales_mode') == 'sale_invoice' && $this->config['invoice_enable']); + } + + /** + * @return bool + */ + public function is_sale_by_receipt_mode(): bool //TODO: This function is not called anywhere in the code. + { + return ($this->session->get('sales_mode') == 'sale'); //TODO: === ? + } + + /** + * @return bool + */ + public function is_quote_mode(): bool + { + return ($this->session->get('sales_mode') == 'sale_quote'); //TODO: === ? + } + + /** + * @return bool + */ + public function is_return_mode(): bool + { + return ($this->session->get('sales_mode') == 'return'); //TODO: === ? + } + + /** + * @return bool + */ + public function is_work_order_mode(): bool + { + return ($this->session->get('sales_mode') == 'sale_work_order'); //TODO: === ? + } + + /** + * @param string $price_work_orders + * @return void + */ + public function set_price_work_orders(string $price_work_orders): void + { + $this->session->set('sales_price_work_orders', $price_work_orders); + } + + /** + * @return bool + */ + public function is_price_work_orders(): bool + { + return ($this->session->get('sales_price_work_orders') == 'true' //TODO: === ? + || $this->session->get('sales_price_work_orders') == '1'); //TODO: === ? + } + + /** + * @param bool $print_after_sale + * @return void + */ + public function set_print_after_sale(bool $print_after_sale): void + { + $this->session->set('sales_print_after_sale', $print_after_sale); + } + + /** + * @return bool + */ + public function is_print_after_sale(): bool + {//TODO: this needs to be converted to a switch statement + if($this->config['print_receipt_check_behaviour'] == 'always') //TODO: 'behaviour' is the british spelling, but the rest of the code is in American English. Not a big deal, but noticed. Also === + { + return true; + } + elseif($this->config['print_receipt_check_behaviour'] == 'never') //TODO: === ? + { + return false; + } + else // remember last setting, session based though + { + return ($this->session->get('sales_print_after_sale') == 'true' //TODO: === ? + || $this->session->get('sales_print_after_sale') == '1'); //TODO: === ? + } + } + + /** + * @param string $email_receipt + * @return void + */ + public function set_email_receipt(string $email_receipt): void + { + $this->session->set('sales_email_receipt', $email_receipt); + } + + /** + * @return void + */ + public function clear_email_receipt(): void + { + $this->session->remove('sales_email_receipt'); + } + + /** + * @return bool + */ + public function is_email_receipt(): bool + {//TODO: this needs to be converted to a switch statement + if($this->config['email_receipt_check_behaviour'] == 'always') //TODO: 'behaviour' is the british spelling, but the rest of the code is in American English. Not a big deal, but noticed. Also === + { + return true; + } + elseif($this->config['email_receipt_check_behaviour'] == 'never') //TODO: === ? + { + return false; + } + else // remember last setting, session based though + { + return ($this->session->get('sales_email_receipt') == 'true' //TODO: === ? + || $this->session->get('sales_email_receipt') == '1'); //TODO: === ? + } + } + + /** + * Multiple Payments + */ + public function get_payments(): array + { + if(!$this->session->get('sales_payments')) + { + $this->set_payments ([]); + } + + return $this->session->get('sales_payments'); + } + + /** + * Multiple Payments + */ + public function set_payments(array $payments_data): void + { + $this->session->set('sales_payments', $payments_data); + } + + /** + * Adds a new payment to the payments array or updates an existing one. + * It will also disable cash_mode if a non-qualifying payment type is added. + * @param string $payment_id + * @param string $payment_amount + * @param int $cash_adjustment + */ + public function add_payment(string $payment_id, string $payment_amount, int $cash_adjustment = CASH_ADJUSTMENT_FALSE): void + { + $payments = $this->get_payments(); + if(isset($payments[$payment_id])) + { + //payment_method already exists, add to payment_amount + $payments[$payment_id]['payment_amount'] = bcadd($payments[$payment_id]['payment_amount'], $payment_amount); + } + else + { + //add to existing array + $payment = [ + $payment_id => [ + 'payment_type' => $payment_id, + 'payment_amount' => $payment_amount, + 'cash_refund' => 0, + 'cash_adjustment' => $cash_adjustment + ] + ]; + + $payments += $payment; + } + + if($this->session->get('cash_mode')) + { + if($this->session->get('cash_rounding') && $payment_id != lang('Sales.cash') && $payment_id != lang('Sales.cash_adjustment')) + { + $this->session->set('cash_mode', CASH_MODE_FALSE); + } + } + + $this->set_payments($payments); + } + + /** + * Multiple Payments + */ + public function edit_payment(string $payment_id, float $payment_amount): bool + { + $payments = $this->get_payments(); + if(isset($payments[$payment_id])) + { + $payments[$payment_id]['payment_type'] = $payment_id; + $payments[$payment_id]['payment_amount'] = $payment_amount; + $this->set_payments($payments); + + return true; + } + + return false; + } + + /** + * Delete the selected payment from the payment array and if cash rounding is enabled + * and the payment type is one of the cash types then automatically delete the other + * @param string $payment_id + */ + public function delete_payment(string $payment_id): void + { + $payments = $this->get_payments(); + $decoded_payment_id = urldecode($payment_id); + + unset($payments[$decoded_payment_id]); + + $cash_rounding = $this->reset_cash_rounding(); + + if($cash_rounding) + { + if($decoded_payment_id == lang('Sales.cash')) //TODO: === ? + { + unset($payments[lang('Sales.cash_adjustment')]); + } + + if($decoded_payment_id == lang('Sales.cash_adjustment')) //TODO: === ? + { + unset($payments[lang('Sales.cash')]); + } + } + $this->set_payments($payments); + } + + /** + * Multiple Payments + */ + public function empty_payments(): void //TODO: function verbs are very inconsistent in these libraries. + { + $this->session->remove('sales_payments'); + } + + /** + * Retrieve the total payments made, excluding any cash adjustments + * and establish if cash_mode is in play + */ + public function get_payments_total(): string + { + $subtotal = '0.0'; + $cash_mode_eligible = CASH_MODE_TRUE; + + foreach($this->get_payments() as $payments) + { + if(!$payments['cash_adjustment']) + { + $subtotal = bcadd($payments['payment_amount'], $subtotal); + } + if(lang('Sales.cash') != $payments['payment_type'] && lang('Sales.cash_adjustment') != $payments['payment_type']) + { + $cash_mode_eligible = CASH_MODE_FALSE; + } + } + + if($cash_mode_eligible && $this->session->get('cash_rounding')) //TODO: $cache_mode_eligible will always evaluate to true + { + $this->session->set('cash_mode', CASH_MODE_TRUE); + } + + return $subtotal; + } + + /** + * Returns 'subtotal', 'total', 'cash_total', 'payment_total', 'amount_due', 'cash_amount_due', 'paid_in_full' + * 'subtotal', 'discounted_subtotal', 'tax_exclusive_subtotal', 'item_count', 'total_units', 'cash_adjustment_amount' + */ + public function get_totals(array $taxes): array + { + $totals = []; + + $prediscount_subtotal = '0.0'; + $subtotal = '0.0'; + $total = '0.0'; + $total_discount = '0.0'; + $item_count = 0; + $total_units = 0.0; + + foreach($this->get_cart() as $item) + { + if($item['stock_type'] == HAS_STOCK) + { + $item_count++; + $total_units += $item['quantity']; + } + $discount_amount = $this->get_item_discount($item['quantity'], $item['price'], $item['discount'], $item['discount_type']); + $total_discount = bcadd($total_discount, $discount_amount); + + $extended_amount = $this->get_extended_amount($item['quantity'], $item['price']); + $extended_discounted_amount = $this->get_extended_amount($item['quantity'], $item['price'], $discount_amount); + $prediscount_subtotal = bcadd($prediscount_subtotal, $extended_amount); + $total = bcadd($total, $extended_discounted_amount); + + $subtotal = bcadd($subtotal, $extended_discounted_amount); + } + + $totals['prediscount_subtotal'] = $prediscount_subtotal; + $totals['total_discount'] = $total_discount; + $sales_tax = '0'; + + foreach($taxes as $tax) + { + if($tax['tax_type'] === Tax_lib::TAX_TYPE_EXCLUDED) + { + $total = bcadd($total, $tax['sale_tax_amount']); + $sales_tax = bcadd($sales_tax, $tax['sale_tax_amount']); + } + else + { + $subtotal = bcsub($subtotal, $tax['sale_tax_amount']); + } + } + + $totals['subtotal'] = $subtotal; + $totals['total'] = $total; + $totals['tax_total'] = $sales_tax; + + $payment_total = $this->get_payments_total(); + $totals['payment_total'] = $payment_total; + $cash_rounding = $this->session->get('cash_rounding'); + $cash_mode = $this->session->get('cash_mode'); + + if($cash_rounding) + { + $cash_total = $this->check_for_cash_rounding($total); + $totals['cash_total'] = $cash_total; + } + else + { + $cash_total = $total; + $totals['cash_total'] = $cash_total; + } + + $amount_due = bcsub($total, $payment_total); + $totals['amount_due'] = $amount_due; + + $cash_amount_due = bcsub($cash_total, $payment_total); + $totals['cash_amount_due'] = $cash_amount_due; + + if($cash_mode) //TODO: Convert to ternary notation + { + $current_due = $cash_amount_due; + } + else + { + $current_due = $amount_due; + } + + // 0 decimal -> 1 / 2 = 0.5, 1 decimals -> 0.1 / 2 = 0.05, 2 decimals -> 0.01 / 2 = 0.005 + $threshold = bcpow('10', (string)-totals_decimals()) / 2; + + if($this->get_mode() == 'return') //TODO: Convert to ternary notation. + { + $totals['payments_cover_total'] = $current_due > -$threshold; + } + else + { + $totals['payments_cover_total'] = $current_due < $threshold; + } + + $totals['item_count'] = $item_count; + $totals['total_units'] = $total_units; + $totals['cash_adjustment_amount'] = 0.0; + + if($totals['payments_cover_total']) + { + $totals['cash_adjustment_amount'] = round($cash_total - $totals['total'], totals_decimals(), PHP_ROUND_HALF_UP); + } + + $cash_mode = $this->session->get('cash_mode'); //TODO: This variable is never used. + + return $totals; + } + + /** + * Multiple Payments + */ + public function get_amount_due(): string + { + // Payment totals need to be identified first so that we know whether or not there is a non-cash payment involved + $payment_total = $this->get_payments_total(); + $sales_total = $this->get_total(); + $amount_due = bcsub($sales_total, $payment_total); + $precision = totals_decimals(); + $rounded_due = bccomp((string)round((float)$amount_due, $precision, PHP_ROUND_HALF_UP), '0', $precision); //TODO: Is round() currency safe? + + // take care of rounding error introduced by round tripping payment amount to the browser + return $rounded_due == 0 ? '0' : $amount_due; //TODO: === + } + + /** + * @return int + */ + public function get_customer(): int + { + if(!$this->session->get('sales_customer')) + { + $this->set_customer(-1); //TODO: Replace -1 with a constant + } + + return $this->session->get('sales_customer'); + } + + /** + * @param int $customer_id + * @return void + */ + public function set_customer(int $customer_id): void + { + $this->session->set('sales_customer', $customer_id); + } + + /** + * @return void + */ + public function remove_customer(): void + { + $this->session->remove('sales_customer'); + } + + /** + * @return int + */ + public function get_employee(): int + { + if(!$this->session->get('sales_employee')) + { + $this->set_employee(-1); //TODO: Replace -1 with a constant + } + + return $this->session->get('sales_employee'); + } + + /** + * @param int $employee_id + * @return void + */ + public function set_employee(int $employee_id): void + { + $this->session->set('sales_employee', $employee_id); + } + + /** + * @return void + */ + public function remove_employee(): void + { + $this->session->remove('sales_employee'); + } + + /** + * @return string + */ + public function get_mode(): string + { + if(!$this->session->get('sales_mode')) + { + $this->set_mode('sale'); + } + return $this->session->get('sales_mode'); + } + + /** + * @param string $mode + * @return void + */ + public function set_mode(string $mode): void + { + $this->session->set('sales_mode', $mode); + } + + /** + * @return void + */ + public function clear_mode(): void + { + $this->session->remove('sales_mode'); + } + + /** + * @return int|null + */ + public function get_dinner_table(): ?int + { + if(!$this->session->get('dinner_table')) + { + if($this->config['dinner_table_enable']) + { + $this->set_dinner_table(1); //TODO: Replace 1 with constant + } + } + + return $this->session->get('dinner_table'); + } + + /** + * @param int|null $dinner_table + * @return void + */ + public function set_dinner_table(?int $dinner_table): void + { + $this->session->set('dinner_table', $dinner_table); + } + + /** + * @return void + */ + public function clear_table(): void + { + $this->session->remove('dinner_table'); + } + + /** + * @return int + */ + public function get_sale_location(): int + { + if(!$this->session->get('sales_location')) + { + $this->set_sale_location($this->stock_location->get_default_location_id('sales')); + } + + return $this->session->get('sales_location'); + } + + /** + * @param int $location + * @return void + */ + public function set_sale_location(int $location): void + { + $this->session->set('sales_location', $location); + } + + /** + * @param string $payment_type + * @return void + */ + public function set_payment_type(string $payment_type): void + { + $this->session->set('payment_type', $payment_type); + } + + /** + * @return string|null + */ + public function get_payment_type(): ?string + { + return $this->session->get('payment_type'); + } + + /** + * @return void + */ + public function clear_sale_location(): void + { + $this->session->remove('sales_location'); + } + + /** + * @param string $value + * @return void + */ + public function set_giftcard_remainder(string $value): void + { + $this->session->set('sales_giftcard_remainder', $value); + } + + /** + * @return string|null + */ + public function get_giftcard_remainder(): ?string + { + return $this->session->get('sales_giftcard_remainder'); + } + + /** + * @return void + */ + public function clear_giftcard_remainder(): void + { + $this->session->remove('sales_giftcard_remainder'); + } + + /** + * @param string $value + * @return void + */ + public function set_rewards_remainder(string $value): void + { + $this->session->set('sales_rewards_remainder', $value); + } + + /** + * @return string|null + */ + public function get_rewards_remainder(): ?string + { + return $this->session->get('sales_rewards_remainder'); + } + + /** + * @return void + */ + public function clear_rewards_remainder(): void + { + $this->session->remove('sales_rewards_remainder'); + } + + //TODO: this function needs to be reworked... way too many parameters. Also, optional parameters must go after mandatory parameters. + + /** + * @param int $item_id + * @param int $item_location + * @param string $quantity + * @param string $discount + * @param int $discount_type + * @param int $price_mode + * @param int|null $kit_price_option + * @param int|null $kit_print_option + * @param string|null $price_override + * @param string|null $description + * @param string|null $serialnumber + * @param int|null $sale_id + * @param bool $include_deleted + * @param bool|null $print_option + * @param bool|null $line + * @return bool + */ + public function add_item(int &$item_id, int $item_location, string $quantity = '1', string &$discount = '0.0', int $discount_type = 0, int $price_mode = PRICE_MODE_STANDARD, int $kit_price_option = null, int $kit_print_option = null, string $price_override = null, string $description = null, string $serialnumber = null, int $sale_id = null, bool $include_deleted = false, bool $print_option = null, bool $line = null): bool + { + $item_info = $this->item->get_info_by_id_or_number($item_id, $include_deleted); + + //make sure item exists + if(empty($item_info)) + { + $item_id = NEW_ENTRY; + return false; + } + + $applied_discount = $discount; + $item_id = $item_info->item_id; + $item_type = $item_info->item_type; + $stock_type = $item_info->stock_type; + + $price = $item_info->unit_price; + $cost_price = $item_info->cost_price; + if($price_override != null) + { + $price = $price_override; + } + + if($price_mode == PRICE_MODE_KIT) + { + if(!($kit_price_option == PRICE_OPTION_ALL + || $kit_price_option == PRICE_OPTION_KIT && $item_type == ITEM_KIT + || $kit_price_option == PRICE_OPTION_KIT_STOCK && $stock_type == HAS_STOCK)) //TODO: === ? + { + $price = '0.00'; + $applied_discount = '0.00'; + } + + // If price is zero do not include a discount regardless of type + if($price == '0.00') //TODO: === ? + { + $applied_discount = '0.00'; + } + + // If fixed discount then apply no more than the item price + if($discount_type == FIXED) //TODO: === ? + { + if($applied_discount > $price) + { + $applied_discount = $price; + $discount -= $applied_discount; + } + else + { + $discount = 0; + } + } + } + + // Serialization and Description + + //Get all items in the cart so far... + $items = $this->get_cart(); + + //We need to loop through all items in the cart. + //If the item is already there, get it's key($updatekey). + //We also need to get the next key that we are going to use in case we need to add the + //item to the cart. Since items can be deleted, we can't use a count. we use the highest key + 1. + + $maxkey = 0; //Highest key so far + $itemalreadyinsale = false; //We did not find the item yet. //TODO: variable naming here does not match the convention + $insertkey = 0; //Key to use for new entry. //TODO: $insertkey is never used + $updatekey = 0; //Key to use to update(quantity) + + foreach($items as $item) + { + //We primed the loop so maxkey is 0 the first time. + //Also, we have stored the key in the element itself so we can compare. + + if($maxkey <= $item['line']) //TODO: variable naming here does not match the convention + { + $maxkey = $item['line']; + } + + if($item['item_id'] == $item_id && $item['item_location'] == $item_location) //TODO: === ? + { + $itemalreadyinsale = true; + $updatekey = $item['line']; + if(!$item_info->is_serialized) + { + $quantity = bcadd($quantity, $items[$updatekey]['quantity']); + } + } + } + + $insertkey = $maxkey + 1;//TODO Does not follow naming conventions. + //array/cart records are identified by $insertkey and item_id is just another field. + + if($price_mode == PRICE_MODE_KIT) //TODO: === ? + { + if($kit_print_option == PRINT_ALL) //TODO: === ? + { + $print_option_selected = PRINT_YES; + } + elseif($kit_print_option == PRINT_KIT && $item_type == ITEM_KIT) //TODO: === ? + { + $print_option_selected = PRINT_YES; + } + elseif($kit_print_option == PRINT_PRICED && $price > 0) //TODO: === ? + { + $print_option_selected = PRINT_YES; + } + else + { + $print_option_selected = PRINT_NO; + } + } + else + { //TODO: Convert this to ternary notation + if($print_option != null) //TODO: === ? + { + $print_option_selected = $print_option; + } + else + { + $print_option_selected = PRINT_YES; + } + } + + $total = $this->get_item_total($quantity, $price, $applied_discount, $discount_type); + $discounted_total = $this->get_item_total($quantity, $price, $applied_discount, $discount_type, true); + + if($this->config['multi_pack_enabled']) + { + $item_info->name .= NAME_SEPARATOR . $item_info->pack_name; + } + + $attribute_links = $this->attribute->get_link_values($item_id, 'sale_id', $sale_id, Attribute::SHOW_IN_SALES)->getRowObject(); + + //Item already exists and is not serialized, add to quantity + if(!$itemalreadyinsale || $item_info->is_serialized) + { + $item = [ + $insertkey => [ + 'item_id' => $item_id, + 'item_location' => $item_location, + 'stock_name' => $this->stock_location->get_location_name($item_location), + 'line' => $insertkey, + 'name' => $item_info->name, + 'item_number' => $item_info->item_number, + 'attribute_values' => $attribute_links->attribute_values, + 'attribute_dtvalues' => $attribute_links->attribute_dtvalues, + 'description' => $description != null ? $description : $item_info->description, + 'serialnumber' => $serialnumber != null ? $serialnumber : '', + 'allow_alt_description' => $item_info->allow_alt_description, + 'is_serialized' => $item_info->is_serialized, + 'quantity' => $quantity, + 'discount' => $applied_discount, + 'discount_type' => $discount_type, + 'in_stock' => $this->item_quantity->get_item_quantity($item_id, $item_location)->quantity, + 'price' => $price, + 'cost_price' => $cost_price, + 'total' => $total, + 'discounted_total' => $discounted_total, + 'print_option' => $print_option_selected, + 'stock_type' => $stock_type, + 'item_type' => $item_type, + 'hsn_code' => $item_info->hsn_code, + 'tax_category_id' => $item_info->tax_category_id + ] + ]; + + //add to existing array + $items += $item; + } + else + { + $line = &$items[$updatekey]; + $line['quantity'] = $quantity; + $line['total'] = $total; + $line['discounted_total'] = $discounted_total; + } + + $this->set_cart($items); + + return true; + } + + /** + * @param int $item_id + * @param int $item_location + * @return string + */ + public function out_of_stock(int $item_id, int $item_location): string + { + //make sure item exists + if($item_id != -1) //TODO: !== ?. Also Replace -1 with a constant + { + $item_info = $this->item->get_info_by_id_or_number($item_id); + + if($item_info->stock_type == HAS_STOCK) //TODO: === ? + { + $item_quantity = $this->item_quantity->get_item_quantity($item_id, $item_location)->quantity; + $quantity_added = $this->get_quantity_already_added($item_id, $item_location); + + if($item_quantity - $quantity_added < 0) + { + return lang('Sales.quantity_less_than_zero'); + } + elseif($item_quantity - $quantity_added < $item_info->reorder_level) + { + return lang('Sales.quantity_less_than_reorder_level'); + } + } + } + + return ''; + } + + /** + * @param int $item_id + * @param int $item_location + * @return string + */ + public function get_quantity_already_added(int $item_id, int $item_location): string + { + $items = $this->get_cart(); + $quantity_already_added = '0.0'; + foreach($items as $item) + { + if($item['item_id'] == $item_id && $item['item_location'] == $item_location) //TODO: === ? + { + $quantity_already_added += $item['quantity']; //TODO: for precision we likely need to use bcadd() since we are using that everywhere else for quantity + } + } + + return $quantity_already_added; + } + + /** + * @param string $line_to_get + * @return int + */ + public function get_item_id(string $line_to_get): int + { + $items = $this->get_cart(); + + foreach($items as $line => $item) + { + if($line == $line_to_get) + { + return $item['item_id']; + } + } + + return -1; //TODO: Replace -1 with constant + } + + /* @param string $line + * @param string $description + * @param string $serialnumber + * @param string $quantity + * @param string $discount + * @param string|null $discount_type + * @param string|null $price + * @param string|null $discounted_total + * @return bool + */ + public function edit_item(string $line, string $description, string $serialnumber, string $quantity, string $discount, ?string $discount_type, ?string $price, ?string $discounted_total = null): bool + { + $items = $this->get_cart(); + if(isset($items[$line])) + { + $line = &$items[$line]; + if($discounted_total != null && $discounted_total != $line['discounted_total']) + { + // Note when entered the "discounted_total" is expected to be entered without a discount + $quantity = $this->get_quantity_sold($discounted_total, $price); + } + $line['description'] = $description; + $line['serialnumber'] = $serialnumber; + $line['quantity'] = $quantity; + $line['discount'] = $discount; + + if($discount_type != null) + { + $line['discount_type'] = $discount_type; + } + + $line['price'] = $price; + $line['total'] = $this->get_item_total($quantity, $price, $discount, $line['discount_type']); + $line['discounted_total'] = $this->get_item_total($quantity, $price, $discount, $line['discount_type'], true); + $this->set_cart($items); + } + + return false; //TODO: This function will always return false. + } + + /** + * @param int $line + * @return void + */ + public function delete_item(int $line): void + { + $items = $this->get_cart(); + $item_type = $items[$line]['item_type']; + + if($item_type == ITEM_TEMP) + { + $item_id = $items[$line]['item_id']; + $this->item->delete($item_id); + } + + unset($items[$line]); + $this->set_cart($items); + } + + /** + * @param string $receipt_sale_id + * @return void + */ + public function return_entire_sale(string $receipt_sale_id): void + { + //POS # + $pieces = explode(' ', $receipt_sale_id); + $sale_id = $pieces[1]; + + $this->empty_cart(); + $this->remove_customer(); + + foreach($this->sale->get_sale_items_ordered($sale_id)->getResult() as $row) + { + $this->add_item($row->item_id, $row->item_location, -$row->quantity_purchased, $row->discount, $row->discount_type, PRICE_MODE_STANDARD, null, null, $row->item_unit_price, $row->description, $row->serialnumber, null, true); + } + + $this->set_customer($this->sale->get_customer($sale_id)->person_id); + } + + /** + * @param string $external_item_kit_id + * @param int $item_location + * @param float $discount + * @param string $discount_type + * @param bool $kit_price_option + * @param bool $kit_print_option + * @param string $stock_warning + * @return bool + */ + public function add_item_kit(string $external_item_kit_id, int $item_location, float $discount, string $discount_type, bool $kit_price_option, bool $kit_print_option, ?string &$stock_warning): bool + { + //KIT # + $pieces = explode(' ', $external_item_kit_id); + $item_kit_id = (count($pieces) > 1) ? $pieces[1] : $external_item_kit_id; + $result = true; + $applied_discount = $discount; + + foreach($this->item_kit_items->get_info($item_kit_id) as $item_kit_item) + { + $result &= $this->add_item($item_kit_item['item_id'], $item_location, $item_kit_item['quantity'], $discount, $discount_type, PRICE_MODE_KIT, $kit_price_option, $kit_print_option); + + if($stock_warning == null) + { + $stock_warning = $this->out_of_stock($item_kit_item['item_id'], $item_location); + } + } + + return $result; + } + + /** + * @param int $sale_id + * @return void + */ + public function copy_entire_sale(int $sale_id): void + { + $this->empty_cart(); + $this->remove_customer(); + + foreach($this->sale->get_sale_items_ordered($sale_id)->getResult() as $row) + { + $this->add_item($row->item_id, $row->item_location, $row->quantity_purchased, $row->discount, $row->discount_type, PRICE_MODE_STANDARD, null, null, $row->item_unit_price, $row->description, $row->serialnumber, $sale_id, true, $row->print_option); + } + + $this->session->set('cash_mode', CASH_MODE_FALSE); + + // Establish cash_mode for this sale by inspecting the payments + if($this->session->get('cash_rounding')) + { + $cash_types_only = true; + foreach($this->sale->get_sale_payments($sale_id)->getResult() as $row) + { + if($row->payment_type != lang('Sales.cash') && $row->payment_type != lang('Sales.cash_adjustment')) + { + $cash_types_only = false; + } + + } + //TODO: Consider converting to ternary notation. + //$cash_types_only + // ? $this->session->set('cash_mode', CASH_MODE_TRUE) + // : $this->session->set('cash_mode', CASH_MODE_FALSE); + if($cash_types_only) + { + $this->session->set('cash_mode', CASH_MODE_TRUE); + } + else + { + $this->session->set('cash_mode', CASH_MODE_FALSE); + } + } + + // Now load payments + foreach($this->sale->get_sale_payments($sale_id)->getResult() as $row) + { + $this->add_payment($row->payment_type, $row->payment_amount, $row->cash_adjustment); + } + + $this->set_customer($this->sale->get_customer($sale_id)->person_id); + $this->set_employee($this->sale->get_employee($sale_id)->person_id); + $this->set_quote_number($this->sale->get_quote_number($sale_id)); + $this->set_work_order_number($this->sale->get_work_order_number($sale_id)); + $this->set_sale_type($this->sale->get_sale_type($sale_id)); + $this->set_comment($this->sale->get_comment($sale_id)); + $this->set_dinner_table($this->sale->get_dinner_table($sale_id)); + $this->session->set('sale_id', $sale_id); + } + + /** + * @return int + */ + public function get_sale_id(): int + { + return $this->session->get('sale_id'); + } + + /** + * @return void + */ + public function clear_all(): void + { + $this->session->set('sale_id', -1); //TODO: Replace -1 with constant + $this->clear_mode(); + $this->clear_table(); + $this->empty_cart(); + $this->clear_comment(); + $this->clear_email_receipt(); + $this->clear_invoice_number(); + $this->clear_quote_number(); + $this->clear_work_order_number(); + $this->clear_sale_type(); + $this->clear_giftcard_remainder(); + $this->empty_payments(); + $this->remove_customer(); + $this->clear_cash_flags(); + } + + /** + * @return void + */ + public function clear_cash_flags(): void + { + $this->session->remove('cash_rounding'); + $this->session->remove('cash_mode'); + $this->session->remove('payment_type'); + } + + /** + * Determines if cash rounding should be a consideration for this site + * It also set resets the cash mode to disabled which will then be re-evaluated when + * retrieving payments. + */ + public function reset_cash_rounding(): int + { + $cash_rounding_code = $this->config['cash_rounding_code']; + + if(cash_decimals() < totals_decimals() || $cash_rounding_code == Rounding_mode::HALF_FIVE) //TODO: convert to ternary notation. + { + $cash_rounding = 1; //TODO: Replace with constant + } + else + { + $cash_rounding = 0; //TODO: Replace with constant + } + $this->session->set('cash_rounding', $cash_rounding); + $this->session->set('cash_mode', CASH_MODE_FALSE); + + return $cash_rounding; + } + + /** + * @return bool + */ + public function is_customer_taxable(): bool //TODO: This function is never called in the code + { + $customer_id = $this->get_customer(); + $customer = $this->customer->get_info($customer_id); + + //Do not charge sales tax if we have a customer that is not taxable + return $customer->taxable or $customer_id == -1; //TODO: Replace with constant. Also, I'm not sure we should be using the or operator instead of || here. $a || $b guarantees that the result of those two get returned. It's possible that return $a or $b could return just the result of $a since `or` has a lower precedence. + } + + /** + * @param string $discount + * @param int $discount_type + * @return void + */ + public function apply_customer_discount(string $discount, int $discount_type): void + { + // Get all items in the cart so far... + $items = $this->get_cart(); + + foreach($items as &$item) + { + $quantity = $item['quantity']; + $price = $item['price']; + + // set a new discount only if the current one is 0 + if($item['discount'] == 0.0) //TODO: === ? + { + $item['discount'] = $discount; + $item['total'] = $this->get_item_total($quantity, $price, $discount, $discount_type); + $item['discounted_total'] = $this->get_item_total($quantity, $price, $discount, $discount_type, true); + } + } + + $this->set_cart($items); + } + + /** + * @return string + */ + public function get_discount(): string + { + $discount = '0.0'; + foreach($this->get_cart() as $item) + { + if($item['discount'] > '0.0') + { + $item_discount = $this->get_item_discount($item['quantity'], $item['price'], $item['discount'], $item['discount_type']); + $discount = bcadd($discount, $item_discount); + } + } + + return $discount; + } + + /** + * @param bool $include_discount + * @param bool $exclude_tax + * @return string + */ + public function get_subtotal(bool $include_discount = false, bool $exclude_tax = false): string + { + return $this->calculate_subtotal($include_discount, $exclude_tax); + } + + /** + * @param int $item_id + * @param string $quantity + * @param string $price + * @param string $discount + * @param int $discount_type + * @param bool $include_discount + * @return string + */ + public function get_item_total_tax_exclusive(int $item_id, string $quantity, string $price, string $discount, int $discount_type, bool $include_discount = false): string + { + $tax_info = $this->item_taxes->get_info($item_id); + $item_total = $this->get_item_total($quantity, $price, $discount, $discount_type, $include_discount); + + // only additive tax here + foreach($tax_info as $tax) + { + $tax_percentage = $tax['percent']; + $item_total = bcsub($item_total, $this->get_item_tax($quantity, $price, $discount, $discount_type, $tax_percentage)); + } + + return $item_total; + } + + //TODO: This function doesn't seem to be called anywhere in the code. + + /** + * @param int $item_id + * @param string $discounted_extended_amount + * @param string $quantity + * @param string $price + * @param string $discount + * @param int $discount_type + * @return string + */ + public function get_extended_total_tax_exclusive(int $item_id, string $discounted_extended_amount, string $quantity, string $price, string $discount = '0.0', int $discount_type = 0): string + { + $tax_info = $this->item_taxes->get_info($item_id); + + // only additive tax here + foreach($tax_info as $tax) + { + $tax_percentage = $tax['percent']; + $discounted_extended_amount = bcsub($discounted_extended_amount, $this->get_item_tax($quantity, $price, $discount, $discount_type, $tax_percentage)); + } + + return $discounted_extended_amount; + } + + /** + * @param string $quantity + * @param string $price + * @param string $discount + * @param int $discount_type + * @param bool $include_discount + * @return string + */ + public function get_item_total(string $quantity, string $price, string $discount, int $discount_type, bool $include_discount = false): string + { + $total = bcmul($quantity, $price); + if($include_discount) + { + $discount_amount = $this->get_item_discount($quantity, $price, $discount, $discount_type); + + return bcsub($total, $discount_amount); + } + + return $total; + } + + /** + * Derive the quantity sold based on the new total entered, returning the quanitity rounded to the + * appropriate decimal positions. + * @param string $total + * @param string $price + * @return string + */ + public function get_quantity_sold(string $total, string $price): string + { + return bcdiv($total, $price, quantity_decimals()); + } + + /** + * @param string $quantity + * @param string $price + * @param string $discount_amount + * @return string + */ + public function get_extended_amount(string $quantity, string $price, string $discount_amount = '0.0'): string + { + $extended_amount = bcmul($quantity, $price); + + return bcsub($extended_amount, $discount_amount); + } + + /** + * @param string $quantity + * @param string $price + * @param string $discount + * @param int $discount_type + * @return string + */ + public function get_item_discount(string $quantity, string $price, string $discount, int $discount_type): string + { + $total = bcmul($quantity, $price); + if($discount_type == PERCENT) //TODO: === ?. Also, ternary notation + { + $discount = bcmul($total, bcdiv($discount, '100')); + } + else + { + $discount = bcmul($quantity, $discount); + } + + return (string)round((float)$discount, totals_decimals(), PHP_ROUND_HALF_UP); //TODO: is this safe with monetary amounts? + } + + /** + * @param string $quantity + * @param string $price + * @param string $discount + * @param int $discount_type + * @param string $tax_percentage + * @return string + */ + public function get_item_tax(string $quantity, string $price, string $discount, int $discount_type, string $tax_percentage): string + { + $item_total = $this->get_item_total($quantity, $price, $discount, $discount_type, true); + + if($this->config['tax_included']) + { + $tax_fraction = bcdiv(bcadd('100', $tax_percentage), '100'); + $price_tax_excl = bcdiv($item_total, $tax_fraction); + + return bcsub($item_total, $price_tax_excl); + } + + $tax_fraction = bcdiv($tax_percentage, '100'); + + return bcmul($item_total, $tax_fraction); + } + + /** + * @param bool $include_discount + * @param bool $exclude_tax + * @return string + */ + public function calculate_subtotal(bool $include_discount = false, bool $exclude_tax = false): string + { + $subtotal = '0.0'; + foreach($this->get_cart() as $item) + { + if($exclude_tax && $this->config['tax_included']) + { + $subtotal = bcadd($subtotal, $this->get_item_total_tax_exclusive($item['item_id'], $item['quantity'], $item['price'], $item['discount'], $item['discount_type'], $include_discount)); + } + else + { + $subtotal = bcadd($subtotal, $this->get_item_total($item['quantity'], $item['price'], $item['discount'], $item['discount_type'], $include_discount)); + } + } + + return $subtotal; + } + + /** + * Calculates the total sales amount with the default option to include cash rounding + * @param bool $include_cash_rounding + * @return string + */ + public function get_total(bool $include_cash_rounding = true): string + { + $total = $this->calculate_subtotal(true); + + $cash_mode = $this->session->get('cash_mode'); + + if(!$this->config['tax_included']) + { + $cart = $this->get_cart(); + $tax_lib = new Tax_lib(); + + foreach($tax_lib->get_taxes($cart)[0] as $tax) + { + $total = bcadd($total, $tax['sale_tax_amount']); + } + } + + if($include_cash_rounding && $cash_mode) + { + $total = $this->check_for_cash_rounding($total); + } + + return $total; + } + + /** + * @param int|null $current_dinner_table_id + * @return array + */ + public function get_empty_tables(?int $current_dinner_table_id): array + { + return $this->dinner_table->get_empty_tables($current_dinner_table_id); + } + + /** + * @param string $total + * @return string + */ + public function check_for_cash_rounding(string $total): string + { + $cash_decimals = cash_decimals(); + $cash_rounding_code = $this->config['cash_rounding_code']; + + return Rounding_mode::round_number($cash_rounding_code, (float)$total, $cash_decimals); + } } diff --git a/app/Libraries/Sms_lib.php b/app/Libraries/Sms_lib.php index abc5be69e..90cc327ce 100644 --- a/app/Libraries/Sms_lib.php +++ b/app/Libraries/Sms_lib.php @@ -16,67 +16,67 @@ use Config\Services; class Sms_lib { - /** - * SMS sending function - * Example of use: $response = sendSMS('4477777777', 'My test message'); - */ - public function sendSMS(int $phone, string $message): bool - { - $config = config(OSPOS::class)->settings; + /** + * SMS sending function + * Example of use: $response = sendSMS('4477777777', 'My test message'); + */ + public function sendSMS(int $phone, string $message): bool + { + $config = config(OSPOS::class)->settings; - $encrypter = Services::encrypter(); + $encrypter = Services::encrypter(); - $password = $config['msg_pwd']; - if(!empty($password)) - { - $password = $encrypter->decrypt($password); - } + $password = $config['msg_pwd']; + if(!empty($password)) + { + $password = $encrypter->decrypt($password); + } - $username = $config['msg_uid']; - $originator = $config['msg_src']; + $username = $config['msg_uid']; + $originator = $config['msg_src']; - $response = false; + $response = false; - // if any of the parameters is empty return with a false - if(empty($username) || empty($password) || empty($phone) || empty($message) || empty($originator)) //TODO: This if/else needs to be flipped. and shortened. No else needed in the code example below. - //$parameters = [$username, $password, $phone, $message, $originator]; - //if(count(array_filter($parameters)) === 5) - //{ - // $response = true; - // $message = rawurlencode($message); - //} - { - //echo $username . ' ' . $password . ' ' . $phone . ' ' . $message . ' ' . $originator; - } - else - { - $response = true; + // if any of the parameters is empty return with a false + if(empty($username) || empty($password) || empty($phone) || empty($message) || empty($originator)) //TODO: This if/else needs to be flipped. and shortened. No else needed in the code example below. + //$parameters = [$username, $password, $phone, $message, $originator]; + //if(count(array_filter($parameters)) === 5) + //{ + // $response = true; + // $message = rawurlencode($message); + //} + { + //echo $username . ' ' . $password . ' ' . $phone . ' ' . $message . ' ' . $originator; + } + else + { + $response = true; //TODO: These comments should be moved to the documentation. As is, they tend to get out of date. - // make sure passed string is url encoded - $message = rawurlencode($message); //TODO: $message needs to be passed by reference if you want this line to actually do anything + // make sure passed string is url encoded + $message = rawurlencode($message); //TODO: $message needs to be passed by reference if you want this line to actually do anything - // add call to send a message via 3rd party API here - // Some examples + // add call to send a message via 3rd party API here + // Some examples - /* - $url = "http://xxx.xxx.xxx.xxx/send_sms?username=$username&password=$password&src=$originator&dst=$phone&msg=$message&dr=1"; + /* + $url = "http://xxx.xxx.xxx.xxx/send_sms?username=$username&password=$password&src=$originator&dst=$phone&msg=$message&dr=1"; - $c = curl_init(); - curl_setopt($c, CURLOPT_RETURNTRANSFER, 1); - curl_setopt($c, CURLOPT_URL, $url); - $response = curl_exec($c); - curl_close($c); - */ + $c = curl_init(); + curl_setopt($c, CURLOPT_RETURNTRANSFER, 1); + curl_setopt($c, CURLOPT_URL, $url); + $response = curl_exec($c); + curl_close($c); + */ - // This is a textmarketer.co.uk API call, see: http://wiki.textmarketer.co.uk/display/DevDoc/Text+Marketer+Developer+Documentation+-+Wiki+Home - /* - $url = 'https://api.textmarketer.co.uk/gateway/'."?username=$username&password=$password&option=xml"; - $url .= "&to=$phone&message=".urlencode($message).'&orig='.urlencode($originator); - $fp = fopen($url, 'r'); - $response = fread($fp, 1024); - */ - } + // This is a textmarketer.co.uk API call, see: http://wiki.textmarketer.co.uk/display/DevDoc/Text+Marketer+Developer+Documentation+-+Wiki+Home + /* + $url = 'https://api.textmarketer.co.uk/gateway/'."?username=$username&password=$password&option=xml"; + $url .= "&to=$phone&message=".urlencode($message).'&orig='.urlencode($originator); + $fp = fopen($url, 'r'); + $response = fread($fp, 1024); + */ + } - return $response; - } + return $response; + } } diff --git a/app/Libraries/Tax_lib.php b/app/Libraries/Tax_lib.php index ccd934818..996b901d6 100644 --- a/app/Libraries/Tax_lib.php +++ b/app/Libraries/Tax_lib.php @@ -20,517 +20,517 @@ use Config\OSPOS; */ class Tax_lib { - public const TAX_TYPE_EXCLUDED = '1'; //TODO: These constants need to be moved to constants.php - public const TAX_TYPE_INCLUDED = '0'; - private Sale_lib $sale_lib; - private Customer $customer; - private Item_taxes $item_taxes; - private Sale $sale; - private Tax $tax; - private Tax_category $tax_category; - private Tax_code $tax_code; - private Tax_jurisdiction $tax_jurisdiction; - private array $config; - - public function __construct() - { - $this->sale_lib = new Sale_lib(); - - $this->customer = model(Customer::class); - $this->item_taxes = model(Item_taxes::class); - $this->sale = model(Sale::class); - $this->tax = model(Tax::class); - $this->tax_category = model(Tax_category::class); - $this->tax_code = model(Tax_code::class); - $this->tax_jurisdiction = model(Tax_jurisdiction::class); - $this->config = config(OSPOS::class)->settings; - } - - /** - * @return array - */ - public function get_tax_types(): array - { - return [ - Tax_lib::TAX_TYPE_EXCLUDED => lang('Taxes.tax_excluded'), - Tax_lib::TAX_TYPE_INCLUDED => lang('Taxes.tax_included') - ]; - } - - /** - * Compute the tax basis and returns the tax amount - */ - public function get_item_sales_tax(string $quantity, string $price, string $discount, int $discount_type, string $tax_percentage, int $rounding_code): string //TODO: It appears this function is never called in the code. - { - $decimals = tax_decimals(); - - // The tax basis should be returned to the currency scale - $tax_basis = $this->sale_lib->get_item_total($quantity, $price, $discount, $discount_type, true); - - return $this->get_tax_for_amount($tax_basis, $tax_percentage, $rounding_code, $decimals); - } - - /** - * Computes the item level sales tax amount for a given tax basis - */ - public function get_tax_for_amount(string $tax_basis, string $tax_percentage, int $rounding_mode, int $decimals): string - { - $tax_amount = bcmul($tax_basis, bcdiv($tax_percentage, '100')); - - return rounding_mode::round_number($rounding_mode, $tax_amount, $decimals); - } - - /** - * Compute taxes for all items in the cart - */ - public function get_taxes(array &$cart, int $sale_id = -1): array //TODO: Replace -1 with constant. - { - $register_mode = $this->sale_lib->get_mode(); - $tax_decimals = tax_decimals(); - $customer_id = $this->sale_lib->get_customer(); - $customer_info = $this->customer->get_info($customer_id); - $taxes = []; - $item_taxes = []; - - // Charge sales tax if customer is not selected (walk-in) or customer is flagged as taxable - if($customer_id == -1 || $customer_info->taxable) //TODO: Replace -1 with constant. - { - foreach($cart as $line => $item) - { - $taxed = false; - - if(!$this->config['use_destination_based_tax']) - { - // Start of current Base System tax calculations - - if($sale_id == -1) //TODO: Replace -1 with constant. Also, replace with ternary notation. - { - $tax_info = $this->item_taxes->get_info($item['item_id']); - } - else - { - $tax_info = $this->sale->get_sales_item_taxes($sale_id, $item['item_id']); - } - - $tax_group_sequence = 0; - $cascade_level = 0; //TODO: This variable is set but never used. - $cascade_basis_level = 0; //TODO: This variable is set but never used. - - foreach($tax_info as $tax) - { - // This computes tax for each line item and adds it to the tax type total - $tax_basis = $this->sale_lib->get_item_total($item['quantity'], $item['price'], $item['discount'], $item['discount_type'], true); - $tax_amount = '0.0'; - - if($this->config['tax_included']) - { - $tax_type = Tax_lib::TAX_TYPE_INCLUDED; - $tax_amount = $this->get_included_tax($item['quantity'], $item['price'], $item['discount'], $item['discount_type'], $tax['percent'], $tax_decimals, Rounding_mode::HALF_UP); - } - else - { - $tax_type = Tax_lib::TAX_TYPE_EXCLUDED; - $tax_amount = $this->get_tax_for_amount($tax_basis, $tax['percent'], Rounding_mode::HALF_UP, $tax_decimals); - } - - if($tax_amount <> 0) - { - $tax_group_sequence++; - $this->update_taxes($taxes, $tax_type, $tax['name'], $tax['percent'], $tax_basis, $tax_amount, $tax_group_sequence, Rounding_mode::HALF_UP, -1, $tax['name']); //TODO: Replace -1 with constant. - $tax_group_sequence += 1; //TODO: $tax_group_sequence++; - $taxed = true; - } - - $items_taxes_detail = []; - $items_taxes_detail['item_id'] = $item['item_id']; - $items_taxes_detail['line'] = $item['line']; - $items_taxes_detail['name'] = $tax['name']; - $items_taxes_detail['percent'] = $tax['percent']; - $items_taxes_detail['tax_type'] = $tax_type; - $items_taxes_detail['rounding_code'] = Rounding_mode::HALF_UP; - $items_taxes_detail['cascade_sequence'] = 0; - $items_taxes_detail['item_tax_amount'] = $tax_amount; - $items_taxes_detail['sales_tax_code_id'] = null; - $items_taxes_detail['jurisdiction_id'] = null; - $items_taxes_detail['tax_category_id'] = null; - - $item_taxes[] = $items_taxes_detail; - } - } - else - { - // Start of destination based tax calculations - if($item['tax_category_id'] == null) //TODO: === ? - { - $item['tax_category_id'] = $this->config['default_tax_category']; - } - - $taxed = $this->apply_destination_tax($item, $customer_info->city, $customer_info->state, $customer_info->sales_tax_code_id, $register_mode, 0, $taxes, $item_taxes, $item['line']); - } - - if($taxed) //TODO: Convert to ternary notation - { - $cart[$line]['taxed_flag'] = lang('Sales.taxed_ind'); - } - else - { - $cart[$line]['taxed_flag'] = lang('Sales.nontaxed_ind'); - } - } - $this->round_taxes($taxes); - } - - $tax_details = []; - $tax_details[0] = $taxes; - $tax_details[1] = $item_taxes; - - return $tax_details; - } - - /** - * @param string $quantity - * @param string $price - * @param string $discount_percentage - * @param int $discount_type - * @param string $tax_percentage - * @param $tax_decimal - * @param $rounding_code - * @return string - */ - public function get_included_tax(string $quantity, string $price, string $discount_percentage, int $discount_type, string $tax_percentage, $tax_decimal, $rounding_code): string //TODO: $tax_decimal and $rounding_code are in the signature but never used in the function. - { - $item_total = $this->sale_lib->get_item_total($quantity, $price, $discount_percentage, $discount_type, true); - $tax_fraction = bcdiv(bcadd('100', $tax_percentage), '100'); - $price_tax_excl = bcdiv($item_total, $tax_fraction); - return bcsub($item_total, $price_tax_excl); - } - - /** - * Updates the sales_tax array which is later saved to the `sales_taxes` table and used for printing taxes on receipts and invoices - */ - public function update_taxes(array &$taxes, string $tax_type, string $tax_group, string $tax_rate, string $tax_basis, string $item_tax_amount, int $tax_group_sequence, int $rounding_code, int $sale_id, string $name = '', int $tax_code_id = null, int $jurisdiction_id = null, int $tax_category_id = null): void - { - $tax_group_index = $this->clean('X' . (float)$tax_rate . '% ' . $tax_group); //TODO: Not sure we should be casting to a float here. The clean() function takes a string, so it just gets converted back to a string and there's risk of inaccuracies in the value displayed. - - if(!array_key_exists($tax_group_index, $taxes)) - { - $insertkey = $tax_group_index; //TODO: this variable does not follow naming conventions. - - $tax = [ - $insertkey => [ - 'sale_id' => $sale_id, - 'tax_type' => $tax_type, - 'tax_group' => $tax_group, - 'sale_tax_basis' => $tax_basis, - 'sale_tax_amount' => $item_tax_amount, - 'print_sequence' => $tax_group_sequence, - 'name' => $name, - 'tax_rate' => $tax_rate, - 'sales_tax_code_id' => $tax_code_id, - 'jurisdiction_id' => $jurisdiction_id, - 'tax_category_id' => $tax_category_id, - 'rounding_code' => $rounding_code - ] - ]; - - //add to existing array - $taxes += $tax; - } - else - { - // Important ... the sales amounts are accumulated for the group at the maximum configurable scale value of 4 - // but the scale will in reality be the scale specified by the tax_decimal configuration value used for sales_items_taxes - $taxes[$tax_group_index]['sale_tax_basis'] = bcadd($taxes[$tax_group_index]['sale_tax_basis'], $tax_basis, 4); - $taxes[$tax_group_index]['sale_tax_amount'] = bcadd($taxes[$tax_group_index]['sale_tax_amount'], $item_tax_amount, 4); - } - } - - /** - * If invoice taxing (as opposed to invoice_item_taxing) rules apply then recalculate the sales tax after tax group totals are final - * This is currently used ONLY for the original sales tax migration. - */ - public function apply_invoice_taxing(array &$taxes): void - { - if(!empty($taxes)) - { - $sort = []; - foreach($taxes as $k => $v) - { - $sort['print_sequence'][$k] = $v['print_sequence']; - } - array_multisort($sort['print_sequence'], SORT_ASC, $taxes); - } - - $decimals = totals_decimals(); - - foreach($taxes as $row_number => $tax) - { - $taxes[$row_number]['sale_tax_amount'] = $this->get_tax_for_amount($tax['sale_tax_basis'], $tax['tax_rate'], $tax['rounding_code'], $decimals); - } - } - - /** - * Apply rounding rules to the accumulated sales tax amounts - */ - public function round_taxes(array &$taxes): void - { - if(!empty($taxes)) - { - $sort = []; - foreach($taxes as $k => $v) - { - $sort['print_sequence'][$k] = $v['print_sequence']; - } - array_multisort($sort['print_sequence'], SORT_ASC, $taxes); - } - - // If tax included then round decimal to tax decimals, otherwise round it to currency_decimals - if($this->config['tax_included']) //TODO: Convert to ternary notation - { - $decimals = tax_decimals(); - } - else - { - $decimals = totals_decimals(); - } - - foreach($taxes as $row_number => $sales_tax) - { - $tax_amount = $sales_tax['sale_tax_amount']; - $rounding_code = $sales_tax['rounding_code']; - $rounded_tax_amount = $tax_amount; - - if($rounding_code == Rounding_mode::HALF_UP) //TODO: this block needs to be converted to a switch statement - { - $rounded_tax_amount = round($tax_amount, $decimals, PHP_ROUND_HALF_UP); - } - elseif($rounding_code == Rounding_mode::HALF_DOWN) - { - $rounded_tax_amount = round($tax_amount, $decimals, PHP_ROUND_HALF_DOWN); - } - elseif($rounding_code == Rounding_mode::HALF_EVEN) - { - $rounded_tax_amount = round($tax_amount, $decimals, PHP_ROUND_HALF_EVEN); - } - elseif($rounding_code == Rounding_mode::HALF_ODD) - { - $rounded_tax_amount = round($tax_amount, $decimals, PHP_ROUND_HALF_UP); - } - elseif($rounding_code == Rounding_mode::ROUND_UP) - { - $fig = (int)str_pad('1', $decimals, '0'); - $rounded_tax_amount = ceil($tax_amount * $fig) / $fig; - } - elseif($rounding_code == Rounding_mode::ROUND_DOWN) - { - $fig = (int)str_pad('1', $decimals, '0'); - $rounded_tax_amount = floor($tax_amount * $fig) / $fig; - } - elseif($rounding_code == Rounding_mode::HALF_FIVE) - { - $rounded_tax_amount = round($tax_amount / 5) * 5; - } - - $taxes[$row_number]['sale_tax_amount'] = $rounded_tax_amount; - } - } - - /** - * Determine the applicable tax code and then determine the tax amount to be applied. - * If a tax amount was identified then accumulate into the sales_taxes array - */ - public function apply_destination_tax(array &$item, string $city, string $state, int $sales_tax_code_id, string $register_mode, int $sale_id, array &$taxes, array &$item_taxes, int $line): bool - { - $taxed = false; - - $tax_code_id = $this->get_applicable_tax_code($register_mode, $city, $state, $sales_tax_code_id); - - // If tax code cannot be determined or the price is zero then skip this item - if($tax_code_id != -1 && $item['price'] != 0) //TODO: Replace -1 with constant. Also === ? - { - $tax_decimals = tax_decimals(); - - $tax_definition = $this->tax->get_taxes($tax_code_id, $item['tax_category_id']); - - // The tax basis should be returned to the currency scale - $tax_basis = $this->sale_lib->get_item_total($item['quantity'], $item['price'], $item['discount'], $item['discount_type'], true); - - $row = 0; //TODO: This variable is set but never used. - - $last_cascade_sequence = 0; - $cascade_tax_amount = '0.0'; - - foreach($tax_definition as $tax) - { - $cascade_sequence = $tax['cascade_sequence']; - if($cascade_sequence != $last_cascade_sequence) - { - $last_cascade_sequence = $cascade_sequence; - $tax_basis = bcadd($tax_basis, $cascade_tax_amount); - } - - $tax_rate = $tax['tax_rate']; - $rounding_code = $tax['tax_rounding_code']; - - // This computes tax for each line item and adds it to the tax type total - $tax_type = $tax['tax_type']; - - if($tax_type == Tax_lib::TAX_TYPE_INCLUDED) - { - $tax_amount = $this->get_included_tax($item['quantity'], $item['price'], $item['discount'], $item['discount_type'], $tax_rate, $tax_decimals, $rounding_code); - } - else - { - $tax_amount = $this->get_tax_for_amount($tax_basis, $tax_rate, $rounding_code, $tax_decimals); - $cascade_tax_amount = bcadd($cascade_tax_amount,$tax_amount); - } - - if($tax_amount != 0) - { - $taxed = true; - $this->update_taxes($taxes, $tax_type, $tax['tax_group'], $tax_rate, $tax_basis, $tax_amount, $tax['tax_group_sequence'], $rounding_code, $sale_id, $tax['tax_group'], $tax_code_id, $tax['rate_jurisdiction_id'], $item['tax_category_id']); - } - - $item_taxes_detail = []; - $item_taxes_detail['line'] = $line; - $item_taxes_detail['item_id'] = $item['item_id']; - $item_taxes_detail['name'] = $tax['tax_group']; - $item_taxes_detail['percent'] = $tax['tax_rate']; - $item_taxes_detail['tax_type'] = $tax_type; - $item_taxes_detail['rounding_code'] = $rounding_code; - $item_taxes_detail['cascade_sequence'] = $cascade_sequence; - $item_taxes_detail['item_tax_amount'] = $tax_amount; - $item_taxes_detail['sales_tax_code_id'] = $tax_code_id; - $item_taxes_detail['jurisdiction_id'] = $tax['rate_jurisdiction_id']; - $item_taxes_detail['tax_category_id'] = $tax['rate_tax_category_id']; - $item_taxes_detail['tax_group_sequence'] = $tax['tax_group_sequence']; - - $item_taxes[] = $item_taxes_detail; - } - } - - return $taxed; - } - - /** - * @param string $register_mode - * @param string $city - * @param string $state - * @param int $sales_tax_code_id - * @return int - */ - public function get_applicable_tax_code(string $register_mode, string $city, string $state, int $sales_tax_code_id): int - { - if($register_mode == 'sale') - { - $sales_tax_code_id = $this->config['default_tax_code']; // overrides customer assigned code - } - else - { - if($sales_tax_code_id == null || $sales_tax_code_id == 0) - { - $sales_tax_code_id = $this->tax_code->get_sales_tax_code($city, $state); - - if($sales_tax_code_id == null || $sales_tax_code_id == 0) - { - $sales_tax_code_id = $this->config['default_tax_code']; // overrides customer assigned code - } - } - } - - return $sales_tax_code_id; - } - - /** - * @param string $string - * @return string - */ - public function clean(string $string): string //TODO: $string is not a good choice of variable name here. - { - $string = str_replace(' ', '-', $string); // Replaces all spaces with hyphens. - - return preg_replace('/[^A-Za-z0-9\-]/', '', $string); // Removes special chars. - } - - /** - * @return array - */ - public function get_tax_code_options(): array - { - $tax_codes = $this->tax_code->get_all()->getResultArray(); - $tax_code_options = []; - $tax_code_options[''] = ''; - - foreach($tax_codes as $tax_code) - { - $a = $tax_code['tax_code_id']; //TODO: Need to refactor single-letter variables into meaningful variable names - $b = $tax_code['tax_code_name']; - $tax_code_options[$a] = $b; - } - - return $tax_code_options; - } - - /** - * @return array - */ - public function get_tax_jurisdiction_options(): array - { - $tax_jurisdictions = $this->tax_jurisdiction->get_all()->getResultArray(); - $tax_jurisdiction_options = []; - $tax_jurisdiction_options[0] = ''; - - foreach($tax_jurisdictions as $tax_jurisdiction) //TODO: Need to refactor single-letter variables into meaningful variable names - { - $a = $tax_jurisdiction['jurisdiction_id']; - $b = $tax_jurisdiction['jurisdiction_name']; - $tax_jurisdiction_options[$a] = $b; - } - - return $tax_jurisdiction_options; - } - - /** - * @return array - */ - public function get_tax_category_options(): array - { - $tax_categories = $this->tax_category->get_all()->getResultArray(); - $tax_category_options = []; - $tax_category_options[0] = ''; - - foreach($tax_categories as $tax_category) - { - $a = $tax_category['tax_category_id']; //TODO: Need to refactor single-letter variables into meaningful variable names - $b = $tax_category['tax_category']; - - $tax_category_options[$a] = $b; - } - - return $tax_category_options; - } - - /** - * @param string $selected_tax_type - * @return string - */ - public function get_tax_type_options(string $selected_tax_type): string - { - $selected = 'selected=\"selected\" '; - - $s1 = ''; //TODO: Need to refactor short variables into meaningful variable names - $s2 = ''; - - if($selected_tax_type === Tax_lib::TAX_TYPE_EXCLUDED) - { - $s1 = $selected; - } - else if($selected_tax_type === Tax_lib::TAX_TYPE_INCLUDED) - { - $s2 = $selected; - } - - return '' - . ''; - } + public const TAX_TYPE_EXCLUDED = '1'; //TODO: These constants need to be moved to constants.php + public const TAX_TYPE_INCLUDED = '0'; + private Sale_lib $sale_lib; + private Customer $customer; + private Item_taxes $item_taxes; + private Sale $sale; + private Tax $tax; + private Tax_category $tax_category; + private Tax_code $tax_code; + private Tax_jurisdiction $tax_jurisdiction; + private array $config; + + public function __construct() + { + $this->sale_lib = new Sale_lib(); + + $this->customer = model(Customer::class); + $this->item_taxes = model(Item_taxes::class); + $this->sale = model(Sale::class); + $this->tax = model(Tax::class); + $this->tax_category = model(Tax_category::class); + $this->tax_code = model(Tax_code::class); + $this->tax_jurisdiction = model(Tax_jurisdiction::class); + $this->config = config(OSPOS::class)->settings; + } + + /** + * @return array + */ + public function get_tax_types(): array + { + return [ + Tax_lib::TAX_TYPE_EXCLUDED => lang('Taxes.tax_excluded'), + Tax_lib::TAX_TYPE_INCLUDED => lang('Taxes.tax_included') + ]; + } + + /** + * Compute the tax basis and returns the tax amount + */ + public function get_item_sales_tax(string $quantity, string $price, string $discount, int $discount_type, string $tax_percentage, int $rounding_code): string //TODO: It appears this function is never called in the code. + { + $decimals = tax_decimals(); + + // The tax basis should be returned to the currency scale + $tax_basis = $this->sale_lib->get_item_total($quantity, $price, $discount, $discount_type, true); + + return $this->get_tax_for_amount($tax_basis, $tax_percentage, $rounding_code, $decimals); + } + + /** + * Computes the item level sales tax amount for a given tax basis + */ + public function get_tax_for_amount(string $tax_basis, string $tax_percentage, int $rounding_mode, int $decimals): string + { + $tax_amount = bcmul($tax_basis, bcdiv($tax_percentage, '100')); + + return rounding_mode::round_number($rounding_mode, $tax_amount, $decimals); + } + + /** + * Compute taxes for all items in the cart + */ + public function get_taxes(array &$cart, int $sale_id = -1): array //TODO: Replace -1 with constant. + { + $register_mode = $this->sale_lib->get_mode(); + $tax_decimals = tax_decimals(); + $customer_id = $this->sale_lib->get_customer(); + $customer_info = $this->customer->get_info($customer_id); + $taxes = []; + $item_taxes = []; + + // Charge sales tax if customer is not selected (walk-in) or customer is flagged as taxable + if($customer_id == -1 || $customer_info->taxable) //TODO: Replace -1 with constant. + { + foreach($cart as $line => $item) + { + $taxed = false; + + if(!$this->config['use_destination_based_tax']) + { + // Start of current Base System tax calculations + + if($sale_id == -1) //TODO: Replace -1 with constant. Also, replace with ternary notation. + { + $tax_info = $this->item_taxes->get_info($item['item_id']); + } + else + { + $tax_info = $this->sale->get_sales_item_taxes($sale_id, $item['item_id']); + } + + $tax_group_sequence = 0; + $cascade_level = 0; //TODO: This variable is set but never used. + $cascade_basis_level = 0; //TODO: This variable is set but never used. + + foreach($tax_info as $tax) + { + // This computes tax for each line item and adds it to the tax type total + $tax_basis = $this->sale_lib->get_item_total($item['quantity'], $item['price'], $item['discount'], $item['discount_type'], true); + $tax_amount = '0.0'; + + if($this->config['tax_included']) + { + $tax_type = Tax_lib::TAX_TYPE_INCLUDED; + $tax_amount = $this->get_included_tax($item['quantity'], $item['price'], $item['discount'], $item['discount_type'], $tax['percent'], $tax_decimals, Rounding_mode::HALF_UP); + } + else + { + $tax_type = Tax_lib::TAX_TYPE_EXCLUDED; + $tax_amount = $this->get_tax_for_amount($tax_basis, $tax['percent'], Rounding_mode::HALF_UP, $tax_decimals); + } + + if($tax_amount <> 0) + { + $tax_group_sequence++; + $this->update_taxes($taxes, $tax_type, $tax['name'], $tax['percent'], $tax_basis, $tax_amount, $tax_group_sequence, Rounding_mode::HALF_UP, -1, $tax['name']); //TODO: Replace -1 with constant. + $tax_group_sequence += 1; //TODO: $tax_group_sequence++; + $taxed = true; + } + + $items_taxes_detail = []; + $items_taxes_detail['item_id'] = $item['item_id']; + $items_taxes_detail['line'] = $item['line']; + $items_taxes_detail['name'] = $tax['name']; + $items_taxes_detail['percent'] = $tax['percent']; + $items_taxes_detail['tax_type'] = $tax_type; + $items_taxes_detail['rounding_code'] = Rounding_mode::HALF_UP; + $items_taxes_detail['cascade_sequence'] = 0; + $items_taxes_detail['item_tax_amount'] = $tax_amount; + $items_taxes_detail['sales_tax_code_id'] = null; + $items_taxes_detail['jurisdiction_id'] = null; + $items_taxes_detail['tax_category_id'] = null; + + $item_taxes[] = $items_taxes_detail; + } + } + else + { + // Start of destination based tax calculations + if($item['tax_category_id'] == null) //TODO: === ? + { + $item['tax_category_id'] = $this->config['default_tax_category']; + } + + $taxed = $this->apply_destination_tax($item, $customer_info->city, $customer_info->state, $customer_info->sales_tax_code_id, $register_mode, 0, $taxes, $item_taxes, $item['line']); + } + + if($taxed) //TODO: Convert to ternary notation + { + $cart[$line]['taxed_flag'] = lang('Sales.taxed_ind'); + } + else + { + $cart[$line]['taxed_flag'] = lang('Sales.nontaxed_ind'); + } + } + $this->round_taxes($taxes); + } + + $tax_details = []; + $tax_details[0] = $taxes; + $tax_details[1] = $item_taxes; + + return $tax_details; + } + + /** + * @param string $quantity + * @param string $price + * @param string $discount_percentage + * @param int $discount_type + * @param string $tax_percentage + * @param $tax_decimal + * @param $rounding_code + * @return string + */ + public function get_included_tax(string $quantity, string $price, string $discount_percentage, int $discount_type, string $tax_percentage, $tax_decimal, $rounding_code): string //TODO: $tax_decimal and $rounding_code are in the signature but never used in the function. + { + $item_total = $this->sale_lib->get_item_total($quantity, $price, $discount_percentage, $discount_type, true); + $tax_fraction = bcdiv(bcadd('100', $tax_percentage), '100'); + $price_tax_excl = bcdiv($item_total, $tax_fraction); + return bcsub($item_total, $price_tax_excl); + } + + /** + * Updates the sales_tax array which is later saved to the `sales_taxes` table and used for printing taxes on receipts and invoices + */ + public function update_taxes(array &$taxes, string $tax_type, string $tax_group, string $tax_rate, string $tax_basis, string $item_tax_amount, int $tax_group_sequence, int $rounding_code, int $sale_id, string $name = '', int $tax_code_id = null, int $jurisdiction_id = null, int $tax_category_id = null): void + { + $tax_group_index = $this->clean('X' . (float)$tax_rate . '% ' . $tax_group); //TODO: Not sure we should be casting to a float here. The clean() function takes a string, so it just gets converted back to a string and there's risk of inaccuracies in the value displayed. + + if(!array_key_exists($tax_group_index, $taxes)) + { + $insertkey = $tax_group_index; //TODO: this variable does not follow naming conventions. + + $tax = [ + $insertkey => [ + 'sale_id' => $sale_id, + 'tax_type' => $tax_type, + 'tax_group' => $tax_group, + 'sale_tax_basis' => $tax_basis, + 'sale_tax_amount' => $item_tax_amount, + 'print_sequence' => $tax_group_sequence, + 'name' => $name, + 'tax_rate' => $tax_rate, + 'sales_tax_code_id' => $tax_code_id, + 'jurisdiction_id' => $jurisdiction_id, + 'tax_category_id' => $tax_category_id, + 'rounding_code' => $rounding_code + ] + ]; + + //add to existing array + $taxes += $tax; + } + else + { + // Important ... the sales amounts are accumulated for the group at the maximum configurable scale value of 4 + // but the scale will in reality be the scale specified by the tax_decimal configuration value used for sales_items_taxes + $taxes[$tax_group_index]['sale_tax_basis'] = bcadd($taxes[$tax_group_index]['sale_tax_basis'], $tax_basis, 4); + $taxes[$tax_group_index]['sale_tax_amount'] = bcadd($taxes[$tax_group_index]['sale_tax_amount'], $item_tax_amount, 4); + } + } + + /** + * If invoice taxing (as opposed to invoice_item_taxing) rules apply then recalculate the sales tax after tax group totals are final + * This is currently used ONLY for the original sales tax migration. + */ + public function apply_invoice_taxing(array &$taxes): void + { + if(!empty($taxes)) + { + $sort = []; + foreach($taxes as $k => $v) + { + $sort['print_sequence'][$k] = $v['print_sequence']; + } + array_multisort($sort['print_sequence'], SORT_ASC, $taxes); + } + + $decimals = totals_decimals(); + + foreach($taxes as $row_number => $tax) + { + $taxes[$row_number]['sale_tax_amount'] = $this->get_tax_for_amount($tax['sale_tax_basis'], $tax['tax_rate'], $tax['rounding_code'], $decimals); + } + } + + /** + * Apply rounding rules to the accumulated sales tax amounts + */ + public function round_taxes(array &$taxes): void + { + if(!empty($taxes)) + { + $sort = []; + foreach($taxes as $k => $v) + { + $sort['print_sequence'][$k] = $v['print_sequence']; + } + array_multisort($sort['print_sequence'], SORT_ASC, $taxes); + } + + // If tax included then round decimal to tax decimals, otherwise round it to currency_decimals + if($this->config['tax_included']) //TODO: Convert to ternary notation + { + $decimals = tax_decimals(); + } + else + { + $decimals = totals_decimals(); + } + + foreach($taxes as $row_number => $sales_tax) + { + $tax_amount = $sales_tax['sale_tax_amount']; + $rounding_code = $sales_tax['rounding_code']; + $rounded_tax_amount = $tax_amount; + + if($rounding_code == Rounding_mode::HALF_UP) //TODO: this block needs to be converted to a switch statement + { + $rounded_tax_amount = round($tax_amount, $decimals, PHP_ROUND_HALF_UP); + } + elseif($rounding_code == Rounding_mode::HALF_DOWN) + { + $rounded_tax_amount = round($tax_amount, $decimals, PHP_ROUND_HALF_DOWN); + } + elseif($rounding_code == Rounding_mode::HALF_EVEN) + { + $rounded_tax_amount = round($tax_amount, $decimals, PHP_ROUND_HALF_EVEN); + } + elseif($rounding_code == Rounding_mode::HALF_ODD) + { + $rounded_tax_amount = round($tax_amount, $decimals, PHP_ROUND_HALF_UP); + } + elseif($rounding_code == Rounding_mode::ROUND_UP) + { + $fig = (int)str_pad('1', $decimals, '0'); + $rounded_tax_amount = ceil($tax_amount * $fig) / $fig; + } + elseif($rounding_code == Rounding_mode::ROUND_DOWN) + { + $fig = (int)str_pad('1', $decimals, '0'); + $rounded_tax_amount = floor($tax_amount * $fig) / $fig; + } + elseif($rounding_code == Rounding_mode::HALF_FIVE) + { + $rounded_tax_amount = round($tax_amount / 5) * 5; + } + + $taxes[$row_number]['sale_tax_amount'] = $rounded_tax_amount; + } + } + + /** + * Determine the applicable tax code and then determine the tax amount to be applied. + * If a tax amount was identified then accumulate into the sales_taxes array + */ + public function apply_destination_tax(array &$item, string $city, string $state, int $sales_tax_code_id, string $register_mode, int $sale_id, array &$taxes, array &$item_taxes, int $line): bool + { + $taxed = false; + + $tax_code_id = $this->get_applicable_tax_code($register_mode, $city, $state, $sales_tax_code_id); + + // If tax code cannot be determined or the price is zero then skip this item + if($tax_code_id != -1 && $item['price'] != 0) //TODO: Replace -1 with constant. Also === ? + { + $tax_decimals = tax_decimals(); + + $tax_definition = $this->tax->get_taxes($tax_code_id, $item['tax_category_id']); + + // The tax basis should be returned to the currency scale + $tax_basis = $this->sale_lib->get_item_total($item['quantity'], $item['price'], $item['discount'], $item['discount_type'], true); + + $row = 0; //TODO: This variable is set but never used. + + $last_cascade_sequence = 0; + $cascade_tax_amount = '0.0'; + + foreach($tax_definition as $tax) + { + $cascade_sequence = $tax['cascade_sequence']; + if($cascade_sequence != $last_cascade_sequence) + { + $last_cascade_sequence = $cascade_sequence; + $tax_basis = bcadd($tax_basis, $cascade_tax_amount); + } + + $tax_rate = $tax['tax_rate']; + $rounding_code = $tax['tax_rounding_code']; + + // This computes tax for each line item and adds it to the tax type total + $tax_type = $tax['tax_type']; + + if($tax_type == Tax_lib::TAX_TYPE_INCLUDED) + { + $tax_amount = $this->get_included_tax($item['quantity'], $item['price'], $item['discount'], $item['discount_type'], $tax_rate, $tax_decimals, $rounding_code); + } + else + { + $tax_amount = $this->get_tax_for_amount($tax_basis, $tax_rate, $rounding_code, $tax_decimals); + $cascade_tax_amount = bcadd($cascade_tax_amount,$tax_amount); + } + + if($tax_amount != 0) + { + $taxed = true; + $this->update_taxes($taxes, $tax_type, $tax['tax_group'], $tax_rate, $tax_basis, $tax_amount, $tax['tax_group_sequence'], $rounding_code, $sale_id, $tax['tax_group'], $tax_code_id, $tax['rate_jurisdiction_id'], $item['tax_category_id']); + } + + $item_taxes_detail = []; + $item_taxes_detail['line'] = $line; + $item_taxes_detail['item_id'] = $item['item_id']; + $item_taxes_detail['name'] = $tax['tax_group']; + $item_taxes_detail['percent'] = $tax['tax_rate']; + $item_taxes_detail['tax_type'] = $tax_type; + $item_taxes_detail['rounding_code'] = $rounding_code; + $item_taxes_detail['cascade_sequence'] = $cascade_sequence; + $item_taxes_detail['item_tax_amount'] = $tax_amount; + $item_taxes_detail['sales_tax_code_id'] = $tax_code_id; + $item_taxes_detail['jurisdiction_id'] = $tax['rate_jurisdiction_id']; + $item_taxes_detail['tax_category_id'] = $tax['rate_tax_category_id']; + $item_taxes_detail['tax_group_sequence'] = $tax['tax_group_sequence']; + + $item_taxes[] = $item_taxes_detail; + } + } + + return $taxed; + } + + /** + * @param string $register_mode + * @param string $city + * @param string $state + * @param int $sales_tax_code_id + * @return int + */ + public function get_applicable_tax_code(string $register_mode, string $city, string $state, int $sales_tax_code_id): int + { + if($register_mode == 'sale') + { + $sales_tax_code_id = $this->config['default_tax_code']; // overrides customer assigned code + } + else + { + if($sales_tax_code_id == null || $sales_tax_code_id == 0) + { + $sales_tax_code_id = $this->tax_code->get_sales_tax_code($city, $state); + + if($sales_tax_code_id == null || $sales_tax_code_id == 0) + { + $sales_tax_code_id = $this->config['default_tax_code']; // overrides customer assigned code + } + } + } + + return $sales_tax_code_id; + } + + /** + * @param string $string + * @return string + */ + public function clean(string $string): string //TODO: $string is not a good choice of variable name here. + { + $string = str_replace(' ', '-', $string); // Replaces all spaces with hyphens. + + return preg_replace('/[^A-Za-z0-9\-]/', '', $string); // Removes special chars. + } + + /** + * @return array + */ + public function get_tax_code_options(): array + { + $tax_codes = $this->tax_code->get_all()->getResultArray(); + $tax_code_options = []; + $tax_code_options[''] = ''; + + foreach($tax_codes as $tax_code) + { + $a = $tax_code['tax_code_id']; //TODO: Need to refactor single-letter variables into meaningful variable names + $b = $tax_code['tax_code_name']; + $tax_code_options[$a] = $b; + } + + return $tax_code_options; + } + + /** + * @return array + */ + public function get_tax_jurisdiction_options(): array + { + $tax_jurisdictions = $this->tax_jurisdiction->get_all()->getResultArray(); + $tax_jurisdiction_options = []; + $tax_jurisdiction_options[0] = ''; + + foreach($tax_jurisdictions as $tax_jurisdiction) //TODO: Need to refactor single-letter variables into meaningful variable names + { + $a = $tax_jurisdiction['jurisdiction_id']; + $b = $tax_jurisdiction['jurisdiction_name']; + $tax_jurisdiction_options[$a] = $b; + } + + return $tax_jurisdiction_options; + } + + /** + * @return array + */ + public function get_tax_category_options(): array + { + $tax_categories = $this->tax_category->get_all()->getResultArray(); + $tax_category_options = []; + $tax_category_options[0] = ''; + + foreach($tax_categories as $tax_category) + { + $a = $tax_category['tax_category_id']; //TODO: Need to refactor single-letter variables into meaningful variable names + $b = $tax_category['tax_category']; + + $tax_category_options[$a] = $b; + } + + return $tax_category_options; + } + + /** + * @param string $selected_tax_type + * @return string + */ + public function get_tax_type_options(string $selected_tax_type): string + { + $selected = 'selected=\"selected\" '; + + $s1 = ''; //TODO: Need to refactor short variables into meaningful variable names + $s2 = ''; + + if($selected_tax_type === Tax_lib::TAX_TYPE_EXCLUDED) + { + $s1 = $selected; + } + else if($selected_tax_type === Tax_lib::TAX_TYPE_INCLUDED) + { + $s2 = $selected; + } + + return '' + . ''; + } } diff --git a/app/Libraries/Token_lib.php b/app/Libraries/Token_lib.php index 8f06258e8..c68913dfb 100644 --- a/app/Libraries/Token_lib.php +++ b/app/Libraries/Token_lib.php @@ -14,184 +14,184 @@ use DateTime; */ class Token_lib { - /** - * Expands all the tokens found in a given text string and returns the results. - */ - public function render(string $tokened_text, array $tokens = [], $save = true): string - { - // Apply the transformation for the "%" tokens if any are used - if(strpos($tokened_text, '%') !== false) - { - $tokened_text = strftime($tokened_text); //TODO: these need to be converted to IntlDateFormatter::format() - } + /** + * Expands all the tokens found in a given text string and returns the results. + */ + public function render(string $tokened_text, array $tokens = [], $save = true): string + { + // Apply the transformation for the "%" tokens if any are used + if(strpos($tokened_text, '%') !== false) + { + $tokened_text = strftime($tokened_text); //TODO: these need to be converted to IntlDateFormatter::format() + } - // Call scan to build an array of all of the tokens used in the text to be transformed - $token_tree = $this->scan($tokened_text); + // Call scan to build an array of all of the tokens used in the text to be transformed + $token_tree = $this->scan($tokened_text); - if(empty($token_tree)) - { - if(strpos($tokened_text, '%') !== false) - { - return strftime($tokened_text); - } - else - { - return $tokened_text; - } - } + if(empty($token_tree)) + { + if(strpos($tokened_text, '%') !== false) + { + return strftime($tokened_text); + } + else + { + return $tokened_text; + } + } - $token_values = []; - $tokens_to_replace = []; - $this->generate($token_tree, $tokens_to_replace, $token_values, $tokens, $save); + $token_values = []; + $tokens_to_replace = []; + $this->generate($token_tree, $tokens_to_replace, $token_values, $tokens, $save); - return str_replace($tokens_to_replace, $token_values, $tokened_text); - } + return str_replace($tokens_to_replace, $token_values, $tokened_text); + } - /** - * Parses out the all the tokens enclosed in braces {} and subparses on the colon : character where supplied - */ - public function scan(string $text): array - { - // Matches tokens with the following pattern: [$token:$length] - preg_match_all('/ - \{ # [ - pattern start - ([^\s\{\}:]+) # match $token not containing whitespace : { or } - (?: - : # : - separator - ([^\s\{\}:]+) # match $length not containing whitespace : { or } - )? - \} # ] - pattern end - /x', $text, $matches); + /** + * Parses out the all the tokens enclosed in braces {} and subparses on the colon : character where supplied + */ + public function scan(string $text): array + { + // Matches tokens with the following pattern: [$token:$length] + preg_match_all('/ + \{ # [ - pattern start + ([^\s\{\}:]+) # match $token not containing whitespace : { or } + (?: + : # : - separator + ([^\s\{\}:]+) # match $length not containing whitespace : { or } + )? + \} # ] - pattern end + /x', $text, $matches); - $tokens = $matches[1]; - $lengths = $matches[2]; + $tokens = $matches[1]; + $lengths = $matches[2]; - $token_tree = []; - for($i = 0; $i < count($tokens); $i++) - { - $token_tree[$tokens[$i]][$lengths[$i]] = $matches[0][$i]; - } + $token_tree = []; + for($i = 0; $i < count($tokens); $i++) + { + $token_tree[$tokens[$i]][$lengths[$i]] = $matches[0][$i]; + } - return $token_tree; - } + return $token_tree; + } - /** - * @param string|null $quantity - * @param string|null $price - * @param string|null $item_id_or_number_or_item_kit_or_receipt - * @return void - */ - public function parse_barcode(?string &$quantity, ?string &$price, ?string &$item_id_or_number_or_item_kit_or_receipt): void - { - $config = config(OSPOS::class)->settings; - $barcode_formats = json_decode($config['barcode_formats']); - $barcode_tokens = Token::get_barcode_tokens(); + /** + * @param string|null $quantity + * @param string|null $price + * @param string|null $item_id_or_number_or_item_kit_or_receipt + * @return void + */ + public function parse_barcode(?string &$quantity, ?string &$price, ?string &$item_id_or_number_or_item_kit_or_receipt): void + { + $config = config(OSPOS::class)->settings; + $barcode_formats = json_decode($config['barcode_formats']); + $barcode_tokens = Token::get_barcode_tokens(); - if(!empty($barcode_formats)) - { - foreach($barcode_formats as $barcode_format) - { - $parsed_results = $this->parse($item_id_or_number_or_item_kit_or_receipt, $barcode_format, $barcode_tokens); - $quantity = (isset($parsed_results['W'])) ? (int) $parsed_results['W'] / 1000 : 1; - $item_id_or_number_or_item_kit_or_receipt = (isset($parsed_results['I'])) ? - $parsed_results['I'] : $item_id_or_number_or_item_kit_or_receipt; - $price = (isset($parsed_results['P'])) ? (double) $parsed_results['P'] : null; - } - } - else - { - $quantity = 1; //TODO: Quantity is handled using bcmath functions so that it is precision safe. This should be '1' - } - } + if(!empty($barcode_formats)) + { + foreach($barcode_formats as $barcode_format) + { + $parsed_results = $this->parse($item_id_or_number_or_item_kit_or_receipt, $barcode_format, $barcode_tokens); + $quantity = (isset($parsed_results['W'])) ? (int) $parsed_results['W'] / 1000 : 1; + $item_id_or_number_or_item_kit_or_receipt = (isset($parsed_results['I'])) ? + $parsed_results['I'] : $item_id_or_number_or_item_kit_or_receipt; + $price = (isset($parsed_results['P'])) ? (double) $parsed_results['P'] : null; + } + } + else + { + $quantity = 1; //TODO: Quantity is handled using bcmath functions so that it is precision safe. This should be '1' + } + } - /** - * @param string $string - * @param string $pattern - * @param array $tokens - * @return array - */ - public function parse(string $string, string $pattern, array $tokens = []): array //TODO: $string is a poor name for this parameter. - { - $token_tree = $this->scan($pattern); + /** + * @param string $string + * @param string $pattern + * @param array $tokens + * @return array + */ + public function parse(string $string, string $pattern, array $tokens = []): array //TODO: $string is a poor name for this parameter. + { + $token_tree = $this->scan($pattern); - $found_tokens = []; - foreach ($token_tree as $token_id => $token_length) - { - foreach ($tokens as $token) - { - if ($token->token_id() == $token_id) - { - $found_tokens[] = $token; - $keys = array_keys($token_length); - $length = array_shift($keys); - $pattern = str_replace(array_shift($token_length), "({$token->get_value()}{".$length."})", $pattern); - } - } - } + $found_tokens = []; + foreach ($token_tree as $token_id => $token_length) + { + foreach ($tokens as $token) + { + if ($token->token_id() == $token_id) + { + $found_tokens[] = $token; + $keys = array_keys($token_length); + $length = array_shift($keys); + $pattern = str_replace(array_shift($token_length), "({$token->get_value()}{".$length."})", $pattern); + } + } + } - $results = []; + $results = []; - if (preg_match("/$pattern/", $string, $matches)) - { - foreach($found_tokens as $token) - { - $index = array_search($token, $found_tokens); - $match = $matches[$index+1]; - $results[$token->token_id()] = $match; - } - } + if (preg_match("/$pattern/", $string, $matches)) + { + foreach($found_tokens as $token) + { + $index = array_search($token, $found_tokens); + $match = $matches[$index+1]; + $results[$token->token_id()] = $match; + } + } - return $results; - } + return $results; + } - /** - * @param array $used_tokens - * @param array $tokens_to_replace - * @param array $token_values - * @param array $tokens - * @param bool $save - * @return array - */ - public function generate(array $used_tokens, array &$tokens_to_replace, array &$token_values, array $tokens, bool $save = true): array //TODO: $tokens - { - foreach($used_tokens as $token_code => $token_info) - { - // Generate value here based on the key value - $token_value = $this->resolve_token($token_code, [], $save); + /** + * @param array $used_tokens + * @param array $tokens_to_replace + * @param array $token_values + * @param array $tokens + * @param bool $save + * @return array + */ + public function generate(array $used_tokens, array &$tokens_to_replace, array &$token_values, array $tokens, bool $save = true): array //TODO: $tokens + { + foreach($used_tokens as $token_code => $token_info) + { + // Generate value here based on the key value + $token_value = $this->resolve_token($token_code, [], $save); - foreach($token_info as $length => $token_spec) - { - $tokens_to_replace[] = $token_spec; - if(!empty($length)) - { - $token_values[] = str_pad($token_value, $length, '0', STR_PAD_LEFT); - } - else - { - $token_values[] = $token_value; - } - } - } + foreach($token_info as $length => $token_spec) + { + $tokens_to_replace[] = $token_spec; + if(!empty($length)) + { + $token_values[] = str_pad($token_value, $length, '0', STR_PAD_LEFT); + } + else + { + $token_values[] = $token_value; + } + } + } - return $token_values; - } + return $token_values; + } - /** - * @param $token_code - * @param array $tokens - * @param bool $save - * @return string - */ - private function resolve_token($token_code, array $tokens = [], bool $save = true): string - { - foreach(array_merge($tokens, Token::get_tokens()) as $token) - { - if($token->token_id() == $token_code) - { - return $token->get_value($save); - } - } + /** + * @param $token_code + * @param array $tokens + * @param bool $save + * @return string + */ + private function resolve_token($token_code, array $tokens = [], bool $save = true): string + { + foreach(array_merge($tokens, Token::get_tokens()) as $token) + { + if($token->token_id() == $token_code) + { + return $token->get_value($save); + } + } - return ''; - } + return ''; + } } diff --git a/app/Libraries/index.html b/app/Libraries/index.html index bcb7cae34..905c65ee7 100644 --- a/app/Libraries/index.html +++ b/app/Libraries/index.html @@ -1,7 +1,7 @@ - 403 Forbidden + 403 Forbidden diff --git a/app/Models/Appconfig.php b/app/Models/Appconfig.php index 4251ce35e..2699dc090 100644 --- a/app/Models/Appconfig.php +++ b/app/Models/Appconfig.php @@ -14,172 +14,172 @@ use ReflectionException; */ class Appconfig extends Model { - protected $table = 'app_config'; - protected $primaryKey = 'key'; - protected $useAutoIncrement = false; - protected $useSoftDeletes = false; - protected $allowedFields = [ - 'key', - 'value' - ]; + protected $table = 'app_config'; + protected $primaryKey = 'key'; + protected $useAutoIncrement = false; + protected $useSoftDeletes = false; + protected $allowedFields = [ + 'key', + 'value' + ]; - /** - * Checks to see if a given configuration exists in the database. - * - * @param string $key Key name to be searched. - * @return bool True if the key is found in the database or false if it does not exist. - */ - public function exists(string $key): bool - { - $builder = $this->db->table('app_config'); - $builder->where('key', $key); + /** + * Checks to see if a given configuration exists in the database. + * + * @param string $key Key name to be searched. + * @return bool True if the key is found in the database or false if it does not exist. + */ + public function exists(string $key): bool + { + $builder = $this->db->table('app_config'); + $builder->where('key', $key); - return ($builder->get()->getNumRows() === 1); - } + return ($builder->get()->getNumRows() === 1); + } - /** - * Get all OpenSourcePOS configuration values from the database. - * - * @return ResultInterface - */ - public function get_all(): ResultInterface - { - $builder = $this->db->table('app_config'); - $builder->orderBy('key', 'asc'); + /** + * Get all OpenSourcePOS configuration values from the database. + * + * @return ResultInterface + */ + public function get_all(): ResultInterface + { + $builder = $this->db->table('app_config'); + $builder->orderBy('key', 'asc'); - return $builder->get(); - } + return $builder->get(); + } - /** - * @param string $key - * @param string $default - * @return string - */ - public function get_value(string $key, string $default = ''): string - { - $builder = $this->db->table('app_config'); - $query = $builder->getWhere(['key' => $key], 1); + /** + * @param string $key + * @param string $default + * @return string + */ + public function get_value(string $key, string $default = ''): string + { + $builder = $this->db->table('app_config'); + $query = $builder->getWhere(['key' => $key], 1); - if($query->getNumRows() === 1) - { - return $query->getRow()->value; - } + if($query->getNumRows() === 1) + { + return $query->getRow()->value; + } - return $default; - } + return $default; + } - /** - * Calls the parent save() from BaseModel and updates the cached reference. - * - * @param array|object $data - * @return bool true when the save was successful and false if the save failed. - * @throws ReflectionException - */ - public function save($data): bool - { - $key = array_keys($data)[0]; - $value = $data[$key]; - $save_data = ['key' => $key, 'value' => $value]; + /** + * Calls the parent save() from BaseModel and updates the cached reference. + * + * @param array|object $data + * @return bool true when the save was successful and false if the save failed. + * @throws ReflectionException + */ + public function save($data): bool + { + $key = array_keys($data)[0]; + $value = $data[$key]; + $save_data = ['key' => $key, 'value' => $value]; - $success = parent::save($save_data); + $success = parent::save($save_data); - if($success) - { - config(OSPOS::class)->update_settings(); - } + if($success) + { + config(OSPOS::class)->update_settings(); + } - return $success; - } + return $success; + } - /** - * @throws ReflectionException - */ - public function batch_save(array $data): bool - { - $success = true; + /** + * @throws ReflectionException + */ + public function batch_save(array $data): bool + { + $success = true; - $this->db->transStart(); + $this->db->transStart(); - foreach($data as $key => $value) - { - $success &= $this->save([$key => $value]); - } + foreach($data as $key => $value) + { + $success &= $this->save([$key => $value]); + } - $this->db->transComplete(); + $this->db->transComplete(); - $success &= $this->db->transStatus(); + $success &= $this->db->transStatus(); - return $success; - } + return $success; + } - /** - * Deletes a row from the Appconfig table given the name of the setting to delete. - * - * @param ?string $id The field name to be deleted in the Appconfig table. - * @param bool $purge A hard delete is conducted if true and soft delete on false. - * @return bool Result of the delete operation. - */ - public function delete($id = null, bool $purge = false): bool - { - $builder = $this->db->table('app_config'); - return $builder->delete(['key' => $id]); - } + /** + * Deletes a row from the Appconfig table given the name of the setting to delete. + * + * @param ?string $id The field name to be deleted in the Appconfig table. + * @param bool $purge A hard delete is conducted if true and soft delete on false. + * @return bool Result of the delete operation. + */ + public function delete($id = null, bool $purge = false): bool + { + $builder = $this->db->table('app_config'); + return $builder->delete(['key' => $id]); + } - /** - * @return bool - */ - public function delete_all(): bool //TODO: This function is never used in the code. Consider removing it. - { - $builder = $this->db->table('app_config'); - return $builder->emptyTable(); - } + /** + * @return bool + */ + public function delete_all(): bool //TODO: This function is never used in the code. Consider removing it. + { + $builder = $this->db->table('app_config'); + return $builder->emptyTable(); + } - /** - * @throws ReflectionException - */ - public function acquire_next_invoice_sequence(bool $save = true): string - { - $config = config(OSPOS::class)->settings; - $last_used = (int)$config['last_used_invoice_number'] + 1; + /** + * @throws ReflectionException + */ + public function acquire_next_invoice_sequence(bool $save = true): string + { + $config = config(OSPOS::class)->settings; + $last_used = (int)$config['last_used_invoice_number'] + 1; - if($save) - { - $this->save(['last_used_invoice_number'=> $last_used]); - } + if($save) + { + $this->save(['last_used_invoice_number'=> $last_used]); + } - return $last_used; - } + return $last_used; + } - /** - * @throws ReflectionException - */ - public function acquire_next_quote_sequence(bool $save = true): string - { - $config = config(OSPOS::class)->settings; - $last_used = (int)$config['last_used_quote_number'] + 1; + /** + * @throws ReflectionException + */ + public function acquire_next_quote_sequence(bool $save = true): string + { + $config = config(OSPOS::class)->settings; + $last_used = (int)$config['last_used_quote_number'] + 1; - if($save) - { - $this->save(['last_used_quote_number' => $last_used]); - } + if($save) + { + $this->save(['last_used_quote_number' => $last_used]); + } - return $last_used; - } + return $last_used; + } - /** - * @throws ReflectionException - */ - public function acquire_next_work_order_sequence(bool $save = true): string - { - $config = config(OSPOS::class)->settings; - $last_used = (int)$config['last_used_work_order_number'] + 1; + /** + * @throws ReflectionException + */ + public function acquire_next_work_order_sequence(bool $save = true): string + { + $config = config(OSPOS::class)->settings; + $last_used = (int)$config['last_used_work_order_number'] + 1; - if($save) - { - $this->save(['last_used_work_order_number' => $last_used]); - } + if($save) + { + $this->save(['last_used_work_order_number' => $last_used]); + } - return $last_used; - } + return $last_used; + } } diff --git a/app/Models/Attribute.php b/app/Models/Attribute.php index 18708972b..2ccc2a156 100644 --- a/app/Models/Attribute.php +++ b/app/Models/Attribute.php @@ -17,1037 +17,1037 @@ use ReflectionClass; */ class Attribute extends Model { - protected $table = 'attribute_definitions'; - protected $primaryKey = 'definition_id'; - protected $useAutoIncrement = true; - protected $useSoftDeletes = false; - protected $allowedFields = [ //TODO: This model may not be well designed... The model accesses three different tables (attribute_definitions, attribute_links, attribute_values). Should that be more than one model? According to CodeIgniter, these are meant to model a single table https://codeigniter.com/user_guide/models/model.html#models - 'definition_name', - 'definition_type', - 'definition_unit', - 'definition_flags', - 'deleted', - 'attribute_id', - 'definition_id', - 'item_id', - 'sale_id', - 'receiving_id', - 'attribute_value', - 'attribute_date', - 'attribute_decimal' - ]; - - public const SHOW_IN_ITEMS = 1; //TODO: These need to be moved to constants.php - public const SHOW_IN_SALES = 2; - public const SHOW_IN_RECEIVINGS = 4; - - /** - * @return array - */ - public static function get_definition_flags(): array - { - $class = new ReflectionClass(__CLASS__); - - return array_flip($class->getConstants()); - } - - /** - * Determines if a given definition_id is an attribute - */ - public function exists(int $definition_id, bool $deleted = false): bool - { - $builder = $this->db->table('attribute_definitions'); - $builder->where('definition_id', $definition_id); - $builder->where('deleted', $deleted); - - return ($builder->get()->getNumRows() == 1); //TODO: === - } - - /** - * Returns whether an attribute_link row exists given an item_id and optionally a definition_id - * - * @param int $item_id ID of the item to check for an associated attribute. - * @param int|bool $definition_id Attribute definition ID to check. - * @return bool returns true if at least one attribute_link exists or false if no attributes exist for that item and attribute. - */ - public function attributeLinkExists(?int $item_id, int|bool $definition_id = false): bool - { - $builder = $this->db->table('attribute_links'); - $builder->where('item_id', $item_id); - $builder->where('sale_id', null); - $builder->where('receiving_id', null); - - if($definition_id) - { - $builder->where('definition_id', $definition_id); - } - else - { - $builder->where('definition_id IS NOT NULL'); - $builder->where('attribute_id', null); - } - $results = $builder->countAllResults(); - return $results > 0; - } - - /** - * Determines if a given attribute_value exists in the attribute_values table and returns the attribute_id if it does - * - * @param float|string $attributeValue The value to search for in the attribute values table. - * @param string $definitionType The definition type which will dictate which column is searched. - * @return int|bool The attribute ID of the found row or false if no attribute value was found. - */ - public function attributeValueExists(float|string $attributeValue, string $definitionType = TEXT): bool|int - { - $config = config(OSPOS::class)->settings; - - switch($definitionType) - { - case DATE: - $dataType = 'date'; - $attributeDateValue = DateTime::createFromFormat($config['dateformat'], $attributeValue); - $attributeValue = $attributeDateValue ? $attributeDateValue->format('Y-m-d') : $attributeValue; - break; - case DECIMAL: - $dataType = 'decimal'; - break; - default: - $dataType = 'value'; - break; - } - - $builder = $this->db->table('attribute_values'); - $builder->select('attribute_id'); - $builder->where("attribute_$dataType", $attributeValue); - $query = $builder->get(); - - return $query->getNumRows() > 0 - ? $query->getRow()->attribute_id - : false; - } - - /** - * Gets information about a particular attribute definition - */ - public function getAttributeInfo(int $definition_id): object - { - $builder = $this->db->table('attribute_definitions AS definition'); - $builder->select('parent_definition.definition_name AS definition_group, definition.*'); - $builder->join('attribute_definitions AS parent_definition', 'parent_definition.definition_id = definition.definition_fk', 'left'); - $builder->where('definition.definition_id', $definition_id); - - $query = $builder->get(); - - if($query->getNumRows() === 1) - { - return $query->getRow(); - } - else - { - //Get empty base parent object, as $item_id is NOT an item - $item_obj = new stdClass(); - - //Get all the fields from attribute_definitions table - foreach($this->db->getFieldNames('attribute_definitions') as $field) - { - $item_obj->$field = ''; - } - - return $item_obj; - } - } - - /** - * Performs a search on attribute definitions - */ - public function search(string $search, ?int $rows = 0, ?int $limit_from = 0, ?string $sort = 'definition.definition_name', ?string $order = 'asc'): ResultInterface - { - // Set default values - if($rows == null) $rows = 0; - if($limit_from == null) $limit_from = 0; - if($sort == null) $sort = 'definition.definition_name'; - if($order == null) $order = 'asc'; - - $builder = $this->db->table('attribute_definitions AS definition'); - $builder->select('parent_definition.definition_name AS definition_group, definition.*'); - $builder->join('attribute_definitions AS parent_definition', 'parent_definition.definition_id = definition.definition_fk', 'left'); - - $builder->groupStart(); - $builder->like('definition.definition_name', $search); - $builder->orLike('definition.definition_type', $search); - $builder->groupEnd(); - - $builder->where('definition.deleted', 0); - $builder->orderBy($sort, $order); - - if($rows > 0) - { - $builder->limit($rows, $limit_from); - } - - return $builder->get(); - } - - /** - * Gets all attributes connected to an item given the item_id - * - * @param int $item_id Item to retrieve attributes for. - * @return array Attributes for the item. - */ - public function get_attributes_by_item(int $item_id): array - { - $builder = $this->db->table('attribute_definitions'); - $builder->join('attribute_links', 'attribute_links.definition_id = attribute_definitions.definition_id'); - $builder->where('item_id', $item_id); - $builder->where('sale_id', null); - $builder->where('receiving_id', null); - $builder->where('deleted', 0); - $builder->orderBy('definition_name', 'ASC'); - - $results = $builder->get()->getResultArray(); - - return $this->to_array($results, 'definition_id'); - } - - /** - * @param array|null $definition_ids - * @return array - */ - public function get_values_by_definitions(?array $definition_ids): array - { - if(count($definition_ids ? : [])) - { - $builder = $this->db->table('attribute_definitions'); - $builder->groupStart(); - $builder->whereIn('definition_fk', array_keys($definition_ids)); - $builder->orWhereIn('definition_id', array_keys($definition_ids)); - $builder->where('definition_type !=', GROUP); - $builder->groupEnd(); - - $builder->where('deleted', 0); - - $results = $builder->get()->getResultArray(); - - return $this->to_array($results, 'definition_id'); - } - - return []; - } - - /** - * @param string $attribute_type - * @param int $definition_id - * @return array - */ - public function get_definitions_by_type(string $attribute_type, int $definition_id = NO_DEFINITION_ID): array - { - $builder = $this->db->table('attribute_definitions'); - $builder->where('definition_type', $attribute_type); - $builder->where('deleted', 0); - $builder->where('definition_fk'); - - if($definition_id != CATEGORY_DEFINITION_ID) - { - $builder->where('definition_id <>', $definition_id); - } - - $results = $builder->get()->getResultArray(); - - return $this->to_array($results, 'definition_id', 'definition_name'); - } - - /** - * @param int $definition_flags - * @return array - */ - public function get_definitions_by_flags(int $definition_flags): array - { - $builder = $this->db->table('attribute_definitions'); - $builder->where(new RawSql("definition_flags & $definition_flags")); //TODO: we need to heed CI warnings to escape properly - $builder->where('deleted', 0); - $builder->where('definition_type <>', GROUP); - $builder->orderBy('definition_id'); - - $results = $builder->get()->getResultArray(); - - return $this->to_array($results, 'definition_id', 'definition_name'); - } - - /** - * Returns an array of attribute definition names and IDs - * - * @param boolean $groups If false does not return GROUP type attributes in the array - * @return array Array containing definition IDs, attribute names and -1 index with the local language '[SELECT]' line. - */ - public function get_definition_names(bool $groups = true): array - { - $builder = $this->db->table('attribute_definitions'); - $builder->where('deleted', 0); - $builder->orderBy('definition_name','ASC'); - - if(!$groups) - { - $builder->whereNotIn('definition_type',GROUP); - } - - $results = $builder->get()->getResultArray(); - $definition_name = [-1 => lang('Common.none_selected_text')]; - - return $definition_name + $this->to_array($results, 'definition_id', 'definition_name'); - } - - /** - * @param int $definition_id - * @return array - */ - public function get_definition_values(int $definition_id): array - { - $attribute_values = []; - - if($definition_id > 0 || $definition_id == CATEGORY_DEFINITION_ID) - { - $builder = $this->db->table('attribute_links'); - $builder->join('attribute_values', 'attribute_values.attribute_id = attribute_links.attribute_id'); - $builder->where('item_id', null); - $builder->where('definition_id', $definition_id); - $builder->orderBy('attribute_value','ASC'); - - $results = $builder->get()->getResultArray(); - - return $this->to_array($results, 'attribute_id', 'attribute_value'); - } - - return $attribute_values; - } - - /** - * @param array $results - * @param string $key - * @param string $value - * @return array - */ - private function to_array(array $results, string $key, string $value = ''): array - { - return array_column(array_map(function($result) use ($key, $value){ - return [$result[$key], empty($value) ? $result : $result[$value]]; - }, $results), 1, 0); - } - - /** - * Gets total of rows - */ - public function get_total_rows(): int - { - $builder = $this->db->table('attribute_definitions'); - $builder->where('deleted', 0); - - return $builder->countAllResults(); - } - - /** - * Get number of rows - */ - public function get_found_rows(string $search): int - { - return $this->search($search)->getNumRows(); - } - - /** - * @param int $definition_id - * @param string $from - * @param string $to - * @return bool - */ - private function check_data_validity(int $definition_id, string $from, string $to): bool - { - $success = false; - - if($from === TEXT) - { - $success = true; - - $builder = $this->db->table('attribute_values'); - $builder->distinct()->select('attribute_value'); - $builder->join('attribute_links', 'attribute_values.attribute_id = attribute_links.attribute_id'); - $builder->where('definition_id', $definition_id); - - foreach($builder->get()->getResult() as $attribute) - { - switch($to) - { - case DATE: - $success = valid_date($attribute->attribute_value); - break; - case DECIMAL: - $success = valid_decimal($attribute->attribute_value); - break; - } - - if(!$success) - { - $affected_items = $this->get_items_by_value($attribute->attribute_value, $definition_id); - foreach($affected_items as $affected_item) - { - $affected_items[] = $affected_item['item_id']; - } - - log_message('error', "Attribute_value: '$attribute->attribute_value' cannot be converted to $to. Affected Items: ". implode(',', $affected_items)); - unset($affected_items); - } - } - } - return $success; - } - - /** - * Returns all item_ids with a specific attribute_value and attribute_definition - * - * @param string $attribute_value Attribute value to be searched - * @param int $definition_id ID of the specific attribute to return items for. - * @return array Item_ids matching the given parameters - */ - private function get_items_by_value(string $attribute_value, int $definition_id): array - { - $builder = $this->db->table('attribute_links'); - $builder->select('item_id'); - $builder->join('attribute_values', 'attribute_values.attribute_id = attribute_links.attribute_id'); - $builder->where('definition_id', $definition_id); - $builder->where('attribute_value', $attribute_value); - - return $builder->get()->getResultArray(); - } - - /** - * Converts data in attribute_values and attribute_links tables associated with the conversion of one attribute type to another. - * - * @param int $definition_id - * @param string $from_type - * @param string $to_type - * @return boolean - */ - private function convert_definition_data(int $definition_id, string $from_type, string $to_type): bool - { - $success = false; - - if($from_type === TEXT) - { - if(in_array($to_type, [DATE, DECIMAL], true)) - { - if($this->check_data_validity($definition_id, $from_type, $to_type)) - { - $attributes_to_convert = $this->get_attributes_by_definition($definition_id); - $success = $this->attribute_cleanup($attributes_to_convert, $definition_id, $to_type); - } - } - else if($to_type === DROPDOWN) - { - $success = true; - } - else if($to_type === CHECKBOX) //TODO: duplicated code. - { - $checkbox_attribute_values = $this->checkbox_attribute_values($definition_id); - - $this->db->transStart(); - - $query = 'UPDATE '. $this->db->prefixTable('attribute_links') .' links '; - $query .= 'JOIN '. $this->db->prefixTable('attribute_values') .' vals '; - $query .= 'ON vals.attribute_id = links.attribute_id '; - $query .= "SET links.attribute_id = IF((attribute_value IN('false','0','') OR (attribute_value IS NULL)), $checkbox_attribute_values[0], $checkbox_attribute_values[1]) "; - $query .= 'WHERE definition_id = '. $this->db->escape($definition_id); - $success = $this->db->query($query); - - //TODO: In order to convert this query to QueryBuilder, CI needs to fix their issue with JOINs being ignored in UPDATE queries and ideally fix their issue with backticks and dbprefix not being prepended when SQL functions are used. - //Replace the code above with the code below when it's fixed. -// $db_prefix = $this->db->getPrefix(); -// $builder = $this->db->table('attribute_links'); -// $builder->join('attribute_values', 'attribute_values.attribute_id = attribute_links.attribute_id', 'inner'); -// $builder->set('attribute_links.attribute_id', "IF((`$db_prefix" . "attribute_values`.`attribute_value` IN('false','0','') OR (`". $db_prefix ."attribute_values`.`attribute_value` IS NULL)), $checkbox_attribute_values[0], $checkbox_attribute_values[1])", false); -// $builder->where('attribute_links.definition_id', $definition_id); -// $success = $builder->update(); - - $this->db->transComplete(); - } - } - else if($from_type === DROPDOWN) - { - if(in_array($to_type, [TEXT, CHECKBOX], true)) - { - if($to_type === CHECKBOX) //TODO: Duplicated code. - { - $checkbox_attribute_values = $this->checkbox_attribute_values($definition_id); - - $this->db->transStart(); - - $query = 'UPDATE '. $this->db->prefixTable('attribute_links') .' links '; - $query .= 'JOIN '. $this->db->prefixTable('attribute_values') .' vals '; - $query .= 'ON vals.attribute_id = links.attribute_id '; - $query .= "SET links.attribute_id = IF((attribute_value IN('false','0','') OR (attribute_value IS NULL)), $checkbox_attribute_values[0], $checkbox_attribute_values[1]) "; - $query .= 'WHERE definition_id = '. $this->db->escape($definition_id); - $success = $this->db->query($query); - - //TODO: Same issue here. Replace the code above with the code below when it's fixed. -// $builder = $this->db->table('attribute_links'); -// $builder->join('attribute_values', 'attribute_values.attribute_id = attribute_links.attribute_id', 'inner'); -// $builder->set('attribute_links.attribute_id', "IF((attribute_value IN('false','0','') OR (attribute_value IS NULL)), $checkbox_attribute_values[0], $checkbox_attribute_values[1])", false); -// $builder->where('definition_id', $definition_id); -// $success = $builder->update(); + protected $table = 'attribute_definitions'; + protected $primaryKey = 'definition_id'; + protected $useAutoIncrement = true; + protected $useSoftDeletes = false; + protected $allowedFields = [ //TODO: This model may not be well designed... The model accesses three different tables (attribute_definitions, attribute_links, attribute_values). Should that be more than one model? According to CodeIgniter, these are meant to model a single table https://codeigniter.com/user_guide/models/model.html#models + 'definition_name', + 'definition_type', + 'definition_unit', + 'definition_flags', + 'deleted', + 'attribute_id', + 'definition_id', + 'item_id', + 'sale_id', + 'receiving_id', + 'attribute_value', + 'attribute_date', + 'attribute_decimal' + ]; + + public const SHOW_IN_ITEMS = 1; //TODO: These need to be moved to constants.php + public const SHOW_IN_SALES = 2; + public const SHOW_IN_RECEIVINGS = 4; + + /** + * @return array + */ + public static function get_definition_flags(): array + { + $class = new ReflectionClass(__CLASS__); + + return array_flip($class->getConstants()); + } + + /** + * Determines if a given definition_id is an attribute + */ + public function exists(int $definition_id, bool $deleted = false): bool + { + $builder = $this->db->table('attribute_definitions'); + $builder->where('definition_id', $definition_id); + $builder->where('deleted', $deleted); + + return ($builder->get()->getNumRows() == 1); //TODO: === + } + + /** + * Returns whether an attribute_link row exists given an item_id and optionally a definition_id + * + * @param int $item_id ID of the item to check for an associated attribute. + * @param int|bool $definition_id Attribute definition ID to check. + * @return bool returns true if at least one attribute_link exists or false if no attributes exist for that item and attribute. + */ + public function attributeLinkExists(?int $item_id, int|bool $definition_id = false): bool + { + $builder = $this->db->table('attribute_links'); + $builder->where('item_id', $item_id); + $builder->where('sale_id', null); + $builder->where('receiving_id', null); + + if($definition_id) + { + $builder->where('definition_id', $definition_id); + } + else + { + $builder->where('definition_id IS NOT NULL'); + $builder->where('attribute_id', null); + } + $results = $builder->countAllResults(); + return $results > 0; + } + + /** + * Determines if a given attribute_value exists in the attribute_values table and returns the attribute_id if it does + * + * @param float|string $attributeValue The value to search for in the attribute values table. + * @param string $definitionType The definition type which will dictate which column is searched. + * @return int|bool The attribute ID of the found row or false if no attribute value was found. + */ + public function attributeValueExists(float|string $attributeValue, string $definitionType = TEXT): bool|int + { + $config = config(OSPOS::class)->settings; + + switch($definitionType) + { + case DATE: + $dataType = 'date'; + $attributeDateValue = DateTime::createFromFormat($config['dateformat'], $attributeValue); + $attributeValue = $attributeDateValue ? $attributeDateValue->format('Y-m-d') : $attributeValue; + break; + case DECIMAL: + $dataType = 'decimal'; + break; + default: + $dataType = 'value'; + break; + } + + $builder = $this->db->table('attribute_values'); + $builder->select('attribute_id'); + $builder->where("attribute_$dataType", $attributeValue); + $query = $builder->get(); + + return $query->getNumRows() > 0 + ? $query->getRow()->attribute_id + : false; + } + + /** + * Gets information about a particular attribute definition + */ + public function getAttributeInfo(int $definition_id): object + { + $builder = $this->db->table('attribute_definitions AS definition'); + $builder->select('parent_definition.definition_name AS definition_group, definition.*'); + $builder->join('attribute_definitions AS parent_definition', 'parent_definition.definition_id = definition.definition_fk', 'left'); + $builder->where('definition.definition_id', $definition_id); + + $query = $builder->get(); + + if($query->getNumRows() === 1) + { + return $query->getRow(); + } + else + { + //Get empty base parent object, as $item_id is NOT an item + $item_obj = new stdClass(); + + //Get all the fields from attribute_definitions table + foreach($this->db->getFieldNames('attribute_definitions') as $field) + { + $item_obj->$field = ''; + } + + return $item_obj; + } + } + + /** + * Performs a search on attribute definitions + */ + public function search(string $search, ?int $rows = 0, ?int $limit_from = 0, ?string $sort = 'definition.definition_name', ?string $order = 'asc'): ResultInterface + { + // Set default values + if($rows == null) $rows = 0; + if($limit_from == null) $limit_from = 0; + if($sort == null) $sort = 'definition.definition_name'; + if($order == null) $order = 'asc'; + + $builder = $this->db->table('attribute_definitions AS definition'); + $builder->select('parent_definition.definition_name AS definition_group, definition.*'); + $builder->join('attribute_definitions AS parent_definition', 'parent_definition.definition_id = definition.definition_fk', 'left'); + + $builder->groupStart(); + $builder->like('definition.definition_name', $search); + $builder->orLike('definition.definition_type', $search); + $builder->groupEnd(); + + $builder->where('definition.deleted', 0); + $builder->orderBy($sort, $order); + + if($rows > 0) + { + $builder->limit($rows, $limit_from); + } + + return $builder->get(); + } + + /** + * Gets all attributes connected to an item given the item_id + * + * @param int $item_id Item to retrieve attributes for. + * @return array Attributes for the item. + */ + public function get_attributes_by_item(int $item_id): array + { + $builder = $this->db->table('attribute_definitions'); + $builder->join('attribute_links', 'attribute_links.definition_id = attribute_definitions.definition_id'); + $builder->where('item_id', $item_id); + $builder->where('sale_id', null); + $builder->where('receiving_id', null); + $builder->where('deleted', 0); + $builder->orderBy('definition_name', 'ASC'); + + $results = $builder->get()->getResultArray(); + + return $this->to_array($results, 'definition_id'); + } + + /** + * @param array|null $definition_ids + * @return array + */ + public function get_values_by_definitions(?array $definition_ids): array + { + if(count($definition_ids ? : [])) + { + $builder = $this->db->table('attribute_definitions'); + $builder->groupStart(); + $builder->whereIn('definition_fk', array_keys($definition_ids)); + $builder->orWhereIn('definition_id', array_keys($definition_ids)); + $builder->where('definition_type !=', GROUP); + $builder->groupEnd(); + + $builder->where('deleted', 0); + + $results = $builder->get()->getResultArray(); + + return $this->to_array($results, 'definition_id'); + } + + return []; + } + + /** + * @param string $attribute_type + * @param int $definition_id + * @return array + */ + public function get_definitions_by_type(string $attribute_type, int $definition_id = NO_DEFINITION_ID): array + { + $builder = $this->db->table('attribute_definitions'); + $builder->where('definition_type', $attribute_type); + $builder->where('deleted', 0); + $builder->where('definition_fk'); + + if($definition_id != CATEGORY_DEFINITION_ID) + { + $builder->where('definition_id <>', $definition_id); + } + + $results = $builder->get()->getResultArray(); + + return $this->to_array($results, 'definition_id', 'definition_name'); + } + + /** + * @param int $definition_flags + * @return array + */ + public function get_definitions_by_flags(int $definition_flags): array + { + $builder = $this->db->table('attribute_definitions'); + $builder->where(new RawSql("definition_flags & $definition_flags")); //TODO: we need to heed CI warnings to escape properly + $builder->where('deleted', 0); + $builder->where('definition_type <>', GROUP); + $builder->orderBy('definition_id'); + + $results = $builder->get()->getResultArray(); + + return $this->to_array($results, 'definition_id', 'definition_name'); + } + + /** + * Returns an array of attribute definition names and IDs + * + * @param boolean $groups If false does not return GROUP type attributes in the array + * @return array Array containing definition IDs, attribute names and -1 index with the local language '[SELECT]' line. + */ + public function get_definition_names(bool $groups = true): array + { + $builder = $this->db->table('attribute_definitions'); + $builder->where('deleted', 0); + $builder->orderBy('definition_name','ASC'); + + if(!$groups) + { + $builder->whereNotIn('definition_type',GROUP); + } + + $results = $builder->get()->getResultArray(); + $definition_name = [-1 => lang('Common.none_selected_text')]; + + return $definition_name + $this->to_array($results, 'definition_id', 'definition_name'); + } + + /** + * @param int $definition_id + * @return array + */ + public function get_definition_values(int $definition_id): array + { + $attribute_values = []; + + if($definition_id > 0 || $definition_id == CATEGORY_DEFINITION_ID) + { + $builder = $this->db->table('attribute_links'); + $builder->join('attribute_values', 'attribute_values.attribute_id = attribute_links.attribute_id'); + $builder->where('item_id', null); + $builder->where('definition_id', $definition_id); + $builder->orderBy('attribute_value','ASC'); + + $results = $builder->get()->getResultArray(); + + return $this->to_array($results, 'attribute_id', 'attribute_value'); + } + + return $attribute_values; + } + + /** + * @param array $results + * @param string $key + * @param string $value + * @return array + */ + private function to_array(array $results, string $key, string $value = ''): array + { + return array_column(array_map(function($result) use ($key, $value){ + return [$result[$key], empty($value) ? $result : $result[$value]]; + }, $results), 1, 0); + } + + /** + * Gets total of rows + */ + public function get_total_rows(): int + { + $builder = $this->db->table('attribute_definitions'); + $builder->where('deleted', 0); + + return $builder->countAllResults(); + } + + /** + * Get number of rows + */ + public function get_found_rows(string $search): int + { + return $this->search($search)->getNumRows(); + } + + /** + * @param int $definition_id + * @param string $from + * @param string $to + * @return bool + */ + private function check_data_validity(int $definition_id, string $from, string $to): bool + { + $success = false; + + if($from === TEXT) + { + $success = true; + + $builder = $this->db->table('attribute_values'); + $builder->distinct()->select('attribute_value'); + $builder->join('attribute_links', 'attribute_values.attribute_id = attribute_links.attribute_id'); + $builder->where('definition_id', $definition_id); + + foreach($builder->get()->getResult() as $attribute) + { + switch($to) + { + case DATE: + $success = valid_date($attribute->attribute_value); + break; + case DECIMAL: + $success = valid_decimal($attribute->attribute_value); + break; + } + + if(!$success) + { + $affected_items = $this->get_items_by_value($attribute->attribute_value, $definition_id); + foreach($affected_items as $affected_item) + { + $affected_items[] = $affected_item['item_id']; + } + + log_message('error', "Attribute_value: '$attribute->attribute_value' cannot be converted to $to. Affected Items: ". implode(',', $affected_items)); + unset($affected_items); + } + } + } + return $success; + } + + /** + * Returns all item_ids with a specific attribute_value and attribute_definition + * + * @param string $attribute_value Attribute value to be searched + * @param int $definition_id ID of the specific attribute to return items for. + * @return array Item_ids matching the given parameters + */ + private function get_items_by_value(string $attribute_value, int $definition_id): array + { + $builder = $this->db->table('attribute_links'); + $builder->select('item_id'); + $builder->join('attribute_values', 'attribute_values.attribute_id = attribute_links.attribute_id'); + $builder->where('definition_id', $definition_id); + $builder->where('attribute_value', $attribute_value); + + return $builder->get()->getResultArray(); + } + + /** + * Converts data in attribute_values and attribute_links tables associated with the conversion of one attribute type to another. + * + * @param int $definition_id + * @param string $from_type + * @param string $to_type + * @return boolean + */ + private function convert_definition_data(int $definition_id, string $from_type, string $to_type): bool + { + $success = false; + + if($from_type === TEXT) + { + if(in_array($to_type, [DATE, DECIMAL], true)) + { + if($this->check_data_validity($definition_id, $from_type, $to_type)) + { + $attributes_to_convert = $this->get_attributes_by_definition($definition_id); + $success = $this->attribute_cleanup($attributes_to_convert, $definition_id, $to_type); + } + } + else if($to_type === DROPDOWN) + { + $success = true; + } + else if($to_type === CHECKBOX) //TODO: duplicated code. + { + $checkbox_attribute_values = $this->checkbox_attribute_values($definition_id); + + $this->db->transStart(); + + $query = 'UPDATE '. $this->db->prefixTable('attribute_links') .' links '; + $query .= 'JOIN '. $this->db->prefixTable('attribute_values') .' vals '; + $query .= 'ON vals.attribute_id = links.attribute_id '; + $query .= "SET links.attribute_id = IF((attribute_value IN('false','0','') OR (attribute_value IS NULL)), $checkbox_attribute_values[0], $checkbox_attribute_values[1]) "; + $query .= 'WHERE definition_id = '. $this->db->escape($definition_id); + $success = $this->db->query($query); + + //TODO: In order to convert this query to QueryBuilder, CI needs to fix their issue with JOINs being ignored in UPDATE queries and ideally fix their issue with backticks and dbprefix not being prepended when SQL functions are used. + //Replace the code above with the code below when it's fixed. +// $db_prefix = $this->db->getPrefix(); +// $builder = $this->db->table('attribute_links'); +// $builder->join('attribute_values', 'attribute_values.attribute_id = attribute_links.attribute_id', 'inner'); +// $builder->set('attribute_links.attribute_id', "IF((`$db_prefix" . "attribute_values`.`attribute_value` IN('false','0','') OR (`". $db_prefix ."attribute_values`.`attribute_value` IS NULL)), $checkbox_attribute_values[0], $checkbox_attribute_values[1])", false); +// $builder->where('attribute_links.definition_id', $definition_id); +// $success = $builder->update(); + + $this->db->transComplete(); + } + } + else if($from_type === DROPDOWN) + { + if(in_array($to_type, [TEXT, CHECKBOX], true)) + { + if($to_type === CHECKBOX) //TODO: Duplicated code. + { + $checkbox_attribute_values = $this->checkbox_attribute_values($definition_id); + + $this->db->transStart(); + + $query = 'UPDATE '. $this->db->prefixTable('attribute_links') .' links '; + $query .= 'JOIN '. $this->db->prefixTable('attribute_values') .' vals '; + $query .= 'ON vals.attribute_id = links.attribute_id '; + $query .= "SET links.attribute_id = IF((attribute_value IN('false','0','') OR (attribute_value IS NULL)), $checkbox_attribute_values[0], $checkbox_attribute_values[1]) "; + $query .= 'WHERE definition_id = '. $this->db->escape($definition_id); + $success = $this->db->query($query); + + //TODO: Same issue here. Replace the code above with the code below when it's fixed. +// $builder = $this->db->table('attribute_links'); +// $builder->join('attribute_values', 'attribute_values.attribute_id = attribute_links.attribute_id', 'inner'); +// $builder->set('attribute_links.attribute_id', "IF((attribute_value IN('false','0','') OR (attribute_value IS NULL)), $checkbox_attribute_values[0], $checkbox_attribute_values[1])", false); +// $builder->where('definition_id', $definition_id); +// $success = $builder->update(); // -// $this->db->transComplete(); - } - } - } - else - { - $success = true; - } - - $this->delete_orphaned_links($definition_id); - $this->delete_orphaned_values(); - return $success; - } - - /** - * @param int $definition_id - * @return array - */ - private function checkbox_attribute_values(int $definition_id): array - { - $zero_attribute_id = $this->attributeValueExists('0'); - $one_attribute_id = $this->attributeValueExists('1'); - - if(!$zero_attribute_id) - { - $zero_attribute_id = $this->saveAttributeValue('0', $definition_id, false, false, CHECKBOX); - } - - if(!$one_attribute_id) - { - $one_attribute_id = $this->saveAttributeValue('1', $definition_id, false, false, CHECKBOX); - $one_attribute_id = $this->saveAttributeValue('1', $definition_id, false, false, CHECKBOX); - } - - return [$zero_attribute_id, $one_attribute_id]; - } - - /** - * Inserts or updates a definition - */ - public function save_definition(array &$definition_data, int $definition_id = NO_DEFINITION_ID): bool - { - $this->db->transStart(); - - //Definition doesn't exist - if($definition_id === NO_DEFINITION_ID || !$this->exists($definition_id)) - { - if($this->exists($definition_id,true)) - { - $success = $this->undelete($definition_id); - } - else - { - $builder = $this->db->table('attribute_definitions'); - $success = $builder->insert($definition_data); - $definition_data['definition_id'] = $this->db->insertID(); - } - } - - //Definition already exists - else - { - $builder = $this->db->table('attribute_definitions'); - $builder->select('definition_type'); - $builder->where('definition_id', $definition_id); - $builder->where('deleted', ACTIVE); - $query = $builder->get(); - $row = $query->getRow(); - - $from_definition_type = $row->definition_type; - $to_definition_type = $definition_data['definition_type']; - - //Update the definition values - $builder->where('definition_id', $definition_id); - - $success = $builder->update($definition_data); - $definition_data['definition_id'] = $definition_id; - - if($from_definition_type !== $to_definition_type) - { - if(!$this->convert_definition_data($definition_id, $from_definition_type, $to_definition_type)) - { - return false; - } - } - } - - $this->db->transComplete(); - - $success &= $this->db->transStatus(); - - return $success; - } - - /** - * @param string $definition_name - * @param $definition_type - * @return array - */ - public function get_definition_by_name(string $definition_name, $definition_type = false): array - { - $builder = $this->db->table('attribute_definitions'); - $builder->where('definition_name', $definition_name); - $builder->where('deleted', 0); - - if($definition_type) - { - $builder->where('definition_type', $definition_type); - } - - return $builder->get()->getResultArray(); - } - - /** - * Inserts or updates an attribute link - * - * @param int $itemId - * @param int $definitionId - * @param int $attributeId - * @return bool True if the attribute link was saved successfully, false otherwise. - */ - public function saveAttributeLink(int $itemId, int $definitionId, int $attributeId): bool - { - $this->db->transStart(); - - $builder = $this->db->table('attribute_links'); - - if($this->attributeLinkExists($itemId, $definitionId)) - { - $builder->set(['attribute_id' => $attributeId]); - $builder->where('definition_id', $definitionId); - $builder->where('item_id', $itemId); - $builder->where('sale_id', null); - $builder->where('receiving_id', null); - $builder->update(); - } - else - { - $data = [ - 'attribute_id' => $attributeId, - 'item_id' => $itemId, - 'definition_id' => $definitionId - ]; - $builder->insert($data); - } - - $this->db->transComplete(); - - return $this->db->transStatus(); - } - - /** - * @param int $item_id - * @param int|bool $definition_id - * @return bool - */ - public function deleteAttributeLinks(int $item_id, int|bool $definition_id = false): bool - { - $delete_data = ['item_id' => $item_id]; - - //Exclude rows where sale_id or receiving_id has a value - $builder = $this->db->table('attribute_links'); - $builder->where('sale_id', null); - $builder->where('receiving_id', null); - - if(!empty($definition_id)) - { - $delete_data += ['definition_id' => $definition_id]; - } - - return $builder->delete($delete_data); - } - - /** - * @param int $item_id - * @param int|null $definition_id - * @return object|null - */ - public function get_link_value(int $item_id, ?int $definition_id): ?object - { - $builder = $this->db->table('attribute_links'); - $builder->where('item_id', $item_id); - $builder->where('sale_id', null); - $builder->where('receiving_id', null); - if($definition_id != null) - { - $builder->where('definition_id', $definition_id); - } - - return $builder->get()->getRowObject(); - } - - /** - * @param int $item_id - * @param string $sale_receiving_fk - * @param int|null $id - * @param int|null $definition_flags - * @return ResultInterface - */ - public function get_link_values(int $item_id, string $sale_receiving_fk, ?int $id, ?int $definition_flags): ResultInterface - { - $format = $this->db->escape(dateformat_mysql()); - - $builder = $this->db->table('attribute_links'); - $builder->select("GROUP_CONCAT(attribute_value SEPARATOR ', ') AS attribute_values"); - $builder->select("GROUP_CONCAT(DATE_FORMAT(attribute_date, $format) SEPARATOR ', ') AS attribute_dtvalues"); - $builder->join('attribute_values', 'attribute_values.attribute_id = attribute_links.attribute_id'); - $builder->join('attribute_definitions', 'attribute_definitions.definition_id = attribute_links.definition_id'); - $builder->where('definition_type <>', GROUP); - $builder->where('deleted', ACTIVE); - $builder->where('item_id', $item_id); - - if(!empty($id)) - { - $builder->where($sale_receiving_fk, $id); - } - else - { - $builder->where('sale_id', null); - $builder->where('receiving_id', null); - } - - if(!empty($id)) - { - $builder->where(new RawSql("definition_flags & $definition_flags")); - } - return $builder->get(); - } - - /** - * @param int $item_id - * @param int $definition_id - * @return object|null - */ - public function get_attribute_value(int $item_id, int $definition_id): ?object - { - $builder = $this->db->table('attribute_values'); - $builder->join('attribute_links', 'attribute_links.attribute_id = attribute_values.attribute_id'); - $builder->where('item_id', $item_id); - $builder->where('sale_id', null); - $builder->where('receiving_id', null); - $builder->where('definition_id', $definition_id); - $query = $builder->get(); - - if($query->getNumRows() == 1) - { - return $query->getRow(); - } - - return $this->getEmptyObject('attribute_values'); - } - - /** - * Initializes an empty object based on database definitions - * @param string $table_name - * @return object - */ - private function getEmptyObject(string $table_name): object - { - // Return an empty base parent object, as $item_id is NOT an item - $empty_obj = new stdClass(); - - // Iterate through field definitions to determine how the fields should be initialized - foreach($this->db->getFieldData($table_name) as $field) - { - $field_name = $field->name; - - if(in_array($field->type, ['int', 'tinyint', 'decimal'])) - { - $empty_obj->$field_name = ($field->primary_key == 1) ? NEW_ENTRY : 0; - } - else - { - $empty_obj->$field_name = null; - } - } - - return $empty_obj; - } - - - /** - * @param int $item_id - * @return array - */ - public function get_attribute_values(int $item_id): array //TODO: Is this function used anywhere in the code? - { - $builder = $this->db->table('attribute_links'); - $builder->select('attribute_values.attribute_value, attribute_values.attribute_decimal, attribute_values.attribute_date, attribute_links.definition_id'); - $builder->join('attribute_values', 'attribute_links.attribute_id = attribute_values.attribute_id'); - $builder->where('item_id', $item_id); - - $results = $builder->get()->getResultArray(); - - return $this->to_array($results, 'definition_id'); - } - - /** - * @param int $item_id - * @param string $sale_receiving_fk - * @param int $id - * @return void - */ - public function copy_attribute_links(int $item_id, string $sale_receiving_fk, int $id): void - { - $query = 'SELECT ' . $this->db->escape($item_id) . ', definition_id, attribute_id, ' . $this->db->escape($id); - $query .= ' FROM ' . $this->db->prefixTable('attribute_links'); - $query .= ' WHERE item_id = ' . $this->db->escape($item_id); - $query .=' AND sale_id IS NULL AND receiving_id IS NULL'; - - $builder = $this->db->table('attribute_links'); - $builder->ignore(true)->setQueryAsData(new RawSql($query), null, 'item_id, definition_id, attribute_id, '. $sale_receiving_fk )->insertBatch(); - } - - /** - * Gets search suggestions (attribute values) for a specific attribute definition given a search term and definition_id - * - * @param int $definition_id - * @param string $term - * @return array - */ - public function get_suggestions(int $definition_id, string $term): array - { - $suggestions = []; - - $builder = $this->db->table('attribute_definitions AS definition'); - $builder->distinct()->select('attribute_value, attribute_values.attribute_id'); - $builder->join('attribute_links', 'attribute_links.definition_id = definition.definition_id'); - $builder->join('attribute_values', 'attribute_values.attribute_id = attribute_links.attribute_id'); - $builder->like('attribute_value', $term); - $builder->where('deleted', ACTIVE); - $builder->where('definition.definition_id', $definition_id); - $builder->orderBy('attribute_value','ASC'); - - foreach($builder->get()->getResult('array') as $suggestion) - { - $suggestions[] = ['value' => $suggestion['attribute_id'], 'label' => $suggestion['attribute_value']]; - } - - return $suggestions; - } - - /** - * @param string $attribute_value - * @param int $definition_id - * @param $item_id - * @param $attribute_id - * @param string $definition_type - * @return int - */ - public function saveAttributeValue(string $attribute_value, int $definition_id, int|bool $item_id = false, int|bool $attribute_id = false, string $definition_type = DROPDOWN): int - { - $config = config(OSPOS::class)->settings; - - $this->db->transStart(); - - switch($definition_type) - { - case DATE: - $data_type = 'date'; - $attribute_date_value = DateTime::createFromFormat($config['dateformat'], $attribute_value); - $attribute_value = $attribute_date_value->format('Y-m-d'); - break; - case DECIMAL: - $data_type = 'decimal'; - break; - default: - $data_type = 'value'; - break; - } - - //New Attribute - if(empty($attribute_id) || empty($item_id)) - { - $attribute_id = $this->attributeValueExists($attribute_value, $definition_type); - - if(!$attribute_id) - { - - $builder = $this->db->table('attribute_values'); - $builder->set(["attribute_$data_type" => $attribute_value]); - $builder->insert(); - - $attribute_id = $this->db->insertID(); - } - - $data = [ - 'attribute_id' => empty($attribute_id) ? null : $attribute_id, - 'item_id' => empty($item_id) ? null : $item_id, - 'definition_id' => $definition_id - ]; - - $builder = $this->db->table('attribute_links'); - $builder->set($data); - $builder->insert(); - } - //Existing Attribute - else - { - $builder = $this->db->table('attribute_values'); - $builder->set(["attribute_$data_type" => $attribute_value]); - $builder->where('attribute_id', $attribute_id); - $builder->update(); - } - - $this->db->transComplete(); - - return $attribute_id; - } - - /** - * @param string $attribute_value - * @param int $definition_id - * @return bool - */ - public function delete_value(string $attribute_value, int $definition_id): bool - { - //QueryBuilder does not support multi-table delete. - $query = 'DELETE atrv, atrl '; - $query .= 'FROM ' . $this->db->prefixTable('attribute_values') . ' atrv, ' . $this->db->prefixTable('attribute_links') . ' atrl '; - $query .= 'WHERE atrl.attribute_id = atrv.attribute_id AND atrv.attribute_value = ' . $this->db->escape($attribute_value); - $query .= ' AND atrl.definition_id = ' . $this->db->escape($definition_id); - return $this->db->query($query); - } - - /** - * Deletes an Attribute definition from the database and associated column in the items_import.csv - * - * @param int $definition_id Attribute definition ID to remove. - * @return boolean true if successful and false if there is a failure - */ - public function delete_definition(int $definition_id): bool - { - $builder = $this->db->table('attribute_definitions'); - $builder->where('definition_id', $definition_id); - - return $builder->update(['deleted' => DELETED]); - } - - /** - * @param array $definition_ids - * @return bool - */ - public function delete_definition_list(array $definition_ids): bool - { - $builder = $this->db->table('attribute_definitions'); - $builder->whereIn('definition_id', $definition_ids); - - return $builder->update(['deleted' => DELETED]); - } - - /** - * Deletes any attribute_links for a specific definition that do not have an item_id associated with them and are not DROPDOWN types - * - * @param int $definition_id - * @return boolean true is returned if the delete was successful or false if there were any failures - */ - public function delete_orphaned_links(int $definition_id): bool - { - $builder = $this->db->table('attribute_definitions'); - $builder->select('definition_type'); - $builder->where('definition_id', $definition_id); - - $definition = $builder->get()->getRow(); - - if($definition->definition_type != DROPDOWN) - { - $this->db->transStart(); - - $builder = $this->db->table('attribute_links'); - $builder->where('item_id', null); - $builder->where('definition_id', $definition_id); - $builder->delete(); - - $this->db->transComplete(); - - return $this->db->transStatus(); - } - - return true; //Return true when definition_type is DROPDOWN - } - - /** - * Deletes any orphaned values that do not have associated links - * - * @return boolean true is returned if the delete was successful or false if there were any failures - */ - public function delete_orphaned_values(): bool - { - $subquery = $this->db->table('attribute_links') - ->distinct() - ->select('attribute_id'); - - $this->db->transStart(); - - $builder = $this->db->table('attribute_values'); - $builder->whereNotIn('attribute_id', $subquery, false); - $builder->delete(); - - $this->db->transComplete(); - - return $this->db->transStatus(); - } - - /** - * Undeletes one attribute definition - */ - public function undelete(int $definition_id): bool - { - $builder = $this->db->table('attribute_definitions'); - $builder->where('definition_id', $definition_id); - - return $builder->update(['deleted' => ACTIVE]); - } - - /** - * - * @param array $attributes attributes that need to be fixed - * @param int $definition_id - * @param string $definition_type This dictates what column should be populated in any new attribute_values that are created - * @return bool - */ - public function attribute_cleanup(array $attributes, int $definition_id, string $definition_type): bool - { - $this->db->transBegin(); - - foreach($attributes as $attribute) - { - $new_attribute_id = $this->saveAttributeValue($attribute['attribute_value'], $definition_id, false, $attribute['attribute_id'], $definition_type); - - if(!$this->saveAttributeLink($attribute['item_id'], $definition_id, $new_attribute_id)) - { - log_message('error', 'Transaction failed'); - $this->db->transRollback(); - return false; - } - } - $success = $this->delete_orphaned_links($definition_id); - - $this->db->transCommit(); - return $success; - } - - /** - * Returns all attribute_ids and item_ids assigned to that definition_id - * - * @param int $definition_id - * @return array All attribute_id and item_id pairs in the attribute_links table with that attribute definition_id - */ - public function get_attributes_by_definition(int $definition_id): array - { - $builder = $this->db->table('attribute_links'); - $builder->select('attribute_links.attribute_id, item_id, attribute_value, attribute_decimal, attribute_date'); - $builder->join('attribute_values', 'attribute_values.attribute_id = attribute_links.attribute_id'); - $builder->where('definition_id', $definition_id); - - return $builder->get()->getResultArray(); - } +// $this->db->transComplete(); + } + } + } + else + { + $success = true; + } + + $this->delete_orphaned_links($definition_id); + $this->delete_orphaned_values(); + return $success; + } + + /** + * @param int $definition_id + * @return array + */ + private function checkbox_attribute_values(int $definition_id): array + { + $zero_attribute_id = $this->attributeValueExists('0'); + $one_attribute_id = $this->attributeValueExists('1'); + + if(!$zero_attribute_id) + { + $zero_attribute_id = $this->saveAttributeValue('0', $definition_id, false, false, CHECKBOX); + } + + if(!$one_attribute_id) + { + $one_attribute_id = $this->saveAttributeValue('1', $definition_id, false, false, CHECKBOX); + $one_attribute_id = $this->saveAttributeValue('1', $definition_id, false, false, CHECKBOX); + } + + return [$zero_attribute_id, $one_attribute_id]; + } + + /** + * Inserts or updates a definition + */ + public function save_definition(array &$definition_data, int $definition_id = NO_DEFINITION_ID): bool + { + $this->db->transStart(); + + //Definition doesn't exist + if($definition_id === NO_DEFINITION_ID || !$this->exists($definition_id)) + { + if($this->exists($definition_id,true)) + { + $success = $this->undelete($definition_id); + } + else + { + $builder = $this->db->table('attribute_definitions'); + $success = $builder->insert($definition_data); + $definition_data['definition_id'] = $this->db->insertID(); + } + } + + //Definition already exists + else + { + $builder = $this->db->table('attribute_definitions'); + $builder->select('definition_type'); + $builder->where('definition_id', $definition_id); + $builder->where('deleted', ACTIVE); + $query = $builder->get(); + $row = $query->getRow(); + + $from_definition_type = $row->definition_type; + $to_definition_type = $definition_data['definition_type']; + + //Update the definition values + $builder->where('definition_id', $definition_id); + + $success = $builder->update($definition_data); + $definition_data['definition_id'] = $definition_id; + + if($from_definition_type !== $to_definition_type) + { + if(!$this->convert_definition_data($definition_id, $from_definition_type, $to_definition_type)) + { + return false; + } + } + } + + $this->db->transComplete(); + + $success &= $this->db->transStatus(); + + return $success; + } + + /** + * @param string $definition_name + * @param $definition_type + * @return array + */ + public function get_definition_by_name(string $definition_name, $definition_type = false): array + { + $builder = $this->db->table('attribute_definitions'); + $builder->where('definition_name', $definition_name); + $builder->where('deleted', 0); + + if($definition_type) + { + $builder->where('definition_type', $definition_type); + } + + return $builder->get()->getResultArray(); + } + + /** + * Inserts or updates an attribute link + * + * @param int $itemId + * @param int $definitionId + * @param int $attributeId + * @return bool True if the attribute link was saved successfully, false otherwise. + */ + public function saveAttributeLink(int $itemId, int $definitionId, int $attributeId): bool + { + $this->db->transStart(); + + $builder = $this->db->table('attribute_links'); + + if($this->attributeLinkExists($itemId, $definitionId)) + { + $builder->set(['attribute_id' => $attributeId]); + $builder->where('definition_id', $definitionId); + $builder->where('item_id', $itemId); + $builder->where('sale_id', null); + $builder->where('receiving_id', null); + $builder->update(); + } + else + { + $data = [ + 'attribute_id' => $attributeId, + 'item_id' => $itemId, + 'definition_id' => $definitionId + ]; + $builder->insert($data); + } + + $this->db->transComplete(); + + return $this->db->transStatus(); + } + + /** + * @param int $item_id + * @param int|bool $definition_id + * @return bool + */ + public function deleteAttributeLinks(int $item_id, int|bool $definition_id = false): bool + { + $delete_data = ['item_id' => $item_id]; + + //Exclude rows where sale_id or receiving_id has a value + $builder = $this->db->table('attribute_links'); + $builder->where('sale_id', null); + $builder->where('receiving_id', null); + + if(!empty($definition_id)) + { + $delete_data += ['definition_id' => $definition_id]; + } + + return $builder->delete($delete_data); + } + + /** + * @param int $item_id + * @param int|null $definition_id + * @return object|null + */ + public function get_link_value(int $item_id, ?int $definition_id): ?object + { + $builder = $this->db->table('attribute_links'); + $builder->where('item_id', $item_id); + $builder->where('sale_id', null); + $builder->where('receiving_id', null); + if($definition_id != null) + { + $builder->where('definition_id', $definition_id); + } + + return $builder->get()->getRowObject(); + } + + /** + * @param int $item_id + * @param string $sale_receiving_fk + * @param int|null $id + * @param int|null $definition_flags + * @return ResultInterface + */ + public function get_link_values(int $item_id, string $sale_receiving_fk, ?int $id, ?int $definition_flags): ResultInterface + { + $format = $this->db->escape(dateformat_mysql()); + + $builder = $this->db->table('attribute_links'); + $builder->select("GROUP_CONCAT(attribute_value SEPARATOR ', ') AS attribute_values"); + $builder->select("GROUP_CONCAT(DATE_FORMAT(attribute_date, $format) SEPARATOR ', ') AS attribute_dtvalues"); + $builder->join('attribute_values', 'attribute_values.attribute_id = attribute_links.attribute_id'); + $builder->join('attribute_definitions', 'attribute_definitions.definition_id = attribute_links.definition_id'); + $builder->where('definition_type <>', GROUP); + $builder->where('deleted', ACTIVE); + $builder->where('item_id', $item_id); + + if(!empty($id)) + { + $builder->where($sale_receiving_fk, $id); + } + else + { + $builder->where('sale_id', null); + $builder->where('receiving_id', null); + } + + if(!empty($id)) + { + $builder->where(new RawSql("definition_flags & $definition_flags")); + } + return $builder->get(); + } + + /** + * @param int $item_id + * @param int $definition_id + * @return object|null + */ + public function get_attribute_value(int $item_id, int $definition_id): ?object + { + $builder = $this->db->table('attribute_values'); + $builder->join('attribute_links', 'attribute_links.attribute_id = attribute_values.attribute_id'); + $builder->where('item_id', $item_id); + $builder->where('sale_id', null); + $builder->where('receiving_id', null); + $builder->where('definition_id', $definition_id); + $query = $builder->get(); + + if($query->getNumRows() == 1) + { + return $query->getRow(); + } + + return $this->getEmptyObject('attribute_values'); + } + + /** + * Initializes an empty object based on database definitions + * @param string $table_name + * @return object + */ + private function getEmptyObject(string $table_name): object + { + // Return an empty base parent object, as $item_id is NOT an item + $empty_obj = new stdClass(); + + // Iterate through field definitions to determine how the fields should be initialized + foreach($this->db->getFieldData($table_name) as $field) + { + $field_name = $field->name; + + if(in_array($field->type, ['int', 'tinyint', 'decimal'])) + { + $empty_obj->$field_name = ($field->primary_key == 1) ? NEW_ENTRY : 0; + } + else + { + $empty_obj->$field_name = null; + } + } + + return $empty_obj; + } + + + /** + * @param int $item_id + * @return array + */ + public function get_attribute_values(int $item_id): array //TODO: Is this function used anywhere in the code? + { + $builder = $this->db->table('attribute_links'); + $builder->select('attribute_values.attribute_value, attribute_values.attribute_decimal, attribute_values.attribute_date, attribute_links.definition_id'); + $builder->join('attribute_values', 'attribute_links.attribute_id = attribute_values.attribute_id'); + $builder->where('item_id', $item_id); + + $results = $builder->get()->getResultArray(); + + return $this->to_array($results, 'definition_id'); + } + + /** + * @param int $item_id + * @param string $sale_receiving_fk + * @param int $id + * @return void + */ + public function copy_attribute_links(int $item_id, string $sale_receiving_fk, int $id): void + { + $query = 'SELECT ' . $this->db->escape($item_id) . ', definition_id, attribute_id, ' . $this->db->escape($id); + $query .= ' FROM ' . $this->db->prefixTable('attribute_links'); + $query .= ' WHERE item_id = ' . $this->db->escape($item_id); + $query .=' AND sale_id IS NULL AND receiving_id IS NULL'; + + $builder = $this->db->table('attribute_links'); + $builder->ignore(true)->setQueryAsData(new RawSql($query), null, 'item_id, definition_id, attribute_id, '. $sale_receiving_fk )->insertBatch(); + } + + /** + * Gets search suggestions (attribute values) for a specific attribute definition given a search term and definition_id + * + * @param int $definition_id + * @param string $term + * @return array + */ + public function get_suggestions(int $definition_id, string $term): array + { + $suggestions = []; + + $builder = $this->db->table('attribute_definitions AS definition'); + $builder->distinct()->select('attribute_value, attribute_values.attribute_id'); + $builder->join('attribute_links', 'attribute_links.definition_id = definition.definition_id'); + $builder->join('attribute_values', 'attribute_values.attribute_id = attribute_links.attribute_id'); + $builder->like('attribute_value', $term); + $builder->where('deleted', ACTIVE); + $builder->where('definition.definition_id', $definition_id); + $builder->orderBy('attribute_value','ASC'); + + foreach($builder->get()->getResult('array') as $suggestion) + { + $suggestions[] = ['value' => $suggestion['attribute_id'], 'label' => $suggestion['attribute_value']]; + } + + return $suggestions; + } + + /** + * @param string $attribute_value + * @param int $definition_id + * @param $item_id + * @param $attribute_id + * @param string $definition_type + * @return int + */ + public function saveAttributeValue(string $attribute_value, int $definition_id, int|bool $item_id = false, int|bool $attribute_id = false, string $definition_type = DROPDOWN): int + { + $config = config(OSPOS::class)->settings; + + $this->db->transStart(); + + switch($definition_type) + { + case DATE: + $data_type = 'date'; + $attribute_date_value = DateTime::createFromFormat($config['dateformat'], $attribute_value); + $attribute_value = $attribute_date_value->format('Y-m-d'); + break; + case DECIMAL: + $data_type = 'decimal'; + break; + default: + $data_type = 'value'; + break; + } + + //New Attribute + if(empty($attribute_id) || empty($item_id)) + { + $attribute_id = $this->attributeValueExists($attribute_value, $definition_type); + + if(!$attribute_id) + { + + $builder = $this->db->table('attribute_values'); + $builder->set(["attribute_$data_type" => $attribute_value]); + $builder->insert(); + + $attribute_id = $this->db->insertID(); + } + + $data = [ + 'attribute_id' => empty($attribute_id) ? null : $attribute_id, + 'item_id' => empty($item_id) ? null : $item_id, + 'definition_id' => $definition_id + ]; + + $builder = $this->db->table('attribute_links'); + $builder->set($data); + $builder->insert(); + } + //Existing Attribute + else + { + $builder = $this->db->table('attribute_values'); + $builder->set(["attribute_$data_type" => $attribute_value]); + $builder->where('attribute_id', $attribute_id); + $builder->update(); + } + + $this->db->transComplete(); + + return $attribute_id; + } + + /** + * @param string $attribute_value + * @param int $definition_id + * @return bool + */ + public function delete_value(string $attribute_value, int $definition_id): bool + { + //QueryBuilder does not support multi-table delete. + $query = 'DELETE atrv, atrl '; + $query .= 'FROM ' . $this->db->prefixTable('attribute_values') . ' atrv, ' . $this->db->prefixTable('attribute_links') . ' atrl '; + $query .= 'WHERE atrl.attribute_id = atrv.attribute_id AND atrv.attribute_value = ' . $this->db->escape($attribute_value); + $query .= ' AND atrl.definition_id = ' . $this->db->escape($definition_id); + return $this->db->query($query); + } + + /** + * Deletes an Attribute definition from the database and associated column in the items_import.csv + * + * @param int $definition_id Attribute definition ID to remove. + * @return boolean true if successful and false if there is a failure + */ + public function delete_definition(int $definition_id): bool + { + $builder = $this->db->table('attribute_definitions'); + $builder->where('definition_id', $definition_id); + + return $builder->update(['deleted' => DELETED]); + } + + /** + * @param array $definition_ids + * @return bool + */ + public function delete_definition_list(array $definition_ids): bool + { + $builder = $this->db->table('attribute_definitions'); + $builder->whereIn('definition_id', $definition_ids); + + return $builder->update(['deleted' => DELETED]); + } + + /** + * Deletes any attribute_links for a specific definition that do not have an item_id associated with them and are not DROPDOWN types + * + * @param int $definition_id + * @return boolean true is returned if the delete was successful or false if there were any failures + */ + public function delete_orphaned_links(int $definition_id): bool + { + $builder = $this->db->table('attribute_definitions'); + $builder->select('definition_type'); + $builder->where('definition_id', $definition_id); + + $definition = $builder->get()->getRow(); + + if($definition->definition_type != DROPDOWN) + { + $this->db->transStart(); + + $builder = $this->db->table('attribute_links'); + $builder->where('item_id', null); + $builder->where('definition_id', $definition_id); + $builder->delete(); + + $this->db->transComplete(); + + return $this->db->transStatus(); + } + + return true; //Return true when definition_type is DROPDOWN + } + + /** + * Deletes any orphaned values that do not have associated links + * + * @return boolean true is returned if the delete was successful or false if there were any failures + */ + public function delete_orphaned_values(): bool + { + $subquery = $this->db->table('attribute_links') + ->distinct() + ->select('attribute_id'); + + $this->db->transStart(); + + $builder = $this->db->table('attribute_values'); + $builder->whereNotIn('attribute_id', $subquery, false); + $builder->delete(); + + $this->db->transComplete(); + + return $this->db->transStatus(); + } + + /** + * Undeletes one attribute definition + */ + public function undelete(int $definition_id): bool + { + $builder = $this->db->table('attribute_definitions'); + $builder->where('definition_id', $definition_id); + + return $builder->update(['deleted' => ACTIVE]); + } + + /** + * + * @param array $attributes attributes that need to be fixed + * @param int $definition_id + * @param string $definition_type This dictates what column should be populated in any new attribute_values that are created + * @return bool + */ + public function attribute_cleanup(array $attributes, int $definition_id, string $definition_type): bool + { + $this->db->transBegin(); + + foreach($attributes as $attribute) + { + $new_attribute_id = $this->saveAttributeValue($attribute['attribute_value'], $definition_id, false, $attribute['attribute_id'], $definition_type); + + if(!$this->saveAttributeLink($attribute['item_id'], $definition_id, $new_attribute_id)) + { + log_message('error', 'Transaction failed'); + $this->db->transRollback(); + return false; + } + } + $success = $this->delete_orphaned_links($definition_id); + + $this->db->transCommit(); + return $success; + } + + /** + * Returns all attribute_ids and item_ids assigned to that definition_id + * + * @param int $definition_id + * @return array All attribute_id and item_id pairs in the attribute_links table with that attribute definition_id + */ + public function get_attributes_by_definition(int $definition_id): array + { + $builder = $this->db->table('attribute_links'); + $builder->select('attribute_links.attribute_id, item_id, attribute_value, attribute_decimal, attribute_date'); + $builder->join('attribute_values', 'attribute_values.attribute_id = attribute_links.attribute_id'); + $builder->where('definition_id', $definition_id); + + return $builder->get()->getResultArray(); + } } diff --git a/app/Models/Cashup.php b/app/Models/Cashup.php index f47fb6b53..0461a1994 100644 --- a/app/Models/Cashup.php +++ b/app/Models/Cashup.php @@ -13,268 +13,268 @@ use stdClass; */ class Cashup extends Model { - protected $table = 'cash_up'; - protected $primaryKey = 'cashup_id'; - protected $useAutoIncrement = true; - protected $useSoftDeletes = false; - protected $allowedFields = [ - 'open_date', - 'close_date', - 'open_cash_amount', - 'transfer_cash_amount', - 'note', - 'closed_amount_cash', - 'closed_amount_card', - 'closed_amount_check', - 'closed_amount_total', - 'description', - 'open_employee_id', - 'close_employee_id', - 'deleted', - 'closed_amount_due' - ]; + protected $table = 'cash_up'; + protected $primaryKey = 'cashup_id'; + protected $useAutoIncrement = true; + protected $useSoftDeletes = false; + protected $allowedFields = [ + 'open_date', + 'close_date', + 'open_cash_amount', + 'transfer_cash_amount', + 'note', + 'closed_amount_cash', + 'closed_amount_card', + 'closed_amount_check', + 'closed_amount_total', + 'description', + 'open_employee_id', + 'close_employee_id', + 'deleted', + 'closed_amount_due' + ]; - /** - * Determines if a given Cashup_id is a Cashup - */ - public function exists(int $cashup_id): bool - { - $builder = $this->db->table('cash_up'); - $builder->where('cashup_id', $cashup_id); + /** + * Determines if a given Cashup_id is a Cashup + */ + public function exists(int $cashup_id): bool + { + $builder = $this->db->table('cash_up'); + $builder->where('cashup_id', $cashup_id); - return ($builder->get()->getNumRows() == 1); //TODO: === - } + return ($builder->get()->getNumRows() == 1); //TODO: === + } - /** - * Gets employee info - */ - public function get_employee(int $cashup_id): object //TODO: This function is never called and if it were called, would not yield proper results. There is no employee_id field in the cash_up table. - { - $builder = $this->db->table('cash_up'); - $builder->where('cashup_id', $cashup_id); + /** + * Gets employee info + */ + public function get_employee(int $cashup_id): object //TODO: This function is never called and if it were called, would not yield proper results. There is no employee_id field in the cash_up table. + { + $builder = $this->db->table('cash_up'); + $builder->where('cashup_id', $cashup_id); - $employee = model(Employee::class); + $employee = model(Employee::class); - return $employee->get_info($builder->get()->getRow()->employee_id); - } + return $employee->get_info($builder->get()->getRow()->employee_id); + } - /** - * @param string $cashup_ids - * @return ResultInterface - */ - public function get_multiple_info(string $cashup_ids): ResultInterface - { - $builder = $this->db->table('cash_up'); - $builder->whereIn('cashup_id', $cashup_ids); - $builder->orderBy('cashup_id', 'asc'); + /** + * @param string $cashup_ids + * @return ResultInterface + */ + public function get_multiple_info(string $cashup_ids): ResultInterface + { + $builder = $this->db->table('cash_up'); + $builder->whereIn('cashup_id', $cashup_ids); + $builder->orderBy('cashup_id', 'asc'); - return $builder->get(); - } + return $builder->get(); + } - /** - * Gets rows - */ - public function get_found_rows(string $search, array $filters): int - { - return $this->search($search, $filters, 0, 0, 'cashup_id', 'asc', true); - } + /** + * Gets rows + */ + public function get_found_rows(string $search, array $filters): int + { + return $this->search($search, $filters, 0, 0, 'cashup_id', 'asc', true); + } - /** - * Searches cashups - */ - public function search(string $search, array $filters, ?int $rows = 0, ?int $limit_from = 0, ?string $sort = 'cashup_id', ?string $order = 'asc', ?bool $count_only = false) - { - // Set default values - if($rows == null) $rows = 0; - if($limit_from == null) $limit_from = 0; - if($sort == null) $sort = 'cashup_id'; - if($order == null) $order = 'asc'; - if($count_only == null) $count_only = false; + /** + * Searches cashups + */ + public function search(string $search, array $filters, ?int $rows = 0, ?int $limit_from = 0, ?string $sort = 'cashup_id', ?string $order = 'asc', ?bool $count_only = false) + { + // Set default values + if($rows == null) $rows = 0; + if($limit_from == null) $limit_from = 0; + if($sort == null) $sort = 'cashup_id'; + if($order == null) $order = 'asc'; + if($count_only == null) $count_only = false; - $config = config(OSPOS::class)->settings; - $builder = $this->db->table('cash_up AS cash_up'); + $config = config(OSPOS::class)->settings; + $builder = $this->db->table('cash_up AS cash_up'); - // get_found_rows case - if($count_only) - { - $builder->select('COUNT(cash_up.cashup_id) as count'); - } - else - { - $builder->select(' - cash_up.cashup_id, - MAX(cash_up.open_date) AS open_date, - MAX(cash_up.close_date) AS close_date, - MAX(cash_up.open_amount_cash) AS open_amount_cash, - MAX(cash_up.transfer_amount_cash) AS transfer_amount_cash, - MAX(cash_up.closed_amount_cash) AS closed_amount_cash, - MAX(cash_up.closed_amount_due) AS closed_amount_due, - MAX(cash_up.closed_amount_card) AS closed_amount_card, - MAX(cash_up.closed_amount_check) AS closed_amount_check, - MAX(cash_up.closed_amount_total) AS closed_amount_total, - MAX(cash_up.description) AS description, - MAX(cash_up.note) AS note, - MAX(cash_up.open_employee_id) AS open_employee_id, - MAX(cash_up.close_employee_id) AS close_employee_id, - MAX(open_employees.first_name) AS open_first_name, - MAX(open_employees.last_name) AS open_last_name, - MAX(close_employees.first_name) AS close_first_name, - MAX(close_employees.last_name) AS close_last_name - '); - } + // get_found_rows case + if($count_only) + { + $builder->select('COUNT(cash_up.cashup_id) as count'); + } + else + { + $builder->select(' + cash_up.cashup_id, + MAX(cash_up.open_date) AS open_date, + MAX(cash_up.close_date) AS close_date, + MAX(cash_up.open_amount_cash) AS open_amount_cash, + MAX(cash_up.transfer_amount_cash) AS transfer_amount_cash, + MAX(cash_up.closed_amount_cash) AS closed_amount_cash, + MAX(cash_up.closed_amount_due) AS closed_amount_due, + MAX(cash_up.closed_amount_card) AS closed_amount_card, + MAX(cash_up.closed_amount_check) AS closed_amount_check, + MAX(cash_up.closed_amount_total) AS closed_amount_total, + MAX(cash_up.description) AS description, + MAX(cash_up.note) AS note, + MAX(cash_up.open_employee_id) AS open_employee_id, + MAX(cash_up.close_employee_id) AS close_employee_id, + MAX(open_employees.first_name) AS open_first_name, + MAX(open_employees.last_name) AS open_last_name, + MAX(close_employees.first_name) AS close_first_name, + MAX(close_employees.last_name) AS close_last_name + '); + } - $builder->join('people AS open_employees', 'open_employees.person_id = cash_up.open_employee_id', 'LEFT'); - $builder->join('people AS close_employees', 'close_employees.person_id = cash_up.close_employee_id', 'LEFT'); + $builder->join('people AS open_employees', 'open_employees.person_id = cash_up.open_employee_id', 'LEFT'); + $builder->join('people AS close_employees', 'close_employees.person_id = cash_up.close_employee_id', 'LEFT'); - $builder->groupStart(); - $builder->like('cash_up.open_date', $search); - $builder->orLike('open_employees.first_name', $search); - $builder->orLike('open_employees.last_name', $search); - $builder->orLike('close_employees.first_name', $search); - $builder->orLike('close_employees.last_name', $search); - $builder->orLike('cash_up.closed_amount_total', $search); - $builder->orLike('CONCAT(open_employees.first_name, " ", open_employees.last_name)', $search); - $builder->orLike('CONCAT(close_employees.first_name, " ", close_employees.last_name)', $search); - $builder->groupEnd(); + $builder->groupStart(); + $builder->like('cash_up.open_date', $search); + $builder->orLike('open_employees.first_name', $search); + $builder->orLike('open_employees.last_name', $search); + $builder->orLike('close_employees.first_name', $search); + $builder->orLike('close_employees.last_name', $search); + $builder->orLike('cash_up.closed_amount_total', $search); + $builder->orLike('CONCAT(open_employees.first_name, " ", open_employees.last_name)', $search); + $builder->orLike('CONCAT(close_employees.first_name, " ", close_employees.last_name)', $search); + $builder->groupEnd(); - $builder->where('cash_up.deleted', $filters['is_deleted']); + $builder->where('cash_up.deleted', $filters['is_deleted']); - if(empty($config['date_or_time_format'])) //TODO: convert this to ternary notation. - { - $builder->where('DATE_FORMAT(cash_up.open_date, "%Y-%m-%d") BETWEEN ' . $this->db->escape($filters['start_date']) . ' AND ' . $this->db->escape($filters['end_date'])); - } - else - { - $builder->where('cash_up.open_date BETWEEN ' . $this->db->escape(rawurldecode($filters['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($filters['end_date']))); - } + if(empty($config['date_or_time_format'])) //TODO: convert this to ternary notation. + { + $builder->where('DATE_FORMAT(cash_up.open_date, "%Y-%m-%d") BETWEEN ' . $this->db->escape($filters['start_date']) . ' AND ' . $this->db->escape($filters['end_date'])); + } + else + { + $builder->where('cash_up.open_date BETWEEN ' . $this->db->escape(rawurldecode($filters['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($filters['end_date']))); + } - // get_found_rows case - if($count_only) - { - return $builder->get()->getRow()->count; - } - else - { - $builder->groupBy('cashup_id'); - } + // get_found_rows case + if($count_only) + { + return $builder->get()->getRow()->count; + } + else + { + $builder->groupBy('cashup_id'); + } - $builder->orderBy($sort, $order); + $builder->orderBy($sort, $order); - if($rows > 0) - { - $builder->limit($rows, $limit_from); - } + if($rows > 0) + { + $builder->limit($rows, $limit_from); + } - return $builder->get(); - } + return $builder->get(); + } - /** - * Gets information about a particular cashup - */ - public function get_info(int $cashup_id): object - { - $builder = $this->db->table('cash_up AS cash_up'); - $builder->select(' - cash_up.cashup_id AS cashup_id, - cash_up.open_date AS open_date, - cash_up.close_date AS close_date, - cash_up.open_amount_cash AS open_amount_cash, - cash_up.transfer_amount_cash AS transfer_amount_cash, - cash_up.closed_amount_cash AS closed_amount_cash, - cash_up.closed_amount_due AS closed_amount_due, - cash_up.closed_amount_card AS closed_amount_card, - cash_up.closed_amount_check AS closed_amount_check, - cash_up.closed_amount_total AS closed_amount_total, - cash_up.description AS description, - cash_up.note AS note, - cash_up.open_employee_id AS open_employee_id, - cash_up.close_employee_id AS close_employee_id, - cash_up.deleted AS deleted, - open_employees.first_name AS open_first_name, - open_employees.last_name AS open_last_name, - close_employees.first_name AS close_first_name, - close_employees.last_name AS close_last_name - '); - $builder->join('people AS open_employees', 'open_employees.person_id = cash_up.open_employee_id', 'LEFT'); - $builder->join('people AS close_employees', 'close_employees.person_id = cash_up.close_employee_id', 'LEFT'); - $builder->where('cashup_id', $cashup_id); + /** + * Gets information about a particular cashup + */ + public function get_info(int $cashup_id): object + { + $builder = $this->db->table('cash_up AS cash_up'); + $builder->select(' + cash_up.cashup_id AS cashup_id, + cash_up.open_date AS open_date, + cash_up.close_date AS close_date, + cash_up.open_amount_cash AS open_amount_cash, + cash_up.transfer_amount_cash AS transfer_amount_cash, + cash_up.closed_amount_cash AS closed_amount_cash, + cash_up.closed_amount_due AS closed_amount_due, + cash_up.closed_amount_card AS closed_amount_card, + cash_up.closed_amount_check AS closed_amount_check, + cash_up.closed_amount_total AS closed_amount_total, + cash_up.description AS description, + cash_up.note AS note, + cash_up.open_employee_id AS open_employee_id, + cash_up.close_employee_id AS close_employee_id, + cash_up.deleted AS deleted, + open_employees.first_name AS open_first_name, + open_employees.last_name AS open_last_name, + close_employees.first_name AS close_first_name, + close_employees.last_name AS close_last_name + '); + $builder->join('people AS open_employees', 'open_employees.person_id = cash_up.open_employee_id', 'LEFT'); + $builder->join('people AS close_employees', 'close_employees.person_id = cash_up.close_employee_id', 'LEFT'); + $builder->where('cashup_id', $cashup_id); - $query = $builder->get(); - if($query->getNumRows() == 1) //TODO: === - { - return $query->getRow(); - } - else - { - return $this->getEmptyObject('cash_up'); - } - } + $query = $builder->get(); + if($query->getNumRows() == 1) //TODO: === + { + return $query->getRow(); + } + else + { + return $this->getEmptyObject('cash_up'); + } + } - /** - * Initializes an empty object based on database definitions - * @param string $table_name - * @return object - */ - private function getEmptyObject(string $table_name): object - { - // Return an empty base parent object, as $item_id is NOT an item - $empty_obj = new stdClass(); + /** + * Initializes an empty object based on database definitions + * @param string $table_name + * @return object + */ + private function getEmptyObject(string $table_name): object + { + // Return an empty base parent object, as $item_id is NOT an item + $empty_obj = new stdClass(); - // Iterate through field definitions to determine how the fields should be initialized - foreach($this->db->getFieldData($table_name) as $field) - { - $field_name = $field->name; + // Iterate through field definitions to determine how the fields should be initialized + foreach($this->db->getFieldData($table_name) as $field) + { + $field_name = $field->name; - if(in_array($field->type, ['int', 'tinyint', 'decimal'])) - { - $empty_obj->$field_name = ($field->primary_key == 1) ? NEW_ENTRY : 0; - } - else - { - $empty_obj->$field_name = null; - } - } + if(in_array($field->type, ['int', 'tinyint', 'decimal'])) + { + $empty_obj->$field_name = ($field->primary_key == 1) ? NEW_ENTRY : 0; + } + else + { + $empty_obj->$field_name = null; + } + } - return $empty_obj; - } + return $empty_obj; + } - /** - * Inserts or updates a cashup - */ - public function save_value(array &$cash_up_data, $cashup_id = NEW_ENTRY): bool - { - if(!$cashup_id == NEW_ENTRY || !$this->exists($cashup_id)) - { - $builder = $this->db->table('cash_up'); - if($builder->insert($cash_up_data)) - { - $cash_up_data['cashup_id'] = $this->db->insertID(); + /** + * Inserts or updates a cashup + */ + public function save_value(array &$cash_up_data, $cashup_id = NEW_ENTRY): bool + { + if(!$cashup_id == NEW_ENTRY || !$this->exists($cashup_id)) + { + $builder = $this->db->table('cash_up'); + if($builder->insert($cash_up_data)) + { + $cash_up_data['cashup_id'] = $this->db->insertID(); - return true; - } + return true; + } - return false; - } + return false; + } - $builder = $this->db->table('cash_up'); - $builder->where('cashup_id', $cashup_id); + $builder = $this->db->table('cash_up'); + $builder->where('cashup_id', $cashup_id); - return $builder->update($cash_up_data); - } + return $builder->update($cash_up_data); + } - /** - * Deletes a list of cashups - */ - public function delete_list(array $cashup_ids): bool - { - //Run these queries as a transaction, we want to make sure we do all or nothing - $this->db->transStart(); - $builder = $this->db->table('cash_up'); - $builder->whereIn('cashup_id', $cashup_ids); - $success = $builder->update(['deleted' => 1]); - $this->db->transComplete(); + /** + * Deletes a list of cashups + */ + public function delete_list(array $cashup_ids): bool + { + //Run these queries as a transaction, we want to make sure we do all or nothing + $this->db->transStart(); + $builder = $this->db->table('cash_up'); + $builder->whereIn('cashup_id', $cashup_ids); + $success = $builder->update(['deleted' => 1]); + $this->db->transComplete(); - return $success; - } + return $success; + } } diff --git a/app/Models/Customer.php b/app/Models/Customer.php index e9cebb1b0..ee99ef73b 100644 --- a/app/Models/Customer.php +++ b/app/Models/Customer.php @@ -10,459 +10,459 @@ use Config\OSPOS; */ class Customer extends Person { - protected $table = 'customers'; - protected $primaryKey = 'person_id'; - protected $useAutoIncrement = false; - protected $useSoftDeletes = false; - protected $allowedFields = [ - 'account_number', - 'taxable', - 'tax_id', - 'sales_tax_code_id', - 'deleted', - 'discount', - 'discount_type', - 'company_name', - 'package_id', - 'points', - 'date', - 'employee_id', - 'consent' - ]; - - - /** - * Determines if a given person_id is a customer - */ - public function exists(int $person_id): bool - { - $builder = $this->db->table('customers'); - $builder->join('people', 'people.person_id = customers.person_id'); - $builder->where('customers.person_id', $person_id); - return ($builder->get()->getNumRows() == 1); - } - - /** - * Checks if account number exists - */ - public function check_account_number_exists(string $account_number, string $person_id = ''): bool - { - $builder = $this->db->table('customers'); - $builder->where('account_number', $account_number); - - if(!empty($person_id)) - { - $builder->where('person_id !=', $person_id); - } - - return ($builder->get()->getNumRows() == 1); //TODO: === - } - - /** - * Gets total of rows - */ - public function get_total_rows(): int - { - $builder = $this->db->table('customers'); - $builder->where('deleted', 0); - - return $builder->countAllResults(); - } - - /** - * Returns all the customers - */ - public function get_all(int $limit = 0, int $offset = 0): ResultInterface - { - $builder = $this->db->table('customers'); - $builder->join('people', 'customers.person_id = people.person_id'); - $builder->where('deleted', 0); - $builder->orderBy('last_name', 'asc'); - - if($limit > 0) - { - $builder->limit($limit, $offset); - } - - return $builder->get(); - } - - /** - * Gets information about a particular customer - */ - public function get_info(?int $person_id): object - { - $builder = $this->db->table('customers'); - $builder->join('people', 'people.person_id = customers.person_id'); - $builder->where('customers.person_id', $person_id); - $query = $builder->get(); - - return $query->getNumRows() === 1 - ? $query->getRow() - : $this->getEmptyObject('customers'); - } - - /** - * Initializes an empty object based on database definitions - * @param string $table_name - * @return object - */ - private function getEmptyObject(string $table_name): object - { - // Return an empty base parent object, as $item_id is NOT an item - $empty_obj = parent::get_info(NEW_ENTRY); - - // Iterate through field definitions to determine how the fields should be initialized - foreach($this->db->getFieldData($table_name) as $field) - { - $field_name = $field->name; - - if(in_array($field->type, ['int', 'tinyint', 'decimal'])) - { - $empty_obj->$field_name = ($field->primary_key == 1) ? NEW_ENTRY : 0; - } - else - { - $empty_obj->$field_name = null; - } - } - - return $empty_obj; - } - - - /** - * Gets stats about a particular customer - */ - public function get_stats(int $customer_id) - { - $db_prefix = $this->db->getPrefix(); - $totals_decimals = totals_decimals(); - $quantity_decimals = quantity_decimals(); - - //Temp Table - $builder = $this->db->table('sales'); - $builder->select('sales.sale_id AS sale_id, AVG(`' . $db_prefix . 'sales_items`.`discount`) AS avg_discount, SUM(`' . $db_prefix . 'sales_items`.`quantity_purchased`) AS quantity'); - $builder->join('sales_items', 'sales_items.sale_id = sales.sale_id'); - $builder->where('sales.customer_id', $customer_id); - $builder->groupBy('sale_id'); - $selectQuery = $builder->getCompiledSelect(); - - $sql = 'CREATE TEMPORARY TABLE IF NOT EXISTS ' . $this->db->prefixTable('sales_items_temp'); - $sql .= ' (INDEX(sale_id)) ENGINE=MEMORY (' . $selectQuery . ')'; - $this->db->query($sql); - - //Get data - $builder = $this->db->table('sales'); - $builder->select([ - 'SUM(sales_payments.payment_amount - sales_payments.cash_refund) AS total', - 'MIN(sales_payments.payment_amount - sales_payments.cash_refund) AS min', - 'MAX(sales_payments.payment_amount - sales_payments.cash_refund) AS max', - 'AVG(sales_payments.payment_amount - sales_payments.cash_refund) AS average', - "ROUND(AVG(sales_items_temp.avg_discount), $totals_decimals) AS avg_discount", - "ROUND(SUM(sales_items_temp.quantity), $quantity_decimals) AS quantity" - ]); - $builder->join('sales_payments AS sales_payments', 'sales.sale_id = sales_payments.sale_id'); - $builder->join('sales_items_temp AS sales_items_temp', 'sales.sale_id = sales_items_temp.sale_id'); - $builder->where('sales.customer_id', $customer_id); - $builder->where('sales.sale_status', COMPLETED); - $builder->groupBy('sales.customer_id'); - - $stat = $builder->get()->getRow(); - - //Drop Temp Table - $sql = 'DROP TEMPORARY TABLE IF EXISTS ' . $this->db->prefixTable('sales_items_temp'); - $this->db->query($sql); - - return $stat; - } - - /** - * Gets information about multiple customers - */ - public function get_multiple_info(array $person_ids): ResultInterface - { - $builder = $this->db->table('customers'); - $builder->join('people', 'people.person_id = customers.person_id'); - $builder->whereIn('customers.person_id', $person_ids); - $builder->orderBy('last_name', 'asc'); - - return $builder->get(); - } - - /** - * Checks if customer email exists - */ - public function check_email_exists(string $email, string $customer_id = ''): bool - { - // if the email is empty return like it is not existing - if(empty($email)) - { - return false; - } - - $builder = $this->db->table('customers'); - $builder->join('people', 'people.person_id = customers.person_id'); - $builder->where('people.email', $email); - $builder->where('customers.deleted', 0); - - if(!empty($customer_id)) - { - $builder->where('customers.person_id !=', $customer_id); - } - - return ($builder->get()->getNumRows() == 1); //TODO: === - } - - /** - * Inserts or updates a customer - */ - public function save_customer(array &$person_data, array &$customer_data, int $customer_id = NEW_ENTRY): bool - { - $success = false; - $this->db->transStart(); - - if(parent::save_value($person_data, $customer_id)) - { - $builder = $this->db->table('customers'); - if($customer_id == NEW_ENTRY || !$customer_id || !$this->exists($customer_id)) - { - $customer_data['person_id'] = $person_data['person_id']; - $success = $builder->insert($customer_data); - } - else - { - $builder->where('person_id', $customer_id); - $success = $builder->update($customer_data); - } - } - - $this->db->transComplete(); - - $success &= $this->db->transStatus(); - - return $success; - } - - /** - * Updates reward points value - */ - public function update_reward_points_value(int $customer_id, int $value): void - { - $builder = $this->db->table('customers'); - $builder->where('person_id', $customer_id); - $builder->update(['points' => $value]); - } - - /** - * @param $customer_id - * @param bool $purge - * @return bool - */ - public function delete($customer_id = null, bool $purge = false): bool - { - $result = true; - $config = config(OSPOS::class)->settings; - - // if privacy enforcement is selected scramble customer data - if($config['enforce_privacy']) - { - $builder = $this->db->table('people'); - $builder->where('person_id', $customer_id); - $result &= $builder->update([ - 'first_name' => $customer_id, - 'last_name' => $customer_id, - 'phone_number' => '', - 'email' => '', - 'gender' => null, - 'address_1' => '', - 'address_2' => '', - 'city' => '', - 'state' => '', - 'zip' => '', - 'country' => '', - 'comments' => '' - ]); - - $builder = $this->db->table('customers'); - $builder->where('person_id', $customer_id); - $result &= $builder->update([ - 'consent' => 0, - 'company_name' => null, - 'account_number' => null, - 'tax_id' => '', - 'taxable' => 0, - 'discount' => 0.00, - 'discount_type' => 0, - 'package_id' => null, - 'points' => null, - 'sales_tax_code_id' => null, - 'deleted' => 1 - ]); - } - else - { - $builder = $this->db->table('customers'); - $builder->where('person_id', $customer_id); - - $result &= $builder->update(['deleted' => 1]); - } - - return $result; - } - - /** - * Deletes a list of customers - */ - public function delete_list(array $person_ids): bool - { - $builder = $this->db->table('customers'); - $builder->whereIn('person_id', $person_ids); - - return $builder->update(['deleted' => 1]); - } - - /** - * Get search suggestions to find customers - */ - public function get_search_suggestions(string $search, int $limit = 25, bool $unique = true): array - { - $suggestions = []; - - $builder = $this->db->table('customers'); - $builder->join('people', 'customers.person_id = people.person_id'); - $builder->groupStart(); - $builder->like('first_name', $search); - $builder->orLike('last_name', $search); - $builder->orLike('CONCAT(first_name, " ", last_name)', $search); - - if($unique) - { - $builder->orLike('email', $search); - $builder->orLike('phone_number', $search); - $builder->orLike('company_name', $search); - } - $builder->groupEnd(); - $builder->where('deleted', 0); - $builder->orderBy('last_name', 'asc'); - - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = [ - 'value' => $row->person_id, - 'label' => $row->first_name . ' ' . $row->last_name . (!empty($row->company_name) ? ' [' . $row->company_name . ']' : ''). (!empty($row->phone_number) ? ' [' . $row->phone_number . ']' : '') - ]; - } - - if(!$unique) - { - $builder = $this->db->table('customers'); - $builder->join('people', 'customers.person_id = people.person_id'); - $builder->where('deleted', 0); - $builder->like('email', $search); - $builder->orderBy('email', 'asc'); - - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = ['value' => $row->person_id, 'label' => $row->email]; - } - - $builder = $this->db->table('customers'); - $builder->join('people', 'customers.person_id = people.person_id'); - $builder->where('deleted', 0); - $builder->like('phone_number', $search); - $builder->orderBy('phone_number', 'asc'); - - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = ['value' => $row->person_id, 'label' => $row->phone_number]; - } - - $builder = $this->db->table('customers'); - $builder->join('people', 'customers.person_id = people.person_id'); - $builder->where('deleted', 0); - $builder->like('account_number', $search); - $builder->orderBy('account_number', 'asc'); - - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = ['value' => $row->person_id, 'label' => $row->account_number]; - } - - $builder = $this->db->table('customers'); - $builder->join('people', 'customers.person_id = people.person_id'); - $builder->where('deleted', 0); - $builder->like('company_name', $search); - $builder->orderBy('company_name', 'asc'); - - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = ['value' => $row->person_id, 'label' => $row->company_name]; - } - } - - //only return $limit suggestions - if(count($suggestions) > $limit) - { - $suggestions = array_slice($suggestions, 0, $limit); - } - - return $suggestions; - } - - /** - * Gets rows - */ - public function get_found_rows(string $search): int - { - return $this->search($search, 0, 0, 'last_name', 'asc', true); - } - - /** - * Performs a search on customers - */ - public function search(string $search, ?int $rows = 0, ?int $limit_from = 0, ?string $sort = 'last_name', ?string $order = 'asc', ?bool $count_only = false) - { - // Set default values - if($rows == null) $rows = 0; - if($limit_from == null) $limit_from = 0; - if($sort == null) $sort = 'last_name'; - if($order == null) $order = 'asc'; - if($count_only == null) $count_only = false; - - $builder = $this->db->table('customers AS customers'); - - // get_found_rows case - if($count_only) - { - $builder->select('COUNT(customers.person_id) as count'); - } - - $builder->join('people', 'customers.person_id = people.person_id'); - $builder->groupStart(); - $builder->like('first_name', $search); - $builder->orLike('last_name', $search); - $builder->orLike('email', $search); - $builder->orLike('phone_number', $search); - $builder->orLike('account_number', $search); - $builder->orLike('company_name', $search); - $builder->orLike('CONCAT(first_name, " ", last_name)', $search); //TODO: Duplicated code. - $builder->groupEnd(); - $builder->where('deleted', 0); - - // get_found_rows case - if($count_only) - { - return $builder->get()->getRow()->count; - } - - $builder->orderBy($sort, $order); - - if($rows > 0) - { - $builder->limit($rows, $limit_from); - } - - return $builder->get(); - } + protected $table = 'customers'; + protected $primaryKey = 'person_id'; + protected $useAutoIncrement = false; + protected $useSoftDeletes = false; + protected $allowedFields = [ + 'account_number', + 'taxable', + 'tax_id', + 'sales_tax_code_id', + 'deleted', + 'discount', + 'discount_type', + 'company_name', + 'package_id', + 'points', + 'date', + 'employee_id', + 'consent' + ]; + + + /** + * Determines if a given person_id is a customer + */ + public function exists(int $person_id): bool + { + $builder = $this->db->table('customers'); + $builder->join('people', 'people.person_id = customers.person_id'); + $builder->where('customers.person_id', $person_id); + return ($builder->get()->getNumRows() == 1); + } + + /** + * Checks if account number exists + */ + public function check_account_number_exists(string $account_number, string $person_id = ''): bool + { + $builder = $this->db->table('customers'); + $builder->where('account_number', $account_number); + + if(!empty($person_id)) + { + $builder->where('person_id !=', $person_id); + } + + return ($builder->get()->getNumRows() == 1); //TODO: === + } + + /** + * Gets total of rows + */ + public function get_total_rows(): int + { + $builder = $this->db->table('customers'); + $builder->where('deleted', 0); + + return $builder->countAllResults(); + } + + /** + * Returns all the customers + */ + public function get_all(int $limit = 0, int $offset = 0): ResultInterface + { + $builder = $this->db->table('customers'); + $builder->join('people', 'customers.person_id = people.person_id'); + $builder->where('deleted', 0); + $builder->orderBy('last_name', 'asc'); + + if($limit > 0) + { + $builder->limit($limit, $offset); + } + + return $builder->get(); + } + + /** + * Gets information about a particular customer + */ + public function get_info(?int $person_id): object + { + $builder = $this->db->table('customers'); + $builder->join('people', 'people.person_id = customers.person_id'); + $builder->where('customers.person_id', $person_id); + $query = $builder->get(); + + return $query->getNumRows() === 1 + ? $query->getRow() + : $this->getEmptyObject('customers'); + } + + /** + * Initializes an empty object based on database definitions + * @param string $table_name + * @return object + */ + private function getEmptyObject(string $table_name): object + { + // Return an empty base parent object, as $item_id is NOT an item + $empty_obj = parent::get_info(NEW_ENTRY); + + // Iterate through field definitions to determine how the fields should be initialized + foreach($this->db->getFieldData($table_name) as $field) + { + $field_name = $field->name; + + if(in_array($field->type, ['int', 'tinyint', 'decimal'])) + { + $empty_obj->$field_name = ($field->primary_key == 1) ? NEW_ENTRY : 0; + } + else + { + $empty_obj->$field_name = null; + } + } + + return $empty_obj; + } + + + /** + * Gets stats about a particular customer + */ + public function get_stats(int $customer_id) + { + $db_prefix = $this->db->getPrefix(); + $totals_decimals = totals_decimals(); + $quantity_decimals = quantity_decimals(); + + //Temp Table + $builder = $this->db->table('sales'); + $builder->select('sales.sale_id AS sale_id, AVG(`' . $db_prefix . 'sales_items`.`discount`) AS avg_discount, SUM(`' . $db_prefix . 'sales_items`.`quantity_purchased`) AS quantity'); + $builder->join('sales_items', 'sales_items.sale_id = sales.sale_id'); + $builder->where('sales.customer_id', $customer_id); + $builder->groupBy('sale_id'); + $selectQuery = $builder->getCompiledSelect(); + + $sql = 'CREATE TEMPORARY TABLE IF NOT EXISTS ' . $this->db->prefixTable('sales_items_temp'); + $sql .= ' (INDEX(sale_id)) ENGINE=MEMORY (' . $selectQuery . ')'; + $this->db->query($sql); + + //Get data + $builder = $this->db->table('sales'); + $builder->select([ + 'SUM(sales_payments.payment_amount - sales_payments.cash_refund) AS total', + 'MIN(sales_payments.payment_amount - sales_payments.cash_refund) AS min', + 'MAX(sales_payments.payment_amount - sales_payments.cash_refund) AS max', + 'AVG(sales_payments.payment_amount - sales_payments.cash_refund) AS average', + "ROUND(AVG(sales_items_temp.avg_discount), $totals_decimals) AS avg_discount", + "ROUND(SUM(sales_items_temp.quantity), $quantity_decimals) AS quantity" + ]); + $builder->join('sales_payments AS sales_payments', 'sales.sale_id = sales_payments.sale_id'); + $builder->join('sales_items_temp AS sales_items_temp', 'sales.sale_id = sales_items_temp.sale_id'); + $builder->where('sales.customer_id', $customer_id); + $builder->where('sales.sale_status', COMPLETED); + $builder->groupBy('sales.customer_id'); + + $stat = $builder->get()->getRow(); + + //Drop Temp Table + $sql = 'DROP TEMPORARY TABLE IF EXISTS ' . $this->db->prefixTable('sales_items_temp'); + $this->db->query($sql); + + return $stat; + } + + /** + * Gets information about multiple customers + */ + public function get_multiple_info(array $person_ids): ResultInterface + { + $builder = $this->db->table('customers'); + $builder->join('people', 'people.person_id = customers.person_id'); + $builder->whereIn('customers.person_id', $person_ids); + $builder->orderBy('last_name', 'asc'); + + return $builder->get(); + } + + /** + * Checks if customer email exists + */ + public function check_email_exists(string $email, string $customer_id = ''): bool + { + // if the email is empty return like it is not existing + if(empty($email)) + { + return false; + } + + $builder = $this->db->table('customers'); + $builder->join('people', 'people.person_id = customers.person_id'); + $builder->where('people.email', $email); + $builder->where('customers.deleted', 0); + + if(!empty($customer_id)) + { + $builder->where('customers.person_id !=', $customer_id); + } + + return ($builder->get()->getNumRows() == 1); //TODO: === + } + + /** + * Inserts or updates a customer + */ + public function save_customer(array &$person_data, array &$customer_data, int $customer_id = NEW_ENTRY): bool + { + $success = false; + $this->db->transStart(); + + if(parent::save_value($person_data, $customer_id)) + { + $builder = $this->db->table('customers'); + if($customer_id == NEW_ENTRY || !$customer_id || !$this->exists($customer_id)) + { + $customer_data['person_id'] = $person_data['person_id']; + $success = $builder->insert($customer_data); + } + else + { + $builder->where('person_id', $customer_id); + $success = $builder->update($customer_data); + } + } + + $this->db->transComplete(); + + $success &= $this->db->transStatus(); + + return $success; + } + + /** + * Updates reward points value + */ + public function update_reward_points_value(int $customer_id, int $value): void + { + $builder = $this->db->table('customers'); + $builder->where('person_id', $customer_id); + $builder->update(['points' => $value]); + } + + /** + * @param $customer_id + * @param bool $purge + * @return bool + */ + public function delete($customer_id = null, bool $purge = false): bool + { + $result = true; + $config = config(OSPOS::class)->settings; + + // if privacy enforcement is selected scramble customer data + if($config['enforce_privacy']) + { + $builder = $this->db->table('people'); + $builder->where('person_id', $customer_id); + $result &= $builder->update([ + 'first_name' => $customer_id, + 'last_name' => $customer_id, + 'phone_number' => '', + 'email' => '', + 'gender' => null, + 'address_1' => '', + 'address_2' => '', + 'city' => '', + 'state' => '', + 'zip' => '', + 'country' => '', + 'comments' => '' + ]); + + $builder = $this->db->table('customers'); + $builder->where('person_id', $customer_id); + $result &= $builder->update([ + 'consent' => 0, + 'company_name' => null, + 'account_number' => null, + 'tax_id' => '', + 'taxable' => 0, + 'discount' => 0.00, + 'discount_type' => 0, + 'package_id' => null, + 'points' => null, + 'sales_tax_code_id' => null, + 'deleted' => 1 + ]); + } + else + { + $builder = $this->db->table('customers'); + $builder->where('person_id', $customer_id); + + $result &= $builder->update(['deleted' => 1]); + } + + return $result; + } + + /** + * Deletes a list of customers + */ + public function delete_list(array $person_ids): bool + { + $builder = $this->db->table('customers'); + $builder->whereIn('person_id', $person_ids); + + return $builder->update(['deleted' => 1]); + } + + /** + * Get search suggestions to find customers + */ + public function get_search_suggestions(string $search, int $limit = 25, bool $unique = true): array + { + $suggestions = []; + + $builder = $this->db->table('customers'); + $builder->join('people', 'customers.person_id = people.person_id'); + $builder->groupStart(); + $builder->like('first_name', $search); + $builder->orLike('last_name', $search); + $builder->orLike('CONCAT(first_name, " ", last_name)', $search); + + if($unique) + { + $builder->orLike('email', $search); + $builder->orLike('phone_number', $search); + $builder->orLike('company_name', $search); + } + $builder->groupEnd(); + $builder->where('deleted', 0); + $builder->orderBy('last_name', 'asc'); + + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = [ + 'value' => $row->person_id, + 'label' => $row->first_name . ' ' . $row->last_name . (!empty($row->company_name) ? ' [' . $row->company_name . ']' : ''). (!empty($row->phone_number) ? ' [' . $row->phone_number . ']' : '') + ]; + } + + if(!$unique) + { + $builder = $this->db->table('customers'); + $builder->join('people', 'customers.person_id = people.person_id'); + $builder->where('deleted', 0); + $builder->like('email', $search); + $builder->orderBy('email', 'asc'); + + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = ['value' => $row->person_id, 'label' => $row->email]; + } + + $builder = $this->db->table('customers'); + $builder->join('people', 'customers.person_id = people.person_id'); + $builder->where('deleted', 0); + $builder->like('phone_number', $search); + $builder->orderBy('phone_number', 'asc'); + + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = ['value' => $row->person_id, 'label' => $row->phone_number]; + } + + $builder = $this->db->table('customers'); + $builder->join('people', 'customers.person_id = people.person_id'); + $builder->where('deleted', 0); + $builder->like('account_number', $search); + $builder->orderBy('account_number', 'asc'); + + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = ['value' => $row->person_id, 'label' => $row->account_number]; + } + + $builder = $this->db->table('customers'); + $builder->join('people', 'customers.person_id = people.person_id'); + $builder->where('deleted', 0); + $builder->like('company_name', $search); + $builder->orderBy('company_name', 'asc'); + + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = ['value' => $row->person_id, 'label' => $row->company_name]; + } + } + + //only return $limit suggestions + if(count($suggestions) > $limit) + { + $suggestions = array_slice($suggestions, 0, $limit); + } + + return $suggestions; + } + + /** + * Gets rows + */ + public function get_found_rows(string $search): int + { + return $this->search($search, 0, 0, 'last_name', 'asc', true); + } + + /** + * Performs a search on customers + */ + public function search(string $search, ?int $rows = 0, ?int $limit_from = 0, ?string $sort = 'last_name', ?string $order = 'asc', ?bool $count_only = false) + { + // Set default values + if($rows == null) $rows = 0; + if($limit_from == null) $limit_from = 0; + if($sort == null) $sort = 'last_name'; + if($order == null) $order = 'asc'; + if($count_only == null) $count_only = false; + + $builder = $this->db->table('customers AS customers'); + + // get_found_rows case + if($count_only) + { + $builder->select('COUNT(customers.person_id) as count'); + } + + $builder->join('people', 'customers.person_id = people.person_id'); + $builder->groupStart(); + $builder->like('first_name', $search); + $builder->orLike('last_name', $search); + $builder->orLike('email', $search); + $builder->orLike('phone_number', $search); + $builder->orLike('account_number', $search); + $builder->orLike('company_name', $search); + $builder->orLike('CONCAT(first_name, " ", last_name)', $search); //TODO: Duplicated code. + $builder->groupEnd(); + $builder->where('deleted', 0); + + // get_found_rows case + if($count_only) + { + return $builder->get()->getRow()->count; + } + + $builder->orderBy($sort, $order); + + if($rows > 0) + { + $builder->limit($rows, $limit_from); + } + + return $builder->get(); + } } diff --git a/app/Models/Customer_rewards.php b/app/Models/Customer_rewards.php index 115c3d93f..adeb55a7b 100644 --- a/app/Models/Customer_rewards.php +++ b/app/Models/Customer_rewards.php @@ -10,96 +10,96 @@ use CodeIgniter\Model; */ class Customer_rewards extends Model { - protected $table = 'customer_packages'; - protected $primaryKey = 'package_id'; - protected $useAutoIncrement = true; - protected $useSoftDeletes = false; - protected $allowedFields = [ - 'package_name', - 'points_percent', - 'deleted' - ]; + protected $table = 'customer_packages'; + protected $primaryKey = 'package_id'; + protected $useAutoIncrement = true; + protected $useSoftDeletes = false; + protected $allowedFields = [ + 'package_name', + 'points_percent', + 'deleted' + ]; - /** - * @param int $package_id - * @return bool - */ - public function exists(int $package_id): bool - { - $builder = $this->db->table('customers_packages'); - $builder->where('package_id', $package_id); + /** + * @param int $package_id + * @return bool + */ + public function exists(int $package_id): bool + { + $builder = $this->db->table('customers_packages'); + $builder->where('package_id', $package_id); - return ($builder->get()->getNumRows() >= 1); - } + return ($builder->get()->getNumRows() >= 1); + } - /** - * @param array $package_data - * @param int $package_id - * @return bool - */ - public function save_value(array $package_data, int $package_id): bool - { - $package_data_to_save = [ - 'package_name' => $package_data['package_name'], - 'deleted' => 0, - 'points_percent' => $package_data['points_percent'] - ]; + /** + * @param array $package_data + * @param int $package_id + * @return bool + */ + public function save_value(array $package_data, int $package_id): bool + { + $package_data_to_save = [ + 'package_name' => $package_data['package_name'], + 'deleted' => 0, + 'points_percent' => $package_data['points_percent'] + ]; - if(!$this->exists($package_id)) - { - $builder = $this->db->table('customers_packages'); - return $builder->insert($package_data_to_save); - } + if(!$this->exists($package_id)) + { + $builder = $this->db->table('customers_packages'); + return $builder->insert($package_data_to_save); + } - $builder = $this->db->table('customers_packages'); - $builder->where('package_id', $package_id); + $builder = $this->db->table('customers_packages'); + $builder->where('package_id', $package_id); - return $builder->update($package_data_to_save); - } + return $builder->update($package_data_to_save); + } - /** - * @param int $package_id - * @return string - */ - public function get_name(int $package_id): string - { - $builder = $this->db->table('customers_packages'); - $builder->where('package_id', $package_id); + /** + * @param int $package_id + * @return string + */ + public function get_name(int $package_id): string + { + $builder = $this->db->table('customers_packages'); + $builder->where('package_id', $package_id); - return $builder->get()->getRow()->package_name; - } + return $builder->get()->getRow()->package_name; + } - /** - * @param int $package_id - * @return float - */ - public function get_points_percent(int $package_id): float - { - $builder = $this->db->table('customers_packages'); - $builder->where('package_id', $package_id); + /** + * @param int $package_id + * @return float + */ + public function get_points_percent(int $package_id): float + { + $builder = $this->db->table('customers_packages'); + $builder->where('package_id', $package_id); - return $builder->get()->getRow()->points_percent; - } + return $builder->get()->getRow()->points_percent; + } - /** - * @return ResultInterface - */ - public function get_all(): ResultInterface - { - $builder = $this->db->table('customers_packages'); - $builder->where('deleted', 0); + /** + * @return ResultInterface + */ + public function get_all(): ResultInterface + { + $builder = $this->db->table('customers_packages'); + $builder->where('deleted', 0); - return $builder->get(); - } + return $builder->get(); + } - /** - * Deletes one reward package - */ - public function delete($package_id = null, bool $purge = false): bool - { - $builder = $this->db->table('customers_packages'); - $builder->where('package_id', $package_id); + /** + * Deletes one reward package + */ + public function delete($package_id = null, bool $purge = false): bool + { + $builder = $this->db->table('customers_packages'); + $builder->where('package_id', $package_id); - return $builder->update(['deleted' => 1]); - } + return $builder->update(['deleted' => 1]); + } } diff --git a/app/Models/Dinner_table.php b/app/Models/Dinner_table.php index dbafbec4f..2d9843f3c 100644 --- a/app/Models/Dinner_table.php +++ b/app/Models/Dinner_table.php @@ -10,169 +10,169 @@ use CodeIgniter\Model; */ class Dinner_table extends Model { - protected $table = 'dinner_tables'; - protected $primaryKey = 'dinner_table_id'; - protected $useAutoIncrement = true; - protected $useSoftDeletes = false; - protected $allowedFields = [ - 'name', - 'status', - 'deleted' - ]; + protected $table = 'dinner_tables'; + protected $primaryKey = 'dinner_table_id'; + protected $useAutoIncrement = true; + protected $useSoftDeletes = false; + protected $allowedFields = [ + 'name', + 'status', + 'deleted' + ]; - /** - * @param int $dinner_table_id - * @return bool - */ - public function exists(int $dinner_table_id): bool - { - $builder = $this->db->table('dinner_tables'); - $builder->where('dinner_table_id', $dinner_table_id); + /** + * @param int $dinner_table_id + * @return bool + */ + public function exists(int $dinner_table_id): bool + { + $builder = $this->db->table('dinner_tables'); + $builder->where('dinner_table_id', $dinner_table_id); - return ($builder->get()->getNumRows() >= 1); - } + return ($builder->get()->getNumRows() >= 1); + } - /** - * @param array $table_data - * @param int $dinner_table_id - * @return bool - */ - public function save_value(array $table_data, int $dinner_table_id): bool - { - $table_data_to_save = ['name' => $table_data['name'], 'deleted' => 0]; + /** + * @param array $table_data + * @param int $dinner_table_id + * @return bool + */ + public function save_value(array $table_data, int $dinner_table_id): bool + { + $table_data_to_save = ['name' => $table_data['name'], 'deleted' => 0]; - $builder = $this->db->table('dinner_tables'); - if(!$this->exists($dinner_table_id)) - { - return $builder->insert($table_data_to_save); - } + $builder = $this->db->table('dinner_tables'); + if(!$this->exists($dinner_table_id)) + { + return $builder->insert($table_data_to_save); + } - $builder->where('dinner_table_id', $dinner_table_id); + $builder->where('dinner_table_id', $dinner_table_id); - return $builder->update($table_data_to_save); - } + return $builder->update($table_data_to_save); + } - /** - * Get empty tables - */ - public function get_empty_tables(?int $current_dinner_table_id): array - { - $builder = $this->db->table('dinner_tables'); - $builder->where('status', 0); - $builder->orWhere('dinner_table_id', $current_dinner_table_id); - $builder->where('deleted', 0); + /** + * Get empty tables + */ + public function get_empty_tables(?int $current_dinner_table_id): array + { + $builder = $this->db->table('dinner_tables'); + $builder->where('status', 0); + $builder->orWhere('dinner_table_id', $current_dinner_table_id); + $builder->where('deleted', 0); - $empty_tables = $builder->get()->getResultArray(); + $empty_tables = $builder->get()->getResultArray(); - $empty_tables_array = []; //TODO: Variable names should not contain the name of the datatype. - foreach($empty_tables as $empty_table) - { - $empty_tables_array[$empty_table['dinner_table_id']] = $empty_table['name']; - } + $empty_tables_array = []; //TODO: Variable names should not contain the name of the datatype. + foreach($empty_tables as $empty_table) + { + $empty_tables_array[$empty_table['dinner_table_id']] = $empty_table['name']; + } - return $empty_tables_array; - } + return $empty_tables_array; + } - /** - * @param int $dinner_table_id - * @return string - */ - public function get_name(int $dinner_table_id): string - { - if(empty($dinner_table_id)) - { - return ''; - } - else //TODO: No need for this else statement. Just put it's contents outside of the else since the if has a return in it. - { - $builder = $this->db->table('dinner_tables'); - $builder->where('dinner_table_id', $dinner_table_id); + /** + * @param int $dinner_table_id + * @return string + */ + public function get_name(int $dinner_table_id): string + { + if(empty($dinner_table_id)) + { + return ''; + } + else //TODO: No need for this else statement. Just put it's contents outside of the else since the if has a return in it. + { + $builder = $this->db->table('dinner_tables'); + $builder->where('dinner_table_id', $dinner_table_id); - return $builder->get()->getRow()->name; - } - } + return $builder->get()->getRow()->name; + } + } - /** - * @param int $dinner_table_id - * @return bool - */ - public function is_occupied(int $dinner_table_id): bool - { - if(empty($dinner_table_id)) - { - return false; - } - else //TODO: No need for this else statement. Just put it's contents outside of the else since the if has a return in it. - { - $builder = $this->db->table('dinner_tables'); - $builder->where('dinner_table_id', $dinner_table_id); + /** + * @param int $dinner_table_id + * @return bool + */ + public function is_occupied(int $dinner_table_id): bool + { + if(empty($dinner_table_id)) + { + return false; + } + else //TODO: No need for this else statement. Just put it's contents outside of the else since the if has a return in it. + { + $builder = $this->db->table('dinner_tables'); + $builder->where('dinner_table_id', $dinner_table_id); - return ($builder->get()->getRow()->status == 1); //TODO: === ? - } - } + return ($builder->get()->getRow()->status == 1); //TODO: === ? + } + } - /** - * @return ResultInterface - */ - public function get_all(): ResultInterface - { - $builder = $this->db->table('dinner_tables'); - $builder->where('deleted', 0); + /** + * @return ResultInterface + */ + public function get_all(): ResultInterface + { + $builder = $this->db->table('dinner_tables'); + $builder->where('deleted', 0); - return $builder->get(); - } + return $builder->get(); + } - /** - * Deletes one dinner table - */ - public function delete($dinner_table_id = null, bool $purge = false): bool - { - $builder = $this->db->table('dinner_tables'); - $builder->where('dinner_table_id', $dinner_table_id); + /** + * Deletes one dinner table + */ + public function delete($dinner_table_id = null, bool $purge = false): bool + { + $builder = $this->db->table('dinner_tables'); + $builder->where('dinner_table_id', $dinner_table_id); - return $builder->update(['deleted' => 1]); - } + return $builder->update(['deleted' => 1]); + } - /** - * Occupy table - * Ignore the Delivery and Takeaway "tables". They should never be occupied. - */ - public function occupy(int $dinner_table_id): bool - { - if($dinner_table_id > 2 ) - { - $builder = $this->db->table('dinner_tables'); - $builder->where('dinner_table_id', $dinner_table_id); - return $builder->update(['status' => 1]); - } - else//TODO: THIS ELSE STATEMENT ISN'T NEEDED. JUST DO THE IF AND THEN RETURN true AFTER IT. - { - return true; - } - } + /** + * Occupy table + * Ignore the Delivery and Takeaway "tables". They should never be occupied. + */ + public function occupy(int $dinner_table_id): bool + { + if($dinner_table_id > 2 ) + { + $builder = $this->db->table('dinner_tables'); + $builder->where('dinner_table_id', $dinner_table_id); + return $builder->update(['status' => 1]); + } + else//TODO: THIS ELSE STATEMENT ISN'T NEEDED. JUST DO THE IF AND THEN RETURN true AFTER IT. + { + return true; + } + } - /** - * Release table - */ - public function release(int $dinner_table_id): bool - { - if($dinner_table_id > 2 ) - { - $builder = $this->db->table('dinner_tables'); - $builder->where('dinner_table_id', $dinner_table_id); - return $builder->update(['status' => 0]); - } - else - { - return true; - } - } + /** + * Release table + */ + public function release(int $dinner_table_id): bool + { + if($dinner_table_id > 2 ) + { + $builder = $this->db->table('dinner_tables'); + $builder->where('dinner_table_id', $dinner_table_id); + return $builder->update(['status' => 0]); + } + else + { + return true; + } + } - /** - * Swap tables - */ - public function swap_tables(int $release_dinner_table_id, int $occupy_dinner_table_id): bool - { - return $this->release($release_dinner_table_id) && $this->occupy($occupy_dinner_table_id); - } + /** + * Swap tables + */ + public function swap_tables(int $release_dinner_table_id, int $occupy_dinner_table_id): bool + { + return $this->release($release_dinner_table_id) && $this->occupy($occupy_dinner_table_id); + } } diff --git a/app/Models/Employee.php b/app/Models/Employee.php index c2d49354f..ee220255f 100644 --- a/app/Models/Employee.php +++ b/app/Models/Employee.php @@ -13,564 +13,564 @@ use CodeIgniter\Session\Session; */ class Employee extends Person { - public Session $session; - protected $table = 'Employees'; - protected $primaryKey = 'person_id'; - protected $useAutoIncrement = false; - protected $useSoftDeletes = false; - protected $allowedFields = [ - 'username', - 'password', - 'deleted', - 'hashversion', - 'language', - 'language_code' - ]; - - public function __construct() - { - parent::__construct(); - $this->session = session(); - } - - /** - * Determines if a given person_id is an employee - */ - public function exists(int $person_id): bool - { - $builder = $this->db->table('employees'); - $builder->join('people', 'people.person_id = employees.person_id'); - $builder->where('employees.person_id', $person_id); - - return ($builder->get()->getNumRows() == 1); //TODO: === - } - - /** - * @param int $employee_id - * @param string $username - * @return bool - */ - public function username_exists(int $employee_id, string $username): bool - { - $builder = $this->db->table('employees'); - $builder->where('employees.username', $username); - $builder->where('employees.person_id <>', $employee_id); - - return ($builder->get()->getNumRows() == 1); //TODO: === - } - - /** - * Gets total of rows - */ - public function get_total_rows(): int - { - $builder = $this->db->table('employees'); - $builder->where('deleted', 0); - - return $builder->countAllResults(); - } - - /** - * Returns all the employees - */ - public function get_all(int $limit = 10000, int $offset = 0): ResultInterface - { - $builder = $this->db->table('employees'); - $builder->where('deleted', 0); - $builder->join('people', 'employees.person_id = people.person_id'); - $builder->orderBy('last_name', 'asc'); - $builder->limit($limit); - $builder->offset($offset); - - return $builder->get(); - } - - /** - * Gets information about a particular employee - */ - public function get_info(int $person_id): object - { - $builder = $this->db->table('employees'); - $builder->join('people', 'people.person_id = employees.person_id'); - $builder->where('employees.person_id', $person_id); - $query = $builder->get(); - - if($query->getNumRows() == 1) //TODO: === - { - return $query->getRow(); - } - - //Get empty base parent object, as $employee_id is NOT an employee - $person_obj = parent::get_info(NEW_ITEM); - - //Get all the fields from employee table - //append those fields to base parent object, we have a complete empty object - foreach($this->db->getFieldNames('employees') as $field) - { - $person_obj->$field = null; - } - - return $person_obj; - } - - /** - * Gets information about multiple employees - */ - public function get_multiple_info(array $person_ids): ResultInterface - { - $builder = $this->db->table('employees'); - $builder->join('people', 'people.person_id = employees.person_id'); - $builder->whereIn('employees.person_id', $person_ids); - $builder->orderBy('last_name', 'asc'); - - return $builder->get(); - } - - /** - * Inserts or updates an employee - */ - public function save_employee(array &$person_data, array &$employee_data, array &$grants_data, int $employee_id = NEW_ENTRY): bool - { - $success = false; - - //Run these queries as a transaction, we want to make sure we do all or nothing - $this->db->transStart(); - - if(ENVIRONMENT != 'testing' && parent::save_value($person_data, $employee_id)) - { - $builder = $this->db->table('employees'); - if($employee_id == NEW_ENTRY || !$this->exists($employee_id)) - { - $employee_data['person_id'] = $employee_id = $person_data['person_id']; - $success = $builder->insert($employee_data); - } - else - { - $builder->where('person_id', $employee_id); - $success = $builder->update($employee_data); - } - - //We have either inserted or updated a new employee, now lets set permissions. - if($success) - { - //First lets clear out any grants the employee currently has. - $builder = $this->db->table('grants'); - $success = $builder->delete(['person_id' => $employee_id]); - - //Now insert the new grants - if($success) - { - foreach($grants_data as $grant) - { - $data = [ - 'permission_id' => $grant['permission_id'], - 'person_id' => $employee_id, - 'menu_group' => $grant['menu_group'] - ]; - - $builder = $this->db->table('grants'); - $success = $builder->insert($data); - } - } - } - } - - $this->db->transComplete(); - - $success &= $this->db->transStatus(); - - return $success; - } - - /** - * Deletes one employee - */ - public function delete($employee_id = null, bool $purge = false): bool - { - $success = false; - - //Don't let employees delete themselves - if($employee_id == $this->get_logged_in_employee_info()->person_id) - { - return false; - } - - //Run these queries as a transaction, we want to make sure we do all or nothing - $this->db->transStart(); - - //Delete permissions - $builder = $this->db->table('grants'); - - if($builder->delete(['person_id' => $employee_id])) - { - $builder = $this->db->table('employees'); - $builder->where('person_id', $employee_id); - $success = $builder->update(['deleted' => 1]); - } - - $this->db->transComplete(); - - return $success; - } - - /** - * Deletes a list of employees - */ - public function delete_list(array $person_ids): bool - { - $success = false; - - //Don't let employees delete themselves - if(in_array($this->get_logged_in_employee_info()->person_id, $person_ids)) - { - return false; - } - - //Run these queries as a transaction, we want to make sure we do all or nothing - $this->db->transStart(); - - $builder = $this->db->table('grants'); - $builder->whereIn('person_id', $person_ids); - //Delete permissions - if($builder->delete()) - { - //delete from employee table - $builder = $this->db->table('employees'); - $builder->whereIn('person_id', $person_ids); - $success = $builder->update(['deleted' => 1]); - } - - $this->db->transComplete(); - $success &= $this->db->transStatus(); - - return $success; - } - - /** - * Get search suggestions to find employees - */ - public function get_search_suggestions(string $search, int $limit = 25, bool $unique = false): array - { - $suggestions = []; - - $builder = $this->db->table('employees'); - $builder->join('people', 'employees.person_id = people.person_id'); - $builder->groupStart(); - $builder->like('first_name', $search); - $builder->orLike('last_name', $search); - $builder->orLike('CONCAT(first_name, " ", last_name)', $search); - $builder->groupEnd(); - - if(!$unique) - { - $builder->where('deleted', 0); - } - - $builder->orderBy('last_name', 'asc'); - - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = ['value' => $row->person_id, 'label' => $row->first_name.' '.$row->last_name]; - } - - $builder = $this->db->table('employees'); - $builder->join('people', 'employees.person_id = people.person_id'); - - if(!$unique) - { - $builder->where('deleted', 0); - } - - $builder->like('email', $search); - $builder->orderBy('email', 'asc'); - - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = ['value' => $row->person_id, 'label' => $row->email]; - } - - $builder = $this->db->table('employees'); - $builder->join('people', 'employees.person_id = people.person_id'); - - if(!$unique) - { - $builder->where('deleted', 0); - } - - $builder->like('username', $search); - $builder->orderBy('username', 'asc'); - - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = ['value' => $row->person_id, 'label' => $row->username]; - } - - $builder = $this->db->table('employees'); - $builder->join('people', 'employees.person_id = people.person_id'); - - if(!$unique) - { - $builder->where('deleted', 0); - } - - $builder->like('phone_number', $search); - $builder->orderBy('phone_number', 'asc'); - - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = ['value' => $row->person_id, 'label' => $row->phone_number]; - } - - //only return $limit suggestions - if(count($suggestions) > $limit) - { - $suggestions = array_slice($suggestions, 0, $limit); - } - - return $suggestions; - } - - /** - * Gets rows - */ - public function get_found_rows(string $search): int - { - return $this->search($search, 0, 0, 'last_name', 'asc', true); - } - - /** - * Performs a search on employees - */ - public function search(string $search, ?int $rows = 0, ?int $limit_from = 0, ?string $sort = 'last_name', ?string $order = 'asc', ?bool $count_only = false) - { - // Set default values - if($rows == null) $rows = 0; - if($limit_from == null) $limit_from = 0; - if($sort == null) $sort = 'last_name'; - if($order == null) $order = 'asc'; - if($count_only == null) $count_only = false; - - $builder = $this->db->table('employees AS employees'); - - // get_found_rows case - if($count_only) - { - $builder->select('COUNT(employees.person_id) as count'); - } - - $builder->join('people', 'employees.person_id = people.person_id'); - $builder->groupStart(); - $builder->like('first_name', $search); - $builder->orLike('last_name', $search); - $builder->orLike('email', $search); - $builder->orLike('phone_number', $search); - $builder->orLike('username', $search); - $builder->orLike('CONCAT(first_name, " ", last_name)', $search); - $builder->groupEnd(); - $builder->where('deleted', 0); - - // get_found_rows case - if($count_only) - { - return $builder->get()->getRow()->count; - } - - $builder->orderBy($sort, $order); - - if($rows > 0) - { - $builder->limit($rows, $limit_from); - } - - return $builder->get(); - } - - /** - * Attempts to log in employee and set session. Returns boolean based on outcome. - */ - public function login(string $username, string $password): bool - { - $builder = $this->db->table('employees'); - $query = $builder->getWhere(['username' => $username, 'deleted' => 0], 1); - - if($query->getNumRows() === 1) - { - $row = $query->getRow(); - - // compare passwords depending on the hash version - if($row->hash_version === '1' && $row->password === md5($password)) - { - $builder->where('person_id', $row->person_id); - $this->session->set('person_id', $row->person_id); - $password_hash = password_hash($password, PASSWORD_DEFAULT); - - return $builder->update(['hash_version' => 2, 'password' => $password_hash]); - } - elseif($row->hash_version === '2' && password_verify($password, $row->password)) - { - $this->session->set('person_id', $row->person_id); - - return true; - } - } - - return false; - } - - /** - * Logs out a user by destroying all session data and redirect to log in - */ - public function logout(): void - { - session()->destroy(); - } - - /** - * Determines if an employee is logged in - */ - public function is_logged_in(): bool - { - return ($this->session->get('person_id') != false); - } - - /** - * Gets information about the currently logged in employee. - */ - public function get_logged_in_employee_info() - { - if($this->is_logged_in()) - { - return $this->get_info($this->session->get('person_id')); - } - - return false; - } - - /** - * Determines whether the employee has access to at least one submodule - */ - public function has_module_grant(string $permission_id, int $person_id): bool - { - $builder = $this->db->table('grants'); - $builder->like('permission_id', $permission_id, 'after'); - $builder->where('person_id', $person_id); - $result_count = $builder->get()->getNumRows(); - - if($result_count != 1) - { - return ($result_count != 0); - } - - return $this->has_subpermissions($permission_id); - } - - /** - * Checks permissions - */ - public function has_subpermissions(string $permission_id): bool - { - $builder = $this->db->table('permissions'); - $builder->like('permission_id', $permission_id.'_', 'after'); - - return ($builder->get()->getNumRows() == 0); //TODO: === - } - - /** - * Determines whether the employee specified employee has access the specific module. - */ - public function has_grant(?string $permission_id, ?int $person_id): bool - { - //if no module_id is null, allow access - if($permission_id == null) - { - return true; - } - if($person_id == null) - { - return false; - } - - $builder = $this->db->table('grants'); - $query = $builder->getWhere(['person_id' => $person_id, 'permission_id' => $permission_id], 1); - - return ($query->getNumRows() == 1); //TODO: === - } - - /** - * Returns the menu group designation that this module is to appear in - */ - public function get_menu_group(string $permission_id, ?int $person_id): string - { - $builder = $this->db->table('grants'); - $builder->select('menu_group'); - $builder->where('permission_id', $permission_id); - $builder->where('person_id', $person_id); - - $row = $builder->get()->getRow(); - - // If no grants are assigned yet then set the default to 'home' - if($row == null) - { - return 'home'; - } - else - { - return $row->menu_group; - } - } - - /** - * Gets employee permission grants - */ - public function get_employee_grants(int $person_id): array - { - $builder = $this->db->table('grants'); - $builder->where('person_id', $person_id); - - return $builder->get()->getResultArray(); - } - - /** - * Attempts to log in employee and set session. Returns boolean based on outcome. - */ - public function check_password(string $username, string $password): bool - { - $builder = $this->db->table('employees'); - $query = $builder->getWhere(['username' => $username, 'deleted' => 0], 1); - - if($query->getNumRows() == 1) //TODO: === - { - $row = $query->getRow(); - - if(password_verify($password, $row->password)) - { - return true; - } - } - - return false; - } - - /** - * Change password for the employee - */ - public function change_password(array $employee_data, $employee_id = false): bool - { - $success = false; - - if(ENVIRONMENT != 'testing') - { - $this->db->transStart(); - - $builder = $this->db->table('employees'); - $builder->where('person_id', $employee_id); - $success = $builder->update($employee_data); - - $this->db->transComplete(); - - $success &= $this->db->transStatus(); - } - - return $success; - } + public Session $session; + protected $table = 'Employees'; + protected $primaryKey = 'person_id'; + protected $useAutoIncrement = false; + protected $useSoftDeletes = false; + protected $allowedFields = [ + 'username', + 'password', + 'deleted', + 'hashversion', + 'language', + 'language_code' + ]; + + public function __construct() + { + parent::__construct(); + $this->session = session(); + } + + /** + * Determines if a given person_id is an employee + */ + public function exists(int $person_id): bool + { + $builder = $this->db->table('employees'); + $builder->join('people', 'people.person_id = employees.person_id'); + $builder->where('employees.person_id', $person_id); + + return ($builder->get()->getNumRows() == 1); //TODO: === + } + + /** + * @param int $employee_id + * @param string $username + * @return bool + */ + public function username_exists(int $employee_id, string $username): bool + { + $builder = $this->db->table('employees'); + $builder->where('employees.username', $username); + $builder->where('employees.person_id <>', $employee_id); + + return ($builder->get()->getNumRows() == 1); //TODO: === + } + + /** + * Gets total of rows + */ + public function get_total_rows(): int + { + $builder = $this->db->table('employees'); + $builder->where('deleted', 0); + + return $builder->countAllResults(); + } + + /** + * Returns all the employees + */ + public function get_all(int $limit = 10000, int $offset = 0): ResultInterface + { + $builder = $this->db->table('employees'); + $builder->where('deleted', 0); + $builder->join('people', 'employees.person_id = people.person_id'); + $builder->orderBy('last_name', 'asc'); + $builder->limit($limit); + $builder->offset($offset); + + return $builder->get(); + } + + /** + * Gets information about a particular employee + */ + public function get_info(int $person_id): object + { + $builder = $this->db->table('employees'); + $builder->join('people', 'people.person_id = employees.person_id'); + $builder->where('employees.person_id', $person_id); + $query = $builder->get(); + + if($query->getNumRows() == 1) //TODO: === + { + return $query->getRow(); + } + + //Get empty base parent object, as $employee_id is NOT an employee + $person_obj = parent::get_info(NEW_ITEM); + + //Get all the fields from employee table + //append those fields to base parent object, we have a complete empty object + foreach($this->db->getFieldNames('employees') as $field) + { + $person_obj->$field = null; + } + + return $person_obj; + } + + /** + * Gets information about multiple employees + */ + public function get_multiple_info(array $person_ids): ResultInterface + { + $builder = $this->db->table('employees'); + $builder->join('people', 'people.person_id = employees.person_id'); + $builder->whereIn('employees.person_id', $person_ids); + $builder->orderBy('last_name', 'asc'); + + return $builder->get(); + } + + /** + * Inserts or updates an employee + */ + public function save_employee(array &$person_data, array &$employee_data, array &$grants_data, int $employee_id = NEW_ENTRY): bool + { + $success = false; + + //Run these queries as a transaction, we want to make sure we do all or nothing + $this->db->transStart(); + + if(ENVIRONMENT != 'testing' && parent::save_value($person_data, $employee_id)) + { + $builder = $this->db->table('employees'); + if($employee_id == NEW_ENTRY || !$this->exists($employee_id)) + { + $employee_data['person_id'] = $employee_id = $person_data['person_id']; + $success = $builder->insert($employee_data); + } + else + { + $builder->where('person_id', $employee_id); + $success = $builder->update($employee_data); + } + + //We have either inserted or updated a new employee, now lets set permissions. + if($success) + { + //First lets clear out any grants the employee currently has. + $builder = $this->db->table('grants'); + $success = $builder->delete(['person_id' => $employee_id]); + + //Now insert the new grants + if($success) + { + foreach($grants_data as $grant) + { + $data = [ + 'permission_id' => $grant['permission_id'], + 'person_id' => $employee_id, + 'menu_group' => $grant['menu_group'] + ]; + + $builder = $this->db->table('grants'); + $success = $builder->insert($data); + } + } + } + } + + $this->db->transComplete(); + + $success &= $this->db->transStatus(); + + return $success; + } + + /** + * Deletes one employee + */ + public function delete($employee_id = null, bool $purge = false): bool + { + $success = false; + + //Don't let employees delete themselves + if($employee_id == $this->get_logged_in_employee_info()->person_id) + { + return false; + } + + //Run these queries as a transaction, we want to make sure we do all or nothing + $this->db->transStart(); + + //Delete permissions + $builder = $this->db->table('grants'); + + if($builder->delete(['person_id' => $employee_id])) + { + $builder = $this->db->table('employees'); + $builder->where('person_id', $employee_id); + $success = $builder->update(['deleted' => 1]); + } + + $this->db->transComplete(); + + return $success; + } + + /** + * Deletes a list of employees + */ + public function delete_list(array $person_ids): bool + { + $success = false; + + //Don't let employees delete themselves + if(in_array($this->get_logged_in_employee_info()->person_id, $person_ids)) + { + return false; + } + + //Run these queries as a transaction, we want to make sure we do all or nothing + $this->db->transStart(); + + $builder = $this->db->table('grants'); + $builder->whereIn('person_id', $person_ids); + //Delete permissions + if($builder->delete()) + { + //delete from employee table + $builder = $this->db->table('employees'); + $builder->whereIn('person_id', $person_ids); + $success = $builder->update(['deleted' => 1]); + } + + $this->db->transComplete(); + $success &= $this->db->transStatus(); + + return $success; + } + + /** + * Get search suggestions to find employees + */ + public function get_search_suggestions(string $search, int $limit = 25, bool $unique = false): array + { + $suggestions = []; + + $builder = $this->db->table('employees'); + $builder->join('people', 'employees.person_id = people.person_id'); + $builder->groupStart(); + $builder->like('first_name', $search); + $builder->orLike('last_name', $search); + $builder->orLike('CONCAT(first_name, " ", last_name)', $search); + $builder->groupEnd(); + + if(!$unique) + { + $builder->where('deleted', 0); + } + + $builder->orderBy('last_name', 'asc'); + + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = ['value' => $row->person_id, 'label' => $row->first_name.' '.$row->last_name]; + } + + $builder = $this->db->table('employees'); + $builder->join('people', 'employees.person_id = people.person_id'); + + if(!$unique) + { + $builder->where('deleted', 0); + } + + $builder->like('email', $search); + $builder->orderBy('email', 'asc'); + + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = ['value' => $row->person_id, 'label' => $row->email]; + } + + $builder = $this->db->table('employees'); + $builder->join('people', 'employees.person_id = people.person_id'); + + if(!$unique) + { + $builder->where('deleted', 0); + } + + $builder->like('username', $search); + $builder->orderBy('username', 'asc'); + + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = ['value' => $row->person_id, 'label' => $row->username]; + } + + $builder = $this->db->table('employees'); + $builder->join('people', 'employees.person_id = people.person_id'); + + if(!$unique) + { + $builder->where('deleted', 0); + } + + $builder->like('phone_number', $search); + $builder->orderBy('phone_number', 'asc'); + + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = ['value' => $row->person_id, 'label' => $row->phone_number]; + } + + //only return $limit suggestions + if(count($suggestions) > $limit) + { + $suggestions = array_slice($suggestions, 0, $limit); + } + + return $suggestions; + } + + /** + * Gets rows + */ + public function get_found_rows(string $search): int + { + return $this->search($search, 0, 0, 'last_name', 'asc', true); + } + + /** + * Performs a search on employees + */ + public function search(string $search, ?int $rows = 0, ?int $limit_from = 0, ?string $sort = 'last_name', ?string $order = 'asc', ?bool $count_only = false) + { + // Set default values + if($rows == null) $rows = 0; + if($limit_from == null) $limit_from = 0; + if($sort == null) $sort = 'last_name'; + if($order == null) $order = 'asc'; + if($count_only == null) $count_only = false; + + $builder = $this->db->table('employees AS employees'); + + // get_found_rows case + if($count_only) + { + $builder->select('COUNT(employees.person_id) as count'); + } + + $builder->join('people', 'employees.person_id = people.person_id'); + $builder->groupStart(); + $builder->like('first_name', $search); + $builder->orLike('last_name', $search); + $builder->orLike('email', $search); + $builder->orLike('phone_number', $search); + $builder->orLike('username', $search); + $builder->orLike('CONCAT(first_name, " ", last_name)', $search); + $builder->groupEnd(); + $builder->where('deleted', 0); + + // get_found_rows case + if($count_only) + { + return $builder->get()->getRow()->count; + } + + $builder->orderBy($sort, $order); + + if($rows > 0) + { + $builder->limit($rows, $limit_from); + } + + return $builder->get(); + } + + /** + * Attempts to log in employee and set session. Returns boolean based on outcome. + */ + public function login(string $username, string $password): bool + { + $builder = $this->db->table('employees'); + $query = $builder->getWhere(['username' => $username, 'deleted' => 0], 1); + + if($query->getNumRows() === 1) + { + $row = $query->getRow(); + + // compare passwords depending on the hash version + if($row->hash_version === '1' && $row->password === md5($password)) + { + $builder->where('person_id', $row->person_id); + $this->session->set('person_id', $row->person_id); + $password_hash = password_hash($password, PASSWORD_DEFAULT); + + return $builder->update(['hash_version' => 2, 'password' => $password_hash]); + } + elseif($row->hash_version === '2' && password_verify($password, $row->password)) + { + $this->session->set('person_id', $row->person_id); + + return true; + } + } + + return false; + } + + /** + * Logs out a user by destroying all session data and redirect to log in + */ + public function logout(): void + { + session()->destroy(); + } + + /** + * Determines if an employee is logged in + */ + public function is_logged_in(): bool + { + return ($this->session->get('person_id') != false); + } + + /** + * Gets information about the currently logged in employee. + */ + public function get_logged_in_employee_info() + { + if($this->is_logged_in()) + { + return $this->get_info($this->session->get('person_id')); + } + + return false; + } + + /** + * Determines whether the employee has access to at least one submodule + */ + public function has_module_grant(string $permission_id, int $person_id): bool + { + $builder = $this->db->table('grants'); + $builder->like('permission_id', $permission_id, 'after'); + $builder->where('person_id', $person_id); + $result_count = $builder->get()->getNumRows(); + + if($result_count != 1) + { + return ($result_count != 0); + } + + return $this->has_subpermissions($permission_id); + } + + /** + * Checks permissions + */ + public function has_subpermissions(string $permission_id): bool + { + $builder = $this->db->table('permissions'); + $builder->like('permission_id', $permission_id.'_', 'after'); + + return ($builder->get()->getNumRows() == 0); //TODO: === + } + + /** + * Determines whether the employee specified employee has access the specific module. + */ + public function has_grant(?string $permission_id, ?int $person_id): bool + { + //if no module_id is null, allow access + if($permission_id == null) + { + return true; + } + if($person_id == null) + { + return false; + } + + $builder = $this->db->table('grants'); + $query = $builder->getWhere(['person_id' => $person_id, 'permission_id' => $permission_id], 1); + + return ($query->getNumRows() == 1); //TODO: === + } + + /** + * Returns the menu group designation that this module is to appear in + */ + public function get_menu_group(string $permission_id, ?int $person_id): string + { + $builder = $this->db->table('grants'); + $builder->select('menu_group'); + $builder->where('permission_id', $permission_id); + $builder->where('person_id', $person_id); + + $row = $builder->get()->getRow(); + + // If no grants are assigned yet then set the default to 'home' + if($row == null) + { + return 'home'; + } + else + { + return $row->menu_group; + } + } + + /** + * Gets employee permission grants + */ + public function get_employee_grants(int $person_id): array + { + $builder = $this->db->table('grants'); + $builder->where('person_id', $person_id); + + return $builder->get()->getResultArray(); + } + + /** + * Attempts to log in employee and set session. Returns boolean based on outcome. + */ + public function check_password(string $username, string $password): bool + { + $builder = $this->db->table('employees'); + $query = $builder->getWhere(['username' => $username, 'deleted' => 0], 1); + + if($query->getNumRows() == 1) //TODO: === + { + $row = $query->getRow(); + + if(password_verify($password, $row->password)) + { + return true; + } + } + + return false; + } + + /** + * Change password for the employee + */ + public function change_password(array $employee_data, $employee_id = false): bool + { + $success = false; + + if(ENVIRONMENT != 'testing') + { + $this->db->transStart(); + + $builder = $this->db->table('employees'); + $builder->where('person_id', $employee_id); + $success = $builder->update($employee_data); + + $this->db->transComplete(); + + $success &= $this->db->transStatus(); + } + + return $success; + } } diff --git a/app/Models/Enums/Rounding_mode.php b/app/Models/Enums/Rounding_mode.php index 27e49557f..1773571ed 100644 --- a/app/Models/Enums/Rounding_mode.php +++ b/app/Models/Enums/Rounding_mode.php @@ -6,91 +6,91 @@ use ReflectionClass; class Rounding_mode { - public const HALF_UP = PHP_ROUND_HALF_UP; //TODO: These constants need to be moved to constants.php - public const HALF_DOWN = PHP_ROUND_HALF_DOWN; - public const HALF_EVEN = PHP_ROUND_HALF_EVEN; - public const HALF_ODD = PHP_ROUND_HALF_ODD; - public const ROUND_UP = 5; - public const ROUND_DOWN = 6; - public const HALF_FIVE = 7; + public const HALF_UP = PHP_ROUND_HALF_UP; //TODO: These constants need to be moved to constants.php + public const HALF_DOWN = PHP_ROUND_HALF_DOWN; + public const HALF_EVEN = PHP_ROUND_HALF_EVEN; + public const HALF_ODD = PHP_ROUND_HALF_ODD; + public const ROUND_UP = 5; + public const ROUND_DOWN = 6; + public const HALF_FIVE = 7; - public function __construct() - { - helper('language'); - } + public function __construct() + { + helper('language'); + } - /** - * @return array - */ - public static function get_rounding_options(): array - { - $class = new ReflectionClass(__CLASS__); - $result = []; + /** + * @return array + */ + public static function get_rounding_options(): array + { + $class = new ReflectionClass(__CLASS__); + $result = []; - foreach($class->getConstants() as $key => $value) - { - $result[$value] = lang('Enum.' . strtolower($key)); - } + foreach($class->getConstants() as $key => $value) + { + $result[$value] = lang('Enum.' . strtolower($key)); + } - return $result; - } + return $result; + } - /** - * @param int $code - * @return string - */ - public static function get_rounding_code_name(int $code): string - { - if(empty($code)) - { - return lang('Common.unknown'); - } + /** + * @param int $code + * @return string + */ + public static function get_rounding_code_name(int $code): string + { + if(empty($code)) + { + return lang('Common.unknown'); + } - return Rounding_mode::get_rounding_options()[$code]; - } + return Rounding_mode::get_rounding_options()[$code]; + } - /** - * @return string - */ - public static function get_html_rounding_options(): string - { - $x = ''; + /** + * @return string + */ + public static function get_html_rounding_options(): string + { + $x = ''; - foreach(Rounding_mode::get_rounding_options() as $option => $label) - { - $x .= ""; - } + foreach(Rounding_mode::get_rounding_options() as $option => $label) + { + $x .= ""; + } - return $x; - } + return $x; + } - /** - * @param int $rounding_mode - * @param float $amount - * @param int $decimals - * @return string - */ - public static function round_number(int $rounding_mode, float $amount, int $decimals): string - {//TODO: this needs to be replaced with a switch statement - if($rounding_mode == Rounding_mode::ROUND_UP) - { - $fig = pow(10, $decimals); - $rounded_total = (ceil($fig*$amount) + ceil($fig*$amount - ceil($fig*$amount)))/$fig; - } - elseif($rounding_mode == Rounding_mode::ROUND_DOWN) - { - $fig = pow(10, $decimals); - $rounded_total = (floor($fig*$amount) + floor($fig*$amount - floor($fig*$amount)))/$fig; - } - elseif($rounding_mode == Rounding_mode::HALF_FIVE) - { - $rounded_total = round($amount / 5, $decimals, Rounding_mode::HALF_EVEN) * 5; - } - else - { - $rounded_total = round ( $amount, $decimals, $rounding_mode); - } + /** + * @param int $rounding_mode + * @param float $amount + * @param int $decimals + * @return string + */ + public static function round_number(int $rounding_mode, float $amount, int $decimals): string + {//TODO: this needs to be replaced with a switch statement + if($rounding_mode == Rounding_mode::ROUND_UP) + { + $fig = pow(10, $decimals); + $rounded_total = (ceil($fig*$amount) + ceil($fig*$amount - ceil($fig*$amount)))/$fig; + } + elseif($rounding_mode == Rounding_mode::ROUND_DOWN) + { + $fig = pow(10, $decimals); + $rounded_total = (floor($fig*$amount) + floor($fig*$amount - floor($fig*$amount)))/$fig; + } + elseif($rounding_mode == Rounding_mode::HALF_FIVE) + { + $rounded_total = round($amount / 5, $decimals, Rounding_mode::HALF_EVEN) * 5; + } + else + { + $rounded_total = round ( $amount, $decimals, $rounding_mode); + } - return $rounded_total; - } + return $rounded_total; + } } diff --git a/app/Models/Expense.php b/app/Models/Expense.php index 658c4b3f7..a28940d29 100644 --- a/app/Models/Expense.php +++ b/app/Models/Expense.php @@ -12,376 +12,376 @@ use stdClass; */ class Expense extends Model { - protected $table = 'expenses'; - protected $primaryKey = 'expense_id'; - protected $useAutoIncrement = true; - protected $useSoftDeletes = false; - protected $allowedFields = [ - 'date', - 'amount', - 'payment_type', - 'expense_category_id', - 'description', - 'employee_id', - 'deleted', - 'supplier_tax_code', - 'tax_amount', - 'supplier_id' - ]; + protected $table = 'expenses'; + protected $primaryKey = 'expense_id'; + protected $useAutoIncrement = true; + protected $useSoftDeletes = false; + protected $allowedFields = [ + 'date', + 'amount', + 'payment_type', + 'expense_category_id', + 'description', + 'employee_id', + 'deleted', + 'supplier_tax_code', + 'tax_amount', + 'supplier_id' + ]; - /** - * Determines if a given Expense_id is an Expense - */ - public function exists(int $expense_id): bool - { - $builder = $this->db->table('expenses'); - $builder->where('expense_id', $expense_id); + /** + * Determines if a given Expense_id is an Expense + */ + public function exists(int $expense_id): bool + { + $builder = $this->db->table('expenses'); + $builder->where('expense_id', $expense_id); - return ($builder->get()->getNumRows() == 1); //TODO: === - } + return ($builder->get()->getNumRows() == 1); //TODO: === + } - /** - * Gets category info - */ - public function get_expense_category(int $expense_id): object //TODO: This function is never called in the code - { - $builder = $this->db->table('expenses'); - $builder->where('expense_id', $expense_id); + /** + * Gets category info + */ + public function get_expense_category(int $expense_id): object //TODO: This function is never called in the code + { + $builder = $this->db->table('expenses'); + $builder->where('expense_id', $expense_id); - $expense_category = model(Expense_category::class); - return $expense_category->get_info($builder->get()->getRow()->expense_category_id); //TODO: refactor out the nested function call. - } + $expense_category = model(Expense_category::class); + return $expense_category->get_info($builder->get()->getRow()->expense_category_id); //TODO: refactor out the nested function call. + } - /** - * Gets employee info - */ - public function get_employee(int $expense_id): object //TODO: This function is never called in the code - { - $builder = $this->db->table('expenses'); - $builder->where('expense_id', $expense_id); + /** + * Gets employee info + */ + public function get_employee(int $expense_id): object //TODO: This function is never called in the code + { + $builder = $this->db->table('expenses'); + $builder->where('expense_id', $expense_id); - $employee = model(Employee::class); + $employee = model(Employee::class); - return $employee->get_info($builder->get()->getRow()->employee_id); //TODO: refactor out the nested function call. - } + return $employee->get_info($builder->get()->getRow()->employee_id); //TODO: refactor out the nested function call. + } - /** - * @param array $expense_ids - * @return ResultInterface - */ - public function get_multiple_info(array $expense_ids): ResultInterface - { - $builder = $this->db->table('expenses'); - $builder->whereIn('expenses.expense_id', $expense_ids); - $builder->orderBy('expense_id', 'asc'); + /** + * @param array $expense_ids + * @return ResultInterface + */ + public function get_multiple_info(array $expense_ids): ResultInterface + { + $builder = $this->db->table('expenses'); + $builder->whereIn('expenses.expense_id', $expense_ids); + $builder->orderBy('expense_id', 'asc'); - return $builder->get(); - } + return $builder->get(); + } - /** - * Gets rows - */ - public function get_found_rows(string $search, array $filters): int - { - return $this->search($search, $filters, 0, 0, 'expense_id', 'asc', true); - } + /** + * Gets rows + */ + public function get_found_rows(string $search, array $filters): int + { + return $this->search($search, $filters, 0, 0, 'expense_id', 'asc', true); + } - /** - * Searches expenses - * - * @param string $search - * @param array $filters - * @param int|null $rows - * @param int|null $limit_from - * @param string|null $sort - * @param string|null $order - * @param bool|null $count_only - * @return ResultInterface|false|string - */ - public function search(string $search, array $filters, ?int $rows = 0, ?int $limit_from = 0, ?string $sort = 'expense_id', ?string $order = 'asc', ?bool $count_only = false): false|string|ResultInterface - { - // Set default values - if($rows == null) $rows = 0; - if($limit_from == null) $limit_from = 0; - if($sort == null) $sort = 'expense_id'; - if($order == null) $order = 'asc'; - if($count_only == null) $count_only = false; + /** + * Searches expenses + * + * @param string $search + * @param array $filters + * @param int|null $rows + * @param int|null $limit_from + * @param string|null $sort + * @param string|null $order + * @param bool|null $count_only + * @return ResultInterface|false|string + */ + public function search(string $search, array $filters, ?int $rows = 0, ?int $limit_from = 0, ?string $sort = 'expense_id', ?string $order = 'asc', ?bool $count_only = false): false|string|ResultInterface + { + // Set default values + if($rows == null) $rows = 0; + if($limit_from == null) $limit_from = 0; + if($sort == null) $sort = 'expense_id'; + if($order == null) $order = 'asc'; + if($count_only == null) $count_only = false; - $config = config(OSPOS::class)->settings; - $builder = $this->db->table('expenses AS expenses'); + $config = config(OSPOS::class)->settings; + $builder = $this->db->table('expenses AS expenses'); - // get_found_rows case - if($count_only) - { - $builder->select('COUNT(DISTINCT expenses.expense_id) as count'); - } - else - { - $builder->select(' - expenses.expense_id, - MAX(expenses.date) AS date, - MAX(suppliers.company_name) AS supplier_name, - MAX(expenses.supplier_tax_code) AS supplier_tax_code, - MAX(expenses.amount) AS amount, - MAX(expenses.tax_amount) AS tax_amount, - MAX(expenses.payment_type) AS payment_type, - MAX(expenses.description) AS description, - MAX(employees.first_name) AS first_name, - MAX(employees.last_name) AS last_name, - MAX(expense_categories.category_name) AS category_name - '); - } + // get_found_rows case + if($count_only) + { + $builder->select('COUNT(DISTINCT expenses.expense_id) as count'); + } + else + { + $builder->select(' + expenses.expense_id, + MAX(expenses.date) AS date, + MAX(suppliers.company_name) AS supplier_name, + MAX(expenses.supplier_tax_code) AS supplier_tax_code, + MAX(expenses.amount) AS amount, + MAX(expenses.tax_amount) AS tax_amount, + MAX(expenses.payment_type) AS payment_type, + MAX(expenses.description) AS description, + MAX(employees.first_name) AS first_name, + MAX(employees.last_name) AS last_name, + MAX(expense_categories.category_name) AS category_name + '); + } - $builder->join('people AS employees', 'employees.person_id = expenses.employee_id', 'LEFT'); - $builder->join('expense_categories AS expense_categories', 'expense_categories.expense_category_id = expenses.expense_category_id', 'LEFT'); - $builder->join('suppliers AS suppliers', 'suppliers.person_id = expenses.supplier_id', 'LEFT'); + $builder->join('people AS employees', 'employees.person_id = expenses.employee_id', 'LEFT'); + $builder->join('expense_categories AS expense_categories', 'expense_categories.expense_category_id = expenses.expense_category_id', 'LEFT'); + $builder->join('suppliers AS suppliers', 'suppliers.person_id = expenses.supplier_id', 'LEFT'); - $builder->groupStart(); - $builder->like('employees.first_name', $search); - $builder->orLike('expenses.date', $search); - $builder->orLike('employees.last_name', $search); - $builder->orLike('expenses.payment_type', $search); - $builder->orLike('expenses.amount', $search); - $builder->orLike('expense_categories.category_name', $search); - $builder->orLike('CONCAT(employees.first_name, " ", employees.last_name)', $search); - $builder->groupEnd(); + $builder->groupStart(); + $builder->like('employees.first_name', $search); + $builder->orLike('expenses.date', $search); + $builder->orLike('employees.last_name', $search); + $builder->orLike('expenses.payment_type', $search); + $builder->orLike('expenses.amount', $search); + $builder->orLike('expense_categories.category_name', $search); + $builder->orLike('CONCAT(employees.first_name, " ", employees.last_name)', $search); + $builder->groupEnd(); - $builder->where('expenses.deleted', $filters['is_deleted']); + $builder->where('expenses.deleted', $filters['is_deleted']); - if(empty($config['date_or_time_format'])) - { - $builder->where('DATE_FORMAT(expenses.date, "%Y-%m-%d") BETWEEN ' . $this->db->escape($filters['start_date']) . ' AND ' . $this->db->escape($filters['end_date'])); - } - else - { - $builder->where('expenses.date BETWEEN ' . $this->db->escape(rawurldecode($filters['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($filters['end_date']))); - } + if(empty($config['date_or_time_format'])) + { + $builder->where('DATE_FORMAT(expenses.date, "%Y-%m-%d") BETWEEN ' . $this->db->escape($filters['start_date']) . ' AND ' . $this->db->escape($filters['end_date'])); + } + else + { + $builder->where('expenses.date BETWEEN ' . $this->db->escape(rawurldecode($filters['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($filters['end_date']))); + } - if($filters['only_debit']) - { - $builder->like('expenses.payment_type', lang('Expenses.debit')); - } + if($filters['only_debit']) + { + $builder->like('expenses.payment_type', lang('Expenses.debit')); + } - if($filters['only_credit']) - { - $builder->like('expenses.payment_type', lang('Expenses.credit')); - } + if($filters['only_credit']) + { + $builder->like('expenses.payment_type', lang('Expenses.credit')); + } - if($filters['only_cash']) - { - $builder->groupStart(); - $builder->like('expenses.payment_type', lang('Expenses.cash')); - $builder->orWhere('expenses.payment_type IS NULL'); - $builder->groupEnd(); - } + if($filters['only_cash']) + { + $builder->groupStart(); + $builder->like('expenses.payment_type', lang('Expenses.cash')); + $builder->orWhere('expenses.payment_type IS NULL'); + $builder->groupEnd(); + } - if($filters['only_due']) - { - $builder->like('expenses.payment_type', lang('Expenses.due')); - } + if($filters['only_due']) + { + $builder->like('expenses.payment_type', lang('Expenses.due')); + } - if($filters['only_check']) - { - $builder->like('expenses.payment_type', lang('Expenses.check')); - } + if($filters['only_check']) + { + $builder->like('expenses.payment_type', lang('Expenses.check')); + } - if($count_only) //TODO: replace this with `if($count_only)` - { - return $builder->get()->getRow()->count; - } + if($count_only) //TODO: replace this with `if($count_only)` + { + return $builder->get()->getRow()->count; + } - $builder->groupBy('expense_id'); + $builder->groupBy('expense_id'); - $builder->orderBy($sort, $order); + $builder->orderBy($sort, $order); - if($rows > 0) - { - $builder->limit($rows, $limit_from); - } + if($rows > 0) + { + $builder->limit($rows, $limit_from); + } - return $builder->get(); - } + return $builder->get(); + } - /** - * Gets information about a particular expense - */ - public function get_info(int $expense_id): object - { - $builder = $this->db->table('expenses AS expenses'); - $builder->select(' - expenses.expense_id AS expense_id, - expenses.date AS date, - suppliers.company_name AS supplier_name, - expenses.supplier_id AS supplier_id, - expenses.supplier_tax_code AS supplier_tax_code, - expenses.amount AS amount, - expenses.tax_amount AS tax_amount, - expenses.payment_type AS payment_type, - expenses.description AS description, - expenses.employee_id AS employee_id, - expenses.deleted AS deleted, - employees.first_name AS first_name, - employees.last_name AS last_name, - expense_categories.expense_category_id AS expense_category_id, - expense_categories.category_name AS category_name - '); + /** + * Gets information about a particular expense + */ + public function get_info(int $expense_id): object + { + $builder = $this->db->table('expenses AS expenses'); + $builder->select(' + expenses.expense_id AS expense_id, + expenses.date AS date, + suppliers.company_name AS supplier_name, + expenses.supplier_id AS supplier_id, + expenses.supplier_tax_code AS supplier_tax_code, + expenses.amount AS amount, + expenses.tax_amount AS tax_amount, + expenses.payment_type AS payment_type, + expenses.description AS description, + expenses.employee_id AS employee_id, + expenses.deleted AS deleted, + employees.first_name AS first_name, + employees.last_name AS last_name, + expense_categories.expense_category_id AS expense_category_id, + expense_categories.category_name AS category_name + '); - $builder->join('people AS employees', 'employees.person_id = expenses.employee_id', 'LEFT'); - $builder->join('expense_categories AS expense_categories', 'expense_categories.expense_category_id = expenses.expense_category_id', 'LEFT'); - $builder->join('suppliers AS suppliers', 'suppliers.person_id = expenses.supplier_id', 'LEFT'); - $builder->where('expense_id', $expense_id); + $builder->join('people AS employees', 'employees.person_id = expenses.employee_id', 'LEFT'); + $builder->join('expense_categories AS expense_categories', 'expense_categories.expense_category_id = expenses.expense_category_id', 'LEFT'); + $builder->join('suppliers AS suppliers', 'suppliers.person_id = expenses.supplier_id', 'LEFT'); + $builder->where('expense_id', $expense_id); - $query = $builder->get(); + $query = $builder->get(); - if ($query->getNumRows() == 1) //TODO: === - { - return $query->getRow(); - } + if ($query->getNumRows() == 1) //TODO: === + { + return $query->getRow(); + } - $empty_obj = $this->getEmptyObject('expenses'); - $empty_obj->supplier_name = null; - $empty_obj->first_name = null; - $empty_obj->last_name = null; + $empty_obj = $this->getEmptyObject('expenses'); + $empty_obj->supplier_name = null; + $empty_obj->first_name = null; + $empty_obj->last_name = null; - return $empty_obj; - } + return $empty_obj; + } - /** - * Initializes an empty object based on database definitions - * @param string $table_name - * @return object - */ - private function getEmptyObject(string $table_name): object - { - // Return an empty base parent object, as $item_id is NOT an item - $empty_obj = new stdClass(); + /** + * Initializes an empty object based on database definitions + * @param string $table_name + * @return object + */ + private function getEmptyObject(string $table_name): object + { + // Return an empty base parent object, as $item_id is NOT an item + $empty_obj = new stdClass(); - // Iterate through field definitions to determine how the fields should be initialized - foreach($this->db->getFieldData($table_name) as $field) - { - $field_name = $field->name; + // Iterate through field definitions to determine how the fields should be initialized + foreach($this->db->getFieldData($table_name) as $field) + { + $field_name = $field->name; - if(in_array($field->type, ['int', 'tinyint', 'decimal'])) - { - $empty_obj->$field_name = ($field->primary_key == 1) ? NEW_ENTRY : 0; - } - else - { - $empty_obj->$field_name = null; - } - } + if(in_array($field->type, ['int', 'tinyint', 'decimal'])) + { + $empty_obj->$field_name = ($field->primary_key == 1) ? NEW_ENTRY : 0; + } + else + { + $empty_obj->$field_name = null; + } + } - return $empty_obj; - } + return $empty_obj; + } - /** - * Inserts or updates an expense - */ - public function save_value(array &$expense_data, int $expense_id = NEW_ENTRY): bool - { - $builder = $this->db->table('expenses'); + /** + * Inserts or updates an expense + */ + public function save_value(array &$expense_data, int $expense_id = NEW_ENTRY): bool + { + $builder = $this->db->table('expenses'); - if($expense_id == NEW_ENTRY || !$this->exists($expense_id)) - { - if($builder->insert($expense_data)) - { - $expense_data['expense_id'] = $this->db->insertID(); + if($expense_id == NEW_ENTRY || !$this->exists($expense_id)) + { + if($builder->insert($expense_data)) + { + $expense_data['expense_id'] = $this->db->insertID(); - return true; - } + return true; + } - return false; - } + return false; + } - $builder->where('expense_id', $expense_id); + $builder->where('expense_id', $expense_id); - return $builder->update($expense_data); - } + return $builder->update($expense_data); + } - /** - * Deletes a list of expense_category - */ - public function delete_list(array $expense_ids): bool - { - $builder = $this->db->table('expenses'); + /** + * Deletes a list of expense_category + */ + public function delete_list(array $expense_ids): bool + { + $builder = $this->db->table('expenses'); - $this->db->transStart(); - $builder->whereIn('expense_id', $expense_ids); - $success = $builder->update(['deleted' => 1]); - $this->db->transComplete(); + $this->db->transStart(); + $builder->whereIn('expense_id', $expense_ids); + $success = $builder->update(['deleted' => 1]); + $this->db->transComplete(); - $success &= $this->db->transStatus(); + $success &= $this->db->transStatus(); - return $success; - } + return $success; + } - /** - * Gets the payment summary for the expenses (expenses/manage) view - */ - public function get_payments_summary(string $search, array $filters): array //TODO: $search is passed but never used in the function - { - $config = config(OSPOS::class)->settings; + /** + * Gets the payment summary for the expenses (expenses/manage) view + */ + public function get_payments_summary(string $search, array $filters): array //TODO: $search is passed but never used in the function + { + $config = config(OSPOS::class)->settings; - // get payment summary - $builder = $this->db->table('expenses'); - $builder->select('payment_type, COUNT(amount) AS count, SUM(amount) AS amount'); - $builder->where('deleted', $filters['is_deleted']); + // get payment summary + $builder = $this->db->table('expenses'); + $builder->select('payment_type, COUNT(amount) AS count, SUM(amount) AS amount'); + $builder->where('deleted', $filters['is_deleted']); - if(empty($config['date_or_time_format'])) - { - $builder->where('DATE_FORMAT(date, "%Y-%m-%d") BETWEEN ' . $this->db->escape($filters['start_date']) . ' AND ' . $this->db->escape($filters['end_date'])); - } - else - { - $builder->where('date BETWEEN ' . $this->db->escape(rawurldecode($filters['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($filters['end_date']))); - } + if(empty($config['date_or_time_format'])) + { + $builder->where('DATE_FORMAT(date, "%Y-%m-%d") BETWEEN ' . $this->db->escape($filters['start_date']) . ' AND ' . $this->db->escape($filters['end_date'])); + } + else + { + $builder->where('date BETWEEN ' . $this->db->escape(rawurldecode($filters['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($filters['end_date']))); + } - if($filters['only_cash']) - { - $builder->like('payment_type', lang('Expenses.cash')); - } + if($filters['only_cash']) + { + $builder->like('payment_type', lang('Expenses.cash')); + } - if($filters['only_due']) - { - $builder->like('payment_type', lang('Expenses.due')); - } + if($filters['only_due']) + { + $builder->like('payment_type', lang('Expenses.due')); + } - if($filters['only_check']) - { - $builder->like('payment_type', lang('Expenses.check')); - } + if($filters['only_check']) + { + $builder->like('payment_type', lang('Expenses.check')); + } - if($filters['only_credit']) - { - $builder->like('payment_type', lang('Expenses.credit')); - } + if($filters['only_credit']) + { + $builder->like('payment_type', lang('Expenses.credit')); + } - if($filters['only_debit']) - { - $builder->like('payment_type', lang('Expenses.debit')); - } + if($filters['only_debit']) + { + $builder->like('payment_type', lang('Expenses.debit')); + } - $builder->groupBy('payment_type'); + $builder->groupBy('payment_type'); - return $builder->get()->getResultArray(); - } + return $builder->get()->getResultArray(); + } - /** - * Gets the payment options to show in the expense forms - */ - public function get_payment_options(): array - { - return get_payment_options(); - } + /** + * Gets the payment options to show in the expense forms + */ + public function get_payment_options(): array + { + return get_payment_options(); + } - /** - * Gets the expense payment - */ - public function get_expense_payment(int $expense_id): ResultInterface - { - $builder = $this->db->table('expenses'); - $builder->where('expense_id', $expense_id); + /** + * Gets the expense payment + */ + public function get_expense_payment(int $expense_id): ResultInterface + { + $builder = $this->db->table('expenses'); + $builder->where('expense_id', $expense_id); - return $builder->get(); - } + return $builder->get(); + } } diff --git a/app/Models/Expense_category.php b/app/Models/Expense_category.php index 43d486ef0..4249e5433 100644 --- a/app/Models/Expense_category.php +++ b/app/Models/Expense_category.php @@ -11,183 +11,183 @@ use stdClass; */ class Expense_category extends Model { - protected $table = 'expense_categories'; - protected $primaryKey = 'expense_category_id'; - protected $useAutoIncrement = true; - protected $useSoftDeletes = false; - protected $allowedFields = [ - 'category_name', - 'category_description', - 'deleted' - ]; + protected $table = 'expense_categories'; + protected $primaryKey = 'expense_category_id'; + protected $useAutoIncrement = true; + protected $useSoftDeletes = false; + protected $allowedFields = [ + 'category_name', + 'category_description', + 'deleted' + ]; - /** - * Determines if a given Expense_id is an Expense category - */ - public function exists(int $expense_category_id): bool - { - $builder = $this->db->table('expense_categories'); - $builder->where('expense_category_id', $expense_category_id); + /** + * Determines if a given Expense_id is an Expense category + */ + public function exists(int $expense_category_id): bool + { + $builder = $this->db->table('expense_categories'); + $builder->where('expense_category_id', $expense_category_id); - return ($builder->get()->getNumRows() == 1); //TODO: === - } + return ($builder->get()->getNumRows() == 1); //TODO: === + } - /** - * Gets total of rows - */ - public function get_total_rows(): int - { - $builder = $this->db->table('expense_categories'); - $builder->where('deleted', 0); + /** + * Gets total of rows + */ + public function get_total_rows(): int + { + $builder = $this->db->table('expense_categories'); + $builder->where('deleted', 0); - return $builder->countAllResults(); - } + return $builder->countAllResults(); + } - /** - * Gets information about a particular category - */ - public function get_info(int $expense_category_id): object - { - $builder = $this->db->table('expense_categories'); - $builder->where('expense_category_id', $expense_category_id); - $builder->where('deleted', 0); - $query = $builder->get(); + /** + * Gets information about a particular category + */ + public function get_info(int $expense_category_id): object + { + $builder = $this->db->table('expense_categories'); + $builder->where('expense_category_id', $expense_category_id); + $builder->where('deleted', 0); + $query = $builder->get(); - if($query->getNumRows() == 1) //TODO: === - { - return $query->getRow(); - } - else - { - //Get empty base parent object, as $item_kit_id is NOT an item kit - $expense_obj = new stdClass(); + if($query->getNumRows() == 1) //TODO: === + { + return $query->getRow(); + } + else + { + //Get empty base parent object, as $item_kit_id is NOT an item kit + $expense_obj = new stdClass(); - //Get all the fields from items table - foreach($this->db->getFieldNames('expense_categories') as $field) - { - $expense_obj->$field = ''; - } + //Get all the fields from items table + foreach($this->db->getFieldNames('expense_categories') as $field) + { + $expense_obj->$field = ''; + } - return $expense_obj; - } - } + return $expense_obj; + } + } - /** - * Returns all the expense_categories - */ - public function get_all(int $rows = 0, int $limit_from = 0, bool $no_deleted = false): ResultInterface - { - $builder = $this->db->table('expense_categories'); + /** + * Returns all the expense_categories + */ + public function get_all(int $rows = 0, int $limit_from = 0, bool $no_deleted = false): ResultInterface + { + $builder = $this->db->table('expense_categories'); - if($no_deleted) - { - $builder->where('deleted', 0); - } + if($no_deleted) + { + $builder->where('deleted', 0); + } - $builder->orderBy('category_name', 'asc'); + $builder->orderBy('category_name', 'asc'); - if($rows > 0) - { - $builder->limit($rows, $limit_from); - } + if($rows > 0) + { + $builder->limit($rows, $limit_from); + } - return $builder->get(); - } + return $builder->get(); + } - /** - * Gets information about multiple expense_category_id - */ - public function get_multiple_info(array $expense_category_ids): ResultInterface - { - $builder = $this->db->table('expense_categories'); - $builder->whereIn('expense_category_id', $expense_category_ids); - $builder->orderBy('category_name', 'asc'); + /** + * Gets information about multiple expense_category_id + */ + public function get_multiple_info(array $expense_category_ids): ResultInterface + { + $builder = $this->db->table('expense_categories'); + $builder->whereIn('expense_category_id', $expense_category_ids); + $builder->orderBy('category_name', 'asc'); - return $builder->get(); - } + return $builder->get(); + } - /** - * Inserts or updates an expense_category - */ - public function save_value(array &$expense_category_data, int $expense_category_id = NEW_ENTRY): bool - { - $builder = $this->db->table('expense_categories'); + /** + * Inserts or updates an expense_category + */ + public function save_value(array &$expense_category_data, int $expense_category_id = NEW_ENTRY): bool + { + $builder = $this->db->table('expense_categories'); - if($expense_category_id == NEW_ENTRY || !$this->exists($expense_category_id)) - { - if($builder->insert($expense_category_data)) - { - $expense_category_data['expense_category_id'] = $this->db->insertID(); + if($expense_category_id == NEW_ENTRY || !$this->exists($expense_category_id)) + { + if($builder->insert($expense_category_data)) + { + $expense_category_data['expense_category_id'] = $this->db->insertID(); - return true; - } + return true; + } - return false; - } + return false; + } - $builder->where('expense_category_id', $expense_category_id); + $builder->where('expense_category_id', $expense_category_id); - return $builder->update($expense_category_data); - } + return $builder->update($expense_category_data); + } - /** - * Deletes a list of expense_category - */ - public function delete_list(array $expense_category_ids): bool - { - $builder = $this->db->table('expense_categories'); - $builder->whereIn('expense_category_id', $expense_category_ids); + /** + * Deletes a list of expense_category + */ + public function delete_list(array $expense_category_ids): bool + { + $builder = $this->db->table('expense_categories'); + $builder->whereIn('expense_category_id', $expense_category_ids); - return $builder->update(['deleted' => 1]); - } + return $builder->update(['deleted' => 1]); + } - /** - * Gets rows - */ - public function get_found_rows(string $search): int - { - return $this->search($search, 0, 0, 'category_name', 'asc', true); - } + /** + * Gets rows + */ + public function get_found_rows(string $search): int + { + return $this->search($search, 0, 0, 'category_name', 'asc', true); + } - /** - * Perform a search on expense_category - */ - public function search(string $search, ?int $rows = 0, ?int $limit_from = 0, ?string $sort = 'category_name', ?string $order='asc', ?bool $count_only = false) - { - // Set default values - if($rows == null) $rows = 0; - if($limit_from == null) $limit_from = 0; - if($sort == null) $sort = 'category_name'; - if($order == null) $order = 'asc'; - if($count_only == null) $count_only = false; + /** + * Perform a search on expense_category + */ + public function search(string $search, ?int $rows = 0, ?int $limit_from = 0, ?string $sort = 'category_name', ?string $order='asc', ?bool $count_only = false) + { + // Set default values + if($rows == null) $rows = 0; + if($limit_from == null) $limit_from = 0; + if($sort == null) $sort = 'category_name'; + if($order == null) $order = 'asc'; + if($count_only == null) $count_only = false; - $builder = $this->db->table('expense_categories AS expense_categories'); + $builder = $this->db->table('expense_categories AS expense_categories'); - // get_found_rows case - if($count_only) - { - $builder->select('COUNT(expense_categories.expense_category_id) as count'); - } + // get_found_rows case + if($count_only) + { + $builder->select('COUNT(expense_categories.expense_category_id) as count'); + } - $builder->groupStart(); - $builder->like('category_name', $search); - $builder->orLike('category_description', $search); - $builder->groupEnd(); - $builder->where('deleted', 0); + $builder->groupStart(); + $builder->like('category_name', $search); + $builder->orLike('category_description', $search); + $builder->groupEnd(); + $builder->where('deleted', 0); - // get_found_rows case - if($count_only) - { - return $builder->get()->getRow()->count; - } + // get_found_rows case + if($count_only) + { + return $builder->get()->getRow()->count; + } - $builder->orderBy($sort, $order); + $builder->orderBy($sort, $order); - if($rows > 0) - { - $builder->limit($rows, $limit_from); - } + if($rows > 0) + { + $builder->limit($rows, $limit_from); + } - return $builder->get(); - } + return $builder->get(); + } } diff --git a/app/Models/Giftcard.php b/app/Models/Giftcard.php index cbdaa9f24..1e97c2de0 100644 --- a/app/Models/Giftcard.php +++ b/app/Models/Giftcard.php @@ -11,370 +11,370 @@ use stdClass; */ class Giftcard extends Model { - protected $table = 'giftcards'; - protected $primaryKey = 'giftcard_id'; - protected $useAutoIncrement = true; - protected $useSoftDeletes = false; - protected $allowedFields = [ - 'giftcard_number', - 'value', - 'deleted', - 'person_id', - 'record_time' - ]; + protected $table = 'giftcards'; + protected $primaryKey = 'giftcard_id'; + protected $useAutoIncrement = true; + protected $useSoftDeletes = false; + protected $allowedFields = [ + 'giftcard_number', + 'value', + 'deleted', + 'person_id', + 'record_time' + ]; - /** - * Determines if a given giftcard_id is a giftcard - */ - public function exists(int $giftcard_id): bool - { - $builder = $this->db->table('giftcards'); - $builder->where('giftcard_id', $giftcard_id); - $builder->where('deleted', 0); + /** + * Determines if a given giftcard_id is a giftcard + */ + public function exists(int $giftcard_id): bool + { + $builder = $this->db->table('giftcards'); + $builder->where('giftcard_id', $giftcard_id); + $builder->where('deleted', 0); - return ($builder->get()->getNumRows() == 1); //TODO: === - } + return ($builder->get()->getNumRows() == 1); //TODO: === + } - /** - * Gets max gift card number //TODO: This isn't entirely accurate. It returns the object and the results then pulls the giftcard_number - */ - public function get_max_number(): ?object - { - $builder = $this->db->table('giftcards'); - $builder->select('CAST(giftcard_number AS UNSIGNED) AS giftcard_number'); - $builder->where('giftcard_number REGEXP \'^[0-9]+$\''); - $builder->orderBy("giftcard_number","desc"); - $builder->limit(1); + /** + * Gets max gift card number //TODO: This isn't entirely accurate. It returns the object and the results then pulls the giftcard_number + */ + public function get_max_number(): ?object + { + $builder = $this->db->table('giftcards'); + $builder->select('CAST(giftcard_number AS UNSIGNED) AS giftcard_number'); + $builder->where('giftcard_number REGEXP \'^[0-9]+$\''); + $builder->orderBy("giftcard_number","desc"); + $builder->limit(1); - return $builder->get()->getRow(); - } + return $builder->get()->getRow(); + } - /** - * Gets total of rows - */ - public function get_total_rows(): int - { - $builder = $this->db->table('giftcards'); - $builder->where('deleted', 0); + /** + * Gets total of rows + */ + public function get_total_rows(): int + { + $builder = $this->db->table('giftcards'); + $builder->where('deleted', 0); - return $builder->countAllResults(); - } + return $builder->countAllResults(); + } - /** - * Gets information about a particular giftcard - */ - public function get_info(int $giftcard_id): object - { - $builder = $this->db->table('giftcards'); - $builder->join('people', 'people.person_id = giftcards.person_id', 'left'); - $builder->where('giftcard_id', $giftcard_id); - $builder->where('deleted', 0); + /** + * Gets information about a particular giftcard + */ + public function get_info(int $giftcard_id): object + { + $builder = $this->db->table('giftcards'); + $builder->join('people', 'people.person_id = giftcards.person_id', 'left'); + $builder->where('giftcard_id', $giftcard_id); + $builder->where('deleted', 0); - $query = $builder->get(); + $query = $builder->get(); - if($query->getNumRows() == 1) //TODO: === - { - return $query->getRow(); - } - else //TODO: No need for this else statement. Just put it's contents outside of the else since the if has a return in it. - { - return $this->getEmptyObject('giftcards'); - } - } + if($query->getNumRows() == 1) //TODO: === + { + return $query->getRow(); + } + else //TODO: No need for this else statement. Just put it's contents outside of the else since the if has a return in it. + { + return $this->getEmptyObject('giftcards'); + } + } - /** - * Initializes an empty object based on database definitions - * @param string $table_name - * @return object - */ - private function getEmptyObject(string $table_name): object - { - // Return an empty base parent object, as $item_id is NOT an item - $empty_obj = new stdClass(); + /** + * Initializes an empty object based on database definitions + * @param string $table_name + * @return object + */ + private function getEmptyObject(string $table_name): object + { + // Return an empty base parent object, as $item_id is NOT an item + $empty_obj = new stdClass(); - // Iterate through field definitions to determine how the fields should be initialized - foreach($this->db->getFieldData($table_name) as $field) - { - $field_name = $field->name; + // Iterate through field definitions to determine how the fields should be initialized + foreach($this->db->getFieldData($table_name) as $field) + { + $field_name = $field->name; - if(in_array($field->type, ['int', 'tinyint', 'decimal'])) - { - $empty_obj->$field_name = ($field->primary_key == 1) ? NEW_ENTRY : 0; - } - else - { - $empty_obj->$field_name = null; - } - } + if(in_array($field->type, ['int', 'tinyint', 'decimal'])) + { + $empty_obj->$field_name = ($field->primary_key == 1) ? NEW_ENTRY : 0; + } + else + { + $empty_obj->$field_name = null; + } + } - return $empty_obj; - } + return $empty_obj; + } - /** - * Gets a giftcard id given a giftcard number - */ - public function get_giftcard_id(string $giftcard_number): bool - { - $builder = $this->db->table('giftcards'); - $builder->where('giftcard_number', $giftcard_number); - $builder->where('deleted', 0); + /** + * Gets a giftcard id given a giftcard number + */ + public function get_giftcard_id(string $giftcard_number): bool + { + $builder = $this->db->table('giftcards'); + $builder->where('giftcard_number', $giftcard_number); + $builder->where('deleted', 0); - $query = $builder->get(); + $query = $builder->get(); - if($query->getNumRows() == 1) //TODO: === - { - return $query->getRow()->giftcard_id; - } + if($query->getNumRows() == 1) //TODO: === + { + return $query->getRow()->giftcard_id; + } - return false; - } + return false; + } - /** - * Gets information about multiple giftcards - */ - public function get_multiple_info(array $giftcard_ids): ResultInterface - { - $builder = $this->db->table('giftcards'); - $builder->whereIn('giftcard_id', $giftcard_ids); - $builder->where('deleted', 0); - $builder->orderBy('giftcard_number', 'asc'); + /** + * Gets information about multiple giftcards + */ + public function get_multiple_info(array $giftcard_ids): ResultInterface + { + $builder = $this->db->table('giftcards'); + $builder->whereIn('giftcard_id', $giftcard_ids); + $builder->where('deleted', 0); + $builder->orderBy('giftcard_number', 'asc'); - return $builder->get(); - } + return $builder->get(); + } - /** - * Inserts or updates a giftcard - */ - public function save_value(array &$giftcard_data, int $giftcard_id = NEW_ENTRY): bool - { - $builder = $this->db->table('giftcards'); + /** + * Inserts or updates a giftcard + */ + public function save_value(array &$giftcard_data, int $giftcard_id = NEW_ENTRY): bool + { + $builder = $this->db->table('giftcards'); - if($giftcard_id == NEW_ENTRY || !$this->exists($giftcard_id)) - { - if($builder->insert($giftcard_data)) - { - $giftcard_data['giftcard_number'] = $this->db->insertID(); - $giftcard_data['giftcard_id'] = $this->db->insertID(); + if($giftcard_id == NEW_ENTRY || !$this->exists($giftcard_id)) + { + if($builder->insert($giftcard_data)) + { + $giftcard_data['giftcard_number'] = $this->db->insertID(); + $giftcard_data['giftcard_id'] = $this->db->insertID(); - return true; - } + return true; + } - return false; - } + return false; + } - $builder->where('giftcard_id', $giftcard_id); + $builder->where('giftcard_id', $giftcard_id); - return $builder->update($giftcard_data); - } + return $builder->update($giftcard_data); + } - /** - * Updates multiple giftcards at once - */ - public function update_multiple(array $giftcard_data, array $giftcard_ids): bool //TODO: This function appears to never be used in the code. - { - $builder = $this->db->table('giftcards'); - $builder->whereIn('giftcard_id', $giftcard_ids); + /** + * Updates multiple giftcards at once + */ + public function update_multiple(array $giftcard_data, array $giftcard_ids): bool //TODO: This function appears to never be used in the code. + { + $builder = $this->db->table('giftcards'); + $builder->whereIn('giftcard_id', $giftcard_ids); - return $builder->update($giftcard_data); - } + return $builder->update($giftcard_data); + } - /** - * Deletes one giftcard - */ - public function delete($giftcard_id = null, bool $purge = false): bool - { - $builder = $this->db->table('giftcards'); - $builder->where('giftcard_id', $giftcard_id); + /** + * Deletes one giftcard + */ + public function delete($giftcard_id = null, bool $purge = false): bool + { + $builder = $this->db->table('giftcards'); + $builder->where('giftcard_id', $giftcard_id); - return $builder->update(['deleted' => 1]); - } + return $builder->update(['deleted' => 1]); + } - /** - * Deletes a list of giftcards - */ - public function delete_list(array $giftcard_ids): bool - { - $builder = $this->db->table('giftcards'); - $builder->whereIn('giftcard_id', $giftcard_ids); + /** + * Deletes a list of giftcards + */ + public function delete_list(array $giftcard_ids): bool + { + $builder = $this->db->table('giftcards'); + $builder->whereIn('giftcard_id', $giftcard_ids); - return $builder->update(['deleted' => 1]); - } + return $builder->update(['deleted' => 1]); + } - /** - * Get search suggestions to find giftcards - */ - public function get_search_suggestions(string $search, int $limit = 25): array - { - $suggestions = []; + /** + * Get search suggestions to find giftcards + */ + public function get_search_suggestions(string $search, int $limit = 25): array + { + $suggestions = []; - $builder = $this->db->table('giftcards'); - $builder->like('giftcard_number', $search); - $builder->where('deleted', 0); - $builder->orderBy('giftcard_number', 'asc'); + $builder = $this->db->table('giftcards'); + $builder->like('giftcard_number', $search); + $builder->where('deleted', 0); + $builder->orderBy('giftcard_number', 'asc'); - foreach($builder->get()->getResult() as $row) - { - $suggestions[]= ['label' => $row->giftcard_number]; - } + foreach($builder->get()->getResult() as $row) + { + $suggestions[]= ['label' => $row->giftcard_number]; + } - $builder = $this->db->table('customers'); - $builder->join('people', 'customers.person_id = people.person_id', 'left'); - $builder->groupStart(); - $builder->like('first_name', $search); - $builder->orLike('last_name', $search); - $builder->orLike('CONCAT(first_name, " ", last_name)', $search); - $builder->groupEnd(); - $builder->where('deleted', 0); - $builder->orderBy('last_name', 'asc'); + $builder = $this->db->table('customers'); + $builder->join('people', 'customers.person_id = people.person_id', 'left'); + $builder->groupStart(); + $builder->like('first_name', $search); + $builder->orLike('last_name', $search); + $builder->orLike('CONCAT(first_name, " ", last_name)', $search); + $builder->groupEnd(); + $builder->where('deleted', 0); + $builder->orderBy('last_name', 'asc'); - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = ['label' => $row->first_name.' '.$row->last_name]; - } + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = ['label' => $row->first_name.' '.$row->last_name]; + } - //only return $limit suggestions - if(count($suggestions) > $limit) - { - $suggestions = array_slice($suggestions, 0, $limit); - } + //only return $limit suggestions + if(count($suggestions) > $limit) + { + $suggestions = array_slice($suggestions, 0, $limit); + } - return $suggestions; - } + return $suggestions; + } - /** - * Gets gift cards - */ - public function get_found_rows(string $search): int - { - return $this->search($search, 0, 0, 'giftcard_number', 'asc', true); - } + /** + * Gets gift cards + */ + public function get_found_rows(string $search): int + { + return $this->search($search, 0, 0, 'giftcard_number', 'asc', true); + } - /** - * Performs a search on giftcards - */ - public function search(string $search, ?int $rows = 0, ?int $limit_from = 0, ?string $sort = 'giftcard_number', ?string $order = 'asc', ?bool $count_only = false) - { - // Set default values - if($rows == null) $rows = 0; - if($limit_from == null) $limit_from = 0; - if($sort == null) $sort = 'giftcard_number'; - if($order == null) $order = 'asc'; - if($count_only == null) $count_only = false; + /** + * Performs a search on giftcards + */ + public function search(string $search, ?int $rows = 0, ?int $limit_from = 0, ?string $sort = 'giftcard_number', ?string $order = 'asc', ?bool $count_only = false) + { + // Set default values + if($rows == null) $rows = 0; + if($limit_from == null) $limit_from = 0; + if($sort == null) $sort = 'giftcard_number'; + if($order == null) $order = 'asc'; + if($count_only == null) $count_only = false; - // Set default values - if($rows == null) $rows = 0; - if($limit_from == null) $limit_from = 0; - if($sort == null) $sort = 'giftcard_number'; - if($order == null) $order = 'asc'; - if($count_only == null) $count_only = false; + // Set default values + if($rows == null) $rows = 0; + if($limit_from == null) $limit_from = 0; + if($sort == null) $sort = 'giftcard_number'; + if($order == null) $order = 'asc'; + if($count_only == null) $count_only = false; - $builder = $this->db->table('giftcards'); + $builder = $this->db->table('giftcards'); - // get_found_rows case - if($count_only) //TODO: replace this with `if($count_only)` - { - $builder->select('COUNT(giftcard_id) as count'); - } + // get_found_rows case + if($count_only) //TODO: replace this with `if($count_only)` + { + $builder->select('COUNT(giftcard_id) as count'); + } - $builder->join('people AS person', 'giftcards.person_id = person.person_id', 'left'); - $builder->groupStart(); - $builder->like('person.first_name', $search); - $builder->orLike('person.last_name', $search); - $builder->orLike('CONCAT(person.first_name, " ", person.last_name)', $search); - $builder->orLike('giftcards.giftcard_number', $search); - $builder->orLike('giftcards.person_id', $search); - $builder->groupEnd(); - $builder->where('giftcards.deleted', 0); + $builder->join('people AS person', 'giftcards.person_id = person.person_id', 'left'); + $builder->groupStart(); + $builder->like('person.first_name', $search); + $builder->orLike('person.last_name', $search); + $builder->orLike('CONCAT(person.first_name, " ", person.last_name)', $search); + $builder->orLike('giftcards.giftcard_number', $search); + $builder->orLike('giftcards.person_id', $search); + $builder->groupEnd(); + $builder->where('giftcards.deleted', 0); - // get_found_rows case - if($count_only) - { - return $builder->get()->getRow()->count; - } + // get_found_rows case + if($count_only) + { + return $builder->get()->getRow()->count; + } - $builder->orderBy($sort, $order); + $builder->orderBy($sort, $order); - if($rows > 0) - { - $builder->limit($rows, $limit_from); - } + if($rows > 0) + { + $builder->limit($rows, $limit_from); + } - return $builder->get(); - } + return $builder->get(); + } - /** - * Gets gift card value - */ - public function get_giftcard_value(string $giftcard_number): float //TODO: we may need to do a search for all float values and for currencies cast them to strings at the point where we get them from the database. - { - if(!$this->exists($this->get_giftcard_id($giftcard_number))) - { - return 0; - } + /** + * Gets gift card value + */ + public function get_giftcard_value(string $giftcard_number): float //TODO: we may need to do a search for all float values and for currencies cast them to strings at the point where we get them from the database. + { + if(!$this->exists($this->get_giftcard_id($giftcard_number))) + { + return 0; + } - $builder = $this->db->table('giftcards'); - $builder->where('giftcard_number', $giftcard_number); + $builder = $this->db->table('giftcards'); + $builder->where('giftcard_number', $giftcard_number); - return $builder->get()->getRow()->value; - } + return $builder->get()->getRow()->value; + } - /** - * Updates gift card value - */ - public function update_giftcard_value(string $giftcard_number, float $value): void //TODO: Should we return the value of update like other similar functions do? - { - $builder = $this->db->table('giftcards'); - $builder->where('giftcard_number', $giftcard_number); - $builder->update(['value' => $value]); - } + /** + * Updates gift card value + */ + public function update_giftcard_value(string $giftcard_number, float $value): void //TODO: Should we return the value of update like other similar functions do? + { + $builder = $this->db->table('giftcards'); + $builder->where('giftcard_number', $giftcard_number); + $builder->update(['value' => $value]); + } - /** - * Determines if a given giftcard_name exists - */ - public function exists_giftcard_name($giftcard_name): bool - { - $giftcard_name = strtoupper($giftcard_name); + /** + * Determines if a given giftcard_name exists + */ + public function exists_giftcard_name($giftcard_name): bool + { + $giftcard_name = strtoupper($giftcard_name); - $builder = $this->db->table('giftcards'); - $builder->where('giftcard_number', $giftcard_name); - $builder->where('deleted', 0); + $builder = $this->db->table('giftcards'); + $builder->where('giftcard_number', $giftcard_name); + $builder->where('deleted', 0); - return ($builder->get()->getNumRows() == 1); //TODO: === - } + return ($builder->get()->getNumRows() == 1); //TODO: === + } - /** - * Generate unique gift card name/number - */ - public function generate_unique_giftcard_name(string $value): string - { - $value = str_replace('.', 'DE', $value); - $random = bin2hex(openssl_random_pseudo_bytes(3)); - $giftcard_name = "$random-$value"; + /** + * Generate unique gift card name/number + */ + public function generate_unique_giftcard_name(string $value): string + { + $value = str_replace('.', 'DE', $value); + $random = bin2hex(openssl_random_pseudo_bytes(3)); + $giftcard_name = "$random-$value"; - if($this->exists_giftcard_name($giftcard_name)) - { - $this->generate_unique_giftcard_name($value); - } + if($this->exists_giftcard_name($giftcard_name)) + { + $this->generate_unique_giftcard_name($value); + } - return strtoupper($giftcard_name); - } + return strtoupper($giftcard_name); + } - /** - * Gets gift card customer_id by gift card number - * - * @param string $giftcard_number Gift card number - * @return int The customer_id of the gift card if it exists, 0 otherwise. - */ - public function get_giftcard_customer(string $giftcard_number): int - { - if(!$this->exists($this->get_giftcard_id($giftcard_number))) - { - return 0; - } + /** + * Gets gift card customer_id by gift card number + * + * @param string $giftcard_number Gift card number + * @return int The customer_id of the gift card if it exists, 0 otherwise. + */ + public function get_giftcard_customer(string $giftcard_number): int + { + if(!$this->exists($this->get_giftcard_id($giftcard_number))) + { + return 0; + } - $builder = $this->db->table('giftcards'); - $builder->where('giftcard_number', $giftcard_number); + $builder = $this->db->table('giftcards'); + $builder->where('giftcard_number', $giftcard_number); - return $builder->get()->getRow()->person_id; - } + return $builder->get()->getRow()->person_id; + } } diff --git a/app/Models/Inventory.php b/app/Models/Inventory.php index 33f228f68..56127e804 100644 --- a/app/Models/Inventory.php +++ b/app/Models/Inventory.php @@ -13,91 +13,91 @@ use CodeIgniter\Model; */ class Inventory extends Model { - protected $table = 'inventory'; - protected $primaryKey = 'trans_id'; - protected $useAutoIncrement = true; - protected $useSoftDeletes = false; - protected $allowedFields = [ - 'trans_items', - 'trans_user', - 'trans_date', - 'trans_comment', - 'trans_inventory', - 'trans_location' - ]; + protected $table = 'inventory'; + protected $primaryKey = 'trans_id'; + protected $useAutoIncrement = true; + protected $useSoftDeletes = false; + protected $allowedFields = [ + 'trans_items', + 'trans_user', + 'trans_date', + 'trans_comment', + 'trans_inventory', + 'trans_location' + ]; - /** - * @param $comment - * @param $inventory_data - * @return bool - */ - public function update($comment = null, $inventory_data = null): bool - { - $builder = $this->db->table('inventory'); - $builder->where('trans_comment', $comment); + /** + * @param $comment + * @param $inventory_data + * @return bool + */ + public function update($comment = null, $inventory_data = null): bool + { + $builder = $this->db->table('inventory'); + $builder->where('trans_comment', $comment); - return $builder->update($inventory_data); - } + return $builder->update($inventory_data); + } - /** - * Retrieves inventory data given an item_id. - * - * @param int $item_id - * @param bool $location_id - * @return ResultInterface - */ - public function get_inventory_data_for_item(int $item_id, bool $location_id = false): ResultInterface - { - $builder = $this->db->table('inventory'); - $builder->where('trans_items', $item_id); + /** + * Retrieves inventory data given an item_id. + * + * @param int $item_id + * @param bool $location_id + * @return ResultInterface + */ + public function get_inventory_data_for_item(int $item_id, bool $location_id = false): ResultInterface + { + $builder = $this->db->table('inventory'); + $builder->where('trans_items', $item_id); - if($location_id) + if($location_id) { $builder->where('trans_location', $location_id); } - $builder->orderBy('trans_date', 'desc'); + $builder->orderBy('trans_date', 'desc'); - return $builder->get(); - } + return $builder->get(); + } - /** - * @param int $item_id ID number for the item to have quantity reset. - * @return bool|int|string The row id of the inventory table on insert or false on failure - */ - public function reset_quantity(int $item_id): bool|int|string - { - $inventory_sums = $this->get_inventory_sum($item_id); - foreach($inventory_sums as $inventory_sum) - { - if($inventory_sum['sum'] > 0) - { - $employee = model(Employee::class); + /** + * @param int $item_id ID number for the item to have quantity reset. + * @return bool|int|string The row id of the inventory table on insert or false on failure + */ + public function reset_quantity(int $item_id): bool|int|string + { + $inventory_sums = $this->get_inventory_sum($item_id); + foreach($inventory_sums as $inventory_sum) + { + if($inventory_sum['sum'] > 0) + { + $employee = model(Employee::class); - return $this->insert([ - 'trans_inventory' => -1 * $inventory_sum['sum'], - 'trans_items' => $item_id, - 'trans_location' => $inventory_sum['location_id'], - 'trans_comment' => lang('Items.is_deleted'), - 'trans_user' => $employee->get_logged_in_employee_info()->person_id - ]); - } - } + return $this->insert([ + 'trans_inventory' => -1 * $inventory_sum['sum'], + 'trans_items' => $item_id, + 'trans_location' => $inventory_sum['location_id'], + 'trans_comment' => lang('Items.is_deleted'), + 'trans_user' => $employee->get_logged_in_employee_info()->person_id + ]); + } + } - return true; - } + return true; + } - /** - * @param int $item_id - * @return array - */ - public function get_inventory_sum(int $item_id): array - { - $builder = $this->db->table('inventory'); - $builder->select('SUM(trans_inventory) AS sum, MAX(trans_location) AS location_id'); - $builder->where('trans_items', $item_id); - $builder->groupBy('trans_location'); + /** + * @param int $item_id + * @return array + */ + public function get_inventory_sum(int $item_id): array + { + $builder = $this->db->table('inventory'); + $builder->select('SUM(trans_inventory) AS sum, MAX(trans_location) AS location_id'); + $builder->where('trans_items', $item_id); + $builder->groupBy('trans_location'); - return $builder->get()->getResultArray(); - } + return $builder->get()->getResultArray(); + } } diff --git a/app/Models/Item.php b/app/Models/Item.php index 9f88b5185..1701e0143 100644 --- a/app/Models/Item.php +++ b/app/Models/Item.php @@ -16,1200 +16,1200 @@ use stdClass; */ class Item extends Model { - protected $table = 'items'; - protected $primaryKey = 'item_id'; - protected $useAutoIncrement = true; - protected $useSoftDeletes = false; - protected $allowedFields = [ - 'name', - 'category', - 'supplier_id', - 'item_number', - 'description', - 'cost_price', - 'unit_price', - 'reorder_level', - 'allow_alt_description', - 'is_serialized', - 'deleted', - 'stock_type', - 'item_type', - 'tax_category_id', - 'receiving_quantity', - 'pic_filename', - 'qty_per_pack', - 'pack_name', - 'low_sell_item_id', - 'hsn_code' - ]; - - - /** - * Determines if a given item_id is an item - */ - public function exists(int $item_id, bool $ignore_deleted = false, bool $deleted = false): bool - { - $builder = $this->db->table('items'); - $builder->where('item_id', $item_id); - - if(!$ignore_deleted) - { - $builder->where('deleted', $deleted); - } - - return ($builder->get()->getNumRows() === 1); - } - - /** - * Determines if a given item_number exists - */ - public function item_number_exists(string $item_number, string $item_id = ''): bool - { - $config = config(OSPOS::class)->settings; - - if($config['allow_duplicate_barcodes']) - { - return false; - } - - $builder = $this->db->table('items'); - $builder->where('item_number', $item_number); - $builder->where('deleted !=', 1); - $builder->where('item_id !=', intval($item_id)); - -// // check if $item_id is a number and not a string starting with 0 -// // because cases like 00012345 will be seen as a number where it is a barcode - if(ctype_digit($item_id) && !str_starts_with($item_id, '0')) - { - $builder->where('item_id !=', intval($item_id)); - } - return ($builder->get()->getNumRows()) >= 1; - } - - /** - * Gets total of rows - */ - public function get_total_rows(): int - { - $builder = $this->db->table('items'); - $builder->where('deleted', 0); - - return $builder->countAllResults(); - } - - /** - * @param int $tax_category_id - * @return int - */ - public function get_tax_category_usage(int $tax_category_id): int //TODO: This function is never called in the code. - { - $builder = $this->db->table('items'); - $builder->where('tax_category_id', $tax_category_id); - - return $builder->countAllResults(); - } - - /** - * Get number of rows - */ - public function get_found_rows(string $search, array $filters): int - { - return $this->search($search, $filters, 0, 0, 'items.name', 'asc', true); - } - - /** - * Perform a search on items - */ - public function search(string $search, array $filters, ?int $rows = 0, ?int $limit_from = 0, ?string $sort = 'items.name', ?string $order = 'asc', ?bool $count_only = false) - { - // Set default values - if($rows == null) - { - $rows = 0; - } - if($limit_from == null) - { - $limit_from = 0; - } - if($sort == null) - { - $sort = 'items.name'; - } - if($order == null) - { - $order = 'asc'; - } - if($count_only == null) - { - $count_only = false; - } - - $config = config(OSPOS::class)->settings; - $builder = $this->db->table('items AS items'); //TODO: I'm not sure if it's needed to write items AS items... I think you can just get away with items - - // get_found_rows case - if($count_only) - { - $builder->select('COUNT(DISTINCT items.item_id) AS count'); - } - else - { - $builder->select('MAX(items.item_id) AS item_id'); - $builder->select('MAX(items.name) AS name'); - $builder->select('MAX(items.category) AS category'); - $builder->select('MAX(items.supplier_id) AS supplier_id'); - $builder->select('MAX(items.item_number) AS item_number'); - $builder->select('MAX(items.description) AS description'); - $builder->select('MAX(items.cost_price) AS cost_price'); - $builder->select('MAX(items.unit_price) AS unit_price'); - $builder->select('MAX(items.reorder_level) AS reorder_level'); - $builder->select('MAX(items.receiving_quantity) AS receiving_quantity'); - $builder->select('MAX(items.pic_filename) AS pic_filename'); - $builder->select('MAX(items.allow_alt_description) AS allow_alt_description'); - $builder->select('MAX(items.is_serialized) AS is_serialized'); - $builder->select('MAX(items.pack_name) AS pack_name'); - $builder->select('MAX(items.tax_category_id) AS tax_category_id'); - $builder->select('MAX(items.deleted) AS deleted'); - - $builder->select('MAX(suppliers.person_id) AS person_id'); - $builder->select('MAX(suppliers.company_name) AS company_name'); - $builder->select('MAX(suppliers.agency_name) AS agency_name'); - $builder->select('MAX(suppliers.account_number) AS account_number'); - $builder->select('MAX(suppliers.deleted) AS deleted'); - - $builder->select('MAX(inventory.trans_id) AS trans_id'); - $builder->select('MAX(inventory.trans_items) AS trans_items'); - $builder->select('MAX(inventory.trans_user) AS trans_user'); - $builder->select('MAX(inventory.trans_date) AS trans_date'); - $builder->select('MAX(inventory.trans_comment) AS trans_comment'); - $builder->select('MAX(inventory.trans_location) AS trans_location'); - $builder->select('MAX(inventory.trans_inventory) AS trans_inventory'); - - if($filters['stock_location_id'] > -1) - { - $builder->select('MAX(item_quantities.item_id) AS qty_item_id'); - $builder->select('MAX(item_quantities.location_id) AS location_id'); - $builder->select('MAX(item_quantities.quantity) AS quantity'); - } - } - - $builder->join('suppliers AS suppliers', 'suppliers.person_id = items.supplier_id', 'left'); - $builder->join('inventory AS inventory', 'inventory.trans_items = items.item_id'); - - if($filters['stock_location_id'] > -1) - { - $builder->join('item_quantities AS item_quantities', 'item_quantities.item_id = items.item_id'); - $builder->where('location_id', $filters['stock_location_id']); - } - - $where = empty($config['date_or_time_format']) - ? 'DATE_FORMAT(trans_date, "%Y-%m-%d") BETWEEN ' . $this->db->escape($filters['start_date']) . ' AND ' . $this->db->escape($filters['end_date']) - : 'trans_date BETWEEN ' . $this->db->escape(rawurldecode($filters['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($filters['end_date'])); - $builder->where($where); - - $attributes_enabled = count($filters['definition_ids']) > 0; - - if(!empty($search)) - { - if($attributes_enabled && $filters['search_custom']) - { - $builder->having("attribute_values LIKE '%$search%'"); - $builder->orHaving("attribute_dtvalues LIKE '%$search%'"); - $builder->orHaving("attribute_dvalues LIKE '%$search%'"); - } - else - { - $builder->groupStart(); - $builder->like('name', $search); - $builder->orLike('item_number', $search); - $builder->orLike('items.item_id', $search); - $builder->orLike('company_name', $search); - $builder->orLike('items.category', $search); - $builder->groupEnd(); - } - } - - if($attributes_enabled) - { - $format = $this->db->escape(dateformat_mysql()); - $this->db->simpleQuery('SET SESSION group_concat_max_len=49152'); - $builder->select('GROUP_CONCAT(DISTINCT CONCAT_WS(\'_\', definition_id, attribute_value) ORDER BY definition_id SEPARATOR \'|\') AS attribute_values'); - $builder->select("GROUP_CONCAT(DISTINCT CONCAT_WS('_', definition_id, DATE_FORMAT(attribute_date, $format)) SEPARATOR '|') AS attribute_dtvalues"); - $builder->select('GROUP_CONCAT(DISTINCT CONCAT_WS(\'_\', definition_id, attribute_decimal) SEPARATOR \'|\') AS attribute_dvalues'); - $builder->join('attribute_links', 'attribute_links.item_id = items.item_id AND attribute_links.receiving_id IS NULL AND attribute_links.sale_id IS NULL AND definition_id IN (' . implode(',', $filters['definition_ids']) . ')', 'left'); - $builder->join('attribute_values', 'attribute_values.attribute_id = attribute_links.attribute_id', 'left'); - } - - $builder->where('items.deleted', $filters['is_deleted']); - - if($filters['empty_upc']) - { - $builder->where('item_number', null); - } - if($filters['low_inventory']) - { - $builder->where('quantity <=', 'reorder_level'); - } - if($filters['is_serialized']) - { - $builder->where('is_serialized', 1); - } - if($filters['no_description']) - { - $builder->where('items.description', ''); - } - if($filters['temporary']) - { - $builder->where('items.item_type', ITEM_TEMP); - } - else - { - $non_temp = [ITEM, ITEM_KIT, ITEM_AMOUNT_ENTRY]; - $builder->whereIn('items.item_type', $non_temp); - } - - // get_found_rows case - if($count_only) - { - return $builder->get()->getRow()->count; - } - - // avoid duplicated entries with same name because of inventory reporting multiple changes on the same item in the same date range - $builder->groupBy('items.item_id'); - - // order by name of item by default - $builder->orderBy($sort, $order); - - if($rows > 0) - { - $builder->limit($rows, $limit_from); - } - - return $builder->get(); - } - - /** - * Returns all the items - */ - public function get_all(int $stock_location_id = NEW_ENTRY, int $rows = 0, int $limit_from = 0): ResultInterface - { - $builder = $this->db->table('items'); - - if($stock_location_id > -1) - { - $builder->join('item_quantities', 'item_quantities.item_id = items.item_id'); - $builder->where('location_id', $stock_location_id); - } - - $builder->where('items.deleted', 0); - - // order by name of item - $builder->orderBy('items.name', 'asc'); - - if($rows > 0) - { - $builder->limit($rows, $limit_from); - } - - return $builder->get(); - } - - /** - * Gets information about a particular item - */ - public function get_info(int $item_id): object - { - $builder = $this->db->table('items'); - $builder->select('items.*'); - $builder->select('GROUP_CONCAT(attribute_value SEPARATOR \'|\') AS attribute_values'); - $builder->select('GROUP_CONCAT(attribute_decimal SEPARATOR \'|\') AS attribute_dvalues'); - $builder->select('GROUP_CONCAT(attribute_date SEPARATOR \'|\') AS attribute_dtvalues'); - $builder->join('attribute_links', 'attribute_links.item_id = items.item_id', 'left'); - $builder->join('attribute_values', 'attribute_links.attribute_id = attribute_values.attribute_id', 'left'); - $builder->where('items.item_id', $item_id); - $builder->groupBy('items.item_id'); - - $query = $builder->get(); - - if($query->getNumRows() == 1) - { - return $query->getRow(); - } - - return $this->getEmptyObject('items'); - } - - /** - * Initializes an empty object based on database definitions - * @param string $table_name - * @return object - */ - private function getEmptyObject(string $table_name): object - { - // Return an empty base parent object, as $item_id is NOT an item - $empty_obj = new stdClass(); - - // Iterate through field definitions to determine how the fields should be initialized - foreach($this->db->getFieldData($table_name) as $field) - { - $field_name = $field->name; - - if(in_array($field->type, ['int', 'tinyint', 'decimal'])) - { - $empty_obj->$field_name = ($field->primary_key == 1) ? NEW_ENTRY : 0; - } - else - { - $empty_obj->$field_name = null; - } - } - - return $empty_obj; - } - - /** - * Gets information about a particular item by item id or number - */ - public function get_info_by_id_or_number(int $item_id, bool $include_deleted = true) - { - $builder = $this->db->table('items'); - $builder->groupStart(); - $builder->where('items.item_number', $item_id); - - // check if $item_id is a number and not a string starting with 0 - // because cases like 00012345 will be seen as a number where it is a barcode - if(ctype_digit(strval($item_id)) && !str_starts_with($item_id, '0')) - { - $builder->orWhere('items.item_id', $item_id); - } - - $builder->groupEnd(); - - if(!$include_deleted) - { - $builder->where('items.deleted', 0); - } - - // limit to only 1 so there is a result in case two are returned - // due to barcode and item_id clash - $builder->limit(1); - - $query = $builder->get(); - - if($query->getNumRows() == 1) - { - return $query->getRow(); - } - - return ''; - } - - /** - * Get an item id given an item number - */ - public function get_item_id(string $item_number, bool $ignore_deleted = false, bool $deleted = false): bool - { - $builder = $this->db->table('items'); - $builder->join('suppliers', 'suppliers.person_id = items.supplier_id', 'left'); - $builder->where('item_number', $item_number); - - if(!$ignore_deleted) - { - $builder->where('items.deleted', $deleted); - } - - $query = $builder->get(); - - if($query->getNumRows() == 1) //TODO: === - { - return $query->getRow()->item_id; - } - - return false; - } - - /** - * Gets information about multiple items - */ - public function get_multiple_info(array $item_ids, int $location_id): ResultInterface - { - $format = $this->db->escape(dateformat_mysql()); - - $builder = $this->db->table('items'); - $builder->select('items.*'); - $builder->select('MAX(company_name) AS company_name'); - $builder->select('GROUP_CONCAT(DISTINCT CONCAT_WS(\'_\', definition_id, attribute_value) ORDER BY definition_id SEPARATOR \'|\') AS attribute_values'); - $builder->select("GROUP_CONCAT(DISTINCT CONCAT_WS('_', definition_id, DATE_FORMAT(attribute_date, $format)) ORDER BY definition_id SEPARATOR '|') AS attribute_dtvalues"); - $builder->select('GROUP_CONCAT(DISTINCT CONCAT_WS(\'_\', definition_id, attribute_decimal) ORDER BY definition_id SEPARATOR \'|\') AS attribute_dvalues'); - $builder->select('MAX(quantity) as quantity'); - - $builder->join('suppliers', 'suppliers.person_id = items.supplier_id', 'left'); - $builder->join('item_quantities', 'item_quantities.item_id = items.item_id', 'left'); - $builder->join('attribute_links', 'attribute_links.item_id = items.item_id AND sale_id IS NULL AND receiving_id IS NULL', 'left'); - $builder->join('attribute_values', 'attribute_links.attribute_id = attribute_values.attribute_id', 'left'); - - $builder->where('location_id', $location_id); - $builder->whereIn('items.item_id', $item_ids); - - $builder->groupBy('items.item_id'); - - return $builder->get(); - } - - /** - * Inserts or updates an item - */ - public function save_value(array &$item_data, int $item_id = NEW_ENTRY): bool //TODO: need to bring this in line with parent or change the name - { - $builder = $this->db->table('items'); - - if($item_id < 1 || !$this->exists($item_id, true)) - { - if($builder->insert($item_data)) - { - $item_data['item_id'] = (int)$this->db->insertID(); - if($item_id < 1) - { - $builder = $this->db->table('items'); - $builder->where('item_id', $item_data['item_id']); - $builder->update(['low_sell_item_id' => $item_data['item_id']]); - } - - return true; - } - - return false; - } - else - { - $item_data['item_id'] = $item_id; - } - - $builder = $this->db->table('items'); - $builder->where('item_id', $item_id); - - return $builder->update($item_data); - } - - /** - * Updates multiple items at once - */ - public function update_multiple(array $item_data, string $item_ids): bool - { - $builder = $this->db->table('items'); - $builder->whereIn('item_id', explode(':', $item_ids)); - - return $builder->update($item_data); - } - - /** - * Deletes one item - */ - public function delete($item_id = null, bool $purge = false): bool|int|string - { - $this->db->transStart(); - - // set to 0 quantities - $item_quantity = model(Item_quantity::class); - $item_quantity->reset_quantity($item_id); - - $builder = $this->db->table('items'); - $builder->where('item_id', $item_id); - $success = $builder->update(['deleted' => 1]); - - $inventory = model(Inventory::class); - $success &= $inventory->reset_quantity($item_id); - - $this->db->transComplete(); - - $success &= $this->db->transStatus(); - - return $success; - } - - /** - * Undeletes one item - */ - public function undelete(int $item_id): bool - { - $builder = $this->db->table('items'); - $builder->where('item_id', $item_id); - - return $builder->update(['deleted' => 0]); - } - - /** - * Deletes a list of items - */ - public function delete_list(array $item_ids): bool - { - //Run these queries as a transaction, we want to make sure we do all or nothing - $this->db->transStart(); - - // set to 0 quantities - $item_quantity = model(Item_quantity::class); - $item_quantity->reset_quantity_list($item_ids); - - $builder = $this->db->table('items'); - $builder->whereIn('item_id', $item_ids); - $success = $builder->update(['deleted' => 1]); - - $inventory = model(Inventory::class); - - foreach($item_ids as $item_id) - { - $success &= $inventory->reset_quantity($item_id); - } - - $this->db->transComplete(); - - $success &= $this->db->transStatus(); - - return $success; - } - - /** - * @param string|null $seed - * @return string - */ - public function get_search_suggestion_format(string $seed = null): string - { - $config = config(OSPOS::class)->settings; - $seed .= ',' . $config['suggestions_first_column']; - - if($config['suggestions_second_column'] !== '') - { - $seed .= ',' . $config['suggestions_second_column']; - } - - if($config['suggestions_third_column'] !== '') - { - $seed .= ',' . $config['suggestions_third_column']; - } - - return $seed; - } - - /** - * @param object $result_row - * @return string - */ - public function get_search_suggestion_label(object $result_row): string - { - $config = config(OSPOS::class)->settings; - - $label = ''; - $label1 = $config['suggestions_first_column']; - $label2 = $config['suggestions_second_column']; - $label3 = $config['suggestions_third_column']; - - $this->format_result_numbers($result_row); - - // If multi_pack enabled then if "name" is part of the search suggestions then append pack - if($config['multi_pack_enabled']) - { - $this->append_label($label, $label1, $result_row); - $this->append_label($label, $label2, $result_row); - $this->append_label($label, $label3, $result_row); - } - else - { - $label = $result_row->$label1; - - if($label2 !== '') - { - $label .= NAME_SEPARATOR . $result_row->$label2; - } - - if($label3 !== '') - { - $label .= NAME_SEPARATOR . $result_row->$label3; - } - } - - return $label; - } - - /** - * Converts decimal money values to their correct locale format. - * - * @param object $result_row - * @return void - */ - private function format_result_numbers(object &$result_row): void - { - if(isset($result_row->cost_price)) - { - $result_row->cost_price = to_currency_no_money($result_row->cost_price); - } - if(isset($result_row->unit_price)) - { - $result_row->unit_price = to_currency_no_money($result_row->unit_price); - } - } - - /** - * @param string $label - * @param string $item_field_name - * @param object $item_info - * @return void - */ - private function append_label(string &$label, string $item_field_name, object $item_info): void - { - if($item_field_name !== '') - { - if($label == '') - { - if($item_field_name == 'name') //TODO: This needs to be replaced with Ternary notation if possible - { - $label .= implode(NAME_SEPARATOR, [$item_info->name, $item_info->pack_name]); //TODO: no need for .= operator. If it gets here then that means label is an empty string. - } - else - { - $label .= $item_info->$item_field_name; - } - } - else - { - if($item_field_name == 'name') - { - $label .= implode(NAME_SEPARATOR, ['', $item_info->name, $item_info->pack_name]); - } - else - { - $label .= NAME_SEPARATOR . $item_info->$item_field_name; - } - } - } - } - - /** - * @param string $search - * @param array $filters - * @param bool $unique - * @param int $limit - * @return array - */ - public function get_search_suggestions(string $search, array $filters = ['is_deleted' => false, 'search_custom' => false], bool $unique = false, int $limit = 25): array - { - $suggestions = []; - $non_kit = [ITEM, ITEM_AMOUNT_ENTRY]; - - $builder = $this->db->table('items'); - $builder->select($this->get_search_suggestion_format('item_id, name, pack_name')); - $builder->where('deleted', $filters['is_deleted']); - $builder->whereIn('item_type', $non_kit); // standard, exclude kit items since kits will be picked up later - $builder->like('name', $search);//TODO: this and the next 11 lines are duplicated directly below. We should extract a method here. - $builder->orderBy('name', 'asc'); - - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = ['value' => $row->item_id, 'label' => $this->get_search_suggestion_label($row)]; - } - - $builder = $this->db->table('items'); - $builder->select($this->get_search_suggestion_format('item_id, item_number, pack_name')); - $builder->where('deleted', $filters['is_deleted']); - $builder->whereIn('item_type', $non_kit); // standard, exclude kit items since kits will be picked up later - $builder->like('item_number', $search); - $builder->orderBy('item_number', 'asc'); - - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = ['value' => $row->item_id, 'label' => $this->get_search_suggestion_label($row)]; - } - - if(!$unique) - { - //Search by category - $builder = $this->db->table('items'); - $builder->select('category'); - $builder->where('deleted', $filters['is_deleted']); - $builder->distinct(); //TODO: duplicate code. Refactor method. - $builder->like('category', $search); - $builder->orderBy('category', 'asc'); - - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = ['label' => $row->category]; - } - - $builder = $this->db->table('suppliers'); - - //Search by supplier - $builder->select('company_name'); - $builder->like('company_name', $search); - - // restrict to non deleted companies only if is_deleted is false - $builder->where('deleted', $filters['is_deleted']); - $builder->distinct(); - $builder->orderBy('company_name', 'asc'); - - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = ['label' => $row->company_name]; - } - - //Search by description - $builder = $this->db->table('items'); - $builder->select($this->get_search_suggestion_format('item_id, name, pack_name, description')); - $builder->where('deleted', $filters['is_deleted']); - $builder->like('description', $search); //TODO: duplicate code, refactor method. - $builder->orderBy('description', 'asc'); - - foreach($builder->get()->getResult() as $row) - { - $entry = ['value' => $row->item_id, 'label' => $this->get_search_suggestion_label($row)]; - - if(!array_walk($suggestions, function ($value, $label) use ($entry) - { - return $entry['label'] != $label; - })) - { - $suggestions[] = $entry; - } - } - - //Search in attributes - if($filters['search_custom'] !== false) - { - $builder = $this->db->table('attribute_links'); - $builder->join('attribute_values', 'attribute_links.attribute_id = attribute_values.attribute_id'); - $builder->join('attribute_definitions', 'attribute_definitions.definition_id = attribute_links.definition_id'); - $builder->like('attribute_value', $search); - $builder->where('definition_type', TEXT); - $builder->where('deleted', $filters['is_deleted']); - $builder->whereIn('item_type', $non_kit); // standard, exclude kit items since kits will be picked up later - - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = ['value' => $row->item_id, 'label' => $this->get_search_suggestion_label($row)]; - } - } - } - - //only return $limit suggestions - if(count($suggestions) > $limit) - { - $suggestions = array_slice($suggestions, 0, $limit); - } - - return array_unique($suggestions, SORT_REGULAR); - } - - - /** - * @param string $search - * @param array $filters - * @param bool $unique - * @param int $limit - * @return array - */ - public function get_stock_search_suggestions(string $search, array $filters = ['is_deleted' => false, 'search_custom' => false], bool $unique = false, int $limit = 25): array - { - $suggestions = []; - $non_kit = [ITEM, ITEM_AMOUNT_ENTRY]; - - $builder = $this->db->table('items'); - $builder->select($this->get_search_suggestion_format('item_id, name, pack_name')); - $builder->where('deleted', $filters['is_deleted']); - $builder->whereIn('item_type', $non_kit); // standard, exclude kit items since kits will be picked up later - $builder->where('stock_type', '0'); // stocked items only - $builder->like('name', $search); - $builder->orderBy('name', 'asc'); - - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = ['value' => $row->item_id, 'label' => $this->get_search_suggestion_label($row)]; - } - - $builder = $this->db->table('items'); - $builder->select($this->get_search_suggestion_format('item_id, item_number, pack_name')); - $builder->where('deleted', $filters['is_deleted']); - $builder->whereIn('item_type', $non_kit); // standard, exclude kit items since kits will be picked up later - $builder->where('stock_type', '0'); // stocked items only - $builder->like('item_number', $search); - $builder->orderBy('item_number', 'asc'); - - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = ['value' => $row->item_id, 'label' => $this->get_search_suggestion_label($row)]; - } - - if(!$unique) - { - //Search by category - $builder = $this->db->table('items'); - $builder->select('category'); - $builder->where('deleted', $filters['is_deleted']); - $builder->whereIn('item_type', $non_kit); // standard, exclude kit items since kits will be picked up later - $builder->where('stock_type', '0'); // stocked items only - $builder->distinct(); - $builder->like('category', $search); - $builder->orderBy('category', 'asc'); - - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = ['label' => $row->category]; - } - - //Search by supplier - $builder = $this->db->table('suppliers'); - $builder->select('company_name'); - $builder->like('company_name', $search); - - // restrict to non deleted companies only if is_deleted is false - $builder->where('deleted', $filters['is_deleted']); - $builder->distinct(); - $builder->orderBy('company_name', 'asc'); - - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = ['label' => $row->company_name]; - } - - //Search by description - $builder = $this->db->table('items'); - $builder->select($this->get_search_suggestion_format('item_id, name, pack_name, description')); - $builder->where('deleted', $filters['is_deleted']); - $builder->whereIn('item_type', $non_kit); // standard, exclude kit items since kits will be picked up later - $builder->where('stock_type', '0'); // stocked items only - $builder->like('description', $search); //TODO: duplicated code, refactor method. - $builder->orderBy('description', 'asc'); - - foreach($builder->get()->getResult() as $row) - { - $entry = ['value' => $row->item_id, 'label' => $this->get_search_suggestion_label($row)]; - if(!array_walk($suggestions, function ($value, $label) use ($entry) - { - return $entry['label'] != $label; - })) - { - $suggestions[] = $entry; - } - } - - //Search by custom fields - if($filters['search_custom'] !== false) //TODO: duplicated code. We should refactor out a method... this can be replaced with `if($filters['search_custom']`... no need for the double negative - { - $builder = $this->db->table('attribute_links'); - $builder->join('attribute_values', 'attribute_links.attribute_id = attribute_values.attribute_id'); - $builder->join('attribute_definitions', 'attribute_definitions.definition_id = attribute_links.definition_id'); - $builder->like('attribute_value', $search); - $builder->where('definition_type', TEXT); - $builder->where('stock_type', '0'); // stocked items only - $builder->where('deleted', $filters['is_deleted']); - - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = ['value' => $row->item_id, 'label' => $this->get_search_suggestion_label($row)]; - } - } - } - - //only return $limit suggestions - if(count($suggestions) > $limit) - { - $suggestions = array_slice($suggestions, 0, $limit); - } - - return array_unique($suggestions, SORT_REGULAR); - } - - /** - * @param string $search - * @param array $filters - * @param bool $unique - * @param int $limit - * @return array - */ - public function get_kit_search_suggestions(string $search, array $filters = ['is_deleted' => false, 'search_custom' => false], bool $unique = false, int $limit = 25): array - { - $suggestions = []; - $non_kit = [ITEM, ITEM_AMOUNT_ENTRY]; //TODO: This variable is never used. - - $builder = $this->db->table('items'); - $builder->select('item_id, name'); - $builder->where('deleted', $filters['is_deleted']); - $builder->where('item_type', ITEM_KIT); - $builder->like('name', $search); - $builder->orderBy('name', 'asc'); - - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = ['value' => $row->item_id, 'label' => $row->name]; - } - - $builder = $this->db->table('items'); - $builder->select('item_id, item_number'); - $builder->where('deleted', $filters['is_deleted']); - $builder->like('item_number', $search); - $builder->where('item_type', ITEM_KIT); - $builder->orderBy('item_number', 'asc'); - - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = ['value' => $row->item_id, 'label' => $row->item_number]; - } - - if(!$unique) - { - //Search by category - $builder = $this->db->table('items'); - $builder->select('category'); - $builder->where('deleted', $filters['is_deleted']); - $builder->where('item_type', ITEM_KIT); - $builder->distinct();//TODO: duplicated code, refactor method. - $builder->like('category', $search); - $builder->orderBy('category', 'asc'); - - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = ['label' => $row->category]; - } - - //Search by supplier - $builder = $this->db->table('suppliers'); - $builder->select('company_name'); - $builder->like('company_name', $search); - - // restrict to non deleted companies only if is_deleted is false - $builder->where('deleted', $filters['is_deleted']); - $builder->distinct(); - $builder->orderBy('company_name', 'asc'); - - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = ['label' => $row->company_name]; - } - - //Search by description - $builder = $this->db->table('items'); - $builder->select('item_id, name, description'); - $builder->where('deleted', $filters['is_deleted']); - $builder->where('item_type', ITEM_KIT); - $builder->like('description', $search); - $builder->orderBy('description', 'asc'); - - foreach($builder->get()->getResult() as $row) - { - $entry = ['value' => $row->item_id, 'label' => $row->name]; - if(!array_walk($suggestions, function ($value, $label) use ($entry) - { - return $entry['label'] != $label; - })) - { - $suggestions[] = $entry; - } - } - - //Search in attributes - if($filters['search_custom'] !== false) //TODO: Duplicate code... same as above... no double negatives - { - $builder = $this->db->table('attribute_links'); - $builder->join('attribute_values', 'attribute_links.attribute_id = attribute_values.attribute_id'); - $builder->join('attribute_definitions', 'attribute_definitions.definition_id = attribute_links.definition_id'); - $builder->like('attribute_value', $search); - $builder->where('definition_type', TEXT); - $builder->where('stock_type', '0'); // stocked items only - $builder->where('deleted', $filters['is_deleted']); - - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = ['value' => $row->item_id, 'label' => $this->get_search_suggestion_label($row)]; - } - } - } - - //only return $limit suggestions - if(count($suggestions) > $limit) - { - $suggestions = array_slice($suggestions, 0, $limit); - } - - return array_unique($suggestions, SORT_REGULAR); - } - - /** - * @param string $search - * @return array - */ - public function get_low_sell_suggestions(string $search): array - { - $suggestions = []; - - $builder = $this->db->table('items'); - $builder->select($this->get_search_suggestion_format('item_id, pack_name')); - $builder->where('deleted', '0'); - $builder->where('stock_type', '0'); // stocked items only //TODO: '0' should be replaced with a constant. - $builder->like('name', $search); - $builder->orderBy('name', 'asc'); - - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = ['value' => $row->item_id, 'label' => $this->get_search_suggestion_label($row)]; - } - - return $suggestions; - } - - /** - * @param string $search - * @return array - */ - public function get_category_suggestions(string $search): array - { - $suggestions = []; - - $builder = $this->db->table('items'); - $builder->distinct(); - $builder->select('category'); - $builder->like('category', $search); - $builder->where('deleted', 0); - $builder->orderBy('category', 'asc'); - - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = ['label' => $row->category]; - } - - return $suggestions; - } - - /** - * @param string $search - * @return array - */ - public function get_location_suggestions(string $search): array - { - $suggestions = []; - - $builder = $this->db->table('items'); - $builder->distinct(); - $builder->select('location'); - $builder->like('location', $search); - $builder->where('deleted', 0); - $builder->orderBy('location', 'asc'); - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = ['label' => $row->location]; - } - - return $suggestions; - } - - /** - * @return ResultInterface|false|string - */ - public function get_categories(): ResultInterface|bool //TODO: This function is never called in the code. - { - $builder = $this->db->table('items'); - $builder->select('category'); - $builder->where('deleted', 0); - $builder->distinct(); - $builder->orderBy('category', 'asc'); - - return $builder->get(); - } - - /** - * changes the cost price of a given item - * calculates the average price between received items and items on stock - * $item_id : the item which price should be changed - * $items_received : the amount of new items received - * $new_price : the cost-price for the newly received items - * $old_price (optional) : the current-cost-price - * - * used in receiving-process to update cost-price if changed - * caution: must be used before item_quantities gets updated, otherwise the average price is wrong! - * - */ - public function change_cost_price(int $item_id, float $items_received, float $new_price, float $old_price = null): bool - { - if($old_price === null) - { - $item_info = $this->get_info($item_id); - $old_price = $item_info->cost_price; - } - - $builder = $this->db->table('item_quantities'); - $builder->selectSum('quantity'); - $builder->where('item_id', $item_id); - $builder->join('stock_locations', 'stock_locations.location_id=item_quantities.location_id'); - $builder->where('stock_locations.deleted', 0); - $old_total_quantity = $builder->get()->getRow()->quantity; - - $total_quantity = $old_total_quantity + $items_received; - $average_price = bcdiv(bcadd(bcmul((string)$items_received, (string)$new_price), bcmul((string)$old_total_quantity, (string)$old_price)), (string)$total_quantity); - - $data = ['cost_price' => $average_price]; - - return $this->save_value($data, $item_id); - } - - /** - * @param int $item_id - * @param string $item_number - * @return void - */ - public function update_item_number(int $item_id, string $item_number): void - { - $builder = $this->db->table('items'); - $builder->where('item_id', $item_id); - $builder->update(['item_number' => $item_number]); //TODO: this function should probably return the result of update() and add ": bool" to the function signature - } - - /** - * @param int $item_id - * @param string $item_name - * @return void - */ - public function update_item_name(int $item_id, string $item_name): void //TODO: this function should probably return the result of update() and add ": bool" to the function signature - { - $builder = $this->db->table('items'); - $builder->where('item_id', $item_id); - $builder->update(['name' => $item_name]); - } - - /** - * @param int $item_id - * @param string $item_description - * @return void - */ - public function update_item_description(int $item_id, string $item_description): void //TODO: this function should probably return the result of update() and add ": bool" to the function signature - { - $builder = $this->db->table('items'); - $builder->where('item_id', $item_id); - $builder->update(['description' => $item_description]); - } - - /** - * Determine the item name to use taking into consideration that - * for a multipack environment then the item name should have the - * pack appended to it - */ - public function get_item_name(string $as_name = null): string - { - $config = config(OSPOS::class)->settings; - - if($as_name == null) //TODO: Replace with ternary notation - { - $as_name = ''; - } - else - { - $as_name = ' AS ' . $as_name; - } - - if($config['multi_pack_enabled']) //TODO: Replace with ternary notation - { - $item_name = "concat(items.name,'" . NAME_SEPARATOR . '\', items.pack_name)' . $as_name; - } - else - { - $item_name = 'items.name' . $as_name; - } - - return $item_name; - } + protected $table = 'items'; + protected $primaryKey = 'item_id'; + protected $useAutoIncrement = true; + protected $useSoftDeletes = false; + protected $allowedFields = [ + 'name', + 'category', + 'supplier_id', + 'item_number', + 'description', + 'cost_price', + 'unit_price', + 'reorder_level', + 'allow_alt_description', + 'is_serialized', + 'deleted', + 'stock_type', + 'item_type', + 'tax_category_id', + 'receiving_quantity', + 'pic_filename', + 'qty_per_pack', + 'pack_name', + 'low_sell_item_id', + 'hsn_code' + ]; + + + /** + * Determines if a given item_id is an item + */ + public function exists(int $item_id, bool $ignore_deleted = false, bool $deleted = false): bool + { + $builder = $this->db->table('items'); + $builder->where('item_id', $item_id); + + if(!$ignore_deleted) + { + $builder->where('deleted', $deleted); + } + + return ($builder->get()->getNumRows() === 1); + } + + /** + * Determines if a given item_number exists + */ + public function item_number_exists(string $item_number, string $item_id = ''): bool + { + $config = config(OSPOS::class)->settings; + + if($config['allow_duplicate_barcodes']) + { + return false; + } + + $builder = $this->db->table('items'); + $builder->where('item_number', $item_number); + $builder->where('deleted !=', 1); + $builder->where('item_id !=', intval($item_id)); + +// // check if $item_id is a number and not a string starting with 0 +// // because cases like 00012345 will be seen as a number where it is a barcode + if(ctype_digit($item_id) && !str_starts_with($item_id, '0')) + { + $builder->where('item_id !=', intval($item_id)); + } + return ($builder->get()->getNumRows()) >= 1; + } + + /** + * Gets total of rows + */ + public function get_total_rows(): int + { + $builder = $this->db->table('items'); + $builder->where('deleted', 0); + + return $builder->countAllResults(); + } + + /** + * @param int $tax_category_id + * @return int + */ + public function get_tax_category_usage(int $tax_category_id): int //TODO: This function is never called in the code. + { + $builder = $this->db->table('items'); + $builder->where('tax_category_id', $tax_category_id); + + return $builder->countAllResults(); + } + + /** + * Get number of rows + */ + public function get_found_rows(string $search, array $filters): int + { + return $this->search($search, $filters, 0, 0, 'items.name', 'asc', true); + } + + /** + * Perform a search on items + */ + public function search(string $search, array $filters, ?int $rows = 0, ?int $limit_from = 0, ?string $sort = 'items.name', ?string $order = 'asc', ?bool $count_only = false) + { + // Set default values + if($rows == null) + { + $rows = 0; + } + if($limit_from == null) + { + $limit_from = 0; + } + if($sort == null) + { + $sort = 'items.name'; + } + if($order == null) + { + $order = 'asc'; + } + if($count_only == null) + { + $count_only = false; + } + + $config = config(OSPOS::class)->settings; + $builder = $this->db->table('items AS items'); //TODO: I'm not sure if it's needed to write items AS items... I think you can just get away with items + + // get_found_rows case + if($count_only) + { + $builder->select('COUNT(DISTINCT items.item_id) AS count'); + } + else + { + $builder->select('MAX(items.item_id) AS item_id'); + $builder->select('MAX(items.name) AS name'); + $builder->select('MAX(items.category) AS category'); + $builder->select('MAX(items.supplier_id) AS supplier_id'); + $builder->select('MAX(items.item_number) AS item_number'); + $builder->select('MAX(items.description) AS description'); + $builder->select('MAX(items.cost_price) AS cost_price'); + $builder->select('MAX(items.unit_price) AS unit_price'); + $builder->select('MAX(items.reorder_level) AS reorder_level'); + $builder->select('MAX(items.receiving_quantity) AS receiving_quantity'); + $builder->select('MAX(items.pic_filename) AS pic_filename'); + $builder->select('MAX(items.allow_alt_description) AS allow_alt_description'); + $builder->select('MAX(items.is_serialized) AS is_serialized'); + $builder->select('MAX(items.pack_name) AS pack_name'); + $builder->select('MAX(items.tax_category_id) AS tax_category_id'); + $builder->select('MAX(items.deleted) AS deleted'); + + $builder->select('MAX(suppliers.person_id) AS person_id'); + $builder->select('MAX(suppliers.company_name) AS company_name'); + $builder->select('MAX(suppliers.agency_name) AS agency_name'); + $builder->select('MAX(suppliers.account_number) AS account_number'); + $builder->select('MAX(suppliers.deleted) AS deleted'); + + $builder->select('MAX(inventory.trans_id) AS trans_id'); + $builder->select('MAX(inventory.trans_items) AS trans_items'); + $builder->select('MAX(inventory.trans_user) AS trans_user'); + $builder->select('MAX(inventory.trans_date) AS trans_date'); + $builder->select('MAX(inventory.trans_comment) AS trans_comment'); + $builder->select('MAX(inventory.trans_location) AS trans_location'); + $builder->select('MAX(inventory.trans_inventory) AS trans_inventory'); + + if($filters['stock_location_id'] > -1) + { + $builder->select('MAX(item_quantities.item_id) AS qty_item_id'); + $builder->select('MAX(item_quantities.location_id) AS location_id'); + $builder->select('MAX(item_quantities.quantity) AS quantity'); + } + } + + $builder->join('suppliers AS suppliers', 'suppliers.person_id = items.supplier_id', 'left'); + $builder->join('inventory AS inventory', 'inventory.trans_items = items.item_id'); + + if($filters['stock_location_id'] > -1) + { + $builder->join('item_quantities AS item_quantities', 'item_quantities.item_id = items.item_id'); + $builder->where('location_id', $filters['stock_location_id']); + } + + $where = empty($config['date_or_time_format']) + ? 'DATE_FORMAT(trans_date, "%Y-%m-%d") BETWEEN ' . $this->db->escape($filters['start_date']) . ' AND ' . $this->db->escape($filters['end_date']) + : 'trans_date BETWEEN ' . $this->db->escape(rawurldecode($filters['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($filters['end_date'])); + $builder->where($where); + + $attributes_enabled = count($filters['definition_ids']) > 0; + + if(!empty($search)) + { + if($attributes_enabled && $filters['search_custom']) + { + $builder->having("attribute_values LIKE '%$search%'"); + $builder->orHaving("attribute_dtvalues LIKE '%$search%'"); + $builder->orHaving("attribute_dvalues LIKE '%$search%'"); + } + else + { + $builder->groupStart(); + $builder->like('name', $search); + $builder->orLike('item_number', $search); + $builder->orLike('items.item_id', $search); + $builder->orLike('company_name', $search); + $builder->orLike('items.category', $search); + $builder->groupEnd(); + } + } + + if($attributes_enabled) + { + $format = $this->db->escape(dateformat_mysql()); + $this->db->simpleQuery('SET SESSION group_concat_max_len=49152'); + $builder->select('GROUP_CONCAT(DISTINCT CONCAT_WS(\'_\', definition_id, attribute_value) ORDER BY definition_id SEPARATOR \'|\') AS attribute_values'); + $builder->select("GROUP_CONCAT(DISTINCT CONCAT_WS('_', definition_id, DATE_FORMAT(attribute_date, $format)) SEPARATOR '|') AS attribute_dtvalues"); + $builder->select('GROUP_CONCAT(DISTINCT CONCAT_WS(\'_\', definition_id, attribute_decimal) SEPARATOR \'|\') AS attribute_dvalues'); + $builder->join('attribute_links', 'attribute_links.item_id = items.item_id AND attribute_links.receiving_id IS NULL AND attribute_links.sale_id IS NULL AND definition_id IN (' . implode(',', $filters['definition_ids']) . ')', 'left'); + $builder->join('attribute_values', 'attribute_values.attribute_id = attribute_links.attribute_id', 'left'); + } + + $builder->where('items.deleted', $filters['is_deleted']); + + if($filters['empty_upc']) + { + $builder->where('item_number', null); + } + if($filters['low_inventory']) + { + $builder->where('quantity <=', 'reorder_level'); + } + if($filters['is_serialized']) + { + $builder->where('is_serialized', 1); + } + if($filters['no_description']) + { + $builder->where('items.description', ''); + } + if($filters['temporary']) + { + $builder->where('items.item_type', ITEM_TEMP); + } + else + { + $non_temp = [ITEM, ITEM_KIT, ITEM_AMOUNT_ENTRY]; + $builder->whereIn('items.item_type', $non_temp); + } + + // get_found_rows case + if($count_only) + { + return $builder->get()->getRow()->count; + } + + // avoid duplicated entries with same name because of inventory reporting multiple changes on the same item in the same date range + $builder->groupBy('items.item_id'); + + // order by name of item by default + $builder->orderBy($sort, $order); + + if($rows > 0) + { + $builder->limit($rows, $limit_from); + } + + return $builder->get(); + } + + /** + * Returns all the items + */ + public function get_all(int $stock_location_id = NEW_ENTRY, int $rows = 0, int $limit_from = 0): ResultInterface + { + $builder = $this->db->table('items'); + + if($stock_location_id > -1) + { + $builder->join('item_quantities', 'item_quantities.item_id = items.item_id'); + $builder->where('location_id', $stock_location_id); + } + + $builder->where('items.deleted', 0); + + // order by name of item + $builder->orderBy('items.name', 'asc'); + + if($rows > 0) + { + $builder->limit($rows, $limit_from); + } + + return $builder->get(); + } + + /** + * Gets information about a particular item + */ + public function get_info(int $item_id): object + { + $builder = $this->db->table('items'); + $builder->select('items.*'); + $builder->select('GROUP_CONCAT(attribute_value SEPARATOR \'|\') AS attribute_values'); + $builder->select('GROUP_CONCAT(attribute_decimal SEPARATOR \'|\') AS attribute_dvalues'); + $builder->select('GROUP_CONCAT(attribute_date SEPARATOR \'|\') AS attribute_dtvalues'); + $builder->join('attribute_links', 'attribute_links.item_id = items.item_id', 'left'); + $builder->join('attribute_values', 'attribute_links.attribute_id = attribute_values.attribute_id', 'left'); + $builder->where('items.item_id', $item_id); + $builder->groupBy('items.item_id'); + + $query = $builder->get(); + + if($query->getNumRows() == 1) + { + return $query->getRow(); + } + + return $this->getEmptyObject('items'); + } + + /** + * Initializes an empty object based on database definitions + * @param string $table_name + * @return object + */ + private function getEmptyObject(string $table_name): object + { + // Return an empty base parent object, as $item_id is NOT an item + $empty_obj = new stdClass(); + + // Iterate through field definitions to determine how the fields should be initialized + foreach($this->db->getFieldData($table_name) as $field) + { + $field_name = $field->name; + + if(in_array($field->type, ['int', 'tinyint', 'decimal'])) + { + $empty_obj->$field_name = ($field->primary_key == 1) ? NEW_ENTRY : 0; + } + else + { + $empty_obj->$field_name = null; + } + } + + return $empty_obj; + } + + /** + * Gets information about a particular item by item id or number + */ + public function get_info_by_id_or_number(int $item_id, bool $include_deleted = true) + { + $builder = $this->db->table('items'); + $builder->groupStart(); + $builder->where('items.item_number', $item_id); + + // check if $item_id is a number and not a string starting with 0 + // because cases like 00012345 will be seen as a number where it is a barcode + if(ctype_digit(strval($item_id)) && !str_starts_with($item_id, '0')) + { + $builder->orWhere('items.item_id', $item_id); + } + + $builder->groupEnd(); + + if(!$include_deleted) + { + $builder->where('items.deleted', 0); + } + + // limit to only 1 so there is a result in case two are returned + // due to barcode and item_id clash + $builder->limit(1); + + $query = $builder->get(); + + if($query->getNumRows() == 1) + { + return $query->getRow(); + } + + return ''; + } + + /** + * Get an item id given an item number + */ + public function get_item_id(string $item_number, bool $ignore_deleted = false, bool $deleted = false): bool + { + $builder = $this->db->table('items'); + $builder->join('suppliers', 'suppliers.person_id = items.supplier_id', 'left'); + $builder->where('item_number', $item_number); + + if(!$ignore_deleted) + { + $builder->where('items.deleted', $deleted); + } + + $query = $builder->get(); + + if($query->getNumRows() == 1) //TODO: === + { + return $query->getRow()->item_id; + } + + return false; + } + + /** + * Gets information about multiple items + */ + public function get_multiple_info(array $item_ids, int $location_id): ResultInterface + { + $format = $this->db->escape(dateformat_mysql()); + + $builder = $this->db->table('items'); + $builder->select('items.*'); + $builder->select('MAX(company_name) AS company_name'); + $builder->select('GROUP_CONCAT(DISTINCT CONCAT_WS(\'_\', definition_id, attribute_value) ORDER BY definition_id SEPARATOR \'|\') AS attribute_values'); + $builder->select("GROUP_CONCAT(DISTINCT CONCAT_WS('_', definition_id, DATE_FORMAT(attribute_date, $format)) ORDER BY definition_id SEPARATOR '|') AS attribute_dtvalues"); + $builder->select('GROUP_CONCAT(DISTINCT CONCAT_WS(\'_\', definition_id, attribute_decimal) ORDER BY definition_id SEPARATOR \'|\') AS attribute_dvalues'); + $builder->select('MAX(quantity) as quantity'); + + $builder->join('suppliers', 'suppliers.person_id = items.supplier_id', 'left'); + $builder->join('item_quantities', 'item_quantities.item_id = items.item_id', 'left'); + $builder->join('attribute_links', 'attribute_links.item_id = items.item_id AND sale_id IS NULL AND receiving_id IS NULL', 'left'); + $builder->join('attribute_values', 'attribute_links.attribute_id = attribute_values.attribute_id', 'left'); + + $builder->where('location_id', $location_id); + $builder->whereIn('items.item_id', $item_ids); + + $builder->groupBy('items.item_id'); + + return $builder->get(); + } + + /** + * Inserts or updates an item + */ + public function save_value(array &$item_data, int $item_id = NEW_ENTRY): bool //TODO: need to bring this in line with parent or change the name + { + $builder = $this->db->table('items'); + + if($item_id < 1 || !$this->exists($item_id, true)) + { + if($builder->insert($item_data)) + { + $item_data['item_id'] = (int)$this->db->insertID(); + if($item_id < 1) + { + $builder = $this->db->table('items'); + $builder->where('item_id', $item_data['item_id']); + $builder->update(['low_sell_item_id' => $item_data['item_id']]); + } + + return true; + } + + return false; + } + else + { + $item_data['item_id'] = $item_id; + } + + $builder = $this->db->table('items'); + $builder->where('item_id', $item_id); + + return $builder->update($item_data); + } + + /** + * Updates multiple items at once + */ + public function update_multiple(array $item_data, string $item_ids): bool + { + $builder = $this->db->table('items'); + $builder->whereIn('item_id', explode(':', $item_ids)); + + return $builder->update($item_data); + } + + /** + * Deletes one item + */ + public function delete($item_id = null, bool $purge = false): bool|int|string + { + $this->db->transStart(); + + // set to 0 quantities + $item_quantity = model(Item_quantity::class); + $item_quantity->reset_quantity($item_id); + + $builder = $this->db->table('items'); + $builder->where('item_id', $item_id); + $success = $builder->update(['deleted' => 1]); + + $inventory = model(Inventory::class); + $success &= $inventory->reset_quantity($item_id); + + $this->db->transComplete(); + + $success &= $this->db->transStatus(); + + return $success; + } + + /** + * Undeletes one item + */ + public function undelete(int $item_id): bool + { + $builder = $this->db->table('items'); + $builder->where('item_id', $item_id); + + return $builder->update(['deleted' => 0]); + } + + /** + * Deletes a list of items + */ + public function delete_list(array $item_ids): bool + { + //Run these queries as a transaction, we want to make sure we do all or nothing + $this->db->transStart(); + + // set to 0 quantities + $item_quantity = model(Item_quantity::class); + $item_quantity->reset_quantity_list($item_ids); + + $builder = $this->db->table('items'); + $builder->whereIn('item_id', $item_ids); + $success = $builder->update(['deleted' => 1]); + + $inventory = model(Inventory::class); + + foreach($item_ids as $item_id) + { + $success &= $inventory->reset_quantity($item_id); + } + + $this->db->transComplete(); + + $success &= $this->db->transStatus(); + + return $success; + } + + /** + * @param string|null $seed + * @return string + */ + public function get_search_suggestion_format(string $seed = null): string + { + $config = config(OSPOS::class)->settings; + $seed .= ',' . $config['suggestions_first_column']; + + if($config['suggestions_second_column'] !== '') + { + $seed .= ',' . $config['suggestions_second_column']; + } + + if($config['suggestions_third_column'] !== '') + { + $seed .= ',' . $config['suggestions_third_column']; + } + + return $seed; + } + + /** + * @param object $result_row + * @return string + */ + public function get_search_suggestion_label(object $result_row): string + { + $config = config(OSPOS::class)->settings; + + $label = ''; + $label1 = $config['suggestions_first_column']; + $label2 = $config['suggestions_second_column']; + $label3 = $config['suggestions_third_column']; + + $this->format_result_numbers($result_row); + + // If multi_pack enabled then if "name" is part of the search suggestions then append pack + if($config['multi_pack_enabled']) + { + $this->append_label($label, $label1, $result_row); + $this->append_label($label, $label2, $result_row); + $this->append_label($label, $label3, $result_row); + } + else + { + $label = $result_row->$label1; + + if($label2 !== '') + { + $label .= NAME_SEPARATOR . $result_row->$label2; + } + + if($label3 !== '') + { + $label .= NAME_SEPARATOR . $result_row->$label3; + } + } + + return $label; + } + + /** + * Converts decimal money values to their correct locale format. + * + * @param object $result_row + * @return void + */ + private function format_result_numbers(object &$result_row): void + { + if(isset($result_row->cost_price)) + { + $result_row->cost_price = to_currency_no_money($result_row->cost_price); + } + if(isset($result_row->unit_price)) + { + $result_row->unit_price = to_currency_no_money($result_row->unit_price); + } + } + + /** + * @param string $label + * @param string $item_field_name + * @param object $item_info + * @return void + */ + private function append_label(string &$label, string $item_field_name, object $item_info): void + { + if($item_field_name !== '') + { + if($label == '') + { + if($item_field_name == 'name') //TODO: This needs to be replaced with Ternary notation if possible + { + $label .= implode(NAME_SEPARATOR, [$item_info->name, $item_info->pack_name]); //TODO: no need for .= operator. If it gets here then that means label is an empty string. + } + else + { + $label .= $item_info->$item_field_name; + } + } + else + { + if($item_field_name == 'name') + { + $label .= implode(NAME_SEPARATOR, ['', $item_info->name, $item_info->pack_name]); + } + else + { + $label .= NAME_SEPARATOR . $item_info->$item_field_name; + } + } + } + } + + /** + * @param string $search + * @param array $filters + * @param bool $unique + * @param int $limit + * @return array + */ + public function get_search_suggestions(string $search, array $filters = ['is_deleted' => false, 'search_custom' => false], bool $unique = false, int $limit = 25): array + { + $suggestions = []; + $non_kit = [ITEM, ITEM_AMOUNT_ENTRY]; + + $builder = $this->db->table('items'); + $builder->select($this->get_search_suggestion_format('item_id, name, pack_name')); + $builder->where('deleted', $filters['is_deleted']); + $builder->whereIn('item_type', $non_kit); // standard, exclude kit items since kits will be picked up later + $builder->like('name', $search);//TODO: this and the next 11 lines are duplicated directly below. We should extract a method here. + $builder->orderBy('name', 'asc'); + + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = ['value' => $row->item_id, 'label' => $this->get_search_suggestion_label($row)]; + } + + $builder = $this->db->table('items'); + $builder->select($this->get_search_suggestion_format('item_id, item_number, pack_name')); + $builder->where('deleted', $filters['is_deleted']); + $builder->whereIn('item_type', $non_kit); // standard, exclude kit items since kits will be picked up later + $builder->like('item_number', $search); + $builder->orderBy('item_number', 'asc'); + + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = ['value' => $row->item_id, 'label' => $this->get_search_suggestion_label($row)]; + } + + if(!$unique) + { + //Search by category + $builder = $this->db->table('items'); + $builder->select('category'); + $builder->where('deleted', $filters['is_deleted']); + $builder->distinct(); //TODO: duplicate code. Refactor method. + $builder->like('category', $search); + $builder->orderBy('category', 'asc'); + + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = ['label' => $row->category]; + } + + $builder = $this->db->table('suppliers'); + + //Search by supplier + $builder->select('company_name'); + $builder->like('company_name', $search); + + // restrict to non deleted companies only if is_deleted is false + $builder->where('deleted', $filters['is_deleted']); + $builder->distinct(); + $builder->orderBy('company_name', 'asc'); + + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = ['label' => $row->company_name]; + } + + //Search by description + $builder = $this->db->table('items'); + $builder->select($this->get_search_suggestion_format('item_id, name, pack_name, description')); + $builder->where('deleted', $filters['is_deleted']); + $builder->like('description', $search); //TODO: duplicate code, refactor method. + $builder->orderBy('description', 'asc'); + + foreach($builder->get()->getResult() as $row) + { + $entry = ['value' => $row->item_id, 'label' => $this->get_search_suggestion_label($row)]; + + if(!array_walk($suggestions, function ($value, $label) use ($entry) + { + return $entry['label'] != $label; + })) + { + $suggestions[] = $entry; + } + } + + //Search in attributes + if($filters['search_custom'] !== false) + { + $builder = $this->db->table('attribute_links'); + $builder->join('attribute_values', 'attribute_links.attribute_id = attribute_values.attribute_id'); + $builder->join('attribute_definitions', 'attribute_definitions.definition_id = attribute_links.definition_id'); + $builder->like('attribute_value', $search); + $builder->where('definition_type', TEXT); + $builder->where('deleted', $filters['is_deleted']); + $builder->whereIn('item_type', $non_kit); // standard, exclude kit items since kits will be picked up later + + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = ['value' => $row->item_id, 'label' => $this->get_search_suggestion_label($row)]; + } + } + } + + //only return $limit suggestions + if(count($suggestions) > $limit) + { + $suggestions = array_slice($suggestions, 0, $limit); + } + + return array_unique($suggestions, SORT_REGULAR); + } + + + /** + * @param string $search + * @param array $filters + * @param bool $unique + * @param int $limit + * @return array + */ + public function get_stock_search_suggestions(string $search, array $filters = ['is_deleted' => false, 'search_custom' => false], bool $unique = false, int $limit = 25): array + { + $suggestions = []; + $non_kit = [ITEM, ITEM_AMOUNT_ENTRY]; + + $builder = $this->db->table('items'); + $builder->select($this->get_search_suggestion_format('item_id, name, pack_name')); + $builder->where('deleted', $filters['is_deleted']); + $builder->whereIn('item_type', $non_kit); // standard, exclude kit items since kits will be picked up later + $builder->where('stock_type', '0'); // stocked items only + $builder->like('name', $search); + $builder->orderBy('name', 'asc'); + + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = ['value' => $row->item_id, 'label' => $this->get_search_suggestion_label($row)]; + } + + $builder = $this->db->table('items'); + $builder->select($this->get_search_suggestion_format('item_id, item_number, pack_name')); + $builder->where('deleted', $filters['is_deleted']); + $builder->whereIn('item_type', $non_kit); // standard, exclude kit items since kits will be picked up later + $builder->where('stock_type', '0'); // stocked items only + $builder->like('item_number', $search); + $builder->orderBy('item_number', 'asc'); + + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = ['value' => $row->item_id, 'label' => $this->get_search_suggestion_label($row)]; + } + + if(!$unique) + { + //Search by category + $builder = $this->db->table('items'); + $builder->select('category'); + $builder->where('deleted', $filters['is_deleted']); + $builder->whereIn('item_type', $non_kit); // standard, exclude kit items since kits will be picked up later + $builder->where('stock_type', '0'); // stocked items only + $builder->distinct(); + $builder->like('category', $search); + $builder->orderBy('category', 'asc'); + + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = ['label' => $row->category]; + } + + //Search by supplier + $builder = $this->db->table('suppliers'); + $builder->select('company_name'); + $builder->like('company_name', $search); + + // restrict to non deleted companies only if is_deleted is false + $builder->where('deleted', $filters['is_deleted']); + $builder->distinct(); + $builder->orderBy('company_name', 'asc'); + + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = ['label' => $row->company_name]; + } + + //Search by description + $builder = $this->db->table('items'); + $builder->select($this->get_search_suggestion_format('item_id, name, pack_name, description')); + $builder->where('deleted', $filters['is_deleted']); + $builder->whereIn('item_type', $non_kit); // standard, exclude kit items since kits will be picked up later + $builder->where('stock_type', '0'); // stocked items only + $builder->like('description', $search); //TODO: duplicated code, refactor method. + $builder->orderBy('description', 'asc'); + + foreach($builder->get()->getResult() as $row) + { + $entry = ['value' => $row->item_id, 'label' => $this->get_search_suggestion_label($row)]; + if(!array_walk($suggestions, function ($value, $label) use ($entry) + { + return $entry['label'] != $label; + })) + { + $suggestions[] = $entry; + } + } + + //Search by custom fields + if($filters['search_custom'] !== false) //TODO: duplicated code. We should refactor out a method... this can be replaced with `if($filters['search_custom']`... no need for the double negative + { + $builder = $this->db->table('attribute_links'); + $builder->join('attribute_values', 'attribute_links.attribute_id = attribute_values.attribute_id'); + $builder->join('attribute_definitions', 'attribute_definitions.definition_id = attribute_links.definition_id'); + $builder->like('attribute_value', $search); + $builder->where('definition_type', TEXT); + $builder->where('stock_type', '0'); // stocked items only + $builder->where('deleted', $filters['is_deleted']); + + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = ['value' => $row->item_id, 'label' => $this->get_search_suggestion_label($row)]; + } + } + } + + //only return $limit suggestions + if(count($suggestions) > $limit) + { + $suggestions = array_slice($suggestions, 0, $limit); + } + + return array_unique($suggestions, SORT_REGULAR); + } + + /** + * @param string $search + * @param array $filters + * @param bool $unique + * @param int $limit + * @return array + */ + public function get_kit_search_suggestions(string $search, array $filters = ['is_deleted' => false, 'search_custom' => false], bool $unique = false, int $limit = 25): array + { + $suggestions = []; + $non_kit = [ITEM, ITEM_AMOUNT_ENTRY]; //TODO: This variable is never used. + + $builder = $this->db->table('items'); + $builder->select('item_id, name'); + $builder->where('deleted', $filters['is_deleted']); + $builder->where('item_type', ITEM_KIT); + $builder->like('name', $search); + $builder->orderBy('name', 'asc'); + + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = ['value' => $row->item_id, 'label' => $row->name]; + } + + $builder = $this->db->table('items'); + $builder->select('item_id, item_number'); + $builder->where('deleted', $filters['is_deleted']); + $builder->like('item_number', $search); + $builder->where('item_type', ITEM_KIT); + $builder->orderBy('item_number', 'asc'); + + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = ['value' => $row->item_id, 'label' => $row->item_number]; + } + + if(!$unique) + { + //Search by category + $builder = $this->db->table('items'); + $builder->select('category'); + $builder->where('deleted', $filters['is_deleted']); + $builder->where('item_type', ITEM_KIT); + $builder->distinct();//TODO: duplicated code, refactor method. + $builder->like('category', $search); + $builder->orderBy('category', 'asc'); + + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = ['label' => $row->category]; + } + + //Search by supplier + $builder = $this->db->table('suppliers'); + $builder->select('company_name'); + $builder->like('company_name', $search); + + // restrict to non deleted companies only if is_deleted is false + $builder->where('deleted', $filters['is_deleted']); + $builder->distinct(); + $builder->orderBy('company_name', 'asc'); + + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = ['label' => $row->company_name]; + } + + //Search by description + $builder = $this->db->table('items'); + $builder->select('item_id, name, description'); + $builder->where('deleted', $filters['is_deleted']); + $builder->where('item_type', ITEM_KIT); + $builder->like('description', $search); + $builder->orderBy('description', 'asc'); + + foreach($builder->get()->getResult() as $row) + { + $entry = ['value' => $row->item_id, 'label' => $row->name]; + if(!array_walk($suggestions, function ($value, $label) use ($entry) + { + return $entry['label'] != $label; + })) + { + $suggestions[] = $entry; + } + } + + //Search in attributes + if($filters['search_custom'] !== false) //TODO: Duplicate code... same as above... no double negatives + { + $builder = $this->db->table('attribute_links'); + $builder->join('attribute_values', 'attribute_links.attribute_id = attribute_values.attribute_id'); + $builder->join('attribute_definitions', 'attribute_definitions.definition_id = attribute_links.definition_id'); + $builder->like('attribute_value', $search); + $builder->where('definition_type', TEXT); + $builder->where('stock_type', '0'); // stocked items only + $builder->where('deleted', $filters['is_deleted']); + + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = ['value' => $row->item_id, 'label' => $this->get_search_suggestion_label($row)]; + } + } + } + + //only return $limit suggestions + if(count($suggestions) > $limit) + { + $suggestions = array_slice($suggestions, 0, $limit); + } + + return array_unique($suggestions, SORT_REGULAR); + } + + /** + * @param string $search + * @return array + */ + public function get_low_sell_suggestions(string $search): array + { + $suggestions = []; + + $builder = $this->db->table('items'); + $builder->select($this->get_search_suggestion_format('item_id, pack_name')); + $builder->where('deleted', '0'); + $builder->where('stock_type', '0'); // stocked items only //TODO: '0' should be replaced with a constant. + $builder->like('name', $search); + $builder->orderBy('name', 'asc'); + + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = ['value' => $row->item_id, 'label' => $this->get_search_suggestion_label($row)]; + } + + return $suggestions; + } + + /** + * @param string $search + * @return array + */ + public function get_category_suggestions(string $search): array + { + $suggestions = []; + + $builder = $this->db->table('items'); + $builder->distinct(); + $builder->select('category'); + $builder->like('category', $search); + $builder->where('deleted', 0); + $builder->orderBy('category', 'asc'); + + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = ['label' => $row->category]; + } + + return $suggestions; + } + + /** + * @param string $search + * @return array + */ + public function get_location_suggestions(string $search): array + { + $suggestions = []; + + $builder = $this->db->table('items'); + $builder->distinct(); + $builder->select('location'); + $builder->like('location', $search); + $builder->where('deleted', 0); + $builder->orderBy('location', 'asc'); + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = ['label' => $row->location]; + } + + return $suggestions; + } + + /** + * @return ResultInterface|false|string + */ + public function get_categories(): ResultInterface|bool //TODO: This function is never called in the code. + { + $builder = $this->db->table('items'); + $builder->select('category'); + $builder->where('deleted', 0); + $builder->distinct(); + $builder->orderBy('category', 'asc'); + + return $builder->get(); + } + + /** + * changes the cost price of a given item + * calculates the average price between received items and items on stock + * $item_id : the item which price should be changed + * $items_received : the amount of new items received + * $new_price : the cost-price for the newly received items + * $old_price (optional) : the current-cost-price + * + * used in receiving-process to update cost-price if changed + * caution: must be used before item_quantities gets updated, otherwise the average price is wrong! + * + */ + public function change_cost_price(int $item_id, float $items_received, float $new_price, float $old_price = null): bool + { + if($old_price === null) + { + $item_info = $this->get_info($item_id); + $old_price = $item_info->cost_price; + } + + $builder = $this->db->table('item_quantities'); + $builder->selectSum('quantity'); + $builder->where('item_id', $item_id); + $builder->join('stock_locations', 'stock_locations.location_id=item_quantities.location_id'); + $builder->where('stock_locations.deleted', 0); + $old_total_quantity = $builder->get()->getRow()->quantity; + + $total_quantity = $old_total_quantity + $items_received; + $average_price = bcdiv(bcadd(bcmul((string)$items_received, (string)$new_price), bcmul((string)$old_total_quantity, (string)$old_price)), (string)$total_quantity); + + $data = ['cost_price' => $average_price]; + + return $this->save_value($data, $item_id); + } + + /** + * @param int $item_id + * @param string $item_number + * @return void + */ + public function update_item_number(int $item_id, string $item_number): void + { + $builder = $this->db->table('items'); + $builder->where('item_id', $item_id); + $builder->update(['item_number' => $item_number]); //TODO: this function should probably return the result of update() and add ": bool" to the function signature + } + + /** + * @param int $item_id + * @param string $item_name + * @return void + */ + public function update_item_name(int $item_id, string $item_name): void //TODO: this function should probably return the result of update() and add ": bool" to the function signature + { + $builder = $this->db->table('items'); + $builder->where('item_id', $item_id); + $builder->update(['name' => $item_name]); + } + + /** + * @param int $item_id + * @param string $item_description + * @return void + */ + public function update_item_description(int $item_id, string $item_description): void //TODO: this function should probably return the result of update() and add ": bool" to the function signature + { + $builder = $this->db->table('items'); + $builder->where('item_id', $item_id); + $builder->update(['description' => $item_description]); + } + + /** + * Determine the item name to use taking into consideration that + * for a multipack environment then the item name should have the + * pack appended to it + */ + public function get_item_name(string $as_name = null): string + { + $config = config(OSPOS::class)->settings; + + if($as_name == null) //TODO: Replace with ternary notation + { + $as_name = ''; + } + else + { + $as_name = ' AS ' . $as_name; + } + + if($config['multi_pack_enabled']) //TODO: Replace with ternary notation + { + $item_name = "concat(items.name,'" . NAME_SEPARATOR . '\', items.pack_name)' . $as_name; + } + else + { + $item_name = 'items.name' . $as_name; + } + + return $item_name; + } } diff --git a/app/Models/Item_kit.php b/app/Models/Item_kit.php index f33f0d7f3..d35716f55 100644 --- a/app/Models/Item_kit.php +++ b/app/Models/Item_kit.php @@ -12,297 +12,297 @@ use stdClass; */ class Item_kit extends Model { - protected $table = 'item_kits'; - protected $primaryKey = 'item_kit_id'; - protected $useAutoIncrement = true; - protected $useSoftDeletes = false; - protected $allowedFields = [ - 'item_kit_number', - 'name', - 'description', - 'item_id', - 'kit_discount', - 'kit_discount_type', - 'price_option' - ]; + protected $table = 'item_kits'; + protected $primaryKey = 'item_kit_id'; + protected $useAutoIncrement = true; + protected $useSoftDeletes = false; + protected $allowedFields = [ + 'item_kit_number', + 'name', + 'description', + 'item_id', + 'kit_discount', + 'kit_discount_type', + 'price_option' + ]; - /** - * Determines if a given item_id is an item kit - */ - public function exists(int $item_kit_id): bool - { - $builder = $this->db->table('item_kits'); - $builder->where('item_kit_id', $item_kit_id); + /** + * Determines if a given item_id is an item kit + */ + public function exists(int $item_kit_id): bool + { + $builder = $this->db->table('item_kits'); + $builder->where('item_kit_id', $item_kit_id); - return ($builder->get()->getNumRows() == 1); //TODO: === - } + return ($builder->get()->getNumRows() == 1); //TODO: === + } - /** - * Check if a given item_id is an item kit - */ - public function is_valid_item_kit(string $item_kit_id): bool - { - if(!empty($item_kit_id)) - { - //KIT # - $pieces = explode(' ', $item_kit_id); + /** + * Check if a given item_id is an item kit + */ + public function is_valid_item_kit(string $item_kit_id): bool + { + if(!empty($item_kit_id)) + { + //KIT # + $pieces = explode(' ', $item_kit_id); - if((count($pieces) == 2) && preg_match('/(KIT)/i', $pieces[0])) //TODO: === ... perhaps think about converting this to ternary notation - { - return $this->exists($pieces[1]); - } - else - { - return $this->item_number_exists($item_kit_id); - } - } + if((count($pieces) == 2) && preg_match('/(KIT)/i', $pieces[0])) //TODO: === ... perhaps think about converting this to ternary notation + { + return $this->exists($pieces[1]); + } + else + { + return $this->item_number_exists($item_kit_id); + } + } - return false; - } + return false; + } - /** - * Determines if a given item_number exists - */ - public function item_number_exists(string $item_kit_number, string $item_kit_id = ''): bool - { - $config = config(OSPOS::class)->settings; + /** + * Determines if a given item_number exists + */ + public function item_number_exists(string $item_kit_number, string $item_kit_id = ''): bool + { + $config = config(OSPOS::class)->settings; - if($config['allow_duplicate_barcodes']) - { - return false; - } + if($config['allow_duplicate_barcodes']) + { + return false; + } - $builder = $this->db->table('item_kits'); - $builder->where('item_kit_number', $item_kit_number); + $builder = $this->db->table('item_kits'); + $builder->where('item_kit_number', $item_kit_number); - // check if $item_id is a number and not a string starting with 0 - // because cases like 00012345 will be seen as a number where it is a barcode - if(ctype_digit($item_kit_id) && !str_starts_with($item_kit_id, '0')) - { - $builder->where('item_kit_id !=', (int) $item_kit_id); - } + // check if $item_id is a number and not a string starting with 0 + // because cases like 00012345 will be seen as a number where it is a barcode + if(ctype_digit($item_kit_id) && !str_starts_with($item_kit_id, '0')) + { + $builder->where('item_kit_id !=', (int) $item_kit_id); + } - return ($builder->get()->getNumRows() >= 1); - } + return ($builder->get()->getNumRows() >= 1); + } - /** - * Gets total of rows - */ - public function get_total_rows(): int - { - $builder = $this->db->table('item_kits'); + /** + * Gets total of rows + */ + public function get_total_rows(): int + { + $builder = $this->db->table('item_kits'); - return $builder->countAllResults(); - } + return $builder->countAllResults(); + } - /** - * Gets information about a particular item kit - */ - public function get_info(string $item_kit_id): object - { - $builder = $this->db->table('item_kits'); - $builder->select(' - item_kit_id, - item_kits.name as name, - item_kit_number, - items.name as item_name, - item_kits.description, - items.description as item_description, - item_kits.item_id as kit_item_id, - kit_discount, - kit_discount_type, - price_option, - print_option, - category, - supplier_id, - item_number, - cost_price, - unit_price, - reorder_level, - receiving_quantity, - pic_filename, - allow_alt_description, - is_serialized, - items.deleted, - item_type, - stock_type - '); + /** + * Gets information about a particular item kit + */ + public function get_info(string $item_kit_id): object + { + $builder = $this->db->table('item_kits'); + $builder->select(' + item_kit_id, + item_kits.name as name, + item_kit_number, + items.name as item_name, + item_kits.description, + items.description as item_description, + item_kits.item_id as kit_item_id, + kit_discount, + kit_discount_type, + price_option, + print_option, + category, + supplier_id, + item_number, + cost_price, + unit_price, + reorder_level, + receiving_quantity, + pic_filename, + allow_alt_description, + is_serialized, + items.deleted, + item_type, + stock_type + '); - $builder->join('items', 'item_kits.item_id = items.item_id', 'left'); - $builder->where('item_kit_id', $item_kit_id); - $builder->orWhere('item_kit_number', $item_kit_id); + $builder->join('items', 'item_kits.item_id = items.item_id', 'left'); + $builder->where('item_kit_id', $item_kit_id); + $builder->orWhere('item_kit_number', $item_kit_id); - $query = $builder->get(); + $query = $builder->get(); - if($query->getNumRows() == 1) //TODO: === - { - return $query->getRow(); - } - else - { - //Get empty base parent object, as $item_kit_id is NOT an item kit - $item_obj = new stdClass(); + if($query->getNumRows() == 1) //TODO: === + { + return $query->getRow(); + } + else + { + //Get empty base parent object, as $item_kit_id is NOT an item kit + $item_obj = new stdClass(); - //Get all the fields from items table - foreach($this->db->getFieldNames('item_kits') as $field) - { - $item_obj->$field = ''; - } + //Get all the fields from items table + foreach($this->db->getFieldNames('item_kits') as $field) + { + $item_obj->$field = ''; + } - return $item_obj; - } - } + return $item_obj; + } + } - /** - * Gets information about multiple item kits - */ - public function get_multiple_info(array $item_kit_ids): ResultInterface - { - $builder = $this->db->table('item_kits'); - $builder->whereIn('item_kit_id', $item_kit_ids); - $builder->orderBy('name', 'asc'); + /** + * Gets information about multiple item kits + */ + public function get_multiple_info(array $item_kit_ids): ResultInterface + { + $builder = $this->db->table('item_kits'); + $builder->whereIn('item_kit_id', $item_kit_ids); + $builder->orderBy('name', 'asc'); - return $builder->get(); - } + return $builder->get(); + } - /** - * Inserts or updates an item kit - */ - public function save_value(array &$item_kit_data, int $item_kit_id = NEW_ENTRY): bool - { - $builder = $this->db->table('item_kits'); - if($item_kit_id == NEW_ENTRY || !$this->exists($item_kit_id)) - { - if($builder->insert($item_kit_data)) - { - $item_kit_data['item_kit_id'] = $this->db->insertID(); + /** + * Inserts or updates an item kit + */ + public function save_value(array &$item_kit_data, int $item_kit_id = NEW_ENTRY): bool + { + $builder = $this->db->table('item_kits'); + if($item_kit_id == NEW_ENTRY || !$this->exists($item_kit_id)) + { + if($builder->insert($item_kit_data)) + { + $item_kit_data['item_kit_id'] = $this->db->insertID(); - return true; - } + return true; + } - return false; - } + return false; + } - $builder->where('item_kit_id', $item_kit_id); + $builder->where('item_kit_id', $item_kit_id); - return $builder->update($item_kit_data); - } + return $builder->update($item_kit_data); + } - /** - * Deletes one item kit - */ - public function delete($item_kit_id = null, bool $purge = false): bool - { - $builder = $this->db->table('item_kits'); + /** + * Deletes one item kit + */ + public function delete($item_kit_id = null, bool $purge = false): bool + { + $builder = $this->db->table('item_kits'); - return $builder->delete(['item_kit_id' => $item_kit_id]); - } + return $builder->delete(['item_kit_id' => $item_kit_id]); + } - /** - * Deletes a list of item kits - */ - public function delete_list(array $item_kit_ids): bool - { - $builder = $this->db->table('item_kits'); - $builder->whereIn('item_kit_id', $item_kit_ids); + /** + * Deletes a list of item kits + */ + public function delete_list(array $item_kit_ids): bool + { + $builder = $this->db->table('item_kits'); + $builder->whereIn('item_kit_id', $item_kit_ids); - return $builder->delete(); - } + return $builder->delete(); + } - /** - * @param string $search - * @param int $limit - * @return array - */ - public function get_search_suggestions(string $search, int $limit = 25): array - { - $suggestions = []; + /** + * @param string $search + * @param int $limit + * @return array + */ + public function get_search_suggestions(string $search, int $limit = 25): array + { + $suggestions = []; - $builder = $this->db->table('item_kits'); + $builder = $this->db->table('item_kits'); - //KIT # - if(stripos($search, 'KIT ') !== false) - { - $builder->like('item_kit_id', str_ireplace('KIT ', '', $search)); - $builder->orderBy('item_kit_id', 'asc'); + //KIT # + if(stripos($search, 'KIT ') !== false) + { + $builder->like('item_kit_id', str_ireplace('KIT ', '', $search)); + $builder->orderBy('item_kit_id', 'asc'); - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = ['value' => 'KIT '. $row->item_kit_id, 'label' => 'KIT ' . $row->item_kit_id]; - } - } - else - { - $builder->like('name', $search); - $builder->orLike('item_kit_number', $search); - $builder->orderBy('name', 'asc'); + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = ['value' => 'KIT '. $row->item_kit_id, 'label' => 'KIT ' . $row->item_kit_id]; + } + } + else + { + $builder->like('name', $search); + $builder->orLike('item_kit_number', $search); + $builder->orderBy('name', 'asc'); - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = ['value' => 'KIT ' . $row->item_kit_id, 'label' => $row->name]; - } - } + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = ['value' => 'KIT ' . $row->item_kit_id, 'label' => $row->name]; + } + } - //only return $limit suggestions - if(count($suggestions) > $limit) - { - $suggestions = array_slice($suggestions, 0, $limit); - } + //only return $limit suggestions + if(count($suggestions) > $limit) + { + $suggestions = array_slice($suggestions, 0, $limit); + } - return $suggestions; - } + return $suggestions; + } - /** - * Gets rows - */ - public function get_found_rows(string $search): int - { - return $this->search($search, 0, 0, 'name', 'asc', true); - } + /** + * Gets rows + */ + public function get_found_rows(string $search): int + { + return $this->search($search, 0, 0, 'name', 'asc', true); + } - /** - * Perform a search on items - */ - public function search(string $search, ?int $rows = 0, ?int $limit_from = 0, ?string $sort = 'name', ?string $order = 'asc', ?bool $count_only = false) - { - // Set default values - if($rows == null) $rows = 0; - if($limit_from == null) $limit_from = 0; - if($sort == null) $sort = 'name'; - if($order == null) $order = 'asc'; - if($count_only == null) $count_only = false; + /** + * Perform a search on items + */ + public function search(string $search, ?int $rows = 0, ?int $limit_from = 0, ?string $sort = 'name', ?string $order = 'asc', ?bool $count_only = false) + { + // Set default values + if($rows == null) $rows = 0; + if($limit_from == null) $limit_from = 0; + if($sort == null) $sort = 'name'; + if($order == null) $order = 'asc'; + if($count_only == null) $count_only = false; - $builder = $this->db->table('item_kits'); + $builder = $this->db->table('item_kits'); - // get_found_rows case - if($count_only) - { - $builder->select('COUNT(item_kit_id) as count'); - } + // get_found_rows case + if($count_only) + { + $builder->select('COUNT(item_kit_id) as count'); + } - $builder->like('name', $search); - $builder->orLike('description', $search); - $builder->orLike('item_kit_number', $search); + $builder->like('name', $search); + $builder->orLike('description', $search); + $builder->orLike('item_kit_number', $search); - //KIT # - if(stripos($search, 'KIT ') !== false) - { - $builder->orLike('item_kit_id', str_ireplace('KIT ', '', $search)); - } + //KIT # + if(stripos($search, 'KIT ') !== false) + { + $builder->orLike('item_kit_id', str_ireplace('KIT ', '', $search)); + } - // get_found_rows case - if($count_only) - { - return $builder->get()->getRow()->count; - } + // get_found_rows case + if($count_only) + { + return $builder->get()->getRow()->count; + } - $builder->orderBy($sort, $order); + $builder->orderBy($sort, $order); - if($rows > 0) - { - $builder->limit($rows, $limit_from); - } + if($rows > 0) + { + $builder->limit($rows, $limit_from); + } - return $builder->get(); - } + return $builder->get(); + } } diff --git a/app/Models/Item_kit_items.php b/app/Models/Item_kit_items.php index b7aeba5c1..97363b360 100644 --- a/app/Models/Item_kit_items.php +++ b/app/Models/Item_kit_items.php @@ -9,81 +9,81 @@ use CodeIgniter\Model; */ class Item_kit_items extends Model { - protected $table = 'item_kit_items'; - protected $primaryKey = 'item_kit_id'; - protected $useAutoIncrement = true; - protected $useSoftDeletes = false; - protected $allowedFields = [ - 'kit_sequence' - ]; + protected $table = 'item_kit_items'; + protected $primaryKey = 'item_kit_id'; + protected $useAutoIncrement = true; + protected $useSoftDeletes = false; + protected $allowedFields = [ + 'kit_sequence' + ]; - /** - * Gets item kit items for a particular item kit - */ - public function get_info(int $item_kit_id): array - { - $builder = $this->db->table('item_kit_items as item_kit_items'); - $builder->select('item_kits.item_kit_id, item_kit_items.item_id, quantity, kit_sequence, unit_price, item_type, stock_type'); - $builder->join('items as items', 'item_kit_items.item_id = items.item_id'); - $builder->join('item_kits as item_kits', 'item_kits.item_kit_id = item_kit_items.item_kit_id'); - $builder->where('item_kits.item_kit_id', $item_kit_id); - $builder->orWhere('item_kit_number', $item_kit_id); - $builder->orderBy('kit_sequence', 'asc'); + /** + * Gets item kit items for a particular item kit + */ + public function get_info(int $item_kit_id): array + { + $builder = $this->db->table('item_kit_items as item_kit_items'); + $builder->select('item_kits.item_kit_id, item_kit_items.item_id, quantity, kit_sequence, unit_price, item_type, stock_type'); + $builder->join('items as items', 'item_kit_items.item_id = items.item_id'); + $builder->join('item_kits as item_kits', 'item_kits.item_kit_id = item_kit_items.item_kit_id'); + $builder->where('item_kits.item_kit_id', $item_kit_id); + $builder->orWhere('item_kit_number', $item_kit_id); + $builder->orderBy('kit_sequence', 'asc'); - //return an array of item kit items for an item - return $builder->get()->getResultArray(); - } + //return an array of item kit items for an item + return $builder->get()->getResultArray(); + } - /** - * Gets item kit items for a particular item kit - */ - public function get_info_for_sale(int $item_kit_id): array //TODO: This function does not seem to be called anywhere in the code - { - $builder = $this->db->table('item_kit_items'); - $builder->where('item_kit_id', $item_kit_id); + /** + * Gets item kit items for a particular item kit + */ + public function get_info_for_sale(int $item_kit_id): array //TODO: This function does not seem to be called anywhere in the code + { + $builder = $this->db->table('item_kit_items'); + $builder->where('item_kit_id', $item_kit_id); - $builder->orderBy('kit_sequence', 'desc'); + $builder->orderBy('kit_sequence', 'desc'); - //return an array of item kit items for an item - return $builder->get()->getResultArray(); - } + //return an array of item kit items for an item + return $builder->get()->getResultArray(); + } - /** - * Inserts or updates an item kit's items - */ - public function save_value(array &$item_kit_items_data, int $item_kit_id): bool - { - $success = true; + /** + * Inserts or updates an item kit's items + */ + public function save_value(array &$item_kit_items_data, int $item_kit_id): bool + { + $success = true; - $this->db->transStart(); + $this->db->transStart(); - $this->delete($item_kit_id); + $this->delete($item_kit_id); - if($item_kit_items_data != null) - { - $builder = $this->db->table('item_kit_items'); + if($item_kit_items_data != null) + { + $builder = $this->db->table('item_kit_items'); - foreach($item_kit_items_data as $row) - { - $row['item_kit_id'] = $item_kit_id; - $success &= $builder->insert($row); - } - } + foreach($item_kit_items_data as $row) + { + $row['item_kit_id'] = $item_kit_id; + $success &= $builder->insert($row); + } + } - $this->db->transComplete(); + $this->db->transComplete(); - $success &= $this->db->transStatus(); + $success &= $this->db->transStatus(); - return $success; - } + return $success; + } - /** - * Deletes item kit items given an item kit - */ - public function delete($item_kit_id = null, bool $purge = false): bool - { - $builder = $this->db->table('item_kit_items'); + /** + * Deletes item kit items given an item kit + */ + public function delete($item_kit_id = null, bool $purge = false): bool + { + $builder = $this->db->table('item_kit_items'); - return $builder->delete(['item_kit_id' => $item_kit_id]); - } + return $builder->delete(['item_kit_id' => $item_kit_id]); + } } diff --git a/app/Models/Item_quantity.php b/app/Models/Item_quantity.php index 3fabbb25e..d2f49f3f5 100644 --- a/app/Models/Item_quantity.php +++ b/app/Models/Item_quantity.php @@ -10,60 +10,60 @@ use stdClass; */ class Item_quantity extends Model { - protected $table = 'item_quantities'; - protected $primaryKey = 'item_id'; - protected $useAutoIncrement = false; - protected $useSoftDeletes = false; - protected $allowedFields = [ - 'quantity' - ]; + protected $table = 'item_quantities'; + protected $primaryKey = 'item_id'; + protected $useAutoIncrement = false; + protected $useSoftDeletes = false; + protected $allowedFields = [ + 'quantity' + ]; - protected $item_id; - protected $location_id; - protected $quantity; + protected $item_id; + protected $location_id; + protected $quantity; - /** - * @param int $item_id - * @param int $location_id - * @return bool - */ - public function exists(int $item_id, int $location_id): bool + /** + * @param int $item_id + * @param int $location_id + * @return bool + */ + public function exists(int $item_id, int $location_id): bool { $builder = $this->db->table('item_quantities'); $builder->where('item_id', $item_id); $builder->where('location_id', $location_id); - return ($builder->get()->getNumRows() == 1); //TODO: === + return ($builder->get()->getNumRows() == 1); //TODO: === } - /** - * @param array $location_detail - * @param int $item_id - * @param int $location_id - * @return bool - */ - public function save_value(array $location_detail, int $item_id, int $location_id): bool + /** + * @param array $location_detail + * @param int $item_id + * @param int $location_id + * @return bool + */ + public function save_value(array $location_detail, int $item_id, int $location_id): bool { if(!$this->exists($item_id, $location_id)) { - $builder = $this->db->table('item_quantities'); - return $builder->insert($location_detail); + $builder = $this->db->table('item_quantities'); + return $builder->insert($location_detail); } - $builder = $this->db->table('item_quantities'); + $builder = $this->db->table('item_quantities'); $builder->where('item_id', $item_id); $builder->where('location_id', $location_id); return $builder->update($location_detail); } - /** - * @param int $item_id - * @param int $location_id - * @return array|Item_quantity|stdClass|null - */ - public function get_item_quantity(int $item_id, int $location_id): array|Item_quantity|StdClass|null - { + /** + * @param int $item_id + * @param int $location_id + * @return array|Item_quantity|stdClass|null + */ + public function get_item_quantity(int $item_id, int $location_id): array|Item_quantity|StdClass|null + { $builder = $this->db->table('item_quantities'); $builder->where('item_id', $item_id); $builder->where('location_id', $location_id); @@ -86,39 +86,39 @@ class Item_quantity extends Model return $result; } - /** - * changes to quantity of an item according to the given amount. - * if $quantity_change is negative, it will be subtracted, - * if it is positive, it will be added to the current quantity - */ - public function change_quantity(int $item_id, int $location_id, int $quantity_change): bool - { - $quantity_old = $this->get_item_quantity($item_id, $location_id); - $quantity_new = $quantity_old->quantity + $quantity_change; - $location_detail = ['item_id' => $item_id, 'location_id' => $location_id, 'quantity' => $quantity_new]; + /** + * changes to quantity of an item according to the given amount. + * if $quantity_change is negative, it will be subtracted, + * if it is positive, it will be added to the current quantity + */ + public function change_quantity(int $item_id, int $location_id, int $quantity_change): bool + { + $quantity_old = $this->get_item_quantity($item_id, $location_id); + $quantity_new = $quantity_old->quantity + $quantity_change; + $location_detail = ['item_id' => $item_id, 'location_id' => $location_id, 'quantity' => $quantity_new]; - return $this->save_value($location_detail, $item_id, $location_id); - } + return $this->save_value($location_detail, $item_id, $location_id); + } - /** - * Set to 0 all quantity in the given item - */ - public function reset_quantity(int $item_id): bool - { - $builder = $this->db->table('item_quantities'); - $builder->where('item_id', $item_id); + /** + * Set to 0 all quantity in the given item + */ + public function reset_quantity(int $item_id): bool + { + $builder = $this->db->table('item_quantities'); + $builder->where('item_id', $item_id); return $builder->update(['quantity' => 0]); - } + } - /** - * Set to 0 all quantity in the given list of items - */ - public function reset_quantity_list(array $item_ids): bool - { - $builder = $this->db->table('item_quantities'); - $builder->whereIn('item_id', $item_ids); + /** + * Set to 0 all quantity in the given list of items + */ + public function reset_quantity_list(array $item_ids): bool + { + $builder = $this->db->table('item_quantities'); + $builder->whereIn('item_id', $item_ids); return $builder->update(['quantity' => 0]); - } + } } diff --git a/app/Models/Item_taxes.php b/app/Models/Item_taxes.php index 3692b942a..b43126443 100644 --- a/app/Models/Item_taxes.php +++ b/app/Models/Item_taxes.php @@ -9,91 +9,91 @@ use CodeIgniter\Model; */ class Item_taxes extends Model { - protected $table = 'item_taxes'; - protected $primaryKey = 'item_id'; - protected $useAutoIncrement = false; - protected $useSoftDeletes = false; - protected $allowedFields = [ - 'name', - 'percent' - ]; + protected $table = 'item_taxes'; + protected $primaryKey = 'item_id'; + protected $useAutoIncrement = false; + protected $useSoftDeletes = false; + protected $allowedFields = [ + 'name', + 'percent' + ]; - /** - * Gets tax info for a particular item - */ - public function get_info(int $item_id): array - { - $builder = $this->db->table('items_taxes'); - $builder->where('item_id', $item_id); + /** + * Gets tax info for a particular item + */ + public function get_info(int $item_id): array + { + $builder = $this->db->table('items_taxes'); + $builder->where('item_id', $item_id); - //return an array of taxes for an item - return $builder->get()->getResultArray(); - } + //return an array of taxes for an item + return $builder->get()->getResultArray(); + } - /** - * Inserts or updates an item's taxes - */ - public function save_value(array &$items_taxes_data, int $item_id): bool - { - $success = true; + /** + * Inserts or updates an item's taxes + */ + public function save_value(array &$items_taxes_data, int $item_id): bool + { + $success = true; - //Run these queries as a transaction, we want to make sure we do all or nothing - $this->db->transStart(); + //Run these queries as a transaction, we want to make sure we do all or nothing + $this->db->transStart(); - $this->delete($item_id); + $this->delete($item_id); - $builder = $this->db->table('items_taxes'); + $builder = $this->db->table('items_taxes'); - foreach($items_taxes_data as $row) - { - $row['item_id'] = $item_id; - $success &= $builder->insert($row); - } + foreach($items_taxes_data as $row) + { + $row['item_id'] = $item_id; + $success &= $builder->insert($row); + } - $this->db->transComplete(); + $this->db->transComplete(); - $success &= $this->db->transStatus(); + $success &= $this->db->transStatus(); - return $success; - } + return $success; + } - /** - * Saves taxes for multiple items - */ - public function save_multiple(array &$items_taxes_data, string $item_ids): bool //TODO: investigate why this is sent as a : delimited string rather than an array. - { - $success = true; + /** + * Saves taxes for multiple items + */ + public function save_multiple(array &$items_taxes_data, string $item_ids): bool //TODO: investigate why this is sent as a : delimited string rather than an array. + { + $success = true; - //Run these queries as a transaction, we want to make sure we do all or nothing - $this->db->transStart(); + //Run these queries as a transaction, we want to make sure we do all or nothing + $this->db->transStart(); - foreach(explode(':', $item_ids) as $item_id) - { - $this->delete($item_id); + foreach(explode(':', $item_ids) as $item_id) + { + $this->delete($item_id); - $builder = $this->db->table('items_taxes'); + $builder = $this->db->table('items_taxes'); - foreach($items_taxes_data as $row) - { - $row['item_id'] = $item_id; - $success &= $builder->insert($row); - } - } + foreach($items_taxes_data as $row) + { + $row['item_id'] = $item_id; + $success &= $builder->insert($row); + } + } - $this->db->transComplete(); + $this->db->transComplete(); - $success &= $this->db->transStatus(); + $success &= $this->db->transStatus(); - return $success; - } + return $success; + } - /** - * Deletes taxes given an item - */ - public function delete($item_id = null, bool $purge = false): bool - { - $builder = $this->db->table('items_taxes'); + /** + * Deletes taxes given an item + */ + public function delete($item_id = null, bool $purge = false): bool + { + $builder = $this->db->table('items_taxes'); - return $builder->delete(['item_id' => $item_id]); - } + return $builder->delete(['item_id' => $item_id]); + } } diff --git a/app/Models/Module.php b/app/Models/Module.php index 73767b5a7..98630a5b9 100644 --- a/app/Models/Module.php +++ b/app/Models/Module.php @@ -10,157 +10,157 @@ use CodeIgniter\Model; */ class Module extends Model { - protected $table = 'modules'; - protected $primaryKey = 'module_id'; - protected $useAutoIncrement = false; - protected $useSoftDeletes = false; - protected $allowedFields = [ - 'name_lang_key', - 'desc_lang_key', - 'sort' - ]; + protected $table = 'modules'; + protected $primaryKey = 'module_id'; + protected $useAutoIncrement = false; + protected $useSoftDeletes = false; + protected $allowedFields = [ + 'name_lang_key', + 'desc_lang_key', + 'sort' + ]; - /** - * @param string $module_id - * @return string - */ - public function get_module_name(string $module_id): string - { - $builder = $this->db->table('modules'); - $query = $builder->getWhere(['module_id' => $module_id], 1); + /** + * @param string $module_id + * @return string + */ + public function get_module_name(string $module_id): string + { + $builder = $this->db->table('modules'); + $query = $builder->getWhere(['module_id' => $module_id], 1); - if($query->getNumRows() == 1) //TODO: === - { - $row = $query->getRow(); + if($query->getNumRows() == 1) //TODO: === + { + $row = $query->getRow(); - return lang($row->name_lang_key); - } + return lang($row->name_lang_key); + } - return lang('Errors.unknown'); - } + return lang('Errors.unknown'); + } - /** - * @param string $module_id - * @return string - */ - public function get_module_desc(string $module_id): string //TODO: This method doesn't seem to be called in the code. Is it needed? Also, probably should change the name to get_module_description() - { - $builder = $this->db->table('modules'); - $query = $builder->getWhere(['module_id' => $module_id], 1); + /** + * @param string $module_id + * @return string + */ + public function get_module_desc(string $module_id): string //TODO: This method doesn't seem to be called in the code. Is it needed? Also, probably should change the name to get_module_description() + { + $builder = $this->db->table('modules'); + $query = $builder->getWhere(['module_id' => $module_id], 1); - if($query->getNumRows() == 1) //TODO: === - { - $row = $query->getRow(); + if($query->getNumRows() == 1) //TODO: === + { + $row = $query->getRow(); - return lang($row->desc_lang_key); - } + return lang($row->desc_lang_key); + } - return lang('Errors.unknown'); - } + return lang('Errors.unknown'); + } - /** - * @return ResultInterface - */ - public function get_all_permissions(): ResultInterface - { - $builder = $this->db->table('permissions'); + /** + * @return ResultInterface + */ + public function get_all_permissions(): ResultInterface + { + $builder = $this->db->table('permissions'); - return $builder->get(); - } + return $builder->get(); + } - /** - * @return ResultInterface - */ - public function get_all_subpermissions(): ResultInterface - { - $builder = $this->db->table('permissions'); - $builder->join('modules AS modules', 'modules.module_id = permissions.module_id'); //TODO: can the table parameter just be modules instead of modules AS modules? + /** + * @return ResultInterface + */ + public function get_all_subpermissions(): ResultInterface + { + $builder = $this->db->table('permissions'); + $builder->join('modules AS modules', 'modules.module_id = permissions.module_id'); //TODO: can the table parameter just be modules instead of modules AS modules? - // can't quote the parameters correctly when using different operators.. - $builder->where('modules.module_id != ', 'permission_id', false); + // can't quote the parameters correctly when using different operators.. + $builder->where('modules.module_id != ', 'permission_id', false); - return $builder->get(); - } + return $builder->get(); + } - /** - * @return ResultInterface - */ - public function get_all_modules(): ResultInterface - { - $builder = $this->db->table('modules'); - $builder->orderBy('sort', 'asc'); + /** + * @return ResultInterface + */ + public function get_all_modules(): ResultInterface + { + $builder = $this->db->table('modules'); + $builder->orderBy('sort', 'asc'); - return $builder->get(); - } + return $builder->get(); + } - /** - * @param int $person_id - * @return ResultInterface - */ - public function get_allowed_home_modules(int $person_id): ResultInterface - { - $menus = ['home', 'both']; - $builder = $this->db->table('modules'); //TODO: this is duplicated with the code below... probably refactor a method and just pass through whether home/office modules are needed. - $builder->join('permissions', 'permissions.permission_id = modules.module_id'); - $builder->join('grants', 'permissions.permission_id = grants.permission_id'); - $builder->where('person_id', $person_id); - $builder->whereIn('menu_group', $menus); - $builder->where('sort !=', 0); - $builder->orderBy('sort', 'asc'); + /** + * @param int $person_id + * @return ResultInterface + */ + public function get_allowed_home_modules(int $person_id): ResultInterface + { + $menus = ['home', 'both']; + $builder = $this->db->table('modules'); //TODO: this is duplicated with the code below... probably refactor a method and just pass through whether home/office modules are needed. + $builder->join('permissions', 'permissions.permission_id = modules.module_id'); + $builder->join('grants', 'permissions.permission_id = grants.permission_id'); + $builder->where('person_id', $person_id); + $builder->whereIn('menu_group', $menus); + $builder->where('sort !=', 0); + $builder->orderBy('sort', 'asc'); - return $builder->get(); - } + return $builder->get(); + } - /** - * @param int $person_id - * @return ResultInterface - */ - public function get_allowed_office_modules(int $person_id): ResultInterface - { - $menus = ['office', 'both']; - $builder = $this->db->table('modules'); //TODO: Duplicated code - $builder->join('permissions', 'permissions.permission_id = modules.module_id'); - $builder->join('grants', 'permissions.permission_id = grants.permission_id'); - $builder->where('person_id', $person_id); - $builder->whereIn('menu_group', $menus); - $builder->where('sort !=', 0); - $builder->orderBy('sort', 'asc'); + /** + * @param int $person_id + * @return ResultInterface + */ + public function get_allowed_office_modules(int $person_id): ResultInterface + { + $menus = ['office', 'both']; + $builder = $this->db->table('modules'); //TODO: Duplicated code + $builder->join('permissions', 'permissions.permission_id = modules.module_id'); + $builder->join('grants', 'permissions.permission_id = grants.permission_id'); + $builder->where('person_id', $person_id); + $builder->whereIn('menu_group', $menus); + $builder->where('sort !=', 0); + $builder->orderBy('sort', 'asc'); - return $builder->get(); - } + return $builder->get(); + } - /** - * This method is used to set the show the office navigation icon on the home page - * which happens when the sort value is greater than zero - */ - public function set_show_office_group(bool $show_office_group): void //TODO: Should we return the value of update() as a bool for consistency? - { - if($show_office_group) //TODO: This should be replaced with ternary notation - { - $sort = 999; - } - else - { - $sort = 0; - } + /** + * This method is used to set the show the office navigation icon on the home page + * which happens when the sort value is greater than zero + */ + public function set_show_office_group(bool $show_office_group): void //TODO: Should we return the value of update() as a bool for consistency? + { + if($show_office_group) //TODO: This should be replaced with ternary notation + { + $sort = 999; + } + else + { + $sort = 0; + } - $modules_data = ['sort' => $sort]; + $modules_data = ['sort' => $sort]; - $builder = $this->db->table('modules'); - $builder->where('module_id', 'office'); - $builder->update($modules_data); - } + $builder = $this->db->table('modules'); + $builder->where('module_id', 'office'); + $builder->update($modules_data); + } - /** - * This method is used to show the office navigation icon on the home page - * which happens when the sort value is greater than zero - */ - public function get_show_office_group(): int - { - $builder = $this->db->table('modules'); - $builder->select('sort'); - $builder->where('module_id', 'office'); + /** + * This method is used to show the office navigation icon on the home page + * which happens when the sort value is greater than zero + */ + public function get_show_office_group(): int + { + $builder = $this->db->table('modules'); + $builder->select('sort'); + $builder->where('module_id', 'office'); - return $builder->get()->getRow()->sort; - } + return $builder->get()->getRow()->sort; + } } diff --git a/app/Models/Person.php b/app/Models/Person.php index dcac3a0a0..00043086b 100644 --- a/app/Models/Person.php +++ b/app/Models/Person.php @@ -11,222 +11,222 @@ use stdClass; */ class Person extends Model { - protected $table = 'people'; - protected $primaryKey = 'person_id'; - protected $useAutoIncrement = true; - protected $useSoftDeletes = false; - protected $allowedFields = [ - 'first_name', - 'last_name', - 'phone_number', - 'email', - 'address_1', - 'address_2', - 'city', - 'state', - 'zip', - 'country', - 'comments', - 'gender' - ]; + protected $table = 'people'; + protected $primaryKey = 'person_id'; + protected $useAutoIncrement = true; + protected $useSoftDeletes = false; + protected $allowedFields = [ + 'first_name', + 'last_name', + 'phone_number', + 'email', + 'address_1', + 'address_2', + 'city', + 'state', + 'zip', + 'country', + 'comments', + 'gender' + ]; - /** - * Determines whether the given person exists in the people database table - * - * @param integer $person_id identifier of the person to verify the existence - * - * @return boolean true if the person exists, false if not - */ - public function exists(int $person_id): bool - { - $builder = $this->db->table('people'); - $builder->where('people.person_id', $person_id); + /** + * Determines whether the given person exists in the people database table + * + * @param integer $person_id identifier of the person to verify the existence + * + * @return boolean true if the person exists, false if not + */ + public function exists(int $person_id): bool + { + $builder = $this->db->table('people'); + $builder->where('people.person_id', $person_id); - return ($builder->get()->getNumRows() == 1); //TODO: === - } + return ($builder->get()->getNumRows() == 1); //TODO: === + } - /** - * Gets all people from the database table - * - * @param integer $limit limits the query return rows - * @param integer $offset offset the query - */ - public function get_all(int $limit = 10000, int $offset = 0): ResultInterface - { - $builder = $this->db->table('people'); - $builder->orderBy('last_name', 'asc'); - $builder->limit($limit); - $builder->offset($offset); + /** + * Gets all people from the database table + * + * @param integer $limit limits the query return rows + * @param integer $offset offset the query + */ + public function get_all(int $limit = 10000, int $offset = 0): ResultInterface + { + $builder = $this->db->table('people'); + $builder->orderBy('last_name', 'asc'); + $builder->limit($limit); + $builder->offset($offset); - return $builder->get(); - } + return $builder->get(); + } - /** - * Gets total of rows of people database table - * - * @return integer row counter - */ - public function get_total_rows(): int - { - $builder = $this->db->table('people'); - $builder->where('deleted', 0); + /** + * Gets total of rows of people database table + * + * @return integer row counter + */ + public function get_total_rows(): int + { + $builder = $this->db->table('people'); + $builder->where('deleted', 0); - return $builder->countAllResults(); - } + return $builder->countAllResults(); + } - /** - * Gets information about a person as an array - * - * @param integer $person_id identifier of the person - * - * @return object containing all the fields of the table row - */ - public function get_info(int $person_id): object - { - $builder = $this->db->table('people'); - $query = $builder->getWhere(['person_id' => $person_id], 1); + /** + * Gets information about a person as an array + * + * @param integer $person_id identifier of the person + * + * @return object containing all the fields of the table row + */ + public function get_info(int $person_id): object + { + $builder = $this->db->table('people'); + $query = $builder->getWhere(['person_id' => $person_id], 1); - if($query->getNumRows() == 1) - { - return $query->getRow(); - } - else - { - return $this->getEmptyObject('people'); - } - } + if($query->getNumRows() == 1) + { + return $query->getRow(); + } + else + { + return $this->getEmptyObject('people'); + } + } - /** - * Initializes an empty object based on database definitions - * @param string $table_name - * @return object - */ - private function getEmptyObject(string $table_name): object - { - // Return an empty base parent object, as $item_id is NOT an item - $empty_obj = new stdClass(); + /** + * Initializes an empty object based on database definitions + * @param string $table_name + * @return object + */ + private function getEmptyObject(string $table_name): object + { + // Return an empty base parent object, as $item_id is NOT an item + $empty_obj = new stdClass(); - // Iterate through field definitions to determine how the fields should be initialized - foreach($this->db->getFieldData($table_name) as $field) - { - $field_name = $field->name; + // Iterate through field definitions to determine how the fields should be initialized + foreach($this->db->getFieldData($table_name) as $field) + { + $field_name = $field->name; - if(in_array($field->type, ['int', 'tinyint', 'decimal'])) - { - $empty_obj->$field_name = ($field->primary_key == 1) ? NEW_ENTRY : 0; - } - else - { - $empty_obj->$field_name = null; - } - } + if(in_array($field->type, ['int', 'tinyint', 'decimal'])) + { + $empty_obj->$field_name = ($field->primary_key == 1) ? NEW_ENTRY : 0; + } + else + { + $empty_obj->$field_name = null; + } + } - return $empty_obj; - } + return $empty_obj; + } - /** - * Gets information about people as an array of rows - * - * @param array $person_ids array of people identifiers - * - */ - public function get_multiple_info(array $person_ids): ResultInterface - { - $builder = $this->db->table('people'); - $builder->whereIn('person_id', $person_ids); - $builder->orderBy('last_name', 'asc'); + /** + * Gets information about people as an array of rows + * + * @param array $person_ids array of people identifiers + * + */ + public function get_multiple_info(array $person_ids): ResultInterface + { + $builder = $this->db->table('people'); + $builder->whereIn('person_id', $person_ids); + $builder->orderBy('last_name', 'asc'); - return $builder->get(); - } + return $builder->get(); + } - /** - * Inserts or updates a person - * - * @param array $person_data array containing person information - * @param int $person_id identifier of the person to update the information - * @return boolean true if the save was successful, false if not - */ - public function save_value(array &$person_data, int $person_id = NEW_ENTRY): bool - { - $builder = $this->db->table('people'); + /** + * Inserts or updates a person + * + * @param array $person_data array containing person information + * @param int $person_id identifier of the person to update the information + * @return boolean true if the save was successful, false if not + */ + public function save_value(array &$person_data, int $person_id = NEW_ENTRY): bool + { + $builder = $this->db->table('people'); - if($person_id == NEW_ENTRY || !$this->exists($person_id)) - { - if($builder->insert($person_data)) - { - $person_data['person_id'] = $this->db->insertID(); + if($person_id == NEW_ENTRY || !$this->exists($person_id)) + { + if($builder->insert($person_data)) + { + $person_data['person_id'] = $this->db->insertID(); - return true; - } + return true; + } - return false; - } + return false; + } - $builder->where('person_id', $person_id); + $builder->where('person_id', $person_id); - return $builder->update($person_data); - } + return $builder->update($person_data); + } - /** - * Get search suggestions to find person - * - * @param string $search string containing the term to search in the people table - * @param int $limit limit the search - * @return array array with the suggestion strings - */ - public function get_search_suggestions(string $search, int $limit = 25): array - { - $suggestions = []; + /** + * Get search suggestions to find person + * + * @param string $search string containing the term to search in the people table + * @param int $limit limit the search + * @return array array with the suggestion strings + */ + public function get_search_suggestions(string $search, int $limit = 25): array + { + $suggestions = []; - $builder = $this->db->table('people'); + $builder = $this->db->table('people'); //TODO: If this won't be added back into the code later, we should delete this commented section of code -// $builder->select('person_id'); -// $builder->where('deleted', 0); -// $builder->where('person_id', $search); -// $builder->groupStart(); -// $builder->like('first_name', $search); -// $builder->orLike('last_name', $search); -// $builder->orLike('CONCAT(first_name, " ", last_name)', $search); -// $builder->orLike('email', $search); -// $builder->orLike('phone_number', $search); -// $builder->groupEnd(); -// $builder->orderBy('last_name', 'asc'); +// $builder->select('person_id'); +// $builder->where('deleted', 0); +// $builder->where('person_id', $search); +// $builder->groupStart(); +// $builder->like('first_name', $search); +// $builder->orLike('last_name', $search); +// $builder->orLike('CONCAT(first_name, " ", last_name)', $search); +// $builder->orLike('email', $search); +// $builder->orLike('phone_number', $search); +// $builder->groupEnd(); +// $builder->orderBy('last_name', 'asc'); - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = ['label' => $row->person_id]; - } + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = ['label' => $row->person_id]; + } - //only return $limit suggestions - if(count($suggestions) > $limit) - { - $suggestions = array_slice($suggestions, 0, $limit); - } + //only return $limit suggestions + if(count($suggestions) > $limit) + { + $suggestions = array_slice($suggestions, 0, $limit); + } - return $suggestions; - } + return $suggestions; + } - /** - * Deletes one Person (dummy base function) - * - * @param integer $person_id person identifier - * @return boolean always true - */ - public function delete($person_id = null, bool $purge = false): bool - { - return true; - } + /** + * Deletes one Person (dummy base function) + * + * @param integer $person_id person identifier + * @return boolean always true + */ + public function delete($person_id = null, bool $purge = false): bool + { + return true; + } - /** - * Deletes a list of people (dummy base function) - * - * @param array $person_ids list of person identifiers - * @return boolean always true - */ - public function delete_list(array $person_ids): bool - { - return true; - } + /** + * Deletes a list of people (dummy base function) + * + * @param array $person_ids list of person identifiers + * @return boolean always true + */ + public function delete_list(array $person_ids): bool + { + return true; + } } diff --git a/app/Models/Receiving.php b/app/Models/Receiving.php index 1e3a97a26..c0a756fb6 100644 --- a/app/Models/Receiving.php +++ b/app/Models/Receiving.php @@ -12,355 +12,355 @@ use ReflectionException; */ class Receiving extends Model { - protected $table = 'receivings'; - protected $primaryKey = 'receiving_id'; - protected $useAutoIncrement = true; - protected $useSoftDeletes = false; - protected $allowedFields = [ - 'receiving_time', - 'supplier_id', - 'employee_id', - 'comment', - 'receiving_id', - 'payment_type', - 'reference' - ]; + protected $table = 'receivings'; + protected $primaryKey = 'receiving_id'; + protected $useAutoIncrement = true; + protected $useSoftDeletes = false; + protected $allowedFields = [ + 'receiving_time', + 'supplier_id', + 'employee_id', + 'comment', + 'receiving_id', + 'payment_type', + 'reference' + ]; - /** - * @param int $receiving_id - * @return ResultInterface - */ - public function get_info(int $receiving_id): ResultInterface - { - $builder = $this->db->table('receivings'); - $builder->join('people', 'people.person_id = receivings.supplier_id', 'LEFT'); - $builder->join('suppliers', 'suppliers.person_id = receivings.supplier_id', 'LEFT'); - $builder->where('receiving_id', $receiving_id); + /** + * @param int $receiving_id + * @return ResultInterface + */ + public function get_info(int $receiving_id): ResultInterface + { + $builder = $this->db->table('receivings'); + $builder->join('people', 'people.person_id = receivings.supplier_id', 'LEFT'); + $builder->join('suppliers', 'suppliers.person_id = receivings.supplier_id', 'LEFT'); + $builder->where('receiving_id', $receiving_id); - return $builder->get(); - } + return $builder->get(); + } - /** - * @param string $reference - * @return ResultInterface - */ - public function get_receiving_by_reference(string $reference): ResultInterface - { - $builder = $this->db->table('receivings'); - $builder->where('reference', $reference); + /** + * @param string $reference + * @return ResultInterface + */ + public function get_receiving_by_reference(string $reference): ResultInterface + { + $builder = $this->db->table('receivings'); + $builder->where('reference', $reference); - return $builder->get(); - } + return $builder->get(); + } - /** - * @param string $receipt_receiving_id - * @return bool - */ - public function is_valid_receipt(string $receipt_receiving_id): bool //TODO: maybe receipt_receiving_id should be an array rather than a space delimited string - { - if(!empty($receipt_receiving_id)) - { - //RECV # - $pieces = explode(' ', $receipt_receiving_id); + /** + * @param string $receipt_receiving_id + * @return bool + */ + public function is_valid_receipt(string $receipt_receiving_id): bool //TODO: maybe receipt_receiving_id should be an array rather than a space delimited string + { + if(!empty($receipt_receiving_id)) + { + //RECV # + $pieces = explode(' ', $receipt_receiving_id); - if(count($pieces) == 2 && preg_match('/(RECV|KIT)/', $pieces[0])) - { - return $this->exists($pieces[1]); - } - else - { - return $this->get_receiving_by_reference($receipt_receiving_id)->getNumRows() > 0; - } - } + if(count($pieces) == 2 && preg_match('/(RECV|KIT)/', $pieces[0])) + { + return $this->exists($pieces[1]); + } + else + { + return $this->get_receiving_by_reference($receipt_receiving_id)->getNumRows() > 0; + } + } - return false; - } + return false; + } - /** - * @param int $receiving_id - * @return bool - */ - public function exists(int $receiving_id): bool - { - $builder = $this->db->table('receivings'); - $builder->where('receiving_id', $receiving_id); + /** + * @param int $receiving_id + * @return bool + */ + public function exists(int $receiving_id): bool + { + $builder = $this->db->table('receivings'); + $builder->where('receiving_id', $receiving_id); - return ($builder->get()->getNumRows() == 1); - } + return ($builder->get()->getNumRows() == 1); + } - /** - * @param $receiving_id - * @param $receiving_data - * @return bool - */ - public function update($receiving_id = null, $receiving_data = null): bool - { - $builder = $this->db->table('receivings'); - $builder->where('receiving_id', $receiving_id); + /** + * @param $receiving_id + * @param $receiving_data + * @return bool + */ + public function update($receiving_id = null, $receiving_data = null): bool + { + $builder = $this->db->table('receivings'); + $builder->where('receiving_id', $receiving_id); - return $builder->update($receiving_data); - } + return $builder->update($receiving_data); + } - /** - * @throws ReflectionException - */ - public function save_value(array $items, int $supplier_id, int $employee_id, string $comment, string $reference, ?string $payment_type, int $receiving_id = NEW_ENTRY): int //TODO: $receiving_id gets overwritten before it's evaluated. It doesn't make sense to pass this here. - { - $attribute = model(Attribute::class); - $inventory = model('Inventory'); - $item = model(Item::class); - $item_quantity = model(Item_quantity::class); - $supplier = model(Supplier::class); + /** + * @throws ReflectionException + */ + public function save_value(array $items, int $supplier_id, int $employee_id, string $comment, string $reference, ?string $payment_type, int $receiving_id = NEW_ENTRY): int //TODO: $receiving_id gets overwritten before it's evaluated. It doesn't make sense to pass this here. + { + $attribute = model(Attribute::class); + $inventory = model('Inventory'); + $item = model(Item::class); + $item_quantity = model(Item_quantity::class); + $supplier = model(Supplier::class); - if(count($items) == 0) - { - return -1; //TODO: Replace -1 with a constant - } + if(count($items) == 0) + { + return -1; //TODO: Replace -1 with a constant + } - $receivings_data = [ - 'receiving_time' => date('Y-m-d H:i:s'), - 'supplier_id' => $supplier->exists($supplier_id) ? $supplier_id : null, - 'employee_id' => $employee_id, - 'payment_type' => $payment_type, - 'comment' => $comment, - 'reference' => $reference - ]; + $receivings_data = [ + 'receiving_time' => date('Y-m-d H:i:s'), + 'supplier_id' => $supplier->exists($supplier_id) ? $supplier_id : null, + 'employee_id' => $employee_id, + 'payment_type' => $payment_type, + 'comment' => $comment, + 'reference' => $reference + ]; - //Run these queries as a transaction, we want to make sure we do all or nothing - $this->db->transStart(); + //Run these queries as a transaction, we want to make sure we do all or nothing + $this->db->transStart(); - $builder = $this->db->table('receivings'); - $builder->insert($receivings_data); - $receiving_id = $this->db->insertID(); + $builder = $this->db->table('receivings'); + $builder->insert($receivings_data); + $receiving_id = $this->db->insertID(); - $builder = $this->db->table('receivings_items'); + $builder = $this->db->table('receivings_items'); - foreach($items as $line => $item_data) - { - $config = config(OSPOS::class)->settings; - $cur_item_info = $item->get_info($item_data['item_id']); + foreach($items as $line => $item_data) + { + $config = config(OSPOS::class)->settings; + $cur_item_info = $item->get_info($item_data['item_id']); - $receivings_items_data = [ - 'receiving_id' => $receiving_id, - 'item_id' => $item_data['item_id'], - 'line' => $item_data['line'], - 'description' => $item_data['description'], - 'serialnumber' => $item_data['serialnumber'], - 'quantity_purchased' => $item_data['quantity'], - 'receiving_quantity' => $item_data['receiving_quantity'], - 'discount' => $item_data['discount'], - 'discount_type' => $item_data['discount_type'], - 'item_cost_price' => $cur_item_info->cost_price, - 'item_unit_price' => $item_data['price'], - 'item_location' => $item_data['item_location'] - ]; + $receivings_items_data = [ + 'receiving_id' => $receiving_id, + 'item_id' => $item_data['item_id'], + 'line' => $item_data['line'], + 'description' => $item_data['description'], + 'serialnumber' => $item_data['serialnumber'], + 'quantity_purchased' => $item_data['quantity'], + 'receiving_quantity' => $item_data['receiving_quantity'], + 'discount' => $item_data['discount'], + 'discount_type' => $item_data['discount_type'], + 'item_cost_price' => $cur_item_info->cost_price, + 'item_unit_price' => $item_data['price'], + 'item_location' => $item_data['item_location'] + ]; - $builder->insert($receivings_items_data); + $builder->insert($receivings_items_data); - $items_received = $item_data['receiving_quantity'] != 0 ? $item_data['quantity'] * $item_data['receiving_quantity'] : $item_data['quantity']; + $items_received = $item_data['receiving_quantity'] != 0 ? $item_data['quantity'] * $item_data['receiving_quantity'] : $item_data['quantity']; - // update cost price, if changed AND is set in config as wanted - if($cur_item_info->cost_price != $item_data['price'] && $config['receiving_calculate_average_price']) - { - $item->change_cost_price($item_data['item_id'], $items_received, $item_data['price'], $cur_item_info->cost_price); - } + // update cost price, if changed AND is set in config as wanted + if($cur_item_info->cost_price != $item_data['price'] && $config['receiving_calculate_average_price']) + { + $item->change_cost_price($item_data['item_id'], $items_received, $item_data['price'], $cur_item_info->cost_price); + } - //Update stock quantity - $item_quantity_value = $item_quantity->get_item_quantity($item_data['item_id'], $item_data['item_location']); - $item_quantity->save_value([ - 'quantity' => $item_quantity_value->quantity + $items_received, - 'item_id' => $item_data['item_id'], - 'location_id' => $item_data['item_location']], - $item_data['item_id'], - $item_data['item_location'] - ); + //Update stock quantity + $item_quantity_value = $item_quantity->get_item_quantity($item_data['item_id'], $item_data['item_location']); + $item_quantity->save_value([ + 'quantity' => $item_quantity_value->quantity + $items_received, + 'item_id' => $item_data['item_id'], + 'location_id' => $item_data['item_location']], + $item_data['item_id'], + $item_data['item_location'] + ); - $recv_remarks = 'RECV ' . $receiving_id; - $inv_data = [ - 'trans_date' => date('Y-m-d H:i:s'), - 'trans_items' => $item_data['item_id'], - 'trans_user' => $employee_id, - 'trans_location' => $item_data['item_location'], - 'trans_comment' => $recv_remarks, - 'trans_inventory' => $items_received - ]; + $recv_remarks = 'RECV ' . $receiving_id; + $inv_data = [ + 'trans_date' => date('Y-m-d H:i:s'), + 'trans_items' => $item_data['item_id'], + 'trans_user' => $employee_id, + 'trans_location' => $item_data['item_location'], + 'trans_comment' => $recv_remarks, + 'trans_inventory' => $items_received + ]; - $inventory->insert($inv_data, false); - $attribute->copy_attribute_links($item_data['item_id'], 'receiving_id', $receiving_id); - } + $inventory->insert($inv_data, false); + $attribute->copy_attribute_links($item_data['item_id'], 'receiving_id', $receiving_id); + } - $this->db->transComplete(); + $this->db->transComplete(); - return $this->db->transStatus() ? $receiving_id : -1; - } + return $this->db->transStatus() ? $receiving_id : -1; + } - /** - * @throws ReflectionException - */ - public function delete_list(array $receiving_ids, int $employee_id, bool $update_inventory = true): bool - { - $success = true; + /** + * @throws ReflectionException + */ + public function delete_list(array $receiving_ids, int $employee_id, bool $update_inventory = true): bool + { + $success = true; - // start a transaction to assure data integrity - $this->db->transStart(); + // start a transaction to assure data integrity + $this->db->transStart(); - foreach($receiving_ids as $receiving_id) - { - $success &= $this->delete_value($receiving_id, $employee_id, $update_inventory); - } + foreach($receiving_ids as $receiving_id) + { + $success &= $this->delete_value($receiving_id, $employee_id, $update_inventory); + } - // execute transaction - $this->db->transComplete(); + // execute transaction + $this->db->transComplete(); - $success &= $this->db->transStatus(); + $success &= $this->db->transStatus(); - return $success; - } + return $success; + } - /** - * @throws ReflectionException - */ - public function delete_value(int $receiving_id, int $employee_id, bool $update_inventory = true): bool - { - // start a transaction to assure data integrity - $this->db->transStart(); + /** + * @throws ReflectionException + */ + public function delete_value(int $receiving_id, int $employee_id, bool $update_inventory = true): bool + { + // start a transaction to assure data integrity + $this->db->transStart(); - if($update_inventory) - { - //TODO: defect, not all item deletions will be undone? get array with all the items involved in the sale to update the inventory tracking - $items = $this->get_receiving_items($receiving_id)->getResultArray(); + if($update_inventory) + { + //TODO: defect, not all item deletions will be undone? get array with all the items involved in the sale to update the inventory tracking + $items = $this->get_receiving_items($receiving_id)->getResultArray(); - $inventory = model('Inventory'); - $item_quantity = model(Item_quantity::class); + $inventory = model('Inventory'); + $item_quantity = model(Item_quantity::class); - foreach($items as $item) - { - // create query to update inventory tracking - $inv_data = [ - 'trans_date' => date('Y-m-d H:i:s'), - 'trans_items' => $item['item_id'], - 'trans_user' => $employee_id, - 'trans_comment' => 'Deleting receiving ' . $receiving_id, - 'trans_location' => $item['item_location'], - 'trans_inventory' => $item['quantity_purchased'] * (-$item['receiving_quantity']) - ]; - // update inventory - $inventory->insert($inv_data, false); + foreach($items as $item) + { + // create query to update inventory tracking + $inv_data = [ + 'trans_date' => date('Y-m-d H:i:s'), + 'trans_items' => $item['item_id'], + 'trans_user' => $employee_id, + 'trans_comment' => 'Deleting receiving ' . $receiving_id, + 'trans_location' => $item['item_location'], + 'trans_inventory' => $item['quantity_purchased'] * (-$item['receiving_quantity']) + ]; + // update inventory + $inventory->insert($inv_data, false); - // update quantities - $item_quantity->change_quantity($item['item_id'], $item['item_location'], $item['quantity_purchased'] * (-$item['receiving_quantity'])); - } - } + // update quantities + $item_quantity->change_quantity($item['item_id'], $item['item_location'], $item['quantity_purchased'] * (-$item['receiving_quantity'])); + } + } - //delete all items - $builder = $this->db->table('receivings_items'); - $builder->delete(['receiving_id' => $receiving_id]); + //delete all items + $builder = $this->db->table('receivings_items'); + $builder->delete(['receiving_id' => $receiving_id]); - //delete sale itself - $builder = $this->db->table('receivings'); - $builder->delete(['receiving_id' => $receiving_id]); + //delete sale itself + $builder = $this->db->table('receivings'); + $builder->delete(['receiving_id' => $receiving_id]); - // execute transaction - $this->db->transComplete(); + // execute transaction + $this->db->transComplete(); - return $this->db->transStatus(); - } + return $this->db->transStatus(); + } - /** - * @param int $receiving_id - * @return ResultInterface - */ - public function get_receiving_items(int $receiving_id): ResultInterface - { - $builder = $this->db->table('receivings_items'); - $builder->where('receiving_id', $receiving_id); + /** + * @param int $receiving_id + * @return ResultInterface + */ + public function get_receiving_items(int $receiving_id): ResultInterface + { + $builder = $this->db->table('receivings_items'); + $builder->where('receiving_id', $receiving_id); - return $builder->get(); - } + return $builder->get(); + } - /** - * @param int $receiving_id - * @return object - */ - public function get_supplier(int $receiving_id): object - { - $builder = $this->db->table('receivings'); - $builder->where('receiving_id', $receiving_id); + /** + * @param int $receiving_id + * @return object + */ + public function get_supplier(int $receiving_id): object + { + $builder = $this->db->table('receivings'); + $builder->where('receiving_id', $receiving_id); - $supplier = model(Supplier::class); - return $supplier->get_info($builder->get()->getRow()->supplier_id); - } + $supplier = model(Supplier::class); + return $supplier->get_info($builder->get()->getRow()->supplier_id); + } - /** - * @return array - */ - public function get_payment_options(): array - { - return [ - lang('Sales.cash') => lang('Sales.cash'), - lang('Sales.check') => lang('Sales.check'), - lang('Sales.debit') => lang('Sales.debit'), - lang('Sales.credit') => lang('Sales.credit'), - lang('Sales.due') => lang('Sales.due') - ]; - } + /** + * @return array + */ + public function get_payment_options(): array + { + return [ + lang('Sales.cash') => lang('Sales.cash'), + lang('Sales.check') => lang('Sales.check'), + lang('Sales.debit') => lang('Sales.debit'), + lang('Sales.credit') => lang('Sales.credit'), + lang('Sales.due') => lang('Sales.due') + ]; + } - /** - * Create a temp table that allows us to do easy report/receiving queries - */ - public function create_temp_table(array $inputs): void - { - $config = config(OSPOS::class)->settings; - $db_prefix = $this->db->getPrefix(); + /** + * Create a temp table that allows us to do easy report/receiving queries + */ + public function create_temp_table(array $inputs): void + { + $config = config(OSPOS::class)->settings; + $db_prefix = $this->db->getPrefix(); - if(empty($inputs['receiving_id'])) - { - $where = empty($config['date_or_time_format']) - ? 'DATE(`receiving_time`) BETWEEN ' . $this->db->escape($inputs['start_date']) . ' AND ' . $this->db->escape($inputs['end_date']) - : 'receiving_time BETWEEN ' . $this->db->escape(rawurldecode($inputs['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($inputs['end_date'])); - } - else - { - $where = 'receivings_items.receiving_id = ' . $this->db->escape($inputs['receiving_id']); - } + if(empty($inputs['receiving_id'])) + { + $where = empty($config['date_or_time_format']) + ? 'DATE(`receiving_time`) BETWEEN ' . $this->db->escape($inputs['start_date']) . ' AND ' . $this->db->escape($inputs['end_date']) + : 'receiving_time BETWEEN ' . $this->db->escape(rawurldecode($inputs['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($inputs['end_date'])); + } + else + { + $where = 'receivings_items.receiving_id = ' . $this->db->escape($inputs['receiving_id']); + } - $builder = $this->db->table('receivings_items'); - $builder->select([ - 'MAX(DATE(`receiving_time`)) AS receiving_date', - 'MAX(`receiving_time`) AS receiving_time', - 'receivings_items.receiving_id AS receiving_id', - 'MAX(`comment`) AS comment', - 'MAX(`item_location`) AS item_location', - 'MAX(`reference`) AS reference', - 'MAX(`payment_type`) AS payment_type', - 'MAX(`employee_id`) AS employee_id', - 'items.item_id AS item_id', - 'MAX(`'. $db_prefix .'receivings`.`supplier_id`) AS supplier_id', - 'MAX(`quantity_purchased`) AS quantity_purchased', - 'MAX(`'. $db_prefix .'receivings_items`.`receiving_quantity`) AS item_receiving_quantity', - 'MAX(`item_cost_price`) AS item_cost_price', - 'MAX(`item_unit_price`) AS item_unit_price', - 'MAX(`discount`) AS discount', - 'MAX(`discount_type`) AS discount_type', - 'receivings_items.line AS line', - 'MAX(`serialnumber`) AS serialnumber', - 'MAX(`'. $db_prefix .'receivings_items`.`description`) AS description', - 'MAX(CASE WHEN `'. $db_prefix .'receivings_items`.`discount_type` = ' . PERCENT . ' THEN `item_unit_price` * `quantity_purchased` * `'. $db_prefix .'receivings_items`.`receiving_quantity` - `item_unit_price` * `quantity_purchased` * `'. $db_prefix .'receivings_items`.`receiving_quantity` * `discount` / 100 ELSE `item_unit_price` * `quantity_purchased` * `'. $db_prefix .'receivings_items`.`receiving_quantity` - `discount` END) AS subtotal', - 'MAX(CASE WHEN `'. $db_prefix .'receivings_items`.`discount_type` = ' . PERCENT . ' THEN `item_unit_price` * `quantity_purchased` * `'. $db_prefix .'receivings_items`.`receiving_quantity` - `item_unit_price` * `quantity_purchased` * `'. $db_prefix .'receivings_items`.`receiving_quantity` * `discount` / 100 ELSE `item_unit_price` * `quantity_purchased` * `'. $db_prefix .'receivings_items`.`receiving_quantity` - `discount` END) AS total', - 'MAX((CASE WHEN `'. $db_prefix .'receivings_items`.`discount_type` = ' . PERCENT . ' THEN `item_unit_price` * `quantity_purchased` * `'. $db_prefix .'receivings_items`.`receiving_quantity` - `item_unit_price` * `quantity_purchased` * `'. $db_prefix .'receivings_items`.`receiving_quantity` * `discount` / 100 ELSE `item_unit_price` * `quantity_purchased` * `'. $db_prefix .'receivings_items`.`receiving_quantity` - discount END) - (`item_cost_price` * `quantity_purchased`)) AS profit', - 'MAX(`item_cost_price` * `quantity_purchased` * `'. $db_prefix .'receivings_items`.`receiving_quantity` ) AS cost' - ]); - $builder->join('receivings', 'receivings_items.receiving_id = receivings.receiving_id', 'inner'); - $builder->join('items', 'receivings_items.item_id = items.item_id', 'inner'); - $builder->where($where); - $builder->groupBy(['receivings_items.receiving_id', 'items.item_id', 'receivings_items.line']); - $selectQuery = $builder->getCompiledSelect(); + $builder = $this->db->table('receivings_items'); + $builder->select([ + 'MAX(DATE(`receiving_time`)) AS receiving_date', + 'MAX(`receiving_time`) AS receiving_time', + 'receivings_items.receiving_id AS receiving_id', + 'MAX(`comment`) AS comment', + 'MAX(`item_location`) AS item_location', + 'MAX(`reference`) AS reference', + 'MAX(`payment_type`) AS payment_type', + 'MAX(`employee_id`) AS employee_id', + 'items.item_id AS item_id', + 'MAX(`'. $db_prefix .'receivings`.`supplier_id`) AS supplier_id', + 'MAX(`quantity_purchased`) AS quantity_purchased', + 'MAX(`'. $db_prefix .'receivings_items`.`receiving_quantity`) AS item_receiving_quantity', + 'MAX(`item_cost_price`) AS item_cost_price', + 'MAX(`item_unit_price`) AS item_unit_price', + 'MAX(`discount`) AS discount', + 'MAX(`discount_type`) AS discount_type', + 'receivings_items.line AS line', + 'MAX(`serialnumber`) AS serialnumber', + 'MAX(`'. $db_prefix .'receivings_items`.`description`) AS description', + 'MAX(CASE WHEN `'. $db_prefix .'receivings_items`.`discount_type` = ' . PERCENT . ' THEN `item_unit_price` * `quantity_purchased` * `'. $db_prefix .'receivings_items`.`receiving_quantity` - `item_unit_price` * `quantity_purchased` * `'. $db_prefix .'receivings_items`.`receiving_quantity` * `discount` / 100 ELSE `item_unit_price` * `quantity_purchased` * `'. $db_prefix .'receivings_items`.`receiving_quantity` - `discount` END) AS subtotal', + 'MAX(CASE WHEN `'. $db_prefix .'receivings_items`.`discount_type` = ' . PERCENT . ' THEN `item_unit_price` * `quantity_purchased` * `'. $db_prefix .'receivings_items`.`receiving_quantity` - `item_unit_price` * `quantity_purchased` * `'. $db_prefix .'receivings_items`.`receiving_quantity` * `discount` / 100 ELSE `item_unit_price` * `quantity_purchased` * `'. $db_prefix .'receivings_items`.`receiving_quantity` - `discount` END) AS total', + 'MAX((CASE WHEN `'. $db_prefix .'receivings_items`.`discount_type` = ' . PERCENT . ' THEN `item_unit_price` * `quantity_purchased` * `'. $db_prefix .'receivings_items`.`receiving_quantity` - `item_unit_price` * `quantity_purchased` * `'. $db_prefix .'receivings_items`.`receiving_quantity` * `discount` / 100 ELSE `item_unit_price` * `quantity_purchased` * `'. $db_prefix .'receivings_items`.`receiving_quantity` - discount END) - (`item_cost_price` * `quantity_purchased`)) AS profit', + 'MAX(`item_cost_price` * `quantity_purchased` * `'. $db_prefix .'receivings_items`.`receiving_quantity` ) AS cost' + ]); + $builder->join('receivings', 'receivings_items.receiving_id = receivings.receiving_id', 'inner'); + $builder->join('items', 'receivings_items.item_id = items.item_id', 'inner'); + $builder->where($where); + $builder->groupBy(['receivings_items.receiving_id', 'items.item_id', 'receivings_items.line']); + $selectQuery = $builder->getCompiledSelect(); - //QueryBuilder does not support creating temporary tables. - $sql = 'CREATE TEMPORARY TABLE IF NOT EXISTS ' . $this->db->prefixTable('receivings_items_temp') . - ' (INDEX(receiving_date), INDEX(receiving_time), INDEX(receiving_id)) AS (' . $selectQuery . ')'; + //QueryBuilder does not support creating temporary tables. + $sql = 'CREATE TEMPORARY TABLE IF NOT EXISTS ' . $this->db->prefixTable('receivings_items_temp') . + ' (INDEX(receiving_date), INDEX(receiving_time), INDEX(receiving_id)) AS (' . $selectQuery . ')'; - $this->db->query($sql); - } + $this->db->query($sql); + } } diff --git a/app/Models/Reports/Detailed_receivings.php b/app/Models/Reports/Detailed_receivings.php index f65d6b859..3744a3328 100644 --- a/app/Models/Reports/Detailed_receivings.php +++ b/app/Models/Reports/Detailed_receivings.php @@ -12,180 +12,180 @@ use App\Models\Receiving; */ class Detailed_receivings extends Report { - /** - * @param array $inputs - * @return void - */ - public function create(array $inputs): void - { - //Create our temp tables to work with the data in our report - $receiving = model(Receiving::class); - $receiving->create_temp_table($inputs); - } + /** + * @param array $inputs + * @return void + */ + public function create(array $inputs): void + { + //Create our temp tables to work with the data in our report + $receiving = model(Receiving::class); + $receiving->create_temp_table($inputs); + } - /** - * @return array - */ - public function getDataColumns(): array - { - return [ - 'summary' => [ - ['id' => lang('Reports.receiving_id')], - ['receiving_time' => lang('Reports.date'), 'sortable' => false], - ['quantity' => lang('Reports.quantity')], - ['employee_name' => lang('Reports.received_by')], - ['supplier_name' => lang('Reports.supplied_by')], - ['total' => lang('Reports.total'), 'sorter' => 'number_sorter'], - ['payment_type' => lang('Reports.payment_type')], - ['comment' => lang('Reports.comments')], - ['reference' => lang('Receivings.reference')] - ], - 'details' => [ - lang('Reports.item_number'), - lang('Reports.name'), - lang('Reports.category'), - lang('Reports.quantity'), - lang('Reports.total'), - lang('Reports.discount') - ] - ]; - } + /** + * @return array + */ + public function getDataColumns(): array + { + return [ + 'summary' => [ + ['id' => lang('Reports.receiving_id')], + ['receiving_time' => lang('Reports.date'), 'sortable' => false], + ['quantity' => lang('Reports.quantity')], + ['employee_name' => lang('Reports.received_by')], + ['supplier_name' => lang('Reports.supplied_by')], + ['total' => lang('Reports.total'), 'sorter' => 'number_sorter'], + ['payment_type' => lang('Reports.payment_type')], + ['comment' => lang('Reports.comments')], + ['reference' => lang('Receivings.reference')] + ], + 'details' => [ + lang('Reports.item_number'), + lang('Reports.name'), + lang('Reports.category'), + lang('Reports.quantity'), + lang('Reports.total'), + lang('Reports.discount') + ] + ]; + } - /** - * @param string $receiving_id - * @return array - */ - public function getDataByReceivingId(string $receiving_id): array - { - $builder = $this->db->table('receivings_items_temp'); - $builder->select('receiving_id, - MAX(receiving_time) as receiving_time, - SUM(quantity_purchased) AS items_purchased, - MAX(CONCAT(employee.first_name, " ", employee.last_name)) AS employee_name, - MAX(supplier.company_name) AS supplier_name, - SUM(subtotal) AS subtotal, - SUM(total) AS total, - SUM(profit) AS profit, - MAX(payment_type) as payment_type, - MAX(comment) as comment, - MAX(reference) as reference'); - $builder->join('people AS employee', 'receivings_items_temp.employee_id = employee.person_id'); - $builder->join('suppliers AS supplier', 'receivings_items_temp.supplier_id = supplier.person_id', 'left'); - $builder->where('receiving_id', $receiving_id); - $builder->groupBy('receiving_id'); + /** + * @param string $receiving_id + * @return array + */ + public function getDataByReceivingId(string $receiving_id): array + { + $builder = $this->db->table('receivings_items_temp'); + $builder->select('receiving_id, + MAX(receiving_time) as receiving_time, + SUM(quantity_purchased) AS items_purchased, + MAX(CONCAT(employee.first_name, " ", employee.last_name)) AS employee_name, + MAX(supplier.company_name) AS supplier_name, + SUM(subtotal) AS subtotal, + SUM(total) AS total, + SUM(profit) AS profit, + MAX(payment_type) as payment_type, + MAX(comment) as comment, + MAX(reference) as reference'); + $builder->join('people AS employee', 'receivings_items_temp.employee_id = employee.person_id'); + $builder->join('suppliers AS supplier', 'receivings_items_temp.supplier_id = supplier.person_id', 'left'); + $builder->where('receiving_id', $receiving_id); + $builder->groupBy('receiving_id'); - return $builder->get()->getRowArray(); - } + return $builder->get()->getRowArray(); + } - /** - * @param array $inputs - * @return array - */ - public function getData(array $inputs): array - { - $builder = $this->db->table('receivings_items_temp AS receivings_items_temp'); - $builder->select('receiving_id, - MAX(receiving_time) as receiving_time, - SUM(quantity_purchased) AS items_purchased, - MAX(CONCAT(employee.first_name," ",employee.last_name)) AS employee_name, - MAX(supplier.company_name) AS supplier_name, - SUM(total) AS total, - SUM(profit) AS profit, - MAX(payment_type) AS payment_type, - MAX(comment) AS comment, - MAX(reference) AS reference'); - $builder->join('people AS employee', 'receivings_items_temp.employee_id = employee.person_id'); - $builder->join('suppliers AS supplier', 'receivings_items_temp.supplier_id = supplier.person_id', 'left'); + /** + * @param array $inputs + * @return array + */ + public function getData(array $inputs): array + { + $builder = $this->db->table('receivings_items_temp AS receivings_items_temp'); + $builder->select('receiving_id, + MAX(receiving_time) as receiving_time, + SUM(quantity_purchased) AS items_purchased, + MAX(CONCAT(employee.first_name," ",employee.last_name)) AS employee_name, + MAX(supplier.company_name) AS supplier_name, + SUM(total) AS total, + SUM(profit) AS profit, + MAX(payment_type) AS payment_type, + MAX(comment) AS comment, + MAX(reference) AS reference'); + $builder->join('people AS employee', 'receivings_items_temp.employee_id = employee.person_id'); + $builder->join('suppliers AS supplier', 'receivings_items_temp.supplier_id = supplier.person_id', 'left'); - if($inputs['location_id'] != 'all') - { - $builder->where('item_location', $inputs['location_id']); - } + if($inputs['location_id'] != 'all') + { + $builder->where('item_location', $inputs['location_id']); + } - if($inputs['receiving_type'] == 'receiving') //TODO: These if statements should be replaced with a switch statement - { - $builder->where('quantity_purchased >', 0); - } - elseif($inputs['receiving_type'] == 'returns') - { - $builder->where('quantity_purchased <', 0); - } - elseif($inputs['receiving_type'] == 'requisitions') - { - $builder->having('items_purchased = 0'); - } + if($inputs['receiving_type'] == 'receiving') //TODO: These if statements should be replaced with a switch statement + { + $builder->where('quantity_purchased >', 0); + } + elseif($inputs['receiving_type'] == 'returns') + { + $builder->where('quantity_purchased <', 0); + } + elseif($inputs['receiving_type'] == 'requisitions') + { + $builder->having('items_purchased = 0'); + } - $builder->groupBy('receiving_id', 'receiving_time'); - $builder->orderBy('MAX(receiving_id)'); + $builder->groupBy('receiving_id', 'receiving_time'); + $builder->orderBy('MAX(receiving_id)'); - $data = []; - $data['summary'] = $builder->get()->getResultArray(); - $data['details'] = []; + $data = []; + $data['summary'] = $builder->get()->getResultArray(); + $data['details'] = []; - $builder = $this->db->table('receivings_items_temp'); + $builder = $this->db->table('receivings_items_temp'); - foreach($data['summary'] as $key => $value) - { - $builder->select(' - MAX(name) AS name, - MAX(item_number) AS item_number, - MAX(category) AS category, - MAX(quantity_purchased) AS quantity_purchased, - MAX(serialnumber) AS serialnumber, - MAX(total) AS total, - MAX(discount) AS discount, - MAX(discount_type) AS discount_type, - MAX(item_location) AS item_location, - MAX(item_receiving_quantity) AS receiving_quantity'); - $builder->join('items', 'receivings_items_temp.item_id = items.item_id'); + foreach($data['summary'] as $key => $value) + { + $builder->select(' + MAX(name) AS name, + MAX(item_number) AS item_number, + MAX(category) AS category, + MAX(quantity_purchased) AS quantity_purchased, + MAX(serialnumber) AS serialnumber, + MAX(total) AS total, + MAX(discount) AS discount, + MAX(discount_type) AS discount_type, + MAX(item_location) AS item_location, + MAX(item_receiving_quantity) AS receiving_quantity'); + $builder->join('items', 'receivings_items_temp.item_id = items.item_id'); - if(count($inputs['definition_ids']) > 0) - { - $format = $this->db->escape(dateformat_mysql()); - $builder->select('GROUP_CONCAT(DISTINCT CONCAT_WS(\'_\', definition_id, attribute_value) ORDER BY definition_id SEPARATOR \'|\') AS attribute_values'); - $builder->select("GROUP_CONCAT(DISTINCT CONCAT_WS('_', definition_id, DATE_FORMAT(attribute_date, $format)) SEPARATOR '|') AS attribute_dtvalues"); - $builder->select('GROUP_CONCAT(DISTINCT CONCAT_WS(\'_\', definition_id, attribute_decimal) SEPARATOR \'|\') AS attribute_dvalues'); - $builder->join('attribute_links', 'attribute_links.item_id = items.item_id AND attribute_links.receiving_id = receivings_items_temp.receiving_id AND definition_id IN (' . implode(',', $inputs['definition_ids']) . ')', 'left'); - $builder->join('attribute_values', 'attribute_values.attribute_id = attribute_links.attribute_id', 'left'); - } + if(count($inputs['definition_ids']) > 0) + { + $format = $this->db->escape(dateformat_mysql()); + $builder->select('GROUP_CONCAT(DISTINCT CONCAT_WS(\'_\', definition_id, attribute_value) ORDER BY definition_id SEPARATOR \'|\') AS attribute_values'); + $builder->select("GROUP_CONCAT(DISTINCT CONCAT_WS('_', definition_id, DATE_FORMAT(attribute_date, $format)) SEPARATOR '|') AS attribute_dtvalues"); + $builder->select('GROUP_CONCAT(DISTINCT CONCAT_WS(\'_\', definition_id, attribute_decimal) SEPARATOR \'|\') AS attribute_dvalues'); + $builder->join('attribute_links', 'attribute_links.item_id = items.item_id AND attribute_links.receiving_id = receivings_items_temp.receiving_id AND definition_id IN (' . implode(',', $inputs['definition_ids']) . ')', 'left'); + $builder->join('attribute_values', 'attribute_values.attribute_id = attribute_links.attribute_id', 'left'); + } - $builder->where('receivings_items_temp.receiving_id', $value['receiving_id']); - $builder->groupBy('receivings_items_temp.receiving_id, receivings_items_temp.item_id'); - $data['details'][$key] = $builder->get()->getResultArray(); - } + $builder->where('receivings_items_temp.receiving_id', $value['receiving_id']); + $builder->groupBy('receivings_items_temp.receiving_id, receivings_items_temp.item_id'); + $data['details'][$key] = $builder->get()->getResultArray(); + } - return $data; - } + return $data; + } - /** - * @param array $inputs - * @return array - */ - public function getSummaryData(array $inputs): array - { - $builder = $this->db->table('receivings_items_temp'); - $builder->select('SUM(total) AS total'); + /** + * @param array $inputs + * @return array + */ + public function getSummaryData(array $inputs): array + { + $builder = $this->db->table('receivings_items_temp'); + $builder->select('SUM(total) AS total'); - if($inputs['location_id'] != 'all') - { - $builder->where('item_location', $inputs['location_id']); - } + if($inputs['location_id'] != 'all') + { + $builder->where('item_location', $inputs['location_id']); + } - switch($inputs['receiving_type']) - { - case 'receiving': - $builder->where('quantity_purchased >', 0); - break; + switch($inputs['receiving_type']) + { + case 'receiving': + $builder->where('quantity_purchased >', 0); + break; - case 'returns': - $builder->where('quantity_purchased <', 0); - break; + case 'returns': + $builder->where('quantity_purchased <', 0); + break; - case 'requisitions': - $builder->where('quantity_purchased', 0); - break; - } + case 'requisitions': + $builder->where('quantity_purchased', 0); + break; + } - return $builder->get()->getRowArray(); - } + return $builder->get()->getRowArray(); + } } diff --git a/app/Models/Reports/Detailed_sales.php b/app/Models/Reports/Detailed_sales.php index e682e608f..2fcd88a6e 100644 --- a/app/Models/Reports/Detailed_sales.php +++ b/app/Models/Reports/Detailed_sales.php @@ -12,260 +12,260 @@ use App\Models\Sale; */ class Detailed_sales extends Report { - /** - * @param array $inputs - * @return void - */ - public function create(array $inputs): void - { - //Create our temp tables to work with the data in our report - $sale = model(Sale::class); - $sale->create_temp_table($inputs); - } + /** + * @param array $inputs + * @return void + */ + public function create(array $inputs): void + { + //Create our temp tables to work with the data in our report + $sale = model(Sale::class); + $sale->create_temp_table($inputs); + } - /** - * @return array - */ - public function getDataColumns(): array - { - return [ //TODO: Duplicated code - 'summary' => [ - ['id' => lang('Reports.sale_id')], - ['type_code' => lang('Reports.code_type')], - ['sale_time' => lang('Reports.date'), 'sortable' => false], - ['quantity' => lang('Reports.quantity')], - ['employee_name' => lang('Reports.sold_by')], - ['customer_name' => lang('Reports.sold_to')], - ['subtotal' => lang('Reports.subtotal'), 'sorter' => 'number_sorter'], - ['tax' => lang('Reports.tax'), 'sorter' => 'number_sorter'], - ['total' => lang('Reports.total'), 'sorter' => 'number_sorter'], - ['cost' => lang('Reports.cost'), 'sorter' => 'number_sorter'], - ['profit' => lang('Reports.profit'), 'sorter' => 'number_sorter'], - ['payment_type' => lang('Reports.payment_type'), 'sortable' => false], - ['comment' => lang('Reports.comments')] - ], - 'details' => [ - lang('Reports.name'), - lang('Reports.category'), - lang('Reports.item_number'), - lang('Reports.description'), - lang('Reports.quantity'), - lang('Reports.subtotal'), - lang('Reports.tax'), - lang('Reports.total'), - lang('Reports.cost'), - lang('Reports.profit'), - lang('Reports.discount') - ], - 'details_rewards' => [ - lang('Reports.used'), - lang('Reports.earned') - ] - ]; - } + /** + * @return array + */ + public function getDataColumns(): array + { + return [ //TODO: Duplicated code + 'summary' => [ + ['id' => lang('Reports.sale_id')], + ['type_code' => lang('Reports.code_type')], + ['sale_time' => lang('Reports.date'), 'sortable' => false], + ['quantity' => lang('Reports.quantity')], + ['employee_name' => lang('Reports.sold_by')], + ['customer_name' => lang('Reports.sold_to')], + ['subtotal' => lang('Reports.subtotal'), 'sorter' => 'number_sorter'], + ['tax' => lang('Reports.tax'), 'sorter' => 'number_sorter'], + ['total' => lang('Reports.total'), 'sorter' => 'number_sorter'], + ['cost' => lang('Reports.cost'), 'sorter' => 'number_sorter'], + ['profit' => lang('Reports.profit'), 'sorter' => 'number_sorter'], + ['payment_type' => lang('Reports.payment_type'), 'sortable' => false], + ['comment' => lang('Reports.comments')] + ], + 'details' => [ + lang('Reports.name'), + lang('Reports.category'), + lang('Reports.item_number'), + lang('Reports.description'), + lang('Reports.quantity'), + lang('Reports.subtotal'), + lang('Reports.tax'), + lang('Reports.total'), + lang('Reports.cost'), + lang('Reports.profit'), + lang('Reports.discount') + ], + 'details_rewards' => [ + lang('Reports.used'), + lang('Reports.earned') + ] + ]; + } - /** - * @param int $sale_id - * @return array - */ - public function getDataBySaleId(int $sale_id): array - { - $builder = $this->db->table('sales_items_temp'); - $builder->select('sale_id, - MAX(sale_time) as sale_time, - SUM(quantity_purchased) AS items_purchased, - MAX(employee_name) AS employee_name, - MAX(customer_name) AS customer_name, - SUM(subtotal) AS subtotal, - SUM(tax) AS tax, - SUM(total) AS total, - SUM(cost) AS cost, - SUM(profit) AS profit, - MAX(payment_type) AS payment_type, - MAX(sale_status) AS sale_status, - comment'); - $builder->where('sale_id', $sale_id); + /** + * @param int $sale_id + * @return array + */ + public function getDataBySaleId(int $sale_id): array + { + $builder = $this->db->table('sales_items_temp'); + $builder->select('sale_id, + MAX(sale_time) as sale_time, + SUM(quantity_purchased) AS items_purchased, + MAX(employee_name) AS employee_name, + MAX(customer_name) AS customer_name, + SUM(subtotal) AS subtotal, + SUM(tax) AS tax, + SUM(total) AS total, + SUM(cost) AS cost, + SUM(profit) AS profit, + MAX(payment_type) AS payment_type, + MAX(sale_status) AS sale_status, + comment'); + $builder->where('sale_id', $sale_id); - return $builder->get()->getRowArray(); - } + return $builder->get()->getRowArray(); + } - /** - * @param array $inputs - * @return array - */ - public function getData(array $inputs): array - { - $builder = $this->db->table('sales_items_temp'); - $builder->select('sale_id, - MAX(CASE - WHEN sale_type = ' . SALE_TYPE_POS . ' && sale_status = ' . COMPLETED . ' THEN \'' . lang('Reports.code_pos') . '\' - WHEN sale_type = ' . SALE_TYPE_INVOICE . ' && sale_status = ' . COMPLETED . ' THEN \'' . lang('Reports.code_invoice') . '\' - WHEN sale_type = ' . SALE_TYPE_WORK_ORDER . ' && sale_status = ' . SUSPENDED . ' THEN \'' . lang('Reports.code_work_order') . '\' - WHEN sale_type = ' . SALE_TYPE_QUOTE . ' && sale_status = ' . SUSPENDED . ' THEN \'' . lang('Reports.code_quote') . '\' - WHEN sale_type = ' . SALE_TYPE_RETURN . ' && sale_status = ' . COMPLETED . ' THEN \'' . lang('Reports.code_return') . '\' - WHEN sale_status = ' . CANCELED . ' THEN \'' . lang('Reports.code_canceled') . '\' - ELSE \'\' - END) AS type_code, - MAX(sale_status) as sale_status, - MAX(sale_time) AS sale_time, - SUM(quantity_purchased) AS items_purchased, - MAX(employee_name) AS employee_name, - MAX(customer_name) AS customer_name, - SUM(subtotal) AS subtotal, - SUM(tax) AS tax, - SUM(total) AS total, - SUM(cost) AS cost, - SUM(profit) AS profit, - MAX(payment_type) AS payment_type, - MAX(comment) AS comment'); + /** + * @param array $inputs + * @return array + */ + public function getData(array $inputs): array + { + $builder = $this->db->table('sales_items_temp'); + $builder->select('sale_id, + MAX(CASE + WHEN sale_type = ' . SALE_TYPE_POS . ' && sale_status = ' . COMPLETED . ' THEN \'' . lang('Reports.code_pos') . '\' + WHEN sale_type = ' . SALE_TYPE_INVOICE . ' && sale_status = ' . COMPLETED . ' THEN \'' . lang('Reports.code_invoice') . '\' + WHEN sale_type = ' . SALE_TYPE_WORK_ORDER . ' && sale_status = ' . SUSPENDED . ' THEN \'' . lang('Reports.code_work_order') . '\' + WHEN sale_type = ' . SALE_TYPE_QUOTE . ' && sale_status = ' . SUSPENDED . ' THEN \'' . lang('Reports.code_quote') . '\' + WHEN sale_type = ' . SALE_TYPE_RETURN . ' && sale_status = ' . COMPLETED . ' THEN \'' . lang('Reports.code_return') . '\' + WHEN sale_status = ' . CANCELED . ' THEN \'' . lang('Reports.code_canceled') . '\' + ELSE \'\' + END) AS type_code, + MAX(sale_status) as sale_status, + MAX(sale_time) AS sale_time, + SUM(quantity_purchased) AS items_purchased, + MAX(employee_name) AS employee_name, + MAX(customer_name) AS customer_name, + SUM(subtotal) AS subtotal, + SUM(tax) AS tax, + SUM(total) AS total, + SUM(cost) AS cost, + SUM(profit) AS profit, + MAX(payment_type) AS payment_type, + MAX(comment) AS comment'); - if($inputs['location_id'] != 'all') //TODO: Duplicated code - { - $builder->where('item_location', $inputs['location_id']); - } + if($inputs['location_id'] != 'all') //TODO: Duplicated code + { + $builder->where('item_location', $inputs['location_id']); + } - switch($inputs['sale_type']) - { - case 'complete': - $builder->where('sale_status', COMPLETED); - $builder->groupStart(); - $builder->where('sale_type', SALE_TYPE_POS); - $builder->orWhere('sale_type', SALE_TYPE_INVOICE); - $builder->orWhere('sale_type', SALE_TYPE_RETURN); - $builder->groupEnd(); - break; + switch($inputs['sale_type']) + { + case 'complete': + $builder->where('sale_status', COMPLETED); + $builder->groupStart(); + $builder->where('sale_type', SALE_TYPE_POS); + $builder->orWhere('sale_type', SALE_TYPE_INVOICE); + $builder->orWhere('sale_type', SALE_TYPE_RETURN); + $builder->groupEnd(); + break; - case 'sales': - $builder->where('sale_status', COMPLETED); - $builder->groupStart(); - $builder->where('sale_type', SALE_TYPE_POS); - $builder->orWhere('sale_type', SALE_TYPE_INVOICE); - $builder->groupEnd(); - break; + case 'sales': + $builder->where('sale_status', COMPLETED); + $builder->groupStart(); + $builder->where('sale_type', SALE_TYPE_POS); + $builder->orWhere('sale_type', SALE_TYPE_INVOICE); + $builder->groupEnd(); + break; - case 'quotes': - $builder->where('sale_status', SUSPENDED); - $builder->where('sale_type', SALE_TYPE_QUOTE); - break; + case 'quotes': + $builder->where('sale_status', SUSPENDED); + $builder->where('sale_type', SALE_TYPE_QUOTE); + break; - case 'work_orders': - $builder->where('sale_status', SUSPENDED); - $builder->where('sale_type', SALE_TYPE_WORK_ORDER); - break; + case 'work_orders': + $builder->where('sale_status', SUSPENDED); + $builder->where('sale_type', SALE_TYPE_WORK_ORDER); + break; - case 'canceled': - $builder->where('sale_status', CANCELED); - break; + case 'canceled': + $builder->where('sale_status', CANCELED); + break; - case 'returns': - $builder->where('sale_status', COMPLETED); - $builder->where('sale_type', SALE_TYPE_RETURN); - break; - } + case 'returns': + $builder->where('sale_status', COMPLETED); + $builder->where('sale_type', SALE_TYPE_RETURN); + break; + } - $builder->groupBy('sale_id'); - $builder->orderBy('MAX(sale_time)'); + $builder->groupBy('sale_id'); + $builder->orderBy('MAX(sale_time)'); - $data = []; - $data['summary'] = $builder->get()->getResultArray(); - $data['details'] = []; - $data['rewards'] = []; + $data = []; + $data['summary'] = $builder->get()->getResultArray(); + $data['details'] = []; + $data['rewards'] = []; - foreach($data['summary'] as $key => $value) - { - $builder = $this->db->table('sales_items_temp'); - $builder->select(' - MAX(name) AS name, - MAX(category) AS category, - MAX(quantity_purchased) AS quantity_purchased, - MAX(item_location) AS item_location, - MAX(item_number) AS item_number, - MAX(description) AS description, - MAX(subtotal) AS subtotal, - MAX(tax) AS tax, - MAX(total) AS total, - MAX(cost) AS cost, - MAX(profit) AS profit, - MAX(discount) AS discount, - MAX(discount_type) AS discount_type, - MAX(sale_status) AS sale_status'); + foreach($data['summary'] as $key => $value) + { + $builder = $this->db->table('sales_items_temp'); + $builder->select(' + MAX(name) AS name, + MAX(category) AS category, + MAX(quantity_purchased) AS quantity_purchased, + MAX(item_location) AS item_location, + MAX(item_number) AS item_number, + MAX(description) AS description, + MAX(subtotal) AS subtotal, + MAX(tax) AS tax, + MAX(total) AS total, + MAX(cost) AS cost, + MAX(profit) AS profit, + MAX(discount) AS discount, + MAX(discount_type) AS discount_type, + MAX(sale_status) AS sale_status'); - if(count($inputs['definition_ids']) > 0) - { - $format = $this->db->escape(dateformat_mysql()); - $builder->select('GROUP_CONCAT(DISTINCT CONCAT_WS(\'_\', definition_id, attribute_value) ORDER BY definition_id SEPARATOR \'|\') AS attribute_values'); - $builder->select("GROUP_CONCAT(DISTINCT CONCAT_WS('_', definition_id, DATE_FORMAT(attribute_date, $format)) SEPARATOR '|') AS attribute_dtvalues"); - $builder->select('GROUP_CONCAT(DISTINCT CONCAT_WS(\'_\', definition_id, attribute_decimal) SEPARATOR \'|\') AS attribute_dvalues'); - $builder->join('attribute_links', 'attribute_links.item_id = sales_items_temp.item_id AND attribute_links.sale_id = sales_items_temp.sale_id AND definition_id IN (' . implode(',', $inputs['definition_ids']) . ')', 'left'); - $builder->join('attribute_values', 'attribute_values.attribute_id = attribute_links.attribute_id', 'left'); - } + if(count($inputs['definition_ids']) > 0) + { + $format = $this->db->escape(dateformat_mysql()); + $builder->select('GROUP_CONCAT(DISTINCT CONCAT_WS(\'_\', definition_id, attribute_value) ORDER BY definition_id SEPARATOR \'|\') AS attribute_values'); + $builder->select("GROUP_CONCAT(DISTINCT CONCAT_WS('_', definition_id, DATE_FORMAT(attribute_date, $format)) SEPARATOR '|') AS attribute_dtvalues"); + $builder->select('GROUP_CONCAT(DISTINCT CONCAT_WS(\'_\', definition_id, attribute_decimal) SEPARATOR \'|\') AS attribute_dvalues'); + $builder->join('attribute_links', 'attribute_links.item_id = sales_items_temp.item_id AND attribute_links.sale_id = sales_items_temp.sale_id AND definition_id IN (' . implode(',', $inputs['definition_ids']) . ')', 'left'); + $builder->join('attribute_values', 'attribute_values.attribute_id = attribute_links.attribute_id', 'left'); + } - $builder->groupBy('sales_items_temp.sale_id, sales_items_temp.item_id, sales_items_temp.sale_id'); - $builder->where('sales_items_temp.sale_id', $value['sale_id']); - $data['details'][$key] = $builder->get()->getResultArray(); + $builder->groupBy('sales_items_temp.sale_id, sales_items_temp.item_id, sales_items_temp.sale_id'); + $builder->where('sales_items_temp.sale_id', $value['sale_id']); + $data['details'][$key] = $builder->get()->getResultArray(); - $builder->select('used, earned'); - $builder = $this->db->table('sales_reward_points'); - $builder->where('sale_id', $value['sale_id']); - $data['rewards'][$key] = $builder->get()->getResultArray(); - } + $builder->select('used, earned'); + $builder = $this->db->table('sales_reward_points'); + $builder->where('sale_id', $value['sale_id']); + $data['rewards'][$key] = $builder->get()->getResultArray(); + } - return $data; - } + return $data; + } - /** - * @param array $inputs - * @return array - */ - public function getSummaryData(array $inputs): array - { - $builder = $this->db->table('sales_items_temp'); - $builder->select('SUM(subtotal) AS subtotal, SUM(tax) AS tax, SUM(total) AS total, SUM(cost) AS cost, SUM(profit) AS profit'); + /** + * @param array $inputs + * @return array + */ + public function getSummaryData(array $inputs): array + { + $builder = $this->db->table('sales_items_temp'); + $builder->select('SUM(subtotal) AS subtotal, SUM(tax) AS tax, SUM(total) AS total, SUM(cost) AS cost, SUM(profit) AS profit'); - if($inputs['location_id'] != 'all') //TODO: Duplicated code - { - $builder->where('item_location', $inputs['location_id']); - } + if($inputs['location_id'] != 'all') //TODO: Duplicated code + { + $builder->where('item_location', $inputs['location_id']); + } - switch($inputs['sale_type']) - { - case 'complete': - $builder->where('sale_status', COMPLETED); - $builder->groupStart(); - $builder->where('sale_type', SALE_TYPE_POS); - $builder->orWhere('sale_type', SALE_TYPE_INVOICE); - $builder->orWhere('sale_type', SALE_TYPE_RETURN); - $builder->groupEnd(); - break; + switch($inputs['sale_type']) + { + case 'complete': + $builder->where('sale_status', COMPLETED); + $builder->groupStart(); + $builder->where('sale_type', SALE_TYPE_POS); + $builder->orWhere('sale_type', SALE_TYPE_INVOICE); + $builder->orWhere('sale_type', SALE_TYPE_RETURN); + $builder->groupEnd(); + break; - case 'sales': - $builder->where('sale_status', COMPLETED); - $builder->groupStart(); - $builder->where('sale_type', SALE_TYPE_POS); - $builder->orWhere('sale_type', SALE_TYPE_INVOICE); - $builder->groupEnd(); - break; + case 'sales': + $builder->where('sale_status', COMPLETED); + $builder->groupStart(); + $builder->where('sale_type', SALE_TYPE_POS); + $builder->orWhere('sale_type', SALE_TYPE_INVOICE); + $builder->groupEnd(); + break; - case 'quotes': - $builder->where('sale_status', SUSPENDED); - $builder->where('sale_type', SALE_TYPE_QUOTE); - break; + case 'quotes': + $builder->where('sale_status', SUSPENDED); + $builder->where('sale_type', SALE_TYPE_QUOTE); + break; - case 'work_orders': - $builder->where('sale_status', SUSPENDED); - $builder->where('sale_type', SALE_TYPE_WORK_ORDER); - break; + case 'work_orders': + $builder->where('sale_status', SUSPENDED); + $builder->where('sale_type', SALE_TYPE_WORK_ORDER); + break; - case 'canceled': - $builder->where('sale_status', CANCELED); - break; + case 'canceled': + $builder->where('sale_status', CANCELED); + break; - case 'returns': - $builder->where('sale_status', COMPLETED); - $builder->where('sale_type', SALE_TYPE_RETURN); - break; - } + case 'returns': + $builder->where('sale_status', COMPLETED); + $builder->where('sale_type', SALE_TYPE_RETURN); + break; + } - return $builder->get()->getRowArray(); - } + return $builder->get()->getRowArray(); + } } diff --git a/app/Models/Reports/Inventory_low.php b/app/Models/Reports/Inventory_low.php index a5e8e72eb..b204474e9 100644 --- a/app/Models/Reports/Inventory_low.php +++ b/app/Models/Reports/Inventory_low.php @@ -12,50 +12,50 @@ use App\Models\Item; */ class Inventory_low extends Report { - /** - * @return array[] - */ - public function getDataColumns(): array - { - return [ - ['item_name' => lang('Reports.item_name')], - ['item_number' => lang('Reports.item_number')], - ['quantity' => lang('Reports.quantity')], - ['reorder_level' => lang('Reports.reorder_level')], - ['location_name' => lang('Reports.stock_location')] - ]; - } + /** + * @return array[] + */ + public function getDataColumns(): array + { + return [ + ['item_name' => lang('Reports.item_name')], + ['item_number' => lang('Reports.item_number')], + ['quantity' => lang('Reports.quantity')], + ['reorder_level' => lang('Reports.reorder_level')], + ['location_name' => lang('Reports.stock_location')] + ]; + } - /** - * @param array $inputs - * @return array - */ - public function getData(array $inputs): array - {//TODO: convert to using QueryBuilder. Use App/Models/Reports/Summary_taxes.php getData() as a reference template - $item = model(Item::class); - $query = $this->db->query("SELECT " . $item->get_item_name('name') . ", - items.item_number, - item_quantities.quantity, - items.reorder_level, - stock_locations.location_name - FROM " . $this->db->prefixTable('items') . " AS items - JOIN " . $this->db->prefixTable('item_quantities') . " AS item_quantities ON items.item_id = item_quantities.item_id - JOIN " . $this->db->prefixTable('stock_locations') . " AS stock_locations ON item_quantities.location_id = stock_locations.location_id - WHERE items.deleted = 0 - AND items.stock_type = 0 - AND item_quantities.quantity <= items.reorder_level - AND stock_locations.deleted = 0 - ORDER BY items.name"); + /** + * @param array $inputs + * @return array + */ + public function getData(array $inputs): array + {//TODO: convert to using QueryBuilder. Use App/Models/Reports/Summary_taxes.php getData() as a reference template + $item = model(Item::class); + $query = $this->db->query("SELECT " . $item->get_item_name('name') . ", + items.item_number, + item_quantities.quantity, + items.reorder_level, + stock_locations.location_name + FROM " . $this->db->prefixTable('items') . " AS items + JOIN " . $this->db->prefixTable('item_quantities') . " AS item_quantities ON items.item_id = item_quantities.item_id + JOIN " . $this->db->prefixTable('stock_locations') . " AS stock_locations ON item_quantities.location_id = stock_locations.location_id + WHERE items.deleted = 0 + AND items.stock_type = 0 + AND item_quantities.quantity <= items.reorder_level + AND stock_locations.deleted = 0 + ORDER BY items.name"); - return $query->getResultArray() ?: []; - } + return $query->getResultArray() ?: []; + } - /** - * @param array $inputs - * @return array - */ - public function getSummaryData(array $inputs): array - { - return []; - } + /** + * @param array $inputs + * @return array + */ + public function getSummaryData(array $inputs): array + { + return []; + } } diff --git a/app/Models/Reports/Inventory_summary.php b/app/Models/Reports/Inventory_summary.php index 8b1ec0829..76af90d14 100644 --- a/app/Models/Reports/Inventory_summary.php +++ b/app/Models/Reports/Inventory_summary.php @@ -12,110 +12,110 @@ use App\Models\Item; */ class Inventory_summary extends Report { - /** - * @return array[] - */ - public function getDataColumns(): array - { - return [ - ['item_name' => lang('Reports.item_name')], - ['item_number' => lang('Reports.item_number')], - ['category' => lang('Reports.category')], - ['quantity' => lang('Reports.quantity')], - ['low_sell_quantity' => lang('Reports.low_sell_quantity')], - ['reorder_level' => lang('Reports.reorder_level')], - ['location_name' => lang('Reports.stock_location')], - ['cost_price' => lang('Reports.cost_price'), 'sorter' => 'number_sorter'], - ['unit_price' => lang('Reports.unit_price'), 'sorter' => 'number_sorter'], - ['subtotal' => lang('Reports.sub_total_value'), 'sorter' => 'number_sorter'] - ]; - } + /** + * @return array[] + */ + public function getDataColumns(): array + { + return [ + ['item_name' => lang('Reports.item_name')], + ['item_number' => lang('Reports.item_number')], + ['category' => lang('Reports.category')], + ['quantity' => lang('Reports.quantity')], + ['low_sell_quantity' => lang('Reports.low_sell_quantity')], + ['reorder_level' => lang('Reports.reorder_level')], + ['location_name' => lang('Reports.stock_location')], + ['cost_price' => lang('Reports.cost_price'), 'sorter' => 'number_sorter'], + ['unit_price' => lang('Reports.unit_price'), 'sorter' => 'number_sorter'], + ['subtotal' => lang('Reports.sub_total_value'), 'sorter' => 'number_sorter'] + ]; + } - /** - * @param array $inputs - * @return array - */ - public function getData(array $inputs): array - { - $item = model(Item::class); + /** + * @param array $inputs + * @return array + */ + public function getData(array $inputs): array + { + $item = model(Item::class); - $builder = $this->db->table('items AS items'); - $builder->select($item->get_item_name('name') . ', - items.item_number, - items.category, - item_quantities.quantity, - (item_quantities.quantity * items.qty_per_pack) as low_sell_quantity, - items.reorder_level, - stock_locations.location_name, - items.cost_price, - items.unit_price, - (items.cost_price * item_quantities.quantity) AS sub_total_value' - ); - $builder->join('item_quantities AS item_quantities', 'items.item_id = item_quantities.item_id'); - $builder->join('stock_locations AS stock_locations', 'item_quantities.location_id = stock_locations.location_id'); - $builder->where('items.deleted', 0); - $builder->where('items.stock_type', 0); - $builder->where('stock_locations.deleted', 0); + $builder = $this->db->table('items AS items'); + $builder->select($item->get_item_name('name') . ', + items.item_number, + items.category, + item_quantities.quantity, + (item_quantities.quantity * items.qty_per_pack) as low_sell_quantity, + items.reorder_level, + stock_locations.location_name, + items.cost_price, + items.unit_price, + (items.cost_price * item_quantities.quantity) AS sub_total_value' + ); + $builder->join('item_quantities AS item_quantities', 'items.item_id = item_quantities.item_id'); + $builder->join('stock_locations AS stock_locations', 'item_quantities.location_id = stock_locations.location_id'); + $builder->where('items.deleted', 0); + $builder->where('items.stock_type', 0); + $builder->where('stock_locations.deleted', 0); - // should be corresponding to the values Inventory_summary::getItemCountDropdownArray() returns... - if($inputs['item_count'] == 'zero_and_less') - { - $builder->where('item_quantities.quantity <=', 0); - } - elseif($inputs['item_count'] == 'more_than_zero') - { - $builder->where('item_quantities.quantity >', 0); - } + // should be corresponding to the values Inventory_summary::getItemCountDropdownArray() returns... + if($inputs['item_count'] == 'zero_and_less') + { + $builder->where('item_quantities.quantity <=', 0); + } + elseif($inputs['item_count'] == 'more_than_zero') + { + $builder->where('item_quantities.quantity >', 0); + } - if($inputs['location_id'] != 'all') - { - $builder->where('stock_locations.location_id', $inputs['location_id']); - } + if($inputs['location_id'] != 'all') + { + $builder->where('stock_locations.location_id', $inputs['location_id']); + } $builder->orderBy('items.name'); - $builder->orderBy('items.qty_per_pack'); + $builder->orderBy('items.qty_per_pack'); - return $builder->get()->getResultArray(); - } + return $builder->get()->getResultArray(); + } - /** - * calculates the total value of the given inventory summary by summing all sub_total_values (see Inventory_summary::getData()) - * - * @param array $inputs expects the reports-data-array which Inventory_summary::getData() returns - * - * @return array - */ - public function getSummaryData(array $inputs): array - { - $return = [ //TODO: This variable name should be refactored to reflect what it is... perhaps summary_data - 'total_inventory_value' => 0, - 'total_quantity' => 0, - 'total_low_sell_quantity' => 0, - 'total_retail' => 0 - ]; + /** + * calculates the total value of the given inventory summary by summing all sub_total_values (see Inventory_summary::getData()) + * + * @param array $inputs expects the reports-data-array which Inventory_summary::getData() returns + * + * @return array + */ + public function getSummaryData(array $inputs): array + { + $return = [ //TODO: This variable name should be refactored to reflect what it is... perhaps summary_data + 'total_inventory_value' => 0, + 'total_quantity' => 0, + 'total_low_sell_quantity' => 0, + 'total_retail' => 0 + ]; - foreach($inputs as $input) - { - $return['total_inventory_value'] += $input['sub_total_value']; - $return['total_quantity'] += $input['quantity']; - $return['total_low_sell_quantity'] += $input['low_sell_quantity']; - $return['total_retail'] += $input['unit_price'] * $input['quantity']; - } + foreach($inputs as $input) + { + $return['total_inventory_value'] += $input['sub_total_value']; + $return['total_quantity'] += $input['quantity']; + $return['total_low_sell_quantity'] += $input['low_sell_quantity']; + $return['total_retail'] += $input['unit_price'] * $input['quantity']; + } - return $return; - } + return $return; + } - /** - * returns the array for the dropdown-element item-count in the form for the inventory summary-report - * - * @return array - */ - public function getItemCountDropdownArray(): array - { - return [ - 'all' => lang('Reports.all'), - 'zero_and_less' => lang('Reports.zero_and_less'), - 'more_than_zero' => lang('Reports.more_than_zero') - ]; - } + /** + * returns the array for the dropdown-element item-count in the form for the inventory summary-report + * + * @return array + */ + public function getItemCountDropdownArray(): array + { + return [ + 'all' => lang('Reports.all'), + 'zero_and_less' => lang('Reports.zero_and_less'), + 'more_than_zero' => lang('Reports.more_than_zero') + ]; + } } diff --git a/app/Models/Reports/Report.php b/app/Models/Reports/Report.php index 683f5f333..dc17acc3c 100644 --- a/app/Models/Reports/Report.php +++ b/app/Models/Reports/Report.php @@ -13,23 +13,23 @@ use CodeIgniter\Model; */ abstract class Report extends Model { - public function __construct() - { - parent::__construct(); - } + public function __construct() + { + parent::__construct(); + } - /** - * Returns the column names used for the report - */ - public abstract function getDataColumns(): array; + /** + * Returns the column names used for the report + */ + public abstract function getDataColumns(): array; - /** - * Returns all the data to be populated into the report - */ - public abstract function getData(array $inputs): array; + /** + * Returns all the data to be populated into the report + */ + public abstract function getData(array $inputs): array; - /** - * Returns key=>value pairing of summary data for the report - */ - public abstract function getSummaryData(array $inputs): array; + /** + * Returns key=>value pairing of summary data for the report + */ + public abstract function getSummaryData(array $inputs): array; } diff --git a/app/Models/Reports/Specific_customer.php b/app/Models/Reports/Specific_customer.php index 14dbdfd1a..09e5f7b4b 100644 --- a/app/Models/Reports/Specific_customer.php +++ b/app/Models/Reports/Specific_customer.php @@ -12,220 +12,220 @@ use App\Models\Sale; */ class Specific_customer extends Report { - /** - * @param array $inputs - * @return void - */ - public function create(array $inputs): void - { - //Create our temp tables to work with the data in our report - $sale = model(Sale::class); - $sale->create_temp_table($inputs); - } + /** + * @param array $inputs + * @return void + */ + public function create(array $inputs): void + { + //Create our temp tables to work with the data in our report + $sale = model(Sale::class); + $sale->create_temp_table($inputs); + } - /** - * @return array - */ - public function getDataColumns(): array - { - return [ - 'summary' => [ - ['id' => lang('Reports.sale_id')], - ['type_code' => lang('Reports.code_type')], - ['sale_time' => lang('Reports.date'), 'sortable' => false], - ['quantity' => lang('Reports.quantity')], - ['employee_name' => lang('Reports.sold_by')], - ['subtotal' => lang('Reports.subtotal'), 'sorter' => 'number_sorter'], - ['tax' => lang('Reports.tax'), 'sorter' => 'number_sorter'], - ['total' => lang('Reports.total'), 'sorter' => 'number_sorter'], - ['cost' => lang('Reports.cost'), 'sorter' => 'number_sorter'], - ['profit' => lang('Reports.profit'), 'sorter' => 'number_sorter'], - ['payment_type' => lang('Reports.payment_type'), 'sortable' => false], - ['comment' => lang('Reports.comments')] - ], - 'details' => [ - lang('Reports.name'), - lang('Reports.category'), - lang('Reports.item_number'), - lang('Reports.description'), - lang('Reports.quantity'), - lang('Reports.subtotal'), - lang('Reports.tax'), - lang('Reports.total'), - lang('Reports.cost'), - lang('Reports.profit'), - lang('Reports.discount') - ], - 'details_rewards' => [ - lang('Reports.used'), - lang('Reports.earned') - ] - ]; - } + /** + * @return array + */ + public function getDataColumns(): array + { + return [ + 'summary' => [ + ['id' => lang('Reports.sale_id')], + ['type_code' => lang('Reports.code_type')], + ['sale_time' => lang('Reports.date'), 'sortable' => false], + ['quantity' => lang('Reports.quantity')], + ['employee_name' => lang('Reports.sold_by')], + ['subtotal' => lang('Reports.subtotal'), 'sorter' => 'number_sorter'], + ['tax' => lang('Reports.tax'), 'sorter' => 'number_sorter'], + ['total' => lang('Reports.total'), 'sorter' => 'number_sorter'], + ['cost' => lang('Reports.cost'), 'sorter' => 'number_sorter'], + ['profit' => lang('Reports.profit'), 'sorter' => 'number_sorter'], + ['payment_type' => lang('Reports.payment_type'), 'sortable' => false], + ['comment' => lang('Reports.comments')] + ], + 'details' => [ + lang('Reports.name'), + lang('Reports.category'), + lang('Reports.item_number'), + lang('Reports.description'), + lang('Reports.quantity'), + lang('Reports.subtotal'), + lang('Reports.tax'), + lang('Reports.total'), + lang('Reports.cost'), + lang('Reports.profit'), + lang('Reports.discount') + ], + 'details_rewards' => [ + lang('Reports.used'), + lang('Reports.earned') + ] + ]; + } - /** - * @param array $inputs - * @return array - */ - public function getData(array $inputs): array - { - $builder = $this->db->table('sales_items_temp'); - $builder->select(' - sale_id, - MAX(CASE - WHEN sale_type = ' . SALE_TYPE_POS . ' && sale_status = ' . COMPLETED . ' THEN \'' . lang('Reports.code_pos') . '\' - WHEN sale_type = ' . SALE_TYPE_INVOICE . ' && sale_status = ' . COMPLETED . ' THEN \'' . lang('Reports.code_invoice') . '\' - WHEN sale_type = ' . SALE_TYPE_WORK_ORDER . ' && sale_status = ' . SUSPENDED . ' THEN \'' . lang('Reports.code_work_order') . '\' - WHEN sale_type = ' . SALE_TYPE_QUOTE . ' && sale_status = ' . SUSPENDED . ' THEN \'' . lang('Reports.code_quote') . '\' - WHEN sale_type = ' . SALE_TYPE_RETURN . ' && sale_status = ' . COMPLETED . ' THEN \'' . lang('Reports.code_return') . '\' - WHEN sale_status = ' . CANCELED . ' THEN \'' . lang('Reports.code_canceled') . '\' - ELSE \'\' - END) AS type_code, - MAX(sale_status) as sale_status, - MAX(sale_time) AS sale_time, - SUM(quantity_purchased) AS items_purchased, - MAX(employee_name) AS employee_name, - SUM(subtotal) AS subtotal, - SUM(tax) AS tax, - SUM(total) AS total, - SUM(cost) AS cost, - SUM(profit) AS profit, - MAX(payment_type) AS payment_type, - MAX(comment) AS comment'); + /** + * @param array $inputs + * @return array + */ + public function getData(array $inputs): array + { + $builder = $this->db->table('sales_items_temp'); + $builder->select(' + sale_id, + MAX(CASE + WHEN sale_type = ' . SALE_TYPE_POS . ' && sale_status = ' . COMPLETED . ' THEN \'' . lang('Reports.code_pos') . '\' + WHEN sale_type = ' . SALE_TYPE_INVOICE . ' && sale_status = ' . COMPLETED . ' THEN \'' . lang('Reports.code_invoice') . '\' + WHEN sale_type = ' . SALE_TYPE_WORK_ORDER . ' && sale_status = ' . SUSPENDED . ' THEN \'' . lang('Reports.code_work_order') . '\' + WHEN sale_type = ' . SALE_TYPE_QUOTE . ' && sale_status = ' . SUSPENDED . ' THEN \'' . lang('Reports.code_quote') . '\' + WHEN sale_type = ' . SALE_TYPE_RETURN . ' && sale_status = ' . COMPLETED . ' THEN \'' . lang('Reports.code_return') . '\' + WHEN sale_status = ' . CANCELED . ' THEN \'' . lang('Reports.code_canceled') . '\' + ELSE \'\' + END) AS type_code, + MAX(sale_status) as sale_status, + MAX(sale_time) AS sale_time, + SUM(quantity_purchased) AS items_purchased, + MAX(employee_name) AS employee_name, + SUM(subtotal) AS subtotal, + SUM(tax) AS tax, + SUM(total) AS total, + SUM(cost) AS cost, + SUM(profit) AS profit, + MAX(payment_type) AS payment_type, + MAX(comment) AS comment'); - $builder->where('customer_id', $inputs['customer_id']); //TODO: Duplicated code + $builder->where('customer_id', $inputs['customer_id']); //TODO: Duplicated code - if($inputs['payment_type'] == 'invoices') - { - $builder->where('sale_type', SALE_TYPE_INVOICE); - } - elseif($inputs['payment_type'] != 'all') - { - $builder->like('payment_type', lang('Sales.' . $inputs['payment_type'])); - } + if($inputs['payment_type'] == 'invoices') + { + $builder->where('sale_type', SALE_TYPE_INVOICE); + } + elseif($inputs['payment_type'] != 'all') + { + $builder->like('payment_type', lang('Sales.' . $inputs['payment_type'])); + } - switch($inputs['sale_type']) - { - case 'complete': - $builder->where('sale_status', COMPLETED); - $builder->groupStart(); - $builder->where('sale_type', SALE_TYPE_POS); - $builder->orWhere('sale_type', SALE_TYPE_INVOICE); - $builder->orWhere('sale_type', SALE_TYPE_RETURN); - $builder->groupEnd(); - break; + switch($inputs['sale_type']) + { + case 'complete': + $builder->where('sale_status', COMPLETED); + $builder->groupStart(); + $builder->where('sale_type', SALE_TYPE_POS); + $builder->orWhere('sale_type', SALE_TYPE_INVOICE); + $builder->orWhere('sale_type', SALE_TYPE_RETURN); + $builder->groupEnd(); + break; - case 'sales': - $builder->where('sale_status', COMPLETED); - $builder->groupStart(); - $builder->where('sale_type', SALE_TYPE_POS); - $builder->orWhere('sale_type', SALE_TYPE_INVOICE); - $builder->groupEnd(); - break; + case 'sales': + $builder->where('sale_status', COMPLETED); + $builder->groupStart(); + $builder->where('sale_type', SALE_TYPE_POS); + $builder->orWhere('sale_type', SALE_TYPE_INVOICE); + $builder->groupEnd(); + break; - case 'quotes': - $builder->where('sale_status', SUSPENDED); - $builder->where('sale_type', SALE_TYPE_QUOTE); - break; + case 'quotes': + $builder->where('sale_status', SUSPENDED); + $builder->where('sale_type', SALE_TYPE_QUOTE); + break; - case 'work_orders': - $builder->where('sale_status', SUSPENDED); - $builder->where('sale_type', SALE_TYPE_WORK_ORDER); - break; + case 'work_orders': + $builder->where('sale_status', SUSPENDED); + $builder->where('sale_type', SALE_TYPE_WORK_ORDER); + break; - case 'canceled': - $builder->where('sale_status', CANCELED); - break; + case 'canceled': + $builder->where('sale_status', CANCELED); + break; - case 'returns': - $builder->where('sale_status', COMPLETED); - $builder->where('sale_type', SALE_TYPE_RETURN); - break; - } + case 'returns': + $builder->where('sale_status', COMPLETED); + $builder->where('sale_type', SALE_TYPE_RETURN); + break; + } - $builder->groupBy('sale_id'); //TODO: Duplicated code - $builder->orderBy('MAX(sale_time)'); + $builder->groupBy('sale_id'); //TODO: Duplicated code + $builder->orderBy('MAX(sale_time)'); - $data = []; - $data['summary'] = $builder->get()->getResultArray(); - $data['details'] = []; - $data['rewards'] = []; + $data = []; + $data['summary'] = $builder->get()->getResultArray(); + $data['details'] = []; + $data['rewards'] = []; - foreach($data['summary'] as $key => $value) - { - $builder = $this->db->table('sales_items_temp'); - $builder->select('name, category, item_number, description, quantity_purchased, subtotal, tax, total, cost, profit, discount, discount_type'); - $builder->where('sale_id', $value['sale_id']); - $data['details'][$key] = $builder->get()->getResultArray(); + foreach($data['summary'] as $key => $value) + { + $builder = $this->db->table('sales_items_temp'); + $builder->select('name, category, item_number, description, quantity_purchased, subtotal, tax, total, cost, profit, discount, discount_type'); + $builder->where('sale_id', $value['sale_id']); + $data['details'][$key] = $builder->get()->getResultArray(); - $builder = $this->db->table('sales_reward_points'); - $builder->select('used, earned'); - $builder->where('sale_id', $value['sale_id']); - $data['rewards'][$key] = $builder->get()->getResultArray(); - } + $builder = $this->db->table('sales_reward_points'); + $builder->select('used, earned'); + $builder->where('sale_id', $value['sale_id']); + $data['rewards'][$key] = $builder->get()->getResultArray(); + } - return $data; - } + return $data; + } - /** - * @param array $inputs - * @return array - */ - public function getSummaryData(array $inputs): array - { - $builder = $this->db->table('sales_items_temp'); - $builder->select('SUM(subtotal) AS subtotal, SUM(tax) AS tax, SUM(total) AS total, SUM(cost) AS cost, SUM(profit) AS profit'); + /** + * @param array $inputs + * @return array + */ + public function getSummaryData(array $inputs): array + { + $builder = $this->db->table('sales_items_temp'); + $builder->select('SUM(subtotal) AS subtotal, SUM(tax) AS tax, SUM(total) AS total, SUM(cost) AS cost, SUM(profit) AS profit'); - $builder->where('customer_id', $inputs['customer_id']); //TODO: Duplicate code + $builder->where('customer_id', $inputs['customer_id']); //TODO: Duplicate code - if($inputs['payment_type'] == 'invoices') - { - $builder->where('sale_type', SALE_TYPE_INVOICE); - } - elseif ($inputs['payment_type'] != 'all') - { - $builder->like('payment_type', lang('Sales.'.$inputs['payment_type'])); - } + if($inputs['payment_type'] == 'invoices') + { + $builder->where('sale_type', SALE_TYPE_INVOICE); + } + elseif ($inputs['payment_type'] != 'all') + { + $builder->like('payment_type', lang('Sales.'.$inputs['payment_type'])); + } - switch($inputs['sale_type']) - { - case 'complete': - $builder->where('sale_status', COMPLETED); - $builder->groupStart(); - $builder->where('sale_type', SALE_TYPE_POS); - $builder->orWhere('sale_type', SALE_TYPE_INVOICE); - $builder->orWhere('sale_type', SALE_TYPE_RETURN); - $builder->groupEnd(); - break; + switch($inputs['sale_type']) + { + case 'complete': + $builder->where('sale_status', COMPLETED); + $builder->groupStart(); + $builder->where('sale_type', SALE_TYPE_POS); + $builder->orWhere('sale_type', SALE_TYPE_INVOICE); + $builder->orWhere('sale_type', SALE_TYPE_RETURN); + $builder->groupEnd(); + break; - case 'sales': - $builder->where('sale_status', COMPLETED); - $builder->groupStart(); - $builder->where('sale_type', SALE_TYPE_POS); - $builder->orWhere('sale_type', SALE_TYPE_INVOICE); - $builder->groupEnd(); - break; + case 'sales': + $builder->where('sale_status', COMPLETED); + $builder->groupStart(); + $builder->where('sale_type', SALE_TYPE_POS); + $builder->orWhere('sale_type', SALE_TYPE_INVOICE); + $builder->groupEnd(); + break; - case 'quotes': - $builder->where('sale_status', SUSPENDED); - $builder->where('sale_type', SALE_TYPE_QUOTE); - break; + case 'quotes': + $builder->where('sale_status', SUSPENDED); + $builder->where('sale_type', SALE_TYPE_QUOTE); + break; - case 'work_orders': - $builder->where('sale_status', SUSPENDED); - $builder->where('sale_type', SALE_TYPE_WORK_ORDER); - break; + case 'work_orders': + $builder->where('sale_status', SUSPENDED); + $builder->where('sale_type', SALE_TYPE_WORK_ORDER); + break; - case 'canceled': - $builder->where('sale_status', CANCELED); - break; + case 'canceled': + $builder->where('sale_status', CANCELED); + break; - case 'returns': - $builder->where('sale_status', COMPLETED); - $builder->where('sale_type', SALE_TYPE_RETURN); - break; - } + case 'returns': + $builder->where('sale_status', COMPLETED); + $builder->where('sale_type', SALE_TYPE_RETURN); + break; + } - return $builder->get()->getRowArray(); - } + return $builder->get()->getRowArray(); + } } diff --git a/app/Models/Reports/Specific_discount.php b/app/Models/Reports/Specific_discount.php index eef71bd4f..2859dcbb2 100644 --- a/app/Models/Reports/Specific_discount.php +++ b/app/Models/Reports/Specific_discount.php @@ -12,205 +12,205 @@ use App\Models\Sale; */ class Specific_discount extends Report { - /** - * @param array $inputs - * @return void - */ - public function create(array $inputs): void - { - //Create our temp tables to work with the data in our report - $sale = model(Sale::class); - $sale->create_temp_table($inputs); - } + /** + * @param array $inputs + * @return void + */ + public function create(array $inputs): void + { + //Create our temp tables to work with the data in our report + $sale = model(Sale::class); + $sale->create_temp_table($inputs); + } - /** - * @return array - */ - public function getDataColumns(): array - { //TODO: Duplicated code - return [ - 'summary' => [ - ['id' => lang('Reports.sale_id')], - ['type_code' => lang('Reports.code_type')], - ['sale_time' => lang('Reports.date'), 'sortable' => false], - ['quantity' => lang('Reports.quantity')], - ['employee_name' => lang('Reports.sold_by')], - ['customer_name' => lang('Reports.sold_to')], - ['subtotal' => lang('Reports.subtotal'), 'sorter' => 'number_sorter'], - ['tax' => lang('Reports.tax'), 'sorter' => 'number_sorter'], - ['total' => lang('Reports.total'), 'sorter' => 'number_sorter'], - ['cost' => lang('Reports.cost'), 'sorter' => 'number_sorter'], - ['profit' => lang('Reports.profit'), 'sorter' => 'number_sorter'], - ['payment_type' => lang('Reports.payment_type'), 'sortable' => false], - ['comment' => lang('Reports.comments')] - ], - 'details' => [ - lang('Reports.name'), - lang('Reports.category'), - lang('Reports.item_number'), - lang('Reports.description'), - lang('Reports.quantity'), - lang('Reports.subtotal'), - lang('Reports.tax'), - lang('Reports.total'), - lang('Reports.cost'), - lang('Reports.profit'), - lang('Reports.discount') - ], - 'details_rewards' => [ - lang('Reports.used'), - lang('Reports.earned') - ] - ]; - } + /** + * @return array + */ + public function getDataColumns(): array + { //TODO: Duplicated code + return [ + 'summary' => [ + ['id' => lang('Reports.sale_id')], + ['type_code' => lang('Reports.code_type')], + ['sale_time' => lang('Reports.date'), 'sortable' => false], + ['quantity' => lang('Reports.quantity')], + ['employee_name' => lang('Reports.sold_by')], + ['customer_name' => lang('Reports.sold_to')], + ['subtotal' => lang('Reports.subtotal'), 'sorter' => 'number_sorter'], + ['tax' => lang('Reports.tax'), 'sorter' => 'number_sorter'], + ['total' => lang('Reports.total'), 'sorter' => 'number_sorter'], + ['cost' => lang('Reports.cost'), 'sorter' => 'number_sorter'], + ['profit' => lang('Reports.profit'), 'sorter' => 'number_sorter'], + ['payment_type' => lang('Reports.payment_type'), 'sortable' => false], + ['comment' => lang('Reports.comments')] + ], + 'details' => [ + lang('Reports.name'), + lang('Reports.category'), + lang('Reports.item_number'), + lang('Reports.description'), + lang('Reports.quantity'), + lang('Reports.subtotal'), + lang('Reports.tax'), + lang('Reports.total'), + lang('Reports.cost'), + lang('Reports.profit'), + lang('Reports.discount') + ], + 'details_rewards' => [ + lang('Reports.used'), + lang('Reports.earned') + ] + ]; + } - /** - * @param array $inputs - * @return array - */ - public function getData(array $inputs): array - { - $builder = $this->db->table('sales_items_temp'); - $builder->select(' - sale_id, - MAX(CASE - WHEN sale_type = ' . SALE_TYPE_POS . ' && sale_status = ' . COMPLETED . ' THEN \'' . lang('Reports.code_pos') . '\' - WHEN sale_type = ' . SALE_TYPE_INVOICE . ' && sale_status = ' . COMPLETED . ' THEN \'' . lang('Reports.code_invoice') . '\' - WHEN sale_type = ' . SALE_TYPE_WORK_ORDER . ' && sale_status = ' . SUSPENDED . ' THEN \'' . lang('Reports.code_work_order') . '\' - WHEN sale_type = ' . SALE_TYPE_QUOTE . ' && sale_status = ' . SUSPENDED . ' THEN \'' . lang('Reports.code_quote') . '\' - WHEN sale_type = ' . SALE_TYPE_RETURN . ' && sale_status = ' . COMPLETED . ' THEN \'' . lang('Reports.code_return') . '\' - WHEN sale_status = ' . CANCELED . ' THEN \'' . lang('Reports.code_canceled') . '\' - ELSE \'\' - END) AS type_code, - MAX(sale_status) as sale_status, - MAX(sale_time) AS sale_time, - SUM(quantity_purchased) AS items_purchased, - MAX(employee_name) AS employee_name, - MAX(customer_name) AS customer_name, - SUM(subtotal) AS subtotal, - SUM(tax) AS tax, - SUM(total) AS total, - SUM(cost) AS cost, - SUM(profit) AS profit, - MAX(payment_type) AS payment_type, - MAX(comment) AS comment'); + /** + * @param array $inputs + * @return array + */ + public function getData(array $inputs): array + { + $builder = $this->db->table('sales_items_temp'); + $builder->select(' + sale_id, + MAX(CASE + WHEN sale_type = ' . SALE_TYPE_POS . ' && sale_status = ' . COMPLETED . ' THEN \'' . lang('Reports.code_pos') . '\' + WHEN sale_type = ' . SALE_TYPE_INVOICE . ' && sale_status = ' . COMPLETED . ' THEN \'' . lang('Reports.code_invoice') . '\' + WHEN sale_type = ' . SALE_TYPE_WORK_ORDER . ' && sale_status = ' . SUSPENDED . ' THEN \'' . lang('Reports.code_work_order') . '\' + WHEN sale_type = ' . SALE_TYPE_QUOTE . ' && sale_status = ' . SUSPENDED . ' THEN \'' . lang('Reports.code_quote') . '\' + WHEN sale_type = ' . SALE_TYPE_RETURN . ' && sale_status = ' . COMPLETED . ' THEN \'' . lang('Reports.code_return') . '\' + WHEN sale_status = ' . CANCELED . ' THEN \'' . lang('Reports.code_canceled') . '\' + ELSE \'\' + END) AS type_code, + MAX(sale_status) as sale_status, + MAX(sale_time) AS sale_time, + SUM(quantity_purchased) AS items_purchased, + MAX(employee_name) AS employee_name, + MAX(customer_name) AS customer_name, + SUM(subtotal) AS subtotal, + SUM(tax) AS tax, + SUM(total) AS total, + SUM(cost) AS cost, + SUM(profit) AS profit, + MAX(payment_type) AS payment_type, + MAX(comment) AS comment'); - $builder->where('discount >=', $inputs['discount']); //TODO: Duplicated code - $builder->where('discount_type', $inputs['discount_type']); + $builder->where('discount >=', $inputs['discount']); //TODO: Duplicated code + $builder->where('discount_type', $inputs['discount_type']); - switch($inputs['sale_type']) - { - case 'complete': - $builder->where('sale_status', COMPLETED); - $builder->groupStart(); - $builder->where('sale_type', SALE_TYPE_POS); - $builder->orWhere('sale_type', SALE_TYPE_INVOICE); - $builder->orWhere('sale_type', SALE_TYPE_RETURN); - $builder->groupEnd(); - break; + switch($inputs['sale_type']) + { + case 'complete': + $builder->where('sale_status', COMPLETED); + $builder->groupStart(); + $builder->where('sale_type', SALE_TYPE_POS); + $builder->orWhere('sale_type', SALE_TYPE_INVOICE); + $builder->orWhere('sale_type', SALE_TYPE_RETURN); + $builder->groupEnd(); + break; - case 'sales': - $builder->where('sale_status', COMPLETED); - $builder->groupStart(); - $builder->where('sale_type', SALE_TYPE_POS); - $builder->orWhere('sale_type', SALE_TYPE_INVOICE); - $builder->groupEnd(); - break; + case 'sales': + $builder->where('sale_status', COMPLETED); + $builder->groupStart(); + $builder->where('sale_type', SALE_TYPE_POS); + $builder->orWhere('sale_type', SALE_TYPE_INVOICE); + $builder->groupEnd(); + break; - case 'quotes': - $builder->where('sale_status', SUSPENDED); - $builder->where('sale_type', SALE_TYPE_QUOTE); - break; + case 'quotes': + $builder->where('sale_status', SUSPENDED); + $builder->where('sale_type', SALE_TYPE_QUOTE); + break; - case 'work_orders': - $builder->where('sale_status', SUSPENDED); - $builder->where('sale_type', SALE_TYPE_WORK_ORDER); - break; + case 'work_orders': + $builder->where('sale_status', SUSPENDED); + $builder->where('sale_type', SALE_TYPE_WORK_ORDER); + break; - case 'canceled': - $builder->where('sale_status', CANCELED); - break; + case 'canceled': + $builder->where('sale_status', CANCELED); + break; - case 'returns': - $builder->where('sale_status', COMPLETED); - $builder->where('sale_type', SALE_TYPE_RETURN); - break; - } + case 'returns': + $builder->where('sale_status', COMPLETED); + $builder->where('sale_type', SALE_TYPE_RETURN); + break; + } - $builder->groupBy('sale_id'); //TODO: Duplicated code - $builder->orderBy('MAX(sale_time)'); + $builder->groupBy('sale_id'); //TODO: Duplicated code + $builder->orderBy('MAX(sale_time)'); - $data = []; - $data['summary'] = $builder->get()->getResultArray(); - $data['details'] = []; - $data['rewards'] = []; + $data = []; + $data['summary'] = $builder->get()->getResultArray(); + $data['details'] = []; + $data['rewards'] = []; - foreach($data['summary'] as $key => $value) - { - $builder = $this->db->table('sales_items_temp'); - $builder->select('name, category, item_number, description, quantity_purchased, subtotal, tax, total, cost, profit, discount, discount_type'); - $builder->where('sale_id', $value['sale_id']); - $data['details'][$key] = $builder->get()->getResultArray(); + foreach($data['summary'] as $key => $value) + { + $builder = $this->db->table('sales_items_temp'); + $builder->select('name, category, item_number, description, quantity_purchased, subtotal, tax, total, cost, profit, discount, discount_type'); + $builder->where('sale_id', $value['sale_id']); + $data['details'][$key] = $builder->get()->getResultArray(); - $builder = $this->db->table('sales_reward_points'); - $builder->select('used, earned'); - $builder->where('sale_id', $value['sale_id']); - $data['rewards'][$key] = $builder->get()->getResultArray(); - } + $builder = $this->db->table('sales_reward_points'); + $builder->select('used, earned'); + $builder->where('sale_id', $value['sale_id']); + $data['rewards'][$key] = $builder->get()->getResultArray(); + } - return $data; - } + return $data; + } - /** - * @param array $inputs - * @return array - */ - public function getSummaryData(array $inputs): array - { - $builder = $this->db->table('sales_items_temp'); - $builder->select('SUM(subtotal) AS subtotal, SUM(tax) AS tax, SUM(total) AS total, SUM(cost) AS cost, SUM(profit) AS profit'); + /** + * @param array $inputs + * @return array + */ + public function getSummaryData(array $inputs): array + { + $builder = $this->db->table('sales_items_temp'); + $builder->select('SUM(subtotal) AS subtotal, SUM(tax) AS tax, SUM(total) AS total, SUM(cost) AS cost, SUM(profit) AS profit'); - $builder->where('discount >=', $inputs['discount']); //TODO: Duplicated code - $builder->where('discount_type', $inputs['discount_type']); + $builder->where('discount >=', $inputs['discount']); //TODO: Duplicated code + $builder->where('discount_type', $inputs['discount_type']); - //TODO: this needs to be converted to a switch statement - if($inputs['sale_type'] == 'complete') - { - $builder->where('sale_status', COMPLETED); - $builder->groupStart(); - $builder->where('sale_type', SALE_TYPE_POS); - $builder->orWhere('sale_type', SALE_TYPE_INVOICE); - $builder->orWhere('sale_type', SALE_TYPE_RETURN); - $builder->groupEnd(); - } - elseif($inputs['sale_type'] == 'sales') - { - $builder->where('sale_status', COMPLETED); - $builder->groupStart(); - $builder->where('sale_type', SALE_TYPE_POS); - $builder->orWhere('sale_type', SALE_TYPE_INVOICE); - $builder->groupEnd(); - } - elseif($inputs['sale_type'] == 'quotes') - { - $builder->where('sale_status', SUSPENDED); - $builder->where('sale_type', SALE_TYPE_QUOTE); - } - elseif($inputs['sale_type'] == 'work_orders') - { - $builder->where('sale_status', SUSPENDED); - $builder->where('sale_type', SALE_TYPE_WORK_ORDER); - } - elseif($inputs['sale_type'] == 'canceled') - { - $builder->where('sale_status', CANCELED); - } - elseif($inputs['sale_type'] == 'returns') - { - $builder->where('sale_status', COMPLETED); - $builder->where('sale_type', SALE_TYPE_RETURN); - } + //TODO: this needs to be converted to a switch statement + if($inputs['sale_type'] == 'complete') + { + $builder->where('sale_status', COMPLETED); + $builder->groupStart(); + $builder->where('sale_type', SALE_TYPE_POS); + $builder->orWhere('sale_type', SALE_TYPE_INVOICE); + $builder->orWhere('sale_type', SALE_TYPE_RETURN); + $builder->groupEnd(); + } + elseif($inputs['sale_type'] == 'sales') + { + $builder->where('sale_status', COMPLETED); + $builder->groupStart(); + $builder->where('sale_type', SALE_TYPE_POS); + $builder->orWhere('sale_type', SALE_TYPE_INVOICE); + $builder->groupEnd(); + } + elseif($inputs['sale_type'] == 'quotes') + { + $builder->where('sale_status', SUSPENDED); + $builder->where('sale_type', SALE_TYPE_QUOTE); + } + elseif($inputs['sale_type'] == 'work_orders') + { + $builder->where('sale_status', SUSPENDED); + $builder->where('sale_type', SALE_TYPE_WORK_ORDER); + } + elseif($inputs['sale_type'] == 'canceled') + { + $builder->where('sale_status', CANCELED); + } + elseif($inputs['sale_type'] == 'returns') + { + $builder->where('sale_status', COMPLETED); + $builder->where('sale_type', SALE_TYPE_RETURN); + } - return $builder->get()->getRowArray(); - } + return $builder->get()->getRowArray(); + } } diff --git a/app/Models/Reports/Specific_employee.php b/app/Models/Reports/Specific_employee.php index b0667d60f..98edc1866 100644 --- a/app/Models/Reports/Specific_employee.php +++ b/app/Models/Reports/Specific_employee.php @@ -12,200 +12,200 @@ use App\Models\Sale; */ class Specific_employee extends Report { - /** - * @param array $inputs - * @return void - */ - public function create(array $inputs): void - { - //Create our temp tables to work with the data in our report - $sale = model(Sale::class); - $sale->create_temp_table($inputs); - } + /** + * @param array $inputs + * @return void + */ + public function create(array $inputs): void + { + //Create our temp tables to work with the data in our report + $sale = model(Sale::class); + $sale->create_temp_table($inputs); + } - /** - * @return array - */ - public function getDataColumns(): array - { - return [ - 'summary' => [ - ['id' => lang('Reports.sale_id')], - ['type_code' => lang('Reports.code_type')], - ['sale_time' => lang('Reports.date'), 'sortable' => false], - ['quantity' => lang('Reports.quantity')], - ['customer_name' => lang('Reports.sold_to')], - ['subtotal' => lang('Reports.subtotal'), 'sorter' => 'number_sorter'], - ['tax' => lang('Reports.tax'), 'sorter' => 'number_sorter'], - ['total' => lang('Reports.total'), 'sorter' => 'number_sorter'], - ['cost' => lang('Reports.cost'), 'sorter' => 'number_sorter'], - ['profit' => lang('Reports.profit'), 'sorter' => 'number_sorter'], - ['payment_type' => lang('Reports.payment_type'), 'sortable' => false], - ['comment' => lang('Reports.comments')] - ], - 'details' => [ - lang('Reports.name'), - lang('Reports.category'), - lang('Reports.item_number'), - lang('Reports.description'), - lang('Reports.quantity'), - lang('Reports.subtotal'), - lang('Reports.tax'), - lang('Reports.total'), - lang('Reports.cost'), - lang('Reports.profit'), - lang('Reports.discount') - ], - 'details_rewards' => [ - lang('Reports.used'), - lang('Reports.earned') - ] - ]; - } + /** + * @return array + */ + public function getDataColumns(): array + { + return [ + 'summary' => [ + ['id' => lang('Reports.sale_id')], + ['type_code' => lang('Reports.code_type')], + ['sale_time' => lang('Reports.date'), 'sortable' => false], + ['quantity' => lang('Reports.quantity')], + ['customer_name' => lang('Reports.sold_to')], + ['subtotal' => lang('Reports.subtotal'), 'sorter' => 'number_sorter'], + ['tax' => lang('Reports.tax'), 'sorter' => 'number_sorter'], + ['total' => lang('Reports.total'), 'sorter' => 'number_sorter'], + ['cost' => lang('Reports.cost'), 'sorter' => 'number_sorter'], + ['profit' => lang('Reports.profit'), 'sorter' => 'number_sorter'], + ['payment_type' => lang('Reports.payment_type'), 'sortable' => false], + ['comment' => lang('Reports.comments')] + ], + 'details' => [ + lang('Reports.name'), + lang('Reports.category'), + lang('Reports.item_number'), + lang('Reports.description'), + lang('Reports.quantity'), + lang('Reports.subtotal'), + lang('Reports.tax'), + lang('Reports.total'), + lang('Reports.cost'), + lang('Reports.profit'), + lang('Reports.discount') + ], + 'details_rewards' => [ + lang('Reports.used'), + lang('Reports.earned') + ] + ]; + } - /** - * @param array $inputs - * @return array - */ - public function getData(array $inputs): array - { - $builder = $this->db->table('sales_items_temp'); - $builder->select(' - sale_id, - MAX(CASE - WHEN sale_type = ' . SALE_TYPE_POS . ' && sale_status = ' . COMPLETED . ' THEN \'' . lang('Reports.code_pos') . '\' - WHEN sale_type = ' . SALE_TYPE_INVOICE . ' && sale_status = ' . COMPLETED . ' THEN \'' . lang('Reports.code_invoice') . '\' - WHEN sale_type = ' . SALE_TYPE_WORK_ORDER . ' && sale_status = ' . SUSPENDED . ' THEN \'' . lang('Reports.code_work_order') . '\' - WHEN sale_type = ' . SALE_TYPE_QUOTE . ' && sale_status = ' . SUSPENDED . ' THEN \'' . lang('Reports.code_quote') . '\' - WHEN sale_type = ' . SALE_TYPE_RETURN . ' && sale_status = ' . COMPLETED . ' THEN \'' . lang('Reports.code_return') . '\' - WHEN sale_status = ' . CANCELED . ' THEN \'' . lang('Reports.code_canceled') . '\' - ELSE \'\' - END) AS type_code, - MAX(sale_status) as sale_status, - MAX(sale_time) AS sale_time, - SUM(quantity_purchased) AS items_purchased, - MAX(customer_name) AS customer_name, - SUM(subtotal) AS subtotal, - SUM(tax) AS tax, - SUM(total) AS total, - SUM(cost) AS cost, - SUM(profit) AS profit, - MAX(payment_type) AS payment_type, - MAX(comment) AS comment'); + /** + * @param array $inputs + * @return array + */ + public function getData(array $inputs): array + { + $builder = $this->db->table('sales_items_temp'); + $builder->select(' + sale_id, + MAX(CASE + WHEN sale_type = ' . SALE_TYPE_POS . ' && sale_status = ' . COMPLETED . ' THEN \'' . lang('Reports.code_pos') . '\' + WHEN sale_type = ' . SALE_TYPE_INVOICE . ' && sale_status = ' . COMPLETED . ' THEN \'' . lang('Reports.code_invoice') . '\' + WHEN sale_type = ' . SALE_TYPE_WORK_ORDER . ' && sale_status = ' . SUSPENDED . ' THEN \'' . lang('Reports.code_work_order') . '\' + WHEN sale_type = ' . SALE_TYPE_QUOTE . ' && sale_status = ' . SUSPENDED . ' THEN \'' . lang('Reports.code_quote') . '\' + WHEN sale_type = ' . SALE_TYPE_RETURN . ' && sale_status = ' . COMPLETED . ' THEN \'' . lang('Reports.code_return') . '\' + WHEN sale_status = ' . CANCELED . ' THEN \'' . lang('Reports.code_canceled') . '\' + ELSE \'\' + END) AS type_code, + MAX(sale_status) as sale_status, + MAX(sale_time) AS sale_time, + SUM(quantity_purchased) AS items_purchased, + MAX(customer_name) AS customer_name, + SUM(subtotal) AS subtotal, + SUM(tax) AS tax, + SUM(total) AS total, + SUM(cost) AS cost, + SUM(profit) AS profit, + MAX(payment_type) AS payment_type, + MAX(comment) AS comment'); - $builder->where('employee_id', $inputs['employee_id']); //TODO: Duplicated code + $builder->where('employee_id', $inputs['employee_id']); //TODO: Duplicated code - switch($inputs['sale_type']) - { - case 'complete': - $builder->where('sale_status', COMPLETED); - $builder->groupStart(); - $builder->where('sale_type', SALE_TYPE_POS); - $builder->orWhere('sale_type', SALE_TYPE_INVOICE); - $builder->orWhere('sale_type', SALE_TYPE_RETURN); - $builder->groupEnd(); - break; + switch($inputs['sale_type']) + { + case 'complete': + $builder->where('sale_status', COMPLETED); + $builder->groupStart(); + $builder->where('sale_type', SALE_TYPE_POS); + $builder->orWhere('sale_type', SALE_TYPE_INVOICE); + $builder->orWhere('sale_type', SALE_TYPE_RETURN); + $builder->groupEnd(); + break; - case 'sales': - $builder->where('sale_status', COMPLETED); - $builder->groupStart(); - $builder->where('sale_type', SALE_TYPE_POS); - $builder->orWhere('sale_type', SALE_TYPE_INVOICE); - $builder->groupEnd(); - break; + case 'sales': + $builder->where('sale_status', COMPLETED); + $builder->groupStart(); + $builder->where('sale_type', SALE_TYPE_POS); + $builder->orWhere('sale_type', SALE_TYPE_INVOICE); + $builder->groupEnd(); + break; - case 'quotes': - $builder->where('sale_status', SUSPENDED); - $builder->where('sale_type', SALE_TYPE_QUOTE); - break; + case 'quotes': + $builder->where('sale_status', SUSPENDED); + $builder->where('sale_type', SALE_TYPE_QUOTE); + break; - case 'work_orders': - $builder->where('sale_status', SUSPENDED); - $builder->where('sale_type', SALE_TYPE_WORK_ORDER); - break; + case 'work_orders': + $builder->where('sale_status', SUSPENDED); + $builder->where('sale_type', SALE_TYPE_WORK_ORDER); + break; - case 'canceled': - $builder->where('sale_status', CANCELED); - break; + case 'canceled': + $builder->where('sale_status', CANCELED); + break; - case 'returns': - $builder->where('sale_status', COMPLETED); - $builder->where('sale_type', SALE_TYPE_RETURN); - break; - } + case 'returns': + $builder->where('sale_status', COMPLETED); + $builder->where('sale_type', SALE_TYPE_RETURN); + break; + } - $builder->groupBy('sale_id'); - $builder->orderBy('MAX(sale_time)'); + $builder->groupBy('sale_id'); + $builder->orderBy('MAX(sale_time)'); - $data = []; - $data['summary'] = $builder->get()->getResultArray(); - $data['details'] = []; - $data['rewards'] = []; + $data = []; + $data['summary'] = $builder->get()->getResultArray(); + $data['details'] = []; + $data['rewards'] = []; - foreach($data['summary'] as $key => $value) - { - $builder = $this->db->table('sales_items_temp'); - $builder->select('name, category, item_number, description, quantity_purchased, subtotal, tax, total, cost, profit, discount, discount_type'); - $builder->where('sale_id', $value['sale_id']); - $data['details'][$key] = $builder->get()->getResultArray(); + foreach($data['summary'] as $key => $value) + { + $builder = $this->db->table('sales_items_temp'); + $builder->select('name, category, item_number, description, quantity_purchased, subtotal, tax, total, cost, profit, discount, discount_type'); + $builder->where('sale_id', $value['sale_id']); + $data['details'][$key] = $builder->get()->getResultArray(); - $builder = $this->db->table('sales_reward_points'); - $builder->select('used, earned'); - $builder->where('sale_id', $value['sale_id']); - $data['rewards'][$key] = $builder->get()->getResultArray(); - } + $builder = $this->db->table('sales_reward_points'); + $builder->select('used, earned'); + $builder->where('sale_id', $value['sale_id']); + $data['rewards'][$key] = $builder->get()->getResultArray(); + } - return $data; - } + return $data; + } - /** - * @param array $inputs - * @return array - */ - public function getSummaryData(array $inputs): array - { - $builder = $this->db->table('sales_items_temp'); - $builder->select('SUM(subtotal) AS subtotal, SUM(tax) AS tax, SUM(total) AS total, SUM(cost) AS cost, SUM(profit) AS profit'); - $builder->where('employee_id', $inputs['employee_id']); //TODO: Duplicated code + /** + * @param array $inputs + * @return array + */ + public function getSummaryData(array $inputs): array + { + $builder = $this->db->table('sales_items_temp'); + $builder->select('SUM(subtotal) AS subtotal, SUM(tax) AS tax, SUM(total) AS total, SUM(cost) AS cost, SUM(profit) AS profit'); + $builder->where('employee_id', $inputs['employee_id']); //TODO: Duplicated code - //TODO: this needs to be converted to a switch statement - if($inputs['sale_type'] == 'complete') - { - $builder->where('sale_status', COMPLETED); - $builder->groupStart(); - $builder->where('sale_type', SALE_TYPE_POS); - $builder->orWhere('sale_type', SALE_TYPE_INVOICE); - $builder->orWhere('sale_type', SALE_TYPE_RETURN); - $builder->groupEnd(); - } - elseif($inputs['sale_type'] == 'sales') - { - $builder->where('sale_status', COMPLETED); - $builder->groupStart(); - $builder->where('sale_type', SALE_TYPE_POS); - $builder->orWhere('sale_type', SALE_TYPE_INVOICE); - $builder->groupEnd(); - } - elseif($inputs['sale_type'] == 'quotes') - { - $builder->where('sale_status', SUSPENDED); - $builder->where('sale_type', SALE_TYPE_QUOTE); - } - elseif($inputs['sale_type'] == 'work_orders') - { - $builder->where('sale_status', SUSPENDED); - $builder->where('sale_type', SALE_TYPE_WORK_ORDER); - } - elseif($inputs['sale_type'] == 'canceled') - { - $builder->where('sale_status', CANCELED); - } - elseif($inputs['sale_type'] == 'returns') - { - $builder->where('sale_status', COMPLETED); - $builder->where('sale_type', SALE_TYPE_RETURN); - } + //TODO: this needs to be converted to a switch statement + if($inputs['sale_type'] == 'complete') + { + $builder->where('sale_status', COMPLETED); + $builder->groupStart(); + $builder->where('sale_type', SALE_TYPE_POS); + $builder->orWhere('sale_type', SALE_TYPE_INVOICE); + $builder->orWhere('sale_type', SALE_TYPE_RETURN); + $builder->groupEnd(); + } + elseif($inputs['sale_type'] == 'sales') + { + $builder->where('sale_status', COMPLETED); + $builder->groupStart(); + $builder->where('sale_type', SALE_TYPE_POS); + $builder->orWhere('sale_type', SALE_TYPE_INVOICE); + $builder->groupEnd(); + } + elseif($inputs['sale_type'] == 'quotes') + { + $builder->where('sale_status', SUSPENDED); + $builder->where('sale_type', SALE_TYPE_QUOTE); + } + elseif($inputs['sale_type'] == 'work_orders') + { + $builder->where('sale_status', SUSPENDED); + $builder->where('sale_type', SALE_TYPE_WORK_ORDER); + } + elseif($inputs['sale_type'] == 'canceled') + { + $builder->where('sale_status', CANCELED); + } + elseif($inputs['sale_type'] == 'returns') + { + $builder->where('sale_status', COMPLETED); + $builder->where('sale_type', SALE_TYPE_RETURN); + } - return $builder->get()->getRowArray(); - } + return $builder->get()->getRowArray(); + } } diff --git a/app/Models/Reports/Specific_supplier.php b/app/Models/Reports/Specific_supplier.php index dee4ab45b..25bca87eb 100644 --- a/app/Models/Reports/Specific_supplier.php +++ b/app/Models/Reports/Specific_supplier.php @@ -12,167 +12,167 @@ use App\Models\Sale; */ class Specific_supplier extends Report { - /** - * @param array $inputs - * @return void - */ - public function create(array $inputs): void - { - //Create our temp tables to work with the data in our report - $sale = model(Sale::class); - $sale->create_temp_table($inputs); - } + /** + * @param array $inputs + * @return void + */ + public function create(array $inputs): void + { + //Create our temp tables to work with the data in our report + $sale = model(Sale::class); + $sale->create_temp_table($inputs); + } - /** - * @return array[] - */ - public function getDataColumns(): array - { - return [ - ['id' => lang('Reports.sale_id')], - ['type_code' => lang('Reports.code_type')], - ['sale_time' => lang('Reports.date'), 'sortable' => false], - ['name' => lang('Reports.name')], - ['category' => lang('Reports.category')], - ['item_number' => lang('Reports.item_number')], - ['quantity' => lang('Reports.quantity')], - ['subtotal' => lang('Reports.subtotal'), 'sorter' => 'number_sorter'], - ['tax' => lang('Reports.tax'), 'sorter' => 'number_sorter'], - ['total' => lang('Reports.total'), 'sorter' => 'number_sorter'], - ['cost' => lang('Reports.cost'), 'sorter' => 'number_sorter'], - ['profit' => lang('Reports.profit'), 'sorter' => 'number_sorter'], - ['discount' => lang('Reports.discount')] - ]; - } + /** + * @return array[] + */ + public function getDataColumns(): array + { + return [ + ['id' => lang('Reports.sale_id')], + ['type_code' => lang('Reports.code_type')], + ['sale_time' => lang('Reports.date'), 'sortable' => false], + ['name' => lang('Reports.name')], + ['category' => lang('Reports.category')], + ['item_number' => lang('Reports.item_number')], + ['quantity' => lang('Reports.quantity')], + ['subtotal' => lang('Reports.subtotal'), 'sorter' => 'number_sorter'], + ['tax' => lang('Reports.tax'), 'sorter' => 'number_sorter'], + ['total' => lang('Reports.total'), 'sorter' => 'number_sorter'], + ['cost' => lang('Reports.cost'), 'sorter' => 'number_sorter'], + ['profit' => lang('Reports.profit'), 'sorter' => 'number_sorter'], + ['discount' => lang('Reports.discount')] + ]; + } - /** - * @param array $inputs - * @return array - */ - public function getData(array $inputs): array - { - $builder = $this->db->table('sales_items_temp'); - $builder->select(' - sale_id, - MAX(CASE - WHEN sale_type = ' . SALE_TYPE_POS . ' && sale_status = ' . COMPLETED . ' THEN \'' . lang('Reports.code_pos') . '\' - WHEN sale_type = ' . SALE_TYPE_INVOICE . ' && sale_status = ' . COMPLETED . ' THEN \'' . lang('Reports.code_invoice') . '\' - WHEN sale_type = ' . SALE_TYPE_WORK_ORDER . ' && sale_status = ' . SUSPENDED . ' THEN \'' . lang('Reports.code_work_order') . '\' - WHEN sale_type = ' . SALE_TYPE_QUOTE . ' && sale_status = ' . SUSPENDED . ' THEN \'' . lang('Reports.code_quote') . '\' - WHEN sale_type = ' . SALE_TYPE_RETURN . ' && sale_status = ' . COMPLETED . ' THEN \'' . lang('Reports.code_return') . '\' - WHEN sale_status = ' . CANCELED . ' THEN \'' . lang('Reports.code_canceled') . '\' - ELSE \'\' - END) AS type_code, - MAX(sale_status) as sale_status, - MAX(sale_time) AS sale_time, - MAX(name) AS name, - MAX(category) AS category, - MAX(item_number) AS item_number, - SUM(quantity_purchased) AS items_purchased, - SUM(subtotal) AS subtotal, - SUM(tax) AS tax, - SUM(total) AS total, - SUM(cost) AS cost, - SUM(profit) AS profit, - MAX(discount_type) AS discount_type, - MAX(discount) AS discount'); + /** + * @param array $inputs + * @return array + */ + public function getData(array $inputs): array + { + $builder = $this->db->table('sales_items_temp'); + $builder->select(' + sale_id, + MAX(CASE + WHEN sale_type = ' . SALE_TYPE_POS . ' && sale_status = ' . COMPLETED . ' THEN \'' . lang('Reports.code_pos') . '\' + WHEN sale_type = ' . SALE_TYPE_INVOICE . ' && sale_status = ' . COMPLETED . ' THEN \'' . lang('Reports.code_invoice') . '\' + WHEN sale_type = ' . SALE_TYPE_WORK_ORDER . ' && sale_status = ' . SUSPENDED . ' THEN \'' . lang('Reports.code_work_order') . '\' + WHEN sale_type = ' . SALE_TYPE_QUOTE . ' && sale_status = ' . SUSPENDED . ' THEN \'' . lang('Reports.code_quote') . '\' + WHEN sale_type = ' . SALE_TYPE_RETURN . ' && sale_status = ' . COMPLETED . ' THEN \'' . lang('Reports.code_return') . '\' + WHEN sale_status = ' . CANCELED . ' THEN \'' . lang('Reports.code_canceled') . '\' + ELSE \'\' + END) AS type_code, + MAX(sale_status) as sale_status, + MAX(sale_time) AS sale_time, + MAX(name) AS name, + MAX(category) AS category, + MAX(item_number) AS item_number, + SUM(quantity_purchased) AS items_purchased, + SUM(subtotal) AS subtotal, + SUM(tax) AS tax, + SUM(total) AS total, + SUM(cost) AS cost, + SUM(profit) AS profit, + MAX(discount_type) AS discount_type, + MAX(discount) AS discount'); - $builder->where('supplier_id', $inputs['supplier_id']); //TODO: Duplicated code + $builder->where('supplier_id', $inputs['supplier_id']); //TODO: Duplicated code - switch($inputs['sale_type']) - { - case 'complete': - $builder->where('sale_status', COMPLETED); - $builder->groupStart(); - $builder->where('sale_type', SALE_TYPE_POS); - $builder->orWhere('sale_type', SALE_TYPE_INVOICE); - $builder->orWhere('sale_type', SALE_TYPE_RETURN); - $builder->groupEnd(); - break; + switch($inputs['sale_type']) + { + case 'complete': + $builder->where('sale_status', COMPLETED); + $builder->groupStart(); + $builder->where('sale_type', SALE_TYPE_POS); + $builder->orWhere('sale_type', SALE_TYPE_INVOICE); + $builder->orWhere('sale_type', SALE_TYPE_RETURN); + $builder->groupEnd(); + break; - case 'sales': - $builder->where('sale_status', COMPLETED); - $builder->groupStart(); - $builder->where('sale_type', SALE_TYPE_POS); - $builder->orWhere('sale_type', SALE_TYPE_INVOICE); - $builder->groupEnd(); - break; + case 'sales': + $builder->where('sale_status', COMPLETED); + $builder->groupStart(); + $builder->where('sale_type', SALE_TYPE_POS); + $builder->orWhere('sale_type', SALE_TYPE_INVOICE); + $builder->groupEnd(); + break; - case 'quotes': - $builder->where('sale_status', SUSPENDED); - $builder->where('sale_type', SALE_TYPE_QUOTE); - break; + case 'quotes': + $builder->where('sale_status', SUSPENDED); + $builder->where('sale_type', SALE_TYPE_QUOTE); + break; - case 'work_orders': - $builder->where('sale_status', SUSPENDED); - $builder->where('sale_type', SALE_TYPE_WORK_ORDER); - break; + case 'work_orders': + $builder->where('sale_status', SUSPENDED); + $builder->where('sale_type', SALE_TYPE_WORK_ORDER); + break; - case 'canceled': - $builder->where('sale_status', CANCELED); - break; + case 'canceled': + $builder->where('sale_status', CANCELED); + break; - case 'returns': - $builder->where('sale_status', COMPLETED); - $builder->where('sale_type', SALE_TYPE_RETURN); - break; - } + case 'returns': + $builder->where('sale_status', COMPLETED); + $builder->where('sale_type', SALE_TYPE_RETURN); + break; + } - $builder->groupBy(['item_id', 'sale_id']); - $builder->orderBy('MAX(sale_time)'); + $builder->groupBy(['item_id', 'sale_id']); + $builder->orderBy('MAX(sale_time)'); - return $builder->get()->getResultArray(); - } + return $builder->get()->getResultArray(); + } - /** - * @param array $inputs - * @return array - */ - public function getSummaryData(array $inputs): array - { - $builder = $this->db->table('sales_items_temp'); - $builder->select('SUM(subtotal) AS subtotal, SUM(tax) AS tax, SUM(total) AS total, SUM(cost) AS cost, SUM(profit) AS profit'); - $builder->where('supplier_id', $inputs['supplier_id']); + /** + * @param array $inputs + * @return array + */ + public function getSummaryData(array $inputs): array + { + $builder = $this->db->table('sales_items_temp'); + $builder->select('SUM(subtotal) AS subtotal, SUM(tax) AS tax, SUM(total) AS total, SUM(cost) AS cost, SUM(profit) AS profit'); + $builder->where('supplier_id', $inputs['supplier_id']); - switch($inputs['sale_type']) - { - case 'complete': - $builder->where('sale_status', COMPLETED); - $builder->groupStart(); - $builder->where('sale_type', SALE_TYPE_POS); - $builder->orWhere('sale_type', SALE_TYPE_INVOICE); - $builder->orWhere('sale_type', SALE_TYPE_RETURN); - $builder->groupEnd(); - break; + switch($inputs['sale_type']) + { + case 'complete': + $builder->where('sale_status', COMPLETED); + $builder->groupStart(); + $builder->where('sale_type', SALE_TYPE_POS); + $builder->orWhere('sale_type', SALE_TYPE_INVOICE); + $builder->orWhere('sale_type', SALE_TYPE_RETURN); + $builder->groupEnd(); + break; - case 'sales': - $builder->where('sale_status', COMPLETED); - $builder->groupStart(); - $builder->where('sale_type', SALE_TYPE_POS); - $builder->orWhere('sale_type', SALE_TYPE_INVOICE); - $builder->groupEnd(); - break; + case 'sales': + $builder->where('sale_status', COMPLETED); + $builder->groupStart(); + $builder->where('sale_type', SALE_TYPE_POS); + $builder->orWhere('sale_type', SALE_TYPE_INVOICE); + $builder->groupEnd(); + break; - case 'quotes': - $builder->where('sale_status', SUSPENDED); - $builder->where('sale_type', SALE_TYPE_QUOTE); - break; + case 'quotes': + $builder->where('sale_status', SUSPENDED); + $builder->where('sale_type', SALE_TYPE_QUOTE); + break; - case 'work_orders': - $builder->where('sale_status', SUSPENDED); - $builder->where('sale_type', SALE_TYPE_WORK_ORDER); - break; + case 'work_orders': + $builder->where('sale_status', SUSPENDED); + $builder->where('sale_type', SALE_TYPE_WORK_ORDER); + break; - case 'canceled': - $builder->where('sale_status', CANCELED); - break; + case 'canceled': + $builder->where('sale_status', CANCELED); + break; - case 'returns': - $builder->where('sale_status', COMPLETED); - $builder->where('sale_type', SALE_TYPE_RETURN); - break; - } + case 'returns': + $builder->where('sale_status', COMPLETED); + $builder->where('sale_type', SALE_TYPE_RETURN); + break; + } - return $builder->get()->getRowArray(); - } + return $builder->get()->getRowArray(); + } } diff --git a/app/Models/Reports/Summary_categories.php b/app/Models/Reports/Summary_categories.php index 2ef185f1a..4ebec7b97 100644 --- a/app/Models/Reports/Summary_categories.php +++ b/app/Models/Reports/Summary_categories.php @@ -4,55 +4,55 @@ namespace App\Models\Reports; class Summary_categories extends Summary_report { - /** - * @return array[] - */ - protected function _get_data_columns(): array //TODO: Hungarian notation - { - return [ - ['category' => lang('Reports.category')], - ['quantity' => lang('Reports.quantity'), 'sorter' => 'number_sorter'], - ['subtotal' => lang('Reports.subtotal'), 'sorter' => 'number_sorter'], - ['tax' => lang('Reports.tax'), 'sorter' => 'number_sorter'], - ['total' => lang('Reports.total'), 'sorter' => 'number_sorter'], - ['cost' => lang('Reports.cost'), 'sorter' => 'number_sorter'], - ['profit' => lang('Reports.profit'), 'sorter' => 'number_sorter'] - ]; - } + /** + * @return array[] + */ + protected function _get_data_columns(): array //TODO: Hungarian notation + { + return [ + ['category' => lang('Reports.category')], + ['quantity' => lang('Reports.quantity'), 'sorter' => 'number_sorter'], + ['subtotal' => lang('Reports.subtotal'), 'sorter' => 'number_sorter'], + ['tax' => lang('Reports.tax'), 'sorter' => 'number_sorter'], + ['total' => lang('Reports.total'), 'sorter' => 'number_sorter'], + ['cost' => lang('Reports.cost'), 'sorter' => 'number_sorter'], + ['profit' => lang('Reports.profit'), 'sorter' => 'number_sorter'] + ]; + } - /** - * @param array $inputs - * @param $builder - * @return void - */ - protected function _select(array $inputs, &$builder): void //TODO: Hungarian notation - { - parent::_select($inputs, $builder); //TODO: hungarian notation + /** + * @param array $inputs + * @param $builder + * @return void + */ + protected function _select(array $inputs, &$builder): void //TODO: Hungarian notation + { + parent::_select($inputs, $builder); //TODO: hungarian notation - $builder->select(' - items.category AS category, - SUM(sales_items.quantity_purchased) AS quantity_purchased - '); - } + $builder->select(' + items.category AS category, + SUM(sales_items.quantity_purchased) AS quantity_purchased + '); + } - /** - * @param $builder - * @return void - */ - protected function _from(&$builder): void //TODO: hungarian notation - { - parent::_from($builder); + /** + * @param $builder + * @return void + */ + protected function _from(&$builder): void //TODO: hungarian notation + { + parent::_from($builder); - $builder->join('items AS items', 'sales_items.item_id = items.item_id', 'inner'); - } + $builder->join('items AS items', 'sales_items.item_id = items.item_id', 'inner'); + } - /** - * @param $builder - * @return void - */ - protected function _group_order(&$builder): void //TODO: hungarian notation - { - $builder->groupBy('category'); - $builder->orderBy('category'); - } + /** + * @param $builder + * @return void + */ + protected function _group_order(&$builder): void //TODO: hungarian notation + { + $builder->groupBy('category'); + $builder->orderBy('category'); + } } diff --git a/app/Models/Reports/Summary_customers.php b/app/Models/Reports/Summary_customers.php index e12b073ea..7c0d61b83 100644 --- a/app/Models/Reports/Summary_customers.php +++ b/app/Models/Reports/Summary_customers.php @@ -4,57 +4,57 @@ namespace App\Models\Reports; class Summary_customers extends Summary_report { - /** - * @return array[] - */ - protected function _get_data_columns(): array //TODO: Hungarian notation - { - return [ - ['customer_name' => lang('Reports.customer')], - ['sales' => lang('Reports.sales'), 'sorter' => 'number_sorter'], - ['quantity' => lang('Reports.quantity'), 'sorter' => 'number_sorter'], - ['subtotal' => lang('Reports.subtotal'), 'sorter' => 'number_sorter'], - ['tax' => lang('Reports.tax'), 'sorter' => 'number_sorter'], - ['total' => lang('Reports.total'), 'sorter' => 'number_sorter'], - ['cost' => lang('Reports.cost'), 'sorter' => 'number_sorter'], - ['profit' => lang('Reports.profit'), 'sorter' => 'number_sorter'] - ]; - } + /** + * @return array[] + */ + protected function _get_data_columns(): array //TODO: Hungarian notation + { + return [ + ['customer_name' => lang('Reports.customer')], + ['sales' => lang('Reports.sales'), 'sorter' => 'number_sorter'], + ['quantity' => lang('Reports.quantity'), 'sorter' => 'number_sorter'], + ['subtotal' => lang('Reports.subtotal'), 'sorter' => 'number_sorter'], + ['tax' => lang('Reports.tax'), 'sorter' => 'number_sorter'], + ['total' => lang('Reports.total'), 'sorter' => 'number_sorter'], + ['cost' => lang('Reports.cost'), 'sorter' => 'number_sorter'], + ['profit' => lang('Reports.profit'), 'sorter' => 'number_sorter'] + ]; + } - /** - * @param array $inputs - * @param object $builder - * @return void - */ - protected function _select(array $inputs, object &$builder): void //TODO: Hungarian notation - { - parent::_select($inputs, $builder); //TODO: Hungarian notation + /** + * @param array $inputs + * @param object $builder + * @return void + */ + protected function _select(array $inputs, object &$builder): void //TODO: Hungarian notation + { + parent::_select($inputs, $builder); //TODO: Hungarian notation - $builder->select(' - MAX(CONCAT(customer_p.first_name, " ", customer_p.last_name)) AS customer, - SUM(sales_items.quantity_purchased) AS quantity_purchased, - COUNT(DISTINCT sales.sale_id) AS sales - '); - } + $builder->select(' + MAX(CONCAT(customer_p.first_name, " ", customer_p.last_name)) AS customer, + SUM(sales_items.quantity_purchased) AS quantity_purchased, + COUNT(DISTINCT sales.sale_id) AS sales + '); + } - /** - * @param object $builder - * @return void - */ - protected function _from(object &$builder): void //TODO: Hungarian notation - { - parent::_from($builder); //TODO: Hungarian notation + /** + * @param object $builder + * @return void + */ + protected function _from(object &$builder): void //TODO: Hungarian notation + { + parent::_from($builder); //TODO: Hungarian notation - $builder->join('people AS customer_p', 'sales.customer_id = customer_p.person_id'); - } + $builder->join('people AS customer_p', 'sales.customer_id = customer_p.person_id'); + } - /** - * @param object $builder - * @return void - */ - protected function _group_order(object &$builder): void //TODO: Hungarian notation - { - $builder->groupBy('sales.customer_id'); - $builder->orderBy('customer_p.last_name'); - } + /** + * @param object $builder + * @return void + */ + protected function _group_order(object &$builder): void //TODO: Hungarian notation + { + $builder->groupBy('sales.customer_id'); + $builder->orderBy('customer_p.last_name'); + } } diff --git a/app/Models/Reports/Summary_discounts.php b/app/Models/Reports/Summary_discounts.php index f595c4d45..5e3f1c0d7 100644 --- a/app/Models/Reports/Summary_discounts.php +++ b/app/Models/Reports/Summary_discounts.php @@ -6,46 +6,46 @@ use Config\OSPOS; class Summary_discounts extends Summary_report { - /** - * @return array[] - */ - protected function _get_data_columns(): array //TODO: Hungarian notation - { - return [ - ['discount' => lang('Reports.discount'), 'sorter' => 'number_sorter'], - ['count' => lang('Reports.count')], - ['total' => lang('Reports.total')] - ]; - } + /** + * @return array[] + */ + protected function _get_data_columns(): array //TODO: Hungarian notation + { + return [ + ['discount' => lang('Reports.discount'), 'sorter' => 'number_sorter'], + ['count' => lang('Reports.count')], + ['total' => lang('Reports.total')] + ]; + } - /** - * @param array $inputs - * @return array - */ - public function getData(array $inputs): array - { - $config = config(OSPOS::class)->settings; - $builder = $this->db->table('sales_items AS sales_items'); + /** + * @param array $inputs + * @return array + */ + public function getData(array $inputs): array + { + $config = config(OSPOS::class)->settings; + $builder = $this->db->table('sales_items AS sales_items'); - if($inputs['discount_type'] == FIXED) - { - $builder->select('SUM(sales_items.discount) AS total, MAX(CONCAT("' . $config['currency_symbol'] . '",sales_items.discount)) AS discount, count(*) AS count'); - $builder->where('discount_type', FIXED); - } - elseif($inputs['discount_type'] == PERCENT) //TODO: === ? - { - $builder->select('SUM(item_unit_price) * sales_items.discount / 100.0 AS total, MAX(CONCAT(sales_items.discount, "%")) AS discount, count(*) AS count'); - $builder->where('discount_type', PERCENT); - } + if($inputs['discount_type'] == FIXED) + { + $builder->select('SUM(sales_items.discount) AS total, MAX(CONCAT("' . $config['currency_symbol'] . '",sales_items.discount)) AS discount, count(*) AS count'); + $builder->where('discount_type', FIXED); + } + elseif($inputs['discount_type'] == PERCENT) //TODO: === ? + { + $builder->select('SUM(item_unit_price) * sales_items.discount / 100.0 AS total, MAX(CONCAT(sales_items.discount, "%")) AS discount, count(*) AS count'); + $builder->where('discount_type', PERCENT); + } - $builder->where('discount >', 0); - $builder->groupBy('sales_items.discount'); - $builder->orderBy('sales_items.discount'); + $builder->where('discount >', 0); + $builder->groupBy('sales_items.discount'); + $builder->orderBy('sales_items.discount'); - $builder->join('sales AS sales', 'sales_items.sale_id = sales.sale_id', 'inner'); + $builder->join('sales AS sales', 'sales_items.sale_id = sales.sale_id', 'inner'); - $this->_where($inputs, $builder); //TODO: Hungarian notation + $this->_where($inputs, $builder); //TODO: Hungarian notation - return $builder->get()->getResultArray(); - } + return $builder->get()->getResultArray(); + } } diff --git a/app/Models/Reports/Summary_employees.php b/app/Models/Reports/Summary_employees.php index f4477b3fe..897838ae4 100644 --- a/app/Models/Reports/Summary_employees.php +++ b/app/Models/Reports/Summary_employees.php @@ -4,57 +4,57 @@ namespace App\Models\Reports; class Summary_employees extends Summary_report { - /** - * @return array[] - */ - protected function _get_data_columns(): array //TODO: Hungarian notation - { - return [ - ['employee_name' => lang('Reports.employee')], - ['sales' => lang('Reports.sales'), 'sorter' => 'number_sorter'], - ['quantity' => lang('Reports.quantity'), 'sorter' => 'number_sorter'], - ['subtotal' => lang('Reports.subtotal'), 'sorter' => 'number_sorter'], - ['tax' => lang('Reports.tax'), 'sorter' => 'number_sorter'], - ['total' => lang('Reports.total'), 'sorter' => 'number_sorter'], - ['cost' => lang('Reports.cost'), 'sorter' => 'number_sorter'], - ['profit' => lang('Reports.profit'), 'sorter' => 'number_sorter'] - ]; - } + /** + * @return array[] + */ + protected function _get_data_columns(): array //TODO: Hungarian notation + { + return [ + ['employee_name' => lang('Reports.employee')], + ['sales' => lang('Reports.sales'), 'sorter' => 'number_sorter'], + ['quantity' => lang('Reports.quantity'), 'sorter' => 'number_sorter'], + ['subtotal' => lang('Reports.subtotal'), 'sorter' => 'number_sorter'], + ['tax' => lang('Reports.tax'), 'sorter' => 'number_sorter'], + ['total' => lang('Reports.total'), 'sorter' => 'number_sorter'], + ['cost' => lang('Reports.cost'), 'sorter' => 'number_sorter'], + ['profit' => lang('Reports.profit'), 'sorter' => 'number_sorter'] + ]; + } - /** - * @param array $inputs - * @param object $builder - * @return void - */ - protected function _select(array $inputs, object &$builder): void //TODO: hungarian notation - { - parent::_select($inputs, $builder); + /** + * @param array $inputs + * @param object $builder + * @return void + */ + protected function _select(array $inputs, object &$builder): void //TODO: hungarian notation + { + parent::_select($inputs, $builder); - $builder->select(' - MAX(CONCAT(employee_p.first_name, " ", employee_p.last_name)) AS employee, - SUM(sales_items.quantity_purchased) AS quantity_purchased, - COUNT(DISTINCT sales.sale_id) AS sales - '); - } + $builder->select(' + MAX(CONCAT(employee_p.first_name, " ", employee_p.last_name)) AS employee, + SUM(sales_items.quantity_purchased) AS quantity_purchased, + COUNT(DISTINCT sales.sale_id) AS sales + '); + } - /** - * @param object $builder - * @return void - */ - protected function _from(object &$builder): void //TODO: hungarian notation - { - parent::_from($builder); + /** + * @param object $builder + * @return void + */ + protected function _from(object &$builder): void //TODO: hungarian notation + { + parent::_from($builder); - $builder->join('people AS employee_p', 'sales.employee_id = employee_p.person_id'); - } + $builder->join('people AS employee_p', 'sales.employee_id = employee_p.person_id'); + } - /** - * @param object $builder - * @return void - */ - protected function _group_order(object &$builder): void //TODO: hungarian notation - { - $builder->groupBy('sales.employee_id'); - $builder->orderBy('employee_p.last_name'); - } + /** + * @param object $builder + * @return void + */ + protected function _group_order(object &$builder): void //TODO: hungarian notation + { + $builder->groupBy('sales.employee_id'); + $builder->orderBy('employee_p.last_name'); + } } diff --git a/app/Models/Reports/Summary_expenses_categories.php b/app/Models/Reports/Summary_expenses_categories.php index a078e2110..573ca95a0 100644 --- a/app/Models/Reports/Summary_expenses_categories.php +++ b/app/Models/Reports/Summary_expenses_categories.php @@ -6,71 +6,71 @@ use Config\OSPOS; class Summary_expenses_categories extends Summary_report { - /** - * @return array[] - */ - protected function _get_data_columns(): array //TODO: Hungarian notation - { - return [ - ['category_name' => lang('Reports.expenses_category')], - ['count' => lang('Reports.count')], - ['total_amount' => lang('Reports.expenses_amount'), 'sorter' => 'number_sorter'], - ['total_tax_amount' => lang('Reports.expenses_tax_amount'), 'sorter' => 'number_sorter'] - ]; - } + /** + * @return array[] + */ + protected function _get_data_columns(): array //TODO: Hungarian notation + { + return [ + ['category_name' => lang('Reports.expenses_category')], + ['count' => lang('Reports.count')], + ['total_amount' => lang('Reports.expenses_amount'), 'sorter' => 'number_sorter'], + ['total_tax_amount' => lang('Reports.expenses_tax_amount'), 'sorter' => 'number_sorter'] + ]; + } - /** - * @param array $inputs - * @return array - */ - public function getData(array $inputs): array - { - $config = config(OSPOS::class)->settings; + /** + * @param array $inputs + * @return array + */ + public function getData(array $inputs): array + { + $config = config(OSPOS::class)->settings; - $builder = $this->db->table('expenses AS expenses'); - $builder->select('expense_categories.category_name AS category_name, COUNT(expenses.expense_id) AS count, SUM(expenses.amount) AS total_amount, SUM(expenses.tax_amount) AS total_tax_amount'); - $builder->join('expense_categories AS expense_categories', 'expense_categories.expense_category_id = expenses.expense_category_id', 'LEFT'); + $builder = $this->db->table('expenses AS expenses'); + $builder->select('expense_categories.category_name AS category_name, COUNT(expenses.expense_id) AS count, SUM(expenses.amount) AS total_amount, SUM(expenses.tax_amount) AS total_tax_amount'); + $builder->join('expense_categories AS expense_categories', 'expense_categories.expense_category_id = expenses.expense_category_id', 'LEFT'); - //TODO: convert this to ternary notation - if(empty($config['date_or_time_format'])) //TODO: Duplicated code - { - $builder->where('DATE(expenses.date) BETWEEN ' . $this->db->escape($inputs['start_date']) . ' AND ' . $this->db->escape($inputs['end_date'])); - } - else - { - $builder->where('expenses.date BETWEEN ' . $this->db->escape(rawurldecode($inputs['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($inputs['end_date']))); - } + //TODO: convert this to ternary notation + if(empty($config['date_or_time_format'])) //TODO: Duplicated code + { + $builder->where('DATE(expenses.date) BETWEEN ' . $this->db->escape($inputs['start_date']) . ' AND ' . $this->db->escape($inputs['end_date'])); + } + else + { + $builder->where('expenses.date BETWEEN ' . $this->db->escape(rawurldecode($inputs['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($inputs['end_date']))); + } - $builder->where('expenses.deleted', 0); + $builder->where('expenses.deleted', 0); - $builder->groupBy('expense_categories.category_name'); - $builder->orderBy('expense_categories.category_name'); + $builder->groupBy('expense_categories.category_name'); + $builder->orderBy('expense_categories.category_name'); - return $builder->get()->getResultArray(); - } + return $builder->get()->getResultArray(); + } - /** - * @param array $inputs - * @return array - */ - public function getSummaryData(array $inputs): array - { - $config = config(OSPOS::class)->settings; + /** + * @param array $inputs + * @return array + */ + public function getSummaryData(array $inputs): array + { + $config = config(OSPOS::class)->settings; - $builder = $this->db->table('expenses AS expenses'); - $builder->select('SUM(expenses.amount) AS expenses_total_amount, SUM(expenses.tax_amount) AS expenses_total_tax_amount'); + $builder = $this->db->table('expenses AS expenses'); + $builder->select('SUM(expenses.amount) AS expenses_total_amount, SUM(expenses.tax_amount) AS expenses_total_tax_amount'); - if(empty($config['date_or_time_format'])) //TODO: Duplicated code - { - $builder->where('DATE(expenses.date) BETWEEN ' . $this->db->escape($inputs['start_date']) . ' AND ' . $this->db->escape($inputs['end_date'])); - } - else - { - $builder->where('expenses.date BETWEEN ' . $this->db->escape(rawurldecode($inputs['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($inputs['end_date']))); - } + if(empty($config['date_or_time_format'])) //TODO: Duplicated code + { + $builder->where('DATE(expenses.date) BETWEEN ' . $this->db->escape($inputs['start_date']) . ' AND ' . $this->db->escape($inputs['end_date'])); + } + else + { + $builder->where('expenses.date BETWEEN ' . $this->db->escape(rawurldecode($inputs['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($inputs['end_date']))); + } - $builder->where('expenses.deleted', 0); + $builder->where('expenses.deleted', 0); - return $builder->get()->getRowArray(); - } + return $builder->get()->getRowArray(); + } } diff --git a/app/Models/Reports/Summary_items.php b/app/Models/Reports/Summary_items.php index a975a59fd..92c5b202f 100644 --- a/app/Models/Reports/Summary_items.php +++ b/app/Models/Reports/Summary_items.php @@ -4,61 +4,61 @@ namespace App\Models\Reports; class Summary_items extends Summary_report { - /** - * @return array[] - */ - protected function _get_data_columns(): array //TODO: Hungarian notation - { - return [ - ['item_name' => lang('Reports.item')], - ['category' => lang('Reports.category')], - ['cost_price' => lang('Reports.cost_price'), 'sorter' => 'number_sorter'], - ['unit_price' => lang('Reports.unit_price'), 'sorter' => 'number_sorter'], - ['quantity' => lang('Reports.quantity'), 'sorter' => 'number_sorter'], - ['subtotal' => lang('Reports.subtotal'), 'sorter' => 'number_sorter'], - ['tax' => lang('Reports.tax'), 'sorter' => 'number_sorter'], - ['total' => lang('Reports.total'), 'sorter' => 'number_sorter'], - ['cost' => lang('Reports.cost'), 'sorter' => 'number_sorter'], - ['profit' => lang('Reports.profit'), 'sorter' => 'number_sorter'] - ]; - } + /** + * @return array[] + */ + protected function _get_data_columns(): array //TODO: Hungarian notation + { + return [ + ['item_name' => lang('Reports.item')], + ['category' => lang('Reports.category')], + ['cost_price' => lang('Reports.cost_price'), 'sorter' => 'number_sorter'], + ['unit_price' => lang('Reports.unit_price'), 'sorter' => 'number_sorter'], + ['quantity' => lang('Reports.quantity'), 'sorter' => 'number_sorter'], + ['subtotal' => lang('Reports.subtotal'), 'sorter' => 'number_sorter'], + ['tax' => lang('Reports.tax'), 'sorter' => 'number_sorter'], + ['total' => lang('Reports.total'), 'sorter' => 'number_sorter'], + ['cost' => lang('Reports.cost'), 'sorter' => 'number_sorter'], + ['profit' => lang('Reports.profit'), 'sorter' => 'number_sorter'] + ]; + } - /** - * @param array $inputs - * @param object $builder - * @return void - */ - protected function _select(array $inputs, object &$builder): void //TODO: hungarian notation - { - parent::_select($inputs, $builder); //TODO: hungarian notation + /** + * @param array $inputs + * @param object $builder + * @return void + */ + protected function _select(array $inputs, object &$builder): void //TODO: hungarian notation + { + parent::_select($inputs, $builder); //TODO: hungarian notation - $builder->select(' - MAX(items.name) AS name, - MAX(items.category) AS category, - MAX(items.cost_price) AS cost_price, - MAX(items.unit_price) AS unit_price, - SUM(sales_items.quantity_purchased) AS quantity_purchased - '); - } + $builder->select(' + MAX(items.name) AS name, + MAX(items.category) AS category, + MAX(items.cost_price) AS cost_price, + MAX(items.unit_price) AS unit_price, + SUM(sales_items.quantity_purchased) AS quantity_purchased + '); + } - /** - * @param object $builder - * @return void - */ - protected function _from(object &$builder): void //TODO: hungarian notation - { - parent::_from($builder); + /** + * @param object $builder + * @return void + */ + protected function _from(object &$builder): void //TODO: hungarian notation + { + parent::_from($builder); - $builder->join('items AS items', 'sales_items.item_id = items.item_id', 'inner'); - } + $builder->join('items AS items', 'sales_items.item_id = items.item_id', 'inner'); + } - /** - * @param object $builder - * @return void - */ - protected function _group_order(object &$builder): void //TODO: hungarian notation - { - $builder->groupBy('items.item_id'); - $builder->orderBy('name'); - } + /** + * @param object $builder + * @return void + */ + protected function _group_order(object &$builder): void //TODO: hungarian notation + { + $builder->groupBy('items.item_id'); + $builder->orderBy('name'); + } } diff --git a/app/Models/Reports/Summary_payments.php b/app/Models/Reports/Summary_payments.php index aef2be78e..8148e6718 100644 --- a/app/Models/Reports/Summary_payments.php +++ b/app/Models/Reports/Summary_payments.php @@ -6,191 +6,191 @@ use Config\OSPOS; class Summary_payments extends Summary_report { - /** - * @return array[] - */ - protected function _get_data_columns(): array //TODO: Hungarian notation - { - return [ - ['trans_group' => lang('Reports.trans_group')], - ['trans_type' => lang('Reports.trans_type')], - ['trans_sales' => lang('Reports.sales')], - ['trans_amount' => lang('Reports.trans_amount')], - ['trans_payments' => lang('Reports.trans_payments')], - ['trans_refunded' => lang('Reports.trans_refunded')], - ['trans_due' => lang('Reports.trans_due')] - ]; - } + /** + * @return array[] + */ + protected function _get_data_columns(): array //TODO: Hungarian notation + { + return [ + ['trans_group' => lang('Reports.trans_group')], + ['trans_type' => lang('Reports.trans_type')], + ['trans_sales' => lang('Reports.sales')], + ['trans_amount' => lang('Reports.trans_amount')], + ['trans_payments' => lang('Reports.trans_payments')], + ['trans_refunded' => lang('Reports.trans_refunded')], + ['trans_due' => lang('Reports.trans_due')] + ]; + } - /** - * @param array $inputs - * @return array - */ - public function getData(array $inputs): array - { - $cash_payment = lang('Sales.cash'); //TODO: This is never used. Should it be? - $config = config(OSPOS::class)->settings; + /** + * @param array $inputs + * @return array + */ + public function getData(array $inputs): array + { + $cash_payment = lang('Sales.cash'); //TODO: This is never used. Should it be? + $config = config(OSPOS::class)->settings; - $separator[] = [ - 'trans_group' => '
    ', - 'trans_type' => '', - 'trans_sales' => '', - 'trans_amount' => '', - 'trans_payments' => '', - 'trans_refunded' => '', - 'trans_due' => '' - ]; + $separator[] = [ + 'trans_group' => '
    ', + 'trans_type' => '', + 'trans_sales' => '', + 'trans_amount' => '', + 'trans_payments' => '', + 'trans_refunded' => '', + 'trans_due' => '' + ]; - $where = ''; //TODO: Duplicated code + $where = ''; //TODO: Duplicated code - //TODO: this needs to be converted to ternary notation - if(empty($config['date_or_time_format'])) - { - $where .= 'DATE(sale_time) BETWEEN ' . $this->db->escape($inputs['start_date']) . ' AND ' . $this->db->escape($inputs['end_date']); - } - else - { - $where .= 'sale_time BETWEEN ' . $this->db->escape(rawurldecode($inputs['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($inputs['end_date'])); - } + //TODO: this needs to be converted to ternary notation + if(empty($config['date_or_time_format'])) + { + $where .= 'DATE(sale_time) BETWEEN ' . $this->db->escape($inputs['start_date']) . ' AND ' . $this->db->escape($inputs['end_date']); + } + else + { + $where .= 'sale_time BETWEEN ' . $this->db->escape(rawurldecode($inputs['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($inputs['end_date'])); + } - $this->create_summary_payments_temp_tables($where); + $this->create_summary_payments_temp_tables($where); - $select = '\'' . lang('Reports.trans_sales') . '\' AS trans_group, '; - $select .= '(CASE sale_type WHEN ' . SALE_TYPE_POS . ' THEN \'' . lang('Reports.code_pos') - . '\' WHEN ' . SALE_TYPE_INVOICE . ' THEN \'' . lang('Sales.invoice') - . '\' WHEN ' . SALE_TYPE_RETURN . ' THEN \'' . lang('Sales.return') - . '\' END) AS trans_type, '; - $select .= 'COUNT(sales.sale_id) AS trans_sales, '; - $select .= 'SUM(sumpay_items.trans_amount) AS trans_amount, '; - $select .= 'IFNULL(SUM(sumpay_payments.total_payments),0) AS trans_payments, '; - $select .= 'IFNULL(SUM(sumpay_payments.total_cash_refund),0) AS trans_refunded, '; - $select .= 'SUM(CASE WHEN sumpay_items.trans_amount - IFNULL(sumpay_payments.total_payments,0) > 0 THEN sumpay_items.trans_amount - IFNULL(sumpay_payments.total_payments,0) ELSE 0 END) as trans_due '; + $select = '\'' . lang('Reports.trans_sales') . '\' AS trans_group, '; + $select .= '(CASE sale_type WHEN ' . SALE_TYPE_POS . ' THEN \'' . lang('Reports.code_pos') + . '\' WHEN ' . SALE_TYPE_INVOICE . ' THEN \'' . lang('Sales.invoice') + . '\' WHEN ' . SALE_TYPE_RETURN . ' THEN \'' . lang('Sales.return') + . '\' END) AS trans_type, '; + $select .= 'COUNT(sales.sale_id) AS trans_sales, '; + $select .= 'SUM(sumpay_items.trans_amount) AS trans_amount, '; + $select .= 'IFNULL(SUM(sumpay_payments.total_payments),0) AS trans_payments, '; + $select .= 'IFNULL(SUM(sumpay_payments.total_cash_refund),0) AS trans_refunded, '; + $select .= 'SUM(CASE WHEN sumpay_items.trans_amount - IFNULL(sumpay_payments.total_payments,0) > 0 THEN sumpay_items.trans_amount - IFNULL(sumpay_payments.total_payments,0) ELSE 0 END) as trans_due '; - $builder = $this->db->table('ospos_sales AS sales'); - $builder->select($select); - $builder->join('sumpay_items_temp AS sumpay_items', 'sales.sale_id = sumpay_items.sale_id', 'left outer'); - $builder->join('sumpay_payments_temp AS sumpay_payments', 'sales.sale_id = sumpay_payments.sale_id', 'left outer'); - $builder->where('sales.sale_status', COMPLETED); - $this->_where($inputs, $builder); + $builder = $this->db->table('ospos_sales AS sales'); + $builder->select($select); + $builder->join('sumpay_items_temp AS sumpay_items', 'sales.sale_id = sumpay_items.sale_id', 'left outer'); + $builder->join('sumpay_payments_temp AS sumpay_payments', 'sales.sale_id = sumpay_payments.sale_id', 'left outer'); + $builder->where('sales.sale_status', COMPLETED); + $this->_where($inputs, $builder); - $builder->groupBy('trans_type'); + $builder->groupBy('trans_type'); - $sales = $builder->get()->getResultArray(); + $sales = $builder->get()->getResultArray(); - // At this point in time refunds are assumed to be cash refunds. - $total_cash_refund = 0; - foreach($sales as $key => $sale_summary) - { - if($sale_summary['trans_refunded'] <> 0) - { - $total_cash_refund += $sale_summary['trans_refunded']; - } - } + // At this point in time refunds are assumed to be cash refunds. + $total_cash_refund = 0; + foreach($sales as $key => $sale_summary) + { + if($sale_summary['trans_refunded'] <> 0) + { + $total_cash_refund += $sale_summary['trans_refunded']; + } + } - $select = '\'' . lang('Reports.trans_payments') . '\' AS trans_group, '; - $select .= 'sales_payments.payment_type as trans_type, '; - $select .= 'COUNT(sales.sale_id) AS trans_sales, '; - $select .= 'SUM(payment_amount - cash_refund) AS trans_amount,'; - $select .= 'SUM(payment_amount) AS trans_payments,'; - $select .= 'SUM(cash_refund) AS trans_refunded, '; - $select .= '0 AS trans_due '; + $select = '\'' . lang('Reports.trans_payments') . '\' AS trans_group, '; + $select .= 'sales_payments.payment_type as trans_type, '; + $select .= 'COUNT(sales.sale_id) AS trans_sales, '; + $select .= 'SUM(payment_amount - cash_refund) AS trans_amount,'; + $select .= 'SUM(payment_amount) AS trans_payments,'; + $select .= 'SUM(cash_refund) AS trans_refunded, '; + $select .= '0 AS trans_due '; - $builder = $this->db->table('sales AS sales'); - $builder->select($select); - $builder->join('sales_payments AS sales_payments', 'sales.sale_id = sales_payments.sale_id', 'left outer'); - $builder->where('sales.sale_status', COMPLETED); - $this->_where($inputs, $builder); + $builder = $this->db->table('sales AS sales'); + $builder->select($select); + $builder->join('sales_payments AS sales_payments', 'sales.sale_id = sales_payments.sale_id', 'left outer'); + $builder->where('sales.sale_status', COMPLETED); + $this->_where($inputs, $builder); - $builder->groupBy('sales_payments.payment_type'); + $builder->groupBy('sales_payments.payment_type'); - $payments = $builder->get()->getResultArray(); + $payments = $builder->get()->getResultArray(); - // consider Gift Card as only one type of payment and do not show "Gift Card: 1, Gift Card: 2, etc." in the total - $gift_card_count = 0; - $gift_card_amount = 0; - foreach($payments as $key => $payment) - { - if(str_contains($payment['trans_type'], lang('Sales.giftcard'))) - { - $gift_card_count += $payment['trans_sales']; - $gift_card_amount += $payment['trans_amount']; + // consider Gift Card as only one type of payment and do not show "Gift Card: 1, Gift Card: 2, etc." in the total + $gift_card_count = 0; + $gift_card_amount = 0; + foreach($payments as $key => $payment) + { + if(str_contains($payment['trans_type'], lang('Sales.giftcard'))) + { + $gift_card_count += $payment['trans_sales']; + $gift_card_amount += $payment['trans_amount']; - // Remove the "Gift Card: 1", "Gift Card: 2", etc. payment string - unset($payments[$key]); - } - } + // Remove the "Gift Card: 1", "Gift Card: 2", etc. payment string + unset($payments[$key]); + } + } - if($gift_card_count > 0) - { - $payments[] = [ - 'trans_group' => lang('Reports.trans_payments'), - 'trans_type' => lang('Sales.giftcard'), - 'trans_sales' => $gift_card_count, - 'trans_amount' => $gift_card_amount, - 'trans_payments' => $gift_card_amount, - 'trans_refunded' => 0, - 'trans_due' => 0 - ]; - } + if($gift_card_count > 0) + { + $payments[] = [ + 'trans_group' => lang('Reports.trans_payments'), + 'trans_type' => lang('Sales.giftcard'), + 'trans_sales' => $gift_card_count, + 'trans_amount' => $gift_card_amount, + 'trans_payments' => $gift_card_amount, + 'trans_refunded' => 0, + 'trans_due' => 0 + ]; + } - return array_merge($sales, $separator, $payments); - } + return array_merge($sales, $separator, $payments); + } - /** - * @param string $where - * @return void - */ - protected function create_summary_payments_temp_tables(string $where): void - { + /** + * @param string $where + * @return void + */ + protected function create_summary_payments_temp_tables(string $where): void + { //TODO: convert to using QueryBuilder. Use App/Models/Reports/Summary_taxes.php getData() as a reference template - $decimals = totals_decimals(); + $decimals = totals_decimals(); - $trans_amount = 'SUM(CASE WHEN sales_items.discount_type = ' . PERCENT - . " THEN sales_items.quantity_purchased * sales_items.item_unit_price - ROUND(sales_items.quantity_purchased * sales_items.item_unit_price * sales_items.discount / 100, $decimals) " - . ' ELSE sales_items.quantity_purchased * (sales_items.item_unit_price - sales_items.discount) END) AS trans_amount'; + $trans_amount = 'SUM(CASE WHEN sales_items.discount_type = ' . PERCENT + . " THEN sales_items.quantity_purchased * sales_items.item_unit_price - ROUND(sales_items.quantity_purchased * sales_items.item_unit_price * sales_items.discount / 100, $decimals) " + . ' ELSE sales_items.quantity_purchased * (sales_items.item_unit_price - sales_items.discount) END) AS trans_amount'; - $this->db->query('CREATE TEMPORARY TABLE IF NOT EXISTS ' . $this->db->prefixTable('sumpay_taxes_temp') . - ' (INDEX(sale_id)) ENGINE=MEMORY - ( - SELECT sales.sale_id, SUM(sales_taxes.sale_tax_amount) AS total_taxes - FROM ' . $this->db->prefixTable('sales') . ' AS sales - LEFT OUTER JOIN ' . $this->db->prefixTable('sales_taxes') . ' AS sales_taxes - ON sales.sale_id = sales_taxes.sale_id - WHERE ' . $where . ' AND sales_taxes.tax_type = \'1\' - GROUP BY sale_id - )' - ); + $this->db->query('CREATE TEMPORARY TABLE IF NOT EXISTS ' . $this->db->prefixTable('sumpay_taxes_temp') . + ' (INDEX(sale_id)) ENGINE=MEMORY + ( + SELECT sales.sale_id, SUM(sales_taxes.sale_tax_amount) AS total_taxes + FROM ' . $this->db->prefixTable('sales') . ' AS sales + LEFT OUTER JOIN ' . $this->db->prefixTable('sales_taxes') . ' AS sales_taxes + ON sales.sale_id = sales_taxes.sale_id + WHERE ' . $where . ' AND sales_taxes.tax_type = \'1\' + GROUP BY sale_id + )' + ); - $this->db->query('CREATE TEMPORARY TABLE IF NOT EXISTS ' . $this->db->prefixTable('sumpay_items_temp') . - ' (INDEX(sale_id)) ENGINE=MEMORY - ( - SELECT sales.sale_id, ' . $trans_amount - . ' FROM ' . $this->db->prefixTable('sales') . ' AS sales ' - . 'LEFT OUTER JOIN ' . $this->db->prefixTable('sales_items') . ' AS sales_items ' - . 'ON sales.sale_id = sales_items.sale_id ' - . 'LEFT OUTER JOIN ' . $this->db->prefixTable('sumpay_taxes_temp') . ' AS sumpay_taxes ' - . 'ON sales.sale_id = sumpay_taxes.sale_id ' - . 'WHERE ' . $where . ' GROUP BY sale_id - )' - ); + $this->db->query('CREATE TEMPORARY TABLE IF NOT EXISTS ' . $this->db->prefixTable('sumpay_items_temp') . + ' (INDEX(sale_id)) ENGINE=MEMORY + ( + SELECT sales.sale_id, ' . $trans_amount + . ' FROM ' . $this->db->prefixTable('sales') . ' AS sales ' + . 'LEFT OUTER JOIN ' . $this->db->prefixTable('sales_items') . ' AS sales_items ' + . 'ON sales.sale_id = sales_items.sale_id ' + . 'LEFT OUTER JOIN ' . $this->db->prefixTable('sumpay_taxes_temp') . ' AS sumpay_taxes ' + . 'ON sales.sale_id = sumpay_taxes.sale_id ' + . 'WHERE ' . $where . ' GROUP BY sale_id + )' + ); - $this->db->query('UPDATE ' . $this->db->prefixTable('sumpay_items_temp') . ' AS sumpay_items ' - . 'SET trans_amount = trans_amount + IFNULL((SELECT total_taxes FROM ' . $this->db->prefixTable('sumpay_taxes_temp') - . ' AS sumpay_taxes WHERE sumpay_items.sale_id = sumpay_taxes.sale_id),0)'); + $this->db->query('UPDATE ' . $this->db->prefixTable('sumpay_items_temp') . ' AS sumpay_items ' + . 'SET trans_amount = trans_amount + IFNULL((SELECT total_taxes FROM ' . $this->db->prefixTable('sumpay_taxes_temp') + . ' AS sumpay_taxes WHERE sumpay_items.sale_id = sumpay_taxes.sale_id),0)'); - $this->db->query('CREATE TEMPORARY TABLE IF NOT EXISTS ' . $this->db->prefixTable('sumpay_payments_temp') . - ' (INDEX(sale_id)) ENGINE=MEMORY - ( - SELECT sales.sale_id, COUNT(sales.sale_id) AS number_payments, - SUM(CASE WHEN sales_payments.cash_adjustment = 0 THEN sales_payments.payment_amount ELSE 0 END) AS total_payments, - SUM(CASE WHEN sales_payments.cash_adjustment = 1 THEN sales_payments.payment_amount ELSE 0 END) AS total_cash_adjustment, - SUM(sales_payments.cash_refund) AS total_cash_refund - FROM ' . $this->db->prefixTable('sales') . ' AS sales - LEFT OUTER JOIN ' . $this->db->prefixTable('sales_payments') . ' AS sales_payments - ON sales.sale_id = sales_payments.sale_id - WHERE ' . $where . ' - GROUP BY sale_id - )' - ); - } + $this->db->query('CREATE TEMPORARY TABLE IF NOT EXISTS ' . $this->db->prefixTable('sumpay_payments_temp') . + ' (INDEX(sale_id)) ENGINE=MEMORY + ( + SELECT sales.sale_id, COUNT(sales.sale_id) AS number_payments, + SUM(CASE WHEN sales_payments.cash_adjustment = 0 THEN sales_payments.payment_amount ELSE 0 END) AS total_payments, + SUM(CASE WHEN sales_payments.cash_adjustment = 1 THEN sales_payments.payment_amount ELSE 0 END) AS total_cash_adjustment, + SUM(sales_payments.cash_refund) AS total_cash_refund + FROM ' . $this->db->prefixTable('sales') . ' AS sales + LEFT OUTER JOIN ' . $this->db->prefixTable('sales_payments') . ' AS sales_payments + ON sales.sale_id = sales_payments.sale_id + WHERE ' . $where . ' + GROUP BY sale_id + )' + ); + } } diff --git a/app/Models/Reports/Summary_report.php b/app/Models/Reports/Summary_report.php index 161649d71..c96606b13 100644 --- a/app/Models/Reports/Summary_report.php +++ b/app/Models/Reports/Summary_report.php @@ -7,235 +7,235 @@ use CodeIgniter\Database\BaseBuilder; abstract class Summary_report extends Report { - /** - * Private interface implementing the core basic functionality for all reports - */ - private function __common_select(array $inputs, &$builder): void //TODO: Hungarian notation - { - $config = config(OSPOS::class)->settings; + /** + * Private interface implementing the core basic functionality for all reports + */ + private function __common_select(array $inputs, &$builder): void //TODO: Hungarian notation + { + $config = config(OSPOS::class)->settings; //TODO: convert to using QueryBuilder. Use App/Models/Reports/Summary_taxes.php getData() as a reference template - $where = ''; //TODO: Duplicated code + $where = ''; //TODO: Duplicated code - if(empty($config['date_or_time_format'])) - { - $where .= 'DATE(sale_time) BETWEEN ' . $this->db->escape($inputs['start_date']) . ' AND ' . $this->db->escape($inputs['end_date']); - } - else - { - $where .= 'sale_time BETWEEN ' . $this->db->escape(rawurldecode($inputs['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($inputs['end_date'])); - } + if(empty($config['date_or_time_format'])) + { + $where .= 'DATE(sale_time) BETWEEN ' . $this->db->escape($inputs['start_date']) . ' AND ' . $this->db->escape($inputs['end_date']); + } + else + { + $where .= 'sale_time BETWEEN ' . $this->db->escape(rawurldecode($inputs['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($inputs['end_date'])); + } - $decimals = totals_decimals(); + $decimals = totals_decimals(); - $sale_price = 'CASE WHEN sales_items.discount_type = ' . PERCENT - . " THEN sales_items.quantity_purchased * sales_items.item_unit_price - ROUND(sales_items.quantity_purchased * sales_items.item_unit_price * sales_items.discount / 100, $decimals) " - . 'ELSE sales_items.quantity_purchased * (sales_items.item_unit_price - sales_items.discount) END'; + $sale_price = 'CASE WHEN sales_items.discount_type = ' . PERCENT + . " THEN sales_items.quantity_purchased * sales_items.item_unit_price - ROUND(sales_items.quantity_purchased * sales_items.item_unit_price * sales_items.discount / 100, $decimals) " + . 'ELSE sales_items.quantity_purchased * (sales_items.item_unit_price - sales_items.discount) END'; - $sale_cost = 'SUM(sales_items.item_cost_price * sales_items.quantity_purchased)'; - $sales_tax = "IFNULL(SUM(sales_items_taxes.tax), 0)"; + $sale_cost = 'SUM(sales_items.item_cost_price * sales_items.quantity_purchased)'; + $sales_tax = "IFNULL(SUM(sales_items_taxes.tax), 0)"; - $cash_adjustment = 'IFNULL(SUM(payments.sale_cash_adjustment), 0)'; + $cash_adjustment = 'IFNULL(SUM(payments.sale_cash_adjustment), 0)'; - if($config['tax_included']) - { - $sale_total = "ROUND(SUM($sale_price), $decimals) + $cash_adjustment"; - $sale_subtotal = "$sale_total - $sales_tax"; + if($config['tax_included']) + { + $sale_total = "ROUND(SUM($sale_price), $decimals) + $cash_adjustment"; + $sale_subtotal = "$sale_total - $sales_tax"; - } - else - { - $sale_subtotal = "ROUND(SUM($sale_price), $decimals) + $cash_adjustment"; - $sale_total = "ROUND(SUM($sale_price), $decimals) + $sales_tax + $cash_adjustment"; - } + } + else + { + $sale_subtotal = "ROUND(SUM($sale_price), $decimals) + $cash_adjustment"; + $sale_total = "ROUND(SUM($sale_price), $decimals) + $sales_tax + $cash_adjustment"; + } - // create a temporary table to contain all the sum of taxes per sale item - $this->db->query('CREATE TEMPORARY TABLE IF NOT EXISTS ' . $this->db->prefixTable('sales_items_taxes_temp') . - ' (INDEX(sale_id), INDEX(item_id)) ENGINE=MEMORY - ( - SELECT sales_items_taxes.sale_id AS sale_id, - sales_items_taxes.item_id AS item_id, - sales_items_taxes.line AS line, - SUM(ROUND(sales_items_taxes.item_tax_amount,' . $decimals . ')) AS tax - FROM ' . $this->db->prefixTable('sales_items_taxes') . ' AS sales_items_taxes - INNER JOIN ' . $this->db->prefixTable('sales') . ' AS sales - ON sales.sale_id = sales_items_taxes.sale_id - INNER JOIN ' . $this->db->prefixTable('sales_items') . ' AS sales_items - ON sales_items.sale_id = sales_items_taxes.sale_id AND sales_items.line = sales_items_taxes.line - WHERE ' . $where . ' - GROUP BY sale_id, item_id, line - )' - ); + // create a temporary table to contain all the sum of taxes per sale item + $this->db->query('CREATE TEMPORARY TABLE IF NOT EXISTS ' . $this->db->prefixTable('sales_items_taxes_temp') . + ' (INDEX(sale_id), INDEX(item_id)) ENGINE=MEMORY + ( + SELECT sales_items_taxes.sale_id AS sale_id, + sales_items_taxes.item_id AS item_id, + sales_items_taxes.line AS line, + SUM(ROUND(sales_items_taxes.item_tax_amount,' . $decimals . ')) AS tax + FROM ' . $this->db->prefixTable('sales_items_taxes') . ' AS sales_items_taxes + INNER JOIN ' . $this->db->prefixTable('sales') . ' AS sales + ON sales.sale_id = sales_items_taxes.sale_id + INNER JOIN ' . $this->db->prefixTable('sales_items') . ' AS sales_items + ON sales_items.sale_id = sales_items_taxes.sale_id AND sales_items.line = sales_items_taxes.line + WHERE ' . $where . ' + GROUP BY sale_id, item_id, line + )' + ); - $this->db->query('CREATE TEMPORARY TABLE IF NOT EXISTS ' . $this->db->prefixTable('sales_payments_temp') . - ' (PRIMARY KEY(sale_id), INDEX(sale_id)) - ( - SELECT payments.sale_id AS sale_id, - SUM(CASE WHEN payments.cash_adjustment = 0 THEN payments.payment_amount ELSE 0 END) AS sale_payment_amount, - SUM(CASE WHEN payments.cash_adjustment = 1 THEN payments.payment_amount ELSE 0 END) AS sale_cash_adjustment, - SUM(payments.cash_refund) AS sale_cash_refund, - GROUP_CONCAT(CONCAT(payments.payment_type, " ", (payments.payment_amount - payments.cash_refund)) SEPARATOR ", ") AS payment_type - FROM ' . $this->db->prefixTable('sales_payments') . ' AS payments - INNER JOIN ' . $this->db->prefixTable('sales') . ' AS sales - ON sales.sale_id = payments.sale_id - WHERE ' . $where . ' - GROUP BY sale_id - )' - ); + $this->db->query('CREATE TEMPORARY TABLE IF NOT EXISTS ' . $this->db->prefixTable('sales_payments_temp') . + ' (PRIMARY KEY(sale_id), INDEX(sale_id)) + ( + SELECT payments.sale_id AS sale_id, + SUM(CASE WHEN payments.cash_adjustment = 0 THEN payments.payment_amount ELSE 0 END) AS sale_payment_amount, + SUM(CASE WHEN payments.cash_adjustment = 1 THEN payments.payment_amount ELSE 0 END) AS sale_cash_adjustment, + SUM(payments.cash_refund) AS sale_cash_refund, + GROUP_CONCAT(CONCAT(payments.payment_type, " ", (payments.payment_amount - payments.cash_refund)) SEPARATOR ", ") AS payment_type + FROM ' . $this->db->prefixTable('sales_payments') . ' AS payments + INNER JOIN ' . $this->db->prefixTable('sales') . ' AS sales + ON sales.sale_id = payments.sale_id + WHERE ' . $where . ' + GROUP BY sale_id + )' + ); - $builder->select(" - IFNULL($sale_subtotal, $sale_total) AS subtotal, - $sales_tax AS tax, - IFNULL($sale_total, $sale_subtotal) AS total, - $sale_cost AS cost, - (IFNULL($sale_subtotal, $sale_total) - $sale_cost) AS profit - "); - } + $builder->select(" + IFNULL($sale_subtotal, $sale_total) AS subtotal, + $sales_tax AS tax, + IFNULL($sale_total, $sale_subtotal) AS total, + $sale_cost AS cost, + (IFNULL($sale_subtotal, $sale_total) - $sale_cost) AS profit + "); + } - /** - * @param BaseBuilder $builder - * @return void - */ - private function __common_from(BaseBuilder &$builder): void //TODO: hungarian notation - { - $builder->join('sales AS sales', 'sales_items.sale_id = sales.sale_id', 'inner'); - $builder->join('sales_items_taxes_temp AS sales_items_taxes', - 'sales_items.sale_id = sales_items_taxes.sale_id AND sales_items.item_id = sales_items_taxes.item_id AND sales_items.line = sales_items_taxes.line', - 'left outer'); - $builder->join('sales_payments_temp AS payments', 'sales.sale_id = payments.sale_id', 'LEFT OUTER'); - } + /** + * @param BaseBuilder $builder + * @return void + */ + private function __common_from(BaseBuilder &$builder): void //TODO: hungarian notation + { + $builder->join('sales AS sales', 'sales_items.sale_id = sales.sale_id', 'inner'); + $builder->join('sales_items_taxes_temp AS sales_items_taxes', + 'sales_items.sale_id = sales_items_taxes.sale_id AND sales_items.item_id = sales_items_taxes.item_id AND sales_items.line = sales_items_taxes.line', + 'left outer'); + $builder->join('sales_payments_temp AS payments', 'sales.sale_id = payments.sale_id', 'LEFT OUTER'); + } - /** - * @param array $inputs - * @param $builder - * @return void - */ - private function __common_where(array $inputs, &$builder): void - { - $config = config(OSPOS::class)->settings; + /** + * @param array $inputs + * @param $builder + * @return void + */ + private function __common_where(array $inputs, &$builder): void + { + $config = config(OSPOS::class)->settings; - //TODO: Probably going to need to rework these since you can't reference $builder without it's instantiation. - if(empty($config['date_or_time_format'])) //TODO: Duplicated code - { - $builder->where('DATE(sales.sale_time) BETWEEN ' . $this->db->escape($inputs['start_date']) . ' AND ' . $this->db->escape($inputs['end_date'])); - } - else - { - $builder->where('sales.sale_time BETWEEN ' . $this->db->escape(rawurldecode($inputs['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($inputs['end_date']))); - } + //TODO: Probably going to need to rework these since you can't reference $builder without it's instantiation. + if(empty($config['date_or_time_format'])) //TODO: Duplicated code + { + $builder->where('DATE(sales.sale_time) BETWEEN ' . $this->db->escape($inputs['start_date']) . ' AND ' . $this->db->escape($inputs['end_date'])); + } + else + { + $builder->where('sales.sale_time BETWEEN ' . $this->db->escape(rawurldecode($inputs['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($inputs['end_date']))); + } - if($inputs['location_id'] != 'all') - { - $builder->where('sales_items.item_location', $inputs['location_id']); - } + if($inputs['location_id'] != 'all') + { + $builder->where('sales_items.item_location', $inputs['location_id']); + } - if($inputs['sale_type'] == 'complete') - { - $builder->where('sales.sale_status', COMPLETED); - $builder->groupStart(); - $builder->where('sales.sale_type', SALE_TYPE_POS); - $builder->orWhere('sales.sale_type', SALE_TYPE_INVOICE); - $builder->orWhere('sales.sale_type', SALE_TYPE_RETURN); - $builder->groupEnd(); - } - elseif($inputs['sale_type'] == 'sales') - { - $builder->where('sales.sale_status', COMPLETED); - $builder->groupStart(); - $builder->where('sales.sale_type', SALE_TYPE_POS); - $builder->orWhere('sales.sale_type', SALE_TYPE_INVOICE); - $builder->groupEnd(); - } - elseif($inputs['sale_type'] == 'quotes') - { - $builder->where('sales.sale_status', SUSPENDED); - $builder->where('sales.sale_type', SALE_TYPE_QUOTE); - } - elseif($inputs['sale_type'] == 'work_orders') - { - $builder->where('sales.sale_status', SUSPENDED); - $builder->where('sales.sale_type', SALE_TYPE_WORK_ORDER); - } - elseif($inputs['sale_type'] == 'canceled') - { - $builder->where('sales.sale_status', CANCELED); - } - elseif($inputs['sale_type'] == 'returns') - { - $builder->where('sales.sale_status', COMPLETED); - $builder->where('sales.sale_type', SALE_TYPE_RETURN); - } - } + if($inputs['sale_type'] == 'complete') + { + $builder->where('sales.sale_status', COMPLETED); + $builder->groupStart(); + $builder->where('sales.sale_type', SALE_TYPE_POS); + $builder->orWhere('sales.sale_type', SALE_TYPE_INVOICE); + $builder->orWhere('sales.sale_type', SALE_TYPE_RETURN); + $builder->groupEnd(); + } + elseif($inputs['sale_type'] == 'sales') + { + $builder->where('sales.sale_status', COMPLETED); + $builder->groupStart(); + $builder->where('sales.sale_type', SALE_TYPE_POS); + $builder->orWhere('sales.sale_type', SALE_TYPE_INVOICE); + $builder->groupEnd(); + } + elseif($inputs['sale_type'] == 'quotes') + { + $builder->where('sales.sale_status', SUSPENDED); + $builder->where('sales.sale_type', SALE_TYPE_QUOTE); + } + elseif($inputs['sale_type'] == 'work_orders') + { + $builder->where('sales.sale_status', SUSPENDED); + $builder->where('sales.sale_type', SALE_TYPE_WORK_ORDER); + } + elseif($inputs['sale_type'] == 'canceled') + { + $builder->where('sales.sale_status', CANCELED); + } + elseif($inputs['sale_type'] == 'returns') + { + $builder->where('sales.sale_status', COMPLETED); + $builder->where('sales.sale_type', SALE_TYPE_RETURN); + } + } - /** - * Protected class interface implemented by derived classes where required - */ - abstract protected function _get_data_columns(): array; //TODO: hungarian notation + /** + * Protected class interface implemented by derived classes where required + */ + abstract protected function _get_data_columns(): array; //TODO: hungarian notation - /** - * @param array $inputs - * @param BaseBuilder $builder - * @return void - */ - protected function _select(array $inputs, BaseBuilder &$builder): void { $this->__common_select($inputs, $builder); } //TODO: hungarian notation + /** + * @param array $inputs + * @param BaseBuilder $builder + * @return void + */ + protected function _select(array $inputs, BaseBuilder &$builder): void { $this->__common_select($inputs, $builder); } //TODO: hungarian notation - /** - * @param BaseBuilder $builder - * @return void - */ - protected function _from(BaseBuilder &$builder): void { $this->__common_from($builder); } //TODO: hungarian notation TODO: Do we need to pass &$builder to the __common_from()? + /** + * @param BaseBuilder $builder + * @return void + */ + protected function _from(BaseBuilder &$builder): void { $this->__common_from($builder); } //TODO: hungarian notation TODO: Do we need to pass &$builder to the __common_from()? - /** - * @param array $inputs - * @param BaseBuilder $builder - * @return void - */ - protected function _where(array $inputs, BaseBuilder &$builder): void { $this->__common_where($inputs, $builder); } //TODO: hungarian notation + /** + * @param array $inputs + * @param BaseBuilder $builder + * @return void + */ + protected function _where(array $inputs, BaseBuilder &$builder): void { $this->__common_where($inputs, $builder); } //TODO: hungarian notation - /** - * @param BaseBuilder $builder - * @return void - */ - protected function _group_order(BaseBuilder &$builder): void {} //TODO: hungarian notation + /** + * @param BaseBuilder $builder + * @return void + */ + protected function _group_order(BaseBuilder &$builder): void {} //TODO: hungarian notation - /** - * Public interface implementing the base abstract class, - * in general it should not be extended unless there is a valid reason - * like a non sale report (e.g. expenses) - */ + /** + * Public interface implementing the base abstract class, + * in general it should not be extended unless there is a valid reason + * like a non sale report (e.g. expenses) + */ - public function getDataColumns(): array - { - return $this->_get_data_columns(); - } + public function getDataColumns(): array + { + return $this->_get_data_columns(); + } - /** - * @param array $inputs - * @return array - */ - public function getData(array $inputs): array - { - $builder = $this->db->table('sales_items AS sales_items'); + /** + * @param array $inputs + * @return array + */ + public function getData(array $inputs): array + { + $builder = $this->db->table('sales_items AS sales_items'); - $this->_select($inputs, $builder); - $this->_from($builder); - $this->_where($inputs, $builder); - $this->_group_order($builder); + $this->_select($inputs, $builder); + $this->_from($builder); + $this->_where($inputs, $builder); + $this->_group_order($builder); - return $builder->get()->getResultArray(); - } + return $builder->get()->getResultArray(); + } - /** - * @param array $inputs - * @return array - */ - public function getSummaryData(array $inputs): array - { - $builder = $this->db->table('sales_items AS sales_items'); + /** + * @param array $inputs + * @return array + */ + public function getSummaryData(array $inputs): array + { + $builder = $this->db->table('sales_items AS sales_items'); - $this->__common_select($inputs, $builder); - $this->__common_from($builder); - $this->_where($inputs, $builder); + $this->__common_select($inputs, $builder); + $this->__common_from($builder); + $this->_where($inputs, $builder); - return $builder->get()->getRowArray(); - } + return $builder->get()->getRowArray(); + } } diff --git a/app/Models/Reports/Summary_sales.php b/app/Models/Reports/Summary_sales.php index 73afdaf34..1e9ed21ab 100644 --- a/app/Models/Reports/Summary_sales.php +++ b/app/Models/Reports/Summary_sales.php @@ -4,46 +4,46 @@ namespace App\Models\Reports; class Summary_sales extends Summary_report { - /** - * @return array[] - */ - protected function _get_data_columns(): array - { - return [ - ['sale_date' => lang('Reports.date'), 'sortable' => false], - ['sales' => lang('Reports.sales'), 'sorter' => 'number_sorter'], - ['quantity' => lang('Reports.quantity'), 'sorter' => 'number_sorter'], - ['subtotal' => lang('Reports.subtotal'), 'sorter' => 'number_sorter'], - ['tax' => lang('Reports.tax'), 'sorter' => 'number_sorter'], - ['total' => lang('Reports.total'), 'sorter' => 'number_sorter'], - ['cost' => lang('Reports.cost'), 'sorter' => 'number_sorter'], - ['profit' => lang('Reports.profit'), 'sorter' => 'number_sorter'] - ]; - } + /** + * @return array[] + */ + protected function _get_data_columns(): array + { + return [ + ['sale_date' => lang('Reports.date'), 'sortable' => false], + ['sales' => lang('Reports.sales'), 'sorter' => 'number_sorter'], + ['quantity' => lang('Reports.quantity'), 'sorter' => 'number_sorter'], + ['subtotal' => lang('Reports.subtotal'), 'sorter' => 'number_sorter'], + ['tax' => lang('Reports.tax'), 'sorter' => 'number_sorter'], + ['total' => lang('Reports.total'), 'sorter' => 'number_sorter'], + ['cost' => lang('Reports.cost'), 'sorter' => 'number_sorter'], + ['profit' => lang('Reports.profit'), 'sorter' => 'number_sorter'] + ]; + } - /** - * @param array $inputs - * @param object $builder - * @return void - */ - protected function _select(array $inputs, object &$builder): void //TODO: hungarian notation - { - parent::_select($inputs, $builder); //TODO: hungarian notation + /** + * @param array $inputs + * @param object $builder + * @return void + */ + protected function _select(array $inputs, object &$builder): void //TODO: hungarian notation + { + parent::_select($inputs, $builder); //TODO: hungarian notation - $builder->select(' - DATE(sales.sale_time) AS sale_date, - SUM(sales_items.quantity_purchased) AS quantity_purchased, - COUNT(DISTINCT sales.sale_id) AS sales - '); - } + $builder->select(' + DATE(sales.sale_time) AS sale_date, + SUM(sales_items.quantity_purchased) AS quantity_purchased, + COUNT(DISTINCT sales.sale_id) AS sales + '); + } - /** - * @param object $builder - * @return void - */ - protected function _group_order(object &$builder): void //TODO: hungarian notation - { - $builder->groupBy('sale_date'); - $builder->orderBy('sale_date'); - } + /** + * @param object $builder + * @return void + */ + protected function _group_order(object &$builder): void //TODO: hungarian notation + { + $builder->groupBy('sale_date'); + $builder->orderBy('sale_date'); + } } diff --git a/app/Models/Reports/Summary_sales_taxes.php b/app/Models/Reports/Summary_sales_taxes.php index f774838c6..09565b8c1 100644 --- a/app/Models/Reports/Summary_sales_taxes.php +++ b/app/Models/Reports/Summary_sales_taxes.php @@ -6,72 +6,72 @@ use Config\OSPOS; class Summary_sales_taxes extends Summary_report { - private array $config; + private array $config; - public function __construct() - { - parent::__construct(); - $this->config = config(OSPOS::class)->settings; - } + public function __construct() + { + parent::__construct(); + $this->config = config(OSPOS::class)->settings; + } - /** - * @return array[] - */ - protected function _get_data_columns(): array //TODO: hungarian notation - { - return [ - ['reporting_authority' => lang('Reports.authority')], - ['jurisdiction_name' => lang('Reports.jurisdiction')], - ['tax_category' => lang('Reports.tax_category')], - ['tax_rate' => lang('Reports.tax_rate'), 'sorter' => 'number_sorter'], - ['tax' => lang('Reports.tax'), 'sorter' => 'number_sorter'] - ]; - } + /** + * @return array[] + */ + protected function _get_data_columns(): array //TODO: hungarian notation + { + return [ + ['reporting_authority' => lang('Reports.authority')], + ['jurisdiction_name' => lang('Reports.jurisdiction')], + ['tax_category' => lang('Reports.tax_category')], + ['tax_rate' => lang('Reports.tax_rate'), 'sorter' => 'number_sorter'], + ['tax' => lang('Reports.tax'), 'sorter' => 'number_sorter'] + ]; + } - /** - * @param array $inputs - * @param object $builder - * @return void - */ - protected function _where(array $inputs, object &$builder): void //TODO: hungarian notation - { - $builder->where('sales.sale_status', COMPLETED); + /** + * @param array $inputs + * @param object $builder + * @return void + */ + protected function _where(array $inputs, object &$builder): void //TODO: hungarian notation + { + $builder->where('sales.sale_status', COMPLETED); - if(empty($this->config['date_or_time_format'])) //TODO: Duplicated code - { - $builder->where('DATE(sales.sale_time) BETWEEN ' . $this->db->escape($inputs['start_date']) . ' AND ' . $this->db->escape($inputs['end_date'])); - } - else - { - $builder->where('sales.sale_time BETWEEN ' . $this->db->escape(rawurldecode($inputs['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($inputs['end_date']))); - } - } + if(empty($this->config['date_or_time_format'])) //TODO: Duplicated code + { + $builder->where('DATE(sales.sale_time) BETWEEN ' . $this->db->escape($inputs['start_date']) . ' AND ' . $this->db->escape($inputs['end_date'])); + } + else + { + $builder->where('sales.sale_time BETWEEN ' . $this->db->escape(rawurldecode($inputs['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($inputs['end_date']))); + } + } - /** - * @param array $inputs - * @return array - */ - public function getData(array $inputs): array - { - $builder = $this->db->table('sales_taxes'); + /** + * @param array $inputs + * @return array + */ + public function getData(array $inputs): array + { + $builder = $this->db->table('sales_taxes'); - if(empty($this->config['date_or_time_format'])) - { - $builder->where('DATE(sale_time) BETWEEN ' . $inputs['start_date'] . ' AND ' . $inputs['end_date']); - } - else - { - $builder->where('sale_time BETWEEN ' . $this->db->escape(rawurldecode($inputs['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($inputs['end_date']))); - } + if(empty($this->config['date_or_time_format'])) + { + $builder->where('DATE(sale_time) BETWEEN ' . $inputs['start_date'] . ' AND ' . $inputs['end_date']); + } + else + { + $builder->where('sale_time BETWEEN ' . $this->db->escape(rawurldecode($inputs['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($inputs['end_date']))); + } - $builder->select('reporting_authority, jurisdiction_name, tax_category, tax_rate, SUM(sale_tax_amount) AS tax'); - $builder->join('sales', 'sales_taxes.sale_id = sales.sale_id', 'left'); - $builder->join('tax_categories', 'sales_taxes.tax_category_id = tax_categories.tax_category_id', 'left'); - $builder->join('tax_jurisdictions', 'sales_taxes.jurisdiction_id = tax_jurisdictions.jurisdiction_id', 'left'); - $builder->groupBy('reporting_authority, jurisdiction_name, tax_category, tax_rate'); + $builder->select('reporting_authority, jurisdiction_name, tax_category, tax_rate, SUM(sale_tax_amount) AS tax'); + $builder->join('sales', 'sales_taxes.sale_id = sales.sale_id', 'left'); + $builder->join('tax_categories', 'sales_taxes.tax_category_id = tax_categories.tax_category_id', 'left'); + $builder->join('tax_jurisdictions', 'sales_taxes.jurisdiction_id = tax_jurisdictions.jurisdiction_id', 'left'); + $builder->groupBy('reporting_authority, jurisdiction_name, tax_category, tax_rate'); - $query = $builder->get(); + $query = $builder->get(); - return $query->getResultArray(); - } + return $query->getResultArray(); + } } diff --git a/app/Models/Reports/Summary_suppliers.php b/app/Models/Reports/Summary_suppliers.php index f8b5ea5f2..b13b94a84 100644 --- a/app/Models/Reports/Summary_suppliers.php +++ b/app/Models/Reports/Summary_suppliers.php @@ -4,57 +4,57 @@ namespace App\Models\Reports; class Summary_suppliers extends Summary_report { - /** - * @return array[] - */ - protected function _get_data_columns(): array //TODO: hungarian notation - { - return [ - ['supplier_name' => lang('Reports.supplier')], - ['quantity' => lang('Reports.quantity')], - ['subtotal' => lang('Reports.subtotal'), 'sorter' => 'number_sorter'], - ['tax' => lang('Reports.tax'), 'sorter' => 'number_sorter'], - ['total' => lang('Reports.total'), 'sorter' => 'number_sorter'], - ['cost' => lang('Reports.cost'), 'sorter' => 'number_sorter'], - ['profit' => lang('Reports.profit'), 'sorter' => 'number_sorter'] - ]; - } + /** + * @return array[] + */ + protected function _get_data_columns(): array //TODO: hungarian notation + { + return [ + ['supplier_name' => lang('Reports.supplier')], + ['quantity' => lang('Reports.quantity')], + ['subtotal' => lang('Reports.subtotal'), 'sorter' => 'number_sorter'], + ['tax' => lang('Reports.tax'), 'sorter' => 'number_sorter'], + ['total' => lang('Reports.total'), 'sorter' => 'number_sorter'], + ['cost' => lang('Reports.cost'), 'sorter' => 'number_sorter'], + ['profit' => lang('Reports.profit'), 'sorter' => 'number_sorter'] + ]; + } - /** - * @param array $inputs - * @param object $builder - * @return void - */ - protected function _select(array $inputs, object &$builder): void //TODO: hungarian notation - { - parent::_select($inputs, $builder); //TODO: hungarian notation + /** + * @param array $inputs + * @param object $builder + * @return void + */ + protected function _select(array $inputs, object &$builder): void //TODO: hungarian notation + { + parent::_select($inputs, $builder); //TODO: hungarian notation - $builder->select(' - MAX(CONCAT(supplier_c.company_name, " (", supplier_p.first_name, " ", supplier_p.last_name, ")")) AS supplier, - SUM(sales_items.quantity_purchased) AS quantity_purchased - '); - } + $builder->select(' + MAX(CONCAT(supplier_c.company_name, " (", supplier_p.first_name, " ", supplier_p.last_name, ")")) AS supplier, + SUM(sales_items.quantity_purchased) AS quantity_purchased + '); + } - /** - * @param object $builder - * @return void - */ - protected function _from(object &$builder): void //TODO: hungarian notation - { - parent::_from($builder); //TODO: hungarian notation + /** + * @param object $builder + * @return void + */ + protected function _from(object &$builder): void //TODO: hungarian notation + { + parent::_from($builder); //TODO: hungarian notation - $builder->join('items AS items', 'sales_items.item_id = items.item_id'); - $builder->join('suppliers AS supplier_c', 'items.supplier_id = supplier_c.person_id '); - $builder->join('people AS supplier_p', 'items.supplier_id = supplier_p.person_id'); - } + $builder->join('items AS items', 'sales_items.item_id = items.item_id'); + $builder->join('suppliers AS supplier_c', 'items.supplier_id = supplier_c.person_id '); + $builder->join('people AS supplier_p', 'items.supplier_id = supplier_p.person_id'); + } - /** - * @param object $builder - * @return void - */ - protected function _group_order(object &$builder): void //TODO: hungarian notation - { - $builder->groupBy('items.supplier_id'); - $builder->orderBy('MAX(CONCAT(supplier_c.company_name, " (", supplier_p.first_name, " ", supplier_p.last_name, ")"))'); - } + /** + * @param object $builder + * @return void + */ + protected function _group_order(object &$builder): void //TODO: hungarian notation + { + $builder->groupBy('items.supplier_id'); + $builder->orderBy('MAX(CONCAT(supplier_c.company_name, " (", supplier_p.first_name, " ", supplier_p.last_name, ")"))'); + } } diff --git a/app/Models/Reports/Summary_taxes.php b/app/Models/Reports/Summary_taxes.php index 9d89af77d..0c3d1c03b 100644 --- a/app/Models/Reports/Summary_taxes.php +++ b/app/Models/Reports/Summary_taxes.php @@ -6,99 +6,99 @@ use Config\OSPOS; class Summary_taxes extends Summary_report { - private array $config; + private array $config; - public function __construct() - { - parent::__construct(); - $this->config = config(OSPOS::class)->settings; - } + public function __construct() + { + parent::__construct(); + $this->config = config(OSPOS::class)->settings; + } - /** - * @return array[] - */ - protected function _get_data_columns(): array //TODO: hungarian notation - { - return [ - ['tax_name' => lang('Reports.tax_name'), 'sortable' => false], - ['tax_percent' => lang('Reports.tax_percent'), 'sorter' => 'number_sorter'], - ['report_count' => lang('Reports.sales'), 'sorter' => 'number_sorter'], - ['subtotal' => lang('Reports.subtotal'), 'sorter' => 'number_sorter'], - ['tax' => lang('Reports.tax'), 'sorter' => 'number_sorter'], - ['total' => lang('Reports.total'), 'sorter' => 'number_sorter'] - ]; - } + /** + * @return array[] + */ + protected function _get_data_columns(): array //TODO: hungarian notation + { + return [ + ['tax_name' => lang('Reports.tax_name'), 'sortable' => false], + ['tax_percent' => lang('Reports.tax_percent'), 'sorter' => 'number_sorter'], + ['report_count' => lang('Reports.sales'), 'sorter' => 'number_sorter'], + ['subtotal' => lang('Reports.subtotal'), 'sorter' => 'number_sorter'], + ['tax' => lang('Reports.tax'), 'sorter' => 'number_sorter'], + ['total' => lang('Reports.total'), 'sorter' => 'number_sorter'] + ]; + } - /** - * @param array $inputs - * @param $builder - * @return void - */ - protected function _where(array $inputs, &$builder): void //TODO: hungarian notation - { - $builder->where('sales.sale_status', COMPLETED); + /** + * @param array $inputs + * @param $builder + * @return void + */ + protected function _where(array $inputs, &$builder): void //TODO: hungarian notation + { + $builder->where('sales.sale_status', COMPLETED); - if(empty($this->config['date_or_time_format'])) - { - $builder->where('DATE(sales.sale_time) BETWEEN ' . $this->db->escape($inputs['start_date']) . ' AND ' . $this->db->escape($inputs['end_date'])); - } - else - { - $builder->where('sales.sale_time BETWEEN ' . $this->db->escape(rawurldecode($inputs['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($inputs['end_date']))); - } - } + if(empty($this->config['date_or_time_format'])) + { + $builder->where('DATE(sales.sale_time) BETWEEN ' . $this->db->escape($inputs['start_date']) . ' AND ' . $this->db->escape($inputs['end_date'])); + } + else + { + $builder->where('sales.sale_time BETWEEN ' . $this->db->escape(rawurldecode($inputs['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($inputs['end_date']))); + } + } - /** - * @param array $inputs - * @return array - */ - public function getData(array $inputs): array - { - $decimals = totals_decimals(); - $db_prefix = $this->db->getPrefix(); + /** + * @param array $inputs + * @return array + */ + public function getData(array $inputs): array + { + $decimals = totals_decimals(); + $db_prefix = $this->db->getPrefix(); - if($this->config['tax_included']) - { - $sale_total = '(CASE WHEN ' . $db_prefix . 'sales_items.discount_type = ' . PERCENT - . " THEN " . $db_prefix . "sales_items.quantity_purchased * " . $db_prefix . "sales_items.item_unit_price - ROUND(" . $db_prefix . "sales_items.quantity_purchased * " . $db_prefix . "sales_items.item_unit_price * " . $db_prefix . "sales_items.discount / 100, $decimals)" - . ' ELSE ' . $db_prefix . 'sales_items.quantity_purchased * (' . $db_prefix . 'sales_items.item_unit_price - ' . $db_prefix . 'sales_items.discount) END)'; + if($this->config['tax_included']) + { + $sale_total = '(CASE WHEN ' . $db_prefix . 'sales_items.discount_type = ' . PERCENT + . " THEN " . $db_prefix . "sales_items.quantity_purchased * " . $db_prefix . "sales_items.item_unit_price - ROUND(" . $db_prefix . "sales_items.quantity_purchased * " . $db_prefix . "sales_items.item_unit_price * " . $db_prefix . "sales_items.discount / 100, $decimals)" + . ' ELSE ' . $db_prefix . 'sales_items.quantity_purchased * (' . $db_prefix . 'sales_items.item_unit_price - ' . $db_prefix . 'sales_items.discount) END)'; - $sale_subtotal = '(CASE WHEN ' . $db_prefix . 'sales_items.discount_type = ' . PERCENT - . " THEN " . $db_prefix . "sales_items.quantity_purchased * " . $db_prefix . "sales_items.item_unit_price - ROUND(" . $db_prefix . "sales_items.quantity_purchased * " . $db_prefix . "sales_items.item_unit_price * " . $db_prefix . "sales_items.discount / 100, $decimals) " - . 'ELSE ' . $db_prefix . 'sales_items.quantity_purchased * ' . $db_prefix . 'sales_items.item_unit_price - ' . $db_prefix . 'sales_items.discount END * (100 / (100 + ' . $db_prefix . 'sales_items_taxes.percent)))'; - } - else - { - $sale_total = '(CASE WHEN ' . $db_prefix . 'sales_items.discount_type = ' . PERCENT - . " THEN " . $db_prefix . "sales_items.quantity_purchased * " . $db_prefix . "sales_items.item_unit_price - ROUND(" . $db_prefix . "sales_items.quantity_purchased * " . $db_prefix . "sales_items.item_unit_price * " . $db_prefix . "sales_items.discount / 100, $decimals)" - . ' ELSE ' . $db_prefix . 'sales_items.quantity_purchased * ' . $db_prefix . 'sales_items.item_unit_price - ' . $db_prefix . 'sales_items.discount END * (1 + (' . $db_prefix . 'sales_items_taxes.percent / 100)))'; + $sale_subtotal = '(CASE WHEN ' . $db_prefix . 'sales_items.discount_type = ' . PERCENT + . " THEN " . $db_prefix . "sales_items.quantity_purchased * " . $db_prefix . "sales_items.item_unit_price - ROUND(" . $db_prefix . "sales_items.quantity_purchased * " . $db_prefix . "sales_items.item_unit_price * " . $db_prefix . "sales_items.discount / 100, $decimals) " + . 'ELSE ' . $db_prefix . 'sales_items.quantity_purchased * ' . $db_prefix . 'sales_items.item_unit_price - ' . $db_prefix . 'sales_items.discount END * (100 / (100 + ' . $db_prefix . 'sales_items_taxes.percent)))'; + } + else + { + $sale_total = '(CASE WHEN ' . $db_prefix . 'sales_items.discount_type = ' . PERCENT + . " THEN " . $db_prefix . "sales_items.quantity_purchased * " . $db_prefix . "sales_items.item_unit_price - ROUND(" . $db_prefix . "sales_items.quantity_purchased * " . $db_prefix . "sales_items.item_unit_price * " . $db_prefix . "sales_items.discount / 100, $decimals)" + . ' ELSE ' . $db_prefix . 'sales_items.quantity_purchased * ' . $db_prefix . 'sales_items.item_unit_price - ' . $db_prefix . 'sales_items.discount END * (1 + (' . $db_prefix . 'sales_items_taxes.percent / 100)))'; - $sale_subtotal = '(CASE WHEN ' . $db_prefix . 'sales_items.discount_type = ' . PERCENT - . " THEN " . $db_prefix . "sales_items.quantity_purchased * " . $db_prefix . "sales_items.item_unit_price - ROUND(" . $db_prefix . "sales_items.quantity_purchased * " . $db_prefix . "sales_items.item_unit_price * " . $db_prefix . "sales_items.discount / 100, $decimals)" - . ' ELSE ' . $db_prefix . 'sales_items.quantity_purchased * (' . $db_prefix . 'sales_items.item_unit_price - ' . $db_prefix . 'sales_items.discount) END)'; - } + $sale_subtotal = '(CASE WHEN ' . $db_prefix . 'sales_items.discount_type = ' . PERCENT + . " THEN " . $db_prefix . "sales_items.quantity_purchased * " . $db_prefix . "sales_items.item_unit_price - ROUND(" . $db_prefix . "sales_items.quantity_purchased * " . $db_prefix . "sales_items.item_unit_price * " . $db_prefix . "sales_items.discount / 100, $decimals)" + . ' ELSE ' . $db_prefix . 'sales_items.quantity_purchased * (' . $db_prefix . 'sales_items.item_unit_price - ' . $db_prefix . 'sales_items.discount) END)'; + } - $subquery_builder = $this->db->table('sales_items'); - $subquery_builder->select("name AS name, CONCAT(IFNULL(ROUND(percent, $decimals), 0), '%') AS percent, sales.sale_id AS sale_id, $sale_subtotal AS subtotal, IFNULL($db_prefix"."sales_items_taxes.item_tax_amount, 0) AS tax, IFNULL($sale_total, $sale_subtotal) AS total"); + $subquery_builder = $this->db->table('sales_items'); + $subquery_builder->select("name AS name, CONCAT(IFNULL(ROUND(percent, $decimals), 0), '%') AS percent, sales.sale_id AS sale_id, $sale_subtotal AS subtotal, IFNULL($db_prefix"."sales_items_taxes.item_tax_amount, 0) AS tax, IFNULL($sale_total, $sale_subtotal) AS total"); - $subquery_builder->join('sales', 'sales_items.sale_id = sales.sale_id', 'inner'); - $subquery_builder->join('sales_items_taxes', 'sales_items.sale_id = sales_items_taxes.sale_id AND sales_items.item_id = sales_items_taxes.item_id AND sales_items.line = sales_items_taxes.line', 'left outer'); + $subquery_builder->join('sales', 'sales_items.sale_id = sales.sale_id', 'inner'); + $subquery_builder->join('sales_items_taxes', 'sales_items.sale_id = sales_items_taxes.sale_id AND sales_items.item_id = sales_items_taxes.item_id AND sales_items.line = sales_items_taxes.line', 'left outer'); - $subquery_builder->where('sale_status', COMPLETED); + $subquery_builder->where('sale_status', COMPLETED); - if(empty($this->config['date_or_time_format'])) - { - $subquery_builder->where('DATE(' . $db_prefix . 'sales.sale_time) BETWEEN ' . $this->db->escape($inputs['start_date']) . ' AND ' . $this->db->escape($inputs['end_date'])); - } - else - { - $subquery_builder->where('sales.sale_time BETWEEN ' . $this->db->escape(rawurldecode($inputs['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($inputs['end_date']))); - } + if(empty($this->config['date_or_time_format'])) + { + $subquery_builder->where('DATE(' . $db_prefix . 'sales.sale_time) BETWEEN ' . $this->db->escape($inputs['start_date']) . ' AND ' . $this->db->escape($inputs['end_date'])); + } + else + { + $subquery_builder->where('sales.sale_time BETWEEN ' . $this->db->escape(rawurldecode($inputs['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($inputs['end_date']))); + } - $builder = $this->db->newQuery()->fromSubquery($subquery_builder, 'temp_taxes'); - $builder->select("name, percent, COUNT(DISTINCT sale_id) AS count, ROUND(SUM(subtotal), $decimals) AS subtotal, ROUND(SUM(tax), $decimals) AS tax, ROUND(SUM(total), $decimals) total"); - $builder->groupBy('percent, name'); + $builder = $this->db->newQuery()->fromSubquery($subquery_builder, 'temp_taxes'); + $builder->select("name, percent, COUNT(DISTINCT sale_id) AS count, ROUND(SUM(subtotal), $decimals) AS subtotal, ROUND(SUM(tax), $decimals) AS tax, ROUND(SUM(total), $decimals) total"); + $builder->groupBy('percent, name'); - return $builder->get()->getResultArray(); - } + return $builder->get()->getResultArray(); + } } diff --git a/app/Models/Rewards.php b/app/Models/Rewards.php index 60cde306d..6b313c5a5 100644 --- a/app/Models/Rewards.php +++ b/app/Models/Rewards.php @@ -8,38 +8,38 @@ use CodeIgniter\Model; * Rewards class */ -class Rewards extends Model //TODO: This class is named with plural while the general practice is to name models singular +class Rewards extends Model //TODO: This class is named with plural while the general practice is to name models singular { - protected $table = 'sales_reward_points'; - protected $primaryKey = 'id'; - protected $useAutoIncrement = true; - protected $useSoftDeletes = false; - protected $allowedFields = [ - 'sale_id', - 'earned', - 'used' - ]; + protected $table = 'sales_reward_points'; + protected $primaryKey = 'id'; + protected $useAutoIncrement = true; + protected $useSoftDeletes = false; + protected $allowedFields = [ + 'sale_id', + 'earned', + 'used' + ]; - /** - * Inserts or updates a rewards - */ - public function save_value(array &$rewards_data, bool $rewards_id = false): bool - { - $builder = $this->db->table('sales_reward_points'); - if(!$rewards_id || !$this->exists($rewards_id)) //TODO: looks like we are missing the exists function in this class - { - if($builder->insert($rewards_data)) - { - $rewards_data['id'] = $this->db->insertID(); + /** + * Inserts or updates a rewards + */ + public function save_value(array &$rewards_data, bool $rewards_id = false): bool + { + $builder = $this->db->table('sales_reward_points'); + if(!$rewards_id || !$this->exists($rewards_id)) //TODO: looks like we are missing the exists function in this class + { + if($builder->insert($rewards_data)) + { + $rewards_data['id'] = $this->db->insertID(); - return true; - } + return true; + } - return false; - } + return false; + } - $builder->where('id', $rewards_id); + $builder->where('id', $rewards_id); - return $builder->update($rewards_data); - } + return $builder->update($rewards_data); + } } diff --git a/app/Models/Sale.php b/app/Models/Sale.php index c8200afa8..3f56d9321 100644 --- a/app/Models/Sale.php +++ b/app/Models/Sale.php @@ -14,1586 +14,1586 @@ use ReflectionException; */ class Sale extends Model { - protected $table = 'sales'; - protected $primaryKey = 'sale_id'; - protected $useAutoIncrement = true; - protected $useSoftDeletes = false; - protected $allowedFields = [ - 'sale_time', - 'customer_id', - 'employee_id', - 'comment', - 'quote_number', - 'sale_status', - 'invoice_number', - 'dinner_table_id', - 'work_order_number', - 'sale_type' - ]; - - public function __construct() - { - parent::__construct(); - helper('text'); - } - - /** - * Get sale info - */ - public function get_info(int $sale_id): ResultInterface - { - $config = config(OSPOS::class)->settings; - $this->create_temp_table (['sale_id' => $sale_id]); - - $decimals = totals_decimals(); - $sales_tax = 'IFNULL(SUM(sales_items_taxes.sales_tax), 0)'; - $cash_adjustment = 'IFNULL(SUM(payments.sale_cash_adjustment), 0)'; - $sale_price = 'CASE WHEN sales_items.discount_type = ' . PERCENT - . " THEN sales_items.quantity_purchased * sales_items.item_unit_price - ROUND(sales_items.quantity_purchased * sales_items.item_unit_price * sales_items.discount / 100, $decimals) " - . 'ELSE sales_items.quantity_purchased * (sales_items.item_unit_price - sales_items.discount) END'; - - $sale_total = $config['tax_included'] - ? "ROUND(SUM($sale_price), $decimals) + $cash_adjustment" - : "ROUND(SUM($sale_price), $decimals) + $sales_tax + $cash_adjustment"; - - $sql = 'sales.sale_id AS sale_id, - MAX(DATE(sales.sale_time)) AS sale_date, - MAX(sales.sale_time) AS sale_time, - MAX(sales.comment) AS comment, - MAX(sales.sale_status) AS sale_status, - MAX(sales.invoice_number) AS invoice_number, - MAX(sales.quote_number) AS quote_number, - MAX(sales.employee_id) AS employee_id, - MAX(sales.customer_id) AS customer_id, - MAX(CONCAT(customer_p.first_name, " ", customer_p.last_name)) AS customer_name, - MAX(customer_p.first_name) AS first_name, - MAX(customer_p.last_name) AS last_name, - MAX(customer_p.email) AS email, - MAX(customer_p.comments) AS comments, - MAX(IFnull(payments.sale_cash_adjustment, 0)) AS cash_adjustment, - MAX(IFnull(payments.sale_cash_refund, 0)) AS cash_refund, - ' . " - $sale_total AS amount_due, - MAX(IFnull(payments.sale_payment_amount, 0)) AS amount_tendered, - (MAX(payments.sale_payment_amount)) - ($sale_total) AS change_due, - " . ' - MAX(payments.payment_type) AS payment_type'; - - $builder = $this->db->table('sales_items AS sales_items'); - $builder->select($sql); - - $builder->join('sales AS sales', 'sales_items.sale_id = sales.sale_id', 'inner'); - $builder->join('people AS customer_p', 'sales.customer_id = customer_p.person_id', 'LEFT'); - $builder->join('customers AS customer', 'sales.customer_id = customer.person_id', 'LEFT'); - $builder->join('sales_payments_temp AS payments', 'sales.sale_id = payments.sale_id', 'LEFT OUTER'); - $builder->join('sales_items_taxes_temp AS sales_items_taxes', - 'sales_items.sale_id = sales_items_taxes.sale_id AND sales_items.item_id = sales_items_taxes.item_id AND sales_items.line = sales_items_taxes.line', - 'LEFT OUTER'); - - $builder->where('sales.sale_id', $sale_id); - - $builder->groupBy('sales.sale_id'); - $builder->orderBy('sales.sale_time', 'asc'); - - return $builder->get(); - } - - /** - * Get number of rows for the takings (sales/manage) view - */ - public function get_found_rows(string $search, array $filters): int - { - return $this->search($search, $filters, 0, 0, 'sales.sale_time', 'desc', true); - } - - /** - * Get the sales data for the takings (sales/manage) view - */ - public function search(string $search, array $filters, ?int $rows = 0, ?int $limit_from = 0, ?string $sort = 'sales.sale_time', ?string $order = 'desc', ?bool $count_only = false) - { - // Set default values - if($rows == null) $rows = 0; - if($limit_from == null) $limit_from = 0; - if($sort == null) $sort = 'sales.sale_time'; - if($order == null) $order = 'desc'; - if($count_only == null) $count_only = false; - - $config = config(OSPOS::class)->settings; - $db_prefix = $this->db->getPrefix(); - $decimals = totals_decimals(); - - //Only non-suspended records - $where = 'sales.sale_status = 0 AND '; - $where .= empty($config['date_or_time_format']) - ? 'DATE(' . $db_prefix . 'sales.sale_time) BETWEEN ' . $this->db->escape($filters['start_date']) . ' AND ' . $this->db->escape($filters['end_date']) - : 'sales.sale_time BETWEEN ' . $this->db->escape(rawurldecode($filters['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($filters['end_date'])); - - $this->create_temp_table_sales_payments_data($where); - - $sale_price = 'CASE WHEN `sales_items`.`discount_type` = ' . PERCENT - . " THEN `sales_items`.`quantity_purchased` * `sales_items`.`item_unit_price` - ROUND(`sales_items`.`quantity_purchased` * `sales_items`.`item_unit_price` * `sales_items`.`discount` / 100, $decimals) " - . 'ELSE `sales_items`.`quantity_purchased` * (`sales_items`.`item_unit_price` - `sales_items`.`discount`) END'; - - $sale_cost = 'SUM(`sales_items`.`item_cost_price` * `sales_items`.`quantity_purchased`)'; - - $tax = 'IFNULL(SUM(`sales_items_taxes`.`tax`), 0)'; - $sales_tax = 'IFNULL(SUM(`sales_items_taxes`.`sales_tax`), 0)'; - $internal_tax = 'IFNULL(SUM(`sales_items_taxes`.`internal_tax`), 0)'; - $cash_adjustment = 'IFNULL(SUM(`payments`.`sale_cash_adjustment`), 0)'; - - $sale_subtotal = "ROUND(SUM($sale_price), $decimals) - $internal_tax"; - $sale_total = "ROUND(SUM($sale_price), $decimals) + $sales_tax + $cash_adjustment"; - - $this->create_temp_table_sales_items_taxes_data($where); - - $builder = $this->db->table('sales_items AS sales_items'); - - // get_found_rows case - if($count_only) - { - $builder->select('COUNT(DISTINCT `' . $db_prefix . 'sales`.`sale_id`) AS count'); - } - else - { - $builder->select([ - '`' . $db_prefix . 'sales`.`sale_id` AS sale_id', - 'MAX(DATE(`' . $db_prefix . 'sales`.`sale_time`)) AS sale_date', - 'MAX(`' . $db_prefix . 'sales`.`sale_time`) AS sale_time', - 'MAX(`' . $db_prefix . 'sales`.`invoice_number`) AS invoice_number', - 'MAX(`' . $db_prefix . 'sales`.`quote_number`) AS quote_number', - 'SUM(`sales_items`.`quantity_purchased`) AS items_purchased', - 'MAX(CONCAT(`customer_p`.`first_name`, " ", `customer_p`.`last_name`)) AS customer_name', - 'MAX(`customer`.`company_name`) AS company_name', - $sale_subtotal . ' AS subtotal', - $tax . ' AS tax', - $sale_total . ' AS total', - $sale_cost . ' AS cost', - '(' . $sale_total . ' - ' . $sale_cost . ') AS profit', - $sale_total . ' AS amount_due', - 'MAX(`payments`.`sale_payment_amount`) AS amount_tendered', - '(MAX(`payments`.`sale_payment_amount`)) - (' . $sale_total . ') AS change_due', - 'MAX(`payments`.`payment_type`) AS payment_type' - ], false); - } - - $builder->join('sales', '`sales_items`.`sale_id` = `' . $db_prefix . 'sales`.`sale_id`', 'inner'); - $builder->join('people AS customer_p', '`' . $db_prefix . 'sales`.`customer_id` = `customer_p`.`person_id`', 'LEFT'); - $builder->join('customers AS customer', '`' . $db_prefix . 'sales`.`customer_id` = `customer`.`person_id`', 'LEFT'); - $builder->join('sales_payments_temp AS payments', '`' . $db_prefix . 'sales`.`sale_id` = `payments`.`sale_id`', 'LEFT OUTER'); - $builder->join( - 'sales_items_taxes_temp AS sales_items_taxes', - 'sales_items.sale_id = sales_items_taxes.sale_id AND sales_items.item_id = sales_items_taxes.item_id AND sales_items.line = sales_items_taxes.line', - 'LEFT OUTER'); - - $builder->where($where); - - $this->add_filters_to_query($search, $filters, $builder); - - //get_found_rows - if($count_only) - { - return $builder->get()->getRow()->count; - } - - $builder->groupBy('sales.sale_id'); - - //order by sale time by default - $builder->orderBy($sort, $order); - - if($rows > 0) - { - $builder->limit($rows, $limit_from); - } - - return $builder->get(); - } - - /** - * Get the payment summary for the takings (sales/manage) view - */ - public function get_payments_summary(string $search, array $filters): array - { - $config = config(OSPOS::class)->settings; - - // get payment summary - $builder = $this->db->table('sales AS sales'); - $builder->select('payment_type, COUNT(payment_amount) AS count, SUM(payment_amount - cash_refund) AS payment_amount'); - $builder->join('sales_payments', 'sales_payments.sale_id = sales.sale_id'); - $builder->join('people AS customer_p', 'sales.customer_id = customer_p.person_id', 'LEFT'); - $builder->join('customers AS customer', 'sales.customer_id = customer.person_id', 'LEFT'); - - //TODO: This needs to be replaced with Ternary notation - if(empty($config['date_or_time_format'])) //TODO: duplicated code. We should think about refactoring out a method. - { - $builder->where('DATE(sales.sale_time) BETWEEN ' . $this->db->escape($filters['start_date']) . ' AND ' . $this->db->escape($filters['end_date'])); - } - else - { - $builder->where('sales.sale_time BETWEEN ' . $this->db->escape(rawurldecode($filters['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($filters['end_date']))); - } - - if(!empty($search)) //TODO: duplicated code. We should think about refactoring out a method. - { - if($filters['is_valid_receipt']) - { - $pieces = explode(' ',$search); - $builder->where('sales.sale_id', $pieces[1]); - } - else - { - $builder->groupStart(); - $builder->like('customer_p.last_name', $search); // customer last name - $builder->orLike('customer_p.first_name', $search); // customer first name - $builder->orLike('CONCAT(customer_p.first_name, " ", customer_p.last_name)', $search); // customer first and last name - $builder->orLike('customer.company_name', $search); // customer company name - $builder->groupEnd(); - } - } - - //TODO: This needs to be converted to a switch statement - if($filters['sale_type'] == 'sales') //TODO: we need to think about refactoring this block to a switch statement. - { - $builder->where('sales.sale_status = ' . COMPLETED . ' AND payment_amount > 0'); - } - elseif($filters['sale_type'] == 'quotes') - { - $builder->where('sales.sale_status = ' . SUSPENDED . ' AND sales.quote_number IS NOT NULL'); - } - elseif($filters['sale_type'] == 'returns') - { - $builder->where('sales.sale_status = ' . COMPLETED . ' AND payment_amount < 0'); - } - elseif($filters['sale_type'] == 'all') - { - $builder->where('sales.sale_status = ' . COMPLETED); - } - - //TODO: Avoid the double negatives - if($filters['only_invoices']) - { - $builder->where('invoice_number IS NOT NULL'); - } - - if($filters['only_cash']) - { - $builder->like('payment_type', lang('Sales.cash')); - } - - if($filters['only_due']) - { - $builder->like('payment_type', lang('Sales.due')); - } - - if($filters['only_check']) - { - $builder->like('payment_type', lang('Sales.check')); - } - - if($filters['only_creditcard']) - { - $builder->like('payment_type', lang('Sales.credit')); - } - - $builder->groupBy('payment_type'); - - $payments = $builder->get()->getResultArray(); - - // consider Gift Card as only one type of payment and do not show "Gift Card: 1, Gift Card: 2, etc." in the total - $gift_card_count = 0; - $gift_card_amount = 0; - - foreach($payments as $key => $payment) - { - if(strstr($payment['payment_type'], lang('Sales.giftcard'))) - { - $gift_card_count += $payment['count']; - $gift_card_amount += $payment['payment_amount']; - - //remove the "Gift Card: 1", "Gift Card: 2", etc. payment string - unset($payments[$key]); - } - } - - if($gift_card_count > 0) - { - $payments[] = ['payment_type' => lang('Sales.giftcard'), 'count' => $gift_card_count, 'payment_amount' => $gift_card_amount]; - } - - return $payments; - } - - /** - * Gets total of rows - */ - public function get_total_rows(): int - { - $builder = $this->db->table('sales'); - - return $builder->countAllResults(); - } - - /** - * Gets search suggestions - */ - public function get_search_suggestions(string $search, int $limit = 25): array //TODO: $limit is never used. - { - $suggestions = []; - - if(!$this->is_valid_receipt($search)) - { - $builder = $this->db->table('sales'); - $builder->distinct()->select('first_name, last_name'); - $builder->join('people', 'people.person_id = sales.customer_id'); - $builder->like('last_name', $search); - $builder->orLike('first_name', $search); - $builder->orLike('CONCAT(first_name, " ", last_name)', $search); - $builder->orLike('company_name', $search); - $builder->orderBy('last_name', 'asc'); - - foreach($builder->get()->getResultArray() as $result) - { - $suggestions[] = ['label' => $result['first_name'] . ' ' . $result['last_name']]; - } - } - else - { - $suggestions[] = ['label' => $search]; - } - - return $suggestions; - } - - /** - * Gets total of invoice rows - */ - public function get_invoice_count(): int - { - $builder = $this->db->table('sales'); - $builder->where('invoice_number IS NOT NULL'); - - return $builder->countAllResults(); - } - - /** - * Gets sale by invoice number - */ - public function get_sale_by_invoice_number(string $invoice_number): ResultInterface - { - $builder = $this->db->table('sales'); - $builder->where('invoice_number', $invoice_number); - - return $builder->get(); - } - - /** - * @param string $year - * @param int $start_from - * @return int - */ - public function get_invoice_number_for_year(string $year = '', int $start_from = 0): int - { - return $this->get_number_for_year('invoice_number', $year, $start_from); - } - - /** - * @param string $year - * @param int $start_from - * @return int - */ - public function get_quote_number_for_year(string $year = '', int $start_from = 0): int - { - return $this->get_number_for_year('quote_number', $year, $start_from); - } - - /** - * Gets invoice number by year - */ - private function get_number_for_year(string $field, string $year = '', int $start_from = 0): int - { - $year = $year == '' ? date('Y') : $year; - - $builder = $this->db->table('sales'); - $builder->select('COUNT( 1 ) AS number_year'); - $builder->where('DATE_FORMAT(sale_time, "%Y" ) = ', $year); - $builder->where("$field IS NOT NULL"); - $result = $builder->get()->getRowArray(); - - return ($start_from + $result['number_year']); - } - - /** - * Checks if valid receipt - */ - public function is_valid_receipt(string &$receipt_sale_id): bool //TODO: like the others, maybe this should be an array rather than a delimited string... either that or the parameter name needs to be changed. $receipt_sale_id implies that it's an int. - { - $config = config(OSPOS::class)->settings; - - if(!empty($receipt_sale_id)) - { - //POS # - $pieces = explode(' ', $receipt_sale_id); - - if(count($pieces) == 2 && preg_match('/(POS)/i', $pieces[0])) - { - return $this->exists($pieces[1]); - } - elseif($config['invoice_enable']) - { - $sale_info = $this->get_sale_by_invoice_number($receipt_sale_id); - - if($sale_info->getNumRows() > 0) - { - $receipt_sale_id = 'POS ' . $sale_info->getRow()->sale_id; - - return true; - } - } - } - - return false; - } - - /** - * Checks if sale exists - */ - public function exists(int $sale_id): bool - { - $builder = $this->db->table('sales'); - $builder->where('sale_id', $sale_id); - - return ($builder->get()->getNumRows() == 1); //TODO: === - } - - /** - * Update sale - */ - public function update($sale_id = null, $sale_data = null): bool - { - $builder = $this->db->table('sales'); - $builder->where('sale_id', $sale_id); - $update_data = $sale_data; - unset($update_data['payments']); - $success = $builder->update($update_data); - - //touch payment only if update sale is successful and there is a payments object otherwise the result would be to delete all the payments associated to the sale - if($success && !empty($sale_data['payments'])) - { - //Run these queries as a transaction, we want to make sure we do all or nothing - $this->db->transStart(); - - $builder = $this->db->table('sales_payments'); - - // add new payments - foreach($sale_data['payments'] as $payment) - { - $payment_id = $payment['payment_id']; - $payment_type = $payment['payment_type']; - $payment_amount = $payment['payment_amount']; - $cash_refund = $payment['cash_refund']; - $cash_adjustment = $payment['cash_adjustment']; - $employee_id = $payment['employee_id']; - - if($payment_id == NEW_ENTRY && $payment_amount != 0) - { - // Add a new payment transaction - $sales_payments_data = [ - 'sale_id' => $sale_id, - 'payment_type' => $payment_type, - 'payment_amount' => $payment_amount, - 'cash_refund' => $cash_refund, - 'cash_adjustment' => $cash_adjustment, - 'employee_id' => $employee_id - ]; - $success = $builder->insert($sales_payments_data); - } - elseif($payment_id != NEW_ENTRY) - { - if($payment_amount != 0) - { - // Update existing payment transactions (payment_type only) - $sales_payments_data = [ - 'payment_type' => $payment_type, - 'payment_amount' => $payment_amount, - 'cash_refund' => $cash_refund, - 'cash_adjustment' => $cash_adjustment - ]; - - $builder->where('payment_id', $payment_id); - $success = $builder->update($sales_payments_data); - } - else - { - // Remove existing payment transactions with a payment amount of zero - $success = $builder->delete(['payment_id' => $payment_id]); - } - } - } - - $this->db->transComplete(); - $success &= $this->db->transStatus(); - } - - return $success; - } - - /** - * Save the sale information after the sales is complete but before the final document is printed - * The sales_taxes variable needs to be initialized to an empty array before calling - * @throws ReflectionException - */ - public function save_value(int $sale_id, string &$sale_status, array &$items, int $customer_id, int $employee_id, string $comment, ?string $invoice_number, - ?string $work_order_number, ?string $quote_number, int $sale_type, ?array $payments, ?int $dinner_table_id, ?array &$sales_taxes): int //TODO: this method returns the sale_id but the override is expecting it to return a bool. The signature needs to be reworked. Generally when there are more than 3 maybe 4 parameters, there's a good chance that an object needs to be passed rather than so many params. - { - $config = config(OSPOS::class)->settings; - $attribute = model(Attribute::class); - $customer = model(Customer::class); - $giftcard = model(Giftcard::class); - $inventory = model('Inventory'); - $item = model(Item::class); - - $item_quantity = model(Item_quantity::class); - - if($sale_id != NEW_ENTRY) - { - $this->clear_suspended_sale_detail($sale_id); - } - - if(count($items) == 0) //TODO: === - { - return -1; //TODO: Replace -1 with a constant - } - - $sales_data = [ - 'sale_time' => date('Y-m-d H:i:s'), - 'customer_id' => $customer->exists($customer_id) ? $customer_id : null, - 'employee_id' => $employee_id, - 'comment' => $comment, - 'sale_status' => $sale_status, - 'invoice_number' => $invoice_number, - 'quote_number' => $quote_number, - 'work_order_number'=> $work_order_number, - 'dinner_table_id' => $dinner_table_id, - 'sale_type' => $sale_type - ]; - - // Run these queries as a transaction, we want to make sure we do all or nothing - $this->db->transStart(); - - if($sale_id == NEW_ENTRY) - { - $builder = $this->db->table('sales'); - $builder->insert($sales_data); - $sale_id = $this->db->insertID(); - } - else - { - $builder = $this->db->table('sales'); - $builder->where('sale_id', $sale_id); - $builder->update($sales_data); - } - - $total_amount = 0; - $total_amount_used = 0; - - foreach($payments as $payment_id => $payment) - { - if(!empty(strstr($payment['payment_type'], lang('Sales.giftcard')))) - { - // We have a gift card, and we have to deduct the used value from the total value of the card. - $splitpayment = explode( ':', $payment['payment_type'] ); //TODO: this variable doesn't follow our naming conventions. Probably should be refactored to split_payment. - $cur_giftcard_value = $giftcard->get_giftcard_value( $splitpayment[1] ); //TODO: this should be refactored to $current_giftcard_value - $giftcard->update_giftcard_value( $splitpayment[1], $cur_giftcard_value - $payment['payment_amount'] ); - } - elseif(!empty(strstr($payment['payment_type'], lang('Sales.rewards')))) - { - $cur_rewards_value = $customer->get_info($customer_id)->points; - $customer->update_reward_points_value($customer_id, $cur_rewards_value - $payment['payment_amount'] ); - $total_amount_used = floatval($total_amount_used) + floatval($payment['payment_amount']); - } - - $sales_payments_data = [ - 'sale_id' => $sale_id, - 'payment_type' => $payment['payment_type'], - 'payment_amount' => $payment['payment_amount'], - 'cash_refund' => $payment['cash_refund'], - 'cash_adjustment' => $payment['cash_adjustment'], - 'employee_id' => $employee_id - ]; - - $builder = $this->db->table('sales_payments'); - $builder->insert($sales_payments_data); - - $total_amount = floatval($total_amount) + floatval($payment['payment_amount']) - floatval($payment['cash_refund']); - } - - $this->save_customer_rewards($customer_id, $sale_id, $total_amount, $total_amount_used); - - $customer = $customer->get_info($customer_id); - - foreach($items as $line => $item_data) - { - $cur_item_info = $item->get_info($item_data['item_id']); - - if($item_data['price'] == 0.00) - { - $item_data['discount'] = 0.00; - } - - $sales_items_data = [ - 'sale_id' => $sale_id, - 'item_id' => $item_data['item_id'], - 'line' => $item_data['line'], - 'description' => character_limiter($item_data['description'], 255), - 'serialnumber' => character_limiter($item_data['serialnumber'], 30), - 'quantity_purchased' => $item_data['quantity'], - 'discount' => $item_data['discount'], - 'discount_type' => $item_data['discount_type'], - 'item_cost_price' => $item_data['cost_price'], - 'item_unit_price' => $item_data['price'], - 'item_location' => $item_data['item_location'], - 'print_option' => $item_data['print_option'] - ]; - - $builder = $this->db->table('sales_items'); - $builder->insert($sales_items_data); - - if($cur_item_info->stock_type == HAS_STOCK && $sale_status == COMPLETED) //TODO: === ? - { - // Update stock quantity if item type is a standard stock item and the sale is a standard sale - $item_quantity_data = $item_quantity->get_item_quantity($item_data['item_id'], $item_data['item_location']); - - $item_quantity->save_value([ - 'quantity' => $item_quantity_data->quantity - $item_data['quantity'], - 'item_id' => $item_data['item_id'], - 'location_id' => $item_data['item_location']], - $item_data['item_id'], - $item_data['item_location'] - ); - - // if an items was deleted but later returned it's restored with this rule - if($item_data['quantity'] < 0) - { - $item->undelete($item_data['item_id']); - } - - // Inventory Count Details - $sale_remarks = 'POS ' . $sale_id; //TODO: Use string interpolation here. - $inv_data = [ - 'trans_date' => date('Y-m-d H:i:s'), - 'trans_items' => $item_data['item_id'], - 'trans_user' => $employee_id, - 'trans_location' => $item_data['item_location'], - 'trans_comment' => $sale_remarks, - 'trans_inventory' => -$item_data['quantity'] - ]; - - $inventory->insert($inv_data, false); - } - - $attribute->copy_attribute_links($item_data['item_id'], 'sale_id', $sale_id); - } - - if($customer_id == NEW_ENTRY || $customer->taxable) - { - $this->save_sales_tax($sale_id, $sales_taxes[0]); - $this->save_sales_items_taxes($sale_id, $sales_taxes[1]); - } - - if($config['dinner_table_enable']) - { - $dinner_table = model(Dinner_table::class); - if($sale_status == COMPLETED) //TODO: === ? - { - $dinner_table->release($dinner_table_id); - } - else - { - $dinner_table->occupy($dinner_table_id); - } - } - - $this->db->transComplete(); - - return $this->db->transStatus() ? $sale_id : -1; - } - - /** - * Saves sale tax - */ - public function save_sales_tax(int $sale_id, array $sales_taxes): void //TODO: should we return the result of the insert here as a bool? - { - $builder = $this->db->table('sales_taxes'); - - foreach($sales_taxes as $line => $sales_tax) - { - $sales_tax['sale_id'] = $sale_id; - $builder->insert($sales_tax); - } - } - - /** - * Apply customer sales tax if the customer sales tax is enabled - * The original tax is still supported if the user configures it, - * but it won't make sense unless it's used exclusively for the purpose - * of VAT tax which becomes a price component. VAT taxes must still be reported - * as a separate tax entry on the invoice. - */ - public function save_sales_items_taxes(int $sale_id, array $sales_item_taxes): void - { - $builder = $this->db->table('sales_items_taxes'); - - foreach($sales_item_taxes as $line => $tax_item) - { - $sales_items_taxes = [ - 'sale_id' => $sale_id, - 'item_id' => $tax_item['item_id'], - 'line' => $tax_item['line'], - 'name' => $tax_item['name'], - 'percent' => $tax_item['percent'], - 'tax_type' => $tax_item['tax_type'], - 'rounding_code' => $tax_item['rounding_code'], - 'cascade_sequence' => $tax_item['cascade_sequence'], - 'item_tax_amount' => $tax_item['item_tax_amount'], - 'sales_tax_code_id' => $tax_item['sales_tax_code_id'], - 'tax_category_id' => $tax_item['tax_category_id'], - 'jurisdiction_id' => $tax_item['jurisdiction_id'] - ]; - - $builder->insert($sales_items_taxes); - } - } - - /** - * Return the taxes that were charged - */ - public function get_sales_taxes(int $sale_id): array - { - $builder = $this->db->table('sales_taxes'); - $builder->where('sale_id', $sale_id); - $builder->orderBy('print_sequence', 'asc'); - - $query = $builder->get(); - - return $query->getResultArray(); - } - - /** - * Return the taxes applied to a sale for a particular item - */ - public function get_sales_item_taxes(int $sale_id, int $item_id): array - { - $builder = $this->db->table('sales_items_taxes'); - $builder->select('item_id, name, percent'); - $builder->where('sale_id',$sale_id); - $builder->where('item_id',$item_id); - - //return an array of taxes for an item - return $builder->get()->getResultArray(); - } - - /** - * Deletes list of sales - * @throws ReflectionException - */ - public function delete_list(array $sale_ids, int $employee_id, bool $update_inventory = true): bool - { - $result = true; - - foreach($sale_ids as $sale_id) - { - $result &= $this->delete($sale_id, false, $update_inventory, $employee_id); - } - - return $result; - } - - /** - * Restores list of sales - */ - public function restore_list(array $sale_ids, int $employee_id, bool $update_inventory = true): bool //TODO: $employee_id and $update_inventory are never used in the function. - { - foreach($sale_ids as $sale_id) - { - $this->update_sale_status($sale_id, SUSPENDED); - } - - return true; - } - - /** - * Delete sale. Hard deletes are not supported for sales transactions. - * When a sale is "deleted" it is simply changed to a status of canceled. - * However, if applicable the inventory still needs to be updated - * @throws ReflectionException - */ - public function delete($sale_id = null, bool $purge = false, bool $update_inventory = true, $employee_id = null): bool - { - // start a transaction to assure data integrity - $this->db->transStart(); - - $sale_status = $this->get_sale_status($sale_id); - - if($update_inventory && $sale_status == COMPLETED) - { - // defect, not all item deletions will be undone?? - // get array with all the items involved in the sale to update the inventory tracking - $inventory = model('Inventory'); - $item = model(Item::class); - $item_quantity = model(Item_quantity::class); - - $items = $this->get_sale_items($sale_id)->getResultArray(); - - foreach($items as $item_data) - { - $cur_item_info = $item->get_info($item_data['item_id']); - - if($cur_item_info->stock_type == HAS_STOCK) - { - // create query to update inventory tracking - $inv_data = [ - 'trans_date' => date('Y-m-d H:i:s'), - 'trans_items' => $item_data['item_id'], - 'trans_user' => $employee_id, - 'trans_comment' => 'Deleting sale ' . $sale_id, - 'trans_location' => $item_data['item_location'], - 'trans_inventory' => $item_data['quantity_purchased'] - ]; - // update inventory - $inventory->insert($inv_data, false); - - // update quantities - $item_quantity->change_quantity($item_data['item_id'], $item_data['item_location'], $item_data['quantity_purchased']); - } - } - } - - $this->update_sale_status($sale_id, CANCELED); - - // execute transaction - $this->db->transComplete(); - - return $this->db->transStatus(); - } - - /** - * Gets sale item - */ - public function get_sale_items(int $sale_id): ResultInterface - { - $builder = $this->db->table('sales_items'); - $builder->where('sale_id', $sale_id); - - return $builder->get(); - } - - /** - * Used by the invoice and receipt programs - */ - public function get_sale_items_ordered(int $sale_id): ResultInterface - { - $config = config(OSPOS::class)->settings; - $item = model(Item::class); - - $builder = $this->db->table('sales_items AS sales_items'); - $builder->select(' - sales_items.sale_id, - sales_items.item_id, - sales_items.description, - serialnumber, - line, - quantity_purchased, - item_cost_price, - item_unit_price, - discount, - discount_type, - item_location, - print_option, - ' . $item->get_item_name('name') . ', - category, - item_type, - stock_type'); - $builder->join('items AS items', 'sales_items.item_id = items.item_id'); - $builder->where('sales_items.sale_id', $sale_id); - - // Entry sequence (this will render kits in the expected sequence) - if($config['line_sequence'] == '0') //TODO: Replace these with constants and this should be converted to a switch. - { - $builder->orderBy('line', 'asc'); - } - // Group by Stock Type (nonstock first - type 1, stock next - type 0) - elseif($config['line_sequence'] == '1') - { - $builder->orderBy('stock_type', 'desc'); - $builder->orderBy('sales_items.description', 'asc'); - $builder->orderBy('items.name', 'asc'); - $builder->orderBy('items.qty_per_pack', 'asc'); - } - // Group by Item Category - elseif($config['line_sequence'] == '2') - { - $builder->orderBy('category', 'asc'); - $builder->orderBy('sales_items.description', 'asc'); - $builder->orderBy('items.name', 'asc'); - $builder->orderBy('items.qty_per_pack', 'asc'); - } - // Group by entry sequence in descending sequence (the Standard) - else - { - $builder->orderBy('line', 'desc'); - } - - return $builder->get(); - } - - /** - * Gets sale payments - */ - public function get_sale_payments(int $sale_id): ResultInterface - { - $builder = $this->db->table('sales_payments'); - $builder->where('sale_id', $sale_id); - - return $builder->get(); - } - - /** - * Gets sale payment options - */ - public function get_payment_options(bool $giftcard = true, bool $reward_points = true): array - { - $payments = get_payment_options(); - - if($giftcard) - { - $payments[lang('Sales.giftcard')] = lang('Sales.giftcard'); - } - - if($reward_points) - { - $payments[lang('Sales.rewards')] = lang('Sales.rewards'); - } - $sale_lib = new Sale_lib(); - if($sale_lib->get_mode() == 'sale_work_order') - { - $payments[lang('Sales.cash_deposit')] = lang('Sales.cash_deposit'); - $payments[lang('Sales.credit_deposit')] = lang('Sales.credit_deposit'); - } - - return $payments; - } - - /** - * Gets sale customer name - */ - public function get_customer(int $sale_id): object - { - $customer = model(Customer::class); - - $builder = $this->db->table('sales'); - $builder->where('sale_id', $sale_id); - - return $customer->get_info($builder->get()->getRow()->customer_id); - } - - /** - * Gets sale employee name - */ - public function get_employee(int $sale_id): object - { - $builder = $this->db->table('sales'); - $builder->where('sale_id', $sale_id); - - $employee = model(Employee::class); - - return $employee->get_info($builder->get()->getRow()->employee_id); - } - - /** - * Checks if quote number exists - */ - public function check_quote_number_exists(string $quote_number, string $sale_id = ''): bool - { - $builder = $this->db->table('sales'); - $builder->where('quote_number', $quote_number); - - if(!empty($sale_id)) - { - $builder->where('sale_id !=', $sale_id); - } - - return ($builder->get()->getNumRows() == 1); //TODO: === - } - - /** - * Checks if invoice number exists - */ - public function check_invoice_number_exists(string $invoice_number, string $sale_id = ''): bool - { - $builder = $this->db->table('sales'); - $builder->where('invoice_number', $invoice_number); - - if(!empty($sale_id)) - { - $builder->where('sale_id !=', $sale_id); - } - - return ($builder->get()->getNumRows() == 1); //TODO: === - } - - /** - * Checks if work order number exists - */ - public function check_work_order_number_exists(string $work_order_number, string $sale_id = ''): bool - { - $builder = $this->db->table('sales'); - $builder->where('invoice_number', $work_order_number); - if(!empty($sale_id)) - { - $builder->where('sale_id !=', $sale_id); - } - - return ($builder->get()->getNumRows() == 1); //TODO: === - } - - /** - * Gets Giftcard value - */ - public function get_giftcard_value(string $giftcardNumber): float - { - $giftcard = model(Giftcard::class); - - if(!$giftcard->exists($giftcard->get_giftcard_id($giftcardNumber))) //TODO: camelCase is used here for the variable name but we are using _ everywhere else. CI4 moved to camelCase... we should pick one and do that. - { - return 0; - } - - $builder = $this->db->table('giftcards'); - $builder->where('giftcard_number', $giftcardNumber); - - return $builder->get()->getRow()->value; - } - - /** - * Creates sales temporary dimensional table - * We create a temp table that allows us to do easy report/sales queries - */ - public function create_temp_table(array $inputs): void - { - $config = config(OSPOS::class)->settings; - - if(empty($inputs['sale_id'])) - { - if(empty($config['date_or_time_format'])) //TODO: This needs to be replaced with Ternary notation - { - $where = 'DATE(sales.sale_time) BETWEEN ' . $this->db->escape($inputs['start_date']) . ' AND ' . $this->db->escape($inputs['end_date']); - } - else - { - $where = 'sales.sale_time BETWEEN ' . $this->db->escape(rawurldecode($inputs['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($inputs['end_date'])); - } - } - else - { - $where = 'sales.sale_id = ' . $this->db->escape($inputs['sale_id']); - } - - $decimals = totals_decimals(); - - $sale_price = 'CASE WHEN sales_items.discount_type = ' . PERCENT - . " THEN sales_items.quantity_purchased * sales_items.item_unit_price - ROUND(sales_items.quantity_purchased * sales_items.item_unit_price * sales_items.discount / 100, $decimals) " - . 'ELSE sales_items.quantity_purchased * (sales_items.item_unit_price - sales_items.discount) END'; - - $sale_cost = 'SUM(sales_items.item_cost_price * sales_items.quantity_purchased)'; - - $tax = 'IFNULL(SUM(sales_items_taxes.tax), 0)'; - $sales_tax = 'IFNULL(SUM(sales_items_taxes.sales_tax), 0)'; - $internal_tax = 'IFNULL(SUM(sales_items_taxes.internal_tax), 0)'; - $cash_adjustment = 'IFNULL(SUM(payments.sale_cash_adjustment), 0)'; - - if($config['tax_included']) - { - $sale_total = "ROUND(SUM($sale_price), $decimals) + $cash_adjustment"; - $sale_subtotal = "$sale_total - $internal_tax"; - } - else - { - $sale_subtotal = "ROUND(SUM($sale_price), $decimals) - $internal_tax + $cash_adjustment"; - $sale_total = "ROUND(SUM($sale_price), $decimals) + $sales_tax + $cash_adjustment"; - } - - // create a temporary table to contain all the sum of taxes per sale item - $sql = 'CREATE TEMPORARY TABLE IF NOT EXISTS ' . $this->db->prefixTable('sales_items_taxes_temp') . - ' (INDEX(sale_id), INDEX(item_id)) ENGINE=MEMORY - ( - SELECT sales_items_taxes.sale_id AS sale_id, - sales_items_taxes.item_id AS item_id, - sales_items_taxes.line AS line, - SUM(ROUND(sales_items_taxes.item_tax_amount, ' . $decimals . ')) AS tax, - SUM(ROUND(CASE WHEN sales_items_taxes.tax_type = 0 THEN sales_items_taxes.item_tax_amount ELSE 0 END, ' . $decimals . ')) AS internal_tax, - SUM(ROUND(CASE WHEN sales_items_taxes.tax_type = 1 THEN sales_items_taxes.item_tax_amount ELSE 0 END, ' . $decimals . ')) AS sales_tax - FROM ' . $this->db->prefixTable('sales_items_taxes') . ' AS sales_items_taxes - INNER JOIN ' . $this->db->prefixTable('sales') . ' AS sales - ON sales.sale_id = sales_items_taxes.sale_id - INNER JOIN ' . $this->db->prefixTable('sales_items') . ' AS sales_items - ON sales_items.sale_id = sales_items_taxes.sale_id AND sales_items.line = sales_items_taxes.line - WHERE ' . $where . ' - GROUP BY sale_id, item_id, line - )'; - - $this->db->query($sql); - - // create a temporary table to contain all the payment types and amount - $sql = 'CREATE TEMPORARY TABLE IF NOT EXISTS ' . $this->db->prefixTable('sales_payments_temp') . - ' (PRIMARY KEY(sale_id), INDEX(sale_id)) - ( - SELECT payments.sale_id AS sale_id, - SUM(CASE WHEN payments.cash_adjustment = 0 THEN payments.payment_amount ELSE 0 END) AS sale_payment_amount, - SUM(CASE WHEN payments.cash_adjustment = 1 THEN payments.payment_amount ELSE 0 END) AS sale_cash_adjustment, - SUM(payments.cash_refund) AS sale_cash_refund, - GROUP_CONCAT(CONCAT(payments.payment_type, " ", (payments.payment_amount - payments.cash_refund)) SEPARATOR ", ") AS payment_type - FROM ' . $this->db->prefixTable('sales_payments') . ' AS payments - INNER JOIN ' . $this->db->prefixTable('sales') . ' AS sales - ON sales.sale_id = payments.sale_id - WHERE ' . $where . ' - GROUP BY payments.sale_id - )'; - - $this->db->query($sql); - $item = model(Item::class); - $sql = 'CREATE TEMPORARY TABLE IF NOT EXISTS ' . $this->db->prefixTable('sales_items_temp') . - ' (INDEX(sale_date), INDEX(sale_time), INDEX(sale_id)) - ( - SELECT - MAX(DATE(sales.sale_time)) AS sale_date, - MAX(sales.sale_time) AS sale_time, - sales.sale_id AS sale_id, - MAX(sales.sale_status) AS sale_status, - MAX(sales.sale_type) AS sale_type, - MAX(sales.comment) AS comment, - MAX(sales.invoice_number) AS invoice_number, - MAX(sales.quote_number) AS quote_number, - MAX(sales.customer_id) AS customer_id, - MAX(CONCAT(customer_p.first_name, " ", customer_p.last_name)) AS customer_name, - MAX(customer_p.first_name) AS customer_first_name, - MAX(customer_p.last_name) AS customer_last_name, - MAX(customer_p.email) AS customer_email, - MAX(customer_p.comments) AS customer_comments, - MAX(customer.company_name) AS customer_company_name, - MAX(sales.employee_id) AS employee_id, - MAX(CONCAT(employee.first_name, " ", employee.last_name)) AS employee_name, - items.item_id AS item_id, - MAX(' . $item->get_item_name() . ') AS name, - MAX(items.item_number) AS item_number, - MAX(items.category) AS category, - MAX(items.supplier_id) AS supplier_id, - MAX(sales_items.quantity_purchased) AS quantity_purchased, - MAX(sales_items.item_cost_price) AS item_cost_price, - MAX(sales_items.item_unit_price) AS item_unit_price, - MAX(sales_items.discount) AS discount, - sales_items.discount_type AS discount_type, - sales_items.line AS line, - MAX(sales_items.serialnumber) AS serialnumber, - MAX(sales_items.item_location) AS item_location, - MAX(sales_items.description) AS description, - MAX(payments.payment_type) AS payment_type, - MAX(payments.sale_payment_amount) AS sale_payment_amount, - ' . " - $sale_subtotal AS subtotal, - $tax AS tax, - $sale_total AS total, - $sale_cost AS cost, - ($sale_subtotal - $sale_cost) AS profit - " . ' - FROM ' . $this->db->prefixTable('sales_items') . ' AS sales_items - INNER JOIN ' . $this->db->prefixTable('sales') . ' AS sales - ON sales_items.sale_id = sales.sale_id - INNER JOIN ' . $this->db->prefixTable('items') . ' AS items - ON sales_items.item_id = items.item_id - LEFT OUTER JOIN ' . $this->db->prefixTable('sales_payments_temp') . ' AS payments - ON sales_items.sale_id = payments.sale_id - LEFT OUTER JOIN ' . $this->db->prefixTable('suppliers') . ' AS supplier - ON items.supplier_id = supplier.person_id - LEFT OUTER JOIN ' . $this->db->prefixTable('people') . ' AS customer_p - ON sales.customer_id = customer_p.person_id - LEFT OUTER JOIN ' . $this->db->prefixTable('customers') . ' AS customer - ON sales.customer_id = customer.person_id - LEFT OUTER JOIN ' . $this->db->prefixTable('people') . ' AS employee - ON sales.employee_id = employee.person_id - LEFT OUTER JOIN ' . $this->db->prefixTable('sales_items_taxes_temp') . ' AS sales_items_taxes - ON sales_items.sale_id = sales_items_taxes.sale_id AND sales_items.item_id = sales_items_taxes.item_id AND sales_items.line = sales_items_taxes.line - WHERE ' . $where . ' - GROUP BY sale_id, item_id, line - )'; - - $this->db->query($sql); - } - - /** - * Retrieves all sales that are in a suspended state - */ - public function get_all_suspended(int $customer_id = null): array - { - if($customer_id == NEW_ENTRY) - { - $query = $this->db->query("SELECT sale_id, case when sale_type = '".SALE_TYPE_QUOTE."' THEN quote_number WHEN sale_type = '".SALE_TYPE_WORK_ORDER."' THEN work_order_number else sale_id end as doc_id, sale_id as suspended_sale_id, sale_status, sale_time, dinner_table_id, customer_id, employee_id, comment FROM " - . $this->db->prefixTable('sales') . ' where sale_status = ' . SUSPENDED); - } - else - { - $query = $this->db->query("SELECT sale_id, case when sale_type = '".SALE_TYPE_QUOTE."' THEN quote_number WHEN sale_type = '".SALE_TYPE_WORK_ORDER."' THEN work_order_number else sale_id end as doc_id, sale_status, sale_time, dinner_table_id, customer_id, employee_id, comment FROM " - . $this->db->prefixTable('sales') . ' where sale_status = '. SUSPENDED .' AND customer_id = ' . $customer_id); - } - - return $query->getResultArray() ?: []; - } - - /** - * Gets the dinner table for the selected sale - */ - public function get_dinner_table(int $sale_id) //TODO: this is returning null or the table_id. We can keep it this way but multiple return types can't be declared until PHP 8.x - { - if($sale_id == NEW_ENTRY) - { - return null; - } - - $builder = $this->db->table('sales'); - $builder->where('sale_id', $sale_id); - - return $builder->get()->getRow()->dinner_table_id; - } - - /** - * Gets the sale type for the selected sale - */ - public function get_sale_type(int $sale_id) - { - $builder = $this->db->table('sales'); - $builder->where('sale_id', $sale_id); - - return $builder->get()->getRow()->sale_type; - } - - /** - * Gets the sale status for the selected sale - */ - public function get_sale_status(int $sale_id): int - { - $builder = $this->db->table('sales'); - $builder->where('sale_id', $sale_id); - - return $builder->get()->getRow()->sale_status; - } - - /** - * @param int $sale_id - * @param int $sale_status - * @return void - */ - public function update_sale_status(int $sale_id, int $sale_status): void - { - $builder = $this->db->table('sales'); - - $builder->where('sale_id', $sale_id); - $builder->update(['sale_status' => $sale_status]); - } - - /** - * Gets the quote_number for the selected sale - */ - public function get_quote_number(int $sale_id): ?string - { - $builder = $this->db->table('sales'); - $builder->where('sale_id', $sale_id); - - $row = $builder->get()->getRow(); - - if($row != null) - { - return $row->quote_number; - } - - return null; - } - - /** - * Gets the work order number for the selected sale - */ - public function get_work_order_number(int $sale_id): ?string - { - $builder = $this->db->table('sales'); - $builder->where('sale_id', $sale_id); - - $row = $builder->get()->getRow(); - - if($row != null) //TODO: === ? - { - return $row->work_order_number; - } - - return null; - } - - /** - * Gets the quote_number for the selected sale - */ - public function get_comment(int $sale_id): ?string - { - $builder = $this->db->table('sales'); - $builder->where('sale_id', $sale_id); - - $row = $builder->get()->getRow(); - - if($row != null) //TODO: === ? - { - return $row->comment; - } - - return null; - } - - /** - * Gets total of suspended invoices rows - */ - public function get_suspended_invoice_count(): int - { - $builder = $this->db->table('sales'); - $builder->where('invoice_number IS NOT NULL'); - $builder->where('sale_status', SUSPENDED); - - return $builder->countAllResults(); - } - - /** - * Removes a selected sale from the sales table. - * This function should only be called for suspended sales that are being restored to the current cart - */ - public function delete_suspended_sale(int $sale_id): bool - { - //Run these queries as a transaction, we want to make sure we do all or nothing - $this->db->transStart(); - $config = config(OSPOS::class)->settings; - - if($config['dinner_table_enable']) - { - $dinner_table = model(Dinner_table::class); - $dinner_table_id = $this->get_dinner_table($sale_id); - $dinner_table->release($dinner_table_id); - } - - $this->update_sale_status($sale_id, CANCELED); - - $this->db->transComplete(); - - return $this->db->transStatus(); - } - - /** - * This clears the sales detail for a given sale_id before the detail is re-saved. - * This allows us to reuse the same sale_id - */ - public function clear_suspended_sale_detail(int $sale_id): bool - { - $this->db->transStart(); - $config = config(OSPOS::class)->settings; - - if($config['dinner_table_enable']) - { - $dinner_table = model(Dinner_table::class); - $dinner_table_id = $this->get_dinner_table($sale_id); - $dinner_table->release($dinner_table_id); - } - - $builder = $this->db->table('sales_payments'); - $builder->delete(['sale_id' => $sale_id]); - - $builder = $this->db->table('sales_items_taxes'); - $builder->delete(['sale_id' => $sale_id]); - - $builder = $this->db->table('sales_items'); - $builder->delete(['sale_id' => $sale_id]); - - $builder = $this->db->table('sales_taxes'); - $builder->delete(['sale_id' => $sale_id]); - - $this->db->transComplete(); - - return $this->db->transStatus(); - } - - /** - * Gets suspended sale info - */ - public function get_suspended_sale_info(int $sale_id): ResultInterface - { - $builder = $this->db->table('sales'); - $builder->where('sale_id', $sale_id); - $builder->join('people', 'people.person_id = sales.customer_id', 'LEFT'); - $builder->where('sale_status', SUSPENDED); - - return $builder->get(); - } - - /** - * @param int $customer_id - * @param int $sale_id - * @param float $total_amount - * @param float $total_amount_used - */ - private function save_customer_rewards(int $customer_id, int $sale_id, float $total_amount, float $total_amount_used): void - { - $config = config(OSPOS::class)->settings; - - if(!empty($customer_id) && $config['customer_reward_enable']) - { - $customer = model(Customer::class); - $customer_rewards = model(Customer_rewards::class); - $rewards = model(Rewards::class); - - $package_id = $customer->get_info($customer_id)->package_id; - - if(!empty($package_id)) - { - $points_percent = $customer_rewards->get_points_percent($package_id); - $points = $customer->get_info($customer_id)->points; - $points = ($points == null ? 0 : $points); - $points_percent = ($points_percent == null ? 0 : $points_percent); - $total_amount_earned = ($total_amount * $points_percent / 100); - $points = $points + $total_amount_earned; - - $customer->update_reward_points_value($customer_id, $points); - - $rewards_data = ['sale_id' => $sale_id, 'earned' => $total_amount_earned, 'used' => $total_amount_used]; - - $rewards->save_value($rewards_data); - } - } - } - - /** - * Creates a temporary table to store the sales_payments data - * - * @param string $where - * @return array - */ - private function create_temp_table_sales_payments_data(string $where): void - { - $builder = $this->db->table('sales_payments AS payments'); - $builder->select([ - 'payments.sale_id', - 'SUM(CASE WHEN `payments`.`cash_adjustment` = 0 THEN `payments`.`payment_amount` ELSE 0 END) AS sale_payment_amount', - 'SUM(CASE WHEN `payments`.`cash_adjustment` = 1 THEN `payments`.`payment_amount` ELSE 0 END) AS sale_cash_adjustment', - 'GROUP_CONCAT(CONCAT(`payments`.`payment_type`, " ", (`payments`.`payment_amount` - `payments`.`cash_refund`)) SEPARATOR ", ") AS payment_type' - ]); - $builder->join('sales', 'sales.sale_id = payments.sale_id', 'inner'); - $builder->where($where); - $builder->groupBy('payments.sale_id'); - - $sub_query = $builder->getCompiledSelect(); - log_message('error', $sub_query); - - $this->db->query('CREATE TEMPORARY TABLE IF NOT EXISTS ' - . $this->db->prefixTable('sales_payments_temp') - . ' (PRIMARY KEY(`sale_id`), INDEX(`sale_id`)) AS (' . $sub_query . ')'); - } - - /** - * Temporary table to store the sales_items_taxes data - * - * @param string $where - * @return \CodeIgniter\Database\BaseBuilder - */ - private function create_temp_table_sales_items_taxes_data(string $where): void - { - - $builder = $this->db->table('sales_items_taxes AS sales_items_taxes'); - $builder->select([ - 'sales_items_taxes.sale_id AS sale_id', - 'sales_items_taxes.item_id AS item_id', - 'sales_items_taxes.line AS line', - 'SUM(sales_items_taxes.item_tax_amount) AS tax', - 'SUM(CASE WHEN sales_items_taxes.tax_type = 0 THEN sales_items_taxes.item_tax_amount ELSE 0 END) AS internal_tax', - 'SUM(CASE WHEN sales_items_taxes.tax_type = 1 THEN sales_items_taxes.item_tax_amount ELSE 0 END) AS sales_tax' - ]); - $builder->join('sales', 'sales.sale_id = sales_items_taxes.sale_id', 'inner'); - $builder->join('sales_items', 'sales_items.sale_id = sales_items_taxes.sale_id AND sales_items.line = sales_items_taxes.line', 'inner'); - $builder->where($where); - $builder->groupBy(['sale_id', 'item_id', 'line']); - $sub_query = $builder->getCompiledSelect(); - - $this->db->query('CREATE TEMPORARY TABLE IF NOT EXISTS ' - . $this->db->prefixTable('sales_items_taxes_temp') - . ' (INDEX(sale_id), INDEX(item_id)) ENGINE=MEMORY AS (' . $sub_query . ')'); - } - - /** - * @param string $search - * @param array $filters - * @param BaseBuilder $builder - * @return void - */ - private function add_filters_to_query(string $search, array $filters, BaseBuilder $builder): void - { - if(!empty($search)) //TODO: this is duplicated code. We should think about refactoring out a method - { - if($filters['is_valid_receipt']) - { - $pieces = explode(' ', $search); - $builder->where('sales.sale_id', $pieces[1]); - } - else - { - $builder->groupStart(); - // customer last name - $builder->like('customer_p.last_name', $search); - // customer first name - $builder->orLike('customer_p.first_name', $search); - // customer first and last name - $builder->orLike('CONCAT(customer_p.first_name, " ", customer_p.last_name)', $search); - // customer company name - $builder->orLike('customer.company_name', $search); - $builder->groupEnd(); - } - } - - if($filters['location_id'] != 'all') - { - $builder->where('sales_items.item_location', $filters['location_id']); - } - - if($filters['selected_customer'] != false) - { - $sale_lib = new Sale_lib(); - $builder->where('sales.customer_id', $sale_lib->get_customer()); - } - - - if($filters['only_invoices']) - { - $builder->where('sales.invoice_number IS NOT NULL'); - } - - if($filters['only_cash']) - { - $builder->groupStart(); - $builder->like('payments.payment_type', lang('Sales.cash')); - $builder->orWhere('payments.payment_type IS NULL'); - $builder->groupEnd(); - } - - if($filters['only_creditcard']) - { - $builder->like('payments.payment_type', lang('Sales.credit')); - } - - if($filters['only_due']) - { - $builder->like('payments.payment_type', lang('Sales.due')); - } - - if($filters['only_check']) - { - $builder->like('payments.payment_type', lang('Sales.check')); - } - } + protected $table = 'sales'; + protected $primaryKey = 'sale_id'; + protected $useAutoIncrement = true; + protected $useSoftDeletes = false; + protected $allowedFields = [ + 'sale_time', + 'customer_id', + 'employee_id', + 'comment', + 'quote_number', + 'sale_status', + 'invoice_number', + 'dinner_table_id', + 'work_order_number', + 'sale_type' + ]; + + public function __construct() + { + parent::__construct(); + helper('text'); + } + + /** + * Get sale info + */ + public function get_info(int $sale_id): ResultInterface + { + $config = config(OSPOS::class)->settings; + $this->create_temp_table (['sale_id' => $sale_id]); + + $decimals = totals_decimals(); + $sales_tax = 'IFNULL(SUM(sales_items_taxes.sales_tax), 0)'; + $cash_adjustment = 'IFNULL(SUM(payments.sale_cash_adjustment), 0)'; + $sale_price = 'CASE WHEN sales_items.discount_type = ' . PERCENT + . " THEN sales_items.quantity_purchased * sales_items.item_unit_price - ROUND(sales_items.quantity_purchased * sales_items.item_unit_price * sales_items.discount / 100, $decimals) " + . 'ELSE sales_items.quantity_purchased * (sales_items.item_unit_price - sales_items.discount) END'; + + $sale_total = $config['tax_included'] + ? "ROUND(SUM($sale_price), $decimals) + $cash_adjustment" + : "ROUND(SUM($sale_price), $decimals) + $sales_tax + $cash_adjustment"; + + $sql = 'sales.sale_id AS sale_id, + MAX(DATE(sales.sale_time)) AS sale_date, + MAX(sales.sale_time) AS sale_time, + MAX(sales.comment) AS comment, + MAX(sales.sale_status) AS sale_status, + MAX(sales.invoice_number) AS invoice_number, + MAX(sales.quote_number) AS quote_number, + MAX(sales.employee_id) AS employee_id, + MAX(sales.customer_id) AS customer_id, + MAX(CONCAT(customer_p.first_name, " ", customer_p.last_name)) AS customer_name, + MAX(customer_p.first_name) AS first_name, + MAX(customer_p.last_name) AS last_name, + MAX(customer_p.email) AS email, + MAX(customer_p.comments) AS comments, + MAX(IFnull(payments.sale_cash_adjustment, 0)) AS cash_adjustment, + MAX(IFnull(payments.sale_cash_refund, 0)) AS cash_refund, + ' . " + $sale_total AS amount_due, + MAX(IFnull(payments.sale_payment_amount, 0)) AS amount_tendered, + (MAX(payments.sale_payment_amount)) - ($sale_total) AS change_due, + " . ' + MAX(payments.payment_type) AS payment_type'; + + $builder = $this->db->table('sales_items AS sales_items'); + $builder->select($sql); + + $builder->join('sales AS sales', 'sales_items.sale_id = sales.sale_id', 'inner'); + $builder->join('people AS customer_p', 'sales.customer_id = customer_p.person_id', 'LEFT'); + $builder->join('customers AS customer', 'sales.customer_id = customer.person_id', 'LEFT'); + $builder->join('sales_payments_temp AS payments', 'sales.sale_id = payments.sale_id', 'LEFT OUTER'); + $builder->join('sales_items_taxes_temp AS sales_items_taxes', + 'sales_items.sale_id = sales_items_taxes.sale_id AND sales_items.item_id = sales_items_taxes.item_id AND sales_items.line = sales_items_taxes.line', + 'LEFT OUTER'); + + $builder->where('sales.sale_id', $sale_id); + + $builder->groupBy('sales.sale_id'); + $builder->orderBy('sales.sale_time', 'asc'); + + return $builder->get(); + } + + /** + * Get number of rows for the takings (sales/manage) view + */ + public function get_found_rows(string $search, array $filters): int + { + return $this->search($search, $filters, 0, 0, 'sales.sale_time', 'desc', true); + } + + /** + * Get the sales data for the takings (sales/manage) view + */ + public function search(string $search, array $filters, ?int $rows = 0, ?int $limit_from = 0, ?string $sort = 'sales.sale_time', ?string $order = 'desc', ?bool $count_only = false) + { + // Set default values + if($rows == null) $rows = 0; + if($limit_from == null) $limit_from = 0; + if($sort == null) $sort = 'sales.sale_time'; + if($order == null) $order = 'desc'; + if($count_only == null) $count_only = false; + + $config = config(OSPOS::class)->settings; + $db_prefix = $this->db->getPrefix(); + $decimals = totals_decimals(); + + //Only non-suspended records + $where = 'sales.sale_status = 0 AND '; + $where .= empty($config['date_or_time_format']) + ? 'DATE(' . $db_prefix . 'sales.sale_time) BETWEEN ' . $this->db->escape($filters['start_date']) . ' AND ' . $this->db->escape($filters['end_date']) + : 'sales.sale_time BETWEEN ' . $this->db->escape(rawurldecode($filters['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($filters['end_date'])); + + $this->create_temp_table_sales_payments_data($where); + + $sale_price = 'CASE WHEN `sales_items`.`discount_type` = ' . PERCENT + . " THEN `sales_items`.`quantity_purchased` * `sales_items`.`item_unit_price` - ROUND(`sales_items`.`quantity_purchased` * `sales_items`.`item_unit_price` * `sales_items`.`discount` / 100, $decimals) " + . 'ELSE `sales_items`.`quantity_purchased` * (`sales_items`.`item_unit_price` - `sales_items`.`discount`) END'; + + $sale_cost = 'SUM(`sales_items`.`item_cost_price` * `sales_items`.`quantity_purchased`)'; + + $tax = 'IFNULL(SUM(`sales_items_taxes`.`tax`), 0)'; + $sales_tax = 'IFNULL(SUM(`sales_items_taxes`.`sales_tax`), 0)'; + $internal_tax = 'IFNULL(SUM(`sales_items_taxes`.`internal_tax`), 0)'; + $cash_adjustment = 'IFNULL(SUM(`payments`.`sale_cash_adjustment`), 0)'; + + $sale_subtotal = "ROUND(SUM($sale_price), $decimals) - $internal_tax"; + $sale_total = "ROUND(SUM($sale_price), $decimals) + $sales_tax + $cash_adjustment"; + + $this->create_temp_table_sales_items_taxes_data($where); + + $builder = $this->db->table('sales_items AS sales_items'); + + // get_found_rows case + if($count_only) + { + $builder->select('COUNT(DISTINCT `' . $db_prefix . 'sales`.`sale_id`) AS count'); + } + else + { + $builder->select([ + '`' . $db_prefix . 'sales`.`sale_id` AS sale_id', + 'MAX(DATE(`' . $db_prefix . 'sales`.`sale_time`)) AS sale_date', + 'MAX(`' . $db_prefix . 'sales`.`sale_time`) AS sale_time', + 'MAX(`' . $db_prefix . 'sales`.`invoice_number`) AS invoice_number', + 'MAX(`' . $db_prefix . 'sales`.`quote_number`) AS quote_number', + 'SUM(`sales_items`.`quantity_purchased`) AS items_purchased', + 'MAX(CONCAT(`customer_p`.`first_name`, " ", `customer_p`.`last_name`)) AS customer_name', + 'MAX(`customer`.`company_name`) AS company_name', + $sale_subtotal . ' AS subtotal', + $tax . ' AS tax', + $sale_total . ' AS total', + $sale_cost . ' AS cost', + '(' . $sale_total . ' - ' . $sale_cost . ') AS profit', + $sale_total . ' AS amount_due', + 'MAX(`payments`.`sale_payment_amount`) AS amount_tendered', + '(MAX(`payments`.`sale_payment_amount`)) - (' . $sale_total . ') AS change_due', + 'MAX(`payments`.`payment_type`) AS payment_type' + ], false); + } + + $builder->join('sales', '`sales_items`.`sale_id` = `' . $db_prefix . 'sales`.`sale_id`', 'inner'); + $builder->join('people AS customer_p', '`' . $db_prefix . 'sales`.`customer_id` = `customer_p`.`person_id`', 'LEFT'); + $builder->join('customers AS customer', '`' . $db_prefix . 'sales`.`customer_id` = `customer`.`person_id`', 'LEFT'); + $builder->join('sales_payments_temp AS payments', '`' . $db_prefix . 'sales`.`sale_id` = `payments`.`sale_id`', 'LEFT OUTER'); + $builder->join( + 'sales_items_taxes_temp AS sales_items_taxes', + 'sales_items.sale_id = sales_items_taxes.sale_id AND sales_items.item_id = sales_items_taxes.item_id AND sales_items.line = sales_items_taxes.line', + 'LEFT OUTER'); + + $builder->where($where); + + $this->add_filters_to_query($search, $filters, $builder); + + //get_found_rows + if($count_only) + { + return $builder->get()->getRow()->count; + } + + $builder->groupBy('sales.sale_id'); + + //order by sale time by default + $builder->orderBy($sort, $order); + + if($rows > 0) + { + $builder->limit($rows, $limit_from); + } + + return $builder->get(); + } + + /** + * Get the payment summary for the takings (sales/manage) view + */ + public function get_payments_summary(string $search, array $filters): array + { + $config = config(OSPOS::class)->settings; + + // get payment summary + $builder = $this->db->table('sales AS sales'); + $builder->select('payment_type, COUNT(payment_amount) AS count, SUM(payment_amount - cash_refund) AS payment_amount'); + $builder->join('sales_payments', 'sales_payments.sale_id = sales.sale_id'); + $builder->join('people AS customer_p', 'sales.customer_id = customer_p.person_id', 'LEFT'); + $builder->join('customers AS customer', 'sales.customer_id = customer.person_id', 'LEFT'); + + //TODO: This needs to be replaced with Ternary notation + if(empty($config['date_or_time_format'])) //TODO: duplicated code. We should think about refactoring out a method. + { + $builder->where('DATE(sales.sale_time) BETWEEN ' . $this->db->escape($filters['start_date']) . ' AND ' . $this->db->escape($filters['end_date'])); + } + else + { + $builder->where('sales.sale_time BETWEEN ' . $this->db->escape(rawurldecode($filters['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($filters['end_date']))); + } + + if(!empty($search)) //TODO: duplicated code. We should think about refactoring out a method. + { + if($filters['is_valid_receipt']) + { + $pieces = explode(' ',$search); + $builder->where('sales.sale_id', $pieces[1]); + } + else + { + $builder->groupStart(); + $builder->like('customer_p.last_name', $search); // customer last name + $builder->orLike('customer_p.first_name', $search); // customer first name + $builder->orLike('CONCAT(customer_p.first_name, " ", customer_p.last_name)', $search); // customer first and last name + $builder->orLike('customer.company_name', $search); // customer company name + $builder->groupEnd(); + } + } + + //TODO: This needs to be converted to a switch statement + if($filters['sale_type'] == 'sales') //TODO: we need to think about refactoring this block to a switch statement. + { + $builder->where('sales.sale_status = ' . COMPLETED . ' AND payment_amount > 0'); + } + elseif($filters['sale_type'] == 'quotes') + { + $builder->where('sales.sale_status = ' . SUSPENDED . ' AND sales.quote_number IS NOT NULL'); + } + elseif($filters['sale_type'] == 'returns') + { + $builder->where('sales.sale_status = ' . COMPLETED . ' AND payment_amount < 0'); + } + elseif($filters['sale_type'] == 'all') + { + $builder->where('sales.sale_status = ' . COMPLETED); + } + + //TODO: Avoid the double negatives + if($filters['only_invoices']) + { + $builder->where('invoice_number IS NOT NULL'); + } + + if($filters['only_cash']) + { + $builder->like('payment_type', lang('Sales.cash')); + } + + if($filters['only_due']) + { + $builder->like('payment_type', lang('Sales.due')); + } + + if($filters['only_check']) + { + $builder->like('payment_type', lang('Sales.check')); + } + + if($filters['only_creditcard']) + { + $builder->like('payment_type', lang('Sales.credit')); + } + + $builder->groupBy('payment_type'); + + $payments = $builder->get()->getResultArray(); + + // consider Gift Card as only one type of payment and do not show "Gift Card: 1, Gift Card: 2, etc." in the total + $gift_card_count = 0; + $gift_card_amount = 0; + + foreach($payments as $key => $payment) + { + if(strstr($payment['payment_type'], lang('Sales.giftcard'))) + { + $gift_card_count += $payment['count']; + $gift_card_amount += $payment['payment_amount']; + + //remove the "Gift Card: 1", "Gift Card: 2", etc. payment string + unset($payments[$key]); + } + } + + if($gift_card_count > 0) + { + $payments[] = ['payment_type' => lang('Sales.giftcard'), 'count' => $gift_card_count, 'payment_amount' => $gift_card_amount]; + } + + return $payments; + } + + /** + * Gets total of rows + */ + public function get_total_rows(): int + { + $builder = $this->db->table('sales'); + + return $builder->countAllResults(); + } + + /** + * Gets search suggestions + */ + public function get_search_suggestions(string $search, int $limit = 25): array //TODO: $limit is never used. + { + $suggestions = []; + + if(!$this->is_valid_receipt($search)) + { + $builder = $this->db->table('sales'); + $builder->distinct()->select('first_name, last_name'); + $builder->join('people', 'people.person_id = sales.customer_id'); + $builder->like('last_name', $search); + $builder->orLike('first_name', $search); + $builder->orLike('CONCAT(first_name, " ", last_name)', $search); + $builder->orLike('company_name', $search); + $builder->orderBy('last_name', 'asc'); + + foreach($builder->get()->getResultArray() as $result) + { + $suggestions[] = ['label' => $result['first_name'] . ' ' . $result['last_name']]; + } + } + else + { + $suggestions[] = ['label' => $search]; + } + + return $suggestions; + } + + /** + * Gets total of invoice rows + */ + public function get_invoice_count(): int + { + $builder = $this->db->table('sales'); + $builder->where('invoice_number IS NOT NULL'); + + return $builder->countAllResults(); + } + + /** + * Gets sale by invoice number + */ + public function get_sale_by_invoice_number(string $invoice_number): ResultInterface + { + $builder = $this->db->table('sales'); + $builder->where('invoice_number', $invoice_number); + + return $builder->get(); + } + + /** + * @param string $year + * @param int $start_from + * @return int + */ + public function get_invoice_number_for_year(string $year = '', int $start_from = 0): int + { + return $this->get_number_for_year('invoice_number', $year, $start_from); + } + + /** + * @param string $year + * @param int $start_from + * @return int + */ + public function get_quote_number_for_year(string $year = '', int $start_from = 0): int + { + return $this->get_number_for_year('quote_number', $year, $start_from); + } + + /** + * Gets invoice number by year + */ + private function get_number_for_year(string $field, string $year = '', int $start_from = 0): int + { + $year = $year == '' ? date('Y') : $year; + + $builder = $this->db->table('sales'); + $builder->select('COUNT( 1 ) AS number_year'); + $builder->where('DATE_FORMAT(sale_time, "%Y" ) = ', $year); + $builder->where("$field IS NOT NULL"); + $result = $builder->get()->getRowArray(); + + return ($start_from + $result['number_year']); + } + + /** + * Checks if valid receipt + */ + public function is_valid_receipt(string &$receipt_sale_id): bool //TODO: like the others, maybe this should be an array rather than a delimited string... either that or the parameter name needs to be changed. $receipt_sale_id implies that it's an int. + { + $config = config(OSPOS::class)->settings; + + if(!empty($receipt_sale_id)) + { + //POS # + $pieces = explode(' ', $receipt_sale_id); + + if(count($pieces) == 2 && preg_match('/(POS)/i', $pieces[0])) + { + return $this->exists($pieces[1]); + } + elseif($config['invoice_enable']) + { + $sale_info = $this->get_sale_by_invoice_number($receipt_sale_id); + + if($sale_info->getNumRows() > 0) + { + $receipt_sale_id = 'POS ' . $sale_info->getRow()->sale_id; + + return true; + } + } + } + + return false; + } + + /** + * Checks if sale exists + */ + public function exists(int $sale_id): bool + { + $builder = $this->db->table('sales'); + $builder->where('sale_id', $sale_id); + + return ($builder->get()->getNumRows() == 1); //TODO: === + } + + /** + * Update sale + */ + public function update($sale_id = null, $sale_data = null): bool + { + $builder = $this->db->table('sales'); + $builder->where('sale_id', $sale_id); + $update_data = $sale_data; + unset($update_data['payments']); + $success = $builder->update($update_data); + + //touch payment only if update sale is successful and there is a payments object otherwise the result would be to delete all the payments associated to the sale + if($success && !empty($sale_data['payments'])) + { + //Run these queries as a transaction, we want to make sure we do all or nothing + $this->db->transStart(); + + $builder = $this->db->table('sales_payments'); + + // add new payments + foreach($sale_data['payments'] as $payment) + { + $payment_id = $payment['payment_id']; + $payment_type = $payment['payment_type']; + $payment_amount = $payment['payment_amount']; + $cash_refund = $payment['cash_refund']; + $cash_adjustment = $payment['cash_adjustment']; + $employee_id = $payment['employee_id']; + + if($payment_id == NEW_ENTRY && $payment_amount != 0) + { + // Add a new payment transaction + $sales_payments_data = [ + 'sale_id' => $sale_id, + 'payment_type' => $payment_type, + 'payment_amount' => $payment_amount, + 'cash_refund' => $cash_refund, + 'cash_adjustment' => $cash_adjustment, + 'employee_id' => $employee_id + ]; + $success = $builder->insert($sales_payments_data); + } + elseif($payment_id != NEW_ENTRY) + { + if($payment_amount != 0) + { + // Update existing payment transactions (payment_type only) + $sales_payments_data = [ + 'payment_type' => $payment_type, + 'payment_amount' => $payment_amount, + 'cash_refund' => $cash_refund, + 'cash_adjustment' => $cash_adjustment + ]; + + $builder->where('payment_id', $payment_id); + $success = $builder->update($sales_payments_data); + } + else + { + // Remove existing payment transactions with a payment amount of zero + $success = $builder->delete(['payment_id' => $payment_id]); + } + } + } + + $this->db->transComplete(); + $success &= $this->db->transStatus(); + } + + return $success; + } + + /** + * Save the sale information after the sales is complete but before the final document is printed + * The sales_taxes variable needs to be initialized to an empty array before calling + * @throws ReflectionException + */ + public function save_value(int $sale_id, string &$sale_status, array &$items, int $customer_id, int $employee_id, string $comment, ?string $invoice_number, + ?string $work_order_number, ?string $quote_number, int $sale_type, ?array $payments, ?int $dinner_table_id, ?array &$sales_taxes): int //TODO: this method returns the sale_id but the override is expecting it to return a bool. The signature needs to be reworked. Generally when there are more than 3 maybe 4 parameters, there's a good chance that an object needs to be passed rather than so many params. + { + $config = config(OSPOS::class)->settings; + $attribute = model(Attribute::class); + $customer = model(Customer::class); + $giftcard = model(Giftcard::class); + $inventory = model('Inventory'); + $item = model(Item::class); + + $item_quantity = model(Item_quantity::class); + + if($sale_id != NEW_ENTRY) + { + $this->clear_suspended_sale_detail($sale_id); + } + + if(count($items) == 0) //TODO: === + { + return -1; //TODO: Replace -1 with a constant + } + + $sales_data = [ + 'sale_time' => date('Y-m-d H:i:s'), + 'customer_id' => $customer->exists($customer_id) ? $customer_id : null, + 'employee_id' => $employee_id, + 'comment' => $comment, + 'sale_status' => $sale_status, + 'invoice_number' => $invoice_number, + 'quote_number' => $quote_number, + 'work_order_number'=> $work_order_number, + 'dinner_table_id' => $dinner_table_id, + 'sale_type' => $sale_type + ]; + + // Run these queries as a transaction, we want to make sure we do all or nothing + $this->db->transStart(); + + if($sale_id == NEW_ENTRY) + { + $builder = $this->db->table('sales'); + $builder->insert($sales_data); + $sale_id = $this->db->insertID(); + } + else + { + $builder = $this->db->table('sales'); + $builder->where('sale_id', $sale_id); + $builder->update($sales_data); + } + + $total_amount = 0; + $total_amount_used = 0; + + foreach($payments as $payment_id => $payment) + { + if(!empty(strstr($payment['payment_type'], lang('Sales.giftcard')))) + { + // We have a gift card, and we have to deduct the used value from the total value of the card. + $splitpayment = explode( ':', $payment['payment_type'] ); //TODO: this variable doesn't follow our naming conventions. Probably should be refactored to split_payment. + $cur_giftcard_value = $giftcard->get_giftcard_value( $splitpayment[1] ); //TODO: this should be refactored to $current_giftcard_value + $giftcard->update_giftcard_value( $splitpayment[1], $cur_giftcard_value - $payment['payment_amount'] ); + } + elseif(!empty(strstr($payment['payment_type'], lang('Sales.rewards')))) + { + $cur_rewards_value = $customer->get_info($customer_id)->points; + $customer->update_reward_points_value($customer_id, $cur_rewards_value - $payment['payment_amount'] ); + $total_amount_used = floatval($total_amount_used) + floatval($payment['payment_amount']); + } + + $sales_payments_data = [ + 'sale_id' => $sale_id, + 'payment_type' => $payment['payment_type'], + 'payment_amount' => $payment['payment_amount'], + 'cash_refund' => $payment['cash_refund'], + 'cash_adjustment' => $payment['cash_adjustment'], + 'employee_id' => $employee_id + ]; + + $builder = $this->db->table('sales_payments'); + $builder->insert($sales_payments_data); + + $total_amount = floatval($total_amount) + floatval($payment['payment_amount']) - floatval($payment['cash_refund']); + } + + $this->save_customer_rewards($customer_id, $sale_id, $total_amount, $total_amount_used); + + $customer = $customer->get_info($customer_id); + + foreach($items as $line => $item_data) + { + $cur_item_info = $item->get_info($item_data['item_id']); + + if($item_data['price'] == 0.00) + { + $item_data['discount'] = 0.00; + } + + $sales_items_data = [ + 'sale_id' => $sale_id, + 'item_id' => $item_data['item_id'], + 'line' => $item_data['line'], + 'description' => character_limiter($item_data['description'], 255), + 'serialnumber' => character_limiter($item_data['serialnumber'], 30), + 'quantity_purchased' => $item_data['quantity'], + 'discount' => $item_data['discount'], + 'discount_type' => $item_data['discount_type'], + 'item_cost_price' => $item_data['cost_price'], + 'item_unit_price' => $item_data['price'], + 'item_location' => $item_data['item_location'], + 'print_option' => $item_data['print_option'] + ]; + + $builder = $this->db->table('sales_items'); + $builder->insert($sales_items_data); + + if($cur_item_info->stock_type == HAS_STOCK && $sale_status == COMPLETED) //TODO: === ? + { + // Update stock quantity if item type is a standard stock item and the sale is a standard sale + $item_quantity_data = $item_quantity->get_item_quantity($item_data['item_id'], $item_data['item_location']); + + $item_quantity->save_value([ + 'quantity' => $item_quantity_data->quantity - $item_data['quantity'], + 'item_id' => $item_data['item_id'], + 'location_id' => $item_data['item_location']], + $item_data['item_id'], + $item_data['item_location'] + ); + + // if an items was deleted but later returned it's restored with this rule + if($item_data['quantity'] < 0) + { + $item->undelete($item_data['item_id']); + } + + // Inventory Count Details + $sale_remarks = 'POS ' . $sale_id; //TODO: Use string interpolation here. + $inv_data = [ + 'trans_date' => date('Y-m-d H:i:s'), + 'trans_items' => $item_data['item_id'], + 'trans_user' => $employee_id, + 'trans_location' => $item_data['item_location'], + 'trans_comment' => $sale_remarks, + 'trans_inventory' => -$item_data['quantity'] + ]; + + $inventory->insert($inv_data, false); + } + + $attribute->copy_attribute_links($item_data['item_id'], 'sale_id', $sale_id); + } + + if($customer_id == NEW_ENTRY || $customer->taxable) + { + $this->save_sales_tax($sale_id, $sales_taxes[0]); + $this->save_sales_items_taxes($sale_id, $sales_taxes[1]); + } + + if($config['dinner_table_enable']) + { + $dinner_table = model(Dinner_table::class); + if($sale_status == COMPLETED) //TODO: === ? + { + $dinner_table->release($dinner_table_id); + } + else + { + $dinner_table->occupy($dinner_table_id); + } + } + + $this->db->transComplete(); + + return $this->db->transStatus() ? $sale_id : -1; + } + + /** + * Saves sale tax + */ + public function save_sales_tax(int $sale_id, array $sales_taxes): void //TODO: should we return the result of the insert here as a bool? + { + $builder = $this->db->table('sales_taxes'); + + foreach($sales_taxes as $line => $sales_tax) + { + $sales_tax['sale_id'] = $sale_id; + $builder->insert($sales_tax); + } + } + + /** + * Apply customer sales tax if the customer sales tax is enabled + * The original tax is still supported if the user configures it, + * but it won't make sense unless it's used exclusively for the purpose + * of VAT tax which becomes a price component. VAT taxes must still be reported + * as a separate tax entry on the invoice. + */ + public function save_sales_items_taxes(int $sale_id, array $sales_item_taxes): void + { + $builder = $this->db->table('sales_items_taxes'); + + foreach($sales_item_taxes as $line => $tax_item) + { + $sales_items_taxes = [ + 'sale_id' => $sale_id, + 'item_id' => $tax_item['item_id'], + 'line' => $tax_item['line'], + 'name' => $tax_item['name'], + 'percent' => $tax_item['percent'], + 'tax_type' => $tax_item['tax_type'], + 'rounding_code' => $tax_item['rounding_code'], + 'cascade_sequence' => $tax_item['cascade_sequence'], + 'item_tax_amount' => $tax_item['item_tax_amount'], + 'sales_tax_code_id' => $tax_item['sales_tax_code_id'], + 'tax_category_id' => $tax_item['tax_category_id'], + 'jurisdiction_id' => $tax_item['jurisdiction_id'] + ]; + + $builder->insert($sales_items_taxes); + } + } + + /** + * Return the taxes that were charged + */ + public function get_sales_taxes(int $sale_id): array + { + $builder = $this->db->table('sales_taxes'); + $builder->where('sale_id', $sale_id); + $builder->orderBy('print_sequence', 'asc'); + + $query = $builder->get(); + + return $query->getResultArray(); + } + + /** + * Return the taxes applied to a sale for a particular item + */ + public function get_sales_item_taxes(int $sale_id, int $item_id): array + { + $builder = $this->db->table('sales_items_taxes'); + $builder->select('item_id, name, percent'); + $builder->where('sale_id',$sale_id); + $builder->where('item_id',$item_id); + + //return an array of taxes for an item + return $builder->get()->getResultArray(); + } + + /** + * Deletes list of sales + * @throws ReflectionException + */ + public function delete_list(array $sale_ids, int $employee_id, bool $update_inventory = true): bool + { + $result = true; + + foreach($sale_ids as $sale_id) + { + $result &= $this->delete($sale_id, false, $update_inventory, $employee_id); + } + + return $result; + } + + /** + * Restores list of sales + */ + public function restore_list(array $sale_ids, int $employee_id, bool $update_inventory = true): bool //TODO: $employee_id and $update_inventory are never used in the function. + { + foreach($sale_ids as $sale_id) + { + $this->update_sale_status($sale_id, SUSPENDED); + } + + return true; + } + + /** + * Delete sale. Hard deletes are not supported for sales transactions. + * When a sale is "deleted" it is simply changed to a status of canceled. + * However, if applicable the inventory still needs to be updated + * @throws ReflectionException + */ + public function delete($sale_id = null, bool $purge = false, bool $update_inventory = true, $employee_id = null): bool + { + // start a transaction to assure data integrity + $this->db->transStart(); + + $sale_status = $this->get_sale_status($sale_id); + + if($update_inventory && $sale_status == COMPLETED) + { + // defect, not all item deletions will be undone?? + // get array with all the items involved in the sale to update the inventory tracking + $inventory = model('Inventory'); + $item = model(Item::class); + $item_quantity = model(Item_quantity::class); + + $items = $this->get_sale_items($sale_id)->getResultArray(); + + foreach($items as $item_data) + { + $cur_item_info = $item->get_info($item_data['item_id']); + + if($cur_item_info->stock_type == HAS_STOCK) + { + // create query to update inventory tracking + $inv_data = [ + 'trans_date' => date('Y-m-d H:i:s'), + 'trans_items' => $item_data['item_id'], + 'trans_user' => $employee_id, + 'trans_comment' => 'Deleting sale ' . $sale_id, + 'trans_location' => $item_data['item_location'], + 'trans_inventory' => $item_data['quantity_purchased'] + ]; + // update inventory + $inventory->insert($inv_data, false); + + // update quantities + $item_quantity->change_quantity($item_data['item_id'], $item_data['item_location'], $item_data['quantity_purchased']); + } + } + } + + $this->update_sale_status($sale_id, CANCELED); + + // execute transaction + $this->db->transComplete(); + + return $this->db->transStatus(); + } + + /** + * Gets sale item + */ + public function get_sale_items(int $sale_id): ResultInterface + { + $builder = $this->db->table('sales_items'); + $builder->where('sale_id', $sale_id); + + return $builder->get(); + } + + /** + * Used by the invoice and receipt programs + */ + public function get_sale_items_ordered(int $sale_id): ResultInterface + { + $config = config(OSPOS::class)->settings; + $item = model(Item::class); + + $builder = $this->db->table('sales_items AS sales_items'); + $builder->select(' + sales_items.sale_id, + sales_items.item_id, + sales_items.description, + serialnumber, + line, + quantity_purchased, + item_cost_price, + item_unit_price, + discount, + discount_type, + item_location, + print_option, + ' . $item->get_item_name('name') . ', + category, + item_type, + stock_type'); + $builder->join('items AS items', 'sales_items.item_id = items.item_id'); + $builder->where('sales_items.sale_id', $sale_id); + + // Entry sequence (this will render kits in the expected sequence) + if($config['line_sequence'] == '0') //TODO: Replace these with constants and this should be converted to a switch. + { + $builder->orderBy('line', 'asc'); + } + // Group by Stock Type (nonstock first - type 1, stock next - type 0) + elseif($config['line_sequence'] == '1') + { + $builder->orderBy('stock_type', 'desc'); + $builder->orderBy('sales_items.description', 'asc'); + $builder->orderBy('items.name', 'asc'); + $builder->orderBy('items.qty_per_pack', 'asc'); + } + // Group by Item Category + elseif($config['line_sequence'] == '2') + { + $builder->orderBy('category', 'asc'); + $builder->orderBy('sales_items.description', 'asc'); + $builder->orderBy('items.name', 'asc'); + $builder->orderBy('items.qty_per_pack', 'asc'); + } + // Group by entry sequence in descending sequence (the Standard) + else + { + $builder->orderBy('line', 'desc'); + } + + return $builder->get(); + } + + /** + * Gets sale payments + */ + public function get_sale_payments(int $sale_id): ResultInterface + { + $builder = $this->db->table('sales_payments'); + $builder->where('sale_id', $sale_id); + + return $builder->get(); + } + + /** + * Gets sale payment options + */ + public function get_payment_options(bool $giftcard = true, bool $reward_points = true): array + { + $payments = get_payment_options(); + + if($giftcard) + { + $payments[lang('Sales.giftcard')] = lang('Sales.giftcard'); + } + + if($reward_points) + { + $payments[lang('Sales.rewards')] = lang('Sales.rewards'); + } + $sale_lib = new Sale_lib(); + if($sale_lib->get_mode() == 'sale_work_order') + { + $payments[lang('Sales.cash_deposit')] = lang('Sales.cash_deposit'); + $payments[lang('Sales.credit_deposit')] = lang('Sales.credit_deposit'); + } + + return $payments; + } + + /** + * Gets sale customer name + */ + public function get_customer(int $sale_id): object + { + $customer = model(Customer::class); + + $builder = $this->db->table('sales'); + $builder->where('sale_id', $sale_id); + + return $customer->get_info($builder->get()->getRow()->customer_id); + } + + /** + * Gets sale employee name + */ + public function get_employee(int $sale_id): object + { + $builder = $this->db->table('sales'); + $builder->where('sale_id', $sale_id); + + $employee = model(Employee::class); + + return $employee->get_info($builder->get()->getRow()->employee_id); + } + + /** + * Checks if quote number exists + */ + public function check_quote_number_exists(string $quote_number, string $sale_id = ''): bool + { + $builder = $this->db->table('sales'); + $builder->where('quote_number', $quote_number); + + if(!empty($sale_id)) + { + $builder->where('sale_id !=', $sale_id); + } + + return ($builder->get()->getNumRows() == 1); //TODO: === + } + + /** + * Checks if invoice number exists + */ + public function check_invoice_number_exists(string $invoice_number, string $sale_id = ''): bool + { + $builder = $this->db->table('sales'); + $builder->where('invoice_number', $invoice_number); + + if(!empty($sale_id)) + { + $builder->where('sale_id !=', $sale_id); + } + + return ($builder->get()->getNumRows() == 1); //TODO: === + } + + /** + * Checks if work order number exists + */ + public function check_work_order_number_exists(string $work_order_number, string $sale_id = ''): bool + { + $builder = $this->db->table('sales'); + $builder->where('invoice_number', $work_order_number); + if(!empty($sale_id)) + { + $builder->where('sale_id !=', $sale_id); + } + + return ($builder->get()->getNumRows() == 1); //TODO: === + } + + /** + * Gets Giftcard value + */ + public function get_giftcard_value(string $giftcardNumber): float + { + $giftcard = model(Giftcard::class); + + if(!$giftcard->exists($giftcard->get_giftcard_id($giftcardNumber))) //TODO: camelCase is used here for the variable name but we are using _ everywhere else. CI4 moved to camelCase... we should pick one and do that. + { + return 0; + } + + $builder = $this->db->table('giftcards'); + $builder->where('giftcard_number', $giftcardNumber); + + return $builder->get()->getRow()->value; + } + + /** + * Creates sales temporary dimensional table + * We create a temp table that allows us to do easy report/sales queries + */ + public function create_temp_table(array $inputs): void + { + $config = config(OSPOS::class)->settings; + + if(empty($inputs['sale_id'])) + { + if(empty($config['date_or_time_format'])) //TODO: This needs to be replaced with Ternary notation + { + $where = 'DATE(sales.sale_time) BETWEEN ' . $this->db->escape($inputs['start_date']) . ' AND ' . $this->db->escape($inputs['end_date']); + } + else + { + $where = 'sales.sale_time BETWEEN ' . $this->db->escape(rawurldecode($inputs['start_date'])) . ' AND ' . $this->db->escape(rawurldecode($inputs['end_date'])); + } + } + else + { + $where = 'sales.sale_id = ' . $this->db->escape($inputs['sale_id']); + } + + $decimals = totals_decimals(); + + $sale_price = 'CASE WHEN sales_items.discount_type = ' . PERCENT + . " THEN sales_items.quantity_purchased * sales_items.item_unit_price - ROUND(sales_items.quantity_purchased * sales_items.item_unit_price * sales_items.discount / 100, $decimals) " + . 'ELSE sales_items.quantity_purchased * (sales_items.item_unit_price - sales_items.discount) END'; + + $sale_cost = 'SUM(sales_items.item_cost_price * sales_items.quantity_purchased)'; + + $tax = 'IFNULL(SUM(sales_items_taxes.tax), 0)'; + $sales_tax = 'IFNULL(SUM(sales_items_taxes.sales_tax), 0)'; + $internal_tax = 'IFNULL(SUM(sales_items_taxes.internal_tax), 0)'; + $cash_adjustment = 'IFNULL(SUM(payments.sale_cash_adjustment), 0)'; + + if($config['tax_included']) + { + $sale_total = "ROUND(SUM($sale_price), $decimals) + $cash_adjustment"; + $sale_subtotal = "$sale_total - $internal_tax"; + } + else + { + $sale_subtotal = "ROUND(SUM($sale_price), $decimals) - $internal_tax + $cash_adjustment"; + $sale_total = "ROUND(SUM($sale_price), $decimals) + $sales_tax + $cash_adjustment"; + } + + // create a temporary table to contain all the sum of taxes per sale item + $sql = 'CREATE TEMPORARY TABLE IF NOT EXISTS ' . $this->db->prefixTable('sales_items_taxes_temp') . + ' (INDEX(sale_id), INDEX(item_id)) ENGINE=MEMORY + ( + SELECT sales_items_taxes.sale_id AS sale_id, + sales_items_taxes.item_id AS item_id, + sales_items_taxes.line AS line, + SUM(ROUND(sales_items_taxes.item_tax_amount, ' . $decimals . ')) AS tax, + SUM(ROUND(CASE WHEN sales_items_taxes.tax_type = 0 THEN sales_items_taxes.item_tax_amount ELSE 0 END, ' . $decimals . ')) AS internal_tax, + SUM(ROUND(CASE WHEN sales_items_taxes.tax_type = 1 THEN sales_items_taxes.item_tax_amount ELSE 0 END, ' . $decimals . ')) AS sales_tax + FROM ' . $this->db->prefixTable('sales_items_taxes') . ' AS sales_items_taxes + INNER JOIN ' . $this->db->prefixTable('sales') . ' AS sales + ON sales.sale_id = sales_items_taxes.sale_id + INNER JOIN ' . $this->db->prefixTable('sales_items') . ' AS sales_items + ON sales_items.sale_id = sales_items_taxes.sale_id AND sales_items.line = sales_items_taxes.line + WHERE ' . $where . ' + GROUP BY sale_id, item_id, line + )'; + + $this->db->query($sql); + + // create a temporary table to contain all the payment types and amount + $sql = 'CREATE TEMPORARY TABLE IF NOT EXISTS ' . $this->db->prefixTable('sales_payments_temp') . + ' (PRIMARY KEY(sale_id), INDEX(sale_id)) + ( + SELECT payments.sale_id AS sale_id, + SUM(CASE WHEN payments.cash_adjustment = 0 THEN payments.payment_amount ELSE 0 END) AS sale_payment_amount, + SUM(CASE WHEN payments.cash_adjustment = 1 THEN payments.payment_amount ELSE 0 END) AS sale_cash_adjustment, + SUM(payments.cash_refund) AS sale_cash_refund, + GROUP_CONCAT(CONCAT(payments.payment_type, " ", (payments.payment_amount - payments.cash_refund)) SEPARATOR ", ") AS payment_type + FROM ' . $this->db->prefixTable('sales_payments') . ' AS payments + INNER JOIN ' . $this->db->prefixTable('sales') . ' AS sales + ON sales.sale_id = payments.sale_id + WHERE ' . $where . ' + GROUP BY payments.sale_id + )'; + + $this->db->query($sql); + $item = model(Item::class); + $sql = 'CREATE TEMPORARY TABLE IF NOT EXISTS ' . $this->db->prefixTable('sales_items_temp') . + ' (INDEX(sale_date), INDEX(sale_time), INDEX(sale_id)) + ( + SELECT + MAX(DATE(sales.sale_time)) AS sale_date, + MAX(sales.sale_time) AS sale_time, + sales.sale_id AS sale_id, + MAX(sales.sale_status) AS sale_status, + MAX(sales.sale_type) AS sale_type, + MAX(sales.comment) AS comment, + MAX(sales.invoice_number) AS invoice_number, + MAX(sales.quote_number) AS quote_number, + MAX(sales.customer_id) AS customer_id, + MAX(CONCAT(customer_p.first_name, " ", customer_p.last_name)) AS customer_name, + MAX(customer_p.first_name) AS customer_first_name, + MAX(customer_p.last_name) AS customer_last_name, + MAX(customer_p.email) AS customer_email, + MAX(customer_p.comments) AS customer_comments, + MAX(customer.company_name) AS customer_company_name, + MAX(sales.employee_id) AS employee_id, + MAX(CONCAT(employee.first_name, " ", employee.last_name)) AS employee_name, + items.item_id AS item_id, + MAX(' . $item->get_item_name() . ') AS name, + MAX(items.item_number) AS item_number, + MAX(items.category) AS category, + MAX(items.supplier_id) AS supplier_id, + MAX(sales_items.quantity_purchased) AS quantity_purchased, + MAX(sales_items.item_cost_price) AS item_cost_price, + MAX(sales_items.item_unit_price) AS item_unit_price, + MAX(sales_items.discount) AS discount, + sales_items.discount_type AS discount_type, + sales_items.line AS line, + MAX(sales_items.serialnumber) AS serialnumber, + MAX(sales_items.item_location) AS item_location, + MAX(sales_items.description) AS description, + MAX(payments.payment_type) AS payment_type, + MAX(payments.sale_payment_amount) AS sale_payment_amount, + ' . " + $sale_subtotal AS subtotal, + $tax AS tax, + $sale_total AS total, + $sale_cost AS cost, + ($sale_subtotal - $sale_cost) AS profit + " . ' + FROM ' . $this->db->prefixTable('sales_items') . ' AS sales_items + INNER JOIN ' . $this->db->prefixTable('sales') . ' AS sales + ON sales_items.sale_id = sales.sale_id + INNER JOIN ' . $this->db->prefixTable('items') . ' AS items + ON sales_items.item_id = items.item_id + LEFT OUTER JOIN ' . $this->db->prefixTable('sales_payments_temp') . ' AS payments + ON sales_items.sale_id = payments.sale_id + LEFT OUTER JOIN ' . $this->db->prefixTable('suppliers') . ' AS supplier + ON items.supplier_id = supplier.person_id + LEFT OUTER JOIN ' . $this->db->prefixTable('people') . ' AS customer_p + ON sales.customer_id = customer_p.person_id + LEFT OUTER JOIN ' . $this->db->prefixTable('customers') . ' AS customer + ON sales.customer_id = customer.person_id + LEFT OUTER JOIN ' . $this->db->prefixTable('people') . ' AS employee + ON sales.employee_id = employee.person_id + LEFT OUTER JOIN ' . $this->db->prefixTable('sales_items_taxes_temp') . ' AS sales_items_taxes + ON sales_items.sale_id = sales_items_taxes.sale_id AND sales_items.item_id = sales_items_taxes.item_id AND sales_items.line = sales_items_taxes.line + WHERE ' . $where . ' + GROUP BY sale_id, item_id, line + )'; + + $this->db->query($sql); + } + + /** + * Retrieves all sales that are in a suspended state + */ + public function get_all_suspended(int $customer_id = null): array + { + if($customer_id == NEW_ENTRY) + { + $query = $this->db->query("SELECT sale_id, case when sale_type = '".SALE_TYPE_QUOTE."' THEN quote_number WHEN sale_type = '".SALE_TYPE_WORK_ORDER."' THEN work_order_number else sale_id end as doc_id, sale_id as suspended_sale_id, sale_status, sale_time, dinner_table_id, customer_id, employee_id, comment FROM " + . $this->db->prefixTable('sales') . ' where sale_status = ' . SUSPENDED); + } + else + { + $query = $this->db->query("SELECT sale_id, case when sale_type = '".SALE_TYPE_QUOTE."' THEN quote_number WHEN sale_type = '".SALE_TYPE_WORK_ORDER."' THEN work_order_number else sale_id end as doc_id, sale_status, sale_time, dinner_table_id, customer_id, employee_id, comment FROM " + . $this->db->prefixTable('sales') . ' where sale_status = '. SUSPENDED .' AND customer_id = ' . $customer_id); + } + + return $query->getResultArray() ?: []; + } + + /** + * Gets the dinner table for the selected sale + */ + public function get_dinner_table(int $sale_id) //TODO: this is returning null or the table_id. We can keep it this way but multiple return types can't be declared until PHP 8.x + { + if($sale_id == NEW_ENTRY) + { + return null; + } + + $builder = $this->db->table('sales'); + $builder->where('sale_id', $sale_id); + + return $builder->get()->getRow()->dinner_table_id; + } + + /** + * Gets the sale type for the selected sale + */ + public function get_sale_type(int $sale_id) + { + $builder = $this->db->table('sales'); + $builder->where('sale_id', $sale_id); + + return $builder->get()->getRow()->sale_type; + } + + /** + * Gets the sale status for the selected sale + */ + public function get_sale_status(int $sale_id): int + { + $builder = $this->db->table('sales'); + $builder->where('sale_id', $sale_id); + + return $builder->get()->getRow()->sale_status; + } + + /** + * @param int $sale_id + * @param int $sale_status + * @return void + */ + public function update_sale_status(int $sale_id, int $sale_status): void + { + $builder = $this->db->table('sales'); + + $builder->where('sale_id', $sale_id); + $builder->update(['sale_status' => $sale_status]); + } + + /** + * Gets the quote_number for the selected sale + */ + public function get_quote_number(int $sale_id): ?string + { + $builder = $this->db->table('sales'); + $builder->where('sale_id', $sale_id); + + $row = $builder->get()->getRow(); + + if($row != null) + { + return $row->quote_number; + } + + return null; + } + + /** + * Gets the work order number for the selected sale + */ + public function get_work_order_number(int $sale_id): ?string + { + $builder = $this->db->table('sales'); + $builder->where('sale_id', $sale_id); + + $row = $builder->get()->getRow(); + + if($row != null) //TODO: === ? + { + return $row->work_order_number; + } + + return null; + } + + /** + * Gets the quote_number for the selected sale + */ + public function get_comment(int $sale_id): ?string + { + $builder = $this->db->table('sales'); + $builder->where('sale_id', $sale_id); + + $row = $builder->get()->getRow(); + + if($row != null) //TODO: === ? + { + return $row->comment; + } + + return null; + } + + /** + * Gets total of suspended invoices rows + */ + public function get_suspended_invoice_count(): int + { + $builder = $this->db->table('sales'); + $builder->where('invoice_number IS NOT NULL'); + $builder->where('sale_status', SUSPENDED); + + return $builder->countAllResults(); + } + + /** + * Removes a selected sale from the sales table. + * This function should only be called for suspended sales that are being restored to the current cart + */ + public function delete_suspended_sale(int $sale_id): bool + { + //Run these queries as a transaction, we want to make sure we do all or nothing + $this->db->transStart(); + $config = config(OSPOS::class)->settings; + + if($config['dinner_table_enable']) + { + $dinner_table = model(Dinner_table::class); + $dinner_table_id = $this->get_dinner_table($sale_id); + $dinner_table->release($dinner_table_id); + } + + $this->update_sale_status($sale_id, CANCELED); + + $this->db->transComplete(); + + return $this->db->transStatus(); + } + + /** + * This clears the sales detail for a given sale_id before the detail is re-saved. + * This allows us to reuse the same sale_id + */ + public function clear_suspended_sale_detail(int $sale_id): bool + { + $this->db->transStart(); + $config = config(OSPOS::class)->settings; + + if($config['dinner_table_enable']) + { + $dinner_table = model(Dinner_table::class); + $dinner_table_id = $this->get_dinner_table($sale_id); + $dinner_table->release($dinner_table_id); + } + + $builder = $this->db->table('sales_payments'); + $builder->delete(['sale_id' => $sale_id]); + + $builder = $this->db->table('sales_items_taxes'); + $builder->delete(['sale_id' => $sale_id]); + + $builder = $this->db->table('sales_items'); + $builder->delete(['sale_id' => $sale_id]); + + $builder = $this->db->table('sales_taxes'); + $builder->delete(['sale_id' => $sale_id]); + + $this->db->transComplete(); + + return $this->db->transStatus(); + } + + /** + * Gets suspended sale info + */ + public function get_suspended_sale_info(int $sale_id): ResultInterface + { + $builder = $this->db->table('sales'); + $builder->where('sale_id', $sale_id); + $builder->join('people', 'people.person_id = sales.customer_id', 'LEFT'); + $builder->where('sale_status', SUSPENDED); + + return $builder->get(); + } + + /** + * @param int $customer_id + * @param int $sale_id + * @param float $total_amount + * @param float $total_amount_used + */ + private function save_customer_rewards(int $customer_id, int $sale_id, float $total_amount, float $total_amount_used): void + { + $config = config(OSPOS::class)->settings; + + if(!empty($customer_id) && $config['customer_reward_enable']) + { + $customer = model(Customer::class); + $customer_rewards = model(Customer_rewards::class); + $rewards = model(Rewards::class); + + $package_id = $customer->get_info($customer_id)->package_id; + + if(!empty($package_id)) + { + $points_percent = $customer_rewards->get_points_percent($package_id); + $points = $customer->get_info($customer_id)->points; + $points = ($points == null ? 0 : $points); + $points_percent = ($points_percent == null ? 0 : $points_percent); + $total_amount_earned = ($total_amount * $points_percent / 100); + $points = $points + $total_amount_earned; + + $customer->update_reward_points_value($customer_id, $points); + + $rewards_data = ['sale_id' => $sale_id, 'earned' => $total_amount_earned, 'used' => $total_amount_used]; + + $rewards->save_value($rewards_data); + } + } + } + + /** + * Creates a temporary table to store the sales_payments data + * + * @param string $where + * @return array + */ + private function create_temp_table_sales_payments_data(string $where): void + { + $builder = $this->db->table('sales_payments AS payments'); + $builder->select([ + 'payments.sale_id', + 'SUM(CASE WHEN `payments`.`cash_adjustment` = 0 THEN `payments`.`payment_amount` ELSE 0 END) AS sale_payment_amount', + 'SUM(CASE WHEN `payments`.`cash_adjustment` = 1 THEN `payments`.`payment_amount` ELSE 0 END) AS sale_cash_adjustment', + 'GROUP_CONCAT(CONCAT(`payments`.`payment_type`, " ", (`payments`.`payment_amount` - `payments`.`cash_refund`)) SEPARATOR ", ") AS payment_type' + ]); + $builder->join('sales', 'sales.sale_id = payments.sale_id', 'inner'); + $builder->where($where); + $builder->groupBy('payments.sale_id'); + + $sub_query = $builder->getCompiledSelect(); + log_message('error', $sub_query); + + $this->db->query('CREATE TEMPORARY TABLE IF NOT EXISTS ' + . $this->db->prefixTable('sales_payments_temp') + . ' (PRIMARY KEY(`sale_id`), INDEX(`sale_id`)) AS (' . $sub_query . ')'); + } + + /** + * Temporary table to store the sales_items_taxes data + * + * @param string $where + * @return \CodeIgniter\Database\BaseBuilder + */ + private function create_temp_table_sales_items_taxes_data(string $where): void + { + + $builder = $this->db->table('sales_items_taxes AS sales_items_taxes'); + $builder->select([ + 'sales_items_taxes.sale_id AS sale_id', + 'sales_items_taxes.item_id AS item_id', + 'sales_items_taxes.line AS line', + 'SUM(sales_items_taxes.item_tax_amount) AS tax', + 'SUM(CASE WHEN sales_items_taxes.tax_type = 0 THEN sales_items_taxes.item_tax_amount ELSE 0 END) AS internal_tax', + 'SUM(CASE WHEN sales_items_taxes.tax_type = 1 THEN sales_items_taxes.item_tax_amount ELSE 0 END) AS sales_tax' + ]); + $builder->join('sales', 'sales.sale_id = sales_items_taxes.sale_id', 'inner'); + $builder->join('sales_items', 'sales_items.sale_id = sales_items_taxes.sale_id AND sales_items.line = sales_items_taxes.line', 'inner'); + $builder->where($where); + $builder->groupBy(['sale_id', 'item_id', 'line']); + $sub_query = $builder->getCompiledSelect(); + + $this->db->query('CREATE TEMPORARY TABLE IF NOT EXISTS ' + . $this->db->prefixTable('sales_items_taxes_temp') + . ' (INDEX(sale_id), INDEX(item_id)) ENGINE=MEMORY AS (' . $sub_query . ')'); + } + + /** + * @param string $search + * @param array $filters + * @param BaseBuilder $builder + * @return void + */ + private function add_filters_to_query(string $search, array $filters, BaseBuilder $builder): void + { + if(!empty($search)) //TODO: this is duplicated code. We should think about refactoring out a method + { + if($filters['is_valid_receipt']) + { + $pieces = explode(' ', $search); + $builder->where('sales.sale_id', $pieces[1]); + } + else + { + $builder->groupStart(); + // customer last name + $builder->like('customer_p.last_name', $search); + // customer first name + $builder->orLike('customer_p.first_name', $search); + // customer first and last name + $builder->orLike('CONCAT(customer_p.first_name, " ", customer_p.last_name)', $search); + // customer company name + $builder->orLike('customer.company_name', $search); + $builder->groupEnd(); + } + } + + if($filters['location_id'] != 'all') + { + $builder->where('sales_items.item_location', $filters['location_id']); + } + + if($filters['selected_customer'] != false) + { + $sale_lib = new Sale_lib(); + $builder->where('sales.customer_id', $sale_lib->get_customer()); + } + + + if($filters['only_invoices']) + { + $builder->where('sales.invoice_number IS NOT NULL'); + } + + if($filters['only_cash']) + { + $builder->groupStart(); + $builder->like('payments.payment_type', lang('Sales.cash')); + $builder->orWhere('payments.payment_type IS NULL'); + $builder->groupEnd(); + } + + if($filters['only_creditcard']) + { + $builder->like('payments.payment_type', lang('Sales.credit')); + } + + if($filters['only_due']) + { + $builder->like('payments.payment_type', lang('Sales.due')); + } + + if($filters['only_check']) + { + $builder->like('payments.payment_type', lang('Sales.check')); + } + } } diff --git a/app/Models/Stock_location.php b/app/Models/Stock_location.php index e8b852d55..db5bdac47 100644 --- a/app/Models/Stock_location.php +++ b/app/Models/Stock_location.php @@ -16,273 +16,273 @@ use CodeIgniter\Session\Session; */ class Stock_location extends Model { - protected $table = 'stock_locations'; - protected $primaryKey = 'location_id'; - protected $useAutoIncrement = true; - protected $useSoftDeletes = false; - protected $allowedFields = [ - 'location_name', - 'deleted' - ]; + protected $table = 'stock_locations'; + protected $primaryKey = 'location_id'; + protected $useAutoIncrement = true; + protected $useSoftDeletes = false; + protected $allowedFields = [ + 'location_name', + 'deleted' + ]; - private Session $session; - private Employee $employee; + private Session $session; + private Employee $employee; - public function __construct() - { - parent::__construct(); + public function __construct() + { + parent::__construct(); - $this->session = session(); - } + $this->session = session(); + } - /** - * @param int $location_id - * @return bool - */ - public function exists(int $location_id = NEW_ENTRY): bool - { - $builder = $this->db->table('stock_locations'); - $builder->where('location_id', $location_id); + /** + * @param int $location_id + * @return bool + */ + public function exists(int $location_id = NEW_ENTRY): bool + { + $builder = $this->db->table('stock_locations'); + $builder->where('location_id', $location_id); - return ($builder->get()->getNumRows() >= 1); - } + return ($builder->get()->getNumRows() >= 1); + } - /** - * @return ResultInterface - */ - public function get_all(): ResultInterface - { - $builder = $this->db->table('stock_locations'); - $builder->where('deleted', 0); + /** + * @return ResultInterface + */ + public function get_all(): ResultInterface + { + $builder = $this->db->table('stock_locations'); + $builder->where('deleted', 0); - return $builder->get(); - } + return $builder->get(); + } - /** - * @param string $module_id - * @return ResultInterface - */ - public function get_undeleted_all(string $module_id = 'items'): ResultInterface - { - $builder = $this->db->table('stock_locations'); - $builder->join('permissions AS permissions', 'permissions.location_id = stock_locations.location_id'); - $builder->join('grants AS grants', 'grants.permission_id = permissions.permission_id'); - $builder->where('person_id', $this->session->get('person_id')); - $builder->like('permissions.permission_id', $module_id, 'after'); - $builder->where('deleted', 0); + /** + * @param string $module_id + * @return ResultInterface + */ + public function get_undeleted_all(string $module_id = 'items'): ResultInterface + { + $builder = $this->db->table('stock_locations'); + $builder->join('permissions AS permissions', 'permissions.location_id = stock_locations.location_id'); + $builder->join('grants AS grants', 'grants.permission_id = permissions.permission_id'); + $builder->where('person_id', $this->session->get('person_id')); + $builder->like('permissions.permission_id', $module_id, 'after'); + $builder->where('deleted', 0); - return $builder->get(); - } + return $builder->get(); + } - /** - * @param string $module_id - * @return bool - */ - public function show_locations(string $module_id = 'items'): bool - { - $stock_locations = $this->get_allowed_locations($module_id); + /** + * @param string $module_id + * @return bool + */ + public function show_locations(string $module_id = 'items'): bool + { + $stock_locations = $this->get_allowed_locations($module_id); - return count($stock_locations) > 1; - } + return count($stock_locations) > 1; + } - /** - * @return bool - */ - public function multiple_locations(): bool - { - return $this->get_all()->getNumRows() > 1; - } + /** + * @return bool + */ + public function multiple_locations(): bool + { + return $this->get_all()->getNumRows() > 1; + } - /** - * @param string $module_id - * @return array - */ - public function get_allowed_locations(string $module_id = 'items'): array - { - $stock = $this->get_undeleted_all($module_id)->getResultArray(); - $stock_locations = []; + /** + * @param string $module_id + * @return array + */ + public function get_allowed_locations(string $module_id = 'items'): array + { + $stock = $this->get_undeleted_all($module_id)->getResultArray(); + $stock_locations = []; - foreach($stock as $location_data) - { - $stock_locations[$location_data['location_id']] = $location_data['location_name']; - } + foreach($stock as $location_data) + { + $stock_locations[$location_data['location_id']] = $location_data['location_name']; + } - return $stock_locations; - } + return $stock_locations; + } - /** - * @param int $location_id - * @param string $module_id - * @return bool - */ - public function is_allowed_location(int $location_id, string $module_id = 'items'): bool - { - $builder = $this->db->table('stock_locations'); - $builder->join('permissions AS permissions', 'permissions.location_id = stock_locations.location_id'); - $builder->join('grants AS grants', 'grants.permission_id = permissions.permission_id'); - $builder->where('person_id', $this->session->get('person_id')); - $builder->like('permissions.permission_id', $module_id, 'after'); - $builder->where('stock_locations.location_id', $location_id); - $builder->where('deleted', 0); + /** + * @param int $location_id + * @param string $module_id + * @return bool + */ + public function is_allowed_location(int $location_id, string $module_id = 'items'): bool + { + $builder = $this->db->table('stock_locations'); + $builder->join('permissions AS permissions', 'permissions.location_id = stock_locations.location_id'); + $builder->join('grants AS grants', 'grants.permission_id = permissions.permission_id'); + $builder->where('person_id', $this->session->get('person_id')); + $builder->like('permissions.permission_id', $module_id, 'after'); + $builder->where('stock_locations.location_id', $location_id); + $builder->where('deleted', 0); - return ($builder->get()->getNumRows() == 1); //TODO: === - } + return ($builder->get()->getNumRows() == 1); //TODO: === + } - /** - * @param string $module_id - * @return int - */ - public function get_default_location_id(string $module_id = 'items'): int - { - $builder = $this->db->table('stock_locations'); - $builder->join('permissions AS permissions', 'permissions.location_id = stock_locations.location_id'); - $builder->join('grants AS grants', 'grants.permission_id = permissions.permission_id'); - $builder->where('person_id', $this->session->get('person_id')); - $builder->like('permissions.permission_id', $module_id, 'after'); - $builder->where('deleted', 0); - $builder->limit(1); + /** + * @param string $module_id + * @return int + */ + public function get_default_location_id(string $module_id = 'items'): int + { + $builder = $this->db->table('stock_locations'); + $builder->join('permissions AS permissions', 'permissions.location_id = stock_locations.location_id'); + $builder->join('grants AS grants', 'grants.permission_id = permissions.permission_id'); + $builder->where('person_id', $this->session->get('person_id')); + $builder->like('permissions.permission_id', $module_id, 'after'); + $builder->where('deleted', 0); + $builder->limit(1); - return $builder->get()->getRow()->location_id; //TODO: this is puking. Trying to get property 'location_id' of non-object - } + return $builder->get()->getRow()->location_id; //TODO: this is puking. Trying to get property 'location_id' of non-object + } - /** - * @param int $location_id - * @return string - */ - public function get_location_name(int $location_id): string - { - $builder = $this->db->table('stock_locations'); - $builder->where('location_id', $location_id); + /** + * @param int $location_id + * @return string + */ + public function get_location_name(int $location_id): string + { + $builder = $this->db->table('stock_locations'); + $builder->where('location_id', $location_id); - return $builder->get()->getRow()->location_name; - } + return $builder->get()->getRow()->location_name; + } - /** - * @param string $location_name - * @return int - */ - public function get_location_id(string $location_name): int - { - $builder = $this->db->table('stock_locations'); - $builder->where('location_name', $location_name); + /** + * @param string $location_name + * @return int + */ + public function get_location_id(string $location_name): int + { + $builder = $this->db->table('stock_locations'); + $builder->where('location_name', $location_name); - return $builder->get()->getRow()->location_id; - } + return $builder->get()->getRow()->location_id; + } - /** - * @param array $location_data - * @param int $location_id - * @return bool - */ - public function save_value(array &$location_data, int $location_id): bool - { - $location_name = $location_data['location_name']; + /** + * @param array $location_data + * @param int $location_id + * @return bool + */ + public function save_value(array &$location_data, int $location_id): bool + { + $location_name = $location_data['location_name']; - $location_data_to_save = ['location_name' => $location_name, 'deleted' => 0]; + $location_data_to_save = ['location_name' => $location_name, 'deleted' => 0]; - if(!$this->exists($location_id)) - { - $this->db->transStart(); + if(!$this->exists($location_id)) + { + $this->db->transStart(); - $builder = $this->db->table('stock_locations'); - $builder->insert($location_data_to_save); - $location_id = $this->db->insertID(); + $builder = $this->db->table('stock_locations'); + $builder->insert($location_data_to_save); + $location_id = $this->db->insertID(); - $this->_insert_new_permission('items', $location_id, $location_name); //TODO: need to refactor out the hungarian notation. - $this->_insert_new_permission('sales', $location_id, $location_name); - $this->_insert_new_permission('receivings', $location_id, $location_name); + $this->_insert_new_permission('items', $location_id, $location_name); //TODO: need to refactor out the hungarian notation. + $this->_insert_new_permission('sales', $location_id, $location_name); + $this->_insert_new_permission('receivings', $location_id, $location_name); - // insert quantities for existing items - $item = model(Item::class); - $builder = $this->db->table('item_quantities'); - $items = $item->get_all(); + // insert quantities for existing items + $item = model(Item::class); + $builder = $this->db->table('item_quantities'); + $items = $item->get_all(); - foreach($items->getResultArray() as $item) - { - $quantity_data = [ - 'item_id' => $item['item_id'], - 'location_id' => $location_id, - 'quantity' => 0 - ]; - $builder->insert($quantity_data); - } + foreach($items->getResultArray() as $item) + { + $quantity_data = [ + 'item_id' => $item['item_id'], + 'location_id' => $location_id, + 'quantity' => 0 + ]; + $builder->insert($quantity_data); + } - $this->db->transComplete(); + $this->db->transComplete(); - return $this->db->transStatus(); - } + return $this->db->transStatus(); + } - $original_location_name = $this->get_location_name($location_id); + $original_location_name = $this->get_location_name($location_id); - if($original_location_name != $location_name) - { - $builder = $this->db->table('permissions'); - $builder->delete(['location_id' => $location_id]); + if($original_location_name != $location_name) + { + $builder = $this->db->table('permissions'); + $builder->delete(['location_id' => $location_id]); - $this->_insert_new_permission('items', $location_id, $location_name); - $this->_insert_new_permission('sales', $location_id, $location_name); - $this->_insert_new_permission('receivings', $location_id, $location_name); - } + $this->_insert_new_permission('items', $location_id, $location_name); + $this->_insert_new_permission('sales', $location_id, $location_name); + $this->_insert_new_permission('receivings', $location_id, $location_name); + } - $builder = $this->db->table('stock_locations'); - $builder->where('location_id', $location_id); + $builder = $this->db->table('stock_locations'); + $builder->where('location_id', $location_id); - return $builder->update($location_data_to_save); - } + return $builder->update($location_data_to_save); + } - /** - * @param string $module - * @param int $location_id - * @param string $location_name - * @return void - */ - private function _insert_new_permission(string $module, int $location_id, string $location_name): void //TODO: refactor out hungarian notation - { - // insert new permission for stock location - $permission_id = $module . '_' . str_replace(' ', '_', $location_name); //TODO: String interpolation - $permission_data = ['permission_id' => $permission_id, 'module_id' => $module, 'location_id' => $location_id]; + /** + * @param string $module + * @param int $location_id + * @param string $location_name + * @return void + */ + private function _insert_new_permission(string $module, int $location_id, string $location_name): void //TODO: refactor out hungarian notation + { + // insert new permission for stock location + $permission_id = $module . '_' . str_replace(' ', '_', $location_name); //TODO: String interpolation + $permission_data = ['permission_id' => $permission_id, 'module_id' => $module, 'location_id' => $location_id]; - $builder = $this->db->table('permissions'); - $builder->insert($permission_data); + $builder = $this->db->table('permissions'); + $builder->insert($permission_data); - // insert grants for new permission - $employee = model(Employee::class); - $employees = $employee->get_all(); + // insert grants for new permission + $employee = model(Employee::class); + $employees = $employee->get_all(); - $builder = $this->db->table('grants'); + $builder = $this->db->table('grants'); - foreach($employees->getResultArray() as $employee) - { - $this->employee = model(Employee::class); + foreach($employees->getResultArray() as $employee) + { + $this->employee = model(Employee::class); - // Retrieve the menu_group assigned to the grant for the module and use that for the new stock locations - $menu_group = $this->employee->get_menu_group($module, $employee['person_id']); + // Retrieve the menu_group assigned to the grant for the module and use that for the new stock locations + $menu_group = $this->employee->get_menu_group($module, $employee['person_id']); - $grants_data = ['permission_id' => $permission_id, 'person_id' => $employee['person_id'], 'menu_group' => $menu_group]; + $grants_data = ['permission_id' => $permission_id, 'person_id' => $employee['person_id'], 'menu_group' => $menu_group]; - $builder->insert($grants_data); - } - } + $builder->insert($grants_data); + } + } - /** - * Deletes one item - * @param int|null $location_id - * @param bool $purge - * @return bool - */ - public function delete($location_id = null, bool $purge = false): bool - { - $this->db->transStart(); + /** + * Deletes one item + * @param int|null $location_id + * @param bool $purge + * @return bool + */ + public function delete($location_id = null, bool $purge = false): bool + { + $this->db->transStart(); - $builder = $this->db->table('stock_locations'); - $builder->where('location_id', $location_id); - $builder->update(['deleted' => 1]); + $builder = $this->db->table('stock_locations'); + $builder->where('location_id', $location_id); + $builder->update(['deleted' => 1]); - $builder = $this->db->table('permissions'); - $builder->delete(['location_id' => $location_id]); + $builder = $this->db->table('permissions'); + $builder->delete(['location_id' => $location_id]); - $this->db->transComplete(); + $this->db->transComplete(); - return $this->db->transStatus(); - } + return $this->db->transStatus(); + } } diff --git a/app/Models/Supplier.php b/app/Models/Supplier.php index 6bdc9618a..ccacf2645 100644 --- a/app/Models/Supplier.php +++ b/app/Models/Supplier.php @@ -9,330 +9,330 @@ use CodeIgniter\Database\ResultInterface; */ class Supplier extends Person { - protected $table = 'suppliers'; - protected $primaryKey = 'person_id'; - protected $useAutoIncrement = false; - protected $useSoftDeletes = false; - protected $allowedFields = [ - 'company_name', - 'account_number', - 'tax_id', - 'deleted', - 'agency_name', - 'category' - ]; + protected $table = 'suppliers'; + protected $primaryKey = 'person_id'; + protected $useAutoIncrement = false; + protected $useSoftDeletes = false; + protected $allowedFields = [ + 'company_name', + 'account_number', + 'tax_id', + 'deleted', + 'agency_name', + 'category' + ]; - /** - * Determines if a given person_id is a customer - */ - public function exists(int $person_id): bool - { - $builder = $this->db->table('suppliers'); - $builder->join('people', 'people.person_id = suppliers.person_id'); - $builder->where('suppliers.person_id', $person_id); + /** + * Determines if a given person_id is a customer + */ + public function exists(int $person_id): bool + { + $builder = $this->db->table('suppliers'); + $builder->join('people', 'people.person_id = suppliers.person_id'); + $builder->where('suppliers.person_id', $person_id); - return ($builder->get()->getNumRows() == 1); //TODO: === - } + return ($builder->get()->getNumRows() == 1); //TODO: === + } - /** - * Gets total of rows - */ - public function get_total_rows(): int - { - $builder = $this->db->table('suppliers'); - $builder->where('deleted', 0); + /** + * Gets total of rows + */ + public function get_total_rows(): int + { + $builder = $this->db->table('suppliers'); + $builder->where('deleted', 0); - return $builder->countAllResults(); - } + return $builder->countAllResults(); + } - /** - * Returns all the suppliers - */ - public function get_all(int $limit = 0, int $offset = 0, int $category = GOODS_SUPPLIER): ResultInterface - { - $builder = $this->db->table('suppliers'); - $builder->join('people', 'suppliers.person_id = people.person_id'); - $builder->where('category', $category); - $builder->where('deleted', 0); - $builder->orderBy('company_name', 'asc'); + /** + * Returns all the suppliers + */ + public function get_all(int $limit = 0, int $offset = 0, int $category = GOODS_SUPPLIER): ResultInterface + { + $builder = $this->db->table('suppliers'); + $builder->join('people', 'suppliers.person_id = people.person_id'); + $builder->where('category', $category); + $builder->where('deleted', 0); + $builder->orderBy('company_name', 'asc'); - if($limit > 0) - { - $builder->limit($limit, $offset); - } + if($limit > 0) + { + $builder->limit($limit, $offset); + } - return $builder->get(); - } + return $builder->get(); + } - /** - * Gets information about a particular supplier - */ - public function get_info(?int $person_id): object - { - $builder = $this->db->table('suppliers'); - $builder->join('people', 'people.person_id = suppliers.person_id'); - $builder->where('suppliers.person_id', $person_id); - $query = $builder->get(); + /** + * Gets information about a particular supplier + */ + public function get_info(?int $person_id): object + { + $builder = $this->db->table('suppliers'); + $builder->join('people', 'people.person_id = suppliers.person_id'); + $builder->where('suppliers.person_id', $person_id); + $query = $builder->get(); - if($query->getNumRows() == 1) //TODO: === - { - return $query->getRow(); - } - else - { - //Get empty base parent object, as $supplier_id is NOT a supplier - $person_obj = parent::get_info(NEW_ENTRY); + if($query->getNumRows() == 1) //TODO: === + { + return $query->getRow(); + } + else + { + //Get empty base parent object, as $supplier_id is NOT a supplier + $person_obj = parent::get_info(NEW_ENTRY); - //Get all the fields from supplier table - //append those fields to base parent object, we have a complete empty object - foreach($this->db->getFieldNames('suppliers') as $field) - { - $person_obj->$field = ''; - } + //Get all the fields from supplier table + //append those fields to base parent object, we have a complete empty object + foreach($this->db->getFieldNames('suppliers') as $field) + { + $person_obj->$field = ''; + } - return $person_obj; - } - } + return $person_obj; + } + } - /** - * Gets information about multiple suppliers - */ - public function get_multiple_info(array $person_ids): ResultInterface - { - $builder = $this->db->table('suppliers'); - $builder->join('people', 'people.person_id = suppliers.person_id'); - $builder->whereIn('suppliers.person_id', $person_ids); - $builder->orderBy('last_name', 'asc'); + /** + * Gets information about multiple suppliers + */ + public function get_multiple_info(array $person_ids): ResultInterface + { + $builder = $this->db->table('suppliers'); + $builder->join('people', 'people.person_id = suppliers.person_id'); + $builder->whereIn('suppliers.person_id', $person_ids); + $builder->orderBy('last_name', 'asc'); - return $builder->get(); - } + return $builder->get(); + } - /** - * Inserts or updates a suppliers - */ - public function save_supplier(array &$person_data, array &$supplier_data, int $supplier_id = NEW_ENTRY): bool - { - $success = false; + /** + * Inserts or updates a suppliers + */ + public function save_supplier(array &$person_data, array &$supplier_data, int $supplier_id = NEW_ENTRY): bool + { + $success = false; - //Run these queries as a transaction, we want to make sure we do all or nothing - $this->db->transStart(); + //Run these queries as a transaction, we want to make sure we do all or nothing + $this->db->transStart(); - if(parent::save_value($person_data,$supplier_id)) - { - $builder = $this->db->table('suppliers'); - if($supplier_id == NEW_ENTRY || !$this->exists($supplier_id)) - { - $supplier_data['person_id'] = $person_data['person_id']; - $success = $builder->insert($supplier_data); - } - else - { - $builder->where('person_id', $supplier_id); - $success = $builder->update($supplier_data); - } - } + if(parent::save_value($person_data,$supplier_id)) + { + $builder = $this->db->table('suppliers'); + if($supplier_id == NEW_ENTRY || !$this->exists($supplier_id)) + { + $supplier_data['person_id'] = $person_data['person_id']; + $success = $builder->insert($supplier_data); + } + else + { + $builder->where('person_id', $supplier_id); + $success = $builder->update($supplier_data); + } + } - $this->db->transComplete(); + $this->db->transComplete(); - $success &= $this->db->transStatus(); + $success &= $this->db->transStatus(); - return $success; - } + return $success; + } - /** - * Deletes one supplier - */ - public function delete($supplier_id = null, bool $purge = false): bool - { - $builder = $this->db->table('suppliers'); - $builder->where('person_id', $supplier_id); + /** + * Deletes one supplier + */ + public function delete($supplier_id = null, bool $purge = false): bool + { + $builder = $this->db->table('suppliers'); + $builder->where('person_id', $supplier_id); - return $builder->update(['deleted' => 1]); - } + return $builder->update(['deleted' => 1]); + } - /** - * Deletes a list of suppliers - */ - public function delete_list(array $person_ids): bool - { - $builder = $this->db->table('suppliers'); - $builder->whereIn('person_id', $person_ids); + /** + * Deletes a list of suppliers + */ + public function delete_list(array $person_ids): bool + { + $builder = $this->db->table('suppliers'); + $builder->whereIn('person_id', $person_ids); - return $builder->update(['deleted' => 1]); - } + return $builder->update(['deleted' => 1]); + } - /** - * Get search suggestions to find suppliers - */ - public function get_search_suggestions(string $search, int $limit = 25, bool $unique = false): array //TODO: Parent is looking for the 2nd parameter to be an int - { - $suggestions = []; + /** + * Get search suggestions to find suppliers + */ + public function get_search_suggestions(string $search, int $limit = 25, bool $unique = false): array //TODO: Parent is looking for the 2nd parameter to be an int + { + $suggestions = []; - $builder = $this->db->table('suppliers'); - $builder->join('people', 'suppliers.person_id = people.person_id'); - $builder->where('deleted', 0); - $builder->like('company_name', $search); - $builder->orderBy('company_name', 'asc'); + $builder = $this->db->table('suppliers'); + $builder->join('people', 'suppliers.person_id = people.person_id'); + $builder->where('deleted', 0); + $builder->like('company_name', $search); + $builder->orderBy('company_name', 'asc'); - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = ['value' => $row->person_id, 'label' => $row->company_name]; - } + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = ['value' => $row->person_id, 'label' => $row->company_name]; + } - $builder = $this->db->table('suppliers'); - $builder->join('people', 'suppliers.person_id = people.person_id'); - $builder->where('deleted', 0); - $builder->distinct(); - $builder->like('agency_name', $search); - $builder->where('agency_name IS NOT NULL'); - $builder->orderBy('agency_name', 'asc'); + $builder = $this->db->table('suppliers'); + $builder->join('people', 'suppliers.person_id = people.person_id'); + $builder->where('deleted', 0); + $builder->distinct(); + $builder->like('agency_name', $search); + $builder->where('agency_name IS NOT NULL'); + $builder->orderBy('agency_name', 'asc'); - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = ['value' => $row->person_id, 'label' => $row->agency_name]; - } + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = ['value' => $row->person_id, 'label' => $row->agency_name]; + } - $builder = $this->db->table('suppliers'); - $builder->join('people', 'suppliers.person_id = people.person_id'); - $builder->groupStart(); - $builder->like('first_name', $search); - $builder->orLike('last_name', $search); - $builder->orLike('CONCAT(first_name, " ", last_name)', $search); - $builder->groupEnd(); - $builder->where('deleted', 0); - $builder->orderBy('last_name', 'asc'); + $builder = $this->db->table('suppliers'); + $builder->join('people', 'suppliers.person_id = people.person_id'); + $builder->groupStart(); + $builder->like('first_name', $search); + $builder->orLike('last_name', $search); + $builder->orLike('CONCAT(first_name, " ", last_name)', $search); + $builder->groupEnd(); + $builder->where('deleted', 0); + $builder->orderBy('last_name', 'asc'); - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = ['value' => $row->person_id, 'label' => $row->first_name . ' ' . $row->last_name]; - } + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = ['value' => $row->person_id, 'label' => $row->first_name . ' ' . $row->last_name]; + } - if(!$unique) - { - $builder = $this->db->table('suppliers'); - $builder->join('people', 'suppliers.person_id = people.person_id'); - $builder->where('deleted', 0); - $builder->like('email', $search); - $builder->orderBy('email', 'asc'); + if(!$unique) + { + $builder = $this->db->table('suppliers'); + $builder->join('people', 'suppliers.person_id = people.person_id'); + $builder->where('deleted', 0); + $builder->like('email', $search); + $builder->orderBy('email', 'asc'); - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = ['value' => $row->person_id, 'label' => $row->email]; - } + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = ['value' => $row->person_id, 'label' => $row->email]; + } - $builder = $this->db->table('suppliers'); - $builder->join('people', 'suppliers.person_id = people.person_id'); - $builder->where('deleted', 0); - $builder->like('phone_number', $search); - $builder->orderBy('phone_number', 'asc'); + $builder = $this->db->table('suppliers'); + $builder->join('people', 'suppliers.person_id = people.person_id'); + $builder->where('deleted', 0); + $builder->like('phone_number', $search); + $builder->orderBy('phone_number', 'asc'); - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = ['value' => $row->person_id, 'label' => $row->phone_number]; - } + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = ['value' => $row->person_id, 'label' => $row->phone_number]; + } - $builder = $this->db->table('suppliers'); - $builder->join('people', 'suppliers.person_id = people.person_id'); - $builder->where('deleted', 0); - $builder->like('account_number', $search); - $builder->orderBy('account_number', 'asc'); + $builder = $this->db->table('suppliers'); + $builder->join('people', 'suppliers.person_id = people.person_id'); + $builder->where('deleted', 0); + $builder->like('account_number', $search); + $builder->orderBy('account_number', 'asc'); - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = ['value' => $row->person_id, 'label' => $row->account_number]; - } - } + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = ['value' => $row->person_id, 'label' => $row->account_number]; + } + } - //only return $limit suggestions - if(count($suggestions) > $limit) //TODO: this can be replaced with return count($suggestions) > $limit ? array_slice($suggestions, 0, $limit) : $suggestions - { - $suggestions = array_slice($suggestions, 0, $limit); - } + //only return $limit suggestions + if(count($suggestions) > $limit) //TODO: this can be replaced with return count($suggestions) > $limit ? array_slice($suggestions, 0, $limit) : $suggestions + { + $suggestions = array_slice($suggestions, 0, $limit); + } - return $suggestions; - } + return $suggestions; + } - /** - * Gets rows - */ - public function get_found_rows(string $search): int - { - return $this->search($search, 0, 0, 'last_name', 'asc', true); - } + /** + * Gets rows + */ + public function get_found_rows(string $search): int + { + return $this->search($search, 0, 0, 'last_name', 'asc', true); + } - /** - * Perform a search on suppliers - */ - public function search(string $search, ?int $rows = 25, ?int $limit_from = 0, ?string $sort = 'last_name', ?string $order = 'asc', ?bool $count_only = false) - { - //Set default values on null - $rows = $rows ?? 25; - $limit_from = $limit_from ?? 0; - $sort = $sort ?? 'last_name'; - $order = $order ?? 'asc'; - $count_only = $count_only ?? false; + /** + * Perform a search on suppliers + */ + public function search(string $search, ?int $rows = 25, ?int $limit_from = 0, ?string $sort = 'last_name', ?string $order = 'asc', ?bool $count_only = false) + { + //Set default values on null + $rows = $rows ?? 25; + $limit_from = $limit_from ?? 0; + $sort = $sort ?? 'last_name'; + $order = $order ?? 'asc'; + $count_only = $count_only ?? false; - $builder = $this->db->table('suppliers AS suppliers'); + $builder = $this->db->table('suppliers AS suppliers'); - //get_found_rows case - if($count_only) - { - $builder->select('COUNT(suppliers.person_id) as count'); - } + //get_found_rows case + if($count_only) + { + $builder->select('COUNT(suppliers.person_id) as count'); + } - $builder->join('people', 'suppliers.person_id = people.person_id'); - $builder->groupStart(); - $builder->like('first_name', $search); - $builder->orLike('last_name', $search); - $builder->orLike('company_name', $search); - $builder->orLike('agency_name', $search); - $builder->orLike('email', $search); - $builder->orLike('phone_number', $search); - $builder->orLike('account_number', $search); - $builder->orLike('CONCAT(first_name, " ", last_name)', $search); //TODO: According to PHPStorm, this line down to the return is repeated in Customer.php and Employee.php... perhaps refactoring a method in a library could be helpful? - $builder->groupEnd(); - $builder->where('deleted', 0); + $builder->join('people', 'suppliers.person_id = people.person_id'); + $builder->groupStart(); + $builder->like('first_name', $search); + $builder->orLike('last_name', $search); + $builder->orLike('company_name', $search); + $builder->orLike('agency_name', $search); + $builder->orLike('email', $search); + $builder->orLike('phone_number', $search); + $builder->orLike('account_number', $search); + $builder->orLike('CONCAT(first_name, " ", last_name)', $search); //TODO: According to PHPStorm, this line down to the return is repeated in Customer.php and Employee.php... perhaps refactoring a method in a library could be helpful? + $builder->groupEnd(); + $builder->where('deleted', 0); - if($count_only) - { - return $builder->get()->getRow()->count; - } + if($count_only) + { + return $builder->get()->getRow()->count; + } - $builder->orderBy($sort, $order); + $builder->orderBy($sort, $order); - if($rows > 0) - { - $builder->limit($rows, $limit_from); - } + if($rows > 0) + { + $builder->limit($rows, $limit_from); + } - return $builder->get(); - } + return $builder->get(); + } - /** - * Return supplier categories - */ - public function get_categories(): array - { - return [ - GOODS_SUPPLIER => lang('Suppliers.goods'), - COST_SUPPLIER => lang('Suppliers.cost') - ]; - } + /** + * Return supplier categories + */ + public function get_categories(): array + { + return [ + GOODS_SUPPLIER => lang('Suppliers.goods'), + COST_SUPPLIER => lang('Suppliers.cost') + ]; + } - /** - * Return a category name given its id. - * @param int $supplier_type Constant representing the type of supplier. - * @return string Language string for the given supplier type. - */ - public function get_category_name(int $supplier_type): string - { - if($supplier_type == 0) - { - return lang('Suppliers.goods'); - } - else - { - return lang('Suppliers.cost'); - } - } + /** + * Return a category name given its id. + * @param int $supplier_type Constant representing the type of supplier. + * @return string Language string for the given supplier type. + */ + public function get_category_name(int $supplier_type): string + { + if($supplier_type == 0) + { + return lang('Suppliers.goods'); + } + else + { + return lang('Suppliers.cost'); + } + } } diff --git a/app/Models/Tax.php b/app/Models/Tax.php index 460135400..02f11b28e 100644 --- a/app/Models/Tax.php +++ b/app/Models/Tax.php @@ -11,319 +11,319 @@ use stdClass; */ class Tax extends Model { - protected $table = 'tax_rates'; - protected $primaryKey = 'tax_rate_id'; - protected $useAutoIncrement = true; - protected $useSoftDeletes = false; - protected $allowedFields = [ - 'rate_tax_code_id', - 'rate_tax_category_id', - 'rate_jurisdiction_id', - 'tax_rate', - 'tax_rounding_code' - ]; + protected $table = 'tax_rates'; + protected $primaryKey = 'tax_rate_id'; + protected $useAutoIncrement = true; + protected $useSoftDeletes = false; + protected $allowedFields = [ + 'rate_tax_code_id', + 'rate_tax_category_id', + 'rate_jurisdiction_id', + 'tax_rate', + 'tax_rounding_code' + ]; - /** - * Determines if a given row is on file - */ - public function exists(int $tax_rate_id): bool - { - $builder = $this->db->table('tax_rates'); - $builder->where('tax_rate_id', $tax_rate_id); + /** + * Determines if a given row is on file + */ + public function exists(int $tax_rate_id): bool + { + $builder = $this->db->table('tax_rates'); + $builder->where('tax_rate_id', $tax_rate_id); - return ($builder->get()->getNumRows() == 1); //TODO: === - } + return ($builder->get()->getNumRows() == 1); //TODO: === + } - /** - * Gets total of rows - */ - public function get_total_rows(): int - { - $builder = $this->db->table('tax_rates'); + /** + * Gets total of rows + */ + public function get_total_rows(): int + { + $builder = $this->db->table('tax_rates'); - return $builder->countAllResults(); - } + return $builder->countAllResults(); + } - /** - * Gets list of tax rates that are assigned to a particular tax category - */ - public function get_tax_category_usage(int $tax_category_id): int - { - $builder = $this->db->table('tax_rates'); - $builder->where('rate_tax_category_id', $tax_category_id); + /** + * Gets list of tax rates that are assigned to a particular tax category + */ + public function get_tax_category_usage(int $tax_category_id): int + { + $builder = $this->db->table('tax_rates'); + $builder->where('rate_tax_category_id', $tax_category_id); - return $builder->countAllResults(); - } + return $builder->countAllResults(); + } - /** - * Gets the row for a particular id - */ - public function get_info(int $tax_rate_id): object - { - $builder = $this->db->table('tax_rates'); - $builder->select('tax_rate_id'); - $builder->select('rate_tax_code_id'); - $builder->select('tax_code'); - $builder->select('tax_code_name'); - $builder->select('rate_jurisdiction_id'); - $builder->select('jurisdiction_name'); - $builder->select('rate_tax_category_id'); - $builder->select('tax_category'); - $builder->select('tax_rate'); - $builder->select('tax_rounding_code'); + /** + * Gets the row for a particular id + */ + public function get_info(int $tax_rate_id): object + { + $builder = $this->db->table('tax_rates'); + $builder->select('tax_rate_id'); + $builder->select('rate_tax_code_id'); + $builder->select('tax_code'); + $builder->select('tax_code_name'); + $builder->select('rate_jurisdiction_id'); + $builder->select('jurisdiction_name'); + $builder->select('rate_tax_category_id'); + $builder->select('tax_category'); + $builder->select('tax_rate'); + $builder->select('tax_rounding_code'); - $builder->join('tax_codes', - 'rate_tax_code_id = tax_code_id', 'LEFT'); - $builder->join('tax_categories', - 'rate_tax_category_id = tax_category_id', 'LEFT'); - $builder->join('tax_jurisdictions', - 'rate_jurisdiction_id = jurisdiction_id', 'LEFT'); - $builder->where('tax_rate_id', $tax_rate_id); + $builder->join('tax_codes', + 'rate_tax_code_id = tax_code_id', 'LEFT'); + $builder->join('tax_categories', + 'rate_tax_category_id = tax_category_id', 'LEFT'); + $builder->join('tax_jurisdictions', + 'rate_jurisdiction_id = jurisdiction_id', 'LEFT'); + $builder->where('tax_rate_id', $tax_rate_id); - $query = $builder->get(); + $query = $builder->get(); - if($query->getNumRows() == 1) //TODO: probably should use === here since getNumRows() returns an int. - { - return $query->getRow(); - } - else - { - //Get empty base parent object - $tax_rate_obj = new stdClass(); - $tax_rate_obj->tax_rate_id = null; - $tax_rate_obj->rate_tax_code_id = null; - $tax_rate_obj->tax_code = ''; - $tax_rate_obj->tax_code_name = ''; - $tax_rate_obj->rate_tax_category_id = null; - $tax_rate_obj->tax_category = ''; - $tax_rate_obj->tax_rate = 0.0; - $tax_rate_obj->tax_rounding_code = '0'; - $tax_rate_obj->rate_jurisdiction_id = null; - $tax_rate_obj->jurisdiction_name = ''; + if($query->getNumRows() == 1) //TODO: probably should use === here since getNumRows() returns an int. + { + return $query->getRow(); + } + else + { + //Get empty base parent object + $tax_rate_obj = new stdClass(); + $tax_rate_obj->tax_rate_id = null; + $tax_rate_obj->rate_tax_code_id = null; + $tax_rate_obj->tax_code = ''; + $tax_rate_obj->tax_code_name = ''; + $tax_rate_obj->rate_tax_category_id = null; + $tax_rate_obj->tax_category = ''; + $tax_rate_obj->tax_rate = 0.0; + $tax_rate_obj->tax_rounding_code = '0'; + $tax_rate_obj->rate_jurisdiction_id = null; + $tax_rate_obj->jurisdiction_name = ''; - return $tax_rate_obj; - } - } + return $tax_rate_obj; + } + } - /** - * Get taxes to be collected for a given tax code - */ - public function get_taxes(int $tax_code_id, int $tax_category_id): array - { - $sql = 'select tax_rate_id, rate_tax_code_id, tax_code, tax_code_name, tax_type, cascade_sequence, rate_tax_category_id, tax_category, - rate_jurisdiction_id, jurisdiction_name, tax_group, tax_rate, tax_rounding_code,tax_categories.tax_group_sequence + tax_jurisdictions.tax_group_sequence as tax_group_sequence - from ' . $this->db->prefixTable('tax_rates') . ' - left outer join ' . $this->db->prefixTable('tax_codes') . ' on rate_tax_code_id = tax_code_id - left outer join ' . $this->db->prefixTable('tax_categories') . ' as tax_categories on rate_tax_category_id = tax_category_id - left outer join ' . $this->db->prefixTable('tax_jurisdictions') . ' as tax_jurisdictions on rate_jurisdiction_id = jurisdiction_id - where rate_tax_code_id = ' . $this->db->escape($tax_code_id) . ' and rate_tax_category_id = ' . $this->db->escape($tax_category_id) . ' - order by cascade_sequence, tax_group, jurisdiction_name, tax_jurisdictions.tax_group_sequence + tax_categories.tax_group_sequence'; + /** + * Get taxes to be collected for a given tax code + */ + public function get_taxes(int $tax_code_id, int $tax_category_id): array + { + $sql = 'select tax_rate_id, rate_tax_code_id, tax_code, tax_code_name, tax_type, cascade_sequence, rate_tax_category_id, tax_category, + rate_jurisdiction_id, jurisdiction_name, tax_group, tax_rate, tax_rounding_code,tax_categories.tax_group_sequence + tax_jurisdictions.tax_group_sequence as tax_group_sequence + from ' . $this->db->prefixTable('tax_rates') . ' + left outer join ' . $this->db->prefixTable('tax_codes') . ' on rate_tax_code_id = tax_code_id + left outer join ' . $this->db->prefixTable('tax_categories') . ' as tax_categories on rate_tax_category_id = tax_category_id + left outer join ' . $this->db->prefixTable('tax_jurisdictions') . ' as tax_jurisdictions on rate_jurisdiction_id = jurisdiction_id + where rate_tax_code_id = ' . $this->db->escape($tax_code_id) . ' and rate_tax_category_id = ' . $this->db->escape($tax_category_id) . ' + order by cascade_sequence, tax_group, jurisdiction_name, tax_jurisdictions.tax_group_sequence + tax_categories.tax_group_sequence'; - $query = $this->db->query($sql); + $query = $this->db->query($sql); - return $query->getResultArray() ?: []; - } + return $query->getResultArray() ?: []; + } - /** - * Gets information about a particular tax_code - */ - public function get_rate_info(int $tax_code_id, int $tax_category_id): object - { - $builder = $this->db->table('tax_rates'); - $builder->join('tax_categories', 'rate_tax_category_id = tax_category_id'); - $builder->where('rate_tax_code_id', $tax_code_id); - $builder->where('rate_tax_category_id', $tax_category_id); + /** + * Gets information about a particular tax_code + */ + public function get_rate_info(int $tax_code_id, int $tax_category_id): object + { + $builder = $this->db->table('tax_rates'); + $builder->join('tax_categories', 'rate_tax_category_id = tax_category_id'); + $builder->where('rate_tax_code_id', $tax_code_id); + $builder->where('rate_tax_category_id', $tax_category_id); - $query = $builder->get(); + $query = $builder->get(); - if($query->getNumRows() == 1) //TODO: this should probably be === - { - return $query->getRow(); - } - else - { - //Get empty base parent object - $tax_rate_obj = new stdClass(); + if($query->getNumRows() == 1) //TODO: this should probably be === + { + return $query->getRow(); + } + else + { + //Get empty base parent object + $tax_rate_obj = new stdClass(); - //Get all the fields from tax_codes table - foreach($this->db->getFieldNames('tax_rates') as $field) - { - $tax_rate_obj->$field = ''; - } - //Get all the fields from tax_rates table - foreach($this->db->getFieldNames('tax_categories') as $field) - { - $tax_rate_obj->$field = ''; - } + //Get all the fields from tax_codes table + foreach($this->db->getFieldNames('tax_rates') as $field) + { + $tax_rate_obj->$field = ''; + } + //Get all the fields from tax_rates table + foreach($this->db->getFieldNames('tax_categories') as $field) + { + $tax_rate_obj->$field = ''; + } - return $tax_rate_obj; - } - } + return $tax_rate_obj; + } + } - /** - Inserts or updates a tax_rates entry - */ - public function save_value(array &$tax_rate_data, int $tax_rate_id = NEW_ENTRY): bool - { - $builder = $this->db->table('tax_rates'); - if($tax_rate_id == NEW_ENTRY || !$this->exists($tax_rate_id)) - { - if($builder->insert($tax_rate_data)) - { - $tax_rate_data['tax_rate_id'] = $this->db->insertID(); + /** + Inserts or updates a tax_rates entry + */ + public function save_value(array &$tax_rate_data, int $tax_rate_id = NEW_ENTRY): bool + { + $builder = $this->db->table('tax_rates'); + if($tax_rate_id == NEW_ENTRY || !$this->exists($tax_rate_id)) + { + if($builder->insert($tax_rate_data)) + { + $tax_rate_data['tax_rate_id'] = $this->db->insertID(); - return true; - } - } - else - { - $builder->where('tax_rate_id', $tax_rate_id); + return true; + } + } + else + { + $builder->where('tax_rate_id', $tax_rate_id); - if($builder->update($tax_rate_data)) - { - return true; - } - } + if($builder->update($tax_rate_data)) + { + return true; + } + } - return false; - } + return false; + } - /** - * Deletes a single tax rate entry - */ - public function delete($tax_rate_id = null, bool $purge = false): bool - { - $builder = $this->db->table('tax_rates'); + /** + * Deletes a single tax rate entry + */ + public function delete($tax_rate_id = null, bool $purge = false): bool + { + $builder = $this->db->table('tax_rates'); - return $builder->delete(['tax_rate_id' => $tax_rate_id]); - } + return $builder->delete(['tax_rate_id' => $tax_rate_id]); + } - /** - * Deletes a list of tax rates - */ - public function delete_list(array $tax_rate_ids): bool - { - $builder = $this->db->table('tax_rates'); - $builder->whereIn('tax_rate_id', $tax_rate_ids); + /** + * Deletes a list of tax rates + */ + public function delete_list(array $tax_rate_ids): bool + { + $builder = $this->db->table('tax_rates'); + $builder->whereIn('tax_rate_id', $tax_rate_ids); - return $builder->delete(); - } + return $builder->delete(); + } - /** - * Gets tax_codes - */ - public function get_found_rows(string $search): int - { - return $this->search($search, 0, 0, 'tax_code_name', 'asc', true); - } + /** + * Gets tax_codes + */ + public function get_found_rows(string $search): int + { + return $this->search($search, 0, 0, 'tax_code_name', 'asc', true); + } - /** - * Performs a search on tax_rates - */ - public function search(string $search, ?int $rows = 0, ?int $limit_from = 0, ?string $sort = 'tax_code_name', ?string $order = 'asc', ?bool $count_only = false) - { - // Set default values - if($rows == null) $rows = 0; - if($limit_from == null) $limit_from = 0; - if($sort == null) $sort = 'tax_code_name'; - if($order == null) $order = 'asc'; - if($count_only == null) $count_only = false; + /** + * Performs a search on tax_rates + */ + public function search(string $search, ?int $rows = 0, ?int $limit_from = 0, ?string $sort = 'tax_code_name', ?string $order = 'asc', ?bool $count_only = false) + { + // Set default values + if($rows == null) $rows = 0; + if($limit_from == null) $limit_from = 0; + if($sort == null) $sort = 'tax_code_name'; + if($order == null) $order = 'asc'; + if($count_only == null) $count_only = false; - $builder = $this->db->table('tax_rates'); + $builder = $this->db->table('tax_rates'); - // get_found_rows case - if($count_only) - { - $builder->select('COUNT(tax_rate_id) as count'); - } else - { - $builder->select('tax_rate_id'); - $builder->select('tax_code'); - $builder->select('rate_tax_code_id'); - $builder->select('tax_code_name'); - $builder->select('rate_jurisdiction_id'); - $builder->select('jurisdiction_name'); - $builder->select('rate_tax_category_id'); - $builder->select('tax_category'); - $builder->select('tax_rate'); - $builder->select('tax_rounding_code'); - } + // get_found_rows case + if($count_only) + { + $builder->select('COUNT(tax_rate_id) as count'); + } else + { + $builder->select('tax_rate_id'); + $builder->select('tax_code'); + $builder->select('rate_tax_code_id'); + $builder->select('tax_code_name'); + $builder->select('rate_jurisdiction_id'); + $builder->select('jurisdiction_name'); + $builder->select('rate_tax_category_id'); + $builder->select('tax_category'); + $builder->select('tax_rate'); + $builder->select('tax_rounding_code'); + } - $builder->join('tax_codes', 'rate_tax_code_id = tax_code_id', 'LEFT'); - $builder->join('tax_categories', 'rate_tax_category_id = tax_category_id', 'LEFT'); - $builder->join('tax_jurisdictions', 'rate_jurisdiction_id = jurisdiction_id', 'LEFT'); + $builder->join('tax_codes', 'rate_tax_code_id = tax_code_id', 'LEFT'); + $builder->join('tax_categories', 'rate_tax_category_id = tax_category_id', 'LEFT'); + $builder->join('tax_jurisdictions', 'rate_jurisdiction_id = jurisdiction_id', 'LEFT'); - if(!empty($search)) - { - $builder->like('rate_tax_code', $search); - $builder->orLike('tax_code_name', $search); - } + if(!empty($search)) + { + $builder->like('rate_tax_code', $search); + $builder->orLike('tax_code_name', $search); + } - // get_found_rows case - if($count_only) - { - return $builder->get()->getRow()->count; - } + // get_found_rows case + if($count_only) + { + return $builder->get()->getRow()->count; + } - $builder->orderBy($sort, $order); + $builder->orderBy($sort, $order); - if($rows > 0) - { - $builder->limit($rows, $limit_from); - } + if($rows > 0) + { + $builder->limit($rows, $limit_from); + } - return $builder->get(); - } + return $builder->get(); + } - /** - * @param string $tax_code_type - * @return string - */ - public function get_tax_code_type_name(string $tax_code_type): string //TODO: if this is being called from the view and passed through GET params then it will come through as a string... better if we can get it as an int though. - { - if($tax_code_type == '0') //TODO: ===. Also, replace this with ternary notation. The whole function becomes a nice one-liner. - { - return lang('Taxes.tax_included'); - } - else - { - return lang('Taxes.tax_excluded'); - } - } + /** + * @param string $tax_code_type + * @return string + */ + public function get_tax_code_type_name(string $tax_code_type): string //TODO: if this is being called from the view and passed through GET params then it will come through as a string... better if we can get it as an int though. + { + if($tax_code_type == '0') //TODO: ===. Also, replace this with ternary notation. The whole function becomes a nice one-liner. + { + return lang('Taxes.tax_included'); + } + else + { + return lang('Taxes.tax_excluded'); + } + } - /** - * @param int $tax_category_id - * @return string - */ - public function get_tax_category(int $tax_category_id): string - { - $builder = $this->db->table('tax_categories'); - $builder->select('tax_category'); - $builder->where('tax_category_id', $tax_category_id); + /** + * @param int $tax_category_id + * @return string + */ + public function get_tax_category(int $tax_category_id): string + { + $builder = $this->db->table('tax_categories'); + $builder->select('tax_category'); + $builder->where('tax_category_id', $tax_category_id); - return $builder->get()->getRow()->tax_category; - } + return $builder->get()->getRow()->tax_category; + } - /** - * @return ResultInterface - */ - public function get_all_tax_categories(): ResultInterface - { - $builder = $this->db->table('tax_categories'); - $builder->orderBy('tax_category_id'); + /** + * @return ResultInterface + */ + public function get_all_tax_categories(): ResultInterface + { + $builder = $this->db->table('tax_categories'); + $builder->orderBy('tax_category_id'); - return $builder->get(); - } + return $builder->get(); + } - /** - * @param string $tax_category - * @return int - */ - public function get_tax_category_id(string $tax_category): int //TODO: $tax_category is not used in this function and get_tax_category_id() is not called in the code. It may be that this needs to be deprecated and removed. - { - $builder = $this->db->table('tax_categories'); - $builder->select('tax_category_id'); + /** + * @param string $tax_category + * @return int + */ + public function get_tax_category_id(string $tax_category): int //TODO: $tax_category is not used in this function and get_tax_category_id() is not called in the code. It may be that this needs to be deprecated and removed. + { + $builder = $this->db->table('tax_categories'); + $builder->select('tax_category_id'); - return $builder->get()->getRow()->tax_category_id; - } + return $builder->get()->getRow()->tax_category_id; + } } diff --git a/app/Models/Tax_category.php b/app/Models/Tax_category.php index d73e03702..606605180 100644 --- a/app/Models/Tax_category.php +++ b/app/Models/Tax_category.php @@ -12,276 +12,276 @@ use stdClass; class Tax_category extends Model { - protected $table = 'tax_categories'; - protected $primaryKey = 'tax_category_id'; - protected $useAutoIncrement = true; - protected $useSoftDeletes = false; - protected $allowedFields = [ - 'tax_category', - 'tax_group_sequence', - 'deleted' - ]; + protected $table = 'tax_categories'; + protected $primaryKey = 'tax_category_id'; + protected $useAutoIncrement = true; + protected $useSoftDeletes = false; + protected $allowedFields = [ + 'tax_category', + 'tax_group_sequence', + 'deleted' + ]; - /** - * Determines if it exists in the table - */ - public function exists(int $tax_category_id): bool - { - $builder = $this->db->table('tax_categories'); - $builder->where('tax_category_id', $tax_category_id); + /** + * Determines if it exists in the table + */ + public function exists(int $tax_category_id): bool + { + $builder = $this->db->table('tax_categories'); + $builder->where('tax_category_id', $tax_category_id); - return ($builder->get()->getNumRows() == 1); //TODO: probably should be === - } + return ($builder->get()->getNumRows() == 1); //TODO: probably should be === + } - /** - * Gets total of rows - */ - public function get_total_rows(): int - { - $builder = $this->db->table('tax_categories'); - $builder->where('deleted', 0); + /** + * Gets total of rows + */ + public function get_total_rows(): int + { + $builder = $this->db->table('tax_categories'); + $builder->where('deleted', 0); - return $builder->countAllResults(); - } + return $builder->countAllResults(); + } - /** - * Gets information about the particular record - */ - public function get_info(int $tax_category_id): object - { - $builder = $this->db->table('tax_categories'); - $builder->where('tax_category_id', $tax_category_id); - $builder->where('deleted', 0); - $query = $builder->get(); + /** + * Gets information about the particular record + */ + public function get_info(int $tax_category_id): object + { + $builder = $this->db->table('tax_categories'); + $builder->where('tax_category_id', $tax_category_id); + $builder->where('deleted', 0); + $query = $builder->get(); - if($query->getNumRows() == 1) //TODO: probably should be === since getNumRows returns an int - { - return $query->getRow(); - } - else - { - //Get empty base parent object - $tax_category_obj = new stdClass(); + if($query->getNumRows() == 1) //TODO: probably should be === since getNumRows returns an int + { + return $query->getRow(); + } + else + { + //Get empty base parent object + $tax_category_obj = new stdClass(); - //Get all the fields from the table - foreach($this->db->getFieldNames('tax_categories') as $field) - { - $tax_category_obj->$field = ''; //TODO: This logic doesn't make sense to me... it appears that each field is being assigned to '' rather than the result. Shouldn't this be $tax_category_obj->field = $field;? - } - return $tax_category_obj; - } - } + //Get all the fields from the table + foreach($this->db->getFieldNames('tax_categories') as $field) + { + $tax_category_obj->$field = ''; //TODO: This logic doesn't make sense to me... it appears that each field is being assigned to '' rather than the result. Shouldn't this be $tax_category_obj->field = $field;? + } + return $tax_category_obj; + } + } - /** - * Returns all rows from the table - *///TODO: I think we should work toward having all these get_all functions with the same signature. It makes it easier to use them. This signature is different from the others. - public function get_all(int $rows = 0, int $limit_from = 0, bool $no_deleted = true): ResultInterface //TODO: $no_deleted needs a new name. $not_deleted is the correct grammar, but it's a bit confusing by naming the variable a negative. Probably better to name it is_deleted and flip the logic - { - $builder = $this->db->table('tax_categories'); - if($no_deleted) - { - $builder->where('deleted', 0); - } + /** + * Returns all rows from the table + *///TODO: I think we should work toward having all these get_all functions with the same signature. It makes it easier to use them. This signature is different from the others. + public function get_all(int $rows = 0, int $limit_from = 0, bool $no_deleted = true): ResultInterface //TODO: $no_deleted needs a new name. $not_deleted is the correct grammar, but it's a bit confusing by naming the variable a negative. Probably better to name it is_deleted and flip the logic + { + $builder = $this->db->table('tax_categories'); + if($no_deleted) + { + $builder->where('deleted', 0); + } - $builder->orderBy('tax_group_sequence', 'asc'); - $builder->orderBy('tax_category', 'asc'); + $builder->orderBy('tax_group_sequence', 'asc'); + $builder->orderBy('tax_category', 'asc'); - if($rows > 0) - { - $builder->limit($rows, $limit_from); - } + if($rows > 0) + { + $builder->limit($rows, $limit_from); + } - return $builder->get(); - } + return $builder->get(); + } - /** - * Returns multiple rows - */ - public function get_multiple_info(array $tax_category_ids): ResultInterface - { - $builder = $this->db->table('tax_categories'); - $builder->whereIn('tax_category_id', $tax_category_ids); - $builder->orderBy('tax_category', 'asc'); + /** + * Returns multiple rows + */ + public function get_multiple_info(array $tax_category_ids): ResultInterface + { + $builder = $this->db->table('tax_categories'); + $builder->whereIn('tax_category_id', $tax_category_ids); + $builder->orderBy('tax_category', 'asc'); - return $builder->get(); - } + return $builder->get(); + } - /** - * Inserts or updates a row - */ - public function save_value(array &$tax_category_data, int $tax_category_id = NEW_ENTRY): bool - { - $builder = $this->db->table('tax_categories'); + /** + * Inserts or updates a row + */ + public function save_value(array &$tax_category_data, int $tax_category_id = NEW_ENTRY): bool + { + $builder = $this->db->table('tax_categories'); - if($tax_category_id == NEW_ENTRY || !$this->exists($tax_category_id)) - { - if($builder->insert($tax_category_data)) - { - $tax_category_data['tax_category_id'] = $this->db->insertID(); + if($tax_category_id == NEW_ENTRY || !$this->exists($tax_category_id)) + { + if($builder->insert($tax_category_data)) + { + $tax_category_data['tax_category_id'] = $this->db->insertID(); - return true; - } + return true; + } - return false; - } + return false; + } - $builder->where('tax_category_id', $tax_category_id); + $builder->where('tax_category_id', $tax_category_id); - return $builder->update($tax_category_data); - } + return $builder->update($tax_category_data); + } - /** - * Saves changes to the tax categories table - */ - public function save_categories(array $array_save): bool //TODO: $array_save probably needs to be renamed here to $categories or something similar. Datatype in the variable name is a code smell. - { - $this->db->transStart(); + /** + * Saves changes to the tax categories table + */ + public function save_categories(array $array_save): bool //TODO: $array_save probably needs to be renamed here to $categories or something similar. Datatype in the variable name is a code smell. + { + $this->db->transStart(); - $not_to_delete = []; + $not_to_delete = []; - foreach($array_save as $key => $value) - { - // save or update - $tax_category_data = [ - 'tax_category' => $value['tax_category'], - 'tax_group_sequence' => $value['tax_group_sequence'], - 'deleted' => '0' - ]; + foreach($array_save as $key => $value) + { + // save or update + $tax_category_data = [ + 'tax_category' => $value['tax_category'], + 'tax_group_sequence' => $value['tax_group_sequence'], + 'deleted' => '0' + ]; - $this->save_value($tax_category_data, $value['tax_category_id']); + $this->save_value($tax_category_data, $value['tax_category_id']); - if($value['tax_category_id'] == NEW_ENTRY) - { - $not_to_delete[] = $tax_category_data['tax_category_id']; - } - else - { - $not_to_delete[] = $value['tax_category_id']; - } - } + if($value['tax_category_id'] == NEW_ENTRY) + { + $not_to_delete[] = $tax_category_data['tax_category_id']; + } + else + { + $not_to_delete[] = $value['tax_category_id']; + } + } - // all entries not available in post will be deleted now - $deleted_tax_categories = $this->get_all()->getResultArray(); + // all entries not available in post will be deleted now + $deleted_tax_categories = $this->get_all()->getResultArray(); - foreach($deleted_tax_categories as $key => $tax_category_data) - { - if(!in_array($tax_category_data['tax_category_id'], $not_to_delete)) - { - $this->delete($tax_category_data['tax_category_id']); - } - } + foreach($deleted_tax_categories as $key => $tax_category_data) + { + if(!in_array($tax_category_data['tax_category_id'], $not_to_delete)) + { + $this->delete($tax_category_data['tax_category_id']); + } + } - $this->db->transComplete(); - return $this->db->transStatus(); - } + $this->db->transComplete(); + return $this->db->transStatus(); + } - /** - * Soft delete a specific row - */ - public function delete($tax_category_id = null, bool $purge = false): bool - { - $builder = $this->db->table('tax_categories'); - $builder->where('tax_category_id', $tax_category_id); + /** + * Soft delete a specific row + */ + public function delete($tax_category_id = null, bool $purge = false): bool + { + $builder = $this->db->table('tax_categories'); + $builder->where('tax_category_id', $tax_category_id); - return $builder->update(['deleted' => 1]); - } + return $builder->update(['deleted' => 1]); + } - /** - * Deletes a list of rows - */ - public function delete_list(array $tax_category_ids): bool - { - $builder = $this->db->table('tax_categories'); - $builder->whereIn('tax_category_id', $tax_category_ids); + /** + * Deletes a list of rows + */ + public function delete_list(array $tax_category_ids): bool + { + $builder = $this->db->table('tax_categories'); + $builder->whereIn('tax_category_id', $tax_category_ids); - return $builder->update(['deleted' => 1]); - } + return $builder->update(['deleted' => 1]); + } - /** - * Gets rows - */ - public function get_found_rows(string $search): int - { - return $this->search($search, 0, 0, 'tax_category', 'asc', true); - } + /** + * Gets rows + */ + public function get_found_rows(string $search): int + { + return $this->search($search, 0, 0, 'tax_category', 'asc', true); + } - /** - * Perform a search for a set of rows - */ - public function search(string $search, ?int $rows = 0, ?int $limit_from = 0, ?string $sort = 'tax_category', ?string $order = 'asc', ?bool $count_only = false) - { - // Set default values - if($rows == null) $rows = 0; - if($limit_from == null) $limit_from = 0; - if($sort == null) $sort = 'tax_category'; - if($order == null) $order = 'asc'; - if($count_only == null) $count_only = false; + /** + * Perform a search for a set of rows + */ + public function search(string $search, ?int $rows = 0, ?int $limit_from = 0, ?string $sort = 'tax_category', ?string $order = 'asc', ?bool $count_only = false) + { + // Set default values + if($rows == null) $rows = 0; + if($limit_from == null) $limit_from = 0; + if($sort == null) $sort = 'tax_category'; + if($order == null) $order = 'asc'; + if($count_only == null) $count_only = false; - $builder = $this->db->table('tax_categories AS tax_categories'); + $builder = $this->db->table('tax_categories AS tax_categories'); - // get_found_rows case - if($count_only) - { - $builder->select('COUNT(tax_categories.tax_category_id) as count'); - } + // get_found_rows case + if($count_only) + { + $builder->select('COUNT(tax_categories.tax_category_id) as count'); + } - $builder->like('tax_category', $search); - $builder->where('deleted', 0); + $builder->like('tax_category', $search); + $builder->where('deleted', 0); - // get_found_rows case - if($count_only) - { - return $builder->get()->getRow()->count; - } + // get_found_rows case + if($count_only) + { + return $builder->get()->getRow()->count; + } - $builder->orderBy($sort, $order); + $builder->orderBy($sort, $order); - if($rows > 0) - { - $builder->limit($rows, $limit_from); - } + if($rows > 0) + { + $builder->limit($rows, $limit_from); + } - return $builder->get(); - } + return $builder->get(); + } - /** - * @param string $search - * @return array - */ - public function get_tax_category_suggestions(string $search): array - { - $suggestions = []; + /** + * @param string $search + * @return array + */ + public function get_tax_category_suggestions(string $search): array + { + $suggestions = []; - $builder = $this->db->table('tax_categories'); - $builder->where('deleted', 0); + $builder = $this->db->table('tax_categories'); + $builder->where('deleted', 0); - if(!empty($search)) - { - $builder->like('tax_category', '%'.$search.'%'); - } + if(!empty($search)) + { + $builder->like('tax_category', '%'.$search.'%'); + } - $builder->orderBy('tax_category', 'asc'); + $builder->orderBy('tax_category', 'asc'); - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = ['value' => $row->tax_category_id, 'label' => $row->tax_category]; - } + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = ['value' => $row->tax_category_id, 'label' => $row->tax_category]; + } - return $suggestions; - } + return $suggestions; + } - /** - * @return array[] - */ - public function get_empty_row(): array - { - return [ - '0' => [ - 'tax_category_id' => NEW_ENTRY, - 'tax_category' => '', - 'tax_group_sequence' => '', - 'deleted' => '' - ] - ]; - } + /** + * @return array[] + */ + public function get_empty_row(): array + { + return [ + '0' => [ + 'tax_category_id' => NEW_ENTRY, + 'tax_category' => '', + 'tax_group_sequence' => '', + 'deleted' => '' + ] + ]; + } } diff --git a/app/Models/Tax_code.php b/app/Models/Tax_code.php index bf3d48aaa..4e8fa8047 100644 --- a/app/Models/Tax_code.php +++ b/app/Models/Tax_code.php @@ -12,323 +12,323 @@ use stdClass; */ class Tax_code extends Model { - protected $table = 'tax_codes'; - protected $primaryKey = 'tax_code_id'; - protected $useAutoIncrement = true; - protected $useSoftDeletes = false; - protected $allowedFields = [ - 'tax_code', - 'tax_code_name', - 'city', - 'state', - 'deleted' - ]; + protected $table = 'tax_codes'; + protected $primaryKey = 'tax_code_id'; + protected $useAutoIncrement = true; + protected $useSoftDeletes = false; + protected $allowedFields = [ + 'tax_code', + 'tax_code_name', + 'city', + 'state', + 'deleted' + ]; - /** - * Determines if it exists in the table - */ - public function exists(string $tax_code): bool - { - $builder = $this->db->table('tax_codes'); - $builder->where('tax_code', $tax_code); + /** + * Determines if it exists in the table + */ + public function exists(string $tax_code): bool + { + $builder = $this->db->table('tax_codes'); + $builder->where('tax_code', $tax_code); - return ($builder->get()->getNumRows() == 1); //TODO: this should be === since getNumRows returns an int - } + return ($builder->get()->getNumRows() == 1); //TODO: this should be === since getNumRows returns an int + } - /** - * Gets total of rows - */ - public function get_total_rows(): int - { - $builder = $this->db->table('tax_codes'); - $builder->where('deleted', 0); + /** + * Gets total of rows + */ + public function get_total_rows(): int + { + $builder = $this->db->table('tax_codes'); + $builder->where('deleted', 0); - return $builder->countAllResults(); - } + return $builder->countAllResults(); + } - /** - * Gets information about the particular record - */ - public function get_info(?int $tax_code_id): object - { - if($tax_code_id != null) - { - $builder = $this->db->table('tax_codes'); + /** + * Gets information about the particular record + */ + public function get_info(?int $tax_code_id): object + { + if($tax_code_id != null) + { + $builder = $this->db->table('tax_codes'); - $builder->where('tax_code_id', $tax_code_id); - $builder->where('deleted', 0); - $query = $builder->get(); - } + $builder->where('tax_code_id', $tax_code_id); + $builder->where('deleted', 0); + $query = $builder->get(); + } - if($tax_code_id != null && $query->getNumRows() === 1) - { - return $query->getRow(); - } - else - { - //Get empty base parent object - $tax_code_obj = new stdClass(); + if($tax_code_id != null && $query->getNumRows() === 1) + { + return $query->getRow(); + } + else + { + //Get empty base parent object + $tax_code_obj = new stdClass(); - //Get all the fields from the table - foreach($this->db->getFieldNames('tax_codes') as $field) - { - $tax_code_obj->$field = null; - } - return $tax_code_obj; - } - } + //Get all the fields from the table + foreach($this->db->getFieldNames('tax_codes') as $field) + { + $tax_code_obj->$field = null; + } + return $tax_code_obj; + } + } - /** - * Returns all rows from the table - */ - public function get_all(int $rows = 0, int $limit_from = 0, bool $no_deleted = true): ResultInterface //TODO: $no_deleted should be something like $is_deleted and flip the logic. - { - $builder = $this->db->table('tax_codes'); - if($no_deleted) - { - $builder->where('deleted', 0); - } + /** + * Returns all rows from the table + */ + public function get_all(int $rows = 0, int $limit_from = 0, bool $no_deleted = true): ResultInterface //TODO: $no_deleted should be something like $is_deleted and flip the logic. + { + $builder = $this->db->table('tax_codes'); + if($no_deleted) + { + $builder->where('deleted', 0); + } - $builder->orderBy('tax_code_name', 'asc'); + $builder->orderBy('tax_code_name', 'asc'); - if($rows > 0) - { - $builder->limit($rows, $limit_from); - } + if($rows > 0) + { + $builder->limit($rows, $limit_from); + } - return $builder->get(); - } + return $builder->get(); + } - /** - * Returns multiple rows - */ - public function get_multiple_info(array $tax_codes): ResultInterface - { - $builder = $this->db->table('tax_codes'); - $builder->whereIn('tax_code', $tax_codes); - $builder->orderBy('tax_code_name', 'asc'); + /** + * Returns multiple rows + */ + public function get_multiple_info(array $tax_codes): ResultInterface + { + $builder = $this->db->table('tax_codes'); + $builder->whereIn('tax_code', $tax_codes); + $builder->orderBy('tax_code_name', 'asc'); - return $builder->get(); - } + return $builder->get(); + } - /** - * Inserts or updates a row - */ - public function save($tax_code_data): bool - { - $builder = $this->db->table('tax_codes'); + /** + * Inserts or updates a row + */ + public function save($tax_code_data): bool + { + $builder = $this->db->table('tax_codes'); - if(!$this->exists($tax_code_data['tax_code'])) - { - if($builder->insert($tax_code_data)) //TODO: this should be refactored to return $builder->insert($tax_code_data); in the same way that $builder->update() below is the return. Look for this in the other save functions as well. - { - return true; - } - return false; - } + if(!$this->exists($tax_code_data['tax_code'])) + { + if($builder->insert($tax_code_data)) //TODO: this should be refactored to return $builder->insert($tax_code_data); in the same way that $builder->update() below is the return. Look for this in the other save functions as well. + { + return true; + } + return false; + } - $builder->where('tax_code', $tax_code_data['tax_code']); + $builder->where('tax_code', $tax_code_data['tax_code']); - return $builder->update($tax_code_data); - } + return $builder->update($tax_code_data); + } - /** - * Saves changes to the tax codes table - */ - public function save_tax_codes(array $array_save): bool //TODO: Need to rename $array_save to probably $tax_codes - { - $this->db->transStart(); + /** + * Saves changes to the tax codes table + */ + public function save_tax_codes(array $array_save): bool //TODO: Need to rename $array_save to probably $tax_codes + { + $this->db->transStart(); - $not_to_delete = []; + $not_to_delete = []; - foreach($array_save as $key => $value) - { - // save or update - $tax_code_data = [ - 'tax_code' => $value['tax_code'], - 'tax_code_name' => $value['tax_code_name'], - 'city' => $value['city'], - 'state' => $value['state'], - 'deleted' => '0' - ]; - $this->save($tax_code_data); - $not_to_delete[] = $tax_code_data['tax_code']; - } + foreach($array_save as $key => $value) + { + // save or update + $tax_code_data = [ + 'tax_code' => $value['tax_code'], + 'tax_code_name' => $value['tax_code_name'], + 'city' => $value['city'], + 'state' => $value['state'], + 'deleted' => '0' + ]; + $this->save($tax_code_data); + $not_to_delete[] = $tax_code_data['tax_code']; + } - // all entries not available in post will be deleted now - $deleted_tax_codes = $this->get_all()->getResultArray(); + // all entries not available in post will be deleted now + $deleted_tax_codes = $this->get_all()->getResultArray(); - foreach($deleted_tax_codes as $key => $tax_code_data) - { - if(!in_array($tax_code_data['tax_code'], $not_to_delete)) - { - $this->delete($tax_code_data['tax_code']); - } - } + foreach($deleted_tax_codes as $key => $tax_code_data) + { + if(!in_array($tax_code_data['tax_code'], $not_to_delete)) + { + $this->delete($tax_code_data['tax_code']); + } + } - $this->db->transComplete(); - return $this->db->transStatus(); - } + $this->db->transComplete(); + return $this->db->transStatus(); + } - /** - * Deletes a specific tax code - */ - public function delete($tax_code = null, bool $purge = false): bool - { - $builder = $this->db->table('tax_codes'); - $builder->where('tax_code', $tax_code); + /** + * Deletes a specific tax code + */ + public function delete($tax_code = null, bool $purge = false): bool + { + $builder = $this->db->table('tax_codes'); + $builder->where('tax_code', $tax_code); - return $builder->update(['deleted' => 1]); - } + return $builder->update(['deleted' => 1]); + } - /** - * Deletes a list of rows - */ - public function delete_list(array $tax_codes): bool - { - $builder = $this->db->table('tax_codes'); - $builder->whereIn('tax_code', $tax_codes); + /** + * Deletes a list of rows + */ + public function delete_list(array $tax_codes): bool + { + $builder = $this->db->table('tax_codes'); + $builder->whereIn('tax_code', $tax_codes); - return $builder->update(['deleted' => 1]); - } + return $builder->update(['deleted' => 1]); + } - /** - * Gets rows - */ - public function get_found_rows(string $search): int - { - return $this->search($search, 0, 0, 'tax_code_name', 'asc', true); - } + /** + * Gets rows + */ + public function get_found_rows(string $search): int + { + return $this->search($search, 0, 0, 'tax_code_name', 'asc', true); + } - /** - * Perform a search for a set of rows - */ - public function search(string $search, ?int $rows = 0, ?int $limit_from = 0, ?string $sort = 'tax_code_name', ?string $order = 'asc', ?bool $count_only = false) - { - // Set default values - if($rows == null) $rows = 0; - if($limit_from == null) $limit_from = 0; - if($sort == null) $sort = 'tax_code_name'; - if($order == null) $order = 'asc'; - if($count_only == null) $count_only = false; + /** + * Perform a search for a set of rows + */ + public function search(string $search, ?int $rows = 0, ?int $limit_from = 0, ?string $sort = 'tax_code_name', ?string $order = 'asc', ?bool $count_only = false) + { + // Set default values + if($rows == null) $rows = 0; + if($limit_from == null) $limit_from = 0; + if($sort == null) $sort = 'tax_code_name'; + if($order == null) $order = 'asc'; + if($count_only == null) $count_only = false; - $builder = $this->db->table('tax_codes AS tax_codes'); + $builder = $this->db->table('tax_codes AS tax_codes'); - // get_found_rows case - if($count_only) - { - $builder->select('COUNT(tax_codes.tax_code) as count'); - } + // get_found_rows case + if($count_only) + { + $builder->select('COUNT(tax_codes.tax_code) as count'); + } - $builder->groupStart(); - $builder->like('tax_code_name', $search); - $builder->orLike('tax_code', $search); - $builder->groupEnd(); - $builder->where('deleted', 0); + $builder->groupStart(); + $builder->like('tax_code_name', $search); + $builder->orLike('tax_code', $search); + $builder->groupEnd(); + $builder->where('deleted', 0); - // get_found_rows case - if($count_only) - { - return $builder->get()->getRow()->count; - } + // get_found_rows case + if($count_only) + { + return $builder->get()->getRow()->count; + } - $builder->orderBy($sort, $order); + $builder->orderBy($sort, $order); - if($rows > 0) - { - $builder->limit($rows, $limit_from); - } + if($rows > 0) + { + $builder->limit($rows, $limit_from); + } - return $builder->get(); - } + return $builder->get(); + } - /** - * Gets the tax code to use for a given customer - */ - public function get_sales_tax_code(string $city = '', string $state = '') - { - $config = config(OSPOS::class)->settings; + /** + * Gets the tax code to use for a given customer + */ + public function get_sales_tax_code(string $city = '', string $state = '') + { + $config = config(OSPOS::class)->settings; - // if tax code using both city and state cannot be found then try again using just the state - // if the state tax code cannot be found then try again using blanks for both - $builder = $this->db->table('tax_codes'); - $builder->where('city', $city); - $builder->where('state', $state); - $builder->where('deleted', 0); + // if tax code using both city and state cannot be found then try again using just the state + // if the state tax code cannot be found then try again using blanks for both + $builder = $this->db->table('tax_codes'); + $builder->where('city', $city); + $builder->where('state', $state); + $builder->where('deleted', 0); - $query = $builder->get(); + $query = $builder->get(); - if($query->getNumRows() == 1) //TODO: === - { - return $query->getRow()->tax_code_id; - } + if($query->getNumRows() == 1) //TODO: === + { + return $query->getRow()->tax_code_id; + } - $builder = $this->db->table('tax_codes'); - $builder->where('city', ''); - $builder->where('state', $state); - $builder->where('deleted', 0); + $builder = $this->db->table('tax_codes'); + $builder->where('city', ''); + $builder->where('state', $state); + $builder->where('deleted', 0); - $query = $builder->get(); + $query = $builder->get(); - if($query->getNumRows() == 1) //TODO: this should be === - { - return $query->getRow()->tax_code_id; - } - else - { - return $config['default_tax_code']; - } - } + if($query->getNumRows() == 1) //TODO: this should be === + { + return $query->getRow()->tax_code_id; + } + else + { + return $config['default_tax_code']; + } + } - /** - * @param string $search - * @param int $limit - * @return array - */ - public function get_tax_codes_search_suggestions(string $search, int $limit = 25): array - { - $suggestions = []; + /** + * @param string $search + * @param int $limit + * @return array + */ + public function get_tax_codes_search_suggestions(string $search, int $limit = 25): array + { + $suggestions = []; - $builder = $this->db->table('tax_codes'); + $builder = $this->db->table('tax_codes'); - if(!empty($search)) - { - $builder->like('tax_code', $search); - $builder->orLike('tax_code_name', $search); - } + if(!empty($search)) + { + $builder->like('tax_code', $search); + $builder->orLike('tax_code_name', $search); + } - $builder->where('deleted', 0); - $builder->orderBy('tax_code_name', 'asc'); + $builder->where('deleted', 0); + $builder->orderBy('tax_code_name', 'asc'); - foreach($builder->get()->getResult() as $row) - { - $suggestions[] = ['value' => $row->tax_code_id, 'label' => ($row->tax_code . ' ' . $row->tax_code_name)]; - } + foreach($builder->get()->getResult() as $row) + { + $suggestions[] = ['value' => $row->tax_code_id, 'label' => ($row->tax_code . ' ' . $row->tax_code_name)]; + } - //only return $limit suggestions - if(count($suggestions) > $limit) - { - $suggestions = array_slice($suggestions, 0,$limit); - } + //only return $limit suggestions + if(count($suggestions) > $limit) + { + $suggestions = array_slice($suggestions, 0,$limit); + } - return $suggestions; - } + return $suggestions; + } - /** - * @return array[] - */ - public function get_empty_row(): array - { - return [ - '0' => [ - 'tax_code_id' => NEW_ENTRY, - 'tax_code' => '', - 'tax_code_name' => '', - 'city' => '', - 'state' => '', - 'deleted' => 0 - ] - ]; - } + /** + * @return array[] + */ + public function get_empty_row(): array + { + return [ + '0' => [ + 'tax_code_id' => NEW_ENTRY, + 'tax_code' => '', + 'tax_code_name' => '', + 'city' => '', + 'state' => '', + 'deleted' => 0 + ] + ]; + } } diff --git a/app/Models/Tax_jurisdiction.php b/app/Models/Tax_jurisdiction.php index b5c94b895..053db6b9d 100644 --- a/app/Models/Tax_jurisdiction.php +++ b/app/Models/Tax_jurisdiction.php @@ -12,262 +12,262 @@ use stdClass; class Tax_jurisdiction extends Model { - protected $table = 'tax_jurisdictions'; - protected $primaryKey = 'cashup_id'; - protected $useAutoIncrement = true; - protected $useSoftDeletes = false; - protected $allowedFields = [ - 'jurisdiction_name', - 'tax_group', - 'tax_type', - 'reporting_authority', - 'tax_group_sequence', - 'cascade_sequence', - 'deleted' - ]; + protected $table = 'tax_jurisdictions'; + protected $primaryKey = 'cashup_id'; + protected $useAutoIncrement = true; + protected $useSoftDeletes = false; + protected $allowedFields = [ + 'jurisdiction_name', + 'tax_group', + 'tax_type', + 'reporting_authority', + 'tax_group_sequence', + 'cascade_sequence', + 'deleted' + ]; - /** - * Determines if it exists in the table - */ - public function exists(int $jurisdiction_id): bool - { - $builder = $this->db->table('tax_jurisdictions'); - $builder->where('jurisdiction_id', $jurisdiction_id); + /** + * Determines if it exists in the table + */ + public function exists(int $jurisdiction_id): bool + { + $builder = $this->db->table('tax_jurisdictions'); + $builder->where('jurisdiction_id', $jurisdiction_id); - return ($builder->get()->getNumRows() == 1); //TODO: === - } + return ($builder->get()->getNumRows() == 1); //TODO: === + } - /** - * Gets total of rows - */ - public function get_total_rows(): int - { - $builder = $this->db->table('tax_jurisdictions'); - $builder->where('deleted', 0); + /** + * Gets total of rows + */ + public function get_total_rows(): int + { + $builder = $this->db->table('tax_jurisdictions'); + $builder->where('deleted', 0); - return $builder->countAllResults(); - } + return $builder->countAllResults(); + } - /*** - * Gets information about the particular record - */ - public function get_info(int $jurisdiction_id): object - { - $builder = $this->db->table('tax_jurisdictions'); - $builder->where('jurisdiction_id', $jurisdiction_id); - $builder->where('deleted', 0); - $query = $builder->get(); + /*** + * Gets information about the particular record + */ + public function get_info(int $jurisdiction_id): object + { + $builder = $this->db->table('tax_jurisdictions'); + $builder->where('jurisdiction_id', $jurisdiction_id); + $builder->where('deleted', 0); + $query = $builder->get(); - if($query->getNumRows() == 1) //TODO: === - { - return $query->getRow(); - } - else //TODO: this else is not needed. Just put everything below it without an else. - { - //Get empty base parent object - $tax_jurisdiction_obj = new stdClass(); + if($query->getNumRows() == 1) //TODO: === + { + return $query->getRow(); + } + else //TODO: this else is not needed. Just put everything below it without an else. + { + //Get empty base parent object + $tax_jurisdiction_obj = new stdClass(); - //Get all the fields from the table - foreach($this->db->getFieldNames('tax_jurisdictions') as $field) - { - $tax_jurisdiction_obj->$field = ''; - } - return $tax_jurisdiction_obj; - } - } + //Get all the fields from the table + foreach($this->db->getFieldNames('tax_jurisdictions') as $field) + { + $tax_jurisdiction_obj->$field = ''; + } + return $tax_jurisdiction_obj; + } + } - /** - * Returns all rows from the table - */ - public function get_all(int $rows = 0, int $limit_from = 0, bool $no_deleted = true): ResultInterface - { - $builder = $this->db->table('tax_jurisdictions'); + /** + * Returns all rows from the table + */ + public function get_all(int $rows = 0, int $limit_from = 0, bool $no_deleted = true): ResultInterface + { + $builder = $this->db->table('tax_jurisdictions'); - if($no_deleted) - { - $builder->where('deleted', 0); - } + if($no_deleted) + { + $builder->where('deleted', 0); + } - $builder->orderBy('jurisdiction_name', 'asc'); + $builder->orderBy('jurisdiction_name', 'asc'); - if($rows > 0) - { - $builder->limit($rows, $limit_from); - } + if($rows > 0) + { + $builder->limit($rows, $limit_from); + } - return $builder->get(); - } + return $builder->get(); + } - /** - * Returns multiple rows - */ - public function get_multiple_info(array $jurisdiction_ids): ResultInterface - { - $builder = $this->db->table('tax_jurisdictions'); - $builder->whereIn('jurisdiction_id', $jurisdiction_ids); - $builder->orderBy('jurisdiction_name', 'asc'); + /** + * Returns multiple rows + */ + public function get_multiple_info(array $jurisdiction_ids): ResultInterface + { + $builder = $this->db->table('tax_jurisdictions'); + $builder->whereIn('jurisdiction_id', $jurisdiction_ids); + $builder->orderBy('jurisdiction_name', 'asc'); - return $builder->get(); - } + return $builder->get(); + } - /** - * Inserts or updates a row - */ - public function save_value(array &$jurisdiction_data, int $jurisdiction_id = NEW_ENTRY): bool - { - $builder = $this->db->table('tax_jurisdictions'); - if($jurisdiction_id == NEW_ENTRY || !$this->exists($jurisdiction_id)) - { - if($builder->insert($jurisdiction_data)) //TODO: Replace this with simply a return of the result of insert()... see update() below. - { - $jurisdiction_data['jurisdiction_id'] = $this->db->insertID(); - return true; - } + /** + * Inserts or updates a row + */ + public function save_value(array &$jurisdiction_data, int $jurisdiction_id = NEW_ENTRY): bool + { + $builder = $this->db->table('tax_jurisdictions'); + if($jurisdiction_id == NEW_ENTRY || !$this->exists($jurisdiction_id)) + { + if($builder->insert($jurisdiction_data)) //TODO: Replace this with simply a return of the result of insert()... see update() below. + { + $jurisdiction_data['jurisdiction_id'] = $this->db->insertID(); + return true; + } - return false; - } + return false; + } - $builder->where('jurisdiction_id', $jurisdiction_id); + $builder->where('jurisdiction_id', $jurisdiction_id); - return $builder->update($jurisdiction_data); - } + return $builder->update($jurisdiction_data); + } - /** - * Saves changes to the tax jurisdictions table - */ - public function save_jurisdictions(array $array_save): bool - { - $this->db->transStart(); + /** + * Saves changes to the tax jurisdictions table + */ + public function save_jurisdictions(array $array_save): bool + { + $this->db->transStart(); - $not_to_delete = []; + $not_to_delete = []; - foreach($array_save as $key => $value) - { - // save or update - $tax_jurisdiction_data = [ - 'jurisdiction_name' => $value['jurisdiction_name'], - 'tax_group' => $value['tax_group'], - 'tax_type' => $value['tax_type'], - 'reporting_authority' => $value['reporting_authority'], - 'tax_group_sequence' => $value['tax_group_sequence'], - 'cascade_sequence' => $value['cascade_sequence'], - 'deleted' => '0']; + foreach($array_save as $key => $value) + { + // save or update + $tax_jurisdiction_data = [ + 'jurisdiction_name' => $value['jurisdiction_name'], + 'tax_group' => $value['tax_group'], + 'tax_type' => $value['tax_type'], + 'reporting_authority' => $value['reporting_authority'], + 'tax_group_sequence' => $value['tax_group_sequence'], + 'cascade_sequence' => $value['cascade_sequence'], + 'deleted' => '0']; - $this->save_value($tax_jurisdiction_data, $value['jurisdiction_id']); + $this->save_value($tax_jurisdiction_data, $value['jurisdiction_id']); - if($value['jurisdiction_id'] == NEW_ENTRY) - { - $not_to_delete[] = $tax_jurisdiction_data['jurisdiction_id']; - } - else - { - $not_to_delete[] = $value['jurisdiction_id']; - } - } + if($value['jurisdiction_id'] == NEW_ENTRY) + { + $not_to_delete[] = $tax_jurisdiction_data['jurisdiction_id']; + } + else + { + $not_to_delete[] = $value['jurisdiction_id']; + } + } - // all entries not available in post will be deleted now - $deleted_tax_jurisdictions = $this->get_all()->getResultArray(); + // all entries not available in post will be deleted now + $deleted_tax_jurisdictions = $this->get_all()->getResultArray(); - foreach($deleted_tax_jurisdictions as $key => $tax_jurisdiction_data) - { - if(!in_array($tax_jurisdiction_data['jurisdiction_id'], $not_to_delete)) - { - $this->delete($tax_jurisdiction_data['jurisdiction_id']); - } - } + foreach($deleted_tax_jurisdictions as $key => $tax_jurisdiction_data) + { + if(!in_array($tax_jurisdiction_data['jurisdiction_id'], $not_to_delete)) + { + $this->delete($tax_jurisdiction_data['jurisdiction_id']); + } + } - $this->db->transComplete(); - return $this->db->transStatus(); - } + $this->db->transComplete(); + return $this->db->transStatus(); + } - /** - * Soft deletes a specific tax jurisdiction - */ - public function delete($jurisdiction_id = null, bool $purge = false): bool - { - $builder = $this->db->table('tax_jurisdictions'); - $builder->where('jurisdiction_id', $jurisdiction_id); + /** + * Soft deletes a specific tax jurisdiction + */ + public function delete($jurisdiction_id = null, bool $purge = false): bool + { + $builder = $this->db->table('tax_jurisdictions'); + $builder->where('jurisdiction_id', $jurisdiction_id); - return $builder->update(['deleted' => 1]); - } + return $builder->update(['deleted' => 1]); + } - /** - * Soft deletes a list of rows - */ - public function delete_list(array $jurisdiction_ids): bool - { - $builder = $this->db->table('tax_jurisdictions'); - $builder->whereIn('jurisdiction_id', $jurisdiction_ids); + /** + * Soft deletes a list of rows + */ + public function delete_list(array $jurisdiction_ids): bool + { + $builder = $this->db->table('tax_jurisdictions'); + $builder->whereIn('jurisdiction_id', $jurisdiction_ids); - return $builder->update(['deleted' => 1]); - } + return $builder->update(['deleted' => 1]); + } - /** - * Gets rows - */ - public function get_found_rows(string $search): int - { - return $this->search($search, 0, 0, 'jurisdiction_name', 'asc', true); - } + /** + * Gets rows + */ + public function get_found_rows(string $search): int + { + return $this->search($search, 0, 0, 'jurisdiction_name', 'asc', true); + } - /** - * Perform a search for a set of rows - */ - public function search(string $search, ?int $rows = 0, ?int $limit_from = 0, ?string $sort = 'jurisdiction_name', ?string $order = 'asc', ?bool $count_only = false) - { - // Set default values - if($rows == null) $rows = 0; - if($limit_from == null) $limit_from = 0; - if($sort == null) $sort = 'jurisdiction_name'; - if($order == null) $order = 'asc'; - if($count_only == null) $count_only = false; + /** + * Perform a search for a set of rows + */ + public function search(string $search, ?int $rows = 0, ?int $limit_from = 0, ?string $sort = 'jurisdiction_name', ?string $order = 'asc', ?bool $count_only = false) + { + // Set default values + if($rows == null) $rows = 0; + if($limit_from == null) $limit_from = 0; + if($sort == null) $sort = 'jurisdiction_name'; + if($order == null) $order = 'asc'; + if($count_only == null) $count_only = false; - $builder = $this->db->table('tax_jurisdictions AS tax_jurisdictions'); + $builder = $this->db->table('tax_jurisdictions AS tax_jurisdictions'); - // get_found_rows case - if($count_only) - { - $builder->select('COUNT(tax_jurisdictions.jurisdiction_id) as count'); - } + // get_found_rows case + if($count_only) + { + $builder->select('COUNT(tax_jurisdictions.jurisdiction_id) as count'); + } - $builder->groupStart(); - $builder->like('jurisdiction_name', $search); - $builder->orLike('reporting_authority', $search); - $builder->groupEnd(); - $builder->where('deleted', 0); + $builder->groupStart(); + $builder->like('jurisdiction_name', $search); + $builder->orLike('reporting_authority', $search); + $builder->groupEnd(); + $builder->where('deleted', 0); - // get_found_rows case - if($count_only) - { - return $builder->get()->getRow()->count; - } + // get_found_rows case + if($count_only) + { + return $builder->get()->getRow()->count; + } - $builder->orderBy($sort, $order); + $builder->orderBy($sort, $order); - if($rows > 0) - { - $builder->limit($rows, $limit_from); - } + if($rows > 0) + { + $builder->limit($rows, $limit_from); + } - return $builder->get(); - } + return $builder->get(); + } - /** - * @return array[] - */ - public function get_empty_row(): array - { - return [ - '0' => [ - 'jurisdiction_id' => NEW_ENTRY, - 'jurisdiction_name' => '', - 'tax_group' => '', - 'tax_type' => '1', - 'reporting_authority' => '', - 'tax_group_sequence' => '', - 'cascade_sequence' => '', - 'deleted' => '' - ] - ]; - } + /** + * @return array[] + */ + public function get_empty_row(): array + { + return [ + '0' => [ + 'jurisdiction_id' => NEW_ENTRY, + 'jurisdiction_name' => '', + 'tax_group' => '', + 'tax_type' => '1', + 'reporting_authority' => '', + 'tax_group_sequence' => '', + 'cascade_sequence' => '', + 'deleted' => '' + ] + ]; + } } diff --git a/app/Models/Tokens/Token.php b/app/Models/Tokens/Token.php index 00efe8a7d..991f7d4e8 100644 --- a/app/Models/Tokens/Token.php +++ b/app/Models/Tokens/Token.php @@ -9,78 +9,78 @@ use CodeIgniter\Model; */ abstract class Token extends Model { - protected string $value = ''; + protected string $value = ''; - /** - * @param string $value - */ - public function __construct(string $value = '') - { - parent::__construct(); + /** + * @param string $value + */ + public function __construct(string $value = '') + { + parent::__construct(); - $this->value = $value; - } + $this->value = $value; + } - /** - * @return array - */ - public static function get_barcode_tokens(): array - { - return [ - new Token_barcode_price(), - new Token_barcode_weight(), - new Token_barcode_ean() - ]; - } + /** + * @return array + */ + public static function get_barcode_tokens(): array + { + return [ + new Token_barcode_price(), + new Token_barcode_weight(), + new Token_barcode_ean() + ]; + } - /** - * @return array - */ - public static function get_tokens(): array - { - return [ - new Token_customer(), - new Token_invoice_count(), - new Token_invoice_sequence(), - new Token_quote_sequence(), - new Token_suspended_invoice_count(), - new Token_quote_sequence(), - new Token_work_order_sequence(), - new Token_year_invoice_count(), - new Token_year_quote_count() - ]; - } + /** + * @return array + */ + public static function get_tokens(): array + { + return [ + new Token_customer(), + new Token_invoice_count(), + new Token_invoice_sequence(), + new Token_quote_sequence(), + new Token_suspended_invoice_count(), + new Token_quote_sequence(), + new Token_work_order_sequence(), + new Token_year_invoice_count(), + new Token_year_quote_count() + ]; + } - /** - * @return string - */ - abstract public function token_id(): string; + /** + * @return string + */ + abstract public function token_id(): string; - /** - * @return mixed - */ - abstract public function get_value(): mixed; + /** + * @return mixed + */ + abstract public function get_value(): mixed; - /** - * @param $token_id - * @return bool - */ - public function matches($token_id): bool - { - return $this->token_id() == $token_id; - } + /** + * @param $token_id + * @return bool + */ + public function matches($token_id): bool + { + return $this->token_id() == $token_id; + } - /** - * @param string $text - * @return string - */ - public function replace_token(string $text): string //TODO: This function is never called in the code - { - if(strstr($text, $this->token_id())) - { - return str_replace($this->token_id(), $this->get_value(), $text); - } + /** + * @param string $text + * @return string + */ + public function replace_token(string $text): string //TODO: This function is never called in the code + { + if(strstr($text, $this->token_id())) + { + return str_replace($this->token_id(), $this->get_value(), $text); + } - return $text; - } + return $text; + } } diff --git a/app/Models/Tokens/Token_barcode_ean.php b/app/Models/Tokens/Token_barcode_ean.php index 57d34f506..9eb4d48c7 100644 --- a/app/Models/Tokens/Token_barcode_ean.php +++ b/app/Models/Tokens/Token_barcode_ean.php @@ -7,19 +7,19 @@ namespace App\Models\Tokens; */ class Token_barcode_ean extends Token { - /** - * @return string - */ - public function token_id(): string - { + /** + * @return string + */ + public function token_id(): string + { return 'I'; } - /** - * @return string - */ - public function get_value(): string - { + /** + * @return string + */ + public function get_value(): string + { return '\w'; } } diff --git a/app/Models/Tokens/Token_barcode_price.php b/app/Models/Tokens/Token_barcode_price.php index 81cf25b20..80874314f 100644 --- a/app/Models/Tokens/Token_barcode_price.php +++ b/app/Models/Tokens/Token_barcode_price.php @@ -7,19 +7,19 @@ namespace App\Models\Tokens; */ class Token_barcode_price extends Token { - /** - * @return string - */ - public function token_id(): string - { + /** + * @return string + */ + public function token_id(): string + { return 'P'; } - /** - * @return string - */ - public function get_value(): string - { + /** + * @return string + */ + public function get_value(): string + { return '\d'; } } diff --git a/app/Models/Tokens/Token_barcode_weight.php b/app/Models/Tokens/Token_barcode_weight.php index d0f1e9463..6243b2657 100644 --- a/app/Models/Tokens/Token_barcode_weight.php +++ b/app/Models/Tokens/Token_barcode_weight.php @@ -7,18 +7,18 @@ namespace App\Models\Tokens; */ class Token_barcode_weight extends Token { - /** - * @return string - */ - public function token_id(): string + /** + * @return string + */ + public function token_id(): string { return 'W'; } - /** - * @return string - */ - public function get_value(): string + /** + * @return string + */ + public function get_value(): string { return '\d'; } diff --git a/app/Models/Tokens/Token_customer.php b/app/Models/Tokens/Token_customer.php index 7b0450d3c..0fb8663eb 100644 --- a/app/Models/Tokens/Token_customer.php +++ b/app/Models/Tokens/Token_customer.php @@ -11,45 +11,45 @@ use App\Models\Customer; **/ class Token_customer extends Token { - private array $customer_info; - private Sale_lib $sale_lib; + private array $customer_info; + private Sale_lib $sale_lib; - /** - * @param string $customer_info - */ - public function __construct(array $customer_info = []) - { - parent::__construct(); - $this->customer_info = $customer_info; - $this->sale_lib = new Sale_lib(); - } + /** + * @param string $customer_info + */ + public function __construct(array $customer_info = []) + { + parent::__construct(); + $this->customer_info = $customer_info; + $this->sale_lib = new Sale_lib(); + } - /** - * @return string - */ - public function token_id(): string - { - return 'CU'; - } + /** + * @return string + */ + public function token_id(): string + { + return 'CU'; + } - /** - * @return string - */ - public function get_value(): string - { - //substitute customer info - $customer_id = $this->sale_lib->get_customer(); - if($customer_id != NEW_ITEM && empty($this->customer_info)) - { - $customer = model(Customer::class); - $customer_info = $customer->get_info($customer_id); + /** + * @return string + */ + public function get_value(): string + { + //substitute customer info + $customer_id = $this->sale_lib->get_customer(); + if($customer_id != NEW_ITEM && empty($this->customer_info)) + { + $customer = model(Customer::class); + $customer_info = $customer->get_info($customer_id); - if($customer_info != '') - { - return trim($customer_info->first_name . ' ' . $customer_info->last_name); - } - } + if($customer_info != '') + { + return trim($customer_info->first_name . ' ' . $customer_info->last_name); + } + } - return ''; - } + return ''; + } } diff --git a/app/Models/Tokens/Token_invoice_count.php b/app/Models/Tokens/Token_invoice_count.php index a33330ae7..c495f68cb 100644 --- a/app/Models/Tokens/Token_invoice_count.php +++ b/app/Models/Tokens/Token_invoice_count.php @@ -12,28 +12,28 @@ use App\Models\Sale; */ class Token_invoice_count extends Token { - /** - * @param string $value - */ - public function __construct(string $value = '') - { - parent::__construct($value); - } + /** + * @param string $value + */ + public function __construct(string $value = '') + { + parent::__construct($value); + } - /** - * @return string - */ - public function token_id(): string - { - return 'CO'; - } + /** + * @return string + */ + public function token_id(): string + { + return 'CO'; + } - /** - * @return int - */ - public function get_value(): int - { - $sale = model(Sale::class); - return empty($value) ? $sale->get_invoice_count() : $value; - } + /** + * @return int + */ + public function get_value(): int + { + $sale = model(Sale::class); + return empty($value) ? $sale->get_invoice_count() : $value; + } } diff --git a/app/Models/Tokens/Token_invoice_sequence.php b/app/Models/Tokens/Token_invoice_sequence.php index cd0acdf7b..4a2054ae3 100644 --- a/app/Models/Tokens/Token_invoice_sequence.php +++ b/app/Models/Tokens/Token_invoice_sequence.php @@ -11,30 +11,30 @@ use ReflectionException; class Token_invoice_sequence extends Token { - private Appconfig $appconfig; + private Appconfig $appconfig; - /** - * @param string $value - */ - public function __construct(string $value = '') - { - parent::__construct($value); - $this->appconfig = model(Appconfig::class); - } + /** + * @param string $value + */ + public function __construct(string $value = '') + { + parent::__construct($value); + $this->appconfig = model(Appconfig::class); + } - /** - * @return string - */ - public function token_id(): string - { - return 'ISEQ'; - } + /** + * @return string + */ + public function token_id(): string + { + return 'ISEQ'; + } - /** - * @throws ReflectionException - */ - public function get_value(bool $save = true): string - { - return $this->appconfig->acquire_next_invoice_sequence($save); - } + /** + * @throws ReflectionException + */ + public function get_value(bool $save = true): string + { + return $this->appconfig->acquire_next_invoice_sequence($save); + } } diff --git a/app/Models/Tokens/Token_quote_sequence.php b/app/Models/Tokens/Token_quote_sequence.php index a749a0347..30c7cc519 100644 --- a/app/Models/Tokens/Token_quote_sequence.php +++ b/app/Models/Tokens/Token_quote_sequence.php @@ -10,28 +10,28 @@ use ReflectionException; **/ class Token_quote_sequence extends Token { - private Appconfig $appconfig; + private Appconfig $appconfig; - public function __construct() - { - parent::__construct(); - $this->appconfig = model(AppConfig::class); + public function __construct() + { + parent::__construct(); + $this->appconfig = model(AppConfig::class); - } + } - /** - * @return string - */ - public function token_id(): string - { - return 'QSEQ'; - } + /** + * @return string + */ + public function token_id(): string + { + return 'QSEQ'; + } - /** - * @throws ReflectionException - */ - public function get_value(bool $save = true): string - { - return $this->appconfig->acquire_next_quote_sequence($save); - } + /** + * @throws ReflectionException + */ + public function get_value(bool $save = true): string + { + return $this->appconfig->acquire_next_quote_sequence($save); + } } diff --git a/app/Models/Tokens/Token_suspended_invoice_count.php b/app/Models/Tokens/Token_suspended_invoice_count.php index faae18e57..1c987741a 100644 --- a/app/Models/Tokens/Token_suspended_invoice_count.php +++ b/app/Models/Tokens/Token_suspended_invoice_count.php @@ -12,25 +12,25 @@ use App\Models\Sale; */ class Token_suspended_invoice_count extends Token { - public function __construct() - { - parent::__construct(); - } + public function __construct() + { + parent::__construct(); + } - /** - * @return string - */ - public function token_id(): string - { - return 'SCO'; - } + /** + * @return string + */ + public function token_id(): string + { + return 'SCO'; + } - /** - * @return int - */ - public function get_value(): int - { - $sale = model(Sale::class); - return $sale->get_suspended_invoice_count(); - } + /** + * @return int + */ + public function get_value(): int + { + $sale = model(Sale::class); + return $sale->get_suspended_invoice_count(); + } } diff --git a/app/Models/Tokens/Token_work_order_sequence.php b/app/Models/Tokens/Token_work_order_sequence.php index 7b8aa37ed..978b4e8af 100644 --- a/app/Models/Tokens/Token_work_order_sequence.php +++ b/app/Models/Tokens/Token_work_order_sequence.php @@ -10,30 +10,30 @@ use ReflectionException; **/ class Token_work_order_sequence extends Token { - private Appconfig $appconfig; + private Appconfig $appconfig; - /** - * @param string $value - */ - public function __construct(string $value = '') - { - parent::__construct($value); - $this->appconfig = model(AppConfig::class); - } + /** + * @param string $value + */ + public function __construct(string $value = '') + { + parent::__construct($value); + $this->appconfig = model(AppConfig::class); + } - /** - * @return string - */ - public function token_id(): string - { - return 'WSEQ'; - } + /** + * @return string + */ + public function token_id(): string + { + return 'WSEQ'; + } - /** - * @throws ReflectionException - */ - public function get_value(bool $save = true): string - { - return $this->appconfig->acquire_next_work_order_sequence($save); - } + /** + * @throws ReflectionException + */ + public function get_value(bool $save = true): string + { + return $this->appconfig->acquire_next_work_order_sequence($save); + } } diff --git a/app/Models/Tokens/Token_year_invoice_count.php b/app/Models/Tokens/Token_year_invoice_count.php index 461956fe3..c88fdbdf3 100644 --- a/app/Models/Tokens/Token_year_invoice_count.php +++ b/app/Models/Tokens/Token_year_invoice_count.php @@ -12,20 +12,20 @@ use App\Models\Sale; */ class Token_year_invoice_count extends Token { - /** - * @return string - */ - public function token_id(): string - { - return 'YCO'; - } + /** + * @return string + */ + public function token_id(): string + { + return 'YCO'; + } - /** - * @return int - */ - public function get_value(): int - { - $sale = model(Sale::class); - return $sale->get_invoice_number_for_year(); - } + /** + * @return int + */ + public function get_value(): int + { + $sale = model(Sale::class); + return $sale->get_invoice_number_for_year(); + } } diff --git a/app/Models/Tokens/Token_year_quote_count.php b/app/Models/Tokens/Token_year_quote_count.php index d1496d784..db7edd383 100644 --- a/app/Models/Tokens/Token_year_quote_count.php +++ b/app/Models/Tokens/Token_year_quote_count.php @@ -12,20 +12,20 @@ use App\Models\Sale; */ class Token_year_quote_count extends Token { - /** - * @return string - */ - public function token_id(): string - { - return 'QCO'; - } + /** + * @return string + */ + public function token_id(): string + { + return 'QCO'; + } - /** - * @return int - */ - public function get_value(): int - { - $sale = model(Sale::class); - return $sale->get_quote_number_for_year(); - } + /** + * @return int + */ + public function get_value(): int + { + $sale = model(Sale::class); + return $sale->get_quote_number_for_year(); + } } diff --git a/app/Models/index.html b/app/Models/index.html index bcb7cae34..905c65ee7 100644 --- a/app/Models/index.html +++ b/app/Models/index.html @@ -1,7 +1,7 @@ - 403 Forbidden + 403 Forbidden diff --git a/app/ThirdParty/index.html b/app/ThirdParty/index.html index bcb7cae34..905c65ee7 100644 --- a/app/ThirdParty/index.html +++ b/app/ThirdParty/index.html @@ -1,7 +1,7 @@ - 403 Forbidden + 403 Forbidden diff --git a/app/Views/attributes/form.php b/app/Views/attributes/form.php index 67afc5614..e44997f88 100644 --- a/app/Views/attributes/form.php +++ b/app/Views/attributes/form.php @@ -16,91 +16,91 @@ 'attribute_form', 'class' => 'form-horizontal'])?>
    -
    - 'required control-label col-xs-3']) ?> -
    - 'definition_name', - 'id' => 'definition_name', - 'class' => 'form-control input-sm', - 'value'=>$definition_info->definition_name - ] - ) ?> -
    -
    +
    + 'required control-label col-xs-3']) ?> +
    + 'definition_name', + 'id' => 'definition_name', + 'class' => 'form-control input-sm', + 'value'=>$definition_info->definition_name + ] + ) ?> +
    +
    -
    - 'required control-label col-xs-3']) ?> -
    - definition_type, DEFINITION_TYPES), 'id="definition_type" class="form-control"') ?> -
    -
    +
    + 'required control-label col-xs-3']) ?> +
    + definition_type, DEFINITION_TYPES), 'id="definition_type" class="form-control"') ?> +
    +
    -
    - 'control-label col-xs-3']) ?> -
    - definition_fk, - 'id="definition_group" class="form-control" ' . (empty($definition_group) ? 'disabled="disabled"' : '') - ) ?> -
    -
    +
    + 'control-label col-xs-3']) ?> +
    + definition_fk, + 'id="definition_group" class="form-control" ' . (empty($definition_group) ? 'disabled="disabled"' : '') + ) ?> +
    +
    - + - + - + - +
    @@ -109,169 +109,169 @@ //validation and submit handling $(document).ready(function() { - var values = []; - var definition_id = ; - var is_new = definition_id == 0; + var values = []; + var definition_id = ; + var is_new = definition_id == 0; - var disable_definition_types = function() - { - var definition_type = $("#definition_type option:selected").text(); + var disable_definition_types = function() + { + var definition_type = $("#definition_type option:selected").text(); - if(definition_type == "DATE" || (definition_type == "GROUP" && !is_new) || definition_type == "DECIMAL") - { - $('#definition_type').prop("disabled",true); - } - else if(definition_type == "DROPDOWN" || definition_type == "CHECKBOX") - { - $("#definition_type option:contains('GROUP')").hide(); - $("#definition_type option:contains('DATE')").hide(); - $("#definition_type option:contains('DECIMAL')").hide(); - } - else - { - $("#definition_type option:contains('GROUP')").hide(); - } - } - disable_definition_types(); + if(definition_type == "DATE" || (definition_type == "GROUP" && !is_new) || definition_type == "DECIMAL") + { + $('#definition_type').prop("disabled",true); + } + else if(definition_type == "DROPDOWN" || definition_type == "CHECKBOX") + { + $("#definition_type option:contains('GROUP')").hide(); + $("#definition_type option:contains('DATE')").hide(); + $("#definition_type option:contains('DECIMAL')").hide(); + } + else + { + $("#definition_type option:contains('GROUP')").hide(); + } + } + disable_definition_types(); - var disable_category_dropdown = function() - { - if(definition_id == -1) - { - $('#definition_name').prop("disabled",true); - $('#definition_type').prop("disabled",true); - $('#definition_group').parents('.form-group').toggleClass("hidden", true); - $('#definition_flags').parents('.form-group').toggleClass('hidden', true); - } - } - disable_category_dropdown(); + var disable_category_dropdown = function() + { + if(definition_id == -1) + { + $('#definition_name').prop("disabled",true); + $('#definition_type').prop("disabled",true); + $('#definition_group').parents('.form-group').toggleClass("hidden", true); + $('#definition_flags').parents('.form-group').toggleClass('hidden', true); + } + } + disable_category_dropdown(); - var show_hide_fields = function(event) - { - var is_dropdown = $('#definition_type').val() !== '1'; - var is_decimal = $('#definition_type').val() !== '2'; - var is_no_group = $('#definition_type').val() !== '0'; - var is_category_dropdown = definition_id == -1; + var show_hide_fields = function(event) + { + var is_dropdown = $('#definition_type').val() !== '1'; + var is_decimal = $('#definition_type').val() !== '2'; + var is_no_group = $('#definition_type').val() !== '0'; + var is_category_dropdown = definition_id == -1; - $('#definition_value, #definition_list_group').parents('.form-group').toggleClass('hidden', is_dropdown); - $('#definition_unit').parents('.form-group').toggleClass('hidden', is_decimal); + $('#definition_value, #definition_list_group').parents('.form-group').toggleClass('hidden', is_dropdown); + $('#definition_unit').parents('.form-group').toggleClass('hidden', is_decimal); - //Appropriately show definition flags if not category_dropdown - if(definition_id != -1) - { - $('#definition_flags').parents('.form-group').toggleClass('hidden', !is_no_group); - } - }; + //Appropriately show definition flags if not category_dropdown + if(definition_id != -1) + { + $('#definition_flags').parents('.form-group').toggleClass('hidden', !is_no_group); + } + }; - $('#definition_type').change(show_hide_fields); - show_hide_fields(); + $('#definition_type').change(show_hide_fields); + show_hide_fields(); - $('.selectpicker').each(function () { - var $selectpicker = $(this); - $.fn.selectpicker.call($selectpicker, $selectpicker.data()); - }); + $('.selectpicker').each(function () { + var $selectpicker = $(this); + $.fn.selectpicker.call($selectpicker, $selectpicker.data()); + }); - var remove_attribute_value = function() - { - var value = $(this).parents("li").text(); + var remove_attribute_value = function() + { + var value = $(this).parents("li").text(); - if (is_new) - { - values.splice($.inArray(value, values), 1); - } - else - { - $.post('', {definition_id: definition_id, attribute_value: value}); - } - $(this).parents("li").remove(); - }; + if (is_new) + { + values.splice($.inArray(value, values), 1); + } + else + { + $.post('', {definition_id: definition_id, attribute_value: value}); + } + $(this).parents("li").remove(); + }; - var add_attribute_value = function(value) - { - var is_event = typeof(value) !== 'string'; + var add_attribute_value = function(value) + { + var is_event = typeof(value) !== 'string'; if ($("#definition_value").val().match(/(\||_)/g) != null) { return; } - if (is_event) - { - value = $('#definition_value').val(); + if (is_event) + { + value = $('#definition_value').val(); - if (!value) - { - return; - } + if (!value) + { + return; + } - if (is_new) - { - values.push(value); - } - else - { - $.post('', {definition_id: definition_id, attribute_value: value}); - } - } + if (is_new) + { + values.push(value); + } + else + { + $.post('', {definition_id: definition_id, attribute_value: value}); + } + } - $('#definition_list_group').append("
  • " + value + "
  • ") - .find(':last-child a').click(remove_attribute_value); - $('#definition_value').val(''); - }; + $('#definition_list_group').append("
  • " + value + "
  • ") + .find(':last-child a').click(remove_attribute_value); + $('#definition_value').val(''); + }; - $('#add_attribute_value').click(add_attribute_value); + $('#add_attribute_value').click(add_attribute_value); - $('#definition_value').keypress(function (e) { - if (e.which == 13) { - add_attribute_value(); - return false; - } - }); + $('#definition_value').keypress(function (e) { + if (e.which == 13) { + add_attribute_value(); + return false; + } + }); - var definition_values = ; - $.each(definition_values, function(index, element) { - add_attribute_value(element); - }); + var definition_values = ; + $.each(definition_values, function(index, element) { + add_attribute_value(element); + }); - $.validator.addMethod('valid_chars', function(value, element) { + $.validator.addMethod('valid_chars', function(value, element) { return value.match(/(\||_)/g) == null; - }, ""); + }, ""); - $('form').bind('submit', function () { - $(this).find(':input').prop('disabled', false); - }); + $('form').bind('submit', function () { + $(this).find(':input').prop('disabled', false); + }); - $('#attribute_form').validate($.extend({ - submitHandler: function(form) - { - $(form).ajaxSubmit({ - beforeSerialize: function($form, options) { - is_new && $('').attr({ - id: 'definition_values', - type: 'hidden', - name: 'definition_values', - value: JSON.stringify(values) - }).appendTo($form); - }, - success: function(response) - { - dialog_support.hide(); - table_support.handle_submit('', response); - }, - dataType: 'json' - }); - }, - rules: - { - definition_name: 'required', - definition_value: 'valid_chars', - definition_type: 'required' - }, + $('#attribute_form').validate($.extend({ + submitHandler: function(form) + { + $(form).ajaxSubmit({ + beforeSerialize: function($form, options) { + is_new && $('').attr({ + id: 'definition_values', + type: 'hidden', + name: 'definition_values', + value: JSON.stringify(values) + }).appendTo($form); + }, + success: function(response) + { + dialog_support.hide(); + table_support.handle_submit('', response); + }, + dataType: 'json' + }); + }, + rules: + { + definition_name: 'required', + definition_value: 'valid_chars', + definition_type: 'required' + }, messages: { definition_name: "", definition_type: "" } - }, form_support.error)); + }, form_support.error)); }); diff --git a/app/Views/attributes/item.php b/app/Views/attributes/item.php index ac0516424..a4c474d33 100644 --- a/app/Views/attributes/item.php +++ b/app/Views/attributes/item.php @@ -7,16 +7,16 @@ */ ?>
    - 'control-label col-xs-3']) ?> -
    - 'definition_name', - 'options' => $definition_names, - 'selected' => -1, - 'class' => 'form-control', - 'id' => 'definition_name' - ]) ?> -
    + 'control-label col-xs-3']) ?> +
    + 'definition_name', + 'options' => $definition_names, + 'selected' => -1, + 'class' => 'form-control', + 'id' => 'definition_name' + ]) ?> +
    @@ -26,78 +26,78 @@ foreach($definition_values as $definition_id => $definition_value) ?>
    - 'control-label col-xs-3']) ?> -
    -
    - 'control-label col-xs-3']) ?> +
    +
    + attribute_date)) ? NOW : strtotime($attribute_value->attribute_date); - echo form_input ([ - 'name' => "attribute_links[$definition_id]", - 'value' => to_date($value), - 'class' => 'form-control input-sm datetime', - 'data-definition-id' => $definition_id, - 'readonly' => 'true' - ]); - break; - case DROPDOWN: - $selected_value = $definition_value['selected_value']; - echo form_dropdown([ - 'name' => "attribute_links[$definition_id]", - 'options' => $definition_value['values'], - 'selected' => $selected_value, - 'class' => 'form-control', - 'data-definition-id' => $definition_id - ]); - break; - case TEXT: - $value = (empty($attribute_value) || empty($attribute_value->attribute_value)) ? $definition_value['selected_value'] : $attribute_value->attribute_value; - echo form_input([ - 'name' => "attribute_links[$definition_id]", - 'value' => $value, - 'class' => 'form-control valid_chars', - 'data-definition-id' => $definition_id - ]); - break; - case DECIMAL: - $value = (empty($attribute_value) || empty($attribute_value->attribute_decimal)) ? $definition_value['selected_value'] : $attribute_value->attribute_decimal; - echo form_input([ - 'name' => "attribute_links[$definition_id]", - 'value' => to_decimals((float)$value), - 'class' => 'form-control valid_chars', - 'data-definition-id' => $definition_id - ]); - break; - case CHECKBOX: - $value = (empty($attribute_value) || empty($attribute_value->attribute_value)) ? $definition_value['selected_value'] : $attribute_value->attribute_value; + switch($definition_value['definition_type']) + { + case DATE: + $value = (empty($attribute_value) || empty($attribute_value->attribute_date)) ? NOW : strtotime($attribute_value->attribute_date); + echo form_input ([ + 'name' => "attribute_links[$definition_id]", + 'value' => to_date($value), + 'class' => 'form-control input-sm datetime', + 'data-definition-id' => $definition_id, + 'readonly' => 'true' + ]); + break; + case DROPDOWN: + $selected_value = $definition_value['selected_value']; + echo form_dropdown([ + 'name' => "attribute_links[$definition_id]", + 'options' => $definition_value['values'], + 'selected' => $selected_value, + 'class' => 'form-control', + 'data-definition-id' => $definition_id + ]); + break; + case TEXT: + $value = (empty($attribute_value) || empty($attribute_value->attribute_value)) ? $definition_value['selected_value'] : $attribute_value->attribute_value; + echo form_input([ + 'name' => "attribute_links[$definition_id]", + 'value' => $value, + 'class' => 'form-control valid_chars', + 'data-definition-id' => $definition_id + ]); + break; + case DECIMAL: + $value = (empty($attribute_value) || empty($attribute_value->attribute_decimal)) ? $definition_value['selected_value'] : $attribute_value->attribute_decimal; + echo form_input([ + 'name' => "attribute_links[$definition_id]", + 'value' => to_decimals((float)$value), + 'class' => 'form-control valid_chars', + 'data-definition-id' => $definition_id + ]); + break; + case CHECKBOX: + $value = (empty($attribute_value) || empty($attribute_value->attribute_value)) ? $definition_value['selected_value'] : $attribute_value->attribute_value; - //Sends 0 if the box is unchecked instead of not sending anything. - echo form_input ([ - 'type' => 'hidden', - 'name' => "attribute_links[$definition_id]", - 'id' => "attribute_links[$definition_id]", - 'value' => 0, - 'data-definition-id' => $definition_id - ]); - echo form_checkbox ([ - 'name' => "attribute_links[$definition_id]", - 'id' => "attribute_links[$definition_id]", - 'value' => 1, - 'checked' => $value == 1, - 'class' => 'checkbox-inline', - 'data-definition-id' => $definition_id - ]); - break; - } - ?> - -
    -
    + //Sends 0 if the box is unchecked instead of not sending anything. + echo form_input ([ + 'type' => 'hidden', + 'name' => "attribute_links[$definition_id]", + 'id' => "attribute_links[$definition_id]", + 'value' => 0, + 'data-definition-id' => $definition_id + ]); + echo form_checkbox ([ + 'name' => "attribute_links[$definition_id]", + 'id' => "attribute_links[$definition_id]", + 'value' => 1, + 'checked' => $value == 1, + 'class' => 'checkbox-inline', + 'data-definition-id' => $definition_id + ]); + break; + } + ?> + +
    +
    $definition_value) diff --git a/app/Views/attributes/manage.php b/app/Views/attributes/manage.php index 48cee40aa..a2e1416a8 100644 --- a/app/Views/attributes/manage.php +++ b/app/Views/attributes/manage.php @@ -1,5 +1,5 @@
    - +
    -
    +
    diff --git a/app/Views/barcodes/barcode_sheet.php b/app/Views/barcodes/barcode_sheet.php index f31f97169..de5905c9f 100644 --- a/app/Views/barcodes/barcode_sheet.php +++ b/app/Views/barcodes/barcode_sheet.php @@ -12,35 +12,35 @@ $barcode_lib = new Barcode_lib(); ?> - - - <?= lang('Items.generate_barcodes') ?> - - - + + + <?= lang('Items.generate_barcodes') ?> + + + - get_font_name($barcode_config['barcode_font']) ?> - style="font-size:px"> - width='' > - - '; - } - echo ''; - $count++; - } - ?> - -
    ' . $barcode_lib->display_barcode($item, $barcode_config) . '
    - + get_font_name($barcode_config['barcode_font']) ?> + style="font-size:px"> + width='' > + + '; + } + echo ''; + $count++; + } + ?> + +
    ' . $barcode_lib->display_barcode($item, $barcode_config) . '
    + diff --git a/app/Views/cashups/form.php b/app/Views/cashups/form.php index d3dce6bfb..b46348ab8 100644 --- a/app/Views/cashups/form.php +++ b/app/Views/cashups/form.php @@ -11,362 +11,362 @@
      cashup_id, ['id' => 'cashups_edit_form', 'class' => 'form-horizontal']) //TODO: String Interpolation ?> -
      -
      - 'control-label col-xs-3']) ?> - cashup_id) ? lang('Cashups.id') . ' ' . $cash_ups_info->cashup_id : '', 'cashup_id', ['class' => 'control-label col-xs-8', 'style' => 'text-align:left']) ?> -
      +
      +
      + 'control-label col-xs-3']) ?> + cashup_id) ? lang('Cashups.id') . ' ' . $cash_ups_info->cashup_id : '', 'cashup_id', ['class' => 'control-label col-xs-8', 'style' => 'text-align:left']) ?> +
      -
      - 'required control-label col-xs-3']) ?> -
      -
      - - 'open_date', - 'id' => 'open_date', - 'class' => 'form-control input-sm datepicker', - 'value'=>to_datetime(strtotime($cash_ups_info->open_date))] - ) ?> -
      -
      -
      +
      + 'required control-label col-xs-3']) ?> +
      +
      + + 'open_date', + 'id' => 'open_date', + 'class' => 'form-control input-sm datepicker', + 'value'=>to_datetime(strtotime($cash_ups_info->open_date))] + ) ?> +
      +
      +
      -
      - 'control-label col-xs-3']) ?> -
      - open_employee_id, 'id="open_employee_id" class="form-control"') ?> -
      -
      +
      + 'control-label col-xs-3']) ?> +
      + open_employee_id, 'id="open_employee_id" class="form-control"') ?> +
      +
      -
      - 'control-label col-xs-3']) ?> -
      -
      - - - - 'open_amount_cash', - 'id' => 'open_amount_cash', - 'class' => 'form-control input-sm', - 'value' => to_currency_no_money($cash_ups_info->open_amount_cash) - ]) ?> - - - -
      -
      -
      +
      + 'control-label col-xs-3']) ?> +
      +
      + + + + 'open_amount_cash', + 'id' => 'open_amount_cash', + 'class' => 'form-control input-sm', + 'value' => to_currency_no_money($cash_ups_info->open_amount_cash) + ]) ?> + + + +
      +
      +
      -
      - 'control-label col-xs-3']) ?> -
      -
      - - - - 'transfer_amount_cash', - 'id' => 'transfer_amount_cash', - 'class' => 'form-control input-sm', - 'value'=>to_currency_no_money($cash_ups_info->transfer_amount_cash) - ]) - ?> - - - -
      -
      -
      +
      + 'control-label col-xs-3']) ?> +
      +
      + + + + 'transfer_amount_cash', + 'id' => 'transfer_amount_cash', + 'class' => 'form-control input-sm', + 'value'=>to_currency_no_money($cash_ups_info->transfer_amount_cash) + ]) + ?> + + + +
      +
      +
      -
      - 'required control-label col-xs-3']) ?> -
      -
      - - 'close_date', - 'id' => 'close_date', - 'class' => 'form-control input-sm datepicker', - 'value'=>to_datetime(strtotime($cash_ups_info->close_date))] - ) ?> -
      -
      -
      +
      + 'required control-label col-xs-3']) ?> +
      +
      + + 'close_date', + 'id' => 'close_date', + 'class' => 'form-control input-sm datepicker', + 'value'=>to_datetime(strtotime($cash_ups_info->close_date))] + ) ?> +
      +
      +
      -
      - 'control-label col-xs-3']) ?> -
      - close_employee_id, 'id="close_employee_id" class="form-control"') ?> -
      -
      +
      + 'control-label col-xs-3']) ?> +
      + close_employee_id, 'id="close_employee_id" class="form-control"') ?> +
      +
      -
      - 'control-label col-xs-3']) ?> -
      -
      - - - - 'closed_amount_cash', - 'id' => 'closed_amount_cash', - 'class' => 'form-control input-sm', - 'value'=>to_currency_no_money($cash_ups_info->closed_amount_cash)] - ) ?> - - - -
      -
      -
      +
      + 'control-label col-xs-3']) ?> +
      +
      + + + + 'closed_amount_cash', + 'id' => 'closed_amount_cash', + 'class' => 'form-control input-sm', + 'value'=>to_currency_no_money($cash_ups_info->closed_amount_cash)] + ) ?> + + + +
      +
      +
      -
      - 'control-label col-xs-3']) ?> -
      - 'note', - 'id' => 'note', - 'value'=>0, - 'checked'=>$cash_ups_info->note == 1 - ]) ?> -
      -
      +
      + 'control-label col-xs-3']) ?> +
      + 'note', + 'id' => 'note', + 'value'=>0, + 'checked'=>$cash_ups_info->note == 1 + ]) ?> +
      +
      -
      - 'control-label col-xs-3']) ?> -
      -
      - - - - 'closed_amount_due', - 'id' => 'closed_amount_due', - 'class' => 'form-control input-sm', - 'value'=>to_currency_no_money($cash_ups_info->closed_amount_due)] - ) ?> - - - -
      -
      -
      +
      + 'control-label col-xs-3']) ?> +
      +
      + + + + 'closed_amount_due', + 'id' => 'closed_amount_due', + 'class' => 'form-control input-sm', + 'value'=>to_currency_no_money($cash_ups_info->closed_amount_due)] + ) ?> + + + +
      +
      +
      -
      - 'control-label col-xs-3']) ?> -
      -
      - - - - 'closed_amount_card', - 'id' => 'closed_amount_card', - 'class' => 'form-control input-sm', - 'value'=>to_currency_no_money($cash_ups_info->closed_amount_card)] - ) ?> - - - -
      -
      -
      +
      + 'control-label col-xs-3']) ?> +
      +
      + + + + 'closed_amount_card', + 'id' => 'closed_amount_card', + 'class' => 'form-control input-sm', + 'value'=>to_currency_no_money($cash_ups_info->closed_amount_card)] + ) ?> + + + +
      +
      +
      -
      - 'control-label col-xs-3']) ?> -
      -
      - - - - 'closed_amount_check', - 'id' => 'closed_amount_check', - 'class' => 'form-control input-sm', - 'value'=>to_currency_no_money($cash_ups_info->closed_amount_check)] - ) ?> - - - -
      -
      -
      +
      + 'control-label col-xs-3']) ?> +
      +
      + + + + 'closed_amount_check', + 'id' => 'closed_amount_check', + 'class' => 'form-control input-sm', + 'value'=>to_currency_no_money($cash_ups_info->closed_amount_check)] + ) ?> + + + +
      +
      +
      -
      - 'control-label col-xs-3']) ?> -
      -
      - - - - 'closed_amount_total', - 'id' => 'closed_amount_total', - 'readonly' => 'true', - 'class' => 'form-control input-sm', - 'value'=>to_currency_no_money($cash_ups_info->closed_amount_total) - ] - ) ?> - - - -
      -
      -
      +
      + 'control-label col-xs-3']) ?> +
      +
      + + + + 'closed_amount_total', + 'id' => 'closed_amount_total', + 'readonly' => 'true', + 'class' => 'form-control input-sm', + 'value'=>to_currency_no_money($cash_ups_info->closed_amount_total) + ] + ) ?> + + + +
      +
      +
      -
      - 'control-label col-xs-3']) ?> -
      - 'description', - 'id' => 'description', - 'class' => 'form-control input-sm', - 'value'=>$cash_ups_info->description - ] - ) ?> -
      -
      +
      + 'control-label col-xs-3']) ?> +
      + 'description', + 'id' => 'description', + 'class' => 'form-control input-sm', + 'value'=>$cash_ups_info->description + ] + ) ?> +
      +
      - cashup_id)) - { - ?> -
      - 'control-label col-xs-3']) ?> -
      - 'deleted', - 'id' => 'deleted', - 'value'=>1, - 'checked'=>$cash_ups_info->deleted == 1 - ]) ?> -
      -
      - -
      + cashup_id)) + { + ?> +
      + 'control-label col-xs-3']) ?> +
      + 'deleted', + 'id' => 'deleted', + 'value'=>1, + 'checked'=>$cash_ups_info->deleted == 1 + ]) ?> +
      +
      + +
      diff --git a/app/Views/cashups/manage.php b/app/Views/cashups/manage.php index ae726be4a..56d844281 100644 --- a/app/Views/cashups/manage.php +++ b/app/Views/cashups/manage.php @@ -11,68 +11,68 @@ false, 'selected_printer' => 'takings_printer']) ?>
      -
      -
      +
      diff --git a/app/Views/configs/barcode_config.php b/app/Views/configs/barcode_config.php index 111015649..4cf7f45ff 100644 --- a/app/Views/configs/barcode_config.php +++ b/app/Views/configs/barcode_config.php @@ -6,312 +6,312 @@ */ ?> 'barcode_config_form', 'class' => 'form-horizontal']) ?> -
      -
      -
      -
        +
        +
        +
        +
          -
          - 'control-label col-xs-2']) ?> -
          - -
          -
          +
          + 'control-label col-xs-2']) ?> +
          + +
          +
          -
          - 'control-label col-xs-2 required']) ?> -
          - '5', - 'max' => '350', - 'min' => '60', - 'type' => 'number', - 'name' => 'barcode_width', - 'id' => 'barcode_width', - 'class' => 'form-control input-sm required', - 'value' => $config['barcode_width'] - ]) ?> -
          -
          +
          + 'control-label col-xs-2 required']) ?> +
          + '5', + 'max' => '350', + 'min' => '60', + 'type' => 'number', + 'name' => 'barcode_width', + 'id' => 'barcode_width', + 'class' => 'form-control input-sm required', + 'value' => $config['barcode_width'] + ]) ?> +
          +
          -
          - 'control-label col-xs-2 required']) ?> -
          - 'number', - 'min' => 10, - 'max' => 120, - 'name' => 'barcode_height', - 'id' => 'barcode_height', - 'class' => 'form-control input-sm required', - 'value'=>$config['barcode_height'] - ]) ?> -
          -
          +
          + 'control-label col-xs-2 required']) ?> +
          + 'number', + 'min' => 10, + 'max' => 120, + 'name' => 'barcode_height', + 'id' => 'barcode_height', + 'class' => 'form-control input-sm required', + 'value'=>$config['barcode_height'] + ]) ?> +
          +
          -
          - 'control-label col-xs-2 required']) ?> -
          - -
          -
          - 'number', - 'min' => '1', - 'max' => '30', - 'name' => 'barcode_font_size', - 'id' => 'barcode_font_size', - 'class' => 'form-control input-sm required', - 'value' => $config['barcode_font_size'] - ]) ?> -
          -
          +
          + 'control-label col-xs-2 required']) ?> +
          + +
          +
          + 'number', + 'min' => '1', + 'max' => '30', + 'name' => 'barcode_font_size', + 'id' => 'barcode_font_size', + 'class' => 'form-control input-sm required', + 'value' => $config['barcode_font_size'] + ]) ?> +
          +
          -
          - 'control-label col-xs-2']) ?> -
          - 'allow_duplicate_barcodes', - 'id' => 'allow_duplicate_barcodes', - 'value' => 'allow_duplicate_barcodes', - 'checked' => $config['allow_duplicate_barcodes'] == 1 - ]) ?> -   - -
          -
          +
          + 'control-label col-xs-2']) ?> +
          + 'allow_duplicate_barcodes', + 'id' => 'allow_duplicate_barcodes', + 'value' => 'allow_duplicate_barcodes', + 'checked' => $config['allow_duplicate_barcodes'] == 1 + ]) ?> +   + +
          +
          -
          - 'control-label col-xs-2']) ?> -
          - - -   -   - -
          -
          +
          + 'control-label col-xs-2']) ?> +
          + + +   +   + +
          +
          -
          - 'control-label col-xs-2']) ?> -
          - settings['barcode_formats']); - echo form_dropdown ([ - 'name' => 'barcode_formats[]', - 'id' => 'barcode_formats', - 'options' => !empty($barcode_formats) ? array_combine($barcode_formats, $barcode_formats) : [], - 'multiple' => 'multiple', - 'data-role' => 'tagsinput']) ?> -
          -
          +
          + 'control-label col-xs-2']) ?> +
          + settings['barcode_formats']); + echo form_dropdown ([ + 'name' => 'barcode_formats[]', + 'id' => 'barcode_formats', + 'options' => !empty($barcode_formats) ? array_combine($barcode_formats, $barcode_formats) : [], + 'multiple' => 'multiple', + 'data-role' => 'tagsinput']) ?> +
          +
          -
          - 'control-label col-xs-2']) ?> -
          -
          - -
          - lang('Config.none'), - 'name' => lang('Items.name'), - 'category' => lang('Items.category'), - 'cost_price' => lang('Items.cost_price'), - 'unit_price' => lang('Items.unit_price'), - 'company_name' => lang('Suppliers.company_name') - ], - $config['barcode_first_row'], ['class' => 'form-control input-sm']); - ?> -
          - -
          - lang('Config.none'), - 'name' => lang('Items.name'), - 'category' => lang('Items.category'), - 'cost_price' => lang('Items.cost_price'), - 'unit_price' => lang('Items.unit_price'), - 'item_code' => lang('Items.item_number'), - 'company_name' => lang('Suppliers.company_name') - ], - $config['barcode_second_row'], ['class' => 'form-control input-sm']) ?> -
          - -
          - lang('Config.none'), - 'name' => lang('Items.name'), - 'category' => lang('Items.category'), - 'cost_price' => lang('Items.cost_price'), - 'unit_price' => lang('Items.unit_price'), - 'item_code' => lang('Items.item_number'), - 'company_name' => lang('Suppliers.company_name') - ], - $config['barcode_third_row'], ['class' => 'form-control input-sm']) ?> -
          -
          -
          -
          +
          + 'control-label col-xs-2']) ?> +
          +
          + +
          + lang('Config.none'), + 'name' => lang('Items.name'), + 'category' => lang('Items.category'), + 'cost_price' => lang('Items.cost_price'), + 'unit_price' => lang('Items.unit_price'), + 'company_name' => lang('Suppliers.company_name') + ], + $config['barcode_first_row'], ['class' => 'form-control input-sm']); + ?> +
          + +
          + lang('Config.none'), + 'name' => lang('Items.name'), + 'category' => lang('Items.category'), + 'cost_price' => lang('Items.cost_price'), + 'unit_price' => lang('Items.unit_price'), + 'item_code' => lang('Items.item_number'), + 'company_name' => lang('Suppliers.company_name') + ], + $config['barcode_second_row'], ['class' => 'form-control input-sm']) ?> +
          + +
          + lang('Config.none'), + 'name' => lang('Items.name'), + 'category' => lang('Items.category'), + 'cost_price' => lang('Items.cost_price'), + 'unit_price' => lang('Items.unit_price'), + 'item_code' => lang('Items.item_number'), + 'company_name' => lang('Suppliers.company_name') + ], + $config['barcode_third_row'], ['class' => 'form-control input-sm']) ?> +
          +
          +
          +
          -
          - 'control-label col-xs-2 required']) ?> -
          - 'barcode_num_in_row', - 'id' => 'barcode_num_in_row', - 'class' => 'form-control input-sm required', - 'value' => $config['barcode_num_in_row'] - ]) ?> -
          -
          +
          + 'control-label col-xs-2 required']) ?> +
          + 'barcode_num_in_row', + 'id' => 'barcode_num_in_row', + 'class' => 'form-control input-sm required', + 'value' => $config['barcode_num_in_row'] + ]) ?> +
          +
          -
          - 'control-label col-xs-2 required']) ?> -
          -
          - 'barcode_page_width', - 'id' => 'barcode_page_width', - 'class' => 'form-control input-sm required', - 'value' => $config['barcode_page_width'] - ]) ?> - % -
          -
          -
          +
          + 'control-label col-xs-2 required']) ?> +
          +
          + 'barcode_page_width', + 'id' => 'barcode_page_width', + 'class' => 'form-control input-sm required', + 'value' => $config['barcode_page_width'] + ]) ?> + % +
          +
          +
          -
          - 'control-label col-xs-2 required']) ?> -
          -
          - 'barcode_page_cellspacing', - 'id' => 'barcode_page_cellspacing', - 'class' => 'form-control input-sm required', - 'value' => $config['barcode_page_cellspacing'] - ]) ?> - px -
          -
          -
          +
          + 'control-label col-xs-2 required']) ?> +
          +
          + 'barcode_page_cellspacing', + 'id' => 'barcode_page_cellspacing', + 'class' => 'form-control input-sm required', + 'value' => $config['barcode_page_cellspacing'] + ]) ?> + px +
          +
          +
          - 'submit_barcode', - 'id' => 'submit_barcode', - 'value' => lang('Common.submit'), - 'class' => 'btn btn-primary btn-sm pull-right']) ?> -
          -
          + 'submit_barcode', + 'id' => 'submit_barcode', + 'value' => lang('Common.submit'), + 'class' => 'btn btn-primary btn-sm pull-right']) ?> +
          +
          diff --git a/app/Views/configs/email_config.php b/app/Views/configs/email_config.php index 77d113dc2..ad3a5b3b7 100644 --- a/app/Views/configs/email_config.php +++ b/app/Views/configs/email_config.php @@ -4,170 +4,170 @@ */ ?> 'email_config_form', 'enctype' => 'multipart/form-data', 'class' => 'form-horizontal']) ?> -
          -
          -
          -
            +
            +
            +
            +
              -
              - 'control-label col-xs-2']) ?> -
              - 'mail', - 'sendmail' => 'sendmail', - 'smtp' => 'smtp' - ], - $config['protocol'], - "class='form-control input-sm' id='protocol'" - ) ?> -
              -
              +
              + 'control-label col-xs-2']) ?> +
              + 'mail', + 'sendmail' => 'sendmail', + 'smtp' => 'smtp' + ], + $config['protocol'], + "class='form-control input-sm' id='protocol'" + ) ?> +
              +
              -
              - 'control-label col-xs-2']) ?> -
              - 'mailpath', - 'id' => 'mailpath', - 'class' => 'form-control input-sm', - 'value' => $config['mailpath'] - ]) ?> -
              -
              +
              + 'control-label col-xs-2']) ?> +
              + 'mailpath', + 'id' => 'mailpath', + 'class' => 'form-control input-sm', + 'value' => $config['mailpath'] + ]) ?> +
              +
              -
              - 'control-label col-xs-2']) ?> -
              - 'smtp_host', - 'id' => 'smtp_host', - 'class' => 'form-control input-sm', - 'value' => $config['smtp_host'] - ]) ?> -
              -
              +
              + 'control-label col-xs-2']) ?> +
              + 'smtp_host', + 'id' => 'smtp_host', + 'class' => 'form-control input-sm', + 'value' => $config['smtp_host'] + ]) ?> +
              +
              -
              - 'control-label col-xs-2']) ?> -
              - 'smtp_port', - 'id' => 'smtp_port', - 'class' => 'form-control input-sm', - 'value' => $config['smtp_port'] - ]) ?> -
              -
              +
              + 'control-label col-xs-2']) ?> +
              + 'smtp_port', + 'id' => 'smtp_port', + 'class' => 'form-control input-sm', + 'value' => $config['smtp_port'] + ]) ?> +
              +
              -
              - 'control-label col-xs-2']) ?> -
              - 'None', - 'tls' => 'TLS', - 'ssl' => 'SSL' - ], - $config['smtp_crypto'], - "class='form-control input-sm' id='smtp_crypto'" - ) ?> -
              -
              +
              + 'control-label col-xs-2']) ?> +
              + 'None', + 'tls' => 'TLS', + 'ssl' => 'SSL' + ], + $config['smtp_crypto'], + "class='form-control input-sm' id='smtp_crypto'" + ) ?> +
              +
              -
              - 'control-label col-xs-2']) ?> -
              - 'smtp_timeout', - 'id' => 'smtp_timeout', - 'class' => 'form-control input-sm', - 'value' => $config['smtp_timeout'] - ]) ?> -
              -
              +
              + 'control-label col-xs-2']) ?> +
              + 'smtp_timeout', + 'id' => 'smtp_timeout', + 'class' => 'form-control input-sm', + 'value' => $config['smtp_timeout'] + ]) ?> +
              +
              -
              - 'control-label col-xs-2']) ?> -
              -
              - - 'smtp_user', - 'id' => 'smtp_user', - 'class' => 'form-control input-sm', - 'value' => $config['smtp_user'] - ]) ?> -
              -
              -
              +
              + 'control-label col-xs-2']) ?> +
              +
              + + 'smtp_user', + 'id' => 'smtp_user', + 'class' => 'form-control input-sm', + 'value' => $config['smtp_user'] + ]) ?> +
              +
              +
              -
              - 'control-label col-xs-2']) ?> -
              -
              - - 'smtp_pass', - 'id' => 'smtp_pass', - 'class' => 'form-control input-sm', - 'value' => $config['smtp_pass'] - ]) ?> -
              -
              -
              +
              + 'control-label col-xs-2']) ?> +
              +
              + + 'smtp_pass', + 'id' => 'smtp_pass', + 'class' => 'form-control input-sm', + 'value' => $config['smtp_pass'] + ]) ?> +
              +
              +
              - 'submit_email', - 'id' => 'submit_email', - 'value' => lang('Common.submit'), - 'class' => 'btn btn-primary btn-sm pull-right']) ?> -
              -
              + 'submit_email', + 'id' => 'submit_email', + 'value' => lang('Common.submit'), + 'class' => 'btn btn-primary btn-sm pull-right']) ?> +
              +
              diff --git a/app/Views/configs/general_config.php b/app/Views/configs/general_config.php index 6c92eb65a..33f36ca6e 100644 --- a/app/Views/configs/general_config.php +++ b/app/Views/configs/general_config.php @@ -9,532 +9,532 @@ */ ?> 'general_config_form', 'enctype' => 'multipart/form-data', 'class' => 'form-horizontal']) ?> -
              -
              -
              -
                +
                +
                +
                +
                  -
                  - 'control-label col-xs-2']) ?> -
                  -
                  -
                  - -
                  -
                  - - - -
                  -
                  -
                  -
                  +
                  + 'control-label col-xs-2']) ?> +
                  +
                  +
                  + +
                  +
                  + + + +
                  +
                  +
                  +
                  -
                  - 'control-label col-xs-2']) ?> -
                  - lang('Config.floating_labels'), - 'input_groups' => lang('Config.input_groups') - ], - $config['login_form'], - "class='form-control input-sm'" - ) ?> -
                  -
                  +
                  + 'control-label col-xs-2']) ?> +
                  + lang('Config.floating_labels'), + 'input_groups' => lang('Config.input_groups') + ], + $config['login_form'], + "class='form-control input-sm'" + ) ?> +
                  +
                  -
                  - 'control-label col-xs-2 required']) ?> -
                  -
                  - 'default_sales_discount', - 'id' => 'default_sales_discount', - 'class' => 'form-control input-sm required', - 'type' => 'number', - 'min' => 0, - 'max' => 100, - 'value' => $config['default_sales_discount'] - ]) ?> - - 'default_sales_discount_type', - 'name' => 'default_sales_discount_type', - 'value' => 1, - 'data-toggle' => 'toggle', - 'data-size' => 'normal', - 'data-onstyle' => 'success', - 'data-on' => '' . $config['currency_symbol'].'', - 'data-off' => '%', - 'checked' => $config['default_sales_discount_type'] == 1 - ]) ?> - -
                  -
                  -
                  +
                  + 'control-label col-xs-2 required']) ?> +
                  +
                  + 'default_sales_discount', + 'id' => 'default_sales_discount', + 'class' => 'form-control input-sm required', + 'type' => 'number', + 'min' => 0, + 'max' => 100, + 'value' => $config['default_sales_discount'] + ]) ?> + + 'default_sales_discount_type', + 'name' => 'default_sales_discount_type', + 'value' => 1, + 'data-toggle' => 'toggle', + 'data-size' => 'normal', + 'data-onstyle' => 'success', + 'data-on' => '' . $config['currency_symbol'].'', + 'data-off' => '%', + 'checked' => $config['default_sales_discount_type'] == 1 + ]) ?> + +
                  +
                  +
                  -
                  - 'control-label col-xs-2 required']) ?> -
                  -
                  - 'default_receivings_discount', - 'id' => 'default_receivings_discount', - 'class' => 'form-control input-sm required', - 'type' => 'number', - 'min' => 0, - 'max' => 100, - 'value' => $config['default_receivings_discount'] - ]) ?> - - 'default_receivings_discount_type', - 'name' => 'default_receivings_discount_type', - 'value' => 1, - 'data-toggle' => 'toggle', - 'data-size' => 'normal', - 'data-onstyle' => 'success', - 'data-on' => '' . $config['currency_symbol'] . '', - 'data-off' => '%', - 'checked' => $config['default_receivings_discount_type'] == 1 - ]) ?> - -
                  -
                  -
                  +
                  + 'control-label col-xs-2 required']) ?> +
                  +
                  + 'default_receivings_discount', + 'id' => 'default_receivings_discount', + 'class' => 'form-control input-sm required', + 'type' => 'number', + 'min' => 0, + 'max' => 100, + 'value' => $config['default_receivings_discount'] + ]) ?> + + 'default_receivings_discount_type', + 'name' => 'default_receivings_discount_type', + 'value' => 1, + 'data-toggle' => 'toggle', + 'data-size' => 'normal', + 'data-onstyle' => 'success', + 'data-on' => '' . $config['currency_symbol'] . '', + 'data-off' => '%', + 'checked' => $config['default_receivings_discount_type'] == 1 + ]) ?> + +
                  +
                  +
                  -
                  - 'control-label col-xs-2']) ?> -
                  - 'enforce_privacy', - 'id' => 'enforce_privacy', - 'value' => 'enforce_privacy', - 'checked' => $config['enforce_privacy'] == 1 - ]) ?> -   - -
                  -
                  +
                  + 'control-label col-xs-2']) ?> +
                  + 'enforce_privacy', + 'id' => 'enforce_privacy', + 'value' => 'enforce_privacy', + 'checked' => $config['enforce_privacy'] == 1 + ]) ?> +   + +
                  +
                  -
                  - 'control-label col-xs-2']) ?> -
                  - 'receiving_calculate_average_price', - 'id' => 'receiving_calculate_average_price', - 'value' => 'receiving_calculate_average_price', - 'checked' => $config['receiving_calculate_average_price'] == 1 - ]) ?> -
                  -
                  +
                  + 'control-label col-xs-2']) ?> +
                  + 'receiving_calculate_average_price', + 'id' => 'receiving_calculate_average_price', + 'value' => 'receiving_calculate_average_price', + 'checked' => $config['receiving_calculate_average_price'] == 1 + ]) ?> +
                  +
                  -
                  - 'control-label col-xs-2 required']) ?> -
                  - 'lines_per_page', - 'id' => 'lines_per_page', - 'class' => 'form-control input-sm required', - 'type' => 'number', - 'min' => 10, - 'max' => 1000, - 'value' => $config['lines_per_page'] - ]) ?> -
                  -
                  +
                  + 'control-label col-xs-2 required']) ?> +
                  + 'lines_per_page', + 'id' => 'lines_per_page', + 'class' => 'form-control input-sm required', + 'type' => 'number', + 'min' => 10, + 'max' => 1000, + 'value' => $config['lines_per_page'] + ]) ?> +
                  +
                  -
                  - 'control-label col-xs-2']) ?> -
                  -
                  -
                  - lang('Config.top'), - 'bottom' => lang('Config.bottom') - ], - $config['notify_vertical_position'], - "class='form-control input-sm'" - ) ?> -
                  -
                  - lang('Config.left'), - 'center' => lang('Config.center'), - 'right' => lang('Config.right') - ], - $config['notify_horizontal_position'], - "class='form-control input-sm'" - ) ?> -
                  -
                  -
                  -
                  +
                  + 'control-label col-xs-2']) ?> +
                  +
                  +
                  + lang('Config.top'), + 'bottom' => lang('Config.bottom') + ], + $config['notify_vertical_position'], + "class='form-control input-sm'" + ) ?> +
                  +
                  + lang('Config.left'), + 'center' => lang('Config.center'), + 'right' => lang('Config.right') + ], + $config['notify_horizontal_position'], + "class='form-control input-sm'" + ) ?> +
                  +
                  +
                  +
                  -
                  - 'control-label col-xs-2']) ?> -
                  -
                  -
                  -
                  - - 'image_max_width', - 'id' => 'image_max_width', - 'class' => 'form-control input-sm required', - 'type' => 'number', - 'min' => 128, - 'max' => 3840, - 'value' => $config['image_max_width'], - 'data-toggle' => 'tooltip', - 'data-placement' => 'top', - 'title' => lang('Config.image_max_width_tooltip') - ]) ?> -
                  -
                  -
                  -
                  - - 'image_max_height', - 'id' => 'image_max_height', - 'class' => 'form-control input-sm required', - 'type' => 'number', - 'min' => 128, - 'max' => 3840, - 'value' => $config['image_max_height'], - 'data-toggle' => 'tooltip', - 'data-placement' => 'top', - 'title' => lang('Config.image_max_height_tooltip') - ]) ?> -
                  -
                  -
                  -
                  - - 'image_max_size', - 'id' => 'image_max_size', - 'class' => 'form-control input-sm required', - 'type' => 'number', - 'min' => 128, - 'max' => 2048, - 'value' => $config['image_max_size'], - 'data-toggle' => 'tooltip', - 'data-placement' => 'top', - 'title' => lang('Config.image_max_size_tooltip') - ]) ?> -
                  -
                  -
                  -
                  - - 'image_allowed_types[]', - 'options' => $image_allowed_types, - 'selected' => $selected_image_allowed_types, - 'id' => 'image_allowed_types', - 'class' => 'selectpicker show-menu-arrow', - 'data-none-selected-text'=>lang('Common.none_selected_text'), - 'data-selected-text-format' => 'count > 1', - 'data-style' => 'btn-default btn-sm', - 'data-width' => '100%' - ]) ?> -
                  -
                  -
                  -
                  -
                  +
                  + 'control-label col-xs-2']) ?> +
                  +
                  +
                  +
                  + + 'image_max_width', + 'id' => 'image_max_width', + 'class' => 'form-control input-sm required', + 'type' => 'number', + 'min' => 128, + 'max' => 3840, + 'value' => $config['image_max_width'], + 'data-toggle' => 'tooltip', + 'data-placement' => 'top', + 'title' => lang('Config.image_max_width_tooltip') + ]) ?> +
                  +
                  +
                  +
                  + + 'image_max_height', + 'id' => 'image_max_height', + 'class' => 'form-control input-sm required', + 'type' => 'number', + 'min' => 128, + 'max' => 3840, + 'value' => $config['image_max_height'], + 'data-toggle' => 'tooltip', + 'data-placement' => 'top', + 'title' => lang('Config.image_max_height_tooltip') + ]) ?> +
                  +
                  +
                  +
                  + + 'image_max_size', + 'id' => 'image_max_size', + 'class' => 'form-control input-sm required', + 'type' => 'number', + 'min' => 128, + 'max' => 2048, + 'value' => $config['image_max_size'], + 'data-toggle' => 'tooltip', + 'data-placement' => 'top', + 'title' => lang('Config.image_max_size_tooltip') + ]) ?> +
                  +
                  +
                  +
                  + + 'image_allowed_types[]', + 'options' => $image_allowed_types, + 'selected' => $selected_image_allowed_types, + 'id' => 'image_allowed_types', + 'class' => 'selectpicker show-menu-arrow', + 'data-none-selected-text'=>lang('Common.none_selected_text'), + 'data-selected-text-format' => 'count > 1', + 'data-style' => 'btn-default btn-sm', + 'data-width' => '100%' + ]) ?> +
                  +
                  +
                  +
                  +
                  -
                  - 'control-label col-xs-2']) ?> -
                  - 'gcaptcha_enable', - 'id' => 'gcaptcha_enable', - 'value' => 'gcaptcha_enable', - 'checked' => $config['gcaptcha_enable'] == 1 - ]) ?> - -
                  -
                  +
                  + 'control-label col-xs-2']) ?> +
                  + 'gcaptcha_enable', + 'id' => 'gcaptcha_enable', + 'value' => 'gcaptcha_enable', + 'checked' => $config['gcaptcha_enable'] == 1 + ]) ?> + +
                  +
                  -
                  - 'required control-label col-xs-2','id' => 'config_gcaptcha_site_key']) ?> -
                  - 'gcaptcha_site_key', - 'id' => 'gcaptcha_site_key', - 'class' => 'form-control input-sm required', - 'value' => $config['gcaptcha_site_key'] - ]) ?> -
                  -
                  +
                  + 'required control-label col-xs-2','id' => 'config_gcaptcha_site_key']) ?> +
                  + 'gcaptcha_site_key', + 'id' => 'gcaptcha_site_key', + 'class' => 'form-control input-sm required', + 'value' => $config['gcaptcha_site_key'] + ]) ?> +
                  +
                  -
                  - 'required control-label col-xs-2','id' => 'config_gcaptcha_secret_key']) ?> -
                  - 'gcaptcha_secret_key', - 'id' => 'gcaptcha_secret_key', - 'class' => 'form-control input-sm required', - 'value' => $config['gcaptcha_secret_key'] - ]) ?> -
                  -
                  +
                  + 'required control-label col-xs-2','id' => 'config_gcaptcha_secret_key']) ?> +
                  + 'gcaptcha_secret_key', + 'id' => 'gcaptcha_secret_key', + 'class' => 'form-control input-sm required', + 'value' => $config['gcaptcha_secret_key'] + ]) ?> +
                  +
                  -
                  - 'control-label col-xs-2']) ?> -
                  -
                  -
                  -
                  - - lang('Items.name'), - 'item_number' => lang('Items.number_information'), - 'unit_price' => lang('Items.unit_price'), - 'cost_price' => lang('Items.cost_price') - ], - $config['suggestions_first_column'], - "class='form-control input-sm'" - ) ?> -
                  -
                  -
                  -
                  - - lang('Config.none'), - 'name' => lang('Items.name'), - 'item_number' => lang('Items.number_information'), - 'unit_price' => lang('Items.unit_price'), - 'cost_price' => lang('Items.cost_price') - ], - $config['suggestions_second_column'], - "class='form-control input-sm'" - ) ?> -
                  -
                  -
                  -
                  - - lang('Config.none'), - 'name' => lang('Items.name'), - 'item_number' => lang('Items.number_information'), - 'unit_price' => lang('Items.unit_price'), - 'cost_price' => lang('Items.cost_price') - ], - $config['suggestions_third_column'], - "class='form-control input-sm'" - ) ?> -
                  -
                  -
                  -
                  -
                  +
                  + 'control-label col-xs-2']) ?> +
                  +
                  +
                  +
                  + + lang('Items.name'), + 'item_number' => lang('Items.number_information'), + 'unit_price' => lang('Items.unit_price'), + 'cost_price' => lang('Items.cost_price') + ], + $config['suggestions_first_column'], + "class='form-control input-sm'" + ) ?> +
                  +
                  +
                  +
                  + + lang('Config.none'), + 'name' => lang('Items.name'), + 'item_number' => lang('Items.number_information'), + 'unit_price' => lang('Items.unit_price'), + 'cost_price' => lang('Items.cost_price') + ], + $config['suggestions_second_column'], + "class='form-control input-sm'" + ) ?> +
                  +
                  +
                  +
                  + + lang('Config.none'), + 'name' => lang('Items.name'), + 'item_number' => lang('Items.number_information'), + 'unit_price' => lang('Items.unit_price'), + 'cost_price' => lang('Items.cost_price') + ], + $config['suggestions_third_column'], + "class='form-control input-sm'" + ) ?> +
                  +
                  +
                  +
                  +
                  -
                  - 'control-label col-xs-2']) ?> -
                  - - -
                  -
                  +
                  + 'control-label col-xs-2']) ?> +
                  + + +
                  +
                  -
                  - 'control-label col-xs-2']) ?> -
                  - 'derive_sale_quantity', - 'id' => 'derive_sale_quantity', - 'value' => 'derive_sale_quantity', - 'checked' => $config['derive_sale_quantity'] == 1 - ]) ?> -   - -
                  -
                  +
                  + 'control-label col-xs-2']) ?> +
                  + 'derive_sale_quantity', + 'id' => 'derive_sale_quantity', + 'value' => 'derive_sale_quantity', + 'checked' => $config['derive_sale_quantity'] == 1 + ]) ?> +   + +
                  +
                  -
                  - 'control-label col-xs-2']) ?> -
                  - 'show_office_group', - 'id' => 'show_office_group', - 'value' => 'show_office_group', - 'checked' => $show_office_group > 0 - ]) ?> -
                  -
                  +
                  + 'control-label col-xs-2']) ?> +
                  + 'show_office_group', + 'id' => 'show_office_group', + 'value' => 'show_office_group', + 'checked' => $show_office_group > 0 + ]) ?> +
                  +
                  -
                  - 'control-label col-xs-2']) ?> -
                  - 'multi_pack_enabled', - 'id' => 'multi_pack_enabled', - 'value' => 'multi_pack_enabled', - 'checked' => $config['multi_pack_enabled'] == 1 - ]) ?> -
                  -
                  +
                  + 'control-label col-xs-2']) ?> +
                  + 'multi_pack_enabled', + 'id' => 'multi_pack_enabled', + 'value' => 'multi_pack_enabled', + 'checked' => $config['multi_pack_enabled'] == 1 + ]) ?> +
                  +
                  -
                  - 'control-label col-xs-2']) ?> -
                  - 'include_hsn', - 'id' => 'include_hsn', - 'value' => 'include_hsn', - 'checked' => $config['include_hsn'] == 1 - ]) ?> -
                  -
                  +
                  + 'control-label col-xs-2']) ?> +
                  + 'include_hsn', + 'id' => 'include_hsn', + 'value' => 'include_hsn', + 'checked' => $config['include_hsn'] == 1 + ]) ?> +
                  +
                  -
                  - 'control-label col-xs-2']) ?> -
                  - 'category_dropdown', - 'id' => 'category_dropdown', - 'value' => 'category_dropdown', - 'checked' => $config['category_dropdown'] == 1 - ]) ?> -
                  -
                  +
                  + 'control-label col-xs-2']) ?> +
                  + 'category_dropdown', + 'id' => 'category_dropdown', + 'value' => 'category_dropdown', + 'checked' => $config['category_dropdown'] == 1 + ]) ?> +
                  +
                  - 'submit_general', - 'id' => 'submit_general', - 'value' => lang('Common.submit'), - 'class' => 'btn btn-primary btn-sm pull-right']) ?> -
                  -
                  + 'submit_general', + 'id' => 'submit_general', + 'value' => lang('Common.submit'), + 'class' => 'btn btn-primary btn-sm pull-right']) ?> +
                  +
                  diff --git a/app/Views/configs/info_config.php b/app/Views/configs/info_config.php index 4df9de42f..ebaae51eb 100644 --- a/app/Views/configs/info_config.php +++ b/app/Views/configs/info_config.php @@ -6,175 +6,175 @@ */ ?> 'info_config_form', 'enctype' => 'multipart/form-data', 'class' => 'form-horizontal']) ?> -
                  -
                  -
                  -
                    +
                    +
                    +
                    +
                      -
                      - 'control-label col-xs-2 required']) ?> -
                      -
                      - - 'company', - 'id' => 'company', - 'class' => 'form-control input-sm required', - 'value' => $config['company'] - ]) ?> -
                      -
                      -
                      +
                      + 'control-label col-xs-2 required']) ?> +
                      +
                      + + 'company', + 'id' => 'company', + 'class' => 'form-control input-sm required', + 'value' => $config['company'] + ]) ?> +
                      +
                      +
                      -
                      - 'control-label col-xs-2']) ?> -
                      -
                      -
                      -
                      - <?= lang('Config.company_logo') ?> -
                      -
                      - - - - - - -
                      -
                      -
                      -
                      +
                      + 'control-label col-xs-2']) ?> +
                      +
                      +
                      +
                      + <?= lang('Config.company_logo') ?> +
                      +
                      + + + + + + +
                      +
                      +
                      +
                      -
                      - 'control-label col-xs-2 required']) ?> -
                      - 'address', - 'id' => 'address', - 'class' => 'form-control input-sm required', - 'value'=> $config['address'] - ]) ?> -
                      -
                      +
                      + 'control-label col-xs-2 required']) ?> +
                      + 'address', + 'id' => 'address', + 'class' => 'form-control input-sm required', + 'value'=> $config['address'] + ]) ?> +
                      +
                      -
                      - 'control-label col-xs-2']) ?> -
                      -
                      - - 'website', - 'id' => 'website', - 'class' => 'form-control input-sm', - 'value'=> $config['website'] - ]) ?> -
                      -
                      -
                      +
                      + 'control-label col-xs-2']) ?> +
                      +
                      + + 'website', + 'id' => 'website', + 'class' => 'form-control input-sm', + 'value'=> $config['website'] + ]) ?> +
                      +
                      +
                      -
                      - 'control-label col-xs-2']) ?> -
                      -
                      - - 'email', - 'id' => 'email', - 'type' => 'email', - 'class' => 'form-control input-sm', - 'value'=> $config['email'] - ]) ?> -
                      -
                      -
                      +
                      + 'control-label col-xs-2']) ?> +
                      +
                      + + 'email', + 'id' => 'email', + 'type' => 'email', + 'class' => 'form-control input-sm', + 'value'=> $config['email'] + ]) ?> +
                      +
                      +
                      -
                      - 'control-label col-xs-2 required']) ?> -
                      -
                      - - 'phone', - 'id' => 'phone', - 'class' => 'form-control input-sm required', - 'value'=> $config['phone'] - ]) ?> -
                      -
                      -
                      +
                      + 'control-label col-xs-2 required']) ?> +
                      +
                      + + 'phone', + 'id' => 'phone', + 'class' => 'form-control input-sm required', + 'value'=> $config['phone'] + ]) ?> +
                      +
                      +
                      -
                      - 'control-label col-xs-2']) ?> -
                      -
                      - - 'fax', - 'id' => 'fax', - 'class' => 'form-control input-sm', - 'value'=> $config['fax'] - ]) ?> -
                      -
                      -
                      +
                      + 'control-label col-xs-2']) ?> +
                      +
                      + + 'fax', + 'id' => 'fax', + 'class' => 'form-control input-sm', + 'value'=> $config['fax'] + ]) ?> +
                      +
                      +
                      -
                      - 'control-label col-xs-2 required']) ?> -
                      - 'return_policy', - 'id' => 'return_policy', - 'class' => 'form-control input-sm required', - 'value' => $config['return_policy'] - ]) ?> -
                      -
                      +
                      + 'control-label col-xs-2 required']) ?> +
                      + 'return_policy', + 'id' => 'return_policy', + 'class' => 'form-control input-sm required', + 'value' => $config['return_policy'] + ]) ?> +
                      +
                      - 'submit_info', - 'id' => 'submit_info', - 'value' => lang('Common.submit'), - 'class' => 'btn btn-primary btn-sm pull-right']) ?> -
                      -
                      + 'submit_info', + 'id' => 'submit_info', + 'value' => lang('Common.submit'), + 'class' => 'btn btn-primary btn-sm pull-right']) ?> +
                      +
                      diff --git a/app/Views/configs/integrations_config.php b/app/Views/configs/integrations_config.php index 32880eb2e..78f84232e 100644 --- a/app/Views/configs/integrations_config.php +++ b/app/Views/configs/integrations_config.php @@ -5,88 +5,88 @@ */ ?> 'mailchimp_config_form', 'enctype' => 'multipart/form-data', 'class' => 'form-horizontal']) ?> -
                      -
                      -
                      -
                      -
                        +
                        +
                        +
                        +
                        +
                          -
                          - 'control-label col-xs-2']) ?> -
                          -
                          - - 'mailchimp_api_key', - 'id' => 'mailchimp_api_key', - 'class' => 'form-control input-sm', - 'value' => $mailchimp['api_key'] - ]) ?> -
                          -
                          -
                          - -
                          -
                          +
                          + 'control-label col-xs-2']) ?> +
                          +
                          + + 'mailchimp_api_key', + 'id' => 'mailchimp_api_key', + 'class' => 'form-control input-sm', + 'value' => $mailchimp['api_key'] + ]) ?> +
                          +
                          +
                          + +
                          +
                          -
                          - 'control-label col-xs-2']) ?> -
                          -
                          - - -
                          -
                          -
                          +
                          + 'control-label col-xs-2']) ?> +
                          +
                          + + +
                          +
                          +
                          - 'submit_mailchimp', - 'id' => 'submit_mailchimp', - 'value' => lang('Common.submit'), - 'class' => 'btn btn-primary btn-sm pull-right' - ]) ?> -
                          -
                          + 'submit_mailchimp', + 'id' => 'submit_mailchimp', + 'value' => lang('Common.submit'), + 'class' => 'btn btn-primary btn-sm pull-right' + ]) ?> +
                          +
                          diff --git a/app/Views/configs/invoice_config.php b/app/Views/configs/invoice_config.php index 9ea663bae..14aa5afe8 100644 --- a/app/Views/configs/invoice_config.php +++ b/app/Views/configs/invoice_config.php @@ -6,239 +6,239 @@ */ ?> 'invoice_config_form', 'class' => 'form-horizontal']) ?> -
                          -
                          -
                          -
                            +
                            +
                            +
                            +
                              -
                              - 'control-label col-xs-2']) ?> -
                              - 'invoice_enable', - 'value' => 'invoice_enable', - 'id' => 'invoice_enable', - 'checked' => $config['invoice_enable'] == 1 - ]) ?> -
                              -
                              +
                              + 'control-label col-xs-2']) ?> +
                              + 'invoice_enable', + 'value' => 'invoice_enable', + 'id' => 'invoice_enable', + 'checked' => $config['invoice_enable'] == 1 + ]) ?> +
                              +
                              -
                              - 'control-label col-xs-2']) ?> -
                              - -
                              -
                              +
                              + 'control-label col-xs-2']) ?> +
                              + +
                              +
                              -
                              - 'control-label col-xs-2']) ?> -
                              - 'recv_invoice_format', - 'id' => 'recv_invoice_format', - 'class' => 'form-control input-sm', - 'value' => $config['recv_invoice_format'] - ]) ?> -
                              -
                              +
                              + 'control-label col-xs-2']) ?> +
                              + 'recv_invoice_format', + 'id' => 'recv_invoice_format', + 'class' => 'form-control input-sm', + 'value' => $config['recv_invoice_format'] + ]) ?> +
                              +
                              -
                              - 'control-label col-xs-2']) ?> -
                              - 'invoice_default_comments', - 'id' => 'invoice_default_comments', - 'class' => 'form-control input-sm', - 'value' => $config['invoice_default_comments'] - ]) ?> -
                              -
                              +
                              + 'control-label col-xs-2']) ?> +
                              + 'invoice_default_comments', + 'id' => 'invoice_default_comments', + 'class' => 'form-control input-sm', + 'value' => $config['invoice_default_comments'] + ]) ?> +
                              +
                              -
                              - 'control-label col-xs-2']) ?> -
                              - 'invoice_email_message', - 'id' => 'invoice_email_message', - 'class' => 'form-control input-sm', - 'value' => $config['invoice_email_message'] - ]) ?> -
                              -
                              +
                              + 'control-label col-xs-2']) ?> +
                              + 'invoice_email_message', + 'id' => 'invoice_email_message', + 'class' => 'form-control input-sm', + 'value' => $config['invoice_email_message'] + ]) ?> +
                              +
                              -
                              - 'control-label col-xs-2']) ?> -
                              - -
                              -
                              +
                              + 'control-label col-xs-2']) ?> +
                              + +
                              +
                              -
                              - 'control-label col-xs-2']) ?> -
                              - 'sales_invoice_format', - 'id' => 'sales_invoice_format', - 'class' => 'form-control input-sm', - 'value' => $config['sales_invoice_format'] - ]) ?> -
                              -
                              +
                              + 'control-label col-xs-2']) ?> +
                              + 'sales_invoice_format', + 'id' => 'sales_invoice_format', + 'class' => 'form-control input-sm', + 'value' => $config['sales_invoice_format'] + ]) ?> +
                              +
                              -
                              - 'control-label col-xs-2']) ?> -
                              - 'number', - 'name' => 'last_used_invoice_number', - 'id' => 'last_used_invoice_number', - 'class' => 'form-control input-sm required', - 'value' => $config['last_used_invoice_number'] - ]) ?> -
                              -
                              +
                              + 'control-label col-xs-2']) ?> +
                              + 'number', + 'name' => 'last_used_invoice_number', + 'id' => 'last_used_invoice_number', + 'class' => 'form-control input-sm required', + 'value' => $config['last_used_invoice_number'] + ]) ?> +
                              +
                              -
                              - 'control-label col-xs-2']) ?> -
                              - 'sales_quote_format', - 'id' => 'sales_quote_format', - 'class' => 'form-control input-sm', - 'value' => $config['sales_quote_format'] - ]) ?> -
                              -
                              +
                              + 'control-label col-xs-2']) ?> +
                              + 'sales_quote_format', + 'id' => 'sales_quote_format', + 'class' => 'form-control input-sm', + 'value' => $config['sales_quote_format'] + ]) ?> +
                              +
                              -
                              - 'control-label col-xs-2']) ?> -
                              - 'number', - 'name' => 'last_used_quote_number', - 'id' => 'last_used_quote_number', - 'class' => 'form-control input-sm required', - 'value'=>$config['last_used_quote_number'] - ]) ?> -
                              -
                              +
                              + 'control-label col-xs-2']) ?> +
                              + 'number', + 'name' => 'last_used_quote_number', + 'id' => 'last_used_quote_number', + 'class' => 'form-control input-sm required', + 'value'=>$config['last_used_quote_number'] + ]) ?> +
                              +
                              -
                              - 'control-label col-xs-2']) ?> -
                              - 'quote_default_comments', - 'id' => 'quote_default_comments', - 'class' => 'form-control input-sm', - 'value' => $config['quote_default_comments'] - ]) ?> -
                              -
                              +
                              + 'control-label col-xs-2']) ?> +
                              + 'quote_default_comments', + 'id' => 'quote_default_comments', + 'class' => 'form-control input-sm', + 'value' => $config['quote_default_comments'] + ]) ?> +
                              +
                              -
                              - 'control-label col-xs-2']) ?> -
                              - 'work_order_enable', - 'value' => 'work_order_enable', - 'id' => 'work_order_enable', - 'checked' => $config['work_order_enable'] == 1 - ]) ?> -
                              -
                              +
                              + 'control-label col-xs-2']) ?> +
                              + 'work_order_enable', + 'value' => 'work_order_enable', + 'id' => 'work_order_enable', + 'checked' => $config['work_order_enable'] == 1 + ]) ?> +
                              +
                              -
                              - 'control-label col-xs-2']) ?> -
                              - 'work_order_format', - 'id' => 'work_order_format', - 'class' => 'form-control input-sm', - 'value' => $config['work_order_format'] - ]) ?> -
                              -
                              +
                              + 'control-label col-xs-2']) ?> +
                              + 'work_order_format', + 'id' => 'work_order_format', + 'class' => 'form-control input-sm', + 'value' => $config['work_order_format'] + ]) ?> +
                              +
                              -
                              - 'control-label col-xs-2']) ?> -
                              - 'number', - 'name' => 'last_used_work_order_number', - 'id' => 'last_used_work_order_number', - 'class' => 'form-control input-sm required', - 'value' => $config['last_used_work_order_number'] - ]) ?> -
                              -
                              +
                              + 'control-label col-xs-2']) ?> +
                              + 'number', + 'name' => 'last_used_work_order_number', + 'id' => 'last_used_work_order_number', + 'class' => 'form-control input-sm required', + 'value' => $config['last_used_work_order_number'] + ]) ?> +
                              +
                              - 'submit_invoice', - 'id' => 'submit_invoice', - 'value' => lang('Common.submit'), - 'class' => 'btn btn-primary btn-sm pull-right']) ?> -
                              -
                              + 'submit_invoice', + 'id' => 'submit_invoice', + 'value' => lang('Common.submit'), + 'class' => 'btn btn-primary btn-sm pull-right']) ?> +
                              +
                              diff --git a/app/Views/configs/license_config.php b/app/Views/configs/license_config.php index 0c615d0e4..c29be125f 100644 --- a/app/Views/configs/license_config.php +++ b/app/Views/configs/license_config.php @@ -4,28 +4,28 @@ */ ?> 'license_config_form', 'enctype' => 'multipart/form-data', 'class' => 'form-horizontal']) ?> -
                              -
                              - -
                              - 'control-label col-xs-3']) ?> -
                              - 'license', - 'id' => 'license_' . $counter++, //TODO: String Interpolation - 'class' => 'form-control', - 'readonly' => '', - 'value' => $license['text'] - ]) ?> -
                              -
                              - -
                              -
                              +
                              +
                              + +
                              + 'control-label col-xs-3']) ?> +
                              + 'license', + 'id' => 'license_' . $counter++, //TODO: String Interpolation + 'class' => 'form-control', + 'readonly' => '', + 'value' => $license['text'] + ]) ?> +
                              +
                              + +
                              +
                              diff --git a/app/Views/configs/locale_config.php b/app/Views/configs/locale_config.php index 963b92259..a3d478728 100644 --- a/app/Views/configs/locale_config.php +++ b/app/Views/configs/locale_config.php @@ -8,344 +8,344 @@ ?> 'locale_config_form', 'class' => 'form-horizontal']) ?> -
                              -
                              -
                              -
                                +
                                +
                                +
                                +
                                  -
                                  - 'control-label col-xs-2']) ?> -
                                  - 'number_locale', - 'id' => 'number_locale', - 'class' => 'form-control input-sm', - 'value' => $config['number_locale'] - ]) ?> - 'save_number_locale', - 'value' => $config['number_locale'] - ]) ?> -
                                  -
                                  - -
                                  -
                                  +
                                  + 'control-label col-xs-2']) ?> +
                                  + 'number_locale', + 'id' => 'number_locale', + 'class' => 'form-control input-sm', + 'value' => $config['number_locale'] + ]) ?> + 'save_number_locale', + 'value' => $config['number_locale'] + ]) ?> +
                                  +
                                  + +
                                  +
                                  -
                                  - 'control-label col-xs-2']) ?> -
                                  - 'thousands_separator', - 'id' => 'thousands_separator', - 'value' => 'thousands_separator', - 'checked' => $config['thousands_separator'] == 1 - ]) ?> -
                                  -
                                  +
                                  + 'control-label col-xs-2']) ?> +
                                  + 'thousands_separator', + 'id' => 'thousands_separator', + 'value' => 'thousands_separator', + 'checked' => $config['thousands_separator'] == 1 + ]) ?> +
                                  +
                                  -
                                  - 'control-label col-xs-2']) ?> -
                                  - 'currency_symbol', - 'id' => 'currency_symbol', - 'class' => 'form-control input-sm number_locale', - 'value' => $config['currency_symbol'] - ]) ?> -
                                  -
                                  +
                                  + 'control-label col-xs-2']) ?> +
                                  + 'currency_symbol', + 'id' => 'currency_symbol', + 'class' => 'form-control input-sm number_locale', + 'value' => $config['currency_symbol'] + ]) ?> +
                                  +
                                  -
                                  - 'control-label col-xs-2']) ?> -
                                  - 'currency_code', - 'id' => 'currency_code', - 'class' => 'form-control input-sm number_locale', - 'value' => $currency_code - ]) ?> -
                                  -
                                  +
                                  + 'control-label col-xs-2']) ?> +
                                  + 'currency_code', + 'id' => 'currency_code', + 'class' => 'form-control input-sm number_locale', + 'value' => $currency_code + ]) ?> +
                                  +
                                  -
                                  - 'control-label col-xs-2']) ?> -
                                  - '0', - '1' => '1', - '2' => '2' - ], - $config['currency_decimals'], - ['class' => 'form-control input-sm'] - ) ?> -
                                  -
                                  +
                                  + 'control-label col-xs-2']) ?> +
                                  + '0', + '1' => '1', + '2' => '2' + ], + $config['currency_decimals'], + ['class' => 'form-control input-sm'] + ) ?> +
                                  +
                                  -
                                  - 'control-label col-xs-2']) ?> -
                                  - '0', - '1' => '1', - '2' => '2', - '3' => '3', - '4' => '4' - ], - $config['tax_decimals'], - ['class' => 'form-control input-sm'] - ) ?> -
                                  -
                                  +
                                  + 'control-label col-xs-2']) ?> +
                                  + '0', + '1' => '1', + '2' => '2', + '3' => '3', + '4' => '4' + ], + $config['tax_decimals'], + ['class' => 'form-control input-sm'] + ) ?> +
                                  +
                                  -
                                  - 'control-label col-xs-2']) ?> -
                                  - '0', - '1' => '1', - '2' => '2', - '3' => '3' - ], - $config['quantity_decimals'], - ['class' => 'form-control input-sm'] - ) ?> -
                                  -
                                  +
                                  + 'control-label col-xs-2']) ?> +
                                  + '0', + '1' => '1', + '2' => '2', + '3' => '3' + ], + $config['quantity_decimals'], + ['class' => 'form-control input-sm'] + ) ?> +
                                  +
                                  -
                                  - 'control-label col-xs-2']) ?> -
                                  - '-1', - '0' => '0', - '1' => '1', - '2' => '2' - ], - $config['cash_decimals'], - ['class' => 'form-control input-sm'] - ) ?> -
                                  -
                                  - -
                                  -
                                  +
                                  + 'control-label col-xs-2']) ?> +
                                  + '-1', + '0' => '0', + '1' => '1', + '2' => '2' + ], + $config['cash_decimals'], + ['class' => 'form-control input-sm'] + ) ?> +
                                  +
                                  + +
                                  +
                                  -
                                  - 'control-label col-xs-2']) ?> -
                                  - -
                                  -
                                  +
                                  + 'control-label col-xs-2']) ?> +
                                  + +
                                  +
                                  -
                                  - 'control-label col-xs-2']) ?> -
                                  - lang('Sales.cash') . ' / ' . lang('Sales.debit') . ' / ' . lang('Sales.credit'), - 'debitcreditcash' => lang('Sales.debit') . ' / ' . lang('Sales.credit') . ' / ' . lang('Sales.cash'), - 'debitcashcredit' => lang('Sales.debit') . ' / ' . lang('Sales.cash') . ' / ' . lang('Sales.credit'), - 'creditdebitcash' => lang('Sales.credit') . ' / ' . lang('Sales.debit') . ' / ' . lang('Sales.cash'), - 'creditcashdebit' => lang('Sales.credit') . ' / ' . lang('Sales.cash') . ' / ' . lang('Sales.debit') - ], - $config['payment_options_order'], - "class='form-control input-sm'" - ) ?> -
                                  -
                                  +
                                  + 'control-label col-xs-2']) ?> +
                                  + lang('Sales.cash') . ' / ' . lang('Sales.debit') . ' / ' . lang('Sales.credit'), + 'debitcreditcash' => lang('Sales.debit') . ' / ' . lang('Sales.credit') . ' / ' . lang('Sales.cash'), + 'debitcashcredit' => lang('Sales.debit') . ' / ' . lang('Sales.cash') . ' / ' . lang('Sales.credit'), + 'creditdebitcash' => lang('Sales.credit') . ' / ' . lang('Sales.debit') . ' / ' . lang('Sales.cash'), + 'creditcashdebit' => lang('Sales.credit') . ' / ' . lang('Sales.cash') . ' / ' . lang('Sales.debit') + ], + $config['payment_options_order'], + "class='form-control input-sm'" + ) ?> +
                                  +
                                  -
                                  - 'control-label col-xs-2']) ?> -
                                  - 'country_codes', - 'class' => 'form-control input-sm', - 'value' => $config['country_codes'] - ]) ?> -
                                  -
                                  - -
                                  -
                                  +
                                  + 'control-label col-xs-2']) ?> +
                                  + 'country_codes', + 'class' => 'form-control input-sm', + 'value' => $config['country_codes'] + ]) ?> +
                                  +
                                  + +
                                  +
                                  -
                                  - 'control-label col-xs-2']) ?> -
                                  - 'form-control input-sm'] - ) ?> -
                                  -
                                  +
                                  + 'control-label col-xs-2']) ?> +
                                  + 'form-control input-sm'] + ) ?> +
                                  +
                                  -
                                  - 'control-label col-xs-2']) ?> -
                                  - 'form-control input-sm'] - ) ?> -
                                  -
                                  +
                                  + 'control-label col-xs-2']) ?> +
                                  + 'form-control input-sm'] + ) ?> +
                                  +
                                  -
                                  - 'control-label col-xs-2']) ?> -
                                  - 'form-control input-sm'] - ) ?> -
                                  -
                                  - 'form-control input-sm'] - ) ?> -
                                  -
                                  +
                                  + 'control-label col-xs-2']) ?> +
                                  + 'form-control input-sm'] + ) ?> +
                                  +
                                  + 'form-control input-sm'] + ) ?> +
                                  +
                                  -
                                  - 'control-label col-xs-2']) ?> -
                                  - 'date_or_time_format', - 'id' => 'date_or_time_format', - 'value' => 'date_or_time_format', - 'checked' => $config['date_or_time_format'] == 1 - ]) ?> -
                                  -
                                  +
                                  + 'control-label col-xs-2']) ?> +
                                  + 'date_or_time_format', + 'id' => 'date_or_time_format', + 'value' => 'date_or_time_format', + 'checked' => $config['date_or_time_format'] == 1 + ]) ?> +
                                  +
                                  -
                                  - 'control-label col-xs-2']) ?> -
                                  - lang('Config.financial_year_jan'), - '2' => lang('Config.financial_year_feb'), - '3' => lang('Config.financial_year_mar'), - '4' => lang('Config.financial_year_apr'), - '5' => lang('Config.financial_year_may'), - '6' => lang('Config.financial_year_jun'), - '7' => lang('Config.financial_year_jul'), - '8' => lang('Config.financial_year_aug'), - '9' => lang('Config.financial_year_sep'), - '10' => lang('Config.financial_year_oct'), - '11' => lang('Config.financial_year_nov'), - '12' => lang('Config.financial_year_dec') - ], - $config['financial_year'], - ['class' => 'form-control input-sm'] - ) ?> -
                                  -
                                  +
                                  + 'control-label col-xs-2']) ?> +
                                  + lang('Config.financial_year_jan'), + '2' => lang('Config.financial_year_feb'), + '3' => lang('Config.financial_year_mar'), + '4' => lang('Config.financial_year_apr'), + '5' => lang('Config.financial_year_may'), + '6' => lang('Config.financial_year_jun'), + '7' => lang('Config.financial_year_jul'), + '8' => lang('Config.financial_year_aug'), + '9' => lang('Config.financial_year_sep'), + '10' => lang('Config.financial_year_oct'), + '11' => lang('Config.financial_year_nov'), + '12' => lang('Config.financial_year_dec') + ], + $config['financial_year'], + ['class' => 'form-control input-sm'] + ) ?> +
                                  +
                                  - 'submit_locale', - 'id' => 'submit_locale', - 'value' => lang('Common.submit'), - 'class' => 'btn btn-primary btn-sm pull-right']) ?> -
                                  -
                                  + 'submit_locale', + 'id' => 'submit_locale', + 'value' => lang('Common.submit'), + 'class' => 'btn btn-primary btn-sm pull-right']) ?> +
                                  +
                                  diff --git a/app/Views/configs/manage.php b/app/Views/configs/manage.php index 45d8a7018..dd0b20c09 100644 --- a/app/Views/configs/manage.php +++ b/app/Views/configs/manage.php @@ -1,79 +1,79 @@
                                  -
                                  - -
                                  -
                                  - -
                                  -
                                  - -
                                  -
                                  - -
                                  -
                                  - -
                                  -
                                  - -
                                  -
                                  - -
                                  -
                                  - -
                                  -
                                  - -
                                  -
                                  - -
                                  -
                                  - -
                                  +
                                  + +
                                  +
                                  + +
                                  +
                                  + +
                                  +
                                  + +
                                  +
                                  + +
                                  +
                                  + +
                                  +
                                  + +
                                  +
                                  + +
                                  +
                                  + +
                                  +
                                  + +
                                  +
                                  + +
                                  diff --git a/app/Views/configs/message_config.php b/app/Views/configs/message_config.php index 4cefe1ad2..ea5ecfd3b 100644 --- a/app/Views/configs/message_config.php +++ b/app/Views/configs/message_config.php @@ -4,100 +4,100 @@ */ ?> 'message_config_form', 'enctype' => 'multipart/form-data', 'class' => 'form-horizontal']) ?> -
                                  -
                                  -
                                  -
                                    +
                                    +
                                    +
                                    +
                                      -
                                      - 'control-label col-xs-2 required']) ?> -
                                      -
                                      - - 'msg_uid', - 'id' => 'msg_uid', - 'class' => 'form-control input-sm required', - 'value' => $config['msg_uid'] - ]) ?> -
                                      -
                                      -
                                      +
                                      + 'control-label col-xs-2 required']) ?> +
                                      +
                                      + + 'msg_uid', + 'id' => 'msg_uid', + 'class' => 'form-control input-sm required', + 'value' => $config['msg_uid'] + ]) ?> +
                                      +
                                      +
                                      -
                                      - 'control-label col-xs-2 required']) ?> -
                                      -
                                      - - 'msg_pwd', - 'id' => 'msg_pwd', - 'class' => 'form-control input-sm required', - 'value' => $config['msg_pwd'] - ]) ?> -
                                      -
                                      -
                                      +
                                      + 'control-label col-xs-2 required']) ?> +
                                      +
                                      + + 'msg_pwd', + 'id' => 'msg_pwd', + 'class' => 'form-control input-sm required', + 'value' => $config['msg_pwd'] + ]) ?> +
                                      +
                                      +
                                      -
                                      - 'control-label col-xs-2 required']) ?> -
                                      -
                                      - - 'msg_src', - 'id' => 'msg_src', - 'class' => 'form-control input-sm required', - 'value' => $config['msg_src'] == null ? $config['company'] : $config['msg_src'] - ]) ?> -
                                      -
                                      -
                                      +
                                      + 'control-label col-xs-2 required']) ?> +
                                      +
                                      + + 'msg_src', + 'id' => 'msg_src', + 'class' => 'form-control input-sm required', + 'value' => $config['msg_src'] == null ? $config['company'] : $config['msg_src'] + ]) ?> +
                                      +
                                      +
                                      -
                                      - 'control-label col-xs-2']) ?> -
                                      - 'msg_msg', - 'id' => 'msg_msg', - 'class' => 'form-control input-sm', - 'value' => $config['msg_msg'], - 'placeholder' => lang('Config.msg_msg_placeholder') - ]) ?> -
                                      -
                                      +
                                      + 'control-label col-xs-2']) ?> +
                                      + 'msg_msg', + 'id' => 'msg_msg', + 'class' => 'form-control input-sm', + 'value' => $config['msg_msg'], + 'placeholder' => lang('Config.msg_msg_placeholder') + ]) ?> +
                                      +
                                      - 'submit_message', - 'id' => 'submit_message', - 'value' => lang('Common.submit'), - 'class' => 'btn btn-primary btn-sm pull-right' - ]) ?> -
                                      -
                                      + 'submit_message', + 'id' => 'submit_message', + 'value' => lang('Common.submit'), + 'class' => 'btn btn-primary btn-sm pull-right' + ]) ?> +
                                      +
                                      diff --git a/app/Views/configs/receipt_config.php b/app/Views/configs/receipt_config.php index f36fd6792..006e8a0a2 100644 --- a/app/Views/configs/receipt_config.php +++ b/app/Views/configs/receipt_config.php @@ -4,447 +4,447 @@ */ ?> 'receipt_config_form', 'class' => 'form-horizontal']) ?> -
                                      -
                                      -
                                      -
                                        +
                                        +
                                        +
                                        +
                                          -
                                          - 'control-label col-xs-2']) ?> -
                                          - lang('Config.receipt_default'), - 'receipt_short' => lang('Config.receipt_short') - ], - $config['receipt_template'], - "class='form-control input-sm'" - ) ?> -
                                          -
                                          +
                                          + 'control-label col-xs-2']) ?> +
                                          + lang('Config.receipt_default'), + 'receipt_short' => lang('Config.receipt_short') + ], + $config['receipt_template'], + "class='form-control input-sm'" + ) ?> +
                                          +
                                          -
                                          - 'control-label col-xs-2 required']) ?> -
                                          -
                                          - 'number', - 'min' => '0', - 'max' => '20', - 'name' => 'receipt_font_size', - 'id' => 'receipt_font_size', - 'class' => 'form-control input-sm required', - 'value' => $config['receipt_font_size'] - ]) ?> - px -
                                          -
                                          -
                                          +
                                          + 'control-label col-xs-2 required']) ?> +
                                          +
                                          + 'number', + 'min' => '0', + 'max' => '20', + 'name' => 'receipt_font_size', + 'id' => 'receipt_font_size', + 'class' => 'form-control input-sm required', + 'value' => $config['receipt_font_size'] + ]) ?> + px +
                                          +
                                          +
                                          -
                                          - 'control-label col-xs-2 required']) ?> -
                                          -
                                          - 'number', - 'min' => '0', - 'max' => '30', - 'name' => 'print_delay_autoreturn', - 'id' => 'print_delay_autoreturn', - 'class' => 'form-control input-sm required', - 'value' => $config['print_delay_autoreturn'] - ]) ?> - s -
                                          -
                                          -
                                          +
                                          + 'control-label col-xs-2 required']) ?> +
                                          +
                                          + 'number', + 'min' => '0', + 'max' => '30', + 'name' => 'print_delay_autoreturn', + 'id' => 'print_delay_autoreturn', + 'class' => 'form-control input-sm required', + 'value' => $config['print_delay_autoreturn'] + ]) ?> + s +
                                          +
                                          +
                                          -
                                          - 'control-label col-xs-2']) ?> -
                                          - - - -
                                          -
                                          +
                                          + 'control-label col-xs-2']) ?> +
                                          + + + +
                                          +
                                          -
                                          - 'control-label col-xs-2']) ?> -
                                          - - - -
                                          -
                                          +
                                          + 'control-label col-xs-2']) ?> +
                                          + + + +
                                          +
                                          -
                                          - 'control-label col-xs-2']) ?> -
                                          - 'receipt_show_company_name', - 'value' => 'receipt_show_company_name', - 'id' => 'receipt_show_company_name', - 'checked' => $config['receipt_show_company_name'] == 1 - ]) ?> -
                                          -
                                          +
                                          + 'control-label col-xs-2']) ?> +
                                          + 'receipt_show_company_name', + 'value' => 'receipt_show_company_name', + 'id' => 'receipt_show_company_name', + 'checked' => $config['receipt_show_company_name'] == 1 + ]) ?> +
                                          +
                                          -
                                          - 'control-label col-xs-2']) ?> -
                                          - 'receipt_show_taxes', - 'value' => 'receipt_show_taxes', - 'id' => 'receipt_show_taxes', - 'checked' => $config['receipt_show_taxes'] == 1 - ]) ?> -
                                          -
                                          +
                                          + 'control-label col-xs-2']) ?> +
                                          + 'receipt_show_taxes', + 'value' => 'receipt_show_taxes', + 'id' => 'receipt_show_taxes', + 'checked' => $config['receipt_show_taxes'] == 1 + ]) ?> +
                                          +
                                          -
                                          - 'control-label col-xs-2']) ?> -
                                          - 'receipt_show_tax_ind', - 'value' => 'receipt_show_tax_ind', - 'id' => 'receipt_show_tax_ind', - 'checked' => $config['receipt_show_tax_ind'] == 1 - ]) ?> -
                                          -
                                          +
                                          + 'control-label col-xs-2']) ?> +
                                          + 'receipt_show_tax_ind', + 'value' => 'receipt_show_tax_ind', + 'id' => 'receipt_show_tax_ind', + 'checked' => $config['receipt_show_tax_ind'] == 1 + ]) ?> +
                                          +
                                          -
                                          - 'control-label col-xs-2']) ?> -
                                          - 'receipt_show_total_discount', - 'value' => 'receipt_show_total_discount', - 'id' => 'receipt_show_total_discount', - 'checked' => $config['receipt_show_total_discount'] == 1 - ]) ?> -
                                          -
                                          +
                                          + 'control-label col-xs-2']) ?> +
                                          + 'receipt_show_total_discount', + 'value' => 'receipt_show_total_discount', + 'id' => 'receipt_show_total_discount', + 'checked' => $config['receipt_show_total_discount'] == 1 + ]) ?> +
                                          +
                                          -
                                          - 'control-label col-xs-2']) ?> -
                                          - 'receipt_show_description', - 'value' => 'receipt_show_description', - 'id' => 'receipt_show_description', - 'checked' => $config['receipt_show_description'] == 1 - ]) ?> -
                                          -
                                          +
                                          + 'control-label col-xs-2']) ?> +
                                          + 'receipt_show_description', + 'value' => 'receipt_show_description', + 'id' => 'receipt_show_description', + 'checked' => $config['receipt_show_description'] == 1 + ]) ?> +
                                          +
                                          -
                                          - 'control-label col-xs-2']) ?> -
                                          - 'receipt_show_serialnumber', - 'value' => 'receipt_show_serialnumber', - 'id' => 'receipt_show_serialnumber', - 'checked' => $config['receipt_show_serialnumber'] == 1 - ]) ?> -
                                          -
                                          +
                                          + 'control-label col-xs-2']) ?> +
                                          + 'receipt_show_serialnumber', + 'value' => 'receipt_show_serialnumber', + 'id' => 'receipt_show_serialnumber', + 'checked' => $config['receipt_show_serialnumber'] == 1 + ]) ?> +
                                          +
                                          -
                                          - 'control-label col-xs-2']) ?> -
                                          - 'print_silently', - 'id' => 'print_silently', - 'value' => 'print_silently', - 'checked' => $config['print_silently'] == 1 - ]) ?> -
                                          -
                                          +
                                          + 'control-label col-xs-2']) ?> +
                                          + 'print_silently', + 'id' => 'print_silently', + 'value' => 'print_silently', + 'checked' => $config['print_silently'] == 1 + ]) ?> +
                                          +
                                          -
                                          - 'control-label col-xs-2']) ?> -
                                          - 'print_header', - 'id' => 'print_header', - 'value' => 'print_header', - 'checked' => $config['print_header'] == 1 - ]) ?> -
                                          -
                                          +
                                          + 'control-label col-xs-2']) ?> +
                                          + 'print_header', + 'id' => 'print_header', + 'value' => 'print_header', + 'checked' => $config['print_header'] == 1 + ]) ?> +
                                          +
                                          -
                                          - 'control-label col-xs-2']) ?> -
                                          - 'print_footer', - 'id' => 'print_footer', - 'value' => 'print_footer', - 'checked' => $config['print_footer'] == 1 - ]) ?> -
                                          -
                                          +
                                          + 'control-label col-xs-2']) ?> +
                                          + 'print_footer', + 'id' => 'print_footer', + 'value' => 'print_footer', + 'checked' => $config['print_footer'] == 1 + ]) ?> +
                                          +
                                          -
                                          - 'control-label col-xs-2']) ?> -
                                          - -
                                          -
                                          +
                                          + 'control-label col-xs-2']) ?> +
                                          + +
                                          +
                                          -
                                          - 'control-label col-xs-2']) ?> -
                                          - -
                                          -
                                          +
                                          + 'control-label col-xs-2']) ?> +
                                          + +
                                          +
                                          -
                                          - 'control-label col-xs-2']) ?> -
                                          - -
                                          -
                                          +
                                          + 'control-label col-xs-2']) ?> +
                                          + +
                                          +
                                          -
                                          - 'control-label col-xs-2 required']) ?> -
                                          -
                                          - 'number', - 'min' => '0', - 'max' => '20', - 'name' => 'print_top_margin', - 'id' => 'print_top_margin', - 'class' => 'form-control input-sm required', - 'value' => $config['print_top_margin'] - ]) ?> - px -
                                          -
                                          -
                                          +
                                          + 'control-label col-xs-2 required']) ?> +
                                          +
                                          + 'number', + 'min' => '0', + 'max' => '20', + 'name' => 'print_top_margin', + 'id' => 'print_top_margin', + 'class' => 'form-control input-sm required', + 'value' => $config['print_top_margin'] + ]) ?> + px +
                                          +
                                          +
                                          -
                                          - 'control-label col-xs-2 required']) ?> -
                                          -
                                          - 'number', - 'min' => '0', - 'max' => '20', - 'name' => 'print_left_margin', - 'id' => 'print_left_margin', - 'class' => 'form-control input-sm required', - 'value' => $config['print_left_margin'] - ]) ?> - px -
                                          -
                                          -
                                          +
                                          + 'control-label col-xs-2 required']) ?> +
                                          +
                                          + 'number', + 'min' => '0', + 'max' => '20', + 'name' => 'print_left_margin', + 'id' => 'print_left_margin', + 'class' => 'form-control input-sm required', + 'value' => $config['print_left_margin'] + ]) ?> + px +
                                          +
                                          +
                                          -
                                          - 'control-label col-xs-2 required']) ?> -
                                          -
                                          - 'number', - 'min' => '0', - 'max' => '20', - 'name' => 'print_bottom_margin', - 'id' => 'print_bottom_margin', - 'class' => 'form-control input-sm required', - 'value' => $config['print_bottom_margin'] - ]) ?> - px -
                                          -
                                          -
                                          +
                                          + 'control-label col-xs-2 required']) ?> +
                                          +
                                          + 'number', + 'min' => '0', + 'max' => '20', + 'name' => 'print_bottom_margin', + 'id' => 'print_bottom_margin', + 'class' => 'form-control input-sm required', + 'value' => $config['print_bottom_margin'] + ]) ?> + px +
                                          +
                                          +
                                          -
                                          - 'control-label col-xs-2 required']) ?> -
                                          -
                                          - 'number', - 'min' => '0', - 'max' => '20', - 'name' => 'print_right_margin', - 'id' => 'print_right_margin', - 'class' => 'form-control input-sm required', - 'value' => $config['print_right_margin'] - ]) ?> - px -
                                          -
                                          -
                                          +
                                          + 'control-label col-xs-2 required']) ?> +
                                          +
                                          + 'number', + 'min' => '0', + 'max' => '20', + 'name' => 'print_right_margin', + 'id' => 'print_right_margin', + 'class' => 'form-control input-sm required', + 'value' => $config['print_right_margin'] + ]) ?> + px +
                                          +
                                          +
                                          - 'submit_receipt', - 'id' => 'submit_receipt', - 'value' => lang('Common.submit'), - 'class' => 'btn btn-primary btn-sm pull-right' - ]) ?> -
                                          -
                                          + 'submit_receipt', + 'id' => 'submit_receipt', + 'value' => lang('Common.submit'), + 'class' => 'btn btn-primary btn-sm pull-right' + ]) ?> +
                                          +
                                          diff --git a/app/Views/configs/reward_config.php b/app/Views/configs/reward_config.php index 95aef4833..e59e58599 100644 --- a/app/Views/configs/reward_config.php +++ b/app/Views/configs/reward_config.php @@ -10,28 +10,28 @@
                                            -
                                            - 'control-label col-xs-2']) ?> -
                                            - 'customer_reward_enable', - 'value' => 'customer_reward_enable', - 'id' => 'customer_reward_enable', - 'checked' => $config['customer_reward_enable'] == 1 - ]) ?> -
                                            -
                                            +
                                            + 'control-label col-xs-2']) ?> +
                                            + 'customer_reward_enable', + 'value' => 'customer_reward_enable', + 'id' => 'customer_reward_enable', + 'checked' => $config['customer_reward_enable'] == 1 + ]) ?> +
                                            +
                                            - $customer_rewards]) ?> -
                                            + $customer_rewards]) ?> + 'submit_reward', 'id' => 'submit_reward', 'value' => lang('Common.submit'), 'class' => 'btn btn-primary btn-sm pull-right' - ]) ?> + ]) ?> @@ -41,128 +41,128 @@ $(document).ready(function() { - var enable_disable_customer_reward_enable = (function() { - var customer_reward_enable = $("#customer_reward_enable").is(":checked"); - $("input[name*='customer_reward']:not(input[name=customer_reward_enable])").prop("disabled", !customer_reward_enable); - $("input[name*='reward_points_']:not(input[name=customer_reward_enable])").prop("disabled", !customer_reward_enable); - if(customer_reward_enable) - { - $(".add_customer_reward, .remove_customer_reward").show(); - } - else - { - $(".add_customer_reward, .remove_customer_reward").hide(); - } - return arguments.callee; - })(); + var enable_disable_customer_reward_enable = (function() { + var customer_reward_enable = $("#customer_reward_enable").is(":checked"); + $("input[name*='customer_reward']:not(input[name=customer_reward_enable])").prop("disabled", !customer_reward_enable); + $("input[name*='reward_points_']:not(input[name=customer_reward_enable])").prop("disabled", !customer_reward_enable); + if(customer_reward_enable) + { + $(".add_customer_reward, .remove_customer_reward").show(); + } + else + { + $(".add_customer_reward, .remove_customer_reward").hide(); + } + return arguments.callee; + })(); - $("#customer_reward_enable").change(enable_disable_customer_reward_enable); + $("#customer_reward_enable").change(enable_disable_customer_reward_enable); - var table_count = ; + var table_count = ; - var hide_show_remove = function() { - if ($("input[name*='customer_rewards']:enabled").length > 1) - { - $(".remove_customer_rewards").show(); - } - else - { - $(".remove_customer_rewards").hide(); - } - }; + var hide_show_remove = function() { + if ($("input[name*='customer_rewards']:enabled").length > 1) + { + $(".remove_customer_rewards").show(); + } + else + { + $(".remove_customer_rewards").hide(); + } + }; - var add_customer_reward = function() { - var id = $(this).parent().find('input').attr('id'); - id = id.replace(/.*?_(\d+)$/g, "$1"); - var previous_id = 'customer_reward_' + id; - var previous_id_next = 'reward_points_' + id; - var block = $(this).parent().clone(true); - var new_block = block.insertAfter($(this).parent()); - var new_block_id = 'customer_reward_' + ++id; - var new_block_id_next = 'reward_points_' + id; - $(new_block).find('label').html(" " + ++table_count).attr('for', new_block_id).attr('class', 'control-label col-xs-2'); - $(new_block).find("input[id='"+previous_id+"']").attr('id', new_block_id).removeAttr('disabled').attr('name', new_block_id).attr('class', 'form-control input-sm').val(''); - $(new_block).find("input[id='"+previous_id_next+"']").attr('id', new_block_id_next).removeAttr('disabled').attr('name', new_block_id_next).attr('class', 'form-control input-sm').val(''); - hide_show_remove(); - }; + var add_customer_reward = function() { + var id = $(this).parent().find('input').attr('id'); + id = id.replace(/.*?_(\d+)$/g, "$1"); + var previous_id = 'customer_reward_' + id; + var previous_id_next = 'reward_points_' + id; + var block = $(this).parent().clone(true); + var new_block = block.insertAfter($(this).parent()); + var new_block_id = 'customer_reward_' + ++id; + var new_block_id_next = 'reward_points_' + id; + $(new_block).find('label').html(" " + ++table_count).attr('for', new_block_id).attr('class', 'control-label col-xs-2'); + $(new_block).find("input[id='"+previous_id+"']").attr('id', new_block_id).removeAttr('disabled').attr('name', new_block_id).attr('class', 'form-control input-sm').val(''); + $(new_block).find("input[id='"+previous_id_next+"']").attr('id', new_block_id_next).removeAttr('disabled').attr('name', new_block_id_next).attr('class', 'form-control input-sm').val(''); + hide_show_remove(); + }; - var remove_customer_reward = function() { - $(this).parent().remove(); - hide_show_remove(); - }; + var remove_customer_reward = function() { + $(this).parent().remove(); + hide_show_remove(); + }; - var init_add_remove_tables = function() { - $('.add_customer_reward').click(add_customer_reward); - $('.remove_customer_reward').click(remove_customer_reward); - hide_show_remove(); - // set back disabled state - enable_disable_customer_reward_enable(); - }; - init_add_remove_tables(); + var init_add_remove_tables = function() { + $('.add_customer_reward').click(add_customer_reward); + $('.remove_customer_reward').click(remove_customer_reward); + hide_show_remove(); + // set back disabled state + enable_disable_customer_reward_enable(); + }; + init_add_remove_tables(); - var duplicate_found = false; - // run validator once for all fields - $.validator.addMethod('customer_reward' , function(value, element) { - var value_count = 0; - $("input[name*='customer_reward']:not(input[name=customer_reward_enable])").each(function() { - value_count = $(this).val() == value ? value_count + 1 : value_count; - }); - return value_count < 2; + var duplicate_found = false; + // run validator once for all fields + $.validator.addMethod('customer_reward' , function(value, element) { + var value_count = 0; + $("input[name*='customer_reward']:not(input[name=customer_reward_enable])").each(function() { + value_count = $(this).val() == value ? value_count + 1 : value_count; + }); + return value_count < 2; }, ""); $.validator.addMethod('valid_chars', function(value, element) { - return value.indexOf('_') === -1; + return value.indexOf('_') === -1; }, ""); - $('#reward_config_form').validate($.extend(form_support.handler, { - submitHandler: function(form) { - $(form).ajaxSubmit({ - beforeSerialize: function(arr, $form, options) { - $("input[name*='customer_reward']:not(input[name=customer_reward_enable])").prop("disabled", false); - return true; - }, - success: function(response) { - $.notify({ message: response.message }, { type: response.success ? 'success' : 'danger'}); - $("#customer_rewards").load('', init_add_remove_tables); - }, - dataType: 'json' - }); - }, + $('#reward_config_form').validate($.extend(form_support.handler, { + submitHandler: function(form) { + $(form).ajaxSubmit({ + beforeSerialize: function(arr, $form, options) { + $("input[name*='customer_reward']:not(input[name=customer_reward_enable])").prop("disabled", false); + return true; + }, + success: function(response) { + $.notify({ message: response.message }, { type: response.success ? 'success' : 'danger'}); + $("#customer_rewards").load('', init_add_remove_tables); + }, + dataType: 'json' + }); + }, - errorLabelContainer: "#reward_error_message_box", + errorLabelContainer: "#reward_error_message_box", - rules: - { - $table) - { - ?> - : - { - required: true, - customer_reward: true, - valid_chars: true - }, - - }, + foreach($customer_rewards as $customer_reward=>$table) + { + ?> + : + { + required: true, + customer_reward: true, + valid_chars: true + }, + + }, - messages: - { - $table) - { - ?> - : "", - - } - })); + foreach($customer_rewards as $customer_reward=>$table) + { + ?> + : "", + + } + })); }); diff --git a/app/Views/configs/stock_config.php b/app/Views/configs/stock_config.php index 85ae2ae23..686f649eb 100644 --- a/app/Views/configs/stock_config.php +++ b/app/Views/configs/stock_config.php @@ -10,15 +10,15 @@
                                              - $stock_locations]) ?> -
                                              - + $stock_locations]) ?> + + 'submit_stock', 'id' => 'submit_stock', 'value' => lang('Common.submit'), 'class' => 'btn btn-primary btn-sm pull-right' - ]) ?> + ]) ?> @@ -27,99 +27,99 @@ //validation and submit handling $(document).ready(function() { - var location_count = ; + var location_count = ; - var hide_show_remove = function() { - if ($("input[name*='stock_location']:enabled").length > 1) - { - $(".remove_stock_location").show(); - } - else - { - $(".remove_stock_location").hide(); - } - }; + var hide_show_remove = function() { + if ($("input[name*='stock_location']:enabled").length > 1) + { + $(".remove_stock_location").show(); + } + else + { + $(".remove_stock_location").hide(); + } + }; - var add_stock_location = function() { - var block = $(this).parent().clone(true); - var new_block = block.insertAfter($(this).parent()); - var new_block_id = 'stock_location[]'; - $(new_block).find('label').html(" " + ++location_count).attr('for', new_block_id).attr('class', 'control-label col-xs-2'); - $(new_block).find('input').attr('id', new_block_id).removeAttr('disabled').attr('name', new_block_id).attr('class', 'form-control input-sm').val(''); - hide_show_remove(); - }; + var add_stock_location = function() { + var block = $(this).parent().clone(true); + var new_block = block.insertAfter($(this).parent()); + var new_block_id = 'stock_location[]'; + $(new_block).find('label').html(" " + ++location_count).attr('for', new_block_id).attr('class', 'control-label col-xs-2'); + $(new_block).find('input').attr('id', new_block_id).removeAttr('disabled').attr('name', new_block_id).attr('class', 'form-control input-sm').val(''); + hide_show_remove(); + }; - var remove_stock_location = function() { - $(this).parent().remove(); - hide_show_remove(); - }; + var remove_stock_location = function() { + $(this).parent().remove(); + hide_show_remove(); + }; - var init_add_remove_locations = function() { - $('.add_stock_location').click(add_stock_location); - $('.remove_stock_location').click(remove_stock_location); - hide_show_remove(); - }; - init_add_remove_locations(); + var init_add_remove_locations = function() { + $('.add_stock_location').click(add_stock_location); + $('.remove_stock_location').click(remove_stock_location); + hide_show_remove(); + }; + init_add_remove_locations(); - var duplicate_found = false; - // run validator once for all fields - $.validator.addMethod('stock_location' , function(value, element) { - var value_count = 0; - $("input[name*='stock_location']").each(function() { - value_count = $(this).val() == value ? value_count + 1 : value_count; - }); - return value_count < 2; + var duplicate_found = false; + // run validator once for all fields + $.validator.addMethod('stock_location' , function(value, element) { + var value_count = 0; + $("input[name*='stock_location']").each(function() { + value_count = $(this).val() == value ? value_count + 1 : value_count; + }); + return value_count < 2; }, ""); $.validator.addMethod('valid_chars', function(value, element) { - return value.indexOf('_') === -1; + return value.indexOf('_') === -1; }, ""); - - $('#location_config_form').validate($.extend(form_support.handler, { - submitHandler: function(form) { - $(form).ajaxSubmit({ - success: function(response) { - $.notify({ message: response.message }, { type: response.success ? 'success' : 'danger'}); - $("#stock_locations").load('', init_add_remove_locations); - }, - dataType: 'json' - }); - }, - errorLabelContainer: "#stock_error_message_box", + $('#location_config_form').validate($.extend(form_support.handler, { + submitHandler: function(form) { + $(form).ajaxSubmit({ + success: function(response) { + $.notify({ message: response.message }, { type: response.success ? 'success' : 'danger'}); + $("#stock_locations").load('', init_add_remove_locations); + }, + dataType: 'json' + }); + }, - rules: - { - $location_data) - { - ?> - : - { - required: true, - stock_location: true, - valid_chars: true - }, - - }, + rules: + { + $location_data) + { + ?> + : + { + required: true, + stock_location: true, + valid_chars: true + }, + + }, - foreach($stock_locations as $location => $location_data) - { - ?> - : "", - - } - })); + messages: + { + $location_data) + { + ?> + : "", + + } + })); }); diff --git a/app/Views/configs/system_config.php b/app/Views/configs/system_config.php index 1a03d81fe..23329cf5b 100644 --- a/app/Views/configs/system_config.php +++ b/app/Views/configs/system_config.php @@ -1,17 +1,17 @@
                                              - -
                                              -
                                              -
                                              -
                                              -
                                              -

                                              -
                                              + +
                                              +
                                              +
                                              +
                                              +
                                              +

                                              +
                                              diff --git a/app/Views/configs/system_info.php b/app/Views/configs/system_info.php index 45df2bc32..13cf10c67 100644 --- a/app/Views/configs/system_info.php +++ b/app/Views/configs/system_info.php @@ -90,7 +90,7 @@ use Config\OSPOS; Not Writable ✗ '; + echo ' - ' . substr(sprintf("%o", fileperms($logs)), -4) . ' | ' . ' Not Writable ✗ '; } clearstatcache(); @@ -117,7 +117,7 @@ use Config\OSPOS; Writable ✓ '; + echo ' - ' . substr(sprintf("%o", fileperms($uploads)), -4) . ' | ' . ' Writable ✓ '; } else { @@ -142,11 +142,11 @@ use Config\OSPOS; Writable ✓ '; + echo ' - ' . substr(sprintf("%o", fileperms($images)), -4) . ' | ' . ' Writable ✓ '; } else { - echo ' - ' . substr(sprintf("%o", fileperms($images)), -4) . ' | ' . ' Not Writable ✗ '; + echo ' - ' . substr(sprintf("%o", fileperms($images)), -4) . ' | ' . ' Not Writable ✗ '; } clearstatcache(); @@ -166,7 +166,7 @@ use Config\OSPOS; » [importCustomers.csv:] Readable ✓ '; + echo ' - ' . substr(sprintf("%o", fileperms($importCustomers)), -4) . ' | ' . ' Readable ✓ '; } else { echo ' - ' . substr(sprintf("%o", fileperms($importCustomers)), -4) . ' | ' . ' Not Readable ✗ '; } @@ -233,9 +233,9 @@ use Config\OSPOS; }); if($('#timezone').html() !== $('#ostimezone').html()) { - document.getElementById("timezone").innerText = Intl.DateTimeFormat().resolvedOptions().timeZone; - document.getElementById("TimeError").innerHTML = '



                                              '; - } + document.getElementById("timezone").innerText = Intl.DateTimeFormat().resolvedOptions().timeZone; + document.getElementById("TimeError").innerHTML = '



                                              '; + } diff --git a/app/Views/configs/table_config.php b/app/Views/configs/table_config.php index d535c79f6..9b34dc175 100644 --- a/app/Views/configs/table_config.php +++ b/app/Views/configs/table_config.php @@ -10,28 +10,28 @@
                                                -
                                                - 'control-label col-xs-2']) ?> -
                                                - 'dinner_table_enable', - 'value' => 'dinner_table_enable', - 'id' => 'dinner_table_enable', - 'checked' => $config['dinner_table_enable'] == 1 - ]) ?> -
                                                -
                                                +
                                                + 'control-label col-xs-2']) ?> +
                                                + 'dinner_table_enable', + 'value' => 'dinner_table_enable', + 'id' => 'dinner_table_enable', + 'checked' => $config['dinner_table_enable'] == 1 + ]) ?> +
                                                +
                                                - $dinner_tables]) ?> -
                                                + $dinner_tables]) ?> + 'submit_table', 'id' => 'submit_table', 'value' => lang('Common.submit'), 'class' => 'btn btn-primary btn-sm pull-right' - ]) ?> + ]) ?> @@ -41,123 +41,123 @@ $(document).ready(function() { - var enable_disable_dinner_table_enable = (function() { - var dinner_table_enable = $("#dinner_table_enable").is(":checked"); - $("input[name*='dinner_table']:not(input[name=dinner_table_enable])").prop("disabled", !dinner_table_enable); - if(dinner_table_enable) - { - $(".add_dinner_table, .remove_dinner_table").show(); - } - else - { - $(".add_dinner_table, .remove_dinner_table").hide(); - } - return arguments.callee; - })(); + var enable_disable_dinner_table_enable = (function() { + var dinner_table_enable = $("#dinner_table_enable").is(":checked"); + $("input[name*='dinner_table']:not(input[name=dinner_table_enable])").prop("disabled", !dinner_table_enable); + if(dinner_table_enable) + { + $(".add_dinner_table, .remove_dinner_table").show(); + } + else + { + $(".add_dinner_table, .remove_dinner_table").hide(); + } + return arguments.callee; + })(); - $("#dinner_table_enable").change(enable_disable_dinner_table_enable); + $("#dinner_table_enable").change(enable_disable_dinner_table_enable); - var table_count = ; + var table_count = ; - var hide_show_remove = function() { - if ($("input[name*='dinner_tables']:enabled").length > 1) - { - $(".remove_dinner_tables").show(); - } - else - { - $(".remove_dinner_tables").hide(); - } - }; + var hide_show_remove = function() { + if ($("input[name*='dinner_tables']:enabled").length > 1) + { + $(".remove_dinner_tables").show(); + } + else + { + $(".remove_dinner_tables").hide(); + } + }; - var add_dinner_table = function() { - var id = $(this).parent().find('input').attr('id'); - id = id.replace(/.*?_(\d+)$/g, "$1"); - var block = $(this).parent().clone(true); - var new_block = block.insertAfter($(this).parent()); - var new_block_id = 'dinner_table_' + ++id; - $(new_block).find('label').html(" " + ++table_count).attr('for', new_block_id).attr('class', 'control-label col-xs-2'); - $(new_block).find('input').attr('id', new_block_id).removeAttr('disabled').attr('name', new_block_id).attr('class', 'form-control input-sm').val(''); - hide_show_remove(); - }; + var add_dinner_table = function() { + var id = $(this).parent().find('input').attr('id'); + id = id.replace(/.*?_(\d+)$/g, "$1"); + var block = $(this).parent().clone(true); + var new_block = block.insertAfter($(this).parent()); + var new_block_id = 'dinner_table_' + ++id; + $(new_block).find('label').html(" " + ++table_count).attr('for', new_block_id).attr('class', 'control-label col-xs-2'); + $(new_block).find('input').attr('id', new_block_id).removeAttr('disabled').attr('name', new_block_id).attr('class', 'form-control input-sm').val(''); + hide_show_remove(); + }; - var remove_dinner_table = function() { - $(this).parent().remove(); - hide_show_remove(); - }; + var remove_dinner_table = function() { + $(this).parent().remove(); + hide_show_remove(); + }; - var init_add_remove_tables = function() { - $('.add_dinner_table').click(add_dinner_table); - $('.remove_dinner_table').click(remove_dinner_table); - hide_show_remove(); - // set back disabled state - enable_disable_dinner_table_enable(); - }; - init_add_remove_tables(); + var init_add_remove_tables = function() { + $('.add_dinner_table').click(add_dinner_table); + $('.remove_dinner_table').click(remove_dinner_table); + hide_show_remove(); + // set back disabled state + enable_disable_dinner_table_enable(); + }; + init_add_remove_tables(); - var duplicate_found = false; - // run validator once for all fields - $.validator.addMethod('dinner_table' , function(value, element) { - var value_count = 0; - $("input[name*='dinner_table']:not(input[name=dinner_table_enable])").each(function() { - value_count = $(this).val() == value ? value_count + 1 : value_count; - }); - return value_count < 2; + var duplicate_found = false; + // run validator once for all fields + $.validator.addMethod('dinner_table' , function(value, element) { + var value_count = 0; + $("input[name*='dinner_table']:not(input[name=dinner_table_enable])").each(function() { + value_count = $(this).val() == value ? value_count + 1 : value_count; + }); + return value_count < 2; }, ""); $.validator.addMethod('valid_chars', function(value, element) { - return value.indexOf('_') === -1; + return value.indexOf('_') === -1; }, ""); - $('#table_config_form').validate($.extend(form_support.handler, { - submitHandler: function(form) { - $(form).ajaxSubmit({ - beforeSerialize: function(arr, $form, options) { - $("input[name*='dinner_table']:not(input[name=dinner_table_enable])").prop("disabled", false); - return true; - }, - success: function(response) { - $.notify({ message: response.message }, { type: response.success ? 'success' : 'danger'}); - $("#dinner_tables").load('', init_add_remove_tables); - }, - dataType: 'json' - }); - }, + $('#table_config_form').validate($.extend(form_support.handler, { + submitHandler: function(form) { + $(form).ajaxSubmit({ + beforeSerialize: function(arr, $form, options) { + $("input[name*='dinner_table']:not(input[name=dinner_table_enable])").prop("disabled", false); + return true; + }, + success: function(response) { + $.notify({ message: response.message }, { type: response.success ? 'success' : 'danger'}); + $("#dinner_tables").load('', init_add_remove_tables); + }, + dataType: 'json' + }); + }, - errorLabelContainer: "#table_error_message_box", + errorLabelContainer: "#table_error_message_box", - rules: - { - $table) - { - ?> - : - { - required: true, - dinner_table: true, - valid_chars: true - }, - - }, + foreach($dinner_tables as $dinner_table=>$table) + { + ?> + : + { + required: true, + dinner_table: true, + valid_chars: true + }, + + }, - messages: - { - $table) - { - ?> - : "", - - } - })); + foreach($dinner_tables as $dinner_table=>$table) + { + ?> + : "", + + } + })); }); diff --git a/app/Views/configs/tax_config.php b/app/Views/configs/tax_config.php index d1d85eb51..028e96e42 100644 --- a/app/Views/configs/tax_config.php +++ b/app/Views/configs/tax_config.php @@ -8,132 +8,132 @@ */ ?> 'tax_config_form', 'class' => 'form-horizontal']) ?> -
                                                -
                                                -
                                                -
                                                  +
                                                  +
                                                  +
                                                  +
                                                    -
                                                    - 'control-label col-xs-2']) ?> -
                                                    - 'tax_id', - 'id' => 'tax_id', - 'class' => 'form-control input-sm', - 'value' => $config['tax_id'] - ]) ?> -
                                                    -
                                                    +
                                                    + 'control-label col-xs-2']) ?> +
                                                    + 'tax_id', + 'id' => 'tax_id', + 'class' => 'form-control input-sm', + 'value' => $config['tax_id'] + ]) ?> +
                                                    +
                                                    -
                                                    - 'control-label col-xs-2']) ?> -
                                                    - 'tax_included', - 'id' => 'tax_included', - 'value' => 'tax_included', - 'checked' => $config['tax_included'] == 1 - ]) ?> -
                                                    -
                                                    +
                                                    + 'control-label col-xs-2']) ?> +
                                                    + 'tax_included', + 'id' => 'tax_included', + 'value' => 'tax_included', + 'checked' => $config['tax_included'] == 1 + ]) ?> +
                                                    +
                                                    -
                                                    - 'control-label col-xs-2']) ?> -
                                                    - 'default_tax_1_name', - 'id' => 'default_tax_1_name', - 'class' => 'form-control input-sm', - 'value' => $config['default_tax_1_name'] !== false ? $config['default_tax_1_name'] : lang('Items.sales_tax_1')]) ?> -
                                                    -
                                                    - 'default_tax_1_rate', - 'id' => 'default_tax_1_rate', - 'class' => 'form-control input-sm', - 'value' => to_tax_decimals($config['default_tax_1_rate']) - ]) ?> - % -
                                                    -
                                                    +
                                                    + 'control-label col-xs-2']) ?> +
                                                    + 'default_tax_1_name', + 'id' => 'default_tax_1_name', + 'class' => 'form-control input-sm', + 'value' => $config['default_tax_1_name'] !== false ? $config['default_tax_1_name'] : lang('Items.sales_tax_1')]) ?> +
                                                    +
                                                    + 'default_tax_1_rate', + 'id' => 'default_tax_1_rate', + 'class' => 'form-control input-sm', + 'value' => to_tax_decimals($config['default_tax_1_rate']) + ]) ?> + % +
                                                    +
                                                    -
                                                    - 'control-label col-xs-2']) ?> -
                                                    - 'default_tax_2_name', - 'id' => 'default_tax_2_name', - 'class' => 'form-control input-sm', - 'value' => $config['default_tax_2_name'] !== false ? $config['default_tax_2_name'] : lang('Items.sales_tax_2') - ]) ?> -
                                                    -
                                                    - 'default_tax_2_rate', - 'id' => 'default_tax_2_rate', - 'class' => 'form-control input-sm', - 'value' => to_tax_decimals($config['default_tax_2_rate']) - ]) ?> - % -
                                                    -
                                                    +
                                                    + 'control-label col-xs-2']) ?> +
                                                    + 'default_tax_2_name', + 'id' => 'default_tax_2_name', + 'class' => 'form-control input-sm', + 'value' => $config['default_tax_2_name'] !== false ? $config['default_tax_2_name'] : lang('Items.sales_tax_2') + ]) ?> +
                                                    +
                                                    + 'default_tax_2_rate', + 'id' => 'default_tax_2_rate', + 'class' => 'form-control input-sm', + 'value' => to_tax_decimals($config['default_tax_2_rate']) + ]) ?> + % +
                                                    +
                                                    -
                                                    - 'control-label col-xs-2']) ?> -
                                                    - 'use_destination_based_tax', - 'id' => 'use_destination_based_tax', - 'value' => 'use_destination_based_tax', - 'checked' => $config['use_destination_based_tax'] == 1 - ]) ?> -
                                                    -
                                                    +
                                                    + 'control-label col-xs-2']) ?> +
                                                    + 'use_destination_based_tax', + 'id' => 'use_destination_based_tax', + 'value' => 'use_destination_based_tax', + 'checked' => $config['use_destination_based_tax'] == 1 + ]) ?> +
                                                    +
                                                    -
                                                    - 'control-label col-xs-2']) ?> -
                                                    - -
                                                    -
                                                    +
                                                    + 'control-label col-xs-2']) ?> +
                                                    + +
                                                    +
                                                    -
                                                    - 'control-label col-xs-2']) ?> -
                                                    - -
                                                    -
                                                    +
                                                    + 'control-label col-xs-2']) ?> +
                                                    + +
                                                    +
                                                    -
                                                    - 'control-label col-xs-2']) ?> -
                                                    - -
                                                    -
                                                    +
                                                    + 'control-label col-xs-2']) ?> +
                                                    + +
                                                    +
                                                    - 'submit_tax', - 'id' => 'submit_tax', - 'value' => lang('Common.submit'), - 'class' => 'btn btn-primary btn-sm pull-right' - ]) ?> -
                                                    -
                                                    + 'submit_tax', + 'id' => 'submit_tax', + 'value' => lang('Common.submit'), + 'class' => 'btn btn-primary btn-sm pull-right' + ]) ?> +
                                                    +
                                                    @@ -141,55 +141,55 @@ //validation and submit handling $(document).ready(function() { - var enable_disable_use_destination_based_tax = (function() { - var use_destination_based_tax = $("#use_destination_based_tax").is(":checked"); - $("select[name='default_tax_code']").prop("disabled", !use_destination_based_tax); - $("select[name='default_tax_category']").prop("disabled", !use_destination_based_tax); - $("select[name='default_tax_jurisdiction']").prop("disabled", !use_destination_based_tax); - $("input[name='tax_included']").prop("disabled", use_destination_based_tax); - $("input[name='default_tax_1_rate']").prop("disabled", use_destination_based_tax); - $("input[name='default_tax_1_name']").prop("disabled", use_destination_based_tax); - $("input[name='default_tax_2_rate']").prop("disabled", use_destination_based_tax); - $("input[name='default_tax_2_name']").prop("disabled", use_destination_based_tax); + var enable_disable_use_destination_based_tax = (function() { + var use_destination_based_tax = $("#use_destination_based_tax").is(":checked"); + $("select[name='default_tax_code']").prop("disabled", !use_destination_based_tax); + $("select[name='default_tax_category']").prop("disabled", !use_destination_based_tax); + $("select[name='default_tax_jurisdiction']").prop("disabled", !use_destination_based_tax); + $("input[name='tax_included']").prop("disabled", use_destination_based_tax); + $("input[name='default_tax_1_rate']").prop("disabled", use_destination_based_tax); + $("input[name='default_tax_1_name']").prop("disabled", use_destination_based_tax); + $("input[name='default_tax_2_rate']").prop("disabled", use_destination_based_tax); + $("input[name='default_tax_2_name']").prop("disabled", use_destination_based_tax); - return arguments.callee; - })(); + return arguments.callee; + })(); - $("#use_destination_based_tax").change(enable_disable_use_destination_based_tax); + $("#use_destination_based_tax").change(enable_disable_use_destination_based_tax); - $('#tax_config_form').validate($.extend(form_support.handler, { - submitHandler: function(form) { - $(form).ajaxSubmit({ - beforeSerialize: function(arr, $form, options) { - return true; - }, - success: function(response) { - $.notify({ message: response.message }, { type: response.success ? 'success' : 'danger'}); - }, - dataType: 'json' - }); - }, + $('#tax_config_form').validate($.extend(form_support.handler, { + submitHandler: function(form) { + $(form).ajaxSubmit({ + beforeSerialize: function(arr, $form, options) { + return true; + }, + success: function(response) { + $.notify({ message: response.message }, { type: response.success ? 'success' : 'danger'}); + }, + dataType: 'json' + }); + }, - rules: - { - default_tax_1_rate: - { - remote: "" - }, - default_tax2_rate: - { - remote: "" - }, - }, + rules: + { + default_tax_1_rate: + { + remote: "" + }, + default_tax2_rate: + { + remote: "" + }, + }, - messages: - { - default_tax_1_rate: - { - number: "" - }, - } - })); + messages: + { + default_tax_1_rate: + { + number: "" + }, + } + })); }); diff --git a/app/Views/customers/form.php b/app/Views/customers/form.php index 770778608..171cd56f8 100644 --- a/app/Views/customers/form.php +++ b/app/Views/customers/form.php @@ -15,539 +15,539 @@
                                                      person_id", ['id' => 'customer_form', 'class' => 'form-horizontal']) ?> - + -
                                                      -
                                                      -
                                                      -
                                                      - 'required control-label col-xs-3']) ?> -
                                                      - consent == '' ? !$config['enforce_privacy'] : (boolean)$person_info->consent) ?> -
                                                      -
                                                      +
                                                      +
                                                      +
                                                      +
                                                      + 'required control-label col-xs-3']) ?> +
                                                      + consent == '' ? !$config['enforce_privacy'] : (boolean)$person_info->consent) ?> +
                                                      +
                                                      - + -
                                                      - 'control-label col-xs-3']) ?> -
                                                      - - -
                                                      -
                                                      +
                                                      + 'control-label col-xs-3']) ?> +
                                                      + + +
                                                      +
                                                      -
                                                      - 'control-label col-xs-3']) ?> -
                                                      -
                                                      - 'discount', - 'id' => 'discount', - 'class' => 'form-control input-sm', - 'onClick' => 'this.select();', - 'value' => $person_info->discount_type === FIXED ? to_currency_no_money($person_info->discount) : to_decimals($person_info->discount) - ]) ?> -
                                                      -
                                                      -
                                                      +
                                                      + 'control-label col-xs-3']) ?> +
                                                      +
                                                      + 'discount', + 'id' => 'discount', + 'class' => 'form-control input-sm', + 'onClick' => 'this.select();', + 'value' => $person_info->discount_type === FIXED ? to_currency_no_money($person_info->discount) : to_decimals($person_info->discount) + ]) ?> +
                                                      +
                                                      +
                                                      -
                                                      - 'control-label col-xs-3']) ?> -
                                                      - 'company_name', - 'id' => 'customer_company_name', - 'class' => 'form-control input-sm', - 'value' => $person_info->company_name - ]) ?> -
                                                      -
                                                      +
                                                      + 'control-label col-xs-3']) ?> +
                                                      + 'company_name', + 'id' => 'customer_company_name', + 'class' => 'form-control input-sm', + 'value' => $person_info->company_name + ]) ?> +
                                                      +
                                                      -
                                                      - 'control-label col-xs-3']) ?> -
                                                      - 'account_number', - 'id' => 'account_number', - 'class' => 'form-control input-sm', - 'value' => $person_info->account_number - ]) ?> -
                                                      -
                                                      +
                                                      + 'control-label col-xs-3']) ?> +
                                                      + 'account_number', + 'id' => 'account_number', + 'class' => 'form-control input-sm', + 'value' => $person_info->account_number + ]) ?> +
                                                      +
                                                      -
                                                      - 'control-label col-xs-3']) ?> -
                                                      - 'tax_id', - 'id' => 'tax_id', - 'class' => 'form-control input-sm', - 'value' => $person_info->tax_id - ]) ?> -
                                                      -
                                                      +
                                                      + 'control-label col-xs-3']) ?> +
                                                      + 'tax_id', + 'id' => 'tax_id', + 'class' => 'form-control input-sm', + 'value' => $person_info->tax_id + ]) ?> +
                                                      +
                                                      - -
                                                      - 'control-label col-xs-3']) ?> -
                                                      - -
                                                      -
                                                      + +
                                                      + 'control-label col-xs-3']) ?> +
                                                      + +
                                                      +
                                                      -
                                                      - 'control-label col-xs-3']) ?> -
                                                      - 'available_points', - 'id' => 'available_points', - 'class' => 'form-control input-sm', - 'value' => $person_info->points, - 'disabled' => '' - ]) ?> -
                                                      -
                                                      - +
                                                      + 'control-label col-xs-3']) ?> +
                                                      + 'available_points', + 'id' => 'available_points', + 'class' => 'form-control input-sm', + 'value' => $person_info->points, + 'disabled' => '' + ]) ?> +
                                                      +
                                                      + -
                                                      - 'control-label col-xs-3']) ?> -
                                                      - taxable == 1) ?> -
                                                      -
                                                      +
                                                      + 'control-label col-xs-3']) ?> +
                                                      + taxable == 1) ?> +
                                                      +
                                                      - -
                                                      - 'control-label col-xs-3']) ?> -
                                                      -
                                                      - 'sales_tax_code_name', - 'id' => 'sales_tax_code_name', - 'class' => 'form-control input-sm', - 'size' => '50', - 'value' => $sales_tax_code_label - ]) ?> - sales_tax_code_id) ?> -
                                                      -
                                                      -
                                                      - + +
                                                      + 'control-label col-xs-3']) ?> +
                                                      +
                                                      + 'sales_tax_code_name', + 'id' => 'sales_tax_code_name', + 'class' => 'form-control input-sm', + 'size' => '50', + 'value' => $sales_tax_code_label + ]) ?> + sales_tax_code_id) ?> +
                                                      +
                                                      +
                                                      + -
                                                      - 'control-label col-xs-3']) ?> -
                                                      -
                                                      - - 'date', - 'id' => 'datetime', - 'class' => 'form-control input-sm', - 'value' => to_datetime(strtotime($person_info->date)), - 'readonly' => 'true' - ]) ?> -
                                                      -
                                                      -
                                                      +
                                                      + 'control-label col-xs-3']) ?> +
                                                      +
                                                      + + 'date', + 'id' => 'datetime', + 'class' => 'form-control input-sm', + 'value' => to_datetime(strtotime($person_info->date)), + 'readonly' => 'true' + ]) ?> +
                                                      +
                                                      +
                                                      -
                                                      - 'control-label col-xs-3']) ?> -
                                                      - 'employee', - 'id' => 'employee', - 'class' => 'form-control input-sm', - 'value' => $employee, - 'readonly' => 'true' - ]) ?> -
                                                      -
                                                      +
                                                      + 'control-label col-xs-3']) ?> +
                                                      + 'employee', + 'id' => 'employee', + 'class' => 'form-control input-sm', + 'value' => $employee, + 'readonly' => 'true' + ]) ?> +
                                                      +
                                                      - employee_id) ?> -
                                                      -
                                                      + employee_id) ?> +
                                                      +
                                                      - -
                                                      -
                                                      -
                                                      -
                                                      - 'control-label col-xs-5']) ?> -
                                                      -
                                                      - - - - 'total', - 'id' => 'total', - 'class' => 'form-control input-sm', - 'value' => to_currency_no_money($stats->total), - 'disabled' => '' - ]) ?> - - - -
                                                      -
                                                      -
                                                      + +
                                                      +
                                                      +
                                                      +
                                                      + 'control-label col-xs-5']) ?> +
                                                      +
                                                      + + + + 'total', + 'id' => 'total', + 'class' => 'form-control input-sm', + 'value' => to_currency_no_money($stats->total), + 'disabled' => '' + ]) ?> + + + +
                                                      +
                                                      +
                                                      -
                                                      - 'control-label col-xs-5']) ?> -
                                                      -
                                                      - - - - 'max', - 'id' => 'max', - 'class' => 'form-control input-sm', - 'value' => to_currency_no_money($stats->max), - 'disabled' => '' - ]) ?> - - - -
                                                      -
                                                      -
                                                      +
                                                      + 'control-label col-xs-5']) ?> +
                                                      +
                                                      + + + + 'max', + 'id' => 'max', + 'class' => 'form-control input-sm', + 'value' => to_currency_no_money($stats->max), + 'disabled' => '' + ]) ?> + + + +
                                                      +
                                                      +
                                                      -
                                                      - 'control-label col-xs-5']) ?> -
                                                      -
                                                      - - - - 'min', - 'id' => 'min', - 'class' => 'form-control input-sm', - 'value' => to_currency_no_money($stats->min), - 'disabled' => '' - ]) ?> - - - -
                                                      -
                                                      -
                                                      +
                                                      + 'control-label col-xs-5']) ?> +
                                                      +
                                                      + + + + 'min', + 'id' => 'min', + 'class' => 'form-control input-sm', + 'value' => to_currency_no_money($stats->min), + 'disabled' => '' + ]) ?> + + + +
                                                      +
                                                      +
                                                      -
                                                      - 'control-label col-xs-5']) ?> -
                                                      -
                                                      - - - - 'average', - 'id' => 'average', - 'class' => 'form-control input-sm', - 'value' => to_currency_no_money($stats->average), - 'disabled' => '' - ]) ?> - - - -
                                                      -
                                                      -
                                                      +
                                                      + 'control-label col-xs-5']) ?> +
                                                      +
                                                      + + + + 'average', + 'id' => 'average', + 'class' => 'form-control input-sm', + 'value' => to_currency_no_money($stats->average), + 'disabled' => '' + ]) ?> + + + +
                                                      +
                                                      +
                                                      -
                                                      - 'control-label col-xs-5']) ?> -
                                                      -
                                                      - ' ?> - 'quantity', - 'id' => 'quantity', - 'class' => 'form-control input-sm', - 'value' => to_quantity_decimals($stats->quantity), - 'disabled' => '' - ]) ?> -
                                                      -
                                                      -
                                                      +
                                                      + 'control-label col-xs-5']) ?> +
                                                      +
                                                      + ' ?> + 'quantity', + 'id' => 'quantity', + 'class' => 'form-control input-sm', + 'value' => to_quantity_decimals($stats->quantity), + 'disabled' => '' + ]) ?> +
                                                      +
                                                      +
                                                      -
                                                      - 'control-label col-xs-5']) ?> -
                                                      -
                                                      - 'avg_discount', - 'id' => 'avg_discount', - 'class' => 'form-control input-sm', - 'value' => to_decimals($stats->avg_discount), - 'disabled' => '' - ]) ?> - % -
                                                      -
                                                      -
                                                      -
                                                      -
                                                      - +
                                                      + 'control-label col-xs-5']) ?> +
                                                      +
                                                      + 'avg_discount', + 'id' => 'avg_discount', + 'class' => 'form-control input-sm', + 'value' => to_decimals($stats->avg_discount), + 'disabled' => '' + ]) ?> + % +
                                                      +
                                                      +
                                                      +
                                                      +
                                                      + - -
                                                      -
                                                      -
                                                      - 'control-label col-xs-3']) ?> -
                                                      - 'subscribed', - 'unsubscribed' => 'unsubscribed', - 'cleaned' => 'cleaned', - 'pending' => 'pending' - ], - $mailchimp_info['status'], - ['id' => 'mailchimp_status', 'class' => 'form-control input-sm'] - ) ?> -
                                                      -
                                                      + +
                                                      +
                                                      +
                                                      + 'control-label col-xs-3']) ?> +
                                                      + 'subscribed', + 'unsubscribed' => 'unsubscribed', + 'cleaned' => 'cleaned', + 'pending' => 'pending' + ], + $mailchimp_info['status'], + ['id' => 'mailchimp_status', 'class' => 'form-control input-sm'] + ) ?> +
                                                      +
                                                      -
                                                      - 'control-label col-xs-3']) ?> -
                                                      - -
                                                      -
                                                      +
                                                      + 'control-label col-xs-3']) ?> +
                                                      + +
                                                      +
                                                      -
                                                      - 'control-label col-xs-3']) ?> -
                                                      - 'mailchimp_member_rating', - 'class' => 'form-control input-sm', - 'value' => $mailchimp_info['member_rating'], - 'disabled' => '' - ]) ?> -
                                                      -
                                                      +
                                                      + 'control-label col-xs-3']) ?> +
                                                      + 'mailchimp_member_rating', + 'class' => 'form-control input-sm', + 'value' => $mailchimp_info['member_rating'], + 'disabled' => '' + ]) ?> +
                                                      +
                                                      -
                                                      - 'control-label col-xs-3']) ?> -
                                                      - 'mailchimp_activity_total', - 'class' => 'form-control input-sm', - 'value' => $mailchimp_activity['total'], - 'disabled' => '' - ]) ?> -
                                                      -
                                                      +
                                                      + 'control-label col-xs-3']) ?> +
                                                      + 'mailchimp_activity_total', + 'class' => 'form-control input-sm', + 'value' => $mailchimp_activity['total'], + 'disabled' => '' + ]) ?> +
                                                      +
                                                      -
                                                      - 'control-label col-xs-3']) ?> -
                                                      - 'mailchimp_activity_lastopen', - 'class' => 'form-control input-sm', - 'value' => $mailchimp_activity['lastopen'], - 'disabled' => '' - ]) ?> -
                                                      -
                                                      +
                                                      + 'control-label col-xs-3']) ?> +
                                                      + 'mailchimp_activity_lastopen', + 'class' => 'form-control input-sm', + 'value' => $mailchimp_activity['lastopen'], + 'disabled' => '' + ]) ?> +
                                                      +
                                                      -
                                                      - 'control-label col-xs-3']) ?> -
                                                      - 'mailchimp_activity_open', - 'class' => 'form-control input-sm', - 'value' => $mailchimp_activity['open'], - 'disabled' => '' - ]) ?> -
                                                      -
                                                      +
                                                      + 'control-label col-xs-3']) ?> +
                                                      + 'mailchimp_activity_open', + 'class' => 'form-control input-sm', + 'value' => $mailchimp_activity['open'], + 'disabled' => '' + ]) ?> +
                                                      +
                                                      -
                                                      - 'control-label col-xs-3']) ?> -
                                                      - 'mailchimp_activity_click', - 'class' => 'form-control input-sm', - 'value' => $mailchimp_activity['click'], - 'disabled' => '' - ]) ?> -
                                                      -
                                                      +
                                                      + 'control-label col-xs-3']) ?> +
                                                      + 'mailchimp_activity_click', + 'class' => 'form-control input-sm', + 'value' => $mailchimp_activity['click'], + 'disabled' => '' + ]) ?> +
                                                      +
                                                      -
                                                      - 'control-label col-xs-3']) ?> -
                                                      - 'mailchimp_activity_unopen', - 'class' => 'form-control input-sm', - 'value' => $mailchimp_activity['unopen'], - 'disabled' => '' - ]) ?> -
                                                      -
                                                      +
                                                      + 'control-label col-xs-3']) ?> +
                                                      + 'mailchimp_activity_unopen', + 'class' => 'form-control input-sm', + 'value' => $mailchimp_activity['unopen'], + 'disabled' => '' + ]) ?> +
                                                      +
                                                      -
                                                      - 'control-label col-xs-3']) ?> -
                                                      - 'mailchimp_email_client', - 'class' => 'form-control input-sm', - 'value' => $mailchimp_info['email_client'], - 'disabled' => '' - ]) ?> -
                                                      -
                                                      -
                                                      -
                                                      - -
                                                      +
                                                      + 'control-label col-xs-3']) ?> +
                                                      + 'mailchimp_email_client', + 'class' => 'form-control input-sm', + 'value' => $mailchimp_info['email_client'], + 'disabled' => '' + ]) ?> +
                                                      +
                                                      + +
                                                      + + diff --git a/app/Views/customers/form_csv_import.php b/app/Views/customers/form_csv_import.php index af2cc0e6b..903c8c59a 100644 --- a/app/Views/customers/form_csv_import.php +++ b/app/Views/customers/form_csv_import.php @@ -1,52 +1,52 @@
                                                        'csv_form', 'class' => 'form-horizontal']) ?> -
                                                        -
                                                        -
                                                        - -
                                                        -
                                                        +
                                                        +
                                                        +
                                                        + +
                                                        +
                                                        -
                                                        -
                                                        -
                                                        -
                                                        - - -
                                                        -
                                                        -
                                                        -
                                                        +
                                                        +
                                                        +
                                                        +
                                                        + + +
                                                        +
                                                        +
                                                        +
                                                        diff --git a/app/Views/employees/form.php b/app/Views/employees/form.php index 1270b5505..9916c3fcc 100644 --- a/app/Views/employees/form.php +++ b/app/Views/employees/form.php @@ -12,269 +12,269 @@
                                                          person_id", ['id' => 'employee_form', 'class' => 'form-horizontal']) ?> - + -
                                                          -
                                                          -
                                                          - -
                                                          -
                                                          +
                                                          +
                                                          +
                                                          + +
                                                          +
                                                          -
                                                          -
                                                          -
                                                          - 'required control-label col-xs-3']) ?> -
                                                          -
                                                          - - 'username', - 'id' => 'username', - 'class' => 'form-control input-sm', - 'value' => $person_info->username - ]) ?> -
                                                          -
                                                          -
                                                          +
                                                          +
                                                          +
                                                          + 'required control-label col-xs-3']) ?> +
                                                          +
                                                          + + 'username', + 'id' => 'username', + 'class' => 'form-control input-sm', + 'value' => $person_info->username + ]) ?> +
                                                          +
                                                          +
                                                          - person_id == "" ? ['class' => 'required'] : []; ?> + person_id == "" ? ['class' => 'required'] : []; ?> -
                                                          - 'control-label col-xs-3']))?> -
                                                          -
                                                          - - 'password', - 'id' => 'password', - 'class' => 'form-control input-sm' - ]) ?> -
                                                          -
                                                          -
                                                          +
                                                          + 'control-label col-xs-3']))?> +
                                                          +
                                                          + + 'password', + 'id' => 'password', + 'class' => 'form-control input-sm' + ]) ?> +
                                                          +
                                                          +
                                                          -
                                                          - 'control-label col-xs-3'])) ?> -
                                                          -
                                                          - - 'repeat_password', - 'id' => 'repeat_password', - 'class' => 'form-control input-sm' - ]) ?> -
                                                          -
                                                          -
                                                          +
                                                          + 'control-label col-xs-3'])) ?> +
                                                          +
                                                          + + 'repeat_password', + 'id' => 'repeat_password', + 'class' => 'form-control input-sm' + ]) ?> +
                                                          +
                                                          +
                                                          -
                                                          - 'control-label col-xs-3']) ?> -
                                                          -
                                                          - + 'control-label col-xs-3']) ?> +
                                                          +
                                                          + 'form-control input-sm'] - ); - ?> -
                                                          -
                                                          -
                                                          -
                                                          -
                                                          + echo form_dropdown( + 'language', + $languages, + "$language_code:$language", + ['class' => 'form-control input-sm'] + ); + ?> +
                                                          +
                                                          +
                                                          + + -
                                                          -
                                                          -

                                                          +
                                                          +
                                                          +

                                                          -
                                                            - -
                                                          • - module_id", $module->module_id, $module->grant == 1, "class='module'") ?> - module_id", [ - 'home' => lang('Module.home'), - 'office' => lang('Module.office'), - 'both' => lang('Module.both') - ], - $module->menu_group, - "class='module'" - ) ?> +
                                                              + +
                                                            • + module_id", $module->module_id, $module->grant == 1, "class='module'") ?> + module_id", [ + 'home' => lang('Module.home'), + 'office' => lang('Module.office'), + 'both' => lang('Module.both') + ], + $module->menu_group, + "class='module'" + ) ?> - module_id") ?>: - module_id" . '_desc') ?> - permission_id, 2); - if($permission->module_id == $module->module_id) - { - $lang_key = $module->module_id . '.' . $exploded_permission[1]; - $lang_line = lang(ucfirst($lang_key)); - $lang_line = (lang(ucfirst($lang_key)) == $lang_line) ? ucwords(str_replace("_", " ",$exploded_permission[1])) : $lang_line; - if(!empty($lang_line)) - { - ?> -
                                                                -
                                                              • - permission_id", $permission->permission_id, $permission->grant == 1) ?> - permission_id", "--") ?> - -
                                                              • -
                                                              - -
                                                            • - -
                                                            -
                                                          -
                                                          -
                                                          + module_id") ?>: + module_id" . '_desc') ?> + permission_id, 2); + if($permission->module_id == $module->module_id) + { + $lang_key = $module->module_id . '.' . $exploded_permission[1]; + $lang_line = lang(ucfirst($lang_key)); + $lang_line = (lang(ucfirst($lang_key)) == $lang_line) ? ucwords(str_replace("_", " ",$exploded_permission[1])) : $lang_line; + if(!empty($lang_line)) + { + ?> +
                                                            +
                                                          • + permission_id", $permission->permission_id, $permission->grant == 1) ?> + permission_id", "--") ?> + +
                                                          • +
                                                          + + + + + + + diff --git a/app/Views/errors/cli/error_db.php b/app/Views/errors/cli/error_db.php index c2a6d75ca..ea02c1c9f 100644 --- a/app/Views/errors/cli/error_db.php +++ b/app/Views/errors/cli/error_db.php @@ -4,7 +4,7 @@ * @var string $message */ echo "\nDatabase error: ", - esc($heading), - "\n\n", - esc($message), - "\n\n"; \ No newline at end of file + esc($heading), + "\n\n", + esc($message), + "\n\n"; diff --git a/app/Views/errors/cli/error_general.php b/app/Views/errors/cli/error_general.php index 0efd45dcf..005e23542 100644 --- a/app/Views/errors/cli/error_general.php +++ b/app/Views/errors/cli/error_general.php @@ -4,7 +4,7 @@ * @var string $message */ echo "\nERROR: ", - esc($heading), - "\n\n", - esc($message), - "\n\n"; \ No newline at end of file + esc($heading), + "\n\n", + esc($message), + "\n\n"; diff --git a/app/Views/errors/cli/error_php.php b/app/Views/errors/cli/error_php.php index 748456bc7..17f6e6d5d 100644 --- a/app/Views/errors/cli/error_php.php +++ b/app/Views/errors/cli/error_php.php @@ -16,12 +16,12 @@ Line Number: Backtrace: - - - File: - Line: - Function: - - + + + File: + Line: + Function: + + diff --git a/app/Views/errors/cli/index.html b/app/Views/errors/cli/index.html index bcb7cae34..905c65ee7 100644 --- a/app/Views/errors/cli/index.html +++ b/app/Views/errors/cli/index.html @@ -1,7 +1,7 @@ - 403 Forbidden + 403 Forbidden diff --git a/app/Views/errors/html/error_db.php b/app/Views/errors/html/error_db.php index 5086c59f2..a8cc0ec90 100644 --- a/app/Views/errors/html/error_db.php +++ b/app/Views/errors/html/error_db.php @@ -15,54 +15,54 @@ ::-moz-selection { background-color: #E13300; color: white; } body { - background-color: #fff; - margin: 40px; - font: 13px/20px normal Helvetica, Arial, sans-serif; - color: #4F5155; + background-color: #fff; + margin: 40px; + font: 13px/20px normal Helvetica, Arial, sans-serif; + color: #4F5155; } a { - color: #003399; - background-color: transparent; - font-weight: normal; + color: #003399; + background-color: transparent; + font-weight: normal; } h1 { - color: #444; - background-color: transparent; - border-bottom: 1px solid #D0D0D0; - font-size: 19px; - font-weight: normal; - margin: 0 0 14px 0; - padding: 14px 15px 10px 15px; + color: #444; + background-color: transparent; + border-bottom: 1px solid #D0D0D0; + font-size: 19px; + font-weight: normal; + margin: 0 0 14px 0; + padding: 14px 15px 10px 15px; } code { - font-family: Consolas, Monaco, Courier New, Courier, monospace; - font-size: 12px; - background-color: #f9f9f9; - border: 1px solid #D0D0D0; - color: #002166; - display: block; - margin: 14px 0 14px 0; - padding: 12px 10px 12px 10px; + font-family: Consolas, Monaco, Courier New, Courier, monospace; + font-size: 12px; + background-color: #f9f9f9; + border: 1px solid #D0D0D0; + color: #002166; + display: block; + margin: 14px 0 14px 0; + padding: 12px 10px 12px 10px; } #container { - margin: 10px; - border: 1px solid #D0D0D0; - box-shadow: 0 0 8px #D0D0D0; + margin: 10px; + border: 1px solid #D0D0D0; + box-shadow: 0 0 8px #D0D0D0; } p { - margin: 12px 15px 12px 15px; + margin: 12px 15px 12px 15px; } -
                                                          -

                                                          - -
                                                          +
                                                          +

                                                          + +
                                                          diff --git a/app/Views/errors/html/error_general.php b/app/Views/errors/html/error_general.php index 4b8ab5436..b49a7d81a 100644 --- a/app/Views/errors/html/error_general.php +++ b/app/Views/errors/html/error_general.php @@ -15,54 +15,54 @@ ::-moz-selection { background-color: #E13300; color: white; } body { - background-color: #fff; - margin: 40px; - font: 13px/20px normal Helvetica, Arial, sans-serif; - color: #4F5155; + background-color: #fff; + margin: 40px; + font: 13px/20px normal Helvetica, Arial, sans-serif; + color: #4F5155; } a { - color: #003399; - background-color: transparent; - font-weight: normal; + color: #003399; + background-color: transparent; + font-weight: normal; } h1 { - color: #444; - background-color: transparent; - border-bottom: 1px solid #D0D0D0; - font-size: 19px; - font-weight: normal; - margin: 0 0 14px 0; - padding: 14px 15px 10px 15px; + color: #444; + background-color: transparent; + border-bottom: 1px solid #D0D0D0; + font-size: 19px; + font-weight: normal; + margin: 0 0 14px 0; + padding: 14px 15px 10px 15px; } code { - font-family: Consolas, Monaco, Courier New, Courier, monospace; - font-size: 12px; - background-color: #f9f9f9; - border: 1px solid #D0D0D0; - color: #002166; - display: block; - margin: 14px 0 14px 0; - padding: 12px 10px 12px 10px; + font-family: Consolas, Monaco, Courier New, Courier, monospace; + font-size: 12px; + background-color: #f9f9f9; + border: 1px solid #D0D0D0; + color: #002166; + display: block; + margin: 14px 0 14px 0; + padding: 12px 10px 12px 10px; } #container { - margin: 10px; - border: 1px solid #D0D0D0; - box-shadow: 0 0 8px #D0D0D0; + margin: 10px; + border: 1px solid #D0D0D0; + box-shadow: 0 0 8px #D0D0D0; } p { - margin: 12px 15px 12px 15px; + margin: 12px 15px 12px 15px; } -
                                                          -

                                                          - -
                                                          +
                                                          +

                                                          + +
                                                          diff --git a/app/Views/errors/html/error_php.php b/app/Views/errors/html/error_php.php index 1562a8623..15d611730 100644 --- a/app/Views/errors/html/error_php.php +++ b/app/Views/errors/html/error_php.php @@ -17,20 +17,20 @@ -

                                                          Backtrace:

                                                          - +

                                                          Backtrace:

                                                          + - + -

                                                          - File:
                                                          - Line:
                                                          - Function: -

                                                          +

                                                          + File:
                                                          + Line:
                                                          + Function: +

                                                          - + - + diff --git a/app/Views/errors/html/index.html b/app/Views/errors/html/index.html index bcb7cae34..905c65ee7 100644 --- a/app/Views/errors/html/index.html +++ b/app/Views/errors/html/index.html @@ -1,7 +1,7 @@ - 403 Forbidden + 403 Forbidden diff --git a/app/Views/errors/index.html b/app/Views/errors/index.html index bcb7cae34..905c65ee7 100644 --- a/app/Views/errors/index.html +++ b/app/Views/errors/index.html @@ -1,7 +1,7 @@ - 403 Forbidden + 403 Forbidden diff --git a/app/Views/expenses/form.php b/app/Views/expenses/form.php index 7233c5234..84ad8640d 100644 --- a/app/Views/expenses/form.php +++ b/app/Views/expenses/form.php @@ -13,258 +13,258 @@
                                                            expense_id", ['id' => 'expenses_edit_form', 'class' => 'form-horizontal']) ?> -
                                                            -
                                                            - 'control-label col-xs-3']) ?> - expense_id) ? lang('Expenses.expense_id') . " $expenses_info->expense_id" : '', 'expenses_info_id', ['class' => 'control-label col-xs-8', 'style' => 'text-align:left']) ?> -
                                                            +
                                                            +
                                                            + 'control-label col-xs-3']) ?> + expense_id) ? lang('Expenses.expense_id') . " $expenses_info->expense_id" : '', 'expenses_info_id', ['class' => 'control-label col-xs-8', 'style' => 'text-align:left']) ?> +
                                                            -
                                                            - 'required control-label col-xs-3']) ?> -
                                                            -
                                                            - - 'date', - 'class' => 'form-control input-sm datetime', - 'value' => to_datetime(strtotime($expenses_info->date)), +
                                                            + 'required control-label col-xs-3']) ?> +
                                                            +
                                                            + + 'date', + 'class' => 'form-control input-sm datetime', + 'value' => to_datetime(strtotime($expenses_info->date)), 'readonly' => 'readonly' - ] - ) ?> -
                                                            -
                                                            -
                                                            + ] + ) ?> +
                                                            +
                                                            +
                                                            -
                                                            - 'control-label col-xs-3']) ?> -
                                                            - 'supplier_name', - 'id' => 'supplier_name', - 'class' => 'form-control input-sm', - 'value'=>lang('Expenses.start_typing_supplier_name') - ]); - echo form_input ([ - 'type' => 'hidden', - 'name' => 'supplier_id', - 'id' => 'supplier_id' - ]) ?> -
                                                            -
                                                            - - - -
                                                            -
                                                            +
                                                            + 'control-label col-xs-3']) ?> +
                                                            + 'supplier_name', + 'id' => 'supplier_name', + 'class' => 'form-control input-sm', + 'value'=>lang('Expenses.start_typing_supplier_name') + ]); + echo form_input ([ + 'type' => 'hidden', + 'name' => 'supplier_id', + 'id' => 'supplier_id' + ]) ?> +
                                                            +
                                                            + + + +
                                                            +
                                                            -
                                                            - 'control-label col-xs-3']) ?> -
                                                            - 'supplier_tax_code', - 'id' => 'supplier_tax_code', - 'class' => 'form-control input-sm', - 'value' => $expenses_info->supplier_tax_code - ]) ?> -
                                                            -
                                                            +
                                                            + 'control-label col-xs-3']) ?> +
                                                            + 'supplier_tax_code', + 'id' => 'supplier_tax_code', + 'class' => 'form-control input-sm', + 'value' => $expenses_info->supplier_tax_code + ]) ?> +
                                                            +
                                                            -
                                                            - 'required control-label col-xs-3']) ?> -
                                                            -
                                                            - - - - 'amount', - 'id' => 'amount', - 'class' => 'form-control input-sm', - 'value' => to_currency_no_money($expenses_info->amount) - ]) ?> - - - -
                                                            -
                                                            -
                                                            +
                                                            + 'required control-label col-xs-3']) ?> +
                                                            +
                                                            + + + + 'amount', + 'id' => 'amount', + 'class' => 'form-control input-sm', + 'value' => to_currency_no_money($expenses_info->amount) + ]) ?> + + + +
                                                            +
                                                            +
                                                            -
                                                            - 'control-label col-xs-3']) ?> -
                                                            -
                                                            - - - - 'tax_amount', - 'id' => 'tax_amount', - 'class' => 'form-control input-sm', - 'value' => to_currency_no_money($expenses_info->tax_amount) - ]) ?> - - - -
                                                            -
                                                            -
                                                            +
                                                            + 'control-label col-xs-3']) ?> +
                                                            +
                                                            + + + + 'tax_amount', + 'id' => 'tax_amount', + 'class' => 'form-control input-sm', + 'value' => to_currency_no_money($expenses_info->tax_amount) + ]) ?> + + + +
                                                            +
                                                            +
                                                            -
                                                            - 'control-label col-xs-3']) ?> -
                                                            - payment_type, ['class' => 'form-control', 'id' => 'payment_type']) ?> -
                                                            -
                                                            +
                                                            + 'control-label col-xs-3']) ?> +
                                                            + payment_type, ['class' => 'form-control', 'id' => 'payment_type']) ?> +
                                                            +
                                                            -
                                                            - 'control-label col-xs-3']) ?> -
                                                            - expense_category_id, ['class' => 'form-control', 'id' => 'category']) ?> -
                                                            -
                                                            +
                                                            + 'control-label col-xs-3']) ?> +
                                                            + expense_category_id, ['class' => 'form-control', 'id' => 'category']) ?> +
                                                            +
                                                            -
                                                            - 'control-label col-xs-3']) ?> -
                                                            - employee_id, 'id="employee_id" class="form-control"') ?> -
                                                            -
                                                            +
                                                            + 'control-label col-xs-3']) ?> +
                                                            + employee_id, 'id="employee_id" class="form-control"') ?> +
                                                            +
                                                            -
                                                            - 'control-label col-xs-3']) ?> -
                                                            - 'description', - 'id' => 'description', - 'class' => 'form-control input-sm', - 'value' => $expenses_info->description - ]) ?> -
                                                            -
                                                            +
                                                            + 'control-label col-xs-3']) ?> +
                                                            + 'description', + 'id' => 'description', + 'class' => 'form-control input-sm', + 'value' => $expenses_info->description + ]) ?> +
                                                            +
                                                            - expense_id)) - { - ?> -
                                                            - 'control-label col-xs-3']) ?> -
                                                            - 'deleted', - 'id' => 'deleted', - 'value' => 1, - 'checked' => $expenses_info->deleted == 1 - ]) ?> -
                                                            -
                                                            - -
                                                            + expense_id)) + { + ?> +
                                                            + 'control-label col-xs-3']) ?> +
                                                            + 'deleted', + 'id' => 'deleted', + 'value' => 1, + 'checked' => $expenses_info->deleted == 1 + ]) ?> +
                                                            +
                                                            + +
                                                            diff --git a/app/Views/expenses/manage.php b/app/Views/expenses/manage.php index efc2a6b44..cf5c0b657 100644 --- a/app/Views/expenses/manage.php +++ b/app/Views/expenses/manage.php @@ -11,68 +11,68 @@ false, 'selected_printer' => 'takings_printer']) ?>
                                                            -
                                                            -
                                                            +
                                                            diff --git a/app/Views/expenses_categories/form.php b/app/Views/expenses_categories/form.php index 957c29f58..3318792c4 100644 --- a/app/Views/expenses_categories/form.php +++ b/app/Views/expenses_categories/form.php @@ -9,61 +9,61 @@
                                                              expense_category_id", ['id' => 'expense_category_edit_form', 'class' => 'form-horizontal']) ?> -
                                                              -
                                                              - 'required control-label col-xs-3']) ?> -
                                                              - 'category_name', - 'id' => 'category_name', - 'class' => 'form-control input-sm', - 'value' => $category_info->category_name - ]) ?> -
                                                              -
                                                              +
                                                              +
                                                              + 'required control-label col-xs-3']) ?> +
                                                              + 'category_name', + 'id' => 'category_name', + 'class' => 'form-control input-sm', + 'value' => $category_info->category_name + ]) ?> +
                                                              +
                                                              -
                                                              - 'control-label col-xs-3']) ?> -
                                                              - 'category_description', - 'id' => 'category_description', - 'class' => 'form-control input-sm', - 'value' => $category_info->category_description - ]) ?> -
                                                              -
                                                              +
                                                              + 'control-label col-xs-3']) ?> +
                                                              + 'category_description', + 'id' => 'category_description', + 'class' => 'form-control input-sm', + 'value' => $category_info->category_description + ]) ?> +
                                                              +
                                                              -
                                                              +
                                                              diff --git a/app/Views/expenses_categories/manage.php b/app/Views/expenses_categories/manage.php index 66302a128..0aa6bfa6b 100644 --- a/app/Views/expenses_categories/manage.php +++ b/app/Views/expenses_categories/manage.php @@ -10,41 +10,41 @@
                                                              - +
                                                              - +
                                                              -
                                                              +
                                                              diff --git a/app/Views/giftcards/form.php b/app/Views/giftcards/form.php index 07eeb8240..e10d96ac2 100644 --- a/app/Views/giftcards/form.php +++ b/app/Views/giftcards/form.php @@ -14,163 +14,163 @@
                                                                'giftcard_form', 'class' => 'form-horizontal']) ?> -
                                                                -
                                                                - 'control-label col-xs-3']) ?> -
                                                                - 'person_name', - 'id' => 'person_name', - 'class' => 'form-control input-sm', - 'value' => $selected_person_name - ]) ?> - -
                                                                -
                                                                +
                                                                +
                                                                + 'control-label col-xs-3']) ?> +
                                                                + 'person_name', + 'id' => 'person_name', + 'class' => 'form-control input-sm', + 'value' => $selected_person_name + ]) ?> + +
                                                                +
                                                                - -
                                                                - "control-label col-xs-3$class"]) ?> -
                                                                - 'giftcard_number', - 'id' => 'giftcard_number', - 'class' => 'form-control input-sm', - 'value' => $giftcard_number - ]) ?> -
                                                                -
                                                                + +
                                                                + "control-label col-xs-3$class"]) ?> +
                                                                + 'giftcard_number', + 'id' => 'giftcard_number', + 'class' => 'form-control input-sm', + 'value' => $giftcard_number + ]) ?> +
                                                                +
                                                                -
                                                                - 'required control-label col-xs-3']) ?> -
                                                                -
                                                                - - - - 'giftcard_amount', - 'id' => 'giftcard_amount', - 'class' => 'form-control input-sm', - 'value'=>to_currency_no_money($giftcard_value) - ]) ?> - - - -
                                                                -
                                                                -
                                                                -
                                                                +
                                                                + 'required control-label col-xs-3']) ?> +
                                                                +
                                                                + + + + 'giftcard_amount', + 'id' => 'giftcard_amount', + 'class' => 'form-control input-sm', + 'value'=>to_currency_no_money($giftcard_value) + ]) ?> + + + +
                                                                +
                                                                +
                                                                +
                                                                diff --git a/app/Views/giftcards/manage.php b/app/Views/giftcards/manage.php index a1d9098c0..4af610389 100644 --- a/app/Views/giftcards/manage.php +++ b/app/Views/giftcards/manage.php @@ -9,33 +9,33 @@
                                                                - +
                                                                -
                                                                - -
                                                                +
                                                                + +
                                                                -
                                                                +
                                                                diff --git a/app/Views/home/form_change_password.php b/app/Views/home/form_change_password.php index afc63befe..52f0a8758 100644 --- a/app/Views/home/form_change_password.php +++ b/app/Views/home/form_change_password.php @@ -8,126 +8,126 @@
                                                                  person_id", ['id' => 'employee_form', 'class' => 'form-horizontal']) ?> -
                                                                  -
                                                                  -
                                                                  -
                                                                  - 'required control-label col-xs-3']) ?> -
                                                                  -
                                                                  - - 'username', - 'id' => 'username', - 'class' => 'form-control input-sm', - 'value' => $person_info->username, - 'readonly' => 'true' - ]) ?> -
                                                                  -
                                                                  -
                                                                  +
                                                                  +
                                                                  +
                                                                  +
                                                                  + 'required control-label col-xs-3']) ?> +
                                                                  +
                                                                  + + 'username', + 'id' => 'username', + 'class' => 'form-control input-sm', + 'value' => $person_info->username, + 'readonly' => 'true' + ]) ?> +
                                                                  +
                                                                  +
                                                                  - person_id == "" ? ['class' => 'required'] : []; ?> + person_id == "" ? ['class' => 'required'] : []; ?> -
                                                                  - 'control-label col-xs-3'])) ?> -
                                                                  -
                                                                  - - 'current_password', - 'id' => 'current_password', - 'class' => 'form-control input-sm' - ]) ?> -
                                                                  -
                                                                  -
                                                                  +
                                                                  + 'control-label col-xs-3'])) ?> +
                                                                  +
                                                                  + + 'current_password', + 'id' => 'current_password', + 'class' => 'form-control input-sm' + ]) ?> +
                                                                  +
                                                                  +
                                                                  -
                                                                  - 'control-label col-xs-3'])) ?> -
                                                                  -
                                                                  - - 'password', - 'id' => 'password', - 'class' => 'form-control input-sm' - ]) ?> -
                                                                  -
                                                                  -
                                                                  +
                                                                  + 'control-label col-xs-3'])) ?> +
                                                                  +
                                                                  + + 'password', + 'id' => 'password', + 'class' => 'form-control input-sm' + ]) ?> +
                                                                  +
                                                                  +
                                                                  -
                                                                  - 'control-label col-xs-3'])) ?> -
                                                                  -
                                                                  - - 'repeat_password', - 'id' => 'repeat_password', - 'class' => 'form-control input-sm' - ]) ?> -
                                                                  -
                                                                  -
                                                                  -
                                                                  -
                                                                  -
                                                                  +
                                                                  + 'control-label col-xs-3'])) ?> +
                                                                  +
                                                                  + + 'repeat_password', + 'id' => 'repeat_password', + 'class' => 'form-control input-sm' + ]) ?> +
                                                                  +
                                                                  +
                                                                  +
                                                                  +
                                                                  +
                                                                  diff --git a/app/Views/home/home.php b/app/Views/home/home.php index 01a320744..2cc51467d 100644 --- a/app/Views/home/home.php +++ b/app/Views/home/home.php @@ -6,23 +6,23 @@

                                                                  diff --git a/app/Views/home/office.php b/app/Views/home/office.php index 0552a7f41..04b1a2f89 100644 --- a/app/Views/home/office.php +++ b/app/Views/home/office.php @@ -6,23 +6,23 @@

                                                                  diff --git a/app/Views/index.html b/app/Views/index.html index bcb7cae34..905c65ee7 100644 --- a/app/Views/index.html +++ b/app/Views/index.html @@ -1,7 +1,7 @@ - 403 Forbidden + 403 Forbidden diff --git a/app/Views/item_kits/form.php b/app/Views/item_kits/form.php index 2c79282f9..169e6c6e6 100644 --- a/app/Views/item_kits/form.php +++ b/app/Views/item_kits/form.php @@ -12,201 +12,201 @@
                                                                    item_kit_id", ['id' => 'item_kit_form', 'class' => 'form-horizontal']) ?> -
                                                                    -
                                                                    - 'control-label col-xs-3']) ?> -
                                                                    -
                                                                    - - 'item_kit_number', - 'id' => 'item_kit_number', - 'class' => 'form-control input-sm', - 'value' => $item_kit_info->item_kit_number - ]) ?> -
                                                                    -
                                                                    -
                                                                    +
                                                                    +
                                                                    + 'control-label col-xs-3']) ?> +
                                                                    +
                                                                    + + 'item_kit_number', + 'id' => 'item_kit_number', + 'class' => 'form-control input-sm', + 'value' => $item_kit_info->item_kit_number + ]) ?> +
                                                                    +
                                                                    +
                                                                    -
                                                                    - 'required control-label col-xs-3']) ?> -
                                                                    - 'name', - 'id' => 'name', - 'class' => 'form-control input-sm', - 'value' => $item_kit_info->name - ]) ?> -
                                                                    -
                                                                    +
                                                                    + 'required control-label col-xs-3']) ?> +
                                                                    + 'name', + 'id' => 'name', + 'class' => 'form-control input-sm', + 'value' => $item_kit_info->name + ]) ?> +
                                                                    +
                                                                    -
                                                                    - 'control-label col-xs-3']) ?> -
                                                                    -
                                                                    - 'item_name', - 'id' => 'item_name', - 'class' => 'form-control input-sm', - 'size' => '50', - 'value' => $selected_kit_item - ]) ?> - +
                                                                    + 'control-label col-xs-3']) ?> +
                                                                    +
                                                                    + 'item_name', + 'id' => 'item_name', + 'class' => 'form-control input-sm', + 'size' => '50', + 'value' => $selected_kit_item + ]) ?> + -
                                                                    -
                                                                    -
                                                                    +
                                                                    +
                                                                    +
                                                                    -
                                                                    - 'control-label col-xs-3']) ?> -
                                                                    - - -
                                                                    -
                                                                    +
                                                                    + 'control-label col-xs-3']) ?> +
                                                                    + + +
                                                                    +
                                                                    -
                                                                    - 'control-label col-xs-3']) ?> -
                                                                    -
                                                                    - 'kit_discount', - 'size' => '5', - 'maxlength' => '5', - 'id' => 'kit_discount', - 'class' => 'form-control input-sm', - 'value' => $item_kit_info->kit_discount_type === FIXED ? to_currency_no_money($item_kit_info->kit_discount) : to_decimals($item_kit_info->kit_discount) - ]) ?> -
                                                                    -
                                                                    -
                                                                    +
                                                                    + 'control-label col-xs-3']) ?> +
                                                                    +
                                                                    + 'kit_discount', + 'size' => '5', + 'maxlength' => '5', + 'id' => 'kit_discount', + 'class' => 'form-control input-sm', + 'value' => $item_kit_info->kit_discount_type === FIXED ? to_currency_no_money($item_kit_info->kit_discount) : to_decimals($item_kit_info->kit_discount) + ]) ?> +
                                                                    +
                                                                    +
                                                                    -
                                                                    - 'required control-label col-xs-3'] : ['class' => 'control-label col-xs-3']) ?> -
                                                                    - - - +
                                                                    + 'required control-label col-xs-3'] : ['class' => 'control-label col-xs-3']) ?> +
                                                                    + + + -
                                                                    -
                                                                    +
                                                                    +
                                                                    -
                                                                    - 'required control-label col-xs-3'] : ['class' => 'control-label col-xs-3']) ?> -
                                                                    - - - +
                                                                    + 'required control-label col-xs-3'] : ['class' => 'control-label col-xs-3']) ?> +
                                                                    + + + -
                                                                    -
                                                                    +
                                                                    +
                                                                    -
                                                                    - 'control-label col-xs-3']) ?> -
                                                                    - 'description', - 'id' => 'description', - 'class' => 'form-control input-sm', - 'value' => $item_kit_info->description - ]) ?> -
                                                                    -
                                                                    +
                                                                    + 'control-label col-xs-3']) ?> +
                                                                    + 'description', + 'id' => 'description', + 'class' => 'form-control input-sm', + 'value' => $item_kit_info->description + ]) ?> +
                                                                    +
                                                                    -
                                                                    - 'control-label col-xs-3']) ?> -
                                                                    - 'item', - 'id' => 'item', - 'class' => 'form-control input-sm' - ]) ?> -
                                                                    -
                                                                    +
                                                                    + 'control-label col-xs-3']) ?> +
                                                                    + 'item', + 'id' => 'item', + 'class' => 'form-control input-sm' + ]) ?> +
                                                                    +
                                                                    - - - - - - - - - - - - - - - - - - - -
                                                                    ' name=item_kit_seq[] value=""/>' name=item_kit_qty[] value=""/>
                                                                    -
                                                                    + + + + + + + + + + + + + + + + + + + +
                                                                    ' name=item_kit_seq[] value=""/>' name=item_kit_qty[] value=""/>
                                                                    +
                                                                    @@ -214,103 +214,103 @@ //validation and submit handling $(document).ready(function() { - $('#item').autocomplete({ - source: '', - minChars: 0, - autoFocus: false, - delay: 10, - appendTo: '.modal-content', - select: function(e, ui) { - if($('#item_kit_item_' + ui.item.value).length == 1) - { - $('#item_kit_item_' + ui.item.value).val(parseFloat( $('#item_kit_item_' + ui.item.value).val()) + 1); - } - else - { - $('#item_kit_items').append('' + - "" + - "" + - '' + ui.item.label + '' + - "" + - ''); - } - $('#item').val(''); - return false; - } - }); + $('#item').autocomplete({ + source: '', + minChars: 0, + autoFocus: false, + delay: 10, + appendTo: '.modal-content', + select: function(e, ui) { + if($('#item_kit_item_' + ui.item.value).length == 1) + { + $('#item_kit_item_' + ui.item.value).val(parseFloat( $('#item_kit_item_' + ui.item.value).val()) + 1); + } + else + { + $('#item_kit_items').append('' + + "" + + "" + + '' + ui.item.label + '' + + "" + + ''); + } + $('#item').val(''); + return false; + } + }); - $("input[name='item_name']").change(function() { - if( ! $("input[name='item_name']").val() ) { - $("input[name='kit_item_id']").val(''); - } - }); + $("input[name='item_name']").change(function() { + if( ! $("input[name='item_name']").val() ) { + $("input[name='kit_item_id']").val(''); + } + }); - var fill_value = function(event, ui) { - event.preventDefault(); - $("input[name='kit_item_id']").val(ui.item.value); - $("input[name='item_name']").val(ui.item.label); - }; + var fill_value = function(event, ui) { + event.preventDefault(); + $("input[name='kit_item_id']").val(ui.item.value); + $("input[name='item_name']").val(ui.item.label); + }; - $('#item_name').autocomplete({ - source: "", - minChars: 0, - delay: 15, - cacheLength: 1, - appendTo: '.modal-content', - select: fill_value, - focus: fill_value - }); + $('#item_name').autocomplete({ + source: "", + minChars: 0, + delay: 15, + cacheLength: 1, + appendTo: '.modal-content', + select: fill_value, + focus: fill_value + }); - $('#item_kit_form').validate($.extend({ - submitHandler: function(form) { - $(form).ajaxSubmit({ - success: function(response) - { - dialog_support.hide(); - table_support.handle_submit("", response); - }, - dataType: 'json' - }); - }, + $('#item_kit_form').validate($.extend({ + submitHandler: function(form) { + $(form).ajaxSubmit({ + success: function(response) + { + dialog_support.hide(); + table_support.handle_submit("", response); + }, + dataType: 'json' + }); + }, - errorLabelContainer: '#error_message_box', + errorLabelContainer: '#error_message_box', - rules: - { - name: 'required', - category: 'required', - item_kit_number: - { - required: false, - remote: - { - url: '', - type: 'POST', - data: - { - 'item_kit_id' : "item_kit_id ?>", - 'item_kit_number' : function() - { - return $('#item_kit_number').val(); - } - } - } - } - }, + rules: + { + name: 'required', + category: 'required', + item_kit_number: + { + required: false, + remote: + { + url: '', + type: 'POST', + data: + { + 'item_kit_id' : "item_kit_id ?>", + 'item_kit_number' : function() + { + return $('#item_kit_number').val(); + } + } + } + } + }, - messages: - { - name: "", - category: "", - item_kit_number: "" - } - }, form_support.error)); + messages: + { + name: "", + category: "", + item_kit_number: "" + } + }, form_support.error)); }); function delete_item_kit_row(link) { - $(link).parent().parent().remove(); - return false; + $(link).parent().parent().remove(); + return false; } diff --git a/app/Views/item_kits/manage.php b/app/Views/item_kits/manage.php index c84f4e483..2187fb0cb 100644 --- a/app/Views/item_kits/manage.php +++ b/app/Views/item_kits/manage.php @@ -10,47 +10,47 @@
                                                                    - +
                                                                    -
                                                                    - +
                                                                    + - -
                                                                    + +
                                                                    -
                                                                    +
                                                                    diff --git a/app/Views/items/form.php b/app/Views/items/form.php index 03a9d3fd9..afbc51e39 100644 --- a/app/Views/items/form.php +++ b/app/Views/items/form.php @@ -29,652 +29,652 @@
                                                                      item_id", ['id' => 'item_form', 'enctype' => 'multipart/form-data', 'class' => 'form-horizontal']) ?> -
                                                                      -
                                                                      - 'control-label col-xs-3']) ?> -
                                                                      -
                                                                      - - 'item_number', - 'id' => 'item_number', - 'class' => 'form-control input-sm', - 'value' => $item_info->item_number - ]) ?> -
                                                                      -
                                                                      -
                                                                      +
                                                                      +
                                                                      + 'control-label col-xs-3']) ?> +
                                                                      +
                                                                      + + 'item_number', + 'id' => 'item_number', + 'class' => 'form-control input-sm', + 'value' => $item_info->item_number + ]) ?> +
                                                                      +
                                                                      +
                                                                      -
                                                                      - 'required control-label col-xs-3']) ?> -
                                                                      - 'name', - 'id' => 'name', - 'class' => 'form-control input-sm', - 'value' => $item_info->name - ]) ?> -
                                                                      -
                                                                      +
                                                                      + 'required control-label col-xs-3']) ?> +
                                                                      + 'name', + 'id' => 'name', + 'class' => 'form-control input-sm', + 'value' => $item_info->name + ]) ?> +
                                                                      +
                                                                      -
                                                                      - 'required control-label col-xs-3']) ?> -
                                                                      -
                                                                      - - 'form-control']); - } - else - { - echo form_input ([ - 'name' => 'category', - 'id' => 'category', - 'class' => 'form-control input-sm', - 'value' => $item_info->category - ]); - } - ?> -
                                                                      -
                                                                      -
                                                                      +
                                                                      + 'required control-label col-xs-3']) ?> +
                                                                      +
                                                                      + + 'form-control']); + } + else + { + echo form_input ([ + 'name' => 'category', + 'id' => 'category', + 'class' => 'form-control input-sm', + 'value' => $item_info->category + ]); + } + ?> +
                                                                      +
                                                                      +
                                                                      -
                                                                      - -
                                                                      +
                                                                      + +
                                                                      -
                                                                      - 'required control-label col-xs-3'] : ['class' => 'control-label col-xs-3']) ?> -
                                                                      - - -
                                                                      -
                                                                      +
                                                                      + 'required control-label col-xs-3'] : ['class' => 'control-label col-xs-3']) ?> +
                                                                      + + +
                                                                      +
                                                                      -
                                                                      - 'required control-label col-xs-3'] : ['class' => 'control-label col-xs-3']) ?> -
                                                                      - + + + + + + +
                                                                      +
                                                                      -
                                                                      - 'control-label col-xs-3']) ?> -
                                                                      - 'form-control']) ?> -
                                                                      -
                                                                      +
                                                                      + 'control-label col-xs-3']) ?> +
                                                                      + 'form-control']) ?> +
                                                                      +
                                                                      -
                                                                      - 'required control-label col-xs-3']) ?> -
                                                                      -
                                                                      - - - - 'cost_price', - 'id' => 'cost_price', - 'class' => 'form-control input-sm', - 'onClick' => 'this.select();', - 'value' => to_currency_no_money($item_info->cost_price) - ]) ?> - - - -
                                                                      -
                                                                      -
                                                                      +
                                                                      + 'required control-label col-xs-3']) ?> +
                                                                      +
                                                                      + + + + 'cost_price', + 'id' => 'cost_price', + 'class' => 'form-control input-sm', + 'onClick' => 'this.select();', + 'value' => to_currency_no_money($item_info->cost_price) + ]) ?> + + + +
                                                                      +
                                                                      +
                                                                      -
                                                                      - 'required control-label col-xs-3']) ?> -
                                                                      -
                                                                      - - - - 'unit_price', - 'id' => 'unit_price', - 'class' => 'form-control input-sm', - 'onClick' => 'this.select();', - 'value' => to_currency_no_money($item_info->unit_price) - ]) ?> - - - -
                                                                      -
                                                                      -
                                                                      +
                                                                      + 'required control-label col-xs-3']) ?> +
                                                                      +
                                                                      + + + + 'unit_price', + 'id' => 'unit_price', + 'class' => 'form-control input-sm', + 'onClick' => 'this.select();', + 'value' => to_currency_no_money($item_info->unit_price) + ]) ?> + + + +
                                                                      +
                                                                      +
                                                                      - -
                                                                      - 'control-label col-xs-3']) ?> -
                                                                      - 'tax_names[]', - 'id' => 'tax_name_1', - 'class' => 'form-control input-sm', - 'value' => $item_tax_info[0]['name'] ?? $config['default_tax_1_name'] - ]) ?> -
                                                                      -
                                                                      -
                                                                      - 'tax_percents[]', - 'id' => 'tax_percent_name_1', - 'class' => 'form-control input-sm', - 'value' => isset($item_tax_info[0]['percent']) ? to_tax_decimals($item_tax_info[0]['percent']) : to_tax_decimals($default_tax_1_rate) - ]) ?> - % -
                                                                      -
                                                                      -
                                                                      + +
                                                                      + 'control-label col-xs-3']) ?> +
                                                                      + 'tax_names[]', + 'id' => 'tax_name_1', + 'class' => 'form-control input-sm', + 'value' => $item_tax_info[0]['name'] ?? $config['default_tax_1_name'] + ]) ?> +
                                                                      +
                                                                      +
                                                                      + 'tax_percents[]', + 'id' => 'tax_percent_name_1', + 'class' => 'form-control input-sm', + 'value' => isset($item_tax_info[0]['percent']) ? to_tax_decimals($item_tax_info[0]['percent']) : to_tax_decimals($default_tax_1_rate) + ]) ?> + % +
                                                                      +
                                                                      +
                                                                      -
                                                                      - 'control-label col-xs-3']) ?> -
                                                                      - 'tax_names[]', - 'id' => 'tax_name_2', - 'class' => 'form-control input-sm', - 'value' => $item_tax_info[1]['name'] ?? $config['default_tax_2_name'] - ]) ?> -
                                                                      -
                                                                      -
                                                                      - 'tax_percents[]', - 'class' => 'form-control input-sm', - 'id' => 'tax_percent_name_2', - 'value' => isset($item_tax_info[1]['percent']) ? to_tax_decimals($item_tax_info[1]['percent']) : to_tax_decimals($default_tax_2_rate) - ]) ?> - % -
                                                                      -
                                                                      -
                                                                      - +
                                                                      + 'control-label col-xs-3']) ?> +
                                                                      + 'tax_names[]', + 'id' => 'tax_name_2', + 'class' => 'form-control input-sm', + 'value' => $item_tax_info[1]['name'] ?? $config['default_tax_2_name'] + ]) ?> +
                                                                      +
                                                                      +
                                                                      + 'tax_percents[]', + 'class' => 'form-control input-sm', + 'id' => 'tax_percent_name_2', + 'value' => isset($item_tax_info[1]['percent']) ? to_tax_decimals($item_tax_info[1]['percent']) : to_tax_decimals($default_tax_2_rate) + ]) ?> + % +
                                                                      +
                                                                      +
                                                                      + - -
                                                                      - 'control-label col-xs-3']) ?> -
                                                                      -
                                                                      - 'tax_category', - 'id' => 'tax_category', - 'class' => 'form-control input-sm', - 'size' => '50', - 'value' => $tax_category - ]) ?> -
                                                                      -
                                                                      -
                                                                      - + +
                                                                      + 'control-label col-xs-3']) ?> +
                                                                      +
                                                                      + 'tax_category', + 'id' => 'tax_category', + 'class' => 'form-control input-sm', + 'size' => '50', + 'value' => $tax_category + ]) ?> +
                                                                      +
                                                                      +
                                                                      + - -
                                                                      - 'control-label col-xs-3']) ?> -
                                                                      -
                                                                      - 'hsn_code', - 'id' => 'hsn_code', - 'class' => 'form-control input-sm', - 'value' => $hsn_code - ]) ?> -
                                                                      -
                                                                      -
                                                                      - + +
                                                                      + 'control-label col-xs-3']) ?> +
                                                                      +
                                                                      + 'hsn_code', + 'id' => 'hsn_code', + 'class' => 'form-control input-sm', + 'value' => $hsn_code + ]) ?> +
                                                                      +
                                                                      +
                                                                      + - $location_detail) - { - ?> -
                                                                      - 'required control-label col-xs-3']) ?> -
                                                                      - "quantity_$key", - 'id' => "quantity_$key", - 'class' => 'required quantity form-control', - 'onClick' => 'this.select();', - 'value' => isset($item_info->item_id) ? to_quantity_decimals($location_detail['quantity']) : to_quantity_decimals(0) - ]) ?> -
                                                                      -
                                                                      - + $location_detail) + { + ?> +
                                                                      + 'required control-label col-xs-3']) ?> +
                                                                      + "quantity_$key", + 'id' => "quantity_$key", + 'class' => 'required quantity form-control', + 'onClick' => 'this.select();', + 'value' => isset($item_info->item_id) ? to_quantity_decimals($location_detail['quantity']) : to_quantity_decimals(0) + ]) ?> +
                                                                      +
                                                                      + -
                                                                      - 'required control-label col-xs-3']) ?> -
                                                                      - 'receiving_quantity', - 'id' => 'receiving_quantity', - 'class' => 'required form-control input-sm', - 'onClick' => 'this.select();', - 'value' => isset($item_info->item_id) ? to_quantity_decimals($item_info->receiving_quantity) : to_quantity_decimals(0) - ]) ?> -
                                                                      -
                                                                      +
                                                                      + 'required control-label col-xs-3']) ?> +
                                                                      + 'receiving_quantity', + 'id' => 'receiving_quantity', + 'class' => 'required form-control input-sm', + 'onClick' => 'this.select();', + 'value' => isset($item_info->item_id) ? to_quantity_decimals($item_info->receiving_quantity) : to_quantity_decimals(0) + ]) ?> +
                                                                      +
                                                                      -
                                                                      - 'required control-label col-xs-3']) ?> -
                                                                      - 'reorder_level', - 'id' => 'reorder_level', - 'class' => 'form-control input-sm', - 'onClick' => 'this.select();', - 'value' => isset($item_info->item_id) ? to_quantity_decimals($item_info->reorder_level) : to_quantity_decimals(0) - ]) ?> -
                                                                      -
                                                                      +
                                                                      + 'required control-label col-xs-3']) ?> +
                                                                      + 'reorder_level', + 'id' => 'reorder_level', + 'class' => 'form-control input-sm', + 'onClick' => 'this.select();', + 'value' => isset($item_info->item_id) ? to_quantity_decimals($item_info->reorder_level) : to_quantity_decimals(0) + ]) ?> +
                                                                      +
                                                                      -
                                                                      - 'control-label col-xs-3']) ?> -
                                                                      - 'description', - 'id' => 'description', - 'class' => 'form-control input-sm', - 'value' => $item_info->description - ]) ?> -
                                                                      -
                                                                      +
                                                                      + 'control-label col-xs-3']) ?> +
                                                                      + 'description', + 'id' => 'description', + 'class' => 'form-control input-sm', + 'value' => $item_info->description + ]) ?> +
                                                                      +
                                                                      -
                                                                      - 'control-label col-xs-3']) ?> -
                                                                      -
                                                                      -
                                                                      -
                                                                      - <?= lang('Items.image') ?> -
                                                                      -
                                                                      - - - - - - -
                                                                      -
                                                                      -
                                                                      -
                                                                      +
                                                                      + 'control-label col-xs-3']) ?> +
                                                                      +
                                                                      +
                                                                      +
                                                                      + <?= lang('Items.image') ?> +
                                                                      +
                                                                      + + + + + + +
                                                                      +
                                                                      +
                                                                      +
                                                                      -
                                                                      - 'control-label col-xs-3']) ?> -
                                                                      - 'allow_alt_description', - 'id' => 'allow_alt_description', - 'value' => 1, - 'checked' => $item_info->allow_alt_description == 1 - ]) ?> -
                                                                      -
                                                                      +
                                                                      + 'control-label col-xs-3']) ?> +
                                                                      + 'allow_alt_description', + 'id' => 'allow_alt_description', + 'value' => 1, + 'checked' => $item_info->allow_alt_description == 1 + ]) ?> +
                                                                      +
                                                                      -
                                                                      - 'control-label col-xs-3']) ?> -
                                                                      - 'is_serialized', - 'id' => 'is_serialized', - 'value' => 1, - 'checked' => $item_info->is_serialized == 1 - ]) ?> -
                                                                      -
                                                                      +
                                                                      + 'control-label col-xs-3']) ?> +
                                                                      + 'is_serialized', + 'id' => 'is_serialized', + 'value' => 1, + 'checked' => $item_info->is_serialized == 1 + ]) ?> +
                                                                      +
                                                                      - -
                                                                      - 'control-label col-xs-3']) ?> -
                                                                      - 'qty_per_pack', - 'id' => 'qty_per_pack', - 'class' => 'form-control input-sm', - 'value' => isset($item_info->item_id) ? to_quantity_decimals($item_info->qty_per_pack) : to_quantity_decimals(0) - ]) ?> -
                                                                      -
                                                                      -
                                                                      - 'control-label col-xs-3']) ?> -
                                                                      - 'pack_name', - 'id' => 'pack_name', - 'class' => 'form-control input-sm', - 'value' => $item_info->pack_name - ]) ?> -
                                                                      -
                                                                      -
                                                                      - 'control-label col-xs-3']) ?> -
                                                                      -
                                                                      - 'low_sell_item_name', - 'id' => 'low_sell_item_name', - 'class' => 'form-control input-sm', - 'value' => $selected_low_sell_item - ]) ?> -
                                                                      -
                                                                      -
                                                                      - + +
                                                                      + 'control-label col-xs-3']) ?> +
                                                                      + 'qty_per_pack', + 'id' => 'qty_per_pack', + 'class' => 'form-control input-sm', + 'value' => isset($item_info->item_id) ? to_quantity_decimals($item_info->qty_per_pack) : to_quantity_decimals(0) + ]) ?> +
                                                                      +
                                                                      +
                                                                      + 'control-label col-xs-3']) ?> +
                                                                      + 'pack_name', + 'id' => 'pack_name', + 'class' => 'form-control input-sm', + 'value' => $item_info->pack_name + ]) ?> +
                                                                      +
                                                                      +
                                                                      + 'control-label col-xs-3']) ?> +
                                                                      +
                                                                      + 'low_sell_item_name', + 'id' => 'low_sell_item_name', + 'class' => 'form-control input-sm', + 'value' => $selected_low_sell_item + ]) ?> +
                                                                      +
                                                                      +
                                                                      + -
                                                                      - 'control-label col-xs-3']) ?> -
                                                                      - 'is_deleted', - 'id' => 'is_deleted', - 'value'=>1, - 'checked' => $item_info->deleted == 1 - ]) ?> -
                                                                      -
                                                                      +
                                                                      + 'control-label col-xs-3']) ?> +
                                                                      + 'is_deleted', + 'id' => 'is_deleted', + 'value'=>1, + 'checked' => $item_info->deleted == 1 + ]) ?> +
                                                                      +
                                                                      -
                                                                      +
                                                                      diff --git a/app/Views/items/form_bulk.php b/app/Views/items/form_bulk.php index 15099017a..6cdfb1984 100644 --- a/app/Views/items/form_bulk.php +++ b/app/Views/items/form_bulk.php @@ -12,238 +12,238 @@
                                                                        'item_form', 'class' => 'form-horizontal']) ?> -
                                                                        -
                                                                        - 'control-label col-xs-3']) ?> -
                                                                        - 'name', - 'id' => 'name', - 'class' => 'form-control input-sm' - ]) ?> -
                                                                        -
                                                                        +
                                                                        +
                                                                        + 'control-label col-xs-3']) ?> +
                                                                        + 'name', + 'id' => 'name', + 'class' => 'form-control input-sm' + ]) ?> +
                                                                        +
                                                                        -
                                                                        - 'control-label col-xs-3']) ?> -
                                                                        -
                                                                        - - 'category', - 'id' => 'category', - 'class' => 'form-control input-sm' - ]) ?> -
                                                                        -
                                                                        -
                                                                        +
                                                                        + 'control-label col-xs-3']) ?> +
                                                                        +
                                                                        + + 'category', + 'id' => 'category', + 'class' => 'form-control input-sm' + ]) ?> +
                                                                        +
                                                                        +
                                                                        -
                                                                        - 'control-label col-xs-3']) ?> -
                                                                        - 'form-control']) ?> -
                                                                        -
                                                                        +
                                                                        + 'control-label col-xs-3']) ?> +
                                                                        + 'form-control']) ?> +
                                                                        +
                                                                        -
                                                                        - 'control-label col-xs-3']) ?> -
                                                                        -
                                                                        - - - - 'cost_price', - 'id' => 'cost_price', - 'class' => 'form-control input-sm' - ]) ?> - - - -
                                                                        -
                                                                        -
                                                                        +
                                                                        + 'control-label col-xs-3']) ?> +
                                                                        +
                                                                        + + + + 'cost_price', + 'id' => 'cost_price', + 'class' => 'form-control input-sm' + ]) ?> + + + +
                                                                        +
                                                                        +
                                                                        -
                                                                        - 'control-label col-xs-3']) ?> -
                                                                        -
                                                                        - - - - 'unit_price', - 'id' => 'unit_price', - 'class' => 'form-control input-sm' - ]) ?> - - - -
                                                                        -
                                                                        -
                                                                        +
                                                                        + 'control-label col-xs-3']) ?> +
                                                                        +
                                                                        + + + + 'unit_price', + 'id' => 'unit_price', + 'class' => 'form-control input-sm' + ]) ?> + + + +
                                                                        +
                                                                        +
                                                                        -
                                                                        - 'control-label col-xs-3']) ?> -
                                                                        - 'tax_names[]', - 'id' => 'tax_name_1', - 'class' => 'form-control input-sm', - 'value' => $config['default_tax_1_name'] - ]) ?> -
                                                                        -
                                                                        -
                                                                        - 'tax_percents[]', - 'id' => 'tax_percent_name_1', - 'class' => 'form-control input-sm', - 'value'=>to_tax_decimals($config['default_tax_1_rate']) - ]) ?> - % -
                                                                        -
                                                                        -
                                                                        +
                                                                        + 'control-label col-xs-3']) ?> +
                                                                        + 'tax_names[]', + 'id' => 'tax_name_1', + 'class' => 'form-control input-sm', + 'value' => $config['default_tax_1_name'] + ]) ?> +
                                                                        +
                                                                        +
                                                                        + 'tax_percents[]', + 'id' => 'tax_percent_name_1', + 'class' => 'form-control input-sm', + 'value'=>to_tax_decimals($config['default_tax_1_rate']) + ]) ?> + % +
                                                                        +
                                                                        +
                                                                        -
                                                                        - 'control-label col-xs-3']) ?> -
                                                                        - 'tax_names[]', - 'id' => 'tax_name_2', - 'class' => 'form-control input-sm', - 'value' => $config['default_tax_2_name'] - ]) ?> -
                                                                        -
                                                                        -
                                                                        - 'tax_percents[]', - 'id' => 'tax_percent_name_2', - 'class' => 'form-control input-sm', - 'value' => to_tax_decimals($config['default_tax_2_rate']) - ]) ?> - % -
                                                                        -
                                                                        -
                                                                        +
                                                                        + 'control-label col-xs-3']) ?> +
                                                                        + 'tax_names[]', + 'id' => 'tax_name_2', + 'class' => 'form-control input-sm', + 'value' => $config['default_tax_2_name'] + ]) ?> +
                                                                        +
                                                                        +
                                                                        + 'tax_percents[]', + 'id' => 'tax_percent_name_2', + 'class' => 'form-control input-sm', + 'value' => to_tax_decimals($config['default_tax_2_rate']) + ]) ?> + % +
                                                                        +
                                                                        +
                                                                        -
                                                                        - 'control-label col-xs-3']) ?> -
                                                                        - 'reorder_level', - 'id' => 'reorder_level', - 'class' => 'form-control input-sm' - ]) ?> -
                                                                        -
                                                                        +
                                                                        + 'control-label col-xs-3']) ?> +
                                                                        + 'reorder_level', + 'id' => 'reorder_level', + 'class' => 'form-control input-sm' + ]) ?> +
                                                                        +
                                                                        -
                                                                        - 'control-label col-xs-3']) ?> -
                                                                        - 'description', - 'id' => 'description', - 'class' => 'form-control input-sm' - ]) ?> -
                                                                        -
                                                                        +
                                                                        + 'control-label col-xs-3']) ?> +
                                                                        + 'description', + 'id' => 'description', + 'class' => 'form-control input-sm' + ]) ?> +
                                                                        +
                                                                        -
                                                                        - 'control-label col-xs-3']) ?> -
                                                                        - 'form-control']) ?> -
                                                                        -
                                                                        +
                                                                        + 'control-label col-xs-3']) ?> +
                                                                        + 'form-control']) ?> +
                                                                        +
                                                                        -
                                                                        - 'control-label col-xs-3']) ?> -
                                                                        - 'form-control']) ?> -
                                                                        -
                                                                        -
                                                                        +
                                                                        + 'control-label col-xs-3']) ?> +
                                                                        + 'form-control']) ?> +
                                                                        +
                                                                        +
                                                                        diff --git a/app/Views/items/form_count_details.php b/app/Views/items/form_count_details.php index 2e1f832c4..467ac955a 100644 --- a/app/Views/items/form_count_details.php +++ b/app/Views/items/form_count_details.php @@ -10,154 +10,154 @@ use App\Models\Inventory; ?> 'item_form', 'class' => 'form-horizontal']) ?> -
                                                                        -
                                                                        - 'control-label col-xs-3']) ?> -
                                                                        -
                                                                        - - 'item_number', - 'id' => 'item_number', - 'class' => 'form-control input-sm', - 'disabled' => '', - 'value' => $item_info->item_number - ]) ?> -
                                                                        -
                                                                        -
                                                                        +
                                                                        +
                                                                        + 'control-label col-xs-3']) ?> +
                                                                        +
                                                                        + + 'item_number', + 'id' => 'item_number', + 'class' => 'form-control input-sm', + 'disabled' => '', + 'value' => $item_info->item_number + ]) ?> +
                                                                        +
                                                                        +
                                                                        -
                                                                        - 'control-label col-xs-3']) ?> -
                                                                        - 'name', - 'id' => 'name', - 'class' => 'form-control input-sm', - 'disabled' => '', - 'value' => $item_info->name - ]) ?> -
                                                                        -
                                                                        +
                                                                        + 'control-label col-xs-3']) ?> +
                                                                        + 'name', + 'id' => 'name', + 'class' => 'form-control input-sm', + 'disabled' => '', + 'value' => $item_info->name + ]) ?> +
                                                                        +
                                                                        -
                                                                        - 'control-label col-xs-3']) ?> -
                                                                        -
                                                                        - - 'category', - 'id' => 'category', - 'class' => 'form-control input-sm', - 'disabled' => '', - 'value' => $item_info->category - ]) ?> -
                                                                        -
                                                                        -
                                                                        +
                                                                        + 'control-label col-xs-3']) ?> +
                                                                        +
                                                                        + + 'category', + 'id' => 'category', + 'class' => 'form-control input-sm', + 'disabled' => '', + 'value' => $item_info->category + ]) ?> +
                                                                        +
                                                                        +
                                                                        -
                                                                        - 'control-label col-xs-3']) ?> -
                                                                        - 'display_stock(this.value);', 'class' => 'form-control']) ?> -
                                                                        -
                                                                        +
                                                                        + 'control-label col-xs-3']) ?> +
                                                                        + 'display_stock(this.value);', 'class' => 'form-control']) ?> +
                                                                        +
                                                                        -
                                                                        - 'control-label col-xs-3']) ?> -
                                                                        - 'quantity', - 'id' => 'quantity', - 'class' => 'form-control input-sm', - 'disabled' => '', - 'value' => to_quantity_decimals(current($item_quantities)) - ]) ?> -
                                                                        -
                                                                        -
                                                                        +
                                                                        + 'control-label col-xs-3']) ?> +
                                                                        + 'quantity', + 'id' => 'quantity', + 'class' => 'form-control input-sm', + 'disabled' => '', + 'value' => to_quantity_decimals(current($item_quantities)) + ]) ?> +
                                                                        +
                                                                        +
                                                                        - - - - - - - - - - - - - + + + + + + + + + + + + get_inventory_data_for_item($item_info->item_id)->getResultArray(); - $employee_name = []; + $inventory_array = $inventory->get_inventory_data_for_item($item_info->item_id)->getResultArray(); + $employee_name = []; - foreach($inventory_array as $row) - { - $employee_data = $employee->get_info($row['trans_user']); - $employee_name[] = $employee_data->first_name . ' ' . $employee_data->last_name; - } - ?> - + foreach($inventory_array as $row) + { + $employee_data = $employee->get_info($row['trans_user']); + $employee_name[] = $employee_data->first_name . ' ' . $employee_data->last_name; + } + ?> +
                                                                        diff --git a/app/Views/items/form_csv_import.php b/app/Views/items/form_csv_import.php index f16be7fd9..2af6cb7e4 100644 --- a/app/Views/items/form_csv_import.php +++ b/app/Views/items/form_csv_import.php @@ -1,52 +1,52 @@
                                                                          'csv_form', 'class' => 'form-horizontal']) ?> -
                                                                          -
                                                                          -
                                                                          - -
                                                                          -
                                                                          +
                                                                          +
                                                                          +
                                                                          + +
                                                                          +
                                                                          -
                                                                          -
                                                                          -
                                                                          -
                                                                          - - -
                                                                          -
                                                                          -
                                                                          -
                                                                          +
                                                                          +
                                                                          +
                                                                          +
                                                                          + + +
                                                                          +
                                                                          +
                                                                          +
                                                                          diff --git a/app/Views/items/form_inventory.php b/app/Views/items/form_inventory.php index be002d007..baf02536a 100644 --- a/app/Views/items/form_inventory.php +++ b/app/Views/items/form_inventory.php @@ -11,137 +11,137 @@
                                                                            item_id", ['id' => 'item_form', 'class' => 'form-horizontal']) ?> -
                                                                            -
                                                                            - 'control-label col-xs-3']) ?> -
                                                                            -
                                                                            - - 'item_number', - 'id' => 'item_number', - 'class' => 'form-control input-sm', - 'disabled' => '', - 'value' => $item_info->item_number - ]) ?> -
                                                                            -
                                                                            -
                                                                            +
                                                                            +
                                                                            + 'control-label col-xs-3']) ?> +
                                                                            +
                                                                            + + 'item_number', + 'id' => 'item_number', + 'class' => 'form-control input-sm', + 'disabled' => '', + 'value' => $item_info->item_number + ]) ?> +
                                                                            +
                                                                            +
                                                                            -
                                                                            - 'control-label col-xs-3']) ?> -
                                                                            - 'name', - 'id' => 'name', - 'class' => 'form-control input-sm', - 'disabled' => '', - 'value' => $item_info->name - ]) ?> -
                                                                            -
                                                                            +
                                                                            + 'control-label col-xs-3']) ?> +
                                                                            + 'name', + 'id' => 'name', + 'class' => 'form-control input-sm', + 'disabled' => '', + 'value' => $item_info->name + ]) ?> +
                                                                            +
                                                                            -
                                                                            - 'control-label col-xs-3']) ?> -
                                                                            -
                                                                            - - 'category', - 'id' => 'category', - 'class' => 'form-control input-sm', - 'disabled' => '', - 'value' => $item_info->category - ]) ?> -
                                                                            -
                                                                            -
                                                                            +
                                                                            + 'control-label col-xs-3']) ?> +
                                                                            +
                                                                            + + 'category', + 'id' => 'category', + 'class' => 'form-control input-sm', + 'disabled' => '', + 'value' => $item_info->category + ]) ?> +
                                                                            +
                                                                            +
                                                                            -
                                                                            - 'control-label col-xs-3']) ?> -
                                                                            - 'fill_quantity(this.value)', 'class' => 'form-control']) ?> -
                                                                            -
                                                                            +
                                                                            + 'control-label col-xs-3']) ?> +
                                                                            + 'fill_quantity(this.value)', 'class' => 'form-control']) ?> +
                                                                            +
                                                                            -
                                                                            - 'control-label col-xs-3']) ?> -
                                                                            - 'quantity', - 'id' => 'quantity', - 'class' => 'form-control input-sm', - 'disabled' => '', - 'value' => to_quantity_decimals(current($item_quantities)) - ]) ?> -
                                                                            -
                                                                            +
                                                                            + 'control-label col-xs-3']) ?> +
                                                                            + 'quantity', + 'id' => 'quantity', + 'class' => 'form-control input-sm', + 'disabled' => '', + 'value' => to_quantity_decimals(current($item_quantities)) + ]) ?> +
                                                                            +
                                                                            -
                                                                            - 'required control-label col-xs-3']) ?> -
                                                                            - 'newquantity', - 'id' => 'newquantity', - 'class' => 'form-control input-sm' - ]) ?> -
                                                                            -
                                                                            +
                                                                            + 'required control-label col-xs-3']) ?> +
                                                                            + 'newquantity', + 'id' => 'newquantity', + 'class' => 'form-control input-sm' + ]) ?> +
                                                                            +
                                                                            -
                                                                            - 'control-label col-xs-3']) ?> -
                                                                            - 'trans_comment', - 'id' => 'trans_comment', - 'class' => 'form-control input-sm' - ]) ?> -
                                                                            -
                                                                            -
                                                                            +
                                                                            + 'control-label col-xs-3']) ?> +
                                                                            + 'trans_comment', + 'id' => 'trans_comment', + 'class' => 'form-control input-sm' + ]) ?> +
                                                                            +
                                                                            +
                                                                            diff --git a/app/Views/items/manage.php b/app/Views/items/manage.php index d65d9840c..5a01182ac 100644 --- a/app/Views/items/manage.php +++ b/app/Views/items/manage.php @@ -24,19 +24,19 @@ $(document).ready(function() ); }); - // when any filter is clicked and the dropdown window is closed - $('#filters').on('hidden.bs.select', function(e) - { + // when any filter is clicked and the dropdown window is closed + $('#filters').on('hidden.bs.select', function(e) + { table_support.refresh(); }); - // load the preset daterange picker - + // load the preset daterange picker + // set the beginning of time as starting date $('#daterangepicker').data('daterangepicker').setStartDate(""); - // update the hidden inputs with the selected dates before submitting the search data + // update the hidden inputs with the selected dates before submitting the search data var start_date = ""; - $("#daterangepicker").on('apply.daterangepicker', function(ev, picker) { + $("#daterangepicker").on('apply.daterangepicker', function(ev, picker) { table_support.refresh(); }); @@ -45,9 +45,9 @@ $(document).ready(function() }); + echo view('partial/bootstrap_tables_locale'); + $employee = model(Employee::class); + ?> table_support.init({ employee_id: get_logged_in_employee_info()->person_id ?>, @@ -65,9 +65,9 @@ $(document).ready(function() }, onLoadSuccess: function(response) { $('a.rollover').imgPreview({ - imgCSS: { width: 200 }, - distanceFromCursor: { top:10, left:-210 } - }) + imgCSS: { width: 200 }, + distanceFromCursor: { top:10, left:-210 } + }) } }); }); @@ -90,7 +90,7 @@ $(document).ready(function()   'daterangepicker', 'class' => 'form-control input-sm', 'id' => 'daterangepicker']) ?> 'filters', - 'class' => 'selectpicker show-menu-arrow', - 'data-none-selected-text' => lang('Common.none_selected_text'), - 'data-selected-text-format' => 'count > 1', - 'data-style' => 'btn-default btn-sm', - 'data-width' => 'fit' - ]) ?> + 'filters[]', + $filters, + [''], + [ + 'id' => 'filters', + 'class' => 'selectpicker show-menu-arrow', + 'data-none-selected-text' => lang('Common.none_selected_text'), + 'data-selected-text-format' => 'count > 1', + 'data-style' => 'btn-default btn-sm', + 'data-width' => 'fit' + ]) ?> 1) { echo form_dropdown( - 'stock_location', - $stock_locations, - $stock_location, - [ - 'id' => 'stock_location', - 'class' => 'selectpicker show-menu-arrow', - 'data-style' => 'btn-default btn-sm', - 'data-width' => 'fit' - ] - ); + 'stock_location', + $stock_locations, + $stock_location, + [ + 'id' => 'stock_location', + 'class' => 'selectpicker show-menu-arrow', + 'data-style' => 'btn-default btn-sm', + 'data-width' => 'fit' + ] + ); } ?>
                                                                            diff --git a/app/Views/login.php b/app/Views/login.php index dbc1d1350..94448e982 100644 --- a/app/Views/login.php +++ b/app/Views/login.php @@ -13,110 +13,110 @@ - - - <?= $config['company'] . ' | ' . lang('Common.software_short') . ' | ' . lang('Login.login') ?> - - - - - /bootstrap.min.css"> - - - - + + + <?= $config['company'] . ' | ' . lang('Common.software_short') . ' | ' . lang('Login.login') ?> + + + + + /bootstrap.min.css"> + + + + -
                                                                            - -
                                                                            +
                                                                            + +
                                                                            -
                                                                            - -
                                                                            +
                                                                            + +
                                                                            diff --git a/app/Views/messages/form_sms.php b/app/Views/messages/form_sms.php index 9f4ac6081..8b3d383d5 100644 --- a/app/Views/messages/form_sms.php +++ b/app/Views/messages/form_sms.php @@ -10,81 +10,81 @@
                                                                              person_id", ['id' => 'send_sms_form', 'class' => 'form-horizontal']) ?> -
                                                                              -
                                                                              - 'first_name', 'class' => 'control-label col-xs-2']) ?> -
                                                                              - 'form-control input-sm', 'type' => 'text', 'name' => 'first_name', 'value' => $person_info->first_name, 'readonly' => 'true']) ?> -
                                                                              -
                                                                              -
                                                                              - 'last_name', 'class' => 'control-label col-xs-2']) ?> -
                                                                              - 'form-control input-sm', 'type' => 'text', 'name' => 'last_name', 'value' => $person_info->last_name, 'readonly' => 'true']) ?> -
                                                                              -
                                                                              -
                                                                              - 'phone', 'class' => 'control-label col-xs-2 required']) ?> -
                                                                              -
                                                                              - - 'form-control input-sm required', 'type' => 'text', 'name' => 'phone', 'value' => $person_info->phone_number]) ?> -
                                                                              -
                                                                              -
                                                                              -
                                                                              - 'message', 'class' => 'control-label col-xs-2 required']) ?> -
                                                                              - 'form-control input-sm required', 'name' => 'message', 'id' => 'message', 'value' => $config['msg_msg']]) ?> -
                                                                              -
                                                                              -
                                                                              +
                                                                              +
                                                                              + 'first_name', 'class' => 'control-label col-xs-2']) ?> +
                                                                              + 'form-control input-sm', 'type' => 'text', 'name' => 'first_name', 'value' => $person_info->first_name, 'readonly' => 'true']) ?> +
                                                                              +
                                                                              +
                                                                              + 'last_name', 'class' => 'control-label col-xs-2']) ?> +
                                                                              + 'form-control input-sm', 'type' => 'text', 'name' => 'last_name', 'value' => $person_info->last_name, 'readonly' => 'true']) ?> +
                                                                              +
                                                                              +
                                                                              + 'phone', 'class' => 'control-label col-xs-2 required']) ?> +
                                                                              +
                                                                              + + 'form-control input-sm required', 'type' => 'text', 'name' => 'phone', 'value' => $person_info->phone_number]) ?> +
                                                                              +
                                                                              +
                                                                              +
                                                                              + 'message', 'class' => 'control-label col-xs-2 required']) ?> +
                                                                              + 'form-control input-sm required', 'name' => 'message', 'id' => 'message', 'value' => $config['msg_msg']]) ?> +
                                                                              +
                                                                              +
                                                                              diff --git a/app/Views/messages/index.html b/app/Views/messages/index.html index bcb7cae34..905c65ee7 100644 --- a/app/Views/messages/index.html +++ b/app/Views/messages/index.html @@ -1,7 +1,7 @@ - 403 Forbidden + 403 Forbidden diff --git a/app/Views/messages/sms.php b/app/Views/messages/sms.php index db81ade7c..0c0605c1f 100644 --- a/app/Views/messages/sms.php +++ b/app/Views/messages/sms.php @@ -1,35 +1,35 @@ - +
                                                                              - 'send_sms_form', 'enctype' => 'multipart/form-data', 'method' => 'post', 'class' => 'form-horizontal']) ?> -
                                                                              - -
                                                                              - -
                                                                              - - -
                                                                              -
                                                                              + 'send_sms_form', 'enctype' => 'multipart/form-data', 'method' => 'post', 'class' => 'form-horizontal']) ?> +
                                                                              + +
                                                                              + +
                                                                              + + +
                                                                              +
                                                                              -
                                                                              - -
                                                                              - -
                                                                              -
                                                                              +
                                                                              + +
                                                                              + +
                                                                              +
                                                                              - 'submit_form', - 'id' => 'submit_form', - 'value' => lang('Common.submit'), - 'class' => 'btn btn-primary btn-sm pull-right']) ?> -
                                                                              - + 'submit_form', + 'id' => 'submit_form', + 'value' => lang('Common.submit'), + 'class' => 'btn btn-primary btn-sm pull-right']) ?> +
                                                                              +
                                                                              @@ -38,15 +38,15 @@ //validation and submit handling $(document).ready(function() { - $('#send_sms_form').validate({ - submitHandler: function(form) { - $(form).ajaxSubmit({ - success: function(response) { - $.notify( { message: response.message }, { type: response.success ? 'success' : 'danger'} ) - }, - dataType: 'json' - }); - } - }); + $('#send_sms_form').validate({ + submitHandler: function(form) { + $(form).ajaxSubmit({ + success: function(response) { + $.notify( { message: response.message }, { type: response.success ? 'success' : 'danger'} ) + }, + dataType: 'json' + }); + } + }); }); diff --git a/app/Views/partial/bootstrap_tables_locale.php b/app/Views/partial/bootstrap_tables_locale.php index 5377f7930..41435954c 100644 --- a/app/Views/partial/bootstrap_tables_locale.php +++ b/app/Views/partial/bootstrap_tables_locale.php @@ -4,54 +4,54 @@ */ ?> (function ($) { - 'use strict'; + 'use strict'; - $.fn.bootstrapTable.locales[''] = { - formatLoadingMessage: function () { - return ""; - }, - formatRecordsPerPage: function (pageNumber) { - return "".replace('{0}', pageNumber); - }, - formatShowingRows: function (pageFrom, pageTo, totalRows) { - return "".replace('{0}', pageFrom).replace('{1}', pageTo).replace('{2}', totalRows); - }, - formatSearch: function () { - return ""; - }, - formatNoMatches: function () { - return ""; - }, - formatPaginationSwitch: function () { - return ""; - }, - formatRefresh: function () { - return ""; - }, - formatToggle: function () { - return ""; - }, - formatColumns: function () { - return ""; - }, - formatAllRows: function () { - return ""; - }, - formatConfirmAction: function(action) { - if (action == "delete") - { - return ""; - } - else - { - return ""; - } + $.fn.bootstrapTable.locales[''] = { + formatLoadingMessage: function () { + return ""; + }, + formatRecordsPerPage: function (pageNumber) { + return "".replace('{0}', pageNumber); + }, + formatShowingRows: function (pageFrom, pageTo, totalRows) { + return "".replace('{0}', pageFrom).replace('{1}', pageTo).replace('{2}', totalRows); + }, + formatSearch: function () { + return ""; + }, + formatNoMatches: function () { + return ""; + }, + formatPaginationSwitch: function () { + return ""; + }, + formatRefresh: function () { + return ""; + }, + formatToggle: function () { + return ""; + }, + formatColumns: function () { + return ""; + }, + formatAllRows: function () { + return ""; + }, + formatConfirmAction: function(action) { + if (action == "delete") + { + return ""; + } + else + { + return ""; + } } - }; + }; - $.extend($.fn.bootstrapTable.defaults, $.fn.bootstrapTable.locales[""]); + $.extend($.fn.bootstrapTable.defaults, $.fn.bootstrapTable.locales[""]); })(jQuery); diff --git a/app/Views/partial/customer_rewards.php b/app/Views/partial/customer_rewards.php index f06d2c4ed..228de031a 100644 --- a/app/Views/partial/customer_rewards.php +++ b/app/Views/partial/customer_rewards.php @@ -4,43 +4,43 @@ */ ?> $reward_category) - { - $customer_reward_id = $reward_category['package_id']; - $customer_reward_name = $reward_category['package_name']; - $customer_points_percent = $reward_category['points_percent']; - ++$i; + foreach($customer_rewards as $reward_key => $reward_category) + { + $customer_reward_id = $reward_category['package_id']; + $customer_reward_name = $reward_category['package_name']; + $customer_points_percent = $reward_category['points_percent']; + ++$i; ?> -
                                                                              - 'required control-label col-xs-2']) ?> -
                                                                              - 'customer_reward_' . $customer_reward_id, - 'id' => 'customer_reward_' . $customer_reward_id, - 'class' => 'customer_reward valid_chars form-control input-sm required', - 'value' => $customer_reward_name - ]; - $reward_category['deleted'] && $form_data['disabled'] = 'disabled'; - echo form_input($form_data); - ?> -
                                                                              -
                                                                              - 'reward_points_' . $customer_reward_id, - 'id' => 'reward_points_' . $customer_reward_id, - 'class' => 'customer_reward valid_chars form-control input-sm required', - 'value' => $customer_points_percent - ]; - $reward_category['deleted'] && $form_data['disabled'] = 'disabled'; - echo form_input($form_data); - ?> -
                                                                              - -    - -
                                                                              +
                                                                              + 'required control-label col-xs-2']) ?> +
                                                                              + 'customer_reward_' . $customer_reward_id, + 'id' => 'customer_reward_' . $customer_reward_id, + 'class' => 'customer_reward valid_chars form-control input-sm required', + 'value' => $customer_reward_name + ]; + $reward_category['deleted'] && $form_data['disabled'] = 'disabled'; + echo form_input($form_data); + ?> +
                                                                              +
                                                                              + 'reward_points_' . $customer_reward_id, + 'id' => 'reward_points_' . $customer_reward_id, + 'class' => 'customer_reward valid_chars form-control input-sm required', + 'value' => $customer_points_percent + ]; + $reward_category['deleted'] && $form_data['disabled'] = 'disabled'; + echo form_input($form_data); + ?> +
                                                                              + +    + +
                                                                              diff --git a/app/Views/partial/datepicker_locale.php b/app/Views/partial/datepicker_locale.php index 61251ec86..d844201f3 100644 --- a/app/Views/partial/datepicker_locale.php +++ b/app/Views/partial/datepicker_locale.php @@ -29,39 +29,39 @@ var pickerconfig = function(config) { todayHighlight: true, bootcssVer: 3, language: "" - }, ); + }, ); }; $.fn.datetimepicker.dates[''] = { days: [ - "", + "", "", "", "", "", "", "" - ], + ], daysShort: [ - "", + "", "", "", "", "", "", "" - ], + ], daysMin: [ - "", + "", "", "", "", "", "", "" - ], + ], months: [ - "", + "", "", "", "", @@ -73,9 +73,9 @@ $.fn.datetimepicker.dates[''] = { "", "", "" - ], + ], monthsShort: [ - "", + "", "", "", "", @@ -87,7 +87,7 @@ $.fn.datetimepicker.dates[''] = { "", "", "" - ], + ], today: "", - $('#daterangepicker').css("width","180"); - var start_date = ""; - var end_date = ""; + $('#daterangepicker').css("width","180"); + var start_date = ""; + var end_date = ""; - $('#daterangepicker').daterangepicker({ - "ranges": { - "": [ - "", - "" - ], - "": [ - "", - "" - ], - "": [ - "", - "" - ], - "": [ - "", - "" - ], - "": [ - "", - "" - ], - "": [ - "", - "" - ], - "": [ - "", - "" - ], - "": [ - "", - "" - ], - "": [ - "", - "" - ], - "": [ - "", - "" - ], - "": [ - "", - "" - ], - "": [ - "", - "" - ], - "": [ - "", - "" - ], - "": [ - "", - "" - ], - }, - "locale": { - "format": '', - "separator": " - ", - "applyLabel": "", - "cancelLabel": "", - "fromLabel": "", - "toLabel": "", - "customRangeLabel": "", - "daysOfWeek": [ - "", - "", - "", - "", - "", - "", - "" - ], - "monthNames": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ], - "firstDay": - }, - "alwaysShowCalendars": true, - "startDate": "", - "endDate": "", - "minDate": "", - "maxDate": "" - }, function(start, end, label) { - start_date = start.format('YYYY-MM-DD'); - end_date = end.format('YYYY-MM-DD'); - }); + $('#daterangepicker').daterangepicker({ + "ranges": { + "": [ + "", + "" + ], + "": [ + "", + "" + ], + "": [ + "", + "" + ], + "": [ + "", + "" + ], + "": [ + "", + "" + ], + "": [ + "", + "" + ], + "": [ + "", + "" + ], + "": [ + "", + "" + ], + "": [ + "", + "" + ], + "": [ + "", + "" + ], + "": [ + "", + "" + ], + "": [ + "", + "" + ], + "": [ + "", + "" + ], + "": [ + "", + "" + ], + }, + "locale": { + "format": '', + "separator": " - ", + "applyLabel": "", + "cancelLabel": "", + "fromLabel": "", + "toLabel": "", + "customRangeLabel": "", + "daysOfWeek": [ + "", + "", + "", + "", + "", + "", + "" + ], + "monthNames": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "firstDay": + }, + "alwaysShowCalendars": true, + "startDate": "", + "endDate": "", + "minDate": "", + "maxDate": "" + }, function(start, end, label) { + start_date = start.format('YYYY-MM-DD'); + end_date = end.format('YYYY-MM-DD'); + }); - $('#daterangepicker').css("width","305"); - var start_date = ""; - var end_date = ""; - $('#daterangepicker').daterangepicker({ - "ranges": { - "": [ - "", - "" - ], - "": [ - "", - "" - ], - "": [ - "", - "" - ], - "": [ - "", - "" - ], - "": [ - "", - "" - ], - "": [ - "", - "" - ], - "": [ - "", - "" - ], - "": [ - "", - "" - ], - "": [ - "", - "" - ], - "": [ - "", - "" - ], - "": [ - "", - "" - ], - "": [ - "", - "" - ], - "": [ - "", - "" - ], - "": [ - "", - "" - ], - }, - "locale": { - "format": '', - "separator": " - ", - "applyLabel": "", - "cancelLabel": "", - "fromLabel": "", - "toLabel": "", - "customRangeLabel": "", - "daysOfWeek": [ - "", - "", - "", - "", - "", - "", - "" - ], - "monthNames": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ], - "firstDay": - }, - "timePicker": true, - "timePickerSeconds": true, - "alwaysShowCalendars": true, - "startDate": "", - "endDate": "", - "minDate": "", - "maxDate": "" - }, function(start, end, label) { - start_date = start.format('YYYY-MM-DD HH:mm:ss'); - end_date = end.format('YYYY-MM-DD HH:mm:ss'); - }); + $('#daterangepicker').css("width","305"); + var start_date = ""; + var end_date = ""; + $('#daterangepicker').daterangepicker({ + "ranges": { + "": [ + "", + "" + ], + "": [ + "", + "" + ], + "": [ + "", + "" + ], + "": [ + "", + "" + ], + "": [ + "", + "" + ], + "": [ + "", + "" + ], + "": [ + "", + "" + ], + "": [ + "", + "" + ], + "": [ + "", + "" + ], + "": [ + "", + "" + ], + "": [ + "", + "" + ], + "": [ + "", + "" + ], + "": [ + "", + "" + ], + "": [ + "", + "" + ], + }, + "locale": { + "format": '', + "separator": " - ", + "applyLabel": "", + "cancelLabel": "", + "fromLabel": "", + "toLabel": "", + "customRangeLabel": "", + "daysOfWeek": [ + "", + "", + "", + "", + "", + "", + "" + ], + "monthNames": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "firstDay": + }, + "timePicker": true, + "timePickerSeconds": true, + "alwaysShowCalendars": true, + "startDate": "", + "endDate": "", + "minDate": "", + "maxDate": "" + }, function(start, end, label) { + start_date = start.format('YYYY-MM-DD HH:mm:ss'); + end_date = end.format('YYYY-MM-DD HH:mm:ss'); + }); diff --git a/app/Views/partial/dinner_tables.php b/app/Views/partial/dinner_tables.php index 6a367a66b..3dfadfd51 100644 --- a/app/Views/partial/dinner_tables.php +++ b/app/Views/partial/dinner_tables.php @@ -8,29 +8,29 @@ $i = 0; foreach($dinner_tables as $table_key => $table) { - $dinner_table_id = $table['dinner_table_id']; - $dinner_table_name = $table['name']; - ++$i; + $dinner_table_id = $table['dinner_table_id']; + $dinner_table_name = $table['name']; + ++$i; ?> -
                                                                              - 'required control-label col-xs-2']) ?> +
                                                                              + 'required control-label col-xs-2']) ?> -
                                                                              - "dinner_table_$dinner_table_id", - 'id' => "dinner_table_$dinner_table_id", - 'class' => 'dinner_table valid_chars form-control input-sm required', - 'value' => $dinner_table_name - ]; - $table['deleted'] && $form_data['disabled'] = 'disabled'; - echo form_input($form_data); - ?> -
                                                                              - -    - -
                                                                              +
                                                                              + "dinner_table_$dinner_table_id", + 'id' => "dinner_table_$dinner_table_id", + 'class' => 'dinner_table valid_chars form-control input-sm required', + 'value' => $dinner_table_name + ]; + $table['deleted'] && $form_data['disabled'] = 'disabled'; + echo form_input($form_data); + ?> +
                                                                              + +    + +
                                                                              diff --git a/app/Views/partial/footer.php b/app/Views/partial/footer.php index d3d5a4697..5e2f79eea 100644 --- a/app/Views/partial/footer.php +++ b/app/Views/partial/footer.php @@ -4,14 +4,14 @@ use Config\OSPOS; ?> - + - - + + diff --git a/app/Views/partial/header.php b/app/Views/partial/header.php index 37c2883fd..c190d3d88 100644 --- a/app/Views/partial/header.php +++ b/app/Views/partial/header.php @@ -13,87 +13,87 @@ $request = Services::request(); - - - <?= esc($config['company']) . ' | ' . lang('Common.powered_by') . ' OSPOS ' . esc(config('App')->application_version) ?> - - + + + <?= esc($config['company']) . ' | ' . lang('Common.powered_by') . ' OSPOS ' . esc(config('App')->application_version) ?> + + - getGet('debug') == 'true') : ?> - - - - - - - + getGet('debug') == 'true') : ?> + + + + + + + - - - - - - - + + + + + + + - - + + - + -
                                                                              -
                                                                              -
                                                                              - +
                                                                              +
                                                                              +
                                                                              + - + - -
                                                                              -
                                                                              + +
                                                                              +
                                                                              - -
                                                                              -
                                                                              +
                                                                              +
                                                                              diff --git a/app/Views/partial/header_js.php b/app/Views/partial/header_js.php index 1e4f722bc..3121ab56b 100644 --- a/app/Views/partial/header_js.php +++ b/app/Views/partial/header_js.php @@ -4,76 +4,76 @@ */ ?> diff --git a/app/Views/partial/print_receipt.php b/app/Views/partial/print_receipt.php index 4011e4caa..bdeb0cbcb 100644 --- a/app/Views/partial/print_receipt.php +++ b/app/Views/partial/print_receipt.php @@ -8,81 +8,81 @@ diff --git a/app/Views/people/manage.php b/app/Views/people/manage.php index f5f5f1d9c..9310bf4aa 100644 --- a/app/Views/people/manage.php +++ b/app/Views/people/manage.php @@ -10,62 +10,62 @@
                                                                              - - - - + + + +
                                                                              -
                                                                              - - -
                                                                              +
                                                                              + + +
                                                                              -
                                                                              +
                                                                              diff --git a/app/Views/receivings/form.php b/app/Views/receivings/form.php index d28950859..e181fc08f 100644 --- a/app/Views/receivings/form.php +++ b/app/Views/receivings/form.php @@ -12,96 +12,96 @@
                                                                                'receivings_edit_form', 'class' => 'form-horizontal']) ?> -
                                                                                -
                                                                                - 'control-label col-xs-3']) ?> - '_blank', 'class' => 'control-label col-xs-8', "style" => "text-align:left"]) ?> -
                                                                                +
                                                                                +
                                                                                + 'control-label col-xs-3']) ?> + '_blank', 'class' => 'control-label col-xs-8', "style" => "text-align:left"]) ?> +
                                                                                -
                                                                                - 'control-label col-xs-3']) ?> -
                                                                                - 'date', - 'value' => to_datetime(strtotime($receiving_info['receiving_time'])), - 'id' => 'datetime', - 'class' => 'datetime form-control input-sm', - 'readonly' => 'readonly' - ]) ?> -
                                                                                -
                                                                                +
                                                                                + 'control-label col-xs-3']) ?> +
                                                                                + 'date', + 'value' => to_datetime(strtotime($receiving_info['receiving_time'])), + 'id' => 'datetime', + 'class' => 'datetime form-control input-sm', + 'readonly' => 'readonly' + ]) ?> +
                                                                                +
                                                                                -
                                                                                - 'control-label col-xs-3']) ?> -
                                                                                - 'supplier_name', 'value' => $selected_supplier_name, 'id' => 'supplier_name', 'class' => 'form-control input-sm']) ?> - -
                                                                                -
                                                                                +
                                                                                + 'control-label col-xs-3']) ?> +
                                                                                + 'supplier_name', 'value' => $selected_supplier_name, 'id' => 'supplier_name', 'class' => 'form-control input-sm']) ?> + +
                                                                                +
                                                                                -
                                                                                - 'control-label col-xs-3']) ?> -
                                                                                - 'reference', 'value' => $receiving_info['reference'], 'id' => 'reference', 'class' => 'form-control input-sm']) ?> -
                                                                                -
                                                                                +
                                                                                + 'control-label col-xs-3']) ?> +
                                                                                + 'reference', 'value' => $receiving_info['reference'], 'id' => 'reference', 'class' => 'form-control input-sm']) ?> +
                                                                                +
                                                                                -
                                                                                - 'control-label col-xs-3']) ?> -
                                                                                - -
                                                                                -
                                                                                +
                                                                                + 'control-label col-xs-3']) ?> +
                                                                                + +
                                                                                +
                                                                                -
                                                                                - 'control-label col-xs-3']) ?> -
                                                                                - 'comment','value' => $receiving_info['comment'], 'id' => 'comment', 'class' => 'form-control input-sm']) ?> -
                                                                                -
                                                                                -
                                                                                +
                                                                                + 'control-label col-xs-3']) ?> +
                                                                                + 'comment','value' => $receiving_info['comment'], 'id' => 'comment', 'class' => 'form-control input-sm']) ?> +
                                                                                +
                                                                                +
                                                                                diff --git a/app/Views/receivings/receipt.php b/app/Views/receivings/receipt.php index f631a5ed5..0b82d17fe 100644 --- a/app/Views/receivings/receipt.php +++ b/app/Views/receivings/receipt.php @@ -18,155 +18,155 @@ ' . esc($error_message) . '
                                                                                '; - exit; - } + if (isset($error_message)) + { + echo '
                                                                                ' . esc($error_message) . '
                                                                                '; + exit; + } - echo view('partial/print_receipt', ['print_after_sale', $print_after_sale, 'selected_printer' => 'receipt_printer']) ?> + echo view('partial/print_receipt', ['print_after_sale', $print_after_sale, 'selected_printer' => 'receipt_printer']) ?>
                                                                                -
                                                                                - -
                                                                                - company_logo -
                                                                                - +
                                                                                + +
                                                                                + company_logo +
                                                                                + - -
                                                                                - + +
                                                                                + -
                                                                                -
                                                                                -
                                                                                -
                                                                                -
                                                                                +
                                                                                +
                                                                                +
                                                                                +
                                                                                +
                                                                                -
                                                                                - -
                                                                                - -
                                                                                - -
                                                                                - -
                                                                                -
                                                                                +
                                                                                + +
                                                                                + +
                                                                                + +
                                                                                + +
                                                                                +
                                                                                - - - - - - - +
                                                                                + + + + + + - $item) - { - ?> - - - - - - - - - - 0 ) - { - ?> - - - - - - - - - - - - - - - - - - + $item) + { + ?> + + + + + + + + + + 0 ) + { + ?> + + + + + + + + + + + + + + + + + + - - - - - + + + + + - - - - - - -
                                                                                   x
                                                                                   x
                                                                                + + +
                                                                                + + + + -
                                                                                - -
                                                                                +
                                                                                + +
                                                                                -
                                                                                -
                                                                                - -
                                                                                +
                                                                                +
                                                                                + +
                                                                                diff --git a/app/Views/receivings/receiving.php b/app/Views/receivings/receiving.php index 1c1d82dad..95b4cdd01 100644 --- a/app/Views/receivings/receiving.php +++ b/app/Views/receivings/receiving.php @@ -22,17 +22,17 @@ ' . esc($error) . '
                                                                                '; + echo '
                                                                                ' . esc($error) . '
                                                                                '; } if (!empty($warning)) { - echo esc("
                                                                                $warning
                                                                                "); + echo esc("
                                                                                $warning
                                                                                "); } if (isset($success)) { - echo esc("
                                                                                $success
                                                                                "); + echo esc("
                                                                                $success
                                                                                "); } ?> @@ -40,581 +40,581 @@ if (isset($success)) - 'mode_form', 'class' => 'form-horizontal panel panel-default']) ?> -
                                                                                -
                                                                                  -
                                                                                • - -
                                                                                • -
                                                                                • - "$('#mode_form').submit();", 'class' => 'selectpicker show-menu-arrow', 'data-style' => 'btn-default btn-sm', 'data-width' => 'fit']) ?> -
                                                                                • + 'mode_form', 'class' => 'form-horizontal panel panel-default']) ?> +
                                                                                  +
                                                                                    +
                                                                                  • + +
                                                                                  • +
                                                                                  • + "$('#mode_form').submit();", 'class' => 'selectpicker show-menu-arrow', 'data-style' => 'btn-default btn-sm', 'data-width' => 'fit']) ?> +
                                                                                  • - -
                                                                                  • - -
                                                                                  • -
                                                                                  • - "$('#mode_form').submit();", 'class' => 'selectpicker show-menu-arrow', 'data-style' => 'btn-default btn-sm', 'data-width' => 'fit']) ?> -
                                                                                  • + +
                                                                                  • + +
                                                                                  • +
                                                                                  • + "$('#mode_form').submit();", 'class' => 'selectpicker show-menu-arrow', 'data-style' => 'btn-default btn-sm', 'data-width' => 'fit']) ?> +
                                                                                  • - -
                                                                                  • - -
                                                                                  • -
                                                                                  • - "$('#mode_form').submit();", 'class' => 'selectpicker show-menu-arrow', 'data-style' => 'btn-default btn-sm', 'data-width' => 'fit']) ?> -
                                                                                  • - -
                                                                                  -
                                                                                  - + +
                                                                                • + +
                                                                                • +
                                                                                • + "$('#mode_form').submit();", 'class' => 'selectpicker show-menu-arrow', 'data-style' => 'btn-default btn-sm', 'data-width' => 'fit']) ?> +
                                                                                • + +
                                                                                +
                                                                                + - 'add_item_form', 'class' => 'form-horizontal panel panel-default']) ?> -
                                                                                -
                                                                                  -
                                                                                • - -
                                                                                • -
                                                                                • - 'item', 'id' => 'item', 'class' => 'form-control input-sm', 'size' => '50', 'tabindex' => '1']) ?> -
                                                                                • -
                                                                                • - -
                                                                                • -
                                                                                -
                                                                                - + 'add_item_form', 'class' => 'form-horizontal panel panel-default']) ?> +
                                                                                +
                                                                                  +
                                                                                • + +
                                                                                • +
                                                                                • + 'item', 'id' => 'item', 'class' => 'form-control input-sm', 'size' => '50', 'tabindex' => '1']) ?> +
                                                                                • +
                                                                                • + +
                                                                                • +
                                                                                +
                                                                                + - - - - - - - - - - - - - - +
                                                                                + + + + + + + + + + + + + - - - - - - $item) - { - ?> - 'form-horizontal', 'id' => "cart_$line"]) ?> - - - - + + + + + + $item) + { + ?> + 'form-horizontal', 'id' => "cart_$line"]) ?> + + + + - - - - - + + + + + - - + + - - - - - - - - - - - - - - - - - - - -
                                                                                -
                                                                                -
                                                                                ') ?> -
                                                                                - -
                                                                                +
                                                                                +
                                                                                ') ?> +
                                                                                + +
                                                                                'price', - 'class' => 'form-control input-sm', - 'value' => to_currency_no_money($item['price']), - 'onClick' => 'this.select();' - ]) ?> - - - 'price', + 'class' => 'form-control input-sm', + 'value' => to_currency_no_money($item['price']), + 'onClick' => 'this.select();' + ]) ?> + + + 'quantity', 'class' => 'form-control input-sm', 'value' => to_quantity_decimals($item['quantity']),'onClick' => 'this.select();']) ?> 'form-control input-sm'] - ) ?> 'quantity', 'class' => 'form-control input-sm', 'value' => to_quantity_decimals($item['quantity']),'onClick' => 'this.select();']) ?> 'form-control input-sm'] + ) ?> -
                                                                                - 'discount', 'class' => 'form-control input-sm', 'value' => $item['discount_type'] ? to_currency_no_money($item['discount']) : to_decimals($item['discount']), 'onClick' => 'this.select();']) ?> - - 'discount_toggle', - 'name' => 'discount_toggle', - 'value' => 1, - 'data-toggle' => "toggle", - 'data-size' => 'small', - 'data-onstyle' => 'success', - 'data-on' => '' . $config['currency_symbol'] .'', - 'data-off' => '%', - 'data-line' => $line, - 'checked' => $item['discount_type'] == 1 - ]) ?> - -
                                                                                -
                                                                                - ').submit();" title= >
                                                                                - 'description', - 'class' => 'form-control input-sm', - 'value' => $item['description'] - ]); - } - else - { - if ($item['description'] != '') //TODO: !==? - { - echo $item['description']; - echo form_hidden('description', $item['description']); - } - else - { - echo ''.lang('Sales.no_description').''; - echo form_hidden('description',''); - } - } - ?> -
                                                                                + + +
                                                                                + 'discount', 'class' => 'form-control input-sm', 'value' => $item['discount_type'] ? to_currency_no_money($item['discount']) : to_decimals($item['discount']), 'onClick' => 'this.select();']) ?> + + 'discount_toggle', + 'name' => 'discount_toggle', + 'value' => 1, + 'data-toggle' => "toggle", + 'data-size' => 'small', + 'data-onstyle' => 'success', + 'data-on' => '' . $config['currency_symbol'] .'', + 'data-off' => '%', + 'data-line' => $line, + 'checked' => $item['discount_type'] == 1 + ]) ?> + +
                                                                                + + + + + + + + ').submit();" title= > + + + + + + + 'description', + 'class' => 'form-control input-sm', + 'value' => $item['description'] + ]); + } + else + { + if ($item['description'] != '') //TODO: !==? + { + echo $item['description']; + echo form_hidden('description', $item['description']); + } + else + { + echo ''.lang('Sales.no_description').''; + echo form_hidden('description',''); + } + } + ?> + + + + + + +
                                                                                -
                                                                                - - - - - - - - - - - - - - - - - - - - - - - - -
                                                                                +
                                                                                + + + + + + + + + + + + + + + + + + + + + + + + +
                                                                                -  ' . lang('Common.remove').' '.lang('Suppliers.supplier'), - [ - 'class' => 'btn btn-danger btn-sm', - 'id' => 'remove_supplier_button', - 'title'=>lang('Common.remove').' '.lang('Suppliers.supplier') - ]) ?> - - 'select_supplier_form', 'class' => 'form-horizontal']) ?> -
                                                                                - - 'supplier', - 'id' => 'supplier', - 'class' => 'form-control input-sm', - 'value' => lang(ucfirst($controller_name) .'.start_typing_supplier_name') - ]) ?> +  ' . lang('Common.remove').' '.lang('Suppliers.supplier'), + [ + 'class' => 'btn btn-danger btn-sm', + 'id' => 'remove_supplier_button', + 'title'=>lang('Common.remove').' '.lang('Suppliers.supplier') + ]) ?> + + 'select_supplier_form', 'class' => 'form-horizontal']) ?> +
                                                                                + + 'supplier', + 'id' => 'supplier', + 'class' => 'form-control input-sm', + 'value' => lang(ucfirst($controller_name) .'.start_typing_supplier_name') + ]) ?> - + -
                                                                                - - +
                                                                                + + - - - - - - - - - - -
                                                                                + + + + + + + + + + +
                                                                                - 0) - { - ?> -
                                                                                - - 'finish_receiving_form', 'class' => 'form-horizontal']) ?> -
                                                                                - - 'comment', - 'id' => 'comment', - 'class' => 'form-control input-sm', - 'value' => $comment, - 'rows' => '4' - ]) ?> + 0) + { + ?> +
                                                                                + + 'finish_receiving_form', 'class' => 'form-horizontal']) ?> +
                                                                                + + 'comment', + 'id' => 'comment', + 'class' => 'form-control input-sm', + 'value' => $comment, + 'rows' => '4' + ]) ?> -
                                                                                 
                                                                                +
                                                                                 
                                                                                -
                                                                                 
                                                                                -
                                                                                - - - 'finish_receiving_form', 'class' => 'form-horizontal']) ?> -
                                                                                - - 'comment', - 'id' => 'comment', - 'class' => 'form-control input-sm', - 'value' => $comment, - 'rows' => '4' - ]) ?> -
                                                                                - - - - - - - - - - - - - - - - - - - -
                                                                                - 'recv_print_after_sale', - 'id' => 'recv_print_after_sale', - 'class' => 'checkbox', - 'value' => 1, - 'checked' => $print_after_sale == 1 - ]) ?> -
                                                                                - 'recv_reference', - 'id' => 'recv_reference', - 'class' => 'form-control input-sm', - 'value' => $reference, - 'size' => 5 - ]) ?> -
                                                                                - 'payment_types', - 'class' => 'selectpicker show-menu-arrow', - 'data-style' => 'btn-default btn-sm', - 'data-width' => 'auto' - ]) ?> -
                                                                                - 'amount_tendered', - 'value' => '', - 'class' => 'form-control input-sm', - 'size' => '5' - ]) ?> -
                                                                                -
                                                                                +
                                                                                 
                                                                                +
                                                                                + + + 'finish_receiving_form', 'class' => 'form-horizontal']) ?> +
                                                                                + + 'comment', + 'id' => 'comment', + 'class' => 'form-control input-sm', + 'value' => $comment, + 'rows' => '4' + ]) ?> +
                                                                                + + + + + + + + + + + + + + + + + + + +
                                                                                + 'recv_print_after_sale', + 'id' => 'recv_print_after_sale', + 'class' => 'checkbox', + 'value' => 1, + 'checked' => $print_after_sale == 1 + ]) ?> +
                                                                                + 'recv_reference', + 'id' => 'recv_reference', + 'class' => 'form-control input-sm', + 'value' => $reference, + 'size' => 5 + ]) ?> +
                                                                                + 'payment_types', + 'class' => 'selectpicker show-menu-arrow', + 'data-style' => 'btn-default btn-sm', + 'data-width' => 'auto' + ]) ?> +
                                                                                + 'amount_tendered', + 'value' => '', + 'class' => 'form-control input-sm', + 'size' => '5' + ]) ?> +
                                                                                +
                                                                                -
                                                                                 
                                                                                +
                                                                                 
                                                                                -
                                                                                 
                                                                                -
                                                                                - - -
                                                                                - -
                                                                                +
                                                                                 
                                                                                +
                                                                                + + +
                                                                                + +
                                                                                @@ -16,92 +16,92 @@ ' . esc($error) . '
                                                                                '; + echo '
                                                                                ' . esc($error) . '
                                                                                '; } ?> 'item_form', 'enctype' => 'multipart/form-data', 'class' => 'form-horizontal']) ?> -
                                                                                - 'control-label col-xs-2 required']) ?> -
                                                                                - 'daterangepicker', 'class' => 'form-control input-sm', 'id' => 'daterangepicker']) ?> -
                                                                                -
                                                                                +
                                                                                + 'control-label col-xs-2 required']) ?> +
                                                                                + 'daterangepicker', 'class' => 'form-control input-sm', 'id' => 'daterangepicker']) ?> +
                                                                                +
                                                                                - -
                                                                                - - 'required control-label col-xs-2']) ?> -
                                                                                - 'input_type', 'class' => 'form-control']) ?> -
                                                                                - - 'required control-label col-xs-2']) ?> -
                                                                                - lang('Reports.all'), - 'receiving' => lang('Reports.receivings'), - 'returns' => lang('Reports.returns'), - 'requisitions' => lang('Reports.requisitions') - ], - 'all', - ['id' => 'input_type', 'class' => 'form-control']) ?> -
                                                                                - -
                                                                                - + +
                                                                                + + 'required control-label col-xs-2']) ?> +
                                                                                + 'input_type', 'class' => 'form-control']) ?> +
                                                                                + + 'required control-label col-xs-2']) ?> +
                                                                                + lang('Reports.all'), + 'receiving' => lang('Reports.receivings'), + 'returns' => lang('Reports.returns'), + 'requisitions' => lang('Reports.requisitions') + ], + 'all', + ['id' => 'input_type', 'class' => 'form-control']) ?> +
                                                                                + +
                                                                                + - -
                                                                                - 'required control-label col-xs-2']) ?> -
                                                                                - 'discount_type_id', 'class' => 'form-control']) ?> -
                                                                                -
                                                                                - + +
                                                                                + 'required control-label col-xs-2']) ?> +
                                                                                + 'discount_type_id', 'class' => 'form-control']) ?> +
                                                                                +
                                                                                + - 2) - { - ?> -
                                                                                - 'required control-label col-xs-2']) ?> -
                                                                                - 'location_id', 'class' => 'form-control']) ?> -
                                                                                -
                                                                                - + 2) + { + ?> +
                                                                                + 'required control-label col-xs-2']) ?> +
                                                                                + 'location_id', 'class' => 'form-control']) ?> +
                                                                                +
                                                                                + - 'generate_report', - 'id' => 'generate_report', - 'content'=>lang('Common.submit'), - 'class' => 'btn btn-primary btn-sm'] - ); ?> + 'generate_report', + 'id' => 'generate_report', + 'content'=>lang('Common.submit'), + 'class' => 'btn btn-primary btn-sm'] + ); ?> @@ -109,11 +109,11 @@ if(isset($error)) diff --git a/app/Views/reports/graphical.php b/app/Views/reports/graphical.php index 48ec6777d..da78b4c43 100644 --- a/app/Views/reports/graphical.php +++ b/app/Views/reports/graphical.php @@ -9,7 +9,7 @@
                                                                                @@ -21,14 +21,14 @@
                                                                                - $value) - { - ?> -
                                                                                - + $value) + { + ?> +
                                                                                +
                                                                                diff --git a/app/Views/reports/graphs/bar.php b/app/Views/reports/graphs/bar.php index 8a7dbf4a9..5e0d4305a 100644 --- a/app/Views/reports/graphs/bar.php +++ b/app/Views/reports/graphs/bar.php @@ -9,115 +9,115 @@ */ ?> diff --git a/app/Views/reports/graphs/hbar.php b/app/Views/reports/graphs/hbar.php index d85ef3972..5d3f916cc 100644 --- a/app/Views/reports/graphs/hbar.php +++ b/app/Views/reports/graphs/hbar.php @@ -9,118 +9,118 @@ */ ?> diff --git a/app/Views/reports/graphs/line.php b/app/Views/reports/graphs/line.php index a5f553a7d..e462c005b 100644 --- a/app/Views/reports/graphs/line.php +++ b/app/Views/reports/graphs/line.php @@ -9,201 +9,201 @@ */ ?> diff --git a/app/Views/reports/graphs/pie.php b/app/Views/reports/graphs/pie.php index 29dd45976..31bd0a7b1 100644 --- a/app/Views/reports/graphs/pie.php +++ b/app/Views/reports/graphs/pie.php @@ -7,84 +7,84 @@ */ ?> diff --git a/app/Views/reports/inventory_summary_input.php b/app/Views/reports/inventory_summary_input.php index cfe0543dc..bc172f314 100644 --- a/app/Views/reports/inventory_summary_input.php +++ b/app/Views/reports/inventory_summary_input.php @@ -7,7 +7,7 @@ @@ -16,33 +16,33 @@ ' . esc($error) . '
                                                                                '; + echo '
                                                                                ' . esc($error) . '
                                                                                '; } ?> 'item_form', 'enctype' => 'multipart/form-data', 'class' => 'form-horizontal']) ?> -
                                                                                - 'required control-label col-xs-2']) ?> -
                                                                                - -
                                                                                -
                                                                                +
                                                                                + 'required control-label col-xs-2']) ?> +
                                                                                + +
                                                                                +
                                                                                -
                                                                                - 'required control-label col-xs-2']) ?> -
                                                                                - -
                                                                                -
                                                                                +
                                                                                + 'required control-label col-xs-2']) ?> +
                                                                                + +
                                                                                +
                                                                                - 'generate_report', - 'id' => 'generate_report', - 'content' => lang('Common.submit'), - 'class' => 'btn btn-primary btn-sm' - ]) ?> + 'generate_report', + 'id' => 'generate_report', + 'content' => lang('Common.submit'), + 'class' => 'btn btn-primary btn-sm' + ]) ?> @@ -50,9 +50,9 @@ if(isset($error)) diff --git a/app/Views/reports/listing.php b/app/Views/reports/listing.php index 46d74b7d4..f0f90d5bd 100644 --- a/app/Views/reports/listing.php +++ b/app/Views/reports/listing.php @@ -5,111 +5,111 @@ * @var array $grants */ $detailed_reports = [ - 'reports_sales' => 'detailed', - 'reports_receivings' => 'detailed', - 'reports_customers' => 'specific', - 'reports_discounts' => 'specific', - 'reports_employees' => 'specific', - 'reports_suppliers' => 'specific', + 'reports_sales' => 'detailed', + 'reports_receivings' => 'detailed', + 'reports_customers' => 'specific', + 'reports_discounts' => 'specific', + 'reports_employees' => 'specific', + 'reports_suppliers' => 'specific', ]; ?> ' . esc($error) . '
                                                                                '; - } + if (isset($error)) + { + echo '
                                                                                ' . esc($error) . '
                                                                                '; + } ?>
                                                                                -
                                                                                -
                                                                                -
                                                                                -

                                                                                 

                                                                                -
                                                                                -
                                                                                - - - -
                                                                                -
                                                                                -
                                                                                +
                                                                                +
                                                                                +
                                                                                +

                                                                                 

                                                                                +
                                                                                +
                                                                                + + + +
                                                                                +
                                                                                +
                                                                                -
                                                                                -
                                                                                -
                                                                                -

                                                                                 

                                                                                -
                                                                                -
                                                                                - - - -
                                                                                -
                                                                                -
                                                                                +
                                                                                +
                                                                                +
                                                                                +

                                                                                 

                                                                                +
                                                                                +
                                                                                + + + +
                                                                                +
                                                                                +
                                                                                -
                                                                                -
                                                                                -
                                                                                -

                                                                                 

                                                                                -
                                                                                -
                                                                                - $prefix) - { - if (in_array($report_name, $permission_ids, true)) - { - $link = get_report_link($report_name, $prefix); - ?> - - -
                                                                                -
                                                                                +
                                                                                +
                                                                                +
                                                                                +

                                                                                 

                                                                                +
                                                                                +
                                                                                + $prefix) + { + if (in_array($report_name, $permission_ids, true)) + { + $link = get_report_link($report_name, $prefix); + ?> + + +
                                                                                +
                                                                                - -
                                                                                -
                                                                                -

                                                                                 

                                                                                -
                                                                                -
                                                                                - - - -
                                                                                -
                                                                                - -
                                                                                + +
                                                                                +
                                                                                +

                                                                                 

                                                                                +
                                                                                +
                                                                                + + + +
                                                                                +
                                                                                + +
                                                                                diff --git a/app/Views/reports/specific_customer_input.php b/app/Views/reports/specific_customer_input.php index 0de199ea6..10ec77445 100644 --- a/app/Views/reports/specific_customer_input.php +++ b/app/Views/reports/specific_customer_input.php @@ -9,7 +9,7 @@ @@ -18,46 +18,46 @@ ' . esc($error) . ''; + echo '
                                                                                ' . esc($error) . '
                                                                                '; } ?> 'item_form', 'enctype' => 'multipart/form-data', 'class' => 'form-horizontal']) ?> -
                                                                                - 'control-label col-xs-2 required']) ?> -
                                                                                - 'daterangepicker', 'class' => 'form-control input-sm', 'id' => 'daterangepicker']) ?> -
                                                                                -
                                                                                +
                                                                                + 'control-label col-xs-2 required']) ?> +
                                                                                + 'daterangepicker', 'class' => 'form-control input-sm', 'id' => 'daterangepicker']) ?> +
                                                                                +
                                                                                -
                                                                                - 'required control-label col-xs-2']) ?> -
                                                                                - -
                                                                                -
                                                                                +
                                                                                + 'required control-label col-xs-2']) ?> +
                                                                                + +
                                                                                +
                                                                                -
                                                                                - 'required control-label col-xs-2']) ?> -
                                                                                - -
                                                                                -
                                                                                +
                                                                                + 'required control-label col-xs-2']) ?> +
                                                                                + +
                                                                                +
                                                                                -
                                                                                - 'required control-label col-xs-2']) ?> -
                                                                                - -
                                                                                -
                                                                                +
                                                                                + 'required control-label col-xs-2']) ?> +
                                                                                + +
                                                                                +
                                                                                - 'generate_report', - 'id' => 'generate_report', - 'content' => lang('Common.submit'), - 'class' => 'btn btn-primary btn-sm' - ]); ?> + 'generate_report', + 'id' => 'generate_report', + 'content' => lang('Common.submit'), + 'class' => 'btn btn-primary btn-sm' + ]); ?> @@ -65,12 +65,12 @@ if(isset($error)) diff --git a/app/Views/reports/specific_input.php b/app/Views/reports/specific_input.php index f380cea9f..0662b94e2 100644 --- a/app/Views/reports/specific_input.php +++ b/app/Views/reports/specific_input.php @@ -9,7 +9,7 @@ @@ -18,70 +18,70 @@ ' . esc($error) . ''; + echo '
                                                                                ' . esc($error) . '
                                                                                '; } ?> 'item_form', 'enctype' => 'multipart/form-data', 'class' => 'form-horizontal']) ?> -
                                                                                - 'control-label col-xs-2 required']) ?> -
                                                                                - 'daterangepicker', 'class' => 'form-control input-sm', 'id' => 'daterangepicker']) ?> -
                                                                                -
                                                                                +
                                                                                + 'control-label col-xs-2 required']) ?> +
                                                                                + 'daterangepicker', 'class' => 'form-control input-sm', 'id' => 'daterangepicker']) ?> +
                                                                                +
                                                                                - -
                                                                                - 'required control-label col-xs-2']) ?> -
                                                                                - 'discount_type_id', 'class' => 'form-control']) ?> -
                                                                                -
                                                                                - + +
                                                                                + 'required control-label col-xs-2']) ?> +
                                                                                + 'discount_type_id', 'class' => 'form-control']) ?> +
                                                                                +
                                                                                + -
                                                                                - 'required control-label col-xs-2']) ?> -
                                                                                - -
                                                                                +
                                                                                + 'required control-label col-xs-2']) ?> +
                                                                                + +
                                                                                - -
                                                                                - 'discount_fixed', - 'id' => 'discount_fixed', - 'class' => 'form-control input-sm required', - 'type' => 'number', - 'min' => 0, - 'value' => $config['default_sales_discount']]) ?> -
                                                                                - -
                                                                                + +
                                                                                + 'discount_fixed', + 'id' => 'discount_fixed', + 'class' => 'form-control input-sm required', + 'type' => 'number', + 'min' => 0, + 'value' => $config['default_sales_discount']]) ?> +
                                                                                + +
                                                                                -
                                                                                - 'required control-label col-xs-2']) ?> -
                                                                                - -
                                                                                -
                                                                                +
                                                                                + 'required control-label col-xs-2']) ?> +
                                                                                + +
                                                                                +
                                                                                - 'generate_report', - 'id' => 'generate_report', - 'content'=>lang('Common.submit'), - 'class' => 'btn btn-primary btn-sm' - ]) ?> + 'generate_report', + 'id' => 'generate_report', + 'content'=>lang('Common.submit'), + 'class' => 'btn btn-primary btn-sm' + ]) ?> @@ -89,38 +89,38 @@ if(isset($error)) diff --git a/app/Views/reports/tabular.php b/app/Views/reports/tabular.php index 3a9880686..a42571554 100644 --- a/app/Views/reports/tabular.php +++ b/app/Views/reports/tabular.php @@ -11,7 +11,7 @@
                                                                                @@ -19,54 +19,54 @@
                                                                                -
                                                                                +
                                                                                - $value) - { - if($name == "total_quantity") - { - ?> -
                                                                                - -
                                                                                - + $value) + { + if($name == "total_quantity") + { + ?> +
                                                                                + +
                                                                                +
                                                                                diff --git a/app/Views/reports/tabular_details.php b/app/Views/reports/tabular_details.php index 50de02269..e71033c63 100644 --- a/app/Views/reports/tabular_details.php +++ b/app/Views/reports/tabular_details.php @@ -16,92 +16,92 @@
                                                                                -
                                                                                +
                                                                                - $value) - { - ?> -
                                                                                - + $value) + { + ?> +
                                                                                +
                                                                                diff --git a/app/Views/sales/form.php b/app/Views/sales/form.php index 65fd24eb1..87fa14b8e 100644 --- a/app/Views/sales/form.php +++ b/app/Views/sales/form.php @@ -21,246 +21,246 @@
                                                                                  'sales_edit_form', 'class' => 'form-horizontal']) ?> -
                                                                                  -
                                                                                  - 'control-label col-xs-3']) ?> - '_blank', 'class' => 'control-label col-xs-8', "style"=>"text-align:left"]) ?> -
                                                                                  +
                                                                                  +
                                                                                  + 'control-label col-xs-3']) ?> + '_blank', 'class' => 'control-label col-xs-8', "style"=>"text-align:left"]) ?> +
                                                                                  -
                                                                                  - 'control-label col-xs-3']) ?> -
                                                                                  - 'date','value' => to_datetime(strtotime($sale_info['sale_time'])), 'class' => 'datetime form-control input-sm']) ?> -
                                                                                  -
                                                                                  +
                                                                                  + 'control-label col-xs-3']) ?> +
                                                                                  + 'date','value' => to_datetime(strtotime($sale_info['sale_time'])), 'class' => 'datetime form-control input-sm']) ?> +
                                                                                  +
                                                                                  - -
                                                                                  - 'control-label col-xs-3']) ?> -
                                                                                  - - 'invoice_number', 'size'=>10, 'value' => $sale_info['invoice_number'], 'id' => 'invoice_number', 'class' => 'form-control input-sm']) ?> - - - 'invoice_number', 'value' => $sale_info['invoice_number'], 'id' => 'invoice_number', 'class' => 'form-control input-sm']) ?> - -
                                                                                  -
                                                                                  - + +
                                                                                  + 'control-label col-xs-3']) ?> +
                                                                                  + + 'invoice_number', 'size'=>10, 'value' => $sale_info['invoice_number'], 'id' => 'invoice_number', 'class' => 'form-control input-sm']) ?> + + + 'invoice_number', 'value' => $sale_info['invoice_number'], 'id' => 'invoice_number', 'class' => 'form-control input-sm']) ?> + +
                                                                                  +
                                                                                  + - -
                                                                                  - 'control-label col-xs-3']) ?> -
                                                                                  - 'payment_types_new', 'class' => 'form-control']) ?> -
                                                                                  -
                                                                                  -
                                                                                  - - - - 'payment_amount_new', 'value' => $payment_amount_new, 'id' => 'payment_amount_new', 'class' => 'form-control input-sm']) //TODO: potentially we need to add type to be float/decimal/numeric to reduce improper data entry ?> - - - -
                                                                                  -
                                                                                  -
                                                                                  - + +
                                                                                  + 'control-label col-xs-3']) ?> +
                                                                                  + 'payment_types_new', 'class' => 'form-control']) ?> +
                                                                                  +
                                                                                  +
                                                                                  + + + + 'payment_amount_new', 'value' => $payment_amount_new, 'id' => 'payment_amount_new', 'class' => 'form-control input-sm']) //TODO: potentially we need to add type to be float/decimal/numeric to reduce improper data entry ?> + + + +
                                                                                  +
                                                                                  +
                                                                                  + - -
                                                                                  - 'control-label col-xs-3']) ?> -
                                                                                  - - payment_id) ?> - payment_type, lang('Sales.giftcard'))) ): ?> - "payment_type_$i", 'value' => $row->payment_type, 'id' => "payment_type_$i", 'class' => 'form-control input-sm', 'readonly' => 'true']) ?> - - payment_type, ['id' => "payment_types_$i", 'class' => 'form-control']) ?> - -
                                                                                  -
                                                                                  -
                                                                                  - - - - "payment_amount_$i", 'value' => $row->payment_amount, 'id' => "payment_amount_$i", 'class' => 'form-control input-sm', 'readonly' => 'true']) //TODO: add type attribute ?> - - - -
                                                                                  -
                                                                                  -
                                                                                  + +
                                                                                  + 'control-label col-xs-3']) ?> +
                                                                                  + + payment_id) ?> + payment_type, lang('Sales.giftcard'))) ): ?> + "payment_type_$i", 'value' => $row->payment_type, 'id' => "payment_type_$i", 'class' => 'form-control input-sm', 'readonly' => 'true']) ?> + + payment_type, ['id' => "payment_types_$i", 'class' => 'form-control']) ?> + +
                                                                                  +
                                                                                  +
                                                                                  + + + + "payment_amount_$i", 'value' => $row->payment_amount, 'id' => "payment_amount_$i", 'class' => 'form-control input-sm', 'readonly' => 'true']) //TODO: add type attribute ?> + + + +
                                                                                  +
                                                                                  +
                                                                                  -
                                                                                  - 'control-label col-xs-3']) ?> -
                                                                                  - - payment_type, lang('Sales.giftcard')))): ?> - "refund_type_$i", 'value'=>lang('Sales.cash'), 'id' => "refund_type_$i", 'class' => 'form-control input-sm', 'readonly' => 'true']) ?> - - "refund_types_$i", 'class' => 'form-control']) ?> - -
                                                                                  -
                                                                                  -
                                                                                  - - - - "refund_amount_$i", 'value' => $row->cash_refund, 'id' => "refund_amount_$i", 'class' => 'form-control input-sm', 'readonly' => 'true']) ?> - - - -
                                                                                  -
                                                                                  -
                                                                                  - +
                                                                                  + 'control-label col-xs-3']) ?> +
                                                                                  + + payment_type, lang('Sales.giftcard')))): ?> + "refund_type_$i", 'value'=>lang('Sales.cash'), 'id' => "refund_type_$i", 'class' => 'form-control input-sm', 'readonly' => 'true']) ?> + + "refund_types_$i", 'class' => 'form-control']) ?> + +
                                                                                  +
                                                                                  +
                                                                                  + + + + "refund_amount_$i", 'value' => $row->cash_refund, 'id' => "refund_amount_$i", 'class' => 'form-control input-sm', 'readonly' => 'true']) ?> + + + +
                                                                                  +
                                                                                  +
                                                                                  + -
                                                                                  - 'control-label col-xs-3']) ?> -
                                                                                  - 'customer_name', 'value' => $selected_customer_name, 'id' => 'customer_name', 'class' => 'form-control input-sm']) ?> - -
                                                                                  -
                                                                                  +
                                                                                  + 'control-label col-xs-3']) ?> +
                                                                                  + 'customer_name', 'value' => $selected_customer_name, 'id' => 'customer_name', 'class' => 'form-control input-sm']) ?> + +
                                                                                  +
                                                                                  -
                                                                                  - 'control-label col-xs-3']) ?> -
                                                                                  - 'employee_name', 'value' => $selected_employee_name, 'id' => 'employee_name', 'class' => 'form-control input-sm']) ?> - -
                                                                                  -
                                                                                  +
                                                                                  + 'control-label col-xs-3']) ?> +
                                                                                  + 'employee_name', 'value' => $selected_employee_name, 'id' => 'employee_name', 'class' => 'form-control input-sm']) ?> + +
                                                                                  +
                                                                                  -
                                                                                  - 'control-label col-xs-3']) ?> -
                                                                                  - 'comment', 'value' => $sale_info['comment'], 'id' => 'comment', 'class' => 'form-control input-sm']) ?> -
                                                                                  -
                                                                                  -
                                                                                  +
                                                                                  + 'control-label col-xs-3']) ?> +
                                                                                  + 'comment', 'value' => $sale_info['comment'], 'id' => 'comment', 'class' => 'form-control input-sm']) ?> +
                                                                                  +
                                                                                  +
                                                                                  diff --git a/app/Views/sales/help.php b/app/Views/sales/help.php index daebaeb9c..93ac1f043 100644 --- a/app/Views/sales/help.php +++ b/app/Views/sales/help.php @@ -1,97 +1,97 @@
                                                                                  - -
                                                                                  -
                                                                                  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
                                                                                  ESC
                                                                                  ALT + 1
                                                                                  ALT + 2
                                                                                  ALT + 3
                                                                                  ALT + 4
                                                                                  ALT + 5
                                                                                  ALT + 6
                                                                                  ALT + 7
                                                                                  ALT + 8
                                                                                  ALT + 9
                                                                                  -
                                                                                  + +
                                                                                  +
                                                                                  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                                                                                  ESC
                                                                                  ALT + 1
                                                                                  ALT + 2
                                                                                  ALT + 3
                                                                                  ALT + 4
                                                                                  ALT + 5
                                                                                  ALT + 6
                                                                                  ALT + 7
                                                                                  ALT + 8
                                                                                  ALT + 9
                                                                                  +
                                                                                  -
                                                                                  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
                                                                                  F11
                                                                                  CTRL +
                                                                                  CTRL -
                                                                                  CTRL + 0
                                                                                  CTRL + P
                                                                                  CTRL + F
                                                                                  -
                                                                                  -
                                                                                  +
                                                                                  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                                                                                  F11
                                                                                  CTRL +
                                                                                  CTRL -
                                                                                  CTRL + 0
                                                                                  CTRL + P
                                                                                  CTRL + F
                                                                                  +
                                                                                  +
                                                                                  diff --git a/app/Views/sales/invoice.php b/app/Views/sales/invoice.php index d08c21f42..4f702049a 100644 --- a/app/Views/sales/invoice.php +++ b/app/Views/sales/invoice.php @@ -24,8 +24,8 @@ $error_message"; - exit; + echo "
                                                                                  $error_message
                                                                                  "; + exit; } ?> @@ -33,21 +33,21 @@ if(isset($error_message)) @@ -55,244 +55,244 @@ $(document).ready(function() $print_after_sale, 'selected_printer' => 'invoice_printer']) ?>
                                                                                  - -
                                                                                  -
                                                                                  - -
                                                                                  - -
                                                                                  + +
                                                                                  +
                                                                                  + +
                                                                                  + +
                                                                                  - -
                                                                                  + +
                                                                                  -
                                                                                  -
                                                                                  - - - - - - - - - - - - - -
                                                                                  -
                                                                                  +
                                                                                  +
                                                                                  + + + + + + + + + + + + + +
                                                                                  +
                                                                                  - - - - - - - - - - - 0) - { - $invoice_columns += 1; - ?> - - - - +
                                                                                  + + + + + + + + + + 0) + { + $invoice_columns += 1; + ?> + + + + - $item) - { - if($item['print_option'] == PRINT_YES) - { - ?> - - - - - - - - - - 0): ?> - - - - - - - - - - + $item) + { + if($item['print_option'] == PRINT_YES) + { + ?> + + + + + + + + + + 0): ?> + + + + + + + + + + - - - + + + - - - - - + + + + + - $tax) - { - ?> - - - - - - + $tax) + { + ?> + + + + + + - - - - - + + + + + - $payment) - { - $only_sale_check |= $payment['payment_type'] == lang('Sales.check'); - $splitpayment = explode(':', $payment['payment_type']); //TODO: $splitpayment does not meet variable naming standards for this project. - $show_giftcard_remainder |= $splitpayment[0] == lang('Sales.giftcard'); - ?> - - - - - - $payment) + { + $only_sale_check |= $payment['payment_type'] == lang('Sales.check'); + $splitpayment = explode(':', $payment['payment_type']); //TODO: $splitpayment does not meet variable naming standards for this project. + $show_giftcard_remainder |= $splitpayment[0] == lang('Sales.giftcard'); + ?> + + + + + + - - - - - - + + + + + + - - - - - - + if(!empty($payments)) + { + ?> + + + + + + -
                                                                                  = 0 ? ($only_sale_check ? 'Sales.check_balance' : 'Sales.change_due') : 'Sales.amount_due') ?>
                                                                                  = 0 ? ($only_sale_check ? 'Sales.check_balance' : 'Sales.change_due') : 'Sales.amount_due') ?>
                                                                                  + -
                                                                                  -
                                                                                  -
                                                                                  - - -
                                                                                  -
                                                                                  -
                                                                                  -
                                                                                  -
                                                                                  - -
                                                                                  -
                                                                                  +
                                                                                  +
                                                                                  +
                                                                                  + + +
                                                                                  +
                                                                                  +
                                                                                  +
                                                                                  +
                                                                                  + +
                                                                                  +
                                                                                  diff --git a/app/Views/sales/invoice_email.php b/app/Views/sales/invoice_email.php index cd4d16301..e1db4f7b7 100644 --- a/app/Views/sales/invoice_email.php +++ b/app/Views/sales/invoice_email.php @@ -20,9 +20,9 @@ ?> - - - <?= lang('Sales.email_receipt') ?> + + + <?= lang('Sales.email_receipt') ?> @@ -30,187 +30,187 @@ $error_message"; - exit; + echo "
                                                                                  $error_message
                                                                                  "; + exit; } ?>
                                                                                  - - - - - - - - - - -
                                                                                  -
                                                                                  - -
                                                                                  - - - - - - - - - - 0) - { - ?> - - - - - -
                                                                                  -
                                                                                  + + + + + + + + + + +
                                                                                  +
                                                                                  + +
                                                                                  + + + + + + + + + + 0) + { + ?> + + + + + +
                                                                                  +
                                                                                  - - - - - - - - 0) - { - $invoice_columns = $invoice_columns + 1; - ?> - - - - +
                                                                                  + + + + + + + 0) + { + $invoice_columns = $invoice_columns + 1; + ?> + + + + - $item) - { - if($item['print_option'] == PRINT_YES) - { - ?> - - - - - - - 0): ?> - - - - - + $item) + { + if($item['print_option'] == PRINT_YES) + { + ?> + + + + + + + 0): ?> + + + + + - - - + + + - - - - - + + + + + - $tax) - { - ?> - - - - - - + $tax) + { + ?> + + + + + + - - - - - + + + + + - $payment) - { - $only_sale_check |= $payment['payment_type'] == lang('Sales.check'); - $splitpayment = explode(':', $payment['payment_type']); //TODO: $splitpayment does not meet the variable naming conventions for this project - $show_giftcard_remainder |= $splitpayment[0] == lang('Sales.giftcard'); - ?> - - - - - - + foreach($payments as $payment_id=>$payment) + { + $only_sale_check |= $payment['payment_type'] == lang('Sales.check'); + $splitpayment = explode(':', $payment['payment_type']); //TODO: $splitpayment does not meet the variable naming conventions for this project + $show_giftcard_remainder |= $splitpayment[0] == lang('Sales.giftcard'); + ?> + + + + + + - - - - - - - + + + + + + + - - - - - - - -
                                                                                  = 0 ? ($only_sale_check ? 'Sales.check_balance' : 'Sales.change_due') : 'Sales.amount_due') ?>
                                                                                  + + + + = 0 ? ($only_sale_check ? 'Sales.check_balance' : 'Sales.change_due') : 'Sales.amount_due') ?> + + + + -
                                                                                  -
                                                                                  -
                                                                                  - - -
                                                                                  - -
                                                                                  -
                                                                                  - <?='$sale_id'? src='data:image/svg+xml;base64,' />
                                                                                  - -
                                                                                  -
                                                                                  +
                                                                                  +
                                                                                  +
                                                                                  + + +
                                                                                  + +
                                                                                  +
                                                                                  + <?='$sale_id'? src='data:image/svg+xml;base64,' />
                                                                                  + +
                                                                                  +
                                                                                  diff --git a/app/Views/sales/manage.php b/app/Views/sales/manage.php index 690b07cec..fe8336a80 100644 --- a/app/Views/sales/manage.php +++ b/app/Views/sales/manage.php @@ -12,75 +12,75 @@ false, 'selected_printer' => 'takings_printer']) ?>
                                                                                  -
                                                                                  -
                                                                                  +
                                                                                  diff --git a/app/Views/sales/quote.php b/app/Views/sales/quote.php index 6bfebf95c..639b13275 100644 --- a/app/Views/sales/quote.php +++ b/app/Views/sales/quote.php @@ -20,237 +20,237 @@ $error_message
                                                                                  "; - exit; + echo "
                                                                                  $error_message
                                                                                  "; + exit; } ?> - + + send_email(); + + }); + $print_after_sale, 'selected_printer' => 'invoice_printer']) ?>
                                                                                  - -
                                                                                  -
                                                                                  - -
                                                                                  - -
                                                                                  + +
                                                                                  +
                                                                                  + +
                                                                                  + +
                                                                                  - -
                                                                                  + +
                                                                                  -
                                                                                  -
                                                                                  - - - - - - - - - - - - - -
                                                                                  -
                                                                                  +
                                                                                  +
                                                                                  + + + + + + + + + + + + + +
                                                                                  +
                                                                                  - - - - - - - - 0) - { - $quote_columns = $quote_columns + 1; - ?> - - - - +
                                                                                  + + + + + + + 0) + { + $quote_columns = $quote_columns + 1; + ?> + + + + - $item) - { - if($item['print_option'] == PRINT_YES) - { - ?> - - - - - - - 0): ?> - - - - + $item) + { + if($item['print_option'] == PRINT_YES) + { + ?> + + + + + + + 0): ?> + + + + - - - - - - + + + + + + - - - + + + - - - - - + + + + + - $tax) - { - ?> - - - - - - + $tax) + { + ?> + + + + + + - - - - - + + + + + - $payment) - { - $only_sale_check |= $payment['payment_type'] == lang('Sales.check'); - $splitpayment = explode(':', $payment['payment_type']); - $show_giftcard_remainder |= $splitpayment[0] == lang('Sales.giftcard'); - ?> - - - - - - -
                                                                                  -
                                                                                  -
                                                                                  -
                                                                                  - - -
                                                                                  -
                                                                                  -
                                                                                  + foreach($payments as $payment_id => $payment) + { + $only_sale_check |= $payment['payment_type'] == lang('Sales.check'); + $splitpayment = explode(':', $payment['payment_type']); + $show_giftcard_remainder |= $splitpayment[0] == lang('Sales.giftcard'); + ?> + + + + + + + +
                                                                                  +
                                                                                  +
                                                                                  + + +
                                                                                  +
                                                                                  +
                                                                                  diff --git a/app/Views/sales/quote_email.php b/app/Views/sales/quote_email.php index 18e700463..0dee59ace 100644 --- a/app/Views/sales/quote_email.php +++ b/app/Views/sales/quote_email.php @@ -16,154 +16,154 @@ - - - <?= lang('Sales.send_quote') ?> + + + <?= lang('Sales.send_quote') ?> $error_message"; - exit; - } + if(isset($error_message)) + { + echo "
                                                                                  $error_message
                                                                                  "; + exit; + } ?>
                                                                                  - - - - - - - - - - -
                                                                                  -
                                                                                  -
                                                                                  -
                                                                                  - - -
                                                                                  -
                                                                                  - - - - - - - - - - 0) - { - ?> - - - - - -
                                                                                  -
                                                                                  + + + + + + + + + + +
                                                                                  +
                                                                                  +
                                                                                  +
                                                                                  + + +
                                                                                  +
                                                                                  + + + + + + + + + + 0) + { + ?> + + + + + +
                                                                                  +
                                                                                  - - - - - - - - 0) - { - $quote_columns = $quote_columns + 1; - ?> - - - - +
                                                                                  + + + + + + + 0) + { + $quote_columns = $quote_columns + 1; + ?> + + + + - $item) - { - if($item['print_option'] == PRINT_YES) - { - ?> - - - - - - - 0): ?> - - - - - + $item) + { + if($item['print_option'] == PRINT_YES) + { + ?> + + + + + + + 0): ?> + + + + + - - - + + + - - - - - + + + + + - $tax) - { - ?> - - - - - - + $tax) + { + ?> + + + + + + - - - - - -
                                                                                  + + + + + + -
                                                                                  -
                                                                                  -
                                                                                  - - -
                                                                                  - -
                                                                                  -
                                                                                  - -
                                                                                  -
                                                                                  +
                                                                                  +
                                                                                  +
                                                                                  + + +
                                                                                  + +
                                                                                  +
                                                                                  + +
                                                                                  +
                                                                                  diff --git a/app/Views/sales/receipt.php b/app/Views/sales/receipt.php index 766be995f..896b45e6e 100644 --- a/app/Views/sales/receipt.php +++ b/app/Views/sales/receipt.php @@ -13,47 +13,47 @@ use App\Models\Employee; $error_message"; - exit; + echo "
                                                                                  $error_message
                                                                                  "; + exit; } ?> - + + send_email(); + + }); + $print_after_sale, 'selected_printer' => 'receipt_printer']) ?> diff --git a/app/Views/sales/receipt_default.php b/app/Views/sales/receipt_default.php index 7b616906c..aaa6c8416 100644 --- a/app/Views/sales/receipt_default.php +++ b/app/Views/sales/receipt_default.php @@ -18,232 +18,232 @@ ?>
                                                                                  -
                                                                                  - -
                                                                                  - company_logo -
                                                                                  - +
                                                                                  + +
                                                                                  + company_logo +
                                                                                  + - -
                                                                                  - + +
                                                                                  + -
                                                                                  -
                                                                                  -
                                                                                  -
                                                                                  -
                                                                                  +
                                                                                  +
                                                                                  +
                                                                                  +
                                                                                  +
                                                                                  -
                                                                                  - -
                                                                                  - +
                                                                                  + +
                                                                                  + -
                                                                                  +
                                                                                  - -
                                                                                  - + +
                                                                                  + -
                                                                                  -
                                                                                  +
                                                                                  +
                                                                                  - - - - - - - - - - - $item) - { - if($item['print_option'] == PRINT_YES) - { - ?> - - - - - - - - - - - - - + + + + + + + + + + $item) + { + if($item['print_option'] == PRINT_YES) + { + ?> + + + + + + + + + + + + + - - - - 0) - { - ?> - - - - - - - - - + if($config['receipt_show_serialnumber']) + { + ?> + + + + 0) + { + ?> + + + + + + + + + - 0) - { - ?> - - - - - - - - - + 0) + { + ?> + + + + + + + + + - - - - - - $tax) - { - ?> - - - - - - + + + + + + $tax) + { + ?> + + + + + + - - + + - 0)); ?> - - - - + 0)); ?> + + + + - - - + + + - $payment) - { - $only_sale_check |= $payment['payment_type'] == lang('Sales.check'); - $splitpayment = explode(':', $payment['payment_type']); //TODO: The variable splitpayment does not follow naming conventions for this project - $show_giftcard_remainder |= $splitpayment[0] == lang('Sales.giftcard'); - ?> - - - - - + $payment) + { + $only_sale_check |= $payment['payment_type'] == lang('Sales.check'); + $splitpayment = explode(':', $payment['payment_type']); //TODO: The variable splitpayment does not follow naming conventions for this project + $show_giftcard_remainder |= $splitpayment[0] == lang('Sales.giftcard'); + ?> + + + + + - - - + + + - - - - - - - - - - -
                                                                                  :
                                                                                  :
                                                                                  :
                                                                                  :
                                                                                   
                                                                                   
                                                                                   
                                                                                   
                                                                                  = 0 ? ($only_sale_check ? 'Sales.check_balance' : 'Sales.change_due') : 'Sales.amount_due') ?>
                                                                                  + + + + + + + + = 0 ? ($only_sale_check ? 'Sales.check_balance' : 'Sales.change_due') : 'Sales.amount_due') ?> + + + -
                                                                                  - -
                                                                                  +
                                                                                  + +
                                                                                  -
                                                                                  -
                                                                                  - -
                                                                                  +
                                                                                  +
                                                                                  + +
                                                                                  diff --git a/app/Views/sales/receipt_email.php b/app/Views/sales/receipt_email.php index 2a1eafd43..5d706ac26 100644 --- a/app/Views/sales/receipt_email.php +++ b/app/Views/sales/receipt_email.php @@ -15,207 +15,207 @@ */ ?>
                                                                                  -
                                                                                  - -
                                                                                  - company_logo -
                                                                                  - +
                                                                                  + +
                                                                                  + company_logo +
                                                                                  + - -
                                                                                  - + +
                                                                                  + -
                                                                                  -
                                                                                  -
                                                                                  -
                                                                                  -
                                                                                  -
                                                                                  +
                                                                                  +
                                                                                  +
                                                                                  +
                                                                                  +
                                                                                  +
                                                                                  -
                                                                                  +
                                                                                  -
                                                                                  - -
                                                                                  - +
                                                                                  + +
                                                                                  + -
                                                                                  -
                                                                                  -
                                                                                  +
                                                                                  +
                                                                                  +
                                                                                  -
                                                                                  +
                                                                                  - - - - - - - - $item) - { - if($item['print_option'] == PRINT_YES) - { - ?> - - - - - - - - - - + + + + + + + $item) + { + if($item['print_option'] == PRINT_YES) + { + ?> + + + + + + + + + + - - - - 0) - { - ?> - - - - - - - - - + + + + 0) + { + ?> + + + + + + + + + 0) - { - ?> - - - - - - - - - + if($config['receipt_show_total_discount'] && $discount > 0) + { + ?> + + + + + + + + + - - - - - - $tax) - { - ?> - - - - - - + + + + + + $tax) + { + ?> + + + + + + - - + + - 0)) ?> - - - - + 0)) ?> + + + + - $payment) - { - $only_sale_check |= $payment['payment_type'] == lang('Sales.check'); - $splitpayment = explode(':', $payment['payment_type']); - $show_giftcard_remainder |= $splitpayment[0] == lang('Sales.giftcard'); - ?> - - - - - - - - - - - - - - - - + $payment) + { + $only_sale_check |= $payment['payment_type'] == lang('Sales.check'); + $splitpayment = explode(':', $payment['payment_type']); + $show_giftcard_remainder |= $splitpayment[0] == lang('Sales.giftcard'); + ?> + + + + + - - - -
                                                                                  :
                                                                                  :
                                                                                  :
                                                                                  :
                                                                                  = 0 ? ($only_sale_check ? 'Sales.check_balance' : 'Sales.change_due') : 'Sales.amount_due') ?>
                                                                                   
                                                                                  + + + + + + + + = 0 ? ($only_sale_check ? 'Sales.check_balance' : 'Sales.change_due') : 'Sales.amount_due') ?> + + -
                                                                                  -
                                                                                  - -
                                                                                  - -
                                                                                  - <?='$sale_id'? src='data:image/svg+xml;base64,' />
                                                                                  - -
                                                                                  -
                                                                                  + +   + + + +
                                                                                  +
                                                                                  + +
                                                                                  + +
                                                                                  + <?='$sale_id'? src='data:image/svg+xml;base64,' />
                                                                                  + +
                                                                                  +
                                                                                  diff --git a/app/Views/sales/receipt_short.php b/app/Views/sales/receipt_short.php index cbbeb6c12..31557dc6d 100644 --- a/app/Views/sales/receipt_short.php +++ b/app/Views/sales/receipt_short.php @@ -15,208 +15,208 @@ */ ?>
                                                                                  -
                                                                                  - -
                                                                                  - company_logo -
                                                                                  - +
                                                                                  + +
                                                                                  + company_logo +
                                                                                  + - -
                                                                                  - + +
                                                                                  + -
                                                                                  -
                                                                                  -
                                                                                  -
                                                                                  -
                                                                                  +
                                                                                  +
                                                                                  +
                                                                                  +
                                                                                  +
                                                                                  -
                                                                                  - -
                                                                                  - +
                                                                                  + +
                                                                                  + -
                                                                                  +
                                                                                  - -
                                                                                  - + +
                                                                                  + -
                                                                                  -
                                                                                  +
                                                                                  +
                                                                                  - - - - - - - $item) - { - ?> - - - - - - - - - - - - - - 0) - { - ?> - - - - - - - - - +
                                                                                  + + + + + + $item) + { + ?> + + + + + + + + + + + + + + 0) + { + ?> + + + + + + + + + - + - 0) - { - ?> - - - - - - - - - + 0) + { + ?> + + + + + + + + + - - - - - - $tax) - { - ?> - - - - - - + + + + + + $tax) + { + ?> + + + + + + - - + + - 0)); ?> - - - - + 0)); ?> + + + + - $payment) - { - $only_sale_check |= $payment['payment_type'] == lang('Sales.check'); - $splitpayment = explode(':', $payment['payment_type']); - $show_giftcard_remainder |= $splitpayment[0] == lang('Sales.giftcard'); - ?> - - - - - + $payment) + { + $only_sale_check |= $payment['payment_type'] == lang('Sales.check'); + $splitpayment = explode(':', $payment['payment_type']); + $show_giftcard_remainder |= $splitpayment[0] == lang('Sales.giftcard'); + ?> + + + + + - - - - - - - - - - -
                                                                                  :
                                                                                  :
                                                                                  :
                                                                                  :
                                                                                  = 0 ? ($only_sale_check ? 'Sales.check_balance' : 'Sales.change_due') : 'Sales.amount_due') ?>
                                                                                  + + + + + + + + = 0 ? ($only_sale_check ? 'Sales.check_balance' : 'Sales.change_due') : 'Sales.amount_due') ?> + + + -
                                                                                  - -
                                                                                  +
                                                                                  + +
                                                                                  -
                                                                                  -
                                                                                  - -
                                                                                  +
                                                                                  +
                                                                                  + +
                                                                                  diff --git a/app/Views/sales/register.php b/app/Views/sales/register.php index 193c3b19e..abfe00672 100644 --- a/app/Views/sales/register.php +++ b/app/Views/sales/register.php @@ -47,999 +47,999 @@ use App\Models\Employee; $error"; + echo "
                                                                                  $error
                                                                                  "; } if(!empty($warning)) { - echo "
                                                                                  $warning
                                                                                  "; + echo "
                                                                                  $warning
                                                                                  "; } if(isset($success)) { - echo "
                                                                                  $success
                                                                                  "; + echo "
                                                                                  $success
                                                                                  "; } ?>
                                                                                  - 'mode_form', 'class' => 'form-horizontal panel panel-default']) ?> -
                                                                                  -
                                                                                    -
                                                                                  • - -
                                                                                  • -
                                                                                  • - "$('#mode_form').submit();", 'class' => 'selectpicker show-menu-arrow', 'data-style' => 'btn-default btn-sm', 'data-width' => 'fit']) ?> -
                                                                                  • - -
                                                                                  • - -
                                                                                  • -
                                                                                  • - "$('#mode_form').submit();", 'class' => 'selectpicker show-menu-arrow', 'data-style' => 'btn-default btn-sm', 'data-width' => 'fit']) ?> -
                                                                                  • - 1) - { - ?> -
                                                                                  • - -
                                                                                  • -
                                                                                  • - "$('#mode_form').submit();", 'class' => 'selectpicker show-menu-arrow', 'data-style' => 'btn-default btn-sm', 'data-width' => 'fit']) ?> -
                                                                                  • - + 'mode_form', 'class' => 'form-horizontal panel panel-default']) ?> +
                                                                                    +
                                                                                      +
                                                                                    • + +
                                                                                    • +
                                                                                    • + "$('#mode_form').submit();", 'class' => 'selectpicker show-menu-arrow', 'data-style' => 'btn-default btn-sm', 'data-width' => 'fit']) ?> +
                                                                                    • + +
                                                                                    • + +
                                                                                    • +
                                                                                    • + "$('#mode_form').submit();", 'class' => 'selectpicker show-menu-arrow', 'data-style' => 'btn-default btn-sm', 'data-width' => 'fit']) ?> +
                                                                                    • + 1) + { + ?> +
                                                                                    • + +
                                                                                    • +
                                                                                    • + "$('#mode_form').submit();", 'class' => 'selectpicker show-menu-arrow', 'data-style' => 'btn-default btn-sm', 'data-width' => 'fit']) ?> +
                                                                                    • + -
                                                                                    • - -
                                                                                    • +
                                                                                    • + +
                                                                                    • - has_grant('reports_sales', session('person_id'))) - { - ?> -
                                                                                    • -  ' . lang(ucfirst($controller_name) .'.takings'), - array('class' => 'btn btn-primary btn-sm', 'id' => 'sales_takings_button', 'title' => lang(ucfirst($controller_name) .'.takings'))) ?> -
                                                                                    • - -
                                                                                    -
                                                                                    - + has_grant('reports_sales', session('person_id'))) + { + ?> +
                                                                                  • +  ' . lang(ucfirst($controller_name) .'.takings'), + array('class' => 'btn btn-primary btn-sm', 'id' => 'sales_takings_button', 'title' => lang(ucfirst($controller_name) .'.takings'))) ?> +
                                                                                  • + +
                                                                                  +
                                                                                  + - + - 'add_item_form', 'class' => 'form-horizontal panel panel-default']) ?> -
                                                                                  -
                                                                                    -
                                                                                  • - -
                                                                                  • -
                                                                                  • - 'item', 'id' => 'item', 'class' => 'form-control input-sm', 'size' => '50', 'tabindex' => ++$tabindex]) ?> - -
                                                                                  • -
                                                                                  • - -
                                                                                  • -
                                                                                  -
                                                                                  - + 'add_item_form', 'class' => 'form-horizontal panel panel-default']) ?> +
                                                                                  +
                                                                                    +
                                                                                  • + +
                                                                                  • +
                                                                                  • + 'item', 'id' => 'item', 'class' => 'form-control input-sm', 'size' => '50', 'tabindex' => ++$tabindex]) ?> + +
                                                                                  • +
                                                                                  • + +
                                                                                  • +
                                                                                  +
                                                                                  + - - - - - - - - - - - - - +
                                                                                  + + + + + + + + + + + + - - - - - - $item) - { - ?> - 'form-horizontal', 'id' => "cart_$line"]) ?> - - - - - - - - - + + + + + + $item) + { + ?> + 'form-horizontal', 'id' => "cart_$line"]) ?> + + + + + + + + + - + - + - + - + - - - - - - - - - - - - + + + + + + + + + + + + - - - - - - - - - -
                                                                                  -
                                                                                  -
                                                                                  - '); - echo form_hidden('location', (string)$item['item_location']); - echo form_input (['type' => 'hidden', 'name' => 'item_id', 'value'=>$item['item_id']]); - ?> - 'item_number', 'id' => 'item_number','class' => 'form-control input-sm', 'value'=>$item['item_number'], 'tabindex'=>++$tabindex]) ?> - 'name','id' => 'name', 'class' => 'form-control input-sm', 'value'=>$item['name'], 'tabindex'=>++$tabindex]) ?> - - -
                                                                                  - -
                                                                                  +
                                                                                  +
                                                                                  + '); + echo form_hidden('location', (string)$item['item_location']); + echo form_input (['type' => 'hidden', 'name' => 'item_id', 'value'=>$item['item_id']]); + ?> + 'item_number', 'id' => 'item_number','class' => 'form-control input-sm', 'value'=>$item['item_number'], 'tabindex'=>++$tabindex]) ?> + 'name','id' => 'name', 'class' => 'form-control input-sm', 'value'=>$item['name'], 'tabindex'=>++$tabindex]) ?> + + +
                                                                                  + +
                                                                                  - 'price', 'class' => 'form-control input-sm', 'value' => to_currency_no_money($item['price']), 'tabindex' => ++$tabindex, 'onClick' => 'this.select();']); - } - else - { - echo to_currency($item['price']); - echo form_hidden('price', to_currency_no_money($item['price'])); - } - ?> - + 'price', 'class' => 'form-control input-sm', 'value' => to_currency_no_money($item['price']), 'tabindex' => ++$tabindex, 'onClick' => 'this.select();']); + } + else + { + echo to_currency($item['price']); + echo form_hidden('price', to_currency_no_money($item['price'])); + } + ?> + - 'quantity', 'class' => 'form-control input-sm', 'value' => to_quantity_decimals($item['quantity']), 'tabindex' => ++$tabindex, 'onClick' => 'this.select();']); - } - ?> - + 'quantity', 'class' => 'form-control input-sm', 'value' => to_quantity_decimals($item['quantity']), 'tabindex' => ++$tabindex, 'onClick' => 'this.select();']); + } + ?> + -
                                                                                  - 'discount', 'class' => 'form-control input-sm', 'value' => $item['discount_type'] ? to_currency_no_money($item['discount']) : to_decimals($item['discount']), 'tabindex' => ++$tabindex, 'onClick' => 'this.select();']) ?> - - 'discount_toggle', 'name' => 'discount_toggle', 'value' => 1, 'data-toggle' => "toggle",'data-size' => 'small', 'data-onstyle' => 'success', 'data-on' => '' . $config['currency_symbol'] . '', 'data-off' => '%', 'data-line' => $line, 'checked' => $item['discount_type'] == 1]) ?> - -
                                                                                  -
                                                                                  +
                                                                                  + 'discount', 'class' => 'form-control input-sm', 'value' => $item['discount_type'] ? to_currency_no_money($item['discount']) : to_decimals($item['discount']), 'tabindex' => ++$tabindex, 'onClick' => 'this.select();']) ?> + + 'discount_toggle', 'name' => 'discount_toggle', 'value' => 1, 'data-toggle' => "toggle",'data-size' => 'small', 'data-onstyle' => 'success', 'data-on' => '' . $config['currency_symbol'] . '', 'data-off' => '%', 'data-line' => $line, 'checked' => $item['discount_type'] == 1]) ?> + +
                                                                                  +
                                                                                  - 'discounted_total', 'class' => 'form-control input-sm', 'value' => to_currency_no_money($item['discounted_total']), 'tabindex' => ++$tabindex, 'onClick' => 'this.select();']); - } - else - { - echo to_currency($item['discounted_total']); - } - ?> - + 'discounted_total', 'class' => 'form-control input-sm', 'value' => to_currency_no_money($item['discounted_total']), 'tabindex' => ++$tabindex, 'onClick' => 'this.select();']); + } + else + { + echo to_currency($item['discounted_total']); + } + ?> + ').submit();" title= >
                                                                                  'hidden', 'name' => 'item_id', 'value' => $item['item_id']]) ?> - 'item_description', 'id' => 'item_description', 'class' => 'form-control input-sm', 'value' => $item['description'], 'tabindex' => ++$tabindex]) ?> - ').submit();" title= >
                                                                                  'hidden', 'name' => 'item_id', 'value' => $item['item_id']]) ?> + 'item_description', 'id' => 'item_description', 'class' => 'form-control input-sm', 'value' => $item['description'], 'tabindex' => ++$tabindex]) ?> + - 'description', 'class' => 'form-control input-sm', 'value' => $item['description'], 'onClick' => 'this.select();']); - } - else - { - if($item['description'] != '') - { - echo $item['description']; - echo form_hidden('description', $item['description']); - } - else - { - echo lang(ucfirst($controller_name) .'.no_description'); - echo form_hidden('description',''); - } - } - ?> -   - - - 'serialnumber', 'class' => 'form-control input-sm', 'value' => $item['serialnumber'], 'onClick' => 'this.select();']); - } - else - { - echo form_hidden('serialnumber', ''); - } - ?> -
                                                                                  + + 'description', 'class' => 'form-control input-sm', 'value' => $item['description'], 'onClick' => 'this.select();']); + } + else + { + if($item['description'] != '') + { + echo $item['description']; + echo form_hidden('description', $item['description']); + } + else + { + echo lang(ucfirst($controller_name) .'.no_description'); + echo form_hidden('description',''); + } + } + ?> + +   + + + + + 'serialnumber', 'class' => 'form-control input-sm', 'value' => $item['serialnumber'], 'onClick' => 'this.select();']); + } + else + { + echo form_hidden('serialnumber', ''); + } + ?> + + + + + + +
                                                                                  -
                                                                                  - 'select_customer_form', 'class' => 'form-horizontal']) ?> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
                                                                                  'modal-dlg', 'data-btn-submit' => lang('Common.submit'), 'title' => lang('Customers.update')]) ?>
                                                                                  +
                                                                                  + 'select_customer_form', 'class' => 'form-horizontal']) ?> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                                                                                  'modal-dlg', 'data-btn-submit' => lang('Common.submit'), 'title' => lang('Customers.update')]) ?>
                                                                                  -  ' . lang('Common.remove') . ' ' . lang('Customers.customer'), - ['class' => 'btn btn-danger btn-sm', 'id' => 'remove_customer_button', 'title' => lang('Common.remove') . ' ' . lang('Customers.customer')] - ) - ?> - -
                                                                                  - - 'customer', 'id' => 'customer', 'class' => 'form-control input-sm', 'value' => lang(ucfirst($controller_name) .'.start_typing_customer_name')]) ?> +  ' . lang('Common.remove') . ' ' . lang('Customers.customer'), + ['class' => 'btn btn-danger btn-sm', 'id' => 'remove_customer_button', 'title' => lang('Common.remove') . ' ' . lang('Customers.customer')] + ) + ?> + +
                                                                                  + + 'customer', 'id' => 'customer', 'class' => 'form-control input-sm', 'value' => lang(ucfirst($controller_name) .'.start_typing_customer_name')]) ?> - - -
                                                                                  - - + + +
                                                                                  + + - - - - - - - - - +
                                                                                  + + + + + + + + - $tax) - { - ?> - - - - - + $tax) + { + ?> + + + + + - - - - -
                                                                                  + + + + + - 0) - { - ?> - - - - - - - - - -
                                                                                  + 0) + { + ?> + + + + + + + + + +
                                                                                  -
                                                                                  - - 'add_payment_form', 'class' => 'form-horizontal']) ?> - - - - - - - - - -
                                                                                  - 'payment_types', 'class' => 'selectpicker show-menu-arrow', 'data-style' => 'btn-default btn-sm', 'data-width' => 'fit', 'disabled' => 'disabled']) ?> -
                                                                                  - 'amount_tendered', 'id' => 'amount_tendered', 'class' => 'form-control input-sm disabled', 'disabled' => 'disabled', 'value' => '0', 'size' => '5', 'tabindex' => ++$tabindex, 'onClick' => 'this.select();']) ?> -
                                                                                  - +
                                                                                  + + 'add_payment_form', 'class' => 'form-horizontal']) ?> + + + + + + + + + +
                                                                                  + 'payment_types', 'class' => 'selectpicker show-menu-arrow', 'data-style' => 'btn-default btn-sm', 'data-width' => 'fit', 'disabled' => 'disabled']) ?> +
                                                                                  + 'amount_tendered', 'id' => 'amount_tendered', 'class' => 'form-control input-sm disabled', 'disabled' => 'disabled', 'value' => '0', 'size' => '5', 'tabindex' => ++$tabindex, 'onClick' => 'this.select();']) ?> +
                                                                                  + - 0) - { - foreach($payments as $payment_id => $payment) - { - if($payment['payment_type'] == lang(ucfirst($controller_name) .'.due')) - { - $due_payment = true; - } - } - } + if(count($payments) > 0) + { + foreach($payments as $payment_id => $payment) + { + if($payment['payment_type'] == lang(ucfirst($controller_name) .'.due')) + { + $due_payment = true; + } + } + } - if(!$due_payment || ($due_payment && isset($customer))) //TODO: $due_payment is not needed because the first clause insures that it will always be true if it gets to this point. Can be shortened to if(!$due_payment || isset($customer)) - { - ?> -
                                                                                   
                                                                                  - - - 'add_payment_form', 'class' => 'form-horizontal']) ?> - - - - - - - - - -
                                                                                  - 'payment_types', 'class' => 'selectpicker show-menu-arrow', 'data-style' => 'btn-default btn-sm', 'data-width' => 'fit']) ?> -
                                                                                  - 'amount_tendered', 'id' => 'amount_tendered', 'class' => 'form-control input-sm non-giftcard-input', 'value' => to_currency_no_money($amount_due), 'size' => '5', 'tabindex' => ++$tabindex, 'onClick' => 'this.select();']) ?> - 'amount_tendered', 'id' => 'amount_tendered', 'class' => 'form-control input-sm giftcard-input', 'disabled' => true, 'value' => to_currency_no_money($amount_due), 'size' => '5', 'tabindex' => ++$tabindex]) ?> -
                                                                                  - + if(!$due_payment || ($due_payment && isset($customer))) //TODO: $due_payment is not needed because the first clause insures that it will always be true if it gets to this point. Can be shortened to if(!$due_payment || isset($customer)) + { + ?> +
                                                                                   
                                                                                  + + + 'add_payment_form', 'class' => 'form-horizontal']) ?> + + + + + + + + + +
                                                                                  + 'payment_types', 'class' => 'selectpicker show-menu-arrow', 'data-style' => 'btn-default btn-sm', 'data-width' => 'fit']) ?> +
                                                                                  + 'amount_tendered', 'id' => 'amount_tendered', 'class' => 'form-control input-sm non-giftcard-input', 'value' => to_currency_no_money($amount_due), 'size' => '5', 'tabindex' => ++$tabindex, 'onClick' => 'this.select();']) ?> + 'amount_tendered', 'id' => 'amount_tendered', 'class' => 'form-control input-sm giftcard-input', 'disabled' => true, 'value' => to_currency_no_money($amount_due), 'size' => '5', 'tabindex' => ++$tabindex]) ?> +
                                                                                  + -
                                                                                   
                                                                                  - +
                                                                                   
                                                                                  + - 0) - { - ?> - - - - - - - - + 0) + { + ?> +
                                                                                  + + + + + + + - - $payment) - { - ?> - - - - - - - -
                                                                                  ') ?>
                                                                                  - -
                                                                                  + + $payment) + { + ?> + + ') ?> + + + + + + + +
                                                                                  - 'buttons_form']) ?> -
                                                                                  -
                                                                                   
                                                                                  - -
                                                                                   
                                                                                  - + 'buttons_form']) ?> +
                                                                                  +
                                                                                   
                                                                                  + +
                                                                                   
                                                                                  + -
                                                                                   
                                                                                  -
                                                                                  - +
                                                                                   
                                                                                  +
                                                                                  + - -
                                                                                  -
                                                                                  -
                                                                                  -
                                                                                  - 'control-label', 'id' => 'comment_label', 'for' => 'comment']) ?> - 'comment', 'id' => 'comment', 'class' => 'form-control input-sm', 'value' => $comment, 'rows' => '2']) ?> -
                                                                                  -
                                                                                  -
                                                                                  -
                                                                                  -
                                                                                  -
                                                                                  - -
                                                                                  + +
                                                                                  +
                                                                                  +
                                                                                  +
                                                                                  + 'control-label', 'id' => 'comment_label', 'for' => 'comment']) ?> + 'comment', 'id' => 'comment', 'class' => 'form-control input-sm', 'value' => $comment, 'rows' => '2']) ?> +
                                                                                  +
                                                                                  +
                                                                                  +
                                                                                  +
                                                                                  +
                                                                                  + +
                                                                                  - -
                                                                                  - -
                                                                                  - - -
                                                                                  - -
                                                                                  - -
                                                                                  -
                                                                                  - -
                                                                                  -
                                                                                  -
                                                                                  - -
                                                                                  + +
                                                                                  + +
                                                                                  + + +
                                                                                  + +
                                                                                  + +
                                                                                  +
                                                                                  + +
                                                                                  +
                                                                                  +
                                                                                  + +
                                                                                  -
                                                                                  -
                                                                                  - # - 'sales_invoice_number', 'id' => 'sales_invoice_number', 'class' => 'form-control input-sm', 'value' => $invoice_number]) ?> -
                                                                                  -
                                                                                  -
                                                                                  -
                                                                                  - -
                                                                                  - - -
                                                                                  +
                                                                                  +
                                                                                  + # + 'sales_invoice_number', 'id' => 'sales_invoice_number', 'class' => 'form-control input-sm', 'value' => $invoice_number]) ?> +
                                                                                  +
                                                                                  +
                                                                                  +
                                                                                  + +
                                                                                  + + +
                                                                                  diff --git a/app/Views/sales/suspended.php b/app/Views/sales/suspended.php index 84459f529..97950a62f 100644 --- a/app/Views/sales/suspended.php +++ b/app/Views/sales/suspended.php @@ -11,89 +11,89 @@ use App\Models\Customer; - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                                                                                  Dinner_table->get_name($suspended_sale['dinner_table_id'])) ?> - get_info($suspended_sale['customer_id']); - echo esc("$customer_data->first_name $customer_data->last_name"); - } - else - { - ?> -   - - - get_info($suspended_sale['employee_id']); - echo esc("$employee_data->first_name $employee_data->last_name"); - } - else - { - ?> -   - - - - - - -
                                                                                  Dinner_table->get_name($suspended_sale['dinner_table_id'])) ?> + get_info($suspended_sale['customer_id']); + echo esc("$customer_data->first_name $customer_data->last_name"); + } + else + { + ?> +   + + + get_info($suspended_sale['employee_id']); + echo esc("$employee_data->first_name $employee_data->last_name"); + } + else + { + ?> +   + + + + + + +
                                                                                  diff --git a/app/Views/sales/tax_invoice.php b/app/Views/sales/tax_invoice.php index e8b9516b4..20b0152b2 100644 --- a/app/Views/sales/tax_invoice.php +++ b/app/Views/sales/tax_invoice.php @@ -24,8 +24,8 @@ $error_message"; - exit; + echo "
                                                                                  $error_message
                                                                                  "; + exit; } ?> @@ -33,21 +33,21 @@ if(isset($error_message)) @@ -55,247 +55,247 @@ $(document).ready(function() $print_after_sale, 'selected_printer' => 'invoice_printer']) ?>
                                                                                  - -
                                                                                  -
                                                                                  - -
                                                                                  - -
                                                                                  + +
                                                                                  +
                                                                                  + +
                                                                                  + +
                                                                                  - -
                                                                                  + +
                                                                                  -
                                                                                  -
                                                                                  - - - - - - - - - - - - - -
                                                                                  -
                                                                                  +
                                                                                  +
                                                                                  + + + + + + + + + + + + + +
                                                                                  +
                                                                                  - - - - - - - - - - - 0) - { - $invoice_columns += 1; //TODO: $invoice_columns++; ? - ?> - - - - +
                                                                                  + + + + + + + + + + 0) + { + $invoice_columns += 1; //TODO: $invoice_columns++; ? + ?> + + + + - $item) - { - if($item['print_option'] == PRINT_YES) //TODO: === ? - { - ?> - - - - - - - - - - 0): ?> - - - - - - - - - - - + $item) + { + if($item['print_option'] == PRINT_YES) //TODO: === ? + { + ?> + + + + + + + + + + 0): ?> + + + + + + + + + + + - - - + + + - - - - - + + + + + - $tax) - { - ?> - - - - - - + $tax) + { + ?> + + + + + + - - - - - + + + + + - $payment) - { - $only_sale_check |= $payment['payment_type'] == lang('Sales.check'); - $splitpayment = explode(':', $payment['payment_type']); - $show_giftcard_remainder |= $splitpayment[0] == lang('Sales.giftcard'); - ?> - - - - - - $payment) + { + $only_sale_check |= $payment['payment_type'] == lang('Sales.check'); + $splitpayment = explode(':', $payment['payment_type']); + $show_giftcard_remainder |= $splitpayment[0] == lang('Sales.giftcard'); + ?> + + + + + + - - - - - + + + + + - - - - - - -
                                                                                  - -
                                                                                  + +
                                                                                  /td> -
                                                                                  /td> +
                                                                                  := 0 ? ($only_sale_check ? 'Sales.check_balance' : 'Sales.change_due') : 'Sales.amount_due') ?>
                                                                                  + if(!empty($payments)) + { + ?> + + : + = 0 ? ($only_sale_check ? 'Sales.check_balance' : 'Sales.change_due') : 'Sales.amount_due') ?> + + + + -
                                                                                  -
                                                                                  -
                                                                                  - - - -
                                                                                  -
                                                                                  -
                                                                                  -
                                                                                  - <?= esc($barcode) ?>
                                                                                  - -
                                                                                  -
                                                                                  +
                                                                                  +
                                                                                  +
                                                                                  + + + +
                                                                                  +
                                                                                  +
                                                                                  +
                                                                                  + <?= esc($barcode) ?>
                                                                                  + +
                                                                                  +
                                                                                  diff --git a/app/Views/sales/work_order.php b/app/Views/sales/work_order.php index 78da9a7e4..021a8cf41 100644 --- a/app/Views/sales/work_order.php +++ b/app/Views/sales/work_order.php @@ -22,226 +22,226 @@ $error_message"; - exit; + echo "
                                                                                  $error_message
                                                                                  "; + exit; } ?> - + + send_email(); + + }); + $print_after_sale, 'selected_printer' => 'invoice_printer']) ?>
                                                                                  - -
                                                                                  -
                                                                                  - -
                                                                                  - -
                                                                                  + +
                                                                                  +
                                                                                  + +
                                                                                  + +
                                                                                  - -
                                                                                  + +
                                                                                  -
                                                                                  -
                                                                                  - - - - - - - - - - - - - - - -
                                                                                  -
                                                                                  +
                                                                                  +
                                                                                  + + + + + + + + + + + + + + + +
                                                                                  +
                                                                                  - - - - - - - - - - $item) - { - if($item['print_option'] == PRINT_YES) - { - ?> - - - - - - - - +
                                                                                  + + + + + + + + + $item) + { + if($item['print_option'] == PRINT_YES) + { + ?> + + + + + + + + - - - - - - - - - - - - - - - - - $tax) - { - ?> - - - - - - - - - - - - - $payment) - { - $only_sale_check |= $payment['payment_type'] == lang('Sales.check'); - $splitpayment = explode(':', $payment['payment_type']); //TODO: $splitpayment does not match naming conventions for the project - $show_giftcard_remainder |= $splitpayment[0] == lang('Sales.giftcard'); - ?> - - - - - - -
                                                                                  -
                                                                                  -
                                                                                  -
                                                                                  - -
                                                                                  -
                                                                                  -
                                                                                  + + + + + + + + + + + + + + + + + $tax) + { + ?> + + + + + + + + + + + + + $payment) + { + $only_sale_check |= $payment['payment_type'] == lang('Sales.check'); + $splitpayment = explode(':', $payment['payment_type']); //TODO: $splitpayment does not match naming conventions for the project + $show_giftcard_remainder |= $splitpayment[0] == lang('Sales.giftcard'); + ?> + + + + + + + +
                                                                                  +
                                                                                  +
                                                                                  + +
                                                                                  +
                                                                                  +
                                                                                  diff --git a/app/Views/sales/work_order_email.php b/app/Views/sales/work_order_email.php index 5216eae09..4d670b8bc 100644 --- a/app/Views/sales/work_order_email.php +++ b/app/Views/sales/work_order_email.php @@ -15,134 +15,134 @@ - - + + $error_message"; - exit; - } + if(isset($error_message)) + { + echo "
                                                                                  $error_message
                                                                                  "; + exit; + } ?>
                                                                                  - - - - - - - - - - -
                                                                                  -
                                                                                  -
                                                                                  -
                                                                                  -
                                                                                  -
                                                                                  - - - - - - - - - - 0) - { - ?> - - - - - -
                                                                                  -
                                                                                  + + + + + + + + + + +
                                                                                  +
                                                                                  +
                                                                                  +
                                                                                  +
                                                                                  +
                                                                                  + + + + + + + + + + 0) + { + ?> + + + + + +
                                                                                  +
                                                                                  - - - - - - - - - +
                                                                                  + + + + + + + + - $item) - { - if($item['print_option'] == PRINT_YES) - { - ?> - - - - - - - - - + $item) + { + if($item['print_option'] == PRINT_YES) + { + ?> + + + + + + + + + - - - + + + - - - - - + + + + + - $value) - { - ?> - - - - - - + $value) + { + ?> + + + + + + - - - - - -
                                                                                  + + + + + + -
                                                                                  -
                                                                                  -
                                                                                  - -
                                                                                  -
                                                                                  -
                                                                                  +
                                                                                  +
                                                                                  +
                                                                                  + +
                                                                                  +
                                                                                  +
                                                                                  diff --git a/app/Views/suppliers/form.php b/app/Views/suppliers/form.php index 9cca0347a..72c1b2f20 100644 --- a/app/Views/suppliers/form.php +++ b/app/Views/suppliers/form.php @@ -10,103 +10,103 @@
                                                                                    person_id", ['id' => 'supplier_form', 'class' => 'form-horizontal']) ?> -
                                                                                    -
                                                                                    - 'required control-label col-xs-3']) ?> -
                                                                                    - 'company_name', - 'id' => 'company_name_input', - 'class' => 'form-control input-sm', - 'value' => html_entity_decode($person_info->company_name) - ]) - ?> -
                                                                                    -
                                                                                    +
                                                                                    +
                                                                                    + 'required control-label col-xs-3']) ?> +
                                                                                    + 'company_name', + 'id' => 'company_name_input', + 'class' => 'form-control input-sm', + 'value' => html_entity_decode($person_info->company_name) + ]) + ?> +
                                                                                    +
                                                                                    -
                                                                                    - 'required control-label col-xs-3']) ?> -
                                                                                    - category, ['class' => 'form-control', 'id' => 'category']) ?> -
                                                                                    -
                                                                                    +
                                                                                    + 'required control-label col-xs-3']) ?> +
                                                                                    + category, ['class' => 'form-control', 'id' => 'category']) ?> +
                                                                                    +
                                                                                    -
                                                                                    - 'control-label col-xs-3']) ?> -
                                                                                    - 'agency_name', - 'id' => 'agency_name_input', - 'class' => 'form-control input-sm', - 'value' => $person_info->agency_name - ]) - ?> -
                                                                                    -
                                                                                    +
                                                                                    + 'control-label col-xs-3']) ?> +
                                                                                    + 'agency_name', + 'id' => 'agency_name_input', + 'class' => 'form-control input-sm', + 'value' => $person_info->agency_name + ]) + ?> +
                                                                                    +
                                                                                    - + -
                                                                                    - 'control-label col-xs-3']) ?> -
                                                                                    - 'account_number', - 'id' => 'account_number', - 'class' => 'form-control input-sm', - 'value' => $person_info->account_number - ]) - ?> -
                                                                                    -
                                                                                    +
                                                                                    + 'control-label col-xs-3']) ?> +
                                                                                    + 'account_number', + 'id' => 'account_number', + 'class' => 'form-control input-sm', + 'value' => $person_info->account_number + ]) + ?> +
                                                                                    +
                                                                                    -
                                                                                    - 'control-label col-xs-3']) ?> -
                                                                                    - 'tax_id', - 'id' => 'tax_id', - 'class' => 'form-control input-sm', - 'value' => $person_info->tax_id - ]) - ?> -
                                                                                    -
                                                                                    -
                                                                                    +
                                                                                    + 'control-label col-xs-3']) ?> +
                                                                                    + 'tax_id', + 'id' => 'tax_id', + 'class' => 'form-control input-sm', + 'value' => $person_info->tax_id + ]) + ?> +
                                                                                    +
                                                                                    +
                                                                                    diff --git a/app/Views/taxes/manage.php b/app/Views/taxes/manage.php index c1ee98c08..a069490ed 100644 --- a/app/Views/taxes/manage.php +++ b/app/Views/taxes/manage.php @@ -6,37 +6,37 @@
                                                                                    -
                                                                                    - -
                                                                                    -
                                                                                    - -
                                                                                    -
                                                                                    - -
                                                                                    -
                                                                                    - -
                                                                                    +
                                                                                    + +
                                                                                    +
                                                                                    + +
                                                                                    +
                                                                                    + +
                                                                                    +
                                                                                    + +
                                                                                    diff --git a/app/Views/taxes/tax_categories.php b/app/Views/taxes/tax_categories.php index 6a602b080..b81b54261 100644 --- a/app/Views/taxes/tax_categories.php +++ b/app/Views/taxes/tax_categories.php @@ -5,130 +5,130 @@ ?> 'tax_categories_form', 'class' => 'form-horizontal']) ?>
                                                                                    -
                                                                                    -
                                                                                    -
                                                                                      +
                                                                                      +
                                                                                      +
                                                                                        -
                                                                                        - -
                                                                                        +
                                                                                        + +
                                                                                        - 'submit_tax_categories', - 'id' => 'submit_tax_categories', - 'value' => lang('Common.submit'), - 'class' => 'btn btn-primary btn-sm pull-right' - ]) ?> -
                                                                                        + 'submit_tax_categories', + 'id' => 'submit_tax_categories', + 'value' => lang('Common.submit'), + 'class' => 'btn btn-primary btn-sm pull-right' + ]) ?> +
                                                                                        diff --git a/app/Views/taxes/tax_codes.php b/app/Views/taxes/tax_codes.php index ed0a3ebf2..efeb3db05 100644 --- a/app/Views/taxes/tax_codes.php +++ b/app/Views/taxes/tax_codes.php @@ -5,129 +5,129 @@ ?> 'tax_codes_form', 'class' => 'form-horizontal']) ?>
                                                                                        -
                                                                                        -
                                                                                        -
                                                                                          +
                                                                                          +
                                                                                          +
                                                                                            -
                                                                                            - $tax_codes]) ?> -
                                                                                            +
                                                                                            + $tax_codes]) ?> +
                                                                                            - 'submit_tax_codes', - 'id' => 'submit_tax_codes', - 'value' => lang('Common.submit'), - 'class' => 'btn btn-primary btn-sm pull-right']) ?> -
                                                                                            + 'submit_tax_codes', + 'id' => 'submit_tax_codes', + 'value' => lang('Common.submit'), + 'class' => 'btn btn-primary btn-sm pull-right']) ?> +
                                                                                            diff --git a/app/Views/taxes/tax_jurisdictions.php b/app/Views/taxes/tax_jurisdictions.php index 9e3236477..1ccc7a746 100644 --- a/app/Views/taxes/tax_jurisdictions.php +++ b/app/Views/taxes/tax_jurisdictions.php @@ -6,131 +6,131 @@ ?> 'tax_jurisdictions_form', 'class' => 'form-horizontal']) ?>
                                                                                            -
                                                                                            -
                                                                                            -
                                                                                              +
                                                                                              +
                                                                                              +
                                                                                                -
                                                                                                - -
                                                                                                +
                                                                                                + +
                                                                                                - 'submit_tax_jurisdictions', - 'id' => 'submit_tax_jurisdictions', - 'value' => lang('Common.submit'), - 'class' => 'btn btn-primary btn-sm pull-right']) ?> -
                                                                                                + 'submit_tax_jurisdictions', + 'id' => 'submit_tax_jurisdictions', + 'value' => lang('Common.submit'), + 'class' => 'btn btn-primary btn-sm pull-right']) ?> +
                                                                                                diff --git a/app/Views/taxes/tax_rates.php b/app/Views/taxes/tax_rates.php index b3c2bbbce..2219c9c78 100644 --- a/app/Views/taxes/tax_rates.php +++ b/app/Views/taxes/tax_rates.php @@ -8,31 +8,31 @@
                                                                                                - +
                                                                                                -
                                                                                                - -
                                                                                                +
                                                                                                + +
                                                                                                -
                                                                                                +
                                                                                                diff --git a/app/Views/taxes/tax_rates_form.php b/app/Views/taxes/tax_rates_form.php index fc02bef4a..def214e82 100644 --- a/app/Views/taxes/tax_rates_form.php +++ b/app/Views/taxes/tax_rates_form.php @@ -15,50 +15,50 @@
                                                                                                  'tax_code_form', 'class' => 'form-horizontal']) ?> -
                                                                                                  -
                                                                                                  - 'control-label col-xs-3']) ?> -
                                                                                                  - 'form-control input-sm']) ?> -
                                                                                                  -
                                                                                                  +
                                                                                                  +
                                                                                                  + 'control-label col-xs-3']) ?> +
                                                                                                  + 'form-control input-sm']) ?> +
                                                                                                  +
                                                                                                  -
                                                                                                  - 'control-label col-xs-3']) ?> -
                                                                                                  - 'form-control input-sm']) ?> -
                                                                                                  -
                                                                                                  +
                                                                                                  + 'control-label col-xs-3']) ?> +
                                                                                                  + 'form-control input-sm']) ?> +
                                                                                                  +
                                                                                                  -
                                                                                                  - 'control-label col-xs-3']) ?> -
                                                                                                  - 'form-control input-sm']) ?> -
                                                                                                  -
                                                                                                  +
                                                                                                  + 'control-label col-xs-3']) ?> +
                                                                                                  + 'form-control input-sm']) ?> +
                                                                                                  +
                                                                                                  -
                                                                                                  - 'control-label col-xs-3']) ?> -
                                                                                                  - 'tax_rate', - 'id' => 'tax_rate', - 'class' => 'form-control input-sm text-uppercase', - 'value' => $tax_rate - ]) - ?> - % -
                                                                                                  +
                                                                                                  + 'control-label col-xs-3']) ?> +
                                                                                                  + 'tax_rate', + 'id' => 'tax_rate', + 'class' => 'form-control input-sm text-uppercase', + 'value' => $tax_rate + ]) + ?> + % +
                                                                                                  -
                                                                                                  +
                                                                                                  -
                                                                                                  - 'control-label col-xs-3']) ?> -
                                                                                                  - 'form-control input-sm']) ?> -
                                                                                                  -
                                                                                                  -
                                                                                                  +
                                                                                                  + 'control-label col-xs-3']) ?> +
                                                                                                  + 'form-control input-sm']) ?> +
                                                                                                  +
                                                                                                  +
                                                                                                  diff --git a/app/Views/viewData.php b/app/Views/viewData.php index 4c696aace..4ed457a6c 100644 --- a/app/Views/viewData.php +++ b/app/Views/viewData.php @@ -1 +1 @@ -load->vars() does not exist in CI4 +load->vars() does not exist in CI4 diff --git a/composer.json b/composer.json index f8605ec44..a771ccb82 100644 --- a/composer.json +++ b/composer.json @@ -1,78 +1,78 @@ { - "name": "opensourcepos/opensourcepos", - "description": "Open Source Point of Sale is a web based POS system written in the PHP language. It uses MySQL as backend and has a simple user interface", - "license": "MIT", - "authors": [ - { - "name": "jekkos" - }, - { - "name": "FrancescoUK" - }, - { - "name": "objecttothis" - }, - { - "name": "steveireland" - } - ], - "type": "project", - "keywords": [ - "point-of-sale", - "POS" - ], - "homepage": "https://opensourcepos.org", - "support": { - "issues": "https://github.com/opensourcepos/opensourcepos/issues", - "forum": "https://github.com/opensourcepos/opensourcepos/discussions", - "wiki": "https://github.com/opensourcepos/opensourcepos/wiki", - "source": "https://github.com/opensourcepos/opensourcepos", - "docs": "https://github.com/opensourcepos/opensourcepos/wiki#documentation", - "matrix": "https://matrix.to/#/#opensourcepos_Lobby:gitter.im" - }, - "require": { - "php": "^8.1", - "codeigniter4/framework": "4.5.5", - "dompdf/dompdf": "^2.0.3", - "ezyang/htmlpurifier": "^4.17", - "laminas/laminas-escaper": "^2.13", - "paragonie/random_compat": "^2.0.21", - "picqer/php-barcode-generator": "^2.4.0", - "tamtamchik/namecase": "^3.0.0" - }, - "require-dev": { - "codeigniter/coding-standard": "^1.7", - "codeigniter4/devkit": "^1.2.3", - "fakerphp/faker": "^1.23.0", - "friendsofphp/php-cs-fixer": "^3.47.1", - "kint-php/kint": "^5.0.4", - "mikey179/vfsstream": "^1.6", - "nexusphp/cs-config": "^3.6", - "phpunit/phpunit": "^10.5.16 || ^11.2", - "predis/predis": "^1.1 || ^2.0", - "roave/security-advisories": "dev-latest" - }, - "replace": { - "psr/log": "*" - }, - "autoload": { - "psr-4": { - "App\\": "app/", - "CodeIgniter\\": "vendor/codeigniter4/framework/system/" - }, - "exclude-from-classmap": [ - "**/Database/Migrations/**" - ] - }, - "config": { - "allow-plugins": { - "phpstan/extension-installer": true - }, - "optimize-autoloader": true, - "preferred-install": "dist", - "sort-packages": true - }, - "scripts": { - "test": "phpunit" - } + "name": "opensourcepos/opensourcepos", + "description": "Open Source Point of Sale is a web based POS system written in the PHP language. It uses MySQL as backend and has a simple user interface", + "license": "MIT", + "authors": [ + { + "name": "jekkos" + }, + { + "name": "FrancescoUK" + }, + { + "name": "objecttothis" + }, + { + "name": "steveireland" + } + ], + "type": "project", + "keywords": [ + "point-of-sale", + "POS" + ], + "homepage": "https://opensourcepos.org", + "support": { + "issues": "https://github.com/opensourcepos/opensourcepos/issues", + "forum": "https://github.com/opensourcepos/opensourcepos/discussions", + "wiki": "https://github.com/opensourcepos/opensourcepos/wiki", + "source": "https://github.com/opensourcepos/opensourcepos", + "docs": "https://github.com/opensourcepos/opensourcepos/wiki#documentation", + "matrix": "https://matrix.to/#/#opensourcepos_Lobby:gitter.im" + }, + "require": { + "php": "^8.1", + "codeigniter4/framework": "4.5.5", + "dompdf/dompdf": "^2.0.3", + "ezyang/htmlpurifier": "^4.17", + "laminas/laminas-escaper": "^2.13", + "paragonie/random_compat": "^2.0.21", + "picqer/php-barcode-generator": "^2.4.0", + "tamtamchik/namecase": "^3.0.0" + }, + "require-dev": { + "codeigniter/coding-standard": "^1.7", + "codeigniter4/devkit": "^1.2.3", + "fakerphp/faker": "^1.23.0", + "friendsofphp/php-cs-fixer": "^3.47.1", + "kint-php/kint": "^5.0.4", + "mikey179/vfsstream": "^1.6", + "nexusphp/cs-config": "^3.6", + "phpunit/phpunit": "^10.5.16 || ^11.2", + "predis/predis": "^1.1 || ^2.0", + "roave/security-advisories": "dev-latest" + }, + "replace": { + "psr/log": "*" + }, + "autoload": { + "psr-4": { + "App\\": "app/", + "CodeIgniter\\": "vendor/codeigniter4/framework/system/" + }, + "exclude-from-classmap": [ + "**/Database/Migrations/**" + ] + }, + "config": { + "allow-plugins": { + "phpstan/extension-installer": true + }, + "optimize-autoloader": true, + "preferred-install": "dist", + "sort-packages": true + }, + "scripts": { + "test": "phpunit" + } } diff --git a/docker/data/nginx/nginx.tmpl b/docker/data/nginx/nginx.tmpl index 4ffec7436..43df13309 100644 --- a/docker/data/nginx/nginx.tmpl +++ b/docker/data/nginx/nginx.tmpl @@ -6,64 +6,64 @@ events { http { - error_log /etc/nginx/error_log.log warn; + error_log /etc/nginx/error_log.log warn; - server { - listen 80; - server_name ${WEB_DOMAIN}; - server_tokens off; + server { + listen 80; + server_name ${WEB_DOMAIN}; + server_tokens off; - location /.well-known/acme-challenge/ { - root /var/www/certbot; - } + location /.well-known/acme-challenge/ { + root /var/www/certbot; + } - location / { - return 301 https://${ESC}host${ESC}request_uri; - } - } + location / { + return 301 https://${ESC}host${ESC}request_uri; + } + } - server { - listen 443 ssl; - server_name ${WEB_DOMAIN}; - server_tokens off; - - client_max_body_size 10M; + server { + listen 443 ssl; + server_name ${WEB_DOMAIN}; + server_tokens off; - ssl_certificate /etc/letsencrypt/live/${WEB_DOMAIN}/fullchain.pem; - ssl_certificate_key /etc/letsencrypt/live/${WEB_DOMAIN}/privkey.pem; - include /etc/letsencrypt/options-ssl-nginx.conf; - ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; + client_max_body_size 10M; - location / { - proxy_pass http://ospos:80; - proxy_redirect off; - proxy_set_header Host ${ESC}host; - proxy_set_header X-Real-IP ${ESC}remote_addr; - proxy_set_header X-Forwarded-For ${ESC}proxy_add_x_forwarded_for; - proxy_set_header X-Forwarded-Host ${ESC}server_name; - proxy_set_header X-Forwarded-Proto ${ESC}scheme; - } - } + ssl_certificate /etc/letsencrypt/live/${WEB_DOMAIN}/fullchain.pem; + ssl_certificate_key /etc/letsencrypt/live/${WEB_DOMAIN}/privkey.pem; + include /etc/letsencrypt/options-ssl-nginx.conf; + ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; - server { - listen 8000 ssl; - server_name ${WEB_DOMAIN}; - server_tokens off; + location / { + proxy_pass http://ospos:80; + proxy_redirect off; + proxy_set_header Host ${ESC}host; + proxy_set_header X-Real-IP ${ESC}remote_addr; + proxy_set_header X-Forwarded-For ${ESC}proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Host ${ESC}server_name; + proxy_set_header X-Forwarded-Proto ${ESC}scheme; + } + } - ssl_certificate /etc/letsencrypt/live/${WEB_DOMAIN}/fullchain.pem; - ssl_certificate_key /etc/letsencrypt/live/${WEB_DOMAIN}/privkey.pem; - include /etc/letsencrypt/options-ssl-nginx.conf; - ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; + server { + listen 8000 ssl; + server_name ${WEB_DOMAIN}; + server_tokens off; - location / { - proxy_pass http://phpmyadmin:80; - proxy_redirect off; - proxy_set_header Host ${ESC}host; - proxy_set_header X-Real-IP ${ESC}remote_addr; - proxy_set_header X-Forwarded-For ${ESC}proxy_add_x_forwarded_for; - proxy_set_header X-Forwarded-Host ${ESC}server_name; - proxy_set_header X-Forwarded-Proto ${ESC}scheme; - } - } + ssl_certificate /etc/letsencrypt/live/${WEB_DOMAIN}/fullchain.pem; + ssl_certificate_key /etc/letsencrypt/live/${WEB_DOMAIN}/privkey.pem; + include /etc/letsencrypt/options-ssl-nginx.conf; + ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; + + location / { + proxy_pass http://phpmyadmin:80; + proxy_redirect off; + proxy_set_header Host ${ESC}host; + proxy_set_header X-Real-IP ${ESC}remote_addr; + proxy_set_header X-Forwarded-For ${ESC}proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Host ${ESC}server_name; + proxy_set_header X-Forwarded-Proto ${ESC}scheme; + } + } } diff --git a/gulpfile.js b/gulpfile.js index d0b855edd..3579ca809 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -25,10 +25,10 @@ var prod1js; // Clear and remove the resources folder gulp.task('clean', function () { - return pipeline( - gulp.src('./public/resources', {read: false, allowEmpty: true}), - clean() - ); + return pipeline( + gulp.src('./public/resources', {read: false, allowEmpty: true}), + clean() + ); }); gulp.task('compress', function() { @@ -39,41 +39,41 @@ gulp.task('compress', function() { // Copy the bootswatch styles into their own folder so OSPOS can select one from the collection gulp.task('copy-bootswatch', function() { - pipeline(gulp.src('./node_modules/bootswatch/cerulean/*.min.css'),gulp.dest('public/resources/bootswatch/cerulean')); - pipeline(gulp.src('./node_modules/bootswatch/cosmo/*.min.css'),gulp.dest('public/resources/bootswatch/cosmo')); - pipeline(gulp.src('./node_modules/bootswatch/cyborg/*.min.css'),gulp.dest('public/resources/bootswatch/cyborg')); - pipeline(gulp.src('./node_modules/bootswatch/darkly/*.min.css'),gulp.dest('public/resources/bootswatch/darkly')); - pipeline(gulp.src('./node_modules/bootswatch/flatly/*.min.css'),gulp.dest('public/resources/bootswatch/flatly')); - pipeline(gulp.src('./node_modules/bootswatch/journal/*.min.css'),gulp.dest('public/resources/bootswatch/journal')); - pipeline(gulp.src('./node_modules/bootswatch/lumen/*.min.css'),gulp.dest('public/resources/bootswatch/lumen')); - pipeline(gulp.src('./node_modules/bootswatch/paper/*.min.css'),gulp.dest('public/resources/bootswatch/paper')); - pipeline(gulp.src('./node_modules/bootswatch/readable/*.min.css'),gulp.dest('public/resources/bootswatch/readable')); - pipeline(gulp.src('./node_modules/bootswatch/sandstone/*.min.css'),gulp.dest('public/resources/bootswatch/sandstone')); - pipeline(gulp.src('./node_modules/bootswatch/simplex/*.min.css'),gulp.dest('public/resources/bootswatch/simplex')); - pipeline(gulp.src('./node_modules/bootswatch/slate/*.min.css'),gulp.dest('public/resources/bootswatch/slate')); - pipeline(gulp.src('./node_modules/bootswatch/spacelab/*.min.css'),gulp.dest('public/resources/bootswatch/spacelab')); - pipeline(gulp.src('./node_modules/bootswatch/superhero/*.min.css'),gulp.dest('public/resources/bootswatch/superhero')); - pipeline(gulp.src('./node_modules/bootswatch/united/*.min.css'),gulp.dest('public/resources/bootswatch/united')); - pipeline(gulp.src('./node_modules/bootswatch/yeti/*.min.css'),gulp.dest('public/resources/bootswatch/yeti')); - return pipeline(gulp.src('./node_modules/bootswatch/fonts/*.*', {encoding:false}),gulp.dest('public/resources/bootswatch/fonts')); + pipeline(gulp.src('./node_modules/bootswatch/cerulean/*.min.css'),gulp.dest('public/resources/bootswatch/cerulean')); + pipeline(gulp.src('./node_modules/bootswatch/cosmo/*.min.css'),gulp.dest('public/resources/bootswatch/cosmo')); + pipeline(gulp.src('./node_modules/bootswatch/cyborg/*.min.css'),gulp.dest('public/resources/bootswatch/cyborg')); + pipeline(gulp.src('./node_modules/bootswatch/darkly/*.min.css'),gulp.dest('public/resources/bootswatch/darkly')); + pipeline(gulp.src('./node_modules/bootswatch/flatly/*.min.css'),gulp.dest('public/resources/bootswatch/flatly')); + pipeline(gulp.src('./node_modules/bootswatch/journal/*.min.css'),gulp.dest('public/resources/bootswatch/journal')); + pipeline(gulp.src('./node_modules/bootswatch/lumen/*.min.css'),gulp.dest('public/resources/bootswatch/lumen')); + pipeline(gulp.src('./node_modules/bootswatch/paper/*.min.css'),gulp.dest('public/resources/bootswatch/paper')); + pipeline(gulp.src('./node_modules/bootswatch/readable/*.min.css'),gulp.dest('public/resources/bootswatch/readable')); + pipeline(gulp.src('./node_modules/bootswatch/sandstone/*.min.css'),gulp.dest('public/resources/bootswatch/sandstone')); + pipeline(gulp.src('./node_modules/bootswatch/simplex/*.min.css'),gulp.dest('public/resources/bootswatch/simplex')); + pipeline(gulp.src('./node_modules/bootswatch/slate/*.min.css'),gulp.dest('public/resources/bootswatch/slate')); + pipeline(gulp.src('./node_modules/bootswatch/spacelab/*.min.css'),gulp.dest('public/resources/bootswatch/spacelab')); + pipeline(gulp.src('./node_modules/bootswatch/superhero/*.min.css'),gulp.dest('public/resources/bootswatch/superhero')); + pipeline(gulp.src('./node_modules/bootswatch/united/*.min.css'),gulp.dest('public/resources/bootswatch/united')); + pipeline(gulp.src('./node_modules/bootswatch/yeti/*.min.css'),gulp.dest('public/resources/bootswatch/yeti')); + return pipeline(gulp.src('./node_modules/bootswatch/fonts/*.*', {encoding:false}),gulp.dest('public/resources/bootswatch/fonts')); }); // Copy the bootswatch styles into their own folder so OSPOS can select one from the collection gulp.task('copy-bootswatch5', function() { - pipeline(gulp.src('./node_modules/bootswatch5/dist/cerulean/*.min.css'),gulp.dest('public/resources/bootswatch5/cerulean')); - pipeline(gulp.src('./node_modules/bootswatch5/dist/cosmo/*.min.css'),gulp.dest('public/resources/bootswatch5/cosmo')); - pipeline(gulp.src('./node_modules/bootswatch5/dist/cyborg/*.min.css'),gulp.dest('public/resources/bootswatch5/cyborg')); - pipeline(gulp.src('./node_modules/bootswatch5/dist/darkly/*.min.css'),gulp.dest('public/resources/bootswatch5/darkly')); - pipeline(gulp.src('./node_modules/bootswatch5/dist/flatly/*.min.css'),gulp.dest('public/resources/bootswatch5/flatly')); - pipeline(gulp.src('./node_modules/bootswatch5/dist/journal/*.min.css'),gulp.dest('public/resources/bootswatch5/journal')); - pipeline(gulp.src('./node_modules/bootswatch5/dist/lumen/*.min.css'),gulp.dest('public/resources/bootswatch5/lumen')); - pipeline(gulp.src('./node_modules/bootswatch5/dist/sandstone/*.min.css'),gulp.dest('public/resources/bootswatch5/sandstone')); - pipeline(gulp.src('./node_modules/bootswatch5/dist/simplex/*.min.css'),gulp.dest('public/resources/bootswatch5/simplex')); - pipeline(gulp.src('./node_modules/bootswatch5/dist/slate/*.min.css'),gulp.dest('public/resources/bootswatch5/slate')); - pipeline(gulp.src('./node_modules/bootswatch5/dist/spacelab/*.min.css'),gulp.dest('public/resources/bootswatch5/spacelab')); - pipeline(gulp.src('./node_modules/bootswatch5/dist/superhero/*.min.css'),gulp.dest('public/resources/bootswatch5/superhero')); - pipeline(gulp.src('./node_modules/bootswatch5/dist/united/*.min.css'),gulp.dest('public/resources/bootswatch5/united')); - return pipeline(gulp.src('./node_modules/bootswatch5/dist/yeti/*.min.css'),gulp.dest('public/resources/bootswatch5/yeti')); + pipeline(gulp.src('./node_modules/bootswatch5/dist/cerulean/*.min.css'),gulp.dest('public/resources/bootswatch5/cerulean')); + pipeline(gulp.src('./node_modules/bootswatch5/dist/cosmo/*.min.css'),gulp.dest('public/resources/bootswatch5/cosmo')); + pipeline(gulp.src('./node_modules/bootswatch5/dist/cyborg/*.min.css'),gulp.dest('public/resources/bootswatch5/cyborg')); + pipeline(gulp.src('./node_modules/bootswatch5/dist/darkly/*.min.css'),gulp.dest('public/resources/bootswatch5/darkly')); + pipeline(gulp.src('./node_modules/bootswatch5/dist/flatly/*.min.css'),gulp.dest('public/resources/bootswatch5/flatly')); + pipeline(gulp.src('./node_modules/bootswatch5/dist/journal/*.min.css'),gulp.dest('public/resources/bootswatch5/journal')); + pipeline(gulp.src('./node_modules/bootswatch5/dist/lumen/*.min.css'),gulp.dest('public/resources/bootswatch5/lumen')); + pipeline(gulp.src('./node_modules/bootswatch5/dist/sandstone/*.min.css'),gulp.dest('public/resources/bootswatch5/sandstone')); + pipeline(gulp.src('./node_modules/bootswatch5/dist/simplex/*.min.css'),gulp.dest('public/resources/bootswatch5/simplex')); + pipeline(gulp.src('./node_modules/bootswatch5/dist/slate/*.min.css'),gulp.dest('public/resources/bootswatch5/slate')); + pipeline(gulp.src('./node_modules/bootswatch5/dist/spacelab/*.min.css'),gulp.dest('public/resources/bootswatch5/spacelab')); + pipeline(gulp.src('./node_modules/bootswatch5/dist/superhero/*.min.css'),gulp.dest('public/resources/bootswatch5/superhero')); + pipeline(gulp.src('./node_modules/bootswatch5/dist/united/*.min.css'),gulp.dest('public/resources/bootswatch5/united')); + return pipeline(gulp.src('./node_modules/bootswatch5/dist/yeti/*.min.css'),gulp.dest('public/resources/bootswatch5/yeti')); }); // /public/resources/ospos - contains the minimized files to be packed into opensourcepos.min.[css/js] @@ -86,194 +86,194 @@ gulp.task('copy-bootswatch5', function() { gulp.task('debug-js', function() { - var debugjs = gulp.src(['./node_modules/jquery/dist/jquery.js', - './node_modules/jquery-form/src/jquery.form.js', - './node_modules/jquery-validation/dist/jquery.validate.js', - './node_modules/jquery-ui-dist/jquery-ui.js', - './node_modules/bootstrap/dist/js/bootstrap.js', - './node_modules/bootstrap3-dialog/dist/js/bootstrap-dialog.js', - './node_modules/jasny-bootstrap/dist/js/jasny-bootstrap.js', - './node_modules/bootstrap-datetime-picker/js/bootstrap-datetimepicker.js', - './node_modules/bootstrap-select/dist/js/bootstrap-select.js', - './node_modules/bootstrap-table/dist/bootstrap-table.js', - './node_modules/bootstrap-table/dist/extensions/export/bootstrap-table-export.js', - './node_modules/bootstrap-table/dist/extensions/mobile/bootstrap-table-mobile.js', - './node_modules/bootstrap-table/dist/extensions/sticky-header/bootstrap-table-sticky-header.js', - './node_modules/moment/min/moment.min.js', - './node_modules/bootstrap-daterangepicker/daterangepicker.js', - './node_modules/es6-promise/dist/es6-promise.js', - './node_modules/file-saver/dist/FileSaver.js', - './node_modules/html2canvas/dist/html2canvas.js', - './node_modules/jspdf/dist/jspdf.umd.js', - './node_modules/jspdf-autotable/dist/jspdf.plugin.autotable.js', - './node_modules/tableexport.jquery.plugin/tableExport.min.js', - './node_modules/chartist/dist/chartist.js', - './node_modules/chartist-plugin-pointlabels/dist/chartist-plugin-pointlabels.js', - './node_modules/chartist-plugin-tooltips/dist/chartist-plugin-tooltip.js', - './node_modules/chartist-plugin-axistitle/dist/chartist-plugin-axistitle.js', - './node_modules/chartist-plugin-barlabels/dist/chartist-plugin-barlabels.js', - './node_modules/bootstrap-notify/bootstrap-notify.js', - './node_modules/js-cookie/src/js.cookie.js', - './node_modules/bootstrap-tagsinput-2021/dist/bootstrap-tagsinput.js', - './node_modules/bootstrap-toggle/js/bootstrap-toggle.js', - './node_modules/clipboard/dist/clipboard.js', - './public/js/imgpreview.full.jquery.js', - './public/js/manage_tables.js', - './public/js/nominatim.autocomplete.js']).pipe(rev()).pipe(gulp.dest('public/resources/js')); - return gulp.src('./app/Views/partial/header.php').pipe(inject(debugjs,{addRootSlash: false, ignorePath: '/public/', starttag: ''})).pipe(gulp.dest('./app/Views/partial')); + var debugjs = gulp.src(['./node_modules/jquery/dist/jquery.js', + './node_modules/jquery-form/src/jquery.form.js', + './node_modules/jquery-validation/dist/jquery.validate.js', + './node_modules/jquery-ui-dist/jquery-ui.js', + './node_modules/bootstrap/dist/js/bootstrap.js', + './node_modules/bootstrap3-dialog/dist/js/bootstrap-dialog.js', + './node_modules/jasny-bootstrap/dist/js/jasny-bootstrap.js', + './node_modules/bootstrap-datetime-picker/js/bootstrap-datetimepicker.js', + './node_modules/bootstrap-select/dist/js/bootstrap-select.js', + './node_modules/bootstrap-table/dist/bootstrap-table.js', + './node_modules/bootstrap-table/dist/extensions/export/bootstrap-table-export.js', + './node_modules/bootstrap-table/dist/extensions/mobile/bootstrap-table-mobile.js', + './node_modules/bootstrap-table/dist/extensions/sticky-header/bootstrap-table-sticky-header.js', + './node_modules/moment/min/moment.min.js', + './node_modules/bootstrap-daterangepicker/daterangepicker.js', + './node_modules/es6-promise/dist/es6-promise.js', + './node_modules/file-saver/dist/FileSaver.js', + './node_modules/html2canvas/dist/html2canvas.js', + './node_modules/jspdf/dist/jspdf.umd.js', + './node_modules/jspdf-autotable/dist/jspdf.plugin.autotable.js', + './node_modules/tableexport.jquery.plugin/tableExport.min.js', + './node_modules/chartist/dist/chartist.js', + './node_modules/chartist-plugin-pointlabels/dist/chartist-plugin-pointlabels.js', + './node_modules/chartist-plugin-tooltips/dist/chartist-plugin-tooltip.js', + './node_modules/chartist-plugin-axistitle/dist/chartist-plugin-axistitle.js', + './node_modules/chartist-plugin-barlabels/dist/chartist-plugin-barlabels.js', + './node_modules/bootstrap-notify/bootstrap-notify.js', + './node_modules/js-cookie/src/js.cookie.js', + './node_modules/bootstrap-tagsinput-2021/dist/bootstrap-tagsinput.js', + './node_modules/bootstrap-toggle/js/bootstrap-toggle.js', + './node_modules/clipboard/dist/clipboard.js', + './public/js/imgpreview.full.jquery.js', + './public/js/manage_tables.js', + './public/js/nominatim.autocomplete.js']).pipe(rev()).pipe(gulp.dest('public/resources/js')); + return gulp.src('./app/Views/partial/header.php').pipe(inject(debugjs,{addRootSlash: false, ignorePath: '/public/', starttag: ''})).pipe(gulp.dest('./app/Views/partial')); }); gulp.task('prod-js', function() { - var prod0js = gulp.src('./node_modules/jquery/dist/jquery.min.js').pipe(rev()).pipe(gulp.dest('public/resources')); + var prod0js = gulp.src('./node_modules/jquery/dist/jquery.min.js').pipe(rev()).pipe(gulp.dest('public/resources')); - var opensourcepos1js = gulp.src(['./node_modules/bootstrap/dist/js/bootstrap.min.js', - './node_modules/bootstrap-table/dist/bootstrap-table.min.js', - './node_modules/moment/min/moment.min.js', - './node_modules/jquery-ui-dist/jquery-ui.min.js', - './node_modules/bootstrap3-dialog/dist/js/bootstrap-dialog.min.js', - './node_modules/jasny-bootstrap/dist/js/jasny-bootstrap.min.js', - './node_modules/bootstrap-select/dist/js/bootstrap-select.min.js', - './node_modules/bootstrap-table/dist/extensions/sticky-header/bootstrap-table-sticky-header.min.js', - './node_modules/bootstrap-tagsinput-2021/dist/bootstrap-tagsinput.min.js', - './node_modules/bootstrap-toggle/js/bootstrap-toggle.min.js', - './node_modules/bootstrap-table/dist/extensions/export/bootstrap-table-export.min.js', - './node_modules/bootstrap-table/dist/extensions/mobile/bootstrap-table-mobile.min.js', - './node_modules/bootstrap-notify/bootstrap-notify.min.js', - './node_modules/clipboard/dist/clipboard.min.js', - './node_modules/jquery-form/dist/jquery.form.min.js', - './node_modules/jquery-validation/dist/jquery.validate.min.js', - './node_modules/bootstrap-datetime-picker/js/bootstrap-datetimepicker.min.js', - './node_modules/es6-promise/dist/es6-promise.min.js', - './node_modules/file-saver/dist/FileSaver.min.js', - './node_modules/file-saver/dist/FileSaver.js', - './node_modules/html2canvas/dist/html2canvas.min.js', - './node_modules/chartist/dist/chartist.min.js', - './node_modules/jspdf/dist/jspdf.umd.min.js', - './node_modules/chartist/dist/chartist.min.js', - './node_modules/chartist-plugin-pointlabels/dist/chartist-plugin-pointlabels.min.js', - './node_modules/chartist-plugin-axistitle/dist/chartist-plugin-axistitle.min.js', - './node_modules/chartist-plugin-tooltips/dist/chartist-plugin-tooltip.min.js', - './node_modules/chartist-plugin-barlabels/dist/chartist-plugin-barlabels.min.js', - './node_modules/tableexport.jquery.plugin/tableExport.min.js'], { allowEmpty: true }); + var opensourcepos1js = gulp.src(['./node_modules/bootstrap/dist/js/bootstrap.min.js', + './node_modules/bootstrap-table/dist/bootstrap-table.min.js', + './node_modules/moment/min/moment.min.js', + './node_modules/jquery-ui-dist/jquery-ui.min.js', + './node_modules/bootstrap3-dialog/dist/js/bootstrap-dialog.min.js', + './node_modules/jasny-bootstrap/dist/js/jasny-bootstrap.min.js', + './node_modules/bootstrap-select/dist/js/bootstrap-select.min.js', + './node_modules/bootstrap-table/dist/extensions/sticky-header/bootstrap-table-sticky-header.min.js', + './node_modules/bootstrap-tagsinput-2021/dist/bootstrap-tagsinput.min.js', + './node_modules/bootstrap-toggle/js/bootstrap-toggle.min.js', + './node_modules/bootstrap-table/dist/extensions/export/bootstrap-table-export.min.js', + './node_modules/bootstrap-table/dist/extensions/mobile/bootstrap-table-mobile.min.js', + './node_modules/bootstrap-notify/bootstrap-notify.min.js', + './node_modules/clipboard/dist/clipboard.min.js', + './node_modules/jquery-form/dist/jquery.form.min.js', + './node_modules/jquery-validation/dist/jquery.validate.min.js', + './node_modules/bootstrap-datetime-picker/js/bootstrap-datetimepicker.min.js', + './node_modules/es6-promise/dist/es6-promise.min.js', + './node_modules/file-saver/dist/FileSaver.min.js', + './node_modules/file-saver/dist/FileSaver.js', + './node_modules/html2canvas/dist/html2canvas.min.js', + './node_modules/chartist/dist/chartist.min.js', + './node_modules/jspdf/dist/jspdf.umd.min.js', + './node_modules/chartist/dist/chartist.min.js', + './node_modules/chartist-plugin-pointlabels/dist/chartist-plugin-pointlabels.min.js', + './node_modules/chartist-plugin-axistitle/dist/chartist-plugin-axistitle.min.js', + './node_modules/chartist-plugin-tooltips/dist/chartist-plugin-tooltip.min.js', + './node_modules/chartist-plugin-barlabels/dist/chartist-plugin-barlabels.min.js', + './node_modules/tableexport.jquery.plugin/tableExport.min.js'], { allowEmpty: true }); - var opensourcepos2js = gulp.src(['./node_modules/bootstrap-daterangepicker/daterangepicker.js', - './node_modules/js-cookie/src/js.cookie.js', - './public/js/imgpreview.full.jquery.js', - './public/js/manage_tables.js', - './public/js/nominatim.autocomplete.js']).pipe(uglify()); + var opensourcepos2js = gulp.src(['./node_modules/bootstrap-daterangepicker/daterangepicker.js', + './node_modules/js-cookie/src/js.cookie.js', + './public/js/imgpreview.full.jquery.js', + './public/js/manage_tables.js', + './public/js/nominatim.autocomplete.js']).pipe(uglify()); - var prod1js = series(opensourcepos1js, opensourcepos2js).pipe(concat('opensourcepos.min.js')) - .pipe(rev()) - .pipe(gulp.dest('./public/resources/')); + var prod1js = series(opensourcepos1js, opensourcepos2js).pipe(concat('opensourcepos.min.js')) + .pipe(rev()) + .pipe(gulp.dest('./public/resources/')); - return gulp.src('./app/Views/partial/header.php').pipe(inject( - series(prod0js, prod1js), {addRootSlash: false, ignorePath: '/public/', starttag: ''})).pipe(gulp.dest('./app/Views/partial')); + return gulp.src('./app/Views/partial/header.php').pipe(inject( + series(prod0js, prod1js), {addRootSlash: false, ignorePath: '/public/', starttag: ''})).pipe(gulp.dest('./app/Views/partial')); }); gulp.task('debug-css', function() { - var debugcss = gulp.src(['./node_modules/jquery-ui-dist/jquery-ui.css', - './node_modules/bootstrap3-dialog/dist/css/bootstrap-dialog.css', - './node_modules/jasny-bootstrap/dist/css/jasny-bootstrap.css', - './node_modules/bootstrap-datetime-picker/css/bootstrap-datetimepicker.css', - './node_modules/bootstrap-select/dist/css/bootstrap-select.css', - './node_modules/bootstrap-table/dist/bootstrap-table.css', - './node_modules/bootstrap-table/dist/extensions/sticky-header/bootstrap-table-sticky-header.css', - './node_modules/bootstrap-daterangepicker/daterangepicker.css', - './node_modules/chartist/dist/chartist.css', - './node_modules/chartist-plugin-tooltips/dist/chartist-plugin-tooltip.css', - './node_modules/bootstrap-tagsinput-2021/src/bootstrap-tagsinput.css', - './node_modules/bootstrap-toggle/css/bootstrap-toggle.css', - './public/css/bootstrap.autocomplete.css', - './public/css/invoice.css', - './public/css/ospos_print.css', - './public/css/ospos.css', - './public/css/popupbox.css', - './public/css/receipt.css', - './public/css/register.css', - './public/css/reports.css' - ]).pipe(rev()).pipe(gulp.dest('public/resources/css')); - return gulp.src('./app/Views/partial/header.php').pipe(inject(debugcss,{addRootSlash: false, ignorePath: '/public/', starttag: ''})).pipe(gulp.dest('./app/Views/partial')); + var debugcss = gulp.src(['./node_modules/jquery-ui-dist/jquery-ui.css', + './node_modules/bootstrap3-dialog/dist/css/bootstrap-dialog.css', + './node_modules/jasny-bootstrap/dist/css/jasny-bootstrap.css', + './node_modules/bootstrap-datetime-picker/css/bootstrap-datetimepicker.css', + './node_modules/bootstrap-select/dist/css/bootstrap-select.css', + './node_modules/bootstrap-table/dist/bootstrap-table.css', + './node_modules/bootstrap-table/dist/extensions/sticky-header/bootstrap-table-sticky-header.css', + './node_modules/bootstrap-daterangepicker/daterangepicker.css', + './node_modules/chartist/dist/chartist.css', + './node_modules/chartist-plugin-tooltips/dist/chartist-plugin-tooltip.css', + './node_modules/bootstrap-tagsinput-2021/src/bootstrap-tagsinput.css', + './node_modules/bootstrap-toggle/css/bootstrap-toggle.css', + './public/css/bootstrap.autocomplete.css', + './public/css/invoice.css', + './public/css/ospos_print.css', + './public/css/ospos.css', + './public/css/popupbox.css', + './public/css/receipt.css', + './public/css/register.css', + './public/css/reports.css' + ]).pipe(rev()).pipe(gulp.dest('public/resources/css')); + return gulp.src('./app/Views/partial/header.php').pipe(inject(debugcss,{addRootSlash: false, ignorePath: '/public/', starttag: ''})).pipe(gulp.dest('./app/Views/partial')); }); gulp.task('prod-css', function() { - var opensourcepos1css = gulp.src(['./node_modules/jquery-ui-dist/jquery-ui.min.css', - './node_modules/bootstrap3-dialog/dist/css/bootstrap-dialog.min.css', - './node_modules/jasny-bootstrap/dist/css/jasny-bootstrap.min.css', - './node_modules/bootstrap-datetime-picker/css/bootstrap-datetimepicker.min.css']); + var opensourcepos1css = gulp.src(['./node_modules/jquery-ui-dist/jquery-ui.min.css', + './node_modules/bootstrap3-dialog/dist/css/bootstrap-dialog.min.css', + './node_modules/jasny-bootstrap/dist/css/jasny-bootstrap.min.css', + './node_modules/bootstrap-datetime-picker/css/bootstrap-datetimepicker.min.css']); - var opensourcepos2css = gulp.src(['./node_modules/bootstrap-daterangepicker/daterangepicker.css', - './node_modules/bootstrap-tagsinput-2021/src/bootstrap-tagsinput.css']).pipe(cleanCSS({compatibility: 'ie8'})); + var opensourcepos2css = gulp.src(['./node_modules/bootstrap-daterangepicker/daterangepicker.css', + './node_modules/bootstrap-tagsinput-2021/src/bootstrap-tagsinput.css']).pipe(cleanCSS({compatibility: 'ie8'})); - var opensourcepos3css = gulp.src(['./node_modules/bootstrap-select/dist/css/bootstrap-select.min.css', - './node_modules/bootstrap-table/dist/bootstrap-table.min.css', - './node_modules/bootstrap-table/dist/extensions/sticky-header/bootstrap-table-sticky-header.min.css', - './node_modules/bootstrap-toggle/css/bootstrap-toggle.min.css', - './node_modules/chartist/dist/chartist.min.css']); + var opensourcepos3css = gulp.src(['./node_modules/bootstrap-select/dist/css/bootstrap-select.min.css', + './node_modules/bootstrap-table/dist/bootstrap-table.min.css', + './node_modules/bootstrap-table/dist/extensions/sticky-header/bootstrap-table-sticky-header.min.css', + './node_modules/bootstrap-toggle/css/bootstrap-toggle.min.css', + './node_modules/chartist/dist/chartist.min.css']); - var opensourcepos4css = gulp.src('./node_modules/chartist-plugin-tooltips/dist/chartist-plugin-tooltip.css').pipe(cleanCSS({compatibility: 'ie8'})); + var opensourcepos4css = gulp.src('./node_modules/chartist-plugin-tooltips/dist/chartist-plugin-tooltip.css').pipe(cleanCSS({compatibility: 'ie8'})); - var opensourcepos5css = gulp.src(['./node_modules/chartist-plugin-tooltips/dist/chartist-plugin-tooltip.css', - './public/css/bootstrap.autocomplete.css', - './public/css/invoice.css', - './public/css/ospos.css', - './public/css/ospos_print.css', - './public/css/popupbox.css', - './public/css/receipt.css', - './public/css/register.css', - './public/css/reports.css' - ]).pipe(cleanCSS({compatibility: 'ie8'})); + var opensourcepos5css = gulp.src(['./node_modules/chartist-plugin-tooltips/dist/chartist-plugin-tooltip.css', + './public/css/bootstrap.autocomplete.css', + './public/css/invoice.css', + './public/css/ospos.css', + './public/css/ospos_print.css', + './public/css/popupbox.css', + './public/css/receipt.css', + './public/css/register.css', + './public/css/reports.css' + ]).pipe(cleanCSS({compatibility: 'ie8'})); - var prodcss = series(opensourcepos1css, opensourcepos2css, opensourcepos3css, opensourcepos4css, opensourcepos5css) - .pipe(concat('opensourcepos.min.css')).pipe(rev()).pipe(gulp.dest('public/resources')); + var prodcss = series(opensourcepos1css, opensourcepos2css, opensourcepos3css, opensourcepos4css, opensourcepos5css) + .pipe(concat('opensourcepos.min.css')).pipe(rev()).pipe(gulp.dest('public/resources')); - return gulp.src('./app/Views/partial/header.php').pipe(inject(prodcss,{addRootSlash: false, ignorePath: '/public/', starttag: ''})).pipe(gulp.dest('./app/Views/partial')); + return gulp.src('./app/Views/partial/header.php').pipe(inject(prodcss,{addRootSlash: false, ignorePath: '/public/', starttag: ''})).pipe(gulp.dest('./app/Views/partial')); }); gulp.task('copy-fonts', function() { - return pipeline(gulp.src('./node_modules/bootstrap/dist/fonts/glyphicons-halflings-regular.*', {encoding: false}),rev(),gulp.dest('public/resources')); + return pipeline(gulp.src('./node_modules/bootstrap/dist/fonts/glyphicons-halflings-regular.*', {encoding: false}),rev(),gulp.dest('public/resources')); }); gulp.task('inject-login', function() { - return pipeline(gulp.src('./app/Views/login.php'), - inject(gulp.src('./public/css/login.min.css', {read: false}), {addRootSlash: false, ignorePath: '/public/', starttag: ''}), - gulp.dest('./app/Views') - ); + return pipeline(gulp.src('./app/Views/login.php'), + inject(gulp.src('./public/css/login.min.css', {read: false}), {addRootSlash: false, ignorePath: '/public/', starttag: ''}), + gulp.dest('./app/Views') + ); }); gulp.task('update-licenses', function() { - run('composer licenses --format=json --no-dev > public/license/composer.LICENSES').exec(); - return pipeline(gulp.src('LICENSE'),gulp.dest('public/license')); + run('composer licenses --format=json --no-dev > public/license/composer.LICENSES').exec(); + return pipeline(gulp.src('LICENSE'),gulp.dest('public/license')); }); gulp.task('build-database', function() { - return gulp.src(['./app/Database/tables.sql','./app/Database/constraints.sql']) - .pipe(header('-- >> This file is autogenerated from tables.sql and constraints.sql. Do not modify directly << --')) - .pipe(concat('database.sql')) - .pipe(gulp.dest('./app/Database')); + return gulp.src(['./app/Database/tables.sql','./app/Database/constraints.sql']) + .pipe(header('-- >> This file is autogenerated from tables.sql and constraints.sql. Do not modify directly << --')) + .pipe(concat('database.sql')) + .pipe(gulp.dest('./app/Database')); }); // Run all required tasks gulp.task('default', - gulp.series('clean', - 'copy-bootswatch', - 'copy-bootswatch5', - 'debug-js', - 'prod-js', - 'debug-css', - 'prod-css', - 'copy-fonts', - 'inject-login', - 'update-licenses', - 'build-database' - )); + gulp.series('clean', + 'copy-bootswatch', + 'copy-bootswatch5', + 'debug-js', + 'prod-js', + 'debug-css', + 'prod-css', + 'copy-fonts', + 'inject-login', + 'update-licenses', + 'build-database' + )); diff --git a/package-lock.json b/package-lock.json index fb9e26244..cd9efcb70 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,5243 +1,5243 @@ { - "name": "@opensourcepos/opensourcepos", - "version": "3.4.0", - "lockfileVersion": 3, - "requires": true, - "packages": { - "": { - "name": "@opensourcepos/opensourcepos", - "version": "3.4.0", - "license": "MIT", - "dependencies": { - "bootstrap": "^3.4.1", - "bootstrap-daterangepicker": "^2.1.27", - "bootstrap-datetime-picker": "2.4.4", - "bootstrap-notify": "^3.1.3", - "bootstrap-select": "^1.13.18", - "bootstrap-table": "^1.23.5", - "bootstrap-tagsinput-2021": "^0.8.6", - "bootstrap-toggle": "^2.2.2", - "bootstrap3-dialog": "github:nakupanda/bootstrap3-dialog#master", - "bootstrap5": "npm:bootstrap@^5.3.3", - "bootswatch": "^3.4.1", - "bootswatch5": "npm:bootswatch@^5.3.3", - "chartist": "^0.11.4", - "chartist-plugin-axistitle": "^0.0.7", - "chartist-plugin-barlabels": "^0.0.5", - "chartist-plugin-pointlabels": "^0.0.6", - "chartist-plugin-tooltips": "^0.0.17", - "clipboard": "^2.0.11", - "coffeescript": "^2.7.0", - "es6-promise": "^4.2.8", - "file-saver": "^2.0.5", - "html2canvas": "^1.4.1", - "jasny-bootstrap": "^3.1.3", - "jquery": "^3.7.1", - "jquery-form": "^4.3.0", - "jquery-ui-dist": "^1.12.1", - "jquery-validation": "^1.19.5", - "js-cookie": "^2.2.1", - "jspdf": "^2.5.1", - "jspdf-autotable": "^3.8.2", - "npm-check-updates": "^17.1.14", - "tableexport.jquery.plugin": "^1.30.0" - }, - "devDependencies": { - "gulp": "^5.0.0", - "gulp-clean": "^0.4.0", - "gulp-clean-css": "^4.3.0", - "gulp-concat": "^2.6.1", - "gulp-debug": "^5.0.1", - "gulp-gzip": "^1.4.2", - "gulp-header": "^2.0.9", - "gulp-inject": "^5.0.5", - "gulp-rename": "^2.0.0", - "gulp-rev": "^10.0.0", - "gulp-run": "^1.7.1", - "gulp-tar": "^4.0.0", - "gulp-uglify": "^3.0.2", - "gulp-zip": "^6.1.0", - "readable-stream": "^4.4.2", - "stream-series": "^0.1.1" - } - }, - "node_modules/@babel/runtime": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.24.4.tgz", - "integrity": "sha512-dkxf7+hn8mFBwKjs9bvBlArzLVxVbS8usaPUDd5p2a9JCL9tB8OaOVN1isD4+Xyk4ns89/xeOmbQvgdK7IIVdA==", - "dependencies": { - "regenerator-runtime": "^0.14.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@gulpjs/messages": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@gulpjs/messages/-/messages-1.1.0.tgz", - "integrity": "sha512-Ys9sazDatyTgZVb4xPlDufLweJ/Os2uHWOv+Caxvy2O85JcnT4M3vc73bi8pdLWlv3fdWQz3pdI9tVwo8rQQSg==", - "dev": true, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/@gulpjs/to-absolute-glob": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@gulpjs/to-absolute-glob/-/to-absolute-glob-4.0.0.tgz", - "integrity": "sha512-kjotm7XJrJ6v+7knhPaRgaT6q8F8K2jiafwYdNHLzmV0uGLuZY43FK6smNSHUPrhq5kX2slCUy+RGG/xGqmIKA==", - "dev": true, - "dependencies": { - "is-negated-glob": "^1.0.0" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/@popperjs/core": { - "version": "2.11.8", - "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", - "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==", - "peer": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/popperjs" - } - }, - "node_modules/@sec-ant/readable-stream": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@sec-ant/readable-stream/-/readable-stream-0.4.1.tgz", - "integrity": "sha512-831qok9r2t8AlxLko40y2ebgSDhenenCatLVeW/uBtnHPyhHOvG0C7TvfgecV+wHzIm5KUICgzmVpWS+IMEAeg==", - "dev": true, - "license": "MIT" - }, - "node_modules/@swc/helpers": { - "version": "0.3.17", - "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.3.17.tgz", - "integrity": "sha512-tb7Iu+oZ+zWJZ3HJqwx8oNwSDIU440hmVMDPhpACWQWnrZHK99Bxs70gT1L2dnr5Hg50ZRWEFkQCAnOVVV0z1Q==", - "dependencies": { - "tslib": "^2.4.0" - } - }, - "node_modules/@types/expect": { - "version": "1.20.4", - "resolved": "https://registry.npmjs.org/@types/expect/-/expect-1.20.4.tgz", - "integrity": "sha512-Q5Vn3yjTDyCMV50TB6VRIbQNxSE4OmZR86VSbGaNpfUolm0iePBB4KdEEHmxoY5sT2+2DIvXW0rvMDP2nHZ4Mg==", - "dev": true - }, - "node_modules/@types/node": { - "version": "20.12.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.7.tgz", - "integrity": "sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, - "node_modules/@types/raf": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/@types/raf/-/raf-3.4.3.tgz", - "integrity": "sha512-c4YAvMedbPZ5tEyxzQdMoOhhJ4RD3rngZIdwC2/qDN3d7JpEhB6fiBRKVY1lg5B7Wk+uPBjn5f39j1/2MY1oOw==", - "optional": true - }, - "node_modules/@types/vinyl": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/@types/vinyl/-/vinyl-2.0.12.tgz", - "integrity": "sha512-Sr2fYMBUVGYq8kj3UthXFAu5UN6ZW+rYr4NACjZQJvHvj+c8lYv0CahmZ2P/r7iUkN44gGUBwqxZkrKXYPb7cw==", - "dev": true, - "dependencies": { - "@types/expect": "^1.20.4", - "@types/node": "*" - } - }, - "node_modules/abort-controller": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", - "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", - "dev": true, - "dependencies": { - "event-target-shim": "^5.0.0" - }, - "engines": { - "node": ">=6.5" - } - }, - "node_modules/adler-32": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/adler-32/-/adler-32-1.3.1.tgz", - "integrity": "sha512-ynZ4w/nUUv5rrsR8UUGoe1VC9hZj6V5hU9Qw1HlMDJGEJw5S7TfTErWTjMys6M7vr0YWcPqs3qAr4ss0nDfP+A==", - "engines": { - "node": ">=0.8" - } - }, - "node_modules/ansi-colors": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-1.1.0.tgz", - "integrity": "sha512-SFKX67auSNoVR38N3L+nvsPjOE0bybKTYbkf5tRvushrAPQ9V75huw0ZxBkKVeRU9kqH3d6HA4xTckbwZ4ixmA==", - "dev": true, - "dependencies": { - "ansi-wrap": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ansi-cyan": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/ansi-cyan/-/ansi-cyan-0.1.1.tgz", - "integrity": "sha512-eCjan3AVo/SxZ0/MyIYRtkpxIu/H3xZN7URr1vXVrISxeyz8fUFz0FJziamK4sS8I+t35y4rHg1b2PklyBe/7A==", - "dev": true, - "dependencies": { - "ansi-wrap": "0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ansi-gray": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/ansi-gray/-/ansi-gray-0.1.1.tgz", - "integrity": "sha512-HrgGIZUl8h2EHuZaU9hTR/cU5nhKxpVE1V6kdGsQ8e4zirElJ5fvtfc8N7Q1oq1aatO275i8pUFUCpNWCAnVWw==", - "dev": true, - "dependencies": { - "ansi-wrap": "0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ansi-red": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/ansi-red/-/ansi-red-0.1.1.tgz", - "integrity": "sha512-ewaIr5y+9CUTGFwZfpECUbFlGcC0GCw1oqR9RI6h1gQCd9Aj2GxSckCnPsVJnmfMZbwFYE+leZGASgkWl06Jow==", - "dev": true, - "dependencies": { - "ansi-wrap": "0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ansi-wrap": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/ansi-wrap/-/ansi-wrap-0.1.0.tgz", - "integrity": "sha512-ZyznvL8k/FZeQHr2T6LzcJ/+vBApDnMNZvfVFy3At0knswWd6rJ3/0Hhmpu8oqa6C92npmozs890sX9Dl6q+Qw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/any-promise": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", - "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", - "dev": true - }, - "node_modules/anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "dev": true, - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/archiver": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/archiver/-/archiver-6.0.2.tgz", - "integrity": "sha512-UQ/2nW7NMl1G+1UnrLypQw1VdT9XZg/ECcKPq7l+STzStrSivFIXIp34D8M5zeNGW5NoOupdYCHv6VySCPNNlw==", - "dev": true, - "dependencies": { - "archiver-utils": "^4.0.1", - "async": "^3.2.4", - "buffer-crc32": "^0.2.1", - "readable-stream": "^3.6.0", - "readdir-glob": "^1.1.2", - "tar-stream": "^3.0.0", - "zip-stream": "^5.0.1" - }, - "engines": { - "node": ">= 12.0.0" - } - }, - "node_modules/archiver-utils": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-4.0.1.tgz", - "integrity": "sha512-Q4Q99idbvzmgCTEAAhi32BkOyq8iVI5EwdO0PmBDSGIzzjYNdcFn7Q7k3OzbLy4kLUPXfJtG6fO2RjftXbobBg==", - "dev": true, - "dependencies": { - "glob": "^8.0.0", - "graceful-fs": "^4.2.0", - "lazystream": "^1.0.0", - "lodash": "^4.17.15", - "normalize-path": "^3.0.0", - "readable-stream": "^3.6.0" - }, - "engines": { - "node": ">= 12.0.0" - } - }, - "node_modules/archiver-utils/node_modules/glob": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", - "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/archiver-utils/node_modules/minimatch": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", - "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/archiver-utils/node_modules/readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "dev": true, - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/archiver/node_modules/readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "dev": true, - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/arr-diff": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/arr-flatten": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", - "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/arr-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-2.1.0.tgz", - "integrity": "sha512-t5db90jq+qdgk8aFnxEkjqta0B/GHrM1pxzuuZz2zWsOXc5nKu3t+76s/PQBA8FTcM/ipspIH9jWG4OxCBc2eA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/array-buffer-byte-length": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz", - "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==", - "dependencies": { - "call-bind": "^1.0.5", - "is-array-buffer": "^3.0.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array-differ": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz", - "integrity": "sha512-LeZY+DZDRnvP7eMuQ6LHfCzUGxAAIViUBliK24P3hWXL6y4SortgR6Nim6xrkfSLlmH0+k+9NYNwVC2s53ZrYQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/array-each": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/array-each/-/array-each-1.0.1.tgz", - "integrity": "sha512-zHjL5SZa68hkKHBFBK6DJCTtr9sfTCPCaph/L7tMSLcTFgy+zX7E+6q5UArbtOtMBCtxdICpfTCspRse+ywyXA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/array-slice": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-1.1.0.tgz", - "integrity": "sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/array-uniq": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "integrity": "sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/arrify": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", - "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/assign-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", - "integrity": "sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/async": { - "version": "3.2.5", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.5.tgz", - "integrity": "sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg==", - "dev": true - }, - "node_modules/async-done": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/async-done/-/async-done-2.0.0.tgz", - "integrity": "sha512-j0s3bzYq9yKIVLKGE/tWlCpa3PfFLcrDZLTSVdnnCTGagXuXBJO4SsY9Xdk/fQBirCkH4evW5xOeJXqlAQFdsw==", - "dev": true, - "dependencies": { - "end-of-stream": "^1.4.4", - "once": "^1.4.0", - "stream-exhaust": "^1.0.2" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/async-settle": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/async-settle/-/async-settle-2.0.0.tgz", - "integrity": "sha512-Obu/KE8FurfQRN6ODdHN9LuXqwC+JFIM9NRyZqJJ4ZfLJmIYN9Rg0/kb+wF70VV5+fJusTMQlJ1t5rF7J/ETdg==", - "dev": true, - "dependencies": { - "async-done": "^2.0.0" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", - "bin": { - "atob": "bin/atob.js" - }, - "engines": { - "node": ">= 4.5.0" - } - }, - "node_modules/available-typed-arrays": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", - "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", - "dependencies": { - "possible-typed-array-names": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/b4a": { - "version": "1.6.6", - "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.6.6.tgz", - "integrity": "sha512-5Tk1HLk6b6ctmjIkAcU/Ujv/1WqiDl0F0JdRCR80VsOcUlHcu7pWeWRlOqQLHfDEsVx9YH/aif5AG4ehoCtTmg==", - "dev": true - }, - "node_modules/bach": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/bach/-/bach-2.0.1.tgz", - "integrity": "sha512-A7bvGMGiTOxGMpNupYl9HQTf0FFDNF4VCmks4PJpFyN1AX2pdKuxuwdvUz2Hu388wcgp+OvGFNsumBfFNkR7eg==", - "dev": true, - "dependencies": { - "async-done": "^2.0.0", - "async-settle": "^2.0.0", - "now-and-later": "^3.0.0" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "node_modules/bare-events": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/bare-events/-/bare-events-2.2.2.tgz", - "integrity": "sha512-h7z00dWdG0PYOQEvChhOSWvOfkIKsdZGkWr083FgN/HyoQuebSew/cgirYqh9SCuy/hRvxc5Vy6Fw8xAmYHLkQ==", - "dev": true, - "optional": true - }, - "node_modules/base64-arraybuffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-1.0.2.tgz", - "integrity": "sha512-I3yl4r9QB5ZRY3XuJVEPfc2XhZO6YweFPI+UovAzn+8/hb3oJ6lnysaFcjVpkCPfVWFUDvoZ8kmVDP7WyRtYtQ==", - "engines": { - "node": ">= 0.6.0" - } - }, - "node_modules/base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/beeper": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/beeper/-/beeper-1.1.1.tgz", - "integrity": "sha512-3vqtKL1N45I5dV0RdssXZG7X6pCqQrWPNOlBPZPrd+QkE2HEhR57Z04m0KtpbsZH73j+a3F8UD1TQnn+ExTvIA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/binary-extensions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", - "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/bl": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-5.1.0.tgz", - "integrity": "sha512-tv1ZJHLfTDnXE6tMHv73YgSJaWR2AFuPwMntBe7XL/GBFHnT0CLnsHMogfk5+GzCDC5ZWarSCYaIGATZt9dNsQ==", - "dev": true, - "dependencies": { - "buffer": "^6.0.3", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "node_modules/bl/node_modules/readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "dev": true, - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/bootstrap": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-3.4.1.tgz", - "integrity": "sha512-yN5oZVmRCwe5aKwzRj6736nSmKDX7pLYwsXiCj/EYmo16hODaBiT4En5btW/jhBF/seV+XMx3aYwukYC3A49DA==", - "engines": { - "node": ">=6" - } - }, - "node_modules/bootstrap-daterangepicker": { - "version": "2.1.30", - "resolved": "https://registry.npmjs.org/bootstrap-daterangepicker/-/bootstrap-daterangepicker-2.1.30.tgz", - "integrity": "sha512-lZAmyQxwsthEbsIBKl2KVcUca+b/O8uAJxxY8AvlsCYF9dQlIY7WjskuqMJ3b/1YdXUgxHN/R6HFdVVNFSgeVQ==", - "dependencies": { - "jquery": ">=1.10", - "moment": "^2.9.0" - } - }, - "node_modules/bootstrap-datetime-picker": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/bootstrap-datetime-picker/-/bootstrap-datetime-picker-2.4.4.tgz", - "integrity": "sha512-TTknlrqoJ7DcJJpkmvg+TneUiWNG65gfjHYbTM5MpJ60DGWmcQJWN7+6eU78WvqxE6Dz/yKmeyLDEzzWVgw43A==" - }, - "node_modules/bootstrap-notify": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/bootstrap-notify/-/bootstrap-notify-3.1.3.tgz", - "integrity": "sha512-cnTactFVG8aHri03+RmuZ5sl9VcA+jTTM/mTdEOQN+R1V9u4YBu8Ca+Pf6NGeVfieGv0Z6CxK8FzlWg59omzyg==" - }, - "node_modules/bootstrap-select": { - "version": "1.13.18", - "resolved": "https://registry.npmjs.org/bootstrap-select/-/bootstrap-select-1.13.18.tgz", - "integrity": "sha512-V1IzK4rxBq5FrJtkzSH6RmFLFBsjx50byFbfAf8jYyXROWs7ZpprGjdHeoyq2HSsHyjJhMMwjsQhRoYAfxCGow==", - "peerDependencies": { - "bootstrap": ">=3.0.0", - "jquery": "1.9.1 - 3" - } - }, - "node_modules/bootstrap-table": { - "version": "1.23.5", - "resolved": "https://registry.npmjs.org/bootstrap-table/-/bootstrap-table-1.23.5.tgz", - "integrity": "sha512-9WByoSpJvA73gi2YYIlX6IWR74oZtBmSixul/Th8FTBtBd/kZRpbKESGTjhA3BA3AYTnfyY8Iy1KeRWPlV2GWQ==", - "license": "MIT", - "peerDependencies": { - "jquery": "3" - } - }, - "node_modules/bootstrap-tagsinput-2021": { - "version": "0.8.6", - "resolved": "https://registry.npmjs.org/bootstrap-tagsinput-2021/-/bootstrap-tagsinput-2021-0.8.6.tgz", - "integrity": "sha512-/ZbR3Hl6BtpbuVuoXPxiyoh4a4fKyoyKn4pFXyL4fGEEQ3uwPS4/urrJ5O9ew2WkfBkJUdHnCLtNuVeUlz6HoA==" - }, - "node_modules/bootstrap-toggle": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/bootstrap-toggle/-/bootstrap-toggle-2.2.2.tgz", - "integrity": "sha512-AkYD/i3NGCEksIb/PmmUrrxpa0DYi7Si30e9Ldhou2t1HTd9npoXUsxJJjFPvlV7iLUptlysWTcYD7i3DKV6qg==" - }, - "node_modules/bootstrap3-dialog": { - "version": "1.35.4", - "resolved": "git+ssh://git@github.com/nakupanda/bootstrap3-dialog.git#a491a98c97921114883ad44e5715fe28396dbaea" - }, - "node_modules/bootstrap5": { - "name": "bootstrap", - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.3.3.tgz", - "integrity": "sha512-8HLCdWgyoMguSO9o+aH+iuZ+aht+mzW0u3HIMzVu7Srrpv7EBBxTnrFlSCskwdY1+EOFQSm7uMJhNQHkdPcmjg==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/twbs" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/bootstrap" - } - ], - "peerDependencies": { - "@popperjs/core": "^2.11.8" - } - }, - "node_modules/bootswatch": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/bootswatch/-/bootswatch-3.4.1.tgz", - "integrity": "sha512-0hL4A8OUiqABgPipGrojf/hyhr5RS257xCNARlbK34HaMfhV5fXvwEooN4/ri9+jgX47J4Wg24ZPmfZ2xD2cKw==", - "engines": { - "node": ">= 0.10.0" - } - }, - "node_modules/bootswatch5": { - "name": "bootswatch", - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/bootswatch/-/bootswatch-5.3.3.tgz", - "integrity": "sha512-cJLhobnZsVCelU7zdH/L7wpcXAyUoTX4/5l2dWQ0JXgaVK80BdTQNU/ImWwoyIGBeyms4iQDAdNtOfPQZf0Atg==" - }, - "node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/braces": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", - "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", - "dev": true, - "dependencies": { - "fill-range": "^7.1.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/brotli": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/brotli/-/brotli-1.3.3.tgz", - "integrity": "sha512-oTKjJdShmDuGW94SyyaoQvAjf30dZaHnjJ8uAF+u2/vGJkJbJPJAT1gDiOJP5v1Zb6f9KEyW/1HpuaWIXtGHPg==", - "dependencies": { - "base64-js": "^1.1.2" - } - }, - "node_modules/btoa": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/btoa/-/btoa-1.2.1.tgz", - "integrity": "sha512-SB4/MIGlsiVkMcHmT+pSmIPoNDoHg+7cMzmt3Uxt628MTz2487DKSqK/fuhFBrkuqrYv5UCEnACpF4dTFNKc/g==", - "bin": { - "btoa": "bin/btoa.js" - }, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/buffer": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" - } - }, - "node_modules/buffer-crc32": { - "version": "0.2.13", - "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/call-bind": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", - "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", - "dependencies": { - "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.4", - "set-function-length": "^1.2.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/canvg": { - "version": "3.0.10", - "resolved": "https://registry.npmjs.org/canvg/-/canvg-3.0.10.tgz", - "integrity": "sha512-qwR2FRNO9NlzTeKIPIKpnTY6fqwuYSequ8Ru8c0YkYU7U0oW+hLUvWadLvAu1Rl72OMNiFhoLu4f8eUjQ7l/+Q==", - "optional": true, - "dependencies": { - "@babel/runtime": "^7.12.5", - "@types/raf": "^3.4.0", - "core-js": "^3.8.3", - "raf": "^3.4.1", - "regenerator-runtime": "^0.13.7", - "rgbcolor": "^1.0.1", - "stackblur-canvas": "^2.0.0", - "svg-pathdata": "^6.0.3" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/canvg/node_modules/regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", - "optional": true - }, - "node_modules/cfb": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/cfb/-/cfb-1.2.2.tgz", - "integrity": "sha512-KfdUZsSOw19/ObEWasvBP/Ac4reZvAGauZhs6S/gqNhXhI7cKwvlH7ulj+dOEYnca4bm4SGo8C1bTAQvnTjgQA==", - "dependencies": { - "adler-32": "~1.3.0", - "crc-32": "~1.2.0" - }, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/chalk": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", - "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", - "dev": true, - "engines": { - "node": "^12.17.0 || ^14.13 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/chartist": { - "version": "0.11.4", - "resolved": "https://registry.npmjs.org/chartist/-/chartist-0.11.4.tgz", - "integrity": "sha512-H4AimxaUD738/u9Mq8t27J4lh6STsLi4BQHt65nOtpLk3xyrBPaLiLMrHw7/WV9CmsjGA02WihjuL5qpSagLYw==", - "engines": { - "node": ">=4.6.0" - } - }, - "node_modules/chartist-plugin-axistitle": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/chartist-plugin-axistitle/-/chartist-plugin-axistitle-0.0.7.tgz", - "integrity": "sha512-qFG7R/qiZZyCn/gx9WJpMcnyhE0LIpGBxDnPpYtzY5cG53fHBkvJDsAEHEFFfO1l/RHI0G8oN9fpoUD/BMeiFA==", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/chartist-plugin-barlabels": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/chartist-plugin-barlabels/-/chartist-plugin-barlabels-0.0.5.tgz", - "integrity": "sha512-QJpFB37jCD0pyDqb0/FSnaXXqUhnzabN1gULkBqK0VOoC/KerihR5EomNdOPnjZoEm8T9gRSNbxGGObZKJFKiw==", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/chartist-plugin-pointlabels": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/chartist-plugin-pointlabels/-/chartist-plugin-pointlabels-0.0.6.tgz", - "integrity": "sha512-DUemVUBWAN0qAHBUMXKKLrDCsUL1qWWwN+EfxN8gpftgXSheMiYeq83uHoHyp4X+W5Pz/aUWBf3N/HJwj+eRFw==", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/chartist-plugin-tooltips": { - "version": "0.0.17", - "resolved": "https://registry.npmjs.org/chartist-plugin-tooltips/-/chartist-plugin-tooltips-0.0.17.tgz", - "integrity": "sha512-frXv269MyRHfuhyZILdTTsNG4PP3+Ab0NkysdnMk73aN4w76oWarsGguuciYzZawKrctp8RZzU/W44A4+Y4vOg==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/chokidar": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", - "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", - "dev": true, - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/clean-css": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.3.tgz", - "integrity": "sha512-VcMWDN54ZN/DS+g58HYL5/n4Zrqe8vHJpGA8KdgUXFU4fuP/aHNw8eld9SyEIyabIMJX/0RaY/fplOo5hYLSFA==", - "dev": true, - "dependencies": { - "source-map": "~0.6.0" - }, - "engines": { - "node": ">= 4.0" - } - }, - "node_modules/clipboard": { - "version": "2.0.11", - "resolved": "https://registry.npmjs.org/clipboard/-/clipboard-2.0.11.tgz", - "integrity": "sha512-C+0bbOqkezLIsmWSvlsXS0Q0bmkugu7jcfMIACB+RDEntIzQIkdr148we28AfSloQLRdZlYL/QYyrq05j/3Faw==", - "dependencies": { - "good-listener": "^1.2.2", - "select": "^1.1.2", - "tiny-emitter": "^2.0.0" - } - }, - "node_modules/cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "node_modules/cliui/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/cliui/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/cliui/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cliui/node_modules/wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/clone": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", - "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==", - "engines": { - "node": ">=0.8" - } - }, - "node_modules/clone-buffer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/clone-buffer/-/clone-buffer-1.0.0.tgz", - "integrity": "sha512-KLLTJWrvwIP+OPfMn0x2PheDEP20RPUcGXj/ERegTgdmPEZylALQldygiqrPPu8P45uNuPs7ckmReLY6v/iA5g==", - "dev": true, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/clone-stats": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-1.0.0.tgz", - "integrity": "sha512-au6ydSpg6nsrigcZ4m8Bc9hxjeW+GJ8xh5G3BJCMt4WXe1H10UNaVOamqQTmrx1kjVuxAHIQSNU6hY4Nsn9/ag==", - "dev": true - }, - "node_modules/cloneable-readable": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/cloneable-readable/-/cloneable-readable-1.1.3.tgz", - "integrity": "sha512-2EF8zTQOxYq70Y4XKtorQupqF0m49MBz2/yf5Bj+MHjvpG3Hy7sImifnqD6UA+TKYxeSV+u6qqQPawN5UvnpKQ==", - "dev": true, - "dependencies": { - "inherits": "^2.0.1", - "process-nextick-args": "^2.0.0", - "readable-stream": "^2.3.5" - } - }, - "node_modules/cloneable-readable/node_modules/readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", - "dev": true, - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/cloneable-readable/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "node_modules/cloneable-readable/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/codepage": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/codepage/-/codepage-1.15.0.tgz", - "integrity": "sha512-3g6NUTPd/YtuuGrhMnOMRjFc+LJw/bnMp3+0r/Wcz3IXUuCosKRJvMphm5+Q+bvTVGcJJuRvVLuYba+WojaFaA==", - "engines": { - "node": ">=0.8" - } - }, - "node_modules/coffeescript": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/coffeescript/-/coffeescript-2.7.0.tgz", - "integrity": "sha512-hzWp6TUE2d/jCcN67LrW1eh5b/rSDKQK6oD6VMLlggYVUUFexgTH9z3dNYihzX4RMhze5FTUsUmOXViJKFQR/A==", - "bin": { - "cake": "bin/cake", - "coffee": "bin/coffee" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/color-support": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", - "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", - "dev": true, - "bin": { - "color-support": "bin.js" - } - }, - "node_modules/compress-commons": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-5.0.3.tgz", - "integrity": "sha512-/UIcLWvwAQyVibgpQDPtfNM3SvqN7G9elAPAV7GM0L53EbNWwWiCsWtK8Fwed/APEbptPHXs5PuW+y8Bq8lFTA==", - "dev": true, - "dependencies": { - "crc-32": "^1.2.0", - "crc32-stream": "^5.0.0", - "normalize-path": "^3.0.0", - "readable-stream": "^3.6.0" - }, - "engines": { - "node": ">= 12.0.0" - } - }, - "node_modules/compress-commons/node_modules/readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "dev": true, - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true - }, - "node_modules/concat-with-sourcemaps": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/concat-with-sourcemaps/-/concat-with-sourcemaps-1.1.0.tgz", - "integrity": "sha512-4gEjHJFT9e+2W/77h/DS5SGUgwDaOwprX8L/gl5+3ixnzkVJJsZWDSelmN3Oilw3LNDZjZV0yqH1hLG3k6nghg==", - "dev": true, - "dependencies": { - "source-map": "^0.6.1" - } - }, - "node_modules/convert-source-map": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", - "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", - "dev": true - }, - "node_modules/copy-props": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/copy-props/-/copy-props-4.0.0.tgz", - "integrity": "sha512-bVWtw1wQLzzKiYROtvNlbJgxgBYt2bMJpkCbKmXM3xyijvcjjWXEk5nyrrT3bgJ7ODb19ZohE2T0Y3FgNPyoTw==", - "dev": true, - "dependencies": { - "each-props": "^3.0.0", - "is-plain-object": "^5.0.0" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/core-js": { - "version": "3.37.0", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.37.0.tgz", - "integrity": "sha512-fu5vHevQ8ZG4og+LXug8ulUtVxjOcEYvifJr7L5Bfq9GOztVqsKd9/59hUk2ZSbCrS3BqUr3EpaYGIYzq7g3Ug==", - "hasInstallScript": true, - "optional": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" - } - }, - "node_modules/core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", - "dev": true - }, - "node_modules/crc-32": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz", - "integrity": "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==", - "bin": { - "crc32": "bin/crc32.njs" - }, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/crc32-stream": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-5.0.1.tgz", - "integrity": "sha512-lO1dFui+CEUh/ztYIpgpKItKW9Bb4NWakCRJrnqAbFIYD+OZAwb2VfD5T5eXMw2FNcsDHkQcNl/Wh3iVXYwU6g==", - "dev": true, - "dependencies": { - "crc-32": "^1.2.0", - "readable-stream": "^3.4.0" - }, - "engines": { - "node": ">= 12.0.0" - } - }, - "node_modules/crc32-stream/node_modules/readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "dev": true, - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/crypto-js": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-4.2.0.tgz", - "integrity": "sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q==" - }, - "node_modules/css-line-break": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/css-line-break/-/css-line-break-2.1.0.tgz", - "integrity": "sha512-FHcKFCZcAha3LwfVBhCQbW2nCNbkZXn7KVUJcsT5/P8YmfsVja0FMPJr0B903j/E69HUphKiV9iQArX8SDYA4w==", - "dependencies": { - "utrie": "^1.0.2" - } - }, - "node_modules/dateformat": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-2.2.0.tgz", - "integrity": "sha512-GODcnWq3YGoTnygPfi02ygEiRxqUxpJwuRHjdhJYuxpcZmDq4rjBiXYmbCCzStxo176ixfLT6i4NPwQooRySnw==", - "dev": true, - "license": "MIT", - "engines": { - "node": "*" - } - }, - "node_modules/deep-equal": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.3.tgz", - "integrity": "sha512-ZIwpnevOurS8bpT4192sqAowWM76JDKSHYzMLty3BZGSswgq6pBaH3DhCSW5xVAZICZyKdOBPjwww5wfgT/6PA==", - "dependencies": { - "array-buffer-byte-length": "^1.0.0", - "call-bind": "^1.0.5", - "es-get-iterator": "^1.1.3", - "get-intrinsic": "^1.2.2", - "is-arguments": "^1.1.1", - "is-array-buffer": "^3.0.2", - "is-date-object": "^1.0.5", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "isarray": "^2.0.5", - "object-is": "^1.1.5", - "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.5.1", - "side-channel": "^1.0.4", - "which-boxed-primitive": "^1.0.2", - "which-collection": "^1.0.1", - "which-typed-array": "^1.1.13" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/deep-equal/node_modules/isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==" - }, - "node_modules/define-data-property": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", - "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", - "dependencies": { - "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "gopd": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/define-properties": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", - "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", - "dependencies": { - "define-data-property": "^1.0.1", - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/delegate": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/delegate/-/delegate-3.2.0.tgz", - "integrity": "sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw==" - }, - "node_modules/detect-file": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz", - "integrity": "sha512-DtCOLG98P007x7wiiOmfI0fi3eIKyWiLTGJ2MDnVi/E04lWGbf+JzrRHMm0rgIIZJGtHpKpbVgLWHrv8xXpc3Q==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/dfa": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/dfa/-/dfa-1.2.0.tgz", - "integrity": "sha512-ED3jP8saaweFTjeGX8HQPjeC1YYyZs98jGNZx6IiBvxW7JG5v492kamAQB3m2wop07CvU/RQmzcKr6bgcC5D/Q==" - }, - "node_modules/dompurify": { - "version": "2.5.6", - "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-2.5.6.tgz", - "integrity": "sha512-zUTaUBO8pY4+iJMPE1B9XlO2tXVYIcEA4SNGtvDELzTSCQO7RzH+j7S180BmhmJId78lqGU2z19vgVx2Sxs/PQ==", - "optional": true - }, - "node_modules/duplexer2": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.0.2.tgz", - "integrity": "sha512-+AWBwjGadtksxjOQSFDhPNQbed7icNXApT4+2BNpsXzcCBiInq2H9XW0O8sfHFaPmnQRs7cg/P0fAr2IWQSW0g==", - "dev": true, - "license": "BSD", - "dependencies": { - "readable-stream": "~1.1.9" - } - }, - "node_modules/duplexer2/node_modules/isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/duplexer2/node_modules/readable-stream": { - "version": "1.1.14", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", - "integrity": "sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } - }, - "node_modules/duplexer2/node_modules/string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/each-props": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/each-props/-/each-props-3.0.0.tgz", - "integrity": "sha512-IYf1hpuWrdzse/s/YJOrFmU15lyhSzxelNVAHTEG3DtP4QsLTWZUzcUL3HMXmKQxXpa4EIrBPpwRgj0aehdvAw==", - "dev": true, - "dependencies": { - "is-plain-object": "^5.0.0", - "object.defaults": "^1.1.0" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/easy-transform-stream": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/easy-transform-stream/-/easy-transform-stream-1.0.1.tgz", - "integrity": "sha512-ktkaa6XR7COAR3oj02CF3IOgz2m1hCaY3SfzvKT4Svt2MhHw9XCt+ncJNWfe2TGz31iqzNGZ8spdKQflj+Rlog==", - "dev": true, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "node_modules/end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dev": true, - "dependencies": { - "once": "^1.4.0" - } - }, - "node_modules/es-define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", - "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", - "dependencies": { - "get-intrinsic": "^1.2.4" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-errors": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", - "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-get-iterator": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz", - "integrity": "sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==", - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "has-symbols": "^1.0.3", - "is-arguments": "^1.1.1", - "is-map": "^2.0.2", - "is-set": "^2.0.2", - "is-string": "^1.0.7", - "isarray": "^2.0.5", - "stop-iteration-iterator": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/es-get-iterator/node_modules/isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==" - }, - "node_modules/es6-promise": { - "version": "4.2.8", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", - "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==" - }, - "node_modules/escalade": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", - "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/escape-string-regexp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", - "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/event-target-shim": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", - "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "dev": true, - "engines": { - "node": ">=0.8.x" - } - }, - "node_modules/expand-tilde": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", - "integrity": "sha512-A5EmesHW6rfnZ9ysHQjPdJRni0SRar0tjtG5MNtm9n5TUvsYU8oozprtRD4AqHxcZWWlVuAmQo2nWKfN9oyjTw==", - "dev": true, - "dependencies": { - "homedir-polyfill": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "node_modules/extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", - "dev": true, - "dependencies": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fancy-log": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.3.tgz", - "integrity": "sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw==", - "dev": true, - "dependencies": { - "ansi-gray": "^0.1.1", - "color-support": "^1.1.3", - "parse-node-version": "^1.0.0", - "time-stamp": "^1.0.0" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/fast-fifo": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/fast-fifo/-/fast-fifo-1.3.2.tgz", - "integrity": "sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==", - "dev": true - }, - "node_modules/fast-levenshtein": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-3.0.0.tgz", - "integrity": "sha512-hKKNajm46uNmTlhHSyZkmToAc56uZJwYq7yrciZjqOxnlfQwERDQJmHPUp7m1m9wx8vgOe8IaCKZ5Kv2k1DdCQ==", - "dev": true, - "dependencies": { - "fastest-levenshtein": "^1.0.7" - } - }, - "node_modules/fastest-levenshtein": { - "version": "1.0.16", - "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz", - "integrity": "sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==", - "dev": true, - "engines": { - "node": ">= 4.9.1" - } - }, - "node_modules/fastq": { - "version": "1.17.1", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", - "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", - "dev": true, - "dependencies": { - "reusify": "^1.0.4" - } - }, - "node_modules/fflate": { - "version": "0.4.8", - "resolved": "https://registry.npmjs.org/fflate/-/fflate-0.4.8.tgz", - "integrity": "sha512-FJqqoDBR00Mdj9ppamLa/Y7vxm+PRmNWA67N846RvsoYVMKB4q3y/de5PA7gUmRMYK/8CMz2GDZQmCRN1wBcWA==" - }, - "node_modules/file-saver": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/file-saver/-/file-saver-2.0.5.tgz", - "integrity": "sha512-P9bmyZ3h/PRG+Nzga+rbdI4OEpNDzAVyy74uVO9ATgzLK6VtAsYybF/+TOCvrc0MO793d6+42lLyZTw7/ArVzA==" - }, - "node_modules/fill-range": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", - "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", - "dev": true, - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/findup-sync": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-5.0.0.tgz", - "integrity": "sha512-MzwXju70AuyflbgeOhzvQWAvvQdo1XL0A9bVvlXsYcFEBM87WR4OakL4OfZq+QRmr+duJubio+UtNQCPsVESzQ==", - "dev": true, - "dependencies": { - "detect-file": "^1.0.0", - "is-glob": "^4.0.3", - "micromatch": "^4.0.4", - "resolve-dir": "^1.0.1" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/fined": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/fined/-/fined-2.0.0.tgz", - "integrity": "sha512-OFRzsL6ZMHz5s0JrsEr+TpdGNCtrVtnuG3x1yzGNiQHT0yaDnXAj8V/lWcpJVrnoDpcwXcASxAZYbuXda2Y82A==", - "dev": true, - "dependencies": { - "expand-tilde": "^2.0.2", - "is-plain-object": "^5.0.0", - "object.defaults": "^1.1.0", - "object.pick": "^1.3.0", - "parse-filepath": "^1.0.2" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/first-chunk-stream": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/first-chunk-stream/-/first-chunk-stream-5.0.0.tgz", - "integrity": "sha512-WdHo4ejd2cG2Dl+sLkW79SctU7mUQDfr4s1i26ffOZRs5mgv+BRttIM9gwcq0rDbemo0KlpVPaa3LBVLqPXzcQ==", - "dev": true, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/flagged-respawn": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/flagged-respawn/-/flagged-respawn-2.0.0.tgz", - "integrity": "sha512-Gq/a6YCi8zexmGHMuJwahTGzXlAZAOsbCVKduWXC6TlLCjjFRlExMJc4GC2NYPYZ0r/brw9P7CpRgQmlPVeOoA==", - "dev": true, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/fontkit": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/fontkit/-/fontkit-1.9.0.tgz", - "integrity": "sha512-HkW/8Lrk8jl18kzQHvAw9aTHe1cqsyx5sDnxncx652+CIfhawokEPkeM3BoIC+z/Xv7a0yMr0f3pRRwhGH455g==", - "dependencies": { - "@swc/helpers": "^0.3.13", - "brotli": "^1.3.2", - "clone": "^2.1.2", - "deep-equal": "^2.0.5", - "dfa": "^1.2.0", - "restructure": "^2.0.1", - "tiny-inflate": "^1.0.3", - "unicode-properties": "^1.3.1", - "unicode-trie": "^2.0.0" - } - }, - "node_modules/for-each": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", - "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", - "dependencies": { - "is-callable": "^1.1.3" - } - }, - "node_modules/for-in": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/for-own": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", - "integrity": "sha512-0OABksIGrxKK8K4kynWkQ7y1zounQxP+CWnyclVwj81KW3vlLlGUx57DKGcP/LH216GzqnstnPocF16Nxs0Ycg==", - "dev": true, - "dependencies": { - "for-in": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/frac": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/frac/-/frac-1.1.2.tgz", - "integrity": "sha512-w/XBfkibaTl3YDqASwfDUqkna4Z2p9cFSr1aHDt0WoMTECnRfBOv2WArlZILlqgWlmdIlALXGpM2AOhEk5W3IA==", - "engines": { - "node": ">=0.8" - } - }, - "node_modules/fs-mkdirp-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fs-mkdirp-stream/-/fs-mkdirp-stream-2.0.1.tgz", - "integrity": "sha512-UTOY+59K6IA94tec8Wjqm0FSh5OVudGNB0NL/P6fB3HiE3bYOY3VYBGijsnOHNkQSwC1FKkU77pmq7xp9CskLw==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.2.8", - "streamx": "^2.12.0" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "dev": true - }, - "node_modules/fsevents": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/function-bind": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", - "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/functions-have-names": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true, - "engines": { - "node": "6.* || 8.* || >= 10.*" - } - }, - "node_modules/get-intrinsic": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", - "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", - "dependencies": { - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "hasown": "^2.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-own-enumerable-keys": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/get-own-enumerable-keys/-/get-own-enumerable-keys-1.0.0.tgz", - "integrity": "sha512-PKsK2FSrQCyxcGHsGrLDcK0lx+0Ke+6e8KFFozA9/fIQLhQzPaRvJFdcz7+Axg3jUH/Mq+NI4xa5u/UT2tQskA==", - "dev": true, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/get-stream": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-9.0.1.tgz", - "integrity": "sha512-kVCxPF3vQM/N0B1PmoqVUqgHP+EeVjmZSQn+1oCRPxd2P21P2F19lIgbR3HBosbB1PUhOAoctJnfEn2GbN2eZA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@sec-ant/readable-stream": "^0.4.1", - "is-stream": "^4.0.1" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/glob-stream": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/glob-stream/-/glob-stream-8.0.2.tgz", - "integrity": "sha512-R8z6eTB55t3QeZMmU1C+Gv+t5UnNRkA55c5yo67fAVfxODxieTwsjNG7utxS/73NdP1NbDgCrhVEg2h00y4fFw==", - "dev": true, - "dependencies": { - "@gulpjs/to-absolute-glob": "^4.0.0", - "anymatch": "^3.1.3", - "fastq": "^1.13.0", - "glob-parent": "^6.0.2", - "is-glob": "^4.0.3", - "is-negated-glob": "^1.0.0", - "normalize-path": "^3.0.0", - "streamx": "^2.12.5" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/glob-stream/node_modules/glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.3" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/glob-watcher": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/glob-watcher/-/glob-watcher-6.0.0.tgz", - "integrity": "sha512-wGM28Ehmcnk2NqRORXFOTOR064L4imSw3EeOqU5bIwUf62eXGwg89WivH6VMahL8zlQHeodzvHpXplrqzrz3Nw==", - "dev": true, - "dependencies": { - "async-done": "^2.0.0", - "chokidar": "^3.5.3" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/global-modules": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", - "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==", - "dev": true, - "dependencies": { - "global-prefix": "^1.0.1", - "is-windows": "^1.0.1", - "resolve-dir": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/global-prefix": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", - "integrity": "sha512-5lsx1NUDHtSjfg0eHlmYvZKv8/nVqX4ckFbM+FrGcQ+04KWcWFo9P5MxPZYSzUvyzmdTbI7Eix8Q4IbELDqzKg==", - "dev": true, - "dependencies": { - "expand-tilde": "^2.0.2", - "homedir-polyfill": "^1.0.1", - "ini": "^1.3.4", - "is-windows": "^1.0.1", - "which": "^1.2.14" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/global-prefix/node_modules/ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "dev": true - }, - "node_modules/global-prefix/node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" - } - }, - "node_modules/glogg": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/glogg/-/glogg-1.0.2.tgz", - "integrity": "sha512-5mwUoSuBk44Y4EshyiqcH95ZntbDdTQqA3QYSrxmzj28Ai0vXBGMH1ApSANH14j2sIRtqCEyg6PfsuP7ElOEDA==", - "dev": true, - "dependencies": { - "sparkles": "^1.0.0" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/good-listener": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/good-listener/-/good-listener-1.2.2.tgz", - "integrity": "sha512-goW1b+d9q/HIwbVYZzZ6SsTr4IgE+WA44A0GmPIQstuOrgsFcT7VEJ48nmr9GaRtNu0XTKacFLGnBPAM6Afouw==", - "dependencies": { - "delegate": "^3.1.2" - } - }, - "node_modules/gopd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", - "dependencies": { - "get-intrinsic": "^1.1.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", - "dev": true - }, - "node_modules/group-array": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/group-array/-/group-array-1.0.0.tgz", - "integrity": "sha512-PJresALe5TUzSIcdWKLdAKcdUDxv8du2EGueShgAL2xknbcTo5Bk1xbNaNhxpWxxAx/SV7N+5S0UyK7XV0+QhA==", - "dev": true, - "dependencies": { - "arr-flatten": "^1.1.0", - "for-own": "^1.0.0", - "get-value": "^3.0.1", - "kind-of": "^6.0.2", - "split-string": "^6.1.0", - "union-value": "^2.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/group-array/node_modules/get-value": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/get-value/-/get-value-3.0.1.tgz", - "integrity": "sha512-mKZj9JLQrwMBtj5wxi6MH8Z5eSKaERpAwjg43dPtlGI1ZVEgH/qC7T8/6R2OBSUA+zzHBZgICsVJaEIV2tKTDA==", - "dev": true, - "dependencies": { - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=6.0" - } - }, - "node_modules/group-array/node_modules/kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/group-array/node_modules/split-string": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/split-string/-/split-string-6.1.0.tgz", - "integrity": "sha512-9UBdnmnvx2NLLd4bMs7CEKK+wSzbujVv3ONyorkP1o8M3pVJQtXDO1cN19xD1JJs6ltOrtPrkUND0HzLSinUcA==", - "dev": true, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/gulp": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/gulp/-/gulp-5.0.0.tgz", - "integrity": "sha512-S8Z8066SSileaYw1S2N1I64IUc/myI2bqe2ihOBzO6+nKpvNSg7ZcWJt/AwF8LC/NVN+/QZ560Cb/5OPsyhkhg==", - "dev": true, - "dependencies": { - "glob-watcher": "^6.0.0", - "gulp-cli": "^3.0.0", - "undertaker": "^2.0.0", - "vinyl-fs": "^4.0.0" - }, - "bin": { - "gulp": "bin/gulp.js" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/gulp-clean": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/gulp-clean/-/gulp-clean-0.4.0.tgz", - "integrity": "sha512-DARK8rNMo4lHOFLGTiHEJdf19GuoBDHqGUaypz+fOhrvOs3iFO7ntdYtdpNxv+AzSJBx/JfypF0yEj9ks1IStQ==", - "dev": true, - "dependencies": { - "fancy-log": "^1.3.2", - "plugin-error": "^0.1.2", - "rimraf": "^2.6.2", - "through2": "^2.0.3", - "vinyl": "^2.1.0" - }, - "engines": { - "node": ">=0.9" - } - }, - "node_modules/gulp-clean-css": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/gulp-clean-css/-/gulp-clean-css-4.3.0.tgz", - "integrity": "sha512-mGyeT3qqFXTy61j0zOIciS4MkYziF2U594t2Vs9rUnpkEHqfu6aDITMp8xOvZcvdX61Uz3y1mVERRYmjzQF5fg==", - "dev": true, - "dependencies": { - "clean-css": "4.2.3", - "plugin-error": "1.0.1", - "through2": "3.0.1", - "vinyl-sourcemaps-apply": "0.2.1" - } - }, - "node_modules/gulp-clean-css/node_modules/arr-union": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", - "integrity": "sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/gulp-clean-css/node_modules/plugin-error": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-1.0.1.tgz", - "integrity": "sha512-L1zP0dk7vGweZME2i+EeakvUNqSrdiI3F91TwEoYiGrAfUXmVv6fJIq4g82PAXxNsWOp0J7ZqQy/3Szz0ajTxA==", - "dev": true, - "dependencies": { - "ansi-colors": "^1.0.1", - "arr-diff": "^4.0.0", - "arr-union": "^3.1.0", - "extend-shallow": "^3.0.2" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/gulp-clean-css/node_modules/readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "dev": true, - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/gulp-clean-css/node_modules/through2": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.1.tgz", - "integrity": "sha512-M96dvTalPT3YbYLaKaCuwu+j06D/8Jfib0o/PxbVt6Amhv3dUAtW6rTV1jPgJSBG83I/e04Y6xkVdVhSRhi0ww==", - "dev": true, - "dependencies": { - "readable-stream": "2 || 3" - } - }, - "node_modules/gulp-cli": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/gulp-cli/-/gulp-cli-3.0.0.tgz", - "integrity": "sha512-RtMIitkT8DEMZZygHK2vEuLPqLPAFB4sntSxg4NoDta7ciwGZ18l7JuhCTiS5deOJi2IoK0btE+hs6R4sfj7AA==", - "dev": true, - "dependencies": { - "@gulpjs/messages": "^1.1.0", - "chalk": "^4.1.2", - "copy-props": "^4.0.0", - "gulplog": "^2.2.0", - "interpret": "^3.1.1", - "liftoff": "^5.0.0", - "mute-stdout": "^2.0.0", - "replace-homedir": "^2.0.0", - "semver-greatest-satisfied-range": "^2.0.0", - "string-width": "^4.2.3", - "v8flags": "^4.0.0", - "yargs": "^16.2.0" - }, - "bin": { - "gulp": "bin/gulp.js" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/gulp-cli/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/gulp-cli/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/gulp-cli/node_modules/glogg": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/glogg/-/glogg-2.2.0.tgz", - "integrity": "sha512-eWv1ds/zAlz+M1ioHsyKJomfY7jbDDPpwSkv14KQj89bycx1nvK5/2Cj/T9g7kzJcX5Bc7Yv22FjfBZS/jl94A==", - "dev": true, - "dependencies": { - "sparkles": "^2.1.0" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/gulp-cli/node_modules/gulplog": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/gulplog/-/gulplog-2.2.0.tgz", - "integrity": "sha512-V2FaKiOhpR3DRXZuYdRLn/qiY0yI5XmqbTKrYbdemJ+xOh2d2MOweI/XFgMzd/9+1twdvMwllnZbWZNJ+BOm4A==", - "dev": true, - "dependencies": { - "glogg": "^2.2.0" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/gulp-cli/node_modules/sparkles": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/sparkles/-/sparkles-2.1.0.tgz", - "integrity": "sha512-r7iW1bDw8R/cFifrD3JnQJX0K1jqT0kprL48BiBpLZLJPmAm34zsVBsK5lc7HirZYZqMW65dOXZgbAGt/I6frg==", - "dev": true, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/gulp-concat": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/gulp-concat/-/gulp-concat-2.6.1.tgz", - "integrity": "sha512-a2scActrQrDBpBbR3WUZGyGS1JEPLg5PZJdIa7/Bi3GuKAmPYDK6SFhy/NZq5R8KsKKFvtfR0fakbUCcKGCCjg==", - "dev": true, - "dependencies": { - "concat-with-sourcemaps": "^1.0.0", - "through2": "^2.0.0", - "vinyl": "^2.0.0" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/gulp-debug": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/gulp-debug/-/gulp-debug-5.0.1.tgz", - "integrity": "sha512-2MZFfzg95/6JlfKchX+ZY+6Awn2KoEvg4GeJh+uVi/lwD3W4LEeLDo3SfQEFBF9X5jhQYgUazKD/xyxd2dG9cw==", - "dev": true, - "dependencies": { - "chalk": "^5.3.0", - "gulp-plugin-extras": "^0.3.0", - "plur": "^5.1.0", - "stringify-object": "^5.0.0", - "tildify": "^3.0.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - }, - "peerDependencies": { - "gulp": ">=4" - }, - "peerDependenciesMeta": { - "gulp": { - "optional": true - } - } - }, - "node_modules/gulp-gzip": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/gulp-gzip/-/gulp-gzip-1.4.2.tgz", - "integrity": "sha512-ZIxfkUwk2XmZPTT9pPHrHUQlZMyp9nPhg2sfoeN27mBGpi7OaHnOD+WCN41NXjfJQ69lV1nQ9LLm1hYxx4h3UQ==", - "dev": true, - "dependencies": { - "ansi-colors": "^1.0.1", - "bytes": "^3.0.0", - "fancy-log": "^1.3.2", - "plugin-error": "^1.0.0", - "stream-to-array": "^2.3.0", - "through2": "^2.0.3" - }, - "engines": { - "node": ">= 0.10.0" - } - }, - "node_modules/gulp-gzip/node_modules/arr-union": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", - "integrity": "sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/gulp-gzip/node_modules/plugin-error": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-1.0.1.tgz", - "integrity": "sha512-L1zP0dk7vGweZME2i+EeakvUNqSrdiI3F91TwEoYiGrAfUXmVv6fJIq4g82PAXxNsWOp0J7ZqQy/3Szz0ajTxA==", - "dev": true, - "dependencies": { - "ansi-colors": "^1.0.1", - "arr-diff": "^4.0.0", - "arr-union": "^3.1.0", - "extend-shallow": "^3.0.2" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/gulp-header": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/gulp-header/-/gulp-header-2.0.9.tgz", - "integrity": "sha512-LMGiBx+qH8giwrOuuZXSGvswcIUh0OiioNkUpLhNyvaC6/Ga8X6cfAeme2L5PqsbXMhL8o8b/OmVqIQdxprhcQ==", - "dev": true, - "dependencies": { - "concat-with-sourcemaps": "^1.1.0", - "lodash.template": "^4.5.0", - "map-stream": "0.0.7", - "through2": "^2.0.0" - } - }, - "node_modules/gulp-inject": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/gulp-inject/-/gulp-inject-5.0.5.tgz", - "integrity": "sha512-5bGMjqleXUHPu4CI1pnVzHtwyMy+Zt8EMo1RFwNsOpidPxwjFwyLgmsRZWGMMI8UenJMJRjURqwznfFmqb5wgw==", - "dev": true, - "dependencies": { - "ansi-colors": "^4.1.1", - "arrify": "^2.0.1", - "escape-string-regexp": "^2.0.0", - "fancy-log": "^1.3.3", - "group-array": "^1.0.0", - "plugin-error": "^1.0.1", - "stream-to-array": "^2.3.0", - "through2": "^3.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/gulp-inject/node_modules/ansi-colors": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", - "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/gulp-inject/node_modules/arr-union": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", - "integrity": "sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/gulp-inject/node_modules/plugin-error": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-1.0.1.tgz", - "integrity": "sha512-L1zP0dk7vGweZME2i+EeakvUNqSrdiI3F91TwEoYiGrAfUXmVv6fJIq4g82PAXxNsWOp0J7ZqQy/3Szz0ajTxA==", - "dev": true, - "dependencies": { - "ansi-colors": "^1.0.1", - "arr-diff": "^4.0.0", - "arr-union": "^3.1.0", - "extend-shallow": "^3.0.2" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/gulp-inject/node_modules/plugin-error/node_modules/ansi-colors": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-1.1.0.tgz", - "integrity": "sha512-SFKX67auSNoVR38N3L+nvsPjOE0bybKTYbkf5tRvushrAPQ9V75huw0ZxBkKVeRU9kqH3d6HA4xTckbwZ4ixmA==", - "dev": true, - "dependencies": { - "ansi-wrap": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/gulp-inject/node_modules/readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "dev": true, - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/gulp-inject/node_modules/through2": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz", - "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==", - "dev": true, - "dependencies": { - "inherits": "^2.0.4", - "readable-stream": "2 || 3" - } - }, - "node_modules/gulp-plugin-extras": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/gulp-plugin-extras/-/gulp-plugin-extras-0.3.0.tgz", - "integrity": "sha512-I/kOBSpo61QsGQZcqozZYEnDseKvpudUafVVWDLYgBFAUJ37kW5R8Sjw9cMYzpGyPUfEYOeoY4p+dkfLqgyJUQ==", - "dev": true, - "dependencies": { - "@types/vinyl": "^2.0.9", - "chalk": "^5.3.0", - "easy-transform-stream": "^1.0.1" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/gulp-rename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/gulp-rename/-/gulp-rename-2.0.0.tgz", - "integrity": "sha512-97Vba4KBzbYmR5VBs9mWmK+HwIf5mj+/zioxfZhOKeXtx5ZjBk57KFlePf5nxq9QsTtFl0ejnHE3zTC9MHXqyQ==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/gulp-rev": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/gulp-rev/-/gulp-rev-10.0.0.tgz", - "integrity": "sha512-5mP6oOGp1DUzBQuiy9IrtyAWHWUOz2n1qLUHfo7LU0p111t7sTkUhKW01b70B2MsDWgScTdz6sGLg76KCbqclw==", - "dev": true, - "dependencies": { - "easy-transform-stream": "^1.0.0", - "modify-filename": "^2.0.0", - "plugin-error": "^2.0.1", - "rev-hash": "^4.0.0", - "rev-path": "^3.0.0", - "sort-keys": "^5.0.0", - "vinyl": "^3.0.0", - "vinyl-file": "^5.0.0" - }, - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - }, - "peerDependencies": { - "gulp": ">=4" - }, - "peerDependenciesMeta": { - "gulp": { - "optional": true - } - } - }, - "node_modules/gulp-rev/node_modules/plugin-error": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-2.0.1.tgz", - "integrity": "sha512-zMakqvIDyY40xHOvzXka0kUvf40nYIuwRE8dWhti2WtjQZ31xAgBZBhxsK7vK3QbRXS1Xms/LO7B5cuAsfB2Gg==", - "dev": true, - "dependencies": { - "ansi-colors": "^1.0.1" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/gulp-rev/node_modules/replace-ext": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-2.0.0.tgz", - "integrity": "sha512-UszKE5KVK6JvyD92nzMn9cDapSk6w/CaFZ96CnmDMUqH9oowfxF/ZjRITD25H4DnOQClLA4/j7jLGXXLVKxAug==", - "dev": true, - "engines": { - "node": ">= 10" - } - }, - "node_modules/gulp-rev/node_modules/vinyl": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-3.0.0.tgz", - "integrity": "sha512-rC2VRfAVVCGEgjnxHUnpIVh3AGuk62rP3tqVrn+yab0YH7UULisC085+NYH+mnqf3Wx4SpSi1RQMwudL89N03g==", - "dev": true, - "dependencies": { - "clone": "^2.1.2", - "clone-stats": "^1.0.0", - "remove-trailing-separator": "^1.1.0", - "replace-ext": "^2.0.0", - "teex": "^1.0.1" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/gulp-run": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/gulp-run/-/gulp-run-1.7.1.tgz", - "integrity": "sha512-4OcXhBE5xpRWmbcKzE0EQWEqpLRAkX3ju6k85qkYLfmnCVGK6nPmu/sbVgDiGg6mjuzsF2b9nHFbImZBZPH3zg==", - "dev": true, - "license": "ISC", - "dependencies": { - "gulp-util": "^3.0.0", - "lodash.defaults": "^4.0.1", - "lodash.template": "^4.0.2", - "vinyl": "^0.4.6" - } - }, - "node_modules/gulp-run/node_modules/clone": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/clone/-/clone-0.2.0.tgz", - "integrity": "sha512-g62n3Kb9cszeZvmvBUqP/dsEJD/+80pDA8u8KqHnAPrVnQ2Je9rVV6opxkhuWCd1kCn2gOibzDKxCtBvD3q5kA==", - "dev": true, - "license": "MIT", - "engines": { - "node": "*" - } - }, - "node_modules/gulp-run/node_modules/clone-stats": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-0.0.1.tgz", - "integrity": "sha512-dhUqc57gSMCo6TX85FLfe51eC/s+Im2MLkAgJwfaRRexR2tA4dd3eLEW4L6efzHc2iNorrRRXITifnDLlRrhaA==", - "dev": true, - "license": "MIT" - }, - "node_modules/gulp-run/node_modules/vinyl": { - "version": "0.4.6", - "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-0.4.6.tgz", - "integrity": "sha512-pmza4M5VA15HOImIQYWhoXGlGNafCm0QK5BpBUXkzzEwrRxKqBsbAhTfkT2zMcJhUX1G1Gkid0xaV8WjOl7DsA==", - "dev": true, - "dependencies": { - "clone": "^0.2.0", - "clone-stats": "^0.0.1" - }, - "engines": { - "node": ">= 0.9" - } - }, - "node_modules/gulp-tar": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/gulp-tar/-/gulp-tar-4.0.0.tgz", - "integrity": "sha512-lvBYoWV+I+0DVmjylWw/TZtHdQAQ9cVaqQ+u/fWcB8Hth3k4BKAT5EpLBoJiiU77ZXZmEgdPWzJ9KZmCuVCyFA==", - "dev": true, - "dependencies": { - "archiver": "^6.0.1", - "gulp-plugin-extras": "^0.3.0", - "vinyl": "^3.0.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - }, - "peerDependencies": { - "gulp": ">=4" - }, - "peerDependenciesMeta": { - "gulp": { - "optional": true - } - } - }, - "node_modules/gulp-tar/node_modules/replace-ext": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-2.0.0.tgz", - "integrity": "sha512-UszKE5KVK6JvyD92nzMn9cDapSk6w/CaFZ96CnmDMUqH9oowfxF/ZjRITD25H4DnOQClLA4/j7jLGXXLVKxAug==", - "dev": true, - "engines": { - "node": ">= 10" - } - }, - "node_modules/gulp-tar/node_modules/vinyl": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-3.0.0.tgz", - "integrity": "sha512-rC2VRfAVVCGEgjnxHUnpIVh3AGuk62rP3tqVrn+yab0YH7UULisC085+NYH+mnqf3Wx4SpSi1RQMwudL89N03g==", - "dev": true, - "dependencies": { - "clone": "^2.1.2", - "clone-stats": "^1.0.0", - "remove-trailing-separator": "^1.1.0", - "replace-ext": "^2.0.0", - "teex": "^1.0.1" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/gulp-uglify": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/gulp-uglify/-/gulp-uglify-3.0.2.tgz", - "integrity": "sha512-gk1dhB74AkV2kzqPMQBLA3jPoIAPd/nlNzP2XMDSG8XZrqnlCiDGAqC+rZOumzFvB5zOphlFh6yr3lgcAb/OOg==", - "dev": true, - "dependencies": { - "array-each": "^1.0.1", - "extend-shallow": "^3.0.2", - "gulplog": "^1.0.0", - "has-gulplog": "^0.1.0", - "isobject": "^3.0.1", - "make-error-cause": "^1.1.1", - "safe-buffer": "^5.1.2", - "through2": "^2.0.0", - "uglify-js": "^3.0.5", - "vinyl-sourcemaps-apply": "^0.2.0" - } - }, - "node_modules/gulp-util": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/gulp-util/-/gulp-util-3.0.8.tgz", - "integrity": "sha512-q5oWPc12lwSFS9h/4VIjG+1NuNDlJ48ywV2JKItY4Ycc/n1fXJeYPVQsfu5ZrhQi7FGSDBalwUCLar/GyHXKGw==", - "deprecated": "gulp-util is deprecated - replace it, following the guidelines at https://medium.com/gulpjs/gulp-util-ca3b1f9f9ac5", - "dev": true, - "license": "MIT", - "dependencies": { - "array-differ": "^1.0.0", - "array-uniq": "^1.0.2", - "beeper": "^1.0.0", - "chalk": "^1.0.0", - "dateformat": "^2.0.0", - "fancy-log": "^1.1.0", - "gulplog": "^1.0.0", - "has-gulplog": "^0.1.0", - "lodash._reescape": "^3.0.0", - "lodash._reevaluate": "^3.0.0", - "lodash._reinterpolate": "^3.0.0", - "lodash.template": "^3.0.0", - "minimist": "^1.1.0", - "multipipe": "^0.1.2", - "object-assign": "^3.0.0", - "replace-ext": "0.0.1", - "through2": "^2.0.0", - "vinyl": "^0.5.0" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/gulp-util/node_modules/chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/gulp-util/node_modules/clone": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.8" - } - }, - "node_modules/gulp-util/node_modules/clone-stats": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-0.0.1.tgz", - "integrity": "sha512-dhUqc57gSMCo6TX85FLfe51eC/s+Im2MLkAgJwfaRRexR2tA4dd3eLEW4L6efzHc2iNorrRRXITifnDLlRrhaA==", - "dev": true, - "license": "MIT" - }, - "node_modules/gulp-util/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/gulp-util/node_modules/lodash.template": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-3.6.2.tgz", - "integrity": "sha512-0B4Y53I0OgHUJkt+7RmlDFWKjVAI/YUpWNiL9GQz5ORDr4ttgfQGo+phBWKFLJbBdtOwgMuUkdOHOnPg45jKmQ==", - "deprecated": "This package is deprecated. Use https://socket.dev/npm/package/eta instead.", - "dev": true, - "license": "MIT", - "dependencies": { - "lodash._basecopy": "^3.0.0", - "lodash._basetostring": "^3.0.0", - "lodash._basevalues": "^3.0.0", - "lodash._isiterateecall": "^3.0.0", - "lodash._reinterpolate": "^3.0.0", - "lodash.escape": "^3.0.0", - "lodash.keys": "^3.0.0", - "lodash.restparam": "^3.0.0", - "lodash.templatesettings": "^3.0.0" - } - }, - "node_modules/gulp-util/node_modules/lodash.templatesettings": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-3.1.1.tgz", - "integrity": "sha512-TcrlEr31tDYnWkHFWDCV3dHYroKEXpJZ2YJYvJdhN+y4AkWMDZ5I4I8XDtUKqSAyG81N7w+I1mFEJtcED+tGqQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "lodash._reinterpolate": "^3.0.0", - "lodash.escape": "^3.0.0" - } - }, - "node_modules/gulp-util/node_modules/replace-ext": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-0.0.1.tgz", - "integrity": "sha512-AFBWBy9EVRTa/LhEcG8QDP3FvpwZqmvN2QFDuJswFeaVhWnZMp8q3E6Zd90SR04PlIwfGdyVjNyLPyen/ek5CQ==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/gulp-util/node_modules/supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/gulp-util/node_modules/vinyl": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-0.5.3.tgz", - "integrity": "sha512-P5zdf3WB9uzr7IFoVQ2wZTmUwHL8cMZWJGzLBNCHNZ3NB6HTMsYABtt7z8tAGIINLXyAob9B9a1yzVGMFOYKEA==", - "dev": true, - "license": "MIT", - "dependencies": { - "clone": "^1.0.0", - "clone-stats": "^0.0.1", - "replace-ext": "0.0.1" - }, - "engines": { - "node": ">= 0.9" - } - }, - "node_modules/gulp-zip": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/gulp-zip/-/gulp-zip-6.1.0.tgz", - "integrity": "sha512-couiqfO4CSM4q3oKnihLhYq5mVmwyXfgLP/0eeM7oVlN+psn45vfvJHcCL3AkPgTi4NojnUFV2IozYqZClIujQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "get-stream": "^9.0.1", - "gulp-plugin-extras": "^1.1.0", - "vinyl": "^3.0.0", - "yazl": "^3.3.1" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - }, - "peerDependencies": { - "gulp": ">=4" - }, - "peerDependenciesMeta": { - "gulp": { - "optional": true - } - } - }, - "node_modules/gulp-zip/node_modules/gulp-plugin-extras": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/gulp-plugin-extras/-/gulp-plugin-extras-1.1.0.tgz", - "integrity": "sha512-T0AXOEVoKYzLIBlwEZ7LtAx2w4ExIozIoxVeYEVLFbdxI7i0sWvFDq0F8mm47djixDF3vAqDPoyGwh3Sg/PWtQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/vinyl": "^2.0.12", - "chalk": "^5.3.0", - "easy-transform-stream": "^1.0.1" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/gulp-zip/node_modules/replace-ext": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-2.0.0.tgz", - "integrity": "sha512-UszKE5KVK6JvyD92nzMn9cDapSk6w/CaFZ96CnmDMUqH9oowfxF/ZjRITD25H4DnOQClLA4/j7jLGXXLVKxAug==", - "dev": true, - "engines": { - "node": ">= 10" - } - }, - "node_modules/gulp-zip/node_modules/vinyl": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-3.0.0.tgz", - "integrity": "sha512-rC2VRfAVVCGEgjnxHUnpIVh3AGuk62rP3tqVrn+yab0YH7UULisC085+NYH+mnqf3Wx4SpSi1RQMwudL89N03g==", - "dev": true, - "dependencies": { - "clone": "^2.1.2", - "clone-stats": "^1.0.0", - "remove-trailing-separator": "^1.1.0", - "replace-ext": "^2.0.0", - "teex": "^1.0.1" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/gulplog": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/gulplog/-/gulplog-1.0.0.tgz", - "integrity": "sha512-hm6N8nrm3Y08jXie48jsC55eCZz9mnb4OirAStEk2deqeyhXU3C1otDVh+ccttMuc1sBi6RX6ZJ720hs9RCvgw==", - "dev": true, - "dependencies": { - "glogg": "^1.0.0" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/has-bigints": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", - "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/has-gulplog": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/has-gulplog/-/has-gulplog-0.1.0.tgz", - "integrity": "sha512-+F4GzLjwHNNDEAJW2DC1xXfEoPkRDmUdJ7CBYw4MpqtDwOnqdImJl7GWlpqx+Wko6//J8uKTnIe4wZSv7yCqmw==", - "dev": true, - "dependencies": { - "sparkles": "^1.0.0" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/has-property-descriptors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", - "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", - "dependencies": { - "es-define-property": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-proto": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", - "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-tostringtag": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", - "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", - "dependencies": { - "has-symbols": "^1.0.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/hasown": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", - "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", - "dependencies": { - "function-bind": "^1.1.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/homedir-polyfill": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz", - "integrity": "sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==", - "dev": true, - "dependencies": { - "parse-passwd": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/html2canvas": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/html2canvas/-/html2canvas-1.4.1.tgz", - "integrity": "sha512-fPU6BHNpsyIhr8yyMpTLLxAbkaK8ArIBcmZIRiBLiDhjeqvXolaEmDGmELFuX9I4xDcaKKcJl+TKZLqruBbmWA==", - "dependencies": { - "css-line-break": "^2.1.0", - "text-segmentation": "^1.0.3" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "dev": true, - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "node_modules/internal-slot": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", - "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==", - "dependencies": { - "es-errors": "^1.3.0", - "hasown": "^2.0.0", - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/interpret": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-3.1.1.tgz", - "integrity": "sha512-6xwYfHbajpoF0xLW+iwLkhwgvLoZDfjYfoFNu8ftMoXINzwuymNLd9u/KmwtdT2GbR+/Cz66otEGEVVUHX9QLQ==", - "dev": true, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/irregular-plurals": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-3.5.0.tgz", - "integrity": "sha512-1ANGLZ+Nkv1ptFb2pa8oG8Lem4krflKuX/gINiHJHjJUKaJHk/SXk5x6K3J+39/p0h1RQ2saROclJJ+QLvETCQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-absolute": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz", - "integrity": "sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==", - "dev": true, - "dependencies": { - "is-relative": "^1.0.0", - "is-windows": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-arguments": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", - "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-array-buffer": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz", - "integrity": "sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==", - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-bigint": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", - "dependencies": { - "has-bigints": "^1.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-boolean-object": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-callable": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", - "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-core-module": { - "version": "2.13.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", - "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", - "dev": true, - "dependencies": { - "hasown": "^2.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-date-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "dependencies": { - "is-plain-object": "^2.0.4" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-extendable/node_modules/is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, - "dependencies": { - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-map": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", - "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-negated-glob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-negated-glob/-/is-negated-glob-1.0.0.tgz", - "integrity": "sha512-czXVVn/QEmgvej1f50BZ648vUI+em0xqMq2Sn+QncCLN4zj1UAxlT+kw/6ggQTOaZPd1HqKQGEqbpQVtJucWug==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/is-number-object": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", - "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-obj": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-3.0.0.tgz", - "integrity": "sha512-IlsXEHOjtKhpN8r/tRFj2nDyTmHvcfNeu/nrRIcXE17ROeatXchkojffa1SpdqW4cr/Fj6QkEf/Gn4zf6KKvEQ==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-plain-obj": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", - "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-plain-object": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", - "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-regex": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-regexp": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-3.1.0.tgz", - "integrity": "sha512-rbku49cWloU5bSMI+zaRaXdQHXnthP6DZ/vLnfdSKyL4zUzuWnomtOEiZZOd+ioQ+avFo/qau3KPTc7Fjy1uPA==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-relative": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz", - "integrity": "sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==", - "dev": true, - "dependencies": { - "is-unc-path": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-set": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", - "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-shared-array-buffer": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz", - "integrity": "sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==", - "dependencies": { - "call-bind": "^1.0.7" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-stream": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-4.0.1.tgz", - "integrity": "sha512-Dnz92NInDqYckGEUJv689RbRiTSEHCQ7wOVeALbkOz999YpqT46yMRIGtSNl2iCL1waAZSx40+h59NV/EwzV/A==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-string": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-symbol": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", - "dependencies": { - "has-symbols": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-unc-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz", - "integrity": "sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==", - "dev": true, - "dependencies": { - "unc-path-regex": "^0.1.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-utf8": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", - "integrity": "sha512-rMYPYvCzsXywIsldgLaSoPlw5PfoB/ssr7hY4pLfcodrA5M/eArza1a9VmTiNIBNMjOGr1Ow9mTyU2o69U6U9Q==", - "dev": true - }, - "node_modules/is-valid-glob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-valid-glob/-/is-valid-glob-1.0.0.tgz", - "integrity": "sha512-AhiROmoEFDSsjx8hW+5sGwgKVIORcXnrlAx/R0ZSeaPw70Vw0CqkGBBhHGL58Uox2eXnU1AnvXJl1XlyedO5bA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-weakmap": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", - "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-weakset": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.3.tgz", - "integrity": "sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==", - "dependencies": { - "call-bind": "^1.0.7", - "get-intrinsic": "^1.2.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-windows": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", - "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true - }, - "node_modules/isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/jasny-bootstrap": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/jasny-bootstrap/-/jasny-bootstrap-3.1.3.tgz", - "integrity": "sha512-i2O5dUFuYV56Pyl6aZ5hWmsttTySXRBp+4X4kFlKYHLsJeaeiT3IkpbCPMdrDa1zQbm856cuLoxMEh+3fSOVaQ==" - }, - "node_modules/jquery": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.7.1.tgz", - "integrity": "sha512-m4avr8yL8kmFN8psrbFFFmB/If14iN5o9nw/NgnnM+kybDJpRsAynV2BsfpTYrTRysYUdADVD7CkUUizgkpLfg==" - }, - "node_modules/jquery-form": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/jquery-form/-/jquery-form-4.3.0.tgz", - "integrity": "sha512-q3uaVCEWdLOYUCI6dpNdwf/7cJFOsUgdpq6r0taxtGQ5NJSkOzofyWm4jpOuJ5YxdmL1FI5QR+q+HB63HHLGnQ==", - "dependencies": { - "jquery": ">=1.7.2" - } - }, - "node_modules/jquery-ui-dist": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/jquery-ui-dist/-/jquery-ui-dist-1.13.2.tgz", - "integrity": "sha512-oVDRd1NLtTbBwpRKAYdIRgpWVDzeBhfy7Gu0RmY6JEaZtmBq6kDn1pm5SgDiAotrnDS+RoTRXO6xvcNTxA9tOA==", - "dependencies": { - "jquery": ">=1.8.0 <4.0.0" - } - }, - "node_modules/jquery-validation": { - "version": "1.20.0", - "resolved": "https://registry.npmjs.org/jquery-validation/-/jquery-validation-1.20.0.tgz", - "integrity": "sha512-c8tg4ltIIP6L7l0bZ79sRzOJYquyjS48kQZ6iv8MJ2r0OYztxtkWYKTReZyU2/zVFYiINB29i0Z/IRNNuJQN1g==", - "peerDependencies": { - "jquery": "^1.7 || ^2.0 || ^3.1" - } - }, - "node_modules/js-cookie": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-2.2.1.tgz", - "integrity": "sha512-HvdH2LzI/EAZcUwA8+0nKNtWHqS+ZmijLA30RwZA0bo7ToCckjK5MkGhjED9KoRcXO6BaGI3I9UIzSA1FKFPOQ==" - }, - "node_modules/jspdf": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/jspdf/-/jspdf-2.5.1.tgz", - "integrity": "sha512-hXObxz7ZqoyhxET78+XR34Xu2qFGrJJ2I2bE5w4SM8eFaFEkW2xcGRVUss360fYelwRSid/jT078kbNvmoW0QA==", - "dependencies": { - "@babel/runtime": "^7.14.0", - "atob": "^2.1.2", - "btoa": "^1.2.1", - "fflate": "^0.4.8" - }, - "optionalDependencies": { - "canvg": "^3.0.6", - "core-js": "^3.6.0", - "dompurify": "^2.2.0", - "html2canvas": "^1.0.0-rc.5" - } - }, - "node_modules/jspdf-autotable": { - "version": "3.8.2", - "resolved": "https://registry.npmjs.org/jspdf-autotable/-/jspdf-autotable-3.8.2.tgz", - "integrity": "sha512-zW1ix99/mtR4MbIni7IqvrpfHmuTaICl6iv6wqjRN86Nxtwaw/QtOeDbpXqYSzHIJK9JvgtLM283sc5x+ipkJg==", - "peerDependencies": { - "jspdf": "^2.5.1" - } - }, - "node_modules/last-run": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/last-run/-/last-run-2.0.0.tgz", - "integrity": "sha512-j+y6WhTLN4Itnf9j5ZQos1BGPCS8DAwmgMroR3OzfxAsBxam0hMw7J8M3KqZl0pLQJ1jNnwIexg5DYpC/ctwEQ==", - "dev": true, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/lazystream": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.1.tgz", - "integrity": "sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==", - "dev": true, - "dependencies": { - "readable-stream": "^2.0.5" - }, - "engines": { - "node": ">= 0.6.3" - } - }, - "node_modules/lazystream/node_modules/readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", - "dev": true, - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/lazystream/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "node_modules/lazystream/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/lead": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/lead/-/lead-4.0.0.tgz", - "integrity": "sha512-DpMa59o5uGUWWjruMp71e6knmwKU3jRBBn1kjuLWN9EeIOxNeSAwvHf03WIl8g/ZMR2oSQC9ej3yeLBwdDc/pg==", - "dev": true, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/liftoff": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/liftoff/-/liftoff-5.0.0.tgz", - "integrity": "sha512-a5BQjbCHnB+cy+gsro8lXJ4kZluzOijzJ1UVVfyJYZC+IP2pLv1h4+aysQeKuTmyO8NAqfyQAk4HWaP/HjcKTg==", - "dev": true, - "dependencies": { - "extend": "^3.0.2", - "findup-sync": "^5.0.0", - "fined": "^2.0.0", - "flagged-respawn": "^2.0.0", - "is-plain-object": "^5.0.0", - "rechoir": "^0.8.0", - "resolve": "^1.20.0" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/linebreak": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/linebreak/-/linebreak-1.1.0.tgz", - "integrity": "sha512-MHp03UImeVhB7XZtjd0E4n6+3xr5Dq/9xI/5FptGk5FrbDR3zagPa2DS6U8ks/3HjbKWG9Q1M2ufOzxV2qLYSQ==", - "dependencies": { - "base64-js": "0.0.8", - "unicode-trie": "^2.0.0" - } - }, - "node_modules/linebreak/node_modules/base64-js": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-0.0.8.tgz", - "integrity": "sha512-3XSA2cR/h/73EzlXXdU6YNycmYI7+kicTxks4eJg2g39biHR84slg2+des+p7iHYhbRg/udIS4TD53WabcOUkw==", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true - }, - "node_modules/lodash._basecopy": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz", - "integrity": "sha512-rFR6Vpm4HeCK1WPGvjZSJ+7yik8d8PVUdCJx5rT2pogG4Ve/2ZS7kfmO5l5T2o5V2mqlNIfSF5MZlr1+xOoYQQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/lodash._basetostring": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz", - "integrity": "sha512-mTzAr1aNAv/i7W43vOR/uD/aJ4ngbtsRaCubp2BfZhlGU/eORUjg/7F6X0orNMdv33JOrdgGybtvMN/po3EWrA==", - "dev": true, - "license": "MIT" - }, - "node_modules/lodash._basevalues": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/lodash._basevalues/-/lodash._basevalues-3.0.0.tgz", - "integrity": "sha512-H94wl5P13uEqlCg7OcNNhMQ8KvWSIyqXzOPusRgHC9DK3o54P6P3xtbXlVbRABG4q5gSmp7EDdJ0MSuW9HX6Mg==", - "dev": true, - "license": "MIT" - }, - "node_modules/lodash._getnative": { - "version": "3.9.1", - "resolved": "https://registry.npmjs.org/lodash._getnative/-/lodash._getnative-3.9.1.tgz", - "integrity": "sha512-RrL9VxMEPyDMHOd9uFbvMe8X55X16/cGM5IgOKgRElQZutpX89iS6vwl64duTV1/16w5JY7tuFNXqoekmh1EmA==", - "dev": true, - "license": "MIT" - }, - "node_modules/lodash._isiterateecall": { - "version": "3.0.9", - "resolved": "https://registry.npmjs.org/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz", - "integrity": "sha512-De+ZbrMu6eThFti/CSzhRvTKMgQToLxbij58LMfM8JnYDNSOjkjTCIaa8ixglOeGh2nyPlakbt5bJWJ7gvpYlQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/lodash._reescape": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/lodash._reescape/-/lodash._reescape-3.0.0.tgz", - "integrity": "sha512-Sjlavm5y+FUVIF3vF3B75GyXrzsfYV8Dlv3L4mEpuB9leg8N6yf/7rU06iLPx9fY0Mv3khVp9p7Dx0mGV6V5OQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/lodash._reevaluate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/lodash._reevaluate/-/lodash._reevaluate-3.0.0.tgz", - "integrity": "sha512-OrPwdDc65iJiBeUe5n/LIjd7Viy99bKwDdk7Z5ljfZg0uFRFlfQaCy9tZ4YMAag9WAZmlVpe1iZrkIMMSMHD3w==", - "dev": true, - "license": "MIT" - }, - "node_modules/lodash._reinterpolate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz", - "integrity": "sha512-xYHt68QRoYGjeeM/XOE1uJtvXQAgvszfBhjV4yvsQH0u2i9I6cI6c6/eG4Hh3UAOVn0y/xAXwmTzEay49Q//HA==", - "dev": true - }, - "node_modules/lodash._root": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/lodash._root/-/lodash._root-3.0.1.tgz", - "integrity": "sha512-O0pWuFSK6x4EXhM1dhZ8gchNtG7JMqBtrHdoUFUWXD7dJnNSUze1GuyQr5sOs0aCvgGeI3o/OJW8f4ca7FDxmQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/lodash.defaults": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", - "integrity": "sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/lodash.escape": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/lodash.escape/-/lodash.escape-3.2.0.tgz", - "integrity": "sha512-n1PZMXgaaDWZDSvuNZ/8XOcYO2hOKDqZel5adtR30VKQAtoWs/5AOeFA0vPV8moiPzlqe7F4cP2tzpFewQyelQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "lodash._root": "^3.0.0" - } - }, - "node_modules/lodash.isarguments": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz", - "integrity": "sha512-chi4NHZlZqZD18a0imDHnZPrDeBbTtVN7GXMwuGdRH9qotxAjYs3aVLKc7zNOG9eddR5Ksd8rvFEBc9SsggPpg==", - "dev": true, - "license": "MIT" - }, - "node_modules/lodash.isarray": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/lodash.isarray/-/lodash.isarray-3.0.4.tgz", - "integrity": "sha512-JwObCrNJuT0Nnbuecmqr5DgtuBppuCvGD9lxjFpAzwnVtdGoDQ1zig+5W8k5/6Gcn0gZ3936HDAlGd28i7sOGQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/lodash.keys": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-3.1.2.tgz", - "integrity": "sha512-CuBsapFjcubOGMn3VD+24HOAPxM79tH+V6ivJL3CHYjtrawauDJHUk//Yew9Hvc6e9rbCrURGk8z6PC+8WJBfQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "lodash._getnative": "^3.0.0", - "lodash.isarguments": "^3.0.0", - "lodash.isarray": "^3.0.0" - } - }, - "node_modules/lodash.restparam": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/lodash.restparam/-/lodash.restparam-3.6.1.tgz", - "integrity": "sha512-L4/arjjuq4noiUJpt3yS6KIKDtJwNe2fIYgMqyYYKoeIfV1iEqvPwhCx23o+R9dzouGihDAPN1dTIRWa7zk8tw==", - "dev": true, - "license": "MIT" - }, - "node_modules/lodash.template": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-4.5.0.tgz", - "integrity": "sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A==", - "dev": true, - "dependencies": { - "lodash._reinterpolate": "^3.0.0", - "lodash.templatesettings": "^4.0.0" - } - }, - "node_modules/lodash.templatesettings": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz", - "integrity": "sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ==", - "dev": true, - "dependencies": { - "lodash._reinterpolate": "^3.0.0" - } - }, - "node_modules/make-error": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", - "dev": true - }, - "node_modules/make-error-cause": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/make-error-cause/-/make-error-cause-1.2.2.tgz", - "integrity": "sha512-4TO2Y3HkBnis4c0dxhAgD/jprySYLACf7nwN6V0HAHDx59g12WlRpUmFy1bRHamjGUEEBrEvCq6SUpsEE2lhUg==", - "dev": true, - "dependencies": { - "make-error": "^1.2.0" - } - }, - "node_modules/map-cache": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/map-stream": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/map-stream/-/map-stream-0.0.7.tgz", - "integrity": "sha512-C0X0KQmGm3N2ftbTGBhSyuydQ+vV1LC3f3zPvT3RXHXNZrvfPZcoXp/N5DOa8vedX/rTMm2CjTtivFg2STJMRQ==", - "dev": true - }, - "node_modules/micromatch": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", - "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", - "dev": true, - "dependencies": { - "braces": "^3.0.3", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/modify-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/modify-filename/-/modify-filename-2.0.0.tgz", - "integrity": "sha512-VX9/MdgUN9StpSLImJ0+AyV2dxJJtyojIwRHF/Ja942tW7FTzxXI186jDSTk4k5wj2+59a4bRzFnJUgMSi+ygg==", - "dev": true, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/moment": { - "version": "2.30.1", - "resolved": "https://registry.npmjs.org/moment/-/moment-2.30.1.tgz", - "integrity": "sha512-uEmtNhbDOrWPFS+hdjFCBfy9f2YoyzRpwcl+DqpC6taX21FzsTLQVbMV/W7PzNSX6x/bhC1zA3c2UQ5NzH6how==", - "engines": { - "node": "*" - } - }, - "node_modules/multipipe": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/multipipe/-/multipipe-0.1.2.tgz", - "integrity": "sha512-7ZxrUybYv9NonoXgwoOqtStIu18D1c3eFZj27hqgf5kBrBF8Q+tE8V0MW8dKM5QLkQPh1JhhbKgHLY9kifov4Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "duplexer2": "0.0.2" - } - }, - "node_modules/mute-stdout": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mute-stdout/-/mute-stdout-2.0.0.tgz", - "integrity": "sha512-32GSKM3Wyc8dg/p39lWPKYu8zci9mJFzV1Np9Of0ZEpe6Fhssn/FbI7ywAMd40uX+p3ZKh3T5EeCFv81qS3HmQ==", - "dev": true, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/now-and-later": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/now-and-later/-/now-and-later-3.0.0.tgz", - "integrity": "sha512-pGO4pzSdaxhWTGkfSfHx3hVzJVslFPwBp2Myq9MYN/ChfJZF87ochMAXnvz6/58RJSf5ik2q9tXprBBrk2cpcg==", - "dev": true, - "dependencies": { - "once": "^1.4.0" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/npm-check-updates": { - "version": "17.1.14", - "resolved": "https://registry.npmjs.org/npm-check-updates/-/npm-check-updates-17.1.14.tgz", - "integrity": "sha512-dr4bXIxETubLI1tFGeock5hN8yVjahvaVpx+lPO4/O2md3zJuxB7FgH3MIoTvQSCgsgkIRpe0skti01IEAA5tA==", - "license": "Apache-2.0", - "bin": { - "ncu": "build/cli.js", - "npm-check-updates": "build/cli.js" - }, - "engines": { - "node": "^18.18.0 || >=20.0.0", - "npm": ">=8.12.1" - } - }, - "node_modules/object-assign": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-3.0.0.tgz", - "integrity": "sha512-jHP15vXVGeVh1HuaA2wY6lxk+whK/x4KBG88VXeRma7CCun7iGD5qPc4eYykQ9sdQvg8jkwFKsSxHln2ybW3xQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-inspect": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", - "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object-is": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.6.tgz", - "integrity": "sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q==", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.assign": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz", - "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", - "dependencies": { - "call-bind": "^1.0.5", - "define-properties": "^1.2.1", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.defaults": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/object.defaults/-/object.defaults-1.1.0.tgz", - "integrity": "sha512-c/K0mw/F11k4dEUBMW8naXUuBuhxRCfG7W+yFy8EcijU/rSmazOUd1XAEEe6bC0OuXY4HUKjTJv7xbxIMqdxrA==", - "dev": true, - "dependencies": { - "array-each": "^1.0.1", - "array-slice": "^1.0.0", - "for-own": "^1.0.0", - "isobject": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object.pick": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", - "integrity": "sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==", - "dev": true, - "dependencies": { - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dev": true, - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/pako": { - "version": "0.2.9", - "resolved": "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz", - "integrity": "sha512-NUcwaKxUxWrZLpDG+z/xZaCgQITkA/Dv4V/T6bw7VON6l1Xz/VnrBqrYjZQ12TamKHzITTfOEIYUj48y2KXImA==" - }, - "node_modules/parse-filepath": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz", - "integrity": "sha512-FwdRXKCohSVeXqwtYonZTXtbGJKrn+HNyWDYVcp5yuJlesTwNH4rsmRZ+GrKAPJ5bLpRxESMeS+Rl0VCHRvB2Q==", - "dev": true, - "dependencies": { - "is-absolute": "^1.0.0", - "map-cache": "^0.2.0", - "path-root": "^0.1.1" - }, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/parse-node-version": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", - "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", - "dev": true, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/parse-passwd": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz", - "integrity": "sha512-1Y1A//QUXEZK7YKz+rD9WydcE1+EuPr6ZBgKecAB8tmoW6UFv0NREVJe1p+jRxtThkcbbKkfwIbWJe/IeE6m2Q==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "node_modules/path-root": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz", - "integrity": "sha512-QLcPegTHF11axjfojBIoDygmS2E3Lf+8+jI6wOVmNVenrKSo3mFdSGiIgdSHenczw3wPtlVMQaFVwGmM7BJdtg==", - "dev": true, - "dependencies": { - "path-root-regex": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-root-regex": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/path-root-regex/-/path-root-regex-0.1.2.tgz", - "integrity": "sha512-4GlJ6rZDhQZFE0DPVKh0e9jmZ5egZfxTkp7bcRDuPlJXbAwhxcl2dINPUAsjLdejqaLsCeg8axcLjIbvBjN4pQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/pause-stream": { - "version": "0.0.11", - "resolved": "https://registry.npmjs.org/pause-stream/-/pause-stream-0.0.11.tgz", - "integrity": "sha512-e3FBlXLmN/D1S+zHzanP4E/4Z60oFAa3O051qt1pxa7DEJWKAyil6upYVXCWadEnuoqa4Pkc9oUx9zsxYeRv8A==", - "dev": true, - "dependencies": { - "through": "~2.3" - } - }, - "node_modules/pdfkit": { - "version": "0.12.3", - "resolved": "https://registry.npmjs.org/pdfkit/-/pdfkit-0.12.3.tgz", - "integrity": "sha512-+qDLgm2yq6WOKcxTb43lDeo3EtMIDQs0CK1RNqhHC9iT6u0KOmgwAClkYh9xFw2ATbmUZzt4f7KMwDCOfPDluA==", - "dependencies": { - "crypto-js": "^4.0.0", - "fontkit": "^1.8.1", - "linebreak": "^1.0.2", - "png-js": "^1.0.0" - } - }, - "node_modules/pdfmake": { - "version": "0.1.72", - "resolved": "https://registry.npmjs.org/pdfmake/-/pdfmake-0.1.72.tgz", - "integrity": "sha512-xZrPS+Safjf1I8ZYtMoXX83E6C6Pd1zFwa168yNTeeJWHclqf1z9DoYajjlY2uviN7gGyxwVZeou39uSk1oh1g==", - "dependencies": { - "iconv-lite": "^0.6.2", - "linebreak": "^1.0.2", - "pdfkit": "^0.12.0", - "svg-to-pdfkit": "^0.1.8", - "xmldoc": "^1.1.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", - "optional": true - }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true, - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/plugin-error": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-0.1.2.tgz", - "integrity": "sha512-WzZHcm4+GO34sjFMxQMqZbsz3xiNEgonCskQ9v+IroMmYgk/tas8dG+Hr2D6IbRPybZ12oWpzE/w3cGJ6FJzOw==", - "dev": true, - "dependencies": { - "ansi-cyan": "^0.1.1", - "ansi-red": "^0.1.1", - "arr-diff": "^1.0.1", - "arr-union": "^2.0.1", - "extend-shallow": "^1.1.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/plugin-error/node_modules/arr-diff": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-1.1.0.tgz", - "integrity": "sha512-OQwDZUqYaQwyyhDJHThmzId8daf4/RFNLaeh3AevmSeZ5Y7ug4Ga/yKc6l6kTZOBW781rCj103ZuTh8GAsB3+Q==", - "dev": true, - "dependencies": { - "arr-flatten": "^1.0.1", - "array-slice": "^0.2.3" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/plugin-error/node_modules/array-slice": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz", - "integrity": "sha512-rlVfZW/1Ph2SNySXwR9QYkChp8EkOEiTMO5Vwx60usw04i4nWemkm9RXmQqgkQFaLHsqLuADvjp6IfgL9l2M8Q==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/plugin-error/node_modules/extend-shallow": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-1.1.4.tgz", - "integrity": "sha512-L7AGmkO6jhDkEBBGWlLtftA80Xq8DipnrRPr0pyi7GQLXkaq9JYA4xF4z6qnadIC6euiTDKco0cGSU9muw+WTw==", - "dev": true, - "dependencies": { - "kind-of": "^1.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/plugin-error/node_modules/kind-of": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-1.1.0.tgz", - "integrity": "sha512-aUH6ElPnMGon2/YkxRIigV32MOpTVcoXQ1Oo8aYn40s+sJ3j+0gFZsT8HKDcxNy7Fi9zuquWtGaGAahOdv5p/g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/plur": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/plur/-/plur-5.1.0.tgz", - "integrity": "sha512-VP/72JeXqak2KiOzjgKtQen5y3IZHn+9GOuLDafPv0eXa47xq0At93XahYBs26MsifCQ4enGKwbjBTKgb9QJXg==", - "dev": true, - "dependencies": { - "irregular-plurals": "^3.3.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/png-js": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/png-js/-/png-js-1.0.0.tgz", - "integrity": "sha512-k+YsbhpA9e+EFfKjTCH3VW6aoKlyNYI6NYdTfDL4CIvFnvsuO84ttonmZE7rc+v23SLTH8XX+5w/Ak9v0xGY4g==" - }, - "node_modules/possible-typed-array-names": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", - "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", - "dev": true, - "engines": { - "node": ">= 0.6.0" - } - }, - "node_modules/process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true - }, - "node_modules/queue-tick": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/queue-tick/-/queue-tick-1.0.1.tgz", - "integrity": "sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==", - "dev": true - }, - "node_modules/raf": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/raf/-/raf-3.4.1.tgz", - "integrity": "sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA==", - "optional": true, - "dependencies": { - "performance-now": "^2.1.0" - } - }, - "node_modules/readable-stream": { - "version": "4.5.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz", - "integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==", - "dev": true, - "dependencies": { - "abort-controller": "^3.0.0", - "buffer": "^6.0.3", - "events": "^3.3.0", - "process": "^0.11.10", - "string_decoder": "^1.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/readdir-glob": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/readdir-glob/-/readdir-glob-1.1.3.tgz", - "integrity": "sha512-v05I2k7xN8zXvPD9N+z/uhXPaj0sUFCe2rcWZIpBsqxfP7xXFQ0tipAd/wjj1YxWyWtUS5IDJpOG82JKt2EAVA==", - "dev": true, - "dependencies": { - "minimatch": "^5.1.0" - } - }, - "node_modules/readdir-glob/node_modules/minimatch": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", - "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/rechoir": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.8.0.tgz", - "integrity": "sha512-/vxpCXddiX8NGfGO/mTafwjq4aFa/71pvamip0++IQk3zG8cbCj0fifNPrjjF1XMXUne91jL9OoxmdykoEtifQ==", - "dev": true, - "dependencies": { - "resolve": "^1.20.0" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/regenerator-runtime": { - "version": "0.14.1", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", - "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==" - }, - "node_modules/regexp.prototype.flags": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz", - "integrity": "sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==", - "dependencies": { - "call-bind": "^1.0.6", - "define-properties": "^1.2.1", - "es-errors": "^1.3.0", - "set-function-name": "^2.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/remove-trailing-separator": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", - "integrity": "sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==", - "dev": true - }, - "node_modules/replace-ext": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.1.tgz", - "integrity": "sha512-yD5BHCe7quCgBph4rMQ+0KkIRKwWCrHDOX1p1Gp6HwjPM5kVoCdKGNhN7ydqqsX6lJEnQDKZ/tFMiEdQ1dvPEw==", - "dev": true, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/replace-homedir": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/replace-homedir/-/replace-homedir-2.0.0.tgz", - "integrity": "sha512-bgEuQQ/BHW0XkkJtawzrfzHFSN70f/3cNOiHa2QsYxqrjaC30X1k74FJ6xswVBP0sr0SpGIdVFuPwfrYziVeyw==", - "dev": true, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/resolve": { - "version": "1.22.8", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", - "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", - "dev": true, - "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/resolve-dir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz", - "integrity": "sha512-R7uiTjECzvOsWSfdM0QKFNBVFcK27aHOUwdvK53BcW8zqnGdYp0Fbj82cy54+2A4P2tFM22J5kRfe1R+lM/1yg==", - "dev": true, - "dependencies": { - "expand-tilde": "^2.0.0", - "global-modules": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/resolve-options": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/resolve-options/-/resolve-options-2.0.0.tgz", - "integrity": "sha512-/FopbmmFOQCfsCx77BRFdKOniglTiHumLgwvd6IDPihy1GKkadZbgQJBcTb2lMzSR1pndzd96b1nZrreZ7+9/A==", - "dev": true, - "dependencies": { - "value-or-function": "^4.0.0" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/restructure": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/restructure/-/restructure-2.0.1.tgz", - "integrity": "sha512-e0dOpjm5DseomnXx2M5lpdZ5zoHqF1+bqdMJUohoYVVQa7cBdnk7fdmeI6byNWP/kiME72EeTiSypTCVnpLiDg==" - }, - "node_modules/reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true, - "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" - } - }, - "node_modules/rev-hash": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/rev-hash/-/rev-hash-4.1.0.tgz", - "integrity": "sha512-e0EGnaveLY2IYpYwHNdh43WZ2M84KgW3Z/T4F6+Z/BlZI/T1ZbxTWj36xgYgUPOieGXYo2q225jTeUXn+LWYjw==", - "dev": true, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/rev-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/rev-path/-/rev-path-3.0.0.tgz", - "integrity": "sha512-2fUuv6IC7Z+Vj+DXEunJYJDZuwSsaJJHeLar3n2PGvHSH7j5+Xpd/Xh7PenekH4WQhxFuHtsGwd1dCh/HvT6Gw==", - "dev": true, - "dependencies": { - "modify-filename": "^2.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/rgbcolor": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/rgbcolor/-/rgbcolor-1.0.1.tgz", - "integrity": "sha512-9aZLIrhRaD97sgVhtJOW6ckOEh6/GnvQtdVNfdZ6s67+3/XwLS9lBcQYzEEhYVeUowN7pRzMLsyGhK2i/xvWbw==", - "optional": true, - "engines": { - "node": ">= 0.8.15" - } - }, - "node_modules/rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - } - }, - "node_modules/rimraf/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/rimraf/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/rimraf/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" - }, - "node_modules/sax": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.3.0.tgz", - "integrity": "sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA==" - }, - "node_modules/select": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/select/-/select-1.1.2.tgz", - "integrity": "sha512-OwpTSOfy6xSs1+pwcNrv0RBMOzI39Lp3qQKUTPVVPRjCdNa5JH/oPRiqsesIskK8TVgmRiHwO4KXlV2Li9dANA==" - }, - "node_modules/semver-greatest-satisfied-range": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/semver-greatest-satisfied-range/-/semver-greatest-satisfied-range-2.0.0.tgz", - "integrity": "sha512-lH3f6kMbwyANB7HuOWRMlLCa2itaCrZJ+SAqqkSZrZKO/cAsk2EOyaKHUtNkVLFyFW9pct22SFesFp3Z7zpA0g==", - "dev": true, - "dependencies": { - "sver": "^1.8.3" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/set-function-length": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", - "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", - "dependencies": { - "define-data-property": "^1.1.4", - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.4", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/set-function-name": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", - "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", - "dependencies": { - "define-data-property": "^1.1.4", - "es-errors": "^1.3.0", - "functions-have-names": "^1.2.3", - "has-property-descriptors": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/side-channel": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", - "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", - "dependencies": { - "call-bind": "^1.0.7", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.4", - "object-inspect": "^1.13.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/sort-keys": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-5.0.0.tgz", - "integrity": "sha512-Pdz01AvCAottHTPQGzndktFNdbRA75BgOfeT1hH+AMnJFv8lynkPi42rfeEhpx1saTEI3YNMWxfqu0sFD1G8pw==", - "dev": true, - "dependencies": { - "is-plain-obj": "^4.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/sparkles": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/sparkles/-/sparkles-1.0.1.tgz", - "integrity": "sha512-dSO0DDYUahUt/0/pD/Is3VIm5TGJjludZ0HVymmhYF6eNA53PVLhnUk0znSYbH8IYBuJdCE+1luR22jNLMaQdw==", - "dev": true, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/ssf": { - "version": "0.11.2", - "resolved": "https://registry.npmjs.org/ssf/-/ssf-0.11.2.tgz", - "integrity": "sha512-+idbmIXoYET47hH+d7dfm2epdOMUDjqcB4648sTZ+t2JwoyBFL/insLfB/racrDmsKB3diwsDA696pZMieAC5g==", - "dependencies": { - "frac": "~1.1.2" - }, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/stackblur-canvas": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/stackblur-canvas/-/stackblur-canvas-2.7.0.tgz", - "integrity": "sha512-yf7OENo23AGJhBriGx0QivY5JP6Y1HbrrDI6WLt6C5auYZXlQrheoY8hD4ibekFKz1HOfE48Ww8kMWMnJD/zcQ==", - "optional": true, - "engines": { - "node": ">=0.1.14" - } - }, - "node_modules/stop-iteration-iterator": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz", - "integrity": "sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==", - "dependencies": { - "internal-slot": "^1.0.4" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/stream-composer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/stream-composer/-/stream-composer-1.0.2.tgz", - "integrity": "sha512-bnBselmwfX5K10AH6L4c8+S5lgZMWI7ZYrz2rvYjCPB2DIMC4Ig8OpxGpNJSxRZ58oti7y1IcNvjBAz9vW5m4w==", - "dev": true, - "dependencies": { - "streamx": "^2.13.2" - } - }, - "node_modules/stream-exhaust": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/stream-exhaust/-/stream-exhaust-1.0.2.tgz", - "integrity": "sha512-b/qaq/GlBK5xaq1yrK9/zFcyRSTNxmcZwFLGSTG0mXgZl/4Z6GgiyYOXOvY7N3eEvFRAG1bkDRz5EPGSvPYQlw==", - "dev": true - }, - "node_modules/stream-series": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/stream-series/-/stream-series-0.1.1.tgz", - "integrity": "sha512-OrmvvBgH+6PUeVp/hZGycQIrFegjTEbObxsQGXuPPjtFGIJL5E7JTmjHriUcdPOEiTlpc8wWatgnGCZHKVo7zg==", - "dev": true, - "dependencies": { - "pause-stream": "0.0.11" - } - }, - "node_modules/stream-to-array": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/stream-to-array/-/stream-to-array-2.3.0.tgz", - "integrity": "sha512-UsZtOYEn4tWU2RGLOXr/o/xjRBftZRlG3dEWoaHr8j4GuypJ3isitGbVyjQKAuMu+xbiop8q224TjiZWc4XTZA==", - "dev": true, - "dependencies": { - "any-promise": "^1.1.0" - } - }, - "node_modules/streamx": { - "version": "2.16.1", - "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.16.1.tgz", - "integrity": "sha512-m9QYj6WygWyWa3H1YY69amr4nVgy61xfjys7xO7kviL5rfIEc2naf+ewFiOA+aEJD7y0JO3h2GoiUv4TDwEGzQ==", - "dev": true, - "dependencies": { - "fast-fifo": "^1.1.0", - "queue-tick": "^1.0.1" - }, - "optionalDependencies": { - "bare-events": "^2.2.0" - } - }, - "node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.2.0" - } - }, - "node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/string-width/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/string-width/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/stringify-object": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/stringify-object/-/stringify-object-5.0.0.tgz", - "integrity": "sha512-zaJYxz2FtcMb4f+g60KsRNFOpVMUyuJgA51Zi5Z1DOTC3S59+OQiVOzE9GZt0x72uBGWKsQIuBKeF9iusmKFsg==", - "dev": true, - "dependencies": { - "get-own-enumerable-keys": "^1.0.0", - "is-obj": "^3.0.0", - "is-regexp": "^3.1.0" - }, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/yeoman/stringify-object?sponsor=1" - } - }, - "node_modules/strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/strip-bom-buf": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-bom-buf/-/strip-bom-buf-3.0.1.tgz", - "integrity": "sha512-iJaWw2WroigLHzQysdc5WWeUc99p7ea7AEgB6JkY8CMyiO1yTVAA1gIlJJgORElUIR+lcZJkNl1OGChMhvc2Cw==", - "dev": true, - "dependencies": { - "is-utf8": "^0.2.1" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/strip-bom-stream": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/strip-bom-stream/-/strip-bom-stream-5.0.0.tgz", - "integrity": "sha512-Yo472mU+3smhzqeKlIxClre4s4pwtYZEvDNQvY/sJpnChdaxmKuwU28UVx/v1ORKNMxkmj1GBuvxJQyBk6wYMQ==", - "dev": true, - "dependencies": { - "first-chunk-stream": "^5.0.0", - "strip-bom-buf": "^3.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/sver": { - "version": "1.8.4", - "resolved": "https://registry.npmjs.org/sver/-/sver-1.8.4.tgz", - "integrity": "sha512-71o1zfzyawLfIWBOmw8brleKyvnbn73oVHNCsu51uPMz/HWiKkkXsI31JjHW5zqXEqnPYkIiHd8ZmL7FCimLEA==", - "dev": true, - "optionalDependencies": { - "semver": "^6.3.0" - } - }, - "node_modules/sver/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "optional": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/svg-pathdata": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/svg-pathdata/-/svg-pathdata-6.0.3.tgz", - "integrity": "sha512-qsjeeq5YjBZ5eMdFuUa4ZosMLxgr5RZ+F+Y1OrDhuOCEInRMA3x74XdBtggJcj9kOeInz0WE+LgCPDkZFlBYJw==", - "optional": true, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/svg-to-pdfkit": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/svg-to-pdfkit/-/svg-to-pdfkit-0.1.8.tgz", - "integrity": "sha512-QItiGZBy5TstGy+q8mjQTMGRlDDOARXLxH+sgVm1n/LYeo0zFcQlcCh8m4zi8QxctrxB9Kue/lStc/RD5iLadQ==", - "dependencies": { - "pdfkit": ">=0.8.1" - } - }, - "node_modules/tableexport.jquery.plugin": { - "version": "1.30.0", - "resolved": "https://registry.npmjs.org/tableexport.jquery.plugin/-/tableexport.jquery.plugin-1.30.0.tgz", - "integrity": "sha512-kMztiFUsGbxsknFVCDph+5j4e9xmqBBV6Na7T9vRYCUGDxtlndrdxMs9qLJDSOXjlgkIqCUv+S/e5iTUNAFF/g==", - "dependencies": { - "file-saver": ">=2.0.4", - "html2canvas": ">=1.0.0", - "jquery": ">=3.2.1", - "jspdf": ">=2.0.0", - "pdfmake": "^0.1.71", - "xlsx": ">=0.16.0" - } - }, - "node_modules/tar-stream": { - "version": "3.1.7", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.7.tgz", - "integrity": "sha512-qJj60CXt7IU1Ffyc3NJMjh6EkuCFej46zUqJ4J7pqYlThyd9bO0XBTmcOIhSzZJVWfsLks0+nle/j538YAW9RQ==", - "dev": true, - "dependencies": { - "b4a": "^1.6.4", - "fast-fifo": "^1.2.0", - "streamx": "^2.15.0" - } - }, - "node_modules/teex": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/teex/-/teex-1.0.1.tgz", - "integrity": "sha512-eYE6iEI62Ni1H8oIa7KlDU6uQBtqr4Eajni3wX7rpfXD8ysFx8z0+dri+KWEPWpBsxXfxu58x/0jvTVT1ekOSg==", - "dev": true, - "dependencies": { - "streamx": "^2.12.5" - } - }, - "node_modules/text-segmentation": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/text-segmentation/-/text-segmentation-1.0.3.tgz", - "integrity": "sha512-iOiPUo/BGnZ6+54OsWxZidGCsdU8YbE4PSpdPinp7DeMtUJNJBoJ/ouUSTJjHkh1KntHaltHl/gDs2FC4i5+Nw==", - "dependencies": { - "utrie": "^1.0.2" - } - }, - "node_modules/through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", - "dev": true - }, - "node_modules/through2": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", - "dev": true, - "dependencies": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" - } - }, - "node_modules/through2/node_modules/readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", - "dev": true, - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/through2/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "node_modules/through2/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/tildify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/tildify/-/tildify-3.0.0.tgz", - "integrity": "sha512-9ZLMl75qnTLr7oSEmWJbKemFS/fP4TMBiF6PFwGwLpgobebU1ehXoGbadJ+7jT8fjaz2G82JgN9G4taz+o1j1w==", - "dev": true, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/time-stamp": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/time-stamp/-/time-stamp-1.1.0.tgz", - "integrity": "sha512-gLCeArryy2yNTRzTGKbZbloctj64jkZ57hj5zdraXue6aFgd6PmvVtEyiUU+hvU0v7q08oVv8r8ev0tRo6bvgw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/tiny-emitter": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/tiny-emitter/-/tiny-emitter-2.1.0.tgz", - "integrity": "sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q==" - }, - "node_modules/tiny-inflate": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/tiny-inflate/-/tiny-inflate-1.0.3.tgz", - "integrity": "sha512-pkY1fj1cKHb2seWDy0B16HeWyczlJA9/WW3u3c4z/NiWDsO3DOU5D7nhTLE9CF0yXv/QZFY7sEJmj24dK+Rrqw==" - }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/to-through": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/to-through/-/to-through-3.0.0.tgz", - "integrity": "sha512-y8MN937s/HVhEoBU1SxfHC+wxCHkV1a9gW8eAdTadYh/bGyesZIVcbjI+mSpFbSVwQici/XjBjuUyri1dnXwBw==", - "dev": true, - "dependencies": { - "streamx": "^2.12.5" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/tslib": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", - "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" - }, - "node_modules/uglify-js": { - "version": "3.17.4", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.17.4.tgz", - "integrity": "sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==", - "dev": true, - "bin": { - "uglifyjs": "bin/uglifyjs" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/unc-path-regex": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz", - "integrity": "sha512-eXL4nmJT7oCpkZsHZUOJo8hcX3GbsiDOa0Qu9F646fi8dT3XuSVopVqAcEiVzSKKH7UoDti23wNX3qGFxcW5Qg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/undertaker": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/undertaker/-/undertaker-2.0.0.tgz", - "integrity": "sha512-tO/bf30wBbTsJ7go80j0RzA2rcwX6o7XPBpeFcb+jzoeb4pfMM2zUeSDIkY1AWqeZabWxaQZ/h8N9t35QKDLPQ==", - "dev": true, - "dependencies": { - "bach": "^2.0.1", - "fast-levenshtein": "^3.0.0", - "last-run": "^2.0.0", - "undertaker-registry": "^2.0.0" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/undertaker-registry": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/undertaker-registry/-/undertaker-registry-2.0.0.tgz", - "integrity": "sha512-+hhVICbnp+rlzZMgxXenpvTxpuvA67Bfgtt+O9WOE5jo7w/dyiF1VmoZVIHvP2EkUjsyKyTwYKlLhA+j47m1Ew==", - "dev": true, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/undici-types": { - "version": "5.26.5", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", - "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", - "dev": true - }, - "node_modules/unicode-properties": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/unicode-properties/-/unicode-properties-1.4.1.tgz", - "integrity": "sha512-CLjCCLQ6UuMxWnbIylkisbRj31qxHPAurvena/0iwSVbQ2G1VY5/HjV0IRabOEbDHlzZlRdCrD4NhB0JtU40Pg==", - "dependencies": { - "base64-js": "^1.3.0", - "unicode-trie": "^2.0.0" - } - }, - "node_modules/unicode-trie": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-trie/-/unicode-trie-2.0.0.tgz", - "integrity": "sha512-x7bc76x0bm4prf1VLg79uhAzKw8DVboClSN5VxJuQ+LKDOVEW9CdH+VY7SP+vX7xCYQqzzgQpFqz15zeLvAtZQ==", - "dependencies": { - "pako": "^0.2.5", - "tiny-inflate": "^1.0.0" - } - }, - "node_modules/union-value": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/union-value/-/union-value-2.0.1.tgz", - "integrity": "sha512-NmcRHHhUy1qWmp6yYWsaURV2qwfS24TmTtO9S9x0L41wCNNVBQFD3toOzO0cd8SsNrFhbw/O0iYO5uffXGYocw==", - "dev": true, - "dependencies": { - "get-value": "^3.0.1", - "set-value": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/union-value/node_modules/get-value": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/get-value/-/get-value-3.0.1.tgz", - "integrity": "sha512-mKZj9JLQrwMBtj5wxi6MH8Z5eSKaERpAwjg43dPtlGI1ZVEgH/qC7T8/6R2OBSUA+zzHBZgICsVJaEIV2tKTDA==", - "dev": true, - "dependencies": { - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=6.0" - } - }, - "node_modules/union-value/node_modules/is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, - "dependencies": { - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/union-value/node_modules/set-value": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-3.0.3.tgz", - "integrity": "sha512-Xsn/XSatoVOGBbp5hs3UylFDs5Bi9i+ArpVJKdHPniZHoEgRniXTqHWrWrGQ0PbEClVT6WtfnBwR8CAHC9sveg==", - "dev": true, - "dependencies": { - "is-plain-object": "^2.0.4" - }, - "engines": { - "node": ">=6.0" - } - }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "dev": true - }, - "node_modules/utrie": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/utrie/-/utrie-1.0.2.tgz", - "integrity": "sha512-1MLa5ouZiOmQzUbjbu9VmjLzn1QLXBhwpUa7kdLUQK+KQ5KA9I1vk5U4YHe/X2Ch7PYnJfWuWT+VbuxbGwljhw==", - "dependencies": { - "base64-arraybuffer": "^1.0.2" - } - }, - "node_modules/v8flags": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-4.0.1.tgz", - "integrity": "sha512-fcRLaS4H/hrZk9hYwbdRM35D0U8IYMfEClhXxCivOojl+yTRAZH3Zy2sSy6qVCiGbV9YAtPssP6jaChqC9vPCg==", - "dev": true, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/value-or-function": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/value-or-function/-/value-or-function-4.0.0.tgz", - "integrity": "sha512-aeVK81SIuT6aMJfNo9Vte8Dw0/FZINGBV8BfCraGtqVxIeLAEhJyoWs8SmvRVmXfGss2PmmOwZCuBPbZR+IYWg==", - "dev": true, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/vinyl": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-2.2.1.tgz", - "integrity": "sha512-LII3bXRFBZLlezoG5FfZVcXflZgWP/4dCwKtxd5ky9+LOtM4CS3bIRQsmR1KMnMW07jpE8fqR2lcxPZ+8sJIcw==", - "dev": true, - "dependencies": { - "clone": "^2.1.1", - "clone-buffer": "^1.0.0", - "clone-stats": "^1.0.0", - "cloneable-readable": "^1.0.0", - "remove-trailing-separator": "^1.0.1", - "replace-ext": "^1.0.0" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/vinyl-contents": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/vinyl-contents/-/vinyl-contents-2.0.0.tgz", - "integrity": "sha512-cHq6NnGyi2pZ7xwdHSW1v4Jfnho4TEGtxZHw01cmnc8+i7jgR6bRnED/LbrKan/Q7CvVLbnvA5OepnhbpjBZ5Q==", - "dev": true, - "dependencies": { - "bl": "^5.0.0", - "vinyl": "^3.0.0" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/vinyl-contents/node_modules/replace-ext": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-2.0.0.tgz", - "integrity": "sha512-UszKE5KVK6JvyD92nzMn9cDapSk6w/CaFZ96CnmDMUqH9oowfxF/ZjRITD25H4DnOQClLA4/j7jLGXXLVKxAug==", - "dev": true, - "engines": { - "node": ">= 10" - } - }, - "node_modules/vinyl-contents/node_modules/vinyl": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-3.0.0.tgz", - "integrity": "sha512-rC2VRfAVVCGEgjnxHUnpIVh3AGuk62rP3tqVrn+yab0YH7UULisC085+NYH+mnqf3Wx4SpSi1RQMwudL89N03g==", - "dev": true, - "dependencies": { - "clone": "^2.1.2", - "clone-stats": "^1.0.0", - "remove-trailing-separator": "^1.1.0", - "replace-ext": "^2.0.0", - "teex": "^1.0.1" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/vinyl-file": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/vinyl-file/-/vinyl-file-5.0.0.tgz", - "integrity": "sha512-MvkPF/yA1EX7c6p+juVIvp9+Lxp70YUfNKzEWeHMKpUNVSnTZh2coaOqLxI0pmOe2V9nB+OkgFaMDkodaJUyGw==", - "dev": true, - "dependencies": { - "@types/vinyl": "^2.0.7", - "strip-bom-buf": "^3.0.1", - "strip-bom-stream": "^5.0.0", - "vinyl": "^3.0.0" - }, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/vinyl-file/node_modules/replace-ext": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-2.0.0.tgz", - "integrity": "sha512-UszKE5KVK6JvyD92nzMn9cDapSk6w/CaFZ96CnmDMUqH9oowfxF/ZjRITD25H4DnOQClLA4/j7jLGXXLVKxAug==", - "dev": true, - "engines": { - "node": ">= 10" - } - }, - "node_modules/vinyl-file/node_modules/vinyl": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-3.0.0.tgz", - "integrity": "sha512-rC2VRfAVVCGEgjnxHUnpIVh3AGuk62rP3tqVrn+yab0YH7UULisC085+NYH+mnqf3Wx4SpSi1RQMwudL89N03g==", - "dev": true, - "dependencies": { - "clone": "^2.1.2", - "clone-stats": "^1.0.0", - "remove-trailing-separator": "^1.1.0", - "replace-ext": "^2.0.0", - "teex": "^1.0.1" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/vinyl-fs": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/vinyl-fs/-/vinyl-fs-4.0.0.tgz", - "integrity": "sha512-7GbgBnYfaquMk3Qu9g22x000vbYkOex32930rBnc3qByw6HfMEAoELjCjoJv4HuEQxHAurT+nvMHm6MnJllFLw==", - "dev": true, - "dependencies": { + "name": "@opensourcepos/opensourcepos", + "version": "3.4.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "@opensourcepos/opensourcepos", + "version": "3.4.0", + "license": "MIT", + "dependencies": { + "bootstrap": "^3.4.1", + "bootstrap-daterangepicker": "^2.1.27", + "bootstrap-datetime-picker": "2.4.4", + "bootstrap-notify": "^3.1.3", + "bootstrap-select": "^1.13.18", + "bootstrap-table": "^1.23.5", + "bootstrap-tagsinput-2021": "^0.8.6", + "bootstrap-toggle": "^2.2.2", + "bootstrap3-dialog": "github:nakupanda/bootstrap3-dialog#master", + "bootstrap5": "npm:bootstrap@^5.3.3", + "bootswatch": "^3.4.1", + "bootswatch5": "npm:bootswatch@^5.3.3", + "chartist": "^0.11.4", + "chartist-plugin-axistitle": "^0.0.7", + "chartist-plugin-barlabels": "^0.0.5", + "chartist-plugin-pointlabels": "^0.0.6", + "chartist-plugin-tooltips": "^0.0.17", + "clipboard": "^2.0.11", + "coffeescript": "^2.7.0", + "es6-promise": "^4.2.8", + "file-saver": "^2.0.5", + "html2canvas": "^1.4.1", + "jasny-bootstrap": "^3.1.3", + "jquery": "^3.7.1", + "jquery-form": "^4.3.0", + "jquery-ui-dist": "^1.12.1", + "jquery-validation": "^1.19.5", + "js-cookie": "^2.2.1", + "jspdf": "^2.5.1", + "jspdf-autotable": "^3.8.2", + "npm-check-updates": "^17.1.14", + "tableexport.jquery.plugin": "^1.30.0" + }, + "devDependencies": { + "gulp": "^5.0.0", + "gulp-clean": "^0.4.0", + "gulp-clean-css": "^4.3.0", + "gulp-concat": "^2.6.1", + "gulp-debug": "^5.0.1", + "gulp-gzip": "^1.4.2", + "gulp-header": "^2.0.9", + "gulp-inject": "^5.0.5", + "gulp-rename": "^2.0.0", + "gulp-rev": "^10.0.0", + "gulp-run": "^1.7.1", + "gulp-tar": "^4.0.0", + "gulp-uglify": "^3.0.2", + "gulp-zip": "^6.1.0", + "readable-stream": "^4.4.2", + "stream-series": "^0.1.1" + } + }, + "node_modules/@babel/runtime": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.24.4.tgz", + "integrity": "sha512-dkxf7+hn8mFBwKjs9bvBlArzLVxVbS8usaPUDd5p2a9JCL9tB8OaOVN1isD4+Xyk4ns89/xeOmbQvgdK7IIVdA==", + "dependencies": { + "regenerator-runtime": "^0.14.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@gulpjs/messages": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@gulpjs/messages/-/messages-1.1.0.tgz", + "integrity": "sha512-Ys9sazDatyTgZVb4xPlDufLweJ/Os2uHWOv+Caxvy2O85JcnT4M3vc73bi8pdLWlv3fdWQz3pdI9tVwo8rQQSg==", + "dev": true, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/@gulpjs/to-absolute-glob": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@gulpjs/to-absolute-glob/-/to-absolute-glob-4.0.0.tgz", + "integrity": "sha512-kjotm7XJrJ6v+7knhPaRgaT6q8F8K2jiafwYdNHLzmV0uGLuZY43FK6smNSHUPrhq5kX2slCUy+RGG/xGqmIKA==", + "dev": true, + "dependencies": { + "is-negated-glob": "^1.0.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/@popperjs/core": { + "version": "2.11.8", + "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", + "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==", + "peer": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, + "node_modules/@sec-ant/readable-stream": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@sec-ant/readable-stream/-/readable-stream-0.4.1.tgz", + "integrity": "sha512-831qok9r2t8AlxLko40y2ebgSDhenenCatLVeW/uBtnHPyhHOvG0C7TvfgecV+wHzIm5KUICgzmVpWS+IMEAeg==", + "dev": true, + "license": "MIT" + }, + "node_modules/@swc/helpers": { + "version": "0.3.17", + "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.3.17.tgz", + "integrity": "sha512-tb7Iu+oZ+zWJZ3HJqwx8oNwSDIU440hmVMDPhpACWQWnrZHK99Bxs70gT1L2dnr5Hg50ZRWEFkQCAnOVVV0z1Q==", + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@types/expect": { + "version": "1.20.4", + "resolved": "https://registry.npmjs.org/@types/expect/-/expect-1.20.4.tgz", + "integrity": "sha512-Q5Vn3yjTDyCMV50TB6VRIbQNxSE4OmZR86VSbGaNpfUolm0iePBB4KdEEHmxoY5sT2+2DIvXW0rvMDP2nHZ4Mg==", + "dev": true + }, + "node_modules/@types/node": { + "version": "20.12.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.7.tgz", + "integrity": "sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, + "node_modules/@types/raf": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/@types/raf/-/raf-3.4.3.tgz", + "integrity": "sha512-c4YAvMedbPZ5tEyxzQdMoOhhJ4RD3rngZIdwC2/qDN3d7JpEhB6fiBRKVY1lg5B7Wk+uPBjn5f39j1/2MY1oOw==", + "optional": true + }, + "node_modules/@types/vinyl": { + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/@types/vinyl/-/vinyl-2.0.12.tgz", + "integrity": "sha512-Sr2fYMBUVGYq8kj3UthXFAu5UN6ZW+rYr4NACjZQJvHvj+c8lYv0CahmZ2P/r7iUkN44gGUBwqxZkrKXYPb7cw==", + "dev": true, + "dependencies": { + "@types/expect": "^1.20.4", + "@types/node": "*" + } + }, + "node_modules/abort-controller": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", + "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", + "dev": true, + "dependencies": { + "event-target-shim": "^5.0.0" + }, + "engines": { + "node": ">=6.5" + } + }, + "node_modules/adler-32": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/adler-32/-/adler-32-1.3.1.tgz", + "integrity": "sha512-ynZ4w/nUUv5rrsR8UUGoe1VC9hZj6V5hU9Qw1HlMDJGEJw5S7TfTErWTjMys6M7vr0YWcPqs3qAr4ss0nDfP+A==", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/ansi-colors": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-1.1.0.tgz", + "integrity": "sha512-SFKX67auSNoVR38N3L+nvsPjOE0bybKTYbkf5tRvushrAPQ9V75huw0ZxBkKVeRU9kqH3d6HA4xTckbwZ4ixmA==", + "dev": true, + "dependencies": { + "ansi-wrap": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ansi-cyan": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-cyan/-/ansi-cyan-0.1.1.tgz", + "integrity": "sha512-eCjan3AVo/SxZ0/MyIYRtkpxIu/H3xZN7URr1vXVrISxeyz8fUFz0FJziamK4sS8I+t35y4rHg1b2PklyBe/7A==", + "dev": true, + "dependencies": { + "ansi-wrap": "0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ansi-gray": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-gray/-/ansi-gray-0.1.1.tgz", + "integrity": "sha512-HrgGIZUl8h2EHuZaU9hTR/cU5nhKxpVE1V6kdGsQ8e4zirElJ5fvtfc8N7Q1oq1aatO275i8pUFUCpNWCAnVWw==", + "dev": true, + "dependencies": { + "ansi-wrap": "0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ansi-red": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-red/-/ansi-red-0.1.1.tgz", + "integrity": "sha512-ewaIr5y+9CUTGFwZfpECUbFlGcC0GCw1oqR9RI6h1gQCd9Aj2GxSckCnPsVJnmfMZbwFYE+leZGASgkWl06Jow==", + "dev": true, + "dependencies": { + "ansi-wrap": "0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ansi-wrap": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/ansi-wrap/-/ansi-wrap-0.1.0.tgz", + "integrity": "sha512-ZyznvL8k/FZeQHr2T6LzcJ/+vBApDnMNZvfVFy3At0knswWd6rJ3/0Hhmpu8oqa6C92npmozs890sX9Dl6q+Qw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", + "dev": true + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/archiver": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/archiver/-/archiver-6.0.2.tgz", + "integrity": "sha512-UQ/2nW7NMl1G+1UnrLypQw1VdT9XZg/ECcKPq7l+STzStrSivFIXIp34D8M5zeNGW5NoOupdYCHv6VySCPNNlw==", + "dev": true, + "dependencies": { + "archiver-utils": "^4.0.1", + "async": "^3.2.4", + "buffer-crc32": "^0.2.1", + "readable-stream": "^3.6.0", + "readdir-glob": "^1.1.2", + "tar-stream": "^3.0.0", + "zip-stream": "^5.0.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/archiver-utils": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-4.0.1.tgz", + "integrity": "sha512-Q4Q99idbvzmgCTEAAhi32BkOyq8iVI5EwdO0PmBDSGIzzjYNdcFn7Q7k3OzbLy4kLUPXfJtG6fO2RjftXbobBg==", + "dev": true, + "dependencies": { + "glob": "^8.0.0", + "graceful-fs": "^4.2.0", + "lazystream": "^1.0.0", + "lodash": "^4.17.15", + "normalize-path": "^3.0.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/archiver-utils/node_modules/glob": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", + "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/archiver-utils/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/archiver-utils/node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/archiver/node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/arr-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-2.1.0.tgz", + "integrity": "sha512-t5db90jq+qdgk8aFnxEkjqta0B/GHrM1pxzuuZz2zWsOXc5nKu3t+76s/PQBA8FTcM/ipspIH9jWG4OxCBc2eA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-buffer-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz", + "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==", + "dependencies": { + "call-bind": "^1.0.5", + "is-array-buffer": "^3.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-differ": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz", + "integrity": "sha512-LeZY+DZDRnvP7eMuQ6LHfCzUGxAAIViUBliK24P3hWXL6y4SortgR6Nim6xrkfSLlmH0+k+9NYNwVC2s53ZrYQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-each": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/array-each/-/array-each-1.0.1.tgz", + "integrity": "sha512-zHjL5SZa68hkKHBFBK6DJCTtr9sfTCPCaph/L7tMSLcTFgy+zX7E+6q5UArbtOtMBCtxdICpfTCspRse+ywyXA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-slice": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-1.1.0.tgz", + "integrity": "sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-uniq": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/arrify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", + "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/assign-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", + "integrity": "sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/async": { + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.5.tgz", + "integrity": "sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg==", + "dev": true + }, + "node_modules/async-done": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/async-done/-/async-done-2.0.0.tgz", + "integrity": "sha512-j0s3bzYq9yKIVLKGE/tWlCpa3PfFLcrDZLTSVdnnCTGagXuXBJO4SsY9Xdk/fQBirCkH4evW5xOeJXqlAQFdsw==", + "dev": true, + "dependencies": { + "end-of-stream": "^1.4.4", + "once": "^1.4.0", + "stream-exhaust": "^1.0.2" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/async-settle": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/async-settle/-/async-settle-2.0.0.tgz", + "integrity": "sha512-Obu/KE8FurfQRN6ODdHN9LuXqwC+JFIM9NRyZqJJ4ZfLJmIYN9Rg0/kb+wF70VV5+fJusTMQlJ1t5rF7J/ETdg==", + "dev": true, + "dependencies": { + "async-done": "^2.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", + "bin": { + "atob": "bin/atob.js" + }, + "engines": { + "node": ">= 4.5.0" + } + }, + "node_modules/available-typed-arrays": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", + "dependencies": { + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/b4a": { + "version": "1.6.6", + "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.6.6.tgz", + "integrity": "sha512-5Tk1HLk6b6ctmjIkAcU/Ujv/1WqiDl0F0JdRCR80VsOcUlHcu7pWeWRlOqQLHfDEsVx9YH/aif5AG4ehoCtTmg==", + "dev": true + }, + "node_modules/bach": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/bach/-/bach-2.0.1.tgz", + "integrity": "sha512-A7bvGMGiTOxGMpNupYl9HQTf0FFDNF4VCmks4PJpFyN1AX2pdKuxuwdvUz2Hu388wcgp+OvGFNsumBfFNkR7eg==", + "dev": true, + "dependencies": { + "async-done": "^2.0.0", + "async-settle": "^2.0.0", + "now-and-later": "^3.0.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "node_modules/bare-events": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/bare-events/-/bare-events-2.2.2.tgz", + "integrity": "sha512-h7z00dWdG0PYOQEvChhOSWvOfkIKsdZGkWr083FgN/HyoQuebSew/cgirYqh9SCuy/hRvxc5Vy6Fw8xAmYHLkQ==", + "dev": true, + "optional": true + }, + "node_modules/base64-arraybuffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-1.0.2.tgz", + "integrity": "sha512-I3yl4r9QB5ZRY3XuJVEPfc2XhZO6YweFPI+UovAzn+8/hb3oJ6lnysaFcjVpkCPfVWFUDvoZ8kmVDP7WyRtYtQ==", + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/beeper": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/beeper/-/beeper-1.1.1.tgz", + "integrity": "sha512-3vqtKL1N45I5dV0RdssXZG7X6pCqQrWPNOlBPZPrd+QkE2HEhR57Z04m0KtpbsZH73j+a3F8UD1TQnn+ExTvIA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/bl": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-5.1.0.tgz", + "integrity": "sha512-tv1ZJHLfTDnXE6tMHv73YgSJaWR2AFuPwMntBe7XL/GBFHnT0CLnsHMogfk5+GzCDC5ZWarSCYaIGATZt9dNsQ==", + "dev": true, + "dependencies": { + "buffer": "^6.0.3", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "node_modules/bl/node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/bootstrap": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-3.4.1.tgz", + "integrity": "sha512-yN5oZVmRCwe5aKwzRj6736nSmKDX7pLYwsXiCj/EYmo16hODaBiT4En5btW/jhBF/seV+XMx3aYwukYC3A49DA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/bootstrap-daterangepicker": { + "version": "2.1.30", + "resolved": "https://registry.npmjs.org/bootstrap-daterangepicker/-/bootstrap-daterangepicker-2.1.30.tgz", + "integrity": "sha512-lZAmyQxwsthEbsIBKl2KVcUca+b/O8uAJxxY8AvlsCYF9dQlIY7WjskuqMJ3b/1YdXUgxHN/R6HFdVVNFSgeVQ==", + "dependencies": { + "jquery": ">=1.10", + "moment": "^2.9.0" + } + }, + "node_modules/bootstrap-datetime-picker": { + "version": "2.4.4", + "resolved": "https://registry.npmjs.org/bootstrap-datetime-picker/-/bootstrap-datetime-picker-2.4.4.tgz", + "integrity": "sha512-TTknlrqoJ7DcJJpkmvg+TneUiWNG65gfjHYbTM5MpJ60DGWmcQJWN7+6eU78WvqxE6Dz/yKmeyLDEzzWVgw43A==" + }, + "node_modules/bootstrap-notify": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/bootstrap-notify/-/bootstrap-notify-3.1.3.tgz", + "integrity": "sha512-cnTactFVG8aHri03+RmuZ5sl9VcA+jTTM/mTdEOQN+R1V9u4YBu8Ca+Pf6NGeVfieGv0Z6CxK8FzlWg59omzyg==" + }, + "node_modules/bootstrap-select": { + "version": "1.13.18", + "resolved": "https://registry.npmjs.org/bootstrap-select/-/bootstrap-select-1.13.18.tgz", + "integrity": "sha512-V1IzK4rxBq5FrJtkzSH6RmFLFBsjx50byFbfAf8jYyXROWs7ZpprGjdHeoyq2HSsHyjJhMMwjsQhRoYAfxCGow==", + "peerDependencies": { + "bootstrap": ">=3.0.0", + "jquery": "1.9.1 - 3" + } + }, + "node_modules/bootstrap-table": { + "version": "1.23.5", + "resolved": "https://registry.npmjs.org/bootstrap-table/-/bootstrap-table-1.23.5.tgz", + "integrity": "sha512-9WByoSpJvA73gi2YYIlX6IWR74oZtBmSixul/Th8FTBtBd/kZRpbKESGTjhA3BA3AYTnfyY8Iy1KeRWPlV2GWQ==", + "license": "MIT", + "peerDependencies": { + "jquery": "3" + } + }, + "node_modules/bootstrap-tagsinput-2021": { + "version": "0.8.6", + "resolved": "https://registry.npmjs.org/bootstrap-tagsinput-2021/-/bootstrap-tagsinput-2021-0.8.6.tgz", + "integrity": "sha512-/ZbR3Hl6BtpbuVuoXPxiyoh4a4fKyoyKn4pFXyL4fGEEQ3uwPS4/urrJ5O9ew2WkfBkJUdHnCLtNuVeUlz6HoA==" + }, + "node_modules/bootstrap-toggle": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/bootstrap-toggle/-/bootstrap-toggle-2.2.2.tgz", + "integrity": "sha512-AkYD/i3NGCEksIb/PmmUrrxpa0DYi7Si30e9Ldhou2t1HTd9npoXUsxJJjFPvlV7iLUptlysWTcYD7i3DKV6qg==" + }, + "node_modules/bootstrap3-dialog": { + "version": "1.35.4", + "resolved": "git+ssh://git@github.com/nakupanda/bootstrap3-dialog.git#a491a98c97921114883ad44e5715fe28396dbaea" + }, + "node_modules/bootstrap5": { + "name": "bootstrap", + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.3.3.tgz", + "integrity": "sha512-8HLCdWgyoMguSO9o+aH+iuZ+aht+mzW0u3HIMzVu7Srrpv7EBBxTnrFlSCskwdY1+EOFQSm7uMJhNQHkdPcmjg==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/twbs" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/bootstrap" + } + ], + "peerDependencies": { + "@popperjs/core": "^2.11.8" + } + }, + "node_modules/bootswatch": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/bootswatch/-/bootswatch-3.4.1.tgz", + "integrity": "sha512-0hL4A8OUiqABgPipGrojf/hyhr5RS257xCNARlbK34HaMfhV5fXvwEooN4/ri9+jgX47J4Wg24ZPmfZ2xD2cKw==", + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/bootswatch5": { + "name": "bootswatch", + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/bootswatch/-/bootswatch-5.3.3.tgz", + "integrity": "sha512-cJLhobnZsVCelU7zdH/L7wpcXAyUoTX4/5l2dWQ0JXgaVK80BdTQNU/ImWwoyIGBeyms4iQDAdNtOfPQZf0Atg==" + }, + "node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dev": true, + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/brotli": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/brotli/-/brotli-1.3.3.tgz", + "integrity": "sha512-oTKjJdShmDuGW94SyyaoQvAjf30dZaHnjJ8uAF+u2/vGJkJbJPJAT1gDiOJP5v1Zb6f9KEyW/1HpuaWIXtGHPg==", + "dependencies": { + "base64-js": "^1.1.2" + } + }, + "node_modules/btoa": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/btoa/-/btoa-1.2.1.tgz", + "integrity": "sha512-SB4/MIGlsiVkMcHmT+pSmIPoNDoHg+7cMzmt3Uxt628MTz2487DKSqK/fuhFBrkuqrYv5UCEnACpF4dTFNKc/g==", + "bin": { + "btoa": "bin/btoa.js" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, + "node_modules/buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/call-bind": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", + "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/canvg": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/canvg/-/canvg-3.0.10.tgz", + "integrity": "sha512-qwR2FRNO9NlzTeKIPIKpnTY6fqwuYSequ8Ru8c0YkYU7U0oW+hLUvWadLvAu1Rl72OMNiFhoLu4f8eUjQ7l/+Q==", + "optional": true, + "dependencies": { + "@babel/runtime": "^7.12.5", + "@types/raf": "^3.4.0", + "core-js": "^3.8.3", + "raf": "^3.4.1", + "regenerator-runtime": "^0.13.7", + "rgbcolor": "^1.0.1", + "stackblur-canvas": "^2.0.0", + "svg-pathdata": "^6.0.3" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/canvg/node_modules/regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", + "optional": true + }, + "node_modules/cfb": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/cfb/-/cfb-1.2.2.tgz", + "integrity": "sha512-KfdUZsSOw19/ObEWasvBP/Ac4reZvAGauZhs6S/gqNhXhI7cKwvlH7ulj+dOEYnca4bm4SGo8C1bTAQvnTjgQA==", + "dependencies": { + "adler-32": "~1.3.0", + "crc-32": "~1.2.0" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/chalk": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", + "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", + "dev": true, + "engines": { + "node": "^12.17.0 || ^14.13 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/chartist": { + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/chartist/-/chartist-0.11.4.tgz", + "integrity": "sha512-H4AimxaUD738/u9Mq8t27J4lh6STsLi4BQHt65nOtpLk3xyrBPaLiLMrHw7/WV9CmsjGA02WihjuL5qpSagLYw==", + "engines": { + "node": ">=4.6.0" + } + }, + "node_modules/chartist-plugin-axistitle": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/chartist-plugin-axistitle/-/chartist-plugin-axistitle-0.0.7.tgz", + "integrity": "sha512-qFG7R/qiZZyCn/gx9WJpMcnyhE0LIpGBxDnPpYtzY5cG53fHBkvJDsAEHEFFfO1l/RHI0G8oN9fpoUD/BMeiFA==", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/chartist-plugin-barlabels": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/chartist-plugin-barlabels/-/chartist-plugin-barlabels-0.0.5.tgz", + "integrity": "sha512-QJpFB37jCD0pyDqb0/FSnaXXqUhnzabN1gULkBqK0VOoC/KerihR5EomNdOPnjZoEm8T9gRSNbxGGObZKJFKiw==", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/chartist-plugin-pointlabels": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/chartist-plugin-pointlabels/-/chartist-plugin-pointlabels-0.0.6.tgz", + "integrity": "sha512-DUemVUBWAN0qAHBUMXKKLrDCsUL1qWWwN+EfxN8gpftgXSheMiYeq83uHoHyp4X+W5Pz/aUWBf3N/HJwj+eRFw==", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/chartist-plugin-tooltips": { + "version": "0.0.17", + "resolved": "https://registry.npmjs.org/chartist-plugin-tooltips/-/chartist-plugin-tooltips-0.0.17.tgz", + "integrity": "sha512-frXv269MyRHfuhyZILdTTsNG4PP3+Ab0NkysdnMk73aN4w76oWarsGguuciYzZawKrctp8RZzU/W44A4+Y4vOg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "dev": true, + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/clean-css": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.3.tgz", + "integrity": "sha512-VcMWDN54ZN/DS+g58HYL5/n4Zrqe8vHJpGA8KdgUXFU4fuP/aHNw8eld9SyEIyabIMJX/0RaY/fplOo5hYLSFA==", + "dev": true, + "dependencies": { + "source-map": "~0.6.0" + }, + "engines": { + "node": ">= 4.0" + } + }, + "node_modules/clipboard": { + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/clipboard/-/clipboard-2.0.11.tgz", + "integrity": "sha512-C+0bbOqkezLIsmWSvlsXS0Q0bmkugu7jcfMIACB+RDEntIzQIkdr148we28AfSloQLRdZlYL/QYyrq05j/3Faw==", + "dependencies": { + "good-listener": "^1.2.2", + "select": "^1.1.2", + "tiny-emitter": "^2.0.0" + } + }, + "node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "node_modules/cliui/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/cliui/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/cliui/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cliui/node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/clone": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", + "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/clone-buffer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/clone-buffer/-/clone-buffer-1.0.0.tgz", + "integrity": "sha512-KLLTJWrvwIP+OPfMn0x2PheDEP20RPUcGXj/ERegTgdmPEZylALQldygiqrPPu8P45uNuPs7ckmReLY6v/iA5g==", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/clone-stats": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-1.0.0.tgz", + "integrity": "sha512-au6ydSpg6nsrigcZ4m8Bc9hxjeW+GJ8xh5G3BJCMt4WXe1H10UNaVOamqQTmrx1kjVuxAHIQSNU6hY4Nsn9/ag==", + "dev": true + }, + "node_modules/cloneable-readable": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/cloneable-readable/-/cloneable-readable-1.1.3.tgz", + "integrity": "sha512-2EF8zTQOxYq70Y4XKtorQupqF0m49MBz2/yf5Bj+MHjvpG3Hy7sImifnqD6UA+TKYxeSV+u6qqQPawN5UvnpKQ==", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "process-nextick-args": "^2.0.0", + "readable-stream": "^2.3.5" + } + }, + "node_modules/cloneable-readable/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/cloneable-readable/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/cloneable-readable/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/codepage": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/codepage/-/codepage-1.15.0.tgz", + "integrity": "sha512-3g6NUTPd/YtuuGrhMnOMRjFc+LJw/bnMp3+0r/Wcz3IXUuCosKRJvMphm5+Q+bvTVGcJJuRvVLuYba+WojaFaA==", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/coffeescript": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/coffeescript/-/coffeescript-2.7.0.tgz", + "integrity": "sha512-hzWp6TUE2d/jCcN67LrW1eh5b/rSDKQK6oD6VMLlggYVUUFexgTH9z3dNYihzX4RMhze5FTUsUmOXViJKFQR/A==", + "bin": { + "cake": "bin/cake", + "coffee": "bin/coffee" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/color-support": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", + "dev": true, + "bin": { + "color-support": "bin.js" + } + }, + "node_modules/compress-commons": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-5.0.3.tgz", + "integrity": "sha512-/UIcLWvwAQyVibgpQDPtfNM3SvqN7G9elAPAV7GM0L53EbNWwWiCsWtK8Fwed/APEbptPHXs5PuW+y8Bq8lFTA==", + "dev": true, + "dependencies": { + "crc-32": "^1.2.0", + "crc32-stream": "^5.0.0", + "normalize-path": "^3.0.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/compress-commons/node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "node_modules/concat-with-sourcemaps": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/concat-with-sourcemaps/-/concat-with-sourcemaps-1.1.0.tgz", + "integrity": "sha512-4gEjHJFT9e+2W/77h/DS5SGUgwDaOwprX8L/gl5+3ixnzkVJJsZWDSelmN3Oilw3LNDZjZV0yqH1hLG3k6nghg==", + "dev": true, + "dependencies": { + "source-map": "^0.6.1" + } + }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true + }, + "node_modules/copy-props": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/copy-props/-/copy-props-4.0.0.tgz", + "integrity": "sha512-bVWtw1wQLzzKiYROtvNlbJgxgBYt2bMJpkCbKmXM3xyijvcjjWXEk5nyrrT3bgJ7ODb19ZohE2T0Y3FgNPyoTw==", + "dev": true, + "dependencies": { + "each-props": "^3.0.0", + "is-plain-object": "^5.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/core-js": { + "version": "3.37.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.37.0.tgz", + "integrity": "sha512-fu5vHevQ8ZG4og+LXug8ulUtVxjOcEYvifJr7L5Bfq9GOztVqsKd9/59hUk2ZSbCrS3BqUr3EpaYGIYzq7g3Ug==", + "hasInstallScript": true, + "optional": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", + "dev": true + }, + "node_modules/crc-32": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz", + "integrity": "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==", + "bin": { + "crc32": "bin/crc32.njs" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/crc32-stream": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-5.0.1.tgz", + "integrity": "sha512-lO1dFui+CEUh/ztYIpgpKItKW9Bb4NWakCRJrnqAbFIYD+OZAwb2VfD5T5eXMw2FNcsDHkQcNl/Wh3iVXYwU6g==", + "dev": true, + "dependencies": { + "crc-32": "^1.2.0", + "readable-stream": "^3.4.0" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/crc32-stream/node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/crypto-js": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-4.2.0.tgz", + "integrity": "sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q==" + }, + "node_modules/css-line-break": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/css-line-break/-/css-line-break-2.1.0.tgz", + "integrity": "sha512-FHcKFCZcAha3LwfVBhCQbW2nCNbkZXn7KVUJcsT5/P8YmfsVja0FMPJr0B903j/E69HUphKiV9iQArX8SDYA4w==", + "dependencies": { + "utrie": "^1.0.2" + } + }, + "node_modules/dateformat": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-2.2.0.tgz", + "integrity": "sha512-GODcnWq3YGoTnygPfi02ygEiRxqUxpJwuRHjdhJYuxpcZmDq4rjBiXYmbCCzStxo176ixfLT6i4NPwQooRySnw==", + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + } + }, + "node_modules/deep-equal": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.3.tgz", + "integrity": "sha512-ZIwpnevOurS8bpT4192sqAowWM76JDKSHYzMLty3BZGSswgq6pBaH3DhCSW5xVAZICZyKdOBPjwww5wfgT/6PA==", + "dependencies": { + "array-buffer-byte-length": "^1.0.0", + "call-bind": "^1.0.5", + "es-get-iterator": "^1.1.3", + "get-intrinsic": "^1.2.2", + "is-arguments": "^1.1.1", + "is-array-buffer": "^3.0.2", + "is-date-object": "^1.0.5", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "isarray": "^2.0.5", + "object-is": "^1.1.5", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.5.1", + "side-channel": "^1.0.4", + "which-boxed-primitive": "^1.0.2", + "which-collection": "^1.0.1", + "which-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/deep-equal/node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==" + }, + "node_modules/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/define-properties": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", + "dependencies": { + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/delegate": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/delegate/-/delegate-3.2.0.tgz", + "integrity": "sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw==" + }, + "node_modules/detect-file": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz", + "integrity": "sha512-DtCOLG98P007x7wiiOmfI0fi3eIKyWiLTGJ2MDnVi/E04lWGbf+JzrRHMm0rgIIZJGtHpKpbVgLWHrv8xXpc3Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/dfa": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/dfa/-/dfa-1.2.0.tgz", + "integrity": "sha512-ED3jP8saaweFTjeGX8HQPjeC1YYyZs98jGNZx6IiBvxW7JG5v492kamAQB3m2wop07CvU/RQmzcKr6bgcC5D/Q==" + }, + "node_modules/dompurify": { + "version": "2.5.6", + "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-2.5.6.tgz", + "integrity": "sha512-zUTaUBO8pY4+iJMPE1B9XlO2tXVYIcEA4SNGtvDELzTSCQO7RzH+j7S180BmhmJId78lqGU2z19vgVx2Sxs/PQ==", + "optional": true + }, + "node_modules/duplexer2": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.0.2.tgz", + "integrity": "sha512-+AWBwjGadtksxjOQSFDhPNQbed7icNXApT4+2BNpsXzcCBiInq2H9XW0O8sfHFaPmnQRs7cg/P0fAr2IWQSW0g==", + "dev": true, + "license": "BSD", + "dependencies": { + "readable-stream": "~1.1.9" + } + }, + "node_modules/duplexer2/node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/duplexer2/node_modules/readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/duplexer2/node_modules/string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/each-props": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/each-props/-/each-props-3.0.0.tgz", + "integrity": "sha512-IYf1hpuWrdzse/s/YJOrFmU15lyhSzxelNVAHTEG3DtP4QsLTWZUzcUL3HMXmKQxXpa4EIrBPpwRgj0aehdvAw==", + "dev": true, + "dependencies": { + "is-plain-object": "^5.0.0", + "object.defaults": "^1.1.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/easy-transform-stream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/easy-transform-stream/-/easy-transform-stream-1.0.1.tgz", + "integrity": "sha512-ktkaa6XR7COAR3oj02CF3IOgz2m1hCaY3SfzvKT4Svt2MhHw9XCt+ncJNWfe2TGz31iqzNGZ8spdKQflj+Rlog==", + "dev": true, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "dev": true, + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/es-define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", + "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", + "dependencies": { + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-get-iterator": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz", + "integrity": "sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==", + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "has-symbols": "^1.0.3", + "is-arguments": "^1.1.1", + "is-map": "^2.0.2", + "is-set": "^2.0.2", + "is-string": "^1.0.7", + "isarray": "^2.0.5", + "stop-iteration-iterator": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-get-iterator/node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==" + }, + "node_modules/es6-promise": { + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", + "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==" + }, + "node_modules/escalade": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", + "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/event-target-shim": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", + "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "dev": true, + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/expand-tilde": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", + "integrity": "sha512-A5EmesHW6rfnZ9ysHQjPdJRni0SRar0tjtG5MNtm9n5TUvsYU8oozprtRD4AqHxcZWWlVuAmQo2nWKfN9oyjTw==", + "dev": true, + "dependencies": { + "homedir-polyfill": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "dev": true + }, + "node_modules/extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", + "dev": true, + "dependencies": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fancy-log": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.3.tgz", + "integrity": "sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw==", + "dev": true, + "dependencies": { + "ansi-gray": "^0.1.1", + "color-support": "^1.1.3", + "parse-node-version": "^1.0.0", + "time-stamp": "^1.0.0" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/fast-fifo": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/fast-fifo/-/fast-fifo-1.3.2.tgz", + "integrity": "sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==", + "dev": true + }, + "node_modules/fast-levenshtein": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-3.0.0.tgz", + "integrity": "sha512-hKKNajm46uNmTlhHSyZkmToAc56uZJwYq7yrciZjqOxnlfQwERDQJmHPUp7m1m9wx8vgOe8IaCKZ5Kv2k1DdCQ==", + "dev": true, + "dependencies": { + "fastest-levenshtein": "^1.0.7" + } + }, + "node_modules/fastest-levenshtein": { + "version": "1.0.16", + "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz", + "integrity": "sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==", + "dev": true, + "engines": { + "node": ">= 4.9.1" + } + }, + "node_modules/fastq": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", + "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", + "dev": true, + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/fflate": { + "version": "0.4.8", + "resolved": "https://registry.npmjs.org/fflate/-/fflate-0.4.8.tgz", + "integrity": "sha512-FJqqoDBR00Mdj9ppamLa/Y7vxm+PRmNWA67N846RvsoYVMKB4q3y/de5PA7gUmRMYK/8CMz2GDZQmCRN1wBcWA==" + }, + "node_modules/file-saver": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/file-saver/-/file-saver-2.0.5.tgz", + "integrity": "sha512-P9bmyZ3h/PRG+Nzga+rbdI4OEpNDzAVyy74uVO9ATgzLK6VtAsYybF/+TOCvrc0MO793d6+42lLyZTw7/ArVzA==" + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/findup-sync": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-5.0.0.tgz", + "integrity": "sha512-MzwXju70AuyflbgeOhzvQWAvvQdo1XL0A9bVvlXsYcFEBM87WR4OakL4OfZq+QRmr+duJubio+UtNQCPsVESzQ==", + "dev": true, + "dependencies": { + "detect-file": "^1.0.0", + "is-glob": "^4.0.3", + "micromatch": "^4.0.4", + "resolve-dir": "^1.0.1" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/fined": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fined/-/fined-2.0.0.tgz", + "integrity": "sha512-OFRzsL6ZMHz5s0JrsEr+TpdGNCtrVtnuG3x1yzGNiQHT0yaDnXAj8V/lWcpJVrnoDpcwXcASxAZYbuXda2Y82A==", + "dev": true, + "dependencies": { + "expand-tilde": "^2.0.2", + "is-plain-object": "^5.0.0", + "object.defaults": "^1.1.0", + "object.pick": "^1.3.0", + "parse-filepath": "^1.0.2" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/first-chunk-stream": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/first-chunk-stream/-/first-chunk-stream-5.0.0.tgz", + "integrity": "sha512-WdHo4ejd2cG2Dl+sLkW79SctU7mUQDfr4s1i26ffOZRs5mgv+BRttIM9gwcq0rDbemo0KlpVPaa3LBVLqPXzcQ==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flagged-respawn": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/flagged-respawn/-/flagged-respawn-2.0.0.tgz", + "integrity": "sha512-Gq/a6YCi8zexmGHMuJwahTGzXlAZAOsbCVKduWXC6TlLCjjFRlExMJc4GC2NYPYZ0r/brw9P7CpRgQmlPVeOoA==", + "dev": true, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/fontkit": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/fontkit/-/fontkit-1.9.0.tgz", + "integrity": "sha512-HkW/8Lrk8jl18kzQHvAw9aTHe1cqsyx5sDnxncx652+CIfhawokEPkeM3BoIC+z/Xv7a0yMr0f3pRRwhGH455g==", + "dependencies": { + "@swc/helpers": "^0.3.13", + "brotli": "^1.3.2", + "clone": "^2.1.2", + "deep-equal": "^2.0.5", + "dfa": "^1.2.0", + "restructure": "^2.0.1", + "tiny-inflate": "^1.0.3", + "unicode-properties": "^1.3.1", + "unicode-trie": "^2.0.0" + } + }, + "node_modules/for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "dependencies": { + "is-callable": "^1.1.3" + } + }, + "node_modules/for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/for-own": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", + "integrity": "sha512-0OABksIGrxKK8K4kynWkQ7y1zounQxP+CWnyclVwj81KW3vlLlGUx57DKGcP/LH216GzqnstnPocF16Nxs0Ycg==", + "dev": true, + "dependencies": { + "for-in": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/frac": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/frac/-/frac-1.1.2.tgz", + "integrity": "sha512-w/XBfkibaTl3YDqASwfDUqkna4Z2p9cFSr1aHDt0WoMTECnRfBOv2WArlZILlqgWlmdIlALXGpM2AOhEk5W3IA==", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/fs-mkdirp-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fs-mkdirp-stream/-/fs-mkdirp-stream-2.0.1.tgz", + "integrity": "sha512-UTOY+59K6IA94tec8Wjqm0FSh5OVudGNB0NL/P6fB3HiE3bYOY3VYBGijsnOHNkQSwC1FKkU77pmq7xp9CskLw==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.8", + "streamx": "^2.12.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", + "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-own-enumerable-keys": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/get-own-enumerable-keys/-/get-own-enumerable-keys-1.0.0.tgz", + "integrity": "sha512-PKsK2FSrQCyxcGHsGrLDcK0lx+0Ke+6e8KFFozA9/fIQLhQzPaRvJFdcz7+Axg3jUH/Mq+NI4xa5u/UT2tQskA==", + "dev": true, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/get-stream": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-9.0.1.tgz", + "integrity": "sha512-kVCxPF3vQM/N0B1PmoqVUqgHP+EeVjmZSQn+1oCRPxd2P21P2F19lIgbR3HBosbB1PUhOAoctJnfEn2GbN2eZA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@sec-ant/readable-stream": "^0.4.1", + "is-stream": "^4.0.1" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/glob-stream": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/glob-stream/-/glob-stream-8.0.2.tgz", + "integrity": "sha512-R8z6eTB55t3QeZMmU1C+Gv+t5UnNRkA55c5yo67fAVfxODxieTwsjNG7utxS/73NdP1NbDgCrhVEg2h00y4fFw==", + "dev": true, + "dependencies": { + "@gulpjs/to-absolute-glob": "^4.0.0", + "anymatch": "^3.1.3", + "fastq": "^1.13.0", + "glob-parent": "^6.0.2", + "is-glob": "^4.0.3", + "is-negated-glob": "^1.0.0", + "normalize-path": "^3.0.0", + "streamx": "^2.12.5" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/glob-stream/node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/glob-watcher": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/glob-watcher/-/glob-watcher-6.0.0.tgz", + "integrity": "sha512-wGM28Ehmcnk2NqRORXFOTOR064L4imSw3EeOqU5bIwUf62eXGwg89WivH6VMahL8zlQHeodzvHpXplrqzrz3Nw==", + "dev": true, + "dependencies": { + "async-done": "^2.0.0", + "chokidar": "^3.5.3" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/global-modules": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", + "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==", + "dev": true, + "dependencies": { + "global-prefix": "^1.0.1", + "is-windows": "^1.0.1", + "resolve-dir": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/global-prefix": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", + "integrity": "sha512-5lsx1NUDHtSjfg0eHlmYvZKv8/nVqX4ckFbM+FrGcQ+04KWcWFo9P5MxPZYSzUvyzmdTbI7Eix8Q4IbELDqzKg==", + "dev": true, + "dependencies": { + "expand-tilde": "^2.0.2", + "homedir-polyfill": "^1.0.1", + "ini": "^1.3.4", + "is-windows": "^1.0.1", + "which": "^1.2.14" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/global-prefix/node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "dev": true + }, + "node_modules/global-prefix/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/glogg": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/glogg/-/glogg-1.0.2.tgz", + "integrity": "sha512-5mwUoSuBk44Y4EshyiqcH95ZntbDdTQqA3QYSrxmzj28Ai0vXBGMH1ApSANH14j2sIRtqCEyg6PfsuP7ElOEDA==", + "dev": true, + "dependencies": { + "sparkles": "^1.0.0" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/good-listener": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/good-listener/-/good-listener-1.2.2.tgz", + "integrity": "sha512-goW1b+d9q/HIwbVYZzZ6SsTr4IgE+WA44A0GmPIQstuOrgsFcT7VEJ48nmr9GaRtNu0XTKacFLGnBPAM6Afouw==", + "dependencies": { + "delegate": "^3.1.2" + } + }, + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "dependencies": { + "get-intrinsic": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true + }, + "node_modules/group-array": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/group-array/-/group-array-1.0.0.tgz", + "integrity": "sha512-PJresALe5TUzSIcdWKLdAKcdUDxv8du2EGueShgAL2xknbcTo5Bk1xbNaNhxpWxxAx/SV7N+5S0UyK7XV0+QhA==", + "dev": true, + "dependencies": { + "arr-flatten": "^1.1.0", + "for-own": "^1.0.0", + "get-value": "^3.0.1", + "kind-of": "^6.0.2", + "split-string": "^6.1.0", + "union-value": "^2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/group-array/node_modules/get-value": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/get-value/-/get-value-3.0.1.tgz", + "integrity": "sha512-mKZj9JLQrwMBtj5wxi6MH8Z5eSKaERpAwjg43dPtlGI1ZVEgH/qC7T8/6R2OBSUA+zzHBZgICsVJaEIV2tKTDA==", + "dev": true, + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/group-array/node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/group-array/node_modules/split-string": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/split-string/-/split-string-6.1.0.tgz", + "integrity": "sha512-9UBdnmnvx2NLLd4bMs7CEKK+wSzbujVv3ONyorkP1o8M3pVJQtXDO1cN19xD1JJs6ltOrtPrkUND0HzLSinUcA==", + "dev": true, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/gulp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/gulp/-/gulp-5.0.0.tgz", + "integrity": "sha512-S8Z8066SSileaYw1S2N1I64IUc/myI2bqe2ihOBzO6+nKpvNSg7ZcWJt/AwF8LC/NVN+/QZ560Cb/5OPsyhkhg==", + "dev": true, + "dependencies": { + "glob-watcher": "^6.0.0", + "gulp-cli": "^3.0.0", + "undertaker": "^2.0.0", + "vinyl-fs": "^4.0.0" + }, + "bin": { + "gulp": "bin/gulp.js" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/gulp-clean": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/gulp-clean/-/gulp-clean-0.4.0.tgz", + "integrity": "sha512-DARK8rNMo4lHOFLGTiHEJdf19GuoBDHqGUaypz+fOhrvOs3iFO7ntdYtdpNxv+AzSJBx/JfypF0yEj9ks1IStQ==", + "dev": true, + "dependencies": { + "fancy-log": "^1.3.2", + "plugin-error": "^0.1.2", + "rimraf": "^2.6.2", + "through2": "^2.0.3", + "vinyl": "^2.1.0" + }, + "engines": { + "node": ">=0.9" + } + }, + "node_modules/gulp-clean-css": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/gulp-clean-css/-/gulp-clean-css-4.3.0.tgz", + "integrity": "sha512-mGyeT3qqFXTy61j0zOIciS4MkYziF2U594t2Vs9rUnpkEHqfu6aDITMp8xOvZcvdX61Uz3y1mVERRYmjzQF5fg==", + "dev": true, + "dependencies": { + "clean-css": "4.2.3", + "plugin-error": "1.0.1", + "through2": "3.0.1", + "vinyl-sourcemaps-apply": "0.2.1" + } + }, + "node_modules/gulp-clean-css/node_modules/arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gulp-clean-css/node_modules/plugin-error": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-1.0.1.tgz", + "integrity": "sha512-L1zP0dk7vGweZME2i+EeakvUNqSrdiI3F91TwEoYiGrAfUXmVv6fJIq4g82PAXxNsWOp0J7ZqQy/3Szz0ajTxA==", + "dev": true, + "dependencies": { + "ansi-colors": "^1.0.1", + "arr-diff": "^4.0.0", + "arr-union": "^3.1.0", + "extend-shallow": "^3.0.2" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/gulp-clean-css/node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/gulp-clean-css/node_modules/through2": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.1.tgz", + "integrity": "sha512-M96dvTalPT3YbYLaKaCuwu+j06D/8Jfib0o/PxbVt6Amhv3dUAtW6rTV1jPgJSBG83I/e04Y6xkVdVhSRhi0ww==", + "dev": true, + "dependencies": { + "readable-stream": "2 || 3" + } + }, + "node_modules/gulp-cli": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/gulp-cli/-/gulp-cli-3.0.0.tgz", + "integrity": "sha512-RtMIitkT8DEMZZygHK2vEuLPqLPAFB4sntSxg4NoDta7ciwGZ18l7JuhCTiS5deOJi2IoK0btE+hs6R4sfj7AA==", + "dev": true, + "dependencies": { + "@gulpjs/messages": "^1.1.0", + "chalk": "^4.1.2", + "copy-props": "^4.0.0", + "gulplog": "^2.2.0", + "interpret": "^3.1.1", + "liftoff": "^5.0.0", + "mute-stdout": "^2.0.0", + "replace-homedir": "^2.0.0", + "semver-greatest-satisfied-range": "^2.0.0", + "string-width": "^4.2.3", + "v8flags": "^4.0.0", + "yargs": "^16.2.0" + }, + "bin": { + "gulp": "bin/gulp.js" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/gulp-cli/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/gulp-cli/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/gulp-cli/node_modules/glogg": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/glogg/-/glogg-2.2.0.tgz", + "integrity": "sha512-eWv1ds/zAlz+M1ioHsyKJomfY7jbDDPpwSkv14KQj89bycx1nvK5/2Cj/T9g7kzJcX5Bc7Yv22FjfBZS/jl94A==", + "dev": true, + "dependencies": { + "sparkles": "^2.1.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/gulp-cli/node_modules/gulplog": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/gulplog/-/gulplog-2.2.0.tgz", + "integrity": "sha512-V2FaKiOhpR3DRXZuYdRLn/qiY0yI5XmqbTKrYbdemJ+xOh2d2MOweI/XFgMzd/9+1twdvMwllnZbWZNJ+BOm4A==", + "dev": true, + "dependencies": { + "glogg": "^2.2.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/gulp-cli/node_modules/sparkles": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/sparkles/-/sparkles-2.1.0.tgz", + "integrity": "sha512-r7iW1bDw8R/cFifrD3JnQJX0K1jqT0kprL48BiBpLZLJPmAm34zsVBsK5lc7HirZYZqMW65dOXZgbAGt/I6frg==", + "dev": true, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/gulp-concat": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/gulp-concat/-/gulp-concat-2.6.1.tgz", + "integrity": "sha512-a2scActrQrDBpBbR3WUZGyGS1JEPLg5PZJdIa7/Bi3GuKAmPYDK6SFhy/NZq5R8KsKKFvtfR0fakbUCcKGCCjg==", + "dev": true, + "dependencies": { + "concat-with-sourcemaps": "^1.0.0", + "through2": "^2.0.0", + "vinyl": "^2.0.0" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/gulp-debug": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/gulp-debug/-/gulp-debug-5.0.1.tgz", + "integrity": "sha512-2MZFfzg95/6JlfKchX+ZY+6Awn2KoEvg4GeJh+uVi/lwD3W4LEeLDo3SfQEFBF9X5jhQYgUazKD/xyxd2dG9cw==", + "dev": true, + "dependencies": { + "chalk": "^5.3.0", + "gulp-plugin-extras": "^0.3.0", + "plur": "^5.1.0", + "stringify-object": "^5.0.0", + "tildify": "^3.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + }, + "peerDependencies": { + "gulp": ">=4" + }, + "peerDependenciesMeta": { + "gulp": { + "optional": true + } + } + }, + "node_modules/gulp-gzip": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/gulp-gzip/-/gulp-gzip-1.4.2.tgz", + "integrity": "sha512-ZIxfkUwk2XmZPTT9pPHrHUQlZMyp9nPhg2sfoeN27mBGpi7OaHnOD+WCN41NXjfJQ69lV1nQ9LLm1hYxx4h3UQ==", + "dev": true, + "dependencies": { + "ansi-colors": "^1.0.1", + "bytes": "^3.0.0", + "fancy-log": "^1.3.2", + "plugin-error": "^1.0.0", + "stream-to-array": "^2.3.0", + "through2": "^2.0.3" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/gulp-gzip/node_modules/arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gulp-gzip/node_modules/plugin-error": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-1.0.1.tgz", + "integrity": "sha512-L1zP0dk7vGweZME2i+EeakvUNqSrdiI3F91TwEoYiGrAfUXmVv6fJIq4g82PAXxNsWOp0J7ZqQy/3Szz0ajTxA==", + "dev": true, + "dependencies": { + "ansi-colors": "^1.0.1", + "arr-diff": "^4.0.0", + "arr-union": "^3.1.0", + "extend-shallow": "^3.0.2" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/gulp-header": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/gulp-header/-/gulp-header-2.0.9.tgz", + "integrity": "sha512-LMGiBx+qH8giwrOuuZXSGvswcIUh0OiioNkUpLhNyvaC6/Ga8X6cfAeme2L5PqsbXMhL8o8b/OmVqIQdxprhcQ==", + "dev": true, + "dependencies": { + "concat-with-sourcemaps": "^1.1.0", + "lodash.template": "^4.5.0", + "map-stream": "0.0.7", + "through2": "^2.0.0" + } + }, + "node_modules/gulp-inject": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/gulp-inject/-/gulp-inject-5.0.5.tgz", + "integrity": "sha512-5bGMjqleXUHPu4CI1pnVzHtwyMy+Zt8EMo1RFwNsOpidPxwjFwyLgmsRZWGMMI8UenJMJRjURqwznfFmqb5wgw==", + "dev": true, + "dependencies": { + "ansi-colors": "^4.1.1", + "arrify": "^2.0.1", + "escape-string-regexp": "^2.0.0", + "fancy-log": "^1.3.3", + "group-array": "^1.0.0", + "plugin-error": "^1.0.1", + "stream-to-array": "^2.3.0", + "through2": "^3.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/gulp-inject/node_modules/ansi-colors": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/gulp-inject/node_modules/arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gulp-inject/node_modules/plugin-error": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-1.0.1.tgz", + "integrity": "sha512-L1zP0dk7vGweZME2i+EeakvUNqSrdiI3F91TwEoYiGrAfUXmVv6fJIq4g82PAXxNsWOp0J7ZqQy/3Szz0ajTxA==", + "dev": true, + "dependencies": { + "ansi-colors": "^1.0.1", + "arr-diff": "^4.0.0", + "arr-union": "^3.1.0", + "extend-shallow": "^3.0.2" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/gulp-inject/node_modules/plugin-error/node_modules/ansi-colors": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-1.1.0.tgz", + "integrity": "sha512-SFKX67auSNoVR38N3L+nvsPjOE0bybKTYbkf5tRvushrAPQ9V75huw0ZxBkKVeRU9kqH3d6HA4xTckbwZ4ixmA==", + "dev": true, + "dependencies": { + "ansi-wrap": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gulp-inject/node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/gulp-inject/node_modules/through2": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz", + "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==", + "dev": true, + "dependencies": { + "inherits": "^2.0.4", + "readable-stream": "2 || 3" + } + }, + "node_modules/gulp-plugin-extras": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/gulp-plugin-extras/-/gulp-plugin-extras-0.3.0.tgz", + "integrity": "sha512-I/kOBSpo61QsGQZcqozZYEnDseKvpudUafVVWDLYgBFAUJ37kW5R8Sjw9cMYzpGyPUfEYOeoY4p+dkfLqgyJUQ==", + "dev": true, + "dependencies": { + "@types/vinyl": "^2.0.9", + "chalk": "^5.3.0", + "easy-transform-stream": "^1.0.1" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/gulp-rename": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/gulp-rename/-/gulp-rename-2.0.0.tgz", + "integrity": "sha512-97Vba4KBzbYmR5VBs9mWmK+HwIf5mj+/zioxfZhOKeXtx5ZjBk57KFlePf5nxq9QsTtFl0ejnHE3zTC9MHXqyQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/gulp-rev": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/gulp-rev/-/gulp-rev-10.0.0.tgz", + "integrity": "sha512-5mP6oOGp1DUzBQuiy9IrtyAWHWUOz2n1qLUHfo7LU0p111t7sTkUhKW01b70B2MsDWgScTdz6sGLg76KCbqclw==", + "dev": true, + "dependencies": { + "easy-transform-stream": "^1.0.0", + "modify-filename": "^2.0.0", + "plugin-error": "^2.0.1", + "rev-hash": "^4.0.0", + "rev-path": "^3.0.0", + "sort-keys": "^5.0.0", + "vinyl": "^3.0.0", + "vinyl-file": "^5.0.0" + }, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + }, + "peerDependencies": { + "gulp": ">=4" + }, + "peerDependenciesMeta": { + "gulp": { + "optional": true + } + } + }, + "node_modules/gulp-rev/node_modules/plugin-error": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-2.0.1.tgz", + "integrity": "sha512-zMakqvIDyY40xHOvzXka0kUvf40nYIuwRE8dWhti2WtjQZ31xAgBZBhxsK7vK3QbRXS1Xms/LO7B5cuAsfB2Gg==", + "dev": true, + "dependencies": { + "ansi-colors": "^1.0.1" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/gulp-rev/node_modules/replace-ext": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-2.0.0.tgz", + "integrity": "sha512-UszKE5KVK6JvyD92nzMn9cDapSk6w/CaFZ96CnmDMUqH9oowfxF/ZjRITD25H4DnOQClLA4/j7jLGXXLVKxAug==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/gulp-rev/node_modules/vinyl": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-3.0.0.tgz", + "integrity": "sha512-rC2VRfAVVCGEgjnxHUnpIVh3AGuk62rP3tqVrn+yab0YH7UULisC085+NYH+mnqf3Wx4SpSi1RQMwudL89N03g==", + "dev": true, + "dependencies": { + "clone": "^2.1.2", + "clone-stats": "^1.0.0", + "remove-trailing-separator": "^1.1.0", + "replace-ext": "^2.0.0", + "teex": "^1.0.1" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/gulp-run": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/gulp-run/-/gulp-run-1.7.1.tgz", + "integrity": "sha512-4OcXhBE5xpRWmbcKzE0EQWEqpLRAkX3ju6k85qkYLfmnCVGK6nPmu/sbVgDiGg6mjuzsF2b9nHFbImZBZPH3zg==", + "dev": true, + "license": "ISC", + "dependencies": { + "gulp-util": "^3.0.0", + "lodash.defaults": "^4.0.1", + "lodash.template": "^4.0.2", + "vinyl": "^0.4.6" + } + }, + "node_modules/gulp-run/node_modules/clone": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/clone/-/clone-0.2.0.tgz", + "integrity": "sha512-g62n3Kb9cszeZvmvBUqP/dsEJD/+80pDA8u8KqHnAPrVnQ2Je9rVV6opxkhuWCd1kCn2gOibzDKxCtBvD3q5kA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + } + }, + "node_modules/gulp-run/node_modules/clone-stats": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-0.0.1.tgz", + "integrity": "sha512-dhUqc57gSMCo6TX85FLfe51eC/s+Im2MLkAgJwfaRRexR2tA4dd3eLEW4L6efzHc2iNorrRRXITifnDLlRrhaA==", + "dev": true, + "license": "MIT" + }, + "node_modules/gulp-run/node_modules/vinyl": { + "version": "0.4.6", + "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-0.4.6.tgz", + "integrity": "sha512-pmza4M5VA15HOImIQYWhoXGlGNafCm0QK5BpBUXkzzEwrRxKqBsbAhTfkT2zMcJhUX1G1Gkid0xaV8WjOl7DsA==", + "dev": true, + "dependencies": { + "clone": "^0.2.0", + "clone-stats": "^0.0.1" + }, + "engines": { + "node": ">= 0.9" + } + }, + "node_modules/gulp-tar": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/gulp-tar/-/gulp-tar-4.0.0.tgz", + "integrity": "sha512-lvBYoWV+I+0DVmjylWw/TZtHdQAQ9cVaqQ+u/fWcB8Hth3k4BKAT5EpLBoJiiU77ZXZmEgdPWzJ9KZmCuVCyFA==", + "dev": true, + "dependencies": { + "archiver": "^6.0.1", + "gulp-plugin-extras": "^0.3.0", + "vinyl": "^3.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + }, + "peerDependencies": { + "gulp": ">=4" + }, + "peerDependenciesMeta": { + "gulp": { + "optional": true + } + } + }, + "node_modules/gulp-tar/node_modules/replace-ext": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-2.0.0.tgz", + "integrity": "sha512-UszKE5KVK6JvyD92nzMn9cDapSk6w/CaFZ96CnmDMUqH9oowfxF/ZjRITD25H4DnOQClLA4/j7jLGXXLVKxAug==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/gulp-tar/node_modules/vinyl": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-3.0.0.tgz", + "integrity": "sha512-rC2VRfAVVCGEgjnxHUnpIVh3AGuk62rP3tqVrn+yab0YH7UULisC085+NYH+mnqf3Wx4SpSi1RQMwudL89N03g==", + "dev": true, + "dependencies": { + "clone": "^2.1.2", + "clone-stats": "^1.0.0", + "remove-trailing-separator": "^1.1.0", + "replace-ext": "^2.0.0", + "teex": "^1.0.1" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/gulp-uglify": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/gulp-uglify/-/gulp-uglify-3.0.2.tgz", + "integrity": "sha512-gk1dhB74AkV2kzqPMQBLA3jPoIAPd/nlNzP2XMDSG8XZrqnlCiDGAqC+rZOumzFvB5zOphlFh6yr3lgcAb/OOg==", + "dev": true, + "dependencies": { + "array-each": "^1.0.1", + "extend-shallow": "^3.0.2", + "gulplog": "^1.0.0", + "has-gulplog": "^0.1.0", + "isobject": "^3.0.1", + "make-error-cause": "^1.1.1", + "safe-buffer": "^5.1.2", + "through2": "^2.0.0", + "uglify-js": "^3.0.5", + "vinyl-sourcemaps-apply": "^0.2.0" + } + }, + "node_modules/gulp-util": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/gulp-util/-/gulp-util-3.0.8.tgz", + "integrity": "sha512-q5oWPc12lwSFS9h/4VIjG+1NuNDlJ48ywV2JKItY4Ycc/n1fXJeYPVQsfu5ZrhQi7FGSDBalwUCLar/GyHXKGw==", + "deprecated": "gulp-util is deprecated - replace it, following the guidelines at https://medium.com/gulpjs/gulp-util-ca3b1f9f9ac5", + "dev": true, + "license": "MIT", + "dependencies": { + "array-differ": "^1.0.0", + "array-uniq": "^1.0.2", + "beeper": "^1.0.0", + "chalk": "^1.0.0", + "dateformat": "^2.0.0", + "fancy-log": "^1.1.0", + "gulplog": "^1.0.0", + "has-gulplog": "^0.1.0", + "lodash._reescape": "^3.0.0", + "lodash._reevaluate": "^3.0.0", + "lodash._reinterpolate": "^3.0.0", + "lodash.template": "^3.0.0", + "minimist": "^1.1.0", + "multipipe": "^0.1.2", + "object-assign": "^3.0.0", + "replace-ext": "0.0.1", + "through2": "^2.0.0", + "vinyl": "^0.5.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/gulp-util/node_modules/chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gulp-util/node_modules/clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/gulp-util/node_modules/clone-stats": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-0.0.1.tgz", + "integrity": "sha512-dhUqc57gSMCo6TX85FLfe51eC/s+Im2MLkAgJwfaRRexR2tA4dd3eLEW4L6efzHc2iNorrRRXITifnDLlRrhaA==", + "dev": true, + "license": "MIT" + }, + "node_modules/gulp-util/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/gulp-util/node_modules/lodash.template": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-3.6.2.tgz", + "integrity": "sha512-0B4Y53I0OgHUJkt+7RmlDFWKjVAI/YUpWNiL9GQz5ORDr4ttgfQGo+phBWKFLJbBdtOwgMuUkdOHOnPg45jKmQ==", + "deprecated": "This package is deprecated. Use https://socket.dev/npm/package/eta instead.", + "dev": true, + "license": "MIT", + "dependencies": { + "lodash._basecopy": "^3.0.0", + "lodash._basetostring": "^3.0.0", + "lodash._basevalues": "^3.0.0", + "lodash._isiterateecall": "^3.0.0", + "lodash._reinterpolate": "^3.0.0", + "lodash.escape": "^3.0.0", + "lodash.keys": "^3.0.0", + "lodash.restparam": "^3.0.0", + "lodash.templatesettings": "^3.0.0" + } + }, + "node_modules/gulp-util/node_modules/lodash.templatesettings": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-3.1.1.tgz", + "integrity": "sha512-TcrlEr31tDYnWkHFWDCV3dHYroKEXpJZ2YJYvJdhN+y4AkWMDZ5I4I8XDtUKqSAyG81N7w+I1mFEJtcED+tGqQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "lodash._reinterpolate": "^3.0.0", + "lodash.escape": "^3.0.0" + } + }, + "node_modules/gulp-util/node_modules/replace-ext": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-0.0.1.tgz", + "integrity": "sha512-AFBWBy9EVRTa/LhEcG8QDP3FvpwZqmvN2QFDuJswFeaVhWnZMp8q3E6Zd90SR04PlIwfGdyVjNyLPyen/ek5CQ==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/gulp-util/node_modules/supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/gulp-util/node_modules/vinyl": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-0.5.3.tgz", + "integrity": "sha512-P5zdf3WB9uzr7IFoVQ2wZTmUwHL8cMZWJGzLBNCHNZ3NB6HTMsYABtt7z8tAGIINLXyAob9B9a1yzVGMFOYKEA==", + "dev": true, + "license": "MIT", + "dependencies": { + "clone": "^1.0.0", + "clone-stats": "^0.0.1", + "replace-ext": "0.0.1" + }, + "engines": { + "node": ">= 0.9" + } + }, + "node_modules/gulp-zip": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/gulp-zip/-/gulp-zip-6.1.0.tgz", + "integrity": "sha512-couiqfO4CSM4q3oKnihLhYq5mVmwyXfgLP/0eeM7oVlN+psn45vfvJHcCL3AkPgTi4NojnUFV2IozYqZClIujQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "get-stream": "^9.0.1", + "gulp-plugin-extras": "^1.1.0", + "vinyl": "^3.0.0", + "yazl": "^3.3.1" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + }, + "peerDependencies": { + "gulp": ">=4" + }, + "peerDependenciesMeta": { + "gulp": { + "optional": true + } + } + }, + "node_modules/gulp-zip/node_modules/gulp-plugin-extras": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/gulp-plugin-extras/-/gulp-plugin-extras-1.1.0.tgz", + "integrity": "sha512-T0AXOEVoKYzLIBlwEZ7LtAx2w4ExIozIoxVeYEVLFbdxI7i0sWvFDq0F8mm47djixDF3vAqDPoyGwh3Sg/PWtQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/vinyl": "^2.0.12", + "chalk": "^5.3.0", + "easy-transform-stream": "^1.0.1" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/gulp-zip/node_modules/replace-ext": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-2.0.0.tgz", + "integrity": "sha512-UszKE5KVK6JvyD92nzMn9cDapSk6w/CaFZ96CnmDMUqH9oowfxF/ZjRITD25H4DnOQClLA4/j7jLGXXLVKxAug==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/gulp-zip/node_modules/vinyl": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-3.0.0.tgz", + "integrity": "sha512-rC2VRfAVVCGEgjnxHUnpIVh3AGuk62rP3tqVrn+yab0YH7UULisC085+NYH+mnqf3Wx4SpSi1RQMwudL89N03g==", + "dev": true, + "dependencies": { + "clone": "^2.1.2", + "clone-stats": "^1.0.0", + "remove-trailing-separator": "^1.1.0", + "replace-ext": "^2.0.0", + "teex": "^1.0.1" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/gulplog": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/gulplog/-/gulplog-1.0.0.tgz", + "integrity": "sha512-hm6N8nrm3Y08jXie48jsC55eCZz9mnb4OirAStEk2deqeyhXU3C1otDVh+ccttMuc1sBi6RX6ZJ720hs9RCvgw==", + "dev": true, + "dependencies": { + "glogg": "^1.0.0" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/has-gulplog": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/has-gulplog/-/has-gulplog-0.1.0.tgz", + "integrity": "sha512-+F4GzLjwHNNDEAJW2DC1xXfEoPkRDmUdJ7CBYw4MpqtDwOnqdImJl7GWlpqx+Wko6//J8uKTnIe4wZSv7yCqmw==", + "dev": true, + "dependencies": { + "sparkles": "^1.0.0" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "dependencies": { + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", + "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/homedir-polyfill": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz", + "integrity": "sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==", + "dev": true, + "dependencies": { + "parse-passwd": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/html2canvas": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/html2canvas/-/html2canvas-1.4.1.tgz", + "integrity": "sha512-fPU6BHNpsyIhr8yyMpTLLxAbkaK8ArIBcmZIRiBLiDhjeqvXolaEmDGmELFuX9I4xDcaKKcJl+TKZLqruBbmWA==", + "dependencies": { + "css-line-break": "^2.1.0", + "text-segmentation": "^1.0.3" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dev": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/internal-slot": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", + "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==", + "dependencies": { + "es-errors": "^1.3.0", + "hasown": "^2.0.0", + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/interpret": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-3.1.1.tgz", + "integrity": "sha512-6xwYfHbajpoF0xLW+iwLkhwgvLoZDfjYfoFNu8ftMoXINzwuymNLd9u/KmwtdT2GbR+/Cz66otEGEVVUHX9QLQ==", + "dev": true, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/irregular-plurals": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-3.5.0.tgz", + "integrity": "sha512-1ANGLZ+Nkv1ptFb2pa8oG8Lem4krflKuX/gINiHJHjJUKaJHk/SXk5x6K3J+39/p0h1RQ2saROclJJ+QLvETCQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-absolute": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz", + "integrity": "sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==", + "dev": true, + "dependencies": { + "is-relative": "^1.0.0", + "is-windows": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-arguments": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", + "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-array-buffer": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz", + "integrity": "sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==", + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "dependencies": { + "has-bigints": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-core-module": { + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", + "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "dev": true, + "dependencies": { + "hasown": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-extendable/node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-map": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", + "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-negated-glob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-negated-glob/-/is-negated-glob-1.0.0.tgz", + "integrity": "sha512-czXVVn/QEmgvej1f50BZ648vUI+em0xqMq2Sn+QncCLN4zj1UAxlT+kw/6ggQTOaZPd1HqKQGEqbpQVtJucWug==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-obj": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-3.0.0.tgz", + "integrity": "sha512-IlsXEHOjtKhpN8r/tRFj2nDyTmHvcfNeu/nrRIcXE17ROeatXchkojffa1SpdqW4cr/Fj6QkEf/Gn4zf6KKvEQ==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-plain-obj": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", + "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-regexp": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-3.1.0.tgz", + "integrity": "sha512-rbku49cWloU5bSMI+zaRaXdQHXnthP6DZ/vLnfdSKyL4zUzuWnomtOEiZZOd+ioQ+avFo/qau3KPTc7Fjy1uPA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-relative": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz", + "integrity": "sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==", + "dev": true, + "dependencies": { + "is-unc-path": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-set": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", + "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz", + "integrity": "sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==", + "dependencies": { + "call-bind": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-stream": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-4.0.1.tgz", + "integrity": "sha512-Dnz92NInDqYckGEUJv689RbRiTSEHCQ7wOVeALbkOz999YpqT46yMRIGtSNl2iCL1waAZSx40+h59NV/EwzV/A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-unc-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz", + "integrity": "sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==", + "dev": true, + "dependencies": { + "unc-path-regex": "^0.1.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-utf8": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", + "integrity": "sha512-rMYPYvCzsXywIsldgLaSoPlw5PfoB/ssr7hY4pLfcodrA5M/eArza1a9VmTiNIBNMjOGr1Ow9mTyU2o69U6U9Q==", + "dev": true + }, + "node_modules/is-valid-glob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-valid-glob/-/is-valid-glob-1.0.0.tgz", + "integrity": "sha512-AhiROmoEFDSsjx8hW+5sGwgKVIORcXnrlAx/R0ZSeaPw70Vw0CqkGBBhHGL58Uox2eXnU1AnvXJl1XlyedO5bA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-weakmap": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", + "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakset": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.3.tgz", + "integrity": "sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==", + "dependencies": { + "call-bind": "^1.0.7", + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/jasny-bootstrap": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/jasny-bootstrap/-/jasny-bootstrap-3.1.3.tgz", + "integrity": "sha512-i2O5dUFuYV56Pyl6aZ5hWmsttTySXRBp+4X4kFlKYHLsJeaeiT3IkpbCPMdrDa1zQbm856cuLoxMEh+3fSOVaQ==" + }, + "node_modules/jquery": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.7.1.tgz", + "integrity": "sha512-m4avr8yL8kmFN8psrbFFFmB/If14iN5o9nw/NgnnM+kybDJpRsAynV2BsfpTYrTRysYUdADVD7CkUUizgkpLfg==" + }, + "node_modules/jquery-form": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/jquery-form/-/jquery-form-4.3.0.tgz", + "integrity": "sha512-q3uaVCEWdLOYUCI6dpNdwf/7cJFOsUgdpq6r0taxtGQ5NJSkOzofyWm4jpOuJ5YxdmL1FI5QR+q+HB63HHLGnQ==", + "dependencies": { + "jquery": ">=1.7.2" + } + }, + "node_modules/jquery-ui-dist": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/jquery-ui-dist/-/jquery-ui-dist-1.13.2.tgz", + "integrity": "sha512-oVDRd1NLtTbBwpRKAYdIRgpWVDzeBhfy7Gu0RmY6JEaZtmBq6kDn1pm5SgDiAotrnDS+RoTRXO6xvcNTxA9tOA==", + "dependencies": { + "jquery": ">=1.8.0 <4.0.0" + } + }, + "node_modules/jquery-validation": { + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/jquery-validation/-/jquery-validation-1.20.0.tgz", + "integrity": "sha512-c8tg4ltIIP6L7l0bZ79sRzOJYquyjS48kQZ6iv8MJ2r0OYztxtkWYKTReZyU2/zVFYiINB29i0Z/IRNNuJQN1g==", + "peerDependencies": { + "jquery": "^1.7 || ^2.0 || ^3.1" + } + }, + "node_modules/js-cookie": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-2.2.1.tgz", + "integrity": "sha512-HvdH2LzI/EAZcUwA8+0nKNtWHqS+ZmijLA30RwZA0bo7ToCckjK5MkGhjED9KoRcXO6BaGI3I9UIzSA1FKFPOQ==" + }, + "node_modules/jspdf": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/jspdf/-/jspdf-2.5.1.tgz", + "integrity": "sha512-hXObxz7ZqoyhxET78+XR34Xu2qFGrJJ2I2bE5w4SM8eFaFEkW2xcGRVUss360fYelwRSid/jT078kbNvmoW0QA==", + "dependencies": { + "@babel/runtime": "^7.14.0", + "atob": "^2.1.2", + "btoa": "^1.2.1", + "fflate": "^0.4.8" + }, + "optionalDependencies": { + "canvg": "^3.0.6", + "core-js": "^3.6.0", + "dompurify": "^2.2.0", + "html2canvas": "^1.0.0-rc.5" + } + }, + "node_modules/jspdf-autotable": { + "version": "3.8.2", + "resolved": "https://registry.npmjs.org/jspdf-autotable/-/jspdf-autotable-3.8.2.tgz", + "integrity": "sha512-zW1ix99/mtR4MbIni7IqvrpfHmuTaICl6iv6wqjRN86Nxtwaw/QtOeDbpXqYSzHIJK9JvgtLM283sc5x+ipkJg==", + "peerDependencies": { + "jspdf": "^2.5.1" + } + }, + "node_modules/last-run": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/last-run/-/last-run-2.0.0.tgz", + "integrity": "sha512-j+y6WhTLN4Itnf9j5ZQos1BGPCS8DAwmgMroR3OzfxAsBxam0hMw7J8M3KqZl0pLQJ1jNnwIexg5DYpC/ctwEQ==", + "dev": true, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/lazystream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.1.tgz", + "integrity": "sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==", + "dev": true, + "dependencies": { + "readable-stream": "^2.0.5" + }, + "engines": { + "node": ">= 0.6.3" + } + }, + "node_modules/lazystream/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/lazystream/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/lazystream/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/lead": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/lead/-/lead-4.0.0.tgz", + "integrity": "sha512-DpMa59o5uGUWWjruMp71e6knmwKU3jRBBn1kjuLWN9EeIOxNeSAwvHf03WIl8g/ZMR2oSQC9ej3yeLBwdDc/pg==", + "dev": true, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/liftoff": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/liftoff/-/liftoff-5.0.0.tgz", + "integrity": "sha512-a5BQjbCHnB+cy+gsro8lXJ4kZluzOijzJ1UVVfyJYZC+IP2pLv1h4+aysQeKuTmyO8NAqfyQAk4HWaP/HjcKTg==", + "dev": true, + "dependencies": { + "extend": "^3.0.2", + "findup-sync": "^5.0.0", + "fined": "^2.0.0", + "flagged-respawn": "^2.0.0", + "is-plain-object": "^5.0.0", + "rechoir": "^0.8.0", + "resolve": "^1.20.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/linebreak": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/linebreak/-/linebreak-1.1.0.tgz", + "integrity": "sha512-MHp03UImeVhB7XZtjd0E4n6+3xr5Dq/9xI/5FptGk5FrbDR3zagPa2DS6U8ks/3HjbKWG9Q1M2ufOzxV2qLYSQ==", + "dependencies": { + "base64-js": "0.0.8", + "unicode-trie": "^2.0.0" + } + }, + "node_modules/linebreak/node_modules/base64-js": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-0.0.8.tgz", + "integrity": "sha512-3XSA2cR/h/73EzlXXdU6YNycmYI7+kicTxks4eJg2g39biHR84slg2+des+p7iHYhbRg/udIS4TD53WabcOUkw==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "node_modules/lodash._basecopy": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz", + "integrity": "sha512-rFR6Vpm4HeCK1WPGvjZSJ+7yik8d8PVUdCJx5rT2pogG4Ve/2ZS7kfmO5l5T2o5V2mqlNIfSF5MZlr1+xOoYQQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash._basetostring": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz", + "integrity": "sha512-mTzAr1aNAv/i7W43vOR/uD/aJ4ngbtsRaCubp2BfZhlGU/eORUjg/7F6X0orNMdv33JOrdgGybtvMN/po3EWrA==", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash._basevalues": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/lodash._basevalues/-/lodash._basevalues-3.0.0.tgz", + "integrity": "sha512-H94wl5P13uEqlCg7OcNNhMQ8KvWSIyqXzOPusRgHC9DK3o54P6P3xtbXlVbRABG4q5gSmp7EDdJ0MSuW9HX6Mg==", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash._getnative": { + "version": "3.9.1", + "resolved": "https://registry.npmjs.org/lodash._getnative/-/lodash._getnative-3.9.1.tgz", + "integrity": "sha512-RrL9VxMEPyDMHOd9uFbvMe8X55X16/cGM5IgOKgRElQZutpX89iS6vwl64duTV1/16w5JY7tuFNXqoekmh1EmA==", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash._isiterateecall": { + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz", + "integrity": "sha512-De+ZbrMu6eThFti/CSzhRvTKMgQToLxbij58LMfM8JnYDNSOjkjTCIaa8ixglOeGh2nyPlakbt5bJWJ7gvpYlQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash._reescape": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/lodash._reescape/-/lodash._reescape-3.0.0.tgz", + "integrity": "sha512-Sjlavm5y+FUVIF3vF3B75GyXrzsfYV8Dlv3L4mEpuB9leg8N6yf/7rU06iLPx9fY0Mv3khVp9p7Dx0mGV6V5OQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash._reevaluate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/lodash._reevaluate/-/lodash._reevaluate-3.0.0.tgz", + "integrity": "sha512-OrPwdDc65iJiBeUe5n/LIjd7Viy99bKwDdk7Z5ljfZg0uFRFlfQaCy9tZ4YMAag9WAZmlVpe1iZrkIMMSMHD3w==", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash._reinterpolate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz", + "integrity": "sha512-xYHt68QRoYGjeeM/XOE1uJtvXQAgvszfBhjV4yvsQH0u2i9I6cI6c6/eG4Hh3UAOVn0y/xAXwmTzEay49Q//HA==", + "dev": true + }, + "node_modules/lodash._root": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/lodash._root/-/lodash._root-3.0.1.tgz", + "integrity": "sha512-O0pWuFSK6x4EXhM1dhZ8gchNtG7JMqBtrHdoUFUWXD7dJnNSUze1GuyQr5sOs0aCvgGeI3o/OJW8f4ca7FDxmQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.defaults": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", + "integrity": "sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.escape": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/lodash.escape/-/lodash.escape-3.2.0.tgz", + "integrity": "sha512-n1PZMXgaaDWZDSvuNZ/8XOcYO2hOKDqZel5adtR30VKQAtoWs/5AOeFA0vPV8moiPzlqe7F4cP2tzpFewQyelQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "lodash._root": "^3.0.0" + } + }, + "node_modules/lodash.isarguments": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz", + "integrity": "sha512-chi4NHZlZqZD18a0imDHnZPrDeBbTtVN7GXMwuGdRH9qotxAjYs3aVLKc7zNOG9eddR5Ksd8rvFEBc9SsggPpg==", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.isarray": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/lodash.isarray/-/lodash.isarray-3.0.4.tgz", + "integrity": "sha512-JwObCrNJuT0Nnbuecmqr5DgtuBppuCvGD9lxjFpAzwnVtdGoDQ1zig+5W8k5/6Gcn0gZ3936HDAlGd28i7sOGQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.keys": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-3.1.2.tgz", + "integrity": "sha512-CuBsapFjcubOGMn3VD+24HOAPxM79tH+V6ivJL3CHYjtrawauDJHUk//Yew9Hvc6e9rbCrURGk8z6PC+8WJBfQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "lodash._getnative": "^3.0.0", + "lodash.isarguments": "^3.0.0", + "lodash.isarray": "^3.0.0" + } + }, + "node_modules/lodash.restparam": { + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/lodash.restparam/-/lodash.restparam-3.6.1.tgz", + "integrity": "sha512-L4/arjjuq4noiUJpt3yS6KIKDtJwNe2fIYgMqyYYKoeIfV1iEqvPwhCx23o+R9dzouGihDAPN1dTIRWa7zk8tw==", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.template": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-4.5.0.tgz", + "integrity": "sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A==", + "dev": true, + "dependencies": { + "lodash._reinterpolate": "^3.0.0", + "lodash.templatesettings": "^4.0.0" + } + }, + "node_modules/lodash.templatesettings": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz", + "integrity": "sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ==", + "dev": true, + "dependencies": { + "lodash._reinterpolate": "^3.0.0" + } + }, + "node_modules/make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "dev": true + }, + "node_modules/make-error-cause": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/make-error-cause/-/make-error-cause-1.2.2.tgz", + "integrity": "sha512-4TO2Y3HkBnis4c0dxhAgD/jprySYLACf7nwN6V0HAHDx59g12WlRpUmFy1bRHamjGUEEBrEvCq6SUpsEE2lhUg==", + "dev": true, + "dependencies": { + "make-error": "^1.2.0" + } + }, + "node_modules/map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/map-stream": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/map-stream/-/map-stream-0.0.7.tgz", + "integrity": "sha512-C0X0KQmGm3N2ftbTGBhSyuydQ+vV1LC3f3zPvT3RXHXNZrvfPZcoXp/N5DOa8vedX/rTMm2CjTtivFg2STJMRQ==", + "dev": true + }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "dev": true, + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/modify-filename": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/modify-filename/-/modify-filename-2.0.0.tgz", + "integrity": "sha512-VX9/MdgUN9StpSLImJ0+AyV2dxJJtyojIwRHF/Ja942tW7FTzxXI186jDSTk4k5wj2+59a4bRzFnJUgMSi+ygg==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/moment": { + "version": "2.30.1", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.30.1.tgz", + "integrity": "sha512-uEmtNhbDOrWPFS+hdjFCBfy9f2YoyzRpwcl+DqpC6taX21FzsTLQVbMV/W7PzNSX6x/bhC1zA3c2UQ5NzH6how==", + "engines": { + "node": "*" + } + }, + "node_modules/multipipe": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/multipipe/-/multipipe-0.1.2.tgz", + "integrity": "sha512-7ZxrUybYv9NonoXgwoOqtStIu18D1c3eFZj27hqgf5kBrBF8Q+tE8V0MW8dKM5QLkQPh1JhhbKgHLY9kifov4Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "duplexer2": "0.0.2" + } + }, + "node_modules/mute-stdout": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mute-stdout/-/mute-stdout-2.0.0.tgz", + "integrity": "sha512-32GSKM3Wyc8dg/p39lWPKYu8zci9mJFzV1Np9Of0ZEpe6Fhssn/FbI7ywAMd40uX+p3ZKh3T5EeCFv81qS3HmQ==", + "dev": true, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/now-and-later": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/now-and-later/-/now-and-later-3.0.0.tgz", + "integrity": "sha512-pGO4pzSdaxhWTGkfSfHx3hVzJVslFPwBp2Myq9MYN/ChfJZF87ochMAXnvz6/58RJSf5ik2q9tXprBBrk2cpcg==", + "dev": true, + "dependencies": { + "once": "^1.4.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/npm-check-updates": { + "version": "17.1.14", + "resolved": "https://registry.npmjs.org/npm-check-updates/-/npm-check-updates-17.1.14.tgz", + "integrity": "sha512-dr4bXIxETubLI1tFGeock5hN8yVjahvaVpx+lPO4/O2md3zJuxB7FgH3MIoTvQSCgsgkIRpe0skti01IEAA5tA==", + "license": "Apache-2.0", + "bin": { + "ncu": "build/cli.js", + "npm-check-updates": "build/cli.js" + }, + "engines": { + "node": "^18.18.0 || >=20.0.0", + "npm": ">=8.12.1" + } + }, + "node_modules/object-assign": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-3.0.0.tgz", + "integrity": "sha512-jHP15vXVGeVh1HuaA2wY6lxk+whK/x4KBG88VXeRma7CCun7iGD5qPc4eYykQ9sdQvg8jkwFKsSxHln2ybW3xQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", + "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-is": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.6.tgz", + "integrity": "sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q==", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.assign": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz", + "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", + "dependencies": { + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.defaults": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/object.defaults/-/object.defaults-1.1.0.tgz", + "integrity": "sha512-c/K0mw/F11k4dEUBMW8naXUuBuhxRCfG7W+yFy8EcijU/rSmazOUd1XAEEe6bC0OuXY4HUKjTJv7xbxIMqdxrA==", + "dev": true, + "dependencies": { + "array-each": "^1.0.1", + "array-slice": "^1.0.0", + "for-own": "^1.0.0", + "isobject": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object.pick": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", + "integrity": "sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==", + "dev": true, + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/pako": { + "version": "0.2.9", + "resolved": "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz", + "integrity": "sha512-NUcwaKxUxWrZLpDG+z/xZaCgQITkA/Dv4V/T6bw7VON6l1Xz/VnrBqrYjZQ12TamKHzITTfOEIYUj48y2KXImA==" + }, + "node_modules/parse-filepath": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz", + "integrity": "sha512-FwdRXKCohSVeXqwtYonZTXtbGJKrn+HNyWDYVcp5yuJlesTwNH4rsmRZ+GrKAPJ5bLpRxESMeS+Rl0VCHRvB2Q==", + "dev": true, + "dependencies": { + "is-absolute": "^1.0.0", + "map-cache": "^0.2.0", + "path-root": "^0.1.1" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/parse-node-version": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", + "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/parse-passwd": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz", + "integrity": "sha512-1Y1A//QUXEZK7YKz+rD9WydcE1+EuPr6ZBgKecAB8tmoW6UFv0NREVJe1p+jRxtThkcbbKkfwIbWJe/IeE6m2Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "node_modules/path-root": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz", + "integrity": "sha512-QLcPegTHF11axjfojBIoDygmS2E3Lf+8+jI6wOVmNVenrKSo3mFdSGiIgdSHenczw3wPtlVMQaFVwGmM7BJdtg==", + "dev": true, + "dependencies": { + "path-root-regex": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-root-regex": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/path-root-regex/-/path-root-regex-0.1.2.tgz", + "integrity": "sha512-4GlJ6rZDhQZFE0DPVKh0e9jmZ5egZfxTkp7bcRDuPlJXbAwhxcl2dINPUAsjLdejqaLsCeg8axcLjIbvBjN4pQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pause-stream": { + "version": "0.0.11", + "resolved": "https://registry.npmjs.org/pause-stream/-/pause-stream-0.0.11.tgz", + "integrity": "sha512-e3FBlXLmN/D1S+zHzanP4E/4Z60oFAa3O051qt1pxa7DEJWKAyil6upYVXCWadEnuoqa4Pkc9oUx9zsxYeRv8A==", + "dev": true, + "dependencies": { + "through": "~2.3" + } + }, + "node_modules/pdfkit": { + "version": "0.12.3", + "resolved": "https://registry.npmjs.org/pdfkit/-/pdfkit-0.12.3.tgz", + "integrity": "sha512-+qDLgm2yq6WOKcxTb43lDeo3EtMIDQs0CK1RNqhHC9iT6u0KOmgwAClkYh9xFw2ATbmUZzt4f7KMwDCOfPDluA==", + "dependencies": { + "crypto-js": "^4.0.0", + "fontkit": "^1.8.1", + "linebreak": "^1.0.2", + "png-js": "^1.0.0" + } + }, + "node_modules/pdfmake": { + "version": "0.1.72", + "resolved": "https://registry.npmjs.org/pdfmake/-/pdfmake-0.1.72.tgz", + "integrity": "sha512-xZrPS+Safjf1I8ZYtMoXX83E6C6Pd1zFwa168yNTeeJWHclqf1z9DoYajjlY2uviN7gGyxwVZeou39uSk1oh1g==", + "dependencies": { + "iconv-lite": "^0.6.2", + "linebreak": "^1.0.2", + "pdfkit": "^0.12.0", + "svg-to-pdfkit": "^0.1.8", + "xmldoc": "^1.1.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", + "optional": true + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/plugin-error": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-0.1.2.tgz", + "integrity": "sha512-WzZHcm4+GO34sjFMxQMqZbsz3xiNEgonCskQ9v+IroMmYgk/tas8dG+Hr2D6IbRPybZ12oWpzE/w3cGJ6FJzOw==", + "dev": true, + "dependencies": { + "ansi-cyan": "^0.1.1", + "ansi-red": "^0.1.1", + "arr-diff": "^1.0.1", + "arr-union": "^2.0.1", + "extend-shallow": "^1.1.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/plugin-error/node_modules/arr-diff": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-1.1.0.tgz", + "integrity": "sha512-OQwDZUqYaQwyyhDJHThmzId8daf4/RFNLaeh3AevmSeZ5Y7ug4Ga/yKc6l6kTZOBW781rCj103ZuTh8GAsB3+Q==", + "dev": true, + "dependencies": { + "arr-flatten": "^1.0.1", + "array-slice": "^0.2.3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/plugin-error/node_modules/array-slice": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz", + "integrity": "sha512-rlVfZW/1Ph2SNySXwR9QYkChp8EkOEiTMO5Vwx60usw04i4nWemkm9RXmQqgkQFaLHsqLuADvjp6IfgL9l2M8Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/plugin-error/node_modules/extend-shallow": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-1.1.4.tgz", + "integrity": "sha512-L7AGmkO6jhDkEBBGWlLtftA80Xq8DipnrRPr0pyi7GQLXkaq9JYA4xF4z6qnadIC6euiTDKco0cGSU9muw+WTw==", + "dev": true, + "dependencies": { + "kind-of": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/plugin-error/node_modules/kind-of": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-1.1.0.tgz", + "integrity": "sha512-aUH6ElPnMGon2/YkxRIigV32MOpTVcoXQ1Oo8aYn40s+sJ3j+0gFZsT8HKDcxNy7Fi9zuquWtGaGAahOdv5p/g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/plur": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/plur/-/plur-5.1.0.tgz", + "integrity": "sha512-VP/72JeXqak2KiOzjgKtQen5y3IZHn+9GOuLDafPv0eXa47xq0At93XahYBs26MsifCQ4enGKwbjBTKgb9QJXg==", + "dev": true, + "dependencies": { + "irregular-plurals": "^3.3.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/png-js": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/png-js/-/png-js-1.0.0.tgz", + "integrity": "sha512-k+YsbhpA9e+EFfKjTCH3VW6aoKlyNYI6NYdTfDL4CIvFnvsuO84ttonmZE7rc+v23SLTH8XX+5w/Ak9v0xGY4g==" + }, + "node_modules/possible-typed-array-names": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", + "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", + "dev": true, + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true + }, + "node_modules/queue-tick": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/queue-tick/-/queue-tick-1.0.1.tgz", + "integrity": "sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==", + "dev": true + }, + "node_modules/raf": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/raf/-/raf-3.4.1.tgz", + "integrity": "sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA==", + "optional": true, + "dependencies": { + "performance-now": "^2.1.0" + } + }, + "node_modules/readable-stream": { + "version": "4.5.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz", + "integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==", + "dev": true, + "dependencies": { + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10", + "string_decoder": "^1.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/readdir-glob": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/readdir-glob/-/readdir-glob-1.1.3.tgz", + "integrity": "sha512-v05I2k7xN8zXvPD9N+z/uhXPaj0sUFCe2rcWZIpBsqxfP7xXFQ0tipAd/wjj1YxWyWtUS5IDJpOG82JKt2EAVA==", + "dev": true, + "dependencies": { + "minimatch": "^5.1.0" + } + }, + "node_modules/readdir-glob/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/rechoir": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.8.0.tgz", + "integrity": "sha512-/vxpCXddiX8NGfGO/mTafwjq4aFa/71pvamip0++IQk3zG8cbCj0fifNPrjjF1XMXUne91jL9OoxmdykoEtifQ==", + "dev": true, + "dependencies": { + "resolve": "^1.20.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.14.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", + "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==" + }, + "node_modules/regexp.prototype.flags": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz", + "integrity": "sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==", + "dependencies": { + "call-bind": "^1.0.6", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "set-function-name": "^2.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/remove-trailing-separator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", + "integrity": "sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==", + "dev": true + }, + "node_modules/replace-ext": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.1.tgz", + "integrity": "sha512-yD5BHCe7quCgBph4rMQ+0KkIRKwWCrHDOX1p1Gp6HwjPM5kVoCdKGNhN7ydqqsX6lJEnQDKZ/tFMiEdQ1dvPEw==", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/replace-homedir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/replace-homedir/-/replace-homedir-2.0.0.tgz", + "integrity": "sha512-bgEuQQ/BHW0XkkJtawzrfzHFSN70f/3cNOiHa2QsYxqrjaC30X1k74FJ6xswVBP0sr0SpGIdVFuPwfrYziVeyw==", + "dev": true, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resolve": { + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "dev": true, + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-dir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz", + "integrity": "sha512-R7uiTjECzvOsWSfdM0QKFNBVFcK27aHOUwdvK53BcW8zqnGdYp0Fbj82cy54+2A4P2tFM22J5kRfe1R+lM/1yg==", + "dev": true, + "dependencies": { + "expand-tilde": "^2.0.0", + "global-modules": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resolve-options": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/resolve-options/-/resolve-options-2.0.0.tgz", + "integrity": "sha512-/FopbmmFOQCfsCx77BRFdKOniglTiHumLgwvd6IDPihy1GKkadZbgQJBcTb2lMzSR1pndzd96b1nZrreZ7+9/A==", + "dev": true, + "dependencies": { + "value-or-function": "^4.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/restructure": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/restructure/-/restructure-2.0.1.tgz", + "integrity": "sha512-e0dOpjm5DseomnXx2M5lpdZ5zoHqF1+bqdMJUohoYVVQa7cBdnk7fdmeI6byNWP/kiME72EeTiSypTCVnpLiDg==" + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rev-hash": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/rev-hash/-/rev-hash-4.1.0.tgz", + "integrity": "sha512-e0EGnaveLY2IYpYwHNdh43WZ2M84KgW3Z/T4F6+Z/BlZI/T1ZbxTWj36xgYgUPOieGXYo2q225jTeUXn+LWYjw==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/rev-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/rev-path/-/rev-path-3.0.0.tgz", + "integrity": "sha512-2fUuv6IC7Z+Vj+DXEunJYJDZuwSsaJJHeLar3n2PGvHSH7j5+Xpd/Xh7PenekH4WQhxFuHtsGwd1dCh/HvT6Gw==", + "dev": true, + "dependencies": { + "modify-filename": "^2.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/rgbcolor": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/rgbcolor/-/rgbcolor-1.0.1.tgz", + "integrity": "sha512-9aZLIrhRaD97sgVhtJOW6ckOEh6/GnvQtdVNfdZ6s67+3/XwLS9lBcQYzEEhYVeUowN7pRzMLsyGhK2i/xvWbw==", + "optional": true, + "engines": { + "node": ">= 0.8.15" + } + }, + "node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/rimraf/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/rimraf/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rimraf/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "node_modules/sax": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.3.0.tgz", + "integrity": "sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA==" + }, + "node_modules/select": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/select/-/select-1.1.2.tgz", + "integrity": "sha512-OwpTSOfy6xSs1+pwcNrv0RBMOzI39Lp3qQKUTPVVPRjCdNa5JH/oPRiqsesIskK8TVgmRiHwO4KXlV2Li9dANA==" + }, + "node_modules/semver-greatest-satisfied-range": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/semver-greatest-satisfied-range/-/semver-greatest-satisfied-range-2.0.0.tgz", + "integrity": "sha512-lH3f6kMbwyANB7HuOWRMlLCa2itaCrZJ+SAqqkSZrZKO/cAsk2EOyaKHUtNkVLFyFW9pct22SFesFp3Z7zpA0g==", + "dev": true, + "dependencies": { + "sver": "^1.8.3" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-function-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", + "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/side-channel": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", + "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "object-inspect": "^1.13.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/sort-keys": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-5.0.0.tgz", + "integrity": "sha512-Pdz01AvCAottHTPQGzndktFNdbRA75BgOfeT1hH+AMnJFv8lynkPi42rfeEhpx1saTEI3YNMWxfqu0sFD1G8pw==", + "dev": true, + "dependencies": { + "is-plain-obj": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sparkles": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/sparkles/-/sparkles-1.0.1.tgz", + "integrity": "sha512-dSO0DDYUahUt/0/pD/Is3VIm5TGJjludZ0HVymmhYF6eNA53PVLhnUk0znSYbH8IYBuJdCE+1luR22jNLMaQdw==", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/ssf": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/ssf/-/ssf-0.11.2.tgz", + "integrity": "sha512-+idbmIXoYET47hH+d7dfm2epdOMUDjqcB4648sTZ+t2JwoyBFL/insLfB/racrDmsKB3diwsDA696pZMieAC5g==", + "dependencies": { + "frac": "~1.1.2" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/stackblur-canvas": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/stackblur-canvas/-/stackblur-canvas-2.7.0.tgz", + "integrity": "sha512-yf7OENo23AGJhBriGx0QivY5JP6Y1HbrrDI6WLt6C5auYZXlQrheoY8hD4ibekFKz1HOfE48Ww8kMWMnJD/zcQ==", + "optional": true, + "engines": { + "node": ">=0.1.14" + } + }, + "node_modules/stop-iteration-iterator": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz", + "integrity": "sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==", + "dependencies": { + "internal-slot": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/stream-composer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/stream-composer/-/stream-composer-1.0.2.tgz", + "integrity": "sha512-bnBselmwfX5K10AH6L4c8+S5lgZMWI7ZYrz2rvYjCPB2DIMC4Ig8OpxGpNJSxRZ58oti7y1IcNvjBAz9vW5m4w==", + "dev": true, + "dependencies": { + "streamx": "^2.13.2" + } + }, + "node_modules/stream-exhaust": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/stream-exhaust/-/stream-exhaust-1.0.2.tgz", + "integrity": "sha512-b/qaq/GlBK5xaq1yrK9/zFcyRSTNxmcZwFLGSTG0mXgZl/4Z6GgiyYOXOvY7N3eEvFRAG1bkDRz5EPGSvPYQlw==", + "dev": true + }, + "node_modules/stream-series": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/stream-series/-/stream-series-0.1.1.tgz", + "integrity": "sha512-OrmvvBgH+6PUeVp/hZGycQIrFegjTEbObxsQGXuPPjtFGIJL5E7JTmjHriUcdPOEiTlpc8wWatgnGCZHKVo7zg==", + "dev": true, + "dependencies": { + "pause-stream": "0.0.11" + } + }, + "node_modules/stream-to-array": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/stream-to-array/-/stream-to-array-2.3.0.tgz", + "integrity": "sha512-UsZtOYEn4tWU2RGLOXr/o/xjRBftZRlG3dEWoaHr8j4GuypJ3isitGbVyjQKAuMu+xbiop8q224TjiZWc4XTZA==", + "dev": true, + "dependencies": { + "any-promise": "^1.1.0" + } + }, + "node_modules/streamx": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.16.1.tgz", + "integrity": "sha512-m9QYj6WygWyWa3H1YY69amr4nVgy61xfjys7xO7kviL5rfIEc2naf+ewFiOA+aEJD7y0JO3h2GoiUv4TDwEGzQ==", + "dev": true, + "dependencies": { + "fast-fifo": "^1.1.0", + "queue-tick": "^1.0.1" + }, + "optionalDependencies": { + "bare-events": "^2.2.0" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/stringify-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/stringify-object/-/stringify-object-5.0.0.tgz", + "integrity": "sha512-zaJYxz2FtcMb4f+g60KsRNFOpVMUyuJgA51Zi5Z1DOTC3S59+OQiVOzE9GZt0x72uBGWKsQIuBKeF9iusmKFsg==", + "dev": true, + "dependencies": { + "get-own-enumerable-keys": "^1.0.0", + "is-obj": "^3.0.0", + "is-regexp": "^3.1.0" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/yeoman/stringify-object?sponsor=1" + } + }, + "node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/strip-bom-buf": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-bom-buf/-/strip-bom-buf-3.0.1.tgz", + "integrity": "sha512-iJaWw2WroigLHzQysdc5WWeUc99p7ea7AEgB6JkY8CMyiO1yTVAA1gIlJJgORElUIR+lcZJkNl1OGChMhvc2Cw==", + "dev": true, + "dependencies": { + "is-utf8": "^0.2.1" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/strip-bom-stream": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/strip-bom-stream/-/strip-bom-stream-5.0.0.tgz", + "integrity": "sha512-Yo472mU+3smhzqeKlIxClre4s4pwtYZEvDNQvY/sJpnChdaxmKuwU28UVx/v1ORKNMxkmj1GBuvxJQyBk6wYMQ==", + "dev": true, + "dependencies": { + "first-chunk-stream": "^5.0.0", + "strip-bom-buf": "^3.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/sver": { + "version": "1.8.4", + "resolved": "https://registry.npmjs.org/sver/-/sver-1.8.4.tgz", + "integrity": "sha512-71o1zfzyawLfIWBOmw8brleKyvnbn73oVHNCsu51uPMz/HWiKkkXsI31JjHW5zqXEqnPYkIiHd8ZmL7FCimLEA==", + "dev": true, + "optionalDependencies": { + "semver": "^6.3.0" + } + }, + "node_modules/sver/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "optional": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/svg-pathdata": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/svg-pathdata/-/svg-pathdata-6.0.3.tgz", + "integrity": "sha512-qsjeeq5YjBZ5eMdFuUa4ZosMLxgr5RZ+F+Y1OrDhuOCEInRMA3x74XdBtggJcj9kOeInz0WE+LgCPDkZFlBYJw==", + "optional": true, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/svg-to-pdfkit": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/svg-to-pdfkit/-/svg-to-pdfkit-0.1.8.tgz", + "integrity": "sha512-QItiGZBy5TstGy+q8mjQTMGRlDDOARXLxH+sgVm1n/LYeo0zFcQlcCh8m4zi8QxctrxB9Kue/lStc/RD5iLadQ==", + "dependencies": { + "pdfkit": ">=0.8.1" + } + }, + "node_modules/tableexport.jquery.plugin": { + "version": "1.30.0", + "resolved": "https://registry.npmjs.org/tableexport.jquery.plugin/-/tableexport.jquery.plugin-1.30.0.tgz", + "integrity": "sha512-kMztiFUsGbxsknFVCDph+5j4e9xmqBBV6Na7T9vRYCUGDxtlndrdxMs9qLJDSOXjlgkIqCUv+S/e5iTUNAFF/g==", + "dependencies": { + "file-saver": ">=2.0.4", + "html2canvas": ">=1.0.0", + "jquery": ">=3.2.1", + "jspdf": ">=2.0.0", + "pdfmake": "^0.1.71", + "xlsx": ">=0.16.0" + } + }, + "node_modules/tar-stream": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.7.tgz", + "integrity": "sha512-qJj60CXt7IU1Ffyc3NJMjh6EkuCFej46zUqJ4J7pqYlThyd9bO0XBTmcOIhSzZJVWfsLks0+nle/j538YAW9RQ==", + "dev": true, + "dependencies": { + "b4a": "^1.6.4", + "fast-fifo": "^1.2.0", + "streamx": "^2.15.0" + } + }, + "node_modules/teex": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/teex/-/teex-1.0.1.tgz", + "integrity": "sha512-eYE6iEI62Ni1H8oIa7KlDU6uQBtqr4Eajni3wX7rpfXD8ysFx8z0+dri+KWEPWpBsxXfxu58x/0jvTVT1ekOSg==", + "dev": true, + "dependencies": { + "streamx": "^2.12.5" + } + }, + "node_modules/text-segmentation": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/text-segmentation/-/text-segmentation-1.0.3.tgz", + "integrity": "sha512-iOiPUo/BGnZ6+54OsWxZidGCsdU8YbE4PSpdPinp7DeMtUJNJBoJ/ouUSTJjHkh1KntHaltHl/gDs2FC4i5+Nw==", + "dependencies": { + "utrie": "^1.0.2" + } + }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "dev": true + }, + "node_modules/through2": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "dev": true, + "dependencies": { + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" + } + }, + "node_modules/through2/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/through2/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/through2/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/tildify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/tildify/-/tildify-3.0.0.tgz", + "integrity": "sha512-9ZLMl75qnTLr7oSEmWJbKemFS/fP4TMBiF6PFwGwLpgobebU1ehXoGbadJ+7jT8fjaz2G82JgN9G4taz+o1j1w==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/time-stamp": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/time-stamp/-/time-stamp-1.1.0.tgz", + "integrity": "sha512-gLCeArryy2yNTRzTGKbZbloctj64jkZ57hj5zdraXue6aFgd6PmvVtEyiUU+hvU0v7q08oVv8r8ev0tRo6bvgw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tiny-emitter": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tiny-emitter/-/tiny-emitter-2.1.0.tgz", + "integrity": "sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q==" + }, + "node_modules/tiny-inflate": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/tiny-inflate/-/tiny-inflate-1.0.3.tgz", + "integrity": "sha512-pkY1fj1cKHb2seWDy0B16HeWyczlJA9/WW3u3c4z/NiWDsO3DOU5D7nhTLE9CF0yXv/QZFY7sEJmj24dK+Rrqw==" + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/to-through": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/to-through/-/to-through-3.0.0.tgz", + "integrity": "sha512-y8MN937s/HVhEoBU1SxfHC+wxCHkV1a9gW8eAdTadYh/bGyesZIVcbjI+mSpFbSVwQici/XjBjuUyri1dnXwBw==", + "dev": true, + "dependencies": { + "streamx": "^2.12.5" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/tslib": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" + }, + "node_modules/uglify-js": { + "version": "3.17.4", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.17.4.tgz", + "integrity": "sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==", + "dev": true, + "bin": { + "uglifyjs": "bin/uglifyjs" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/unc-path-regex": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz", + "integrity": "sha512-eXL4nmJT7oCpkZsHZUOJo8hcX3GbsiDOa0Qu9F646fi8dT3XuSVopVqAcEiVzSKKH7UoDti23wNX3qGFxcW5Qg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/undertaker": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/undertaker/-/undertaker-2.0.0.tgz", + "integrity": "sha512-tO/bf30wBbTsJ7go80j0RzA2rcwX6o7XPBpeFcb+jzoeb4pfMM2zUeSDIkY1AWqeZabWxaQZ/h8N9t35QKDLPQ==", + "dev": true, + "dependencies": { + "bach": "^2.0.1", + "fast-levenshtein": "^3.0.0", + "last-run": "^2.0.0", + "undertaker-registry": "^2.0.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/undertaker-registry": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/undertaker-registry/-/undertaker-registry-2.0.0.tgz", + "integrity": "sha512-+hhVICbnp+rlzZMgxXenpvTxpuvA67Bfgtt+O9WOE5jo7w/dyiF1VmoZVIHvP2EkUjsyKyTwYKlLhA+j47m1Ew==", + "dev": true, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", + "dev": true + }, + "node_modules/unicode-properties": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/unicode-properties/-/unicode-properties-1.4.1.tgz", + "integrity": "sha512-CLjCCLQ6UuMxWnbIylkisbRj31qxHPAurvena/0iwSVbQ2G1VY5/HjV0IRabOEbDHlzZlRdCrD4NhB0JtU40Pg==", + "dependencies": { + "base64-js": "^1.3.0", + "unicode-trie": "^2.0.0" + } + }, + "node_modules/unicode-trie": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-trie/-/unicode-trie-2.0.0.tgz", + "integrity": "sha512-x7bc76x0bm4prf1VLg79uhAzKw8DVboClSN5VxJuQ+LKDOVEW9CdH+VY7SP+vX7xCYQqzzgQpFqz15zeLvAtZQ==", + "dependencies": { + "pako": "^0.2.5", + "tiny-inflate": "^1.0.0" + } + }, + "node_modules/union-value": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-2.0.1.tgz", + "integrity": "sha512-NmcRHHhUy1qWmp6yYWsaURV2qwfS24TmTtO9S9x0L41wCNNVBQFD3toOzO0cd8SsNrFhbw/O0iYO5uffXGYocw==", + "dev": true, + "dependencies": { + "get-value": "^3.0.1", + "set-value": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/union-value/node_modules/get-value": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/get-value/-/get-value-3.0.1.tgz", + "integrity": "sha512-mKZj9JLQrwMBtj5wxi6MH8Z5eSKaERpAwjg43dPtlGI1ZVEgH/qC7T8/6R2OBSUA+zzHBZgICsVJaEIV2tKTDA==", + "dev": true, + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/union-value/node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/union-value/node_modules/set-value": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-3.0.3.tgz", + "integrity": "sha512-Xsn/XSatoVOGBbp5hs3UylFDs5Bi9i+ArpVJKdHPniZHoEgRniXTqHWrWrGQ0PbEClVT6WtfnBwR8CAHC9sveg==", + "dev": true, + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true + }, + "node_modules/utrie": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/utrie/-/utrie-1.0.2.tgz", + "integrity": "sha512-1MLa5ouZiOmQzUbjbu9VmjLzn1QLXBhwpUa7kdLUQK+KQ5KA9I1vk5U4YHe/X2Ch7PYnJfWuWT+VbuxbGwljhw==", + "dependencies": { + "base64-arraybuffer": "^1.0.2" + } + }, + "node_modules/v8flags": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-4.0.1.tgz", + "integrity": "sha512-fcRLaS4H/hrZk9hYwbdRM35D0U8IYMfEClhXxCivOojl+yTRAZH3Zy2sSy6qVCiGbV9YAtPssP6jaChqC9vPCg==", + "dev": true, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/value-or-function": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/value-or-function/-/value-or-function-4.0.0.tgz", + "integrity": "sha512-aeVK81SIuT6aMJfNo9Vte8Dw0/FZINGBV8BfCraGtqVxIeLAEhJyoWs8SmvRVmXfGss2PmmOwZCuBPbZR+IYWg==", + "dev": true, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/vinyl": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-2.2.1.tgz", + "integrity": "sha512-LII3bXRFBZLlezoG5FfZVcXflZgWP/4dCwKtxd5ky9+LOtM4CS3bIRQsmR1KMnMW07jpE8fqR2lcxPZ+8sJIcw==", + "dev": true, + "dependencies": { + "clone": "^2.1.1", + "clone-buffer": "^1.0.0", + "clone-stats": "^1.0.0", + "cloneable-readable": "^1.0.0", + "remove-trailing-separator": "^1.0.1", + "replace-ext": "^1.0.0" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/vinyl-contents": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/vinyl-contents/-/vinyl-contents-2.0.0.tgz", + "integrity": "sha512-cHq6NnGyi2pZ7xwdHSW1v4Jfnho4TEGtxZHw01cmnc8+i7jgR6bRnED/LbrKan/Q7CvVLbnvA5OepnhbpjBZ5Q==", + "dev": true, + "dependencies": { + "bl": "^5.0.0", + "vinyl": "^3.0.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/vinyl-contents/node_modules/replace-ext": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-2.0.0.tgz", + "integrity": "sha512-UszKE5KVK6JvyD92nzMn9cDapSk6w/CaFZ96CnmDMUqH9oowfxF/ZjRITD25H4DnOQClLA4/j7jLGXXLVKxAug==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/vinyl-contents/node_modules/vinyl": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-3.0.0.tgz", + "integrity": "sha512-rC2VRfAVVCGEgjnxHUnpIVh3AGuk62rP3tqVrn+yab0YH7UULisC085+NYH+mnqf3Wx4SpSi1RQMwudL89N03g==", + "dev": true, + "dependencies": { + "clone": "^2.1.2", + "clone-stats": "^1.0.0", + "remove-trailing-separator": "^1.1.0", + "replace-ext": "^2.0.0", + "teex": "^1.0.1" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/vinyl-file": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/vinyl-file/-/vinyl-file-5.0.0.tgz", + "integrity": "sha512-MvkPF/yA1EX7c6p+juVIvp9+Lxp70YUfNKzEWeHMKpUNVSnTZh2coaOqLxI0pmOe2V9nB+OkgFaMDkodaJUyGw==", + "dev": true, + "dependencies": { + "@types/vinyl": "^2.0.7", + "strip-bom-buf": "^3.0.1", + "strip-bom-stream": "^5.0.0", + "vinyl": "^3.0.0" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/vinyl-file/node_modules/replace-ext": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-2.0.0.tgz", + "integrity": "sha512-UszKE5KVK6JvyD92nzMn9cDapSk6w/CaFZ96CnmDMUqH9oowfxF/ZjRITD25H4DnOQClLA4/j7jLGXXLVKxAug==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/vinyl-file/node_modules/vinyl": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-3.0.0.tgz", + "integrity": "sha512-rC2VRfAVVCGEgjnxHUnpIVh3AGuk62rP3tqVrn+yab0YH7UULisC085+NYH+mnqf3Wx4SpSi1RQMwudL89N03g==", + "dev": true, + "dependencies": { + "clone": "^2.1.2", + "clone-stats": "^1.0.0", + "remove-trailing-separator": "^1.1.0", + "replace-ext": "^2.0.0", + "teex": "^1.0.1" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/vinyl-fs": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/vinyl-fs/-/vinyl-fs-4.0.0.tgz", + "integrity": "sha512-7GbgBnYfaquMk3Qu9g22x000vbYkOex32930rBnc3qByw6HfMEAoELjCjoJv4HuEQxHAurT+nvMHm6MnJllFLw==", + "dev": true, + "dependencies": { "fs-mkdirp-stream": "^2.0.1", "glob-stream": "^8.0.0", "graceful-fs": "^4.2.11", diff --git a/package.json b/package.json index 24670dddb..f3d10cbb6 100644 --- a/package.json +++ b/package.json @@ -1,84 +1,84 @@ { - "name": "@opensourcepos/opensourcepos", - "version": "3.4.0", - "description": "Open Source Point of Sale is a web based point of sale system written in the PHP language. It uses MySQL as the data storage back-end and has a simple user interface.", - "main": "index.php", - "license": "MIT", - "authors": [ - "jekkos ", - "FrancescoUK ", - "objecttothis ", - "SteveIreland " - ], - "files": [ - "dist/opensourcepos.$version.tgz" - ], - "publishConfig": { - "registry": "https://npm.pkg.github.com/" - }, - "keywords": [ - "point-of-sale", - "POS" - ], - "repository": { - "type": "git", - "url": "https://github.com/opensourcepos/opensourcepos" - }, - "scripts": { - "build": "gulp default", - "gulp": "gulp" - }, - "type": "module", - "dependencies": { - "bootstrap": "^3.4.1", - "bootstrap-daterangepicker": "^2.1.27", - "bootstrap-datetime-picker": "2.4.4", - "bootstrap-notify": "^3.1.3", - "bootstrap-select": "^1.13.18", - "bootstrap-table": "^1.23.5", - "bootstrap-tagsinput-2021": "^0.8.6", - "bootstrap-toggle": "^2.2.2", - "bootstrap3-dialog": "github:nakupanda/bootstrap3-dialog#master", - "bootstrap5": "npm:bootstrap@^5.3.3", - "bootswatch": "^3.4.1", - "bootswatch5": "npm:bootswatch@^5.3.3", - "chartist": "^0.11.4", - "chartist-plugin-axistitle": "^0.0.7", - "chartist-plugin-barlabels": "^0.0.5", - "chartist-plugin-pointlabels": "^0.0.6", - "chartist-plugin-tooltips": "^0.0.17", - "clipboard": "^2.0.11", - "coffeescript": "^2.7.0", - "es6-promise": "^4.2.8", - "file-saver": "^2.0.5", - "html2canvas": "^1.4.1", - "jasny-bootstrap": "^3.1.3", - "jquery": "^3.7.1", - "jquery-form": "^4.3.0", - "jquery-ui-dist": "^1.12.1", - "jquery-validation": "^1.19.5", - "js-cookie": "^2.2.1", - "jspdf": "^2.5.1", - "jspdf-autotable": "^3.8.2", - "tableexport.jquery.plugin": "^1.30.0" - }, - "devDependencies": { - "gulp": "^5.0.0", - "gulp-clean": "^0.4.0", - "gulp-clean-css": "^4.3.0", - "gulp-concat": "^2.6.1", - "gulp-debug": "^5.0.1", - "gulp-gzip": "^1.4.2", - "gulp-header": "^2.0.9", - "gulp-inject": "^5.0.5", - "gulp-rename": "^2.0.0", - "gulp-rev": "^10.0.0", - "gulp-run": "^1.7.1", - "gulp-tar": "^4.0.0", - "gulp-uglify": "^3.0.2", - "gulp-zip": "^6.1.0", - "npm-check-updates": "^17.1.14", - "readable-stream": "^4.4.2", - "stream-series": "^0.1.1" - } + "name": "@opensourcepos/opensourcepos", + "version": "3.4.0", + "description": "Open Source Point of Sale is a web based point of sale system written in the PHP language. It uses MySQL as the data storage back-end and has a simple user interface.", + "main": "index.php", + "license": "MIT", + "authors": [ + "jekkos ", + "FrancescoUK ", + "objecttothis ", + "SteveIreland " + ], + "files": [ + "dist/opensourcepos.$version.tgz" + ], + "publishConfig": { + "registry": "https://npm.pkg.github.com/" + }, + "keywords": [ + "point-of-sale", + "POS" + ], + "repository": { + "type": "git", + "url": "https://github.com/opensourcepos/opensourcepos" + }, + "scripts": { + "build": "gulp default", + "gulp": "gulp" + }, + "type": "module", + "dependencies": { + "bootstrap": "^3.4.1", + "bootstrap-daterangepicker": "^2.1.27", + "bootstrap-datetime-picker": "2.4.4", + "bootstrap-notify": "^3.1.3", + "bootstrap-select": "^1.13.18", + "bootstrap-table": "^1.23.5", + "bootstrap-tagsinput-2021": "^0.8.6", + "bootstrap-toggle": "^2.2.2", + "bootstrap3-dialog": "github:nakupanda/bootstrap3-dialog#master", + "bootstrap5": "npm:bootstrap@^5.3.3", + "bootswatch": "^3.4.1", + "bootswatch5": "npm:bootswatch@^5.3.3", + "chartist": "^0.11.4", + "chartist-plugin-axistitle": "^0.0.7", + "chartist-plugin-barlabels": "^0.0.5", + "chartist-plugin-pointlabels": "^0.0.6", + "chartist-plugin-tooltips": "^0.0.17", + "clipboard": "^2.0.11", + "coffeescript": "^2.7.0", + "es6-promise": "^4.2.8", + "file-saver": "^2.0.5", + "html2canvas": "^1.4.1", + "jasny-bootstrap": "^3.1.3", + "jquery": "^3.7.1", + "jquery-form": "^4.3.0", + "jquery-ui-dist": "^1.12.1", + "jquery-validation": "^1.19.5", + "js-cookie": "^2.2.1", + "jspdf": "^2.5.1", + "jspdf-autotable": "^3.8.2", + "tableexport.jquery.plugin": "^1.30.0" + }, + "devDependencies": { + "gulp": "^5.0.0", + "gulp-clean": "^0.4.0", + "gulp-clean-css": "^4.3.0", + "gulp-concat": "^2.6.1", + "gulp-debug": "^5.0.1", + "gulp-gzip": "^1.4.2", + "gulp-header": "^2.0.9", + "gulp-inject": "^5.0.5", + "gulp-rename": "^2.0.0", + "gulp-rev": "^10.0.0", + "gulp-run": "^1.7.1", + "gulp-tar": "^4.0.0", + "gulp-uglify": "^3.0.2", + "gulp-zip": "^6.1.0", + "npm-check-updates": "^17.1.14", + "readable-stream": "^4.4.2", + "stream-series": "^0.1.1" + } } diff --git a/public/.htaccess b/public/.htaccess index f9bfc285b..033ea98d6 100644 --- a/public/.htaccess +++ b/public/.htaccess @@ -8,23 +8,23 @@ Options All -Indexes # Turning on the rewrite engine is necessary for the following rules and features. # FollowSymLinks must be enabled for this to work. - Options +SymLinksIfOwnerMatch - RewriteEngine On + Options +SymLinksIfOwnerMatch + RewriteEngine On - # If you installed CodeIgniter in a subfolder, you will need to - # change the following line to match the subfolder you need. - # http://httpd.apache.org/docs/current/mod/mod_rewrite.html#rewritebase - # RewriteBase / + # If you installed CodeIgniter in a subfolder, you will need to + # change the following line to match the subfolder you need. + # http://httpd.apache.org/docs/current/mod/mod_rewrite.html#rewritebase + # RewriteBase / - # Redirect Trailing Slashes... - # RewriteCond %{REQUEST_FILENAME} !-d - # RewriteCond %{REQUEST_URI} (.+)/$ - # RewriteRule ^ %1 [L,R=301] + # Redirect Trailing Slashes... + # RewriteCond %{REQUEST_FILENAME} !-d + # RewriteCond %{REQUEST_URI} (.+)/$ + # RewriteRule ^ %1 [L,R=301] - # Rewrite "www.example.com -> example.com" - RewriteCond %{HTTPS} !=on - RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC] - RewriteRule ^ http://%1%{REQUEST_URI} [R=301,L] + # Rewrite "www.example.com -> example.com" + RewriteCond %{HTTPS} !=on + RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC] + RewriteRule ^ http://%1%{REQUEST_URI} [R=301,L] # To redirect a subdomain to a subdir because of https not supporting wildcards # replace values between <> with your values @@ -32,31 +32,31 @@ Options All -Indexes # RewriteCond %{HTTP_HOST} ^www\.\.\.com$ # RewriteRule ^/?$ "https\:\/\/www\.\.com\/" [R=301,L] - # Checks to see if the user is attempting to access a valid file, - # such as an image or css document, if this isn't true it sends the - # request to the front controller, index.php - RewriteCond %{REQUEST_FILENAME} !-f - RewriteCond %{REQUEST_FILENAME} !-d + # Checks to see if the user is attempting to access a valid file, + # such as an image or css document, if this isn't true it sends the + # request to the front controller, index.php + RewriteCond %{REQUEST_FILENAME} !-f + RewriteCond %{REQUEST_FILENAME} !-d - # if in web root - RewriteRule ^([\s\S]*)$ index.php/$1 [L,NC,QSA] + # if in web root + RewriteRule ^([\s\S]*)$ index.php/$1 [L,NC,QSA] # if in subdir comment above line, uncomment the line below and replace with your path #RewriteRule ^(.*)$ //public/index.php?/$1 [L] - # Ensure Authorization header is passed along - RewriteCond %{HTTP:Authorization} . - RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] + # Ensure Authorization header is passed along + RewriteCond %{HTTP:Authorization} . + RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] - # If we don't have mod_rewrite installed, all 404's - # can be sent to index.php, and everything works as normal. - ErrorDocument 404 index.php + # If we don't have mod_rewrite installed, all 404's + # can be sent to index.php, and everything works as normal. + ErrorDocument 404 index.php # Disable server signature start - ServerSignature Off + ServerSignature Off # Disable server signature end diff --git a/public/css/barcode_font.css b/public/css/barcode_font.css index 6c7fffe0b..8bcb99fe0 100644 --- a/public/css/barcode_font.css +++ b/public/css/barcode_font.css @@ -1,47 +1,47 @@ -@font-face +@font-face { font-family: 'SansationLight'; - src: url('../fonts/SansationLight.eot'); - src: local('SansationLight'), url('../fonts/SansationLight.woff') format('woff'), url('../fonts/SansationLight.ttf') format('truetype'); + src: url('../fonts/SansationLight.eot'); + src: local('SansationLight'), url('../fonts/SansationLight.woff') format('woff'), url('../fonts/SansationLight.ttf') format('truetype'); } .font_SansationLight { - font-family: 'SansationLight' !important; + font-family: 'SansationLight' !important; } -@font-face +@font-face { font-family:'Arial'; - src: url('../fonts/Arial.eot'); - src: local('Arial'), url('../fonts/Arial.woff') format('woff'), url('../fonts/Arial.ttf') format('truetype'); + src: url('../fonts/Arial.eot'); + src: local('Arial'), url('../fonts/Arial.woff') format('woff'), url('../fonts/Arial.ttf') format('truetype'); } .font_Arial { - font-family: 'Arial' !important; + font-family: 'Arial' !important; } -@font-face +@font-face { font-family: 'JUNEBUG'; - src: url('../fonts/JUNEBUG.eot'); - src: local('JUNEBUG'), url('../fonts/JUNEBUG.woff') format('woff'), url('../fonts/JUNEBUG.ttf') format('truetype'); + src: url('../fonts/JUNEBUG.eot'); + src: local('JUNEBUG'), url('../fonts/JUNEBUG.woff') format('woff'), url('../fonts/JUNEBUG.ttf') format('truetype'); } .font_JUNEBUG { - font-family: 'JUNEBUG' !important; + font-family: 'JUNEBUG' !important; } -@font-face +@font-face { font-family: 'b-de-bonita-shadow'; - src: url('../fonts/b-de-bonita-shadow.eot'); - src: local('JUNEBUG'), url('../fonts/b-de-bonita-shadow.woff') format('woff'), url('../fonts/b-de-bonita-shadow.ttf') format('truetype'); + src: url('../fonts/b-de-bonita-shadow.eot'); + src: local('JUNEBUG'), url('../fonts/b-de-bonita-shadow.woff') format('woff'), url('../fonts/b-de-bonita-shadow.ttf') format('truetype'); } .font_b-de-bonita-shadow { - font-family: 'b-de-bonita-shadow' !important; -} \ No newline at end of file + font-family: 'b-de-bonita-shadow' !important; +} diff --git a/public/css/bootstrap.autocomplete.css b/public/css/bootstrap.autocomplete.css index 5a7dcc6d9..63b37c8e5 100644 --- a/public/css/bootstrap.autocomplete.css +++ b/public/css/bootstrap.autocomplete.css @@ -11,7 +11,7 @@ padding: 5px 0; margin: 2px 0 0 0; list-style: none; - font-size: 13px; + font-size: 13px; background-color: #ffffff; border-color: #cccccc; border-color: rgba(0, 0, 0, 0.15); @@ -30,7 +30,7 @@ *border-bottom-width: 2px; } -.ui-autocomplete .ui-menu-item > a.ui-corner-all +.ui-autocomplete .ui-menu-item > a.ui-corner-all { display: block; padding: 3px 15px; diff --git a/public/css/invoice.css b/public/css/invoice.css index 57966aca3..7ab1ccc66 100644 --- a/public/css/invoice.css +++ b/public/css/invoice.css @@ -1,7 +1,7 @@ /* - CSS-Tricks Example - by Chris Coyier - http://css-tricks.com + CSS-Tricks Example + by Chris Coyier + http://css-tricks.com */ /*body { font: 14px/1.4 Georgia, serif; }*/ diff --git a/public/css/invoice_email.css b/public/css/invoice_email.css index 8e01a6b4d..b82a26e76 100644 --- a/public/css/invoice_email.css +++ b/public/css/invoice_email.css @@ -1,7 +1,7 @@ /* - CSS-Tricks Example - by Chris Coyier - http://css-tricks.com + CSS-Tricks Example + by Chris Coyier + http://css-tricks.com */ #menubar, #footer { display: none; } * { margin: 0; padding: 0; } diff --git a/public/css/ospos.css b/public/css/ospos.css index d88bc1386..e44524df8 100644 --- a/public/css/ospos.css +++ b/public/css/ospos.css @@ -2,198 +2,198 @@ html, body { - height: 100%; + height: 100%; } a.none { - text-decoration: none; + text-decoration: none; } .topbar { - color: #eee; - font-size: 12px; - background: #182735; - padding: 0.2em; + color: #eee; + font-size: 12px; + background: #182735; + padding: 0.2em; } @media (min-width:1300px) { - .container { - width: 1400px; - } + .container { + width: 1400px; + } } .navbar { - border-radius: 0; + border-radius: 0; } -.navbar-default .navbar-nav > .active > a, -.navbar-default .navbar-nav > .active > a:hover, +.navbar-default .navbar-nav > .active > a, +.navbar-default .navbar-nav > .active > a:hover, .navbar-default .navbar-nav > .active > a:focus { - color: #2C3E50; - background-color: #FFFFFF; + color: #2C3E50; + background-color: #FFFFFF; } .jumbotron.push-spaces { - margin:0; /*add this*/ + margin:0; /*add this*/ } .navbar .menu-icon { - text-align: center; - font-size: 12px; + text-align: center; + font-size: 12px; } .navbar .menu-icon img { - width: 24px; + width: 24px; } .wrapper { - font-size: 13px; + font-size: 13px; } #title_bar { - position: relative; - width: 100%; - height: 3em; + position: relative; + width: 100%; + height: 3em; } #page_title { - font-size: 22px; - font-family: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif; - font-weight: 400; + font-size: 22px; + font-family: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif; + font-weight: 400; } #page_subtitle { - margin-bottom: 0.5em; - font-size: 16px; - font-weight: bold; - text-align: center; + margin-bottom: 0.5em; + font-size: 16px; + font-weight: bold; + text-align: center; } #home_module_list, #office_module_list { - position: relative; - padding: 2em 0; - text-align: center; + position: relative; + padding: 2em 0; + text-align: center; } .module_item { - min-width: 7em; - display: inline-block; - text-align: center; + min-width: 7em; + display: inline-block; + text-align: center; } .module_item a { - display: block; + display: block; } #config_wrapper { - text-align: center; + text-align: center; } #config_info { - text-align: left; + text-align: left; } #config_info .wide { - width: 30%; + width: 30%; } #integrations_header { - margin:10px 0; - text-align:center; - font-size:1.4em; - font-weight:normal; - padding:10px 0 + margin:10px 0; + text-align:center; + font-size:1.4em; + font-weight:normal; + padding:10px 0 } #footer { - margin-top: 5em; - position: relative; - text-align: center; - font-size: 11px; - color: #777777; - clear: both; + margin-top: 5em; + position: relative; + text-align: center; + font-size: 11px; + color: #777777; + clear: both; } a.rollover img { - padding: 3px; + padding: 3px; } #filters.btn-group { - vertical-align: none; + vertical-align: none; } button.btn.dropdown-toggle.btn-sm { - background-color: white; - color: black; - border: 2px solid #dce4ec; + background-color: white; + color: black; + border: 2px solid #dce4ec; } .dropdown-menu { - font-size: 13px; + font-size: 13px; } .bootstrap-tagsinput { - background-color: white; - color: black; - border: 2px solid #dce4ec; - box-shadow: none; + background-color: white; + color: black; + border: 2px solid #dce4ec; + box-shadow: none; } label.required { - color:red; + color:red; } @media (min-width: 768px) -{ - .navbar-nav > li > a - { - padding: 10px 10px 9px; - } +{ + .navbar-nav > li > a + { + padding: 10px 10px 9px; + } - .modal-dlg .modal-dialog - { - width: 500px; - } + .modal-dlg .modal-dialog + { + width: 500px; + } - .modal-dlg-wide .modal-dialog - { - width: 750px; - } + .modal-dlg-wide .modal-dialog + { + width: 750px; + } } .modal-body { - max-height: calc(100vh - 212px); - overflow-y: auto; + max-height: calc(100vh - 212px); + overflow-y: auto; } .no-gutter [class*="-1"] { - padding-right:0; - padding-left: 0; + padding-right:0; + padding-left: 0; } diff --git a/public/css/ospos_print.css b/public/css/ospos_print.css index 91bf87eb0..8d6a2495a 100644 --- a/public/css/ospos_print.css +++ b/public/css/ospos_print.css @@ -1,77 +1,77 @@ @media print { - .no-print, .no-print * - { - display: none !important; - } + .no-print, .no-print * + { + display: none !important; + } - #receipt_wrapper, #table - { - /*background-color:#FFFFFF;*/ - font-size:75%; - } + #receipt_wrapper, #table + { + /*background-color:#FFFFFF;*/ + font-size:75%; + } - .topbar - { - display:none; - } + .topbar + { + display:none; + } - #menubar, #footer - { - display:none; - } + #menubar, #footer + { + display:none; + } - #sale_return_policy - { - width:100%; - text-align:center; - } + #sale_return_policy + { + width:100%; + text-align:center; + } - /* Hide links in table for printing */ - table.innertable - { - display: table; - } + /* Hide links in table for printing */ + table.innertable + { + display: table; + } - table.innertable a - { - color: #000000; - text-decoration: none; - } + table.innertable a + { + color: #000000; + text-decoration: none; + } - table.report a.expand - { - visibility: hidden; - } + table.report a.expand + { + visibility: hidden; + } - table.report a - { - color: #000000; - text-decoration: none; - } + table.report a + { + color: #000000; + text-decoration: none; + } - table.innertable thead - { - /*display:none;*/ - } + table.innertable thead + { + /*display:none;*/ + } - .print_show - { - display:block !important; - } + .print_show + { + display:block !important; + } - .print_hide - { - display:none !important; - } + .print_hide + { + display:none !important; + } - .fixed-table-container - { - border: none; - } + .fixed-table-container + { + border: none; + } - .fixed-table-container thead th .sortable - { - padding-right: 10px; - } -} \ No newline at end of file + .fixed-table-container thead th .sortable + { + padding-right: 10px; + } +} diff --git a/public/css/popupbox.css b/public/css/popupbox.css index 5716e4392..93d689b81 100644 --- a/public/css/popupbox.css +++ b/public/css/popupbox.css @@ -1,85 +1,85 @@ #required_fields_message { - width: 100%; - text-align: center; - margin-bottom: 3px; - font-style: italic; + width: 100%; + text-align: center; + margin-bottom: 3px; + font-style: italic; } .error_message_box { - margin-bottom: 7px; - margin-left: 20px; - color: red; - font-weight: bold; + margin-bottom: 7px; + margin-left: 20px; + color: red; + font-weight: bold; } #customer_basic_info, #item_basic_info, #item_number_info, #supplier_basic_info, #sale_basic_info, #employee_basic_info, #employee_login_info, #employee_permission_info { - padding: 5px; + padding: 5px; } #info_provided_by { - display: none; - font-weight: bold; + display: none; + font-weight: bold; } #permission_list { - list-style: none; + list-style: none; } #permission_list li { - padding: 5px; + padding: 5px; } #permission_list ul li { - padding-left: 20px; - padding-bottom: 0px; - list-style: none; + padding-left: 20px; + padding-bottom: 0px; + list-style: none; } #permission_list input { - top: 3px; + top: 3px; } #employee_permission_info p { - font-weight: bold; + font-weight: bold; } #employee_permission_info span.small { - font-style: italic; - font-size: 80%; + font-style: italic; + font-size: 80%; } #item_kit_items, #items_count_details { - font-size: 80%; + font-size: 80%; } #item_kit_items, #items_count_details, #tax_rates { - width: 100%; + width: 100%; } #item_kit_items thead tr, #items_count_details thead tr, #tax_rates thead tr { - background-color: #CCC; + background-color: #CCC; } #item_kit_items th, #items_count_details th, #tax_rates th { - text-align: center; - font-weight: bold; + text-align: center; + font-weight: bold; } #item_kit_items td, #items_count_details td, #tax_rates td { - text-align: center; + text-align: center; } diff --git a/public/css/receipt.css b/public/css/receipt.css index e20f8e64c..005d9090c 100644 --- a/public/css/receipt.css +++ b/public/css/receipt.css @@ -1,76 +1,76 @@ #receipt_wrapper { - width:100%; + width:100%; } #receipt_header { - text-align:center; + text-align:center; } #company_name { - font-size:150%; - font-weight:bold; + font-size:150%; + font-weight:bold; } #company_name img { - max-width: 150px; - max-height: 150px; + max-width: 150px; + max-height: 150px; } #company_phone { - margin-bottom:15px; + margin-bottom:15px; } #sale_time { - margin-bottom:5px; + margin-bottom:5px; } #receipt_items { - position:relative; - border-collapse:collapse; - margin-top:15px; - margin-bottom:15px; - width:100%; + position:relative; + border-collapse:collapse; + margin-top:15px; + margin-bottom:15px; + width:100%; } #receipt_items td { - position:relative; - padding:3px; margin-bottom:5px; - + position:relative; + padding:3px; margin-bottom:5px; + } #receipt_items tr { - margin-bottom:5px; + margin-bottom:5px; } #sale_return_policy { - width:80%; - margin:0 auto; - text-align:center; + width:80%; + margin:0 auto; + text-align:center; } #receipt_wrapper #barcode { - margin-top:10px; - text-align:center; + margin-top:10px; + text-align:center; } -.total-value +.total-value { - text-align: right; + text-align: right; } .discount { - font-weight: bold; + font-weight: bold; } diff --git a/public/css/register.css b/public/css/register.css index b5f232c70..2db565f4e 100644 --- a/public/css/register.css +++ b/public/css/register.css @@ -1,31 +1,31 @@ #register_wrapper { - float: left; - width: 70%; - font-size: 13px; + float: left; + width: 70%; + font-size: 13px; } #mode_form, #add_item_form { - margin: 0; + margin: 0; } #mode_form .panel-body, #add_item_form .panel-body { - padding: 0.7em; - margin: 0; + padding: 0.7em; + margin: 0; } #mode_form ul, #add_item_form ul { - list-style: none; - padding: 0; - margin: 0; + list-style: none; + padding: 0; + margin: 0; } #mode_form ul li, #add_item_form ul li { - margin-left: 1em; + margin-left: 1em; } .first_li @@ -35,68 +35,68 @@ #mode_form ul.dropdown-menu.inner, #add_item_form ul.dropdown-menu.inner { - margin-left: -1em !important; + margin-left: -1em !important; } #register { - padding: 0; - border-collapse: collapse; + padding: 0; + border-collapse: collapse; } #register th -{ - padding: 5px; - text-align: center; +{ + padding: 5px; + text-align: center; } #register td { - padding: 3px; - text-align: center; + padding: 3px; + text-align: center; } #overall_sale { - width: 29%; - float: left; - margin-left: 0.1em; - padding-bottom: 1em; - padding-top: 1em; - font-size: 13px; - text-align: center; + width: 29%; + float: left; + margin-left: 0.1em; + padding-bottom: 1em; + padding-top: 1em; + font-size: 13px; + text-align: center; } #overall_sale .panel-body { - padding-top: 0; - padding-bottom: 0; + padding-top: 0; + padding-bottom: 0; } #overall_sale .form-group { - margin: 0; + margin: 0; } #overall_sale .btn { - margin-top: 0.5em; - margin-bottom: 0.5em; + margin-top: 0.5em; + margin-bottom: 0.5em; } #payment_details, #buttons_sale, #suspended_sales_table { - width: 100%; + width: 100%; } .sales_table_100 { - width: 100%; + width: 100%; } #sale_totals, #payment_totals { - border-top: 1px solid #000; + border-top: 1px solid #000; } input#amount_tendered:disabled @@ -106,15 +106,15 @@ input#amount_tendered:disabled #payment_details { - float: left; - border-top: 1px solid #000; - margin-top: 0.2em; - padding: 0.5em; - text-align: left; - clear: both; + float: left; + border-top: 1px solid #000; + margin-top: 0.2em; + padding: 0.5em; + text-align: left; + clear: both; } .alert { - margin-bottom: 5px; + margin-bottom: 5px; } diff --git a/public/css/reports.css b/public/css/reports.css index e2b6802db..1233cbeb7 100644 --- a/public/css/reports.css +++ b/public/css/reports.css @@ -1,12 +1,12 @@ -.report +.report { - font-size: .85em; + font-size: .85em; } #report_summary { - margin: 2em 0 auto; - text-align: center; + margin: 2em 0 auto; + text-align: center; } #report_summary .summary_row @@ -15,8 +15,8 @@ #chart_report_summary { - text-align: center; - margin-top: -100px; + text-align: center; + margin-top: -100px; } #chart_report_summary .summary_row @@ -30,32 +30,32 @@ /* style chart X axis labels to be rotated of 60 degrees */ .ct-label.ct-horizontal { - -webkit-transform: rotate(-60deg); - -moz-transform: rotate(-60deg); - -ms-transform: rotate(-60deg); - -o-transform: rotate(-60deg); - filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3); + -webkit-transform: rotate(-60deg); + -moz-transform: rotate(-60deg); + -ms-transform: rotate(-60deg); + -o-transform: rotate(-60deg); + filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3); } /* set all labels to be black with font size 1.2rem */ .ct-label { - fill: rgba(0,0,0,1); - color: rgba(0,0,0,1); - font-size: 1.2rem; + fill: rgba(0,0,0,1); + color: rgba(0,0,0,1); + font-size: 1.2rem; } .ct-tooltip-point { - fill-opacity: 1!important; - stroke-width: 0px; - stroke: red; - transition: all 0.2s linear; + fill-opacity: 1!important; + stroke-width: 0px; + stroke: red; + transition: all 0.2s linear; } .ct-tooltip-point:hover { - r: 7; - stroke-opacity: 0.2; - stroke-width: 20px; -} \ No newline at end of file + r: 7; + stroke-opacity: 0.2; + stroke-width: 20px; +} diff --git a/public/js/imgpreview.full.jquery.js b/public/js/imgpreview.full.jquery.js index eb5fdec1c..bab8af37b 100644 --- a/public/js/imgpreview.full.jquery.js +++ b/public/js/imgpreview.full.jquery.js @@ -8,18 +8,18 @@ * @version 0.22 */ (function($){ - + $.expr[':'].linkingToImage = function(elem, index, match){ // This will return true if the specified attribute contains a valid link to an image: return !! ($(elem).attr(match[3]) && $(elem).attr(match[3]).match(/\.(gif|jpe?g|png|bmp)$/i)); }; - + $.fn.imgPreview = function(userDefinedSettings){ - + var s = $.extend({ - + /* DEFAULTS */ - + // CSS to be applied to image: imgCSS: {}, // Distance between cursor and preview: @@ -40,24 +40,24 @@ thumbPrefix: '', // Where to retrieve the image from: srcAttr: 'href' - + }, userDefinedSettings), - + $container = $('
                                                                                                  ').attr('id', s.containerID) .append('').hide() .css('position','absolute') .appendTo('body'), - + $img = $('img', $container).css(s.imgCSS), - + // Get all valid elements (linking to images / ATTR with image link): $collection = this.filter(':linkingToImage(' + s.srcAttr + ')'); - + // Re-usable means to add prefix (from setting): function addPrefix(src) { return src && src.replace(/(\/?)([^\/]+)$/,'$1' + s.thumbPrefix + '$2'); } - + if (s.preloadImages) { (function(i){ var tempIMG = new Image(), @@ -65,25 +65,25 @@ var src = $($collection[i]).attr(s.srcAttr) if (src) { - tempIMG.src = addPrefix(src); + tempIMG.src = addPrefix(src); tempIMG.onload = function(){ $collection[i + 1] && callee(i + 1); }; } })(0); } - + $collection .mousemove(function(e){ - + $container.css({ top: e.pageY + s.distanceFromCursor.top + 'px', left: e.pageX + s.distanceFromCursor.left + 'px' }); - + }) .hover(function(){ - + var link = this; $container .addClass(s.containerLoadingClass) @@ -96,18 +96,18 @@ }) .attr( 'src' , addPrefix($(link).attr(s.srcAttr)) ); s.onShow.call($container[0], link); - + }, function(){ - + $container.hide(); $img.unbind('load').attr('src','').hide(); s.onHide.call($container[0], this); - + }); - + // Return full selection, not $collection! return this; - + }; - -})(jQuery); \ No newline at end of file + +})(jQuery); diff --git a/public/js/manage_tables.js b/public/js/manage_tables.js index 746e49916..5a0431f29 100644 --- a/public/js/manage_tables.js +++ b/public/js/manage_tables.js @@ -1,375 +1,375 @@ (function(dialog_support, $) { - var btn_id, dialog_ref; + var btn_id, dialog_ref; - var hide = function() { - dialog_ref && dialog_ref.close(); - }; + var hide = function() { + dialog_ref && dialog_ref.close(); + }; - var clicked_id = function() { - return btn_id; - }; + var clicked_id = function() { + return btn_id; + }; - var submit = function(button_id) { - return function(dlog_ref) { - const form = $('form', dlog_ref.$modalBody).first(); - const validator = form.data('validator'); - const submitted = validator && validator.formSubmitted; + var submit = function(button_id) { + return function(dlog_ref) { + const form = $('form', dlog_ref.$modalBody).first(); + const validator = form.data('validator'); + const submitted = validator && validator.formSubmitted; - btn_id = button_id; - dialog_ref = dlog_ref; + btn_id = button_id; + dialog_ref = dlog_ref; - if (button_id == 'submit' && (!submitted && btn_id != "btnNew")) { - form.submit(); - validator.valid() && $('#submit').prop('disabled', true).css('opacity', 0.5); - } - return false; - } - }; + if (button_id == 'submit' && (!submitted && btn_id != "btnNew")) { + form.submit(); + validator.valid() && $('#submit').prop('disabled', true).css('opacity', 0.5); + } + return false; + } + }; - var button_class = { - 'submit' : 'btn-primary', - 'delete' : 'btn-danger' - }; + var button_class = { + 'submit' : 'btn-primary', + 'delete' : 'btn-danger' + }; - var init = function(selector) { + var init = function(selector) { - var buttons = function(event) { - var buttons = []; - var dialog_class = 'modal-dlg'; - $.each($(this).attr('class').split(/\s+/), function(classIndex, className) { - var width_class = className.split("modal-dlg-"); - if (width_class && width_class.length > 1) { - dialog_class = className; - } - }); + var buttons = function(event) { + var buttons = []; + var dialog_class = 'modal-dlg'; + $.each($(this).attr('class').split(/\s+/), function(classIndex, className) { + var width_class = className.split("modal-dlg-"); + if (width_class && width_class.length > 1) { + dialog_class = className; + } + }); - var has_new_btn = "btnNew" in $(this).data(); - $.each($(this).data(), function(name, value) { - var btn_class = name.split("btn"); - if (btn_class && btn_class.length > 1) { - var btn_name = btn_class[1].toLowerCase(); - var is_submit = btn_name == 'submit'; - var is_new = btn_name === 'new'; - var is_enter = has_new_btn ? is_new: is_submit; - buttons.push({ - id: btn_name, - label: value, - cssClass: button_class[btn_name], - hotkey: is_enter ? 13 : undefined, // Enter. - action: submit(btn_name) - }); - } - }); + var has_new_btn = "btnNew" in $(this).data(); + $.each($(this).data(), function(name, value) { + var btn_class = name.split("btn"); + if (btn_class && btn_class.length > 1) { + var btn_name = btn_class[1].toLowerCase(); + var is_submit = btn_name == 'submit'; + var is_new = btn_name === 'new'; + var is_enter = has_new_btn ? is_new: is_submit; + buttons.push({ + id: btn_name, + label: value, + cssClass: button_class[btn_name], + hotkey: is_enter ? 13 : undefined, // Enter. + action: submit(btn_name) + }); + } + }); - !buttons.length && buttons.push({ - id: 'close', - label: lang.line('common_close'), - cssClass: 'btn-primary', - action: function(dialog_ref) { - dialog_ref.close(); - } - }); - return { buttons: buttons.sort(function(a, b) { - return ($(b).text()) < ($(a).text()) ? -1 : 1; - }), cssClass: dialog_class}; - }; + !buttons.length && buttons.push({ + id: 'close', + label: lang.line('common_close'), + cssClass: 'btn-primary', + action: function(dialog_ref) { + dialog_ref.close(); + } + }); + return { buttons: buttons.sort(function(a, b) { + return ($(b).text()) < ($(a).text()) ? -1 : 1; + }), cssClass: dialog_class}; + }; - $(selector).each(function(index, $element) { + $(selector).each(function(index, $element) { - return $(selector).off('click').on('click', function(event) { - var $link = $(event.target); - $link = !$link.is("a, button") ? $link.parents("a, button") : $link ; - BootstrapDialog.show($.extend({ - title: $link.attr('title'), - message: (function() { - var node = $('
                                                                                                  '); - $.get($link.attr('href') || $link.data('href'), function(data) { - node.html(data); - }); - return node; - }) - }, buttons.call(this, event))); + return $(selector).off('click').on('click', function(event) { + var $link = $(event.target); + $link = !$link.is("a, button") ? $link.parents("a, button") : $link ; + BootstrapDialog.show($.extend({ + title: $link.attr('title'), + message: (function() { + var node = $('
                                                                                                  '); + $.get($link.attr('href') || $link.data('href'), function(data) { + node.html(data); + }); + return node; + }) + }, buttons.call(this, event))); - return false; - }); - }); - }; + return false; + }); + }); + }; - $.extend(dialog_support, { - init: init, - submit: submit, - hide: hide, - clicked_id: clicked_id - }); + $.extend(dialog_support, { + init: init, + submit: submit, + hide: hide, + clicked_id: clicked_id + }); })(window.dialog_support = window.dialog_support || {}, jQuery); (function(table_support, $) { - var enable_actions = function(callback) { - return function() { - var selection_empty = selected_rows().length == 0; - $("#toolbar button:not(.dropdown-toggle)").attr('disabled', selection_empty); - typeof callback == 'function' && callback(); - } - }; - - var table = function() { - return $("#table").data('bootstrap.table'); - } - - var selected_ids = function () { - return $.map(table().getSelections(), function (element) { - return element[options.uniqueId || 'id'] !== '-' ? element[options.uniqueId || 'id'] : null; - }); - }; - - var selected_rows = function () { - return $("#table td input:checkbox:checked").parents("tr"); - }; - - var row_selector = function(id) { - return "tr[data-uniqueid='" + id + "']"; - }; - - var rows_selector = function(ids) { - var selectors = []; - ids = ids instanceof Array ? ids : ("" + ids).split(":"); - $.each(ids, function(index, element) { - selectors.push(row_selector(element)); - }); - return selectors;; - }; - - var highlight_row = function (id, color) { - $(rows_selector(id)).each(function(index, element) { - var original = $(element).css('backgroundColor'); - $(element).find("td").animate({backgroundColor: color || '#e1ffdd'}, "slow", "linear") - .animate({backgroundColor: color || '#e1ffdd'}, 5000) - .animate({backgroundColor: original}, "slow", "linear"); - }); - }; - - var do_action = function(action) { - return function (url, ids) { - if (confirm($.fn.bootstrapTable.defaults.formatConfirmAction(action))) { - $.post((url || options.resource) + '/' + action, {'ids[]': ids || selected_ids()}, function (response) { - //delete was successful, remove checkbox rows - if (response.success) { - var selector = ids ? row_selector(ids) : selected_rows(); - table().collapseAllRows(); - $(selector).each(function (index, element) { - $(this).find("td").animate({backgroundColor: "green"}, 1200, "linear") - .end().animate({opacity: 0}, 1200, "linear", function () { - table().remove({ - field: options.uniqueId, - values: selected_ids() - }); - if (index == $(selector).length - 1) { - refresh(); - enable_actions(); - } - }); - }); - $.notify(response.message, {type: 'success'}); - } else { - $.notify(response.message, {type: 'danger'}); - } - }, "json"); - } else { - return false; - } - }; + var enable_actions = function(callback) { + return function() { + var selection_empty = selected_rows().length == 0; + $("#toolbar button:not(.dropdown-toggle)").attr('disabled', selection_empty); + typeof callback == 'function' && callback(); + } }; - var load_success = function(callback) { - return function(response) { - typeof options.load_callback == 'function' && options.load_callback(); - options.load_callback = undefined; - dialog_support.init("a.modal-dlg"); - typeof callback == 'function' && callback.call(this, response); - } - }; + var table = function() { + return $("#table").data('bootstrap.table'); + } - var options; + var selected_ids = function () { + return $.map(table().getSelections(), function (element) { + return element[options.uniqueId || 'id'] !== '-' ? element[options.uniqueId || 'id'] : null; + }); + }; - var toggle_column_visibility = function() { - if (localStorage[options.employee_id]) { - var user_settings = JSON.parse(localStorage[options.employee_id]); - user_settings[options.resource] && $.each(user_settings[options.resource], function(index, element) { - element ? table().showColumn(index) : table().hideColumn(index); - }); - } - }; + var selected_rows = function () { + return $("#table td input:checkbox:checked").parents("tr"); + }; - var init = function (_options) { - options = _options; - enable_actions = enable_actions(options.enableActions); - load_success = load_success(options.onLoadSuccess); - const export_suffix = new Date().toISOString().slice(0, 16).replace(/(-|\s*|T|:)*/g,""); - $('#table') - .addClass("table-striped") - .addClass("table-bordered") - .bootstrapTable($.extend(options, { - columns: options.headers, - stickyHeader: true, - url: options.resource + '/search', - sidePagination: 'server', - selectItemName: 'btSelectItem', - pageSize: options.pageSize, - pagination: true, - search: options.resource || false, - showColumns: true, - clickToSelect: true, - showExport: true, - exportDataType: 'basic', - exportTypes: ['json', 'xml', 'csv', 'txt', 'sql', 'excel', 'pdf'], - exportOptions: { - fileName: options.resource.replace(/.*\/(.*?)$/g, '$1') + "_" + export_suffix - }, - onPageChange: function(response) { - load_success(response); - enable_actions(); - }, - toolbar: '#toolbar', - uniqueId: options.uniqueId || 'id', - trimOnSearch: false, - onCheck: enable_actions, - onUncheck: enable_actions, - onCheckAll: enable_actions, - onUncheckAll: enable_actions, - onLoadSuccess: function(response) { - load_success(response); - enable_actions(); - }, - onColumnSwitch : function(field, checked) { - var user_settings = localStorage[options.employee_id]; - user_settings = (user_settings && JSON.parse(user_settings)) || {}; - user_settings[options.resource] = user_settings[options.resource] || {}; - user_settings[options.resource][field] = checked; - localStorage[options.employee_id] = JSON.stringify(user_settings); - dialog_support.init("a.modal-dlg"); - }, - queryParamsType: 'limit', - iconSize: 'sm', - silentSort: true, - paginationVAlign: 'bottom', - escape: true - })); - enable_actions(); - init_delete(); - init_restore(); - toggle_column_visibility(); - dialog_support.init("button.modal-dlg"); - }; + var row_selector = function(id) { + return "tr[data-uniqueid='" + id + "']"; + }; - var init_delete = function (confirmMessage) { - $("#delete").click(function(event) { - do_action("delete")(); - }); - }; + var rows_selector = function(ids) { + var selectors = []; + ids = ids instanceof Array ? ids : ("" + ids).split(":"); + $.each(ids, function(index, element) { + selectors.push(row_selector(element)); + }); + return selectors;; + }; - var init_restore = function (confirmMessage) { - $("#restore").click(function(event) { - do_action("restore")(); - }); - }; + var highlight_row = function (id, color) { + $(rows_selector(id)).each(function(index, element) { + var original = $(element).css('backgroundColor'); + $(element).find("td").animate({backgroundColor: color || '#e1ffdd'}, "slow", "linear") + .animate({backgroundColor: color || '#e1ffdd'}, 5000) + .animate({backgroundColor: original}, "slow", "linear"); + }); + }; - var refresh = function() { - table().refresh(); - } + var do_action = function(action) { + return function (url, ids) { + if (confirm($.fn.bootstrapTable.defaults.formatConfirmAction(action))) { + $.post((url || options.resource) + '/' + action, {'ids[]': ids || selected_ids()}, function (response) { + //delete was successful, remove checkbox rows + if (response.success) { + var selector = ids ? row_selector(ids) : selected_rows(); + table().collapseAllRows(); + $(selector).each(function (index, element) { + $(this).find("td").animate({backgroundColor: "green"}, 1200, "linear") + .end().animate({opacity: 0}, 1200, "linear", function () { + table().remove({ + field: options.uniqueId, + values: selected_ids() + }); + if (index == $(selector).length - 1) { + refresh(); + enable_actions(); + } + }); + }); + $.notify(response.message, {type: 'success'}); + } else { + $.notify(response.message, {type: 'danger'}); + } + }, "json"); + } else { + return false; + } + }; + }; - var submit_handler = function(url) { - return function (resource, response) { - var id = response.id !== undefined ? response.id.toString() : ""; - if (!response.success) { - $.notify($.text(response.message).html(), { type: 'danger' }); - } else { - var message = response.message; - var selector = rows_selector(response.id); - var rows = $(selector.join(",")).length; - if (rows > 0 && rows < 15) { - var ids = id.split(":"); - $.get([url || resource + '/row', id].join("/"), {}, function (response) { - $.each(selector, function (index, element) { - var id = $(element).data('uniqueid'); - table().updateByUniqueId({id: id, row: response[id] || response}); - }); - dialog_support.init("a.modal-dlg"); - highlight_row(ids); - }, 'json'); - } else { - // call hightlight function once after refresh - options.load_callback = function () { - enable_actions(); - highlight_row(id); - }; - refresh(); - } - $.notify(message, {type: 'success' }); - } - return false; - }; - }; + var load_success = function(callback) { + return function(response) { + typeof options.load_callback == 'function' && options.load_callback(); + options.load_callback = undefined; + dialog_support.init("a.modal-dlg"); + typeof callback == 'function' && callback.call(this, response); + } + }; - var handle_submit = submit_handler(); + var options; - $.extend(table_support, { - submit_handler: function(url) { - this.handle_submit = submit_handler(url); - }, - handle_submit: handle_submit, - init: init, - do_delete: do_action("delete"), - do_restore: do_action("restore"), - refresh : refresh, - selected_ids : selected_ids, - }); + var toggle_column_visibility = function() { + if (localStorage[options.employee_id]) { + var user_settings = JSON.parse(localStorage[options.employee_id]); + user_settings[options.resource] && $.each(user_settings[options.resource], function(index, element) { + element ? table().showColumn(index) : table().hideColumn(index); + }); + } + }; + + var init = function (_options) { + options = _options; + enable_actions = enable_actions(options.enableActions); + load_success = load_success(options.onLoadSuccess); + const export_suffix = new Date().toISOString().slice(0, 16).replace(/(-|\s*|T|:)*/g,""); + $('#table') + .addClass("table-striped") + .addClass("table-bordered") + .bootstrapTable($.extend(options, { + columns: options.headers, + stickyHeader: true, + url: options.resource + '/search', + sidePagination: 'server', + selectItemName: 'btSelectItem', + pageSize: options.pageSize, + pagination: true, + search: options.resource || false, + showColumns: true, + clickToSelect: true, + showExport: true, + exportDataType: 'basic', + exportTypes: ['json', 'xml', 'csv', 'txt', 'sql', 'excel', 'pdf'], + exportOptions: { + fileName: options.resource.replace(/.*\/(.*?)$/g, '$1') + "_" + export_suffix + }, + onPageChange: function(response) { + load_success(response); + enable_actions(); + }, + toolbar: '#toolbar', + uniqueId: options.uniqueId || 'id', + trimOnSearch: false, + onCheck: enable_actions, + onUncheck: enable_actions, + onCheckAll: enable_actions, + onUncheckAll: enable_actions, + onLoadSuccess: function(response) { + load_success(response); + enable_actions(); + }, + onColumnSwitch : function(field, checked) { + var user_settings = localStorage[options.employee_id]; + user_settings = (user_settings && JSON.parse(user_settings)) || {}; + user_settings[options.resource] = user_settings[options.resource] || {}; + user_settings[options.resource][field] = checked; + localStorage[options.employee_id] = JSON.stringify(user_settings); + dialog_support.init("a.modal-dlg"); + }, + queryParamsType: 'limit', + iconSize: 'sm', + silentSort: true, + paginationVAlign: 'bottom', + escape: true + })); + enable_actions(); + init_delete(); + init_restore(); + toggle_column_visibility(); + dialog_support.init("button.modal-dlg"); + }; + + var init_delete = function (confirmMessage) { + $("#delete").click(function(event) { + do_action("delete")(); + }); + }; + + var init_restore = function (confirmMessage) { + $("#restore").click(function(event) { + do_action("restore")(); + }); + }; + + var refresh = function() { + table().refresh(); + } + + var submit_handler = function(url) { + return function (resource, response) { + var id = response.id !== undefined ? response.id.toString() : ""; + if (!response.success) { + $.notify($.text(response.message).html(), { type: 'danger' }); + } else { + var message = response.message; + var selector = rows_selector(response.id); + var rows = $(selector.join(",")).length; + if (rows > 0 && rows < 15) { + var ids = id.split(":"); + $.get([url || resource + '/row', id].join("/"), {}, function (response) { + $.each(selector, function (index, element) { + var id = $(element).data('uniqueid'); + table().updateByUniqueId({id: id, row: response[id] || response}); + }); + dialog_support.init("a.modal-dlg"); + highlight_row(ids); + }, 'json'); + } else { + // call hightlight function once after refresh + options.load_callback = function () { + enable_actions(); + highlight_row(id); + }; + refresh(); + } + $.notify(message, {type: 'success' }); + } + return false; + }; + }; + + var handle_submit = submit_handler(); + + $.extend(table_support, { + submit_handler: function(url) { + this.handle_submit = submit_handler(url); + }, + handle_submit: handle_submit, + init: init, + do_delete: do_action("delete"), + do_restore: do_action("restore"), + refresh : refresh, + selected_ids : selected_ids, + }); })(window.table_support = window.table_support || {}, jQuery); (function(form_support, $) { - form_support.error = { - errorClass: "has-error", - errorLabelContainer: "#error_message_box", - wrapper: "li", - highlight: function (e) { - $(e).closest('.form-group').addClass('has-error'); - }, - unhighlight: function (e) { - $(e).closest('.form-group').removeClass('has-error'); - } - }; + form_support.error = { + errorClass: "has-error", + errorLabelContainer: "#error_message_box", + wrapper: "li", + highlight: function (e) { + $(e).closest('.form-group').addClass('has-error'); + }, + unhighlight: function (e) { + $(e).closest('.form-group').removeClass('has-error'); + } + }; - form_support.handler = $.extend({ + form_support.handler = $.extend({ - submitHandler: function(form) { - $(form).ajaxSubmit({ - success: function(response) - { - $.notify(response.message, { type: response.success ? 'success' : 'danger' }); - }, - dataType: 'json' - }); - }, + submitHandler: function(form) { + $(form).ajaxSubmit({ + success: function(response) + { + $.notify(response.message, { type: response.success ? 'success' : 'danger' }); + }, + dataType: 'json' + }); + }, - rules: - { + rules: + { - }, + }, - messages: - { + messages: + { - } - }, form_support.error); + } + }, form_support.error); })(window.form_support = window.form_support || {}, jQuery); function number_sorter(a, b) { - a = +a.replace(/[^\-0-9]+/g, ''); - b = +b.replace(/[^\-0-9]+/g, ''); - return a - b; + a = +a.replace(/[^\-0-9]+/g, ''); + b = +b.replace(/[^\-0-9]+/g, ''); + return a - b; } diff --git a/public/js/nominatim.autocomplete.js b/public/js/nominatim.autocomplete.js index 347d6e1c6..c1a05e529 100644 --- a/public/js/nominatim.autocomplete.js +++ b/public/js/nominatim.autocomplete.js @@ -1,133 +1,133 @@ (function($) { - - function http_s(url) - { - return document.location.protocol + '//' + url; - } - - var url = http_s('nominatim.openstreetmap.org/search'); - var handle_auto_completion = function(fields) { - return function(event, ui) { - var results = ui.item.results; - if (results != null && results.length > 0) { - // handle auto completion - for(var i in fields) { - $("#" + fields[i]).val(results[i]); - } - return false; - } - return true; - }; - }; + function http_s(url) + { + return document.location.protocol + '//' + url; + } - var create_parser = function(field_name, parse_format) - { - var parse_field = function(format, address) - { - var fields = []; - $.each(format.split("|"), function(key, value) - { + var url = http_s('nominatim.openstreetmap.org/search'); + + var handle_auto_completion = function(fields) { + return function(event, ui) { + var results = ui.item.results; + if (results != null && results.length > 0) { + // handle auto completion + for(var i in fields) { + $("#" + fields[i]).val(results[i]); + } + return false; + } + return true; + }; + }; + + var create_parser = function(field_name, parse_format) + { + var parse_field = function(format, address) + { + var fields = []; + $.each(format.split("|"), function(key, value) + { if (address[value] && fields.length < 2 && $.inArray(address[value], fields) === -1) { - fields.push(address[value]); + fields.push(address[value]); } - }); - return fields[0] + (fields[1] ? ' (' + fields[1] + ')' : ''); - }; + }); + return fields[0] + (fields[1] ? ' (' + fields[1] + ')' : ''); + }; - return function(data) - { + return function(data) + { var parsed = []; $.each(data, function(index, value) { - var row = []; - var address = value.address; + var row = []; + var address = value.address; $.each(parse_format, function(key, format) { row.push(parse_field(format, address)); }); parsed[index] = { - label: row.join(", "), - results: row, - value: address[field_name] + label: row.join(", "), + results: row, + value: address[field_name] }; }); - return parsed; - }; - }; + return parsed; + }; + }; - var init = function(options) { + var init = function(options) { - var default_params = function(id, key, language) - { - return function() { - var result = { - format: 'json', - limit: 5, - addressdetails: 1, - countrycodes: options.country_codes, - 'accept-language' : language || navigator.language - }; - result[key || id] = $("#"+id).val(); - return result; - } + var default_params = function(id, key, language) + { + return function() { + var result = { + format: 'json', + limit: 5, + addressdetails: 1, + countrycodes: options.country_codes, + 'accept-language' : language || navigator.language + }; + result[key || id] = $("#"+id).val(); + return result; + } - }; + }; - var unique = function(parsed) { - var filtered = []; - $.each(parsed, function(index, element) - { - filtered = $.map(filtered, function(el, ind) - { - return el.label == element.label ? null : el; - }); - filtered.push(element); + var unique = function(parsed) { + var filtered = []; + $.each(parsed, function(index, element) + { + filtered = $.map(filtered, function(el, ind) + { + return el.label == element.label ? null : el; + }); + filtered.push(element); - }); - return filtered; - }; + }); + return filtered; + }; - $.each(options.fields, function(key, value) - { - var handle_field_completion = handle_auto_completion(value.dependencies); + $.each(options.fields, function(key, value) + { + var handle_field_completion = handle_auto_completion(value.dependencies); - $("#" + key).autocomplete({ - source: function (request, response) { - var params = default_params(key, value.response && value.response.field, options.language); - var request_params = {}; - options.extra_params && $.each(options.extra_params, function(key, param) { - request_params[key] = typeof param == "function" ? param() : param; - }); + $("#" + key).autocomplete({ + source: function (request, response) { + var params = default_params(key, value.response && value.response.field, options.language); + var request_params = {}; + options.extra_params && $.each(options.extra_params, function(key, param) { + request_params[key] = typeof param == "function" ? param() : param; + }); - $.ajax({ - type: "GET", - url: url, - dataType: "json", - data: $.extend(request_params, params()), - success: function(data) { - response(unique($.map(data, function(item) { - return (create_parser(key, (value.response && value.response.format) || value.dependencies))(data) - }))) - } - }); - }, - minChars:3, - delay:1000, - appendTo: '.modal-content', - select: handle_field_completion - }); + $.ajax({ + type: "GET", + url: url, + dataType: "json", + data: $.extend(request_params, params()), + success: function(data) { + response(unique($.map(data, function(item) { + return (create_parser(key, (value.response && value.response.format) || value.dependencies))(data) + }))) + } + }); + }, + minChars:3, + delay:1000, + appendTo: '.modal-content', + select: handle_field_completion + }); + + }); + }; + + var nominatim = { + + init : init + + }; + + window['nominatim'] = nominatim; - }); - }; - - var nominatim = { - - init : init - - }; - - window['nominatim'] = nominatim; - })(jQuery); diff --git a/tests/.htaccess b/tests/.htaccess index 3462048ad..f24db0acc 100644 --- a/tests/.htaccess +++ b/tests/.htaccess @@ -1,6 +1,6 @@ - Require all denied + Require all denied - Deny from all + Deny from all diff --git a/tests/sanity_check.js b/tests/sanity_check.js index a36ea40a7..3661b230e 100644 --- a/tests/sanity_check.js +++ b/tests/sanity_check.js @@ -2,10 +2,10 @@ var assert = require("assert"); // node.js core module var wd = require('wd'); describe('A Mocha test run by grunt-mocha-webdriver', function () { - it('has a browser injected into it', function () { - assert.ok(this.browser); - }); - it('has wd injected into it for customizing', function () { + it('has a browser injected into it', function () { + assert.ok(this.browser); + }); + it('has wd injected into it for customizing', function () { assert.notEqual(this.wd, undefined); }); }); diff --git a/writable/.htaccess b/writable/.htaccess index 3462048ad..f24db0acc 100644 --- a/writable/.htaccess +++ b/writable/.htaccess @@ -1,6 +1,6 @@ - Require all denied + Require all denied - Deny from all + Deny from all diff --git a/writable/cache/index.html b/writable/cache/index.html index b702fbc39..69df4e1df 100644 --- a/writable/cache/index.html +++ b/writable/cache/index.html @@ -1,7 +1,7 @@ - 403 Forbidden + 403 Forbidden diff --git a/writable/index.html b/writable/index.html index b702fbc39..69df4e1df 100644 --- a/writable/index.html +++ b/writable/index.html @@ -1,7 +1,7 @@ - 403 Forbidden + 403 Forbidden diff --git a/writable/logs/index.html b/writable/logs/index.html index b702fbc39..69df4e1df 100644 --- a/writable/logs/index.html +++ b/writable/logs/index.html @@ -1,7 +1,7 @@ - 403 Forbidden + 403 Forbidden diff --git a/writable/session/index.html b/writable/session/index.html index b702fbc39..69df4e1df 100644 --- a/writable/session/index.html +++ b/writable/session/index.html @@ -1,7 +1,7 @@ - 403 Forbidden + 403 Forbidden diff --git a/writable/uploads/index.html b/writable/uploads/index.html index b702fbc39..69df4e1df 100644 --- a/writable/uploads/index.html +++ b/writable/uploads/index.html @@ -1,7 +1,7 @@ - 403 Forbidden + 403 Forbidden